Recherche avancée

Médias (1)

Mot : - Tags -/biomaping

Autres articles (16)

  • 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 (...)

  • Submit bugs and patches

    13 avril 2011

    Unfortunately a software is never perfect.
    If you think you have found a bug, report it using our ticket system. Please to help us to fix it by providing the following information : the browser you are using, including the exact version as precise an explanation as possible of the problem if possible, the steps taken resulting in the problem a link to the site / page in question
    If you think you have solved the bug, fill in a ticket and attach to it a corrective patch.
    You may also (...)

  • Submit enhancements and plugins

    13 avril 2011

    If you have developed a new extension to add one or more useful features to MediaSPIP, let us know and its integration into the core MedisSPIP functionality will be considered.
    You can use the development discussion list to request for help with creating a plugin. As MediaSPIP is based on SPIP - or you can use the SPIP discussion list SPIP-Zone.

Sur d’autres sites (2018)

  • "matches no streams" issue in ffmpeg complex_filter

    17 décembre 2023, par Nimderp

    i'm my goal is to do this with ffmpeg complex_filters :

    


    I have a background 1080 vid and like to slide in some overlay graphics and texts. So my input is the vid and 2 jpg files. The files should flide in to a position over the background-video, fade in in the same time, stay a few seconds and then fade out. Additionally, a text should be displayed.

    


    My main problem is, that it works with only one input jpg, but when i add the second block i got a thar error here :

    


    [fc#0 @ 000001bf9d0d0c00] Stream specifier 'merge1C:v' in filtergraph description [1:v]format=pix_fmts=yuva420p,scale=765:1083,fade=in:st=0:d=1:alpha=1 [overlay1A], [0:v][overlay1A] overlay=x='if(lte(-w+(t)*1065,300),-w+(t)*1065,300)':y=300:enable='between(t,0,1):shortest=1'[merge1A]; [1:v]format=pix_fmts=yuva420p,scale=765:1083,fade=out:st=3:d=1:alpha=1 [overlay1B], [merge1A][overlay1B] overlay=300:300:enable='between(t,1,4)':shortest=1[merge1B]; [merge1B] drawtext=alpha=if(lt(t\,0.3)\,0\,if(lt(t\,1.3)\,(t-0.3)/1\,if(lt(t\,3)\,1\,if(lt(t\,4)\,(1-(t-3))/1\,0)))):fontcolor=ffffff:fontsize=64:text=test:x=200:y=200 [merge1C]; [2:v]format=pix_fmts=yuva420p,scale=765:1083,fade=in:st=4:d=1:alpha=1 [overlay2A], [merge1C:v][overlay2A] overlay=x='if(lte(-w+(t)*1065,300),-w+(t)*1065,300)':y=300:enable='between(t,4,5):shortest=1'[merge2A]; [2:v]format=pix_fmts=yuva420p,scale=765:1083,fade=out:st=7:d=1:alpha=1 [overlay2B], [merge2A][overlay2B] overlay=300:300:enable='between(t,5,8)':shortest=1[merge2B]; [merge2B] drawtext=alpha=if(lt(t\,4.3)\,0\,if(lt(t\,5.3)\,(t-4.3)/1\,if(lt(t\,7)\,1\,if(lt(t\,8)\,(1-(t-7))/1\,0)))):fontcolor=ffffff:fontsize=64:text=test:x=200:y=200 [merge2C]; matches no streams.
Error initializing complex filters: Invalid argument


    


    My ffmpeg command looks like this :

    


    ffmpeg -i concat-video.mp4  -loop 1 -i card1.jpg -loop 1 -i card2.jpg -filter_complex "[1:v]format=pix_fmts=yuva420p,scale=765:1083,fade=in:st=0:d=1:alpha=1 [overlay1A], [0:v][overlay1A] overlay=x='if(lte(-w+(t)*1065,300),-w+(t)*1065,300)':y=300:enable='between(t,0,1):shortest=1'[merge1A]; [1:v]format=pix_fmts=yuva420p,scale=765:1083,fade=out:st=3:d=1:alpha=1 [overlay1B], [merge1A][overlay1B] overlay=300:300:enable='between(t,1,4)':shortest=1[merge1B]; [merge1B] drawtext=alpha=if(lt(t\,0.3)\,0\,if(lt(t\,1.3)\,(t-0.3)/1\,if(lt(t\,3)\,1\,if(lt(t\,4)\,(1-(t-3))/1\,0)))):fontcolor=ffffff:fontsize=64:text=test:x=200:y=200 [merge1C]; [2:v]format=pix_fmts=yuva420p,scale=765:1083,fade=in:st=4:d=1:alpha=1 [overlay2A], [merge1C:v][overlay2A] overlay=x='if(lte(-w+(t)*1065,300),-w+(t)*1065,300)':y=300:enable='between(t,4,5):shortest=1'[merge2A]; [2:v]format=pix_fmts=yuva420p,scale=765:1083,fade=out:st=7:d=1:alpha=1 [overlay2B], [merge2A][overlay2B] overlay=300:300:enable='between(t,5,8)':shortest=1[merge2B]; [merge2B] drawtext=alpha=if(lt(t\,4.3)\,0\,if(lt(t\,5.3)\,(t-4.3)/1\,if(lt(t\,7)\,1\,if(lt(t\,8)\,(1-(t-7))/1\,0)))):fontcolor=ffffff:fontsize=64:text=test:x=200:y=200 [merge2C];" -pix_fmt yuva420p -map "[merge2C]" output.mp4


    


    or here a little bit formatted for better readability :

    


    ffmpeg -i concat-video.mp4  -loop 1 -i card1.jpg -loop 1 -i card2.jpg -filter_complex "

# start of block for first input jpg
[1:v]format=pix_fmts=yuva420p,scale=765:1083,fade=in:st=0:d=1:alpha=1 [overlay1A],
[0:v][overlay1A] overlay=x='if(lte(-w+(t)*1065,300),-w+(t)*1065,300)':y=300:enable='between(t,0,1):shortest=1'[merge1A];
[1:v]format=pix_fmts=yuva420p,scale=765:1083,fade=out:st=3:d=1:alpha=1 [overlay1B],
[merge1A][overlay1B] overlay=300:300:enable='between(t,1,4)':shortest=1[merge1B];
[merge1B] drawtext=alpha=if(lt(t\,0.3)\,0\,if(lt(t\,1.3)\,(t-0.3)/1\,if(lt(t\,3)\,1\,if(lt(t\,4)\,(1-(t-3))/1\,0)))):fontcolor=ffffff:fontsize=64:text=test:x=200:y=200 [merge1C];

# start of block for second input jpg
[2:v]format=pix_fmts=yuva420p,scale=765:1083,fade=in:st=4:d=1:alpha=1 [overlay2A],
[merge1C:v][overlay2A] overlay=x='if(lte(-w+(t)*1065,300),-w+(t)*1065,300)':y=300:enable='between(t,4,5):shortest=1'[merge2A];
[2:v]format=pix_fmts=yuva420p,scale=765:1083,fade=out:st=7:d=1:alpha=1 [overlay2B],
[merge2A][overlay2B] overlay=300:300:enable='between(t,5,8)':shortest=1[merge2B];
[merge2B] drawtext=alpha=if(lt(t\,4.3)\,0\,if(lt(t\,5.3)\,(t-4.3)/1\,if(lt(t\,7)\,1\,if(lt(t\,8)\,(1-(t-7))/1\,0)))):fontcolor=ffffff:fontsize=64:text=test:x=200:y=200 [merge2C];

" 
-pix_fmt yuva420p -map "[merge2C]" output.mp4


    


    Hope somebody can give me a hint, it's driving me nuts :D

    


    I tried several syntax changes, but always got an error.

    


    The issue seems to be the chain between the output "merge1C" (which includes the fade, slide, text, and fadout of the first jpg overlay) to the second block for the other jpg.

    


  • Trim Overlay memory issue

    4 juillet 2019, par Костянтин Тюртюбек

    Greetings fellow FFmpeg users,

    We are experiencing a strange memory leek issue (or maybe just doing something really wrong) and need some directions on how to debug it.

    What are we trying to achieve :

    Process a conference recording that includes multiple user streams, each in its own separate file (all files are mp4/opus).

    • Make a dynamic scene from a set of recordings, based on their volume level at set point of time.
    • The scene must include two parts : smaller grid of all the participants videos, bigger grid of currently talking people. Something like Google Hangouts or Skype does in their applications.

    What went wrong :

    • Memory footprint started unpredictably skyrocketing for some reason during montage

    What are we using :

    First FFmpeg command that reads filter_complex_script from file and adds drawbox as a talking indication on each video source file, when its volume is over a set threshold.

    Second FFmpeg command that reads filter_complex_script from file and :

    • takes an input file (using 0:v),
    • trims a part of it, when the user was talking,
    • scales it according to the amount of concurrently talking users,
    • pads to that resolution (in case if user video is smaller)

    filter_complex command using SELECT :

    [0]select='between(t, 1, 2)',  scale=762:428:force_original_aspect_ratio=decrease,pad=763:429:(ow-iw)/2:(oh-ih)/2[stream-0-workspace-scale-1-1];

    [block-2-grid][stream-0-workspace-scale-1-1]
    overlay=repeatlast=1:shortest=0:x=10:y=316:enable='between(t, 1, 2)'
    [block-2-workspace-1];

    filter_complex command using TRIM :

    [input-file-tag]
    trim=start=#{start}:duration=#{duration},
    setpts=PTS-STARTPTS,
    scale=#{w-1}:#{h-1}:force_original_aspect_ratio=decrease,
    pad=#{w}:#{h}:(ow-iw)/2:(oh-ih)/2
    [input-file-trimmed];

    [previous-block-tag]
    overlay=repeatlast=1:shortest=0:x=#{x}:y=#{y}:enable='between(t, #{from}, #{to})'
    [next-block-tag]

    We have tried going the TRIM command way, tried the SELECT command way. Problem is, both take insane amounts of ram during execution.

    Examples and more description :

    • Lets assume that only two of the five inputs have the volume above a
      certain volume threshold from second two to five.

    • We are trying to display only them according to some overlay math.

    • Cropped commands in human readable form : https://pastebin.com/YwrnRgnA

    • Full FFmpeg command is way too long to read through, that is the reason we started using filter_complex_script and loading it from file

    • Sometimes one block of video conference may have up to 300+
      intermediate overlays, which leads to the memory issue described. We were expecting the memory footprint to be similar to the amount of input files or maybe two-to-three times higher. However, we reach 15Gb or RAM usage withing the first two minutes of montage, while the input files are no bigger than 200Mb.

    What have we done in terms of debugging :

    • We had been using split at first, but quickly figured out that split
      does in fact copy each input and load it in memory, so we had to
      ditch that approach.

    • As matter of fact we moved to using the input files themselves, so
      the problem lies elsewhere.

    • To clarify, we have split our ffmpeg command into two separate ones.
      First one overlays the talking box animation using drawbox as well as
      user avatar and name. It outputs new video files which we than use in
      the command described above as direct input files tags, like 0:v, 1:v
      etc.

    Thank you for taking time reading through our issue.
    We sure hope that you can help us narrow it down.
    Please feel free to ask for any additional information or descriptions if needed.

    Have a good day !

  • FFMpeg-PHP Headers Not Found on CentOS / cpanel

    10 juin 2017, par Colter

    I have looked all over for directions on how to install. I have followed the guide at ffmpeg(dot)org/wiki/CompilationGuide/Centos FFMpeg works fine as I have been able to convert an mp3 and mp4. My issue is when I try to setup FFMpeg-PHP. When I run ./configure —prefix=/usr —enable-shared —with-php-config=/opt/cpanel/ea-php71/root/usr/bin/php-config ffmpeg-php I am getting two errors.

    • configure : WARNING : You will need re2c 0.13.4 or later if you want to regenerate PHP parsers.
    • checking for ffmpeg headers...
      configure : error : ffmpeg headers not found. Make sure ffmpeg is compiled as shared libraries using the —enable-shared option

    FFMpeg Info

    ffmpeg version 2.6.8 Copyright (c) 2000-2016 the FFmpeg developers
    built with gcc 4.4.7 (GCC) 20120313 (Red Hat 4.4.7-16)

    FFMpeg-PHP Output

    checking for grep that handles long lines and -e... /bin/grep
    checking for egrep... /bin/grep -E
    checking for a sed that does not truncate output... /bin/sed
    checking for cc... cc
    checking for C compiler default output file name... a.out
    checking whether the C compiler works... yes
    checking whether we are cross compiling... no
    checking for suffix of executables...
    checking for suffix of object files... o
    checking whether we are using the GNU C compiler... yes
    checking whether cc accepts -g... yes
    checking for cc option to accept ISO C89... none needed
    checking how to run the C preprocessor... cc -E
    checking for icc... no
    checking for suncc... no
    checking whether cc understands -c and -o together... yes
    checking for system library directory... lib
    checking if compiler supports -R... no
    checking if compiler supports -Wl,-rpath,... yes
    checking build system type... x86_64-unknown-linux-gnu
    checking host system type... x86_64-unknown-linux-gnu
    checking target system type... x86_64-unknown-linux-gnu
    checking for PHP prefix... /opt/cpanel/ea-php71/root/usr
    checking for PHP includes... -I/opt/cpanel/ea-php71/root/usr/include/php -I/opt/cpanel/ea-php71/root/usr/include/php/main -I/opt/cpanel/ea-php71/root/usr/include/php/TSRM -I/opt/cpanel/ea-php71/root/usr/include/php/Zend -I/opt/cpanel/ea-php71/root/usr/include/php/ext -I/opt/cpanel/ea-php71/root/usr/include/php/ext/date/lib
    checking for PHP extension directory... /opt/cpanel/ea-php71/root/usr/lib64/php/modules
    checking for PHP installed headers prefix... /opt/cpanel/ea-php71/root/usr/include/php
    checking if debug is enabled... no
    checking if zts is enabled... no
    checking for re2c... no
    configure: WARNING: You will need re2c 0.13.4 or later if you want to regenerate PHP parsers.
    checking for gawk... gawk
    checking for ffmpeg support... yes, shared
    checking whether to force gd support in ffmpeg-php... no
    checking for ffmpeg headers...
    configure: error: ffmpeg headers not found. Make sure ffmpeg is compiled as shared libraries using the --enable-shared option

    I am not sure if this is related but I am also having an issue running yum update.

    root@cvp259 [/]# yum update
    Loaded plugins: fastestmirror, tsflags, universal-hooks
    Setting up Update Process
    Loading mirror speeds from cached hostfile
    * EA4: 67.222.0.10
    * cpanel-addons-production-feed: 67.222.0.10
    * base: centos.unixheads.org
    * epel: pubmirror2.math.uh.edu
    * extras: repos.dfw.quadranet.com
    * nux-dextop: mirror.li.nux.ro
    * updates: mirror.steadfast.net
    Resolving Dependencies
    --> Running transaction check
    ---> Package nasm.x86_64 0:2.07-7.el6 will be updated
    ---> Package nasm.x86_64 0:2.13.01-0.fc24 will be an update
    --> Processing Dependency: libc.so.6(GLIBC_2.14)(64bit) for package: nasm-2.13.01-0.fc24.x86_64
    --> Finished Dependency Resolution
    Error: Package: nasm-2.13.01-0.fc24.x86_64 (nasm)
              Requires: libc.so.6(GLIBC_2.14)(64bit)
    You could try using --skip-broken to work around the problem
    You could try running: rpm -Va --nofiles --nodigest

    Any help would be appreciated.