2015-10-13 294 views
13

任何人都可以建议如何从HLS流构建MP4文件(与您通常需要的相反)?假设我有m3u8 - 是否有一种简单的方法可以使用FFMPEG或其他工具获得单个MP4将HLS(m3u8)转换为MP4

+1

'的ffmpeg -i in.m3u8 -acodec复制-vcodec副本out.mp4' – szatmary

+2

@szatmary我想这还需要'-bsf:一个aac_adtstoasc' – aergistal

+1

@aergistal的AAC音频是,对于mp3音频没有。 – szatmary

回答

21

ffmpeg -i in.m3u8 -acodec copy -vcodec copy out.mp4

对于AAC音频,你也将需要添加的位ststream过滤器。 (指出了这一点由于@aergistal)

ffmpeg -i in.m3u8 -acodec copy -bsf:a aac_adtstoasc -vcodec copy out.mp4

1

转换的HLS到MP4使用VLC播放器的另一种方法。你可以通过界面和命令行进行转换。只要你可以运行.bat文件已下面几行:

chcp 65001 
"C:\Program Files (x86)\VideoLAN\VLC\vlc.exe" http://cdn.haramain.global/vods3/_definst_/mp4:amazons3/akra/programlar/yeni/335/c07f21e3-a313-4e8d-b594-403ddefbf11f.mp4/playlist.m3u8 --sout "#transcode{vcodec=none,acodec=mp3,ab=70,channels=2,samplerate=44100}:std{access=file{no-overwrite},mux=mp3,dst='C:\Users\aidata\Desktop\Akra FM\13.07.2013 - Karagöz - Bilmecesi.mp3'}" vlc://quit 
"C:\Program Files (x86)\VideoLAN\VLC\vlc.exe" http://cdn.haramain.global/vods3/_definst_/mp4:amazons3/akra/programlar/yeni/335/dcb6754a-49f1-4517-bfe4-3864942f63c8.mp4/playlist.m3u8 --sout "#transcode{vcodec=none,acodec=mp3,ab=70,channels=2,samplerate=44100}:std{access=file{no-overwrite},mux=mp3,dst='C:\Users\aidata\Desktop\Akra FM\12.07.2013 - Nasreddin Hoca - Köyün Eseği.mp3'}" vlc://quit 

此批处理脚本转换两个文件一个接一个。如果您已将这些命令粘贴到cmd.exe中,则所有转换将同时开始。


现在让我来解释一下这些代码。 chcp 65001行允许您在目标文件名中使用unicode字符。以下几行由四部分组成。

  1. "C:\Program Files (x86)\VideoLAN\VLC\vlc.exe"

这是VLC播放的路径。安装VLC播放器后进行验证。

  • http://cdn.haramain.global/vods3/_definst_/mp4:amazons3/akra/programlar/yeni/335/c07f21e3-a313-4e8d-b594-403ddefbf11f.mp4/playlist.m3u8
  • 这是一个示例HLS文件。我不知道如果你把这个链接放在双引号中会发生什么。

  • --sout "#transcode{vcodec=none,acodec=mp3,ab=70,channels=2,samplerate=44100}:std{access=file{no-overwrite},mux=mp3,dst='C:\Users\aidata\Desktop\Akra FM\13.07.2013 - Karagöz - Bilmecesi.mp3'}"
  • 这是用于转换的VLC命令。您可以在VLC Documentation

    找到更多的选择
  • vlc://quit
  • 这将关闭VLC窗口。如果你不想让你的任务栏被VLC窗口填满,这很有帮助。无法在播放列表中堆叠转换单。您必须运行VLC,进行转换并关闭窗口。您也可以尝试以静音模式运行VLC。或者,您可以将VLC窗口拖到屏幕的右下方,以防止频繁闪烁的窗户打扰您。