VLC HEVC (H.265) ไม่เล่น: คู่มือแก้ไขฉบับเต็ม
วิดีโอ HEVC (H.265) — มาตรฐานสำหรับ 4K iPhone และกล้องสมัยใหม่ — บางครั้งปฏิเสธการเล่นใน VLC: จอดำ ไม่มีภาพ หรือข้อผิดพลาด รูปแบบมักเกี่ยวข้องกับฮาร์ดแวร์: VLC พึ่งพาตัวถอดรหัส HEVC ของ GPU ของคุณ และถ้าเส้นทางไดรเวอร์ล้มเหลว การเล่น HEVC ก็พังขณะที่ H.264 ยังทำงานต่อ คู่มือนี้แก้เส้นทางตัวถอดรหัสก่อน จากนั้นจึงแก้สาเหตุระดับคอนฟิกที่หายาก วิธีที่ 1–2 ครอบคลุมกรณีส่วนใหญ่
ทำไมจึงเกิดเหตุการณ์นี้?
- การถอดรหัส HEVC ของ GPU ล้มเหลว (ไดรเวอร์หรือความสามารถ) — GPU เก่าไม่มีการถอดรหัส HEVC ตัวใหม่กว่าล้มเหลวผ่านไดรเวอร์ที่มีบั๊ก
- ปิดการเร่งความเร็วฮาร์ดแวร์ — เมื่อ hwaccel ปิด HEVC 4K ถูกถอดรหัสโดย CPU CPU ที่อ่อนแอจะทิ้งเฟรมหรือไม่แสดงภาพ
- ปัญหาเส้นทาง HEVC 10-bit (Main10) — HEVC 10-bit ต้องการตัวถอดรหัสที่มีความสามารถ บั๊กบางตัวจัดการผิดขณะที่ 8-bit ทำงานได้
- การตรวจจับ demuxer ผิด — HEVC ในคอนเทนเนอร์แปลก ๆ (TS MKV ที่มีธงประหลาด) อาจสับสน parser ของ VLC
- VLC เวอร์ชันเก่ามาก — บิลด์ก่อน 3.0 มีการรองรับ HEVC บางส่วน
วิธีแก้ไข
วิธี 1อัปเดต VLC เป็นเวอร์ชันล่าสุด
รับการแก้บั๊กและแพตช์ความปลอดภัยจากทางการ (เวอร์ชันเสถียรปัจจุบัน: 3.0.23)
ใน VLC ไปที่ Help > Check for Updates
VLC เทียบเวอร์ชันของคุณกับเวอร์ชันล่าสุด
ถ้ามีอัปเดต ให้ดาวน์โหลดจากหน้าทางการ videolan.org
ตัวติดตั้งใหม่ถูกดาวน์โหลดแล้ว
ติดตั้งทับเวอร์ชันปัจจุบัน (การตั้งค่าจะถูกเก็บไว้) แล้วเปิดใหม่
VLC ทำงานด้วยเวอร์ชันใหม่
วิธี 2ตรวจว่า GPU ของคุณถอดรหัส HEVC ได้จริงหรือไม่
บอกคุณว่าปัญหาคือความสามารถของฮาร์ดแวร์หรือไม่
เปิดไฟล์แล้วตรวจ เครื่องมือ > ข้อมูลสื่อ > ตัวอ่าน-ลงรหัส: บรรทัด "Decoder" แสดงตัวถอดรหัสที่ใช้
คุณเห็นตัวถอดรหัสที่ทำงาน
ถ้ามันแสดงตัวถอดรหัสฮาร์ดแวร์ (D3D11VA, VDA, VAAPI) แสดงว่าการถอดรหัส HEVC ด้วยฮาร์ดแวร์ทำงานอยู่ จอดำจึงหมายถึงบั๊กไดรเวอร์
ทราบเส้นทางการถอดรหัส
ถ้ามันแสดง FFmpeg ถอดรหัสด้วยซอฟต์แวร์และ CPU ถูกดึงเต็ม แสดงว่า GPU/ไดรเวอร์ของคุณถอดรหัส HEVC ไม่ได้ — อัปเดตไดรเวอร์ หรือยอมรับการถอดรหัส CPU ด้วยวิธีแก้ด้านล่าง
ประเมินความสามารถ
วิธี 3ปิดการถอดรหัสด้วยการเร่งความเร็วฮาร์ดแวร์
แก้ปัญหาจอดำ/จอเขียว ภาพแตกเป็นบล็อก และภาพกระตุกได้ในกรณีส่วนใหญ่
เปิด VLC แล้วไปที่ Tools > Preferences (หรือกด Ctrl+P บน Windows/Linux และ Cmd+, บน macOS)
หน้าต่าง Preferences จะเปิดขึ้น
คลิกแท็บ Input / Codecs ทางด้านซ้าย
ระบบจะแสดงการตั้งค่าที่เกี่ยวข้องกับ codec
มองหา "Hardware-accelerated decoding" แล้วตั้งค่าเป็น Disable
ช่องดรอปดาวน์จะแสดงคำว่า "Disable"
คลิก Save แล้วปิดและเปิด VLC ใหม่ทั้งหมด (ปิดทุกหน้าต่างของ VLC ไม่ใช่แค่หน้าต่างวิดีโอ)
VLC เริ่มทำงานใหม่โดยใช้การถอดรหัสด้วยซอฟต์แวร์
เล่นไฟล์ที่มีปัญหาอีกครั้ง
ถ้าปัญหาหายไป ต้นเหตุคือตัวถอดรหัสของ GPU
วิธี 4อัปเดตไดรเวอร์การ์ดจอ
แก้ปัญหาจอดำ ภาพเพี้ยนเป็นสีเขียว และการแครชที่เกิดจากบั๊กของไดรเวอร์
กด Win+X แล้วเปิด Device Manager (หรือ System Settings > Displays บน macOS)
รายการอุปกรณ์จะเปิดขึ้น
ขยาย "Display adapters" แล้วจดรุ่น GPU ของคุณไว้ (NVIDIA, AMD หรือ Intel)
ระบุ GPU ของคุณได้แล้ว
ดาวน์โหลดไดรเวอร์ตัวใหม่สุดจากเว็บไซต์ผู้ผลิต GPU (nvidia.com, amd.com หรือ intel.com) — หรือใช้ Windows Update
ชุดไดรเวอร์พร้อมใช้งาน
ติดตั้ง รีสตาร์ตเครื่อง แล้วลอง VLC อีกครั้ง
ระบบทำงานด้วยไดรเวอร์ตัวใหม่
วิธี 5เปลี่ยนโมดูลเอาต์พุตวิดีโอเป็น OpenGL (แก้ความผิดพลาดการเรนเดอร์ HEVC 10-bit)
แก้ปัญหาจอดำและความผิดพลาดของการเรนเดอร์บนชุด GPU บางรุ่น
ไปที่ Tools > Preferences > Video
การตั้งค่าวิดีโอจะเปิดขึ้น
ตั้งค่า "Output" เป็น OpenGL (แก้ความผิดพลาดการเรนเดอร์ HEVC 10-bit)
โมดูลเอาต์พุตเปลี่ยนแล้ว
คลิก Save แล้วเปิด VLC ใหม่
VLC เริ่มทำงานใหม่
เปิดไฟล์อีกครั้งแล้วดูภาพที่ได้
ตอนนี้วิดีโอควรแสดงผลได้อย่างถูกต้อง
วิธี 6รีเซ็ตการตั้งค่าของ VLC กลับเป็นค่าเริ่มต้น
ล้างการตั้งค่าที่เสียหายซึ่งทำให้โปรแกรมแครช จอดำ และเกิดปัญหาเสียง
ปิด VLC ให้สมบูรณ์
ไม่มีโปรเซสของ VLC ทำงานอยู่
เปิด Command Prompt (Win+R → cmd) หรือเทอร์มินัล
พร้อมใช้บรรทัดคำสั่ง
รันคำสั่ง
vlc --reset-config(Windows/Linux) — บน macOS ให้ลบ~/Library/Preferences/org.videolan.vlcแทนการตั้งค่าของ VLC กลับไปเป็นค่าเริ่มต้น
เปิด VLC แล้วตั้งค่าใหม่เฉพาะรายการที่คุณจำเป็นต้องใช้จริง
VLC เริ่มทำงานด้วยการตั้งค่าที่สะอาด
การแก้ไขขั้นสูง
วิธี 1เปิดการถอดรหัส HEVC ด้วย CPU (ซอฟต์แวร์) อย่างถูกต้อง
เล่น HEVC บนเครื่องที่ไม่มีการถอดรหัส GPU
เครื่องมือ > &ปรับแต่ง > ส่วนนำเข้า / Codecs > "Hardware-accelerated decoding" > Disable
บังคับถอดรหัส CPU
เปิด "Drop frames on late pictures" เพื่อรักษาเสียงให้ลื่นไหลบน CPU ที่อ่อนแอ
ทิ้งเฟรมแทนที่จะค้าง
สำหรับ HEVC 4K บน CPU เก่า ให้ลดขนาดหน้าต่างหรือไม่ต้องใช้ตัวกรองวิดีโอ "Sharpen" — เพียงยอมรับภาระ CPU หรือดูในหน้าต่างเล็ก
การเล่นเสถียร
วิธี 2ทำ remux ไฟล์ HEVC-in-TS
แก้ความล้มเหลว HEVC ที่เกี่ยวกับคอนเทนเนอร์
รัน:
ffmpeg -i input.ts -c copy -map 0 output.mp4สตรีม HEVC ถูก remux เข้า MP4
เล่น MP4 ใน VLC
ไฟล์ที่ remux แล้วเล่นได้
วิธีป้องกันในอนาคต
- รักษาไดรเวอร์ GPU ให้ทันสมัย — บั๊กการถอดรหัส HEVC ถูกแพตช์ในเวอร์ชันไดรเวอร์
- ก่อนซื้อ/ดาวน์โหลดเนื้อหา 4K ให้ตรวจการรองรับการถอดรหัส HEVC ของ GPU ของคุณ (NVDEC/Intel Quick Sync/AMD VCN)
- เลือก MP4/MKV ที่มีธง HEVC ที่สะอาดสำหรับความเข้ากันได้สูงสุด
คำถามที่พบบ่อย
VLC รองรับ HEVC หรือไม่?
ทำไม HEVC เล่นในตัวเล่นอื่นแต่ไม่เล่นใน VLC?
VLC รองรับ HEVC 10-bit หรือไม่?
ฉันต้องติดตั้งแพ็ก HEVC บน Windows สำหรับ VLC หรือไม่?
VLC เล่น AV1 ได้หรือไม่?
สรุป
อัปเดต 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.