ffmpeg

list decoders/formats

ffmpeg -codecs
ffmpeg -formats

Basic conversions

# Convert sound
ffmpeg -i filename.mp4 filename.mp3
ffmpeg -i filename.mp4 -b:a 192K -vn filename.mp3

Speed up sound/voice with frequency compensation (example 40% speedup)

ffmpeg -i input.ogg -filter:a "atempo=1.4" output.ogg

Capture/Stream desktop

# Capture (X11) desktop:
ffmpeg -video_size 1024x768 -framerate 25 -f x11grab -i :0.0+100,200 output.mp4
# Capture (X11) desktop  and store in x264
ffmpeg -video_size 1920x1080 -framerate 25 -f x11grab -i :0.0+0,0 -f h264 out.h2

# Stream desktop (X11) over tcp using h264 and receive with mplayer (it has high delay)
ffmpeg -video_size 1920x1080 -framerate 25 -f x11grab -i :0.0+0,0   -f h264 -preset veryfast - | nc -l -p 6000
nc 127.0.0.1 6000 | mplayer -cache 512 -


# Stream desktop (X11) over tcp: more responsive method
ffmpeg -video_size 1920x1080 -framerate 25 -f x11grab -i :0.0+0,0  -preset ultrafast -vcodec libx264 -tune zerolatency -b 900k -f mpegts - | nc -l -p 6000
nc 127.0.0.1 6000 | mplayer -

# Same on udp
ffmpeg -video_size 1920x1080 -framerate 25 -f x11grab -i :0.0+0,0  -preset ultrafast -vcodec libx264 -tune zerolatency -b 900k -f mpegts - |  socat - UDP-DATAGRAM:127.0.0.1:24000,broadcast
nc -u -l -p 24000 | mplayer -

# Stream desktop (X11), directly on tcp
ffmpeg -video_size 1920x1080 -framerate 25 -f x11grab -i :0.0+0,0  -preset ultrafast -vcodec libx264 -tune zerolatency -b 900k -f mpegts tcp://127.0.0.1:6000\?listen
ffplay tcp://127.0.0.1:6000