无法让Handbrake使用“MP4 Normal”

我是新用户,发现所有使用“MP4 Normal”配置文件的转码最终都调用了 ffmpeg。我在日志里看到 Handbrake 报错,但不太明白原因。以下是日志中的相关片段:

INFORMATION> 2017-11-09T22:43:30 MCEBuddy.AppWrapper.Handbrake --> Handbrake checking for OpenCL and QuickSync support
2017-11-09T22:43:30 MCEBuddy.AppWrapper.Handbrake --> Launching process C:\Program Files\MCEBuddy2x\handbrake\handbrakecli.exe
2017-11-09T22:43:30 MCEBuddy.AppWrapper.Handbrake --> Process arguments -i null -o null
2017-11-09T22:43:30 MCEBuddy.AppWrapper.Handbrake --> UI Session Admin Process : True
2017-11-09T22:43:30 MCEBuddy.AppWrapper.Handbrake --> Starting process as a UISession process with Admin privileges. This requires atleast 1 user to be logged into the system (remote desktop or locally)
2017-11-09T22:43:30 MCEBuddy.AppWrapper.Handbrake --> Setting process priority to Normal
2017-11-09T22:43:30 MCEBuddy.AppWrapper.Handbrake --> [22:43:30] hb_init: starting libhb thread
2017-11-09T22:43:30 MCEBuddy.AppWrapper.Handbrake --> [22:43:30] thread 6706e80 started ("libhb")
2017-11-09T22:43:30 MCEBuddy.AppWrapper.Handbrake --> HandBrake 20170728192513-45a24df-master (2017080101) - MinGW x86_64 - https://handbrake.fr
2017-11-09T22:43:30 MCEBuddy.AppWrapper.Handbrake --> 8 CPUs detected
2017-11-09T22:43:30 MCEBuddy.AppWrapper.Handbrake --> Opening null...
2017-11-09T22:43:30 MCEBuddy.AppWrapper.Handbrake --> [22:43:30] CPU: Intel(R) Core(TM) i7-4790 CPU @ 3.60GHz
2017-11-09T22:43:30 MCEBuddy.AppWrapper.Handbrake --> [22:43:30]  - Intel microarchitecture Haswell
2017-11-09T22:43:30 MCEBuddy.AppWrapper.Handbrake --> [22:43:30]  - logical processor count: 8
2017-11-09T22:43:30 MCEBuddy.AppWrapper.Handbrake --> [22:43:30] Intel Quick Sync Video support: no
2017-11-09T22:43:30 MCEBuddy.AppWrapper.Handbrake --> [22:43:30] hb_scan: path=null, title_index=1
2017-11-09T22:43:30 MCEBuddy.AppWrapper.Handbrake --> src/libbluray/disc/disc.c:274: failed opening UDF image null
2017-11-09T22:43:30 MCEBuddy.AppWrapper.Handbrake --> src/libbluray/disc/disc.c:352: error opening file BDMV\index.bdmv
2017-11-09T22:43:30 MCEBuddy.AppWrapper.Handbrake --> src/libbluray/disc/disc.c:352: error opening file BDMV\BACKUP\index.bdmv
2017-11-09T22:43:30 MCEBuddy.AppWrapper.Handbrake --> [22:43:30] bd: not a bd - trying as a stream/file instead
2017-11-09T22:43:30 MCEBuddy.AppWrapper.Handbrake --> libdvdnav: Using dvdnav version 5.0.3
2017-11-09T22:43:30 MCEBuddy.AppWrapper.Handbrake --> libdvdread: Encrypted DVD support unavailable.
2017-11-09T22:43:30 MCEBuddy.AppWrapper.Handbrake --> libdvdread: Can't stat null
2017-11-09T22:43:30 MCEBuddy.AppWrapper.Handbrake --> No such file or directory
2017-11-09T22:43:30 MCEBuddy.AppWrapper.Handbrake --> libdvdread: Could not open null
2017-11-09T22:43:30 MCEBuddy.AppWrapper.Handbrake --> libdvdnav: vm: failed to open/read the DVD
2017-11-09T22:43:30 MCEBuddy.AppWrapper.Handbrake --> [22:43:30] dvd: not a dvd - trying as a stream/file instead
2017-11-09T22:43:30 MCEBuddy.AppWrapper.Handbrake --> [22:43:30] hb_stream_open: open null failed
2017-11-09T22:43:30 MCEBuddy.AppWrapper.Handbrake --> [22:43:30] scan: unrecognized file type
2017-11-09T22:43:31 MCEBuddy.AppWrapper.Handbrake --> [22:43:31] libhb: scan thread found 0 valid title(s)
2017-11-09T22:43:32 MCEBuddy.AppWrapper.Handbrake --> No title found.
2017-11-09T22:43:33 MCEBuddy.AppWrapper.Handbrake --> HandBrake has exited.
--> Process exited with code 2
WARNING> 2017-11-09T22:43:35 MCEBuddy.AppWrapper.Handbrake --> Handbrake failed, non 0 return code
INFORMATION> 2017-11-09T22:43:35 MCEBuddy.AppWrapper.Handbrake --> QuickSync encoding supported available -> False
INFORMATION> 2017-11-09T22:43:35 MCEBuddy.AppWrapper.Handbrake --> H.264 encoding supported available -> False
INFORMATION> 2017-11-09T22:43:35 MCEBuddy.AppWrapper.Handbrake --> H.265 encoding supported available -> False
2017-11-09T22:43:35 MCEBuddy.Transcode.ConvertWithHandbrake --> Handbrake profile disable software encoder fallback after hardware encoding failure (handbrake-DisableSoftwareEncoderFallback) : False
2017-11-09T22:43:35 MCEBuddy.Transcode.ConvertWithHandbrake --> Handbrake profile optimized for hardware encoding, disable auto hardware optimization (handbrake-UsingHardwareEncoding) : False
2017-11-09T22:43:35 MCEBuddy.Transcode.ConvertWithHandbrake --> Cannot find supported h264/h265 software/hardware encoder combination in profile, disabling auto hardware encoder adjustments

求助!

谢谢,
Bret

能否附上你的轉換記錄檔?裡面可能有更多資訊。你有 Nvidia 顯示卡嗎?

我确实有一张Nvidia显卡,虽然是比较老的型号。这里有一个示例转换日志文件的链接:
转换日志

非常感谢帮助!!
Bret

好的,經過大量閱讀後,我猜測 MCEBuddy 正在從 Handbrake 轉向 ffmpeg,以便能搭配我的 Nvidia 顯示卡使用 NVENC。我本來以為我有 QSV,但因為主機板內顯被停用,所以無法使用。

很希望有人能幫我確認這就是目前的狀況。

謝謝!
Bret

所以我做了個快速測試,如果我把「硬體編碼」關掉,它就會使用 Handbrake。

我搞不懂的是:a) 如果它平常不是用 Handbrake,是因為找不到 QSV,那 b) 為什麼從上面的日誌看來,即使偵測到了 NVENC,它似乎也沒有用 ffmpeg 去呼叫 NVENC?

這通常是驅動程式某種詭異的問題嗎?我傾向直接關掉硬體編碼,讓它用 Handbrake 就好,但我還是想先把來龍去脈弄清楚…

你說得對!這兩點正是正在發生的情況。你可以從日誌檔案中看到,它偵測到 Nvidia 硬體並優先使用你的編碼器。

你可以:

  1. 停用重新排序(請參閱進階命令)

  2. 在轉換任務的專家設定頁面停用硬體與編碼

  3. 啟用你的 QSV Intel 顯示卡作為主要顯示卡,以便使用 HandBrake 硬體編碼。

我遇到了同样的问题,但我似乎找不到“禁用硬件和编码”选项。

如果您進入轉換任務並點擊「進階設定」,然後捲動到畫面最底部,您會找到「專家設定」。點擊該選項後,您會在頁面中間找到「硬體加速」的核取方塊。