小编Nem*_*sis的帖子

通过网络同步视频播放

我制作了一个媒体播放器,它基本上可以播放通过文本文件预定的任何内容。播放器还可以在多台机器(PC)上播放完全相同的剪辑。问题是同步。相同的视频开始在每台机器上播放,但它们会延迟大约 400 毫秒,这看起来很糟糕,如果有声音那就更糟了。

我目前的做法是:

一台机器被设置为主机,所有其他机器被设置为从机。主人决定播放什么项目。它等待来自每个从站的消息,一旦所有从站都连接(或超时后),它会广播需要播放的文件的项目 ID。然后所有机器开始播放该文件。

我也尝试过:

我认为文件加载时间可能是同步不匹配的主要驱动因素,所以我修改了代码以执行以下操作。

主人仍然决定播放什么文件。它等待来自每个从站的连接消息(或超时)并传输要播放的文件的项目 ID。所有机器开始播放该文件但立即暂停。然后主设备再次等待来自每个从设备的就绪消息。一旦所有从站响应,主站就向所有从站发送播放消息。然后所有机器继续该文件。

不幸的是,这并没有改善问题。我现在很确定同步不匹配是由于网络延迟造成的。我该如何补偿?或者确定每个从站的延迟?

所有网络通信都是用 winsock 完成的。

任何想法或想法都非常感谢。

c++ video networking unmanaged

5
推荐指数
1
解决办法
1964
查看次数

wchar_t数组

我想有一个wchar_t的数组.

以下作品:

char** stringArray;
int maxWords = 3;
stringArray = new char*[maxWords];
stringArray[0] = "I";
stringArray[1] = " Love ";
stringArray[2] = "C++"
Run Code Online (Sandbox Code Playgroud)

但事实并非如此

wchar_t ** wcAltFinalText;
wcAltFinalText = new wchar_t *[MAX_ALT_SOURCE];   // MAX_ALT_SOURCE = 4
wcAltFinalText[0] = L'\0';
wcAltFinalText[1] = L'\0';
wcAltFinalText[2] = L'\0';
wcAltFinalText[3] = L'\0';
Run Code Online (Sandbox Code Playgroud)

我没有得到任何错误,但wcAltFinalText是一个糟糕的ptr

非常感谢任何帮助和评论.

c++ unmanaged wchar-t wchar visual-c++-2005

2
推荐指数
2
解决办法
8764
查看次数

标签 统计

c++ ×2

unmanaged ×2

networking ×1

video ×1

visual-c++-2005 ×1

wchar ×1

wchar-t ×1