我使用vlc从摄像机录制视频流时遇到问题。
当我运行命令vlc
rtsp://172.X.X.X/live.sdp
vlc以适当的方式显示视频。当我运行命令
vlc rtsp://172.X.X.X/live.sdp --run-time=5 --sout=file/ps:test6.mpg vlc://quit
有新创建的文件,但重量为0或4K,我无法打开它。在控制台我得到了下面的日志。有什么问题?
VLC media player 2.2.2 Weatherwax (revision 2.2.2-0-g6259d80)
[0000000000a31148] core libvlc: Uruchamianie vlc z domyślnym
interfejsem. Użyj 'cvlc', aby używać vlc bez interfejsu.
[00007f42cc003258] mux_ps mux: Open
[00007f42cc003258] core mux error: cannot add this stream
[00007f42cc04b168] core decoder error: cannot create packetizer
output (mlaw)
[00007f42ec002918] core input error: ES_OUT_RESET_PCR called
[00007f42cc042988] core decoder error: cannot continue streaming
due to errors
[00007f42ec002918] core input error: ES_OUT_RESET_PCR called
[00007f42cc003258] mux_ps mux: Close
[00007f42cc003258] idummy demux: command `quit'
QObject::~QObject: Timers cannot be stopped from another thread
`
答案 0 :(得分:0)
我和你的问题一样 函数libvlc_video_get_size在成功时返回0,如果不是则返回-1。 首先你应该得到这个整数,以便看到vlc可以打开网址。 当我使用
时出人意料 int error = libvlc_video_get_size(vmp, 0, &video_w, &video_h);
问题已解决