Recherche avancée

Médias (1)

Mot : - Tags -/getid3

Autres articles (56)

  • Multilang : améliorer l’interface pour les blocs multilingues

    18 février 2011, par

    Multilang est un plugin supplémentaire qui n’est pas activé par défaut lors de l’initialisation de MediaSPIP.
    Après son activation, une préconfiguration est mise en place automatiquement par MediaSPIP init permettant à la nouvelle fonctionnalité d’être automatiquement opérationnelle. Il n’est donc pas obligatoire de passer par une étape de configuration pour cela.

  • Ajouter des informations spécifiques aux utilisateurs et autres modifications de comportement liées aux auteurs

    12 avril 2011, par

    La manière la plus simple d’ajouter des informations aux auteurs est d’installer le plugin Inscription3. Il permet également de modifier certains comportements liés aux utilisateurs (référez-vous à sa documentation pour plus d’informations).
    Il est également possible d’ajouter des champs aux auteurs en installant les plugins champs extras 2 et Interface pour champs extras.

  • Support audio et vidéo HTML5

    10 avril 2011

    MediaSPIP utilise les balises HTML5 video et audio pour la lecture de documents multimedia en profitant des dernières innovations du W3C supportées par les navigateurs modernes.
    Pour les navigateurs plus anciens, le lecteur flash Flowplayer est utilisé.
    Le lecteur HTML5 utilisé a été spécifiquement créé pour MediaSPIP : il est complètement modifiable graphiquement pour correspondre à un thème choisi.
    Ces technologies permettent de distribuer vidéo et son à la fois sur des ordinateurs conventionnels (...)

Sur d’autres sites (11057)

  • How can I capture simple video input with audio from a capture device

    17 décembre 2020, par Geoff Sweet

    I'm using ffmpeg on Arch linux and trying to convert some old video to digital. The setup is pretty straightforward and if I connect to the capture device with VLC I get the video and audio just fine. So now I want to capture that with ffmpeg and write it to a file so I can edit it and clean it up. I'm only so-so familiar with ffmpeg and I've been digging through the man pages and here is where I am at.

    


    This command captures perfect audio, but no video :

    


    ffmpeg -f alsa -ac 2 -i front:CARD=Capture,DEV=0 out.mpeg


    


    This command captures perfect video ;

    


    ffmpeg -f video4linux2 -i /dev/video0 out.mpeg


    


    captures the video signal great, but with no audio. So combining them together should give me :

    


    ffmpeg -y -f alsa -ac 2 -i front:CARD=Capture,DEV=0 -f video4linux2 -i /dev/video0 out.mpeg


    


    But that command kinda falls on it's face. I get the audio, but no video :

    


    ffmpeg -y -f alsa -ac 2 -i front:CARD=Capture,DEV=0 -f video4linux2 -i /dev/video0 out.mpeg
ffmpeg version n4.3.1 Copyright (c) 2000-2020 the FFmpeg developers
  built with gcc 10.2.0 (GCC)
  configuration: --prefix=/usr --disable-debug --disable-static --disable-stripping --enable-amf --enable-avisynth --enable-cuda-llvm --enable-lto --enable-fontconfig --enable-gmp --enable-gnutls --enable-gpl --enable-ladspa --enable-libaom --enable-libass --enable-libbluray --enable-libdav1d --enable-libdrm --enable-libfreetype --enable-libfribidi --enable-libgsm --enable-libiec61883 --enable-libjack --enable-libmfx --enable-libmodplug --enable-libmp3lame --enable-libopencore_amrnb --enable-libopencore_amrwb --enable-libopenjpeg --enable-libopus --enable-libpulse --enable-librav1e --enable-libsoxr --enable-libspeex --enable-libsrt --enable-libssh --enable-libtheora --enable-libv4l2 --enable-libvidstab --enable-libvmaf --enable-libvorbis --enable-libvpx --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxcb --enable-libxml2 --enable-libxvid --enable-nvdec --enable-nvenc --enable-shared --enable-version3
  libavutil      56. 51.100 / 56. 51.100
  libavcodec     58. 91.100 / 58. 91.100
  libavformat    58. 45.100 / 58. 45.100
  libavdevice    58. 10.100 / 58. 10.100
  libavfilter     7. 85.100 /  7. 85.100
  libswscale      5.  7.100 /  5.  7.100
  libswresample   3.  7.100 /  3.  7.100
  libpostproc    55.  7.100 / 55.  7.100
Guessed Channel Layout for Input Stream #0.0 : stereo
Input #0, alsa, from 'front:CARD=Capture,DEV=0':
  Duration: N/A, start: 1608093176.894565, bitrate: 1536 kb/s
    Stream #0:0: Audio: pcm_s16le, 48000 Hz, stereo, s16, 1536 kb/s
[video4linux2,v4l2 @ 0x56248fe0ab80] Dequeued v4l2 buffer contains corrupted data (0 bytes).
Input #1, video4linux2,v4l2, from '/dev/video0':
  Duration: N/A, start: 0.000000, bitrate: 995328 kb/s
    Stream #1:0: Video: rawvideo (YUY2 / 0x32595559), yuyv422, 1920x1080, 995328 kb/s, 30 fps, 30 tbr, 1000k tbn, 1000k tbc
Stream mapping:
  Stream #1:0 -> #0:0 (rawvideo (native) -> mpeg1video (native))
  Stream #0:0 -> #0:1 (pcm_s16le (native) -> mp2 (native))
Press [q] to stop, [?] for help
[video4linux2,v4l2 @ 0x56248fe0ab80] Dequeued v4l2 buffer contains corrupted data (0 bytes).
    Last message repeated 30 times
[alsa @ 0x56248fdb3840] Thread message queue blocking; consider raising the thread_queue_size option (current value: 8)
[mpeg @ 0x56248fe0dfc0] VBV buffer size not set, using default size of 230KB
If you want the mpeg file to be compliant to some specification
Like DVD, VCD or others, make sure you set the correct buffer size
Output #0, mpeg, to 'out.mpeg':
  Metadata:
    encoder         : Lavf58.45.100
    Stream #0:0: Video: mpeg1video, yuv420p(progressive), 1920x1080, q=2-31, 200 kb/s, 30 fps, 90k tbn, 30 tbc
    Metadata:
      encoder         : Lavc58.91.100 mpeg1video
    Side data:
      cpb: bitrate max/min/avg: 0/0/200000 buffer size: 0 vbv_delay: N/A
    Stream #0:1: Audio: mp2, 48000 Hz, stereo, s16, 384 kb/s
    Metadata:
      encoder         : Lavc58.91.100 mp2
frame=    2 fps=0.0 q=3.2 size=       0kB time=01:48:49.26 bitrate=   0.0kbits/sframe=    2 fps=2.0 q=3.2 size=       0kB time=01:48:49.26 bitrate=   0.0kbits/sframe=    2 fps=1.3 q=3.2 size=       0kB time=01:48:49.26 bitrate=   0.0kbits/sframe=    2 fps=1.0 q=3.2 size=       0kB time=01:48:49.26 bitrate=   0.0kbits/sframe=    2 fps=0.8 q=3.2 size=       0kB time=01:48:49.26 bitrate=   0.0kbits/sframe=    2 fps=0.7 q=3.2 size=       0kB time=01:48:49.26 bitrate=   0.0kbits/sframe=    2 fps=0.6 q=3.2 size=       0kB time=01:48:49.26 bitrate=   0.0kbits/sframe=    2 fps=0.5 q=3.2 size=       0kB time=01:48:49.26 bitrate=   0.0kbits/sframe=    2 fps=0.4 q=3.2 size=       0kB time=01:48:49.26 bitrate=   0.0kbits/sframe=    2 fps=0.4 q=3.2 size=       0kB time=01:48:49.26 bitrate=   0.0kbits/sframe=    2 fps=0.4 q=3.2 size=       0kB time=01:48:49.26 bitrate=   0.0kbits/sframe=    2 fps=0.3 q=3.2 size=       0kB time=01:48:49.26 bitrate=   0.0kbits/sframe=    2 fps=0.3 q=3.2 size=       0kB time=01:48:49.26 bitrate=   0.0kbits/sframe=    2 fps=0.3 q=3.2 size=       0kB time=01:48:49.26 bitrate=   0.0kbits/sframe=    2 fps=0.3 q=3.2 size=       0kB time=01:48:49.26 bitrate=   0.0kbits/sframe=    2 fps=0.2 q=3.2 size=       0kB time=01:48:49.26 bitrate=   0.0kbits/sframe=    2 fps=0.2 q=3.2 size=       0kB time=01:48:49.26 bitrate=   0.0kbits/sframe=    2 fps=0.2 q=3.2 size=       0kB time=01:48:49.26 bitrate=   0.0kbits/sframe=    2 fps=0.2 q=3.2 size=       0kB time=01:48:49.26 bitrate=   0.0kbits/sframe=    2 fps=0.2 q=3.2 size=       0kB time=01:48:49.26 bitrate=   0.0kbits/sframe=    2 fps=0.2 q=3.2 size=       0kB time=01:48:49.26 bitrate=   0.0kbits/sframe=    2 fps=0.2 q=3.2 size=       0kB time=01:48:49.26 bitrate=   0.0kbits/sframe=    2 fps=0.2 q=3.2 size=       0kB time=01:48:49.26 bitrate=   0.0kbits/sframe=    2 fps=0.2 q=3.2 size=       0kB time=01:48:49.26 bitrate=   0.0kbits/sframe=    2 fps=0.2 q=3.2 size=       0kB time=01:48:49.26 bitrate=   0.0kbits/sframe=    2 fps=0.2 q=3.2 size=       0kB time=01:48:49.26 bitrate=   0.0kbits/sframe=    2 fps=0.1 q=3.2 size=       0kB time=01:48:49.26 bitrate=   0.0kbits/sframe=    2 fps=0.1 q=3.2 size=       0kB time=01:48:49.26 bitrate=   0.0kbits/sframe=    2 fps=0.1 q=3.2 size=       0kB time=01:48:49.26 bitrate=   0.0kbits/sframe=    2 fps=0.1 q=3.2 size=       0kB time=01:48:49.26 bitrate=   0.0kbits/sframe=    2 fps=0.1 q=3.2 size=       0kB time=01:48:49.26 bitrate=   0.0kbits/sframe=    2 fps=0.1 q=3.2 size=       0kB time=01:48:49.26 bitrate=   0.0kbits/sframe=    2 fps=0.1 q=3.2 size=       0kB time=01:48:49.26 bitrate=   0.0kbits/sframe=    2 fps=0.1 q=3.2 size=       0kB time=01:48:49.26 bitrate=   0.0kbits/sframe=    2 fps=0.1 q=3.2 size=       0kB time=01:48:49.26 bitrate=   0.0kbits/sframe=    2 fps=0.1 q=3.2 size=       0kB time=01:48:49.26 bitrate=   0.0kbits/sframe=    2 fps=0.1 q=3.2 size=       0kB time=01:48:49.26 bitrate=   0.0kbits/sframe=    2 fps=0.1 q=3.2 size=       0kB time=01:48:49.26 bitrate=   0.0kbits/sframe=    2 fps=0.1 q=3.2 size=       0kB time=01:48:49.26 bitrate=   0.0kbits/sframe=    2 fps=0.1 q=3.2 size=       0kB time=01:48:49.26 bitrate=   0.0kbits/sframe=    2 fps=0.1 q=3.2 size=       0kB time=01:48:49.26 bitrate=   0.0kbits/sframe=    2 fps=0.1 q=3.2 size=       0kB time=01:48:49.26 bitrate=   0.0kbits/sframe=    2 fps=0.1 q=3.2 size=       0kB time=01:48:49.26 bitrate=   0.0kbits/sframe=    2 fps=0.1 q=3.2 size=       0kB time=01:48:49.26 bitrate=   0.0kbits/sframe=    2 fps=0.1 q=3.2 size=       0kB time=01:48:49.26 bitrate=   0.0kbits/sframe=    2 fps=0.1 q=3.2 size=       0kB time=01:48:49.26 bitrate=   0.0kbits/sframe=    2 fps=0.1 q=3.2 size=       0kB time=01:48:49.26 bitrate=   0.0kbits/sframe=    2 fps=0.1 q=3.2 size=       0kB time=01:48:49.26 bitrate=   0.0kbits/sframe=    2 fps=0.1 q=3.2 size=       0kB time=01:48:49.26 bitrate=   0.0kbits/sframe=    2 fps=0.1 q=3.2 size=       0kB time=01:48:49.26 bitrate=   0.0kbits/sframe=    2 fps=0.1 q=3.2 size=       0kB time=01:48:49.26 bitrate=   0.0kbits/sframe=    2 fps=0.1 q=3.2 size=       0kB time=01:48:49.26 bitrate=   0.0kbits/sframe=    2 fps=0.1 q=3.2 size=       0kB time=01:48:49.26 bitrate=   0.0kbits/sframe=    2 fps=0.1 q=3.2 size=       0kB time=01:48:49.26 bitrate=   0.0kbits/sframe=    2 fps=0.1 q=3.2 size=       0kB time=01:48:49.26 bitrate=   0.0kbits/sframe=    2 fps=0.1 q=3.2 size=       0kB time=01:48:49.26 bitrate=   0.0kbits/sframe=    2 fps=0.1 q=3.2 size=       0kB time=01:48:49.26 bitrate=   0.0kbits/sframe=    2 fps=0.1 q=3.2 size=       0kB time=01:48:49.26 bitrate=   0.0kbits/s[video4linux2,v4l2 @ 0x56248fe0ab80] Thread message queue blocking; consider raising the thread_queue_size option (current value: 8)
[mpeg @ 0x56248fe0dfc0] buffer underflow st=0 bufi=0 size=36451
[mpeg @ 0x56248fe0dfc0] buffer underflow st=0 bufi=2020 size=36451
[mpeg @ 0x56248fe0dfc0] buffer underflow st=0 bufi=4061 size=36451
[mpeg @ 0x56248fe0dfc0] buffer underflow st=0 bufi=6102 size=36451
[mpeg @ 0x56248fe0dfc0] buffer underflow st=0 bufi=8143 size=36451
[mpeg @ 0x56248fe0dfc0] buffer underflow st=0 bufi=10184 size=36451
[mpeg @ 0x56248fe0dfc0] buffer underflow st=0 bufi=12225 size=36451
[mpeg @ 0x56248fe0dfc0] buffer underflow st=0 bufi=14266 size=36451
[mpeg @ 0x56248fe0dfc0] buffer underflow st=0 bufi=16307 size=36451
[mpeg @ 0x56248fe0dfc0] buffer underflow st=0 bufi=18348 size=36451
[mpeg @ 0x56248fe0dfc0] buffer underflow st=0 bufi=20389 size=36451
[mpeg @ 0x56248fe0dfc0] buffer underflow st=0 bufi=22430 size=36451
[mpeg @ 0x56248fe0dfc0] buffer underflow st=0 bufi=24471 size=36451
[mpeg @ 0x56248fe0dfc0] buffer underflow st=0 bufi=26512 size=36451
[mpeg @ 0x56248fe0dfc0] buffer underflow st=0 bufi=28553 size=36451
[mpeg @ 0x56248fe0dfc0] buffer underflow st=0 bufi=30594 size=36451
[mpeg @ 0x56248fe0dfc0] buffer underflow st=0 bufi=32635 size=36451
[mpeg @ 0x56248fe0dfc0] buffer underflow st=0 bufi=34676 size=36451
frame=    2 fps=0.1 q=2.0 Lsize=    1470kB time=01:48:49.30 bitrate=   1.8kbits/s speed= 221x    
video:63kB audio:1388kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 1.314351%
Exiting normally, received signal 2.


    


    what I would ideally like is just a fairly raw 2ch stereo "dump" of what comes through the capture card.

    


    As always, I super appreciate any advice

    


  • ffmpeg separate images from %3.png format

    15 juillet 2020, par Alexander Wilkinson

    I want to feed an input -i input%3.png into a filter graph and then use those inputs in a -filter_complex like I normally would with [x:v] or [0:v:x] where x is the index. Both of those don't work, throwing errors like Invalid file index 1 in filtergraph description or stream specifier :v:1 in ... matches no stream

    


    Edit : The log and command, as requested.
ffmpeg -i background.mkv -i comment%3d.png -filter_complex_script filter_complex.txt background-comments.mkv
The filter graph is shown in full below in the error message, but the gist is :
[0:v][1:v] overlay=0:0:enable='background(t,0,1)' [tmp0]; [tmp0][2:v] overlay=0:0:enable='background(t,1,2)' [tmp1]; [tmp1] ...

    


      built with gcc 9.3.1 (GCC) 20200523
  configuration: --enable-gpl --enable-version3 --enable-sdl2 --enable-fontconfig --enable-gnutls --enable-iconv --enable-libass --enable-libdav1d --enable-libbluray --enable-libfreetype --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-libopus --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libsrt --enable-libtheora --enable-libtwolame --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxml2 --enable-libzimg --enable-lzma --enable-zlib --enable-gmp --enable-libvidstab --enable-libvmaf --enable-libvorbis --enable-libvo-amrwbenc --enable-libmysofa --enable-libspeex --enable-libxvid --enable-libaom --disable-w32threads --enable-libmfx --enable-ffnvcodec --enable-cuda-llvm --enable-cuvid --enable-d3d11va --enable-nvenc --enable-nvdec --enable-dxva2 --enable-avisynth --enable-libopenmpt --enable-amf
  libavutil      56. 50.100 / 56. 50.100
  libavcodec     58. 90.100 / 58. 90.100
  libavformat    58. 44.100 / 58. 44.100
  libavdevice    58.  9.103 / 58.  9.103
  libavfilter     7. 84.100 /  7. 84.100
  libswscale      5.  6.101 /  5.  6.101
  libswresample   3.  6.100 /  3.  6.100
  libpostproc    55.  6.100 / 55.  6.100
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'Background\background.mkv':
  Metadata:
    major_brand     : mp42
    minor_version   : 0
    compatible_brands: mp41isom
    creation_time   : 2020-07-14T15:38:36.000000Z
  Duration: 00:01:42.49, start: 0.000000, bitrate: 17469 kb/s
    Stream #0:0(und): Video: h264 (Main) (avc1 / 0x31637661), yuv420p, 1920x1080 [SAR 1:1 DAR 16:9], 17355 kb/s, 25 fps, 25 tbr, 25k tbn, 50 tbc (default)
    Metadata:
      creation_time   : 2020-07-14T15:38:36.000000Z
      handler_name    : VideoHandler
      encoder         : AVC Coding
    Stream #0:1(und): Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz, stereo, fltp, 117 kb/s (default)
    Metadata:
      creation_time   : 2020-07-14T15:38:36.000000Z
      handler_name    : SoundHandler
Input #1, image2, from 'Working\comment%3d.png':
  Duration: 00:00:03.56, start: 0.000000, bitrate: N/A
    Stream #1:0: Video: png, rgba(pc), 1920x1080, 25 fps, 25 tbr, 25 tbn, 25 tbc
Stream specifier ':v:1' in filtergraph description [0:v][1:v:1] overlay=0:0:enable='between(t,0,4.464)' [tmp0]; [tmp0][1:v:2] overlay=0:0:enable='between(t,4.464,6.456)' [tmp1]; [tmp1][1:v:3] overlay=0:0:enable='between(t,6.456,12.120000000000001)' [tmp2]; [tmp2][1:v:4] overlay=0:0:enable='between(t,12.120000000000001,15.96)' [tmp3]; [tmp3][1:v:5] overlay=0:0:enable='between(t,15.96,22.224)' [tmp4]; [tmp4][1:v:6] overlay=0:0:enable='between(t,22.224,30.096)' [tmp5]; [tmp5][1:v:7] overlay=0:0:enable='between(t,30.096,36.264)' [tmp6]; [tmp6][1:v:8] overlay=0:0:enable='between(t,36.264,44.80800000000001)' [tmp7]; [tmp7][1:v:9] overlay=0:0:enable='between(t,44.80800000000001,51.864000000000004)' [tmp8]; [tmp8][1:v:10] overlay=0:0:enable='between(t,51.864000000000004,55.776)' [tmp9]; [tmp9][1:v:11] overlay=0:0:enable='between(t,55.776,61.008)' [tmp10]; [tmp10][1:v:12] overlay=0:0:enable='between(t,61.008,66.24000000000001)' [tmp11]; [tmp11][1:v:13] overlay=0:0:enable='between(t,66.24000000000001,73.34400000000001)' [tmp12]; [tmp12][1:v:14] overlay=0:0:enable='between(t,73.34400000000001,84.888)' [tmp13]; [tmp13][1:v:15] overlay=0:0:enable='between(t,84.888,89.52000000000001)' [tmp14]; [tmp14][1:v:16] overlay=0:0:enable='between(t,89.52000000000001,99.04800000000002)' [tmp15]; [tmp15][1:v:17] overlay=0:0:enable='between(t,99.04800000000002,104.97600000000001)' [tmp16]; [tmp16][1:v:18] overlay=0:0:enable='between(t,104.97600000000001,112.53600000000002)' [tmp17]; [tmp17][1:v:19] overlay=0:0:enable='between(t,112.53600000000002,116.49600000000001)' [tmp18]; [tmp18][1:v:20] overlay=0:0:enable='between(t,116.49600000000001,121.2)' [tmp19]; [tmp19][1:v:21] overlay=0:0:enable='between(t,121.2,121.92)' [tmp20]; [tmp20][1:v:22] overlay=0:0:enable='between(t,121.92,126.768)' [tmp21]; [tmp21][1:v:23] overlay=0:0:enable='between(t,126.768,134.976)' [tmp22]; [tmp22][1:v:24] overlay=0:0:enable='between(t,134.976,137.328)' [tmp23]; [tmp23][1:v:25] overlay=0:0:enable='between(t,137.328,145.68)' [tmp24]; [tmp24][1:v:26] overlay=0:0:enable='between(t,145.68,152.376)' [tmp25]; [tmp25][1:v:27] overlay=0:0:enable='between(t,152.376,158.544)' [tmp26]; [tmp26][1:v:28] overlay=0:0:enable='between(t,158.544,165.38400000000001)' [tmp27]; [tmp27][1:v:29] overlay=0:0:enable='between(t,165.38400000000001,166.22400000000002)' [tmp28]; [tmp28][1:v:30] overlay=0:0:enable='between(t,166.22400000000002,166.94400000000002)' [tmp29]; [tmp29][1:v:31] overlay=0:0:enable='between(t,166.94400000000002,167.85600000000002)' [tmp30]; [tmp30][1:v:32] overlay=0:0:enable='between(t,167.85600000000002,173.23200000000003)' [tmp31]; [tmp31][1:v:33] overlay=0:0:enable='between(t,173.23200000000003,178.72800000000004)' [tmp32]; [tmp32][1:v:34] overlay=0:0:enable='between(t,178.72800000000004,185.18400000000003)' [tmp33]; [tmp33][1:v:35] overlay=0:0:enable='between(t,185.18400000000003,186.00000000000003)' [tmp34]; [tmp34][1:v:36] overlay=0:0:enable='between(t,186.00000000000003,191.73600000000002)' [tmp35]; [tmp35][1:v:37] overlay=0:0:enable='between(t,191.73600000000002,196.39200000000002)' [tmp36]; [tmp36][1:v:38] overlay=0:0:enable='between(t,196.39200000000002,200.88000000000002)' [tmp37]; [tmp37][1:v:39] overlay=0:0:enable='between(t,200.88000000000002,203.64000000000001)' [tmp38]; [tmp38][1:v:40] overlay=0:0:enable='between(t,203.64000000000001,204.36)' [tmp39]; [tmp39][1:v:41] overlay=0:0:enable='between(t,204.36,209.328)' [tmp40]; [tmp40][1:v:42] overlay=0:0:enable='between(t,209.328,210.168)' [tmp41]; [tmp41][1:v:43] overlay=0:0:enable='between(t,210.168,210.888)' [tmp42]; [tmp42][1:v:44] overlay=0:0:enable='between(t,210.888,213.48000000000002)' [tmp43]; [tmp43][1:v:45] overlay=0:0:enable='between(t,213.48000000000002,214.20000000000002)' [tmp44]; [tmp44][1:v:46] overlay=0:0:enable='between(t,214.20000000000002,218.376)' [tmp45]; [tmp45][1:v:47] overlay=0:0:enable='between(t,218.376,220.704)' [tmp46]; [tmp46][1:v:48] overlay=0:0:enable='between(t,220.704,222.84)' [tmp47]; [tmp47][1:v:49] overlay=0:0:enable='between(t,222.84,226.992)' [tmp48]; [tmp48][1:v:50] overlay=0:0:enable='between(t,226.992,227.832)' [tmp49]; [tmp49][1:v:51] overlay=0:0:enable='between(t,227.832,231.28799999999998)' [tmp50]; [tmp50][1:v:52] overlay=0:0:enable='between(t,231.28799999999998,233.04)' [tmp51]; [tmp51][1:v:53] overlay=0:0:enable='between(t,233.04,234.26399999999998)' [tmp52]; [tmp52][1:v:54] overlay=0:0:enable='between(t,234.26399999999998,234.98399999999998)' [tmp53]; [tmp53][1:v:55] overlay=0:0:enable='between(t,234.98399999999998,237.04799999999997)' [tmp54]; [tmp54][1:v:56] overlay=0:0:enable='between(t,237.04799999999997,237.88799999999998)' [tmp55]; [tmp55][1:v:57] overlay=0:0:enable='between(t,237.88799999999998,238.60799999999998)' [tmp56]; [tmp56][1:v:58] overlay=0:0:enable='between(t,238.60799999999998,244.99199999999996)' [tmp57]; [tmp57][1:v:59] overlay=0:0:enable='between(t,244.99199999999996,247.19999999999996)' [tmp58]; [tmp58][1:v:60] overlay=0:0:enable='between(t,247.19999999999996,251.56799999999996)' [tmp59]; [tmp59][1:v:61] overlay=0:0:enable='between(t,251.56799999999996,253.87199999999996)' [tmp60]; [tmp60][1:v:62] overlay=0:0:enable='between(t,253.87199999999996,254.59199999999996)' [tmp61]; [tmp61][1:v:63] overlay=0:0:enable='between(t,254.59199999999996,255.76799999999994)' [tmp62]; [tmp62][1:v:64] overlay=0:0:enable='between(t,255.76799999999994,258.21599999999995)' [tmp63]; [tmp63][1:v:65] overlay=0:0:enable='between(t,258.21599999999995,259.0559999999999)' [tmp64]; [tmp64][1:v:66] overlay=0:0:enable='between(t,259.0559999999999,259.77599999999995)' [tmp65]; [tmp65][1:v:67] overlay=0:0:enable='between(t,259.77599999999995,266.352)' [tmp66]; [tmp66][1:v:68] overlay=0:0:enable='between(t,266.352,268.008)' [tmp67]; [tmp67][1:v:69] overlay=0:0:enable='between(t,268.008,270.69599999999997)' [tmp68]; [tmp68][1:v:70] overlay=0:0:enable='between(t,270.69599999999997,276.74399999999997)' [tmp69]; [tmp69][1:v:71] overlay=0:0:enable='between(t,276.74399999999997,277.58399999999995)' [tmp70]; [tmp70][1:v:72] overlay=0:0:enable='between(t,277.58399999999995,278.304)' [tmp71]; [tmp71][1:v:73] overlay=0:0:enable='between(t,278.304,279.43199999999996)' [tmp72]; [tmp72][1:v:74] overlay=0:0:enable='between(t,279.43199999999996,282.50399999999996)' [tmp73]; [tmp73][1:v:75] overlay=0:0:enable='between(t,282.50399999999996,283.34399999999994)' [tmp74]; [tmp74][1:v:76] overlay=0:0:enable='between(t,283.34399999999994,284.06399999999996)' [tmp75]; [tmp75][1:v:77] overlay=0:0:enable='between(t,284.06399999999996,285.19199999999995)' [tmp76]; [tmp76][1:v:78] overlay=0:0:enable='between(t,285.19199999999995,287.376)' [tmp77]; [tmp77][1:v:79] overlay=0:0:enable='between(t,287.376,292.008)' [tmp78]; [tmp78][1:v:80] overlay=0:0:enable='between(t,292.008,297.47999999999996)' [tmp79]; [tmp79][1:v:81] overlay=0:0:enable='between(t,297.47999999999996,298.84799999999996)' [tmp80]; [tmp80][1:v:82] overlay=0:0:enable='between(t,298.84799999999996,302.544)' [tmp81]; [tmp81][1:v:83] overlay=0:0:enable='between(t,302.544,303.38399999999996)' [tmp82]; [tmp82][1:v:84] overlay=0:0:enable='between(t,303.38399999999996,304.104)' [tmp83]; [tmp83][1:v:85] overlay=0:0:enable='between(t,304.104,309.47999999999996)' [tmp84]; [tmp84][1:v:86] overlay=0:0:enable='between(t,309.47999999999996,312.47999999999996)' [tmp85]; [tmp85][1:v:87] overlay=0:0:enable='between(t,312.47999999999996,318.62399999999997)' [tmp86]; [tmp86][1:v:88] overlay=0:0:enable='between(t,318.62399999999997,323.688)' [tmp87]; [tmp87][1:v:89] overlay=0:0:enable='between(t,323.688,325.392)' matches no streams.```


    


  • How to get frames from HDR video in scRGB color space ?

    5 mars 2018, par Виталий Синявский

    I want to create a simple video player that will show HDR video on HDR TV. For example, this "LG Chess HDR" video. It is encoded with HEVC, its bit depth is 10 bit, pixel format is YUV420P10LE and it has metadata abount BT2020 color space and PQ transfer function.

    In this NVIDIA article I found the next :

    The display driver takes the scRGB back buffer, and converts it to the
    standard expected by the display presently connected. In general, this
    means converting the color space from sRGB primaries to BT. 2020
    primaries, scaling to an appropriate level, and encoding with a
    mechanism like PQ. Also, possibly performing conversions like RGB to
    YCC if that display connection requires it.

    It means that my player should render pixels in the scRGB color space (linear encoding, sRGB primaries, full range is -0.5 through just less than +7.5). So I need to get frames from the source video in this color space somehow, preferably in FP16 pixel format (half float, 16 bits per one color channel). I come to the following simple pipeline to render videos to HDR :

    source HDR video in BT2020 color space with applied PQ -> [some video library] ->
    -> video frames with colors in scRGB color space -> [my program] ->
    -> rendered video on HDR TV with applied conversions by display driver

    I’m trying to use FFmpeg as this library and do not understand how to get frames from the source HDR video in scRGB color space.

    I use sws_scale FFmpeg method now to get frames and know about filters API. But I did not found any information and help about how to transparantly get frames in scRGB using these functionality without parsing metadata for all source videos and create custom video filters for them.

    Please, tell me what I can do to get frames in the scRGB color space using FFmpeg. Can someone tell other libraries with which I can do it ?