gpt4 book ai didi

ffmpeg - 如何在不丢失时间信息的情况下将 H264/RTP 流转储到文件中?

转载 作者:行者123 更新时间:2023-12-04 22:52:04 25 4
gpt4 key购买 nike

我编写了一个应用程序以通过 TCP 从硬件相机接收 RTP 数据包(没有数据包丢失),并将其 H264 数据包转储到文件中,以便我可以使用 MPlayer 或 VLC 播放视频。这已经奏效了,我几乎完成了 here 中描述的步骤。 .播放视频的命令是mplayer -fps 24 -demuxer h264es foobar.h264vlc foobar.h264 .

现在问题出在我播放视频时。相机频繁更改 FPS,并且因为我在写入 H264 文件时丢弃了 RTP 信息,所以每帧的时间戳都会丢失。我的问题是:我该怎么做才能固定帧频?我应该创建空/空白 P 帧(如果可能的话)?如果是这样,我会怎么做?

非常欢迎使用 shell、C/C++ 或 Python 使用 Linux 兼容工具或库(如 ffmpeg、libx264、libavcodec)的任何解决方案。

PS:我几乎没有视频编码和RTP的经验。

最佳答案

原始 h.264 流中没有时间信息。需要将流放入 MP4 或 FLV 等容器中,您可以在其中使用 PTS/DTS 标记每个帧。

关于ffmpeg - 如何在不丢失时间信息的情况下将 H264/RTP 流转储到文件中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21477994/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com