关于CMMB的介绍,网上能找得到相关资料,我就不细说了,大家可以去放狗。

前段时间完成了Android平台上CMMB的实现,现将实现步骤简单介绍如下。分两个step来实现:

(一)、基于530频点(北京)cctv-news台清流频道(写死一个频点、一个清流频道)的调试:

1、在Android上调通cmmb driver和firmware,使其有正确的输出。

2、ffmpeg在Android上的集成。

3、CMMB Engine的实现(C/S架构)。

4、RingBuffer的实现(用来存放接收到的RTP包)。

5、调度算法(Scheduler)的实现。

6、RTP parser及包的reconstruction。

7、音视频解码的实现(包括audio打包格式的转换等等)。

8、Video render的调试。

9、Audio render的调试。

10、A/V同步的实现。

11、稳定性、健壮性、性能(CPU占用率等)等的调试。

12、UI的实现(由于CMMB重点在于展示内容,所以UI不用做得那么炫)。

以上各部分全部分割个小的模块来实现,然后集成,这样能使整个项目更易于掌控。比如:Video的render,我们就可以拿一段yuv文件来在板子上调试其Overlay输出。

(二)、其次是调试所有能扫描到的频点音视频输出(调试解密、解扰),频点、频道扫描,选台,切台等功能的实现。

难点在(一),细节非常多,某个点卡住了就有可能导致整个项目停滞好几天。把它调通了的话(二)要不了几天就能完成。

有时间的话在详细讨论一下具体实现细节吧!

更多相关文章

  1. 浅谈Java中Collections.sort对List排序的两种方法
  2. python list.sort()根据多个关键字排序的方法实现
  3. android EditText设置不可写
  4. Android(安卓)拨号器的简单实现
  5. android实现字体闪烁动画的方法
  6. android studio调试c/c++代码
  7. Android中不同应用间实现SharedPreferences数据共享
  8. android(NDK+JNI)---Eclipse+CDT+gdb调试android ndk程序
  9. [Android(安卓)NDK]Android(安卓)JNI开发例子 ---3 在JNI中实现o

随机推荐

  1. android中转换content://media/external/
  2. TextView中ellipsize属性
  3. android之Binder机制解析
  4. android Lottie详细使用
  5. 【Android】Chronometer计时器实现计时、
  6. Android学习之Drawelayout
  7. Android(安卓)P图形架构之实现双屏异显
  8. android关于Intent的读书笔记
  9. Android中的JVM如何追蹤Bitmap buffer的
  10. Android主题和界面跳转动画的设置