題 將視頻從.mp4轉換為.ogg


我在用 ffmpeg version 0.11.1 Copyright (c) 2000-2012 the FFmpeg developers 。我需要將文件.mp4轉換為.ogg格式。我在Mac OS X上,到目前為止我已嘗試過這個:

ffmpeg -i sample_mpeg4.mp4 -acodec vorbis -vcodec libtheora -f ogg output.ogv

我正進入(狀態: Unknown encoder 'libtheora'

ffmpeg -i sample_mpeg4.mp4 -acodec libvorbis -vcodec --enable-libtheora output.ogv

我正進入(狀態: Unknown encoder '--enable-libtheora'

ffmpeg -i sample_mpeg4.mp4 -acodec libvorbis -vcodec libtheora -f ogv output.ogv

我正進入(狀態:

[NULL @ 0x7f81bb00f800] Requested output format 'ogv' is not a suitable output format
output.ogv: Invalid argument

ffmpegtheora 不是一個選項,因為它無法安裝在服務器上。


7
2018-01-09 13:40


起源


關於什麼 ffmpeg -i file.mp4 file.ogg?這適用於我的Debian wheezy盒子,不確定Mac OS X. - user49740
不。這是行不通的 - Unknown
那麼這是OSX特有的問題。您很可能沒有所需的編解碼器。 - user49740
在將來,當詢問FFmpeg問題時,請包括完整的未切割命令輸出,而不僅僅是您認為相關的錯誤消息。 - slhck


答案:


您的FFmpeg版本缺少所需的編碼器, libtheora 對於Theora視頻和 libvorbis 適用於Vorbis音頻。

您只能通過其中任何一個添加這些編碼器

  • 用FFmpeg編譯它們,或者
  • 安裝捆綁它們的可執行文件。

對您而言,最簡單的選擇是從中下載靜態版本 FFmpeg下載頁面。他們都來了 libtheora 和 libvorbis,無論他們為什麼構建的操作系統。

您需要做的是提取下載存檔,然後運行 ffmpeg 包含的二進製文件。正確的語法是:

ffmpeg -i in.mp4 -c:v libtheora -c:a libvorbis out.ogv

如果要更改音頻或視頻的質量,可以更改比特率,例如同 -b:v 1M 要么 -b:a 192k。根據您擁有的質量或文件大小限制,使用這些值並使用更高或更低的比特率。

您也可以使用VBR(恆定質量) -q:v,其中值的範圍從0到10(越高越好),建議使用7。音頻質量可以設置 -q:a,再次使用從0到10的值,其中推薦4並且對應於大約128 kBit / s。

注意 --enable-libtheora 是一個配置選項,在調用時不起作用 ffmpeg


10
2018-01-09 14:01





使用 家釀 包經理

在命令行中安裝Homebrew

$ ruby -e "$(curl -fsSL https://raw.github.com/Homebrew/homebrew/go/install)"

使用libtheora支持安裝ffmpeg

$ brew install ffmpeg --with-theora --with-libvorbis

此處列出了其他選項

$ brew options ffmpeg

希望它能幫助別人或未來我;)


9
2017-08-18 16:11



您可能還需要 --with-libvorbis, 像這樣: brew install ffmpeg --with-theora --with-libvorbis - Adam Taylor
你也可以使用 reinstall brew重新安裝ffmpeg --with-theora --with-libvorbis - pixelearth


從源代碼構建ffmpeg時應使用--enable-libtheora,而不是在嘗試運行程序時使用。你應該嘗試重建ffmpeg(使用 當然是最新的來源 )並在配置期間添加對libtheora的支持(./configure --enable-libtheora etc ....)

如果你需要有關從源碼構建的幫助,谷歌上有很多東西,但它可以歸結為(為你)啟用你需要的庫,你可以看到 這裡 和_http://jungels.net/articles/ffmpeg-howto.html為初學者。


0
2018-01-09 14:14



通常不需要從源代碼構建,因為它在OS X上可能是一件苦差事。諸如Homebrew之類的軟件包管理器簡化了這項任務,但OP也可以使用FFmpeg下載頁面中的靜態構建。 - slhck