Ich habe eine ausführbare Datei ffmpeg
kompiliert für ARM Android in meinem Ordner /data/data/APP/files
, mit ausführbarer Erlaubnis. Ich versuche, einen Befehl basierend auf einem aus der FFmpeg site extrahierten Beispiel auszuführen.Run FFmpeg ausführbare Binärdatei in Android
Dies ist die Befehlszeile Ich eingeben:
./ffmpeg -loop 1 -i /mnt/sdcard/com.example.test/image.png -c:v libx264 -t 30 -pix_fmt yuv420p /mnt/sdcard/com.example.test/video.mp4
Mein objetive ist es aus meiner App auszuführen, sondern auch in Befehlszeile, ich diesen Fehler:
./ffmpeg: 1: Syntax error: "(" unexpected
Weiß jemand, was ist und wie man es löst?
- UPDATE
fand ich ein newer version und ich glaube, ich durch diesen Fehler übergeben.
Aber jetzt, für jeden Anruf ffmpeg
ausführbare Datei, ich bin immer ein Fehler wie folgt aus:
# ./ffmpeg -loop 1 -i /mnt/sdcard/com.example.teste/imagem.png -c:v libx264 -t 30 -pix_fmt yuv420p /mnt/sdcard/com.example.teste/video.mp4
[1] + Stopped (signal) ./ffmpeg -loop 1 -i /mnt/sdcard/com.example.teste/imagem.png -c:v libx264 -t 30 -pix_fmt yuv420p /mnt/sdcard/com.example.teste/video.mp4
[1] Segmentation fault ./ffmpeg -loop 1 -i /mnt/sdcard/com.example.teste/imagem.png -c:v libx264 -t 30 -pix_fmt yuv420p /mnt/sdcard/com.example.teste/video.mp4
Was ist das?
Hey Diego, kannst du mir sagen, auf welcher Android O/S du das verwendest? Dieser Build unterstützt nur JB + Geräte. –
Ich habe gerade versucht, über Befehl auszuführen und in der Lage, Ausgabedatei erfolgreich zu generieren, überprüfen Sie die Ausgabe hier https://gist.github.com/hiteshsondhi88/48783de48248ab72fc23, ich habe auch vordefinierte Binärdateien zum Projekt hinzugefügt, die Sie verwenden können, Segmentierungsfehler treten möglicherweise aufgrund einer falschen Binärdatei auf, dh Sie verwenden möglicherweise Neon-Binärdateien auf Nicht-Neon-Geräten. –
Gut. Ich weiß nicht, was das eigentliche Problem war. Ich habe diesen Fehler erhalten, indem ich die Befehlszeile in einen Level-19-API-Emulator laufen ließ. Ich löste mein Problem, indem ich es mit 'logcatProc = Runtime.getRuntime() .exec();' in meiner App programmierte und die App auf meinem echten Gerät (Galaxy S2 mit ICS API 15) ausführte. –