Skip to content

Instantly share code, notes, and snippets.

@sdvcrx
Created July 11, 2014 06:39
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save sdvcrx/7eadbeb51a5c64892889 to your computer and use it in GitHub Desktop.
Save sdvcrx/7eadbeb51a5c64892889 to your computer and use it in GitHub Desktop.
从视频中提取一个声道并重新封装,解决部分视屏只有左边声音的问题
#!/bin/sh
############
# require:
# - ffmpeg
# - faad
# - sox
############
aac="audio.aac"
wav="audio.wav"
outl="outl.wav"
video="video.avi"
left="1"
right="2"
raw_video=$1
extra_video() {
echo -e "ffmpeg -i $raw_video -vcodec copy -an $video\n\n"
ffmpeg -i $raw_video -vcodec copy -an $video
}
extra_audio() {
echo -e "ffmpeg -i $raw_video -acodec copy -vn $aac\n\n"
ffmpeg -i $raw_video -acodec copy -vn $aac
}
convert_aac_to_wav() {
echo -e "faad -o $wav $aac\n"
faad -o $wav $aac
}
split_left_channel() {
echo -e "sox $wav $outl remix $left\n"
sox $wav $outl remix $left
}
package_to_mp4() {
ffmpeg -i $outl -i $video -vcodec copy -strict -2 -acodec aac $raw_video
}
clean_up() {
rm -f $aac $wav $outl $video
}
main() {
extra_video
extra_audio
convert_aac_to_wav
split_left_channel
package_to_mp4
clean_up
}
main
#!/bin/sh
aac="audio.aac"
wav="audio.wav"
outl="outl.wav"
video="video.avi"
left="1"
right="2"
raw_video=$1
extra_video() {
echo -e "ffmpeg -i $raw_video -vcodec copy -an $video\n\n"
ffmpeg -i $raw_video -vcodec copy -an $video
}
extra_audio() {
echo -e "ffmpeg -i $raw_video -acodec copy -vn $aac\n\n"
ffmpeg -i $raw_video -acodec copy -vn $aac
}
convert_aac_to_wav() {
echo -e "faad -o $wav $aac\n"
faad -o $wav $aac
}
split_left_channel() {
echo -e "sox $wav $outl remix $left\n"
sox $wav $outl remix $left
}
package_to_mp4() {
ffmpeg -i $outl -i $video -vcodec copy -strict -2 -acodec aac $raw_video
}
clean_up() {
rm -f $aac $wav $outl $video
}
main() {
extra_video
extra_audio
convert_aac_to_wav
split_left_channel
package_to_mp4
clean_up
}
main
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment