使用命令行 vlc:
& "C:\Program Files\VideoLAN\VLC\vlc.exe" cat_vibing.mp4 --sout "#rtp{mux=ts,sdp=rtsp://:8554/}"
和 gui 客户端连接网络 url rtsp://@:8554/
按预期工作,但以下代码不工作,我不知道为什么。
Core.Initialize();
var libvlc = new LibVLC("--input-repeat=65545");
MediaPlayer player = new MediaPlayer(libvlc);
var rtsp = new Media(libvlc, _catUri);
//rtsp.AddOption("{dst=display{noaudio},");
// gui stream cmd: :sout=#rtp{sdp=rtsp://:8554/} :no-sout-all :sout-keep
// terminal: & "C:\Program Files\VideoLAN\VLC\vlc.exe" cat_vibing.mp4 --sout "#rtp{mux=ts,sdp=rtsp://:8554/}"
rtsp.AddOption("#rtp{mux=ts,sdp=rtsp://:8554/}");
player.Play(rtsp);
我错过了什么吗?
Sooo,我认为
:sout
应该被跳过,在将 sout 和 stream.sdp
添加到 uri 之后,它可以工作:/
media.AddOption(":sout=#:rtp{mux=ts,sdp=rtsp://10.101.10.124:8554/stream.sdp}");