비디오 파일에서 오디오 트랙 제거

비디오 파일에서 오디오 트랙 제거

2개의 오디오 트랙이 포함된 여러 개의 비디오 파일이 있습니다. avi 파일입니다. 오디오 트랙에는 레이블이 없으며 재생하려고 하면 기본 트랙에 오디오가 없습니다. 2개의 트랙이 더 있는데, 두 번째 트랙은 오디오가 포함된 트랙입니다.

모든 파일에서 트랙 1과 3을 제거하는 명령을 실행할 수 있습니까?

그들은 우분투 서버에 있습니다. CLI 전용.

avprobe version 9.18-6:9.18-0ubuntu0.14.04.1, Copyright (c) 2007-2014 the Libav developers
  built on Mar 16 2015 13:19:10 with gcc 4.8 (Ubuntu 4.8.2-19ubuntu1)
[mpeg4 @ 0xd1dac0] Invalid and inefficient vfw-avi packed B frames detected
Input #0, avi, from 'Video004.avi':
  Metadata:
    encoder         : VirtualDubMod 1.5.10.2 (build 2540/release)
  Duration: 00:49:16.99, start: 0.000000, bitrate: 1937 kb/s
    Stream #0.0: Video: mpeg4 (Advanced Simple Profile), yuv420p, 640x480 [PAR 1:1 DAR 4:3], 23.98 tbn, 23.98 tbc
    Stream #0.1: Audio: mp3, 32000 Hz, 1 channels, s16p, 96 kb/s
    Stream #0.2: Audio: mp3, 32000 Hz, 1 channels, s16p, 96 kb/s
    Stream #0.3: Audio: mp3, 32000 Hz, 1 channels, s16p, 96 kb/s
# avprobe output

답변1

avconv가 해결책인 것 같습니다

avconv -i $file -map 0:0 -map 0:2 -acodec copy -vcodec copy $outfile

나는 이것을 루프에 넣었다.

dir="*.avi"
for file in $dir
do 
 avconv -i $file -map 0:0 -map 0:2 -acodec copy -vcodec copy $outfile
done

동일한 파일 이름으로 저장을 시도하지는 않았지만 작동하지 않을 것이라고 가정합니다. 쉽게 이전 파일을 삭제하고 새 파일의 이름을 바꾸도록 할 수 있습니다. 나는 동일한 이름을 가진 임시 디렉토리로 출력한 다음 원본을 덮어쓰면서 모두 옮겼습니다.

지도 arg를 설명하려면 복사할 트랙을 avconv에 알려줍니다. 0:0은 비디오이고 0:2는 두 번째 오디오 트랙입니다. 그런 다음 acodec 및 vcodec은 복사하도록 설정됩니다. 즉, 오디오와 비디오를 변경하지 않고 복사합니다.

답변2

이 시도링크. 도달할 때까지 아래로 스크롤하세요.모노 오디오를 스테레오로 변환하고 그 반대로 변환그리고 시도해 보세요. 채널 중 하나를 선택하여 스테레오 트랙을 모노 트랙으로 전환할 수 있습니다.

관련 정보