目前在改android2.3多媒体解码部分的框架,对解码部分还有点疑惑,AwesomePlayer类提供了底层的接口,哪位接触过这部分的源码,帮忙解释下,该类是如何对视频读取然后一帧帧的播放的,特别是以下函数bool AwesomePlayer::getBitrate(int64_t *bitrate) {
off_t size;
if (mDurationUs >= 0 && mCachedSource != NULL
&& mCachedSource->getSize(&size) == OK) {
*bitrate = size * 8000000ll / mDurationUs; // in bits/sec
return true;
} if (mBitrate >= 0) {
*bitrate = mBitrate;
return true;
} *bitrate = 0; return false;
}
在获取帧速率时*bitrate = size * 8000000ll / mDurationUs; 8000000ll是什么数值?
off_t size;
if (mDurationUs >= 0 && mCachedSource != NULL
&& mCachedSource->getSize(&size) == OK) {
*bitrate = size * 8000000ll / mDurationUs; // in bits/sec
return true;
} if (mBitrate >= 0) {
*bitrate = mBitrate;
return true;
} *bitrate = 0; return false;
}
在获取帧速率时*bitrate = size * 8000000ll / mDurationUs; 8000000ll是什么数值?
解决方案 »
- RadioGroup问题!!(求助)
- android 2.3编译报 错 是 什么 问题啊
- android 下载中文文件名 乱码问题
- 初学者求助:关于在res/drawable中添加xml实现控件颜色改变的
- 调用另一个Apk,怎么样判断Apk是否已经安装了呢
- 如何通过URI获取数据库表指定列的数据类型?
- ViewPager禁掉手势滑动,但htc或三星S4自带软键盘的上下左右键,仍就可以切换子页面
- android 4.4 webview 图片如何自适应 之前的方法失效了~
- Android studio 模拟器屏幕很小
- Android+PHP+Mysql实现服务器简单登录功能
- Android 多屏幕适配问题,高手请进~
- android键盘出现时输入框缩小,键盘掩藏时输入框充满整个屏幕
1 S = 1000000 usll : long long //bitrate = size *8 /(1000000 us) (bits/s)*bitrate = size * 8000000ll / mDurationUs
AwesomePlayer播视频主要的函数是onVideoEvent(),里面的drainInputBuffers();fillOutputBuffers();通过OMX解码视频,最后mVideoRenderer->render转换格式