HandbrakeCLI нераспознанный тип файла - PullRequest
0 голосов
/ 26 ноября 2018

Я пытаюсь настроить простой командный файл для использования ручного тормоза для сжатия видео.У меня был установлен Handbrake и я увидел, что мне нужно установить HandbrakeCLI отдельно.Я скачал HandBrakeCLI.exe и поместил его на C:\.Затем я сделал предустановку и установил ее по умолчанию, используя GUI.Затем я вызываю handbrake следующим образом:

@echo off
for %%f in (*.mpg) do (
    C:\HandBrakeCLI -i 'C:\Users\rv\Desktop\Newfolder\%%f' -o 'C:\encode\%%f.mp4'
)
pause

Я получаю следующую ошибку, сообщающую, что тип файла не распознан:

[10:19:30] dvd: not a dvd - trying as a stream/file instead
[10:19:30] hb_stream_open: open 'C:\Users\rv\Desktop\Newfolder\126_812-714A_812-713_111914_san.mpg' 
failed
[10:19:30] scan: unrecognized file type
[10:19:30] libhb: scan thread found 0 valid title(s)
No title found.

Любые мысли о том, почему версия командной строки внезапноневозможно открыть файл?Один и тот же файл можно открыть в GUI и преобразовать.

Я попытался переустановить все и удалить предустановленную папку, даже если это не похоже на проблему.


Обновление: вот последний код, который работает для меня.

@echo off
set /A count_complete = 0
set /A count_total = 0
pushd %~dp0
for /R %%f in (*.mp2, *.mpg, *.vob, *.avi, *.wmv, *.mov, *.m4v, *.mpeg, *.mp4) do (
   set /A count_total+=1
)
for /R %%f in (*.mp4) do (
   echo Count is currently %count% of %count_total%
   C:\HandBrakeCLI --preset-import-gui C:\Users\xxx\Desktop\customencode.json -Z "CustomCompress" -i "%%f" -o "%%~dpf%%~nf_conv.mp4"
    if exist "%%~dpf%%~nf_conv.mp4" (
        del "%%f"
        ren "%%~dpf%%~nf_conv.mp4" "%%~nf.mp4"
        set /A count_complete+=1
    ) 
)
for /R %%f in (*.mp2, *.mpg, *.vob, *.avi, *.wmv, *.mov, *.m4v, *.mpeg) do (
   echo Count is currently %count% of %count_total%
   C:\HandBrakeCLI --preset-import-gui C:\Users\xxxxx\Desktop\customencode.json -Z "CustomCompress" -i "%%f" -o "%%~dpf%%~nf_conv.mp4"
    if exist "%%~dpf%%~nf_conv.mp4" (
        del "%%f"
        ren "%%~dpf%%~nf_conv.mp4" "%%~nf.mp4"
        set /A count_complete+=1
    )
)
popd
echo Count is: %count% out of %count_try% attempted.
pause

1 Ответ

0 голосов
/ 26 ноября 2018

Мне нужно было использовать двойные кавычки вместо одинарных.Как это:

@echo off
for %%f in (*.mpg) do (
C:\HandBrakeCLI -i "C:\Users\rv\Desktop\Newfolder\%%f" -o "C:\encode\%%f.mp4"
)
pause
...