Recherche avancée

Médias (0)

Mot : - Tags -/auteurs

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

Autres articles (106)

  • Other interesting software

    13 avril 2011, par

    We don’t claim to be the only ones doing what we do ... and especially not to assert claims to be the best either ... What we do, we just try to do it well and getting better ...
    The following list represents softwares that tend to be more or less as MediaSPIP or that MediaSPIP tries more or less to do the same, whatever ...
    We don’t know them, we didn’t try them, but you can take a peek.
    Videopress
    Website : http://videopress.com/
    License : GNU/GPL v2
    Source code : (...)

  • Encoding and processing into web-friendly formats

    13 avril 2011, par

    MediaSPIP automatically converts uploaded files to internet-compatible formats.
    Video files are encoded in MP4, Ogv and WebM (supported by HTML5) and MP4 (supported by Flash).
    Audio files are encoded in MP3 and Ogg (supported by HTML5) and MP3 (supported by Flash).
    Where possible, text is analyzed in order to retrieve the data needed for search engine detection, and then exported as a series of image files.
    All uploaded files are stored online in their original format, so you can (...)

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

Sur d’autres sites (8954)

  • avcodec/exr : tag gamma=1.0 output as linear light

    16 août 2023, par Leo Izen
    avcodec/exr : tag gamma=1.0 output as linear light
    

    By default the OpenEXR decoder outputs linear light pixel data by
    applying a gamma=1.0 transfer (i.e. a no-op). When it does so, it
    should tag the data as linear so color-managed filters or other tools
    can work with it correctly.

    Signed-off-by : Leo Izen <leo.izen@gmail.com>

    • [DH] libavcodec/exr.c
  • avcodec : move content light level SEI handling to h2645_sei

    12 juillet 2023, par Jan Ekström
    avcodec : move content light level SEI handling to h2645_sei
    

    This allows this common H.274 SEI to be parsed from both H.264
    as well as HEVC, as well as probably from VVC in the future.

    Generally attempts to keep the original code as similar as possible.

    FATE test refererence changes only change the order of side data
    export within a single frame. Nothing else seems to have changed.

    • [DH] libavcodec/h2645_sei.c
    • [DH] libavcodec/h2645_sei.h
    • [DH] libavcodec/h264_slice.c
    • [DH] libavcodec/hevc_sei.c
    • [DH] libavcodec/hevc_sei.h
    • [DH] libavcodec/hevcdec.c
    • [DH] tests/ref/fate/hevc-hdr-vivid-metadata
    • [DH] tests/ref/fate/hevc-hdr10-plus-metadata
  • Ffmpeg H.264 encode video is sped up if camera capture with low light

    10 août 2020, par Expressingx

    I'm encoding everything to H.264. If h264_qsv is available I'm using it, else libx264. Works fine, but I noticed that if the camera is recording in low light, the video saved is sped up like x2 or x3. And I'm not sure where the problem is. Creating the input format context :

    &#xA;

        private AVFormatContext* CreateFormatContext()&#xA;    {&#xA;        AVDictionary* options = null;&#xA;&#xA;        ffmpeg.av_dict_set(&amp;options, "packet-buffering", "0", 0);&#xA;        ffmpeg.av_dict_set(&amp;options, "sync", "1", 0);&#xA;        ffmpeg.av_dict_set(&amp;options, "rtsp_transport", "tcp", 0);&#xA;        ffmpeg.av_dict_set(&amp;options, "reconnect", "1", 0);&#xA;        ffmpeg.av_dict_set(&amp;options, "analyzeduration", "2000000", 0);&#xA;        ffmpeg.av_dict_set(&amp;options, "probesize", (16384 * 16).ToString(), 0);&#xA;        ffmpeg.av_dict_set(&amp;options, "max_delay", "0", 0);&#xA;        ffmpeg.av_dict_set(&amp;options, "reorder_queue_size", "0", 0);&#xA;        ffmpeg.av_dict_set(&amp;options, "skip_frame", "8", 0);&#xA;        ffmpeg.av_dict_set(&amp;options, "skip_loop_filter", "48", 0);&#xA;        ffmpeg.av_dict_set(&amp;options, "rtbufsize", "1000M", 0);&#xA;&#xA;        AVFormatContext* pInputFmtCtx = ffmpeg.avformat_alloc_context();&#xA;&#xA;        AVInputFormat* inputFormat = null;&#xA;&#xA;        if (!string.IsNullOrEmpty(_format))&#xA;        {&#xA;            inputFormat = ffmpeg.av_find_input_format(_format);&#xA;&#xA;            if (inputFormat == null)&#xA;            {&#xA;                //throw&#xA;            }&#xA;        }&#xA;&#xA;        int ret = ffmpeg.avformat_open_input(&amp;pInputFmtCtx, _streamUrl, inputFormat, &amp;options);&#xA;&#xA;        if (ret != 0)&#xA;        {&#xA;            //throw&#xA;        }&#xA;&#xA;        return pInputFmtCtx;&#xA;    }&#xA;

    &#xA;

    video decoder

    &#xA;

        private void CreateVideoDecoder()&#xA;    {&#xA;        AVStream* videoStream = InputFormatContext->streams[VideoStreamIndex];&#xA;        AVCodecParameters* videoCodecParams = videoStream->codecpar;&#xA;        AVCodec* videoDecoder = ffmpeg.avcodec_find_decoder(videoCodecParams->codec_id);&#xA;&#xA;        VideoDecodeContext = ffmpeg.avcodec_alloc_context3(videoDecoder);&#xA;&#xA;        if (ffmpeg.avcodec_parameters_to_context(VideoDecodeContext, videoCodecParams) &lt; 0)&#xA;        {&#xA;            //throw&#xA;        }&#xA;&#xA;        if (ffmpeg.avcodec_open2(VideoDecodeContext, videoDecoder, null) &lt; 0)&#xA;        {&#xA;            //throw&#xA;        }&#xA;    }&#xA;

    &#xA;

    and the h264 encoder

    &#xA;

    private void CreateH264Encoder(AVStream* inputStream, AVStream* outputStream)&#xA;    {&#xA;        AVRational framerate = ffmpeg.av_guess_frame_rate(_inputContext.InputFormatContext, inputStream, null);&#xA;&#xA;        AVCodec* videoEncoder = ffmpeg.avcodec_find_encoder_by_name("h264_qsv");&#xA;        if (videoEncoder == null)&#xA;        {&#xA;            videoEncoder = ffmpeg.avcodec_find_encoder_by_name("libx264");&#xA;            PixelFormat = AVPixelFormat.AV_PIX_FMT_YUV420P;&#xA;        }&#xA;&#xA;        if (videoEncoder == null)&#xA;        {&#xA;            //throw&#xA;        }&#xA;&#xA;        VideoEncodeContext = ffmpeg.avcodec_alloc_context3(videoEncoder);&#xA;&#xA;        if (VideoEncodeContext == null)&#xA;        {&#xA;            //throw&#xA;        }&#xA;&#xA;        VideoEncodeContext->width = _inputContext.VideoDecodeContext->width;&#xA;        VideoEncodeContext->height = _inputContext.VideoDecodeContext->height;&#xA;        VideoEncodeContext->pix_fmt = PixelFormat;&#xA;        VideoEncodeContext->bit_rate = 2 * 1000 * 1000;&#xA;        VideoEncodeContext->rc_buffer_size = 4 * 1000 * 1000;&#xA;        VideoEncodeContext->rc_max_rate = 2 * 1000 * 1000;&#xA;        VideoEncodeContext->rc_min_rate = 3 * 1000 * 1000;&#xA;        VideoEncodeContext->framerate = framerate;&#xA;        VideoEncodeContext->max_b_frames = 0;&#xA;        VideoEncodeContext->time_base = ffmpeg.av_inv_q(framerate);&#xA;        VideoEncodeContext->flags |= ffmpeg.AV_CODEC_FLAG_GLOBAL_HEADER;&#xA;&#xA;        ffmpeg.av_opt_set(VideoEncodeContext->priv_data, "preset", "slow", 0);&#xA;        ffmpeg.av_opt_set(VideoEncodeContext->priv_data, "vprofile", "baseline", 0);&#xA;&#xA;        if (ffmpeg.avcodec_open2(VideoEncodeContext, videoEncoder, null) &lt; 0)&#xA;        {&#xA;            //throw&#xA;        }&#xA;&#xA;        ffmpeg.avcodec_parameters_from_context(outputStream->codecpar, VideoEncodeContext);&#xA;    }&#xA;

    &#xA;

    I'm using ffmpeg 4.0.1, so I'm decoding/encoding with the new format API which I'll skip to share for now because its nothing more than following the link : https://ffmpeg.org/doxygen/3.3/group__lavc__encdec.html

    &#xA;