
Recherche avancée
Médias (3)
-
Exemple de boutons d’action pour une collection collaborative
27 février 2013, par
Mis à jour : Mars 2013
Langue : français
Type : Image
-
Exemple de boutons d’action pour une collection personnelle
27 février 2013, par
Mis à jour : Février 2013
Langue : English
Type : Image
-
Collections - Formulaire de création rapide
19 février 2013, par
Mis à jour : Février 2013
Langue : français
Type : Image
Autres articles (38)
-
Personnaliser en ajoutant son logo, sa bannière ou son image de fond
5 septembre 2013, parCertains thèmes prennent en compte trois éléments de personnalisation : l’ajout d’un logo ; l’ajout d’une bannière l’ajout d’une image de fond ;
-
Ecrire une actualité
21 juin 2013, parPrésentez les changements dans votre MédiaSPIP ou les actualités de vos projets sur votre MédiaSPIP grâce à la rubrique actualités.
Dans le thème par défaut spipeo de MédiaSPIP, les actualités sont affichées en bas de la page principale sous les éditoriaux.
Vous pouvez personnaliser le formulaire de création d’une actualité.
Formulaire de création d’une actualité Dans le cas d’un document de type actualité, les champs proposés par défaut sont : Date de publication ( personnaliser la date de publication ) (...) -
Publier sur MédiaSpip
13 juin 2013Puis-je poster des contenus à partir d’une tablette Ipad ?
Oui, si votre Médiaspip installé est à la version 0.2 ou supérieure. Contacter au besoin l’administrateur de votre MédiaSpip pour le savoir
Sur d’autres sites (5988)
-
Change ffmeg output to mp4 format
10 juin 2014, par user1580508Hello I would like to change the following below so that the output would be mp4 or a format that will also work on mobile devices. What do I need to change ?
$sFfmpegPath = "/usr/local/bin/ffmpeg";
$image = $uploaded_path.$timeStamp.".jpg";
if($imgSize!=''){
$mainimage = $uploaded_path.$timeStamp."_".$imgSize.".jpg";
}
$thumbnail=$timeStamp.".jpg";
//$videoSize = '640x480';
if($fileExt[count($fileExt)-1]!='flv'){
//$command = $sFfmpegPath." -i ".$sFilesPath." -ar 22050 -ab 32 -f flv -s ". $VideoSize ." ".$destFile;
$command = $sFfmpegPath." -i ".$sFilesPath." -s 640x480 -ar 44100 -async 44100 -r 59.970 -ac 2 -qscale 5 ".$destFile;
exec($command);
}else{
copy($sFilesPath, $destFile);
}
$iSecond = 1000;
$sInput = " -y -i ";
//$ThumbSize = '200x150';
//$sCommand = $sFfmpegPath.$sInput.$sFilesPath . " -ss " . $iSecond . " -vframes 1 -an -sameq -f image2 -s " . $ThumbSize . " " . $image;
//$sCommand = $sFfmpegPath.$sInput.$sFilesPath . " -y -f image2 -ss 4 -t 0.001 " . $image;
//$sCommand = $sFfmpegPath.$sInput.$sFilesPath . " -y -f image2 -ss 8 -sameq -t 0.001 -s 320*240 " . $image;
//$sCommand = $sFfmpegPath.$sInput.$sFilesPath." -vf thumbnail,scale=300:200 -frames:v 1". $image;
$sCommand = $sFfmpegPath." -itsoffset -4 -i ".$sFilesPath." -vcodec mjpeg -vframes 1 -an -f rawvideo -s 640x480 ".$image;
//-y -f image2 -ss 8 -sameq -t 0.001 -s 320*240
$convert = exec($sCommand);
if($imgSize!=''){
//$sCommand1 = $sFfmpegPath.$sInput.$sFilesPath . " -ss " . $iSecond . " -vframes 1 -an -sameq -f image2 -s " . $imgSize . " " . $mainimage;
//$sCommand1 = $sFfmpegPath.$sInput.$sFilesPath . " -y -f image2 -ss 8 -sameq -t 0.001 -s 320*240 " . $image;
//$sCommand1 = $sFfmpegPath.$sInput.$sFilesPath . " -y -f image2 -ss 4 -t 0.001 " . $image;
//$convert1 = exec($sCommand1);
}
//unlink($file_dest);
return $timeStamp; -
Getting realtime output of ffmpeg with pexpect
27 février 2014, par Shumanhi i'm trying to get the progress info when calling ffmpeg command line tool, with pexpect, i can get the progress with regex, but the problem is after a few seconds, maybe 20 or 10sec, pexpect stops getting new print outs from ffmpeg, it's still running, i saw the output file size growing. am i doing something wrong ?
cmd = 'ffmpeg -i rtmp://xxxx -c copy -absf aac_adtstoasc /usr/tmp/tmp/out.mp4'
import os
import re
import time
import subprocess
import pexpect
thread = pexpect.spawn(cmd)
print 'started'
reo = re.compile("""\S+\s+(?P\d+) # frame
\s\S+\s+(?P<fps>\d+) # fps
\sq=(?P<q>\S+) # q
\s\S+\s+(?P<size>\S+) # size
\stime=(?P<time>\S+) # time
\sbitrate=(?P<bitrate>[\d\.]+) # bitrate
""", re.X)
durationReo = ('(?<=Duration:\s)\S+(?=,)')
cpl = thread.compile_pattern_list([
pexpect.EOF,
reo,
durationReo
])
while True:
i = thread.expect_list(cpl, timeout=None)
if i == 0: # EOF
print "the sub process exited"
break
elif i == 1:
frame_number = thread.match.group(0)
print frame_number
elif i == 2:
durationLine = thread.match.group(0).strip()
print 'Duration:', durationLine
</bitrate></time></size></q></fps>the output is
started
Duration: 03:55:42.00
frame= 74 fps= 55 q=-1.0 size= 984kB time=00:00:06.17 bitrate=1304.5
frame= 89 fps= 43 q=-1.0 size= 1197kB time=00:00:07.43 bitrate=1319.8
frame= 113 fps= 41 q=-1.0 size= 1407kB time=00:00:09.33 bitrate=1234.8
frame= 125 fps= 32 q=-1.0 size= 1613kB time=00:00:10.35 bitrate=1275.6
frame= 132 fps= 29 q=-1.0 size= 1705kB time=00:00:10.95 bitrate=1274.7
frame= 135 fps= 26 q=-1.0 size= 1825kB time=00:00:11.23 bitrate=1330.6
frame= 140 fps= 24 q=-1.0 size= 2022kB time=00:00:11.60 bitrate=1426.5
frame= 140 fps= 21 q=-1.0 size= 2097kB time=00:00:11.70 bitrate=1467.7
frame= 142 fps= 19 q=-1.0 size= 2224kB time=00:00:11.79 bitrate=1544.4
frame= 143 fps= 17 q=-1.0 size= 2447kB time=00:00:11.98 bitrate=1672.8
frame= 145 fps= 16 q=-1.0 size= 2687kB time=00:00:12.07 bitrate=1822.8
frame= 155 fps= 15 q=-1.0 size= 2780kB time=00:00:12.95 bitrate=1757.6
frame= 163 fps= 15 q=-1.0 size= 2940kB time=00:00:13.65 bitrate=1764.2
frame= 167 fps= 14 q=-1.0 size= 3062kB time=00:00:13.83 bitrate=1812.3
frame= 168 fps= 13 q=-1.0 size= 3149kB time=00:00:14.02 bitrate=1839.4
frame= 190 fps= 14 q=-1.0 size= 3322kB time=00:00:15.78 bitrate=1723.6
frame= 213 fps= 15 q=-1.0 size= 3481kB time=00:00:17.78 bitrate=1603.4
frame= 235 fps= 16 q=-1.0 size= 3671kB time=00:00:19.59 bitrate=1534.3
frame= 244 fps= 16 q=-1.0 size= 3790kB time=00:00:20.29 bitrate=1530.0
frame= 256 fps= 16 q=-1.0 size= 3909kB time=00:00:21.31 bitrate=1502.1
frame= 276 fps= 16 q=-1.0 size= 4029kB time=00:00:22.94 bitrate=1438.8
frame= 299 fps= 17 q=-1.0 size= 4177kB time=00:00:24.93 bitrate=1372.1
frame= 339 fps= 19 q=-1.0 size= 4388kB time=00:00:28.28 bitrate=1270.9
frame= 363 fps= 19 q=-1.0 size= 4557kB time=00:00:30.18 bitrate=1236.8
frame= 405 fps= 20 q=-1.0 size= 4587kB time=00:00:33.76 bitrate=1113.1
frame= 421 fps= 20 q=-1.0 size= 4598kB time=00:00:35.15 bitrate=1071.4it stops here but the code is still running. the file size is still growing and the code didn't exit, so it's not because of the timeout bug in pexpect.
and also , if user press ctrl+c to terminate the main program, ffmpeg still runs in the bg, how do i also tell it to exit ?
edit : i found that the culprit might be ffmpeg is not printing out all the info after 10 lines or so. it only update the display where it needs to be changed.so the regex is not matching, so what to do now , make 6 seperate regex ?
edit2 : it seems if i use this regex, it works...
reo = re.compile("""frame=\s*(?P\d+) # frame
\sfps=\s*(?P<fps>\d+) # fps
\sq=\s*(?P<q>\S+) # q
\ssize=\s*(?P<size>\S+) # size
\stime=\s*(?P<time>\S+) # time
\sbitrate=\s*(?P<bitrate>[\d\.]+) # bitrate
""", re.X)
</bitrate></time></size></q></fps>it's saying only match when frame number is updated, ( maybe this implies all the other text are also updated ? )
-
configure : fix pkg-config check for libtls
19 décembre 2017, par sfan5