Ir para conteúdo
Fórum Script Brasil
  • 0

(Resolvido) valores de gauge1 acionado por microfone


Francisico.ajudando.delphi

Pergunta

Amigos, preciso de ajuda. Preciso acionar um componente Gauge com microfone. Quero aumentar a numeração progressiva do gauge com som alto, e som baixo. Que fique proporcional o progresso do gauge. digo: som alto= gouge valor alto x som baixo = gauge valor alto. Caso não tenha esta possibilidade quero determinar ou mostrar num edit.texr a frequencia do som a partir de um microfone.

Sem mais, agradeço desde já.

Francisco

Link para o comentário
Compartilhar em outros sites

11 respostass a esta questão

Posts Recomendados

  • 0

uses MMSystem;

procedure TForm1.tbVolumeChange(Sender: TObject);  // TrackBar
var
Count, i: integer;
begin
   Count := waveOutGetNumDevs;
   for i := 0 to Count do
     begin
        waveOutSetVolume(i,longint(tbVolume.position*4369)*65536+longint(tbVolume.position*4369));
     end;
end;

OBS: colocar na propriedade Max do TrackBar = 15

o Gauge é só adaptar

abraço

Link para o comentário
Compartilhar em outros sites

  • 0

{Amigo, coloquei os codigos como estão abaixo, mas deu erro. Pergunto: as variaveis eu terei que colocar acima de implementation ou pode ficar onde esta? coloquei tb na propriedade max de tractbarr valor 15. se possivel corrija p mim. Desde já agradeço.}

unit Unit1;

interface

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs, MMSystem, ComCtrls, Gauges;

type

TForm1 = class(TForm)

TrackBar1: TTrackBar;

Gauge1: TGauge;

procedure FormCreate(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form1: TForm1;

implementation

{$R *.dfm}

////procedure TForm1.FormCreate(Sender: TObject);

////begin

procedure TForm1.tbVolumeChange(Sender: TObject); // TrackBar

var

Count, i: integer;

begin

Count := waveOutGetNumDevs;

for i := 0 to Count do

begin

waveOutSetVolume(i,longint(tbVolume.position*4369)*65536+longint(tbVolume.position*4369));

end;

end;

end;

end.

Link para o comentário
Compartilhar em outros sites

  • 0

coloque em um Form

1 - TrackBar

1 - Gauge

1 - Media Player

No Media Player deixe a

propriedade AutoOpen = true

propriedade Display = TrackBar

na propriedade FileName = caminho para um arquivo de musica

No Gauge na propriedade MaxValue = 15

unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ComCtrls, MPlayer, Gauges;

type
  TForm1 = class(TForm)
    TrackBar1: TTrackBar;
    MediaPlayer1: TMediaPlayer;
    Gauge1: TGauge;
    procedure TrackBar1Change(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

uses MMSystem;

procedure TForm1.TrackBar1Change(Sender: TObject);
var
Count, i: integer;
begin
   Count := waveOutGetNumDevs;
   for i := 0 to Count do
     begin
        waveOutSetVolume(i,longint(TrackBar1.position*4369)*65536+longint(TrackBar1.position*4369));
        Gauge1.Progress := TrackBar1.position;
     end;
end;


end.

é só testar

abraço

Link para o comentário
Compartilhar em outros sites

  • 0

ok amigo, funcionou, para ajustar o volume do som wav. Parabens, mas eu preciso na verdade que o nivel do som acione diretamente o gauge, tipo assim: som alto o ponteiro do gauge mostra no maximo e x som baixo o ponteiro do gauge mostra no minimo, e pontos intermediarios par som com volume médio. o volume do som eu controlo noutra parte. quero usar o gauge para mostrar a intensidade do som. Se possivel, me ajude denovo. sem mais, fico aguardando.

Um abraço amigo.

Francisco

Link para o comentário
Compartilhar em outros sites

  • 0

Ok amigo. entre outras coisas era isso que eu queria. Muito Obrigado, Que Deus abençõe a todos da sua familia. vi que voce gosta de estatísticas. Muitas coisas podem ser avaliadas por numero, outras coisas podem ser avaliadas por comportamento, e tantas coisas mais são avaliadas por uma diversidade de maneiras, e ou valores, mas o que me chama a atenção é sobre estatisticas do evangelho, digo: Quantas pessoas morrem por dia, sem ter conhecido o evangelho??? por minutos, por hora, por segundo....... Mas tudo bem. Deus sabe tudo.

Obrigado pela ajuda em delphi e um abraço.

Link para o comentário
Compartilhar em outros sites

  • 0

Ok, estou "fusando" nos exemplos de VU Meeter que você me mostrou, mas esta complicado demais p minha capacidade. Mas devagar eu aindo chego lá. Pergunto então: O componente VU então mostra visivelmente o nivel de som através de faixas luminosas, tudo bem, penso que estou no caminho agora, mas eu precisaria que o resultado fosse em numeros, tipo assim: volume maximo do som = 100, volume minimo do som = 0 e volumes intermediarios de 0 a 100. o resultado deveria aparecer num Edit ou Label. Outra pergunta: em que paleta do delphi esta o tal de componente VU meter. uso o delphi7.

Link para o comentário
Compartilhar em outros sites

  • 0

Amigo Jhonas, fiz o programinha, 'relogio falante' deu certo conforme os codigos fontes que você passou na tua postagem, mas para incrementar o programa coloquei um componente da paleta ACTIVEX (TextToSpeech) para visualizar e movimentar a boca que fala. inseri um codigo assim "TextToSpeech1.Speak(edit1.text);" Funcionou, mas somente responde em ingles. acho que esta faltando algumas coisas (codigos). Queria que o componente 'TextToSpeech" falasse o testo em portugues (Raquel).

Sem mais, por hoje, fico aguardando uma possivel resposta, e desde já agradeço.

Um abraço

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,5k
×
×
  • Criar Novo...