Archive for พฤษภาคม 2015

shattered,
scattered,
destroyed.

แหลก
สลาย
หายไป

no matter,
listener,
died.

ตัวตน
เรือใบ
ไร้ลม

die

สิ้นสุด

Where am I going?

Advertisements

Logo3_mkv_256x256-1.svg

ในตอนที่แล้วได้สรรเสริญ (?) ไปแล้วว่า .mkv เป็นนามสกุลไฟล์ (container) ที่แจ่มแมวที่สุด เนื่องจากจะใส่ไฟล์เสียงหลายๆ อันแล้วไปเลือกภาษาเองได้ ใส่ซับไตเติลที่หลากหลายรูปแบบให้ไปเลือกเอาเองก็ได้อีกเช่นกัน แต่มีปัญหาก็คือว่า Chromecast นั้นไม่สามารถฉายขึ้นไปแล้วเลือกเสียง หรือซับไตเติลได้ (จริงๆ มี Extension ของ Chrome ชื่อว่า Video Stream ตัวนี้เลือกได้ว่าจะเอาเสียงอะไรออกทีวี แต่ยังเลือกซับไตเติลไม่ได้อยู่ดี) ก็ขอนอกเรื่องมาแนะนำการใช้ mkv กันบ้าง

อย่างที่บอกไปแล้วว่า mkv นั้นสามารถแยกไฟล์เสียง ไฟล์ซับไตเติลได้ และสามารถใส่ได้มากกว่า 1 อันเพื่อให้เลือกได้ด้วย แล้วจะทำไฟล์ mkv ขึ้นมาได้ยังไงล่ะ? ถ้าผมมีซับไตเติล หรือไฟล์เสียงอยู่แล้ว

จริงๆ แล้วสามารถสร้างได้โดยใช้ command line แต่ท่าทางจะ geek เกินไป ดังนั้นขอนำเสนอโปรแกรมที่ชื่อว่า MKVToolnix โดยจะมีข้างในคือ mkvextract และ mkvmerge

ตัว mkvextract นั้นก็ตามชื่อ เอาไฟล์ mkv มาชำและ (เช่นวงการ fansub ที่มีอนิเมออกมา ก็แงะไฟล์ซับไตเติลออกมาจาก mkv และแปะกลับไปใหม่) โดย mkv นั้นเป็นการแก้ไขไฟล์แบบไม่เสียคุณภาพ (non-destructible) ว่าง่ายๆ คือแกะกล่อง ย้ายกล่อง และเก็บลงกล่อง ไม่ได้ทำการแก้ไขเนื้อหาแต่อย่างใด ถ้าเป็นไฟล์ avi ไม่สามารถทำแบบนี้ได้ และการเข้ารหัสทุกครั้งคุณภาพก็จะตกลงไปเรื่อยๆ ด้วย

ส่วนตัว mkvmerge นั้นก็ตามชื่อ คือการนำไฟล์มาใส่รวมกัน เช่นผมทำซับไตเติลเสร็จ ผมก็เปิดด้วย mkvmerge แล้วใส่ไฟล์วิดิโอลงไป (นามสกุลอะไรก็ได้) และไฟล์ซับไตเติล ผลคือผมจะได้ไฟล์ mkv ออกมา พร้อมข้างในที่มีซับไตเติลแบบ soft subtitle ให้เรียบร้อย

(MKVToolNix ดาวน์โหลดได้ที่นี่) (MKVExtractGUI ดาวน์โหลดที่นี่)

ด้วยความที่ MKVTool มันเป็น command line เราไม่ชินมือเท่าไหร่ก็ต้องไปโหลดหน้าตา GUI มาให้ใช้งานง่ายๆ หน่อยละ ไม่มีปัญญาไปเขียน command line เพื่อดึงไฟล์

เริ่มจาก MKVExtract ก่อนแล้วกัน

MKVExtract

mke1 mke2

หน้าตาของตัว MKVExtractGUI ก็ตามที่เห็นล่ะครับ เปิดไฟล์ที่ต้องการขึ้นมา เลือกโฟลเดอร์ปลายทางว่าจะให้แตกไปลงที่ไหน แล้วก็เลือกว่าจะเอา track ไหนบ้าง (ภาพ, เสียง, ซับไตเติล) ถ้ามี Chapter ด้วยก็จะเลือกออกมาเป็น .xml ได้ด้วย

ส่วนตัวคิดว่าไม่ต้องอธิบายอะไรมากมั้ง ดูภาพแล้วก็พอเข้าใจอยู่ แต่บอกไว้ก่อนว่าพวกไฟล์ h264 เมื่อแตกมาจะได้เป็นวิดิโอไม่มีเสียง (แน่ล่ะ แทร็กเสียงมันคนละไฟล์กัน) และนามสกุลไม่ใช่มาตรฐานอย่าง mkv หรือ mp4 ไม่แนะนำแก่การใช้ นอกจากจะนำไปใช้งานต่อ (อย่างที่จะอธิบายในภายหลัง)

mkvmerge

mkm1 mkm2

mkvmerge นั้นจะทำหน้าที่ตรงข้ามกับ MKVExtract เพราะจะทำหน้าที่รวบรวมไฟล์ต่างๆ มาอยู่ในกล่องบรรจุเดียวกัน (นั่นก็คือ mkv นั่นเอง) แปลว่าถ้าเรามีไฟล์ซับไตเติลอยู่แล้ว เราสามารถนำ avi หรือไฟล์วิดิโออื่น (ไม่ว่าจะมีเสียงหรือไม่มีเสียง) มาใส่ร่วมกับซับไตเติล เพียงไม่กี่วินาทีก็เสร็จแล้ว การสร้างไฟล์ใหม่ของ mkv นั้นไม่ได้มีการเข้ารหัสใหม่ (เหมือนแปลงไฟล์ AVI) ทำให้ไม่มีการลดทอนคุณภาพแต่อย่างใด

สำหรับหน้าตาการใช้งานขอไม่อธิบาย แต่จะขอแนะนำฟีเจอร์ที่น่าจะได้ใช้กัน ได้แก่ปุ่ม Add และปุ่ม Append ครับ

Add

ปุ่ม Add นั้นมีหน้าที่เพิ่มไฟล์ลงไปยัง container แปลว่าเราสามารถใส่วิดิโอ เสียง ซับไตเติล ลงไปร่วมกันได้ ผมเคยเข้าใจผิดใส่วิดิโอลงไปรวมกันสี่อัน ปรากฏว่าตอนเล่นเลือกได้ว่าจะดูตอนไหน (แต่เล่นบนไทม์เฟรมเดียวกัน พังสิครับ เพราะที่ผมต้องการคือเล่นต่อกัน)

Append

ในสมัยก่อนแผ่น VCD มันไม่ยาวพอจะใส่หนังทั้งเรื่องลงไปได้ ทำให้มีการแยกไฟล์ออกมาเป็นแผ่น 1 แผ่น 2 ออกจากกัน ปุ่ม Append นี้จะทำงานแตกต่างจาก Add ตรงที่ว่ามันจะไล่ไฟล์ต่อเนื่องกันแทน ถ้าผม Add ไฟล์วิดิโอของแผ่นที่ 1 แล้ว Append แผ่นที่ 2 ต่อ เมื่อทำการ Muxing เสร็จแล้ว ผมจะได้ไฟล์วิดิโอที่มีความยาวต่อเนื่องกัน วิธีนี้แนะนำสำหรับคนที่โหลดละครจาก YouTube มาดูแล้วไม่เข้าใจว่าทำไมต้องแยก EP 1 (1/5), EP 1 (2/5) แนะนำให้เอาไฟล์มา Append ต่อเนื่องเป็นไฟล์เดียวกันไปเลยครับ จบปัญหา (คุณภาพไม่เสียด้วย)

สำหรับผู้ที่สงสัยว่าจะพูดถึง mkvtoolnix ทั้งตัว merge และ Extract มาทำไมเสียยืดยาว ตอนต่อๆ ไปจะมีคำตอบมาให้ครับ

ป้ายกำกับ: , , , ,

พฤษภาคม 2015
อา พฤ
« เม.ย.   มิ.ย. »
 12
3456789
10111213141516
17181920212223
24252627282930
31  

คลังเก็บ

Tweet from twitter

Error: Twitter did not respond. Please wait a few minutes and refresh this page.