Recherche avancée

Médias (91)

Autres articles (101)

  • Personnaliser en ajoutant son logo, sa bannière ou son image de fond

    5 septembre 2013, par

    Certains thèmes prennent en compte trois éléments de personnalisation : l’ajout d’un logo ; l’ajout d’une bannière l’ajout d’une image de fond ;

  • 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

  • ANNEXE : Les plugins utilisés spécifiquement pour la ferme

    5 mars 2010, par

    Le site central/maître de la ferme a besoin d’utiliser plusieurs plugins supplémentaires vis à vis des canaux pour son bon fonctionnement. le plugin Gestion de la mutualisation ; le plugin inscription3 pour gérer les inscriptions et les demandes de création d’instance de mutualisation dès l’inscription des utilisateurs ; le plugin verifier qui fournit une API de vérification des champs (utilisé par inscription3) ; le plugin champs extras v2 nécessité par inscription3 (...)

Sur d’autres sites (10137)

  • ffmpeg player out of sync after seek

    15 juillet 2015, par sat

    I have a ffmpeg/SDL video player based on Dranger’s tutorial07 : https://github.com/illuusio/ffmpeg-tutorial/blob/master/tutorial07.c

    The image and the audio are not synchronized anymore, once seeked backwards to the beginning of the video. The image seems to be in the correct position unlike the audio. However, the video becomes synchronized subsequently being seeked forwards once.

    I trigger seeking in the main function’s loop by keypress :

    incr = -get_video_clock(is) //to restart the video    
    if(global_video_state) {
       pos = get_master_clock(global_video_state);
       pos += incr;
       stream_seek(global_video_state, (int64_t)(pos * AV_TIME_BASE), incr);
    }

    Then stream_seek sets seek parameters of global structure :

    void stream_seek(VideoState *is, int64_t pos, int rel) {
       if(!is->seek_req) {
           is->seek_pos = pos;
           is->seek_flags = rel < 0 ? AVSEEK_FLAG_BACKWARD : 0;
           is->seek_req = 1;
       }
    }

    And here is the seek part of the decode_thread’s main loop :

    if(is->seek_req) {
       int stream_index = -1;
       int64_t seek_target = is->seek_pos;

       if(is->videoStream >= 0) {
           stream_index = is->videoStream;

       } else if(is->audioStream >= 0) {
           stream_index = is->audioStream;
       }

       if(stream_index >= 0) {
           seek_target = av_rescale_q(seek_target, AV_TIME_BASE_Q, pFormatCtx->streams[stream_index]->time_base);
       }

       if(av_seek_frame(is->pFormatCtx, stream_index, seek_target, is->seek_flags) < 0) {
           fprintf(stderr, "%s: error while seeking\n", is->pFormatCtx->filename);

       } else {
           if(is->audioStream >= 0) {
               packet_queue_flush(&is->audioq);
               packet_queue_put(&is->audioq, &flush_pkt);
           }

           if(is->videoStream >= 0) {
               packet_queue_flush(&is->videoq);
               packet_queue_put(&is->videoq, &flush_pkt);
           }
       }

       is->seek_req = 0;
    }
  • How to get Continuous live streaming without buffering in azure media player using FFMPEG(Latency is not a issue) ?

    29 août 2019, par vinay

    I am streaming from the ip camera which uses RTSP protocol and ingesting the feed to RTMP(to Azure media server) using the following command

    ffmpeg command : ffmpeg -f lavfi -i anullsrc -rtsp_transport tcp -i rtsp ://CloudAppUser:admin@192.168.8.145/MediaInput/h264/stream_1 -vcodec libx264 -t 12:00:00 -pix_fmt + -c:v copy -c:a aac -strict experimental -f flv rtmp ://channel1-cloudstream-inso.channel.media.azure.net:1934/live/980b582afc12e421b85b4jifd8e8662b/df

    I am able to watch the stream but it is buffering once in every 30 seconds , and I want to know the reason behind this buffering

    Please any one change this command , so that it should not buffer

    I am executing this command from my terminal

    I would like to watch my live stream in azure media player without any buffering and latency below 1 minute is not an issue

  • ffmpeg player out of sync after seek

    9 juillet 2015, par sat

    I have a ffmpeg/SDL video player based on Dranger’s tutorial07 :
    https://github.com/illuusio/ffmpeg-tutorial/blob/master/tutorial07.c

    The image and the audio are not synchronized anymore, once seeked backwards. The image seems to be in the correct position unlike the audio. However, the video becomes synchronized subsequently being seeked forwards once.

    I trigger seeking in the main function’s loop by keypress :

    incr = -1.0; //seconds    
    if(global_video_state) {
       pos = get_master_clock(global_video_state);
       pos += incr;
       stream_seek(global_video_state, (int64_t)(pos * AV_TIME_BASE), incr);
    }

    Then stream_seek sets seek parameters of global structure :

    void stream_seek(VideoState *is, int64_t pos, int rel) {
       if(!is->seek_req) {
           is->seek_pos = pos;
           is->seek_flags = rel < 0 ? AVSEEK_FLAG_BACKWARD : 0;
           is->seek_req = 1;
       }
    }

    And here is the seek part of the decode_thread’s main loop :

    if(is->seek_req) {
       int stream_index = -1;
       int64_t seek_target = is->seek_pos;

       if(is->videoStream >= 0) {
           stream_index = is->videoStream;

       } else if(is->audioStream >= 0) {
           stream_index = is->audioStream;
       }

       if(stream_index >= 0) {
           seek_target = av_rescale_q(seek_target, AV_TIME_BASE_Q, pFormatCtx->streams[stream_index]->time_base);
       }

       if(av_seek_frame(is->pFormatCtx, stream_index, seek_target, is->seek_flags) < 0) {
           fprintf(stderr, "%s: error while seeking\n", is->pFormatCtx->filename);

       } else {
           if(is->audioStream >= 0) {
               packet_queue_flush(&is->audioq);
               packet_queue_put(&is->audioq, &flush_pkt);
           }

           if(is->videoStream >= 0) {
               packet_queue_flush(&is->videoq);
               packet_queue_put(&is->videoq, &flush_pkt);
           }
       }

       is->seek_req = 0;
    }