美文网首页FFmpeg音视频开发经验之路
android ffmpeg视频剪切与合并

android ffmpeg视频剪切与合并

作者: SHUTUP | 来源:发表于2016-05-07 10:25 被阅读5671次

android-ffmpeg-java-demo

https://github.com/shutup/android-ffmpeg-java-demo

说明

以前一直希望可以做一个播放器,所以当时就接触了ffmpeg这个库,当时打算使用JNI的方式进行底层的调用,无奈整个逻辑比较麻烦,因此进度一再搁浅。

后来进一步的了解中发现,其实对于视频的处理,方法是很多的

  • 直接以C的代码进行处理,调用ffmpeg库的函数
  • JAVA在命令行调用C的程序进行处理,调用ffmpeg程序

经过一段时间的探索,对于ffmpeg的交叉编译已经没什么大问题了,那么我们就来使用这个库吧。

这个demo主要演示,通过JAVA在命令行调用FFMPEG的二进制程序来完成一些视频的处理功能。这个ffmpeg的二进制程序是在交叉编译的过程中生成的。使用的java wrapper是guardianproject's android-ffmpeg-java,当然我自己有做一些优化,比如使用我自己编译的最新的ffmpeg替换了它原版使用的ffmpeg程序,开发环境也换到了android studio,还添加了一些方法的实现。

视频剪切

原理:JAVA开启一个命令行,在命令行中调用ffmpeg的程序,根据传入的参数进行相关处理。

ffmpeg -ss 00:00:00 -t 00:00:30 -i test.mp4 -vcodec copy -acodec copy output.mp4
* -ss 指定从什么时间开始
* -t 指定需要截取多长时间
* -i 指定输入文件

视频合并

原理:JAVA开启一个命令行,在命令行中调用ffmpeg的程序,根据传入的参数进行相关处理。

//进行视频的合并
ffmpeg -f concat -i list.txt -c copy concat.mp4

相关文章

网友评论

  • 1405326b1f6d:(in directory "/data/data/com.shutup.ffmpegcmdutils/app_bin"): error=2, No such file or directory 这个是什么原因呢
  • 56edd9a12ee5:你好:
    使用
    ffmpeg -ss 00:00:00 -t 00:00:30 -i test.mp4 -vcodec copy -acodec copy output.mp4
    对视频进行裁剪,因为没有进行重新编码,所以速度非常快,但裁剪得到的视频,在播放的时候,视频的开始或结束可能会有黑帧的情况,请问有遇过这样的情况吗
  • 过期的薯条: java.lang.UnsatisfiedLinkError: dlopen failed: library "libavutil-55.so" not found 这个错误咋解决 大佬
  • 9699e8f78421:你好,音频长于视频或者 视频长于音频 合成的时候该怎么处理呢
  • lu_xiukun:ffmpeg和sox太大了,两个27m,有办法压缩吗?
  • sentea:你好,想问一下,怎么将2个视频逐帧拼接?就是从a视频取一帧,同时b视频取一帧这样子。
    e6810ba54807:@昵称_759a 遇到同样的问题,请问有研究到有什么实现方案吗?
    62de48dd0dc0:你好,请教一下,Android怎么通过代码来实现视频的裁剪,万分感谢
  • 墨墨_2016:如何编译ffmpeg啊?求教,求出一个教程啊,不然很多人都死在了第一步
    墨墨_2016: @墨墨_2016 哦 可能 我没看到 thanks!
    SHUTUP:@墨墨_2016 我记得我已经有写了啊。
  • whg8908:这是哪里的权限问题
    11-18 15:51:48.130 10599-13188/com.shutup.ffmpegcmdutils D/FFMpeghh: shellOut() returned: /storage/emulated/0/kascend/chushoulu/clip_video/hehe.mp4: Permission denied

    11-18 15:51:53.625 10599-10599/com.shutup.ffmpegcmdutils D/FFMpeghh: processComplete() returned: 1
    sentea:你手机是不是6.0以上系统?动态申请读写SD卡权限试试
  • b7e9763ffd86:先点赞 在查看 正好在做这个功能 看看 先谢了
  • 329ecb068849:大神,给个指导呗,选好了文件,剪辑和合并都是只有文件夹,里面没有视频文件,求指导 :pray:
    329ecb068849:研究出来了!路径获取在我的手机上有问题,在代码里面自己指定路径就可以!太感谢了! :clap:
    329ecb068849:报了个没有这个文件或文件夹,但是,我这是手选的路径,
    SHUTUP:@Tree_Man 没有什么出错信息吗?仔细看下日志。

本文标题:android ffmpeg视频剪切与合并

本文链接:https://www.haomeiwen.com/subject/otojrttx.html