일괄 작업을 통해 WAV를 ALAC로 변환하는 중 문제 발생

일괄 작업을 통해 WAV를 ALAC로 변환하는 중 문제 발생

다음 코드를 사용하여 WAV를 ALAC(bash, macOS 10.12.1)로 변환합니다.

find . -type f -iname "*.wav" | while read fn; do ffmpeg -i "$fn" -acodec alac "${fn%.wav}.m4a"; done

하지만 다음과 같은 경고를 출력하기 때문에 버그가 있는 것 같습니다.

n---8085/03_Part_III.wav: No such file or directory

올바른 경로는 다음과 같습니다.

Bad_Religion/wav/Bad_Religion---8085/03_Part_III.wav

어떤 이유로 경로가 차단되었습니다.

명령에 어떤 문제가 있나요?

답변1

파일 이름은 실제로 잘리지 않습니다. 여기서는 ffmpeg입력 스트림에서 명령을 읽으려고 시도하고 있습니다. 불행하게도 이것은 파일 이름을 결정하는 데 사용된 것과 동일한 스트림이므로 read해당 파일 이름의 일부가 읽히지 않는 것처럼 보입니다. 이 문제를 해결하려면 ffmpeg이 플래그를 사용하여 입력 스트림에서 상호 작용을 비활성화 해야 합니다 -nostdin.

관련 정보