Tutoriels

Tutoriels

Compiler la dernière version de ffmpeg pour Ubuntu
d’après la documentation officielle comment_compiler_ffmpeg Installer toutes les dépendances :
sudo apt-get install yasm git checkinstall build-essential libvorbis-dev libxvidcore-dev libfaac-dev libfaad2 libtheora-dev libdirac-dev libvdpau-dev libopenjpeg-dev libopencore-amrwb-dev libopencore-amrnb-dev libgsm1-dev libschroedinger-dev libspeex-dev libdc1394-22-dev libsdl1.2-dev libx11-dev libxfixes-dev libass4 libass-dev libmp3lame-dev libx264-dev libvpx-dev
Créer un répertoire contenant les sources, y compiler ffmpeg et l’installer sur le système :
cd
git clone git://source.ffmpeg.org/ffmpeg.git ffmpeg
cd ffmpeg
./configure --enable-libmp3lame --enable-libxvid --enable-libvorbis --enable-gpl --enable-libfaac --enable-libtheora --enable-zlib --disable-shared --enable-libx264 --enable-nonfree --enable-version3 --enable-libschroedinger --enable-avfilter --enable-libspeex --enable-libopenjpeg --enable-libgsm --enable-postproc --enable-pthreads --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-ffplay --enable-pthreads --prefix=/usr/local --enable-x11grab --enable-runtime-cpudetect --enable-bzlib --enable-libdc1394 --enable-libvpx --enable-libfreetype --enable-libass
sudo make clean
make
sudo checkinstall
Ajouter un sous-titre *.ass dans un apple prores HQ
ffmpeg -i film.mov -vf "ass=sous-titre.ass" -c:v prores_ks -profile:v 3 -c:a copy film-st.mov
Ajouter un time code dans une vidéo mpeg1 à 25 i/s 352x288 pour ayato ou st500
ffmpeg -i film.mov -c:v mpeg1video -s 352x288 -q 4 -c:a mp2 -vf "drawtext=fontsize=45: fontfile=font.ttf: text='TCR\:': timecode='00\:00\:00\:00': r=25: x=(w-tw)/2: y=lh: fontcolor=white: box=1: boxcolor=0x00000000@1" -g 1
Encoder pour un dvd
ffmpeg -i video.mov -target pal-dvd -aspect 16:9 -flags +ilme+ildct -alternate_scan 1 -top 0 video.mpg
puis
ffmpeg -i video.mpg -c copy video.m2v && ffmpeg -i video.mpg -c copy video.ac3
Éventuellement vérifier les niveaux sonores :
ffmpeg -i video.ac3 -af "volumedetect" -f null /dev/null
Changer le débit image
24 → 25 -r 25 -vf "setpts=N/(25*TB)" -af "atempo=25/24" ou -r 25 -vf "setpts=(24/25)*PTS" -af "atempo=25/24"
25 → 24 -r 24 -vf "setpts=N/(24*TB)" -af "atempo=24/25" ou -vf "setpts=(25/24)*PTS" -af "atempo=24/25"
23.976 → 25 -r 25 -vf "setpts=N/(25*TB)" -af "atempo=25025/24000" ou -r 25 -vf "setpts=(24/25)*PTS" -af "atempo=25/24"
29.97 → 23.976 -vf "fieldmatch=order=auto:combmatch=none, decimate" ou -vf "fieldmatch=order=auto:combmatch=full, yadif=deint=interlaced, decimate" ou -vf pullup -r 24000/1001
  • map_metadata -1
Exemple : DVD NTSC vers DVD PAL :
 ffmpeg -i DVDNTSC.mpg -vf "fieldmatch=order=auto:combmatch=full, yadif=deint=interlaced, decimate, setpts=N/(25*TB)" -af "atempo=25025/24000" -target pal-dvd -aspect 16:9 -flags +ilme+ildct -alternate_scan 1 -top 0 DVDPAL.mpg
Ajouter un filigrane
ffmpeg -i film.mp4 -i filigrane.png -filter_complex ’overlay=0:0’ filigrane.mp4
Optimiser le démarrage de la vidéo pour internet
-c copy -movflags faststart
Créer une vidéo mp4 à partir d’un dcp
ffmpeg -lowres 2 -i *_j2c.mxf -i *_pcm.mxf -q:v 2 -b:a 256k -ac 2 video.mp4
à partir d’un dossier
ffmpeg -lowres 2 -framerate 24 -i */d06%.j2c -i *_pcm.wav -q:v 2 -b:a 256k -ac 2 video.mp4
  • start_number et -ss en cas de entrypoint
Créer un apple prores HQ 1920x1080 à partir d’un dcp flat 1998x1080
Transcoder les prores par bobine :
ffmpeg -i bobine01_j2c.mxf -i bobine01_pcm.mxf -c:v prores_ks -profile:v 3 -vf "scale=1920:1038,pad=1920:1080:0:21" -c:a pcm_s16le bobine01.mov

ffmpeg -i bobine02_j2c.mxf -i bobine02_pcm.mxf -c:v prores_ks -profile:v 3 -vf "scale=1920:1038,pad=1920:1080:0:21" -c:a pcm_s16le bobine02.mov
concaténer les bobines entre elles :
mencoder -oac copy -ovc copy bobine01.mov bobine02.mov -o film.mov
Encoder pour authoring blu-ray avec x264
d’après http://www.x264bluray.com/h 1080p23.976
x264 --bitrate 36000 --preset veryslow --tune film --bluray-compat --vbv-maxrate 40000 --vbv-bufsize 30000 --level 4.1 --keyint 24 --open-gop --fps 24000/1001 --force-cfr --slices 4 --colorprim "bt709" --transfer "bt709" --colormatrix "bt709" --sar 1:1 -o out.264 input.file
1080p24
x264 --bitrate 36000 --preset veryslow --tune film --bluray-compat --vbv-maxrate 40000 --vbv-bufsize 30000 --level 4.1 --keyint 24 --open-gop --fps 24 --force-cfr --slices 4 --colorprim "bt709" --transfer "bt709" --colormatrix "bt709" --sar 1:1 -o out.264 input.file
1080p25
x264 --bitrate 36000 --preset veryslow --tune film --bluray-compat --vbv-maxrate 40000 --vbv-bufsize 30000 --level 4.1 --keyint 25 --open-gop --fps 25 --force-cfr --slices 4 --fake-interlaced --colorprim "bt709" --transfer "bt709" --colormatrix "bt709" --sar 1:1 -o out.264 input.file
1080i25
x264 --bitrate 36000 --preset veryslow --tune film --bluray-compat --vbv-maxrate 40000 --vbv-bufsize 30000 --level 4.1 --keyint 25 --open-gop --fps 25 --force-cfr --slices 4 --tff --colorprim "bt709" --transfer "bt709" --colormatrix "bt709" --sar 1:1 -o out.264 input.file
1080p29.97
x264 --bitrate 36000 --preset veryslow --tune film --bluray-compat --vbv-maxrate 40000 --vbv-bufsize 30000 --level 4.1 --keyint 30 --open-gop --fps 30000/1001 --force-cfr --slices 4 --fake-interlaced --colorprim "bt709" --transfer "bt709" --colormatrix "bt709" --sar 1:1 -o out.264 input.file
1080i29.97
x264 --bitrate 36000 --preset veryslow --tune film --bluray-compat --vbv-maxrate 40000 --vbv-bufsize 30000 --level 4.1 --keyint 30 --open-gop --fps 30000/1001 --force-cfr --slices 4 --tff --colorprim "bt709" --transfer "bt709" --colormatrix "bt709" --sar 1:1 -o out.264 input.file
Pour x264 à partir de Ubuntu 14.04
ffmpeg -i VideoIn.mov -f rawvideo -pix_fmt yuv420p - | x264 --demuxer raw [...] --input-res 1920x1080 -o VideoOut.264 -
encoder l’audio en ac3 avec ffmpeg
ffmpeg -i input.file out.ac3
Multiplexer le *.264 et le *.ac3 avec TsMuxer Créer un .264 à partir d’un dcp flat 24 images / seconde :
ffmpeg -i j2c.mxf -vf "scale=1920:1038,pad=1920:1080:0:21" -f rawvideo -pix_fmt yuv420p - | x264 --demuxer raw --bitrate 36000 --preset veryslow --tune film --bluray-compat --vbv-maxrate 40000 --vbv-bufsize 30000 --level 4.1 --keyint 24 --open-gop --fps 24 --force-cfr --slices 4 --colorprim "bt709" --transfer "bt709" --colormatrix "bt709" --sar 1:1 --input-res 1920x1080 -o out.264 -
Formater un disque dur pour recevoir un contenu dcp
Effacer son contenu avec Gparted et relever le nom du disque (sdX) Créer une partition type 83 avec cfdisk
sudo cfdisk /dev/sdX
Formater cette partition en ext3 inode 128
sudo mkfs.ext3 -I 128 -L NOMDUDCP /dev/sdX
Monter la partition puis la rendre accessible en écriture
sudo chmod -R 777 /media/’user’/NOMDUDCP
Copier le contenu du dcp puis rendre la partition accessible en lecture/exécution
sudo chmod -R 555 /media/’user’/NOMDUDCP
Accès aux certificats des serveurs
DOREMI
  • ftp.doremilabs.com
  • user : service
  • pass : t3chn1c1an
DOLBY
  • ftp.dolby.co.uk
  • user : dolbyrootcertificates
  • pass : houro61l
CHRISTIE
  • certificates.christiedigital.com
  • LeJoliMai
  • Chr1st1eLJM0ne
GDC
  • ftp.gdc-tech.com
  • pubgdccert
  • 20pub14lish