Recherche avancée

Médias (1)

Mot : - Tags -/MediaSPIP 0.2

Autres articles (55)

  • Publier sur MédiaSpip

    13 juin 2013

    Puis-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, par

    The 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, par

    Les 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 M

    I 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 :

    1. The output file exists
    2. ffprobe can detect that the output file is in hevc format
    3. The duration of the output file matches that of the input file (within 3 seconds)
    4. 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 B

    I 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 += mod

    Then 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 byBanachTarskiIamcorrect

    Trying 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.