Проблемы с пакетами Windows и VLC

468
Miki Fox

В настоящее время я пытаюсь написать командный файл, который рекурсивно преобразует все файлы .wav в моей папке в файлы .ogg и помещает их в папку на другом диске с помощью команд командной строки vlc. Пока что скрипт работает так, как задумано, за исключением одной небольшой проблемы: vlc: // quit не работает, точка.

@Echo Off SETLOCAL ENABLEDELAYEDEXPANSION for /f "tokens=*" %%f in ('dir /b /s "C:\Users\*\Music\Ultimate Game Music Collection\*.wav"') DO (  set file1=%%~nf.ogg echo "file :" !file1! set fic1=%%f echo "file :" !fic1! set destination=F:\myMusic\ogg\!file1! echo "Destination :" "!destination!"   CALL "C:\Program Files\VideoLAN\VLC\vlc.exe" --ignore-config -I dummy --dummy-quiet -vv "!fic1!" --sout=#transcode:std,mux=ogg,dst="!destination!"}" vlc://quit  )  echo . echo conversion finished pause 

Что происходит, это;

Я запускаю командный файл, он публикует только то, что установлено как 'echo' (т.е. -vv ничего не показывает), .wav преобразуется в .ogg и помещается в новое место назначения, vlc останавливается, больше не конвертируются файлы.

На этом этапе, если я зайду в диспетчер задач и завершу процесс vlc.exe, он перейдет к следующему файлу, но с более чем 5000 файлами для преобразования ... Я сделал это, чтобы начать и забыть.

Я искал все, пытаясь найти ответ на этот вопрос безрезультатно. Я пробовал --ignore-config, который не работал. Я даже попытался добавить отдельную команду taskkill после вызова, которая также не работала (даже с / t и / f). Будем очень благодарны за любую помощь или понимание, которое вы все можете дать относительно того, почему vlc: // quit не работает, или как это исправить.

2
Ваши двойные кавычки (последние) выключены @, dst = "! Destination!"} "? Это лишние или вы должны были добавить одну ранее? Aulis Ronkainen 6 лет назад 0
`vlc: // quit` может вызвать странное поведение в пакетных файлах. Попробуйте вместо этого использовать параметр `vlc --play-and-exit`. harrymc 6 лет назад 0
@harrymc, ваше предложение сработало. Если вы добавите это как ответ, я выберу это Miki Fox 6 лет назад 0
Сделано в соответствии с просьбой. harrymc 6 лет назад 0

1 ответ на вопрос

0
harrymc

vlc://quit ненадежен в пакетной среде и может вызывать странное поведение в этой среде.

Вместо этого используйте опцию:

vlc --play-and-exit 

Похожие вопросы