2017-09-14 8 views
0

J'ai utilisé la commande ci-dessous pour recadrer la vidéo à l'origine capturé par caméra par défaut. Mais quand j'ai été exécuté commande il donne l'erreur ci-dessous.Vous voulez recadrer la vidéo en 1: 1 aspectration en utilisant ffmpeg, mais il donne une erreur Répertoire de travail: null Environnement: null

final String[] cmd={"-i", "/storage/emulated/0/DCIM/ZyfVideo/VID_20170914_153804.mp4","-s", "480x480" ,"-vf" ,"crop=480:480","setdar=1:1","setsar=1:1 ","/storage/emulated/0/Movies/SpoofApp/VDO_20170914_153811.mp4"}; 

Erreur Logcat:

09-14 15:38:11.874 3872-4039/com.spoof.app E/FFmpeg: Exception while trying to run: [Ljava.lang.String;@427ce088 
                java.io.IOException: Error running exec(). Command: [/data/data/com.spoof.app/files/ffmpeg, -i, /storage/emulated/0/DCIM/ZyfVideo/VID_20170914_153804.mp4, -s, 480x480, -vf, crop=480:480, setdar=1:1, setsar=1:1 , /storage/emulated/0/Movies/SpoofApp/VDO_20170914_153811.mp4] Working Directory: null Environment: null 
                 at java.lang.ProcessManager.exec(ProcessManager.java:211) 
                 at java.lang.Runtime.exec(Runtime.java:173) 
                 at java.lang.Runtime.exec(Runtime.java:128) 
                 at com.github.hiteshsondhi88.libffmpeg.ShellCommand.run(ShellCommand.java:10) 
                 at com.github.hiteshsondhi88.libffmpeg.FFmpegExecuteAsyncTask.doInBackground(FFmpegExecuteAsyncTask.java:38) 
                 at com.github.hiteshsondhi88.libffmpeg.FFmpegExecuteAsyncTask.doInBackground(FFmpegExecuteAsyncTask.java:10) 
                 at android.os.AsyncTask$2.call(AsyncTask.java:288) 
                 at java.util.concurrent.FutureTask.run(FutureTask.java:237) 
                 at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:231) 
                 at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112) 
                 at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587) 
                 at java.lang.Thread.run(Thread.java:841) 
                 Caused by: java.io.IOException: No such file or directory 
                 at java.lang.ProcessManager.exec(Native Method) 
                 at java.lang.ProcessManager.exec(ProcessManager.java:209) 
                 at java.lang.Runtime.exec(Runtime.java:173)  
                 at java.lang.Runtime.exec(Runtime.java:128)  
                 at com.github.hiteshsondhi88.libffmpeg.ShellCommand.run(ShellCommand.java:10)  
                 at com.github.hiteshsondhi88.libffmpeg.FFmpegExecuteAsyncTask.doInBackground(FFmpegExecuteAsyncTask.java:38)  
                 at com.github.hiteshsondhi88.libffmpeg.FFmpegExecuteAsyncTask.doInBackground(FFmpegExecuteAsyncTask.java:10)  
                 at android.os.AsyncTask$2.call(AsyncTask.java:288)  
                 at java.util.concurrent.FutureTask.run(FutureTask.java:237)  
                 at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:231)  
                 at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112)  
                 at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587)  
                 at java.lang.Thread.run(Thread.java:841)  
+0

Vérifiez votre chemin correctement. Erreur indiquant que Causé par: java.io.IOException: Aucun fichier ou répertoire –

+0

@KingofMasse chemin d'entrée vidéo et sortie vidéo? Mais c'est correct. – Mahesh

+0

@KingofMasses Version 4.4.2 onglet samsung – Mahesh

Répondre

0

Je n'ai aucune idée sur ffmpeg, mais je peux vous dire jCodec lib qui est facile à utiliser.

visitez jcodec.org.

Si vous voulez rogner la vidéo, vous devrez faire l'étape ci-dessous dans android ou java. 1. récupère le cadre de la méthode utilitaire de jcodec. 2. recadrer en utilisant la classe d'aide Bitmap. 3. pack au format mp4 en utilisant la fonction jcodec utilty.

si vous n'êtes pas en mesure de le faire écrire gentiment un message me [email protected]

Je vais aider à rendre l'application vidéo de culture pour vous dans Android.

Merci