Recherche avancée

Médias (3)

Mot : - Tags -/collection

Autres articles (40)

  • La file d’attente de SPIPmotion

    28 novembre 2010, par

    Une file d’attente stockée dans la base de donnée
    Lors de son installation, SPIPmotion crée une nouvelle table dans la base de donnée intitulée spip_spipmotion_attentes.
    Cette nouvelle table est constituée des champs suivants : id_spipmotion_attente, l’identifiant numérique unique de la tâche à traiter ; id_document, l’identifiant numérique du document original à encoder ; id_objet l’identifiant unique de l’objet auquel le document encodé devra être attaché automatiquement ; objet, le type d’objet auquel (...)

  • Des sites réalisés avec MediaSPIP

    2 mai 2011, par

    Cette page présente quelques-uns des sites fonctionnant sous MediaSPIP.
    Vous pouvez bien entendu ajouter le votre grâce au formulaire en bas de page.

  • 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 (...)

Sur d’autres sites (5588)

  • Problem : av_seek_frame() always returns me the beginning of the video

    3 novembre 2020, par ZWen

    I'm currently trying to making use of FFMpeg to build a player. When I'm using av_seek_frame() to change the timestamp, it always gives me the beginning of the stream.

    


    Here is my code :

    


    bool XDemux::Seek(double pos)
{
    mux.lock();
    if (!ic)
    {
        mux.unlock();
        return false;
    }
    avformat_flush(ic);

    long long seekPos = 0;
    seekPos = ic->streams[videoStream]->duration * pos;
    int re = av_seek_frame(ic, videoStream, seekPos, AVSEEK_FLAG_BACKWARD | AVSEEK_FLAG_FRAME);
    mux.unlock();
    if (re < 0)
    {
        return false;
    }
    return true;
}


    


    Where ic and mux are defined as

    


    AVFormatContext* ic
std::mutex mux;


    


    When I'm trying to call the Seek function and print out the frame index, it will be something like :

    


    //Read() is called:
0 0 21 42 40 ...
//Then Seek(0.9) is called, should have begin with a later frame, but it also returns me:
0 0 21 42 40 ...


    


  • avcodec_open2 returns Invalid Argument (errnum -22)

    7 avril 2023, par nokla

    I am trying to encode a vector of AVFrames to an MP4 file using the h264 codec.

    


    Everything seems to work fine until the avcodec_open2 function, which returns an "Invalid Argument" (-22) error.

    


    *The stream parameter is a pointer to AVStream.

    


    Here is the code that sets the stream parameters :

    


        stream->codecpar->codec_id = AV_CODEC_ID_H264;
    stream->codecpar->codec_type = AVMEDIA_TYPE_VIDEO;
    stream->codecpar->width = settings.resolution[0]; // 270
    stream->codecpar->height = settings.resolution[1]; // 480
    stream->codecpar->format = AV_PIX_FMT_YUV420P;
    stream->codecpar->bit_rate = 400000;
    AVRational framerate = { 1, 30};
    stream->time_base = av_inv_q(framerate);


    


    And here is the code that opens the codec context :

    


        // Open the codec context
    AVCodecContext* codec_ctx = avcodec_alloc_context3(codec);
    if (!codec_ctx) {
        std::cout << "Error allocating codec context" << std::endl;
        avformat_free_context(format_ctx);
        return;
    }

    ret = avcodec_parameters_to_context(codec_ctx, stream->codecpar);
    if (ret < 0) {
        std::cout << "Error setting codec context parameters: " << av_err2str(ret) << std::endl;
        avcodec_free_context(&codec_ctx);
        avformat_free_context(format_ctx);
        return;
    }

    ret = avcodec_open2(codec_ctx, codec, nullptr);
    if (ret < 0) {
        wxMessageBox("Error opening codec: ");
        wxMessageBox(av_err2str(ret));
        avcodec_free_context(&codec_ctx);
        avformat_free_context(format_ctx);
        return;
    }


    


    I tried the solution that @philipp suggested in ffmpeg-avcodec-open2-returns-invalid-argument but it didn't resolve my error.

    


    I don't know what's causing this error in my code, can someone please help me ?

    


  • vf_program_opencl : Add missing error code returns

    11 janvier 2018, par Mark Thompson
    vf_program_opencl : Add missing error code returns
    

    Fixes CID #1427285.

    • [DH] libavfilter/vf_program_opencl.c