Hallo,
bei der IMAPI2-UDF gibt es den Befehl
[autoit]_IMAPI2_BurnAudioCD()
[/autoit].
Irgendwie funktioniert das bei mir nicht.
Kennt sich jemand damit aus?
Danke Für Hilfe!
SuperAndi
Hallo,
bei der IMAPI2-UDF gibt es den Befehl
[autoit]_IMAPI2_BurnAudioCD()
[/autoit].
Irgendwie funktioniert das bei mir nicht.
Kennt sich jemand damit aus?
Danke Für Hilfe!
SuperAndi
poste dein qeullcode dann wird dir hier sicherlich geholfen
_IMAPI2_BurnAudioCD
bezieht sich auf einen Array der die Einträge dann brennt:
Du musst den Object des Laufwerkes eingeben und dann im zweiten einen Array(!)
in dem die zu brennenden Daten enthalten sind.
Also
[autoit][/autoit][autoit][/autoit][autoit]Dim $aWaveSound[10]
[/autoit][autoit][/autoit][autoit]$aWaveSound[0] = "C:\Musik.wav"
$aWaveSound[1] = "C:\Musik2.wav" ;Und immer so weiter.
_IMAPI2_BurnAudioCD($oRecorder, $aWaveSound)
[/autoit]Im Array $aWaveSound muss die Pfadangabe zur Wave-Datei sein.
_IMAPI2_BurnAudioCD brennt NUR Wave Dateien.
D.h. *.mp3 in *.wav umkonvertieren und dann brennen.
Beachte aber, dass Wave-Sounds über 15Mb groß sind und deshalb nicht soviele auf eine Audio-CD passen.
Ja, so habe ich es auch gemacht! Aber es funktioniert nicht!
Mein Code:
#include <IMAPI2.au3>
[/autoit] [autoit][/autoit] [autoit]$Open = FileOpenDialog("Wählen Sie die Datei zum Brennen aus!", "", "WAV (*.wav)") ;Datei auswählen
[/autoit] [autoit][/autoit] [autoit]$ID = _IMAPI2_DrivesGetID() ;IDs der Laufwerke
[/autoit] [autoit][/autoit] [autoit]If $ID[0] = 0 Then ;wenn kein Laufewrk gefunden wurde
MsgBox(16, "Laufwerk", "Kein Laufwerk!")
Else
$Drive = _IMAPI2_DriveGetObj($ID[1])
Dim $Datei[1] ;Dateiarray
$Datei[0] = $Open ;Datei in Array
_IMAPI2_BurnAudioCD($Drive, $Datei) ;Brennen
MsgBox(64, "Brennvorgang", "Brennvorgang abgeschlossen")
EndIf
Hallo SuperAndi,
ich schreibe auch gerade ein Brennprogramm und habe genau das gleiche Problem!
Hast du schon überprüft, ob die Wave-Datei, die du brennen möchtest überhaupt angenommen wird? Mit
[autoit]_IMAPI2_WaveIsValid($sFileName) ;$sFilename = Pfad zur Wave-Datei
[/autoit]
überprüft auch _IMAPI2_BurnAudioCD() ob die Datei korrekt ist. Wenn nicht wird gar nicht angefangen zu Brennen!
Würde mich auch freuen, wenn jemand das lösen kann.
LG K.K.
K.K. hat recht.
Erst mit _IMAPI2_WaveIsValid() prüfen und dann BurnAudioCD
Hallo alpines und K.K.
ich habe die Wavedatei mit _IMAPI2_WaveIsValid() geprüft und sie wurde anerkannt. Aber es funktioniert noch immer nicht.
Habt ihr vielleicht noch andere Ideen?
SuperAndi,
ich setze mich heute mal ans Problem und versuche es zu beheben.
Wenn ich es geschafft haben, werde ich es als €dit hier kennzeichnen, bis dahin musst du erstmal warten
€dit: Es liegt am Dateiformat! Hier in der IMAPI2-UDF steht:
Zeile 136:
If DllStructGetData($WAVE_HEADER, "AudioFormat") = 1 And DllStructGetData($WAVE_HEADER, "SampleRate") = 44100 And _
DllStructGetData($WAVE_HEADER, "BitsPerSample") = 16 And DllStructGetData($WAVE_HEADER, "NumChannels") = 2 Then
Return True
Else
Return False
EndIf
Das bedeutet, dass die Wave-Datei:
1. Convertiert in *.wav sein muss.
2. Die SampleRate auf 44100 (Bei vielen Convertierer-Programmen wir bei höchste Einstellung schon 44100 genommen.)
3. 16 Bits pro Sample sein müssen. (In professionellen Convertern einstellbar.
4. Es Stereo sein muss quasi 2 Kanäle (= Channels)
Dann sollte es laufen.
Ich hab das nicht getestet aber sollte dann laufen.
Übrigens werden die Daten wenn sie mit BurnAudioCD gebrannt werden automatisch geprüft (siehe IMAPI2-UDF)
€dit²: Und hat es funktioniert?