Recherche avancée

Médias (91)

Autres articles (50)

  • Le plugin : Podcasts.

    14 juillet 2010, par

    Le problème du podcasting est à nouveau un problème révélateur de la normalisation des transports de données sur Internet.
    Deux formats intéressants existent : Celui développé par Apple, très axé sur l’utilisation d’iTunes dont la SPEC est ici ; Le format "Media RSS Module" qui est plus "libre" notamment soutenu par Yahoo et le logiciel Miro ;
    Types de fichiers supportés dans les flux
    Le format d’Apple n’autorise que les formats suivants dans ses flux : .mp3 audio/mpeg .m4a audio/x-m4a .mp4 (...)

  • XMP PHP

    13 mai 2011, par

    Dixit Wikipedia, XMP signifie :
    Extensible Metadata Platform ou XMP est un format de métadonnées basé sur XML utilisé dans les applications PDF, de photographie et de graphisme. Il a été lancé par Adobe Systems en avril 2001 en étant intégré à la version 5.0 d’Adobe Acrobat.
    Étant basé sur XML, il gère un ensemble de tags dynamiques pour l’utilisation dans le cadre du Web sémantique.
    XMP permet d’enregistrer sous forme d’un document XML des informations relatives à un fichier : titre, auteur, historique (...)

  • Use, discuss, criticize

    13 avril 2011, par

    Talk to people directly involved in MediaSPIP’s development, or to people around you who could use MediaSPIP to share, enhance or develop their creative projects.
    The bigger the community, the more MediaSPIP’s potential will be explored and the faster the software will evolve.
    A discussion list is available for all exchanges between users.

Sur d’autres sites (5472)

  • even though my code is running without an error, it does not generate plot or video. I have xming runing

    23 octobre 2017, par Amin Abbasi

    This is my first code and I am really new to coding. I am trying to create a video or just plot my code.Eeven though my code is running without an error, I can’t get the video or the plot to generate. I have xming running and I have plotted a sample to make sure it not a computer Issue. I have also tried the following on GitHub but no success :
    https://jakevdp.github.io/blog/2013/05/19/a-javascript-viewer-for-matplotlib-animations/

    # -*- coding: utf-8 -*-
    import numpy as np
    def solver(I, V, f, c, L, dt, cc, T, user_action=None):
       """Solve u_tt=c^2*u_xx + f on (0,L)x(0,T]."""
       Nt = int(round(T/dt))
       t = np.linspace(0, Nt*dt, Nt+1) # Mesh points in time
       dx = dt*c/float(cc)
       Nx = int(round(L/dx))
       x = np.linspace(0, L, Nx+1) # Mesh points in space
       C2 = cc**2 # Help variable in the scheme
       # Make sure dx and dt are compatible with x and t
       dx = x[1] - x[0]
       dt = t[1] - t[0]
       if f is None or f == 0 :
           f = lambda x, t: 0
       if V is None or V == 0:
           V = lambda x: 0
       u       = np.zeros(Nx+1) # Solution array at new time level
       u_n     = np.zeros(Nx+1) # Solution at 1 time level back
       u_nm1   = np.zeros(Nx+1) # Solution at 2 time levels back
       import time; t0 = time.clock() # Measure CPU time
       # Load initial condition into u_n
       for i in range(0,Nx+1):
           u_n[i] = I(x[i])
       if user_action is not None:
           user_action(u_n, x, t, 0)
       # Special formula for first time step
       n = 0
       for i in range(1, Nx):
           u[i] = u_n[i] + dt*V(x[i]) + \
               0.5*C2*(u_n[i-1] - 2*u_n[i] + u_n[i+1]) + \
               0.5*dt**2*f(x[i], t[n])
       u[0] = 0; u[Nx] = 0
       if user_action is not None:
           user_action(u, x, t, 1)
       # Switch variables before next step
       u_nm1[:] = u_n; u_n[:] = u
       for n in range(1, Nt):
           # Update all inner points at time t[n+1]
           for i in range(1, Nx):
               u[i] = - u_nm1[i] + 2*u_n[i] + \
                       C2*(u_n[i-1] - 2*u_n[i] + u_n[i+1]) + \
                       dt**2*f(x[i], t[n])
           # Insert boundary conditions
           u[0] = 0; u[Nx] = 0
           if user_action is not None:
               if user_action(u, x, t, n+1):
                   break
           # Switch variables before next step
           u_nm1[:] = u_n; u_n[:] = u
       cpu_time = time.clock() - t0
       return u, x, t,
    def test_quadratic():
       """Check that u(x,t)=x(L-x)(1+t/2) is exactly reproduced."""
       def u_exact(x, t):
           return x*(L-x)*(1 + 0.5*t)
       def I(x):
           return u_exact(x, 0)
       def V(x):
           return 0.5*u_exact(x, 0)
       def f(x, t):
           return 2*(1 + 0.5*t)*c**2
       L = 2.5
       c = 1.5
       cc = 0.75
       Nx = 6 # Very coarse mesh for this exact test
       dt = cc*(L/Nx)/c
       T = 18
       def assert_no_error(u, x, t, n):
           u_e = u_exact(x, t[n])
           diff = np.abs(u - u_e).max()
           tol = 1E-13
           assert diff < tol
       solver(I, V, f, c, L, dt, cc, T,
               user_action=assert_no_error)
    def viz(
       I, V, f, c, L, dt, C, T,umin, umax, animate=True, tool='matplotlib'):
       """Run solver and visualize u at each time level."""
       def plot_u_st(u, x, t, n):
           """user_action function for solver."""
           plt.plot(x, u, 'r-')
    #                 xlabel='x', ylabel='u',
    #                 axis=[0, L, umin, umax],
    #                 title='t=%f' % t[n], show=True)
           # Let the initial condition stay on the screen for 2
           # seconds, else insert a pause of 0.2 s between each plot
           time.sleep(2) if t[n] == 0 else time.sleep(0.2)
           plt.savefig('frame_%04d.png' % n) # for movie making
       class PlotMatplotlib:
           def __call__(self, u, x, t, n):
               """user_action function for solver."""
               if n == 0:
                   plt.ion()
                   self.lines = plt.plot(x, u, 'r-')
                   plt.xlabel('x'); plt.ylabel('u')
                   plt.axis([0, L, umin, umax])
                   plt.legend(['t=%f' % t[n]], loc='lower left')
               else:
                   self.lines[0].set_ydata(u)
                   plt.legend(['t=%f' % t[n]], loc='lower left')
                   plt.draw()
               time.sleep(2) if t[n] == 0 else time.sleep(0.2)
               plt.savefig('tmp_%04d.png' % n) # for movie making
       if tool == 'matplotlib':
           import matplotlib.pyplot as plt
           plot_u = PlotMatplotlib()
       elif tool == 'scitools':
           import scitools.std as plt # scitools.easyviz interface
           plot_u = plot_u_st
       import time, glob, os
       # Clean up old movie frames
       for filename in glob.glob('tmp_*.png'):
           os.remove(filename)
       # Call solver and do the simulaton
       user_action = plot_u if animate else None
       u, x, t, cpu = solver_function(
           I, V, f, c, L, dt, C, T, user_action)
       # Make video files
       fps = 4 # frames per second
       codec2ext = dict(flv='flv', libx264='mp4', libvpx='webm',
                        libtheora='ogg') # video formats
       filespec = 'tmp_%04d.png'
       movie_program = 'ffmpeg' # or 'avconv'
       for codec in codec2ext:
           ext = codec2ext[codec]
           cmd = '%(movie_program)s -r %(fps)d -i %(filespec)s '\
                 '-vcodec %(codec)s movie.%(ext)s' % vars()
           os.system(cmd)
       if tool == 'scitools':
           # Make an HTML play for showing the animation in a browser
           plt.movie('tmp_*.png', encoder='html', fps=fps,
                     output_file='movie.html')
       return cpu
  • Animating a 2D plot (2D brownian motion) not working in Python

    8 avril 2020, par Thamu Mnyulwa

    I am trying to plot a 2D Brownian motion in Python but my plot plots the grid but does not animate the line.

    



    Attempted at performing this plot is below,

    



    !apt install ffmpeg

import matplotlib
matplotlib.use("Agg")
import matplotlib.pyplot as plt
import matplotlib.animation as animation


np.random.seed(5)


# Set up formatting for the movie files
Writer = animation.writers['ffmpeg']
writer = Writer(fps=15, metadata=dict(artist='Me'), bitrate=1800)


def generateRandomLines(dt, N):
    dX = np.sqrt(dt) * np.random.randn(1, N)
    X = np.cumsum(dX, axis=1)

    dY = np.sqrt(dt) * np.random.randn(1, N)
    Y = np.cumsum(dY, axis=1)

    lineData = np.vstack((X, Y))

    return lineData


# Returns Line2D objects
def updateLines(num, dataLines, lines):
    for u, v in zip(lines, dataLines):
        u.set_data(v[0:2, :num])

    return lines

N = 501 # Number of points
T = 1.0
dt = T/(N-1)


fig, ax = plt.subplots()

data = [generateRandomLines(dt, N)]

ax = plt.axes(xlim=(-2.0, 2.0), ylim=(-2.0, 2.0))

ax.set_xlabel('X(t)')
ax.set_ylabel('Y(t)')
ax.set_title('2D Discretized Brownian Paths')

## Create a list of line2D objects
lines = [ax.plot(dat[0, 0:1], dat[1, 0:1])[0] for dat in data]


## Create the animation object
anim = animation.FuncAnimation(fig, updateLines, N+1, fargs=(data, lines), interval=30, repeat=True, blit=False)

plt.tight_layout()
plt.show()

## Uncomment to save the animation
#anim.save('brownian2d_1path.mp4', writer=writer)


    



    However, instead of performing the plot the program is printing,
enter image description here

    



    How do I animate this plot ? I am new to python so I apologize in advanced if this is an easy question.

    



    I found this question on http://people.bu.edu/andasari/courses/stochasticmodeling/lecture5/stochasticlecture5.html , there is a walkthrough of how this code came to being.

    


  • FFMPEG overlay dark frame

    21 septembre 2016, par Pavel Chursin

    I have problem with FFMPEG overlaying. It adds black frame around objects with transparent border.
    For example, take the yellow rectangle 100x100. Then generates video from it :

    ./ffmpeg -loop 1 -i yellow.png -t 5 -vcodec qtrle yellow.mov

    Then take a transparent PNG 100x100, within the green rectangle inside 75x75.

    Overlay it on the first video :

    ./ffmpeg -i yellow.mov -i green.png -filter_complex 'overlay' -vcodec qtrle yg.mov

    In the final video green rectangle has got dark frame.

    Result

    How can I remove this frame ?

    EXAMPLE