
Recherche avancée
Autres articles (61)
-
Pas question de marché, de cloud etc...
10 avril 2011Le vocabulaire utilisé sur ce site essaie d’éviter toute référence à la mode qui fleurit allègrement
sur le web 2.0 et dans les entreprises qui en vivent.
Vous êtes donc invité à bannir l’utilisation des termes "Brand", "Cloud", "Marché" etc...
Notre motivation est avant tout de créer un outil simple, accessible à pour tout le monde, favorisant
le partage de créations sur Internet et permettant aux auteurs de garder une autonomie optimale.
Aucun "contrat Gold ou Premium" n’est donc prévu, aucun (...) -
Activation de l’inscription des visiteurs
12 avril 2011, parIl est également possible d’activer l’inscription des visiteurs ce qui permettra à tout un chacun d’ouvrir soit même un compte sur le canal en question dans le cadre de projets ouverts par exemple.
Pour ce faire, il suffit d’aller dans l’espace de configuration du site en choisissant le sous menus "Gestion des utilisateurs". Le premier formulaire visible correspond à cette fonctionnalité.
Par défaut, MediaSPIP a créé lors de son initialisation un élément de menu dans le menu du haut de la page menant (...) -
Déploiements possibles
31 janvier 2010, parDeux types de déploiements sont envisageable dépendant de deux aspects : La méthode d’installation envisagée (en standalone ou en ferme) ; Le nombre d’encodages journaliers et la fréquentation envisagés ;
L’encodage de vidéos est un processus lourd consommant énormément de ressources système (CPU et RAM), il est nécessaire de prendre tout cela en considération. Ce système n’est donc possible que sur un ou plusieurs serveurs dédiés.
Version mono serveur
La version mono serveur consiste à n’utiliser qu’une (...)
Sur d’autres sites (5953)
-
ffmpeg - convert video into individual frame image files ? [closed]
2 janvier 2021, par MrFunreali am trying to turn every single frame of a video file into png files using ffmpeg.
i have found several guides on how to do that, most of which look the same, by doing this :




ffmpeg -i vid.mp4 frames/out%03d.png




However, this does not work. FFmpeg for some reason just replaces the "%0" of the output file with the entire path of the bat file and then tells me that's wrong, like so :




[image2 @ 000002c6aa87f680] Could not open file :
frames/outG :\Videos\vid_to_frames\3_video_to_frames.bat3d.jpg
av_interleaved_write_frame() : I/O error




If i remove the "%0" of the output file it creates a single frame and gives me an error, telling me i need to put the "%03d" into the name, which doesn't work.




[image2 @ 000001dc9a09fd40] Could not get frame filename number 2 from
pattern '$filename3d.png'. Use '-frames:v 1' for a single image, or
'-update' option, or use a pattern such as %03d within the filename.
av_interleaved_write_frame() : Invalid argument




Is this just broken ?
I found about 20 guides on how to do it, all of which use this exact same method and it just doesn't work.


Does anyone know another way to do this via ffmpeg ? (it must be via ffmpeg)


-
FFmpeg individual image zoom-in transition
19 juillet 2024, par The SomebodyI'm stuck with an ffmpeg command that needs to generate a video. Originally, I had an ffmpeg command that would loop through images and change after a certain amount of time. Now, to improve the video a little bit, I wish to add a zoom in effect on each image.


I am facing an issue that when I generate the video, the images no longer change. That is, it is constantly first image. I can the zoom effect replay as it should (for every changing image), but the images do not actually change (it is always the first picture). Any advice/suggestion would be appreciated. I am sure, it will be something wrong with the syntax, but now I am at a loss..


Original code, that works fine (without the zoom in) :


ffmpeg -n -loop 1 -t 26.01 -i "\image_0.png" -loop 1 -t 26.01 -i "\image_1.png"
 -loop 1 -t 26.01 -i "\image_2.png" -loop 1 -t 26.01 -i "\image_3.png" 
 -i "/speech.mp3" 
 -filter_complex "[0:v]scale=1080x1920,setpts=PTS-STARTPTS[v0]; 
 [1:v]scale=1080x1920,setpts=PTS-STARTPTS[v1]; 
 [2:v]scale=1080x1920,setpts=PTS-STARTPTS[v2]; 
 [3:v]scale=1080x1920,setpts=PTS-STARTPTS[v3]; 
 [v0][v1][v2][v3]concat=n=4:v=1:a=0,subtitles='"C\:/transcription.ass"'[v]" -map "[v]" -map 4:a -c:v libx264 -c:a aac -b:a 192k
 -shortest "C:\Videos/Video.mp4" -loglevel verbose



Code that does not work as intended :


ffmpeg -n -loop 1 -t 26.01 -i "\image_0.png" -loop 1 -t 26.01 -i "\image_1.png" -loop 1 -t 26.01 -i "\image_2.png" -loop 1 -t 26.01 -i "\image_3.png" -i "/speech.mp3" -filter_complex "[0:v]scale=1080x1920,zoompan=z='zoom+0.001':d=650:s=1080x1920:x=iw/2-(iw/zoom/2):y=ih/2-(ih/zoom/2),setpts=PTS-STARTPTS[v0]; [1:v]scale=1080x1920,zoompan=z='zoom+0.001':d=650:s=1080x1920:x=iw/2-(iw/zoom/2):y=ih/2-(ih/zoom/2),setpts=PTS-STARTPTS[v1]; [2:v]scale=1080x1920,zoompan=z='zoom+0.001':d=650:s=1080x1920:x=iw/2-(iw/zoom/2):y=ih/2-(ih/zoom/2),setpts=PTS-STARTPTS[v2]; [1:v]scale=1080x1920,zoompan='z=zoom+0.001':d=650:s=1080x1920:x=iw/2-(iw/zoom/2):y=ih/2-(ih/zoom/2),setpts=PTS-STARTPTS[v3]; [v0][v1][v2][v3]concat=n=4:v=1:a=0,subtitles='C\:/transcription.ass'[v]" -map "[v]" -map 4:a -c:v libx264 -c:a aac -b:a 192k -shortest "C:\Videos/Video.mp4" -loglevel verbose



I tried to change and see if it really is just the first image that's used through out the video and confirmed it. Also tried to play around with the symbols '"', ' ' ', etc.


-
Extract individual frames from video and pipe them to StandardOutput in FFmpeg
13 novembre 2019, par Nicke ManarinI’m trying to extract frames from a video using FFmpeg. But instead of letting FFmpeg write the files to disk, I’m trying to get the frames directly from
StandardOutput
.I’m not sure if it’s feasible. I’m expecting to get each frame individually as they get decoded by reading and waiting until all frames are extracted.
With the current code, I think that I’m getting all frames at once.
Command
ffmpeg -i "C:\video.mp4" -r 30 -ss 00:00:10.000 -to 00:01:20.000 -hide_banner -c:v png -f image2pipe -
Code
var start = TimeSpan.FromMilliseconds(SelectionSlider.LowerValue);
var end = TimeSpan.FromMilliseconds(SelectionSlider.UpperValue);
var info = new ProcessStartInfo(UserSettings.All.FfmpegLocation)
{
Arguments = $" -i \"{VideoPath}\" -r {fps} -ss {start:hh\\:mm\\:ss\\.fff} " +
"-to {end:hh\\:mm\\:ss\\.fff} -hide_banner -c:v png -f image2pipe -",
CreateNoWindow = true,
ErrorDialog = false,
UseShellExecute = false,
RedirectStandardError = true,
RedirectStandardOutput = true
};
var process = new Process();
process.StartInfo = info;
process.Start();
while (!process.StandardOutput.EndOfStream)
{
if (_cancelled)
{
process.Kill();
return;
}
//This returns me the entire byte array, of all frames.
var bytes = default(byte[]);
using (var memstream = new MemoryStream())
{
process.StandardOutput.BaseStream.CopyTo(memstream);
bytes = memstream.ToArray();
}
}
I also tried to use
process.BeginOutputReadLine()
and wait for each frame inOutputDataReceived
. But it returns parts of each frame, like the 10 first bytes, than other 50 bytes, it’s erratic.Is there any way to get the frames separately via the output stream ?