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

แปลง CSV เป็น SMI

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

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

ไม่มีอะไรสูญหายในทิศทางนี้ — ทุกคุณสมบัติของรูปแบบต้นทางมีที่ไปในรูปแบบปลายทาง

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

หน้านี้แปลง CSV เป็น SMI คุณลากไฟล์มาวางหรือวางข้อความลงไป แล้วรับไฟล์ SMI กลับคืน การแปลงทั้งหมดทำงานในเบราว์เซอร์ ไม่มีการอัปโหลดและไม่ต้องมีบัญชี

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

ตัวอย่าง

ไฟล์ CSV ทั่วไป แปลงเป็น SMI

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

start,end,text
00:00:01.000,00:00:03.500,The quick brown fox.
00:00:04.000,00:00:06.250,"Jumps over, the lazy dog."
00:00:07.000,00:00:09.000,"Two lines here.
And a second one."

ผลลัพธ์

<SAMI>
<HEAD>
<STYLE TYPE="text/css">
<!--
P { text-align: center; font-family: Arial, sans-serif; }
-->
</STYLE>
</HEAD>
<BODY>
<SYNC Start=1000>
<P>The quick brown fox.
<SYNC Start=3500>
<P>&nbsp;
<SYNC Start=4000>
<P>Jumps over, the lazy dog.
<SYNC Start=6250>
<P>&nbsp;
<SYNC Start=7000>
<P>Two lines here.<br>And a second one.
<SYNC Start=9000>
<P>&nbsp;
</BODY>
</SAMI>

ไม่มีการสูญหายที่นี่ เทียบสองฝั่งทีละบรรทัด

การแปลงเดียวกันกับข้อมูลที่ยุ่งเหยิง

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

id,start,end,note,text
1,00:00:01,000,00:00:04,000,cue one,"Hello there, friend."
2,00:00:05.000,00:00:07.000,cue two,Second line.
bad,notatime,00:00:09.000,cue three,Unreadable start.
4,00:00:10.000,00:00:09.000,cue four,End before start.
5,00:00:12.000,00:00:14.000,cue five,Unquoted comma in text, right here.

ผลลัพธ์

<SAMI>
<HEAD>
<STYLE TYPE="text/css">
<!--
P { text-align: center; font-family: Arial, sans-serif; }
-->
</STYLE>
</HEAD>
<BODY>
<SYNC Start=1000>
<P>Hello there, friend.
<SYNC Start=4000>
<P>&nbsp;
<SYNC Start=5000>
<P>Second line.
<SYNC Start=7000>
<P>&nbsp;
<SYNC Start=10000>
<P>End before start.
<SYNC Start=10001>
<P>&nbsp;
<SYNC Start=12000>
<P>Unquoted comma in text, right here.
<SYNC Start=14000>
<P>&nbsp;
</BODY>
</SAMI>

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

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

ผลลัพธ์มีหน้าตาอย่างไรเมื่อ CSV กลายเป็น SMI?

เหมือน SMI: ไม่มีเลขคิวและไม่มีบรรทัดไทม์โค้ด — ทุกคิวคือแท็ก `<SYNC Start=…>` ที่มีข้อความอยู่ใน `<P>` ใต้ลงไป และเพราะ SYNC แทนที่สิ่งที่อยู่บนจอ จึงมีบล็อก `<P>&nbsp;` ตามมาทันทีเพื่อคืนจอให้ว่าง ทุกคิว CSV กลายเป็นหนึ่งคิว SMI ตามลำดับเดิม ด้วยข้อความเดิม

ไทม์โค้ด CSV แม่นยำในไฟล์ SMI ไหม?

แม่นถึงมิลลิวินาที — ซึ่งละเอียดที่สุดที่ทั้งสองรูปแบบทำได้ CSV เขียนเวลาเป็น `00:00:04.126` และ SMI เขียนช่วงเวลาเดียวกันเป็น `Start=4126` ไม่มีการปัดหรือเลื่อนระหว่างกัน และคิวที่เคยอยู่บนจอ 2.9 วินาทีก็ยังคงเป็น 2.9 วินาที

คิว CSV ที่มีสองบรรทัดออกมาเป็นอย่างไรใน SMI?

เป็นสองบรรทัดที่มี `<br>` คั่นกลาง ซึ่งเป็นวิธีที่ SAMI เขียนการขึ้นบรรทัดแบบบังคับ คู่บรรทัดยังคงอยู่ — สองบรรทัดของ CSV ยังเป็นคำบรรยายเดียวกันในผลลัพธ์ และโปรแกรมเล่นแสดงพร้อมกัน

คิว CSV ยังคงลำดับเดิมในผลลัพธ์ SMI หรือไม่?

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

แปลง SMI กลับเป็น CSV ได้ไหม?

ได้ การแปลง SMI เป็น CSV ทำได้ แต่นั่นคือทิศทางที่สูญเสีย: สไตล์ ตำแหน่งและข้อมูลเฉพาะรูปแบบไม่มีที่ไปใน CSV ส่วนทางนี้ไม่เสียอะไร ต้นทุนจึงเกิดเฉพาะเมื่อคุณแปลงกลับ

ผลลัพธ์ SMI เก็บ encoding เดิมของไฟล์ CSV ไว้ไหม?

ไม่ — ผลลัพธ์เป็น UTF-8 ใช้การขึ้นบรรทัดแบบ Unix และไม่มี byte-order mark ไม่ว่าไฟล์ CSV จะใช้แบบไหน ไฟล์ที่มาเป็น UTF-16 หรือ encoding แบบไบต์เดียวของ Windows จะถูกถอดรหัสตอนอ่าน (แผงผลลัพธ์จะบอกเมื่อเกิดกรณีนั้น) สิ่งที่ออกมาคือ SMI แบบ UTF-8 เหมือนกันทุกครั้ง

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