Recherche avancée

Médias (1)

Mot : - Tags -/Rennes

Autres articles (92)

  • Mediabox : ouvrir les images dans l’espace maximal pour l’utilisateur

    8 février 2011, par

    La visualisation des images est restreinte par la largeur accordée par le design du site (dépendant du thème utilisé). Elles sont donc visibles sous un format réduit. Afin de profiter de l’ensemble de la place disponible sur l’écran de l’utilisateur, il est possible d’ajouter une fonctionnalité d’affichage de l’image dans une boite multimedia apparaissant au dessus du reste du contenu.
    Pour ce faire il est nécessaire d’installer le plugin "Mediabox".
    Configuration de la boite multimédia
    Dès (...)

  • Les autorisations surchargées par les plugins

    27 avril 2010, par

    Mediaspip core
    autoriser_auteur_modifier() afin que les visiteurs soient capables de modifier leurs informations sur la page d’auteurs

  • Websites made ​​with MediaSPIP

    2 mai 2011, par

    This page lists some websites based on MediaSPIP.

Sur d’autres sites (10659)

  • 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 ?