Recherche avancée

Médias (0)

Mot : - Tags -/xmlrpc

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

Autres articles (52)

  • Les autorisations surchargées par les plugins

    27 avril 2010, par

    Mediaspip core
    autoriser_auteur_modifier() afin que les visiteurs soient capables de modifier leurs informations sur la page d’auteurs

  • MediaSPIP v0.2

    21 juin 2013, par

    MediaSPIP 0.2 is the first MediaSPIP stable release.
    Its official release date is June 21, 2013 and is announced here.
    The zip file provided here only contains the sources of MediaSPIP in its standalone version.
    To get a working installation, you must manually install all-software dependencies on the server.
    If you want to use this archive for an installation in "farm mode", you will also need to proceed to other manual (...)

  • Librairies et binaires spécifiques au traitement vidéo et sonore

    31 janvier 2010, par

    Les logiciels et librairies suivantes sont utilisées par SPIPmotion d’une manière ou d’une autre.
    Binaires obligatoires FFMpeg : encodeur principal, permet de transcoder presque tous les types de fichiers vidéo et sonores dans les formats lisibles sur Internet. CF ce tutoriel pour son installation ; Oggz-tools : outils d’inspection de fichiers ogg ; Mediainfo : récupération d’informations depuis la plupart des formats vidéos et sonores ;
    Binaires complémentaires et facultatifs flvtool2 : (...)

Sur d’autres sites (11389)

  • FFMpeg and WebM/VP8

    25 novembre 2011, par Anand Suresh

    I am trying to use ffmpeg and ffserver to stream VP8 video.

    I am using the following command to start FFMpeg :

    ffmpeg -v 9 -loglevel 99 -f x11grab -s 1440x900 -r2 -i :0.0 -f webm http://localhost:8090/feed1.ffm

    The above command abruptly terminates generating the following error :

    > FFmpeg version 0.6.2-4:0.6.2-1ubuntu1.1, Copyright (c) 2000-2010 the Libav developers
     built on Sep 16 2011 16:57:46 with gcc 4.5.2
     configuration: --extra-version=4:0.6.2-1ubuntu1.1 --prefix=/usr --enable-avfilter --enable-avfilter-lavf --enable-vdpau --enable-bzlib --enable-libgsm --enable-libschroedinger --enable-libspeex --enable-libtheora --enable-libvorbis --enable-pthreads --enable-zlib --enable-libvpx --disable-stripping --enable-runtime-cpudetect --enable-vaapi --enable-gpl --enable-postproc --enable-swscale --enable-x11grab --enable-libdc1394 --enable-shared --disable-static
     WARNING: library configuration mismatch
     libavutil   configuration: --extra-version=4:0.6.2-1ubuntu1.1 --prefix=/usr --enable-avfilter --enable-avfilter-lavf --enable-vdpau --enable-bzlib --enable-libgsm --enable-libschroedinger --enable-libspeex --enable-libtheora --enable-libvorbis --enable-pthreads --enable-zlib --enable-libvpx --disable-stripping --enable-runtime-cpudetect --enable-vaapi --enable-gpl --enable-postproc --enable-swscale --enable-x11grab --enable-libdc1394 --shlibdir=/usr/lib/i686/cmov --cpu=i686 --enable-shared --disable-static --disable-ffmpeg --disable-ffplay
     libavcodec  configuration: --extra-version=4:0.6.2-1ubuntu1.1 --prefix=/usr --enable-avfilter --enable-avfilter-lavf --enable-vdpau --enable-bzlib --enable-libgsm --enable-libschroedinger --enable-libspeex --enable-libtheora --enable-libvorbis --enable-pthreads --enable-zlib --enable-libvpx --disable-stripping --enable-runtime-cpudetect --enable-vaapi --enable-gpl --enable-postproc --enable-swscale --enable-x11grab --enable-libdc1394 --shlibdir=/usr/lib/i686/cmov --cpu=i686 --enable-shared --disable-static --disable-ffmpeg --disable-ffplay
     libavformat configuration: --extra-version=4:0.6.2-1ubuntu1.1 --prefix=/usr --enable-avfilter --enable-avfilter-lavf --enable-vdpau --enable-bzlib --enable-libgsm --enable-libschroedinger --enable-libspeex --enable-libtheora --enable-libvorbis --enable-pthreads --enable-zlib --enable-libvpx --disable-stripping --enable-runtime-cpudetect --enable-vaapi --enable-gpl --enable-postproc --enable-swscale --enable-x11grab --enable-libdc1394 --shlibdir=/usr/lib/i686/cmov --cpu=i686 --enable-shared --disable-static --disable-ffmpeg --disable-ffplay
     libavdevice configuration: --extra-version=4:0.6.2-1ubuntu1.1 --prefix=/usr --enable-avfilter --enable-avfilter-lavf --enable-vdpau --enable-bzlib --enable-libgsm --enable-libschroedinger --enable-libspeex --enable-libtheora --enable-libvorbis --enable-pthreads --enable-zlib --enable-libvpx --disable-stripping --enable-runtime-cpudetect --enable-vaapi --enable-gpl --enable-postproc --enable-swscale --enable-x11grab --enable-libdc1394 --shlibdir=/usr/lib/i686/cmov --cpu=i686 --enable-shared --disable-static --disable-ffmpeg --disable-ffplay
     libavfilter configuration: --extra-version=4:0.6.2-1ubuntu1.1 --prefix=/usr --enable-avfilter --enable-avfilter-lavf --enable-vdpau --enable-bzlib --enable-libgsm --enable-libschroedinger --enable-libspeex --enable-libtheora --enable-libvorbis --enable-pthreads --enable-zlib --enable-libvpx --disable-stripping --enable-runtime-cpudetect --enable-vaapi --enable-gpl --enable-postproc --enable-swscale --enable-x11grab --enable-libdc1394 --shlibdir=/usr/lib/i686/cmov --cpu=i686 --enable-shared --disable-static --disable-ffmpeg --disable-ffplay
     libswscale  configuration: --extra-version=4:0.6.2-1ubuntu1.1 --prefix=/usr --enable-avfilter --enable-avfilter-lavf --enable-vdpau --enable-bzlib --enable-libgsm --enable-libschroedinger --enable-libspeex --enable-libtheora --enable-libvorbis --enable-pthreads --enable-zlib --enable-libvpx --disable-stripping --enable-runtime-cpudetect --enable-vaapi --enable-gpl --enable-postproc --enable-swscale --enable-x11grab --enable-libdc1394 --shlibdir=/usr/lib/i686/cmov --cpu=i686 --enable-shared --disable-static --disable-ffmpeg --disable-ffplay
     libpostproc configuration: --extra-version=4:0.6.2-1ubuntu1.1 --prefix=/usr --enable-avfilter --enable-avfilter-lavf --enable-vdpau --enable-bzlib --enable-libgsm --enable-libschroedinger --enable-libspeex --enable-libtheora --enable-libvorbis --enable-pthreads --enable-zlib --enable-libvpx --disable-stripping --enable-runtime-cpudetect --enable-vaapi --enable-gpl --enable-postproc --enable-swscale --enable-x11grab --enable-libdc1394 --shlibdir=/usr/lib/i686/cmov --cpu=i686 --enable-shared --disable-static --disable-ffmpeg --disable-ffplay
     libavutil     50.15. 1 / 50.15. 1
     libavcodec    52.72. 2 / 52.72. 2
     libavformat   52.64. 2 / 52.64. 2
     libavdevice   52. 2. 0 / 52. 2. 0
     libavfilter    1.19. 0 /  1.19. 0
     libswscale     0.11. 0 /  0.11. 0
     libpostproc   51. 2. 0 / 51. 2. 0
    [x11grab @ 0x9869420]device: :0.0 -> display: :0.0 x: 0 y: 0 width: 1440 height: 900
    [x11grab @ 0x9869420]shared memory extension  found
    [x11grab @ 0x9869420]Probe buffer size limit 5000000 reached
    [x11grab @ 0x9869420]Estimating duration from bitrate, this may be inaccurate
    Input #0, x11grab, from ':0.0':
     Duration: N/A, start: 1322253753.374957, bitrate: 41472 kb/s
       Stream #0.0, 1, 1/1000000: Video: rawvideo, bgra, 1440x900, 1/1, 41472 kb/s, 1 tbr, 1000k tbn, 1 tbc
    [libvpx @ 0x9876540]v0.9.6
    [libvpx @ 0x9876540]--enable-pic --enable-shared --disable-install-bins --disable-install-srcs --target=x86-linux-gcc
    [libvpx @ 0x9876540]vpx_codec_enc_cfg
    [libvpx @ 0x9876540]generic settings
     g_usage:                      0
     g_threads:                    0
     g_profile:                    0
     g_w:                          320
     g_h:                          240
     g_timebase:                   {1/30}
     g_error_resilient:            0
     g_pass:                       0
     g_lag_in_frames:              0
    [libvpx @ 0x9876540]rate control settings
     rc_dropframe_thresh:          0
     rc_resize_allowed:            0
     rc_resize_up_thresh:          60
     rc_resize_down_thresh:        30
     rc_end_usage:                 0
     rc_twopass_stats_in:          (nil)(0)
     rc_target_bitrate:            256
    [libvpx @ 0x9876540]quantizer settings
     rc_min_quantizer:             4
     rc_max_quantizer:             63
    [libvpx @ 0x9876540]bitrate tolerance
     rc_undershoot_pct:            95
     rc_overshoot_pct:             200
    [libvpx @ 0x9876540]decoder buffer model
     rc_buf_sz:                    6000
     rc_buf_initial_sz:            4000
     rc_buf_optimal_sz:            5000
    [libvpx @ 0x9876540]2 pass rate control settings
     rc_2pass_vbr_bias_pct:        50
     rc_2pass_vbr_minsection_pct:  0
     rc_2pass_vbr_maxsection_pct:  400
    [libvpx @ 0x9876540]keyframing settings
     kf_mode:                      1
     kf_min_dist:                  0
     kf_max_dist:                  9999
    [libvpx @ 0x9876540]
    [libvpx @ 0x9876540]vpx_codec_enc_cfg
    [libvpx @ 0x9876540]generic settings
     g_usage:                      0
     g_threads:                    1
     g_profile:                    0
     g_w:                          1440
     g_h:                          900
     g_timebase:                   {1/1}
     g_error_resilient:            0
     g_pass:                       0
     g_lag_in_frames:              0
    [libvpx @ 0x9876540]rate control settings
     rc_dropframe_thresh:          0
     rc_resize_allowed:            0
     rc_resize_up_thresh:          60
     rc_resize_down_thresh:        30
     rc_end_usage:                 0
     rc_twopass_stats_in:          (nil)(0)
     rc_target_bitrate:            200
    [libvpx @ 0x9876540]quantizer settings
     rc_min_quantizer:             1
     rc_max_quantizer:             38
    [libvpx @ 0x9876540]bitrate tolerance
     rc_undershoot_pct:            95
     rc_overshoot_pct:             200
    [libvpx @ 0x9876540]decoder buffer model
     rc_buf_sz:                    6000
     rc_buf_initial_sz:            4000
     rc_buf_optimal_sz:            5000
    [libvpx @ 0x9876540]2 pass rate control settings
     rc_2pass_vbr_bias_pct:        50
     rc_2pass_vbr_minsection_pct:  0
     rc_2pass_vbr_maxsection_pct:  400
    [libvpx @ 0x9876540]keyframing settings
     kf_mode:                      1
     kf_min_dist:                  0
     kf_max_dist:                  12
    [libvpx @ 0x9876540]
    [libvpx @ 0x9876540]vpx_codec_control
    [libvpx @ 0x9876540]  VP8E_SET_CPUUSED:             3
    [libvpx @ 0x9876540]  VP8E_SET_NOISE_SENSITIVITY:   0
    Output #0, webm, to 'http://127.0.0.1:8090/feed1.ffm':
     Metadata:
       encoder         : Lavf52.64.2
       Stream #0.0, 0, 1/1000: Video: libvpx, yuv420p, 1440x900, 1/1, q=2-31, 200 kb/s, 1k tbn, 1 tbc
    Stream mapping:
     Stream #0.0 -> #0.0
    Press [q] to stop encoding
    [webm @ 0x98753b0]Writing block at offset 15, size 158658, pts 0, dts 0, duration 1000, flags 128
    [webm @ 0x98753b0]Starting new cluster at offset 158681 bytes, pts 0

    Can anyone point out what I am doing wrong here ? Why does ffmpeg die everytime it starts a new cluster ?

    Thanks

  • Reduce HLS latency from +30 seconds

    4 juin 2014, par Rick

    Ubuntu 12.04

    nginx 1.2.4

    avconv -version

    avconv version 0.8.10-4:0.8.10-0ubuntu0.12.04.1, Copyright (c) 2000-2013 the Libav developers
     built on Feb  6 2014 20:56:59 with gcc 4.6.3
    avconv 0.8.10-4:0.8.10-0ubuntu0.12.04.1
    libavutil    51. 22. 2 / 51. 22. 2
    libavcodec   53. 35. 0 / 53. 35. 0
    libavformat  53. 21. 1 / 53. 21. 1
    libavdevice  53.  2. 0 / 53.  2. 0
    libavfilter   2. 15. 0 /  2. 15. 0
    libswscale    2.  1. 0 /  2.  1. 0
    libpostproc  52.  0. 0 / 52.  0. 0

    I’m using avconv and nginx to create an HLS stream but right now my latency is regularly well over 30 seconds. After much reading I am aware that HLS has built in latency and that 10s is expected and even preferred but 30s seems quite extreme.

    I’ve seen a lot of discussion on the nginx-rtmp google group, this thread in particular had a lot of suggestions. I have attempted to reduce solve my issue by reducing the hls_fragment and the hls_playlist_length but they haven’t had a significant effect.

    nginx.conf :

    #user  nobody;
    worker_processes  1;

    error_log  logs/error.log debug;

    events {
       worker_connections  1024;
    }

    http {
       include       mime.types;
       default_type  application/octet-stream;

       sendfile        on;
       keepalive_timeout  65;

       server {
           listen       8888;
           server_name  localhost;

           add_header 'Access-Control-Allow-Origin' "*";

           location /hls {
               types {
                   application/vnd.apple.mpegurl m3u8;
                   video/mp2t ts;
               }
               root /tmp;
           }

           # rtmp stat
           location /stat {
               rtmp_stat all;
               rtmp_stat_stylesheet stat.xsl;
           }
           location /stat.xsl {
               # you can move stat.xsl to a different location
               root /usr/build/nginx-rtmp-module;
           }

           # rtmp control
           location /control {
               rtmp_control all;
           }

           error_page   500 502 503 504  /50x.html;
           location = /50x.html {
               root   html;
           }
       }
    }

    rtmp {
       server {
           listen 1935;
           ping 30s;
           notify_method get;

           application myapp {
               live on;

               hls on;
               hls_path /tmp/hls;
               hls_base_url http://x.x.x.x:8888/hls/;
               hls_sync 2ms;
               hls_fragment 2s;

               #hls_variant _low BANDWIDTH=160000;
               #hls_variant _mid BANDWIDTH=320000;
               #hls_variant _hi BANDWIDTH=640000;
           }
       }
    }

    avconv command :

    avconv -r 30 -y -f image2pipe -codec:v mjpeg -i - -f flv -codec:v libx264 -profile:v baseline -preset ultrafast -tune zerolatency -an -f flv rtmp://127.0.0.1:1935/myapp/mystream
  • H.264 and VP8 for still image coding : WebP ?

    1er octobre 2010, par Dark Shikari — H.264, VP8, google, psychovisual optimizations

    JPEG is a very old lossy image format. By today’s standards, it’s awful compression-wise : practically every video format since the days of MPEG-2 has been able to tie or beat JPEG at its own game. The reasons people haven’t switched to something more modern practically always boil down to a simple one — it’s just not worth the hassle. Even if JPEG can be beaten by a factor of 2, convincing the entire world to change image formats after 20 years is nigh impossible. Furthermore, JPEG is fast, simple, and practically guaranteed to be free of any intellectual property worries. It’s been tried before : JPEG-2000 first, then Microsoft’s JPEG XR, both tried to unseat JPEG. Neither got much of anywhere.

    Now Google is trying to dump yet another image format on us, “WebP”. But really, it’s just a VP8 intra frame. There are some obvious practical problems with this new image format in comparison to JPEG ; it doesn’t even support all of JPEG’s features, let alone many of the much-wanted features JPEG was missing (alpha channel support, lossless support). It only supports 4:2:0 chroma subsampling, while JPEG can handle 4:2:2 and 4:4:4. Google doesn’t seem interested in adding any of these features either.

    But let’s get to the meat and see how these encoders stack up on compressing still images. As I explained in my original analysis, VP8 has the advantage of H.264′s intra prediction, which is one of the primary reasons why H.264 has such an advantage in intra compression. It only has i4x4 and i16x16 modes, not i8x8, so it’s not quite as fancy as H.264′s, but it comes close.

    The test files are all around 155KB ; download them for the exact filesizes. For all three, I did a binary search of quality levels to get the file sizes close. For x264, I encoded with --tune stillimage --preset placebo. For libvpx, I encoded with --best. For JPEG, I encoded with ffmpeg, then applied jpgcrush, a lossless jpeg compressor. I suspect there are better JPEG encoders out there than ffmpeg ; if you have one, feel free to test it and post the results. The source image is the 200th frame of Parkjoy, from derf’s page (fun fact : this video was shot here ! More info on the video here.).

    Files : (x264 [154KB], vp8 [155KB], jpg [156KB])

    Results (decoded to PNG) : (x264, vp8, jpg)

    This seems rather embarrassing for libvpx. Personally I think VP8 looks by far the worst of the bunch, despite JPEG’s blocking. What’s going on here ? VP8 certainly has better entropy coding than JPEG does (by far !). It has better intra prediction (JPEG has just DC prediction). How could VP8 look worse ? Let’s investigate.

    VP8 uses a 4×4 transform, which tends to blur and lose more detail than JPEG’s 8×8 transform. But that alone certainly isn’t enough to create such a dramatic difference. Let’s investigate a hypothesis — that the problem is that libvpx is optimizing for PSNR and ignoring psychovisual considerations when encoding the image… I’ll encode with --tune psnr --preset placebo in x264, turning off all psy optimizations. 

    Files : (x264, optimized for PSNR [154KB]) [Note for the technical people : because adaptive quantization is off, to get the filesize on target I had to use a CQM here.]

    Results (decoded to PNG) : (x264, optimized for PSNR)

    What a blur ! Only somewhat better than VP8, and still worse than JPEG. And that’s using the same encoder and the same level of analysis — the only thing done differently is dropping the psy optimizations. Thus we come back to the conclusion I’ve made over and over on this blog — the encoder matters more than the video format, and good psy optimizations are more important than anything else for compression. libvpx, a much more powerful encoder than ffmpeg’s jpeg encoder, loses because it tries too hard to optimize for PSNR.

    These results raise an obvious question — is Google nuts ? I could understand the push for “WebP” if it was better than JPEG. And sure, technically as a file format it is, and an encoder could be made for it that’s better than JPEG. But note the word “could”. Why announce it now when libvpx is still such an awful encoder ? You’d have to be nuts to try to replace JPEG with this blurry mess as-is. Now, I don’t expect libvpx to be able to compete with x264, the best encoder in the world — but surely it should be able to beat an image format released in 1992 ?

    Earth to Google : make the encoder good first, then promote it as better than the alternatives. The reverse doesn’t work quite as well.

    [155KB]