Recherche avancée

Médias (0)

Mot : - Tags -/metadatas

Aucun média correspondant à vos critères n’est disponible sur le site.

Autres articles (44)

  • Personnaliser en ajoutant son logo, sa bannière ou son image de fond

    5 septembre 2013, par

    Certains thèmes prennent en compte trois éléments de personnalisation : l’ajout d’un logo ; l’ajout d’une bannière l’ajout d’une image de fond ;

  • Ecrire une actualité

    21 juin 2013, par

    Présentez les changements dans votre MédiaSPIP ou les actualités de vos projets sur votre MédiaSPIP grâce à la rubrique actualités.
    Dans le thème par défaut spipeo de MédiaSPIP, les actualités sont affichées en bas de la page principale sous les éditoriaux.
    Vous pouvez personnaliser le formulaire de création d’une actualité.
    Formulaire de création d’une actualité Dans le cas d’un document de type actualité, les champs proposés par défaut sont : Date de publication ( personnaliser la date de publication ) (...)

  • Use, discuss, criticize

    13 avril 2011, par

    Talk to people directly involved in MediaSPIP’s development, or to people around you who could use MediaSPIP to share, enhance or develop their creative projects.
    The bigger the community, the more MediaSPIP’s potential will be explored and the faster the software will evolve.
    A discussion list is available for all exchanges between users.

Sur d’autres sites (4805)

  • Problems with frame rate on video conversion using ffmpeg with libx264 [migrated]

    29 mai 2013, par Lars Schroeter

    I have problems with transcoding some videos. I ran the most simple ffmpeg command and it takes very long time and the output file is about 10 times bigger. If I provide the frame rate parameter -r it works well (small file, fast transcoding). What is the problem and how can I solve it ? I don't want to set a fixed frame rate because I guess it's better to leave it the same as source, isn't it ?.

    Maybe the problem is something else, because I found many examples in web where the -r option isn't used. Also transcoding to a different format or with a different source works well without -r option (I tried with ffmpeg 0.7.15 and also 1.2.1). The videos are provided by the users of my website and automatically converted to be suitable for the web. So I need the most general command for automatic conversion.

    In the following ffmpeg output you will find this two suspicious messages :

    • Frame rate very high for a muxer not effciciently supporting it. Please consider specifiying a lower framerate, a different muxer or -vsync 2
    • MB rate (36000000) > level limit (983040)

    The ffmpeg command and output (without -r option) :

    ffmpeg -i '/tmp/standort_aquarium.mp4' -vcodec libx264 output.mp4
    ffmpeg version 0.7.15, Copyright (c) 2000-2013 the FFmpeg developers built on Feb 22 2013 07:18:58 with gcc 4.4.5 configuration : —enable-libdc1394 —prefix=/usr —extra-cflags='-Wall -g ' —cc='ccache cc' —enable-shared —enable-libmp3lame —enable-gpl —enable-libvorbis —enable-pthreads —enable-libfaac —enable-libxvid —enable-postproc —enable-x11grab —enable-libgsm —enable-libtheora —enable-libopencore-amrnb —enable-libopencore-amrwb —enable-libx264 —enable-libspeex —enable-nonfree —disable-stripping —enable-avfilter —enable-libdirac —disable-decoder=libdirac —enable-libfreetype —enable-libschroedinger —disable-encoder=libschroedinger —enable-version3 —enable-libopenjpeg —enable-libvpx —enable-librtmp —extra-libs=-lgcrypt —disable-altivec —disable-armv5te —disable-armv6 —disable-vis
    libavutil 50. 43. 0 / 50. 43. 0
    libavcodec 52.123. 0 / 52.123. 0
    libavformat 52.111. 0 / 52.111. 0
    libavdevice 52. 5. 0 / 52. 5. 0
    libavfilter 1. 80. 0 / 1. 80. 0
    libswscale 0. 14. 1 / 0. 14. 1
    libpostproc 51. 2. 0 / 51. 2. 0
    Input #0, mov,mp4,m4a,3gp,3g2,mj2, from '/tmp/standort_aquarium.mp4' :
    Metadata :
    major_brand : mp42
    minor_version : 0
    compatible_brands : mp423gp4isom
    creation_time : 2013-04-19 15:04:05
    Duration : 00:00:18.24, start : 0.000000, bitrate : 2095 kb/s
    Stream #0.0(und) : Video : mpeg4, yuv420p, 640x480 [PAR 1:1 DAR 4:3], 2001 kb/s, 14.97 fps, 30k tbr, 30k tbn, 30k tbc
    Metadata :
    creation_time : 2013-04-19 15:04:05
    Stream #0.1(und) : Audio : aac, 48000 Hz, mono, s16, 96 kb/s
    Metadata :
    creation_time : 2013-04-19 15:04:05
    File 'output.mp4' already exists. Overwrite ? [y/N] y
    [mp4 @ 0x20eed80] Frame rate very high for a muxer not effciciently supporting it.
    Please consider specifiying a lower framerate, a different muxer or -vsync 2
    [buffer @ 0x20f8820] w:640 h:480 pixfmt:yuv420p tb:1/1000000 sar:1/1 sws_param :
    [libx264 @ 0x20efde0] Default settings detected, using medium profile
    [libx264 @ 0x20efde0] using SAR=1/1
    [libx264 @ 0x20efde0] MB rate (36000000) > level limit (983040)
    [libx264 @ 0x20efde0] using cpu capabilities : MMX2 SSE2Fast SSSE3 FastShuffle SSE4.2
    [libx264 @ 0x20efde0] profile High, level 5.1
    [libx264 @ 0x20efde0] 264 - core 118 - H.264/MPEG-4 AVC codec - Copyleft 2003-2011 - http://www.videolan.org/x264.html - options : cabac=1 ref=3 deblock=1:0:0 analyse=0x3:0x113 me=hex subme=7 psy=1 psy_rd=1.00:0.00 mixed_ref=1 me_range=16 chroma_me=1 trellis=1 8x8dct=1 cqm=0 deadzone=21,11 fast_pskip=1 chroma_qp_offset=-2 threads=1 sliced_threads=0 nr=0 decimate=1 interlaced=0 bluray_compat=0 constrained_intra=0 bframes=3 b_pyramid=2 b_adapt=1 b_bias=0 direct=1 weightb=1 open_gop=0 weightp=2 keyint=250 keyint_min=25 scenecut=40 intra_refresh=0 rc_lookahead=40 rc=crf mbtree=1 crf=23.0 qcomp=0.60 qpmin=0 qpmax=69 qpstep=4 ip_ratio=1.40 aq=1:1.00
    Output #0, mp4, to 'output.mp4' :
    Metadata :
    major_brand : mp42
    minor_version : 0
    compatible_brands : mp423gp4isom
    creation_time : 2013-04-19 15:04:05
    encoder : Lavf52.111.0
    Stream #0.0(und) : Video : libx264, yuv420p, 640x480 [PAR 1:1 DAR 4:3], q=2-31, 200 kb/s, 30k tbn, 30k tbc
    Metadata :
    creation_time : 2013-04-19 15:04:05
    Stream #0.1(und) : Audio : libfaac, 48000 Hz, mono, s16, 64 kb/s
    Metadata :
    creation_time : 2013-04-19 15:04:05
    Stream mapping :
    Stream #0.0 -> #0.0
    Stream #0.1 -> #0.1
    Press [q] to stop, [?] for help
    frame=542630 fps=132 q=33.0 Lsize= 77226kB time=00:00:18.08 bitrate=34976.2kbits/s dup=542358 drop=0
    video:68604kB audio:143kB global headers:0kB muxing overhead 12.333275%
    frame I:2174 Avg QP:18.72 size : 25040
    [libx264 @ 0x20efde0] frame P:136846 Avg QP:25.27 size : 56
    [libx264 @ 0x20efde0] frame B:403610 Avg QP:32.99 size : 20
    [libx264 @ 0x20efde0] consecutive B-frames : 0.8% 0.0% 0.1% 99.1%
    [libx264 @ 0x20efde0] mb I I16..4 : 5.5% 83.3% 11.1%
    [libx264 @ 0x20efde0] mb P I16..4 : 0.0% 0.0% 0.0% P16..4 : 0.5% 0.0% 0.0% 0.0% 0.0% skip:99.4%
    [libx264 @ 0x20efde0] mb B I16..4 : 0.0% 0.0% 0.0% B16..8 : 0.0% 0.0% 0.0% direct : 0.0% skip:100.0% L0:21.2% L1:78.8% BI : 0.0%
    [libx264 @ 0x20efde0] 8x8 transform intra:83.1% inter:85.2%
    [libx264 @ 0x20efde0] coded y,uvDC,uvAC intra : 91.2% 95.8% 80.7% inter : 0.0% 0.1% 0.0%
    [libx264 @ 0x20efde0] i16 v,h,dc,p : 13% 40% 12% 35%
    [libx264 @ 0x20efde0] i8 v,h,dc,ddl,ddr,vr,hd,vl,hu : 19% 34% 15% 4% 4% 5% 6% 7% 8%
    [libx264 @ 0x20efde0] i4 v,h,dc,ddl,ddr,vr,hd,vl,hu : 20% 38% 6% 4% 6% 6% 8% 6% 6%
    [libx264 @ 0x20efde0] i8c dc,h,v,p : 39% 32% 19% 10%
    [libx264 @ 0x20efde0] Weighted P-Frames : Y:0.0% UV:0.0%
    [libx264 @ 0x20efde0] ref P L0 : 91.5% 5.2% 2.8% 0.4% 0.0%
    [libx264 @ 0x20efde0] ref B L0 : 55.7% 43.5% 0.8%
    [libx264 @ 0x20efde0] ref B L1 : 97.9% 2.1%
    [libx264 @ 0x20efde0] kb/s:31071.04

    The ffmpeg command and output with the -r 24 option :

    ffmpeg -i '/tmp/standort_aquarium.mp4' -r 30000/1001 -vcodec libx264 output.mp4
    ffmpeg version 0.7.15, Copyright (c) 2000-2013 the FFmpeg developers
    built on Feb 22 2013 07:18:58 with gcc 4.4.5
    configuration : —enable-libdc1394 —prefix=/usr —extra-cflags='-Wall -g ' —cc='ccache cc' —enable-shared —enable-libmp3lame —enable-gpl —enable-libvorbis —enable-pthreads —enable-libfaac —enable-libxvid —enable-postproc —enable-x11grab —enable-libgsm —enable-libtheora —enable-libopencore-amrnb —enable-libopencore-amrwb —enable-libx264 —enable-libspeex —enable-nonfree —disable-stripping —enable-avfilter —enable-libdirac —disable-decoder=libdirac —enable-libfreetype —enable-libschroedinger —disable-encoder=libschroedinger —enable-version3 —enable-libopenjpeg —enable-libvpx —enable-librtmp —extra-libs=-lgcrypt —disable-altivec —disable-armv5te —disable-armv6 —disable-vis
    libavutil 50. 43. 0 / 50. 43. 0
    libavcodec 52.123. 0 / 52.123. 0
    libavformat 52.111. 0 / 52.111. 0
    libavdevice 52. 5. 0 / 52. 5. 0
    libavfilter 1. 80. 0 / 1. 80. 0
    libswscale 0. 14. 1 / 0. 14. 1
    libpostproc 51. 2. 0 / 51. 2. 0
    Input #0, mov,mp4,m4a,3gp,3g2,mj2, from '/tmp/standort_aquarium.mp4' :
    Metadata :
    major_brand : mp42
    minor_version : 0
    compatible_brands : mp423gp4isom
    creation_time : 2013-04-19 15:04:05
    Duration : 00:00:18.24, start : 0.000000, bitrate : 2095 kb/s
    Stream #0.0(und) : Video : mpeg4, yuv420p, 640x480 [PAR 1:1 DAR 4:3], 2001 kb/s, 14.97 fps, 30k tbr, 30k tbn, 30k tbc
    Metadata :
    creation_time : 2013-04-19 15:04:05
    Stream #0.1(und) : Audio : aac, 48000 Hz, mono, s16, 96 kb/s
    Metadata :
    creation_time : 2013-04-19 15:04:05
    File 'output.mp4' already exists. Overwrite ? [y/N] y
    [buffer @ 0x132e820] w:640 h:480 pixfmt:yuv420p tb:1/1000000 sar:1/1 sws_param :
    [libx264 @ 0x1325de0] Default settings detected, using medium profile
    [libx264 @ 0x1325de0] using SAR=1/1
    [libx264 @ 0x1325de0] using cpu capabilities : MMX2 SSE2Fast SSSE3 FastShuffle SSE4.2
    [libx264 @ 0x1325de0] profile High, level 3.0
    [libx264 @ 0x1325de0] 264 - core 118 - H.264/MPEG-4 AVC codec - Copyleft 2003-2011 - http://www.videolan.org/x264.html - options : cabac=1 ref=3 deblock=1:0:0 analyse=0x3:0x113 me=hex subme=7 psy=1 psy_rd=1.00:0.00 mixed_ref=1 me_range=16 chroma_me=1 trellis=1 8x8dct=1 cqm=0 deadzone=21,11 fast_pskip=1 chroma_qp_offset=-2 threads=1 sliced_threads=0 nr=0 decimate=1 interlaced=0 bluray_compat=0 constrained_intra=0 bframes=3 b_pyramid=2 b_adapt=1 b_bias=0 direct=1 weightb=1 open_gop=0 weightp=2 keyint=250 keyint_min=25 scenecut=40 intra_refresh=0 rc_lookahead=40 rc=crf mbtree=1 crf=23.0 qcomp=0.60 qpmin=0 qpmax=69 qpstep=4 ip_ratio=1.40 aq=1:1.00
    Output #0, mp4, to 'output.mp4' :
    Metadata :
    major_brand : mp42
    minor_version : 0
    compatible_brands : mp423gp4isom
    creation_time : 2013-04-19 15:04:05
    encoder : Lavf52.111.0
    Stream #0.0(und) : Video : libx264, yuv420p, 640x480 [PAR 1:1 DAR 4:3], q=2-31, 200 kb/s, 30k tbn, 29.97 tbc
    Metadata :
    creation_time : 2013-04-19 15:04:05
    Stream #0.1(und) : Audio : libfaac, 48000 Hz, mono, s16, 64 kb/s
    Metadata :
    creation_time : 2013-04-19 15:04:05
    Stream mapping :
    Stream #0.0 -> #0.0
    Stream #0.1 -> #0.1
    Press [q] to stop, [?] for help
    frame= 542 fps= 36 q=29.0 Lsize= 2059kB time=00:00:18.01 bitrate= 936.3kbits/s dup=270 drop=0
    video:1904kB audio:143kB global headers:0kB muxing overhead 0.609224%
    frame I:3 Avg QP:22.39 size : 14773
    [libx264 @ 0x1325de0] frame P:514 Avg QP:23.98 size : 3675
    [libx264 @ 0x1325de0] frame B:25 Avg QP:27.44 size : 643
    [libx264 @ 0x1325de0] consecutive B-frames : 93.7% 0.0% 1.1% 5.2%
    [libx264 @ 0x1325de0] mb I I16..4 : 16.4% 78.3% 5.3%
    [libx264 @ 0x1325de0] mb P I16..4 : 1.6% 6.3% 0.3% P16..4 : 30.8% 8.6% 3.1% 0.0% 0.0% skip:49.4%
    [libx264 @ 0x1325de0] mb B I16..4 : 0.4% 0.7% 0.0% B16..8 : 13.2% 1.6% 0.2% direct : 0.3% skip:83.6% L0:50.0% L1:47.1% BI : 2.9%
    [libx264 @ 0x1325de0] 8x8 transform intra:77.1% inter:83.1%
    [libx264 @ 0x1325de0] coded y,uvDC,uvAC intra : 62.0% 76.4% 24.4% inter : 17.9% 26.3% 2.3%
    [libx264 @ 0x1325de0] i16 v,h,dc,p : 14% 60% 13% 13%
    [libx264 @ 0x1325de0] i8 v,h,dc,ddl,ddr,vr,hd,vl,hu : 15% 35% 33% 2% 3% 3% 3% 3% 4%
    [libx264 @ 0x1325de0] i4 v,h,dc,ddl,ddr,vr,hd,vl,hu : 15% 40% 12% 4% 7% 7% 7% 5% 4%
    [libx264 @ 0x1325de0] i8c dc,h,v,p : 46% 34% 16% 4%
    [libx264 @ 0x1325de0] Weighted P-Frames : Y:8.0% UV:4.5%
    [libx264 @ 0x1325de0] ref P L0 : 65.6% 16.7% 8.8% 7.9% 0.9%
    [libx264 @ 0x1325de0] ref B L0 : 85.9% 13.3% 0.8%
    [libx264 @ 0x1325de0] ref B L1 : 88.7% 11.3%
    [libx264 @ 0x1325de0] kb/s:862.28

    The video source is temporarily available under : https://www.dropbox.com/s/4xg147z77u40g87/standort_aquarium.mp4

  • Problems with frame rate on video conversion using ffmpeg with libx264

    29 mai 2013, par Lars Schroeter

    I have problems with transcoding some videos. I ran the most simple ffmpeg command and it takes very long time and the output file is about 10 times bigger. If I provide the frame rate parameter -r it works well (small file, fast transcoding). What is the problem and how can I solve it ? I don't want to set a fixed frame rate because I guess it's better to leave it the same as source, isn't it ?.

    Maybe the problem is something else, because I found many examples in web where the -r option isn't used. Also transcoding to a different format or with a different source works well without -r option (I tried with ffmpeg 0.7.15 and also 1.2.1). The videos are provided by the users of my website and automatically converted to be suitable for the web. So I need the most general command for automatic conversion.

    In the following ffmpeg output you will find this two suspicious messages :

    • Frame rate very high for a muxer not effciciently supporting it. Please consider specifiying a lower framerate, a different muxer or -vsync 2
    • MB rate (36000000) > level limit (983040)

    The ffmpeg command and output (without -r option) :

    ffmpeg -i '/tmp/standort_aquarium.mp4' -vcodec libx264 output.mp4
    ffmpeg version 0.7.15, Copyright (c) 2000-2013 the FFmpeg developers built on Feb 22 2013 07:18:58 with gcc 4.4.5 configuration : —enable-libdc1394 —prefix=/usr —extra-cflags='-Wall -g ' —cc='ccache cc' —enable-shared —enable-libmp3lame —enable-gpl —enable-libvorbis —enable-pthreads —enable-libfaac —enable-libxvid —enable-postproc —enable-x11grab —enable-libgsm —enable-libtheora —enable-libopencore-amrnb —enable-libopencore-amrwb —enable-libx264 —enable-libspeex —enable-nonfree —disable-stripping —enable-avfilter —enable-libdirac —disable-decoder=libdirac —enable-libfreetype —enable-libschroedinger —disable-encoder=libschroedinger —enable-version3 —enable-libopenjpeg —enable-libvpx —enable-librtmp —extra-libs=-lgcrypt —disable-altivec —disable-armv5te —disable-armv6 —disable-vis
    libavutil 50. 43. 0 / 50. 43. 0
    libavcodec 52.123. 0 / 52.123. 0
    libavformat 52.111. 0 / 52.111. 0
    libavdevice 52. 5. 0 / 52. 5. 0
    libavfilter 1. 80. 0 / 1. 80. 0
    libswscale 0. 14. 1 / 0. 14. 1
    libpostproc 51. 2. 0 / 51. 2. 0
    Input #0, mov,mp4,m4a,3gp,3g2,mj2, from '/tmp/standort_aquarium.mp4' :
    Metadata :
    major_brand : mp42
    minor_version : 0
    compatible_brands : mp423gp4isom
    creation_time : 2013-04-19 15:04:05
    Duration : 00:00:18.24, start : 0.000000, bitrate : 2095 kb/s
    Stream #0.0(und) : Video : mpeg4, yuv420p, 640x480 [PAR 1:1 DAR 4:3], 2001 kb/s, 14.97 fps, 30k tbr, 30k tbn, 30k tbc
    Metadata :
    creation_time : 2013-04-19 15:04:05
    Stream #0.1(und) : Audio : aac, 48000 Hz, mono, s16, 96 kb/s
    Metadata :
    creation_time : 2013-04-19 15:04:05
    File 'output.mp4' already exists. Overwrite ? [y/N] y
    [mp4 @ 0x20eed80] Frame rate very high for a muxer not effciciently supporting it.
    Please consider specifiying a lower framerate, a different muxer or -vsync 2
    [buffer @ 0x20f8820] w:640 h:480 pixfmt:yuv420p tb:1/1000000 sar:1/1 sws_param :
    [libx264 @ 0x20efde0] Default settings detected, using medium profile
    [libx264 @ 0x20efde0] using SAR=1/1
    [libx264 @ 0x20efde0] MB rate (36000000) > level limit (983040)
    [libx264 @ 0x20efde0] using cpu capabilities : MMX2 SSE2Fast SSSE3 FastShuffle SSE4.2
    [libx264 @ 0x20efde0] profile High, level 5.1
    [libx264 @ 0x20efde0] 264 - core 118 - H.264/MPEG-4 AVC codec - Copyleft 2003-2011 - http://www.videolan.org/x264.html - options : cabac=1 ref=3 deblock=1:0:0 analyse=0x3:0x113 me=hex subme=7 psy=1 psy_rd=1.00:0.00 mixed_ref=1 me_range=16 chroma_me=1 trellis=1 8x8dct=1 cqm=0 deadzone=21,11 fast_pskip=1 chroma_qp_offset=-2 threads=1 sliced_threads=0 nr=0 decimate=1 interlaced=0 bluray_compat=0 constrained_intra=0 bframes=3 b_pyramid=2 b_adapt=1 b_bias=0 direct=1 weightb=1 open_gop=0 weightp=2 keyint=250 keyint_min=25 scenecut=40 intra_refresh=0 rc_lookahead=40 rc=crf mbtree=1 crf=23.0 qcomp=0.60 qpmin=0 qpmax=69 qpstep=4 ip_ratio=1.40 aq=1:1.00
    Output #0, mp4, to 'output.mp4' :
    Metadata :
    major_brand : mp42
    minor_version : 0
    compatible_brands : mp423gp4isom
    creation_time : 2013-04-19 15:04:05
    encoder : Lavf52.111.0
    Stream #0.0(und) : Video : libx264, yuv420p, 640x480 [PAR 1:1 DAR 4:3], q=2-31, 200 kb/s, 30k tbn, 30k tbc
    Metadata :
    creation_time : 2013-04-19 15:04:05
    Stream #0.1(und) : Audio : libfaac, 48000 Hz, mono, s16, 64 kb/s
    Metadata :
    creation_time : 2013-04-19 15:04:05
    Stream mapping :
    Stream #0.0 -> #0.0
    Stream #0.1 -> #0.1
    Press [q] to stop, [?] for help
    frame=542630 fps=132 q=33.0 Lsize= 77226kB time=00:00:18.08 bitrate=34976.2kbits/s dup=542358 drop=0
    video:68604kB audio:143kB global headers:0kB muxing overhead 12.333275%
    frame I:2174 Avg QP:18.72 size : 25040
    [libx264 @ 0x20efde0] frame P:136846 Avg QP:25.27 size : 56
    [libx264 @ 0x20efde0] frame B:403610 Avg QP:32.99 size : 20
    [libx264 @ 0x20efde0] consecutive B-frames : 0.8% 0.0% 0.1% 99.1%
    [libx264 @ 0x20efde0] mb I I16..4 : 5.5% 83.3% 11.1%
    [libx264 @ 0x20efde0] mb P I16..4 : 0.0% 0.0% 0.0% P16..4 : 0.5% 0.0% 0.0% 0.0% 0.0% skip:99.4%
    [libx264 @ 0x20efde0] mb B I16..4 : 0.0% 0.0% 0.0% B16..8 : 0.0% 0.0% 0.0% direct : 0.0% skip:100.0% L0:21.2% L1:78.8% BI : 0.0%
    [libx264 @ 0x20efde0] 8x8 transform intra:83.1% inter:85.2%
    [libx264 @ 0x20efde0] coded y,uvDC,uvAC intra : 91.2% 95.8% 80.7% inter : 0.0% 0.1% 0.0%
    [libx264 @ 0x20efde0] i16 v,h,dc,p : 13% 40% 12% 35%
    [libx264 @ 0x20efde0] i8 v,h,dc,ddl,ddr,vr,hd,vl,hu : 19% 34% 15% 4% 4% 5% 6% 7% 8%
    [libx264 @ 0x20efde0] i4 v,h,dc,ddl,ddr,vr,hd,vl,hu : 20% 38% 6% 4% 6% 6% 8% 6% 6%
    [libx264 @ 0x20efde0] i8c dc,h,v,p : 39% 32% 19% 10%
    [libx264 @ 0x20efde0] Weighted P-Frames : Y:0.0% UV:0.0%
    [libx264 @ 0x20efde0] ref P L0 : 91.5% 5.2% 2.8% 0.4% 0.0%
    [libx264 @ 0x20efde0] ref B L0 : 55.7% 43.5% 0.8%
    [libx264 @ 0x20efde0] ref B L1 : 97.9% 2.1%
    [libx264 @ 0x20efde0] kb/s:31071.04

    The ffmpeg command and output with the -r 24 option :

    ffmpeg -i '/tmp/standort_aquarium.mp4' -r 30000/1001 -vcodec libx264 output.mp4
    ffmpeg version 0.7.15, Copyright (c) 2000-2013 the FFmpeg developers
    built on Feb 22 2013 07:18:58 with gcc 4.4.5
    configuration : —enable-libdc1394 —prefix=/usr —extra-cflags='-Wall -g ' —cc='ccache cc' —enable-shared —enable-libmp3lame —enable-gpl —enable-libvorbis —enable-pthreads —enable-libfaac —enable-libxvid —enable-postproc —enable-x11grab —enable-libgsm —enable-libtheora —enable-libopencore-amrnb —enable-libopencore-amrwb —enable-libx264 —enable-libspeex —enable-nonfree —disable-stripping —enable-avfilter —enable-libdirac —disable-decoder=libdirac —enable-libfreetype —enable-libschroedinger —disable-encoder=libschroedinger —enable-version3 —enable-libopenjpeg —enable-libvpx —enable-librtmp —extra-libs=-lgcrypt —disable-altivec —disable-armv5te —disable-armv6 —disable-vis
    libavutil 50. 43. 0 / 50. 43. 0
    libavcodec 52.123. 0 / 52.123. 0
    libavformat 52.111. 0 / 52.111. 0
    libavdevice 52. 5. 0 / 52. 5. 0
    libavfilter 1. 80. 0 / 1. 80. 0
    libswscale 0. 14. 1 / 0. 14. 1
    libpostproc 51. 2. 0 / 51. 2. 0
    Input #0, mov,mp4,m4a,3gp,3g2,mj2, from '/tmp/standort_aquarium.mp4' :
    Metadata :
    major_brand : mp42
    minor_version : 0
    compatible_brands : mp423gp4isom
    creation_time : 2013-04-19 15:04:05
    Duration : 00:00:18.24, start : 0.000000, bitrate : 2095 kb/s
    Stream #0.0(und) : Video : mpeg4, yuv420p, 640x480 [PAR 1:1 DAR 4:3], 2001 kb/s, 14.97 fps, 30k tbr, 30k tbn, 30k tbc
    Metadata :
    creation_time : 2013-04-19 15:04:05
    Stream #0.1(und) : Audio : aac, 48000 Hz, mono, s16, 96 kb/s
    Metadata :
    creation_time : 2013-04-19 15:04:05
    File 'output.mp4' already exists. Overwrite ? [y/N] y
    [buffer @ 0x132e820] w:640 h:480 pixfmt:yuv420p tb:1/1000000 sar:1/1 sws_param :
    [libx264 @ 0x1325de0] Default settings detected, using medium profile
    [libx264 @ 0x1325de0] using SAR=1/1
    [libx264 @ 0x1325de0] using cpu capabilities : MMX2 SSE2Fast SSSE3 FastShuffle SSE4.2
    [libx264 @ 0x1325de0] profile High, level 3.0
    [libx264 @ 0x1325de0] 264 - core 118 - H.264/MPEG-4 AVC codec - Copyleft 2003-2011 - http://www.videolan.org/x264.html - options : cabac=1 ref=3 deblock=1:0:0 analyse=0x3:0x113 me=hex subme=7 psy=1 psy_rd=1.00:0.00 mixed_ref=1 me_range=16 chroma_me=1 trellis=1 8x8dct=1 cqm=0 deadzone=21,11 fast_pskip=1 chroma_qp_offset=-2 threads=1 sliced_threads=0 nr=0 decimate=1 interlaced=0 bluray_compat=0 constrained_intra=0 bframes=3 b_pyramid=2 b_adapt=1 b_bias=0 direct=1 weightb=1 open_gop=0 weightp=2 keyint=250 keyint_min=25 scenecut=40 intra_refresh=0 rc_lookahead=40 rc=crf mbtree=1 crf=23.0 qcomp=0.60 qpmin=0 qpmax=69 qpstep=4 ip_ratio=1.40 aq=1:1.00
    Output #0, mp4, to 'output.mp4' :
    Metadata :
    major_brand : mp42
    minor_version : 0
    compatible_brands : mp423gp4isom
    creation_time : 2013-04-19 15:04:05
    encoder : Lavf52.111.0
    Stream #0.0(und) : Video : libx264, yuv420p, 640x480 [PAR 1:1 DAR 4:3], q=2-31, 200 kb/s, 30k tbn, 29.97 tbc
    Metadata :
    creation_time : 2013-04-19 15:04:05
    Stream #0.1(und) : Audio : libfaac, 48000 Hz, mono, s16, 64 kb/s
    Metadata :
    creation_time : 2013-04-19 15:04:05
    Stream mapping :
    Stream #0.0 -> #0.0
    Stream #0.1 -> #0.1
    Press [q] to stop, [?] for help
    frame= 542 fps= 36 q=29.0 Lsize= 2059kB time=00:00:18.01 bitrate= 936.3kbits/s dup=270 drop=0
    video:1904kB audio:143kB global headers:0kB muxing overhead 0.609224%
    frame I:3 Avg QP:22.39 size : 14773
    [libx264 @ 0x1325de0] frame P:514 Avg QP:23.98 size : 3675
    [libx264 @ 0x1325de0] frame B:25 Avg QP:27.44 size : 643
    [libx264 @ 0x1325de0] consecutive B-frames : 93.7% 0.0% 1.1% 5.2%
    [libx264 @ 0x1325de0] mb I I16..4 : 16.4% 78.3% 5.3%
    [libx264 @ 0x1325de0] mb P I16..4 : 1.6% 6.3% 0.3% P16..4 : 30.8% 8.6% 3.1% 0.0% 0.0% skip:49.4%
    [libx264 @ 0x1325de0] mb B I16..4 : 0.4% 0.7% 0.0% B16..8 : 13.2% 1.6% 0.2% direct : 0.3% skip:83.6% L0:50.0% L1:47.1% BI : 2.9%
    [libx264 @ 0x1325de0] 8x8 transform intra:77.1% inter:83.1%
    [libx264 @ 0x1325de0] coded y,uvDC,uvAC intra : 62.0% 76.4% 24.4% inter : 17.9% 26.3% 2.3%
    [libx264 @ 0x1325de0] i16 v,h,dc,p : 14% 60% 13% 13%
    [libx264 @ 0x1325de0] i8 v,h,dc,ddl,ddr,vr,hd,vl,hu : 15% 35% 33% 2% 3% 3% 3% 3% 4%
    [libx264 @ 0x1325de0] i4 v,h,dc,ddl,ddr,vr,hd,vl,hu : 15% 40% 12% 4% 7% 7% 7% 5% 4%
    [libx264 @ 0x1325de0] i8c dc,h,v,p : 46% 34% 16% 4%
    [libx264 @ 0x1325de0] Weighted P-Frames : Y:8.0% UV:4.5%
    [libx264 @ 0x1325de0] ref P L0 : 65.6% 16.7% 8.8% 7.9% 0.9%
    [libx264 @ 0x1325de0] ref B L0 : 85.9% 13.3% 0.8%
    [libx264 @ 0x1325de0] ref B L1 : 88.7% 11.3%
    [libx264 @ 0x1325de0] kb/s:862.28

    The video source is temporarily available under : https://www.dropbox.com/s/4xg147z77u40g87/standort_aquarium.mp4

  • Lossless avi encoding on linux

    31 août 2012, par JohnSavage

    I am trying to write video using opencv. It is important for me to do this precisely - so it has to be a lossless codec. I am working with OpenCV 2.4.1 on Ubuntu 12.04

    Previously, I was using the fourcc code 0. This gave me the exact result I wanted, and I was able to recover the images perfectly.

    I am not sure what happened, but as of a recent update (around Jul 20th 2012), something went wrong and I am no longer able to write files with this fourcc code. I really don't remember what it was, but it could have come from doing an update, removing some software from my software center, and some other things I did during general cleaning...

    When I check an older file with mediainfo (http://www.fourcc.org/identifier/) I see the following result :

    Complete name                            : oldsample.avi
    Format                                   : AVI
    Format/Info                              : Audio Video Interleave
    Format profile                           : OpenDML
    File size                                : 1.07 GiB
    Duration                                 : 41s 467ms
    Overall bit rate                         : 221 Mbps
    Writing application                      : Lavf53.5.0
    Video
    ID                                       : 0
    Format                                   : RGB
    Codec ID                                 : 0x00000000
    Codec ID/Info                            : Basic Windows bitmap format. 1, 4 and 8 bpp     versions are palettised. 16, 24 and 32bpp contain raw RGB samples
    Duration                                 : 41s 467ms
    Bit rate                                 : 221 Mbps
    Width                                    : 640 pixels
    Height                                   : 4294966 816 pixels
    Display aspect ratio                     : 0.000
    Frame rate                               : 30.000 fps
    Bit depth                                : 8 bits
    Stream size                              : 1.07 GiB (100%)

    Now, I see that when I write using the 0 fourcc codec, the program actually defaults to the i420 codec. Here is the output from one of the files I try to write now :

    Complete name                            : newsample.avi
    Format                                   : AVI
    Format/Info                              : Audio Video Interleave
    File size                                : 73.0 MiB
    Duration                                 : 5s 533ms
    Overall bit rate                         : 111 Mbps
    Writing application                      : Lavf54.6.100
    Video
    ID                                       : 0
    Format                                   : YUV
    Codec ID                                 : I420
    Codec ID/Info                            : 8 bit Y plane followed by 8 bit 2x2 subsampled U and V planes.
    Duration                                 : 5s 533ms
    Bit rate                                 : 111 Mbps
    Width                                    : 640 pixels
    Height                                   : 480 pixels
    Display aspect ratio                     : 4:3
    Frame rate                               : 30.000 fps
    Compression mode                         : Lossless
    Bits/(Pixel*Frame)                       : 12.000
    Stream size                              : 72.9 MiB (100%)

    This format, and other formats I try to use (like huffyuv HFYU), do not work for me because I end up with effects like this http://imgur.com/a/0OC4y - you see the bright artifacts coming in due to what I assume is either lossy compression or chroma subsampling in the case of HFYU which is supposed to be lossless. What you are looking at is the red channel from one of my videos. The perceptual effect is negligible when you look at all 3 channels simultaneously but it is essential that I reconstruct the images exactly.

    Furthermore, while I am able to play my old files in media players like vlc, I suddenly find them to be completely incompatible with opencv. When I try to open the older files with a videocapture, the open step works fine, but trying to do a read operation results in a segfault. Furthermore, When I try to write with either :

    CV_FOURCC(0,0,0,0)
    0

    Opencv defaults to I420 for some reason.

    Next, I tried using some alternate codecs. 'DIB ' seems like something that should work for me, and on the opencv website (http://opencv.willowgarage.com/wiki/VideoCodecs) it is listed as a 'recommended' codec. However, trying to use this results in the following message :

    OpenCV-2.4.1/modules/highgui/src/cap_gstreamer.cpp:483: error: (-210) Gstreamer Opencv backend doesn't support this codec acutally. in function CvVideoWriter_GStreamer::open

    Aborted (core dumped)

    I checked the opencv source for this codec, and stumbled across the following :

    cd OpenCV-2.4.1/modules
    grep -i -r "CV_FOURCC" ./*
    ...
    ./highgui/src/cap_qt.cpp:    /*if( fourcc == CV_FOURCC( 'D', 'I', 'B', ' ' ))
    ./highgui/include/opencv2/highgui/highgui_c.h:#define CV_FOURCC_DEFAULT CV_FOURCC('I', 'Y', 'U', 'V') /* Use default codec for specified filename (Linux only) */

    I tried installing qt4 and reconfiguring with the WITH_QT flag, but that did not change anything. I also tried uncommenting that part of the code and reinstalling opencv, but that also did not work.

    My ultimate goal is for any way to efficiently store and retrieve a video stream with 16 bits for every pixel (like 32float would work fine, and then it wouldn't need to be perfect). Right now I am unpacking the 16 bits into the red and green channels, which is why I need it to be perfect - since an error of 1 in the red channel is multiplied by 256 in the final result. I am not having success with any of the fourcc codes available to me.