
Recherche avancée
Médias (91)
-
MediaSPIP Simple : futur thème graphique par défaut ?
26 septembre 2013, par
Mis à jour : Octobre 2013
Langue : français
Type : Video
-
avec chosen
13 septembre 2013, par
Mis à jour : Septembre 2013
Langue : français
Type : Image
-
sans chosen
13 septembre 2013, par
Mis à jour : Septembre 2013
Langue : français
Type : Image
-
config chosen
13 septembre 2013, par
Mis à jour : Septembre 2013
Langue : français
Type : Image
-
SPIP - plugins - embed code - Exemple
2 septembre 2013, par
Mis à jour : Septembre 2013
Langue : français
Type : Image
-
GetID3 - Bloc informations de fichiers
9 avril 2013, par
Mis à jour : Mai 2013
Langue : français
Type : Image
Autres articles (11)
-
Contribute to a better visual interface
13 avril 2011MediaSPIP is based on a system of themes and templates. Templates define the placement of information on the page, and can be adapted to a wide range of uses. Themes define the overall graphic appearance of the site.
Anyone can submit a new graphic theme or template and make it available to the MediaSPIP community. -
Ajouter des informations spécifiques aux utilisateurs et autres modifications de comportement liées aux auteurs
12 avril 2011, parLa manière la plus simple d’ajouter des informations aux auteurs est d’installer le plugin Inscription3. Il permet également de modifier certains comportements liés aux utilisateurs (référez-vous à sa documentation pour plus d’informations).
Il est également possible d’ajouter des champs aux auteurs en installant les plugins champs extras 2 et Interface pour champs extras. -
Qu’est ce qu’un éditorial
21 juin 2013, parEcrivez votre de point de vue dans un article. Celui-ci sera rangé dans une rubrique prévue à cet effet.
Un éditorial est un article de type texte uniquement. Il a pour objectif de ranger les points de vue dans une rubrique dédiée. Un seul éditorial est placé à la une en page d’accueil. Pour consulter les précédents, consultez la rubrique dédiée.
Vous pouvez personnaliser le formulaire de création d’un éditorial.
Formulaire de création d’un éditorial Dans le cas d’un document de type éditorial, les (...)
Sur d’autres sites (4352)
-
ffmpeg -concat slowing down AAC audio files
28 août 2014, par MarcI am concatenating six m4a files with this command
ffmpeg -f concat -i audiofiles.txt -c copy all_audio_edited.m4a
each file has a duration of 6 hours (24 in total) but the concatenation doesn’t work quite well : the first part of the file (the first m4a) is perfect, but all the others are slowed down, so the final duration is >26 hours
What’s wrong ?
Thanks
Marcs-MacBook-Pro:Sof marc$ ffmpeg -report -f concat -i audiofiles.txt -c copy all_audio_edited.m4a
ffmpeg started on 2014-08-28 at 23:35:06
Report written to "ffmpeg-20140828-233506.log"
ffmpeg version 2.3 Copyright (c) 2000-2014 the FFmpeg developers
built on Aug 26 2014 17:59:15 with Apple LLVM version 5.1 (clang-503.0.40) (based on LLVM 3.4svn)
configuration: --prefix=/usr/local/Cellar/ffmpeg/2.3 --enable-shared --enable-pthreads --enable-gpl --enable-version3 --enable-nonfree --enable-hardcoded-tables --enable-avresample --enable-vda --cc=clang --host-cflags= --host-ldflags= --enable-libx264 --enable-libfaac --enable-libmp3lame --enable-libxvid --enable-libfreetype --enable-libtheora --enable-libvorbis --enable-libvpx --enable-librtmp --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libvo-aacenc --enable-libass --enable-ffplay --enable-libspeex --enable-libschroedinger --enable-libfdk-aac --enable-openssl --enable-libopus --enable-frei0r --enable-libcaca --enable-libquvi --enable-libvidstab --enable-libx265 --enable-libopenjpeg --extra-cflags='-I/usr/local/Cellar/openjpeg/1.5.1_1/include/openjpeg-1.5 '
libavutil 52. 92.100 / 52. 92.100
libavcodec 55. 69.100 / 55. 69.100
libavformat 55. 48.100 / 55. 48.100
libavdevice 55. 13.102 / 55. 13.102
libavfilter 4. 11.100 / 4. 11.100
libavresample 1. 3. 0 / 1. 3. 0
libswscale 2. 6.100 / 2. 6.100
libswresample 0. 19.100 / 0. 19.100
libpostproc 52. 3.100 / 52. 3.100
[concat @ 0x7fcb6c803400] Estimating duration from bitrate, this may be inaccurate
Input #0, concat, from 'audiofiles.txt':
Duration: 00:00:00.00, start: 0.000000, bitrate: 279 kb/s
Stream #0:0: Audio: aac (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 280 kb/s
Output #0, ipod, to 'all_audio_edited.m4a':
Metadata:
encoder : Lavf55.48.100
Stream #0:0: Audio: aac (mp4a / 0x6134706D), 44100 Hz, stereo, 280 kb/s
Stream mapping:
Stream #0:0 -> #0:0 (copy)
Press [q] to stop, [?] for help
size= 3020597kB time=26:07:14.44 bitrate= 263.1kbits/s
video:0kB audio:3004946kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.520849% -
use ffmpeg to cut video,the video will have extra duration
17 juin 2021, par Venusffmpeg -ss 2 -i input.mp4 -c copy -t 5 out.mp4



after I executed the ffmpeg command.

the out.mp4 total have 7 seconds,it starts from the second frame of input.mp4 to the seventh frame of input.mp4.

It only has 5 effective seconds of the input.mp4, the last 2 seconds of input.mp4 is empty.

-
airplay-js no start streaming
24 août 2015, par Mikel David Carozzi SanchezI’m writing a local file streaming over airplay protocol with subtitle support, to do that I’m using ffmpeg and the process works really fine, but the main problem is when I try to start streaming after burning the subtitle, the airplay doesn’t work, but when I comment the lines that do the burning works fine. What am I doing wrong ? Here is the code.
var fileSource = './source.mp4';
var subtitleSource = './source.srt';
var http = require('http'),
fs = require('fs'),
util = require('util'),
OS = require('os'),
spawn = require('child_process').spawn,
airplay = require('airplay-js');
var browser = airplay.createBrowser();
var tmpDir = OS.tmpdir();
var tmpFile = tmpDir + '/localTV.mp4';
var sourceSize;
var tmpFileSize;
function init(){
console.log('Starting LocalTV');
console.log('Burning Subtitle into ' + fileSource);
var stat = fs.statSync(fileSource);
sourceSize = stat.size;
fs.exists(tmpFile, function(exists){
if(exists) fs.unlink(tmpFile)
});
var ffmpeg = spawn('./ffmpeg', [
'-i', fileSource,
'-sub_charenc', 'CP1252',
'-i', subtitleSource,
'-map', '0:v',
'-map', '0:a',
'-c', 'copy',
'-map', '1',
'-c:s:0', 'mov_text',
'-metadata:s:s:0', 'language=esp',
tmpFile
]);
ffmpeg.stderr.pipe(process.stdout);
ffmpeg.on('close', function(code){
if(code == 0){
console.log('Burning subtitle finished');
initServer();
}
})
ffmpeg.on('error', function(error){
console.log(error, 'ffmpeg error');
});
// initServer();
return false;
}
function initServer(){
http.createServer(function (req, res) {
var path = tmpFile;
var stat = fs.statSync(path);
var total = stat.size;
if (req.headers['range']) {
var range = req.headers.range;
var parts = range.replace(/bytes=/, "").split("-");
var partialstart = parts[0];
var partialend = parts[1];
var start = parseInt(partialstart, 10);
var end = partialend ? parseInt(partialend, 10) : total-1;
var chunksize = (end-start)+1;
var file = fs.createReadStream(path, {start: start, end: end});
res.writeHead(206, { 'Content-Range': 'bytes ' + start + '-' + end + '/' + total, 'Accept-Ranges': 'bytes', 'Content-Length': chunksize, 'Content-Type': 'video/mp4' });
file.pipe(res);
}else{
res.writeHead(200, { 'Content-Length': total, 'Content-Type': 'video/mp4' });
fs.createReadStream(path).pipe(res);
}
}).listen(1337, '192.168.0.100', function(){
console.log('HTTP Server Started');
startStream();
});
return false;
}
function startStream(){
console.log('Streaming to AppleTV');
var stat = fs.statSync(tmpFile);
tmpFileSize = stat.size;
// if(tmpFileSize >= sourceSize){
browser.on('deviceOn', function(device) {
device.play('http://192.168.0.100:1337', 0, function(status){
console.info(status, 'Playing video');
});
});
browser.on('error', function(err){
console.log(err, 'Error airplay');
})
browser.start();
// }else{
// console.log('Temp file minor size that source, something is wrong');
// }
return false;
}
init();