hallo,
ich schreib mir gerade nen mp3 player und sitze an dem problem, das mir die länge fehlt um festzustellen wann ein song zu ende ist. wie kann ich die abfragen ich habs mit status song length vesucht das geht aber nur mit dateien welche keine leerzeichen im namen haben. also so:
StringBuilder buffer = new StringBuilder(256);
command = "status "" + fileName + "" length";
int err = mciSendString(command, buffer, 256, IntPtr.Zero);
return buffer.ToString();
geht das ihregend wie anders? oder kan ich evt auch anders herrausfinden wann ein song zuende ist? ich arbeite mit mci!
danke
gruß
Hier vielleicht hilft dir dieser Snippet weiter:
http://dotnet-snippets.de/dns/wave-mp3-midi-avi-mpeg-etc-ueber-mci-abspielen-SID263.aspx
hallo,
danke für den link. doch leider steht da in der length methode nichts anderes und gibt auch nix anderes zurück.
der fehler besteht weiterhin. ich übergebe scheinbar den string falsch!!
vielleicht jemand ja noch ne idee
hier nochmal der code
StringBuilder buffer = new StringBuilder(256);
command = "status "" + fileName + "" length";
int err = mciSendString(command, buffer, 256, IntPtr.Zero);
checkError(err);
return buffer.ToString();
gruß
Kannst du nicht einfach die Bitrate auslesen und aus der Dateigröße und Bitrate dann die Länge berechnen? (okay, funktioniert nur bei statischer Bitrate so einfach)
Baka wa shinanakya naoranai.
Mein XING Profil.
Original von talla
Kannst du nicht einfach die Bitrate auslesen und aus der Dateigröße und Bitrate dann die Länge berechnen? (okay, funktioniert nur bei statischer Bitrate so einfach)
Das müsste prinzipiell auch bei VBR gehen. Muss nur (am Besten im Thread) einmal über die gesamte Datei für alle MP3 Header ausgeführt werden.
Hab das irgendwann schonmal so gemacht und das ging recht zügig.
Tipp: Bei der Gelegenheit gleich ne MD5 über den Dateinamen (und eine über die Header-Infos) und die Länge und evtl. andere Angaben in ner DB merken. Dann spart man sich den Kram in Zukunft 🙂
greetz
DaSchroeter
Also wenn du MCI benutzt, dann schau dir mal den Thread im Artikel-Forum. Da ist in der Klasse bereits eine Methode GetLength und eine Methode GetCurrentPosition implementiert.
Dexter
Programmierer sind Maschinen die Koffein in Quellcode umsetzen.