
音视频开发实践
音视频开发实践
handy周
Hello World...
展开
-
android平台下基于cmake编译链接ffmpeg-3.4.x的32位和64位(armeabi-v7a和arm64-v8a)静态库
android平台下基于cmake编译链接ffmpeg-3.4.x的32位和64位(armeabi-v7a和arm64-v8a)静态库原创 2019-06-30 23:47:25 · 2553 阅读 · 3 评论 -
android平台下基于OpenSL ES实现音频录制功能
我们日常在处理音频录制的时候,大部分情况下都是使用AudioRecord录制原始的PCM数据,但是音频相关的处理通常都是在native层进行的,今天笔者要记录一下在native层通过OpenSL ES来完成音频的录制。原创 2019-01-31 23:38:09 · 2228 阅读 · 0 评论 -
androd平台下基于ffmpeg对AudioRecord录制的PCM音频数据编码为AAC文件
之前的博客写了关于使用Android SDK自带的MediaRecorder和AudioRecord录制音频数据,本次内容,主要是基于之前的内容,使用AudioRecord得到原始的PCM音频数据后用ffmpeg来完成编码工作原创 2018-12-03 12:16:55 · 1337 阅读 · 2 评论 -
android平台下基于MediaRecorder和AudioRecord实现录制AAC、PCM音频数据
在`android sdk`中提供了两种方式来实现音频的采集:`MediaRecorder`和`AudioRecord`,其中的`MediaRecorder`处于更上层,它可以对音频录制的数据编码成`AMR`,`MP3`等格式,并存储为文件,而`AudioRecord`则更灵活,因为它可以录制最原始的`PCM流数据`,这个在直播中很常见。原创 2018-12-03 12:09:34 · 3312 阅读 · 0 评论 -
android平台下基于ffmpeg的swscale模块实现对YUV和RGB数据进行转换
https://blog.youkuaiyun.com/leixiaohua1020/article/details/14215391原创 2018-12-01 21:20:08 · 1204 阅读 · 0 评论 -
android平台下基于ffmpeg实现对相机预览截图的功能(NV21数据编码为JPEG文件)
android平台下基于ffmpeg编码YUV数据为JPEG文件原创 2018-12-01 20:47:19 · 1286 阅读 · 0 评论 -
android平台下基于ffmpeg和ANativeWindow实现简单的视频播放器
android平台下基于ffmpeg和ANativeWindow实现简单的视频播放器原创 2018-12-01 14:24:34 · 1439 阅读 · 0 评论 -
android平台下基于ffmpeg采集Camera数据编码成H.264推流到RTMP服务器
音视频实践学习android全平台编译ffmpeg以及x264与fdk-aac实践ubuntu下使用nginx和nginx-rtmp-module配置直播推流服务器android全平台编译ffmpeg合并为单个库实践android-studio使用cmake编译ffmpeg实践android全平台下基于ffmpeg解码MP4视频文件为YUV文件android全平台编译ffmpeg支持...原创 2018-11-29 22:36:11 · 3575 阅读 · 3 评论 -
android平台下基于ffmpeg对相机采集的NV21数据编码为MP4视频文件
首先使用av_register_all()函数注册所有的编码器和复用器(理解为格式封装器)。该步骤必须放在所有ffmpeg代码前第一个执行 2、avformat_alloc_output_context2():初始化包含有输出码流(AVStream)和解复用器(AVInputFormat)的AVFormatContext 3、avio_open( )打开输出文件 ...原创 2018-11-27 13:31:39 · 3881 阅读 · 2 评论 -
YUV420P、YUV420SP、NV12、NV21和RGB互相转换并存储为JPEG以及PNG图片
YUV420和RGB转换存储为BMP和JPG以及PNG图片原创 2018-11-24 22:50:36 · 22661 阅读 · 2 评论 -
图解RGB565、RGB555、RGB16、RGB24、RGB32、ARGB32等格式的区别
常见的RGB格式有RGB1、RGB4、RGB8、RGB565、RGB555、RGB24、RGB32、ARGB32等原创 2018-11-22 11:03:35 · 87912 阅读 · 10 评论 -
ubuntu平台下编译vlc-android视频播放器实践
https://code.videolan.org/videolan/libvlc-android-sampleshttps://blog.youkuaiyun.com/ZhangWanyu_/article/details/79943199原创 2018-11-21 11:12:11 · 793 阅读 · 0 评论 -
图解YU12、I420、YV12、NV12、NV21、YUV420P、YUV420SP、YUV422P、YUV444P的区别
android平台下基于Camera详解NV21(YUV420P)、NV12(YUV420SP)和RGBA、RGB、BGRA、BGR概述NV21参考:https://blog.youkuaiyun.com/leixiaohua1020/article/details/50534150https://blog.youkuaiyun.com/junzia/article/details/76315120https...原创 2018-11-20 12:30:19 · 79930 阅读 · 15 评论 -
android平台下音频编码之编译LAME库转码PCM为MP3
交叉编译编写基本的配置脚本:config.sh#NDK路径export ANDROID_NDK_ROOT=/home/byhook/android/android-ndk-r10eexport AOSP_TOOLCHAIN_SUFFIX=4.9export AOSP_API="android-21"#架构if [ "$#" -lt 1 ]; the原创 2018-11-10 19:50:28 · 1937 阅读 · 0 评论 -
android全平台基于ffmpeg解码本地MP4视频推流到RTMP服务器
ffmpeg实践学习android全平台编译ffmpeg以及x264与fdk-aac实践ubuntu下使用nginx和nginx-rtmp-module配置直播推流服务-器android全平台编译ffmpeg合并为单个库实践android-studio使用cmake编译ffmpeg实践android全平台编译ffmpeg视频解码器实践android全平台编译ffmpeg支持命令行实践...原创 2018-10-31 22:46:33 · 4247 阅读 · 0 评论 -
android全平台编译ffmpeg支持命令行实践
本例基于 android全平台编译ffmpeg合并为单个库实践 进行的目录环境准备新建cmd工程修改源文件运行输出环境准备操作系统 ubuntu 16.05编译准备好libffmpeg库和需要include头文件,我们还需要抽取ffmpeg-3.3.8中的部分头文件和源文件笔者整理了一个copy_ffmpeg_files.sh脚本FFMPEG_DIR=ffmpeg-3.3...原创 2018-10-31 13:40:13 · 1629 阅读 · 0 评论 -
android全平台下基于ffmpeg解码MP4视频文件为YUV文件
目录配置环境新建decode工程配置环境操作系统: ubuntu 16.05注意: ffmpeg库的编译使用的是android-ndk-r10e版本,使用高版本编译会报错而android-studio工程中配合cmake使用的版本则是android-ndk-r16b版本新建工程ffmpeg-single-hello配置build.gradle如下android { ...原创 2018-10-31 13:03:44 · 2300 阅读 · 0 评论 -
android-studio使用cmake编译ffmpeg实践
本例使用的是合并的libffmpeg库,可参考之前的实践操作 android全平台编译ffmpeg合并为单个库实践目录配置环境新建hello工程配置环境操作系统: ubuntu 16.05注意: ffmpeg库的编译使用的是android-ndk-r10e版本,使用高版本编译会报错而android-studio工程中配合cmake使用的版本则是android-ndk-r16b版本...原创 2018-10-31 12:17:37 · 2393 阅读 · 1 评论 -
android全平台编译ffmpeg合并为单个库实践
目录编译环境配置config.sh脚本配置合并脚本build_ffmpeg_merge.sh脚本地址编译环境操作系统:ubuntu 16.05android-ndk-r10e注意 这里如果使用高版本比如android-ndk-r16b 编译会报错ffmpeg-3.3.8版本配置config.sh脚本#NDK路径export ANDROID_NDK_ROOT=/home...原创 2018-10-31 10:30:01 · 2483 阅读 · 0 评论 -
ubuntu下使用nginx和nginx-rtmp-module配置直播推流服务器
本来准备在centos服务器上搭建的,因为笔者工作系统是ubuntu,因此直接在本机上搭建,更方便快捷,配置过程比较简单,记录一下。目录配置环境安装obs-studio开始第一次推流安装vlc播放器开始拉流配置环境配置环境配置环境操作系统:ubuntu 16.05nginx-1.15.5版本同步nginx-rtmp-module代码git clone https://gi...原创 2018-10-31 08:29:27 · 3472 阅读 · 1 评论 -
android全平台编译ffmpeg以及x264与fdk-aac实践
之前一篇移植的博客。Android平台移植FFmpeg和x264编译环境ubuntu 16.04android-ndk-r10effmpeg-3.3.8版本fdk-aac-0.1.6版本开始编译x264库先获取最新的x264库git clone http://git.videolan.org/git/x264.git编写脚本,此脚本可以编译全平台版本目录结构如下:——x2...原创 2018-10-28 23:07:02 · 4405 阅读 · 18 评论 -
Android平台移植FFmpeg和x264
之前记录过一篇编译FFmpeg的文章,没写完整 最近在做ijkplayer的二次开发,重新拾起FFmpeg,记录完。 记得之前的移植很头疼,网上很多帖子,都是抄来抄去,作者也没有去验证 笔者记录的目的,是完整的记录下编译过程,以及从中碰到的坑,避免以后再次花时间预研下文编译过程为笔者亲自验证通过 笔者也在Github上开了一个库,记录下编译过的源码 x264解码库 http:/原创 2016-07-20 23:24:05 · 5581 阅读 · 2 评论 -
Ubuntu 14.04.2 移植FFmpeg 2.8.3 到Android平台
笔者生产环境是ubuntu14.04.2一直都听说FFmpeg很强大很暴力但一直都没时间研究沉淀今天心血来潮,决定试试看上正文首先下载FFmpeg 2.8.3源代码官方地址Github地址1.首先修改configure文件 去除后缀名之后的版本号#修改前#SLIBNAME_WITH_MAJOR='$(SLIBNAME).$(LIBMAJOR)'#L...原创 2015-12-03 23:38:08 · 1868 阅读 · 1 评论