MP4 비디오 파일의 오디오 채널을 별도의 오디오 파일로 추출하는 방법은 무엇입니까?

MP4 비디오 파일의 오디오 채널을 별도의 오디오 파일로 추출하는 방법은 무엇입니까?

무료 Linux 도구를 사용하여 YouTube에서 MPEG4(MP4 컨테이너, H264 AVC 비디오, AAC 오디오) 비디오 클립을 다운로드하고 오디오 채널을 별도의 오디오(오디오 압축 해제 및 재압축 없이) 파일로 분리하는 방법은 무엇입니까?

답변1

Youtube 비디오를 고려하면 비디오에서 오디오를 추출할 필요가 없을 수도 있습니다.오디오 트랙을 개별적으로 다운로드할 수 있습니다.최신 Flashgot 플러그인과 함께 Firefox를 사용하거나mps-youtube(이것은 YouTube 오디오 트랙을 재생하고 다운로드하기 위한 도구입니다.여기).


mp4 비디오 파일을 고려해보세요:

답변대로여기, 파일의 특정 이름이 필요하지 않은 보다 일반적인 명령을 사용하여 파일 관리자 사용자 정의 메뉴에 추가할 수 있습니다. 예:

ffmpeg -i "$0" -map 0:1 -c:a copy "${0%%.*}".m4a

( .m4a컨테이너로 더 많이 지원되므로 를 사용하는 것이 더 나은 선택이지만 원하는 경우 대신 .aac원시를 사용할 수 있습니다 .).aac

또한 터미널에서 이 명령을 실행하면 현재 폴더의 모든 mp4 파일에서 오디오 트랙을 추출합니다.

for i in *.mp4; do ffmpeg -i "${i}" -map 0:1 -c:a copy "${i%.mp4}.m4a"; done

(여기출처글)


파일 관리자의 상황에 맞는 메뉴에서 이러한 명령을 사용하는 방법에 대한 링크된 답변 및 질문의 설명 및 관련 정보를 참조하세요.


위와 유사한 명령을 사용하여 입력 및 출력 확장자를 적절하게 바꿔 다른 유형의 비디오 파일에서 오디오를 추출할 수도 있습니다.

첫 번째 명령도 마찬가지로 작동 하지만 다른 비디오의 경우 비디오 클립에 포함된 오디오로 flv바꾸면 됩니다 . m4a두 번째 명령은 다른 유형의 비디오 파일에 적용되는 경우 비디오 및 오디오 확장자를 바꿔야 합니다.

일반적으로 mp4파일에는 오디오가 flv포함되고 파일에는 오디오가 포함되며 파일 에는 오디오가 포함됩니다. 비디오에 어떤 오디오가 포함되어 있는지 확인하려면 다음을 사용하십시오 .aacWebmoggavimp3mediainfo미디어 정보 GUI, 또는 mediainfo터미널에 설치하고: mediainfo <file>.

답변2

오디오 스트림이 1개뿐이고 실제로 그렇다면 aac다음만 필요합니다.

ffmpeg -acodec copy -i "movie.mp4" -y "audio.aac"

첫 번째 오디오 스트림 ID와 코덱 유형/파일 확장자를 스크립팅하려면 다음 명령을 사용할 수 있습니다.

eval $(ffmpeg -i "movie.mp4" 2>&1 |awk '/Stream.*Audio/{print "stream=" $2 ";codec=" $4}' |head -n1)
stream=${stream:1}; stream=${stream/:/}
extn=${codec/,/}; [[ $extn == "aac" ]] || 
    { echo "You need to manually set the fiie extension. Codec type is: $codec"; exit 1; } 

ffmpeg -map $stream -acodec copy -i "movie.mp4" "audio.$extn"

관련 정보