2017-08-29 352 views
0

我目前正在研究LIVE555流媒体的示例开放源代码以测试视频流。
我已经在虚拟机中的一个Ubuntu 16.04系统上成功编译,运行测试程序./testH264VideoStreamer,没有任何错误消息。在控制台中,程序运行如下:live555样本测试程序无法通过VLC播放

./testH264VideoStreamer 
Play this stream using the URL "rtsp://172.18.15.20:8554/testStream" 
Beginning streaming... 
Beginning to read from file... 
...done reading from file 
Beginning to read from file... 
...done reading from file 
Beginning to read from file... 

但是,在VLC播放器上,我无法查看视频。任何帮助或建议真诚感谢。

VLC player setting enter image description here

VLC streaming enter image description here

注:

  1. 我还没有做出下载源代码的任何更改。

  2. 媒体文件“test.264”是可玩如果VLC播放直接播放,文件被放置在./live/testProgs并更名为“test.264”

  3. 不同于如果VLC无法检测IP或文件,在VLC端或控制台端不会弹出错误消息。它似乎就是不能正确解码视频

  4. 虚拟机和VLC播放器在同一台计算机上。不知道这是否会影响性能。 VM ubuntu的IP是一个静态IP。

回答

0

这是因为VLC没有检测到使用的分流器。

使用测试程序testH264VideoStreamer发送H264帧的基本流,您需要对VLC说使用H264分离器而不是使用自动检测。

这可能会以不同的方式来完成:

  • 在命令行(例如vlc --demux h264 rtsp://172.18.15.20:8554/testStream

  • 添加/ H264到URL添加--demux H264(使用rtsp/h264://172.18.15.20:8554/testStream

  • 在“首选项” - >“输入/编解码器” - >“分配器”中选择H264分流器

+0

嗨mpromonet,非常感谢回复!事实上,我确实注意到了这一点,并且在测试之前已经在首选项中设置了H264视频分流器,所以不太可能这是根本原因。但是,尽管我尝试通过VLC从其他PC连接到流式传输器,但它起作用!所以我想在同一台机器上VM和Windows之间只有一些端口冲突。再次感谢您的帮助! – Fish

0

通过从同一网络中的另一台计算机访问解决,可能是由于同一台物理机器中VM端口和Windows VLC的冲突。对于其他人面临的类似问题,如果不这样做,应该总是尝试mpromonet的方式。