Android使用FFmpeg 解码H264并播放(一)

本文介绍了如何在Android应用中利用FFmpeg库解码H264视频帧并进行播放。首先,文章描述了在开发中遇到的问题,即仅获取到H264帧而没有视频流地址。接着,简要提及了编译FFmpeg库的过程,并提供了已编译库的链接。然后,详细阐述了开发环境的配置步骤,包括设置NDK路径、修改build.gradle文件、组织项目目录结构以及编写C代码等。

问题描述

在开发中使用某摄像头的SDK,只能获取到一帧帧的 H264 视频数据,不知道视频流地址,需要自己解码出图像并播放。

问题解决

编译FFmpeg

此处省略,这里有 编译好的库,上传到Github了。

开发环境配置

1、 配置 AndroidStudio 的 NDK 路径。
2、 配置 app 的 build.gradle ,添加 CMake 参数

android {
	defaultConfig {
		externalNativeBuild {
		    cmake {
		        cppFlags "-std=c++11 -frtti -fexceptions"
	            abiFilters 'armeabi', 'armeabi-v7a', 'x86',"arm64-v8a"
	            }
	        }
		}
	}
    externalNativeBuild {
        cmake {
            path "CMakeLists.txt"
        }
    }
}

3、在 app/src/main 下新建 jniLibs 文件夹,将编译后的 ffmpeg 库的 .so 文件拷贝进来,拷贝后如下:

这里写图片描述

4、在 app/src/main 下新建 cpp 文件夹,
5、在app/src/main/cpp下新建 include 文件夹,将编译后的 ffmpeg 的 include 拷贝进来。拷贝后的目录结构如下:

这里写图片描述

6、在app/src/main 下新建 jni ,这里放自自己的 C 代码。
7、 在app的根目录新建 CMakeLists.txt,输入类似下面的代码

cmake_minimum_required(VERSION 3.4.1)

#工程绝对路径
set
评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值