Recherche avancée

Médias (91)

Autres articles (54)

  • Submit enhancements and plugins

    13 avril 2011

    If you have developed a new extension to add one or more useful features to MediaSPIP, let us know and its integration into the core MedisSPIP functionality will be considered.
    You can use the development discussion list to request for help with creating a plugin. As MediaSPIP is based on SPIP - or you can use the SPIP discussion list SPIP-Zone.

  • Des sites réalisés avec MediaSPIP

    2 mai 2011, par

    Cette page présente quelques-uns des sites fonctionnant sous MediaSPIP.
    Vous pouvez bien entendu ajouter le votre grâce au formulaire en bas de page.

  • HTML5 audio and video support

    13 avril 2011, par

    MediaSPIP uses HTML5 video and audio tags to play multimedia files, taking advantage of the latest W3C innovations supported by modern browsers.
    The MediaSPIP player used has been created specifically for MediaSPIP and can be easily adapted to fit in with a specific theme.
    For older browsers the Flowplayer flash fallback is used.
    MediaSPIP allows for media playback on major mobile platforms with the above (...)

Sur d’autres sites (6278)

  • Is there any way to edit just the metadata of an AVI file, like mkvpropedit does with MKV files ?

    20 juillet 2016, par hmj6jmh

    I am trying to swap the order of 2 audio tracks of an AVI file using ffmpeg.

    ffmpeg -i "infile.avi" -map 0:0 -map 0:2 -map 0:1 -c copy "outfile.avi"

    This works but the file is being re-encoded, not copied. It takes much longer than a straight copy to finish and the resulting file is larger than the original.

    Is there any way to edit just the metadata of an AVI file, like mkvpropedit does with MKV files ? Command line tool preferred.

    General
    Complete name                            : infile.avi
    Format                                   : AVI
    Format/Info                              : Audio Video Interleave
    File size                                : 451 MiB
    Duration                                 : 43mn 11s
    Overall bit rate                         : 1 460 Kbps
    Writing application                      : VirtualDubMod 1.5.10.2 (build 2540/release)
    Writing library                          : VirtualDubMod build 2540/release

    Video
    ID                                       : 0
    Format                                   : MPEG-4 Visual
    Format profile                           : Advanced Simple@L5
    Format settings, BVOP                    : 3
    Format settings, QPel                    : No
    Format settings, GMC                     : No warppoints
    Format settings, Matrix                  : Default (MPEG)
    Muxing mode                              : Packed bitstream
    Codec ID                                 : XVID
    Codec ID/Hint                            : XviD
    Duration                                 : 43mn 11s
    Bit rate                                 : 1 190 Kbps
    Width                                    : 656 pixels
    Height                                   : 368 pixels
    Display aspect ratio                     : 16:9
    Frame rate                               : 23.976 fps
    Color space                              : YUV
    Chroma subsampling                       : 4:2:0
    Bit depth                                : 8 bits
    Scan type                                : Progressive
    Compression mode                         : Lossy
    Bits/(Pixel*Frame)                       : 0.206
    Stream size                              : 367 MiB (82%)
    Writing library                          : XviD 1.2.1 (UTC 2008-12-04)

    Audio #1
    ID                                       : 1
    Format                                   : MPEG Audio
    Format version                           : Version 1
    Format profile                           : Layer 3
    Codec ID                                 : 55
    Codec ID/Hint                            : MP3
    Duration                                 : 43mn 11s
    Bit rate mode                            : Constant
    Bit rate                                 : 128 Kbps
    Channel count                            : 2 channels
    Sampling rate                            : 48.0 KHz
    Compression mode                         : Lossy
    Stream size                              : 39.5 MiB (9%)
    Alignment                                : Aligned on interleaves
    Interleave, duration                     : 42 ms (1.00 video frame)
    Interleave, preload duration             : 504 ms
    Writing library                          : LAME3.98r
    Encoding settings                        : -m s -V 4 -q 2 -lowpass 17 -b 128

    Audio #2
    ID                                       : 2
    Format                                   : MPEG Audio
    Format version                           : Version 1
    Format profile                           : Layer 3
    Codec ID                                 : 55
    Codec ID/Hint                            : MP3
    Duration                                 : 43mn 11s
    Bit rate mode                            : Constant
    Bit rate                                 : 128 Kbps
    Channel count                            : 2 channels
    Sampling rate                            : 48.0 KHz
    Compression mode                         : Lossy
    Stream size                              : 39.5 MiB (9%)
    Alignment                                : Aligned on interleaves
    Interleave, duration                     : 42 ms (1.00 video frame)
    Interleave, preload duration             : 504 ms
    Writing library                          : LAME3.98r
    Encoding settings                        : -m s -V 4 -q 2 -lowpass 17 -b 128
  • How to buffer videojs so preload won't show ?

    9 septembre 2015, par toy

    I’m building video cutting tool using videojs. In order to give the feedback to user right away instead of using ffmpeg to merge the video right away. I just swap the videos instead. However, during the swapping you would see the loading icon when the second video is being loaded. Is there any tricks that would tell videojs to load the video before so when the video plays it would just play right away.

    http://jsfiddle.net/noppanit/odwqqoss/2/

    Here’s my code

    <div>
       <video preload="auto" class="vjs-tech" src="http://www.w3schools.com/html/mov_bbb.mp4">
           <source src="http://www.w3schools.com/html/mov_bbb.mp4" type="video/mp4">
       </source></video>
    </div>
    <div>
       <div>
           <label>From</label>
           <input type="text" class="start-time" />
       </div>
       <div>
           <label>To</label>
           <input type="text" class="stop-time" />
       </div>
       <div>
           <input type="button" value="Select" />
       </div>
    </div>
    <div>
       <video preload="auto" class="vjs-tech" src="http://www.w3schools.com/html/mov_bbb.mp4">
           <source src="http://www.w3schools.com/html/mov_bbb.mp4" type="video/mp4">
       </source></video>
    </div>
    <div>
       <div>
           <label>From</label>
           <input type="text" class="start-time-video1" />
       </div>
       <div>
           <label>To</label>
           <input type="text" class="stop-time-video1" />
       </div>
       <div>
           <input type="button" value="Select" />
       </div>
    </div>
    <div>
       <input type="button" value="Cut!" />
    </div>
    <div></div>




       (function ($) {
       $('#cut-video').on('click', function () {
           var video = videojs("example_video_1");
           var startTime = $('.start-time');
           var stopTime = $('.stop-time');
           video.currentTime(startTime.val());
           video.play();
           video.on('timeupdate', function (e) {
               if (video.currentTime() >= stopTime.val()) {
                   video.pause();
               }
           });

       });

       $('#cut-video1').on('click', function () {
           var video = videojs("example_video_2");
           var startTime = $('.start-time-video1');
           var stopTime = $('.stop-time-video1');
           video.currentTime(startTime.val());
           video.play();
           video.on('timeupdate', function (e) {
               if (video.currentTime() >= stopTime.val()) {
                   video.pause();
               }
           });
       });

       $('#cut').on('click', function () {
           var video = $('<video></video>');
           video.attr('id', 'result1');
           video.addClass('video-js vjs-default-skin');
           video.attr('width', 300);

           var source = $('<source></source>');
           source.attr('src', 'http://www.w3schools.com/html/mov_bbb.mp4');
           source.attr('type', 'video/mp4');

           video.append(source);
           $('#result').append(video);

           var player = videojs("result1");
           var startTime = $('.start-time');
           var stopTime = $('.stop-time');

           player.currentTime(startTime.val());
           player.play();

           player.on('timeupdate', function (e) {
               if (player.currentTime() >= stopTime.val()) {
                   player.src({
                       "type": "video/mp4",
                       src: 'http://www.w3schools.com/html/mov_bbb.mp4'
                   });
                   var startTime1 = $('.start-time-video1');
                   var stopTime1 = $('.stop-time-video1');

                   player.currentTime(startTime1.val());
                   player.play();
                   player.on('timeupdate', function (e1) {
                       if (player.currentTime() >= stopTime1.val()) {
                           player.pause();
                       }
                   });
               }
           });




       });

    })(jQuery);
  • avcodec/v210dec : add support for frame and slice threading

    25 novembre 2019, par Limin Wang
    avcodec/v210dec : add support for frame and slice threading
    

    1, Test server configure :
    [root@localhost ]# cat /proc/cpuinfo |grep "model name"
    model name : Intel(R) Xeon(R) CPU E5-2650 v2 @ 2.60GHz
    model name : Intel(R) Xeon(R) CPU E5-2650 v2 @ 2.60GHz
    ...

    [root@localhost ]# free -h
    total used free shared buff/cache available
    Mem : 102G 1.1G 100G 16M 657M 100G
    Swap : 4.0G 0B 4.0G

    2, Test result :
    encode the v210 input data for testing :
    ./ffmpeg -y -i 4k_422.ts -c:v v210 -vframes 10 test.avi

    master :
    ./ffmpeg -y -threads 1 -stream_loop 1000 -i ./test.avi -benchmark -f null -
    frame=10010 fps= 60 q=-0.0 Lsize=N/A time=00:38:26.30 bitrate=N/A speed=13.7x
    video:5240kB audio:432432kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead : unknown
    bench : utime=101.869s stime=66.181s rtime=167.996s
    bench : maxrss=186552kB

    patch applied :
    ./ffmpeg -y -threads 2 -thread_type slice -stream_loop 1000 -i ./test.avi -benchmark -f null -
    frame=10010 fps= 72 q=-0.0 Lsize=N/A time=00:38:26.30 bitrate=N/A speed=16.5x
    video:5240kB audio:432432kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead : unknown
    bench : utime=103.562s stime=74.858s rtime=139.599s
    bench : maxrss=188616kB

    ./ffmpeg -y -threads 2 -thread_type frame -stream_loop 1000 -i ./test.avi -benchmark -f null -
    frame=10010 fps= 85 q=-0.0 Lsize=N/A time=00:38:26.30 bitrate=N/A speed=19.6x
    video:5240kB audio:432432kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead : unknown
    bench : utime=114.310s stime=92.685s rtime=117.693s
    bench : maxrss=231896kB

    Signed-off-by : Limin Wang <lance.lmwang@gmail.com>
    Signed-off-by : Michael Niedermayer <michael@niedermayer.cc>

    • [DH] libavcodec/v210dec.c
    • [DH] libavcodec/v210dec.h