![]() |
Re: Daten aus Sounddatei auslesen
das problem ist, die hab ich ja drin...
beim befehl bass.BASS_StreamGetLength(stream) meckert er ja nur rum, dass er den befehl StreamGetLength nicht kennt. Bass kennt er... |
Re: Daten aus Sounddatei auslesen
Zitat:
gruss |
Re: Daten aus Sounddatei auslesen
In Version 2.1 gab es noch BASS_StreamGetLength, jetzt gibt es nur noch BASS_ChannelGetLength.
Nimm also BASS_ChannelGetLength. Gruss Thorsten |
Re: Daten aus Sounddatei auslesen
danke!
weißt du vielleicht noch, in welcher Unit TWaveData deklariert ist??? |
Re: Daten aus Sounddatei auslesen
Das kannst du selber deklarieren...
Delphi-Quellcode:
kommt eben darauf an, was du für Daten erhalten möchtest bzw. mit welchen Datentypen du weiterarbeiten möchtest.
type
TBassWaveDataDWORD = array[0..2048] of DWORD; TBassWaveDataSMALLINT = array[0..2048] of smallint; TBassWaveDataLong = array[0..8192] of smallint; ggf. musst du noch den dritten Parameter von BASS_ChannelGetData deinen Bedürfnissen anpassen. Gruss Thorsten |
Re: Daten aus Sounddatei auslesen
Also ich mach das bis jetzt so:
Delphi-Quellcode:
aber WaveData[i] ist immer 0!!!
if not BASS_Init(-1,44100,0,Application.Handle,nil) then
ShowMessage('Can''t initialize device'); chan := BASS_StreamCreateFile(FALSE, PChar(filename),0,0,0); for len := 0 to Ceil(bass.BASS_ChannelGetLength(chan) / WaveDataLength) do begin BASS_ChannelSetPosition(chan, len*WaveDataLength); BASS_ChannelGetData(chan, @WaveData, WaveDataLength); for i := 0 to WaveDataLength-1 do ShowMessage(IntToStr(WaveData[i])); end; (für WaveData hab ich einen array[0..WaveDataLength] of SmallInt genommen) Was mach ich nur falsch??? Edit: Kann ich für WaveData auch einen array of ShortInt nehmen? |
Re: Daten aus Sounddatei auslesen
Die Auswertung geht nur, wenn der Channel auch abgespielt wird oder BASS_STREAM_DECODE/BASS_MUSIC_DECODE als Flag gesetzt wird...
Delphi-Quellcode:
Siehe auch
Channel := BASS_StreamCreateFile(false, PChar(filename), 0, 0, BASS_STREAM_DECODE);
if (Channel = 0) then Channel := BASS_MusicLoad(false, PChar(filename), 0, 0, BASS_MUSIC_DECODE, 0); ![]() Gruss Thorsten |
Re: Daten aus Sounddatei auslesen
Danke Thorsten, du kennst dich echt perfekt aus!!! :thumb:
Jetzt funktionert das ganze eigentlich einwandfrei!!! Aber dann ist da noch ein weiteres Problem aufgetreten: Auf einem alten Rechner (für den das ganze eigentlich gedacht ist) läuft das nicht mehr. Der kann die Bass.dll nicht initialisieren und dann kann er die Datei natürlich auch nicht öffnen. Ich denk das liegt entweder daran, dass der Rechner irgendwelche Codecs nicht hat (Windows 98)oder weil er keine Soundkarte hat... Nur ich weiß nicht, was ich dagegen machen kann. Fällt dir oder jemand anderem dazu noch etwas ein??? |
Re: Daten aus Sounddatei auslesen
Zitat:
Wie soll man den sonst irgendetwas mit Sounds machen? Verwirrte Grüsse Thorsten |
Re: Daten aus Sounddatei auslesen
Ja, ich weiß, ist etwas widersprüchlich...
Aber ich will ja nur eine mp3 öffnen, ich will sie ja nicht abspielen. eigentlich ist das ja kein problem... Aber wahrscheinlich prüft er erst, ob ich ne soundkarte hab. Und wenn ich keine hab dann verweigert er mir auch das öffnen von dateien, auch wenns eigentlich möglich wäre, oder? Bedeutet das, mit der bass.dll hab ich keine chance dateien auszulesen ohne eine soundkarte...? |
Alle Zeitangaben in WEZ +1. Es ist jetzt 09:56 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