วิธีแยกคำบรรยายจากไฟล์ MKV

โดย Flora Wang ผู้เชี่ยวชาญด้านการแปลวิดีโอ · เผยแพร่เมื่อ 17 กรกฎาคม 2026 · อัปเดต 29 กรกฎาคม 2026 · อ่าน 8 นาที

TL; DR: คำบรรยายในไฟล์ MKV มีสองรูปแบบโดยพื้นฐานที่แตกต่างกัน และวิธีการแตกไฟล์จะขึ้นอยู่กับว่าคุณมีรูปแบบใด หาก MKV มีแทร็กคำบรรยายข้อความ (SRT หรือ ASS) ให้ใช้คำสั่งฟรีหนึ่งคำสั่ง — ffmpeg หรือ MKVToolNix mkvextract — จะบันทึกไฟล์ซับไตเติลได้ในไม่กี่วินาที แต่มีสองกรณีที่พบบ่อยซึ่งไม่มีข้อความเลย คือแทร็กแบบภาพ (PGS และ VobSub ซึ่งเป็นมาตรฐานในไฟล์ริปจาก Blu-ray และ DVD) และซับที่ฝังลงในภาพโดยตรง ทั้งสองกรณีต้องใช้ OCR คู่มือนี้ครอบคลุมทั้งสี่กรณีพร้อมคำสั่งที่ใช้จริง เริ่มจากการตรวจ 10 วินาทีที่บอกได้ว่าไฟล์ของคุณเป็นกรณีไหน

ฉันจะตรวจสอบได้อย่างไรว่าคำบรรยายในไฟล์ MKV มีอะไรบ้าง

ก่อนที่จะแยกสิ่งใด ให้แสดงรายการสตรีมคำบรรยาย เมื่อติดตั้ง ffmpeg (brew install ffmpeg บน Mac) ให้รัน:

ffprobe -v error -select_streams s \
  -show_entries stream=index,codec_name:stream_tags=language,title \
  -of default=noprint_wrappers=1 input.mkv

หรือหากคุณใช้ MKVToolNix อยู่แล้ว mkvmerge -i input.mkv จะแสดงข้อมูลเดียวกันในรูปแบบที่อ่านง่ายกว่า ค่า codec_name ในผลลัพธ์จะบอกทุกอย่าง:

ตัวแปลงสัญญาณ_ชื่อมันคืออะไรการเดินทาง รฟท
subripคำบรรยายข้อความธรรมดา (SRT)หนึ่งคำสั่ง ffmpeg — เสร็จในไม่กี่วินาที
assคำบรรยายข้อความสไตล์ (ทั่วไปในอะนิเมะ)หนึ่งคำสั่ง ffmpeg; สไตล์หายไปใน SRT
hdmv_pgs_subtitleคำบรรยายภาพ Blu-ray (รูปภาพข้อความ)ต้องใช้โอซีอาร์
dvd_subtitleคำบรรยายภาพ DVD (VobSub)ต้องใช้โอซีอาร์
ไม่มีเอาท์พุตเลยไม่มีแทร็กคำบรรยาย — หากมองเห็นได้ คำบรรยายจะถูกเขียนลงในรูปภาพOCR บนวิดีโอนั่นเอง

ถ้ารายการ ffprobe subrip หรือ ass การแยกไฟล์ฟรีและใช้เวลาไม่กี่วินาที แต่ถ้าแสดง hdmv_pgs_subtitle หรือ dvd_subtitle แทร็กนั้นเก็บภาพของข้อความ และไม่มีเครื่องมือใดแปลงเป็น SRT ได้โดยไม่ใช้ OCR ความแตกต่างดังกล่าวเป็นจุดที่ทำให้เกิดความสับสนเกี่ยวกับคำบรรยาย MKV ที่พบบ่อยที่สุด และจะตัดสินทุกสิ่งที่ตามมา

ฉันจะแยกคำบรรยาย SRT จาก MKV ด้วย ffmpeg ได้อย่างไร

สำหรับแทร็กข้อความ ffmpeg เป็นบรรทัดทางที่เร็วที่สุดและทำงานได้เหมือนกันบน Mac, Windows และ Linux:

# Extract the first subtitle track as SRT
ffmpeg -i input.mkv -map 0:s:0 subtitles.srt

# Extract the second subtitle track (0:s:1 = second, and so on)
ffmpeg -i input.mkv -map 0:s:1 subtitles.srt

# Pick a track by language instead of position
ffmpeg -i input.mkv -map 0:s:m:language:eng english.srt

# Keep an ASS track in its original format (preserves styling)
ffmpeg -i input.mkv -map 0:s:0 -c copy subtitles.ass

สองสิ่งที่ควรรู้ ขั้นแรก การแปลงแทร็ก ASS เป็น SRT จะยกเลิกสไตล์ทั้งหมด — แบบอักษร สี ตำแหน่ง เอฟเฟกต์คาราโอเกะ — เนื่องจากรูปแบบ SRT ไม่สามารถเป็นตัวแทนได้ หากคุณต้องการสไตล์ ให้แตกไฟล์ไปที่ .ass แทน ประการที่สอง -map 0:s:0 นับเฉพาะสตรีมคำบรรยาย จึงไม่ใช่ตัวเลขเดียวกับดัชนีสตรีมที่ ffprobe แสดง

ffmpeg แปลงระหว่างรูปแบบคำบรรยายในระหว่างการแตกไฟล์ ซึ่งเป็นสาเหตุ ffmpeg -i input.mkv -map 0:s:0 subtitles.srt ใช้ได้กับทั้งแทร็ก SRT และ ASS แต่แปลงแทร็กแบบภาพ (PGS/VobSub) เป็นข้อความไม่ได้ และจะล้มเหลวพร้อมข้อผิดพลาดของตัวเข้ารหัสหากลองทำ

ฉันจะแยกคำบรรยายด้วย MKVToolNix (mkvextract) ได้อย่างไร

MKVToolNix (ฟรี, mkvtoolnix.ดาวน์โหลดหรือ brew install mkvtoolnix) แยกแทร็กออกมาแบบตรงทุกบิตในรูปแบบเดิม ให้แสดงรายการ ID ของแทร็กก่อน แล้วแยกตาม ID:

# List tracks with their IDs
mkvmerge -i input.mkv
# Track ID 0: video (HEVC) / Track ID 1: audio (AAC) / Track ID 2: subtitles (SubRip/SRT)

# Extract track 2 as SRT
mkvextract input.mkv tracks 2:subtitles.srt

# Extract several tracks in one run
mkvextract input.mkv tracks 2:english.srt 3:spanish.srt

gotcha หนึ่งที่ทำให้เกือบทุกคนค้นหาสิ่งนี้: MKVToolNix GUI ไม่มีฟังก์ชันการแยก - การแตกไฟล์จะจัดส่งเฉพาะเป็นเครื่องมือบรรทัดคำสั่งเท่านั้น mkvextract. GUI ครอบคลุมมัลติเพล็กซ์ (การใส่แทร็ก) การแก้ไขส่วนหัว และการแยกไฟล์ ดังนั้นการมองหาปุ่ม "แตกไฟล์" ข้างในจึงว่างเปล่าจากการออกแบบ

นามสกุลไฟล์ที่คุณเขียนจะต้องตรงกับตัวแปลงสัญญาณของแทร็ก: .srt สำหรับ SubRip, .ass สำหรับ ASS/SSA, .sup สำหรับ PGS ส่วน VobSub นั้น mkvextract จะเขียนไฟล์คู่ .idx + .sub ซึ่งพาเรามาสู่กรณีที่ไฟล์ที่แยกออกมาไม่ใช่ข้อความเลย

จะเกิดอะไรขึ้นหากแทร็กคำบรรยายเป็น PGS หรือ VobSub (แบบรูปภาพ)

ไฟล์ริปจาก Blu-ray แทบทั้งหมดมีแทร็ก hdmv_pgs_subtitle ส่วนไฟล์ริปจาก DVD มี dvd_subtitle (VobSub) แทร็กเหล่านี้เก็บซับแต่ละบรรทัดเป็นภาพที่เรนเดอร์ไว้ให้เครื่องเล่นซ้อนบนวิดีโอ ข้างในไม่มีข้อความเลย การแยกออกมาจึงได้ไฟล์ .sup หรือ .idx/.sub ซึ่งโปรแกรมแก้ไขซับและแพลตฟอร์มวิดีโออ่านเป็นข้อความไม่ได้

การแปลง PGS เป็น SRT ยังต้องใช้ OCR แต่ไม่จำเป็นต้องนำแทร็กไปฝังในวิดีโอก่อน บน Mac ให้ใช้ mkvextract แยกแทร็ก PGS เป็นไฟล์ .sup ก่อน:

# ตรวจสอบ ID ของแทร็ก PGS ก่อน
mkvmerge -i input.mkv
# เปลี่ยน 2 เป็น ID จริงของแทร็ก PGS
mkvextract input.mkv tracks 2:subtitles.sup

จากนั้นลาก subtitles.sup ไปยังพื้นที่นำเข้าบนแดชบอร์ด GeekLink เมื่อมีข้อความแจ้ง ให้เลือกภาษาของคำบรรยาย GeekLink จะทำ OCR กับภาพ PGS แต่ละภาพโดยตรง รักษาเวลา cue จากแทร็กไว้ และสร้าง SRT ในเครื่อง ไม่ต้องเข้ารหัสวิดีโอใหม่หรืออัปโหลดวิดีโอ ขั้นตอน SUP/PGS โดยตรงนี้ใช้กับ PGS ส่วน VobSub (.idx/.sub) ต้องแปลงแยกต่างหากหรือใช้ OCR จากวิดีโอ

จะเกิดอะไรขึ้นถ้า MKV ไม่มีแทร็กคำบรรยายเลย (คำบรรยายแบบเบิร์นอิน)?

นี่เป็นกรณีที่พบบ่อยที่สุดกับการดาวน์โหลดอนิเมะ ตอนของละคร และวิดีโอที่เข้ารหัสใหม่: ffprobe ไม่แสดงสตรีมคำบรรยายเลย แต่คุณกลับเห็นคำบรรยายชัดเจนตอนเล่นวิดีโอ หาก ffprobe ไม่แสดงสตรีมคำบรรยาย แต่มองเห็นคำบรรยายได้ในระหว่างการเล่น คำบรรยายเหล่านั้นจะถูกเบิร์นลงในรูปภาพ — ไม่มีโปรแกรมแยกไฟล์ demuxer หรือตัวแปลงใดที่สามารถดึงออกมาได้ และ OCR บนวิดีโอเป็นวิธีเดียวเท่านั้น

  1. นำเข้า MKV เข้าไป GeekLink บนคอมพิวเตอร์ของคุณ — ไม่จำเป็นต้องแปลงไฟล์ รองรับ MKV โดยตรง
  2. เรียกใช้การแยก OCR โดยจะอ่านข้อความคำบรรยายจากเฟรมและรวมเข้ากับบรรทัดคำบรรยายพร้อมเวลา
  3. ส่งออกเป็น SRT — หรือแปลก่อนแล้วส่งออกไฟล์สองภาษา

OCR ทำงานภายในเครื่องและประมวลผลทั้งชุดในการฉายครั้งเดียว จึงสามารถจัดคิวตอนทั้งซีซันได้ในคราวเดียว คำแนะนำแบบสมบูรณ์อยู่ที่นี่: วิธีแยกคำบรรยายแบบฮาร์ดโค้ด (เบิร์นอิน) โดยใช้ OCR; หากคุณกำลังเลือกเครื่องมือ โปรดดู เครื่องมือที่ดีที่สุดในการแยกคำบรรยายแบบฮาร์ดโค้ดในปี 2569. ไม่แน่ใจว่าคำบรรยายของคุณฝังอยู่หรือถูกเบิร์นใช่ไหม? ความแตกต่างมีอธิบายไว้ใน คำบรรยายแบบฝังและแบบเบิร์นอิน.

คุณจะแปลคำบรรยายที่คุณแยกออกมาได้อย่างไร?

การแตกข้อมูลมักเป็นขั้นตอนหนึ่งของงานการแปลเป็นภาษาในเครื่อง ไฟล์ SRT ที่แยกจาก MKV สามารถนำเข้าโดยตรงไปยัง GeekLink และแปลด้วย AI เป็นกว่า 40 ภาษา โดยคงเวลาเดิมไว้ โดยไม่จำเป็นต้องถอดเสียงซ้ำ ส่งออกผลลัพธ์เป็น SRT ที่แปล, SRT สองภาษา หรือเบิร์นการแปลลงในวิดีโอ ขั้นตอนการทำงานแบบเต็ม: วิธีแปลคำบรรยายแบบฮาร์ดโค้ด.

คำถามที่พบบ่อย

ฉันจะแยกคำบรรยายจากไฟล์ MKV ได้อย่างไร

หาก MKV มีแทร็กคำบรรยายข้อความ ให้เรียกใช้ ffmpeg -i input.mkv -map 0:s:0 subtitles.srt — ใช้เวลาไม่กี่วินาทีและฟรี หากแทร็กเป็นแบบภาพ (PGS/VobSub) หรือคำบรรยายถูกฝังลงในภาพ จะไม่มีข้อความให้แยก ต้องใช้ซอฟต์แวร์ OCR อ่านจากเฟรม

MKVToolNix GUI สามารถแยกคำบรรยายได้หรือไม่

ไม่ MKVToolNix GUI มัลติเพล็กซ์จะติดตามเป็นไฟล์ MKV แต่ไม่มีฟังก์ชันแตกไฟล์ การแตกไฟล์เสร็จสิ้นด้วย mkvextract ซึ่งเป็นเครื่องมือบรรทัดคำสั่งที่ติดตั้งข้างๆ: mkvmerge -i input.mkv เพื่อหา ID ของแทร็ก จากนั้น mkvextract input.mkv tracks 2:subtitles.srt.

VLC สามารถแยกคำบรรยายจาก MKV ได้หรือไม่

ไม่ได้ VLC สามารถแสดงและสลับระหว่างแทร็กคำบรรยายที่ฝังไว้ได้ แต่ไม่มีคุณสมบัติในการส่งออกแทร็กเป็นไฟล์คำบรรยาย ใช้ ffmpeg หรือ mkvextract สำหรับแทร็กข้อความ หรือใช้ OCR สำหรับคำบรรยายตามรูปภาพและคำบรรยายแบบเบิร์นอิน

เพราะเหตุใดคำบรรยายของฉันจึงออกมาเป็นไฟล์ .sup หรือ .idx/.sub แทนที่จะเป็น SRT

เนื่องจากแทร็กเป็นแบบรูปภาพ: .sup คือ Blu-ray PGS และ .idx/.sub คือ DVD VobSub เก็บคำบรรยายไว้เป็นรูปภาพ ดังนั้นการแตกไฟล์จึงเก็บรูปภาพไว้ การแปลงเป็น SRT ต้องใช้ OCR ไม่มีตัวแปลงรูปแบบใดสามารถทำได้ เนื่องจากไม่มีข้อความในไฟล์ที่จะแปลง

ฉันจะรับคำบรรยายอย่างเป็นทางการจากแผ่นดิสก์ Blu-ray ได้อย่างไร

ขั้นแรกริปแผ่นดิสก์เป็นไฟล์ MKV ด้วย MakeMKV การอ่าน Blu-ray ต้องใช้ไดรฟ์ Blu-ray ซึ่งโดยทั่วไปหมายถึงไดรฟ์ USB ภายนอก เนื่องจากไม่มี Mac และแทบไม่มีแล็ปท็อปจัดส่งด้วย การริพจะเก็บแทร็กคำบรรยายอย่างเป็นทางการของแผ่นดิสก์เป็นภาพ PGS (.sup) ไม่ใช่ข้อความ ให้ใช้ mkvextract แยกแทร็ก PGS ลากไฟล์ .sup ที่ได้ไปยัง GeekLink และเลือกภาษาคำบรรยายเพื่อทำ OCR โดยจะรักษาเวลา cue เดิมไว้ หากข้อความถูกฝังอยู่ในภาพวิดีโอ ให้ทำ OCR จากเฟรมโดยตรง

ฉันจะแปลงคำบรรยาย PGS เป็น SRT บน Mac ได้อย่างไร

ใช้ mkvextract แยกแทร็ก PGS ลากไฟล์ .sup ไปยัง GeekLink และเลือกภาษาคำบรรยาย GeekLink จะทำ OCR กับภาพ PGS โดยตรงและส่งออก SRT ที่ใช้เวลา cue เดิม ทั้งหมดทำงานในเครื่อง หากข้อความถูกฝังอยู่ในภาพวิดีโอ ให้ทำ OCR จากวิดีโอแทน

บทความที่เกี่ยวข้อง

คำบรรยาย ffmpeg ไม่สามารถแยกได้ใช่ไหม

สำหรับ PGS/SUP GeekLink ทำ OCR กับภาพที่แยกออกมาโดยตรง ส่วนคำบรรยายแบบเบิร์นอินจะทำ OCR จากวิดีโอ ทั้งสองวิธีทำงานในเครื่องและส่งออก SRT ที่สะอาด

ดาวน์โหลดฟรี