Recherche avancée

Médias (91)

Autres articles (61)

  • Formulaire personnalisable

    21 juin 2013, par

    Cette page présente les champs disponibles dans le formulaire de publication d’un média et il indique les différents champs qu’on peut ajouter. Formulaire de création d’un Media
    Dans le cas d’un document de type média, les champs proposés par défaut sont : Texte Activer/Désactiver le forum ( on peut désactiver l’invite au commentaire pour chaque article ) Licence Ajout/suppression d’auteurs Tags
    On peut modifier ce formulaire dans la partie :
    Administration > Configuration des masques de formulaire. (...)

  • Amélioration de la version de base

    13 septembre 2013

    Jolie sélection multiple
    Le plugin Chosen permet d’améliorer l’ergonomie des champs de sélection multiple. Voir les deux images suivantes pour comparer.
    Il suffit pour cela d’activer le plugin Chosen (Configuration générale du site > Gestion des plugins), puis de configurer le plugin (Les squelettes > Chosen) en activant l’utilisation de Chosen dans le site public et en spécifiant les éléments de formulaires à améliorer, par exemple select[multiple] pour les listes à sélection multiple (...)

  • Qu’est ce qu’un masque de formulaire

    13 juin 2013, par

    Un masque de formulaire consiste en la personnalisation du formulaire de mise en ligne des médias, rubriques, actualités, éditoriaux et liens vers des sites.
    Chaque formulaire de publication d’objet peut donc être personnalisé.
    Pour accéder à la personnalisation des champs de formulaires, il est nécessaire d’aller dans l’administration de votre MediaSPIP puis de sélectionner "Configuration des masques de formulaires".
    Sélectionnez ensuite le formulaire à modifier en cliquant sur sont type d’objet. (...)

Sur d’autres sites (8823)

  • Change Audio pitch and add blur effect in video using ffmpeg Php

    29 mars 2012, par santosh yadav

    I have a video clip and i want to change Identity of person on Video,

    For That i want to change pitch of audio and add blur effect on video,

    I have use following things for change pitch but it is not provide better result,

    ffmpeg -i w.mpg -vcodec copy -an tmpVideo.mpg
    ffmpeg -i w.mpg tmpAudio.wav
    rubberband -p 6 tmpAudio.wav tmpAudioRB.wav
    ffmpeg -i tmpVideo.mpg -i tmpAudioRB.wav -vcodec copy finalVideow_6.mpg

    Any Better solution for Change pitch and add blur effect,

  • Output resolution substantially below input resolution [closed]

    29 août 2024, par bobford

    I have written an Android app to overlay a watermark png using FFMpeg 6.0 which works fine on 1k and 4k videos. In both cases the output resolution substantially deteriorates albeit consistent with the reduction in file size. In both cases, the original width-height pixel sizes are retained.

    


    The ffmpeg command is :

    


    String[] array = new String[] {"-i ", inputFile, " -i ", watermarkFile, " -filter_complex ", overlayPosition, " -codec:a copy ", outputFile};
String delimiter = "";
String command = String.join(delimiter, array);


    


    I would like to retain the original resolution, or as close as possible, even with the larger file size.
It would seem there are default parameters which I am unaware of, and have absolutely no idea of how to find them, even after extensive searching. Thank you for your help !

    


  • FFMPEG in Android Kotlin - processed video should have specific resolution

    31 mai 2024, par Utsav

    I'm recording video from both the front and back cameras and I get a PIP video and a horizontal stacked video. I need to merge both videos after that. The problem with merging is that it requires both the videos (PIP and stacked) to have the same resolution and aspect ratio. This is not the case. So the FFMPEG command being executed in code to generate both these videos needs to be modified to make the resolution and aspect ratio the same.

    


    //app -> build.gradle
implementation "com.writingminds:FFmpegAndroid:0.3.2"


    


        private fun connectFfmPeg() {
        val overlayX = 10
        val overlayY = 10
        val overlayWidth = 200
        val overlayHeight = 350

        outputFile1 = createVideoPath().absolutePath
        outputFile2 = createVideoPath().absolutePath
        //Command to generate PIP video
        val cmd1 = arrayOf(
            "-y",
            "-i",
            videoPath1,
            "-i",
            videoPath2,
            "-filter_complex",
            "[1:v]scale=$overlayWidth:$overlayHeight [pip]; [0:v][pip] overlay=$overlayX:$overlayY",
            "-preset",
            "ultrafast",
            outputFile1
        )

        //Command to generate horizontal stack video
        val cmd2 = arrayOf(
            "-y",
            "-i",
            videoPath1,
            "-i",
            videoPath2,
            "-filter_complex",
            "hstack",
            "-preset",
            "ultrafast",
            outputFile2
        )

        val ffmpeg = FFmpeg.getInstance(this)
        //Both commands are executed
        //Following execution code is OK
        //Omitted for brevity
    }


    


    Here is mergeVideos() executed lastly.

    


        private fun mergeVideos(ffmpeg: FFmpeg) {
        //Sample command:
        /*
        ffmpeg -y -i output_a.mp4 -i output_b.mp4 \
        -filter_complex "[0:v:0][0:a:0][1:v:0][1:a:0]concat=n=2:v=1:a=1[outv][outa]" \
        -map "[outv]" -map "[outa]" -preset "ultrafast" output.mp4
        */
        finalOutputFile = createVideoPath().absolutePath

        val cmd = arrayOf(
            "-y",
            "-i",
            outputFile1,
            "-i",
            outputFile2,
            "-filter_complex",
            "[0:v:0][0:a:0][1:v:0][1:a:0]concat=n=2:v=1:a=1[outv][outa]",
            "-map", "[outv]",
            "-map", "[outa]",
            "-preset", "ultrafast",
            finalOutputFile
        )
        //Execution code omitted for brevity
}


    


    Error : Upon execution of mergeVideos(), there is no progress or failure method called. The Logcat stays where it is and the app does not crash either.

    


    Possible solution :
Once I got the generated PIP and horizontal stacked videos to my device's local storage, I tried out some FFMPEG commands on the prompt to process them after moving them to my laptop and it works on the command line :

    


    //First two commands can't be executed in Kotlin code
//This is the main problem
ffmpeg -i v1.mp4 -vf "scale=640:640,setdar=1:1" output_a.mp4
ffmpeg -i v2.mp4 -vf "scale=640:640,setdar=1:1" output_b.mp4
ffmpeg -y -i output_a.mp4 -i output_b.mp4 -filter_complex "[0:v:0][0:a:0][1:v:0][1:a:0]concat=n=2:v=1:a=1[outv][outa]" -map "[outv]" -map "[outa]" -preset "ultrafast" output.mp4
//Merge is successful via command prompt


    


    Please suggest a solution