Recherche avancée

Médias (1)

Mot : - Tags -/book

Autres articles (73)

  • Le profil des utilisateurs

    12 avril 2011, par

    Chaque utilisateur dispose d’une page de profil lui permettant de modifier ses informations personnelle. Dans le menu de haut de page par défaut, un élément de menu est automatiquement créé à l’initialisation de MediaSPIP, visible uniquement si le visiteur est identifié sur le site.
    L’utilisateur a accès à la modification de profil depuis sa page auteur, un lien dans la navigation "Modifier votre profil" est (...)

  • 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 (...)

  • Configurer la prise en compte des langues

    15 novembre 2010, par

    Accéder à la configuration et ajouter des langues prises en compte
    Afin de configurer la prise en compte de nouvelles langues, il est nécessaire de se rendre dans la partie "Administrer" du site.
    De là, dans le menu de navigation, vous pouvez accéder à une partie "Gestion des langues" permettant d’activer la prise en compte de nouvelles langues.
    Chaque nouvelle langue ajoutée reste désactivable tant qu’aucun objet n’est créé dans cette langue. Dans ce cas, elle devient grisée dans la configuration et (...)

Sur d’autres sites (7465)

  • Is there a way to filter out I/B/P frames in an MPEG Video stream and access the macroblock information ?

    1er mars 2014, par Vixian

    I am trying make a program for video analysis of MPEG streams in C or C++.

    I was able to find out the frame types in a video file using

    ffprobe -show_frames -pretty File.mpg | grep 'pict_type' > pict_type.txt

    However based on the order of the frames, it seems that they are in "display" (IBBPBBP...) order not in "transmission" order (IPBBPBBPBB...) and it's not exactly ideal way of doing things as I can't assure the command didn't skip any frames or anything as it's outside of my program.

    I have tried OpenCV, but it appears the information I require is too low-level for OpenCV and I believe the solution lies in ffmpeg or libavcodec but the documentation is a nightmare past the CLI. Although I am open to other solutions !

    The information I require are :

    • The type of each frame (I, B, or P)
    • The total number of macroblocks inside a frame
    • The number of intra-coded macroblocks inside a P frame
    • The number of both forward and backward predicted macroblocks inside a B frame
    • The number of just backward predicted macroblocks inside a B frame
    • The number of just forward predircted macroblocks inside a B frame

    I would be very grateful for your help !

  • Did not able to pipe output of the ffmpeg using nodejs stdout

    4 mars 2014, par rughimire

    I am not being able to pipe the output of the ffmpeg over a stdout.

    Following are the block of code what I coded so far.

       var http = require('http')
       , fs = require('fs')
       var child_process = require("child_process")

       http.createServer(function (req, res) {
       console.log("Request:", dump_req(req) , "\n")

       // path of the
       var path = 'test-mp4.mp4'  //test-mp4-long.mp4
       , stat = fs.statSync(path)
       , total = stat.size


       var range = req.headers.range
       , parts = range.replace(/bytes=/, "").split("-")
       , partialstart = parts[0]
       , partialend = parts[1]
       , start = parseInt(partialstart, 10)
       , end = partialend ? parseInt(partialend, 10) : total-1
       , chunksize = (end-start)+1


       console.log('RANGE: ' + start + ' - ' + end + ' = ' + chunksize +  "\n")


       var ffmpeg = child_process.spawn("ffmpeg",[
               "-i", path,             // path
               "-b:v" , "64k",         // bitrate to 64k
               "-bufsize", "64k",
               "-"                     // Output to STDOUT
           ]);


       //set header
       res.writeHead(206
       , { 'Content-Range': 'bytes ' + start + '-' + end + '/' + total
       , 'Accept-Ranges': 'bytes', 'Content-Length': chunksize
       , 'Content-Type': 'video/mp4'
       })

       stdout[ params[1] ] = ffmpeg.stdout

       // Pipe the video output to the client response
       ffmpeg.stdout.pipe(res);

       console.log("Response", dump_res(res), "\n")
       }).listen(1337)

    When i replaced the ffmpeg stuffs from above code, all works fine. Following is the part of the code when i replace the ffmpeg stuffs.

    var file = fs.createReadStream(path, {start: start, end: end})

    And piping like :

    file.pipe(res)

    What wrong I am running ?

    Edit :
    The ffmpeg command works fine. I have tested this through the command line and generating proper output.

  • truehd : tune VLC decoding for ARM.

    19 mars 2014, par Ben Avison
    truehd : tune VLC decoding for ARM.
    

    Profiling on a Raspberry Pi revealed the best performance to correspond
    with VLC_BITS = 5. Results for overall audio decode and the get_vlc2 function
    in particular are as follows :

    Before After
    Mean StdDev Mean StdDev Confidence Change
    6:2 total 348.8 20.1 339.6 15.1 88.8% +2.7% (insignificant)
    6:2 function 38.1 8.1 26.4 4.1 100.0% +44.5%
    8:2 total 339.1 15.4 324.5 15.5 99.4% +4.5%
    8:2 function 33.8 7.0 27.3 5.6 99.7% +23.6%
    6:6 total 604.6 20.8 572.8 20.6 100.0% +5.6%
    6:6 function 95.8 8.4 68.9 8.2 100.0% +39.1%
    8:8 total 766.4 17.6 741.5 21.2 100.0% +3.4%
    8:8 function 106.0 11.4 86.1 9.9 100.0% +23.1%

    Signed-off-by : Michael Niedermayer <michaelni@gmx.at>

    • [DH] libavcodec/mlpdec.c