
Recherche avancée
Médias (1)
-
Publier une image simplement
13 avril 2011, par ,
Mis à jour : Février 2012
Langue : français
Type : Video
Autres articles (105)
-
Qualité du média après traitement
21 juin 2013, parLe bon réglage du logiciel qui traite les média est important pour un équilibre entre les partis ( bande passante de l’hébergeur, qualité du média pour le rédacteur et le visiteur, accessibilité pour le visiteur ). Comment régler la qualité de son média ?
Plus la qualité du média est importante, plus la bande passante sera utilisée. Le visiteur avec une connexion internet à petit débit devra attendre plus longtemps. Inversement plus, la qualité du média est pauvre et donc le média devient dégradé voire (...) -
Participer à sa traduction
10 avril 2011Vous pouvez nous aider à améliorer les locutions utilisées dans le logiciel ou à traduire celui-ci dans n’importe qu’elle nouvelle langue permettant sa diffusion à de nouvelles communautés linguistiques.
Pour ce faire, on utilise l’interface de traduction de SPIP où l’ensemble des modules de langue de MediaSPIP sont à disposition. ll vous suffit de vous inscrire sur la liste de discussion des traducteurs pour demander plus d’informations.
Actuellement MediaSPIP n’est disponible qu’en français et (...) -
Les tâches Cron régulières de la ferme
1er décembre 2010, parLa gestion de la ferme passe par l’exécution à intervalle régulier de plusieurs tâches répétitives dites Cron.
Le super Cron (gestion_mutu_super_cron)
Cette tâche, planifiée chaque minute, a pour simple effet d’appeler le Cron de l’ensemble des instances de la mutualisation régulièrement. Couplée avec un Cron système sur le site central de la mutualisation, cela permet de simplement générer des visites régulières sur les différents sites et éviter que les tâches des sites peu visités soient trop (...)
Sur d’autres sites (12546)
-
FFMPEG encoding with Intel Quick Sync, throwing "Access violation reading location "
22 octobre 2015, par Paul KnopfI am using FFMPEG
ffmpeg-20150610-git-913685f
, from here.Using this library, I setup a application that captures UYVY frames from my frame grabber and encodes/muxes them to an MP4 file, using libx264. Works without issues.
Now, I wanted to try to enabling Intel Quick Sync, so I changed the encoder.
// old (libx264)
//AVCodec* codec = avcodec_find_encoder(AV_CODEC_ID_H264);
// new (Intel Quick Sync)
AVCodec* codec = avcodec_find_encoder_by_name("h264_qsv");It finds the encoder ok. However, at the time of encoding a frame, I get the following exception.
Unhandled exception at 0x000000005D4DDC9E (avcodec-56.dll) in
MedXChangeDecLinkTest.exe : 0xC0000005 : Access violation reading
location 0x0000000000000048.The exact API call is :
avcodec_encode_video2(_internals->videoStream.stream->codec, &pkt, _internals->videoStream.frame, &got_packet);
Is there more I need to do ? I noticed that there was a commit that added some additional pixel formats for QSV here. Do I have to do something differently, compared to how things were done with libx264 ?
UPDATE : I also just realized that I am getting an error on the stdout.
[h264_qsv @ 000000c7e6d8e680] Specified pixel format yuv420p is invalid or not supported
-
FFMPEG : extract images from video with fixed interval, first few frames messed up
22 octobre 2015, par Imperishable NightI wanted to extract some frames from a video with a fixed interval, so I used command lines like :
ffmpeg.exe -i input.mp4 -r 5 results\%d.jpg`
However, the interval between the first few frames are different from that of the rest.
For example, if I do both
ffmpeg.exe -i input.mp4 -r 25 -t 5 test\%d.jpg
andffmpeg.exe -i input.mp4 -r 5 -t 5 test2\%d.jpg
(for a fps 25 video), I would expect that the results intest2
is a subsequence of the results intest
with interval 5. However what I got are :
Screenshot of resultsFrom the thumbnails, it is obvious that images 112 125 in
test
does not appear intest2
. Some close inspection reveals that the correspondence between the two set of results are as follows :test | test2
1&2 | 1&2 (Those two frames are identical)
3 | 3
4 | 4
9 | 5
14 | 6
19 | 7
... | ...
104 | 24
109 | 25(Actually, when comparing the last frames, I just realized the results in
test
had too much mosaic. I fixed this by adding the option-q:v 1
.)As can be seen, the first few frames from
test2
actually have interval 1, instead of the expected value 5.What is the reason for this behavior, and how to fix it ?
In case someone want to see the ffmpeg outputs :
PS C:\Users\<username>\Documents\New folder> ffmpeg.exe -i input.mp4 -r 25 -t 5 test\%d.jpg
ffmpeg version N-50911-g9efcfbe Copyright (c) 2000-2013 the FFmpeg developers
built on Mar 13 2013 21:26:48 with gcc 4.7.2 (GCC)
configuration: --enable-gpl --enable-version3 --disable-w32threads --enable-avisynth --enable-bzlib --enable-fontconfi
g --enable-frei0r --enable-gnutls --enable-libass --enable-libbluray --enable-libcaca --enable-libfreetype --enable-libg
sm --enable-libilbc --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --ena
ble-libopus --enable-librtmp --enable-libschroedinger --enable-libsoxr --enable-libspeex --enable-libtheora --enable-lib
twolame --enable-libvo-aacenc --enable-libvo-amrwbenc --enable-libvorbis --enable-libvpx --enable-libx264 --enable-libxa
vs --enable-libxvid --enable-zlib
libavutil 52. 19.100 / 52. 19.100
libavcodec 55. 0.100 / 55. 0.100
libavformat 55. 0.100 / 55. 0.100
libavdevice 54. 4.100 / 54. 4.100
libavfilter 3. 45.103 / 3. 45.103
libswscale 2. 2.100 / 2. 2.100
libswresample 0. 17.102 / 0. 17.102
libpostproc 52. 2.100 / 52. 2.100
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'input.mp4':
Metadata:
major_brand : mp42
minor_version : 0
compatible_brands: isommp42
creation_time : 2015-05-05 04:46:16
Duration: 00:49:04.96, start: 0.000000, bitrate: 386 kb/s
Stream #0:0(und): Video: h264 (Constrained Baseline) (avc1 / 0x31637661), yuv420p, 524x360 [SAR 1:1 DAR 131:90], 287
kb/s, 25 fps, 25 tbr, 25 tbn, 50 tbc
Metadata:
handler_name : VideoHandler
Stream #0:1(und): Audio: aac (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 96 kb/s
Metadata:
creation_time : 2015-05-05 04:46:21
handler_name : IsoMedia File Produced by Google, 5-11-2011
Output #0, image2, to 'test\%d.jpg':
Metadata:
major_brand : mp42
minor_version : 0
compatible_brands: isommp42
encoder : Lavf55.0.100
Stream #0:0(und): Video: mjpeg, yuvj420p, 524x360 [SAR 1:1 DAR 131:90], q=2-31, 200 kb/s, 90k tbn, 25 tbc
Metadata:
handler_name : VideoHandler
Stream mapping:
Stream #0:0 -> #0:0 (h264 -> mjpeg)
Press [q] to stop, [?] for help
frame= 125 fps=0.0 q=0.0 Lsize=N/A time=00:00:05.00 bitrate=N/A
video:1140kB audio:0kB subtitle:0 global headers:0kB muxing overhead -100.001884%
PS C:\Users\<username>\Documents\New folder> ffmpeg.exe -i input.mp4 -r 5 -t 5 test2\%d.jpg
ffmpeg version N-50911-g9efcfbe Copyright (c) 2000-2013 the FFmpeg developers
built on Mar 13 2013 21:26:48 with gcc 4.7.2 (GCC)
configuration: --enable-gpl --enable-version3 --disable-w32threads --enable-avisynth --enable-bzlib --enable-fontconfi
g --enable-frei0r --enable-gnutls --enable-libass --enable-libbluray --enable-libcaca --enable-libfreetype --enable-libg
sm --enable-libilbc --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --ena
ble-libopus --enable-librtmp --enable-libschroedinger --enable-libsoxr --enable-libspeex --enable-libtheora --enable-lib
twolame --enable-libvo-aacenc --enable-libvo-amrwbenc --enable-libvorbis --enable-libvpx --enable-libx264 --enable-libxa
vs --enable-libxvid --enable-zlib
libavutil 52. 19.100 / 52. 19.100
libavcodec 55. 0.100 / 55. 0.100
libavformat 55. 0.100 / 55. 0.100
libavdevice 54. 4.100 / 54. 4.100
libavfilter 3. 45.103 / 3. 45.103
libswscale 2. 2.100 / 2. 2.100
libswresample 0. 17.102 / 0. 17.102
libpostproc 52. 2.100 / 52. 2.100
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'input.mp4':
Metadata:
major_brand : mp42
minor_version : 0
compatible_brands: isommp42
creation_time : 2015-05-05 04:46:16
Duration: 00:49:04.96, start: 0.000000, bitrate: 386 kb/s
Stream #0:0(und): Video: h264 (Constrained Baseline) (avc1 / 0x31637661), yuv420p, 524x360 [SAR 1:1 DAR 131:90], 287
kb/s, 25 fps, 25 tbr, 25 tbn, 50 tbc
Metadata:
handler_name : VideoHandler
Stream #0:1(und): Audio: aac (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 96 kb/s
Metadata:
creation_time : 2015-05-05 04:46:21
handler_name : IsoMedia File Produced by Google, 5-11-2011
Output #0, image2, to 'test2\%d.jpg':
Metadata:
major_brand : mp42
minor_version : 0
compatible_brands: isommp42
encoder : Lavf55.0.100
Stream #0:0(und): Video: mjpeg, yuvj420p, 524x360 [SAR 1:1 DAR 131:90], q=2-31, 200 kb/s, 90k tbn, 5 tbc
Metadata:
handler_name : VideoHandler
Stream mapping:
Stream #0:0 -> #0:0 (h264 -> mjpeg)
Press [q] to stop, [?] for help
frame= 25 fps=0.0 q=0.0 Lsize=N/A time=00:00:05.00 bitrate=N/A dup=0 drop=88
video:375kB audio:0kB subtitle:0 global headers:0kB muxing overhead -100.005728%
</username></username> -
Delays on ffmpeg with rtsp streaming
23 octobre 2015, par User NewI have a command
ffmpeg -threads 0 -i rtsp://user:pass@10.10.10.1 -threads 0 -i rtsp://user:pass@10.10.10.2 -map 0:1 -map 1:1 -filter_complex amix=inputs=2:duration=first:dropout_transition=3 -muxdelay 0 -ar 22050 -vn -f flv rtmp://10.10.10.3:1935/live/stream1 -map 0:0 -map 0:1 -muxdelay 0 -ar 22050 -f flv rtmp://10.10.10.3:1935/live/stream4 -map 1:0 -map 1:1 -muxdelay 0 -ar 22050 -f flv rtmp://10.10.10.3:1935/live/stream5
It does 3 things :
1) takes audio from both ip cameras (10.10.10.1 and 10.10.10.2) - and muxes them in one mp3 stream (stream1).
2) takes audio and video from cam 10.10.10.1 and streams it to rtmp ://10.10.10.3:1935/live/stream4
3) takes audio and video from cam 10.10.10.2 and streams it to rtmp ://10.10.10.3:1935/live/stream5Problem : Delays :
1) Delay from reality : I smile in Cam1 and I see my smile on the Stream4 in 4-5 seconds.
2) different delays on different cameras. Both cameras look at me, I say "Hello". First camera shows my "Hello", then in 4-5 seconds the second camera shows "Hello", and in 2-3 second I hear "Hello" on the Stream1.The most important and disturbing problem is the second one. Please help solving it. I want them to be simultaneous - both cameras and audioStream.
Thank you in advance.
P.S. Full output
[root@minjust ~]# ffmpeg -threads 0 -i rtsp://user:pass@172.22.5.201 -threads 0 -i rtsp://user:pass@172.22.5.202 -map 0:1 -map 1:1 -filter_complex amix=inputs=2:duration=first:dropout_transition=3 -muxdelay 0 -ar 22050 -vn -f flv rtmp://172.22.45.38:1935/live/stream1 -map 0:0 -map 0:1 -muxdelay 0 -ar 22050 -f flv rtmp://172.22.45.38:1935/live/stream4 -map 1:0 -map 1:1 -muxdelay 0 -ar 22050 -f flv rtmp://172.22.45.38:1935/live/stream5
ffmpeg version N-76031-g9099079 Copyright (c) 2000-2015 the FFmpeg developers
built with gcc 4.4.7 (GCC) 20120313 (Red Hat 4.4.7-16)
configuration:
libavutil 55. 4.100 / 55. 4.100
libavcodec 57. 6.100 / 57. 6.100
libavformat 57. 4.100 / 57. 4.100
libavdevice 57. 0.100 / 57. 0.100
libavfilter 6. 11.100 / 6. 11.100
libswscale 4. 0.100 / 4. 0.100
libswresample 2. 0.100 / 2. 0.100
Input #0, rtsp, from 'rtsp://user:pass@172.22.5.201':
Metadata:
title : Media Presentation
Duration: N/A, start: 0.073000, bitrate: N/A
Stream #0:0: Video: h264 (Main), yuv420p(tv, bt709), 1280x720, 10 fps, 25 tbr, 90k tbn, 20 tbc
Stream #0:1: Audio: mp2, 16000 Hz, mono, s16p, 32 kb/s
Input #1, rtsp, from 'rtsp://user:pass@172.22.5.202':
Metadata:
title : Media Presentation
Duration: N/A, start: 0.064000, bitrate: N/A
Stream #1:0: Video: h264 (Baseline), yuv420p, 704x576, 12 fps, 25 tbr, 90k tbn, 24 tbc
Stream #1:1: Audio: adpcm_g726, 8000 Hz, mono, s16, 16 kb/s
Stream #1:2: Data: none
Output #0, flv, to 'rtmp://172.22.45.38:1935/live/stream1':
Metadata:
title : Media Presentation
encoder : Lavf57.4.100
Stream #0:0: Audio: adpcm_swf ([1][0][0][0] / 0x0001), 22050 Hz, mono, s16, 88 kb/s (default)
Metadata:
encoder : Lavc57.6.100 adpcm_swf
Output #1, flv, to 'rtmp://172.22.45.38:1935/live/stream4':
Metadata:
title : Media Presentation
encoder : Lavf57.4.100
Stream #1:0: Video: flv1 (flv) ([2][0][0][0] / 0x0002), yuv420p, 1280x720, q=2-31, 200 kb/s, 10 fps, 1k tbn, 10 tbc
Metadata:
encoder : Lavc57.6.100 flv
Stream #1:1: Audio: adpcm_swf ([1][0][0][0] / 0x0001), 22050 Hz, mono, s16, 88 kb/s
Metadata:
encoder : Lavc57.6.100 adpcm_swf
Output #2, flv, to 'rtmp://172.22.45.38:1935/live/stream5':
Metadata:
title : Media Presentation
encoder : Lavf57.4.100
Stream #2:0: Video: flv1 (flv) ([2][0][0][0] / 0x0002), yuv420p, 704x576, q=2-31, 200 kb/s, 12 fps, 1k tbn, 12 tbc
Metadata:
encoder : Lavc57.6.100 flv
Stream #2:1: Audio: adpcm_swf ([1][0][0][0] / 0x0001), 22050 Hz, mono, s16, 88 kb/s
Metadata:
encoder : Lavc57.6.100 adpcm_swf
Stream mapping:
Stream #0:1 (mp2) -> amix:input0 (graph 0)
Stream #1:1 (g726) -> amix:input1 (graph 0)
amix (graph 0) -> Stream #0:0 (adpcm_swf)
Stream #0:0 -> #1:0 (h264 (native) -> flv1 (flv))
Stream #0:1 -> #1:1 (mp2 (native) -> adpcm_swf (native))
Stream #1:0 -> #2:0 (h264 (native) -> flv1 (flv))
Stream #1:1 -> #2:1 (adpcm_g726 (g726) -> adpcm_swf (native))
Press [q] to stop, [?] for help
[rtsp @ 0x35af820] Thread message queue blocking; consider raising the thread_queue_size option (current value: 8)
[rtsp @ 0x34e1b60] Thread message queue blocking; consider raising the thread_queue_size option (current value: 8)
Past duration 0.930214 too large
Past duration 0.647987 too large
Past duration 0.730217 too large
...