Recherche avancée

Médias (91)

Autres articles (64)

  • Demande de création d’un canal

    12 mars 2010, par

    En fonction de la configuration de la plateforme, l’utilisateur peu avoir à sa disposition deux méthodes différentes de demande de création de canal. La première est au moment de son inscription, la seconde, après son inscription en remplissant un formulaire de demande.
    Les deux manières demandent les mêmes choses fonctionnent à peu près de la même manière, le futur utilisateur doit remplir une série de champ de formulaire permettant tout d’abord aux administrateurs d’avoir des informations quant à (...)

  • Diogene : création de masques spécifiques de formulaires d’édition de contenus

    26 octobre 2010, par

    Diogene est un des plugins ? SPIP activé par défaut (extension) lors de l’initialisation de MediaSPIP.
    A quoi sert ce plugin
    Création de masques de formulaires
    Le plugin Diogène permet de créer des masques de formulaires spécifiques par secteur sur les trois objets spécifiques SPIP que sont : les articles ; les rubriques ; les sites
    Il permet ainsi de définir en fonction d’un secteur particulier, un masque de formulaire par objet, ajoutant ou enlevant ainsi des champs afin de rendre le formulaire (...)

  • Emballe médias : à quoi cela sert ?

    4 février 2011, par

    Ce plugin vise à gérer des sites de mise en ligne de documents de tous types.
    Il crée des "médias", à savoir : un "média" est un article au sens SPIP créé automatiquement lors du téléversement d’un document qu’il soit audio, vidéo, image ou textuel ; un seul document ne peut être lié à un article dit "média" ;

Sur d’autres sites (5450)

  • FFMPEG Inverts colors when converting tiff pictures to png

    1er juin 2021, par Mounia Jaiti

    We need to convert thousands of tiff pictures to png. To accomplish that we are using FFMPEG. We've noticed recently that for very few of the converted files (in png), the colors are inverted : the input tiff file is all black and white (a technical drawing in black with a white background), and the output png file is white and black (the drawing becomes white and the background becomes black). Of course we don't want that, we need the colors to stay the same.

    


    Here is the command we are using :

    


    ffmpeg -y -v warning -i in_file.tif out_file.png


    


    We've tested the 'negate' parameter on those files, and the pictures are correctly converted. But we can't apply this parameter to all of the input tiff files.
Here is the command with the negate parameter :

    


    ffmpeg -y -v verbose -i input.tif -vf negate output.png


    


    The Code Java we're using :

    


                String ffmpegPath="/Users/user11/ffmpeg//ffmpeg";&#xA;            List<string> commandArgs = new ArrayList<string>();&#xA;            commandArgs.add(ffmpegPath);&#xA;            //overwrite output file if it exists&#xA;            commandArgs.add("-y");      &#xA;            commandArgs.add("-v");&#xA;            commandArgs.add("verbose");&#xA;            //set input file &#xA;            commandArgs.add("-i"); &#xA;            commandArgs.add(picture.getAbsolutePath());&#xA;            commandArgs.add(dest.getAbsolutePath());&#xA;            &#xA;            String cmd = "";&#xA;            for(String cmdArg : commandArgs) {&#xA;                cmd &#x2B;= cmdArg &#x2B; " ";&#xA;            }&#xA;&#xA;&#xA;</string></string>

    &#xA;

    Logs for tif having the bug :

    &#xA;

    &#xA;31, 2021 2:15:51 PM &#xA;INFO: Executing : /Users/user11/ffmpeg/ffmpeg -y -v verbose -i /Users/user11/ffmpeg/input.tif /Users/user11/ffmpeg/output.png &#xA;May 31, 2021 2:15:51 PM &#xA;INFO: ReencodePicture output: ffmpeg version 4.4-tessus  https://evermeet.cx/ffmpeg/  Copyright (c) 2000-2021 the FFmpeg developers&#xA;May 31, 2021 2:15:51 PM &#xA;INFO: ReencodePicture output:   built with Apple clang version 11.0.0 (clang-1100.0.33.17)&#xA;May 31, 2021 2:15:51 PM &#xA;INFO: ReencodePicture output:   configuration: --cc=/usr/bin/clang --prefix=/opt/ffmpeg --extra-version=tessus --enable-avisynth --enable-fontconfig --enable-gpl --enable-libaom --enable-libass --enable-libbluray --enable-libdav1d --enable-libfreetype --enable-libgsm --enable-libmodplug --enable-libmp3lame --enable-libmysofa --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenh264 --enable-libopenjpeg --enable-libopus --enable-librubberband --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libtheora --enable-libtwolame --enable-libvidstab --enable-libvmaf --enable-libvo-amrwbenc --enable-libvorbis --enable-libvpx --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxavs --enable-libxvid --enable-libzimg --enable-libzmq --enable-libzvbi --enable-version3 --pkg-config-flags=--static --disable-ffplay&#xA;May 31, 2021 2:15:51 PM &#xA;INFO: ReencodePicture output:   libavutil      56. 70.100 / 56. 70.100&#xA;May 31, 2021 2:15:51 PM &#xA;INFO: ReencodePicture output:   libavcodec     58.134.100 / 58.134.100&#xA;May 31, 2021 2:15:51 PM &#xA;INFO: ReencodePicture output:   libavformat    58. 76.100 / 58. 76.100&#xA;May 31, 2021 2:15:51 PM &#xA;INFO: ReencodePicture output:   libavdevice    58. 13.100 / 58. 13.100&#xA;May 31, 2021 2:15:51 PM &#xA;INFO: ReencodePicture output:   libavfilter     7.110.100 /  7.110.100&#xA;May 31, 2021 2:15:51 PM &#xA;INFO: ReencodePicture output:   libswscale      5.  9.100 /  5.  9.100&#xA;May 31, 2021 2:15:51 PM &#xA;INFO: ReencodePicture output:   libswresample   3.  9.100 /  3.  9.100&#xA;May 31, 2021 2:15:51 PM &#xA;INFO: ReencodePicture output:   libpostproc    55.  9.100 / 55.  9.100&#xA;May 31, 2021 2:15:51 PM &#xA;INFO: ReencodePicture output: [tiff_pipe @ 0x7fa7f6008200] parser not found for codec tiff, packets or times may be invalid.&#xA;May 31, 2021 2:15:51 PM &#xA;INFO: ReencodePicture output:     Last message repeated 1 times&#xA;May 31, 2021 2:15:51 PM &#xA;INFO: ReencodePicture output: Input #0, tiff_pipe, from &#x27;/Users/user11/ffmpeg/input.tif&#x27;:&#xA;May 31, 2021 2:15:51 PM &#xA;INFO: ReencodePicture output:   Duration: N/A, bitrate: N/A&#xA;May 31, 2021 2:15:51 PM &#xA;INFO: ReencodePicture output:   Stream #0:0: Video: tiff, 1 reference frame, monob, 2008x2481 [SAR 1:1 DAR 2008:2481], 25 fps, 25 tbr, 25 tbn, 25 tbc&#xA;May 31, 2021 2:15:51 PM &#xA;INFO: ReencodePicture output: Stream mapping:&#xA;May 31, 2021 2:15:51 PM &#xA;INFO: ReencodePicture output:   Stream #0:0 -> #0:0 (tiff (native) -> png (native))&#xA;May 31, 2021 2:15:51 PM &#xA;INFO: ReencodePicture output: Press [q] to stop, [?] for help&#xA;May 31, 2021 2:15:51 PM &#xA;INFO: ReencodePicture output: [graph 0 input from stream 0:0 @ 0x7fa7f4c08300] w:2008 h:2481 pixfmt:monob tb:1/25 fr:25/1 sar:1/1&#xA;May 31, 2021 2:15:51 PM &#xA;INFO: ReencodePicture output: Output #0, image2, to &#x27;/Users/user11/ffmpeg/output.png&#x27;:&#xA;May 31, 2021 2:15:51 PM &#xA;INFO: ReencodePicture output:   Metadata:&#xA;May 31, 2021 2:15:51 PM &#xA;INFO: ReencodePicture output:     encoder         : Lavf58.76.100&#xA;May 31, 2021 2:15:51 PM &#xA;INFO: ReencodePicture output:   Stream #0:0: Video: png, 1 reference frame, monob(progressive), 2008x2481 (0x0) [SAR 1:1 DAR 2008:2481], q=2-31, 200 kb/s, 25 fps, 25 tbn&#xA;May 31, 2021 2:15:51 PM &#xA;INFO: ReencodePicture output:     Metadata:&#xA;May 31, 2021 2:15:51 PM &#xA;INFO: ReencodePicture output:       encoder         : Lavc58.134.100 png&#xA;May 31, 2021 2:15:51 PM &#xA;INFO: ReencodePicture output: frame=    1 fps=0.0 q=0.0 size=N/A time=00:00:00.00 bitrate=N/A speed=   0x    &#xA;May 31, 2021 2:15:51 PM &#xA;INFO: ReencodePicture output: No more output streams to write to, finishing.&#xA;May 31, 2021 2:15:51 PM &#xA;INFO: ReencodePicture output: [AVIOContext @ 0x7fa7f4c14180] Statistics: 0 seeks, 1 writeouts&#xA;May 31, 2021 2:15:51 PM &#xA;INFO: ReencodePicture output: frame=    1 fps=0.0 q=-0.0 Lsize=N/A time=00:00:00.04 bitrate=N/A speed=1.31x    &#xA;May 31, 2021 2:15:51 PM &#xA;INFO: ReencodePicture output: video:37kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: unknown&#xA;May 31, 2021 2:15:51 PM &#xA;INFO: ReencodePicture output: Input file #0 (/Users/user11/ffmpeg/input.tif):&#xA;May 31, 2021 2:15:51 PM &#xA;INFO: ReencodePicture output:   Input stream #0:0 (video): 1 packets read (18100 bytes); 1 frames decoded; &#xA;May 31, 2021 2:15:51 PM &#xA;INFO: ReencodePicture output:   Total: 1 packets (18100 bytes) demuxed&#xA;May 31, 2021 2:15:51 PM &#xA;INFO: ReencodePicture output: Output file #0 (/Users/user11/ffmpeg/output.png):&#xA;May 31, 2021 2:15:51 PM &#xA;INFO: ReencodePicture output:   Output stream #0:0 (video): 1 frames encoded; 1 packets muxed (38013 bytes); &#xA;May 31, 2021 2:15:51 PM &#xA;INFO: ReencodePicture output:   Total: 1 packets (38013 bytes) muxed&#xA;May 31, 2021 2:15:51 PM &#xA;INFO: ReencodePicture output: [AVIOContext @ 0x7fa7f4f041c0] Statistics: 18100 bytes read, 0 seeks&#xA;May 31, 2021 2:15:51 PM &#xA;INFO: BinaryRepositoryHelper.convertPixTo ffmpeg Process returned : java.lang.UNIXProcess@27ddd392, ended with code 0, and returned in 160 ms, out=/Users/user11/ffmpeg/output.png exists=true&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;

    &#xA;

    So our questions are :

    &#xA;

      &#xA;
    1. Is there a way to identify the tiff files that will be converted to png with inverted colors ? So that we can know to which files the 'negate' parameter must be applied.
    2. &#xA;

    3. Are there any other FFMPEG parameter that we can use.
    4. &#xA;

    &#xA;

    This issue has been driving us mad for the last couple of days. Any help would be highly appreciated.&#xA;Thanks.

    &#xA;

    Example of Tif picture

    &#xA;

    https://drive.google.com/file/d/1U1a91gTk1gaJb-XAPavNq6UhmjWXZjbM/view?usp=sharing

    &#xA;

  • fluent-ffmpeg concatenate files ends up with wrong length

    24 juillet 2021, par Hugo Cox

    I have the following input file :

    &#xA;

    ffconcat version 1.0&#xA;file &#x27;../tmp/59bd6a7896654d0b0c00705f/vidR/intro.mp4&#x27; #0&#xA;file &#x27;../tmp/59bd6a7896654d0b0c00705f/vidR/out003.mp4&#x27; #1&#xA;file &#x27;../intersegment/intersegment_h264_3s_1920x1080_30fps.mp4&#x27; #2&#xA;file &#x27;../intersegment/intersegment_h264_3s_1920x1080_30fps.mp4&#x27; #2&#xA;file &#x27;../intersegment/intersegment_h264_3s_1920x1080_30fps.mp4&#x27; #2&#xA;file &#x27;../intersegment/intersegment_h264_3s_1920x1080_30fps.mp4&#x27; #2&#xA;file &#x27;../intersegment/intersegment_h264_3s_1920x1080_30fps.mp4&#x27; #2&#xA;file &#x27;../intersegment/paddingsegment_h264_0.6s_1920x1080_30fps.mp4&#x27; #2&#xA;file &#x27;../tmp/59bd6a7896654d0b0c00705f/vidR/out007.mp4&#x27; #3&#xA;file &#x27;../intersegment/intersegment_h264_3s_1920x1080_30fps.mp4&#x27; #4&#xA;file &#x27;../intersegment/intersegment_h264_3s_1920x1080_30fps.mp4&#x27; #4&#xA;file &#x27;../intersegment/intersegment_h264_3s_1920x1080_30fps.mp4&#x27; #4&#xA;file &#x27;../intersegment/intersegment_h264_3s_1920x1080_30fps.mp4&#x27; #4&#xA;file &#x27;../intersegment/intersegment_h264_3s_1920x1080_30fps.mp4&#x27; #4&#xA;file &#x27;../intersegment/intersegment_h264_3s_1920x1080_30fps.mp4&#x27; #4&#xA;file &#x27;../intersegment/intersegment_h264_3s_1920x1080_30fps.mp4&#x27; #4&#xA;file &#x27;../intersegment/paddingsegment_h264_1.6s_1920x1080_30fps.mp4&#x27; #4&#xA;file &#x27;../tmp/59bd6a7896654d0b0c00705f/vidR/out013.mp4&#x27; #5&#xA;file &#x27;../intersegment/intersegment_h264_3s_1920x1080_30fps.mp4&#x27; #6&#xA;file &#x27;../intersegment/intersegment_h264_3s_1920x1080_30fps.mp4&#x27; #6&#xA;file &#x27;../intersegment/intersegment_h264_3s_1920x1080_30fps.mp4&#x27; #6&#xA;file &#x27;../intersegment/intersegment_h264_3s_1920x1080_30fps.mp4&#x27; #6&#xA;file &#x27;../intersegment/intersegment_h264_3s_1920x1080_30fps.mp4&#x27; #6&#xA;file &#x27;../intersegment/paddingsegment_h264_1.6s_1920x1080_30fps.mp4&#x27; #6&#xA;file &#x27;../tmp/59bd6a7896654d0b0c00705f/vidR/out017.mp4&#x27; #7&#xA;file &#x27;../intersegment/intersegment_h264_3s_1920x1080_30fps.mp4&#x27; #8&#xA;file &#x27;../intersegment/intersegment_h264_3s_1920x1080_30fps.mp4&#x27; #8&#xA;file &#x27;../intersegment/intersegment_h264_3s_1920x1080_30fps.mp4&#x27; #8&#xA;file &#x27;../intersegment/intersegment_h264_3s_1920x1080_30fps.mp4&#x27; #8&#xA;file &#x27;../intersegment/intersegment_h264_3s_1920x1080_30fps.mp4&#x27; #8&#xA;file &#x27;../intersegment/paddingsegment_h264_0.6s_1920x1080_30fps.mp4&#x27; #8&#xA;file &#x27;../tmp/59bd6a7896654d0b0c00705f/vidR/out021.mp4&#x27; #9&#xA;file &#x27;../intersegment/intersegment_h264_3s_1920x1080_30fps.mp4&#x27; #10&#xA;file &#x27;../intersegment/intersegment_h264_3s_1920x1080_30fps.mp4&#x27; #10&#xA;file &#x27;../intersegment/intersegment_h264_3s_1920x1080_30fps.mp4&#x27; #10&#xA;file &#x27;../intersegment/intersegment_h264_3s_1920x1080_30fps.mp4&#x27; #10&#xA;file &#x27;../intersegment/intersegment_h264_3s_1920x1080_30fps.mp4&#x27; #10&#xA;file &#x27;../intersegment/paddingsegment_h264_1.6s_1920x1080_30fps.mp4&#x27; #10&#xA;file &#x27;../tmp/59bd6a7896654d0b0c00705f/vidR/out025.mp4&#x27; #11&#xA;file &#x27;../intersegment/intersegment_h264_3s_1920x1080_30fps.mp4&#x27; #12&#xA;file &#x27;../intersegment/intersegment_h264_3s_1920x1080_30fps.mp4&#x27; #12&#xA;file &#x27;../intersegment/intersegment_h264_3s_1920x1080_30fps.mp4&#x27; #12&#xA;file &#x27;../intersegment/paddingsegment_h264_0.6s_1920x1080_30fps.mp4&#x27; #12&#xA;file &#x27;../tmp/59bd6a7896654d0b0c00705f/vidR/out028.mp4&#x27; #13&#xA;file &#x27;../intersegment/intersegment_h264_3s_1920x1080_30fps.mp4&#x27; #14&#xA;file &#x27;../intersegment/intersegment_h264_3s_1920x1080_30fps.mp4&#x27; #14&#xA;file &#x27;../intersegment/intersegment_h264_3s_1920x1080_30fps.mp4&#x27; #14&#xA;file &#x27;../intersegment/intersegment_h264_3s_1920x1080_30fps.mp4&#x27; #14&#xA;file &#x27;../intersegment/intersegment_h264_3s_1920x1080_30fps.mp4&#x27; #14&#xA;file &#x27;../intersegment/paddingsegment_h264_1.6s_1920x1080_30fps.mp4&#x27; #14&#xA;file &#x27;../tmp/59bd6a7896654d0b0c00705f/vidR/out032.mp4&#x27; #15&#xA;file &#x27;../intersegment/intersegment_h264_3s_1920x1080_30fps.mp4&#x27; #16&#xA;file &#x27;../intersegment/paddingsegment_h264_0.6s_1920x1080_30fps.mp4&#x27; #16&#xA;file &#x27;../tmp/59bd6a7896654d0b0c00705f/vidR/out034.mp4&#x27; #17&#xA;file &#x27;../intersegment/intersegment_h264_3s_1920x1080_30fps.mp4&#x27; #18&#xA;file &#x27;../intersegment/intersegment_h264_3s_1920x1080_30fps.mp4&#x27; #18&#xA;file &#x27;../intersegment/intersegment_h264_3s_1920x1080_30fps.mp4&#x27; #18&#xA;file &#x27;../intersegment/paddingsegment_h264_0.6s_1920x1080_30fps.mp4&#x27; #18&#xA;file &#x27;../tmp/59bd6a7896654d0b0c00705f/vidR/out037.mp4&#x27; #19&#xA;file &#x27;../intersegment/intersegment_h264_3s_1920x1080_30fps.mp4&#x27; #20&#xA;file &#x27;../intersegment/paddingsegment_h264_1.6s_1920x1080_30fps.mp4&#x27; #20&#xA;file &#x27;../tmp/59bd6a7896654d0b0c00705f/vidR/out039.mp4&#x27; #21&#xA;file &#x27;../intersegment/intersegment_h264_3s_1920x1080_30fps.mp4&#x27; #22&#xA;file &#x27;../intersegment/paddingsegment_h264_0.6s_1920x1080_30fps.mp4&#x27; #22&#xA;file &#x27;../tmp/59bd6a7896654d0b0c00705f/vidR/out041.mp4&#x27; #23&#xA;file &#x27;../intersegment/intersegment_h264_3s_1920x1080_30fps.mp4&#x27; #24&#xA;file &#x27;../intersegment/paddingsegment_h264_2.6s_1920x1080_30fps.mp4&#x27; #24&#xA;file &#x27;../tmp/59bd6a7896654d0b0c00705f/vidR/out043.mp4&#x27; #25&#xA;file &#x27;../intersegment/intersegment_h264_3s_1920x1080_30fps.mp4&#x27; #26&#xA;file &#x27;../intersegment/paddingsegment_h264_1.6s_1920x1080_30fps.mp4&#x27; #26&#xA;file &#x27;../tmp/59bd6a7896654d0b0c00705f/vidR/out045.mp4&#x27; #27&#xA;file &#x27;../intersegment/intersegment_h264_3s_1920x1080_30fps.mp4&#x27; #28&#xA;file &#x27;../intersegment/paddingsegment_h264_1.6s_1920x1080_30fps.mp4&#x27; #28&#xA;file &#x27;../tmp/59bd6a7896654d0b0c00705f/vidR/out047.mp4&#x27; #29&#xA;file &#x27;../intersegment/intersegment_h264_3s_1920x1080_30fps.mp4&#x27; #30&#xA;file &#x27;../intersegment/paddingsegment_h264_1.6s_1920x1080_30fps.mp4&#x27; #30&#xA;file &#x27;../tmp/59bd6a7896654d0b0c00705f/vidR/out049.mp4&#x27; #31&#xA;file &#x27;../intersegment/intersegment_h264_3s_1920x1080_30fps.mp4&#x27; #32&#xA;file &#x27;../intersegment/paddingsegment_h264_1.6s_1920x1080_30fps.mp4&#x27; #32&#xA;file &#x27;../tmp/59bd6a7896654d0b0c00705f/vidR/out051.mp4&#x27; #33&#xA;file &#x27;../intersegment/intersegment_h264_3s_1920x1080_30fps.mp4&#x27; #34&#xA;file &#x27;../intersegment/paddingsegment_h264_0.6s_1920x1080_30fps.mp4&#x27; #34&#xA;file &#x27;../tmp/59bd6a7896654d0b0c00705f/vidR/out053.mp4&#x27; #35&#xA;file &#x27;../intersegment/intersegment_h264_3s_1920x1080_30fps.mp4&#x27; #36&#xA;file &#x27;../intersegment/paddingsegment_h264_1.6s_1920x1080_30fps.mp4&#x27; #36&#xA;file &#x27;../tmp/59bd6a7896654d0b0c00705f/vidR/out055.mp4&#x27; #37&#xA;file &#x27;../intersegment/intersegment_h264_3s_1920x1080_30fps.mp4&#x27; #38&#xA;file &#x27;../intersegment/paddingsegment_h264_2.6s_1920x1080_30fps.mp4&#x27; #38&#xA;file &#x27;../tmp/59bd6a7896654d0b0c00705f/vidR/out057.mp4&#x27; #39&#xA;file &#x27;../intersegment/intersegment_h264_3s_1920x1080_30fps.mp4&#x27; #40&#xA;file &#x27;../intersegment/paddingsegment_h264_0.6s_1920x1080_30fps.mp4&#x27; #40&#xA;file &#x27;../tmp/59bd6a7896654d0b0c00705f/vidR/out059.mp4&#x27; #41&#xA;file &#x27;../intersegment/intersegment_h264_3s_1920x1080_30fps.mp4&#x27; #42&#xA;file &#x27;../intersegment/paddingsegment_h264_1.6s_1920x1080_30fps.mp4&#x27; #42&#xA;file &#x27;../tmp/59bd6a7896654d0b0c00705f/vidR/out061.mp4&#x27; #43&#xA;file &#x27;../intersegment/intersegment_h264_3s_1920x1080_30fps.mp4&#x27; #44&#xA;file &#x27;../intersegment/paddingsegment_h264_1.6s_1920x1080_30fps.mp4&#x27; #44&#xA;file &#x27;../tmp/59bd6a7896654d0b0c00705f/vidR/out063.mp4&#x27; #45&#xA;file &#x27;../intersegment/intersegment_h264_3s_1920x1080_30fps.mp4&#x27; #46&#xA;file &#x27;../intersegment/intersegment_h264_3s_1920x1080_30fps.mp4&#x27; #46&#xA;file &#x27;../intersegment/paddingsegment_h264_0.6s_1920x1080_30fps.mp4&#x27; #46&#xA;file &#x27;../tmp/59bd6a7896654d0b0c00705f/vidR/out065.mp4&#x27; #47&#xA;file &#x27;../intersegment/intersegment_h264_3s_1920x1080_30fps.mp4&#x27; #48&#xA;file &#x27;../intersegment/intersegment_h264_3s_1920x1080_30fps.mp4&#x27; #48&#xA;file &#x27;../intersegment/paddingsegment_h264_1.6s_1920x1080_30fps.mp4&#x27; #48&#xA;file &#x27;../tmp/59bd6a7896654d0b0c00705f/vidR/out067.mp4&#x27; #49&#xA;file &#x27;../intersegment/intersegment_h264_3s_1920x1080_30fps.mp4&#x27; #50&#xA;file &#x27;../intersegment/intersegment_h264_3s_1920x1080_30fps.mp4&#x27; #50&#xA;file &#x27;../intersegment/paddingsegment_h264_2.6s_1920x1080_30fps.mp4&#x27; #50&#xA;file &#x27;../tmp/59bd6a7896654d0b0c00705f/vidR/out070.mp4&#x27; #51&#xA;file &#x27;../intersegment/intersegment_h264_3s_1920x1080_30fps.mp4&#x27; #52&#xA;file &#x27;../intersegment/intersegment_h264_3s_1920x1080_30fps.mp4&#x27; #52&#xA;file &#x27;../intersegment/intersegment_h264_3s_1920x1080_30fps.mp4&#x27; #52&#xA;file &#x27;../intersegment/intersegment_h264_3s_1920x1080_30fps.mp4&#x27; #52&#xA;file &#x27;../intersegment/intersegment_h264_3s_1920x1080_30fps.mp4&#x27; #52&#xA;file &#x27;../intersegment/paddingsegment_h264_1.6s_1920x1080_30fps.mp4&#x27; #52&#xA;file &#x27;../tmp/59bd6a7896654d0b0c00705f/vidR/out074.mp4&#x27; #53&#xA;file &#x27;../intersegment/intersegment_h264_3s_1920x1080_30fps.mp4&#x27; #54&#xA;file &#x27;../intersegment/paddingsegment_h264_0.6s_1920x1080_30fps.mp4&#x27; #54&#xA;file &#x27;../tmp/59bd6a7896654d0b0c00705f/vidR/out076.mp4&#x27; #55&#xA;file &#x27;../intersegment/intersegment_h264_3s_1920x1080_30fps.mp4&#x27; #56&#xA;file &#x27;../intersegment/intersegment_h264_3s_1920x1080_30fps.mp4&#x27; #56&#xA;file &#x27;../intersegment/intersegment_h264_3s_1920x1080_30fps.mp4&#x27; #56&#xA;file &#x27;../intersegment/intersegment_h264_3s_1920x1080_30fps.mp4&#x27; #56&#xA;file &#x27;../intersegment/paddingsegment_h264_1.6s_1920x1080_30fps.mp4&#x27; #56&#xA;file &#x27;../tmp/59bd6a7896654d0b0c00705f/vidR/out080.mp4&#x27; #57&#xA;file &#x27;../intersegment/intersegment_h264_3s_1920x1080_30fps.mp4&#x27; #58&#xA;file &#x27;../intersegment/intersegment_h264_3s_1920x1080_30fps.mp4&#x27; #58&#xA;file &#x27;../intersegment/intersegment_h264_3s_1920x1080_30fps.mp4&#x27; #58&#xA;file &#x27;../intersegment/intersegment_h264_3s_1920x1080_30fps.mp4&#x27; #58&#xA;file &#x27;../intersegment/intersegment_h264_3s_1920x1080_30fps.mp4&#x27; #58&#xA;file &#x27;../intersegment/paddingsegment_h264_1.6s_1920x1080_30fps.mp4&#x27; #58&#xA;file &#x27;../tmp/59bd6a7896654d0b0c00705f/vidR/out084.mp4&#x27; #59&#xA;file &#x27;../intersegment/intersegment_h264_3s_1920x1080_30fps.mp4&#x27; #60&#xA;file &#x27;../intersegment/intersegment_h264_3s_1920x1080_30fps.mp4&#x27; #60&#xA;file &#x27;../intersegment/intersegment_h264_3s_1920x1080_30fps.mp4&#x27; #60&#xA;file &#x27;../intersegment/intersegment_h264_3s_1920x1080_30fps.mp4&#x27; #60&#xA;file &#x27;../intersegment/intersegment_h264_3s_1920x1080_30fps.mp4&#x27; #60&#xA;file &#x27;../intersegment/paddingsegment_h264_1.6s_1920x1080_30fps.mp4&#x27; #60&#xA;file &#x27;../tmp/59bd6a7896654d0b0c00705f/vidR/out089.mp4&#x27; #61&#xA;file &#x27;../intersegment/intersegment_h264_3s_1920x1080_30fps.mp4&#x27; #62&#xA;file &#x27;../intersegment/intersegment_h264_3s_1920x1080_30fps.mp4&#x27; #62&#xA;file &#x27;../intersegment/intersegment_h264_3s_1920x1080_30fps.mp4&#x27; #62&#xA;file &#x27;../intersegment/intersegment_h264_3s_1920x1080_30fps.mp4&#x27; #62&#xA;file &#x27;../intersegment/intersegment_h264_3s_1920x1080_30fps.mp4&#x27; #62&#xA;file &#x27;../intersegment/paddingsegment_h264_1.6s_1920x1080_30fps.mp4&#x27; #62&#xA;file &#x27;../tmp/59bd6a7896654d0b0c00705f/vidR/out093.mp4&#x27; #63&#xA;file &#x27;../intersegment/intersegment_h264_3s_1920x1080_30fps.mp4&#x27; #64&#xA;file &#x27;../intersegment/intersegment_h264_3s_1920x1080_30fps.mp4&#x27; #64&#xA;file &#x27;../intersegment/intersegment_h264_3s_1920x1080_30fps.mp4&#x27; #64&#xA;file &#x27;../intersegment/paddingsegment_h264_1.6s_1920x1080_30fps.mp4&#x27; #64&#xA;file &#x27;../tmp/59bd6a7896654d0b0c00705f/vidR/out096.mp4&#x27; #65&#xA;file &#x27;../intersegment/intersegment_h264_3s_1920x1080_30fps.mp4&#x27; #66&#xA;file &#x27;../intersegment/paddingsegment_h264_2.6s_1920x1080_30fps.mp4&#x27; #66&#xA;file &#x27;../tmp/59bd6a7896654d0b0c00705f/vidR/out098.mp4&#x27; #67&#xA;file &#x27;../intersegment/intersegment_h264_3s_1920x1080_30fps.mp4&#x27; #68&#xA;file &#x27;../intersegment/paddingsegment_h264_2.6s_1920x1080_30fps.mp4&#x27; #68&#xA;file &#x27;../tmp/59bd6a7896654d0b0c00705f/vidR/out100.mp4&#x27; #69&#xA;file &#x27;../intersegment/intersegment_h264_3s_1920x1080_30fps.mp4&#x27; #70&#xA;file &#x27;../intersegment/paddingsegment_h264_0.6s_1920x1080_30fps.mp4&#x27; #70&#xA;file &#x27;../tmp/59bd6a7896654d0b0c00705f/vidR/out102.mp4&#x27; #71&#xA;file &#x27;../intersegment/intersegment_h264_3s_1920x1080_30fps.mp4&#x27; #72&#xA;file &#x27;../intersegment/paddingsegment_h264_1.6s_1920x1080_30fps.mp4&#x27; #72&#xA;file &#x27;../tmp/59bd6a7896654d0b0c00705f/vidR/out104.mp4&#x27; #73&#xA;file &#x27;../intersegment/intersegment_h264_3s_1920x1080_30fps.mp4&#x27; #74&#xA;file &#x27;../intersegment/intersegment_h264_3s_1920x1080_30fps.mp4&#x27; #74&#xA;file &#x27;../intersegment/intersegment_h264_3s_1920x1080_30fps.mp4&#x27; #74&#xA;file &#x27;../intersegment/intersegment_h264_3s_1920x1080_30fps.mp4&#x27; #74&#xA;file &#x27;../intersegment/intersegment_h264_3s_1920x1080_30fps.mp4&#x27; #74&#xA;file &#x27;../intersegment/intersegment_h264_3s_1920x1080_30fps.mp4&#x27; #74&#xA;file &#x27;../intersegment/paddingsegment_h264_0.6s_1920x1080_30fps.mp4&#x27; #74&#xA;file &#x27;../tmp/59bd6a7896654d0b0c00705f/vidR/out109.mp4&#x27; #75&#xA;file &#x27;../intersegment/intersegment_h264_3s_1920x1080_30fps.mp4&#x27; #76&#xA;file &#x27;../intersegment/intersegment_h264_3s_1920x1080_30fps.mp4&#x27; #76&#xA;file &#x27;../intersegment/paddingsegment_h264_2.6s_1920x1080_30fps.mp4&#x27; #76&#xA;file &#x27;../tmp/59bd6a7896654d0b0c00705f/vidR/out112.mp4&#x27; #77&#xA;file &#x27;../intersegment/intersegment_h264_3s_1920x1080_30fps.mp4&#x27; #78&#xA;file &#x27;../intersegment/paddingsegment_h264_0.6s_1920x1080_30fps.mp4&#x27; #78&#xA;file &#x27;../tmp/59bd6a7896654d0b0c00705f/vidR/out114.mp4&#x27; #79&#xA;file &#x27;../intersegment/intersegment_h264_3s_1920x1080_30fps.mp4&#x27; #80&#xA;file &#x27;../intersegment/intersegment_h264_3s_1920x1080_30fps.mp4&#x27; #80&#xA;file &#x27;../intersegment/intersegment_h264_3s_1920x1080_30fps.mp4&#x27; #80&#xA;file &#x27;../intersegment/intersegment_h264_3s_1920x1080_30fps.mp4&#x27; #80&#xA;file &#x27;../intersegment/intersegment_h264_3s_1920x1080_30fps.mp4&#x27; #80&#xA;file &#x27;../intersegment/intersegment_h264_3s_1920x1080_30fps.mp4&#x27; #80&#xA;file &#x27;../intersegment/intersegment_h264_3s_1920x1080_30fps.mp4&#x27; #80&#xA;file &#x27;../intersegment/paddingsegment_h264_0.6s_1920x1080_30fps.mp4&#x27; #80&#xA;file &#x27;../tmp/59bd6a7896654d0b0c00705f/vidR/out119.mp4&#x27; #81&#xA;file &#x27;../tmp/59bd6a7896654d0b0c00705f/vidR/outro.mp4&#x27; #82&#xA;

    &#xA;

    However, when I use the following command :

    &#xA;

                ffmpeg(__dirname &#x2B; &#x27;/log/vidR_concatenate.txt&#x27;)&#xA;                .inputFormat(&#x27;concat&#x27;)&#xA;                .inputOptions([&#xA;                    &#x27;-safe 0&#x27;&#xA;                ]).outputOptions([&#xA;                    &#x27;-c copy&#x27;&#xA;                ]).output(__dirname &#x2B; &#x27;/output/&#x27; &#x2B; ID &#x2B; &#x27;/video/1080p/&#x27; &#x2B; ID &#x2B; &#x27;-R-1080p.mp4&#x27;)&#xA;                .on(&#x27;start&#x27;, function (commandLine) {&#xA;                    console.log(&#x27;Spawned Ffmpeg with command: &#x27; &#x2B; commandLine);&#xA;                })&#xA;                .on(&#x27;error&#x27;, function (err, stdout, stderr) {&#xA;                    console.log(&#x27;An error occurred: &#x27; &#x2B; err.message, err, stderr);&#xA;                })&#xA;                .on(&#x27;progress&#x27;, function (progress) {&#xA;                    console.log(&#x27;Processing: &#x27; &#x2B; progress.percent &#x2B; &#x27;% done&#x27;)&#xA;                })&#xA;                .on(&#x27;end&#x27;, function (err, stdout, stderr) {&#xA;                    console.log(&#x27;Finished vidR processing!&#x27; /*, err, stdout, stderr*/)&#xA;                    resolve()&#xA;                })&#xA;                .run()&#xA;

    &#xA;

    I do not end up with a video length that is the sum of all individual videos !

    &#xA;

    ffprobe -i ../intersegment/intersegment_h264_3s_1920x1080_30fps.mp4 :

    &#xA;

    Input #0, mov,mp4,m4a,3gp,3g2,mj2, from &#x27;intersegment/intersegment_h264_3s_1920x1080_30fps.mp4&#x27;:&#xA;  Metadata:&#xA;    major_brand     : isom&#xA;    minor_version   : 512&#xA;    compatible_brands: isomiso2avc1mp41&#xA;    encoder         : Lavf58.29.100&#xA;  Duration: 00:00:03.00, start: 0.000000, bitrate: 24 kb/s&#xA;    Stream #0:0(und): Video: h264 (High) (avc1 / 0x31637661), yuv420p, 1920x1080 [SAR 1:1 DAR 16:9], 19 kb/s, 30 fps, 30 tbr, 15360 tbn, 60 tbc (default)&#xA;    Metadata:&#xA;      handler_name    : VideoHandler&#xA;

    &#xA;

    ffprobe -i ../intersegment/paddingsegment_h264_0.6s_1920x1080_30fps.mp4 :

    &#xA;

    Input #0, mov,mp4,m4a,3gp,3g2,mj2, from &#x27;intersegment/paddingsegment_h264_0.6s_1920x1080_30fps.mp4&#x27;:&#xA;  Metadata:&#xA;    major_brand     : isom&#xA;    minor_version   : 512&#xA;    compatible_brands: isomiso2avc1mp41&#xA;    encoder         : Lavf58.29.100&#xA;  Duration: 00:00:00.60, start: 0.000000, bitrate: 45 kb/s&#xA;    Stream #0:0(und): Video: h264 (High) (avc1 / 0x31637661), yuv420p, 1920x1080 [SAR 1:1 DAR 16:9], 30 kb/s, 30 fps, 30 tbr, 15360 tbn, 60 tbc (default)&#xA;    Metadata:&#xA;      handler_name    : VideoHandler&#xA;

    &#xA;

    ffprobe -i ../tmp/59bd6a7896654d0b0c00705f/vidR/intro.mp4 :

    &#xA;

    Input #0, mov,mp4,m4a,3gp,3g2,mj2, from &#x27;tmp/59bd6a7896654d0b0c00705f/vidR/intro.mp4&#x27;:&#xA;  Metadata:&#xA;    major_brand     : isom&#xA;    minor_version   : 512&#xA;    compatible_brands: isomiso2avc1mp41&#xA;    encoder         : Lavf58.29.100&#xA;  Duration: 00:00:14.80, start: 0.000000, bitrate: 21 kb/s&#xA;    Stream #0:0(und): Video: h264 (High) (avc1 / 0x31637661), yuv420p, 1920x1080 [SAR 1:1 DAR 16:9], 17 kb/s, 30 fps, 30 tbr, 15360 tbn, 60 tbc (default)&#xA;    Metadata:&#xA;      handler_name    : VideoHandler&#xA;

    &#xA;

    ffprobe -i ../tmp/59bd6a7896654d0b0c00705f/vidR/outro.mp4 :

    &#xA;

    Input #0, mov,mp4,m4a,3gp,3g2,mj2, from &#x27;tmp/59bd6a7896654d0b0c00705f/vidR/outro.mp4&#x27;:&#xA;  Metadata:&#xA;    major_brand     : isom&#xA;    minor_version   : 512&#xA;    compatible_brands: isomiso2avc1mp41&#xA;    encoder         : Lavf58.29.100&#xA;  Duration: 00:00:05.30, start: 0.000000, bitrate: 22 kb/s&#xA;    Stream #0:0(und): Video: h264 (High) (avc1 / 0x31637661), yuv420p, 1920x1080 [SAR 1:1 DAR 16:9], 18 kb/s, 30 fps, 30 tbr, 15360 tbn, 60 tbc (default)&#xA;    Metadata:&#xA;      handler_name    : VideoHandler&#xA;

    &#xA;

    ffprobe -i ../tmp/59bd6a7896654d0b0c00705f/vidR/out003.mp4 :

    &#xA;

    Input #0, mov,mp4,m4a,3gp,3g2,mj2, from &#x27;tmp/59bd6a7896654d0b0c00705f/vidR/out003.mp4&#x27;:&#xA;  Metadata:&#xA;    major_brand     : isom&#xA;    minor_version   : 512&#xA;    compatible_brands: isomiso2avc1mp41&#xA;    title           : Big Buck Bunny, Sunflower version&#xA;    artist          : Blender Foundation 2008, Janus Bager Kristensen 2013&#xA;    composer        : Sacha Goedegebure&#xA;    encoder         : Lavf58.29.100&#xA;    comment         : Creative Commons Attribution 3.0 - http://bbb3d.renderfarming.net&#xA;    genre           : Animation&#xA;  Duration: 00:00:08.40, start: 0.000000, bitrate: 3703 kb/s&#xA;    Stream #0:0(und): Video: h264 (High) (avc1 / 0x31637661), yuv420p, 1920x1080 [SAR 1:1 DAR 16:9], 3699 kb/s, 30 fps, 30 tbr, 15360 tbn, 60 tbc (default)&#xA;    Metadata:&#xA;      handler_name    : GPAC ISO Video Handler&#xA;

    &#xA;

    I thought all the fps, tbr, tbn and tbc are the same, so what is the problem ??&#xA;It is off several seconds from the total sum of each individual file !

    &#xA;

  • Possible bug in OpenCV2.4 capturing frames from video

    23 septembre 2013, par Jav_Rock

    Could it be that there is a bug in OpenCV2.4 highgui for capturing frames from video in windows ?

    I installed both the precompiled libraries, the ones compiled by me, I can compile everything perfectly and I can run my programs if

    they are image based. The problem is only for videos. OpenCV crashes in this function always :

    virtual IplImage* retrieveFrame(int)
       {
           unsigned char* data = 0;
           int step=0, width=0, height=0, cn=0;

           if(!ffmpegCapture ||
              !icvRetrieveFrame_FFMPEG_p(ffmpegCapture,&amp;data,&amp;step,&amp;width,&amp;height,&amp;cn)) &lt;-------CRASHES HERE
              return 0;
           cvInitImageHeader(&amp;frame, cvSize(width, height), 8, cn);
           cvSetData(&amp;frame, data, step);
           return &amp;frame;
       }

    This is inside the class cap_ffmpeg.cpp and is called by VideoCapture.

    I tried versions 2.4.2 and 2.4.9. My programes were working finde with opencv2


    More information

    • Windows 7

    • Build the projects with cmake (important as it could be that cmake is not building/finding the right codecs)

    • VisualStudio 9 2008

    • OpenCV 2.4.2

    EDIT

    It looks like it is actually a bug, so, how can I solve this problem and change my code to be able to read avi files ?