Chuyển đến nội dung chính
SubtitleMatrix

Chuyển SSA sang LRC

Chuyển đổi định dạngSubStation Alpha (SSA)
Hoặc dán văn bản phụ đề

Chuyển đổi này thay đổi điều gì

5 thứ bị bỏ hoặc cần một quyết định

  • Mốc thời gian

    thời điểm kết thúc của cue (định dạng đích chỉ ghi khi một cue bắt đầu)

  • Định dạng hiển thị

    mọi định dạng hiển thị (đậm, nghiêng, màu, viền, bóng)

  • Vị trí

    vị trí trên màn hình (mọi cue trở về vị trí mặc định)

  • Karaoke

    thời gian karaoke (tô sáng từng âm tiết)

  • Nội dung riêng của định dạng

    nội dung mà định dạng nguồn giữ bên ngoài các cue (khối không phải cue, văn bản đầu tệp, thiết lập riêng từng cue, sự kiện bị chú thích) — định dạng đích không có chỗ cho nó

Danh sách này đến từ ma trận năng lực của hai định dạng này, không phải từ tệp cụ thể bạn đã tải lên. Một tệp cụ thể có thể mất nhiều hơn nếu nó dùng các tính năng mà định dạng cho phép nhưng ma trận không mô hình hóa.

Tệp SSA là script kiểu V4 với bảng kiểu và mã ghi đè riêng. Trang này chuyển tệp SSA sang LRC. Mỗi dòng ra mang một mốc thời gian trong ngoặc vuông dạng [00:04.12]; không có số thứ tự cue và không có thời điểm kết thúc.

Hướng này không giữ được hết: thời điểm kết thúc, kiểu chữ và bảng kiểu, vị trí trên màn hình, thời gian karaoke và cấu trúc riêng của định dạng nguồn không đi qua trọn vẹn khi vào LRC. Danh sách trên lấy từ khả năng của hai định dạng chứ không từ tệp cụ thể của bạn, nên câu trả lời giống nhau trước khi bạn mở tệp. Công cụ báo từng mục thay vì bỏ lặng lẽ.

Mọi thứ chạy trong trình duyệt của bạn: tệp không được tải lên máy chủ nào và không cần tài khoản. Bạn có thể thả một tệp hoặc cả mùa phim; hàng đợi xử lý lần lượt, bạn hủy được giữa chừng, và kết quả về cùng một tệp ZIP.

Ví dụ

Một tệp SSA thông thường, chuyển sang LRC

Đầu vào

[Script Info]
Title: Example SSA
ScriptType: v4.00
Collisions: Normal

[V4 Styles]
Format: Name, Fontname, Fontsize, PrimaryColour, SecondaryColour, TertiaryColour, BackColour, Bold, Italic, BorderStyle, Outline, Shadow, Alignment, MarginL, MarginR, MarginV, AlphaLevel, Encoding
Style: Default,Arial,20,&H00FFFFFF,&H000000FF,&H00000000,&H00000000,0,0,1,2,2,2,10,10,10,0,1

[Events]
Format: Marked, Start, End, Style, Name, MarginL, MarginR, MarginV, Effect, Text
Dialogue: Marked=0,0:00:01.00,0:00:04.00,Default,,0,0,0,,Hello there.
Dialogue: Marked=0,0:00:05.00,0:00:08.00,Default,,0,0,0,,{\i1}Italic{\i0} line.
Dialogue: Marked=0,0:00:09.00,0:00:12.00,Default,,0,0,0,,Two\Nlines

Kết quả

[ti:Example SSA]
[00:01.00]Hello there.
[00:05.00]Italic line.
[00:09.00]Two
[00:09.00]lines

So hai bên theo từng dòng để thấy phần nào đi qua nguyên vẹn và phần nào đổi khi ra LRC.

Cùng phép chuyển SSA sang LRC trên một tệp lộn xộn

Đầu vào

[Script Info]
Title: Dirty SSA
ScriptType: v4.00

[V4 Styles]
Format: Name, Fontname, Fontsize, PrimaryColour, SecondaryColour, TertiaryColour, BackColour, Bold, Italic, BorderStyle, Outline, Shadow, Alignment, MarginL, MarginR, MarginV, AlphaLevel, Encoding
Style: Default,Arial,20,&H00FFFFFF,&H000000FF,&H00000000,&H00000000,0,0,1,2,2,2,10,10,10,0,1

[Events]
Format: Marked, Start, End, Style, Name, MarginL, MarginR, MarginV, Effect, Text
Comment: Marked=0,0:00:00.00,0:00:01.00,Default,,0,0,0,,not a subtitle
Dialogue: Marked=0,0:00:01.00,0:00:04.00,Default,,0,0,0,,{\b1}Bold{\b0} and {\u1}underlined{\u0}.
Dialogue: Marked=0,0:00:05.00,0:00:08.00,Default,,0,0,0,,A soft\nbreak and a {\p1}mystery{\p0} code.

Kết quả

[ti:Dirty SSA]
[00:01.00]Bold and underlined.
[00:05.00]A soft
[00:05.00]break and a {\p1}mystery{\p0} code.

Đây là kiểu hỏng tệp thật hay gặp — xuống dòng lẫn lộn, khoảng trắng thừa, trường bỏ trống. Đặt cạnh ví dụ gọn phía trên để thấy trình đọc tha cho những gì.

Câu hỏi thường gặp

Thời điểm kết thúc của mỗi cue SSA đi đâu khi sang LRC?

LRC chỉ ghi lúc một dòng bắt đầu, không ghi lúc kết thúc — trình phát lời giữ dòng cho tới khi dòng sau bắt đầu, nên thời điểm kết thúc là thừa. Mọi giá trị kết thúc bị bỏ, mọi mốc bắt đầu của SSA giữ nguyên.

In nghiêng, in đậm và màu trong SSA có được giữ khi sang LRC?

LRC không lưu bất kỳ kiểu nào, nên tất cả bị bỏ: thẻ ghi đè như {\i1} trong phần chữ, hay màu lấy từ bảng kiểu của SSA, đều không có chỗ đứng; mọi dòng ra dưới dạng chữ thuần. Bản thân từ ngữ không bị đổi.

Vị trí phụ đề trên màn hình của SSA có sang LRC không?

LRC không nói được phụ đề nằm ở đâu, nên các mã \pos, \an và \move bị gỡ khi ra khỏi SSA; mọi cue quay về vị trí mặc định của trình phát — thường là đáy khung hình, căn giữa.

Thời gian karaoke trong SSA xử lý thế nào khi sang LRC?

Mốc thời gian mất, chữ còn. Karaoke nằm trong các mã \k, \kf và \ko của từng sự kiện SSA, đánh dấu lúc từng âm tiết sáng lên; LRC không có cách ghi một khoảnh khắc bên trong một dòng, nên các dấu đó được gỡ và âm tiết ra như chữ LRC bình thường.

Khối [Script Info] của SSA đi đâu khi tệp thành LRC?

Mọi dòng Dialogue: trong script SSA thành một dòng lời, và tiêu đề đi qua dưới dạng thẻ [ti:]. Phần còn lại bị bỏ: bảng kiểu, các khóa [Script Info] khác, mọi dòng Comment: và những gì nhúng trong [Fonts] hay [Graphics]. LRC không có khái niệm script, chỉ có dòng và lúc chúng bắt đầu.

Khi chuyển SSA sang LRC, tệp đầu ra trông như thế nào?

Mỗi dòng mang một mốc thời gian trong ngoặc vuông dạng [00:04.12], không có số thứ tự cue và không có mốc kết thúc. Mỗi cue của SSA thành một hoặc hai dòng LRC, giữ nguyên thứ tự.

Một cue SSA có hai dòng sẽ ra sao trong tệp LRC?

Thành hai dòng có cùng một mốc thời gian — cách LRC nói “hai dòng này đi với nhau”. Cặp dòng sống sót: hai dòng của SSA vẫn thuộc một phụ đề trong LRC, và trình phát hiện chúng cùng lúc.

Thứ tự các cue SSA có được giữ khi ra LRC?

Có, và chúng được sắp theo thời điểm bắt đầu trên đường ra — sớm nhất trước, cách mọi định dạng ở đây chờ đợi và trình phát đọc. Nếu tệp SSA liệt kê lộn xộn, đầu ra LRC xếp lại; đó là thay đổi cấu trúc tệp chứ không phải nội dung, và là chủ ý.

Chuyển ngược từ LRC về SSA thì mất những gì?

Hướng LRC về SSA bỏ mốc thời gian. Danh sách đó khác với hướng này vì hai định dạng giữ những thứ khác nhau.

Tệp LRC xuất ra dùng encoding gì, và tệp SSA đầu vào thì sao?

Tệp LRC xuất ra luôn là UTF-8, kết thúc dòng kiểu Unix (LF) và không có BOM, bất kể tệp SSA dùng gì. Đầu vào bằng UTF-16 hoặc bảng mã một byte của Windows được giải mã khi đọc, và bảng kết quả ghi lại việc đó; thứ ra khỏi công cụ luôn là cùng một định dạng UTF-8.

Công cụ liên quan