Recherche avancée

Médias (1)

Mot : - Tags -/publishing

Autres articles (105)

  • Qualité du média après traitement

    21 juin 2013, par

    Le 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 2011

    Vous 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, par

    La 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 Knopf

    I 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 Night

    I 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 and ffmpeg.exe -i input.mp4 -r 5 -t 5 test2\%d.jpg (for a fps 25 video), I would expect that the results in test2 is a subsequence of the results in test with interval 5. However what I got are :
    Screenshot of results

    From the thumbnails, it is obvious that images 112 125 in test does not appear in test2. 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 New

    I 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/stream5

    Problem : 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
    ...