Ich will aber nicht das gesamte WAV vom Server abholen.
MP3 geht halt wesentlich schneller, da ich nur normale DSL1000-Upload-Geschwindigkeit zur Verfügung habe.
Ich will aber nicht das gesamte WAV vom Server abholen.
MP3 geht halt wesentlich schneller, da ich nur normale DSL1000-Upload-Geschwindigkeit zur Verfügung habe.
Ok, wenn Du keinen direkten Zugriff auf den Server sondern nur via DSL hast...
Läuft noch mehr auf der Kiste oder nur die Auswertung?
Du könntest ja auch einen stündlichen Cronjob machen und wenn Du das Zeug dann doch mal früer brauchst, das Skript von Hand ausführen.
Luke
Momentan lass ich das Skript alle 5 Minuten laufen, wenn nicht gerade eine Aufzeichnung stattgefunden hat, hat es ja nichts zu tun.
Falls doch noch jemand einen Tipp hat, wie man bestimmte Aktionen nach Ende der Aufzeichung ausführen kann würd ich mich freuen.
@Luke: Momentan läuft nur die Auswertung, soll auch nicht groß erweitert werden.
Man konnte jetzt natürlich das Skripte in der unixinout.c starten.
So sieht der Originalaufruf für sox aus:
cmdline wird also zum Programmaufruf für REC_COMD (in rec.cmd gespeichert) zusammengesetzt. Das ergibt in etwa:Code:sprintf(cmdline, "%s -v%f %s %s %s %s%s avg -%c", rec.cmd, (float)rec.volume / 100, rec.in_args, rec.file, rec.out_args, rec.file, rec.suff, rec.chan); system(cmdline); sprintf(cmdline, "rm %s", rec.file); system(cmdline);
sox -v1.0 -u -b -r %d -c 2 -t raw aufnahme -c 1 aufnahme.wav 1
Du könntest jetzt als system("/home/max/...") nach der letzten Zeile deine Batch starten. Dann sollte der die Aufnahmen direkt am Ende konvertieren.
Also etwa so:
Natürlich total ungetestet :-)Code:sprintf(cmdline, "%s -v%f %s %s %s %s%s avg -%c", rec.cmd, (float)rec.volume / 100, rec.in_args, rec.file, rec.out_args, rec.file, rec.suff, rec.chan); system(cmdline); sprintf(cmdline, "rm %s", rec.file); system(cmdline); system("/home/max/...") ;
@Buebchen:
Danke für den Tipp. Ich hab das jetzt soweit eingebaut, hab zwar bei der Verarbeitung noch ein kleines Rechteproblem aber das bekomm ich jetzt auch noch hin.
Hier noch der von mir eingefügte Code, vielleicht braucht es mal jemand,
Gruß StoepfCode:sprintf(cmdline, "lame -f -V 5 %s%s %s.mp3", rec.file, rec.suff, rec.file); system(cmdline); sprintf(cmdline, "rm %s%s", rec.file, rec.suff); system(cmdline);
Also ich habe mein monitor zur Zeit so eingerichtet:
Zum konvertieren nehme ich auch Lame, welches aber automatisch durch SOX aufgerufen wird, somit entfällt das WAV-File als Zwischendatei, da es direkt von RAW in MP3 umgewandelt wird. Es läuft somit auch kein Cron-Job dafür und eine Anpassung des Quellcodes ist damit auch nicht notwendig.Zitat von .monrc
@SirFS: Hat bei mir irgendwie nicht funktioniert, drum bin ich halt jetzt diesen Umweg gegangen.
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)