TechMoon 科技月球
WordPress、SEO 與 AI 工具實測指南
TechMoon 科技月球
WordPress、SEO 與 AI 工具實測指南

neTV 是 Apache-2.0 開源的自架 IPTV 播放器,用 Docker 跑在 NAS 上,瀏覽器直接看直播不用裝 App。README 寫到它主打低延遲切台、h264+aac 零 CPU 直通、NVIDIA TensorRT 即時 AI 升頻。本文依官方文件拆解它的架構、怎麼部署,以及它是播放器不是內容來源的關鍵限制。
用 AI 摘要這篇文章:
neTV 是一個你自己架在 NAS 或小主機上的 IPTV 播放器。它只做一件事:把你已經有的 IPTV 來源,用一個乾淨的網頁介面播出來,打開瀏覽器就能看直播,不必再裝 App,也不必架 Plex 那種大型媒體庫。

這裡的關鍵字是「你已經有的」。neTV 在 README 的免責聲明裡寫得很白:它只是一個播放器,不提供任何內容,你要自己準備合法的 IPTV 訂閱(提供 Xtream Codes API 或 M3U 播放清單的那種服務)。先記住這點,整篇都繞著它轉。
README 的 Alternatives 段落把話說得很客氣:Plex、Emby、Jellyfin 都是成熟、優秀的媒體中心,社群也大;neTV 只是給「覺得它們太重、只想要一個簡單 IPTV 播放器」的人另一個選擇。所以它的定位是「補」,不是「取代」。
所謂「太重」是具體的。Plex 一啟動就想掃你的媒體櫃、抓海報、整理演員卡、為每個裝置協商轉碼;如果你根本沒有本地媒體櫃,手上就是一條 IPTV,這套手續全是空轉。neTV 把這些全砍掉,直接對著 IPTV 來源播。它只吃直播和隨選影片(VOD,像 Netflix 那樣點開就看的影片庫),不管你的本地檔案。
不過 neTV 也不是完全沒有「家人」這條軸線。README 的比較表顯示它支援多使用者,每個使用者、每個來源都能設同時連線數上限,只是沒有 Plex 那種細到每個資料夾的權限。它也用不到,因為它沒有本地資料夾。
README 附的比較表裡有幾項是讀者最常拿來糾結的,我摘出來:
| neTV | Plex / Emby / Jellyfin | |
|---|---|---|
| 主要定位 | IPTV 直播與點播 | 完整媒體中心 |
| 原生吃 Xtream Codes API | 是 | 否(Plex 要靠 xTeVe 之類的工具轉接 M3U) |
| 本地影片庫 / DVR 錄影 | 沒有 | 有 |
| AI 升頻(跟我們介紹過的 HitPaw Video Enhancer 走不同路線:一個是即時播放升頻,一個是後製處理)到 4K | 有(TensorRT,僅 NVIDIA) | 無(Jellyfin 有外掛,其餘無) |
這張表是從 README 的比較表摘的,只挑會影響「我要選哪邊」的那幾欄。看得出來:如果你要的是一個顧全家媒體的大本營,neTV 不足;如果你手上就是一條 IPTV,嫌 Plex 開起來太重,neTV 就是順著這個不滿長出來的工具。
自己架的另一個好處是介面統一。IPTV 來源給的 App 通常又陽春又碎,手機一個、電視一個、電腦又一個;neTV 把全部裝置收進同一個網頁,手機平板開瀏覽器、客廳電腦開瀏覽器、Chromecast 投出去,看到的是同一套操作。README 的比較表也顯示 neTV 能設多個來源、每個來源各自限制同時連線數,所以你可以把一條體育直播、一條無線電視接收器、一條隨選影片併在同一個節目表裡,不用在三個 App 之間切來切去。
這裡要誠實說:neTV 實際切台比 Plex 快多少、播 4K 多順,我沒有實機測,README 也沒給這類數字。所以「感覺比較快」的說法我不寫進來。
README 附了五張截圖,分別是電子節目表、播放器、隨選影片、影集、設定頁。

README 還列了搜尋(支援正規表示式)、收藏拖曳排序、隨選影片斷點續看等功能,這些是把播放體驗補完的周邊,不是決定你裝不裝的理由。
還有一個細節:設定頁上的 AI 升頻選項,只有在 TensorRT 引擎真的存在時才會出現;機器上沒有 NVIDIA 顯卡時,那個選項連看都不會讓你看到。我只讀了 README 和它附的截圖,沒有實際部署點過每一頁,所以這裡只能說「官方文件呈現的樣貌」,不能替每個按鈕的反應快慢背書。
如果你想在 NAS 或小主機上跑 IPTV,最怕的就是轉碼(把影片格式即時換成裝置能播的格式)把 CPU 吃滿。這段是整篇最該讀慢的地方,因為它直接決定 neTV 在你的機器上會不會吵、會不會卡。
多數 NAS 搭的是低功耗處理器,一旦每個頻道都得轉碼,CPU 馬上滿載,風扇也跟著吵。README 在 Transcoding 段落寫了幾個專門對付這件事的設計:
反過來說,如果你的來源是 HEVC 或比較少見的編碼,neTV 還是得轉碼,這時 GPU 就重要了。沒有 GPU 的機器,README 也列了軟體轉碼(software fallback)作為後備,也就是交給 CPU 硬算,能跑但會吃力,能同時開幾條就看你的 CPU 撐不撐得住。
還有一條和 HTTPS 有關:如果你的 neTV 走 HTTPS,但 IPTV 來源是普通的 HTTP 串流,瀏覽器基於安全會擋下混合內容。README 寫 neTV 會自動把這類 HTTP 串流代理出去(HTTPS passthrough),讓你在 HTTPS 站台下還是看得到 HTTP 來源,不必自己改來源。
這幾條我都標註是 README 寫到的設計。它們說明了「作者怎麼想省 CPU」,但不能直接推論成「neTV 在你的機器上一定順」,實際表現要看你的硬體和來源。
### AI 升頻:把老節目拉成 4K,但要 NVIDIA 顯卡
neTV 還有一個比較吸睛的能力:用 TensorRT 跑 Real-ESRGAN 模型,把 480p/720p/1080p 的畫面即時升頻到 4K,對老影集和低畫質串流特別有用。README 給的參考數字是 RTX 5090 上 480p 升 4K 約 85fps、720p 升 4K 約 39fps。
條件很硬:只支援 NVIDIA 顯卡,建議 RTX 20 系列以上,驅動 535 以上,還要額外建一個 AI 升頻用的 Docker 映像檔。第一次啟動要花 2 到 3 分鐘把 TensorRT 引擎編出來,之後快取起來,下次啟動就快了。AMD 和 Intel 顯卡吃不到這個功能。
這裡要給 NAS 使用者一個現實的提醒:真正能跑 AI 升頻的機器,多半是拿桌機或遊戲機當伺服器的人,不是一台純 NAS。多數 NAS 沒有 NVIDIA 顯卡,也塞不進一張 RTX。所以把 AI 升頻當主訴求來決定要不要裝 neTV,不太成立;它更像是「剛好機器裡有 N 卡」的紅利。
README 提供 Docker Compose 的部署方式,這是最快上手的一條路。
第一步:建立 docker-compose.yml
services:
netv:
image: ghcr.io/jvdillon/netv:latest
ports:
- "8000:8000"
volumes:
- ./cache:/app/cache
- /etc/localtime:/etc/localtime:ro
devices:
- /dev/dri:/dev/dri # 有顯卡才掛,沒有就把這行刪掉
restart: unless-stopped
第二步:啟動
docker compose up -d
打開 http://localhost:8000,第一次進去要建一個管理員帳號。遇到節目表或 M3U 解析怪怪的,README 的 Troubleshooting 提供一條快速除錯路:在 docker-compose.yml 加一個環境變數 LOG_LEVEL=DEBUG,重啟後看 log,能看出是 EPG、M3U 還是來源本身的問題。
第三步:接上你的 IPTV 來源
進設定頁加來源。neTV 吃兩種格式:
兩種來源給你的體驗不太一樣。Xtream Codes API 會把直播、電影、影集連同 metadata(海報、分級、劇情簡介等詮釋資料)一起送過來,所以 neTV 的「電影」「影集」頁才會有東西可選、有季有集。M3U 基本上只是一串頻道網址,直播頁沒問題,但「電影/影集」頁能不能填滿,要看你的 M3U 內容本身帶不帶這些資訊。
如果你還沒有任何 IPTV 來源,README 的 Q&A 直接建議看 iptv-org/iptv 這個社群維護的公開頻道清單當起點(只是公開訊號源,能不能看、合不合法要自己判斷)。節目表資料可以搭 iptv-org/epg 或 Schedules Direct。
如果你裝 neTV 是為了看無線電視(OTA,over the air,用天線收的那種免費數位電視),README 的 tools 目錄裡有幾個小幫手:alignm3u.py 能把 HDHomeRun 接收器產生的 M3U 和電視節目表對起來,zap2xml.py 能去抓電子節目表轉成 XML,xtream2m3u.py 則反向把 Xtream 來源倒成 M3U,方便你拿到 Emby 之類的工具用。
硬體轉碼怎麼開:Intel/AMD 內顯只要 /dev/dri 存在就自動抓(VAAPI);NVIDIA 要先裝 nvidia-container-toolkit;如果跑在沒有顯卡的 VPS 上,記得把上面 devices 那段刪掉,不然容器會起不來。想追求最佳 GPU 效能、或要用 AMD 獨顯、或想跑 AI 升頻,README 還提供一份自製的 FFmpeg 映像檔,那是進階選項,一般使用不必動到。日後更新也簡單,docker compose pull && docker compose up -d 拉新映像檔重啟,快取資料還在。
不想碰 Docker 的人,README 另外給了一條 Debian/Ubuntu 的 systemd 路線,跑幾支 install-*.sh 腳本就能裝成系統服務、開機自動啟動。Chromecast 要的 HTTPS 憑證、NVIDIA 最佳化的 FFmpeg 也都有對應腳本。這條路比 Docker 多幾個步驟,但對把 neTV 當主力服務的人,跑成 systemd 比較好管理。
neTV 設計時就考慮了幾種看電視的姿勢:
把限制集中說一次,這幾點會直接決定 neTV 適不適合你:
1. 不提供任何內容。README 免責聲明寫死:只是播放器,你要自備合法的 IPTV 訂閱,使用內容的法律責任在你。
2. AI 升頻只支援 NVIDIA。RTX 20 系列以上,AMD 和 Intel 用戶直接跳過這個賣點。
3. 要會一點 Docker 或終端機。Docker Compose 是最快路線;不想碰 Docker 的人可以走 systemd,但仍要跑指令。
4. 字幕只支援 WebVTT 一種格式,不像 Plex 支援完整字幕格式。
5. 沒有 DVR 錄影、沒有本地媒體庫。要錄節目、要播自己硬碟裡的電影,這不是它的戰場。
6. Chromecast 要 HTTPS,等於多一道憑證設定。
7. 行動裝置沒有原生 App,只有網頁版,出門想用手機看要有心理準備。
還有一點容易被誤會:neTV 是播放器,不會幫你突破 IPTV 服務商本來的同時連線數限制。你跟對方簽幾條就是幾條,neTV 只是在你這端再分一層管理,例如限制某個帳號同時只能開一條,或把不同來源分給不同家人。
適合裝的人大致長這樣:手上已經有一條合法 IPTV,嫌 Plex 開媒體庫太重、只想要個輕量網頁播放器;客廳擺了一台 HTPC 或習慣 Chromecast;機器裡正好有一張 NVIDIA 顯卡,想試試把老節目升頻到 4K。
不該碰的人也很清楚:想要本地影片庫、家庭相簿、DVR 錄影,直接選 Plex、Emby 或 Jellyfin,別為了 neTV 放棄這些;完全沒有 IPTV 來源,neTV 對你沒用;不想碰任何指令,這工具的安裝門檻會讓你挫敗。
第一步很輕:到 GitHub 上 jvdillon/netv 這個 repo,把 README 的 docker-compose 抄下來跑一輪,再把自己的 IPTV 來源接上,很快就能知道它值不值得留在你的機器上。想先零成本試水,可以拿 iptv-org/iptv 的公開頻道接進去,確認介面、轉碼、Chromecast 都合你意,再決定要不要為合法訂閱付錢。
成本要算清楚:軟體本身免費,但你真正花錢的有兩塊。一是合法的 IPTV 訂閱,這條 neTV 幫不了你;二是跑得動它的硬體。只想看直播、手上有現成 NAS 的人,成本接近零;想玩 AI 升頻,等於要為一張 NVIDIA 顯卡和它吃的電費買單。先把這兩筆算進去,再決定要不要入坑。neTV 採 Apache-2.0(關於 GitHub 公開不等於授權,我們在 Agent Battery 那篇談過) 授權,完全免費、開源。