C++局域网语音聊天
写一个语音聊天程序,需要哪些知识
[解决办法]
Thread,Socket,DirectX ...
[解决办法]
Thread,Socket,还有就是语音处理SDK的相关知识了
[解决办法]
基础部分:多线程、套接字、掌握基本的windows内核对象,例如临界区之类的。
音频相关:如果要求比较简单,会用 wave api 就行。要求稍微高点的可以用directshow或者dirtctsound。不过既然楼主能问出这么个问题,那么会用wave api 就行。当然如果图省事可以用第三方的库,例如portaudio。
编解码:至少会使用一个最常见的编解码库,例如g711、g729、ilbc、speex等等。。
局域网对网络技术要求比较低,会基本的TCP或者UDP就可以了。
整个软件流程是(省略必要的缓冲等处理过程):
采集->编码->传输->....网络....->接收->解码->播放
[解决办法]
socket编程是必须懂得,因为需要使用socket通讯。也需要进程、线程、互斥访问等一些系统调用,用于处理不同的用户和不同的信息。再就是一些读写操作。这些是必须的吧,当然仅这些还不够,还需要有其他的知识。
[解决办法]
http://read.pudn.com/downloads40/sourcecode/windows/network/138293/4630028/Phone/Phone.cpp__.htm