git.videolan.org Git - ffmpeg.git/rss log

FFmpeg git repo

http://git.videolan.org/?p=ffmpeg.git;a=summary

Les articles publiés sur le site

  • avformat/hlsenc : fix CODECS Attribute hard code in hevc EXT-X-STREAM-INF

    19 mars, par Jack Lau
    avformat/hlsenc: fix CODECS Attribute hard code in hevc EXT-X-STREAM-INF
    
    fix ticket: 10786
    
    parse the SPS from extradata and
    get profile_compatibility, tier, constraints which was been hard code before.
    HEVC CODECS Attribute reference to: ISO/IEC14496-15
    
    Signed-off-by: Jack Lau <jacklau1222@qq.com>
    Signed-off-by: Steven Liu <lq@chinaffmpeg.org>
    
    • [DH] libavformat/hlsenc.c
  • ffmpeg_demux : set default for readrate_catchup to be 5% faster

    19 mars, par Gyan Doshi
    ffmpeg_demux: set default for readrate_catchup to be 5% faster
    
    The existing default value is the same as the primary readrate.
    This maintains the flow rate as best as possible but does not
    reduce the lag. This new value allows catchup to gradually happen
    without overwhelming the receiver.
    
    Addresses a concern brought up in #11469
    
    • [DH] fftools/ffmpeg_demux.c
  • tests/checkasm/videodsp : Don't use declare_func_emms

    19 mars, par Andreas Rheinhardt
    tests/checkasm/videodsp: Don't use declare_func_emms
    
    It allows the callee to clobber the MMX state,
    yet since 1e3dc705dfb9546f0f7ff4479d20baeb4bdb6187 this is no longer
    done. So use the stricter declare_func instead.
    
    Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
    
    • [DH] tests/checkasm/videodsp.c
  • avutil/libm : Only include intfloat.h when needed

    19 mars, par Andreas Rheinhardt
    avutil/libm: Only include intfloat.h when needed
    
    Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
    
    • [DH] libavcodec/exrenc.c
    • [DH] libavcodec/fastaudio.c
    • [DH] libavcodec/jpeg2000.c
    • [DH] libavcodec/mips/h264pred_mmi.c
    • [DH] libavcodec/mips/hevcdsp_mmi.c
    • [DH] libavcodec/mips/vp8dsp_mmi.c
    • [DH] libavcodec/pnmdec.c
    • [DH] libavcodec/pnmenc.c
    • [DH] libavcodec/speexdec.c
    • [DH] libavfilter/vf_tonemap.c
    • [DH] libavfilter/vf_zscale.c
    • [DH] libavformat/ircamdec.c
    • [DH] libavformat/lafdec.c
    • [DH] libavformat/pdvdec.c
    • [DH] libavformat/usmdec.c
    • [DH] libavutil/libm.h
    • [DH] libavutil/tests/rational.c
    • [DH] libswscale/input.c
    • [DH] libswscale/output.c
    • [DH] libswscale/ppc/swscale_altivec.c
  • avcodec/mpegvideoenc : Add MPVEncContext

    19 mars, par Andreas Rheinhardt
    avcodec/mpegvideoenc: Add MPVEncContext
    
    Many of the fields of MpegEncContext (which is also used by decoders)
    are actually only used by encoders. Therefore this commit adds
    a new encoder-only structure and moves all of the encoder-only
    fields to it except for those which require more explicit
    synchronisation between the main slice context and the other
    slice contexts. This synchronisation is currently mainly provided
    by ff_update_thread_context() which simply copies most of
    the main slice context over the other slice contexts. Fields
    which are moved to the new MPVEncContext no longer participate
    in this (which is desired, because it is horrible and for the
    fields b) below wasteful) which means that some fields can only
    be moved when explicit synchronisation code is added in later commits.
    
    More explicitly, this commit moves the following fields:
    a) Fields not copied by ff_update_duplicate_context():
    dct_error_sum and dct_count; the former does not need synchronisation,
    the latter is synchronised in merge_context_after_encode().
    b) Fields which do not change after initialisation (these fields
    could also be put into MPVMainEncContext at the cost of
    an indirection to access them): lambda_table, adaptive_quant,
    {luma,chroma}_elim_threshold, new_pic, fdsp, mpvencdsp, pdsp,
    {p,b_forw,b_back,b_bidir_forw,b_bidir_back,b_direct,b_field}_mv_table,
    [pb]_field_select_table, mb_{type,var,mean}, mc_mb_var, {min,max}_qcoeff,
    {inter,intra}_quant_bias, ac_esc_length, the *_vlc_length fields,
    the q_{intra,inter,chroma_intra}_matrix{,16}, dct_offset, mb_info,
    mjpeg_ctx, rtp_mode, rtp_payload_size, encode_mb, all function
    pointers, mpv_flags, quantizer_noise_shaping,
    frame_reconstruction_bitfield, error_rate and intra_penalty.
    c) Fields which are already (re)set explicitly: The PutBitContexts
    pb, tex_pb, pb2; dquant, skipdct, encoding_error, the statistics
    fields {mv,i_tex,p_tex,misc,last}_bits and i_count; last_mv_dir,
    esc_pos (reset when writing the header).
    d) Fields which are only used by encoders not supporting slice
    threading for which synchronisation doesn't matter: esc3_level_length
    and the remaining mb_info fields.
    e) coded_score: This field is only really used when FF_MPV_FLAG_CBP_RD
    is set (which implies trellis) and even then it is only used for
    non-intra blocks. For these blocks dct_quantize_trellis_c() either
    sets coded_score[n] or returns a last_non_zero value of -1
    in which case coded_score will be reset in encode_mb_internal().
    Therefore no old values are ever used.
    
    The MotionEstContext has not been moved yet.
    
    Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
    
    • [DH] libavcodec/aarch64/me_cmp_init_aarch64.c
    • [DH] libavcodec/arm/me_cmp_init_arm.c
    • [DH] libavcodec/dnxhdenc.c
    • [DH] libavcodec/dnxhdenc.h
    • [DH] libavcodec/flvenc.c
    • [DH] libavcodec/h261enc.c
    • [DH] libavcodec/h261enc.h
    • [DH] libavcodec/h263enc.h
    • [DH] libavcodec/ituh263enc.c
    • [DH] libavcodec/me_cmp.c
    • [DH] libavcodec/me_cmp.h
    • [DH] libavcodec/mips/me_cmp_mips.h
    • [DH] libavcodec/mips/me_cmp_msa.c
    • [DH] libavcodec/mips/mpegvideo_mips.h
    • [DH] libavcodec/mips/mpegvideoenc_init_mips.c
    • [DH] libavcodec/mips/mpegvideoenc_mmi.c
    • [DH] libavcodec/mips/mpegvideoencdsp_init_mips.c
    • [DH] libavcodec/mips/pixblockdsp_init_mips.c
    • [DH] libavcodec/mips/pixblockdsp_mips.h
    • [DH] libavcodec/mjpegenc.c
    • [DH] libavcodec/mjpegenc.h
    • [DH] libavcodec/motion_est.c
    • [DH] libavcodec/motion_est.h
    • [DH] libavcodec/motion_est_template.c
    • [DH] libavcodec/mpeg12enc.c
    • [DH] libavcodec/mpeg12enc.h
    • [DH] libavcodec/mpeg4videoenc.c
    • [DH] libavcodec/mpeg4videoenc.h
    • [DH] libavcodec/mpegvideo.c
    • [DH] libavcodec/mpegvideo.h
    • [DH] libavcodec/mpegvideo_dec.c
    • [DH] libavcodec/mpegvideo_enc.c
    • [DH] libavcodec/mpegvideoenc.h
    • [DH] libavcodec/msmpeg4enc.c
    • [DH] libavcodec/msmpeg4enc.h
    • [DH] libavcodec/ppc/me_cmp.c
    • [DH] libavcodec/ratecontrol.c
    • [DH] libavcodec/riscv/me_cmp_init.c
    • [DH] libavcodec/rv10enc.c
    • [DH] libavcodec/rv20enc.c
    • [DH] libavcodec/snow_dwt.c
    • [DH] libavcodec/snow_dwt.h
    • [DH] libavcodec/snowenc.c
    • [DH] libavcodec/speedhqenc.c
    • [DH] libavcodec/speedhqenc.h
    • [DH] libavcodec/svq1enc.c
    • [DH] libavcodec/wmv2enc.c
    • [DH] libavcodec/x86/me_cmp.asm
    • [DH] libavcodec/x86/me_cmp_init.c
    • [DH] libavcodec/x86/mpegvideoenc.c
    • [DH] libavcodec/x86/mpegvideoenc_template.c
    • [DH] tests/checkasm/motion.c