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.rhkb.cn/news/489687.html

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

相关文章

mp4影像和m4a音频无损合成视频方法

第一步:复制高清视频地址 url 第二步:打开网址粘贴复制的视频url视频下载 第三步:下载-影像.mp4和-音频.m4a 第四步:合并视频; 使用ffmpeg进行无损合成(如果没有安装ffmpeg请自行下载安装下载 FFmpeg (p2hp.com)&…

LLM之RAG实战(五十)| FastAPI:构建基于LLM的WEB接口界面

FastAPI是WEB UI接口,随着LLM的蓬勃发展,FastAPI的生态也迎来了新的机遇。本文将围绕FastAPI、OpenAI的API以及FastCRUD,来创建一个个性化的电子邮件写作助手,以展示如何结合这些技术来构建强大的应用程序。 下面我们开始分步骤操…

40 list类 模拟实现

目录 一、list类简介 (一)概念 (二)list与string和vector的区别 二、list类使用 (一)构造函数 (二)迭代器 (三)list capacity (四&#x…

迎接全新的 Kotlin 支持 – K2 模式:基本信息

K2 模式有什么作用? K2 模式是 IntelliJ IDEA 中 Kotlin 支持的新实现,它可以提高 IDE 的稳定性,同时也会为支持未来 Kotlin 语言功能奠定基础。 K2 模式与 Kotlin K2 编译器有什么区别? K2 编译器负责编译 Kotlin 语言 2.0 或…

openGauss开源数据库实战二十四

文章目录 任务二十四 openGaussss WAL管理和归档管理任务目标实施步骤一、WAL管理1.不能修改的WAL参数2.可以修改的WAL参数 二、配置openGauss工作在归档模式1.查看当前的归档设置2.停止openGauss数据库3.创建归档日志的保存目录4.修改启动参数文件5.重新启动openGauss数据库6.…

docker 安装mysql 5.7 详细保姆级教程

1. 安装mysql(5.7) docker pull mysql:5.7 若是拉取不了,可以配置下 docker 源 2. 查看是否安装成功 docker images 下图就是成功了 3.创建mysql专用目录、数据挂载目录、配置文件目录 ,演示目录在于/home/下 //命令逐条执行cd /home/ mkdir mysql …

scale index的计算

scale index定义 基本实现 需要注意,scale index的提出者分别构建了MATLAB和R语言的实现方式。 但是,需要注意,经过我向作者求证。 MATLAB编写的代码已经“过时了”,为了拥抱时代,作者构建了R语言包,名称为…

The Rise and Potential of Large Language ModelBased Agents:A Survey---摘要、背景、引言

题目 基于大语言模型的Agent的兴起与发展前景 论文地址:https://arxiv.org/pdf/2309.07864.pdf 项目地址:https:/github.com/WooooDyy./LLM-Agent–Paper-List 摘要 长期以来,人类一直在追求等同于或超越人类水平的人工智能(A),…

西门子200 smart PLC助力水处理企业自动化改造

摘要 西门子的200SMART PLC,以其强大的功能和灵活的应用性,正成为环保行业中不可或缺的一环。今天,我们就来看看这个小小的PLC是如何在处理环保问题中大显身手的。 不得不说,环保行业的痛点可不少。 比如污水处理,传…

运维实战:K8s 上的 Doris 高可用集群最佳实践

今天我们将深入探讨::如何在 K8s 集群上部署 Compute storage coupled(存算耦合) 模式的 Doris 高可用集群? 本文,我将为您提供一份全面的实战指南,逐步引导您完成以下关键任务: 配…

意图识别模型使用 基于BERT的对话意图和槽位联合识别 CPU运行BERT模型-亲测成功

意图识别模型使用 基于BERT的对话意图和槽位联合识别 CPU运行BERT模型-亲测成功 我们在开发AI-Agent智能体时,通常会使用提示词工程设置场景的带入,在实际项目中会有很多场景,如果所有提示词都放一起就会超过Token限制,则不得不拆…

网管平台(基础篇):路由器的介绍与管理

路由器简介 路由器(Router)是一种计算机网络设备,它的主要作用是将数据通过打包,并按照一定的路径选择算法,将网络传送至目的地。路由器能够连接两个或更多个网络,并根据信道的情况自动选择和设定路由&…

开发者工具的模块化与可扩展性设计

文章目录 前言模块化设计的重要性可扩展性设计的重要性设计模式与技术实现实战代码插件管理器类:PluginManager注册插件方法:register_plugin执行插件方法:execute_plugin 插件实现插件 1:代码格式化插件插件 2:代码行…

杭州乘云联合信通院发布《云计算智能化可观测性能力成熟度模型》

原文地址:杭州乘云联合中国信通院等单位正式发布《云计算智能化可观测性能力成熟度模型》标准 2024年12月3日,由全球数字经济大会组委会主办、中国信通院承办的 2024全球数字经济大会 云AI计算创新发展大会(2024 Cloud AI Compute Ignite&…

WordPress酱茄主题 开源版 博客资讯自媒体网站模板

一款免费开源的WordPress主题,主题专为WordPress博客、资讯、自媒体网站而设计 运行环境 支持WordPress版本:5.6 兼容Chrome、Firefox、Safari等主流浏览器 支持设备:响应式布局,不同设备不同展示效果 服务器环境建议&#x…

16-在线blog发布系统

【技术栈】 ①:架构: B/S、MVC ②:系统环境:Windows/Mac ③:开发环境:IDEA、JDK1.8、Maven、Mysql ④:技术栈:Java、Mysql、SpringBoot、Mybatis、Vue、Redis 【功能模块】 ①:登…

从0到1实现项目Docker编排部署

在深入讨论 Docker 编排之前,首先让我们了解一下 Docker 技术本身。Docker 是一个开源平台,旨在帮助开发者自动化应用程序的部署、扩展和管理。自 2013 年推出以来,Docker 迅速发展成为现代软件开发和运维领域不可或缺的重要工具。 Docker 采…

1. 机器学习基本知识(2)——机器学习分类

1.4 机器学习分类 1.4.1 训练监督 1. 监督学习:已对训练数据完成标记 分类:根据数据及其分类信息来进行训练,使模型能够对新的数据进行分类 回归:给出一组特征值来预测目标数值 2. 无监督学习:没有对训练数据进行任…

快速将请求头构建成json结构

1.背景 有时候我们要爬虫(组包)请求一个资源数据,需要构建与原始请求一样的请求头,从浏览器复制过来的请求头,有很多,如果一个一个的配置成json有点慢,那么如何快速构建呢? 今天就使用正则表达式的方式实现 正则表达式实现快速将请求头构建成json结构 将冒号后边的换行符去掉…

【蓝桥杯备战】Day 1

1.基础题目 LCR 018.验证回文串 给定一个字符串 s ,验证 s 是否是 回文串 ,只考虑字母和数字字符,可以忽略字母的大小写。 本题中,将空字符串定义为有效的 回文串 。 示例 1: 输入: s "A man, a plan, a canal: Panama…