- 博客(30)
- 资源 (4)
- 收藏
- 关注
原创 Android服务Binder实现小记
defaultServiceManager()返回的是被IServiceManager包装的BpBinder类对象。 BpBinder对象调用transact函数会调用到IPCThreadState的transaction函数,改函数直接和binder驱动通信,向驱动写入数据binder_write_read。 Servicemanager守护进程会循环从binder读取驱动读取b
2016-12-06 17:24:15
685
原创 Android MediaPlayer 设置音轨
因为很多视频流是包含多个音轨的,所以实现播放器的时候,需要考虑音轨选择的问题。在android中,音频、视频统一被类TrackInfo描述,当然还不止这两类,可以看一下定义,还包含字幕等类型,都为Track信息。 public static final int MEDIA_TRACK_TYPE_UNKNOWN = 0; public static final
2016-09-20 10:34:55
11675
4
转载 数字电视中相关概念1 :码率、符号率、带宽、宽带
数字通信的理论是:8MHz是载波带宽,因为调制是双边带的,其基带带宽为4MHz。Nyquist理论说,每Hz的带宽可以传输2symbol/s的数据,这个说法是说发送滤波器可以做到理想频率响应。那么在正常情况下做不到的,所以最常用的设计方法是升余弦响应,这种设计有个特征系数就滚降因子,如为0.15,所以可以使用的有效带宽就为4/1.15=3.478MHz。这样在3.478MHz的基带带宽内可以传输的
2016-07-22 16:44:11
8027
原创 android 开发板挂载nfs
busybox mount -t nfs -o nolock xx.xx.xx.xx:/home/workspace /mnt
2016-05-30 11:18:15
753
原创 Android中使用printf打印信息
printf是很多人最熟悉的一个函数了,同时也是使用最多的一个函数。但是在Android中,直接使用printf是无法将信息输出到串口中显示的(除非直接通过串口运行可执行程序)。为了继续使用printf,可以使用重定向的方式,将printf的输出从STDOUT转到文件中,同时方便串口输入命令调试,也不影响日志的记录。freopen("/data/flash/stdout.txt","w",st
2016-04-21 12:42:27
10072
转载 PSI_SI
模拟电视中每一个频道就对应一个节目,所以只要调谐到相应的频率, 就可以收看对应的节目。 在数字电视信号中,为了节省带宽,采用了复用技术,一个物理频道可以传输多路节目。一个物理频道上只能传输一路TS流。想观看其中的某一个节目,还必须从该TS中提取出该节目的数据,再对数据进行解码。在mpeg-2的TS中,节目专用信息PSI(Program Specific Information),规定了该TS中
2015-12-07 14:33:48
768
翻译 继承VS组合
本文展示了Java中继承和组合的概念。首先给出一个继承的例子,然后给出如何使用组合来改进继承的设计。最后总结了如何在继承和组合之间做选择
2015-11-03 10:14:18
367
翻译 Java内存泄露介绍
java一个最重要的优势就是它的内存管理。你仅仅创建对象,而java垃圾回收器来负责分配和释放内存。然而,情况并不是如此简单,因为java应用中也经常发生内存泄露。下面的指导展示了什么事内存泄露,为什么会发生内存泄露,以及如何阻止内存泄露。1.什么事内存泄露?内存泄露的定义:对象不再被应用程序所使用,但是垃圾回收器不能移除它们,因为它们还被引用。为了理解这个定义,我
2015-10-30 18:06:14
369
原创 DHCP 流程
“DHCP(Dynamic Host Configuration Protocol,动态主机配置协议)是一个局域网的网络协议,使用UDP协议工作, 主要有两个用途:给内部网络或网络服务供应商自动分配IP地址,给用户或者内部网络管理员作为对所有计算机作中央管理的手段,在RFC 2131中有详细的描述。DHCP有3个端口,其中UDP67和UDP68为正常的DHCP服务端口,分别作为DHCP Ser
2015-10-22 15:30:50
2612
原创 uinput模拟鼠标事件,用于跨屏操作
前段时间遇到一个情况,一个手机端应用要操控电视端应用,其将手机端的操作在电视端转换为uinput模拟的鼠标事件。后来想想,很多远程操作都应该用到了这个方法,因此也决定看看具体是怎么做的。uinputde 的使用还是比较简单的,主要步骤如下:1.打开设备int fd = open("/dev/uinput", O_WRONLY | O_NDELAY);2.通过ioctl函数设置参
2015-09-30 11:26:59
2209
2
原创 TS流介绍
TS流(Transport Stream)是DVB领域的基础概念,它将音视频和PSI/SI等信息打包成传输包后进行传输。在一个ts流中可以传输多组节目服务,是节目复用的基础。传输包的大小事固定的,一般为188字节。如果信息数据不足188,则会插入填充字符。下面的图是传输流的语法结构,传输流就是这样一个个传输包构成的。通过解析可以得到包内数据。sync_byte: 同步字节,固定为
2015-09-02 10:18:35
1500
转载 PES结构
下面是一张PES结构的截图,仅供需要时参考。其中,前缀固定为 00 00 01,第四个byte为PES中的流类型,第五、六个字节为后面的数据的大小(不包含前6个byte)
2015-08-31 18:23:06
1660
翻译 数字视频广播字幕系统(第6.7章)
Digital Video Broadcasting (DVB):Subtitling systems第6\7章的翻译......
2015-08-28 16:59:47
757
翻译 数字视频广播字幕系统(第五章)
Digital Video Broadcasting (DVB):Subtitling systems第5章的翻译...
2015-08-26 11:11:04
893
翻译 数字视频广播字幕系统(第四章)
Digital Video Broadcasting (DVB):Subtitling systems第四章的翻译
2015-08-21 17:11:30
690
原创 使用gdbserver和gdb调试代码
本文主要简单记录一下使用gdbServer进行远程调试的方法,以便日后查询。详细的过程,可能日后还会更新。
2015-07-07 11:36:40
1129
原创 ndk-r10 Eclipse配置
ndk r10的推出,简化了Windows下机型jni编程的过程,本文来简单的介绍Windows下Eclipse中ndk编程的设置,就是如此简单。
2015-06-10 09:42:14
703
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人