Extract audio from a video
To see the audio streams in the file:
avconv -i video_in.webm
To extract stream 1:
avconv -i video_in.webm -map 0:1 -acodec copy -vn audio_out.ogg
or
avconv -i orig.webm -c:a libvorbis -b:a 128k -vn target.ogg
Convert an flv
of wmv
video to webm (vorbis)
avconv -i ./input_file.flv -y -c:v libvpx -b:v 450k -c:a libvorbis -b:a 128k ./output_file.webm
Convert an mp3 audio to ogg (libvorbis)
avconv -i in.mp3 -map 0:0 -codec libvorbis -format ogg out.ogg
Convert .avi to .webm,
And select only video track 0, audio track 2, bitrate 800 and framerate 24:
avconv -i input.avi -map 0:0 -c:v libvpx -map 0:2 -c:a libvorbis -b:v 800k -r:v 24 output.webm
-map:
take track 0:n from input-c:a:
audio codec (typeavconv -codecs
to list all available codecs)-c:v:
video codec-b:v:
bitrate video-r:v:
framerate video
Convert .avi to .ogv
Only video track 0.0, 0.2 audio track, video quality 7/10 and audio quality 6/10
avconv -i input.avi -map 0:0 -c:v libtheora -q:v 7 -map 0:2 -c:a libvorbis -q:a 6 output.ogv
-q:v
: video quality, en un rango entre 0-10; un buen intervalo es 5-7-q:a
: audio quality, idem; un buen intervalo es 3-6
Batch conversion
for file in *.webm;do avconv -i "${file}" -c:a libvorbis -b:a 192k "${file/%webm/ogg}";done
for file in *.webm;do avconv -i "${file}" -c:a libmp3lame -b:a 192k "${file/%webm/lame}";done
for file in *.mp3;do avconv -i "${file}" "${file/%mp3/ogg}";done
find . -type f -iname "*.webm" -exec bash -c 'FILE="$1"; ffmpeg -i "${FILE}" -vn -ab 128k -ar 48000 -y "${FILE%.webm}.mp3";' _ '{}' \;
for FILE in *.webm; do
echo -e "Processing video '\e[32m$FILE\e[0m'";
ffmpeg -i "${FILE}" -vn -ab 128k -ar 44100 -y "${FILE%.webm}.mp3";
done;