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