Recherche avancée

Médias (91)

Autres articles (67)

  • Use, discuss, criticize

    13 avril 2011, par

    Talk to people directly involved in MediaSPIP’s development, or to people around you who could use MediaSPIP to share, enhance or develop their creative projects.
    The bigger the community, the more MediaSPIP’s potential will be explored and the faster the software will evolve.
    A discussion list is available for all exchanges between users.

  • Gestion des droits de création et d’édition des objets

    8 février 2011, par

    Par défaut, beaucoup de fonctionnalités sont limitées aux administrateurs mais restent configurables indépendamment pour modifier leur statut minimal d’utilisation notamment : la rédaction de contenus sur le site modifiables dans la gestion des templates de formulaires ; l’ajout de notes aux articles ; l’ajout de légendes et d’annotations sur les images ;

  • Les tâches Cron régulières de la ferme

    1er décembre 2010, par

    La gestion de la ferme passe par l’exécution à intervalle régulier de plusieurs tâches répétitives dites Cron.
    Le super Cron (gestion_mutu_super_cron)
    Cette tâche, planifiée chaque minute, a pour simple effet d’appeler le Cron de l’ensemble des instances de la mutualisation régulièrement. Couplée avec un Cron système sur le site central de la mutualisation, cela permet de simplement générer des visites régulières sur les différents sites et éviter que les tâches des sites peu visités soient trop (...)

Sur d’autres sites (11105)

  • rtsp : Interpret the text media type as AVMEDIA_TYPE_DATA

    23 février 2015, par Martin Storsjö
    rtsp : Interpret the text media type as AVMEDIA_TYPE_DATA
    

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

    • [DBH] libavformat/rtsp.c
  • Anomalie #2069 (Fermé) : media changer un fichier

    5 juillet 2011, par cedric -
  • Why the source order matters on working with multiple media sources in a single AVFormatContext ?

    24 avril 2024, par Mehmet YILMAZ

    avformat_open_input() deletes the AVFormatContext* and returns -6 when the source order changes.

    &#xA;

    I am trying to open multiple media sources dynamically with different(mixed) formats and codecs in a single context (AVFormatContext).

    &#xA;

    My media sources are a BlackMagic DeckLink Duo SDI input as first source and an mp4 file or rtsp stream as second.

    &#xA;

    When I order to open (avformat_open_input()) the source 2 (RTSP or MP4 file) at first and then open the BlackMagic DeckLink Duo, proceed as expected.

    &#xA;

    But when I change the order, and first open the DeckLink and then try to open RTSP stream or MP4 file, as I inspected in the step debugger ; AVFormatContext* deleting in the av_open_input() function and it returns -6 as result.

    &#xA;

    Please find the simple error reproduction code snappet below ;

    &#xA;

    AVFormatContext* context{avformat_alloc_context()};&#xA;const char* url_source1{"DeckLink Duo (1)"};&#xA;const AVInputFormat* format_source1{av_find_input_format("decklink")};&#xA;&#xA;const char* url_source2{"http://commondatastorage.googleapis.com/gtv-videos-bucket/sample/BigBuckBunny.mp4"};&#xA;&#xA;// Open the first media input&#xA;int result = avformat_open_input(&amp;context, url_source1, format_source1, NULL);&#xA;&#xA;if(result &lt; 0) {&#xA;  exit(1);&#xA;}&#xA;&#xA;// Open the second media input&#xA;// This function in current order deletes the context and returns -6&#xA;result = avformat_open_input(&amp;context, url_source2, NULL, NULL);&#xA;if(result &lt; 0) {&#xA;  exit(1);&#xA;}&#xA;&#xA;// Since the context has been deleted in previous step, segmentation fault accours here!&#xA;result = avformat_find_stream_info(context, NULL);&#xA;if(result &lt; 0) {&#xA;  exit(1);&#xA;}&#xA;&#xA;std::cout &lt;&lt; "Total number of streams: " &lt;&lt; context->nb_streams &lt;&lt; std::endl;&#xA;&#xA;

    &#xA;

    But When I change the order and call the avformat_open_input() first for the mp4 file and then the DeckLink device as following it proceed as expected, no error.

    &#xA;

    AVFormatContext* context{avformat_alloc_context()};&#xA;const char* url_source1{"DeckLink Duo (1)"};&#xA;const AVInputFormat* format_source1{av_find_input_format("decklink")};&#xA;&#xA;const char* url_source2{"http://commondatastorage.googleapis.com/gtv-videos-bucket/sample/BigBuckBunny.mp4"};&#xA;&#xA;&#xA;// Open the second media input&#xA;int result = avformat_open_input(&amp;context, url_source2, NULL, NULL);&#xA;if(result &lt; 0) {&#xA;  exit(1);&#xA;}&#xA;&#xA;&#xA;// Open the first media input&#xA;result = avformat_open_input(&amp;context, url_source1, format_source1, NULL);&#xA;&#xA;if(result &lt; 0) {&#xA;  exit(1);&#xA;}&#xA;&#xA;&#xA;result = avformat_find_stream_info(context, NULL);&#xA;if(result &lt; 0) {&#xA;  exit(1);&#xA;}&#xA;&#xA;std::cout &lt;&lt; "Total number of streams: " &lt;&lt; context->nb_streams &lt;&lt; std::endl;&#xA;&#xA;

    &#xA;