音视频软件开发
音视频软件开发的介绍
音视频软件开发,也叫音视频即时通信开发。随着互联网的发展,人们之间的交流逐步从电话移向网络。每天都有相当多的人在使用各种网络交流工具,如 Anychat ,腾讯 QQ ICQ MSN ,新浪微博。
  可以看出人们对于网络上即时的沟通方式是非常敏锐的,所能容纳的程度也远远超过我们的预计。然而目前大部分网络交流工具都还是以文字为主,语音视频功能大部分还是不够成熟,完全通过网络实现语音视频需要考虑到很多方面,如:硬件、软件、技术、网络;等等。纯文字沟通方式效率非常低而且也不符合人们平素的习惯,作为一种消遣的工具尚可,远未达到一种真正的沟通方式。因此,即时通讯软件开发诞生了。
   
简而言之,即时通讯软件开发就是通过开发一套跨平台的即时通讯解决方案,基于先进的 H.264 视频编码标准、 AAC 音频编码标准与 P2P 技术,整合音视频编码、多媒体通讯开发技术而设计的高质量、宽适应性、分布式、模块化的网络音视频互动平台来满足人们的即时通讯需求。
即时通讯开发涉及到的技术领域十分广泛,主要涉及以下几个领域:

1
、音频技术:
    AAC
1997 年形成国际标准 ISO 13818-7 。先进音频编码 AAC 开发成功,成为继 MPEG-2 音频标准( ISO/IEC13818-3 )之后的新一代音频压缩标准。
    AAC
主要可能的应用范围集中在因特网网络传播、数字音频广播,包括卫星直播和数字 AM 、以及数字电视及影院系统等方面。 AAC 使用了一种非常灵活的熵编码核心去传输编码频谱数据。具有 48 个主要音频通道, 16 个低频增强通道, 16 个集成数据流 , 16 个配音, 16 种编排。
因此, AAC 无疑是最好的即时通讯音频编码标准之一。

2
、视频技术:
    
目前最先进的视频技术非 H.264 莫属, H.264 最大的优势是具有很高的数据压缩比率,在同等图像质量的条件下, H.264 的压缩比是 MPEG-2 2 倍以上,是 MPEG-4 1.5 2 倍。 H.264 具有许多与旧标准不同的新功能,它们一起实现了编码效率的提高。特别是在帧内预测与编码、帧间预测与编码、可变矢量块大小、四分之一像素运动估计、多参考帧预测、自适应环路去块滤波器、整数变换、量化与变换系数扫描、熵编码、加权预测等实现上都有其独特的考虑。

3
、网络技术:
    
即时通讯讲究的是点对点,或者一对多的通讯。因此, P2P (点对点技术)作为一种网络新技术进入即时通讯开发人员的视野。针对可不经过服务器中转的音视频应用,采用了 P2P 通信技术,该技术的核心在于防火墙的穿越。使用 P2P 通信技术,可以大大的减轻系统服务器的负荷,并成几何倍数的扩大系统的容量,且并不会因为在线用户数太多而导致服务器的网络阻塞。支持 UPNP 协议,自动搜索网络中的 UPNP 设备,主动打开端口映射,提高 P2P 通信效率。
  事实上,网络上现有的许多服务可以归入 P2P 的行列。即时通讯系统譬如 ICQ AOL Instant Messenger Yahoo Pager 、微软的 MSN Messenger 以及国内的 QQ 是最流行的 P2P 应用。它们允许用户互相沟通和交换信息、交换文件。用户之间的信息交流不是直接的,需要有位于中心的服务器来协调。

4
API 接口技术:
    
即时通讯开发必须采用动态缓冲技术来适应不同网络环境(局域网、企业专网、互联网、 3G 网络),根据不同的网络状态动态调节相关参数,使得即时通讯平台在多种网络环境下均有良好的表现,并特别针对互联网、 3G 网络等应用场合进行优化,为上层应用提供视频质量的动态调节接口、音频质量的动态调节接口。

5
、保密技术:
    
开发即时通讯平台时,不得不考虑到的问题就是保密问题了。比较通用的保密技术有:
a
、自定义服务器端口。服务器所使用的 TCP UDP 服务端口均可自定义(在服务器的 .ini 文件中配置),实现服务的隐藏;
b
、加密传输服务器与客户端之间的底层通信协议。
c
、服务器设置连接认证密码。
d
、服务器内部设置安全检测机制,一旦检测到当前连接的客户端有非法操作嫌疑(如内部通信协议没有按既定的步骤进行)时,主动断开该客户端的连接,并记录该连接的 IP 地址,在一段时间内不允许重新连接。