Recherche avancée

Médias (0)

Mot : - Tags -/serveur

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

Autres articles (98)

  • Websites made ​​with MediaSPIP

    2 mai 2011, par

    This page lists some websites based on MediaSPIP.

  • Keeping control of your media in your hands

    13 avril 2011, par

    The vocabulary used on this site and around MediaSPIP in general, aims to avoid reference to Web 2.0 and the companies that profit from media-sharing.
    While using MediaSPIP, you are invited to avoid using words like "Brand", "Cloud" and "Market".
    MediaSPIP is designed to facilitate the sharing of creative media online, while allowing authors to retain complete control of their work.
    MediaSPIP aims to be accessible to as many people as possible and development is based on expanding the (...)

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

Sur d’autres sites (7670)

  • qsv : dump more info in error, debug and verbose mode

    5 janvier 2021, par Haihao Xiang
    qsv : dump more info in error, debug and verbose mode
    

    Dump iopattern mode and the SDK error/warning desciptions for qsv based
    filters and iopattern mode for qsvenc

    Signed-off-by : Haihao Xiang <haihao.xiang@intel.com>
    Signed-off-by : Linjie Fu <linjie.justin.fu@gmail.com

    • [DH] libavcodec/qsvenc.c
    • [DH] libavfilter/qsvvpp.c
    • [DH] libavfilter/vf_deinterlace_qsv.c
    • [DH] libavfilter/vf_scale_qsv.c
  • FFMPEG library- transcode raw image to h264 stream, and the output file does not contains pts and dts info

    5 novembre 2020, par zhumm

    I am trying using ffmpeg c++ library to convert several raw yuyv image to h264 stream, the image come from memory and passed as string about 24fps, i do the convention as the following steps :

    &#xA;

      &#xA;
    1. init AVFormatContext,AVCodec,AVCodecContext and create new AVStream. this step i mainly refer to ffmpeg-libav-tutorial, and AVFormatContext use customize write_buffer() function(refer to simplest_ffmpeg_mem_handler)
    2. &#xA;

    3. receive raw frame data, set width and height(1920x1080), and set pts and dts. here i manually set the output fps to 24, and use a global counter to count num of frames, and the pts is calculated by this counter, code snippet(video_avs is AVStream,output_fps is 24 and time_base is 1/24) :
    4. &#xA;

    &#xA;

        input_frame->width = w;  // 1920&#xA;    input_frame->height = h;  // 1080&#xA;    input_frame->pkt_dts = input_frame->pts = global_pts;&#xA;    global_pts &#x2B;= video_avs->time_base.den/video_avs->time_base.num / output_fps.num * output_fps.den;&#xA;

    &#xA;

      &#xA;
    1. convert it from yuyv to yuv422(because h264 does not support yuyv) and resize it from 1920x1080 to 640x480(because i need this resolution output), use sws_scale()

      &#xA;

    2. &#xA;

    3. use avcodec_send_frame() and avcodec_receive_packet() to get the output packet. set output_packet duration and stream_index, then use av_write_frame() to write frame data.

      &#xA;

    4. &#xA;

    &#xA;

        AVPacket *output_packet = av_packet_alloc();&#xA;    int response = avcodec_send_frame(encoder->video_avcc, frame);&#xA;    while (response >= 0) {&#xA;        response = avcodec_receive_packet(encoder->video_avcc, output_packet); // !! here output_packet.size is calculated&#xA;        if (response == AVERROR(EAGAIN) || response == AVERROR_EOF) {&#xA;            break;&#xA;        } &#xA;        else if (response &lt; 0) {&#xA;            printf("Error while sending packet to decoder");  // ??av_err2str(response)会报错&#xA;            return response;&#xA;        }&#xA;&#xA;        // duration = next_pts - this_pts = timescale / fps = 1 / timebase / fps&#xA;        output_packet->duration = (encoder->video_avs->time_base.den / encoder->video_avs->time_base.num) / (output_fps.num / output_fps.den);&#xA;        output_packet->stream_index = 0;&#xA;        int response = av_write_frame(encoder->avfc, output_packet);  // packet order are not ensure&#xA;        if (response != 0) { printf("Error %d while receiving packet from decoder", response); return -1;}   &#xA;    }&#xA;    av_packet_unref(output_packet);&#xA;    av_packet_free(&amp;output_packet);&#xA;

    &#xA;

      &#xA;
    1. in write_buffer() function, video stream output is stored to string variable, and then i write this string to file with ostream, and suffix mp4.
    2. &#xA;

    &#xA;

    after all the above steps, the output.mp4 cannot be played, the ffprobe output.mp4 -show_frames output is&#xA;(image) :

    &#xA;

    Input #0, h264, from &#x27;/Users/ming/code/dev/haomo/output.mp4&#x27;:&#xA;  Duration: N/A, bitrate: N/A&#xA;    Stream #0:0: Video: h264 (High 4:2:2), yuv422p(progressive), 640x480, 24.92 fps, 24 tbr, 1200k tbn, 48 tbc&#xA;[FRAME]&#xA;media_type=video&#xA;stream_index=0&#xA;key_frame=1&#xA;pkt_pts=N/A&#xA;pkt_pts_time=N/A&#xA;pkt_dts=N/A&#xA;pkt_dts_time=N/A&#xA;best_effort_timestamp=N/A&#xA;best_effort_timestamp_time=N/A&#xA;

    &#xA;

    Note that before and after calling av_write_frame() in step 4, the passed argument output_packet contains correct pts and dts info, i cannot figure out why the output stream lost these info.

    &#xA;

  • lavf : move AVStream.info to AVStreamInternal

    9 octobre 2020, par Anton Khirnov
    lavf : move AVStream.info to AVStreamInternal
    

    This struct is for internal use of avformat_find_stream_info(), so it
    should not be exposed in public headers. Keep a stub pointer in its
    place to avoid changing AVStream layout, since e.g. ffmpeg.c accesses
    some fields located after it (even though they are marked as private).

    • [DH] libavformat/avformat.h
    • [DH] libavformat/internal.h
    • [DH] libavformat/utils.c