live555研究
hdxbw-wq
这个作者很懒,什么都没留下…
展开
-
Live555 直播性能优化
优化1:同步读取数据源修改为异步读取数据源, FramedSource的子类的doGetNextFrame函数中不要阻塞等待数据源, 在无数据时可以重新增加一个定时器任务,延时再读取数据。在无数据时增加一个等待任务:voidMyFramedSource::doGetNextFrame(){ if(无数据可读){//延时3000微妙(3毫秒)再次读取数据 envir().taskScheduler().scheduleDelayedTask(3000,(TaskFunc*)Dela...原创 2020-11-20 17:40:11 · 2342 阅读 · 0 评论 -
AAC ADTS格式分析
关于adt里字段的解释有些不全,很可能是因为那些是常量,请参考代码部分(里面可以看出哪些是常量)------------------------------------------------------------------------------------------1.ADTS是个啥ADTS全称是(Audio Data Transport Stream),是AAC的一种十分常见的传输格式。记得第一次做demux的时候,把AAC音频的ES流从FLV封装格式中抽出来送给硬件解码器时,不转载 2020-10-19 14:40:13 · 674 阅读 · 0 评论 -
简析LIVE555中的延时队列
最近在看LIVE555的源码,感觉其中的延时队列写的不错,于是就总结一下。 首先描述一下LIVE555中的延时队列的设计理念。首先,如下图,A,B,C分别为时间轴上的三个事件点,而head表示当前时间点。 假如我们要描述一个事件发生的时间,可以有两种方法:一种方法直接描述事件发生的绝对时间;另一种方法则是可以描述和另一事件发生的相对时间。而LIVE555中采用的就是后者。在LIVE555中,首先将所有的事件点以发生时间的先后进行排序,然后每个事件对应的时间都是相对于前一事件发生的...转载 2020-09-14 16:41:14 · 401 阅读 · 0 评论 -
live555ProxyServer.cpp的学习
live555ProxyServer.cpp在live/proxyServer目录下,这个程序展示了如何利用live555来做一个代理服务器转发rtsp视频(例如,IPCamera的视频)。 首先来看一下main函数 1 int main(int argc, char** argv) 2 { 3 // Increase the maximum size of video frames that we can 'proxy' without truncation. 4 // (Su转载 2020-08-25 10:30:52 · 1311 阅读 · 0 评论