
Recherche avancée
Médias (1)
-
Rennes Emotion Map 2010-11
19 octobre 2011, par
Mis à jour : Juillet 2013
Langue : français
Type : Texte
Autres articles (43)
-
MediaSPIP : Modification des droits de création d’objets et de publication définitive
11 novembre 2010, parPar 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, parFormulaire 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, parMediaSPIP 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 TirthaI'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 TirthaI'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.tsMy
app.js
looks like thisvar 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