【问题标题】:Why AWS MEDIACONVERT set EXTINF in m3u8 file equals to source video duration +1 sec?为什么 AWS MEDIACONVERT 在 m3u8 文件中设置 EXTINF 等于源视频持续时间 +1 秒?
【发布时间】:2022-06-23 05:27:13
【问题描述】:

我有一个持续时间=17sec 的源 mp4 文件(例如)。 当我使用 AWS MediaConvert 将视频转换为 Apple HLS 时,我得到了持续时间为 18sec 的 m3u8 文件。 我的意思是 m3u8 中的 #EXTINF:18 标签。 我使用 ABR 模式。 SegmentControl 设置为默认设置

    {
       "OutputGroups": [
          {
            "Name": "Apple HLS",
            "OutputGroupSettings": {
              "Type": "HLS_GROUP_SETTINGS",
              "HlsGroupSettings": {
                "SegmentLength": 10,
                "MinSegmentLength": 0,
                "TargetDurationCompatibilityMode": "LEGACY",
                "SegmentLengthControl": "GOP_MULTIPLE",
                "SegmentControl": "SEGMENTED_FILES"
              }
          }
       ]
    }

如何解决?我尝试更改不同的 HlsGroupSettings,但结果保持不变

【问题讨论】:

    标签: http-live-streaming aws-media-convert


    【解决方案1】:

    感谢您的帖子。 MediaConvert 有一个默认设置,即使用整数表示清单持续时间。这意味着即使是额外的 1 帧视频或音频也会为片段持续时间增加一整秒。您可以在“HLS 输出组/高级/清单持续时间格式”下更改此设置。

    为了最大程度地兼容流媒体播放器,我们建议使用 1 秒作为最短片段持续时间。非常短的片段(

    测量时长时,请务必检查实际的媒体轨道时长,而不仅仅是文件头元数据。 ffprobe 或 mediainfo(使用 --full 标志)等实用程序对此很有帮助。每个帧的 pts_time 将指示它应该何时开始。 pkt_duration_time 将指示每一帧的持续时间。

    【讨论】:

      猜你喜欢
      • 2021-07-26
      • 2021-09-23
      • 1970-01-01
      • 1970-01-01
      • 2021-02-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多