sudo apt install -y yasm libtheora-dev libvorbis-dev libx264-dev libx265-dev \
libopus-dev libaom-dev libwebp-dev libmp3lame-dev libfdk-aac-dev
git clone https://git.ffmpeg.org/ffmpeg.git && cd ffmpeg/
./configure --enable-gpl --enable-nonfree \
--enable-libfdk-aac --enable-libmp3lame --enable-libopus \
--enable-libtheora --enable-libvorbis --enable-libwebp \
--enable-libx264 --enable-libx265 --enable-libaom
make -j4 && sudo make install
sudo apt install -y gcc yasm libmp3lame-dev libfdk-aac-dev libtheora-dev libvorbis-dev \
libopus-dev libaom-dev libwebp-dev libx264-dev libx265-dev
wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2204/x86_64/cuda-keyring_1.0-1_all.debsudo
dpkg -i cuda-keyring_1.0-1_all.deb
sudo apt-get update
sudo apt-get -y install cuda
git clone https://git.videolan.org/git/ffmpeg/nv-codec-headers.git
cd nv-codec-headers/
make -j8 && sudo make install
git clone https://git.ffmpeg.org/ffmpeg.git
cd ffmpeg/
./configure --extra-cflags=-I/usr/local/cuda/include \
--extra-cflags=-I/usr/local/include/ffnvcodec \
--enable-gpl --enable-nonfree \
--enable-libfdk-aac --enable-libmp3lame --enable-libopus \
--enable-libtheora --enable-libvorbis --enable-libwebp \
--enable-libx264 --enable-libx265 --enable-libaom \
--enable-cuda --enable-cuvid --enable-nvenc
make -j8 && make install
AAC bitrate | MP3 bitrate |
---|---|
96 | 128 |
128 | 160 |
160 | 192 |
192 | 320 |
Convert FLAC to MP3 320k
ffmpeg -i in.flac -ab 320k -map_metadata 0 -id3v2_version 3 out.mp3
Convert MKV to MP4 720p
ffmpeg -i in.mkv -c:v libh264c -vf "scale_npp=1280:-1, scale_npp=1280:trunc(iw/2)*2" \
-b:v 2500k -profile:v high -level 4.1 -preset medium -c:a libmp3lame -b:a 192k -cutoff 18000 out.mp4
Convert MKV to MKV 720p with CUDA encoder
ffmpeg -y -vsync 0 -hwaccel cuda -i in.mkv \
-c:v h264_nvenc -b:v 5000k -profile:v high -level 4.1 -preset slow -crf 22 \
-c:a libfdk_aac -b:a 128k -cutoff 18000 out.mkv
Extract audio from MP4
ffmpeg -i in.mp4 -c:a copy out.mp3
Cut audio from 30s to 100s
ffmpeg -ss 30 -t 100 -i in.mp3 -c:a copy out.mp3
Create MP3 preview
ffmpeg -i in.mp3 -acodec libmp3lame -t 1800 -ac 1 -ab 96k -ar 44100 \
-af "afade=t=out:st=1770:d=30" out.mp3
Combine video and audio
ffmpeg -i video.mp4 -i audio.mp3 -c:v copy -c:a copy output.mp4
Rotate video 180 degree
ffmpeg -i in.mp4 -vf "transpose=2,transpose=2" -c:a copy out.mp4
Convert any video file to MP4
ffmpeg -i in.MTS -c:a copy -c:v copy out.mp4