
Recherche avancée
Autres articles (76)
-
Le profil des utilisateurs
12 avril 2011, parChaque utilisateur dispose d’une page de profil lui permettant de modifier ses informations personnelle. Dans le menu de haut de page par défaut, un élément de menu est automatiquement créé à l’initialisation de MediaSPIP, visible uniquement si le visiteur est identifié sur le site.
L’utilisateur a accès à la modification de profil depuis sa page auteur, un lien dans la navigation "Modifier votre profil" est (...) -
Configurer la prise en compte des langues
15 novembre 2010, parAccéder à la configuration et ajouter des langues prises en compte
Afin de configurer la prise en compte de nouvelles langues, il est nécessaire de se rendre dans la partie "Administrer" du site.
De là, dans le menu de navigation, vous pouvez accéder à une partie "Gestion des langues" permettant d’activer la prise en compte de nouvelles langues.
Chaque nouvelle langue ajoutée reste désactivable tant qu’aucun objet n’est créé dans cette langue. Dans ce cas, elle devient grisée dans la configuration et (...) -
XMP PHP
13 mai 2011, parDixit Wikipedia, XMP signifie :
Extensible Metadata Platform ou XMP est un format de métadonnées basé sur XML utilisé dans les applications PDF, de photographie et de graphisme. Il a été lancé par Adobe Systems en avril 2001 en étant intégré à la version 5.0 d’Adobe Acrobat.
Étant basé sur XML, il gère un ensemble de tags dynamiques pour l’utilisation dans le cadre du Web sémantique.
XMP permet d’enregistrer sous forme d’un document XML des informations relatives à un fichier : titre, auteur, historique (...)
Sur d’autres sites (8447)
-
FFMPEG output (Images > Video) is unplayable
23 décembre 2014, par jgadsI’m using FFMPEG to make a video slideshow from a group of images on Android. The process completes successfully and the output file is the correct/expected size (or the same as what is reported in FFMPEG’s ’progress’), but the video does not play on any Android video player (MXplayer, VLC, stock). The video players show a perpetual loading circle and never actually launch. MXplayer can see the file and generate a thumbnail but not actually play it. Here is the command :
ffmpeg -f image2 -re -r 1 -i
/storage/emulated/0/Pictures/phototest/%d.jpg -vcodec libx264 -f mp4
-r 24 -preset : ultrafast -an -threads 4 -b 4000k -mbd rd -flags +mv4+aic -trellis 2 -cmp 2 -subcmp 2 -g 300 -y -pix_fmt yuv420p /storage/emulated/0/Pictures/phototest/result1.mp4Here’s the output via Android Logcat :
12-23 12:59:49.890 12665-12665/com.company.example I/FFmpeg﹕ Loading FFmpeg for armv7-neon CPU
12-23 12:59:50.210 12665-12665/com.company.example E/FFMPEG﹕ Success loading ffmpeg
12-23 12:59:54.420 12665-12665/com.company.example E/FFMPEG﹕ Started.
12-23 12:59:54.445 12665-12799/com.company.example D/FFmpeg﹕ Running publishing updates method
12-23 12:59:54.465 12665-12665/com.company.example E/FFMPEG﹕ Progress: ffmpeg version n2.4.2 Copyright (c) 2000-2014 the FFmpeg developers
12-23 12:59:54.465 12665-12665/com.company.example E/FFMPEG﹕ Progress: built on Oct 7 2014 15:08:46 with gcc 4.8 (GCC)
12-23 12:59:54.465 12665-12665/com.company.example E/FFMPEG﹕ Progress: configuration: --target-os=linux --cross-prefix=/home/sb/Source-Code/ffmpeg-android/toolchain-android/bin/arm-linux-androideabi- --arch=arm --cpu=cortex-a8 --enable-runtime-cpudetect --sysroot=/home/sb/Source-Code/ffmpeg-android/toolchain-android/sysroot --enable-pic --enable-libx264 --enable-libass --enable-libfreetype --enable-libfribidi --enable-fontconfig --enable-pthreads --disable-debug --disable-ffserver --enable-version3 --enable-hardcoded-tables --disable-ffplay --disable-ffprobe --enable-gpl --enable-yasm --disable-doc --disable-shared --enable-static --pkg-config=/home/sb/Source-Code/ffmpeg-android/ffmpeg-pkg-config --prefix=/home/sb/Source-Code/ffmpeg-android/build/armeabi-v7a-neon --extra-cflags='-I/home/sb/Source-Code/ffmpeg-android/toolchain-android/include -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 -fno-strict-overflow -fstack-protector-all -mfpu=neon' --extra-ldflags='-L/home/sb/Source-Code/ffmpeg-android/toolchain-android/lib -Wl,-z,relro -Wl,-z,now -pie' --extra-libs='-lpng -lexpat -lm' --extra-cxxflags=
12-23 12:59:54.465 12665-12665/com.company.example E/FFMPEG﹕ Progress: libavutil 54. 7.100 / 54. 7.100
12-23 12:59:54.465 12665-12665/com.company.example E/FFMPEG﹕ Progress: libavcodec 56. 1.100 / 56. 1.100
12-23 12:59:54.470 12665-12665/com.company.example E/FFMPEG﹕ Progress: libavformat 56. 4.101 / 56. 4.101
12-23 12:59:54.470 12665-12665/com.company.example E/FFMPEG﹕ Progress: libavdevice 56. 0.100 / 56. 0.100
12-23 12:59:54.470 12665-12665/com.company.example E/FFMPEG﹕ Progress: libavfilter 5. 1.100 / 5. 1.100
12-23 12:59:54.470 12665-12665/com.company.example E/FFMPEG﹕ Progress: libswscale 3. 0.100 / 3. 0.100
12-23 12:59:54.470 12665-12665/com.company.example E/FFMPEG﹕ Progress: libswresample 1. 1.100 / 1. 1.100
12-23 12:59:54.470 12665-12665/com.company.example E/FFMPEG﹕ Progress: libpostproc 53. 0.100 / 53. 0.100
12-23 12:59:54.655 12665-12665/com.company.example E/FFMPEG﹕ Progress: Input #0, image2, from '/storage/emulated/0/Pictures/phototest/%d.jpg':
12-23 12:59:54.655 12665-12665/com.company.example E/FFMPEG﹕ Progress: Duration: 00:00:28.00, start: 0.000000, bitrate: N/A
12-23 12:59:54.655 12665-12665/com.company.example E/FFMPEG﹕ Progress: Stream #0:0: Video: mjpeg, yuvj420p(pc, bt470bg), 2528x1856 [SAR 1:1 DAR 79:58], 1 fps, 1 tbr, 1 tbn, 1 tbc
12-23 12:59:54.655 12665-12665/com.company.example E/FFMPEG﹕ Progress: Please use -b:a or -b:v, -b is ambiguous
12-23 12:59:54.665 12665-12665/com.company.example E/FFMPEG﹕ Progress: [swscaler @ 0x2b3f7990] deprecated pixel format used, make sure you did set range correctly
12-23 12:59:54.670 12665-12665/com.company.example E/FFMPEG﹕ Progress: [libx264 @ 0x2b4012e0] using SAR=1/1
12-23 12:59:54.685 12665-12665/com.company.example E/FFMPEG﹕ Progress: [libx264 @ 0x2b4012e0] using cpu capabilities: none!
12-23 12:59:54.755 12665-12665/com.company.example E/FFMPEG﹕ Progress: [libx264 @ 0x2b4012e0] profile Constrained Baseline, level 5.0
12-23 12:59:54.760 12665-12665/com.company.example E/FFMPEG﹕ Progress: [libx264 @ 0x2b4012e0] 264 - core 142 - H.264/MPEG-4 AVC codec - Copyleft 2003-2014 - http://www.videolan.org/x264.html - options: cabac=0 ref=1 deblock=0:0:0 analyse=0:0 me=dia subme=0 psy=1 psy_rd=1.00:0.00 mixed_ref=0 me_range=16 chroma_me=0 trellis=2 8x8dct=0 cqm=0 deadzone=21,11 fast_pskip=1 chroma_qp_offset=0 threads=4 lookahead_threads=1 sliced_threads=0 nr=0 decimate=1 interlaced=0 bluray_compat=0 constrained_intra=0 bframes=0 weightp=0 keyint=300 keyint_min=24 scenecut=0 intra_refresh=0 rc=abr mbtree=0 bitrate=4000 ratetol=1.0 qcomp=0.60 qpmin=0 qpmax=69 qpstep=4 ip_ratio=1.40 aq=0
12-23 12:59:54.760 12665-12665/com.company.example E/FFMPEG﹕ Progress: Output #0, mp4, to '/storage/emulated/0/Pictures/phototest/result1.mp4':
12-23 12:59:54.760 12665-12665/com.company.example E/FFMPEG﹕ Progress: Metadata:
12-23 12:59:54.760 12665-12665/com.company.example E/FFMPEG﹕ Progress: encoder : Lavf56.4.101
12-23 12:59:54.760 12665-12665/com.company.example E/FFMPEG﹕ Progress: Stream #0:0: Video: h264 (libx264) ([33][0][0][0] / 0x0021), yuv420p, 2528x1856 [SAR 1:1 DAR 79:58], q=-1--1, 4000 kb/s, 24 fps, 12288 tbn, 24 tbc
12-23 12:59:54.760 12665-12665/com.company.example E/FFMPEG﹕ Progress: Metadata:
12-23 12:59:54.760 12665-12665/com.company.example E/FFMPEG﹕ Progress: encoder : Lavc56.1.100 libx264
12-23 12:59:54.760 12665-12665/com.company.example E/FFMPEG﹕ Progress: Stream mapping:
12-23 12:59:54.760 12665-12665/com.company.example E/FFMPEG﹕ Progress: Stream #0:0 -> #0:0 (mjpeg (native) -> h264 (libx264))
12-23 12:59:54.760 12665-12665/com.company.example E/FFMPEG﹕ Progress: Press [q] to stop, [?] for help
12-23 13:00:03.905 12665-12665/com.company.example E/FFMPEG﹕ Progress: frame= 49 fps= 11 q=17.0 size= 840kB time=00:00:01.83 bitrate=3752.6kbits/s dup=46 drop=0
12-23 13:00:11.185 12665-12665/com.company.example E/FFMPEG﹕ Progress: frame= 73 fps=8.0 q=17.0 size= 1397kB time=00:00:02.83 bitrate=4039.0kbits/s dup=69 drop=0
12-23 13:00:17.615 12665-12665/com.company.example E/FFMPEG﹕ Progress: frame= 97 fps=5.9 q=17.0 size= 1931kB time=00:00:03.83 bitrate=4126.8kbits/s dup=92 drop=0
12-23 13:00:22.545 12665-12665/com.company.example E/FFMPEG﹕ Progress: frame= 121 fps=5.3 q=17.0 size= 2496kB time=00:00:04.83 bitrate=4229.6kbits/s dup=115 drop=0
12-23 13:00:27.630 12665-12665/com.company.example E/FFMPEG﹕ Progress: frame= 145 fps=5.2 q=17.0 size= 3089kB time=00:00:05.83 bitrate=4338.5kbits/s dup=138 drop=0
12-23 13:00:33.005 12665-12665/com.company.example E/FFMPEG﹕ Progress: frame= 169 fps=5.1 q=17.0 size= 3702kB time=00:00:06.83 bitrate=4437.9kbits/s dup=161 drop=0
12-23 13:00:37.840 12665-12665/com.company.example E/FFMPEG﹕ Progress: frame= 193 fps=5.0 q=18.0 size= 4316kB time=00:00:07.83 bitrate=4514.1kbits/s dup=184 drop=0
12-23 13:00:43.345 12665-12665/com.company.example E/FFMPEG﹕ Progress: frame= 217 fps=5.0 q=18.0 size= 4848kB time=00:00:08.83 bitrate=4495.6kbits/s dup=207 drop=0
12-23 13:00:48.155 12665-12665/com.company.example E/FFMPEG﹕ Progress: frame= 241 fps=5.0 q=18.0 size= 5304kB time=00:00:09.83 bitrate=4418.5kbits/s dup=230 drop=0
12-23 13:00:52.930 12665-12665/com.company.example E/FFMPEG﹕ Progress: frame= 265 fps=5.0 q=19.0 size= 5874kB time=00:00:10.83 bitrate=4441.8kbits/s dup=253 drop=0
12-23 13:00:57.210 12665-12665/com.company.example E/FFMPEG﹕ Progress: frame= 289 fps=5.0 q=18.0 size= 6205kB time=00:00:11.83 bitrate=4295.9kbits/s dup=276 drop=0
12-23 13:01:01.415 12665-12665/com.company.example E/FFMPEG﹕ Progress: frame= 313 fps=5.0 q=18.0 size= 6747kB time=00:00:12.83 bitrate=4307.0kbits/s dup=299 drop=0
12-23 13:01:05.315 12665-12665/com.company.example E/FFMPEG﹕ Progress: frame= 337 fps=5.1 q=18.0 size= 7126kB time=00:00:13.83 bitrate=4220.0kbits/s dup=322 drop=0
12-23 13:01:09.935 12665-12665/com.company.example E/FFMPEG﹕ Progress: frame= 361 fps=5.1 q=17.0 size= 7522kB time=00:00:14.83 bitrate=4153.9kbits/s dup=345 drop=0
12-23 13:01:14.755 12665-12665/com.company.example E/FFMPEG﹕ Progress: frame= 385 fps=5.1 q=18.0 size= 8072kB time=00:00:15.83 bitrate=4176.2kbits/s dup=368 drop=0
12-23 13:01:19.505 12665-12665/com.company.example E/FFMPEG﹕ Progress: frame= 409 fps=5.1 q=18.0 size= 8618kB time=00:00:16.83 bitrate=4193.9kbits/s dup=391 drop=0
12-23 13:01:23.630 12665-12665/com.company.example E/FFMPEG﹕ Progress: frame= 433 fps=5.1 q=17.0 size= 9074kB time=00:00:17.83 bitrate=4168.4kbits/s dup=414 drop=0
12-23 13:01:27.580 12665-12665/com.company.example E/FFMPEG﹕ Progress: frame= 457 fps=5.1 q=17.0 size= 9423kB time=00:00:18.83 bitrate=4098.7kbits/s dup=437 drop=0
12-23 13:01:32.210 12665-12665/com.company.example E/FFMPEG﹕ Progress: frame= 481 fps=5.2 q=17.0 size= 9908kB time=00:00:19.83 bitrate=4092.4kbits/s dup=460 drop=0
12-23 13:01:36.140 12665-12665/com.company.example E/FFMPEG﹕ Progress: frame= 505 fps=5.2 q=16.0 size= 10238kB time=00:00:20.83 bitrate=4025.6kbits/s dup=483 drop=0
12-23 13:01:41.165 12665-12665/com.company.example E/FFMPEG﹕ Progress: frame= 529 fps=5.2 q=16.0 size= 10758kB time=00:00:21.83 bitrate=4036.4kbits/s dup=506 drop=0
12-23 13:01:46.065 12665-12665/com.company.example E/FFMPEG﹕ Progress: frame= 553 fps=5.2 q=16.0 size= 11214kB time=00:00:22.83 bitrate=4023.2kbits/s dup=529 drop=0
12-23 13:01:51.290 12665-12665/com.company.example E/FFMPEG﹕ Progress: frame= 577 fps=5.2 q=16.0 size= 11836kB time=00:00:23.83 bitrate=4068.4kbits/s dup=552 drop=0
12-23 13:01:57.560 12665-12665/com.company.example E/FFMPEG﹕ Progress: frame= 601 fps=5.2 q=17.0 size= 12537kB time=00:00:24.83 bitrate=4135.6kbits/s dup=575 drop=0
12-23 13:02:02.735 12665-12665/com.company.example E/FFMPEG﹕ Progress: frame= 625 fps=5.1 q=18.0 size= 13864kB time=00:00:25.83 bitrate=4396.6kbits/s dup=598 drop=0
12-23 13:02:06.810 12665-12665/com.company.example E/FFMPEG﹕ Progress: frame= 649 fps=5.1 q=18.0 size= 14322kB time=00:00:26.83 bitrate=4372.3kbits/s dup=621 drop=0
12-23 13:02:06.815 12665-12665/com.company.example E/FFMPEG﹕ Progress: frame= 649 fps=4.9 q=18.0 size= 14322kB time=00:00:26.83 bitrate=4372.3kbits/s dup=621 drop=0
12-23 13:02:07.355 12665-12665/com.company.example E/FFMPEG﹕ Progress: frame= 649 fps=4.9 q=-1.0 Lsize= 14349kB time=00:00:27.04 bitrate=4346.9kbits/s dup=621 drop=0
12-23 13:02:07.355 12665-12665/com.company.example E/FFMPEG﹕ Progress: video:14345kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.024813%
12-23 13:02:07.360 12665-12665/com.company.example E/FFMPEG﹕ Progress: [libx264 @ 0x2b4012e0] frame I:3 Avg QP:21.67 size:383361
12-23 13:02:07.360 12665-12665/com.company.example E/FFMPEG﹕ Progress: [libx264 @ 0x2b4012e0] frame P:646 Avg QP:18.87 size: 20958
12-23 13:02:07.360 12665-12665/com.company.example E/FFMPEG﹕ Progress: [libx264 @ 0x2b4012e0] mb I I16..4: 100.0% 0.0% 0.0%
12-23 13:02:07.360 12665-12665/com.company.example E/FFMPEG﹕ Progress: [libx264 @ 0x2b4012e0] mb P I16..4: 4.4% 0.0% 0.0% P16..4: 19.5% 0.0% 0.0% 0.0% 0.0% skip:76.0%
12-23 13:02:07.360 12665-12665/com.company.example E/FFMPEG﹕ Progress: [libx264 @ 0x2b4012e0] final ratefactor: 26.82
12-23 13:02:07.370 12665-12665/com.company.example E/FFMPEG﹕ Progress: [libx264 @ 0x2b4012e0] coded y,uvDC,uvAC intra: 42.8% 45.6% 9.2% inter: 3.4% 16.7% 0.1%
12-23 13:02:07.370 12665-12665/com.company.example E/FFMPEG﹕ Progress: [libx264 @ 0x2b4012e0] i16 v,h,dc,p: 36% 24% 22% 19%
12-23 13:02:07.370 12665-12665/com.company.example E/FFMPEG﹕ Progress: [libx264 @ 0x2b4012e0] i8c dc,h,v,p: 51% 22% 19% 7%
12-23 13:02:07.370 12665-12665/com.company.example E/FFMPEG﹕ Progress: [libx264 @ 0x2b4012e0] kb/s:4345.62
12-23 13:02:07.400 12665-12665/com.company.example E/FFMPEG﹕ Success: ffmpeg version n2.4.2 Copyright (c) 2000-2014 the FFmpeg developers
built on Oct 7 2014 15:08:46 with gcc 4.8 (GCC)
configuration: --target-os=linux --cross-prefix=/home/sb/Source-Code/ffmpeg-android/toolchain-android/bin/arm-linux-androideabi- --arch=arm --cpu=cortex-a8 --enable-runtime-cpudetect --sysroot=/home/sb/Source-Code/ffmpeg-android/toolchain-android/sysroot --enable-pic --enable-libx264 --enable-libass --enable-libfreetype --enable-libfribidi --enable-fontconfig --enable-pthreads --disable-debug --disable-ffserver --enable-version3 --enable-hardcoded-tables --disable-ffplay --disable-ffprobe --enable-gpl --enable-yasm --disable-doc --disable-shared --enable-static --pkg-config=/home/sb/Source-Code/ffmpeg-android/ffmpeg-pkg-config --prefix=/home/sb/Source-Code/ffmpeg-android/build/armeabi-v7a-neon --extra-cflags='-I/home/sb/Source-Code/ffmpeg-android/toolchain-android/include -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 -fno-strict-overflow -fstack-protector-all -mfpu=neon' --extra-ldflags='-L/home/sb/Source-Code/ffmpeg-android/toolchain-android/lib -Wl,-z,relro -Wl,-z,now -pie' --extra-libs='-lpng -lexpat -lm' --extra-cxxflags=
libavutil 54. 7.100 / 54. 7.100
libavcodec 56. 1.100 / 56. 1.100
libavformat 56. 4.101 / 56. 4.101
libavdevice 56. 0.100 / 56. 0.100
libavfilter 5. 1.100 / 5. 1.100
libswscale 3. 0.100 / 3. 0.100
libswresample 1. 1.100 / 1. 1.100
libpostproc 53. 0.100 / 53. 0.100
Input #0, image2, from '/storage/emulated/0/Pictures/phototest/%d.jpg':
Duration: 00:00:28.00, start: 0.000000, bitrate: N/A
Stream #0:0: Video: mjpeg, yuvj420p(pc, bt470bg), 2528x1856 [SAR 1:1 DAR 79:58], 1 fps, 1 tbr, 1 tbn, 1 tbc
Please use -b:a or -b:v, -b is ambiguous
[swscaler @ 0x2b3f7990] deprecated pixel format used, make sure you did set range correctly
[libx264 @ 0x2b4012e0] using SAR=1/1
[libx264 @ 0x2b4012e0] using cpu capabilities: none!
[libx264 @ 0x2b4012e0] profile Constrained Baseline, level 5.0
[libx264 @ 0x2b4012e0] 264 - core 142 - H.264/MPEG-4 AVC codec - Copyleft 2003-2014 - http://www.videolan.org/x264.html - options: cabac=0 ref=1 deblock=0:0:0 analyse=0:0 me=dia subme=0 psy=1 psy_rd=1.00:0.00 mixed_ref=0 me_range=16 chroma_me=0 trellis=2 8x8dct=0 cqm=0 deadzone=21,11 fast_pskip=1 chroma_qp_offset=0 threads=4 lookahead_threads=1 sliced_threads=0 nr=0 decimate=1 interlaced=0 bluray_compat=0 constrained_intra=0 bframes=0 weightp=0 keyint=300 keyint_min=24 scenecut=0 intra_refresh=0 rc=abr mbtree=0 bitrate=4000 ratetol=1.0 qcomp=0.60 qpmin=0 qpmax=69 qpstep=4 ip_ratio=1.40 aq=0
Output #0, mp4, to '/storage/emulated/0/Pictures/phototest/result1.mp4':
Metadata:
encoder : Lavf56.4.101
Stream #0:0: Video: h264 (libx264) ([33][0][0][0] / 0x0021), yuv420p, 2528x1856 [SAR 1:1 DAR 79:58], q=-1--1, 4000 kb/s, 24 fps, 12288 tbn, 24 tbc
Metadata:
encoder : Lavc56.1.100 libx264
Stream mapping:
Stream #0:0 -> #0:0 (mjpeg (native) -> h264 (libx264))
Press [q] to stop, [?] for help
frame= 49 fps= 11 q=17.0 size= 840kB time=00:00:01.83 bitrate=3752.6kbits/s dup=46 drop=0
frame= 73 fps=8.0 q=17.0 size= 1397kB time=00:00:02.83 bitrate=4039.0kbits/s dup=69 drop=0
frame= 97 fps=5.9 q=17.0 size= 1931kB time=00:00:03.83 bitrate=4126.8kbits/s dup=92 drop=0
frame= 121 fps=5.3 q=17.0 size= 2496kB time=00:00:04.83 bitrate=4229.6kbits/s dup=115 drop=0
frame= 145 fps=5.2 q=17.0 size= 3089kB time=00:00:05.83 bitrate=4338.5kbits/s dup=138 drop=0
frame= 169 fps=5.1 q=17.0 size= 3702kB time=00:00:06.83 bitrate=4437.9kbits/s dup=161 drop=0
frame= 193 fps=5.0 q=18.0 size= 4316kB time=00:00:07.83 bitrate=4514.1kbits/s dup=184 drop=0
frame= 217 fps=5.0 q=18.0 size= 4848kB time=00:00:08.83 bitrate=4495.6kbits/s dup=207 drop=0
frame= 241 fps=5.0 q=18.0 size= 5304kB time=00:00:09.83 bitrate=4418.5kbits/s dup=230 drop=0
frame= 265 fps=5.0 q=19.0 size= 5874kB time=00:00:10.83 bitrate=4441.8kbits/s dup=253 drop=0
frame= 28
12-23 13:02:07.430 12665-12665/com.company.example E/FFMPEG﹕ Finished.EDIT : Note that although it appears to run ffmpeg twice here, the output file is the correct size which seems to mean that the file isn’t getting overwritten with a corrupt version, so we can probably just assume there’s a bug with Logcat (right ?)
EDIT 2 : Trying the same command on the PC works flawlessly. Playing back this video works fine on Android.
-
Issue in CV_FOURCC('H', '2', '6', '4')
16 décembre 2014, par AshwinI am trying to use H264 encoding type for compressing the live streaming from Camera (which is supporting the H264 codec) am getting below -
[I am using OPENCV 3.0 beta version (latest)in windows 7 64 bit system .My camera is also supporting H264 codec (find more details below) ]
My ffmpeg code got built with h264 lib :
This build was compiled with the following external libraries :
x264 20140826-git-dd79a61 http://videolan.org/developers/x264.html**error :**
Frame size = 1280x720
Could not find encoder for codec id 28: Encoder not foundERROR: Failed to write the video
Press any key to continue . . .Below is my code :
int main(int argc, char *argv[])
{
// QApplication a(argc, argv);
VideoCapture cap(0); //capture webcam
if (!cap.isOpened()) //if not successful then exit
{
cout << "Cannot open webcam";
return -1;
}
namedWindow("Camera feed", 1); //create window
cap.set(3, 1280);
cap.set(4, 720);
double dWidth = cap.get(CV_CAP_PROP_FRAME_WIDTH); //get width of frames of video
double dHeight = cap.get(CV_CAP_PROP_FRAME_HEIGHT); //get height of frames of video
Size frameSize(static_cast<int>(dWidth), static_cast<int>(dHeight));
cout << "Frame size = " << dWidth << "x" << dHeight << endl;
VideoWriter oVideoWriter("video.avi", CV_FOURCC('X', '2', '6', '4'), 30, frameSize);
if(!oVideoWriter.isOpened())
{
cout << "ERROR: Failed to write the video" << endl;
return -1;
}
while(1)
{
Mat frame;
bool bSuccess = cap.read(frame); //read a new frame from video
if(!bSuccess) //if unsuccessful, break loop
{
cout << "Cannot read frame from video file" << endl;
break;
}
oVideoWriter.write(frame); //write the frame into the file
imshow("Camera feed", frame); //show the frame in "Live Feed" window
cout << "Recording" << endl;
if (waitKey(30) == 27)
{
cout<< "Esc key is pressed by user" << endl;
break;
}
}
return 0;
}
</int></int>Here is the proof that my camera is supporting the H264 :
C:\Users>ffmpeg -f dshow -list_options true -i video="Logitech HD Pro Webcam C920"
ffmpeg version N-66116-g720c21d Copyright (c) 2000-2014 the FFmpeg developers
built on Sep 4 2014 22:09:48 with gcc 4.8.3 (GCC)
configuration: --enable-gpl --enable-version3 --disable-w32threads --enable-avisynth --enable-bzlib --enable-fontconfig --enable-frei0r --enable-gnutls --enable-iconv --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libfreetype --enable-libgme --enable-libgsm --enable-libilbc --enable-libmodplug --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-libopus --enable-librtmp --enable-libschroedinger --enable-libsoxr --enable-libspeex --enable-libtheora --enable-libtwolame --enable-libvidstab --enable-libvo-aacenc --enable-libvo-amrwbenc --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxavs --enable-libxvid --enable-decklink --enable-zlib
libavutil 54. 7.100 / 54. 7.100
libavcodec 56. 1.100 / 56. 1.100
libavformat 56. 4.100 / 56. 4.100
libavdevice 56. 0.100 / 56. 0.100
libavfilter 5. 0.103 / 5. 0.103
libswscale 3. 0.100 / 3. 0.100
libswresample 1. 1.100 / 1. 1.100
libpostproc 53. 0.100 / 53. 0.100
[dshow @ 0000000002faf680] DirectShow video device options
[dshow @ 0000000002faf680] Pin "Capture"
[dshow @ 0000000002faf680] pixel_format=bgr24 min s=640x480 fps=5 max s=640x480 fps=30
[dshow @ 0000000002faf680] pixel_format=bgr24 min s=160x90 fps=5 max s=160x90 fps=30
[dshow @ 0000000002faf680] pixel_format=bgr24 min s=160x120 fps=5 max s=160x120 fps=30
[dshow @ 0000000002faf680] pixel_format=bgr24 min s=176x144 fps=5 max s=176x144 fps=30
[dshow @ 0000000002faf680] pixel_format=bgr24 min s=320x180 fps=5 max s=320x180 fps=30
[dshow @ 0000000002faf680] pixel_format=bgr24 min s=320x240 fps=5 max s=320x240 fps=30
[dshow @ 0000000002faf680] pixel_format=bgr24 min s=352x288 fps=5 max s=352x288 fps=30
[dshow @ 0000000002faf680] pixel_format=bgr24 min s=432x240 fps=5 max s=432x240 fps=30
[dshow @ 0000000002faf680] pixel_format=bgr24 min s=640x360 fps=5 max s=640x360 fps=30
[dshow @ 0000000002faf680] pixel_format=bgr24 min s=800x448 fps=5 max s=800x448 fps=30
[dshow @ 0000000002faf680] pixel_format=bgr24 min s=800x600 fps=5 max s=800x600 fps=30
[dshow @ 0000000002faf680] pixel_format=bgr24 min s=864x480 fps=5 max s=864x480 fps=30
[dshow @ 0000000002faf680] pixel_format=bgr24 min s=960x720 fps=5 max s=960x720 fps=30
[dshow @ 0000000002faf680] pixel_format=bgr24 min s=1024x576 fps=5 max s=1024x576 fps=30
[dshow @ 0000000002faf680] pixel_format=bgr24 min s=1280x720 fps=5 max s=1280x720 fps=30
[dshow @ 0000000002faf680] pixel_format=bgr24 min s=1600x896 fps=5 max s=1600x896 fps=30
[dshow @ 0000000002faf680] pixel_format=bgr24 min s=1920x1080 fps=5 max s=1920x1080 fps=30
[dshow @ 0000000002faf680] pixel_format=bgr24 min s=2304x1296 fps=2 max s=2304x1296 fps=2
[dshow @ 0000000002faf680] pixel_format=bgr24 min s=2304x1536 fps=2 max s=2304x1536 fps=2
[dshow @ 0000000002faf680] pixel_format=yuv420p min s=640x480 fps=5 max s=640x480 fps=30
[dshow @ 0000000002faf680] pixel_format=yuv420p min s=160x90 fps=5 max s=160x90 fps=30
[dshow @ 0000000002faf680] pixel_format=yuv420p min s=160x120 fps=5 max s=160x120 fps=30
[dshow @ 0000000002faf680] pixel_format=yuv420p min s=176x144 fps=5 max s=176x144 fps=30
[dshow @ 0000000002faf680] pixel_format=yuv420p min s=320x180 fps=5 max s=320x180 fps=30
[dshow @ 0000000002faf680] pixel_format=yuv420p min s=320x240 fps=5 max s=320x240 fps=30
[dshow @ 0000000002faf680] pixel_format=yuv420p min s=352x288 fps=5 max s=352x288 fps=30
[dshow @ 0000000002faf680] pixel_format=yuv420p min s=432x240 fps=5 max s=432x240 fps=30
[dshow @ 0000000002faf680] pixel_format=yuv420p min s=640x360 fps=5 max s=640x360 fps=30
[dshow @ 0000000002faf680] pixel_format=yuv420p min s=800x448 fps=5 max s=800x448 fps=30
[dshow @ 0000000002faf680] pixel_format=yuv420p min s=800x600 fps=5 max s=800x600 fps=30
[dshow @ 0000000002faf680] pixel_format=yuv420p min s=864x480 fps=5 max s=864x480 fps=30
[dshow @ 0000000002faf680] pixel_format=yuv420p min s=960x720 fps=5 max s=960x720 fps=30
[dshow @ 0000000002faf680] pixel_format=yuv420p min s=1024x576 fps=5 max s=1024x576 fps=30
[dshow @ 0000000002faf680] pixel_format=yuv420p min s=1280x720 fps=5 max s=1280x720 fps=30
[dshow @ 0000000002faf680] pixel_format=yuv420p min s=1600x896 fps=5 max s=1600x896 fps=30
[dshow @ 0000000002faf680] pixel_format=yuv420p min s=1920x1080 fps=5 max s=1920x1080 fps=30
[dshow @ 0000000002faf680] pixel_format=yuv420p min s=2304x1296 fps=2 max s=2304x1296 fps=2
[dshow @ 0000000002faf680] pixel_format=yuv420p min s=2304x1536 fps=2 max s=2304x1536 fps=2
[dshow @ 0000000002faf680] vcodec=mjpeg min s=640x480 fps=5 max s=640x480 fps=30
[dshow @ 0000000002faf680] vcodec=mjpeg min s=160x90 fps=5 max s=160x90 fps=30
[dshow @ 0000000002faf680] vcodec=mjpeg min s=160x120 fps=5 max s=160x120 fps=30
[dshow @ 0000000002faf680] vcodec=mjpeg min s=176x144 fps=5 max s=176x144 fps=30
[dshow @ 0000000002faf680] vcodec=mjpeg min s=320x180 fps=5 max s=320x180 fps=30
[dshow @ 0000000002faf680] vcodec=mjpeg min s=320x240 fps=5 max s=320x240 fps=30
[dshow @ 0000000002faf680] vcodec=mjpeg min s=352x288 fps=5 max s=352x288 fps=30
[dshow @ 0000000002faf680] vcodec=mjpeg min s=432x240 fps=5 max s=432x240 fps=30
[dshow @ 0000000002faf680] vcodec=mjpeg min s=640x360 fps=5 max s=640x360 fps=30
[dshow @ 0000000002faf680] vcodec=mjpeg min s=800x448 fps=5 max s=800x448 fps=30
[dshow @ 0000000002faf680] vcodec=mjpeg min s=800x600 fps=5 max s=800x600 fps=30
[dshow @ 0000000002faf680] vcodec=mjpeg min s=864x480 fps=5 max s=864x480 fps=30
[dshow @ 0000000002faf680] vcodec=mjpeg min s=960x720 fps=5 max s=960x720 fps=30
[dshow @ 0000000002faf680] vcodec=mjpeg min s=1024x576 fps=5 max s=1024x576 fps=30
[dshow @ 0000000002faf680] vcodec=mjpeg min s=1280x720 fps=5 max s=1280x720 fps=30
[dshow @ 0000000002faf680] vcodec=mjpeg min s=1600x896 fps=5 max s=1600x896 fps=30
[dshow @ 0000000002faf680] vcodec=mjpeg min s=1920x1080 fps=5 max s=1920x1080 fps=30
[dshow @ 0000000002faf680] Pin "Capture"
[dshow @ 0000000002faf680] vcodec=h264 min s=640x480 fps=5 max s=640x480 fps=30
[dshow @ 0000000002faf680] vcodec=h264 min s=160x90 fps=5 max s=160x90 fps=30
[dshow @ 0000000002faf680] vcodec=h264 min s=160x120 fps=5 max s=160x120 fps=30
[dshow @ 0000000002faf680] vcodec=h264 min s=176x144 fps=5 max s=176x144 fps=30
[dshow @ 0000000002faf680] vcodec=h264 min s=320x180 fps=5 max s=320x180 fps=30
[dshow @ 0000000002faf680] vcodec=h264 min s=320x240 fps=5 max s=320x240 fps=30
[dshow @ 0000000002faf680] vcodec=h264 min s=352x288 fps=5 max s=352x288 fps=30
[dshow @ 0000000002faf680] vcodec=h264 min s=432x240 fps=5 max s=432x240 fps=30
[dshow @ 0000000002faf680] vcodec=h264 min s=640x360 fps=5 max s=640x360 fps=30
[dshow @ 0000000002faf680] vcodec=h264 min s=800x448 fps=5 max s=800x448 fps=30
[dshow @ 0000000002faf680] vcodec=h264 min s=800x600 fps=5 max s=800x600 fps=30
[dshow @ 0000000002faf680] vcodec=h264 min s=864x480 fps=5 max s=864x480 fps=30
[dshow @ 0000000002faf680] vcodec=h264 min s=960x720 fps=5 max s=960x720 fps=30
[dshow @ 0000000002faf680] vcodec=h264 min s=1024x576 fps=5 max s=1024x576 fps=30
[dshow @ 0000000002faf680] vcodec=h264 min s=1280x720 fps=5 max s=1280x720 fps=30
[dshow @ 0000000002faf680] vcodec=h264 min s=1600x896 fps=5 max s=1600x896 fps=30
[dshow @ 0000000002faf680] vcodec=h264 min s=1920x1080 fps=5 max s=1920x1080 fps=30
video=Logitech HD Pro Webcam C920: Immediate exit requested -
How can I convince ffserver to save a locally-sourced webcam stream to a file in high resolution AND stream it in lower resolution ?
2 novembre 2015, par Dominic JacobssenWe have a remote Linux machine, accessible over VPN, which has a USB webcam. We want to use this for video conferencing, but we also want to store the stream for archiving.
Since the streaming bandwidth is limited, it makes sense to capture the stream on the same machine as the webcam and rsync that across after-the-fact, rather than trying to capture the streamed content, which is necessarily going to be poor quality.
We’re trying to use ffmpeg and ffserver to achieve this, but with little success. Most of the articles on the internet either deal with just streaming a webcam, or rebroadcasting a remote stream. We found we had to recompile ffserver because of a missing "my_addr->sin_family = AF_INET ;" in the version of ffserver.c we had been using, since fixed in git.
Here’s the ffserver.conf we’re trying to use :
Port 43688
BindAddress 127.0.0.1
MaxHTTPConnections 2000
MaxClients 1000
MaxBandwidth 1000
CustomLog -
NoDaemon
<feed>
ReadOnlyFile /tmp/feed.ffm
FileMaxSize 20M
ACL allow 127.0.0.1
</feed>
<stream>
Feed feed.ffm
Format mp4
VideoSize qvga
VideoGopSize 12
VideoHighQuality
Video4MotionVector
VideoCodec libx264
VideoBitRate 100
VideoBufferSize 40
VideoFrameRate 5
VideoQMin 3
VideoQMax 31
AudioCodec libfaac
AudioBitRate 32
AudioChannels 2
AudioSampleRate 22050
ACL allow localhost
</stream>When we fire this up, we get the error :
Unable to create feed file '/tmp/feed.ffm' as it is marked readonly
Fair enough, but this is not what is implied in the docs. Changing the directive to :
File /tmp/feed.ffm
allows ffserver to fire up and appear to sit and wait for ffmpeg to connect to it. However, when we fire up ffmpeg with the command :
ffmpeg -f alsa -i pulse -r 16000 -f video4linux2 -s qvga -i /dev/video0 -r 5 -f mp4 -vcodec libx264 -sameq -acodec libfaac -ab 32k http://127.0.0.1:43688/feed.ffm
then the webcam lights up and ffserver acknowledges the connection with the messages :
New connection: POST /feed.ffm
[POST] "/feed.ffm HTTP/1.1" 200 0but after a few seconds we get the errors :
[mp4 @ 0x264b160] muxer does not support non seekable output
Could not write header for output file #0 (incorrect codec parameters ?)We’ve tried various other formats (mpeg, mpegts, avi) and codecs (mpeg1video, mpeg2video, mpeg4), all without success.
Moreover, we were under the impression that ffserver could reencode input format to a lower resolution for streaming, but if the stream resolution doesn’t match the feed resolution, we get an error about the resolutions not matching.
Has anyone ever managed to get this working correctly ? I’ve read about vlc being able to do something like this, but the vlc command lines are well nigh impenetrable.
Thanks !
Dominic