如何讓VLC顯示mkv影片中嵌入的兩個字幕?

如何讓VLC顯示mkv影片中嵌入的兩個字幕?

我有一個嵌入英語和德語字幕的 mkv 影片。我在 VLC 播放器上觀看 mkv 影片。在任何時候,我只能選擇其中一個字幕。我想學習德語。觀看同時出現英語和德語字幕的影片會有幫助。

如何在 VLC 上觀看同時顯示兩個字幕的影片?

如果VLC不支援這個功能,我歡迎其他影片播放器。

答案1

可見光通信

從 beta 4.0.0 開始,VLC 支援雙/輔助字幕。目前讓它發揮作用似乎有點麻煩。

首先,您需要總體上打開它們。轉到“工具”>“首選項”>“字幕/OSD”>“雙字幕”(位於最底部)>“對齊”,並將其變更為任何未設定的值。您可能還需要調整偏移(相鄰設定)。

播放影片時,需要使用預設快速鍵Ctrl+ Shift+來「切換輔助字幕控制」 V。 (這意味著用於在字幕之間前後循環的普通字幕控制快捷鍵(如vAlt+ )現在將應用於輔助字幕,而不是主字幕。再次按+ +將切換回將這些快捷鍵應用於主字幕.) 然後,以正確的次數切換到您想要的(輔助)字幕。vCtrlShiftVv

替代方案 — mpv

mpv有(IMO)更方便的方法來顯示兩組字幕。

我將假設所有字幕要么嵌入(如問題中指定),要么嵌入在單獨的但適當命名的外部文件中(例如,如果您的電影被稱為file1.mkv您的字幕文件應該是file1.srt)。如果沒有,您可以透過新增選項等或透過使用(例如)來明確--sub-file=subtitle_file_lang_xx.src指定--sub-file=subtitle_file_lang_yy.src字幕--sub-auto檔案--sub-auto=fuzzy

無論如何選擇(內建或來自外部檔案),當您播放視訊檔案時,每組字幕都將位於自己的「串流」中。為流分配連續的整數索引(1、2、3...)。一般來說,內建字幕(邏輯上)將具有較早的索引。當您使用 播放檔案時,串流索引、其語言(如果字幕具有指定語言)以及字幕是否來自外部檔案都會顯示在終端機中mpv。例如,運行後mpv file1.mkv

(+) Subs  --sid=1 --slang=eng (*) (subrip)
    Subs  --sid=2 --slang=deu (subrip)
    Subs  --sid=3 'file1.srt' (subrip) (external)

這裡,前兩個字幕是內建的,語言分別為英語 ( eng) 和德語 ( deu),而第三個字幕來自外部文件。索引 ( )為1、2、3 sid(*)(+)

了解這些索引後,您可以使用選項 和 指定「主」和輔助--sid字幕--secondary-sid。例如,要顯示上一個範例中的英語字幕作為主字幕,而德語字幕作為次要字幕,您可以運行(在終端中):

mpv --sid=1 --secondary-sid=2 file1.mkv

使用鍵盤快速鍵循環輔助字幕

預設情況下,沒有任何用於循環輔助字幕的鍵盤快速鍵(您可以使用 和j( J+ Shift)循環「主」字幕j)。但是,您可以非常輕鬆地添加一些。

例如,如果您將以下內容添加到您的~/.config/mpv/input.conf(或更一般地說,您的${XDG_CONFIG_HOME}/mpv/input.conf)中:

Ctrl+j cycle secondary-sid
Ctrl+J cycle secondary-sid down

然後Ctrl+將以與主j字幕相同的方向循環輔助字幕(增加字幕流索引),而+ +將以相反的方向循環它們(減少字幕流索引)。jCtrlShiftjJ

(基於我自己在 Askubuntu 上的回答.)

答案2

我不知道VLC,但SMPlayer可以做到。只需將字幕逐一拖動,然後從字幕選單中選擇主字幕和輔助字幕即可。

相關內容