0
我有一个客户端应用程序正在使用VMR9播放通过网络传输的在线电影。每当流由于问题而停止播放时,播放器将冻结显示上一次接收到的帧。 有什么办法可以在客户端检测到这种状态吗?我检查通过VMR9发送到我的ContainerForm的窗口消息:在VideoMixingRenderer中检测损坏的流
protected override void WndProc(ref Message m)
{
if (m.Msg == PlayerMessageValue)
{
Program.log.AppendLine(string.Format("msg {0} {1} {2}", m.LParam, m.WParam, Environment.TickCount));
}
base.WndProc(ref m);
}
该播放器增加了时间和玩家预期的时间间隔发送的消息,但没有实际收到。 这里是日志:
msg 0 0 1316437
msg 0 0 1316515
msg 0 0 1317515
msg 0 0 1318515
msg 0 0 1319515
msg 0 0 1320515
msg 0 0 1321531
msg 0 0 1322531
msg 0 0 1323531
msg 0 0 1324531
msg 0 0 1325531
msg 0 0 1326546
msg 0 0 1327546
msg 0 0 1328546
msg 0 0 1329546
一段时间过去了,从现在开始流停止,但没有在VMR的行为改变:
msg 0 0 1351593
msg 0 0 1352593
msg 0 0 1353593
msg 0 0 1354593
msg 0 0 1355593
msg 0 0 1356609
msg 0 0 1357609
msg 0 0 1358609
msg 0 0 1359609
msg 0 0 1360609
msg 0 0 1361625
msg 0 0 1362625
msg 0 0 1363625
msg 0 0 1364625
msg 0 0 1365625
msg 0 0 1366640
msg 0 0 1367640
msg 0 0 1368640
msg 0 0 1369640
msg 0 0 1370640
收盘... 1371796
是还有我应该检查图形活动的图表的其他部分吗? (虽然图表正在运行)
感谢罗马,虽然由于某种未知的原因,我无法通过rtsp协议与流媒体服务器通信,但至少我知道没有directshow方式来找到它。 – Bakhshi
...您提到的事件没有提供任何此类情况的证据 – Bakhshi