Recherche avancée

Médias (0)

Mot : - Tags -/publication

Aucun média correspondant à vos critères n’est disponible sur le site.

Autres articles (113)

  • 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 ;

  • Ecrire une actualité

    21 juin 2013, par

    Présentez les changements dans votre MédiaSPIP ou les actualités de vos projets sur votre MédiaSPIP grâce à la rubrique actualités.
    Dans le thème par défaut spipeo de MédiaSPIP, les actualités sont affichées en bas de la page principale sous les éditoriaux.
    Vous pouvez personnaliser le formulaire de création d’une actualité.
    Formulaire de création d’une actualité Dans le cas d’un document de type actualité, les champs proposés par défaut sont : Date de publication ( personnaliser la date de publication ) (...)

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

  • AVFormatContext Transcode : Input or Output ?

    21 août 2016, par Victor.dMdB

    I have 2 functions running in 2 threads. One is written with opencv to parse images then write them to avformatcontext :

    VideoCapture vidSrc = cv::VideoCapture(vidURL);
    int vidWidth = vidSrc.get(CV_CAP_PROP_FRAME_WIDTH);
    int vidHeight = vidSrc.get(CV_CAP_PROP_FRAME_HEIGHT);
    AVRational vidFPS = {(int) vidSrc.get(CV_CAP_PROP_FPS), 1};
    AVFormatContext* av_fmt_ctx =  avformat_alloc_context();

    av_fmt_ctx->flags = AVFMT_NOFILE;
    cmd_data_ptr->video_data_conf.av_fmt_ctx = av_fmt_ctx;
    av_fmt_ctx->oformat = av_guess_format( NULL, props.vidURL.c_str(), NULL );
    AVCodec* vcodec = avcodec_find_encoder(av_fmt_ctx->oformat->video_codec);
    AVStream* vstrm = avformat_new_stream(av_fmt_ctx, vcodec);

    vstrm->codec = avcodec_alloc_context3(vcodec);
    vstrm->codec->width = vidWidth;
    vstrm->codec->height = vidHeight;
    vstrm->codec->pix_fmt = vcodec->pix_fmts[0];
    vstrm->codec->time_base = vstrm->time_base = av_inv_q(vidFPS);
    vstrm->r_frame_rate = vstrm->avg_frame_rate = vidFPS;
    if (av_fmt_ctx->oformat->flags & AVFMT_GLOBALHEADER)
     vstrm->codec->flags |= AV_CODEC_FLAG_GLOBAL_HEADER;
    avcodec_open2(vstrm->codec, vcodec, nullptr);

    int got_pkt = 0;
    AVFrame* frame = av_frame_alloc();
    std::vector framebuf(av_image_get_buffer_size(vstrm->codec->pix_fmt, vidWidth, vidHeight,32));
    avpicture_fill(reinterpret_cast(frame), framebuf.data(), vstrm->codec->pix_fmt, vidWidth, vidHeight);
    frame->width = vidWidth;
    frame->height = vidHeight;
    frame->format = static_cast<int>(vstrm->codec->pix_fmt);
    while(true){
       vidSrc >> in;
       cv::Mat towrite;
       const int stride[] = { static_cast<int>(towrite.step[0]) };
       sws_scale(swsctx, &amp;towrite.data, stride, 0, towrite.rows, frame->data, frame->linesize);
       frame->pts = frame_pts++;
       AVPacket pkt;
       pkt.data = nullptr;
       pkt.size = 0;
       pkt.stream_index = vstrm->id;
       av_init_packet(&amp;pkt);
       avcodec_encode_video2(vstrm->codec, &amp;pkt, end_of_stream ? nullptr : frame, &amp;got_pkt);
       if (got_pkt) {
             pkt.duration = 1;
             av_packet_rescale_ts(&amp;pkt, vstrm->codec->time_base, vstrm->time_base);
             av_write_frame(av_fmt_ctx, &amp;pkt);
        }
        av_packet_unref(&amp;pkt);
    }
    av_frame_free(&amp;frame);
    avcodec_close(vstrm->codec);
    </int></int>

    And another thread reads those frames

    while(1){
       AVPacket packet;
       av_read_frame(av_fmt_ctx, &amp;packet);
       ...
    }

    The first function doesn’t seem to be working properly, as there is a segmentation error on av_write_frame or even withav_dump_format. Is it correct that the first function is created as an output context ? Or should I be setting up as an input context for the other thread ? I’m a bit confused. I’m still trying to wrap my head around ffmpeg.

  • Input/output error sending RTMP to ffmpeg

    18 juin 2021, par greg

    I'm trying to use the "re-stream" feature of Vimeo (i.e. Vimeo send an rtmp stream to me).&#xA;When it tries to connect, I have this :

    &#xA;

    Proto = rtmp, path = /src/live, app = src, fname = live&#xA;Window acknowledgement size = 2500000&#xA;Deleting stream...&#xA;Input/output error&#xA;

    &#xA;

    I cannot figure out what's wrong here...

    &#xA;

    Any idea ?

    &#xA;

    Thanks in advance

    &#xA;

  • ffmpeg pipe input and output in Python

    4 juin 2021, par MinasCham

    I want to use ffmpeg to read an RTSP stream, extract frames via a pipe, do some processing on them with Python and afterwards combine the processed frames via another pipe with the original audio. I'm using the subprocess module in Python to execute the ffmpeg command as well as read and write the frames from and to ffmpeg.

    &#xA;

    Questions :

    &#xA;

      &#xA;
    1. Is it possible to pipe both stdin and stdout so as to extract the frames and then feed them back in after the processing ?
    2. &#xA;

    3. Do i also have to pipe the audio separately and feed it with the processed frames or can i simply copy the audio stream when mapping the output ?
    4. &#xA;

    &#xA;