![]() |
Re: Visualisierung des "Output-Streams"
Hi
Klappt es nicht mit der bass.dll? bei Interesse kann ich dir auch ne Demo Basteln. |
Re: Visualisierung des "Output-Streams"
Zitat:
mfg holle |
Re: Visualisierung des "Output-Streams"
Liste der Anhänge anzeigen (Anzahl: 1)
Hi
Sag bescheid wen noch was ist. |
Re: Visualisierung des "Output-Streams"
@ Wishmaster
Hi, ich hab mir auch deine Datei als Vorlage genommen. Ich suche nur noch eine Funktion um auszulesen wie hoch der Pegel z.B. vom Mikrofoneingang ist. Damit, wenn ich etwas in das Mikrofon sage der Pegelwert steigt. Wäre nett wenn du mir da einen Tipp geben könntest wie ich darauf komme! Danke schon mal! |
Re: Visualisierung des "Output-Streams"
Hi
Kein Problem! In der Bass Hilfe findest du ne Funktion (BASS_ChannelGetLevel) damit sollte es gehen! Ich habe diese Funktion auch im LiveTest Demo benutzt, such mal in der Unit1.pas nach ThresholdRecorder + BASS_RecordStart Hier noch en Beispiel
Delphi-Quellcode:
procedure TAudioEngine.Get_VULevel(var L, R : Integer);
var VUCH : DWORD; L_VU, R_VU : integer; begin //The level ranges linearly from 0 (silent) to 128 (max). VUCH := BASS_ChannelGetLevel(channel); // 0 (silent) to 32768 (max). L_VU := LOWORD(VUCH); R_VU := HIWORD(VUCH); if (BASS_ChannelIsActive(channel) = BASS_ACTIVE_PLAYING) then begin L:= round(L_VU / 128) div 2; R:= round(R_VU / 128) div 2; end else begin L:= 0; R:= 0; end; end; procedure TForm.Timer_VUTimer(Sender: TObject); var L, R : integer; begin with AudioPlayer do begin Get_VULevel(L, R); Level_L.Position:= L; Level_R.Position:= R; end; end; |
Re: Visualisierung des "Output-Streams"
danke Wishmaster!
nur noch eine frage: wie kann ich den pegel einer einzelnen frequenz, also eines einzelnen balken in der visualisierung ermitteln? thanx holle. |
Re: Visualisierung des "Output-Streams"
*** push ***
keiner ne idee???? mfg holle |
Re: Visualisierung des "Output-Streams"
Hi
Zitat:
wen es nicht das ist was du meintest dann erkläre einwenig genauer was du machen willst Bzw. was das bewirken soll. Oder willst du die Position nach dB umrechnen dann müsste dir diese Funktion weiterhelfen.
Delphi-Quellcode:
function Vol2db(vol : integer) : string;
var ex,ex2 : extended; begin DecimalSeparator := '.'; if vol >0 then begin ex := RoundTo((20 * (log10(vol/100)) ),-1); // Ersetze die 100 durch Max wert ex2 := ex - Ceil(ex); if (ex2 = 0) then result := floattostr(ex) + '.0 dB' else result := floattostr(ex) + ' dB' end else result := '-oo dB'; end; |
Re: Visualisierung des "Output-Streams"
danke, aber es geht mir jetzt nicht um die gesamtlautstärke des audiosignals...
du hast doch dieses beispielprogramm geschrieben, in dem das audiosignal in eine art spektrum analyse umgewandelt wird und durch mehrere balken dargestell wird. ich möchte jetzt z. b. wissen, wie hoch der pegel der frequenz 1000 hz ist. also den ausschlag eines einzelnen balkens. thanx holle. |
Re: Visualisierung des "Output-Streams"
Zitat:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:36 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz