H.323音视频协议

概述

H.323是国际电信联盟(ITU)的一个标准协议栈,该协议栈是一个有机的整体,根据功能可以将其分为四类协议,也就是说该协议从系统的总体框架(H.323)、视频编解码(H.263)、音频编解码(H.723.1)、系统控制(H.245)、数据流的复用(H.225)等各方面作了比较详细的规定。

H.323是一种标准的音视频传输协议,能够实现远程提审功能。由一组协议构成,其中有负责音频与视频信号的编码、解码和包装,有负责呼叫信令收发和控制的信令,还有负责能力交换的信令。H.323的第4版本具备做电信级大网的特征,以它为标准构建的IP电话网能很容易地与传统PSTN电话网兼容,从这点上看,H.323更适合于构建电话到电话的电信级大网

H.323协议族规定了在主要包括IP网络在内的基于分组交换的网络上提供多媒体通信的部件、协议和规程。H.323一共定义了四种部件:终端,网关,网守和多点控制单元。利用它们,H.323可以支持音频、视频和数据的点到点或点到多点的通信

H.323协议族包括:用于建立呼叫的H.225.0、用于控制的H.245、用于大型会议的H.332 以及用于补充业务的H.450.X等。H.323

协议中包含3条信令控制信道:RAS信令信道、呼叫信令信道和H.245 控制信道。3 条信道的协调工作使得H.323的呼叫得以进行。

体系结构

为了能在不保证QoS的分组交换网络上展开多媒体会议,制定了该协议,该系列标准使得在现有通信网络上进行视频会议成为可能,为LAN、WAN、Internet、因特网上的多媒体通信应用提供了技术基础和保障。现有的分组网络PBN(如IP网络)提供多媒体通信标准。

从整体上来说,H.323是一个框架性建设,它涉及到终端设备、视频、音频和数据传输、通信控制、网络接口方面的内容,还包括了组成多点会议的多点控制单元(MCU)、多点控制器(MC)、多点处理器(MP)、网关以及关守等设备。

它的基本组成单元是"域",在H.323系统中,所谓域是指一个由关守管理的网关、多点控制单元(MCU)、多点控制器(MC)、多点处理器(MP)和所有终端组成的集合。一个域最少包含一个终端,而且必须有且只有一个关守。H.323系统中各个逻辑组成部份称为H.323的实体,其种类有:终端、网关、多点控制单元(MCU)、多点控制器(MC)、多点处理器(MP)。其中终端、网关、多点控制单元(MCU)是H.323中的终端设备,是网络中的逻辑单元终端设备是可呼叫的和被呼叫的,而有些实体是不通被呼叫的,如关守。H.323包括了H.323终端与其它终端之间的、通过不同网络的、端到端的连接。

终端组成

终端是分组网络中能提供实时、双向通信的节点设备,也是一种终端用户设备,可以和网关、多点接入控制单元通信。所有终端都必须支持语音通信,视频和数据通信可选

在发端,从输入设备获取的视频和音频信号,经编码器压缩后,按照一定格式打包,通过网络发送出去。在收端,来自网络的数据包首先被解包,获得的视频、音频压缩数据经解码后送入输出设备,用户数据和控制数据也得到了相应的处理。它所包含的各个功能单元及其标准备或协议分别是:

视频编解码(H.263/H.261):完成对视频码流的冗余压缩编码。

音频编解码(H.723.1等):完成语音信号的编解码,并在接收端可选择地加入缓冲延迟以保证语音的连续性。所采用的标准为ITU-T的H.723.1,它提供5.3kbit/s和6.3kbit/s两种码率,采用线性预测综合分析编码方法,分别使用代数码本激励线性预测和多脉冲最大似然量化,从而各自获得编码复杂度和质量的优化。

各种数据应用:包括电子白板、静止图像传输、文件交换、数据库共存、数据会议、运程设备控制等,可用的标准为T.120、T.84、T.434等。

控制单元(H.245):提供端到端信令,以保证H.323终端的正常通信。所采用的协议为H.245(多媒体通信控制协议),它定义了请求、应答、信令和指示四种信息,通过各种终端间进行通信能力协商,打开/关闭逻辑信道,发送命令或指示等操作,完成对通信的控制。

H.225层:将视频、音频、控制等数据格式化并发送,同时从网络接收数据。另外,还负责处理一些诸如逻辑分帧、加序列号、错误检测等功能。

通信原理

在H.323多媒体通信系统中,控制信令数据流的传送利用了面向连接的传输机制。在IP游戏栈中,IP与TCP协作,共同完成面向连接的传输。可靠的传输保证了数据数据包传输时的流量控制、连续性以及正确性,但也可能引起传输时延以及占用网络宽带

H.323将可靠的TCP用于H.245控制信道T.120数据信道,呼叫信令信道。而视频和音频信息采用不可靠的、面向非连接的传输方式,即利用用户数据协议UDP(User Datagram Protocol)。UDP无法提供很好的QoS,只提供最少的控制信息,因此传输时延较TCP小。 在有多个视频流和音频流的多媒体通信系统中,基于UDP和不可靠传输利用IP多点广播和由IETF实时传输协议RTP处理视频和音频信息。IP多播是以UDP方式进行不可靠多点广播传输的协议。RTP工作于IP多播的顶层,用于处理IP网上的视频和音频流,每个UDP包均加上一个包含时间戳和序号的报头。若接收端配以适当的缓冲,那么它就可以种用时间戳和序号信息"复原,再生"数据包、记录失序包、同步语音、图像和数据以及改善边接重放效果。实时控制协议RTCP用于RTP的控制。RTCP监视服务质量以及网上传送的信息,并定期将包含服务质量信息的控制信息包发分给所有通信节点。

在大型分组网络如因特网中,为一个多媒体呼叫保留点足够的宽带是很重要的,也是很困难的。另一个IETF协议--资源预流协议RSVP允许接收端为某一特殊的数据流申请一定数量的宽带,并得到一个答复,确认申请是否被许可。虽然RSVP不是H.323标准的正式组成部份,但大多数H.323产品都必须支持他,因为宽带的预流对IP网络上多媒体通信的成功至关重要,RSVP需要得到终端、网关、装有多点处理器的MCU以及中间路由器或交换机的支持。

相关的音视频协议

  1. H.225.0适用于不同类型的网络,其中包括以太网、令牌环网等。H.225.0通信的范围是在H.323网关之间。
  2. H.245协议定义了主从判别功能,当在一个呼叫中的两个终端同时初始化一个相同的事件时,就产生了冲突。例如,资源只能被一个事件使用。为了解决这个问题,终端必须判断谁是主终端,谁是从终端,主从判别过程用来判断哪个终端是主终端,哪个是从终端。终端的状态一旦决定,在整个呼叫过程期间都不会改变。

其他特征

  1. H.323协议规定,音频和视频分组必须被封装在实时协议RTP中,并通过发送端和接收端的一个UDP的Socket对来进行承载。而实时控制协议RTCP用来评估会话和连接质量,以及在通信方之间提供反馈信息。相应的数据及其支持性的分组可以通过TCP或UDP进行操作。
  2. H.323协议还规定,所有的H.323终端都必须带一个语音编码器,最低要求是必须支持G.711建议

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/889520.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

WPF+MVVM案例实战与特效(四十)- 一个动态流水边框的实现

文章目录 1、运行效果2、案例实现1、PointAnimationUsingKeyFrames 关键帧动画2、矩形流水边框案例2、运行效果3、关键技术点3、案例拓展:其他形状实现1、圆形流水边框2、心形流水边3、完整页面代码4、运行效果5、总结1、运行效果 2、案例实现 1、PointAnimationUsingKeyFram…

微信小程序--创建一个日历组件

微信小程序–创建一个日历组件 可以创建一个日历组件&#xff0c;来展示当前月份的日期&#xff0c;并支持切换月份的功能。 一、目录结构 /pages/calendarcalendar.wxmlcalendar.scsscalendar.jscalendar.json二、calendar.wxml <view class"calendar"><…

【Linux-ubuntu通过USB传输程序点亮LED灯】

Linux-ubuntu通过USB传输程序点亮LED灯 一,初始化GPIO配置1.使能时钟2.其他寄存器配置 二&#xff0c;程序编译三&#xff0c;USB传输程序 一,初始化GPIO配置 1.使能时钟 使能就是一个控制信号&#xff0c;用于决定时钟信号是否能够有效的传递或者被使用&#xff0c;就像一个…

Rust之抽空学习系列(三)—— 编程通用概念(中)

Rust之抽空学习系列&#xff08;三&#xff09;—— 编程通用概念&#xff08;中&#xff09; 1、变量&可变性 在Rust中&#xff0c;变量默认是不可变的 fn main() {let x 5;println!("x is {}", x); }使用let来声明一个变量&#xff0c;此时变量默认是不可变…

Spring Boot应用开发深度解析与实战案例

Spring Boot应用开发深度解析与实战案例 在当今快速发展的软件开发领域,Spring Boot凭借其“约定优于配置”的理念,极大地简化了Java应用的开发、配置和部署过程,成为了微服务架构下不可或缺的技术选型。本文将深入探讨Spring Boot的核心特性、最佳实践,并通过一个具体的…

Mybatis---事务

目录 引入 一、事务存在的意义 1.事务是什么&#xff1f; 2.Mybatis关于事务的管理 程序员自己控制处理的提交和回滚 引入 一、事务存在的意义 1.事务是什么&#xff1f; 多个操作同时进行,那么同时成功&#xff0c;那么同时失败。这就是事务。 事务有四个特性&#xf…

ModbusTcp获取数据

ModbusTcp获取数据 记录一个用 pymodbus 库来获取数据的代码。 注意&#xff1a; 1.读取寄存器地址是16进制的。2.大小端转换通过代码知道原理。读取数据时&#xff0c;切记频率别太高&#xff0c;否则会出现连接被关闭问题。 from pymodbus.client.sync import ModbusTcpCli…

<项目代码>YOLOv8 车牌识别<目标检测>

项目代码下载链接 &#xff1c;项目代码&#xff1e;YOLOv8 车牌识别&#xff1c;目标检测&#xff1e;https://download.csdn.net/download/qq_53332949/90121387YOLOv8是一种单阶段&#xff08;one-stage&#xff09;检测算法&#xff0c;它将目标检测问题转化为一个回归问题…

闭包:JavaScript 编程中的隐形魔法

在JavaScript中&#xff0c;闭包是一种强大的特性&#xff0c;它允许函数访问其词法作用域外的变量。这种特性使得我们可以创建私有变量和持久化状态&#xff0c;从而编写出更加灵活和强大的代码。本文将深入探讨闭包的定义、原理以及在实际项目中的最佳实践&#xff0c;帮助大…

跨平台开发技术的探索:从 JavaScript 到 Flutter

随着多平台支持和用户体验一致性在应用程序开发中变得越来越重要,开发者面临的挑战是如何在不同平台上保持代码的可维护性和高效性。本文将探讨如何利用现代技术栈,包括 Flutter、JavaScript、HTML5、WebAssembly、TypeScript 和 Svelte,在统一的平台上进行高效的跨平台开发…

华为eNSP:VRRP

一、VRRP背景概述 在现代网络环境中&#xff0c;主机通常通过默认网关进行网络通信。当默认网关出现故障时&#xff0c;网络通信会中断&#xff0c;影响业务连续性和稳定性。为了提高网络的可靠性和冗余性&#xff0c;采用虚拟路由冗余协议&#xff08;VRRP&#xff09;是一种…

linux 内核传参 module_param_cb

简介 https://www.google.com.hk/url?sat&rctj&q&esrcs&sourceweb&cd&ved2ahUKEwiU1Kiz5aOKAxW0wTgGHZjnDL8QFnoECBYQAQ&urlhttps%3A%2F%2Fblog.csdn.net%2Fzongzidedandan%2Farticle%2Fdetails%2F132475615&usgAOvVaw0CR6uvFlW4mqDItx560AH…

虚幻引擎Actor类生命周期

AActor构造函数 在AActor类的构造函数中,虚幻引擎会初始化与该Actor相关的一些关键属性,比如: 默认的组件(如RootComponent、MeshComponent等)。默认的属性设置,例如位置、旋转、缩放等。还会调用BeginPlay等生命周期函数,但在构造函数中,这些函数不会执行。当你在场景…

Referer头部在网站反爬虫技术中的运用

网站数据的安全性和完整性至关重要。爬虫技术&#xff0c;虽然在数据收集和分析中发挥着重要作用&#xff0c;但也给网站管理员带来了挑战。为了保护网站数据不被恶意爬取&#xff0c;反爬虫技术应运而生。本文将探讨HTTP头部中的Referer字段在反爬虫技术中的应用&#xff0c;并…

【ArcGIS微课1000例】0135:自动生成标识码(长度不变,前面自动加0)

文章目录 一、加载实验数据二、BSM计算方法一、加载实验数据 加载专栏《ArcGIS微课实验1000例(附数据)》配套数据中0135.rar中的建筑物数据,如下图所示: 打开属性表,BSM为数据库中要求的字段:以TD_T 1066-2021《不动产登记数据库标准》为例: 计算出来的BSM如下图: 二、B…

NVR小程序接入平台/设备EasyNVR深度解析H.265与H.264编码视频接入的区别

随着科技的飞速发展和社会的不断进步&#xff0c;视频压缩编码技术已经成为视频传输和存储中不可或缺的一部分。在众多编码标准中&#xff0c;H.265和H.264是最为重要的两种。今天我们来将深入分析H.265与H.264编码的区别。 一、H.265与H.264编码的区别 1、比特率与分辨率 H.…

华硕奥创软件在线安装和离线安装方法

华硕奥创软件在线安装和离线安装方法 1. 华硕奥创软件介绍2. 华硕奥创软件在线安装2.1 第一种2.2 第二种 3. 华硕奥创软件离线安装3.1 概述3.2 华硕奥创软件离线包下载方式 4. 卸载华硕奥创软件4.1 概述4.2 华硕奥创卸载软件下载与使用方式 结束语 1. 华硕奥创软件介绍 华硕奥…

minio 分布式文件管理

一、minio 是什么&#xff1f; MinIO构建分布式文件系统&#xff0c;MinIO 是一个非常轻量的服务,可以很简单的和其他应用的结合使用&#xff0c;它兼容亚马逊 S3 云存储服务接口&#xff0c;非常适合于存储大容量非结构化的数据&#xff0c;例如图片、视频、日志文件、备份数…

对rust的全局变量使用drop方法

文章目录 rust处理全局变量的策略方法1&#xff1a;在main中自动Drop全局变量 参考 rust处理全局变量的策略 Rust 的静态变量不会在程序退出时自动调用 Drop&#xff0c;因为它们的生命周期与进程绑定。 use std::sync::OnceLock;struct GlobalData {content: String, }impl …

A6688 JSP+MYSQL+LW+二手物品网上交易系统

二手物品网上交易系统的设计与实现 1.摘要2.开发目的和意义3.系统功能设计4.系统界面截图5.源码获取 1.摘要 摘 要 随着社会经济快速发展&#xff0c;互联网推动了电子商务业的迅速崛起。越来越多的人们喜欢在线进行商品的交易&#xff0c;尤其是对于二手物品的处理&#xff0…