【问题标题】:FFMPEG m3u8 encoding change extension of TS files to something elseFFMPEG m3u8 编码将 TS 文件的扩展名更改为其他内容
【发布时间】:2021-03-03 12:09:58
【问题描述】:

我正在使用以下命令将 MP4 视频加密为 m3u8 类型。

const cmd = "ffmpeg";
const args = [
  "-i",
  `${input}`,
  "-c",
  "copy",
  "-bsf:v",
  "h264_mp4toannexb",
  "-hls_list_size",
  "0",
  "-hls_time",
  "10",
  "-hls_key_info_file",
  "enc.keyinfo",
  `output/${outputFileName}.m3u8`,
];

这可以工作并输出数据。但是有什么方法可以告诉 ffmpeg 不要在播放列表项中添加 .TS 扩展名?

我用一些随机文件扩展名手动更新了m3u8 文件中的播放列表项之一,它可以工作。

#EXTM3U
#EXT-X-VERSION:3
#EXT-X-TARGETDURATION:12
#EXT-X-MEDIA-SEQUENCE:0
#EXT-X-KEY:METHOD=AES-128,URI="http://localhost/key/video.key",IV=0x00000000000000000000000000000000
#EXTINF:10.666667,
somerandomname // <-- Here I change it and when I play in a HLS player it works. 
#EXTINF:11.666667,
output1.ts
#EXT-X-ENDLIST

我可以用上面的命令吗?

【问题讨论】:

    标签: node.js ffmpeg m3u8


    【解决方案1】:

    找到了解决办法,

    有一个标志可以做到这一点。你可以使用,

    '-hls_segment_filename', 'segment%d'
    

    %d 是递增数字,因此这会将文件保存为segment0segment1segment2...segnemntN

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-07-29
      • 2014-06-21
      • 2018-08-08
      • 1970-01-01
      • 2017-02-23
      • 2022-11-04
      • 1970-01-01
      相关资源
      最近更新 更多