annex h 座位等级h是什么意思

ITU-T G.728 Annex H
主要用于速率低于16kbit/s的DCME的可变比特率LD-CELP的操作
&您当前的位置:&&&&
G.728 Annex H&&&&&
主要用于速率低于16kbit/s的DCME的可变比特率LD-CELP的操作
Variable bit rate LD-CELP operation mainly for DCME at rates less than 16 kbit/s
标准的状态、替代、引用关系等信息只对网员开放,
This annex contains the modifications to Recommendation G.728 LD-CELP speech coding algorithm needed to reduce the coding bit rate down to 12.8 and 9.6 kbit/s. These modifications include the modifications to the shape and gain codebooks.This edition provides the additional description on the calculation of GSTATE(1) and the additional values for codebook related arrays.This annex includes electronic material containing low bit rate LD_CELP implementation test vectors.本附件包含对建议G.728需要将编码比特率降低至12.8和9.6kbit/s的LD-CELP语音编码算法的修改。这些修改包括对形状和增益码本的修改。
该版本给出GSTATE(1)的附加描述和与码本相关的矩阵的附加值。
本附件包括含有低比特率LD-CELP实现测试矢量的电子资料。
This Annex includes 1 CD-ROM containing the test data for verification of G.728 Annex H low bit rate
全文上线日期
&ZIP&(683K)&& &&需要安装ZIP解压缩工具
&ZIP&(683K)&& &&需要安装ZIP解压缩工具
&&只有的D、F、G、K、W、X、Y类可以访问该资源。?为保障您的浏览器正常下载此文件,请将本网站加入信任站点。
?通信工程_传输布线
?通信工程_无线网络
?TD-LTE标准全文光盘
?LTE FDD标准全文光盘
?物联网标准全文光盘
主办:&&运营: 
服务热线:010-  E-mail:
Copyright& 2007 www.ptsn.net.cn. All Rights Reserved.c# - Cannot decode H.264 stream (Annex.B) using FFmpeg - Stack Overflow
to customize your list.
This site uses cookies to deliver our services and to show you relevant ads and job listings.
By using our site, you acknowledge that you have read and understand our , , and our .
Your use of Stack Overflow’s Products and Services, including the Stack Overflow Network, is subject to these policies and terms.
Join Stack Overflow to learn, share knowledge, and build your career.
or sign in with
Recently I'm writing a client of a IP camera providing H.264 stream. I'm now using FFmpeg 2.1.1 to decode the stream provided by the camera.
Here's some code of the application:
Initialization:
private unsafe void InitFFmpeg()
FFmpeg.avcodec_register_all();
var codec = FFmpeg.avcodec_find_decoder(AVCodecID.AV_CODEC_ID_H264);
avcodec = (IntPtr)
var ctx=FFmpeg.avcodec_alloc_context3(avcodec);
avcontext = (IntPtr)
ctx-&codec =
ctx-&pix_fmt = AVPixelFormat.PIX_FMT_YUV420P;
ctx-&flags2 |= 0x;//CODEC_FLAG2_CHUNKS
var options = IntPtr.Z
int result = FFmpeg.avcodec_open2(avcontext, avcodec, ref options);
avframe = FFmpeg.av_frame_alloc();
avparser = FFmpeg.av_parser_init(AVCodecID.AV_CODEC_ID_H264);
FFmpeg.av_init_packet(ref avpacket);
inBuffer = Marshal.AllocHGlobal(300 * 1024);
private void Decode(byte[] data, int size)
IntPtr pOut = IntPtr.Z
int outLen = 0;
Marshal.Copy(data, 0, inBuffer, size);
int gotPicture = 0;
var rs = FFmpeg.av_parser_parse2(avparser, avcontext, ref pOut, ref outLen, inBuffer, size, 0, 0, 0);
if (outLen &= 0 || pOut.ToInt32() &= 0)
//no enough data to construct a frame, return and receive next NAL unit.
avpacket.data = pO
avpacket.size = outL
avpacket.flags |= PacketFlags.K
var len = FFmpeg.avcodec_decode_video2(avcontext, avframe, ref gotPicture, ref avpacket);
Console.WriteLine("avcodec_decode_video2 returned " + len);
if (gotPicture != 0)
//some YUV to RGB stuff
With the code above, I can get some output like:
NAL unit 1: resolution=, key-frame=True, size=26.
NAL unit 2: resolution=, key-frame=False, size=8.
NAL unit 3: resolution=, key-frame=False, size=97222.
NAL unit 4: resolution=, key-frame=False, size=14129.
avcodec_decode_video2 returned 1
NAL unit 5: resolution=, key-frame=False, size=12522.
NAL unit 6: resolution=, key-frame=False, size=12352.
avcodec_decode_video2 returned 1
NAL unit 7: resolution=, key-frame=False, size=12291.
NAL unit 8: resolution=, key-frame=False, size=12182.
From the ouput I can see the parser can recognize the NAL units sent by the camera and can construct frames from them.
NAL unit 1 to 4 are slices of a key frame containing SPS/PPS, and the following 2 NAL units form a normal frame.
And the avcodec_decode_video2 function doesn't produce any error, but just keep returning 1 and gotPicture is alway 0.
If I clear AVCodecContext.flags2, it starts to complain that the packet I provided contains no frame:
NAL unit 100: resolution=, frame-rate=0, key-frame=True, size=26.
NAL unit 101: resolution=, frame-rate=0, key-frame=False, size=8.
NAL unit 102: resolution=, frame-rate=0, key-frame=False, size=96927.
NAL unit 103: resolution=, frame-rate=0, key-frame=False, size=17149.
[h264 @ ] no frame!
avcodec_decode_video2 returned -
NAL unit 104: resolution=, frame-rate=0, key-frame=False, size=12636.
NAL unit 105: resolution=, frame-rate=0, key-frame=False, size=12338.
[h264 @ ] no frame!
If I write the raw stream to a file, I can use FFmpeg to mux the stream to an mp4 container, and can play the mp4 file with any player.
The raw data I received is something like:
00 00 00 01 67 42 00 28 E9 00 A0 0B 75 C4 80 03 6E E8 00 CD FE 60 0D 88 10 94
00 00 00 01 68 CE 31 52
00 00 00 01 65 88 81 00 06 66 36 25 11 21 2C 04 3B 81 E1 80 00 85 4B 23 9F 71...
I created a debug build of libavcodec and did some debugging. I figured out that I was using an ealier version of AVPacket structure so the data passed to the decoder are malformed. I write a new version of AVPacket according to the header file and now it works like a charm.
Your Answer
Sign up or
Sign up using Google
Sign up using Facebook
Post as a guest
Post as a guest
Post Your Answer
By clicking &Post Your Answer&, you acknowledge that you have read our updated ,
and , and that your continued use of the website is subject to these policies.
Not the answer you're looking for?
Browse other questions tagged
Stack Overflow works best with JavaScript enabledffmpeg -i 1.mp4 -vcodec copy -acodec copy -vbsf h264_mp4toannexb 1.ts
ffmpeg -i 2.mp4 -vcodec copy -acodec copy -vbsf h264_mp4toannexb 2.ts
ffmpeg -i "concat:1.ts|2.ts" -acodec copy -vcodec copy -absf aac_adtstoasc output.mp4
ffmpeg 支持切分 mp4 视频,不支持直接 concate
FFMpeg无损合并视频的多种方法
众所周知,从某些视频网站下载的视频是分段的。比如新浪视频每隔6分钟分段,俗称“6分钟诅咒”。
现在的任务是将这些视频片段合并起来,并且尽量无损。
方法一:FFmpeg concat 协议
...
ffmpeg 合并 拼接 mp4视频
今天同事做字幕识别测试,其中360p的视频是直接从CNTV网上下载的,一套好好接的节目被切成9段、10段,为测试带来了一点小的麻烦;
所以今天想着用ffmpeg拼接一下这些视频;
需求如下:
[转载]用 FFMPEG 合并 MP4 视频
因为 ffmpeg 是支持切分 mp4 视频的,所以我就理所当然的以为 ffmpeg 是支持视频合并。直到今天同事找我问方法,才发现一直以为的方法是错误的, mp4 不支持直接 concate(丢人了...
用 FFMPEG 合并 MP4 视频
转自:http://blog.csdn.net/flood_dragon/article/details/
因为 ffmpeg 是支持切分 mp4 视频的,所以我就理所当然的以为...
使用ffmpeg合并视频文件的三种方法
http://itindex.net/detail/52379-ffmpeg-合并-视频
主题 FFmpeg
ffmpeg合并视频的方法有三种。国内大多数仅介绍了其中之一。于是觉得有必...
ffmpeg 视频拼接
1. 视频拼接ffmpeg视频拼接需要用concat参数。
此外ffmpeg拼接的视频和原视频的封装格式有关2. ffmpeg视频拼接的几种方法2.1 利用文件列表# this is a comme...
通过 ffmpeg 无损剪切/拼接视频
通过 ffmpeg 无损剪切/拼接视频
剪切/拼接视频文件是一种常见需求。在线视频网站现在往往将一个视频文件分割成 n 段,以减少流量消耗。使用 DownloadHelper/DownThemA...
ffmpeg之多个MP4视频合并一个MP4视频文件(附遇见的bug)
准备材料:两张jpg照片、两个MP3
首先将两张照片和MP3文件合并为两个MP4视频文件。
照片的地址分别为:/home/ffmpeg_data/001.jpg、/home/ffmpeg_data...
ffmpeg 转ts文件命令
ffmpeg -y -i
-vcodec copy -acodec copy -vbsf h264_mp4toannexb
利用ffmpeg对视频进行裁剪与拼接
准备:要裁剪的视频,要求是编码格式,分辨率一致
视频时长裁剪
首先将视频由帧间编码转为帧内编码,这样可以任意裁切时间点,不受关键帧影响。否者可能出现这种情况:当你需要裁剪一个视频的00:0...
没有更多推荐了,H.263 versions
H.263# Annex A - Inverse transform accuracy specification# Annex B - Hypothetical Reference Decoder# Annex C - Considerations for Multipoint# Annex D - Unrestricted Motion Vector mode (无限制运动质量模式)# Annex E - Syntax-based Arithmetic Coding mode (以及基于句法的算术编码模式(SAC))# Annex F - Advanced Prediction mode (高级预测模式)# Annex G - PB-frames mode# Annex H - Forward Error Correction for coded video signal (前向纠错编码)# Annex I - Advanced Intra Coding with Alternate VLC# Annex J - Deblocking Filter
H.263v2 (H.263+ or H.263 1998)# Annex I - Advanced INTRA Coding mode# Annex J - Deblocking Filter mode# Annex K - Slice Structured mode ( Slice结构 )# Annex L - Supplemental Enhancement Information Specification# Annex M - Improved PB-frames mode# Annex N - Reference Picture Selection mode# Annex O - Temporal, SNR, and Spatial Scalability mode# Annex P - Reference picture resampling# Annex Q - Reduced-Resolution Update mode (see implementors'guide correction as noted below)# Annex R - Independent Segment Decoding mode (独立分割解码)# Annex S - Alternative INTER VLC mode# Annex T - Modified Quantization mode
H.263v2 specified a set of recommended modes in an informativeappendix (Appendix II, since deprecated): |Level 1|Level2 |Level 3Advanced INTRA Coding | Yes | Yes | YesDeblocking Filter | Yes | Yes | YesSupplemental Enhancement Information (Full-Frame FreezeOnly) | Yes | Yes | YesModified Quantization | Yes | Yes | YesUnrestricted Motion Vectors| No | Yes | YesSlice Structured Mode| No | Yes | YesReference Picture Resampling (Implicit Factor-of-4 ModeOnly) | No | Yes | YesAdvanced Prediction | No | No | YesImproved PB-frames | No | No | YesIndependent Segment Decoding| No | No | YesAlternate INTER VLC | No | No | Yes |Level 1|Level 2|Level3
H.263v3 (H.263++ or H.263 2000)# Annex U - Enhanced reference picture selection mode (增强的参考图像选择)# Annex V - Data-partitioned slice mode (数据分割)# Annex W - Additional supplemental enhancement information specification (增强的补充信息)# Annex X (originally specified in 2001) - Profiles and levels definition
本文主要参考洪邑四维馆传人的 [文章][1]
对《红楼梦》的各版本和《红楼梦》脂评本作了图形化的展示。
受小博主所见所识限制,其中错误之处在所难免,恭请不吝赐教。
[1]:https...
1、家庭用途可选择版本有:Linux Mint、Ubuntu、OpenSUSE、Fedora、PC-BSD
2、商业用途可选择版本有:Debian、RHEL、CentOS
3、挑战用途可选择版本有:G...
关于iOS基础总结(7)--ios各个版本新特性总结 ios7、ios8、ios9、ios10
jdk1.5的新特性:
ArrayList list=new ArrayList()------&ArrayListlist=new ArrayList();
2 自动装箱/拆...
下面介绍一下Eclipse的版本发布和开发过程:
Eclipse最初是由IBM公司开发的替代商业软件Visual Age for Java的下一代IDE开发环境。
2001年11月贡献...
一直没有搞清楚RHEL,CentOS,,还有Ubuntu,fedora这些版本之间的差别,搜了一下...
做个mark,以后有空再详细写写
0.20.x是历史稳定版
0.23.x是根据0.20.x的稳定版引入了federation和yarn,但缺少NN和HA
1.0.x是当前稳定版,但和0.20.x...
没有更多推荐了,介绍H.264结构的文章铺天盖地,无责任翻译、无责任转载以及部分经验之谈(目前搜索最靠前的一篇实际是对stackoverflow上答案的翻译。。链接后面给出了),所以缺的不是资料,是叙述准确的资料。来吧,看这篇整理就够了。
2.典型问题
iOS 硬解264视频(MP4),出现绿屏,或上半部分正常下半部分绿屏。
iOS 硬解265视频,同样也要解决的extradata处理问题。
首先来看两种格式:
3.Annex-B 和 AVCC/HVCC
H.264码流分Annex-B和AVCC两种格式。
H.265码流是Annex-B和HVCC格式。
(以下内容针对H.264,但大体也适用于H.265/HEVC)
也叫AVC1格式,MPEG-4格式,字节对齐,因此也叫Byte-Stream Format。用于mp4/flv/mkv, VideoToolbox。
Annex-B格式
也叫MPEG-2 transport stream format格式(ts格式), ElementaryStream格式。
Annex-B 附录B, 指ITU-T的 Recommendation(h.264和h.265)在附录B中规定码流格式。
3.2 结构上的区别:
区别有两点:一个是参数集(SPS, PPS)组织格式;一个是分隔。
- Annex-B:使用start code分隔NAL(start code为三字节或四字节,0xx,一般是四字节);SPS和PPS按流的方式写在头部。
- AVCC:使用NALU长度(固定字节,通常为4字节)分隔NAL;在头部包含extradata(或sequence header)的结构体。(extradata包含分隔的字节数、SPS和PPS,具体结构见下)
3.2.1 Annex B
3.2.2 extradata
H.264/AVC extradata 语法
参考:《ISO/IEC 14496-15 NAL unit structured video》AVCDecoderConfigurationRecord结构:(最小长度7字节)
FFmpeg中,extradata解析,见ff_h264_decode_extradata()
第5字节的最后2位,表示的就是NAL size的字节数。在AVCC格式中,每个NAL前面都会有NAL size字段。NAL size可能是1字节、2字节或4字节(4字节较常见),解析extradata重要目的就是确认这个值。(而Annex-B格式,要split NAL,只要去探测0x000001就可以了)
H.264 extradata 示例(AVCC格式)
H.265/HEVC extradata语法
参照HEVCDecoderConfigurationRecord:(最小长度23字节)
HEVC extradata 示例
hvcC extradata是一种头描述的格式。而annex-b格式中,则是将VPS, SPS和PPS等同于普通NAL,用start code分隔,非常简单。Annex-B格式的”extradata”:
start code+VPS+start code+SPS+start code+PPS
VideoToolbox 与 AVCC格式
硬解 仅支持avcC格式。
如ES格式,需要转为MPEG-4格式 P58
硬编 输出avcC格式。
MediaCodec 与 Annex-B格式
硬解 支持Annex-B格式,avcC需要做转换,NALU长度替换为start code
Annex-B 转 AVCC
对于仅接受AVCC格式的播放器(如Quicktime v7.0),需要进行convert Annex-B to AVCC:
- start code 转为4字节 NAL size
- SPS, PPS创建 extradata
AVCC 转 Annex-B
FFmpeg “extract_extradata” bitstream filter:
h264码流转换:
ffmpeg -i INPUT.mp4 -codec copy -bsf:v h264_mp4toannexb OUTPUT.ts
hevc码流转换:
ffmpeg -i INPUT.mp4 -codec copy -bsf:v hevc_mp4toannexb OUTPUT.ts
了解了H.264 extradata以及NAL组织结构,自然引出H.264码流结构的议题,下篇干脆系统分析下H.264, HEVC码流结构。
h265帧格式
H265 nalu head格式
nalu type 01 content例如:(具体nalu type值对应的类型可以上网查一下)00 00 00 01 40 01
h264手动添加sps和pps到AVCodecContext-&extradata
最近编码的时候发现生成的视频不能用Windows Media Player等系统自带的播放器播放,也没有缩略图。找了很久,最后才发现添加一行代码就行了:
codec_ctx-&flags |= ...
本篇文章已授权微信公众号 hongyangAndroid (鸿洋)独家发布
转载请标明出处: http://blog.csdn.net/zxt0601/article/details/5256277...
小伙伴们好久不见,我又回来啦。
说实话这篇文章写的算是比较晚了,距离`ConstraintLayout`出现至今已经有一年了。
且自AS2.3起创建新的`Activity`,默认的layout根布局就...
*版权证明: 只允许上传png/jpeg/jpg/gif格式的图片,且小于3M
*详细原因:
交 AW-r16_hx8379c_driver 3积分 立即下载 ...
Thank you for choosing the Graphics Performance Analyzers, a part of the Intel(R) Integrated Native De...
没有更多推荐了,}

我要回帖

更多关于 annex是什么意思啊 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信