ข้ามไปยังเนื้อหาหลัก
SubtitleMatrix

แปลง SRT เป็น ASS

หรือวางข้อความคำบรรยาย

การแปลงนี้เปลี่ยนอะไร

1 อย่างถูกตัดทิ้งหรือต้องตัดสินใจ

  • ความละเอียด

    ความละเอียดของเวลา — นาฬิกาของผลลัพธ์หยาบกว่า ทุกเวลาจึงถูกปัดเป็น 10 ms ที่ใกล้ที่สุด

รายการนี้มาจากเมทริกซ์ความสามารถของสองรูปแบบนี้ ไม่ได้มาจากไฟล์ที่คุณโหลด ไฟล์หนึ่งอาจสูญหายมากกว่าหากใช้คุณสมบัติที่รูปแบบอนุญาตแต่เมทริกซ์ไม่ได้จำลอง

หน้านี้แปลงไฟล์ SRT เป็น ASS ในเบราว์เซอร์ ไม่มีการอัปโหลดและไม่ต้องมีบัญชี คุณลากไฟล์เดียวหรือทั้งฤดูกาลเข้ามาได้ คิวทำงานตามลำดับ ยกเลิกกลางทางได้ และดาวน์โหลดผลลัพธ์ทั้งหมดเป็น ZIP เดียว

ในทิศทางนี้สิ่งที่สูญหายคือความละเอียดของเวลา รายการนี้มาจากสิ่งที่สองรูปแบบเก็บได้ ไม่ได้มาจากไฟล์ของคุณ จึงเป็นคำตอบเดิมก่อนคุณโหลดอะไร ส่วนข้อความและลำดับคิวยังอยู่ ผลลัพธ์เป็นสคริปต์ ASS ที่มีส่วนหัว ตารางสไตล์หนึ่งรายการชื่อ Default และบรรทัด Dialogue หนึ่งบรรทัดต่อหนึ่งคิว โดยเวลาเขียนเป็น 0:00:01.00 ASS ต้องมีตารางสไตล์เสมอ ตัวแปลงจึงสร้างสไตล์เริ่มต้นให้ทุกบรรทัดอ้างถึง และแปลงแท็กตัวเอียง/ตัวหนาของ SRT เป็นรหัส {\i1} และ {\b1} พร้อมคงการขึ้นบรรทัดใหม่ไว้เป็น \N

ตัวอย่าง

ไฟล์ SRT ทั่วไป แปลงเป็น ASS

ข้อมูลนำเข้า

1
00:00:01,000 --> 00:00:03,500
Hello there.

2
00:00:03,500 --> 00:00:06,000
<i>Whispering</i> now.
And a second line.

3
00:00:06,000 --> 00:00:09,250
<b>Bold</b> statement.

ผลลัพธ์

[Script Info]
ScriptType: v4.00+

[V4+ Styles]
Format: Name, Fontname, Fontsize, PrimaryColour, SecondaryColour, OutlineColour, BackColour, Bold, Italic, Underline, StrikeOut, ScaleX, ScaleY, Spacing, Angle, BorderStyle, Outline, Shadow, Alignment, MarginL, MarginR, MarginV, Encoding
Style: Default,Arial,20,&H00FFFFFF,&H000000FF,&H00000000,&H00000000,0,0,0,0,100,100,0,0,1,2,2,2,10,10,10,1

[Events]
Format: Layer, Start, End, Style, Name, MarginL, MarginR, MarginV, Effect, Text
Dialogue: 0,0:00:01.00,0:00:03.50,Default,,0,0,0,,Hello there.
Dialogue: 0,0:00:03.50,0:00:06.00,Default,,0,0,0,,{\i1}Whispering{\i0} now.\NAnd a second line.
Dialogue: 0,0:00:06.00,0:00:09.25,Default,,0,0,0,,{\b1}Bold{\b0} statement.

มีข้อมูลสูญหายในผลลัพธ์นี้: ความละเอียดของเวลา ส่วนที่เหลือตรงกันทุกบรรทัด

การแปลง SRT เป็น ASS บนไฟล์ที่มีปัญหา

ข้อมูลนำเข้า

1
0:00:01,00 --> 0:00:03,500
<B>Bold</B> and <I>italic</I>.


2
00:00:03,500 --> 00:00:06,000


3
00:00:08,000 --> 00:00:09,000
Last one.

ผลลัพธ์

[Script Info]
ScriptType: v4.00+

[V4+ Styles]
Format: Name, Fontname, Fontsize, PrimaryColour, SecondaryColour, OutlineColour, BackColour, Bold, Italic, Underline, StrikeOut, ScaleX, ScaleY, Spacing, Angle, BorderStyle, Outline, Shadow, Alignment, MarginL, MarginR, MarginV, Encoding
Style: Default,Arial,20,&H00FFFFFF,&H000000FF,&H00000000,&H00000000,0,0,0,0,100,100,0,0,1,2,2,2,10,10,10,1

[Events]
Format: Layer, Start, End, Style, Name, MarginL, MarginR, MarginV, Effect, Text
Dialogue: 0,0:00:01.00,0:00:03.50,Default,,0,0,0,,{\b1}Bold{\b0} and {\i1}italic{\i0}.
Dialogue: 0,0:00:03.50,0:00:06.00,Default,,0,0,0,,
Dialogue: 0,0:00:08.00,0:00:09.00,Default,,0,0,0,,Last one.

ไฟล์จริงมักมีอาการแบบนี้ — การขึ้นบรรทัดใหม่แบบผสม ช่องว่างเกิน และฟิลด์ที่เว้นว่าง เทียบกับตัวอย่างแรกเพื่อดูว่าตัวแยกวิเคราะห์ยอมรับอะไรได้บ้าง

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

ทำไมผลลัพธ์ ASS ที่แปลงจาก SRT จึงมีตารางสไตล์ที่ฉันไม่ได้ขอ

เพราะ ASS ไม่มีคิวที่ไม่มีสไตล์ ทุกบรรทัด Dialogue อ้างสไตล์หนึ่ง สคริปต์จึงต้องประกาศอย่างน้อยหนึ่งรายการ ตัวแปลงสร้างสไตล์เดียวชื่อ Default — Arial ขนาด 20 สีขาวขอบดำ — และให้ทุกบรรทัดอ้างถึง เปลี่ยนแถวนั้นแถวเดียวในส่วนหัวแล้วทั้งไฟล์เปลี่ยนตาม

ตัวเลขหลังจุดทศนิยมใน ASS ที่แปลงจาก SRT หมายถึงอะไร

หนึ่งในร้อยของวินาที ASS เก็บเวลาถึงระดับเซนติวินาที เวลาเริ่ม 00:00:01,250 ใน SRT จึงเขียนเป็น 0:00:01.25 นั่นคือความละเอียดที่สุดที่รูปแบบนี้มี และไม่มีอะไรละเอียดกว่านั้นอยู่ในไฟล์ตั้งแต่แรก

แท็กตัวเอียงและตัวหนาของ SRT ผ่านมาเป็นอะไรใน ASS

เป็นสไตล์ ASS จริง ช่วงตัวเอียงกลายเป็นรหัสเปิด/ปิดตัวเอียงรอบช่วงนั้น และตัวหนาก็เช่นกัน โปรแกรมแก้ไข ASS จะแสดงเป็นสไตล์ ไม่ใช่แท็กที่ตกค้าง ซึ่งเป็นความต่างระหว่างสคริปต์ที่เปิดขึ้นมาสะอาดกับสคริปต์ที่เต็มไปด้วยอักขระแปลกปลอม

การขึ้นบรรทัดใหม่ภายในคิว SRT ยังอยู่ไหมใน ASS

อยู่ เป็นรหัสขึ้นบรรทัดใหม่ของ ASS สองบรรทัดในคิว SRT หนึ่งคิวยังเป็นสองบรรทัดในอีเวนต์ Dialogue หนึ่งอีเวนต์ เวลาของบรรทัดที่สองจึงยังเป็นเวลาของคิว

ผลลัพธ์ ASS ที่แปลงจาก SRT ยังตรงกับวิดีโอเดิมไหม

ตรง ไม่มีอะไรเลื่อนหรือยืดเวลา คิวแรกเริ่มที่ช่วงเวลาเดิมและคิวสุดท้ายจบที่ช่วงเวลาเดิม เปลี่ยนเฉพาะสิ่งที่อยู่รอบคำ

เครื่องมือที่เกี่ยวข้อง