Ahab's Studio.

Android 集成 FFmpeg (四) 轻松实现一个音视频编辑 App

在网上看到一篇关于 FFmpeg 的文章,讲的大概是基于 FFmpeg 实现了一个 App,支持视频拼图等强大炫酷的音视频编辑功能,其原理是在 Android 端集成 FFmpeg,通过命令方式调用 FFmpeg。

尽管在 Android 端集成命令方式调用并不复杂,但一个具有强大炫酷音视频编辑功能的 App 是有价值的。由此启发,并决定敲下 Android 集成 FFmpeg 系列的第四篇,以一个实际应用的方式展现 FFmpeg 强大的音视频编辑功能。

Android 端音频变声方案

音频变声实质上是通过调整 PCM 数据的音调、节拍等属性,实现听感上的变化。如果是 mp3、aac 等压缩音频,则需提前解码成 PCM 数据,Android 端可以通过 MediaExtractor 及 MediaCodec 解码得到 PCM,但调整音调、节拍仅靠 Android api 就无能为力了,只能集成第三方库来实现,常见的音频处理库有 FmodSoundTouch

ijkplayer 源码分析(上)

本文基于0.8.8版本的 ijkplayer ,对其源码进行剖析,涉及到不同平台下的封装接口或处理方式时,均以 Android 为例。

ijkplayer 是一款比较出众的开源 Android/IOS 跨平台播放器,基于 ffplay,API 易于集成,可定制编译控制体积。

Android 集成 FFmpeg (三) 获取 FFmpeg 执行进度

在以命令方式调用 FFmpeg 的时候,可能会执行一些比较耗时的任务,这时如果没有进度展示,用户可能会以为程序崩溃了,体验十分不好.能不能在以命令方式调用 FFmpeg 时实时获取执行进度呢?谷歌关键词 “Android FFmpeg 命令” 可以得到很多教程,但加上关键词 “进度”就没有相关文章了,看来以命令方式调用 FFmpeg 实时获取执行进度这个需求没有前人的肩膀可站,要开动自己的小脑筋了.

Android 集成 FFmpeg (一) 基础知识及简单调用

前言

网上关于 Android 集成 FFmpeg 的文章很多,但大多数都只介绍了步骤,没有说明背后的原理,若之前没有集成底层库的经验,那就会“神知无知”的走一步看一步,出错几率很大,出错了也不知道原因,然后会乱猜“这篇教程有问题“,“换个版本估计可以”,甚至“电脑有问题,重装下系统试试”。