【发布时间】:2023-04-06 17:21:02
【问题描述】:
我有一个包含一首歌曲的 FLAC 文件。我想创建一个 HLS 流,其中质量最好的流是 FLAC(匹配输入,所以只是直通但分块),然后是 AAC-LC 320、160 和 96Kbps。
我该怎么做?
【问题讨论】:
我有一个包含一首歌曲的 FLAC 文件。我想创建一个 HLS 流,其中质量最好的流是 FLAC(匹配输入,所以只是直通但分块),然后是 AAC-LC 320、160 和 96Kbps。
我该怎么做?
【问题讨论】:
以下命令是一个很好的起点:
./ffmpeg -i my.flac -map 0:a -map 0:a -map 0:a -map 0:a -c:a:0 flac -c:a:1 aac -c:a:2 aac -c:a:3 aac -b:a:1 320k -b:a:2 160k -b:a:3 96k -f hls -hls_playlist_type vod -master_pl_name master.m3u8 -var_stream_map "a:0 a:1 a:2 a:3" stream_%v.m3u8
一些解释:
-map 0:a 将音频输入添加 4 次(0:a 表示来自第一个输入文件 (0) 的音频流)-c:a:0 为每个流设置编解码器(0 = flac;1+2+3 用于 aac)-b:a:0 设置每个流的比特率(aac 320/160/96kbits 为 1-3)-f hls 因为你想要 HLS-hls_playlist_type vod 保留 HLS 流的所有片段-master_pl_name master.m3u8 主播放列表的名称(包含所有 4 个流)-var_stream_map "a:0 a:1 a:2 a:3" 将所有 4 个音频流添加到输出中stream_%v.m3u8 每个流的 HLS 播放列表的名称(流变体的占位符 %v
【讨论】: