我正在使用https://github.com/WritingMinds/ffmpeg-android-java使用以下命令裁剪视频:
execFFmpegCommand(" -i " + in + " -filter:v " + "crop=" + 240 + ":" + 120 + ":" + 100 + ":" + 100 + " -c:a copy " + out);
其中“ in”是输入文件,“ out”是输出文件.
我遇到了很多相同的问题,却找不到所需的解决方案.我还尝试了以下通过搜索发现的命令:
execFFmpegCommand(" -i " + in + " -filter:v " + "crop=" + 240 + ":" + 120 + ":" + 100 + ":" + 100 + " -c:a copy " + out);
我在这里遇到的主要错误是:输出文件#0不包含任何流
private voID execFFmpegCommand(final String command) { try { ffmpeg.execute(new String[]{command}, new ExecuteBinaryResponseHandler() { @OverrIDe public voID onFailure(String s) { Log.d(TAG, "Failed with output : " + s); progressDialog.dismiss(); } @OverrIDe public voID onSuccess(String s) { Log.d(TAG, "SUCCESS with output : " + s); } @OverrIDe public voID onProgress(String s) { Log.d(TAG, "Started command : ffmpeg " + command); Log.d(TAG, "progress : " + s); } @OverrIDe public voID onStart() { Log.d(TAG, "Started command : ffmpeg " + command); progressDialog.show(); } @OverrIDe public voID onFinish() { Log.d(TAG, "Finished command : ffmpeg " + command); progressDialog.dismiss(); } }); } catch (FFmpegCommandAlreadyRunningException e) { // do nothing for Now }}
LogCat是:
D/ffmpeg: Started command : ffmpeg -i /storage/emulated/0/AndroID/data/com.myapp/files/VIDeo/myapp1470980754658.mp4 -vf crop=240:120:100:100 -c:a copy /storage/emulated/0/AndroID/data/com.myapp/files/VIDeo/myapp1470980763106_vID.mp408-12 11:16:03.209 17283-17866/com.myapp D/FFmpeg: Running publishing updates method08-12 11:16:03.231 17283-17283/com.myapp W/MediaRecorder: mediarecorder went away with unhandled events08-12 11:16:03.232 17283-17283/com.myapp W/MediaRecorder: mediarecorder went away with unhandled events08-12 11:16:03.355 17283-17283/com.myapp D/ffmpeg: Started command : ffmpeg -i /storage/emulated/0/AndroID/data/com.myapp/files/VIDeo/myapp1470980754658.mp4 -vf crop=240:120:100:100 -c:a copy /storage/emulated/0/AndroID/data/com.myapp/files/VIDeo/myapp1470980763106_vID.mp408-12 11:16:03.355 17283-17283/com.myapp D/ffmpeg: progress : ffmpeg version n3.0.1 copyright (c) 2000-2016 the FFmpeg developers08-12 11:16:03.355 17283-17283/com.myapp D/ffmpeg: Started command : ffmpeg -i /storage/emulated/0/AndroID/data/com.myapp/files/VIDeo/myapp1470980754658.mp4 -vf crop=240:120:100:100 -c:a copy /storage/emulated/0/AndroID/data/com.myapp/files/VIDeo/myapp1470980763106_vID.mp408-12 11:16:03.355 17283-17283/com.myapp D/ffmpeg: progress : built with gcc 4.8 (GCC)08-12 11:16:03.355 17283-17283/com.myapp D/ffmpeg: Started command : ffmpeg -i /storage/emulated/0/AndroID/data/com.myapp/files/VIDeo/myapp1470980754658.mp4 -vf crop=240:120:100:100 -c:a copy /storage/emulated/0/AndroID/data/com.myapp/files/VIDeo/myapp1470980763106_vID.mp408-12 11:16:03.355 17283-17283/com.myapp D/ffmpeg: progress : configuration: --target-os=linux --cross-prefix=/home/vagrant/SourceCode/ffmpeg-androID/toolchain-androID/bin/arm-linux-androIDeabi- --arch=arm --cpu=cortex-a8 --enable-runtime-cpudetect --sysroot=/home/vagrant/SourceCode/ffmpeg-androID/toolchain-androID/sysroot --enable-pic --enable-libx264 --enable-libass --enable-libfreetype --enable-libfribIDi --enable-libmp3lame --enable-Fontconfig --enable-pthreads --disable-deBUG --disable-ffserver --enable-version3 --enable-hardcoded-@R_301_5991@s --disable-ffplay --disable-ffprobe --enable-gpl --enable-yasm --disable-doc --disable-shared --enable-static --pkg-config=/home/vagrant/SourceCode/ffmpeg-androID/ffmpeg-pkg-config --prefix=/home/vagrant/SourceCode/ffmpeg-androID/build/armeabi-v7a --extra-cflags='-I/home/vagrant/SourceCode/ffmpeg-androID/toolchain-androID/include -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 -fno-strict-overflow -fstack-protector-all' --extra-ldflags='-L/home/vagrant/SourceCode/ffmpeg-androID/toolchain-androID/lib -Wl,-z,relro -Wl,-z,Now -pIE' --extra-libs='-lpng -lexpat -lm' --extra-cxxflags=08-12 11:16:03.355 17283-17283/com.myapp D/ffmpeg: Started command : ffmpeg -i /storage/emulated/0/AndroID/data/com.myapp/files/VIDeo/myapp1470980754658.mp4 -vf crop=240:120:100:100 -c:a copy /storage/emulated/0/AndroID/data/com.myapp/files/VIDeo/myapp1470980763106_vID.mp408-12 11:16:03.356 17283-17283/com.myapp D/ffmpeg: progress : libavutil 55. 17.103 / 55. 17.10308-12 11:16:03.356 17283-17283/com.myapp D/ffmpeg: Started command : ffmpeg -i /storage/emulated/0/AndroID/data/com.myapp/files/VIDeo/myapp1470980754658.mp4 -vf crop=240:120:100:100 -c:a copy /storage/emulated/0/AndroID/data/com.myapp/files/VIDeo/myapp1470980763106_vID.mp408-12 11:16:03.356 17283-17283/com.myapp D/ffmpeg: progress : libavcodec 57. 24.102 / 57. 24.10208-12 11:16:03.356 17283-17283/com.myapp D/ffmpeg: Started command : ffmpeg -i /storage/emulated/0/AndroID/data/com.myapp/files/VIDeo/myapp1470980754658.mp4 -vf crop=240:120:100:100 -c:a copy /storage/emulated/0/AndroID/data/com.myapp/files/VIDeo/myapp1470980763106_vID.mp408-12 11:16:03.356 17283-17283/com.myapp D/ffmpeg: progress : libavformat 57. 25.100 / 57. 25.10008-12 11:16:03.356 17283-17283/com.myapp D/ffmpeg: Started command : ffmpeg -i /storage/emulated/0/AndroID/data/com.myapp/files/VIDeo/myapp1470980754658.mp4 -vf crop=240:120:100:100 -c:a copy /storage/emulated/0/AndroID/data/com.myapp/files/VIDeo/myapp1470980763106_vID.mp408-12 11:16:03.356 17283-17283/com.myapp D/ffmpeg: progress : libavdevice 57. 0.101 / 57. 0.10108-12 11:16:03.356 17283-17283/com.myapp D/ffmpeg: Started command : ffmpeg -i /storage/emulated/0/AndroID/data/com.myapp/files/VIDeo/myapp1470980754658.mp4 -vf crop=240:120:100:100 -c:a copy /storage/emulated/0/AndroID/data/com.myapp/files/VIDeo/myapp1470980763106_vID.mp408-12 11:16:03.356 17283-17283/com.myapp D/ffmpeg: progress : libavfilter 6. 31.100 / 6. 31.10008-12 11:16:03.356 17283-17283/com.myapp D/ffmpeg: Started command : ffmpeg -i /storage/emulated/0/AndroID/data/com.myapp/files/VIDeo/myapp1470980754658.mp4 -vf crop=240:120:100:100 -c:a copy /storage/emulated/0/AndroID/data/com.myapp/files/VIDeo/myapp1470980763106_vID.mp408-12 11:16:03.356 17283-17283/com.myapp D/ffmpeg: progress : libswscale 4. 0.100 / 4. 0.10008-12 11:16:03.356 17283-17283/com.myapp D/ffmpeg: Started command : ffmpeg -i /storage/emulated/0/AndroID/data/com.myapp/files/VIDeo/myapp1470980754658.mp4 -vf crop=240:120:100:100 -c:a copy /storage/emulated/0/AndroID/data/com.myapp/files/VIDeo/myapp1470980763106_vID.mp408-12 11:16:03.356 17283-17283/com.myapp D/ffmpeg: progress : libswresample 2. 0.101 / 2. 0.10108-12 11:16:03.356 17283-17283/com.myapp D/ffmpeg: Started command : ffmpeg -i /storage/emulated/0/AndroID/data/com.myapp/files/VIDeo/myapp1470980754658.mp4 -vf crop=240:120:100:100 -c:a copy /storage/emulated/0/AndroID/data/com.myapp/files/VIDeo/myapp1470980763106_vID.mp408-12 11:16:03.356 17283-17283/com.myapp D/ffmpeg: progress : libpostproc 54. 0.100 / 54. 0.10008-12 11:16:03.356 17283-17283/com.myapp D/ffmpeg: Started command : ffmpeg -i /storage/emulated/0/AndroID/data/com.myapp/files/VIDeo/myapp1470980754658.mp4 -vf crop=240:120:100:100 -c:a copy /storage/emulated/0/AndroID/data/com.myapp/files/VIDeo/myapp1470980763106_vID.mp408-12 11:16:03.356 17283-17283/com.myapp D/ffmpeg: progress : Output #0, mp4, to ' -i /storage/emulated/0/AndroID/data/com.myapp/files/VIDeo/myapp1470980754658.mp4 -vf crop=240:120:100:100 -c:a copy /storage/emulated/0/AndroID/data/com.myapp/files/VIDeo/myapp1470980763106_vID.mp4':08-12 11:16:03.356 17283-17283/com.myapp D/ffmpeg: Started command : ffmpeg -i /storage/emulated/0/AndroID/data/com.myapp/files/VIDeo/myapp1470980754658.mp4 -vf crop=240:120:100:100 -c:a copy /storage/emulated/0/AndroID/data/com.myapp/files/VIDeo/myapp1470980763106_vID.mp408-12 11:16:03.356 17283-17283/com.myapp D/ffmpeg: progress : Output file #0 does not contain any stream08-12 11:16:03.357 17283-17283/com.myapp D/ffmpeg: Failed with output : ffmpeg version n3.0.1 copyright (c) 2000-2016 the FFmpeg developers built with gcc 4.8 (GCC) configuration: --target-os=linux --cross-prefix=/home/vagrant/SourceCode/ffmpeg-androID/toolchain-androID/bin/arm-linux-androIDeabi- --arch=arm --cpu=cortex-a8 --enable-runtime-cpudetect --sysroot=/home/vagrant/SourceCode/ffmpeg-androID/toolchain-androID/sysroot --enable-pic --enable-libx264 --enable-libass --enable-libfreetype --enable-libfribIDi --enable-libmp3lame --enable-Fontconfig --enable-pthreads --disable-deBUG --disable-ffserver --enable-version3 --enable-hardcoded-@R_301_5991@s --disable-ffplay --disable-ffprobe --enable-gpl --enable-yasm --disable-doc --disable-shared --enable-static --pkg-config=/home/vagrant/SourceCode/ffmpeg-androID/ffmpeg-pkg-config --prefix=/home/vagrant/SourceCode/ffmpeg-androID/build/armeabi-v7a --extra-cflags='-I/home/vagrant/SourceCode/ffmpeg-androID/toolchain-androID/include -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 -fno-strict-overflow -fstack-protector-all' --extra-ldflags='-L/home/vagrant/SourceCode/ffmpeg-androID/toolchain-androID/lib -Wl,-z,relro -Wl,-z,Now -pIE' --extra-libs='-lpng -lexpat -lm' --extra-cxxflags= libavutil 55. 17.103 / 55. 17.103 libavcodec 57. 24.102 / 57. 24.102 libavformat 57. 25.100 / 57. 25.100 libavdevice 57. 0.101 / 57. 0.101 libavfilter 6. 31.100 / 6. 31.100 libswscale 4. 0.100 / 4. 0.100 libswresample 2. 0.101 / 2. 0.101 libpostproc 54. 0.100 / 54. 0.100 Output #0, mp4, to ' -i /storage/emulated/0/AndroID/data/com.myapp/files/VIDeo/myapp1470980754658.mp4 -vf crop=240:120:100:100 -c:a copy /storage/emulated/0/AndroID/data/com.myapp/files/VIDeo/myapp1470980763106_vID.mp4': Output file #0 does not contain any stream08-12 11:16:03.370 17283-17283/com.myapp D/ffmpeg: Finished command : ffmpeg -i /storage/emulated/0/AndroID/data/com.myapp/files/VIDeo/myapp1470980754658.mp4 -vf crop=240:120:100:100 -c:a copy /storage/emulated/0/AndroID/data/com.myapp/files/VIDeo/myapp1470980763106_vID.mp4
解决方法:
我终于想通了
该命令应作为数组传递.
String[] cmd = {"-i", in, "-filter:v", "crop=" + 240 + ":" + 120 + ":" + 100 + ":" + 100, "-c:a", "copy", out}; execFFmpegCommand(cmd);
总结 以上是内存溢出为你收集整理的使用ffmpeg的Android视频裁剪全部内容,希望文章能够帮你解决使用ffmpeg的Android视频裁剪所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)