M3U8 與 MP4 差在哪?

很多人第一次接觸會以為 M3U8 是「比較好的 MP4」,或是以為轉檔能讓畫質變好。其實兩者的關係更像是「食譜」與「便當」—— 一個是說明,一個是實體。搞懂這個差別,你就不會再被各種轉檔廣告誤導。

用一個比喻搞懂:食譜 vs 便當

把兩者放在一起看,差異就很清楚了:

格式比喻
M3U8食譜:它寫著「第一道菜在冰箱左邊、第二道在右邊」,但食譜本身不能吃。你必須照著它去拿食材,才能組出一餐。
MP4便當:所有菜色已經裝在一個盒子裡,打開就能吃,也能帶著走。缺點是份量固定,不能中途加菜。

這個比喻解釋了很多現象:為什麼 M3U8 不能雙擊播放(食譜不能吃)、為什麼串流可以中途切換畫質(主廚可依情況換菜色)、為什麼轉成 MP4 畫質不會變好(把菜裝進便當盒,菜還是原本的菜)。

技術層面完整對照

比較項目M3U8(HLS)MP4
檔案本質純文字清單二進位影音檔
是否含影片否,只指向片段位置是,完整影片資料
能否雙擊播放否,需播放器解析是
畫質切換支援,可動態調整不支援,固定單一畫質
邊下邊播支援需下載足夠片段後才能播
檔案大小清單極小,片段另計等於所有片段總和
裝置相容性需支援 HLS 的播放器幾乎所有裝置都支援
離線播放不支援支援
適合場景直播、串流平台、長片保存、剪輯、分享、離線觀看

注意最後一列 —— 這其實回答了一切:兩個格式是為不同目的設計的,沒有誰比較好。YouTube 用串流是因為要服務全球數億使用者;你把手機影片存成 MP4 是因為要保存與分享。

什麼時候該轉成 MP4

如果你手上有 M3U8 串流,以下情況建議轉成 MP4:

情境原因
要離線觀看M3U8 離開網路就抓不到片段。
要放到不確定支援度的裝置MP4 幾乎是通用格式,電視、車機、舊播放器都吃。
要剪輯剪輯軟體通常不吃 M3U8,需要完整檔案。
要備份保存串流網址會失效,片段也可能下架。
要傳給別人總不能叫對方「自己去抓那一堆片段」。

反過來說,什麼時候不需要轉?

  • 只是要看一次 → 直接用線上播放器就好。
  • 網路穩定、裝置支援 → 串流體驗其實更好(可切畫質)。
  • 要架設自己的 HLS 服務 → 反而需要保留 M3U8 結構。

轉檔不是「升級」,而是「換個用途」。想清楚你要拿它做什麼,就知道該不該轉。

轉檔會影響畫質嗎?

這是最大的誤解來源。答案取決於你用哪種方式轉:

方式畫質與速度
不重新編碼
-c copy
畫質完全不變,速度極快(幾乎是硬碟寫入速度)。原理是把影音資料原封不動搬進新容器,就像把水從一個杯子倒進另一個杯子。
重新編碼
-c:v libx264
畫質必然下降(因為是有損壓縮),速度慢很多,但檔案可能變小。除非要降檔案大小或轉換編碼格式,否則沒必要這樣做。

實務建議:M3U8 轉 MP4 一律用 -c copy。本站的線上工具也是用這種方式,所以轉出來的畫質與原始串流完全相同,不會有任何損失。

常見問題

M3U8 和 MP4 哪個畫質比較好?
不一定,取決於原始編碼而非容器格式。M3U8 因為是串流格式,通常會提供多種畫質讓播放器依網速選擇,所以「可選的最高畫質」可能比單一 MP4 檔更高。但如果把 M3U8 的片段原封不動合併成 MP4(不重新編碼),畫質完全一樣,因為影片資料本身沒有改變,只是換了外殼。
M3U8 轉成 MP4 會變小嗎?
用「不重新編碼」的方式轉(-c copy),檔案大小幾乎完全相同,因為影片內容沒有被重新壓縮,只是換了封裝格式。若你想要更小的檔案,必須重新編碼並降低位元率,但這會犧牲畫質。簡單說:轉檔本身不會變小,壓縮才會。
為什麼有些播放器只支援 MP4?
因為 MP4 是歷史悠久的通用格式,幾乎所有裝置與軟體都支援,包含老舊的電視、車機、剪輯軟體等。M3U8 是相對新的串流格式,需要支援 HLS 的播放器才能開啟。如果你要把影片放進不確定支援度的裝置,轉成 MP4 是最保險的做法。
可以把 MP4 轉回 M3U8 嗎?
技術上可以,但通常沒有意義。M3U8 的價值在於「串流傳輸」,需要搭配伺服器與網頁播放器才有用。如果你只是想在本地播放,MP4 就夠了。若你確實需要架設 HLS 服務,可用 FFmpeg 將 MP4 切割:ffmpeg -i input.mp4 -c copy -f hls -hls_time 10 output.m3u8,會同時產生 m3u8 與多個 ts 片段。
手機拍的影片是 MP4 還是 M3U8?
手機直接錄影存下來的是 MP4(或 iPhone 的 MOV),因為那是完整的單一檔案。M3U8 只會出現在「網路串流」的情境,例如你在手機上看 YouTube、Netflix 或電視台直播時,背後傳輸用的才是 HLS/M3U8,但你不會看到這些檔案,因為它們是即時抓取播放的。
我需要保留 M3U8 嗎?
一般使用者不需要。M3U8 只是一份清單,離開原始伺服器就沒有意義,而且串流網址通常有時間限制。如果你要保存內容,應該把片段合併成 MP4 存下來。只有在你需要「用原始畫質繼續串流播放」或「自行架設 HLS 服務」時,才需要保留 M3U8 結構。

準備好轉檔了嗎?

無損合併,畫質與原始串流完全相同。

看轉檔教學