h264 封装成 ps 格式 遇到的困难

dugu_94 2012-09-13 11:35:21
最近做项目h264(带0x00 00 00 01)原始流 封装成ps格式用文件保存
第一次接触这方面 两眼一瞎黑的 硬上 看13818 文档 封装 但遇到一些问题
我的思路是这样的
在文件开头
ps 头 + system 头 + pes头 + h264流(带sps pps 的IDR帧)
其他的是 ps头 + pes头 + h264流

其中 ps头中
src_base(i)=((system_clock_frequency*t(i))DIV 300)%2 33
src_ext(i)=((system_clock_frequency*t(i))DIV 1)%300
其中的t(i) 我取的是获得h264流的时间戳 (ms为单位)

mut_rate = 25200

pes 头中 pts_dts_flag = 2(即10)

pts的值就是上面的 src_base(i)

就这样存了几分钟 文件

用vlc播放 没有视频出现 也不报错误

是什么问题造成这样的

1 没有加结尾标志 1b9 要是加上 怎么处理
2 scr 和pts 的值取值错误
3 mut_rate的值错误
4 system头的取值错误 system头 后面的几个参数怎么设置

还有两个问题
1 明明有3 4 分钟的视频 怎么1分钟就看完了 怎么去处理
2 ps map 有什么作用 (stream id = 0xbc)怎么用



...全文
1021 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
Zhu guli 2013-04-12
  • 打赏
  • 举报
回复
我前一阵才做过ps流封装,我觉得你的问题应该是时间戳不正确,pts和dts你都正确吗?用分析工具看了没?你用分析工具看看吧
chidao_2010 2013-04-09
  • 打赏
  • 举报
回复
求ps视频流文件
malespy1127 2013-02-28
  • 打赏
  • 举报
回复
楼主,请问下h264流的时间戳如何获取啊
xy365 2013-01-25
  • 打赏
  • 举报
回复
官方的2.0.5版本的VLC能播放ps格式封装的视频流吗?需要做哪些配置?
dengzikun 2013-01-24
  • 打赏
  • 举报
回复
PS没有规定按NALU或者按帧来封装H264数据。 在H264规范中有一小节专门讲如何检测图像的第一个NALU。在VLC源码中有相关的代码。 “基本编码图像的第一个VCL NAL单元的检测”。 VLC中有PS封装代码,可以参考。
malespy1127 2013-01-23
  • 打赏
  • 举报
回复
各位大哥,小弟有一个比较低级的问题,h264码流是应该按nalu还是按帧封装成ps呢,如果是按帧封装那把nalu组帧的时候如何判断哪些nalu是同一帧?
yyd01245 2013-01-09
  • 打赏
  • 举报
回复
也在学习封装Ps中!
cai99 2013-01-08
  • 打赏
  • 举报
回复
连封装成ps格式我这都有问题,你们的PS格式封装能不能贴点源码参考参考啊
水中花儿x 2012-09-28
  • 打赏
  • 举报
回复
我也遇到此类问题,可以加 QQ 253225044 聊

2,543

社区成员

发帖
与我相关
我的任务
社区描述
专题开发/技术/项目 多媒体/流媒体开发
社区管理员
  • 多媒体/流媒体开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧