Recherche avancée

Médias (1)

Mot : - Tags -/ogv

Autres articles (37)

  • Demande de création d’un canal

    12 mars 2010, par

    En fonction de la configuration de la plateforme, l’utilisateur peu avoir à sa disposition deux méthodes différentes de demande de création de canal. La première est au moment de son inscription, la seconde, après son inscription en remplissant un formulaire de demande.
    Les deux manières demandent les mêmes choses fonctionnent à peu près de la même manière, le futur utilisateur doit remplir une série de champ de formulaire permettant tout d’abord aux administrateurs d’avoir des informations quant à (...)

  • MediaSPIP v0.2

    21 juin 2013, par

    MediaSPIP 0.2 est la première version de MediaSPIP stable.
    Sa date de sortie officielle est le 21 juin 2013 et est annoncée ici.
    Le fichier zip ici présent contient uniquement les sources de MediaSPIP en version standalone.
    Comme pour la version précédente, il est nécessaire d’installer manuellement l’ensemble des dépendances logicielles sur le serveur.
    Si vous souhaitez utiliser cette archive pour une installation en mode ferme, il vous faudra également procéder à d’autres modifications (...)

  • Mise à disposition des fichiers

    14 avril 2011, par

    Par défaut, lors de son initialisation, MediaSPIP ne permet pas aux visiteurs de télécharger les fichiers qu’ils soient originaux ou le résultat de leur transformation ou encodage. Il permet uniquement de les visualiser.
    Cependant, il est possible et facile d’autoriser les visiteurs à avoir accès à ces documents et ce sous différentes formes.
    Tout cela se passe dans la page de configuration du squelette. Il vous faut aller dans l’espace d’administration du canal, et choisir dans la navigation (...)

Sur d’autres sites (7874)

  • My (FFMPEG issue ) RTMP server(freebsd) wont let me hear video when I play a huge file over the server itself :/

    19 avril 2021, par Engi Gang

    Hey my name is Alisha from Norway im trying to get my RTMP server working the thing is that it works just fine but I just cant stream over it with ffmpeg I can stream to it on OBS and it works fine, but I am trying to a website where people could watch old public domain movies from the 1950 some of the films are actually pretty big lol.... anyways I detailed bellow more

    


    rm -rf /mnt/hls/loool && ffmpeg -re -i "$file" -c:v libx264 -c:a aac -b:v 300k -b:a 95k -f flv -flvflags no_duration_filesize rtmp ://lambright.xyz:1935/live/loool

    


    any work around I literally cant play the audio :( I can only hear (my source file is an MKV and 3gb )

    


    Note I had a smaller mp4 file and it did played the audio, the video isnt even playable in chrome but on VLC it is, but only a small file worked fine... its fine when I stream from my pc, but whats the point I am trying to set up my vintage 1950 serverbox :') trying to build a nice website where users could watch neat and decent old movies that are public domain if you wonder :/

    


    Another note when I am trying to play it on my iphone safari browser it does actually play parts but audio is super corrupted like you hear the audio sometimes :((

    


    rtmp {
    server {
        listen 1935; # Listen on standard RTMP port
        chunk_size 4000;

        application live {
            allow play all;
            live on;
            record off;
            hls on;
            hls_nested on;
            hls_path /mnt/hls/;
            hls_fragment 2s;
        }
        
    }
}


    


  • Trim Overlay memory issue

    4 juillet 2019, par Костянтин Тюртюбек

    Greetings fellow FFmpeg users,

    We are experiencing a strange memory leek issue (or maybe just doing something really wrong) and need some directions on how to debug it.

    What are we trying to achieve :

    Process a conference recording that includes multiple user streams, each in its own separate file (all files are mp4/opus).

    • Make a dynamic scene from a set of recordings, based on their volume level at set point of time.
    • The scene must include two parts : smaller grid of all the participants videos, bigger grid of currently talking people. Something like Google Hangouts or Skype does in their applications.

    What went wrong :

    • Memory footprint started unpredictably skyrocketing for some reason during montage

    What are we using :

    First FFmpeg command that reads filter_complex_script from file and adds drawbox as a talking indication on each video source file, when its volume is over a set threshold.

    Second FFmpeg command that reads filter_complex_script from file and :

    • takes an input file (using 0:v),
    • trims a part of it, when the user was talking,
    • scales it according to the amount of concurrently talking users,
    • pads to that resolution (in case if user video is smaller)

    filter_complex command using SELECT :

    [0]select='between(t, 1, 2)',  scale=762:428:force_original_aspect_ratio=decrease,pad=763:429:(ow-iw)/2:(oh-ih)/2[stream-0-workspace-scale-1-1];

    [block-2-grid][stream-0-workspace-scale-1-1]
    overlay=repeatlast=1:shortest=0:x=10:y=316:enable='between(t, 1, 2)'
    [block-2-workspace-1];

    filter_complex command using TRIM :

    [input-file-tag]
    trim=start=#{start}:duration=#{duration},
    setpts=PTS-STARTPTS,
    scale=#{w-1}:#{h-1}:force_original_aspect_ratio=decrease,
    pad=#{w}:#{h}:(ow-iw)/2:(oh-ih)/2
    [input-file-trimmed];

    [previous-block-tag]
    overlay=repeatlast=1:shortest=0:x=#{x}:y=#{y}:enable='between(t, #{from}, #{to})'
    [next-block-tag]

    We have tried going the TRIM command way, tried the SELECT command way. Problem is, both take insane amounts of ram during execution.

    Examples and more description :

    • Lets assume that only two of the five inputs have the volume above a
      certain volume threshold from second two to five.

    • We are trying to display only them according to some overlay math.

    • Cropped commands in human readable form : https://pastebin.com/YwrnRgnA

    • Full FFmpeg command is way too long to read through, that is the reason we started using filter_complex_script and loading it from file

    • Sometimes one block of video conference may have up to 300+
      intermediate overlays, which leads to the memory issue described. We were expecting the memory footprint to be similar to the amount of input files or maybe two-to-three times higher. However, we reach 15Gb or RAM usage withing the first two minutes of montage, while the input files are no bigger than 200Mb.

    What have we done in terms of debugging :

    • We had been using split at first, but quickly figured out that split
      does in fact copy each input and load it in memory, so we had to
      ditch that approach.

    • As matter of fact we moved to using the input files themselves, so
      the problem lies elsewhere.

    • To clarify, we have split our ffmpeg command into two separate ones.
      First one overlays the talking box animation using drawbox as well as
      user avatar and name. It outputs new video files which we than use in
      the command described above as direct input files tags, like 0:v, 1:v
      etc.

    Thank you for taking time reading through our issue.
    We sure hope that you can help us narrow it down.
    Please feel free to ask for any additional information or descriptions if needed.

    Have a good day !

  • I am trying add text and image over video using FFmpeg lib in androoid studio

    21 juin 2019, par vikram

    I am using FFmpeg lib for add text over video and add image over video but could not get successful. I am testing this one in a real device.

    I am have already tried 2 commands for add text and add image over video but could not get proper output

    String command[]={"ffmpeg","-i",inputpath,"-vf", "drawtext="+"\""+"fontfile=/sdcard/retro.ttf: text='Test Text'"+"\"",outputpath};


    String addimg[]={"ffmpeg","-i", inputpath,"-i", imagepath ,"-filter_complex", "[0:v][1:v] overlay=25:25:enable='between(t,0,10)'" ,"-pix_fmt", "yuv420p", "-c:a copy",outputpath};

    public void LoadFFmpegLibrary()
    {
       if(ffmpeg==null)
       {
           ffmpeg = FFmpeg.getInstance(MainActivity.this);
           try {
               ffmpeg.loadBinary(new LoadBinaryResponseHandler() {

                   @Override
                   public void onStart() {
                       Log.e("ffmpeg","Start to load");
                   }

                   @Override
                   public void onFailure() {
                       Log.e("ffmpeg","failed to load");
                   }

                   @Override
                   public void onSuccess() {
                       Log.e("ffmpeg","load Successfully");
                       ExcuteFfmpefLibrabry(command);
                       //    Toast.makeText(MainActivity.this,"Success",Toast.LENGTH_LONG).show();
                   }

                   @Override
                   public void onFinish() {
                       Log.e("ffmpeg","failed to load");
                   }
               });
           } catch (FFmpegNotSupportedException e) {
               // Handle if FFmpeg is not supported by device
               Log.e("ffmpeg",e.toString());
           }

       }


    }

    public void ExcuteFfmpefLibrabry(String command[])
    {

       ffmpeg = FFmpeg.getInstance(MainActivity.this);
       try {
           // to execute "ffmpeg -version" command you just need to pass "-version"
           ffmpeg.execute(command, new ExecuteBinaryResponseHandler() {

               @Override
               public void onStart() {
                   Log.e("ffmpeg","Exaction Start");
               }

               @Override
               public void onProgress(String message) {}

               @Override
               public void onFailure(String message) {
                   Log.e("ffmpeg","failed to Excute Command");
                   Log.e("ok",message);
               }

               @Override
               public void onSuccess(String message) {
                   Log.e("ffmpeg","Video Edited Successfully");
                   Log.e("ok",message);
                   // ExcuteFfmpefLibrabry(tetxcommand);
                   Toast.makeText(MainActivity.this,"Success",Toast.LENGTH_LONG).show();

               }

               @Override
               public void onFinish() {

               }
           });
       } catch (FFmpegCommandAlreadyRunningException e) {
           Log.e("ffmpeg",e.toString());
       }
    }

    Unable to find a suitable output format for ’ffmpeg’
    ffmpeg : Invalid argument

    I am getting an error ---> Unable to find a suitable output format for 'ffmpeg' ffmpeg: Invalid argument