dl_*_*dl_ 5 decoding avfoundation h.264
根据"Slice Header Syntax"(在ITU-T Rec.h264中描述)frame_num,pic_order_cnt_lsb并且slice_group_change_cycle具有u(v)描述符,该描述符是使用可变位数的无符号整数.
该文件指出
"比特数的变化取决于其他语法元素的值."
你知道如何找出用来存储位的数量frame_num,pic_order_cnt_lsb和slice_group_change_cycle?
[引用的文档指出read_bits(n)功能,不幸的是我无法自己解决.你能帮我吗?]
其他比特流值定义要读取的位数。
\n\nframe_num\n\n\n用作图片的标识符,由 log2_max_frame_num_minus4 + 4 位表示比特流中的 log2_max_frame_num_minus4 + 4 位表示。
\n
例如,以下是 FFmpeg 的作用:
\n\nlog2_max_frame_num_minus4 = get_ue_golomb(&h->gb);\n// ...\nsps->log2_max_frame_num = log2_max_frame_num_minus4 + 4;\n// ...\nh->frame_num = get_bits(&h->gb, h->sps.log2_max_frame_num);\nRun Code Online (Sandbox Code Playgroud)\n\npic_order_cnt_lsb\n\n\n指定编码帧的顶部字段或编码字段的图片顺序计数模 MaxPicOrderCntLsb。pic_order_cnt_lsb 语法元素的大小为log2_max_pic_order_cnt_lsb_minus4+4比特。
\n\npic_order_cnt_lsb 的值应在 0 至 MaxPicOrderCntLsb \xe2\x80\x93 1(含)范围内。
\n
slice_group_change_cycle\n\n\nslice_group_change_cycle 的值在比特流中由以下位数表示\n Ceil( Log2( PicSizeInMapUnits \xc3\xb7 SliceGroupChangeRate + 1 ) )
\n
位读取示例:SliceHeader.cpp,第 170 行
\n| 归档时间: |
|
| 查看次数: |
1658 次 |
| 最近记录: |