Linux中國

如何解決 VLC 視頻嵌入字幕中遇到的錯誤

Kdenlive, render

但是,在完成了我的 Risitas&Linux 項目之後,我遇到了一個困難。視頻文件和字幕文件仍然是兩個獨立的實體,我需要以某種方式將它們放在一起。我最初關於字幕的文章提到了 Avidemux 和 Handbrake,這兩個都是有效的選項。

但是,我對它們任何一個的輸出都並不滿意,而且由於種種原因,有些東西有所偏移。 Avidemux 不能很好處理視頻編碼,而 Handbrake 在最終輸出中省略了幾行字幕,而且字體是醜陋的。這個可以解決,但這不是今天的話題。

因此,我決定使用 VideoLAN(VLC) 將字幕嵌入視頻。有幾種方法可以做到這一點。你可以使用 「Media > Convert/Save」 選項,但這不能達到我們需要的。相反,你應該使用 「Media > Stream」,它帶有一個更完整的嚮導,它還提供了一個我們需要的可編輯的代碼轉換選項 - 請參閱我的教程關於字幕的部分。

錯誤!

嵌入字幕的過程並沒那麼簡單的。你有可能遇到幾個問題。本指南應該能幫助你解決這些問題,所以你可以專註於你的工作,而不是浪費時間調試怪異的軟體錯誤。無論如何,在使用 VLC 中的字幕時,你將會遇到一小部分可能會遇到的問題。嘗試以及出錯,還有書獃子的設計。

沒有可播放的流

你可能選擇了奇怪的輸出設置。你要仔細檢查你是否選擇了正確的視頻和音頻編解碼器。另外,請記住,一些媒體播放器可能沒有所有的編解碼器。此外,確保在所有要播放的系統中都測試過了。

No playable streams

字幕疊加兩次

如果在第一步的流媒體嚮導中選擇了 「Use a subtitle file」,則可能會發生這種情況。只需選擇所需的文件,然後單擊 「Stream」。取消選中該框。

Select file

字幕沒有輸出

這可能是兩個主要原因。一、你選擇了錯誤的封裝格式。在進行編輯之前,請確保在配置文件頁面上正確標記了字幕。如果格式不支持字幕,它可能無法正常工作。

Encapsulation

二、你可能已經在最終輸出中啟用了字幕編解碼器渲染功能。你不需要這個。你只需要將字幕疊加到視頻片段上。在單擊 「Stream」 按鈕之前,請檢查生成的流輸出字元串並刪除 「scodec=」 的選項。

Remove text from output string

缺少編解碼器的解決方法

這是一個常見的 bug,取決於編碼器的實現的實驗性,如果你選擇以下配置文件,你將很有可能會看到它:「Video - H.264 + AAC (MP4)」。該文件將被渲染,如果你選擇了字幕,它們也會被疊加上,但沒有任何音頻。但是,我們可以用技巧來解決這個問題。

AAC codec

MP4A error

一個可能的技巧是從命令行使用 「--sout-ffmpeg-strict=-2」 選項(可能有用)啟動 VLC。另一個更安全的解決方法是採用無音頻視頻,但是帶有字幕疊加,並將不帶字幕的原始項目作為音頻源用 Kdenlive 渲染。聽上去很複雜,下面是詳細步驟:

  • 將現有片段(包含音頻)從視頻移動到音頻。刪除其餘的。
  • 或者,使用渲染過的 WebM 文件作為你的音頻源。
  • 添加新的片段 - 帶有字幕,並且沒有音頻。
  • 將片段放置為新視頻。
  • 再次渲染為 WebM。

Repeat render

使用其他類型的音頻編解碼器將很有可能可用(例如 MP3),你將擁有一個包含視頻、音頻和字幕的完整項目。如果你很高興沒有遺漏,你可以現在上傳到 Youtube 上。但是之後 ...

Youtube 視頻管理器和未知格式

如果你嘗試上傳非 WebM 片段(例如 MP4),則可能會收到未指定的錯誤,你的片段不符合媒體格式要求。我不知道為什麼 VLC 會生成一個不符合 YouTube 規定的文件。但是,修復很容易。使用 Kdenlive 重新創建視頻,將會生成帶有所有正確的元欄位和 Youtube 喜歡的文件。回到我原來的故事,我有 40 多個片段使用 Kdenlive 以這種方式創建。

P.S. 如果你的片段有有效的音頻,則只需通過 Kdenlive 重新運行它。如果沒有,重做視頻/音頻。根據需要將片段靜音。最終,這就像疊加一樣,除了你使用的視頻來自於一個片段,而音頻來自於另一個片段。工作完成。

更多閱讀

我不想用鏈接重複自己或垃圾信息。在「軟體與安全」部分,我有 VLC 上的片段,因此你可能需要諮詢。前面提到的關於 VLC 和字幕的文章已經鏈接到大約六個相關教程,涵蓋了其他主題,如流媒體、日誌記錄、視頻旋轉、遠程文件訪問等等。我相信你可以像專業人員一樣使用搜索引擎。

總結

我希望你覺得本指南有幫助。它涵蓋了很多,我試圖使其直接而簡單,並解決流媒體愛好者和字幕愛好者在使用 VLC 時可能遇到的許多陷阱。這都與容器和編解碼器相關,而且媒體世界幾乎沒有標準的事實,當你從一種格式轉換到另一種格式時,有時你可能會遇到邊際情況。

如果你遇到了一些錯誤,這裡的提示和技巧應該可以至少幫助你解決一些,包括無法播放的流、丟失或重複的字幕、缺少編解碼器和 Kdenlive 解決方法、YouTube 上傳錯誤、隱藏的 VLC 命令行選項,還有一些其他東西。是的,這些對於一段文字來說是很多的。幸運的是,這些都是好東西。保重,互聯網的孩子們。如果你有任何其他要求,我將來的 VLC 文章應該會涵蓋,請隨意給我發郵件。

乾杯。

via: http://www.dedoimedo.com/computers/vlc-subtitles-errors.html

作者:Dedoimedo 譯者:geekpi 校對:wxy

本文由 LCTT 原創編譯,Linux中國 榮譽推出


本文轉載來自 Linux 中國: https://github.com/Linux-CN/archive

對這篇文章感覺如何?

太棒了
0
不錯
0
愛死了
0
不太好
0
感覺很糟
0
雨落清風。心向陽

    You may also like

    Leave a reply

    您的郵箱地址不會被公開。 必填項已用 * 標註

    此站點使用Akismet來減少垃圾評論。了解我們如何處理您的評論數據

    More in:Linux中國