Recherche avancée

Médias (91)

Autres articles (106)

  • 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

  • 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 (...)

  • Création définitive du canal

    12 mars 2010, par

    Lorsque votre demande est validée, vous pouvez alors procéder à la création proprement dite du canal. Chaque canal est un site à part entière placé sous votre responsabilité. Les administrateurs de la plateforme n’y ont aucun accès.
    A la validation, vous recevez un email vous invitant donc à créer votre canal.
    Pour ce faire il vous suffit de vous rendre à son adresse, dans notre exemple "http://votre_sous_domaine.mediaspip.net".
    A ce moment là un mot de passe vous est demandé, il vous suffit d’y (...)

Sur d’autres sites (14709)

  • FFmpeg -filter_complex_script crop & blurbox with time based values

    6 juin 2021, par user1503606

    I am trying to create a script that will move a blur boxed across a video based on x and y cords in a text script.

    


    I can easily create a blur box with the following ffmpeg command.

    


    ffmpeg -y -i pex.mp4 -filter_complex_script cropblur.txt -map "[v]" out_crop.mp4


    


    The cropblur.txt has the following.

    


    [0:v]crop=400:400:300:350,boxblur=10[fg]; [0:v][fg]overlay=300:350:enable='between(t\,0\,5)'[v]


    


    This creates this.

    


    enter image description here

    


    What I want is the blur box to move across where the lady is running.

    


    enter image description here

    


    She obviously runs out from where the box is positioned.

    


    I can create a script where I can track the correct x and y positions for the blox using jquery ui or something I just dont understand how to implement this in a filter_complex_script.

    


    I thought it would be a simple as just appending to the script something like this.

    


    [0:v]crop=400:400:300:350,boxblur=10[fg]; [0:v][fg]overlay=300:350:enable='between(t\,0\,2)'[v]
[0:v]crop=200:200:200:360,boxblur=10[fg]; [0:v][fg]overlay=300:350:enable='between(t\,2\,3)'[v]
[0:v]crop=200:200:200:370,boxblur=10[fg]; [0:v][fg]overlay=300:350:enable='between(t\,3\,4)'[v]
[0:v]crop=200:200:200:380,boxblur=10[fg]; [0:v][fg]overlay=300:350:enable='between(t\,4\,5)'[v]


    


    Changing the time and the x position based on the incremented time.

    


    If I run this script I get this error.

    


    No output pad can be associated to link label '0:v'


    


    Obviously I am doing something wrong but I cannot find any documentation that really helps me understand how to do this https://ffmpeg.org/ffmpeg.html the official docs dont really help.

    


    I could do it by running multiple passes like this.

    


    ffmpeg -y -i pex.mp4 -filter_complex "[0:v]crop=400:400:300:350,boxblur=10[fg]; [0:v][fg]overlay=300:350:enable='between(t\,0\,2)'[v]" -map "[v]" out_crop.mp4 && ffmpeg -y -i out_crop.mp4 -filter_complex "[0:v]crop=200:200:200:360,boxblur=10[fg]; [0:v][fg]overlay=300:350:enable='between(t\,2\,3)'[v]" -map "[v]" out_crop2.mp4


    


    I Would just really like to understand how to use the filter complex scripts in this way ?

    


    Any help would be great.

    


    Thanks

    


  • rtmp : Rename packet types to closer match the spec

    31 janvier 2017, par Martin Storsjö
    rtmp : Rename packet types to closer match the spec
    

    Also rename comments and log messages accordingly,
    and add clarifying comments for some hardcoded values.

    The previous names were taken from older, reverse engineered
    references.

    These names match the official public rtmp specification, and
    matches the names used by wirecast in annotating captured
    streams. These names also avoid hardcoding the roles of server
    and client, since the handling of them is irrelevant of whether
    we act as server or client.

    The RTMP_PT_PING type maps to RTMP_PT_USER_CONTROL.

    The SERVER_BW and CLIENT_BW types are a bit more intertwined ;
    RTMP_PT_SERVER_BW maps to RTMP_PT_WINDOW_ACK_SIZE and
    RTMP_PT_CLIENT_BW maps to RTMP_PT_SET_PEER_BW.

    Signed-off-by : Martin Storsjö <martin@martin.st>

    • [DBH] libavformat/rtmppkt.c
    • [DBH] libavformat/rtmppkt.h
    • [DBH] libavformat/rtmpproto.c
  • How do you run a ffmpeg command in Java, in MacOS, using a ProcessBuilder

    5 août 2020, par nottAbott

    I am writing a program in Java that uses ffmpeg to "snip" a video into several pieces and the stitch them back together again. I have everything working relatively smoothly in Windows, but I cannot get ffmpeg to work in Mac, or in Linux for that matter. I'm focusing on mac right now though. I thought that it might be a permissions problem, but when I run it with sudo I get an error that says (after typing in the password :

    &#xA;

    sudo: ffmpeg: command not found&#xA;

    &#xA;

    when I run it without sudo I get :

    &#xA;

    java.io.IOException: Cannot run program "ffmpeg": error=2, No such file or directory&#xA;

    &#xA;

    I think that it might be because the ffmpeg package, on the Mac machine, was downloaded with homebrew, and ffmpeg is stored in /usr/local/Cellar/ffmpeg instead of the default folder, wherever it may be. That may not be the problem though, because I deleted ffmpeg and re-downloaded it with homebrew. It may have been in its defaulter folder in my first tests as well. It would be great to figure this out. Most of my family uses Mac (not me) and I really want to share my work with them. That is why I chose to code this in Java. Oh, and I did try using the directory to the binary in the command. Here's the code :

    &#xA;

        //snips out all the clips from the main video&#xA;    public void snip() throws IOException, InterruptedException {&#xA;        &#xA;        for(int i = 0; i &lt; snippets.size(); i&#x2B;&#x2B;) {&#xA;            //ffmpeg -i 20sec.mp4 -ss 0:0:1 -to 0:0:5 -c copy foobar.mp4&#xA;            String newFile = "foobar" &#x2B; String.valueOf(i) &#x2B; ".mp4";&#xA;            &#xA;            //THIS WORKS&#xA;            if(OS.isWindows()) {&#xA;                ProcessBuilder processBuilder = new ProcessBuilder("ffmpeg", "-i", videoName, "-ss",&#xA;                        snippets.get(i).getStartTime(), "-to", snippets.get(i).getEndTime(), newFile);&#xA;                            &#xA;                Process process = processBuilder.inheritIO().start();&#xA;                process.waitFor();&#xA;                System.out.println("Win Snip " &#x2B; i &#x2B; "\n");&#xA;            }&#xA;            &#xA;            else if (OS.isMac()) {&#xA;                //FFMPEG LOCATION: /usr/local/Cellar/ffmpeg&#xA;                //THE ERROR: sudo: ffmpeg: command not found&#xA;                //ERROR W/OUT SUDO: java.io.IOException: Cannot run program "ffmpeg": error=2, No such file or directory&#xA;                ProcessBuilder processBuilder = new ProcessBuilder("sudo", "-S", "ffmpeg", "-f", videoName, "-ss",&#xA;                        snippets.get(i).getStartTime(), "-to", snippets.get(i).getEndTime(), newFile);&#xA;                &#xA;                Process process = processBuilder.inheritIO().start();&#xA;                process.waitFor();&#xA;                System.out.println("Mac Snip " &#x2B; i &#x2B; "\n");&#xA;            }&#xA;            &#xA;            else if (OS.isUnix()) {&#xA;                System.out.println("Your operating system is not supported");&#xA;                //TODO&#xA;                //need to figure out if deb/red hat/whatever are different&#xA;            }&#xA;            &#xA;            else if (OS.isSolaris()) {&#xA;                System.out.println("Your operating system is not supported yet");&#xA;                //TODO probably won&#x27;t do&#xA;            }&#xA;            &#xA;            else {&#xA;                 System.out.println("Your operating system is not supported");&#xA;            }&#xA;            //add to the list of files to be concat later&#xA;            filesToStitch.add(newFile);&#xA;            filesToDelete.add(newFile);&#xA;            &#xA;        }&#xA;        //System.out.println(stitchFiles);&#xA;    }&#xA;

    &#xA;