摘要: 之前的视频解码仍然存在问题,那就是是在主线程中去完成解码的,会造成线程阻塞,这里将其改为多线程解码,使其主线程不被阻塞前面介绍了音视频的主线程解码,那样会阻塞主线程,在前面学习了多线程以后,就可以对音频和视频分离开来在子线程里解析了,但这样存在音视频同步的问... 阅读全文
posted @ 2019-04-05 23:36 cj5785 阅读(638) 评论(0) 推荐(0) 编辑
摘要: 之前的视频解码仍然存在问题,那就是是在主线程中去完成解码的,会造成线程阻塞,这里将其改为多线程解码,使其主线程不被阻塞前面介绍了音视频的主线程解码,那样会阻塞主线程,在前面学习了多线程以后,就可以对音频和视频分离开来在子线程里解析了,但这样存在音视频同步的问... 阅读全文
posted @ 2019-04-05 23:36 cj5785 阅读(141) 评论(0) 推荐(0) 编辑
摘要: 前面讲到记录到ffmpeg音视频解码的时候,采用的是在主线程中进行操作,这样是不行的,在学习了POSIX多线程操作以后,就可以实现其在子线程中解码了,也可以实现音视频同步了简单示例在native实现中,直接调用pthread的多线程方法,这样就可以在JNI层... 阅读全文
posted @ 2019-04-05 23:35 cj5785 阅读(330) 评论(0) 推荐(0) 编辑
摘要: 在做开发的时候,难免会crash,那么在这时候需要进行调试,在C/C++的代码调试中,gdb是很常用的gdb在这不做过多介绍,之前在C语言中已经做过总结,这里简要回顾一下要使用gdb,在编译的时候需要添加-g参数gcc test.c -g -o test进入... 阅读全文
posted @ 2019-04-05 23:34 cj5785 阅读(151) 评论(0) 推荐(0) 编辑
摘要: 在做开发的时候,难免会crash,那么在这时候需要进行调试,在C/C++的代码调试中,gdb是很常用的gdb在这不做过多介绍,之前在C语言中已经做过总结,这里简要回顾一下要使用gdb,在编译的时候需要添加-g参数gcc test.c -g -o test进入... 阅读全文
posted @ 2019-04-05 23:34 cj5785 阅读(156) 评论(0) 推荐(0) 编辑
摘要: 在做NDK开发的时候,很多情况下都是需要使用多线程的,一方面是提高程序运行效率,另一方面就是防止主线程阻塞C的多线程在C语言里,可以通过对于POSIX标准的运用,使得C语言执行多线程提高程序的执行速度,以及对资源的合理利用POSIXPOSIX原理POSIX可... 阅读全文
posted @ 2019-04-05 23:33 cj5785 阅读(149) 评论(0) 推荐(0) 编辑
摘要: 在做NDK开发的时候,很多情况下都是需要使用多线程的,一方面是提高程序运行效率,另一方面就是防止主线程阻塞C的多线程在C语言里,可以通过对于POSIX标准的运用,使得C语言执行多线程提高程序的执行速度,以及对资源的合理利用POSIXPOSIX原理POSIX可... 阅读全文
posted @ 2019-04-05 23:33 cj5785 阅读(356) 评论(0) 推荐(0) 编辑
摘要: 在Android的源代码中,随处可见Makefile,那么Makefile到底是用来干嘛的呢?其实Makefile和Maven、ANT、Gradle一样,属于构建工具,当项目比较庞大的时候,就可以使用makefile来构建项目了makefile简介一个工程中... 阅读全文
posted @ 2019-04-05 23:31 cj5785 阅读(88) 评论(0) 推荐(0) 编辑
摘要: 在Android的源代码中,随处可见Makefile,那么Makefile到底是用来干嘛的呢?其实Makefile和Maven、ANT、Gradle一样,属于构建工具,当项目比较庞大的时候,就可以使用makefile来构建项目了makefile简介一个工程中... 阅读全文
posted @ 2019-04-05 23:31 cj5785 阅读(114) 评论(0) 推荐(0) 编辑
摘要: 之前已经用他人的编译脚本对ffmpeg进行了成功编译,那么在裁剪ffmpeg的时候需要指定文件,这时候应该怎么编写编译脚本呢?本文目的在于说明ffmpeg编译脚本的编写首先在ffmpeg的目录下新建编译脚本touch android_build.sh #新建... 阅读全文
posted @ 2019-04-05 23:28 cj5785 阅读(305) 评论(0) 推荐(0) 编辑
摘要: 之前已经用他人的编译脚本对ffmpeg进行了成功编译,那么在裁剪ffmpeg的时候需要指定文件,这时候应该怎么编写编译脚本呢?本文目的在于说明ffmpeg编译脚本的编写首先在ffmpeg的目录下新建编译脚本touch android_build.sh #新建... 阅读全文
posted @ 2019-04-05 23:28 cj5785 阅读(827) 评论(1) 推荐(0) 编辑
摘要: 前文讲到音频解码,将音频解码,并且输入到PCM文件,这里将音频通过AudioTrack直接输出音频播放说明在Android中自带的MediaPlayer也可以对音频播放,但其支持格式太少使用ffmpeg可以支持更多格式常用的音频播放有很多种方式,但播放PCM... 阅读全文
posted @ 2019-04-05 23:27 cj5785 阅读(825) 评论(0) 推荐(0) 编辑
摘要: 在之前的文章已经初步对视频解码有个初步的认识了,接下来来看一看音频解码音频解码步骤音频解码与视频解码一样,有者固有的步骤,只要按照步骤来,就能顺利的解码音频以上是ffmpeg的解码流程图,可以看到,无论是音频还是视频,其步骤都是一样的,差别在于在视频处理和音... 阅读全文
posted @ 2019-04-05 23:26 cj5785 阅读(257) 评论(0) 推荐(0) 编辑
摘要: 在之前的文章已经初步对视频解码有个初步的认识了,接下来来看一看音频解码音频解码步骤音频解码与视频解码一样,有者固有的步骤,只要按照步骤来,就能顺利的解码音频以上是ffmpeg的解码流程图,可以看到,无论是音频还是视频,其步骤都是一样的,差别在于在视频处理和音... 阅读全文
posted @ 2019-04-05 23:26 cj5785 阅读(173) 评论(0) 推荐(0) 编辑
摘要: 上次已将ffmpeg的动态库编译出来了,并且使用了ffmpeg的转码功能,成功将mp4格式视频转化为yuv视频,这篇文章基于上次测试的demo,使用surfaceview显示解码完成的像素数据布局设置和权限添加布局 权限编写自定义vie... 阅读全文
posted @ 2019-04-05 23:25 cj5785 阅读(205) 评论(0) 推荐(0) 编辑
摘要: 上次已将ffmpeg的动态库编译出来了,并且使用了ffmpeg的转码功能,成功将mp4格式视频转化为yuv视频,这篇文章基于上次测试的demo,使用surfaceview显示解码完成的像素数据布局设置和权限添加布局 权限编写自定义vie... 阅读全文
posted @ 2019-04-05 23:25 cj5785 阅读(294) 评论(0) 推荐(0) 编辑
摘要: Android平台要使用ffmpeg就需要编译生成动态库,这里采用Ubuntu编译Android动态库文件准备要编译生成Android需要以下文件NDKffmpeg源代码NDK下载NDK可以去Google下载,也可以在国内一些Android网站下载这里推荐两... 阅读全文
posted @ 2019-04-05 23:23 cj5785 阅读(413) 评论(0) 推荐(0) 编辑
摘要: Android平台要使用ffmpeg就需要编译生成动态库,这里采用Ubuntu编译Android动态库文件准备要编译生成Android需要以下文件NDKffmpeg源代码NDK下载NDK可以去Google下载,也可以在国内一些Android网站下载这里推荐两... 阅读全文
posted @ 2019-04-05 23:23 cj5785 阅读(145) 评论(0) 推荐(0) 编辑
摘要: ffmpeg官网提供了window平台下额开发工具供开发者使用,这篇文章主要以3.2版本的ffmpeg作为演示,记录在VS2013下,怎么去编译ffmpeg下载在官网中,按照以下步骤下载下载Windows版选择需要的版本下载版本这里接下来就是选择版本,这里我... 阅读全文
posted @ 2019-04-05 23:10 cj5785 阅读(134) 评论(0) 推荐(0) 编辑
摘要: ffmpeg官网提供了window平台下额开发工具供开发者使用,这篇文章主要以3.2版本的ffmpeg作为演示,记录在VS2013下,怎么去编译ffmpeg下载在官网中,按照以下步骤下载下载Windows版选择需要的版本下载版本这里接下来就是选择版本,这里我... 阅读全文
posted @ 2019-04-05 23:10 cj5785 阅读(124) 评论(0) 推荐(0) 编辑