Recherche avancée

Médias (1)

Mot : - Tags -/Rennes

Autres articles (43)

  • MediaSPIP : Modification des droits de création d’objets et de publication définitive

    11 novembre 2010, par

    Par défaut, MediaSPIP permet de créer 5 types d’objets.
    Toujours par défaut les droits de création et de publication définitive de ces objets sont réservés aux administrateurs, mais ils sont bien entendu configurables par les webmestres.
    Ces droits sont ainsi bloqués pour plusieurs raisons : parce que le fait d’autoriser à publier doit être la volonté du webmestre pas de l’ensemble de la plateforme et donc ne pas être un choix par défaut ; parce qu’avoir un compte peut servir à autre choses également, (...)

  • Personnaliser les catégories

    21 juin 2013, par

    Formulaire de création d’une catégorie
    Pour ceux qui connaissent bien SPIP, une catégorie peut être assimilée à une rubrique.
    Dans le cas d’un document de type catégorie, les champs proposés par défaut sont : Texte
    On peut modifier ce formulaire dans la partie :
    Administration > Configuration des masques de formulaire.
    Dans le cas d’un document de type média, les champs non affichés par défaut sont : Descriptif rapide
    Par ailleurs, c’est dans cette partie configuration qu’on peut indiquer le (...)

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

  • Anomalie #2647 : Logo/Forum : Appels Ajax qui n’aboutissent pas (FF v3.5.7)

    12 avril 2012, par Julien -

    Une seule mise à jour vers la version 3.6.18 de FF suffit à régler le pb. Je ne connais pas les stats navigateur de la galaxie SPIP mais il n’est peut être pas utile de s’embêter pour si peu du coup...

  • HLS Streaming using node JS

    24 avril 2020, par Tirtha

    I'm trying to stream HLS content using node.js. And somehow it is not working. It'll be of great help if someone helps me out.

    



    Problem :-
Trying to serve HLS content from node.js (not live stream, but a set of .ts files and .m3u8 playlist, or in other words VOD content)

    



    Folder Structure

    



    stream_test
|--- app.js
|--- node_modules
|--- streamcontent
        |--- test.m3u8
        |--- segment0.ts
        |--- segment1.ts
        .
        .
        .
        |--- segment127.ts


    



    My app.js looks like this

    



    var http = require('http'),
    url = require('url'),
    path = require('path'),
    fs = require('fs');
var mimeTypes = {
    "html": "text/html",
    "jpeg": "image/jpeg",
    "jpg": "image/jpeg",
    "png": "image/png",
    "js": "text/javascript",
    "css": "text/css",
    "ts": "video/MP2T",
    "m3u8": "application/vnd.apple.mpegurl"};

http.createServer(function(req, res) {
    var uri = url.parse(req.url).pathname;
    var filename = path.join(process.cwd(), unescape(uri));
    var stats;

    console.log('filename '+filename);

    try {
        stats = fs.lstatSync(filename); // throws if path doesn't exist
    } catch (e) {
        res.writeHead(404, {'Content-Type': 'text/plain'});
        res.write('404 Not Found\n');
        res.end();
        return;
    }


    if (stats.isFile()) {
        // path exists, is a file
        var mimeType = mimeTypes[path.extname(filename).split(".")[1]];
        res.writeHead(200, {'Content-Type': mimeType} );

        var fileStream = fs.createReadStream(filename);
        fileStream.pipe(res);
    } else if (stats.isDirectory()) {
        // path exists, is a directory
        res.writeHead(200, {'Content-Type': 'text/plain'});
        res.write('Index of '+uri+'\n');
        res.write('TODO, show index?\n');
        res.end();
    } else {
        // Symbolic link, other?
        // TODO: follow symlinks?  security?
        res.writeHead(500, {'Content-Type': 'text/plain'});
        res.write('500 Internal server error\n');
        res.end();
    }

}).listen(8000);


    



    The test.m3u8 looks like this

    



    #EXTM3U
#EXT-X-VERSION:3
#EXT-X-MEDIA-SEQUENCE:0
#EXT-X-ALLOW-CACHE:YES
#EXT-X-TARGETDURATION:19
#EXT-X-PLAYLIST-TYPE:VOD
#EXTINF:12.595922,
segment0.ts
.
.
.


    



    I used ffmpeg to create the segments and palylist

    



    ffmpeg -i video-a.mp4  -c:a libmp3lame -ar 48000 -ab 64k  -c:v libx264   -b:v 128k -flags -global_header -map 0 -f segment  -segment_list test.m3u8 -segment_time 30 -segment_format mpegts segment_%05d.ts


    



    Test Scenraio :-
Works fine if served from Apache, does not if served from node.

    



    Test Tool :-
VNC Player

    


  • HLS Streaming using node JS

    20 février 2014, par Tirtha

    I'm trying to stream HLS content using node.js. And somehow it is not working. It'll be of great help if someone helps me out.

    Problem :-
    Trying to serve HLS content from node.js (not live stream, but a set of .ts files and .m3u8 playlist, or in other words VOD content)

    Folder Structure

    stream_test
    |--- app.js
    |--- node_modules
    |--- streamcontent
           |--- test.m3u8
           |--- segment0.ts
           |--- segment1.ts
           .
           .
           .
           |--- segment127.ts

    My app.js looks like this

    var http = require('http'),
       url = require('url'),
       path = require('path'),
       fs = require('fs');
    var mimeTypes = {
       "html": "text/html",
       "jpeg": "image/jpeg",
       "jpg": "image/jpeg",
       "png": "image/png",
       "js": "text/javascript",
       "css": "text/css",
       "ts": "video/MP2T",
       "m3u8": "application/vnd.apple.mpegurl"};

    http.createServer(function(req, res) {
       var uri = url.parse(req.url).pathname;
       var filename = path.join(process.cwd(), unescape(uri));
       var stats;

       console.log('filename '+filename);

       try {
           stats = fs.lstatSync(filename); // throws if path doesn't exist
       } catch (e) {
           res.writeHead(404, {'Content-Type': 'text/plain'});
           res.write('404 Not Found\n');
           res.end();
           return;
       }


       if (stats.isFile()) {
           // path exists, is a file
           var mimeType = mimeTypes[path.extname(filename).split(".")[1]];
           res.writeHead(200, {'Content-Type': mimeType} );

           var fileStream = fs.createReadStream(filename);
           fileStream.pipe(res);
       } else if (stats.isDirectory()) {
           // path exists, is a directory
           res.writeHead(200, {'Content-Type': 'text/plain'});
           res.write('Index of '+uri+'\n');
           res.write('TODO, show index?\n');
           res.end();
       } else {
           // Symbolic link, other?
           // TODO: follow symlinks?  security?
           res.writeHead(500, {'Content-Type': 'text/plain'});
           res.write('500 Internal server error\n');
           res.end();
       }

    }).listen(8000);

    The test.m3u8 looks like this

    #EXTM3U
    #EXT-X-VERSION:3
    #EXT-X-MEDIA-SEQUENCE:0
    #EXT-X-ALLOW-CACHE:YES
    #EXT-X-TARGETDURATION:19
    #EXT-X-PLAYLIST-TYPE:VOD
    #EXTINF:12.595922,
    segment0.ts
    .
    .
    .

    I used ffmpeg to create the segments and palylist

    ffmpeg -i video-a.mp4  -c:a libmp3lame -ar 48000 -ab 64k  -c:v libx264   -b:v 128k -flags -global_header -map 0 -f segment  -segment_list test.m3u8 -segment_time 30 -segment_format mpegts segment_%05d.ts

    Test Scenraio :-
    Works fine if served from Apache, does not if served from node.

    Test Tool :-
    VNC Player