09 2016 档案

摘要:引言 每一个C++库的使用都是从开发环境的配置开始的,其实每个库的配置过程都是大同小异,总结下来有下面几个步骤: 下载库文件,这里假定是已经预先编译完成的。 配置库文件的包含目录(include)和库目录(lib) 配置库文件的动态链接库(dll),这一步是很多人容易忽略的。上面配置好包含目录和库目 阅读全文
posted @ 2016-09-23 21:34 laughingQing 阅读(1037) 评论(0) 推荐(0)
摘要:在前面的学习中,视频和音频的播放是分开进行的。这主要是为了学习的方便,经过一段时间的学习,对FFmpeg的也有了一定的了解,本文就介绍了如何使用多线程同时播放音频和视频(未实现同步),并对前面的学习的代码进行了重构,便于后面的扩展。本文主要有以下几个方面的内容: 多线程播放视音频的整体流程 多线程队 阅读全文
posted @ 2016-09-23 21:33 laughingQing 阅读(1673) 评论(0) 推荐(0)
摘要:在上一篇文章中,视频和音频是各自独立播放的,并不同步。本文主要描述了如何以音频的播放时长为基准,将视频同步到音频上以实现视音频的同步播放的。主要有以下几个方面的内容 视音频同步的简单介绍 DTS 和 PTS 计算视频中Frame的显示时间 获取Audio clock(audio的播放时长) 将视频同 阅读全文
posted @ 2016-09-23 21:33 laughingQing 阅读(2333) 评论(0) 推荐(0)
摘要:前段时间,在学习试用FFmpeg播放音频的时候总是有杂音,网上的很多教程是基于之前版本的FFmpeg的,而新的FFmepg3中audio增加了平面(planar)格式,而SDL播放音频是不支持平面格式的,所以通过FFmpeg解码出来的数据不能直接发送到SDL进行播放,需要进行一个格式转换。通过网上一 阅读全文
posted @ 2016-09-23 21:28 laughingQing 阅读(995) 评论(0) 推荐(0)
摘要:本文主要从以下几个方面对AVPacket做解析: AVPacket在FFmpeg中的作用 字段说明 AVPacket中的内存管理 AVPacket相关函数的说明 结合AVPacket队列说明下AVPacket在传递过程中数据缓存的管理 查了一些资料,发现FFmpeg的版本更新还是挺快,而且有很多AP 阅读全文
posted @ 2016-09-23 21:24 laughingQing 阅读(831) 评论(0) 推荐(0)
摘要:参考dranger tutorial,本文将介绍如何使用FFmpeg解码音频数据,并使用SDL将解码后的数据输出。本文主要包含以下几方面的内容: 关于播放音频的需要的一些基础知识介绍 使用SDL2播放音频 数据队列 音频格式的转换 dranger tutorial确实入门FFmpeg比较好的教程,虽 阅读全文
posted @ 2016-09-23 21:16 laughingQing 阅读(928) 评论(0) 推荐(0)
摘要:在上一篇文章中,对FFmpeg的视频解码过程做了一个总结。由于才接触FFmpeg,还是挺陌生的,这里就解码过程再做一个总结。本文的总结分为以下两个部分: 数据读取,主要关注在解码过程中所用到的FFmpeg中的结构体。 解码过程中所调用的函数 在学习的过程主要参考的是dranger tutorial, 阅读全文
posted @ 2016-09-23 21:10 laughingQing 阅读(489) 评论(0) 推荐(0)
摘要:在视频解码前,先了解以下几个基本的概念: 编解码器(CODEC):能够进行视频和音频压缩(CO)与解压缩(DEC),是视频编解码的核心部分。 容器/多媒体文件(Container/File):没有了解视频的编解码之前,总是错误的认为平常下载的电影的文件的后缀(avi,mkv,rmvb等)就是视频的编 阅读全文
posted @ 2016-09-23 21:04 laughingQing 阅读(722) 评论(0) 推荐(0)
摘要:git checkout -b newlocal origin/q01v31source build/envsetup.shlunch msm8916_32-usermake -j4 make -j4 2>&1 | tee build.txt android编译命令的话,把/usr/lib/jvm/ 阅读全文
posted @ 2016-09-23 19:42 laughingQing 阅读(2120) 评论(0) 推荐(0)
摘要:音视频 版权声明:本文为博主原创文章,未经博主允许不得转载。 前言 随着音视频领域的火热,在很多领域(教育,游戏,娱乐,体育,跑步,餐饮,音乐等)尝试做音视频直播/点播功能,那么作为开发一个小白,如何快速学习音视频基础知识,了解音视频编解码的传输协议,编解码方式,以及如何技术选型,如何解决遇到的坑, 阅读全文
posted @ 2016-09-19 11:49 laughingQing 阅读(19119) 评论(1) 推荐(0)
摘要:我遇到这样的问题,本地部署时抛出异常java.lang.OutOfMemoryError:GC overhead limit exceeded导致服务起不来,查看日志发现加载了太多资源到内存,本地的性能也不好,gc时间消耗的较多。解决这种问题两种方法是,增加参数,-XX:-UseGCOverhead 阅读全文
posted @ 2016-09-09 16:10 laughingQing 阅读(45150) 评论(0) 推荐(0)
摘要:上篇经验,完成了android开发环境的搭建,相信大家也下载了那1.52G,已经下载好了的Adt_bundle。 那么,我们来点击SDK Manager.exe,看看有些什么吧 2 如图所示,为整个目录结构,我们一点一点来分析 3 首先,看Tools目录。 1)Android SDK Tools 安 阅读全文
posted @ 2016-09-09 15:50 laughingQing 阅读(2303) 评论(0) 推荐(0)
摘要:为什么需要学Gradle? Gradle 是 Android 现在主流的编译工具,虽然在Gradle 出现之前和之后都有对应更快的编译工具出现,但是 Gradle 的优势就在于它是亲儿子,Gradle 确实比较慢,这和它的编译过程有关,但是现在的Gradle 编译速度已经有了成倍提高。除此之外,相对 阅读全文
posted @ 2016-09-09 10:58 laughingQing 阅读(27714) 评论(2) 推荐(1)
摘要:最新2.0系列文章参考: Android Studio2.0 教程从入门到精通Windows版 - 安装篇Android Studio2.0 教程从入门到精通Windows版 - 入门篇Android Studio2.0 教程从入门到精通Windows版 - 提高篇 Android Studio2. 阅读全文
posted @ 2016-09-07 10:24 laughingQing 阅读(155995) 评论(2) 推荐(3)
摘要:RxJava作为目前一款超火的框架,它便捷的线程切换一直被人们津津乐道,本文从源码的角度,来对RxJava的线程模型做一次深入理解。(注:本文的多处代码都并非原本的RxJava的源码,而是用来说明逻辑的伪代码) 入手体验 RxJava 中切换线程非常简单,例如最常见的异步线程处理,主线程回调的模型, 阅读全文
posted @ 2016-09-04 11:21 laughingQing 阅读(2218) 评论(0) 推荐(0)
摘要:出于: androidChina http://www.androidchina.net/3595.html 学习 Android 至今,大大小小的坑没少踩,庆幸的是,在强大的搜索引擎与无私奉献的人们的帮助下,我遇到的坑都顺利地被填平了。 为了便于日后遇到同样的问题时,能免于再次搜索带来的麻烦,我养 阅读全文
posted @ 2016-09-02 14:32 laughingQing 阅读(410) 评论(0) 推荐(0)