Recherche avancée

Médias (2)

Mot : - Tags -/media

Autres articles (56)

  • Keeping control of your media in your hands

    13 avril 2011, par

    The vocabulary used on this site and around MediaSPIP in general, aims to avoid reference to Web 2.0 and the companies that profit from media-sharing.
    While using MediaSPIP, you are invited to avoid using words like "Brand", "Cloud" and "Market".
    MediaSPIP is designed to facilitate the sharing of creative media online, while allowing authors to retain complete control of their work.
    MediaSPIP aims to be accessible to as many people as possible and development is based on expanding the (...)

  • Initialisation de MediaSPIP (préconfiguration)

    20 février 2010, par

    Lors de l’installation de MediaSPIP, celui-ci est préconfiguré pour les usages les plus fréquents.
    Cette préconfiguration est réalisée par un plugin activé par défaut et non désactivable appelé MediaSPIP Init.
    Ce plugin sert à préconfigurer de manière correcte chaque instance de MediaSPIP. Il doit donc être placé dans le dossier plugins-dist/ du site ou de la ferme pour être installé par défaut avant de pouvoir utiliser le site.
    Dans un premier temps il active ou désactive des options de SPIP qui ne le (...)

  • Personnaliser les catégories

    21 juin 2013, par

    Formulaire de création d’une catégorie
    Pour ceux qui connaissent bien SPIP, une catégorie peut être assimilée à une rubrique.
    Dans le cas d’un document de type catégorie, les champs proposés par défaut sont : Texte
    On peut modifier ce formulaire dans la partie :
    Administration > Configuration des masques de formulaire.
    Dans le cas d’un document de type média, les champs non affichés par défaut sont : Descriptif rapide
    Par ailleurs, c’est dans cette partie configuration qu’on peut indiquer le (...)

Sur d’autres sites (8756)

  • ffmpeg filters order rotate scale with overlay

    13 décembre 2017, par Sebastián Márquez Lutfy

    I’m trying to render an image over a video. I use the following command after some research

    ffmpeg -y  -i "my_video.mp4" -i "my_image.jpg" -filter_complex "color=color=blue:size=711x400:rate=25[container];[0:v]scale=w=400:h=400,setpts=expr=PTS-STARTPTS[vidscaled];[container][vidscaled]overlay=eval=init:shortest=1:x=155:y=0[overlay0];[1:v]scale=w=123:h=123,rotate=a=323.7*PI/180:c=black@0:oh='roth(323.7*PI/180)':ow='rotw(323.7*PI/180)':bilinear=1[imgproc];[overlay0][imgproc]overlay=eval=init:x=18:y='237-abs(123*sin(323.7*PI/180))'[overlay1]" -map "[overlay1]" -map 0:a -strict -2 -preset ultrafast -g 120 output.mp4

    The problem with this approach is a low image’s quality since scaling is applied before rotate. So i tried to apply the rotation before scaling, (see next command)

    ffmpeg -y  -i "my_video.mp4" -i "my_image.jpg" -filter_complex "color=color=blue:size=711x400:rate=25[container];[0:v]scale=w=400:h=400,setpts=expr=PTS-STARTPTS[vidscaled];[container][vidscaled]overlay=eval=init:shortest=1:x=155:y=0[overlay0];[1:v]rotate=a=323.7*PI/180:c=black@0:oh='roth(323.7*PI/180)':ow='rotw(323.7*PI/180)':bilinear=1,scale=w=173:h=173[imgproc];[overlay0][imgproc]overlay=eval=init:x=18:y='237-abs(123*sin(323.7*PI/180))'[overlay1]" -map "[overlay1]" -map 0:a -strict -2 -preset ultrafast -g 120 output.mp4

    And the problem : c=black@0 is not working anymore, the bounding box around the rotated image is not transparent.

    Anyone please help this soul.

    pd : Using c=none doesn’t work too, got a green background

  • Memory issues when using ffmpeg and gloss to play videos

    21 décembre 2015, par Noughtmare

    I’m trying to make a video player with haskell using ffmpeg-light, JuicyPixels and gloss. I’m now able to play video, but frames that have been played stay in memory. This causes major memory issues. How can I avoid storing all the frames in memory ?

    Here is my code :

    {-# LANGUAGE FlexibleContexts #-}
    module Main where

    -- For my own code:
    import Graphics.Gloss
    import Codec.FFmpeg
    import Codec.FFmpeg.Juicy
    import Codec.Picture
    import Control.Applicative
    import Data.Maybe
    import Graphics.Gloss.Juicy
    import Control.Monad (when, join)
    import Codec.FFmpeg.Decode
    import Codec.FFmpeg.Enums
    import Control.Monad.Error.Class
    import Control.Arrow (first)
    import Control.Monad.Except (runExceptT)
    import Graphics.Gloss.Interface.IO.Animate
    import Data.IORef

    -- Temporary hardcoded resolution
    resolution :: (Int,Int)
    resolution = (640, 360)

    main :: IO ()
    main = do
       -- First initialize ffmpeg, this needs to be run before other ffmpeg functions
       initFFmpeg
       -- Open the samplevideo for reading. video :: IO (IO (Maybe (AVFrame, Double)), IO ())
       video <- runExceptT $ frameReaderTime' avPixFmtRgb24 "SampleVideo_640x360_1mb.flv"
       either
             -- This code gets called when the frameReader reports an error
             (const $ putStrLn "Can't read file")
             -- This opens a new window and plays the video in it on a white background
             (animateFixedIO (InWindow "Nice Window" resolution (10, 10)) white . frameAtWait . fst)

             video

    -- This finds the frame at given time
    frameAtWait :: IO (Maybe (AVFrame, Double)) -> Float -> IO Picture
    frameAtWait getFrame time = do
       -- This gets the next frame from the video
       (frame, t) <- fromJust <$> getFrame
       -- t has to be converted from Double to Float
       let t' = realToFrac t
           -- The difference between the requested time and the actual frame time
           difference = t' - time
       -- If the frame is not yet supposed to be shown
       if difference > 0 then do
           -- Wait until it is
           threadDelay . round . (* 1000000) $ difference
           -- then return it
           fromJust <$> frameToPicture frame
       else
           -- return it immediately
           fromJust <$> frameToPicture frame

    -- This function converts a ffmpeg internal AVFrame to a gloss picture
    frameToPicture :: AVFrame -> IO (Maybe Picture)
    frameToPicture frame = do
       -- convert it to a juicypixels dynamicimage
       dynImage <- toJuicy frame
       -- then convert it to a gloss picture and return it
       return . join $ fmap fromDynamicImage dynImage
  • ffmpeg can't record Webview Edge in window form

    20 juin 2021, par Sôn Gô Ku

    I have a window form application with browser control is Webview Edge as link bellow :
https://docs.microsoft.com/en-us/microsoft-edge/webview2/get-started/winforms

    


    This command use for record tab :
ffmpeg -f gdigrab -framerate 60 -i title="xo" -y -b:v 10M a.mp4
p\s : "xo" is window form title

    


    But after record, video doesn't have webview control
Please see attached image

    


    Please help me this case. Thank you so much !