0

我刚刚开始使用 live555 库。使用实时库的实例不多。我从相机获取图像数据并转换为 h264 格式。现在,数据存储在程序的缓冲区中。所以我需要流式传输实时视频并通过带有 RTSP 服务的 RTP 传输。但是测试程序中最“test*Streamer”从文件中读取数据,我该如何修改它以便从实时源而不是文件中获取输入?我应该使用哪些数据结构或对象?如果有人可以帮助我提供某种指导/教程或至少一些示例,那将是很大的帮助。

4

2 回答 2

1

这是您在这里追求的一个很好的例子:

https://www.imc-store.com.au/Articles.asp?ID=278

这是一个 c++ VS2010 项目,展示了如何使用 FFMPEG 对原始 RGB 帧进行编码,然后将该离散帧发送到 Live555 以进行流式传输。

VS2010项目包含所有的库和包含文件所以应该只是解压的情况,在VS2010中运行.sln文件,编译运行!

VLC 源代码同时实现了 FFMPEG 和 Live555,您可以查看他们的代码以获得一些额外的指针!

祝你好运!

于 2014-06-13T01:26:38.027 回答
0

您可以修改 testProgs 目录中提供的 test* 文件以从标准输入读取。为此,您需要在调用 main 函数之前“打开”要读取的设备,例如

int stream = open("/dev/ttyUSB0",O_RDONLY);

然后在您的play()函数中,在创建字节流源之前,您需要调用该read()函数。这对我来说非常有用。

于 2014-12-12T05:41:04.263 回答