Script em lote “Droplet” - nomes de arquivos que contêm e comercial

Estou tentando criar um arquivo em lotes que pode ter outros arquivos soltos nele. Especificamente, estou usando ffmpeg para editar arquivos de áudio produzidos por um gravador de voz portátil. O problema é ao usar nomes de arquivos com e comercial (&). Mesmo ao citar a entrada, qualquer coisa após o & é descartada, mas somente quando os arquivos são inseridos nela; se a entrada do nome do arquivo for digitada na linha de comando, o script funcionará bem. Antes de ocmd janela se fecha, vejo brevemente o restante do nome do arquivo com um erro dizendo que ele não é reconhecido como um comando válid

Aqui está o meu script:

rem Change to drive and directory of input file
%~d1
cd %~p1

rem ffmpeg: mix to one channel, double the volume
%HOMEDRIVE%%HOMEPATH%\ffmpeg.exe -i "%~nx1" -ac 1 -vol 1024 "%~n1 fixed%~x1"

pause

Aqui está o que aparece na linha de comando, depois de soltar"ch17&18.mp3":

C:\Users\computergeeksjw\Desktop>C:\Users\computergeeksjw\ffmpeg.exe -i "ch17" -ac 1 -vol 1024 "ch17 fixed"
[...]
ch17: No such file or directory

No caso de ser importante: estou usando o Windows 8 Developer Preview. Isso está causando o meu problema? O mesmo erro ocorre no Windows 7 ou anterior?

questionAnswers(2)

yourAnswerToTheQuestion