VLC เล่นวิดีโอไม่ได้? 7 วิธีแก้ที่ใช้ได้จริง
อาการ "VLC เล่นวิดีโอไม่ได้" ครอบคลุมอาการที่กว้างกว่าที่คิด ไฟล์เปิดขึ้นมาแต่ไม่มีอะไรเกิดขึ้น การเล่นหยุดทันที ไทม์ไลน์ค้างอยู่ที่ 00:00 หรือ VLC แจ้งข้อผิดพลาดแล้วปิดหน้าต่างไป ข่าวดีคือในกรณีส่วนใหญ่ไฟล์สื่อยังปกติดี และปัญหาอยู่ที่เส้นทางการถอดรหัสของ VLC เมทาดาทาของไฟล์ หรือคอนฟิกที่ค้างเก่า ไล่ทำตามวิธีแก้เหล่านี้ตามลำดับ — วิธีที่ 1 แก้ได้ประมาณครึ่งหนึ่งของรายงานทั้งหมด และเมื่อถึงวิธีที่ 4 กรณีส่วนใหญ่ก็จะถูกแก้ไปแล้ว
ทำไมจึงเกิดเหตุการณ์นี้?
- codec ในไฟล์นั้นหายไปหรือเสียหาย — พบไม่บ่อยกับ VLC ตัวมาตรฐาน (เพราะรวม codec มาแทบทุกตัว) แต่คอนเทนเนอร์แปลก ๆ บางแบบหรือ moov atom ที่เสียหาย (ดัชนีของ MP4) ก็ทำให้เล่นไม่ได้
- การเร่งความเร็วฮาร์ดแวร์ล้มเหลวกับ codec ตัวใดตัวหนึ่ง — GPU ถอดรหัสสตรีมได้ไม่ดี และ VLC จึงถอยไปแสดงหน้าต่างสีดำหรือหน้าต่างว่าง
- ไฟล์สื่อเสียหายหรือดาวน์โหลดไม่ครบ — ไฟล์ MP4/MKV ที่ถูกตัดขาดจะไม่มีดัชนีที่จำเป็นสำหรับการเลื่อนหาตำแหน่งและการเล่น
- การตั้งค่าของ VLC ผิดหรือเสียหาย — เช่นโมดูลเอาต์พุตวิดีโอที่พังซึ่งถูกบันทึกมาจากคอนฟิกก่อนหน้า
- VLC ล้าสมัยและมีบั๊กของ demuxer — เวอร์ชัน 3.0.x ที่เก่ากว่าอาจแครชหรือค้างเมื่อเจอคอนเทนเนอร์รูปแบบใหม่
วิธีแก้ไข
วิธี 1อัปเดต VLC เป็นเวอร์ชันล่าสุด
รับการแก้บั๊กและแพตช์ความปลอดภัยจากทางการ (เวอร์ชันเสถียรปัจจุบัน: 3.0.23)
ใน VLC ไปที่ Help > Check for Updates
VLC เทียบเวอร์ชันของคุณกับเวอร์ชันล่าสุด
ถ้ามีอัปเดต ให้ดาวน์โหลดจากหน้าทางการ videolan.org
ตัวติดตั้งใหม่ถูกดาวน์โหลดแล้ว
ติดตั้งทับเวอร์ชันปัจจุบัน (การตั้งค่าจะถูกเก็บไว้) แล้วเปิดใหม่
VLC ทำงานด้วยเวอร์ชันใหม่
วิธี 2ปิดการถอดรหัสด้วยการเร่งความเร็วฮาร์ดแวร์
แก้ปัญหาจอดำ/จอเขียว ภาพแตกเป็นบล็อก และภาพกระตุกได้ในกรณีส่วนใหญ่
เปิด VLC แล้วไปที่ Tools > Preferences (หรือกด Ctrl+P บน Windows/Linux และ Cmd+, บน macOS)
หน้าต่าง Preferences จะเปิดขึ้น
คลิกแท็บ Input / Codecs ทางด้านซ้าย
ระบบจะแสดงการตั้งค่าที่เกี่ยวข้องกับ codec
มองหา "Hardware-accelerated decoding" แล้วตั้งค่าเป็น Disable
ช่องดรอปดาวน์จะแสดงคำว่า "Disable"
คลิก Save แล้วปิดและเปิด VLC ใหม่ทั้งหมด (ปิดทุกหน้าต่างของ VLC ไม่ใช่แค่หน้าต่างวิดีโอ)
VLC เริ่มทำงานใหม่โดยใช้การถอดรหัสด้วยซอฟต์แวร์
เล่นไฟล์ที่มีปัญหาอีกครั้ง
ถ้าปัญหาหายไป ต้นเหตุคือตัวถอดรหัสของ GPU
วิธี 3เปลี่ยนโมดูลเอาต์พุตวิดีโอเป็น Automatic (หรือ OpenGL/Direct3D11 — ลองทีละตัว)
แก้ปัญหาจอดำและความผิดพลาดของการเรนเดอร์บนชุด GPU บางรุ่น
ไปที่ Tools > Preferences > Video
การตั้งค่าวิดีโอจะเปิดขึ้น
ตั้งค่า "Output" เป็น Automatic (หรือ OpenGL/Direct3D11 — ลองทีละตัว)
โมดูลเอาต์พุตเปลี่ยนแล้ว
คลิก Save แล้วเปิด VLC ใหม่
VLC เริ่มทำงานใหม่
เปิดไฟล์อีกครั้งแล้วดูภาพที่ได้
ตอนนี้วิดีโอควรแสดงผลได้อย่างถูกต้อง
วิธี 4ทดสอบไฟล์ในโปรแกรมเล่นอื่น และดาวน์โหลดใหม่ถ้าจำเป็น
ยืนยันว่าตัวไฟล์เองเสียหายหรือไม่
เปิดไฟล์เดียวกันใน Windows Media Player / QuickTime / mpv
คุณจะเห็นว่ามีโปรแกรมใดถอดรหัสไฟล์นี้ได้บ้าง
ถ้าไฟล์นี้มาจากการดาวน์โหลด ให้ดาวน์โหลดใหม่ (การดาวน์โหลดไม่ครบเป็นสาเหตุอันดับ 1 ของอาการ "เล่นไม่ได้")
ไฟล์ที่สมบูรณ์มักเล่นได้
สำหรับไฟล์ MP4 ที่มีเสียงแต่ไม่มีภาพ ให้ทำ remux ด้วย
ffmpeg -i input.mp4 -c copy output.mp4เพื่อสร้างดัชนีขึ้นใหม่ไฟล์ที่ remux แล้วเล่นได้ใน VLC
วิธี 5รีเซ็ตการตั้งค่าของ VLC กลับเป็นค่าเริ่มต้น
ล้างการตั้งค่าที่เสียหายซึ่งทำให้โปรแกรมแครช จอดำ และเกิดปัญหาเสียง
ปิด VLC ให้สมบูรณ์
ไม่มีโปรเซสของ VLC ทำงานอยู่
เปิด Command Prompt (Win+R → cmd) หรือเทอร์มินัล
พร้อมใช้บรรทัดคำสั่ง
รันคำสั่ง
vlc --reset-config(Windows/Linux) — บน macOS ให้ลบ~/Library/Preferences/org.videolan.vlcแทนการตั้งค่าของ VLC กลับไปเป็นค่าเริ่มต้น
เปิด VLC แล้วตั้งค่าใหม่เฉพาะรายการที่คุณจำเป็นต้องใช้จริง
VLC เริ่มทำงานด้วยการตั้งค่าที่สะอาด
วิธี 6ทดสอบด้วย VLC เวอร์ชันพอร์เทเบิล
แยกแยะปัญหาที่เกิดจากคอนฟิกโดยไม่ต้องแตะการติดตั้งเดิมของคุณ
ดาวน์โหลดไฟล์แบบพอร์เทเบิล/zip จากมิเรอร์ทางการ (videolan.org > Windows > zip)
ได้โฟลเดอร์ VLC แบบพอร์เทเบิลที่แตกไฟล์แล้ว
รัน vlc.exe จากโฟลเดอร์นั้นโดยตรง
VLC ทำงานด้วยการตั้งค่าเริ่มต้นที่สะอาด
เล่นไฟล์ที่มีปัญหาในสำเนาพอร์เทเบิลนั้น
ตอนนี้คุณจะรู้ว่าปัญหาเกิดจากคอนฟิกหรือจากตัวไฟล์
วิธี 7ติดตั้ง VLC ใหม่แบบสะอาด
แก้ปัญหาการติดตั้งที่เสียหาย แคชปลั๊กอินที่พัง และเวอร์ชันที่ขัดแย้งกัน
ถอนการติดตั้ง VLC ผ่าน Settings > Apps (Windows) หรือลาก VLC ไปที่ถังขยะ (macOS)
VLC ถูกลบออกจากระบบแล้ว
ลบโฟลเดอร์คอนฟิกที่ยังค้างอยู่:
%APPDATA%\vlc(Windows),~/Library/Preferences/org.videolan.vlc(macOS) หรือ~/.config/vlc(Linux)ข้อมูลของ VLC ถูกลบทั้งหมด
ดาวน์โหลดเวอร์ชันล่าสุดจากแหล่งทางการเท่านั้น: videolan.org/vlc
ได้ตัวติดตั้งทางการที่สะอาด
ติดตั้งแล้วทดสอบไฟล์ของคุณอีกครั้ง
การติดตั้งใหม่มักแก้ปัญหาที่ดื้อดึงได้
การแก้ไขขั้นสูง
วิธี 1เล่นไฟล์โดยบังคับเลือก demuxer เอง
บังคับให้ VLC ใช้ตัวแยกวิเคราะห์คอนเทนเนอร์ตัวอื่น
ไปที่ เครื่องมือ > &ปรับแต่ง > ส่วนนำเข้า / Codecs > "Demuxer" แล้วตั้งเป็น "MP4/MOV demuxer" หรือ "Matroska demuxer" ให้ตรงกับคอนเทนเนอร์ที่มีปัญหา
VLC แยกวิเคราะห์ไฟล์ด้วย demuxer ที่คุณเลือก
บันทึก เปิด VLC ใหม่ แล้วเปิดไฟล์อีกครั้ง
การเล่นเริ่มต้นด้วย demuxer ที่ถูกบังคับไว้
วิธี 2เปิด VLC ด้วยอินเทอร์เฟซที่สะอาด (โหมด dummy)
ตรวจสอบว่าตัว GUI เป็นสาเหตุของการแครชหรือไม่
ปิด VLC
VLC ถูกปิดแล้ว
เปิดเทอร์มินัลแล้วรันคำสั่ง
vlc -I dummyVLC เริ่มทำงานโดยไม่มี GUI (ไม่มีหน้าต่าง)
เล่นไฟล์ด้วยคำสั่ง
vlc -I dummy "พาธ\ของ\ไฟล์.mp4"ถ้ามีเสียงออกมา แสดงว่าแกนหลักทำงานได้และ GUI เป็นตัวปัญหา
เปิดโปรแกรมแบบปกติหลังทดสอบเสร็จ
อินเทอร์เฟซปกติกลับมาแล้ว
วิธีป้องกันในอนาคต
- ดาวน์โหลดไฟล์ให้เสร็จสมบูรณ์ก่อนเปิดเสมอ (เทียบขนาดไฟล์กับที่เซิร์ฟเวอร์ระบุไว้)
- ใช้ VLC สายเสถียรตัวล่าสุดอยู่เสมอ — การแก้ไข demuxer ออกมาต่อเนื่อง
- ถ้าคุณเก็บสะสมไฟล์สื่อ ควรตรวจความสมบูรณ์เป็นครั้งคราวด้วย
ffmpeg -v error -i file -f null -
คำถามที่พบบ่อย
ทำไม VLC เล่นไฟล์ MP4 ไม่ได้?
ทำไม VLC ปิดตัวเองทันทีเมื่อฉันเปิดวิดีโอ?
VLC เล่นวิดีโอได้ทุกฟอร์แมตหรือไม่?
VLC ต้องติดตั้ง codec pack เพิ่มไหม?
VLC มีเสียงแต่ไม่มีภาพ หมายความว่าอย่างไร?
สรุป
อัปเดต VLC เป็นเวอร์ชันล่าสุด — รับการแก้บั๊กและแพตช์ความปลอดภัยจากทางการ (เวอร์ชันเสถียรปัจจุบัน: 3.0.23). If it does not help, work through the remaining fixes in order: each targets a different layer of the problem. Most users resolve this issue by fix 3 at the latest. Keep VLC updated (current stable: 3.0.23) and revisit this guide when a new VLC version ships.