|
|
51CTO旗下网站
|
|
移动端

Linux下如何创建M3U播放列表

本文主要是关于如何在Linux终端中根据乱序文件创建M3U播放列表实现循序播放的小建议。因此我要做的事情就是在视频墓中创建一个 .m3u 播放列表,并告诉 MPV 播放这个 .m3u 播放列表,MPV 自然会按顺序播放这些视频。

作者:Shirsh来源:Linux中国|2018-10-08 09:05

 

我是外国电视连续剧的粉丝,这些连续剧不太容易从 DVD 或像 Netflix 这样的流媒体上获得。好在,您可以在 YouTube 上找到一些内容并从 YouTube 下载

现在出现了一个问题。你的文件可能不是按顺序存储的。在 GNU/Linux中,文件不是按数字顺序自然排序的,因此我必须创建 .m3u 播放列表,以便 MPV 视频播放器可以按顺序播放视频而不是乱顺进行播放。

同样的,有时候表示第几集的数字是在文件名中间或结尾的,像这样 “My Web Series S01E01.mkv”。这里的剧集信息位于文件名的中间,“S01E01”告诉我们人类这是第一集,后面还有其它剧集。

因此我要做的事情就是在视频墓中创建一个 .m3u 播放列表,并告诉 MPV 播放这个 .m3u 播放列表,MPV 自然会按顺序播放这些视频。

什么是 M3U 文件?

M3U 基本上就是个按特定顺序包含文件名的文本文件。当类似 MPV 或 VLC 这样的播放器打开 M3U 文件时,它会尝试按给定的顺序播放指定文件。

创建 M3U 来按顺序播放音频/视频文件

就我而言, 我使用了下面命令:

  1. $/home/shirish/Videos/web-series-video/$ ls -1v |grep .mkv > /tmp/1.m3u && mv /tmp/1.m3u .

然我们拆分一下看看每个部分表示什么意思:

ls -1v = 这就是用普通的 ls 来列出目录中的内容. 其中 -1 表示每行显示一个文件。而 -v 表示根据文本中的数字(版本)进行自然排序。

| grep .mkv = 基本上就是告诉 ls 寻找那些以 .mkv 结尾的文件。它也可以是 .mp4 或其他任何你想要的媒体文件格式。

通过在控制台上运行命令来进行试运行通常是个好主意:

  1. ls -1v |grep .mkv
  2. My Web Series S01E01 [Episode 1 Name] Multi 480p WEBRip x264 - xRG.mkv
  3. My Web Series S01E02 [Episode 2 Name] Multi 480p WEBRip x264 - xRG.mkv
  4. My Web Series S01E03 [Episode 3 Name] Multi 480p WEBRip x264 - xRG.mkv
  5. My Web Series S01E04 [Episode 4 Name] Multi 480p WEBRip x264 - xRG.mkv
  6. My Web Series S01E05 [Episode 5 Name] Multi 480p WEBRip x264 - xRG.mkv
  7. My Web Series S01E06 [Episode 6 Name] Multi 480p WEBRip x264 - xRG.mkv
  8. My Web Series S01E07 [Episode 7 Name] Multi 480p WEBRip x264 - xRG.mkv
  9. My Web Series S01E08 [Episode 8 Name] Multi 480p WEBRip x264 - xRG.mkv

结果显示我要做的是正确的。现在下一步就是让输出以 .m3u 播放列表的格式输出。

  1. ls -1v |grep .mkv > /tmp/web_playlist.m3u && mv /tmp/web_playlist.m3u .

这就在当前目录中创建了 .m3u 文件。这个 .m3u 播放列表只不过是一个 .txt 文件,其内容与上面相同,扩展名为 .m3u 而已。 你也可以手动编辑它,并按照想要的顺序添加确切的文件名。

之后你只需要这样做:

  1. mpv web_playlist.m3u

一般来说,MPV 和播放列表的好处在于你不需要一次性全部看完。 您可以一次看任意长时间,然后在下一次查看其余部分。

我希望写一些有关 MPV 的文章,以及如何制作在媒体文件中嵌入字幕的 mkv 文件,但这是将来的事情了。

注意: 这是开源软件,不鼓励盗版。

【编辑推荐】

  1. 在Linux上如何操作目录 ?
  2. 让你提高效率的Linux技巧
  3. “用户组”在Linux上到底是怎么工作的?
  4. 如何使用Steam Play在Linux上玩仅限Windows的游戏
  5. 如何在Linux中查看进程占用的端口号
【责任编辑:庞桂玉 TEL:(010)68476606】

点赞 0
分享:
大家都在看
猜你喜欢

读 书 +更多

Java for Flash动态网站开发手札

本书深入浅出地说明了如何利用Java、Flash及XML进行Flash富媒体应用程序的开发。 本书知识丰富,内容结构合理,包括:Flash影片应用程序与...

订阅51CTO邮刊

点击这里查看样刊

订阅51CTO邮刊