关于h264裸码流封装的问题

作者&投稿:抄之 (若有异议请与网页底部的电邮联系)
h264裸码流怎么在网页中播放, 用flash怎么播放呢???急求,高分~

可以尝试使用jwplayer来实现解码,服务器的话可以采用nginx,rtmp协议我没试过,不过HLS是支持的

00 00 00 01是Start code后面的ox67为 0110 0111
forbidden_zero_bit 是禁止位,应该是第一位即f(1)=0,1为语法有错误
nal_ref_idc是参考级别,代表被其它帧参考情况,u(2)= 11 = 3最(0为无参考,详见规范)
nal_unit_type是该帧的类型,为剩下的5位,u(5)= 0 0111 = 7
目前类型有:
//H264定义的类型 values for nal_unit_type
typedef enum {
NALU_TYPE_SLICE = 1,
NALU_TYPE_DPA = 2,
NALU_TYPE_DPB = 3,
NALU_TYPE_DPC = 4,
NALU_TYPE_IDR = 5,
NALU_TYPE_SEI = 6,
NALU_TYPE_SPS = 7,
NALU_TYPE_PPS = 8,
NALU_TYPE_AUD = 9,
NALU_TYPE_EOSEQ = 10,
NALU_TYPE_EOSTREAM = 11,
NALU_TYPE_FILL = 12,
#if (MVC_EXTENSION_ENABLE)
NALU_TYPE_PREFIX = 14,
NALU_TYPE_SUB_SPS = 15,
NALU_TYPE_SLC_EXT = 20,
NALU_TYPE_VDRD = 24 // View and Dependency Representation Delimiter NAL Unit
#endif
} NaluType;
可以看出是NALU_TYPE_SPS 即sequence parameter sets

profile_idc的u(8)则是后面的64转化为十进制则是100,
66 Baseline
77 Main
88 Extended
100 High (FRExt)
110 High 10 (FRExt)
122 High 4:2:2 (FRExt)
144 High 4:4:4 (FRExt)

100是High (FRExt)

“level_idc则是0D是13,seq_parameter_set_id的ue(v),则指到AC了,这是哥伦布编码,答案是0,这个是怎么算出来的?“
就不太懂了。互相帮忙吧。


h264裸码流是不是没有pts和dts信息的
对,如果用mpeg2-ts进行封装,就有pts和dts了

H264 NALU分析
H264除了实现了对视频的压缩处理之外,为了⽅便⽹络传输,提供了对应的视频编码和分⽚策略;类似于⽹络数据封装成IP帧,在H264中将其称为组(GOP, group of pictures)、⽚(slice)、宏块(Macroblock)这些⼀起组成了H264的码流分层结构; H264将其组织成为序列(GOP)、图⽚(pictrue)、⽚(Slice)、宏块(Ma...

(推荐阅读)H264, H265硬件编解码基础及码流分析
编码技术与分类编码技术迭代后,如H.264和H.265,苹果引入了VideoToolbox框架提供硬件编码功能。iOS系统中,编码分为硬编码和软编码,硬件编码在iOS 8.0后开放,允许高效处理大容量视频。码流结构与参数码流结构包含编码图像的集合概念,如帧、顶场和底场。重要参数如VPS和SPS\/PPS定义编码视频的结构和...

音视频开发基础概述 - PCM、YUV、H264、常用软件介绍
H264 是目前最常用的视频编解码标准,其相关概念包括序列、图像、片组、片、NALU、宏块、亚宏块、块、像素等。常用软件包括 MediaInfo、VideoEye、ffmpeg 等。MediaInfo 用于查看视频参数,VideoEye 是开源实时视频码流分析软件,ffmpeg 是强大的媒体文件转换工具,还可以转换图片格式。

音视频 H264 码流结构详解
在I帧前出现的频率取决于应用场景,对于本地 h264 流可能只需一次,而对直播流,每个 I 帧前均应插入 sps 或 pps。NALU Payload 包含原始数据比特流(SODB)、原始字节序列载荷(RBSP)和扩展字节序列载荷(EBSP)。防止竞争字节(0x03)用于防止RBSP中的StartCode与EBSP中的StartCode竞争。H264码流由...

h264可以带200万摄像机吗
200万像素又也就是1080P,如果采用H.264压缩标准的话,4~6MB每秒的码流也就够用了,这么计算的话每天42GB~63GB;不过现在海康采用的是H.265压缩标准也就是2~4MB的码流就可以存储200万像素的设备了,这么计算的话每天21GB~42GB,关键看你的码流设多少。

音视频压缩:H264码流层次结构和NALU详解
H.264的层次结构: 总结: 本文主要讲述了平时研究和分析视频流对象的层次,然后这些视频数据通过NALU传输时,NALU的类型和层次关系,以及NALU数据在不同层次的输出。最后用视频分析工具分析了H.264裸码流验证了上述层次关系。 所以对H.264数据分析时,一定要了解你现在分析的层次和框架,因为每个层次我们关心的数据处理对...

相同码率下h264和h265编码在视频质量上有区别吗?
二、优势不同 1、h.264编码:和MPEG2和MPEG4 ASP等压缩技术相比,在同等图像质量下,采用H.264技术压缩后的数据量只有MPEG2的1\/8,MPEG4的1\/3。2、h.265编码:使用先进的技术用以改善码流、编码质量、延时和算法复杂度之间的关系,达到最优化设置。三、传输速度不同 1、h.264编码:可以低于1...

H264码流中SPS PPS详解
1 客户端抓包 在进行视频解码的客户端操作中,通常使用Wireshark工具抓取H264码流,以便对解码视频的关键信息进行分析。在抓取的码流中,可以看到对视频解码至关重要的SPS(Sequence Paramater Set)和PPS(Picture Paramater Set)。双击SPS内容,可以获取图像的宽度和高度信息。在SPS中,宽度计算方法为:(...

H264码流解析
forbidden_zero_bit 是禁止位,应该是第一位即f(1)=0,1为语法有错误 nal_ref_idc是参考级别,代表被其它帧参考情况,u(2)= 11 = 3最(0为无参考,详见规范)nal_unit_type是该帧的类型,为剩下的5位,u(5)= 0 0111 = 7 目前类型有:\/\/H264定义的类型 values for nal_unit_type typ...

淇县18915586765: 我有一个录像文件.类型是264文件.不是H264.要怎么打开?暴风,QUICKTIME都没用! -
初咽明欣: 那个后缀名是自己起的,里面的文件内容估计是裸码流,就是说没有文件封装;而暴风之类只能直接打开有文件封装的文件;这里理解要正确,编码格式是编码格式,文件封装格式是文件封装格式;比如用AVI的文件封装格式来封装H264编码内容形成的文件

淇县18915586765: 如何编程将H264码流封装成MP4文件 -
初咽明欣: 应该可以参考ffmpeg/libav里的libavformat封装mp4部分源代码 封装mp4工具里,开源的核心层的还有mp4box和l-smash

淇县18915586765: h264在RTP头中的payload type是多少 -
初咽明欣: 有人说是通常是96,但我知道的是96~127是未定义协议的动态范围.

淇县18915586765: 如何使用ffmpeg将h264标准码流生成m3u8索引和ts段文件? -
初咽明欣: 我的思路:1、建立rtsp连接从设备获取标准的h264码流2、组帧并将完整的帧写入帧缓冲区3、线程从帧缓冲区读取一个完整的帧4、对帧进行转码输出ts流5、判断并建立索引文件(索引文件名在与客户段会话的过程确定下来)6、将ts的数据包进行分段并按时(比如10秒)长写入到.ts段文件7、定时对索引文件靠前的ts段信息进行删除更新不知道有没问题,其中转码输出ts流的过程原来没弄过,有弄的话指点下,谢谢!

淇县18915586765: H264码流解析 -
初咽明欣: 00 00 00 01是Start code后面的ox67为 0110 0111 forbidden_zero_bit 是禁止位,应该是第一位即f(1)=0,1为语法有错误 nal_ref_idc是参考级别,代表被其它帧参考情况,u(2)= 11 = 3最(0为无参考,详见规范) nal_unit_type是该帧的类型,为剩...

淇县18915586765: ffmpeg不转码的情况下降低H264码流的方法 -
初咽明欣: 通常要转码,重编码成低码率的版本. 在已经做好的h264文件上降低码流,降帧也许可以. 服务端统计各帧位置后,把影响不大的非关键帧整个一帧移除.填充1无数据帧.. 24帧的可以降到15帧,最低12帧还有动画感.全删变成幻灯片节约带宽也可以. 不过这只是我个人的可行的想法,但没有现成的实现,没得抄,自己写吧. 另可适性编码是从根上解决.

淇县18915586765: 如何把H264文件的数据一帧一帧的读出来 -
初咽明欣: 这其实是一个协议分析过程,每一帧H264数据都是可以通过观察二进制码流分析出来的.根据协议说明,每一帧图像一般在开头有一个单元分隔符NAL,两个单元分隔符之间的数据包就是一帧图像.就是00 00 01 09,这个09就是单元分隔符的标志.不过协议并没有说NAL流必须如此组织,可能还有其它的组织形式.我手头的H264文件都是这样组织的.

淇县18915586765: H264编码问题帧内预测宏块的AQ到底是如何回事
初咽明欣: 残差信息经熵编码后会成为码流的一部分,如果不做熵编码,直接做反变换反量化,则可获得残差(已有量化误差),该残差加上预测值则得到重建块.重建块可参与对其右边和下边的块的预测.在解码端也会有个类似的过程.在第一帧的第一个4x4块,通常会被预测成直流模式,即都被预测成128,然后做残差,经量化变换再反量化反变换后,再加上128,就得到了重建块.该块可以对右边的块进行水平预测,对下边的块进行垂直预测.如此循环,完成对全帧的编码.

淇县18915586765: 如何判断提取出的ES流是真正的裸流? -
初咽明欣: 这个问题已经解决了!首先说一下,我提取出来的流不知道是不是完整的ES流,也即所谓的标准裸流,因为当时用VLC播放不了,所以我自己也不敢确定,怕自己提取的数据不完整什么的.除了版主提供的播放工具,再告诉大家一个方法,那就是用vlc-0.8.6i-win32这个版本的VLC,如果可以播放,就是纯正的裸流!注意,最新版本的VLC是不能播放264文件的!

淇县18915586765: “能播放H.264编码的高码率视频文件”是不是不用转码就可以播放? -
初咽明欣: 你理解错了,人家的意思是凡是H264编码的视频可以不用转换,下下来就可以看,编码可不止H264这一个啊,有好几十上百种,你的机子都支持这些编码了,基本上这地球上所有的视频不用转就可以看了,人家强调支持H264编码就是自夸机器的强大,因为现在能支持H264的视频播放产品很牛逼的

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网