
Recherche avancée
Autres articles (44)
-
Personnaliser en ajoutant son logo, sa bannière ou son image de fond
5 septembre 2013, parCertains 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, parPré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, parTalk 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 SchroeterI 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.04The 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.28The 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 SchroeterI 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.04The 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.28The 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 JohnSavageI 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)
0Opencv 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.