
Recherche avancée
Médias (1)
-
Collections - Formulaire de création rapide
19 février 2013, par
Mis à jour : Février 2013
Langue : français
Type : Image
Autres articles (55)
-
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 -
List of compatible distributions
26 avril 2011, parThe table below is the list of Linux distributions compatible with the automated installation script of MediaSPIP. Distribution nameVersion nameVersion number Debian Squeeze 6.x.x Debian Weezy 7.x.x Debian Jessie 8.x.x Ubuntu The Precise Pangolin 12.04 LTS Ubuntu The Trusty Tahr 14.04
If you want to help us improve this list, you can provide us access to a machine whose distribution is not mentioned above or send the necessary fixes to add (...) -
Librairies et binaires spécifiques au traitement vidéo et sonore
31 janvier 2010, parLes logiciels et librairies suivantes sont utilisées par SPIPmotion d’une manière ou d’une autre.
Binaires obligatoires FFMpeg : encodeur principal, permet de transcoder presque tous les types de fichiers vidéo et sonores dans les formats lisibles sur Internet. CF ce tutoriel pour son installation ; Oggz-tools : outils d’inspection de fichiers ogg ; Mediainfo : récupération d’informations depuis la plupart des formats vidéos et sonores ;
Binaires complémentaires et facultatifs flvtool2 : (...)
Sur d’autres sites (7067)
-
Detecting Successful Conversion with ffmpeg
22 février 2017, par J MI have code that scans a file system for videos files encoded with H.264 and re-encodes them with H.265. It runs pretty much on its own constantly, generating various log files for me to review periodically.
One thing that I want to further improve is the successful conversion detection. Right now, a file returns as being successfully converted after it meets these criteria/checks :
- The output file exists
ffprobe
can detect that the output file is in hevc format- The duration of the output file matches that of the input file (within 3 seconds)
- The length of the output file is greater than 30 MB (it’s rare that I have a video so short where after conversion it is less than this, usually this happens when an error occurs or conversion terminates early).
Obviously, this is rather computationally intense as there are many file checks to confirm all of this information. I do this because if the file is detected as successful conversion, the old file is overwritten and the new converted file takes it’s place. I don’t want to overwrite a file because I overlooked a scenario where I think conversion is successful but was in fact not. The files are under a crashplan constant backup, so I don’t lose them, but I also do not go through and review every file.
So, my basic question is if you see any area of improvement for this detection. My goal is to determine, to my best extent, if after conversion the video remains "playable". So deciding programmatically how/what that means is what I’m attempting to do.
I can post code if you want it (powershell), but the question seems independent of actual program language choice.
-
ffmpeg - extract exact number of frames from video
29 mars 2017, par Michael BI want to create a maximum of 30 images from a video (and tile them for a sprite sheet).
I’ve tried using the ’select’ with ’mod’ but if the total number of frames does not fit neatly into the desired number of images (30) then I sometimes end up with more images, sometimes less.
For example if my video is 72 frames long, my ’mod’ would be 72 / 30, which is 2.4.
I’m running this from a python script so i’m doing something like the following for the filter :
select='not(mod(n\," + str(mod) + "))'
I think the mod has to be an integer (?) so I could either round down and use 2 which gives me 36 images or round up which gives me 24 images
Whats the best way to get exactly 30 ? - obviously the interval wouldn’t be identical but thats fine.
Maybe I could use a for loop to generate a list of the frames closest to the desired interval and then pass that in as the select filter ?
e.g. to get the frames I would do something like this :
nframes = 72 # number of frames in video
outImages = 30 # number of images I want
mod = float(nframes) / outImages # 2.4
frames = []
idx = 1
while i < nframes:
print str(idx) + ": " + str(math.floor(i+0.5))
frames.append(int(math.floor(i+0.5)))
idx += 1
i += modThen am I able to pass that (the frames list) into the ffmpeg command ? Or can I tell ffmpeg to do something similar ?
-
FFMPEG file writer in python 2.7
6 avril 2017, par byBanachTarskiIamcorrectTrying to animate a string in python, i think my code is fine but just having difficulties with the file writer. My code is (based off https://jakevdp.github.io/blog/2012/08/18/matplotlib-animation-tutorial/) :
import numpy as np
import scipy as sci
import matplotlib.pyplot as plt
import matplotlib.animation as animation
plt.rcParams['animation.ffmpeg_path'] = 'C:\FFMPEG\bin\ffmpeg'
s1=10.15
gamma=(np.pi*np.sqrt(2))/2
gamma=sci.special.jn_zeros(0,10)
gamma1=gamma[9]
gamma2=gamma[8]
print gamma1,gamma2
sigma=np.linspace(0,2*s1,10000)
def xprime(sigma,t):
alpha = gamma1*(np.cos(np.pi*t/s1)*np.cos((np.pi*sigma)/s1))
beta = gamma1*(np.sin(np.pi*t/s1)*np.sin((np.pi*sigma)/s1))
xprime=np.cos(alpha)*np.cos(beta)
return xprime
def yprime(sigma,t):
alpha = gamma2*(np.cos(np.pi*t/s1)*np.cos((np.pi*sigma)/s1))
beta = gamma2*(np.sin(np.pi*t/s1)*np.sin((np.pi*sigma)/s1))
yprime=np.cos(alpha)*np.sin(beta)
return yprime
fig = plt.figure()
ax = plt.axes(xlim=(-0.4, 0.4), ylim=(-3, 3))
line, = ax.plot([], [], lw=2)
def init():
line.set_data([], [])
return line,
def animate(i):
sigma=np.linspace(0,2*s1,10000)
t = (i*2*s1)/200
yint=sci.integrate.cumtrapz(yprime(sigma,t),sigma)
xint=sci.integrate.cumtrapz(xprime(sigma,t),sigma)
line.set_data(xint, yint)
return line,
anim = animation.FuncAnimation(fig, animate, init_func=init,
frames=200, interval=20, blit=True)
FFwriter=animation.FFMpegWriter()
anim.save('basic_animation.mp4', writer=FFwriter, fps=30, extra_args=['-vcodec', 'libx264'])
plt.show()Currently getting the error message
RuntimeError: Passing in values for arguments for arguments fps, codec, bitrate, extra_args, or metadata is not supported when writer is an existing MovieWriter instance. These should instead be passed as arguments when creating the MovieWriter instance.'
I think my error is in the calling or placement of the FFMpeg file but i’m unsure what i’m doing wrong. Probably very obvious but can’t see it at the moment / unsure what the error message actually means.