gpt4 book ai didi

ffmpeg - 如何将 RTPDUMP 视频文件转换为 mp4

转载 作者:行者123 更新时间:2023-12-01 01:53:19 29 4
gpt4 key购买 nike

Viber 最近获得了“即时视频消息”选项,也称为“视频一键通”(vptt)。

在目录“.vptt”中的 viber 数据中,有带有 vptt 扩展名的文件。信封格式是经典的 ZIP 文件,提取时会提供 jpg-thumbnail 和“​​视频”文件。

视频文件在第一行显示“#!rtpplay1.0”,因此格式应为rtp-tools ,也被wireshark使用,并且以某种方式与实际的WebRTC趋势相关......

因此,如果此 rtpdump 文件中的视频内容未加密(?),“如何保存 viber 即时消息一键通视频”归结为:“如何将 rtpdump 视频转换为 mp4”。

rtpplay 可以将其发送到某个端口,但 ffmpeg/ffplay/vlc 需要正确的 sdp 文件。

有人对此有更多了解吗?

最佳答案

可以使用 rtpplay 将 rtpdump 文件转换为 mp4和 FFmpeg .

例如,让我们考虑这些文件:

  • narwhals-audio.rtpdump
  • narwhals-video.rtpdump

  • 分析它们:
    $ rtpdump -Fascii -f narwhals-audio.rtpdump  | head -n 1
    0.000000 RTP len=15 from=0.0.0.0:0 v=2 p=0 x=0 cc=0 m=1 pt=97 (????,0,0) seq=1679 ts=249986024 ssrc=0xf944ac63
    $ rtpdump -Fascii -f narwhals-audio.rtpdump | tail -n 1
    65.570000 RTP len=15 from=0.0.0.0:0 v=2 p=0 x=0 cc=0 m=1 pt=97 (????,0,0) seq=4959 ts=253134824 ssrc=0xf944ac63

    分析结果:
    Audio sample rate = (253134824 - 249986024) / (65.57 - 0) ~= 48000
    Audio codec: probably opus
    Audio payload type: 97

    Video sample rate: 90000
    Video codec : probably VP8
    Video payload type: 96

    编解码器名称可能需要一些猜测/投资/只是尝试所有这些。

    让我们为视频分配端口 4646,为音频分配端口 4848,并创建一些 SDP 文件:
    v=0
    c=IN IP4 127.0.0.1
    m=video 4646 RTP/AVP 96
    a=rtpmap:96 VP8/90000
    m=audio 4848 RTP/AVP 97
    a=rtpmap:97 opus/48000

    然后让我们准备一个命令行来启动 FFmpeg,它将根据 SDP 监听这些端口保存到 MP4 文件:
    ffmpeg -v warning -protocol_whitelist file,udp,rtp -f sdp  -i narwhals.sdp  -copyts -c copy -y narwhals.mkv

    FFmpeg 在 10 秒未能接收到任何数据包后退出,因此暂时不要启动该命令行。

    然后,在另一个控制台选项卡中,准备 rtpplay 命令行:
    rtpplay -T -f narwhals-video.rtpdump 127.0.0.1/4646 & rtpplay -T -f narwhals-audio.rtpdump 127.0.0.1/4848

    也不要开始它。注意有两个 rtpplay s 应该同时启动。

    现在,快速连续地启动准备好的 FFmpeg 命令行,然后是 rtpplay s。等到 rtpplays 完成(大约一分钟)。然后 FFmpeg 应该超时并且您的文件已完成。

    mkv 文件可以转成 MP4,但由于 MP4 不支持 VP8,所以需要转码。转码也可以用 FFmpeg 完成。

    不幸的是,音频/视频同步可能是一个问题,也可以使用 FFmpeg 技巧来解决;或通过调整 SDP 中的采样率,如 VP8/95000 .

    关于ffmpeg - 如何将 RTPDUMP 视频文件转换为 mp4,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42564983/

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