Chen

Results 182 comments of Chen

gcc什么版本? 看着是std库太旧了。

确认下ffmpeg生成的avpacket数据内容是不是以00 00 00 01开始。

h264关键帧识别的代码估计周六能写完,不着急可以等2天。

> 如果有需要, 我可以有空可以写一些文档给您.只是水平有限, 需要一边学习一边写 欢迎补充文档!

SDT目前只在第一个ts包中写入了,后面都没有再写。 如果需要重复生成SDT,可以修改SDT生成逻辑。

没有直接ps转flv的例子, 可以结合libmpeg/test/mpeg-ps-dec-test.cpp::mpeg_ps_dec_test 和 libflv/test/ts2flv-test.cpp::ts2flv_test来实现你想要的功能。 flv转ps:libmpeg/test/flv-2-mpeg-ps-test.cpp::flv_2_mpeg_ps_test 另外:librtsp/source/utils/rtsp-demuxer.c可以接收rtp并且内置了ps解包功能,输入rtp包,直接输出音视频裸数据。参考例子:librtsp/test/rtsp-demuxer-test.cpp::rstp_demuxer_test

方便贴下日志吗? 注意下ps时间戳与flv时间戳单位不一样, 一般需要将ps音视频时间戳除以90.

看代码没看出问题。 保存的flv文件能正常播放吗? 用ffprobe看看flv文件有没有音频。

从代码中未发现明显问题,加了些边界条件判断,可以更新后试试。

默认情况下:音频按照pes中的长度分帧,其它视频(264/265之外)根据pts/dts时间戳分帧。 默认策略下,视频帧会引入一帧延迟(需要等下一帧数据,判断dts差别),如果定义了MPEG_LIVING_VIDEO_FRAME_DEMUX ,可以降低延迟。