AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Multimedia Delphi Visualisierung des "Output-Streams"
Thema durchsuchen
Ansicht
Themen-Optionen

Visualisierung des "Output-Streams"

Ein Thema von nabbl · begonnen am 5. Feb 2006 · letzter Beitrag vom 25. Apr 2006
Antwort Antwort
Seite 2 von 3     12 3      
Wishmaster

Registriert seit: 14. Sep 2002
Ort: Steinbach, MB, Canada
301 Beiträge
 
Delphi XE2 Architect
 
#11

Re: Visualisierung des "Output-Streams"

  Alt 16. Feb 2006, 13:56
Hi

Klappt es nicht mit der bass.dll? bei Interesse kann ich dir auch ne Demo Basteln.
  Mit Zitat antworten Zitat
holle

Registriert seit: 15. Nov 2005
Ort: Uckerland
138 Beiträge
 
Delphi 7 Enterprise
 
#12

Re: Visualisierung des "Output-Streams"

  Alt 6. Apr 2006, 23:15
Zitat von Wishmaster:
Klappt es nicht mit der bass.dll? bei Interesse kann ich dir auch ne Demo Basteln.
Wenn du das mal machen könntest wäre das echt nett
mfg holle
Marcel
  Mit Zitat antworten Zitat
Wishmaster

Registriert seit: 14. Sep 2002
Ort: Steinbach, MB, Canada
301 Beiträge
 
Delphi XE2 Architect
 
#13

Re: Visualisierung des "Output-Streams"

  Alt 9. Apr 2006, 04:08
Hi

Sag bescheid wen noch was ist.
Angehängte Dateien
Dateityp: rar livetest_905.rar (304,5 KB, 117x aufgerufen)
  Mit Zitat antworten Zitat
Michel86

Registriert seit: 22. Dez 2005
Ort: Ruppertsweiler
4 Beiträge
 
Delphi 7 Professional
 
#14

Re: Visualisierung des "Output-Streams"

  Alt 13. Apr 2006, 14:22
@ 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!
  Mit Zitat antworten Zitat
Wishmaster

Registriert seit: 14. Sep 2002
Ort: Steinbach, MB, Canada
301 Beiträge
 
Delphi XE2 Architect
 
#15

Re: Visualisierung des "Output-Streams"

  Alt 13. Apr 2006, 21:40
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;
  Mit Zitat antworten Zitat
holle

Registriert seit: 15. Nov 2005
Ort: Uckerland
138 Beiträge
 
Delphi 7 Enterprise
 
#16

Re: Visualisierung des "Output-Streams"

  Alt 19. Apr 2006, 13:22
danke Wishmaster!
nur noch eine frage: wie kann ich den pegel einer einzelnen frequenz, also eines einzelnen balken in der visualisierung ermitteln?

thanx holle.
Marcel
  Mit Zitat antworten Zitat
holle

Registriert seit: 15. Nov 2005
Ort: Uckerland
138 Beiträge
 
Delphi 7 Enterprise
 
#17

Re: Visualisierung des "Output-Streams"

  Alt 21. Apr 2006, 17:49
*** push ***
keiner ne idee????

mfg holle
Marcel
  Mit Zitat antworten Zitat
Wishmaster

Registriert seit: 14. Sep 2002
Ort: Steinbach, MB, Canada
301 Beiträge
 
Delphi XE2 Architect
 
#18

Re: Visualisierung des "Output-Streams"

  Alt 22. Apr 2006, 22:50
Hi

Zitat:
also eines einzelnen Balken in der Visualisierung ermitteln
ich wes ja nicht was du als (Visualisierung) nimmst? Aber normal müsste das mit ProgressBar1.Position gehen, oder du nimmst die werte direkt von BASS_ChannelGetLevel

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;
  Mit Zitat antworten Zitat
holle

Registriert seit: 15. Nov 2005
Ort: Uckerland
138 Beiträge
 
Delphi 7 Enterprise
 
#19

Re: Visualisierung des "Output-Streams"

  Alt 23. Apr 2006, 15:11
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.
Marcel
  Mit Zitat antworten Zitat
Gandalfus

Registriert seit: 19. Apr 2003
407 Beiträge
 
Delphi 2006 Professional
 
#20

Re: Visualisierung des "Output-Streams"

  Alt 23. Apr 2006, 18:30
Zitat:
As an example, if you request a 1024 sample FFT from a 44100hz stream, the values (bins) will be:

0: DC (you can ignore this)
1: 1 x (44100/1024) = 43hz
2: 2 x (44100/1024) = 86hz
3: 3 x (44100/1024) = 129hz
etc...
Besucht doch mal meine Homepage
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 3     12 3      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:17 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz