Recherche avancée

Médias (91)

Autres articles (76)

  • Initialisation de MediaSPIP (préconfiguration)

    20 février 2010, par

    Lors de l’installation de MediaSPIP, celui-ci est préconfiguré pour les usages les plus fréquents.
    Cette préconfiguration est réalisée par un plugin activé par défaut et non désactivable appelé MediaSPIP Init.
    Ce plugin sert à préconfigurer de manière correcte chaque instance de MediaSPIP. Il doit donc être placé dans le dossier plugins-dist/ du site ou de la ferme pour être installé par défaut avant de pouvoir utiliser le site.
    Dans un premier temps il active ou désactive des options de SPIP qui ne le (...)

  • Publier sur MédiaSpip

    13 juin 2013

    Puis-je poster des contenus à partir d’une tablette Ipad ?
    Oui, si votre Médiaspip installé est à la version 0.2 ou supérieure. Contacter au besoin l’administrateur de votre MédiaSpip pour le savoir

  • Les vidéos

    21 avril 2011, par

    Comme les documents de type "audio", Mediaspip affiche dans la mesure du possible les vidéos grâce à la balise html5 .
    Un des inconvénients de cette balise est qu’elle n’est pas reconnue correctement par certains navigateurs (Internet Explorer pour ne pas le nommer) et que chaque navigateur ne gère en natif que certains formats de vidéos.
    Son avantage principal quant à lui est de bénéficier de la prise en charge native de vidéos dans les navigateur et donc de se passer de l’utilisation de Flash et (...)

Sur d’autres sites (9844)

  • Revision f60a3910c4 : Move token_cache from cost_coeffs to MACROBLOCK This commit moves token_cache b

    11 octobre 2013, par Jingning Han

    Changed Paths :
     Modify /vp9/encoder/vp9_block.h


     Modify /vp9/encoder/vp9_rdopt.c



    Move token_cache from cost_coeffs to MACROBLOCK

    This commit moves token_cache buffer into macroblock struct, instead
    of defining as a local variable in cost_coeffs. This avoids repeatedly
    re-allocating memory space in the rate-distortion optimization loop.

    The runtime at speed 0 reduces :
    bus 2000kbps, 161692ms to 159951ms
    football 600kbps, 229505ms to 225821ms

    Change-Id : If7da6b0b6d8c5138a16271a33c4548fba33d8840

  • php ming flash swf slideshow to mp4/avi

    19 août 2013, par Stefan

    After hours of searching and trying i finally got a nice script together that generates a good looking Flash .swf file with a nice transaction in between de images.
    It works great if you access the swf file directly in a browser, depending on the amount of images the flash created takes anywhere between 10 and 60 seconds.
    But when uploading to Youtube the movie created flashed by in one second.
    Because swf isnt really a accepted fileformat for Youtube we decided to convert the flash file to mp4 or avi using ffmpeg.
    Unfortunally that didnt work, it had the same effect as the youtube movie.
    We had a old version of ffmpeg and updated that to a recent version and tried to convert again with the same result.
    The main thing i see is that ffmpeg cant see the swf file duration and bitrate, they are both 'N/A' while were do set them in the php script.
    I thought it looked like the Metadata doesnt get written and i cant find anything on that regarding Ming.
    But i downloaded a phpclass that extracts the metadata from the swf and that tells me the framerate etc is getting set.

    Now i have to admit i havent really tested with the new version because the commandline options are a little different but ill work on that after i post this.
    In the previous version we tried setting the framerate of the source swf file, but that didnt work either.

    Anyone here that can has a idea ? it would be greatly appriciated.

    PHP Ming Script :

         $fps = 30;
            foreach($objects as $objectId => $images){
                   // START FLASH MOVIE
                   $m = new SWFMovie();
                   $m->setDimension($width, $height);
                   $m->setBackground(0, 0, 0);
                   $m->setRate($fps);
                   $m->setFrames(count($images)*202); //count(images)* 2 breaks *($fps*$breakTime)+22(fadeOut))

                   $i = 0;
                   foreach($images as $image){

                       // REMOVE THE BACKGROUND IMAGE
                       if($behind){
                           $m->remove($behind);
                       }
                       // # REMOVE

                       // LOAD NEW IMAGE
                       $img = new SWFBitmap(fopen($image,"rb"));
                       $pic = $m->add($img);
                       $pic->setdepth(3);
                       // # LOAD

                       // BREAK TIME
                       for($j=1;$j<=($fps*$breakTime);$j++){
                           $m->nextFrame();
                       }
                       $m->remove($pic);
                       // # BREAK

                       // LOAD THE NEXT IMAGE AS BACKGROUND, IF LAST IMAGE, LOAD FIRST
                       $nextBackgrondImage =($images[$i+1]) ? $images[$i+1] : $images[0] ;
                       $img = new SWFBitmap(fopen($nextBackgrondImage,"rb"));
                       $behind = $m->add($img);
                       $behind->setdepth(2);
                       // # LOAD

                       // AND FADE OUT AGAIN
                       $img = fadeOut($image, $width, $height);
                       $pic = $m->add($img);
                       $pic->setdepth(3);
                       // # FADE OUT

                       // BREAK TIME
                       for($j=1;$j<=($fps*$breakTime);$j++){
                           $m->nextFrame();
                       }
                       $m->remove($pic);
                       # BREAK
                       $i++;
                   }      
                   $m->save('./flash/'.$nvmId.'_'.$objectId.'.swf');  
               unset($m);
               }
    }

    FFMPEG version :

    root@server:~# ffmpeg -version
    \FFmpeg version SVN-r26402, Copyright (c) 2000-2011 the FFmpeg developers
     built on Aug 15 2013 20:43:21 with gcc 4.4.5
     configuration: --enable-libmp3lame --enable-libtheora --enable-libx264
     --enable-libgsm --enable-postproc --enable-libxvid --enable-libfaac --enable-pthreads
     --enable-libvorbis --enable-gpl --enable-x11grab --enable-nonfree
     libavutil     50.36. 0 / 50.36. 0
     libavcore      0.16. 1 /  0.16. 1
     libavcodec    52.108. 0 / 52.108. 0
     libavformat   52.93. 0 / 52.93. 0
     libavdevice   52. 2. 3 / 52. 2. 3
     libavfilter    1.74. 0 /  1.74. 0
     libswscale     0.12. 0 /  0.12. 0
     libpostproc   51. 2. 0 / 51. 2. 0
    FFmpeg SVN-r26402
    libavutil     50.36. 0 / 50.36. 0
    libavcore      0.16. 1 /  0.16. 1
    libavcodec    52.108. 0 / 52.108. 0
    libavformat   52.93. 0 / 52.93. 0
    libavdevice   52. 2. 3 / 52. 2. 3
    libavfilter    1.74. 0 /  1.74. 0
    libswscale     0.12. 0 /  0.12. 0
    libpostproc   51. 2. 0 / 51. 2. 0

    FFMPEG command

    root@server:~# ffmpeg -r 30 -i /pathTo/flash/73003_8962011.swf -r 30 -ar 22050 -b 2048k /pathTo/flash/output.avi
    FFmpeg version SVN-r26402, Copyright (c) 2000-2011 the FFmpeg developers
     built on Aug 15 2013 20:43:21 with gcc 4.4.5
     configuration: --enable-libmp3lame --enable-libtheora --enable-libx264 --enable-libgsm --enable-postproc --enable-libxvid
     --enable-libfaac --enable-pthreads --enable-libvorbis --enable-gpl --enable-x11grab --enable-nonfree
     libavutil     50.36. 0 / 50.36. 0
     libavcore      0.16. 1 /  0.16. 1
     libavcodec    52.108. 0 / 52.108. 0
     libavformat   52.93. 0 / 52.93. 0
     libavdevice   52. 2. 3 / 52. 2. 3
     libavfilter    1.74. 0 /  1.74. 0
     libswscale     0.12. 0 /  0.12. 0
     libpostproc   51. 2. 0 / 51. 2. 0
    [swf @ 0x1ca1510] Estimating duration from bitrate, this may be inaccurate
    Input #0, swf, from '/pathTo/flash/73003_8962011.swf':
     Duration: N/A, bitrate: N/A
       Stream #0.0: Video: mjpeg, yuvj420p, 360x480, 30 fps, 30 tbr, 30 tbn, 30 tbc
    File '/pathTo/output.avi' already exists. Overwrite ? [y/N] y
    [buffer @ 0x1cb42d0] w:360 h:480 pixfmt:yuvj420p
    [ffsink @ 0x1cb4570] auto-inserting filter 'auto-inserted scaler 0' between the filter 'src' and the filter 'out'
    [scale @ 0x1cb4870] w:360 h:480 fmt:yuvj420p -> w:360 h:480 fmt:yuv420p flags:0xa0000004
    Output #0, avi, to '/pathTo/flash/output.avi':
     Metadata:
       ISFT            : Lavf52.93.0
       Stream #0.0: Video: mpeg4, yuv420p, 360x480, q=2-31, 2048 kb/s, 30 tbn, 30 tbc
    Stream mapping:
     Stream #0.0 -> #0.0
    Press [q] to stop encoding
    Input Stream #0.0 frame size changed to 640x480, yuvj420p
    Input Stream #0.0 frame size changed to 640x480, yuvj420p
    Input Stream #0.0 frame size changed to 640x480, yuvj420p
    Input Stream #0.0 frame size changed to 640x480, yuvj420p
    Input Stream #0.0 frame size changed to 640x480, yuvj420p
    Input Stream #0.0 frame size changed to 640x480, yuvj420p
    Input Stream #0.0 frame size changed to 640x480, yuvj420p
    Input Stream #0.0 frame size changed to 640x480, yuvj420p
    Input Stream #0.0 frame size changed to 640x480, yuvj420p
    Input Stream #0.0 frame size changed to 640x480, yuvj420p
    Input Stream #0.0 frame size changed to 640x480, yuvj420p
    Input Stream #0.0 frame size changed to 640x480, yuvj420p
    Input Stream #0.0 frame size changed to 640x480, yuvj420p
    Input Stream #0.0 frame size changed to 640x480, yuvj420p
    Input Stream #0.0 frame size changed to 640x480, yuvj420p
    Input Stream #0.0 frame size changed to 640x480, yuvj420p
    Input Stream #0.0 frame size changed to 640x480, yuvj420p
    Input Stream #0.0 frame size changed to 640x480, yuvj420p
    Input Stream #0.0 frame size changed to 640x480, yuvj420p
    Input Stream #0.0 frame size changed to 640x480, yuvj420p
    Input Stream #0.0 frame size changed to 640x480, yuvj420p
    Input Stream #0.0 frame size changed to 640x480, yuvj420p
    Input Stream #0.0 frame size changed to 640x480, yuvj420p
    Input Stream #0.0 frame size changed to 640x480, yuvj420p
    Input Stream #0.0 frame size changed to 640x480, yuvj420p
    Input Stream #0.0 frame size changed to 640x480, yuvj420p
    Input Stream #0.0 frame size changed to 640x480, yuvj420p
    Input Stream #0.0 frame size changed to 640x480, yuvj420p
    Input Stream #0.0 frame size changed to 640x480, yuvj420p
    Input Stream #0.0 frame size changed to 640x480, yuvj420p
    Input Stream #0.0 frame size changed to 640x480, yuvj420p
    Input Stream #0.0 frame size changed to 640x480, yuvj420p
    Input Stream #0.0 frame size changed to 640x480, yuvj420p
    Input Stream #0.0 frame size changed to 640x480, yuvj420p
    Input Stream #0.0 frame size changed to 640x480, yuvj420p
    Input Stream #0.0 frame size changed to 640x480, yuvj420p
    frame=   39 fps=  0 q=17.5 Lsize=     524kB time=1.30 bitrate=3304.9kbits/s
    video:518kB audio:0kB global headers:0kB muxing overhead 1.250735%

    Metadata :

    DEBUG: Data values initialized
    DEBUG: Opened ./flash/98701_8965910.swf
    DEBUG: Read MAGIC signature: FWS
    DEBUG: Read VERSION: 9
    DEBUG: Partial SIZE read: 225
    DEBUG: Partial SIZE read: 28928
    DEBUG: Partial SIZE read: 1441792
    DEBUG: Partial SIZE read: 0
    DEBUG: Total SIZE: 1470945
    DEBUG: RECT field size: 15 bits
    DEBUG: RECT binary value: 000000000000000 (0)
    DEBUG: RECT binary value: 011001000000000 (640)
    DEBUG: RECT binary value: 000000000000000 (0)
    DEBUG: RECT binary value: 010010110000000 (480)
    DEBUG: Frame rate: 30.0
    DEBUG: Frames: 2222
    DEBUG: Finished processing ./flash/98701_8965910.swf
    FILE: ./flash/98701_8965910.swf
    MAGIC: FWS
    VERSION: 9
    SIZE: 1470945 bytes
    WIDHT: 640
    HEIGHT: 480
    FPS: 30.0 Frames/s
    FRAMES: 2222 FRAME
  • Metal Gear Solid VP3 Easter Egg

    4 août 2011, par Multimedia Mike — Game Hacking

    Metal Gear Solid : The Twin Snakes for the Nintendo GameCube is very heavy on the cutscenes. Most of them are animated in real-time but there are a bunch of clips — normally of a more photo-realistic nature — that the developers needed to compress using a conventional video codec. What did they decide to use for this task ? On2 VP3 (forerunner of Theora) in a custom transport format. This is only the second game I have seen in the wild that uses pure On2 VP3 (first was a horse game). Reimar and I sorted out most of the details sometime ago. I sat down today and wrote a FFmpeg / Libav demuxer for the format, mostly to prove to myself that I still could.

    Things went pretty smoothly. We suspected that there was an integer field that indicated the frame rate, but 18 fps is a bit strange. I kept fixating on a header field that read 0x41F00000. Where have I seen that number before ? Oh, of course — it’s the number 30.0 expressed as an IEEE 32-bit float. The 4XM format pulled the same trick.

    Hexadecimal Easter Egg
    I know I finished the game years ago but I really can’t recall any of the clips present in the samples directory. The file mgs1-60.vp3 contains a computer screen granting the player access and illustrates this with a hexdump. It looks something like this :



    Funny, there are only 22 bytes on a line when there should be 32 according to the offsets. But, leave it to me to try to figure out what the file type is, regardless. I squinted and copied the first 22 bytes into a file :

     1F 8B 08 00   85 E2 17 38   00 03 EC 3A   0D 78 54 D5
     38 00 03 EC   3A 0D
    

    And the answer to the big question :

    $ file mgsfile
    mgsfile : gzip compressed data, from Unix, last modified : Wed Oct 27 22:43:33 1999
    

    A gzip’d file from 1999. I don’t know why I find this stuff so interesting, but I do. I guess it’s no more and less strange than writing playback systems like this.