Recherche avancée

Médias (91)

Autres articles (49)

  • Les statuts des instances de mutualisation

    13 mars 2010, par

    Pour des raisons de compatibilité générale du plugin de gestion de mutualisations avec les fonctions originales de SPIP, les statuts des instances sont les mêmes que pour tout autre objets (articles...), seuls leurs noms dans l’interface change quelque peu.
    Les différents statuts possibles sont : prepa (demandé) qui correspond à une instance demandée par un utilisateur. Si le site a déjà été créé par le passé, il est passé en mode désactivé. publie (validé) qui correspond à une instance validée par un (...)

  • Creating farms of unique websites

    13 avril 2011, par

    MediaSPIP platforms can be installed as a farm, with a single "core" hosted on a dedicated server and used by multiple websites.
    This allows (among other things) : implementation costs to be shared between several different projects / individuals rapid deployment of multiple unique sites creation of groups of like-minded sites, making it possible to browse media in a more controlled and selective environment than the major "open" (...)

  • Librairies et binaires spécifiques au traitement vidéo et sonore

    31 janvier 2010, par

    Les logiciels et librairies suivantes sont utilisées par SPIPmotion d’une manière ou d’une autre.
    Binaires obligatoires FFMpeg : encodeur principal, permet de transcoder presque tous les types de fichiers vidéo et sonores dans les formats lisibles sur Internet. CF ce tutoriel pour son installation ; Oggz-tools : outils d’inspection de fichiers ogg ; Mediainfo : récupération d’informations depuis la plupart des formats vidéos et sonores ;
    Binaires complémentaires et facultatifs flvtool2 : (...)

Sur d’autres sites (4490)

  • Setting up a server to redistribute a webcam stream

    22 janvier 2013, par Martin Taleski

    I am trying to set up a streaming server that will receive a RTP stream and redistribute it.

    I am able to create the stream with :

    ffmpeg -f video4linux2 -i /dev/video0 -vcodec mpeg2video -r 25 -pix_fmt yuv420p -me_method epzs -b 2600k -bt 256k -f rtp rtp://myserver:8090/

    I see the UDP packets coming to my server, but I was not able to set up a feed and a stream with ffserver. I can also view the stream though VLC if I change the destination IP of the server with my local IP.

    I am now considering writing a daemon in python or perl or C, that will read the UDP packets coming on port 8090 on the server, and distribute them on another port. Not sure if this is a great idea, but can not find any other clues...

    Any clues how to make this happen ?

  • Dynamically generate list of arguments for ffmpeg in C

    5 mars 2013, par OregonTrail

    I'm currently writing a video conversion daemon in C. It calls ffmpeg using execvp.

    I've created a struct called "ffmpeg_job" that represents a conversion job to be completed. I'd like to dynamically allocate the arguments to ffmpeg for each job, so that I can free one of these structs and its list of arguments after the job is completed.

    I started writing the function that dynamically allocates the list of arguments, but I feel like the way I'm going about it is quite naive. The code is below.

    Is there a better way to do this ?

    EDIT : I'm thinking now that I will have a static string list of arguments for each level of quality, then sprintf into it and strtok it into a char **

    char ** generate_arguments(
       char *filepath,
       ph5v_format format,
       ph5v_quality quality)
    {
       char ** arguments;
       if (format == ph5v_MP4) {
           mp4_arguments = {
               "-i", "%%INPUT FILEPATH 1",
               "-vcodec", "libx264",
               "-preset", "%%X264 PRESET 5",
               "-b:v", "%%VIDEO BITRATE 7",
               "-strict", "-2",
               "-acodec", "aac",
               "-b:a", "%%AUDIO BITRATE 13",
               "-ar", "%%AUDIO SAMPLERATE 15",
               "-ac", "2",
               "-y", "%%OUTPUT FILEPATH 19"
           }

           arguments = malloc(sizeof(char*) * 20);

           int i;
           for (i = 0; i < 20; i++) {
               if (i == 1) {
                   char *argument = malloc(strlen(filepath) + 1);
                   strcpy(argument, filepath);
                   arguments[1] = argument;
               } else if (i == 5) {
                   if (quality == ph5v_LOW || quality == ph5v_MEDIUM) {
                       char *argument = malloc(strlen("fast") + 1);
                       strcpy(argument, "fast");
                       arguments[5] = argument;
                   } else if (quality == ph5v_HIGH || quality == ph5v_ULTRA ) {
                       char *argument = malloc(strlen("medium") + 1);
                       strcpy(argument, "medium");
                       arguments[5] = argument;
                   }
               } else if (i == 7) {
                   if (quality ==
               .
               .
               .
  • setTimeout() fix for onfinish()-related issue where subsequent play() calls fail when Flash Player 11.6.602.171 is installed, and using soundManager with flashVersion = 8 (which is the default).

    3 mars 2013, par scottschiller
    m script/soundmanager2-jsmin.js
    m script/soundmanager2-nodebug-jsmin.js
    m script/soundmanager2-nodebug.js
    m script/soundmanager2.js
    
    setTimeout() fix for onfinish()-related issue where subsequent play() calls fail when Flash Player 11.6.602.171 is installed, and using soundManager with flashVersion = 8 (which is the default).
    Not sure of exact cause. Suspect race condition resulting in an invalid (NaN-style) position argument trickling down to the next JS -> Flash _start() call.
    Fix : setTimeout() to yield, plus safer null / NaN checking on position argument provided to Flash.
    https://getsatisfaction.com/schillmania/topics/recent_chrome_update_seems_to_have_broken_my_sm2_audio_player