m3u8 線上播放器
輸入任意支援 CORS 的 m3u8/HLS 影片位址,即可在瀏覽器中直接線上播放。
📺 什麼是 m3u8 檔案?看完你就懂了
簡單來說,m3u8 就是一個「播放清單」,跟你在音樂軟體裡建立的歌單差不多——只不過它列的是一段一段的影片分片位址。
打個比方:你看一部電影,如果是 MP4 格式,那就是一個完整的檔案,從頭到尾都在裡面。但如果是 m3u8 格式,電影會被切成幾百個小片段(每段可能就 5~10 秒), 然後用一個 .m3u8 檔案把這些片段的位址都列出來,告訴播放器:「先播第 1 段,再播第 2 段,再播第 3 段……」
播放器拿到這個 m3u8 檔案後,會按照順序一個一個去下載這些小片段,邊下邊播,你基本感覺不到它是分段的,看起來就是連續播放的影片。
🌐 HLS 協定:這玩意兒為什麼這麼火?
m3u8 檔案背後的技術叫 HLS(HTTP Live Streaming),是蘋果公司在 2009 年搞出來的,現在已經成了線上影片的標配協定。 你看 YouTube、Netflix、國內的愛優騰,基本都是用的 HLS。為啥?因為它有這幾個好處:
- 自動調畫質:網速快的時候自動切到 1080p 高畫質,網速慢了自動降到 480p 流暢檔,不用你手動切換,也不會卡住。
- 不挑伺服器:HLS 走的是標準 HTTP 協定,普通的網站伺服器就能用,不需要什麼專門的串流媒體伺服器,部署起來特別省事。
- CDN 友善:影片分片可以直接扔到 CDN(內容分發網路)上,使用者看影片的時候會自動從最近的節點拉取,速度快、延遲低。
- 直播和點播都能搞:直播的時候,伺服器一邊產生新的分片,一邊更新 m3u8 列表;點播的時候,列表是固定的,使用者可以隨便拖動進度條。
- 頻寬省:使用者快進的時候,只需要下載目標位置附近的幾個分片,不用把整個影片都下載下來。
🔧 實際用在哪些地方?
線上影片網站:優酷、騰訊影片、B站的大部分影片都是 HLS 格式,你點選播放的時候,其實瀏覽器在後臺偷偷下載了 m3u8 檔案,然後按照列表一段一段載入影片。
直播平台:體育賽事直播、遊戲直播(比如 Twitch、虎牙、鬥魚),都在用 HLS。主播那邊推流到伺服器,伺服器即時產生 .ts 分片並更新 m3u8 列表,觀眾這邊就能看到直播畫面(一般會有 10~30 秒延遲)。
線上課程:慕課、網校這類平台,用 m3u8 可以方便地實現「倍速播放」「章節跳轉」「斷點續看」,還能配合 DRM 加密防止課程被盜錄。
監控回放:很多智慧攝影機的雲端錄影回放也是 HLS 格式,你在手機 App 上檢視錄影的時候,其實是在播放一個 m3u8 列表。
💻 怎麼把這個播放器嵌入到自己的網站?
如果你有自己的網站或部落格,想加一個 m3u8 播放器,直接複製下面這行程式碼貼到你的 HTML 裡就行:
<iframe src="https://playearns.com/player.html?url=你的m3u8位址"
width="100%" height="500" frameborder="0" allowfullscreen></iframe>
把 url=你的m3u8位址 改成實際的影片連結就可以了。比如你的影片位址是 https://example.com/video/index.m3u8,
那就寫成 https://playearns.com/player.html?url=https://example.com/video/index.m3u8。
如果你有多個頻道或多個影片,可以在頁面裡放一排按鈕,每個按鈕對應一個 m3u8 位址,使用者點選哪個按鈕,就用 JavaScript 改一下 iframe 的 src 屬性,
這樣就能實現頻道切換了(類似電視換台)。
⚠️ 為什麼有些 m3u8 播放不了?
問題 1:跨域限制(CORS)
這是最常見的原因。如果影片伺服器沒有配置跨域存取權限(Access-Control-Allow-Origin 回應標頭),瀏覽器會拒絕載入 m3u8 檔案或分片。
你可以嘗試用本地播放器(VLC、PotPlayer)開啟,或者用我們的 m3u8 轉 MP4 工具 下載下來再看。
問題 2:連結失效或需要鑑權
有些 m3u8 位址是帶時效性的(比如只能在產生後 1 小時內存取),或者需要特定的 token 才能存取,過期或缺少 token 就會 404。
問題 3:加密影片
有些平台會對分片進行 AES-128 加密,播放時需要先下載金鑰檔案(key file)才能解密。如果你沒有金鑰,就算拿到 m3u8 檔案也播放不了。
📥 m3u8 和 MP4 有什麼區別?
m3u8 是播放列表,描述「怎麼播、播哪些分片」;MP4 是影片檔案本身,包含實際的音影片資料。
m3u8 適合線上播放:特別是直播和長影片點播,支援自適應碼率、快進、斷點續播。
MP4 適合下載後離線看:一個檔案就包含所有內容,不依賴網路,相容性好,所有播放器都支援。
如果你想把 m3u8 影片儲存到本地,可以造訪我們的 m3u8 轉 MP4 工具, 純瀏覽器端一鍵轉換(僅適合短影片,長影片建議用 FFmpeg 命令列工具)。
🛠️ 怎麼下載 m3u8 影片?
方法 1:使用 FFmpeg(推薦)
FFmpeg 是專業的音影片處理工具,下載 m3u8 非常快,而且支援合併、轉碼。命令如下:
ffmpeg -i "https://example.com/video/index.m3u8" -c copy output.mp4
方法 2:使用我們的線上工具
造訪 m3u8 轉 MP4 頁面,貼上連結就能線上轉換並下載(適合短影片,長影片可能會逾時或記憶體溢位)。
方法 3:瀏覽器擴充功能
有一些 Chrome/Firefox 擴充功能可以檢測頁面中的 m3u8 位址並下載,比如「Video DownloadHelper」。