Entwickler-Ecke
Multimedia / Grafik - MP4 oder FLV zu MP3 konvertieren
Delphi2009lover - Do 19.11.09 22:28
Titel: MP4 oder FLV zu MP3 konvertieren
Hi,
ich wollte nur fragen, wie man mit Delphi MP4 Datein oder FLV Datein zu MP3 konvertieren kann.
Kann man da evtl. eine DLL benutzen?^^ Währe lieb, wenn ihr mir da helfen könntet^^
thx im Vorraus
SAiBOT - Fr 20.11.09 08:59
Am einfachsten ist es wohl
FFMPEG anzusteuern!
Delphi2009lover - Fr 20.11.09 10:35
Könntest du da vllt ein Beispiel machen, wie man damit am besten MP4 zu MP3 umwandelt?^^
SAiBOT - Fr 20.11.09 10:59
Wie du Konsolenanwendungen fernsteuerst, findest du im Forum ->
GETCONSOLEOUTPUT
Und die Parameter findest du in den Doku's von FFMPEG, für z.B. FLV->MP3:
Delphi-Quelltext
1:
| Format('-i "%s" -acodec mp3 -ab 160k -ac 2 -ar 44100 "%s"',[Input,Output]); |
Delphi2009lover - Fr 20.11.09 11:19
Ok ich bin glaub ich mal echt zu dumm... also dann halt doch:(
kannst du mir bitte bitte einen Beispiel-Code geben, der per Buttonclick über die ffmpeg.exe (in Resourcen, im gleichen Ordner?????) (wo bekomm ich die ffmpeg.exe her?) die Datei C:/DATA/hallo.flv zu C:/DATA/hallo.mp3 umwandelt.
Vielen vielen vielen Dank im Vorraus und
2. Wird dann eigentlich die Konsole angezeigt?
SAiBOT - Fr 20.11.09 12:45
Ich habe dir mal die FFMPEG.exe und die Doku geuppt, ich glaube die exe müßte man sonst erst kompilieren da der hersteller nur deren Sourcecode anbietet.
Eine fertige Funktion gebe ich dir nicht, ein wenig eigeninitiative mußt du schon zeigen, ansonsten kannst du dir ja gleich einen fertigen Youtube-Downloader saugen, auf welchen du wohl hinaus willst :wink:
Wie man exe datein (versteckt) startet findest du im Forum.
Beim starten mußt du halt nur den für dein Bsp. zugeschnittenen Parameter übergeben:
Delphi-Quelltext
1:
| Format('-i "%s" -acodec mp3 -ab 160k -ac 2 -ar 44100 "%s"',['C:/DATA/hallo.flv','C:/DATA/hallo.mp3']); |
Der Rest ist absolutes Basiswissen und sollte in diesem thread nicht weiter diskutiert werden.
Delphi2009lover - Fr 20.11.09 13:14
Erstmal danke und nein du sollst bitte nicht meinen Downloader schreiben, aber ich weiß leider nicht, wie man ein Fenster verstckt startet und wie man überhaupt was externes startet... es währ lieb wenn du mir wenigstens den kleinen Teil schreibst :wink:
sry aber die Doku bringt mir nichts :oops: ich kann nicht so gut Englisch (bin ja erst 13 und hab des auch erst 2 Jahre^^)
jaenicke - Fr 20.11.09 13:16
ShellExecute und als Anzeigemodus SW_HIDE. Zumindest ShellExecute hättest du aber auch im Forum / Google / Bing finden müssen.
Oder das genannte GetConsoleOutput (siehe Suche), das noch viel einfacher zu verwenden ist, da es eine Funktion direkt in Delphi ist, die du nur kopieren musst... :roll:
Delphi2009lover - Fr 20.11.09 22:18
Ok ich hab das mit dem Starten verstanden. Könnt ihr evtl. doch grad den Code geben, weil ich nicht weiß, wie ich dieses Format(...) eintragen muss. Vielen dank im Vorraus
Delphi2009lover - Di 24.11.09 08:35
Sry wenn ich nochmal schreib, aber ich habs jetzt echt versucht. Wie muss ich das mit dem Starten schreiben, dass die Konsole nicht auftaucht
Regan - Di 24.11.09 10:35
Zeig uns doch mal deinen Code. Dann können wir das besser nachvollziehen ;)
Delphi2009lover - Di 24.11.09 12:31
Der Code bezieht sich noch garnicht darauf. Ich hätte nur gern den Code, der die ffmpeg.exe ausführt (versteckt) und die Parameter überibt
Thx im Vorraus
SAiBOT - Di 24.11.09 15:15
Deswegen solltest du auch ein neues Thema erstellen.
Ich verstehe dein Problem nicht?
jaenicke hat folgendes geschrieben : |
ShellExecute und als Anzeigemodus SW_HIDE. |
(5. Parameter)
und das Format(...) kommt in den 4. Parameter von ShellExecute.
=>
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9:
| uses ShellAPI, ...
var p:String; begin p := Format('-i "%s" -acodec mp3 -ab 160k -ac 2 -ar 44100 "%s"', ['C:/DATA/hallo.flv','C:/DATA/hallo.mp3']); ShellExecute(0, 'open', 'ffmpeg.exe', p, 'C:\', SW_HIDE); |
Delphi2009lover - Fr 27.11.09 20:49
Kann man das eigentlich auch ohne die ffmpeg machen? Gibts dafür evtl eine Unit?
EDIT: Ich will das anders machen, weil ich die Lizenz von ffmpe nicht so richtig versteh... Ich möchte mein Programm später auch veröffentlichen (als Freeware) und ich hab KA ob ich das überhaupt mit ffmpeg darf (ohne was zahlen zu müssen)
SAiBOT - Sa 28.11.09 12:16
Solange du kein Geld mit deiner Software verdienen willst wird es da keine Probleme geben.
Habe nie andere Units oä. dafür gesehen und sollte es sie geben, sind sie garantiert nicht umsonst!
Delphi2009lover - Sa 28.11.09 15:44
Also wenn ich mein Programm als Freeware weitergebe, darf ich die ffmpeg exe für mich kostnlos in das Programm einbinden?
Wenn ja muss ich die iwie im Programm erwähnen also z.B. verwendet ffmpeg.exe
SAiBOT - Sa 28.11.09 16:44
Klar ffmpeg ist OpenSource. Die Frage nach dem erwähnen sollte sich dir nicht stellen, es gibt kein Grund warum man das nicht tun sollte, immerhin sparst du eine menge Arbeit mit ffmpeg oder?
Delphi2009lover - Sa 28.11.09 20:18
Ja klar^^ aber wie soll ich sie denn erwähnen. Einfach nur: "Verwendet ffmpeg.exe" oder was? ... Und wo^^
jaenicke - Sa 28.11.09 20:52
Um genau zu sein musst du die ffmpeg.exe ohne die optionalen Komponenten kompilieren, die unter der GPL stehen. Ansonsten müsstest du dein Projekt selbst ggf. auch unter die GPL stellen, wenn du das quasi als Bibliothek nutzt (was ich mit meinen Projekten ohnehin mache, so dass ich mir da meistens wenig Gedanken machen muss).
In jedem Fall, also auch bei Verwendung der LGPL, musst du deutlich machen, dass der Quelltext der ffmpeg.exe kostenlos verfügbar ist und diesen ggf. mitliefern.
Für die genaueren Lizenzbedingungen schau dir diese doch einfach einmal selbst an.
Delphi2009lover - So 29.11.09 00:58
wie meinst du das mit GPL (was is bitte GPL???) also ich kann ja schreiben "Verwendet zum konvertieren das Opensource-Programm ffmpeg"
Delphi2009lover - So 29.11.09 10:32
vielen Dank, ich hatte vorher nur was auf englisch gefunden^^ vielen Dank, jetzt versteh ich auch was du mit Quelltext mitgebn gemeint hast^^ vielen lieben dank an alle
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2025 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!