Android 执行 FFmpeg 命令

  1. 编译Android 平台 FFmpeg.so 包: 编译Android下可用的全平台FFmpeg(包含libx264与libfdk-aac) Android多媒体之一:编译ffmpeg Android - FFmpeg 编译成单so库

  2. ndk 开发环境搭建: Android - FFmpeg & Mac & AndroidStudio & CMake 环境搭建 Android - FFmpeg 命令行运行方式1 Android - FFmpeg 命令行运行方式2 开源项目:安卓平台的 FFmpeg 命令行工具箱

  3. 解决重复执行命令行时崩溃报错的问题 FFmpeg每次执行完命令后会调用 ffmpeg_cleanup 函数清理内存,并且会调用exit(0)结束当前进程,但是经过我们的修改,exit()的代码已经被删掉,我们在Android中自然不能结束当前进程了,所以有些变量的值还在内存中,这样就会导致下次执行的时候可能会出错。我也尝试过fork一个进程给ffmpeg执行,完事后通过 信号来进程间通信,这样管用但是很麻烦,我们其实只需要简单的重设一些变量即可。 打开ffmpeg.c找到之前的main函数 (函数名可能被你自己改名成其他方便记忆的),然后在 return 前加上如下代码即可:

    nb_filtergraphs = 0;
    progress_avio = NULL;

    input_streams = NULL;
    nb_input_streams = 0;
    input_files = NULL;
    nb_input_files = 0;

    output_streams = NULL;
    nb_output_streams = 0;
    output_files = NULL;
    nb_output_files = 0;
复制代码

参考:编译Android下可执行命令的FFmpeg

其他:动画效果Activit跳转动画之界面上某个位置 裂开上下拉伸动画跳转

转载于:https://juejin.im/post/5a3523046fb9a04528468fe9

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值