基于SIP协议的VOIP通信,该字段通常位于视频协商sdp报文中,如:

 video  RTP/AVP
rtpmap: H264/
fmtp: profile-level-id=42801E; packetization-mode=
42801E分三部分
0x42 66
0x80 1000 0000 (二进制)
0x1E 30
 
对应profile_idc(8 bits)、profile_iop(8 bits)、level_idc(8 bits),含义如下:
profile_idc:(16进制)
   66  Baseline profile (VOIP中常用这个)
   77  Main profile
   88  Extended profile
 
profile_iop:(8位分别意义)
   constraint_set0_flag   1代表编码的视频序列完全遵从A.2.1所有条款,0不一定。
 
   constraint_set1_flag   1代表编码的视频序列完全遵从A.2.2所有条款,0不一定。
 
   constraint_set2_flag   1代表编码的视频序列完全遵从A.2.3所有条款,0不一定。
       注意:当上面3位有任意一位设置为1时,意味着视频序列完全遵从A.2所有条款,当proifle_idc为44、100、110、122或244时,此三位必须为0
 
   constraint_set3_flag        (1)当profile_idc为66、77或88且level_idc为11时,1代表遵从Annex A for level 1b,0代表遵从Annex for level 1.1。
                                           (2)当profile_idc为100或110,1代表遵从Annex A for the High 10 Intra profile,0不一定。
                                           (3)当profile_idc为122,1代表遵从Annex A for the High 4:2:2 Intra profile,0不一定。
                                           (4)当profile_idc为44,此数据位应设置为1,0是错误的。
                                           (5)当profile_idc为244,1代表遵从Annex A for the High 4:4:4 Intra profile,0不一定。
                                           (6)当profile_idc为66、77或88且level_idc不为11时,1保留给未来使用,应设置为0,同时解码器应该忽略此数据位的值。
 
   constraint_set4_flag        (1)当profile_idc为77、88或100,1代表frame_mbs_only_flag等于1,0则表示frame_mbs_only_flag可能1可能0。
                                           (2)当profile_idc为118或128,,1代表编码的视频序列遵从H.10.1.1的所有条款,0不一定。
                                           (3)当profile_idc不为以上两条时,1保留给未来使用,应设置为0,同时解码器应该忽略此数据位的值。
 
   constraint_set5_flag        (1)当profile_idc为77、88或100,1代表Bslice类型不存在于编码的视频序列中,0不一定。
                                           (2)当profile_idc为118,1代表遵从H.10.1.2的所有条款,0不一定。
                                           (3)当profile_idc不为以上两条时,1保留给未来使用,应设置为0,同时解码器应该忽略此数据位的值。
 
   constraint_set6_flag保留,设置为0。
 
   constraint_set7_flag保留,设置为0。
levle_idc:

其在协商中的值=level_idc*10的16进制数,如上面的1E=30,就是等级3,另外packetization-mode表示载荷类型,范围0-2(0:NAL  1:非交错  2:交错,隔行扫描)。

H.264 Profile-level-id的更多相关文章

  1. H.264 Profile、Level、Encoder三张简图 (fps = AVCodecContext->time_base.den / AVCodecContext->time_base.num)

    H.264 Profiles Profiles are sets of capabilities. If your black box only supports the Baseline profi ...

  2. H.264 Profile

    提到High Profile H.264解码许多人并不了解,那么到底什么是High Profile H.264解码?其应用效果又是如何呢?  作为行业标准,H.264编码体系定义了4种不同的Profi ...

  3. iOS VideoToolbox硬编H.265(HEVC)H.264(AVC):1 概述

    本文档尝试用Video Toolbox进行H.265(HEVC)硬件编码,视频源为iPhone后置摄像头.去年做完硬解H.264,没做编码,技能上感觉有些缺失.正好刚才发现CMFormatDescri ...

  4. H.264视频的RTP荷载格式

    Status of This Memo This document specifies an Internet standards track protocol for the   Internet ...

  5. x264 - 高品质 H.264 编码器

    转自:http://www.5i01.cn/topicdetail.php?f=510&t=3735840&r=18&last=48592660 H.264 / MPEG-4 ...

  6. h264 profile & level

    转自:http://blog.csdn.net/sphone89/article/details/17492433 H.264 Profiles H.264有四种profile,每个profile支持 ...

  7. 【转】H264视频编码级别说明profile level Encoder

    版权声明:本文为博主原创文章,未经博主允许不得转载. 首先要阐明所谓的AVC其实就是H.264标准,是由ITU-T和ISO/IEC组成的联合视频组(JVT,Joint Video Team)一起开发的 ...

  8. H.264编码profile & level控制

    背景知识 先科普一下profile&level.(这里讨论最常用的H264) H.264有四种画质级别,分别是baseline, extended, main, high:  1.Baseli ...

  9. H.264(MPEG-4 AVC)级别(Level)、DPB 与 MaxDpbMbs 详解(转载)

    转自:http://www.cnblogs.com/zyl910/archive/2011/12/08/h264_level.html 对于H.264(MPEG-4 AVC)而言,级别(Level)是 ...

  10. H.264学习笔记之一(层次结构,NAL,SPS)

    一 H.264句法 1.1元素分层结构 H.264编码器输出的Bit流中,每个Bit都隶属于某个句法元素.句法元素被组织成有层次的结构,分别描述各个层次的信息. 图1 H.264分层结构由五层组成,分 ...

随机推荐

  1. B. Apple Tree 暴力 + 数学

    http://codeforces.com/problemset/problem/348/B 注意到如果顶点的数值确定了,那么它分下去的个数也就确定了,那么可以暴力枚举顶点的数值. 顶点的数值是和LC ...

  2. Centos 7.5源码编译安装zabbix4.0报fatal error: mysql.h: No such file or directory

    系统环境:CentOS 7.5是最小化安装的 编译信息 编译选项: root@Server01 zabbix-]# ./configure --prefix=/usr/share/applicatio ...

  3. SQL Server 查看列,添加列,修改列,删除列

    查看表:exec sp_help 表名 查看列: exec sp_columns 表名 查看列:select * from information_schema.columns where table ...

  4. myBati初学

    创建数据库(y2165) MyBatis环境搭建1.在pom.xml引入依赖2.得替换build节点,为了让程序编译在main中所有子包下的配置文件3.构建大配置,位于resources<?xm ...

  5. 向fedora添加rpmfusion源

    http://blog.csdn.net/pu1030/article/details/7332036 有的rpmfusion地址有版本问题,找到一个比较好用的摘录一下: 从http://downlo ...

  6. ES-Mac OS环境搭建(1)

    前言 由于elasticsearch依赖Java,所以先要配置上Java环境,并且Java JDK必须要求1.8以上,这里以安装Java 1.8为例.安装环境如下: elasticsearch6.5. ...

  7. 慢慢积累遇到的linux指令

    sudo 用来以其他身份来执行命令,预设身份为root sudo apt install git 下载git sudo root 进入root身份(只有这个身份ubuntu和window系统之间才能共 ...

  8. Json字符串转excel表格文件

    假如我们有一段json串,该json串是由一系列结构相同的数据集合组成,如下: { "data": [ { "groupId": "com.test. ...

  9. cnblog之初来乍到

    hello,大家好,我是蓝斯老师 一枚致力于android开发的攻城狮 很荣幸能够在博客园开博(博主以前是混CSDN的,原博客地址http://blog.csdn.net/lancees) 希望将来能 ...

  10. IOS之TextView属性设置

    UIFontDescriptor *bodyFontDescriptor = [UIFontDescriptor preferredFontDescriptorWithTextStyle:UIFont ...