AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Multimedia Delphi Daten aus Sounddatei auslesen
Thema durchsuchen
Ansicht
Themen-Optionen

Daten aus Sounddatei auslesen

Ein Thema von blablab · begonnen am 31. Jan 2007 · letzter Beitrag vom 2. Feb 2007
Antwort Antwort
Seite 1 von 3  1 23      
blablab

Registriert seit: 3. Jan 2006
509 Beiträge
 
Delphi 7 Enterprise
 
#1

Daten aus Sounddatei auslesen

  Alt 31. Jan 2007, 19:46
Hallo,

ich würde gerne die Daten aus einer Sounddatei auslesen. Am besten wäre es, wenn ich die Daten aus einer mp3-Datei lesen könnte, aber hauptsache ist erstmal, dass ich die Daten aus irgendeinem Format auslesen kann.
Letztendlich muss doch in so einer Datei drin stehn, was für Signale an den Lautsprecher gehen. Da muss doch irgendwie drin stehen, wie viel Volt zu welcher Zeit an den Lautsprecher angeschlossen werden.
Und genau das würde ich gerne auslesen.
(Bei einer Stereo-Datei ist die Hauptsache, dass ich einen Kanal auslesen kann.)

Im Prinzip muss es so doch so funktionieren wie das der Nero-WaveEditor macht. Der zeigt ja am Schluss auch ein Bild an, das aus einer Linie besteht und dazu muss er ja auch irgendwie die Daten aus ner Sounddatei auslesen.
Die Frage ist nur wie man das macht...

Kann mir da jemand weiterhelfen???

Danke schonmal!
Simon
  Mit Zitat antworten Zitat
omata

Registriert seit: 26. Aug 2004
Ort: Nebel auf Amrum
3.154 Beiträge
 
Delphi 7 Enterprise
 
#2

Re: Daten aus Sounddatei auslesen

  Alt 31. Jan 2007, 19:50
Willst du das alles selber machen? Alternative wäre z.B. die bass.dll zu benutzen.

Gruss
Thorsten
  Mit Zitat antworten Zitat
blablab

Registriert seit: 3. Jan 2006
509 Beiträge
 
Delphi 7 Enterprise
 
#3

Re: Daten aus Sounddatei auslesen

  Alt 31. Jan 2007, 19:55
nein, ich suche ja gerade nach sowas wie der bass.dll!
(ich bin gerade auch auf die gestoßen und hab die dll runtergeladen)

Nur kann mir da jemand erklären wie das damit geht?
gibts da sowas wie n soundStream oder so???
  Mit Zitat antworten Zitat
omata

Registriert seit: 26. Aug 2004
Ort: Nebel auf Amrum
3.154 Beiträge
 
Delphi 7 Enterprise
 
#4

Re: Daten aus Sounddatei auslesen

  Alt 31. Jan 2007, 19:57
Schau dir mal die Beispiele an...
  Mit Zitat antworten Zitat
blablab

Registriert seit: 3. Jan 2006
509 Beiträge
 
Delphi 7 Enterprise
 
#5

Re: Daten aus Sounddatei auslesen

  Alt 31. Jan 2007, 20:01
ich hab keine Besipiele...
ich hab nur die Bass.dll und Bass.pas gefunden
hast du mir da die offizielle homepage oder so???
  Mit Zitat antworten Zitat
omata

Registriert seit: 26. Aug 2004
Ort: Nebel auf Amrum
3.154 Beiträge
 
Delphi 7 Enterprise
 
#6

Re: Daten aus Sounddatei auslesen

  Alt 31. Jan 2007, 20:03
Hast du mal hier geschaut?
  Mit Zitat antworten Zitat
blablab

Registriert seit: 3. Jan 2006
509 Beiträge
 
Delphi 7 Enterprise
 
#7

Re: Daten aus Sounddatei auslesen

  Alt 31. Jan 2007, 20:06
Danke!
und herzlichen Glückwunsch zum 1000 Beitrag

Dann werd ich mich mal n bisschen dahintersetzen...
  Mit Zitat antworten Zitat
blablab

Registriert seit: 3. Jan 2006
509 Beiträge
 
Delphi 7 Enterprise
 
#8

Re: Daten aus Sounddatei auslesen

  Alt 1. Feb 2007, 19:39
ehrlich gesagt blick ich es immer noch nicht.
ich hab mir da mal die beispiele angeschaut und auch eines gefunden, welches eine sounddatei als linie zeichnet. das problem ist nur, dass dieses Beispiel nicht alle daten aus der sounddatei ausliest, sondern natürlich nur für jeden Pixel, der zu zeichnen ist. Ich würde aber gerne alle Daten aus der Datei auslesen.

Und das Problem ist, ich komm da nicht weiter. Ich finde keine Hilfe zur Bass.dll und weiß au net wie ich mir da selbst weiterhelfen soll. Allein vom Programmtext komm ich net wirklich weiter, weil ich kaum was versteh...

Kann mir jemand helfen und sagen wie ich das mach?
Oder weiß jemand, wo ich eine Hilfe zu der Bass.dll finde???
(Wobei mir ne konkrete Hilfe natürlich lieber wär, da ich gar net weiß, wie ich das Problem angehen soll...)
  Mit Zitat antworten Zitat
blablab

Registriert seit: 3. Jan 2006
509 Beiträge
 
Delphi 7 Enterprise
 
#9

Re: Daten aus Sounddatei auslesen

  Alt 2. Feb 2007, 16:10
Ich hab inzwischen folgenden Thread gefunden.

Und ich vermute mal, dass man mit diesem Code

Delphi-Quellcode:
function TForm1.GeneratePeaks(height,width:integer;stream:HStream):TBitmap;
var i,len,r,l,ypos,xpos:integer;
var WaveData : TWaveData;
begin
  result := TBitmap.Create;
  result.Height := height;
  result.Width := width;
  for len := 0 to bass.BASS_StreamGetLength(stream) do
  begin
    BASS_ChannelSetPosition(stream,len);
    BASS_ChannelGetData(stream, @WaveData, 2048);
    for i := 0 to 255 do
    begin
       R := SmallInt(Loword(WaveData[i * 1]));
       L := SmallInt(HIword(WaveData[i * 1]));
       YPos := Trunc(((R + L) / (2 * 65535)) * 1);
       xpos := trunc(len * (width / (BASS_StreamGetLength(stream))));
       result.Canvas.LineTo(xpos,ypos-10);
    end;
  end;
end;
alle Daten aus einer Sounddatei auslesen kann.

Dummerweise treten bei mir aber ein Paar fehler auf:
Undefinierter Bezeichner: BASS_StreamGetLength
Undefinierter Bezeichner: TWaveData
Undefinierter Bezeichner: BASS_StreamGetPosition

Was muss ich denn hier einbinden, damit es funktioniert???
  Mit Zitat antworten Zitat
EWeiss
(Gast)

n/a Beiträge
 
#10

Re: Daten aus Sounddatei auslesen

  Alt 2. Feb 2007, 16:15
Zitat von blablab:
Ich hab inzwischen folgenden Thread gefunden.

Und ich vermute mal, dass man mit diesem Code

Delphi-Quellcode:
function TForm1.GeneratePeaks(height,width:integer;stream:HStream):TBitmap;
var i,len,r,l,ypos,xpos:integer;
var WaveData : TWaveData;
begin
  result := TBitmap.Create;
  result.Height := height;
  result.Width := width;
  for len := 0 to bass.BASS_StreamGetLength(stream) do
  begin
    BASS_ChannelSetPosition(stream,len);
    BASS_ChannelGetData(stream, @WaveData, 2048);
    for i := 0 to 255 do
    begin
       R := SmallInt(Loword(WaveData[i * 1]));
       L := SmallInt(HIword(WaveData[i * 1]));
       YPos := Trunc(((R + L) / (2 * 65535)) * 1);
       xpos := trunc(len * (width / (BASS_StreamGetLength(stream))));
       result.Canvas.LineTo(xpos,ypos-10);
    end;
  end;
end;
alle Daten aus einer Sounddatei auslesen kann.

Dummerweise treten bei mir aber ein Paar fehler auf:
Undefinierter Bezeichner: BASS_StreamGetLength
Undefinierter Bezeichner: TWaveData
Undefinierter Bezeichner: BASS_StreamGetPosition

Was muss ich denn hier einbinden, damit es funktioniert???
heheheee die Bass.dll (Unit davon) natürlich.

EDIT:
google mal nach winmm oder msacm32 diese sind für die ausgabe einer Wave-Datei verwendbar

gruss
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 3  1 23      


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 15:56 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