libdvbpsi是VLC中用于解复用的一个库,可以在VLC的主页中下载,笔者用的是0.1.7版本。
这里假定是188字节的TS文件(还有另外两种)。第一个while是读到一个0x47(TS packet的同步字节),第二个while是读入剩下的187字节,如果剩下不到187字节函数将返回失败。
接下来的回调函数DumpPAT很简单就是打印些东西,不熬述。
看main函数:
1. open一个文件,在win下面编译可能要改一下;
2. dvbpsi_AttachPAT,注册一个回调函数,用来打印一些PMT的东东;
3. 接下来就对文件中的每一个packet看看是不是PID为0x00(PAT的packet),直接丢给dvbpsi_PushPacket,最后就由DumpPAT打印出来。
这个例子没什么作用,o(∩_∩)o 哈哈。