我刚刚开始使用live555库。使用实况库的实例不多。我从相机获取图像数据,并将其转换为h264格式。现在,数据存储在程序的缓冲区中。所以我需要流式直播视频,并通过RTSP服务的RTP传输它。但是测试程序中的大多数" test *Streamer“从文件中读取数据,我如何修改它,以便从实时源而不是文件中获取输入?我应该使用什么数据结构或对象?如果有人能帮我一些指导/教程,或者至少是一些开始的例子,那就太好了。
发布于 2014-06-13 09:26:38
这里有一个很好的例子来说明你想要做什么:
https://www.imc-store.com.au/Articles.asp?ID=278
这是一个c++ VS2010项目,展示了如何使用FFMPEG对原始RGB帧进行编码,然后将该离散帧发送到Live555上进行流式传输。
VS2010项目包含所有的库和包含文件,所以它应该只是一个解压的例子,在VS2010中运行.sln文件,编译并运行!
另外,VLC源代码同时实现了FFMPEG和Live555,你可以看看他们的代码,找到一些额外的指针!
祝好运!
发布于 2014-12-12 13:41:04
您可以将testProgs目录中提供的测试*文件修改为从标准输入读取。为此,你需要在调用main函数之前“打开”你想要读取的设备。
int stream = open("/dev/ttyUSB0",O_RDONLY);然后,在您的play()函数中,在创建字节流源代码之前,您需要调用read()函数。这对我来说很有效。
https://stackoverflow.com/questions/22680558
复制相似问题