Recherche avancée

Médias (91)

Autres articles (34)

  • L’utiliser, en parler, le critiquer

    10 avril 2011

    La première attitude à adopter est d’en parler, soit directement avec les personnes impliquées dans son développement, soit autour de vous pour convaincre de nouvelles personnes à l’utiliser.
    Plus la communauté sera nombreuse et plus les évolutions seront rapides ...
    Une liste de discussion est disponible pour tout échange entre utilisateurs.

  • Contribute to documentation

    13 avril 2011

    Documentation is vital to the development of improved technical capabilities.
    MediaSPIP welcomes documentation by users as well as developers - including : critique of existing features and functions articles contributed by developers, administrators, content producers and editors screenshots to illustrate the above translations of existing documentation into other languages
    To contribute, register to the project users’ mailing (...)

  • 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

Sur d’autres sites (4908)

  • Revision fe2a201eb1 : Replacing "txfm" with "tx" in identifiers. Consistent names with TX_SIZE, TX_MO

    3 août 2013, par Dmitry Kovalev

    Changed Paths :
     Modify /vp9/encoder/vp9_block.h


     Modify /vp9/encoder/vp9_encodeframe.c


     Modify /vp9/encoder/vp9_rdopt.c



    Replacing "txfm" with "tx" in identifiers.

    Consistent names with TX_SIZE, TX_MODE, and TX_MODE.

    Change-Id : I79592218bf5a40ace89197a34a06ee7de581ed8d

  • hevc_ps : make sure failing to decode an SPS always returns an error

    13 juillet 2015, par Anton Khirnov
    hevc_ps : make sure failing to decode an SPS always returns an error
    

    Some of the goto err clauses do not set the error code. It seems better
    to fall back on INVALIDDATA instead of adding it everywhere explicitly.

    • [DBH] libavcodec/hevc_ps.c
  • (C) avcodec_receive_frame (ffmpeg) function always returns AVERROR(EAGAIN)

    13 avril 2021, par Levyu

    I was following this tutorial : http://dranger.com/ffmpeg/tutorial01.html
and was trying to change some deprecated functions, and so I had to try to use the avcodec_send_packet and avcodec_receive_frame functions.

    


    The problem I'm having is that avcodec_receive_frame always returns AVERROR(EAGAIN).

    


    My decoding function is as follows :

    


    static int decode(AVCodecContext *pCodecCtx, AVFrame *pFrame, AVPacket *packet) {
    
    int ret = avcodec_send_packet(pCodecCtx, packet);
    if (ret<0) {
        fprintf(stderr, "error sending packet for decoding\n");
        exit(1);
    }

    while (ret>=0) {        
        // avcodec_receive_packet(pCodecCtx, NULL);
        ret = avcodec_receive_frame(pCodecCtx, pFrame);
        if (ret == AVERROR(EAGAIN)) {
            fprintf(stderr, "\naverror(eagain) ret = %d\n", ret);
            return -1;
        }
        else if (ret == AVERROR_EOF) {
            fprintf(stderr, "eof\n");
            return -100;
        }
        else if (ret <0) {
            fprintf(stderr, "error during decoding\n");
            exit(1);
        }
    }
    return 0;
}


    


    Everywhere I read said that this is solved by calling avcodec_send_packet with the next frame, but this does not solve the problem for me because this function is being called in a loop :

    


    
    while (av_read_frame(pFormatCtx, &packet)>=0) {
        // is this a packet from the video stream?
        if (packet.stream_index==videoStream) {

           frameNotFinished = decode(pCodecCtx, pFrame, &packet);

            // did we get a video frame?
            if (!frameNotFinished) fprintf(stderr, "it worked!");
        }
        av_packet_unref(&packet);   
    }


    


    I should probably also add that avcodec_send_packet always returns 0 (success).

    


    Any help would be much appreciated.