多路视频策略显示

最近在ubuntu 12.04 上做了一个基于SDL 1.3版本的多路视频按策略显示的程序,最早是想通过寻找到某种规律来通过程序内部自己来决议显示策略,后来发现,还是使用配置文件比较好。这个项目接触到的新东西不太多,最关键的几个点:

1. 串口读写

    打开设备,配置参数,write/read,需要注意的是,串口读写不能简单的只调用一次read或者write,要判断返回值,确保读写内容完整。

2. ffmpeg解码+SDL显示(全屏和分屏切换)

    解码+显示在多线程的时候特别占CPU,SDL的多线程分屏,只需要在不同的线程中创建各自的Overlay即可,ffmpeg的解码在解I(DR)帧时,需要sps+pps+I(DR)帧。SDL 2.0出来了,从官方文档来看,基本已经放弃1.2和1.3版本了,很想升级,但是由于2.0的API已经大不一样,而又是个赶时间的项目,所以暂时还是没改动。

3. 共享内存+信号量

    共享内存+信号量的使用,几乎已是标配了,而且man的内容就已经很丰富了,这里就不谈了。

整个项目使用了4个线程作为数据源,5个线程作为解码显示,1个线程做串口通信

由于开发机CPU性能不够,只好装了块GT630,结果为了解决ubuntu如何安装NVIDIA显卡驱动,花了我1/3的时间,最终显卡装好了,但是SDL显示依然使用X11,囧,不过听说X11会自动调用显卡驱动,虽然我没有体会到。。。ubuntu安装nvdia显卡,需要在“可读写”的恢复模式下进行,在grub界面,使用ctrl+e,将恢复模式中的“ro” 改成“rw”后,再使用root进入控制台,运行安装,和网上其他人说的太不一样了。。。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值