mbox series

[FFmpeg-devel,00/48,v3] deprecate av_init_packet() and sizeof(AVPacket) as part of the ABI

Message ID 20210305163339.63164-1-jamrial@gmail.com
Headers show
Series deprecate av_init_packet() and sizeof(AVPacket) as part of the ABI
Related show

Message

James Almer March 5, 2021, 4:32 p.m. UTC
Changes from v2 include fixing issues reported in the previous set, handling
AVPacketList in a better way, skiping the dv patch for now as it needs a more
thorough solution, removed the ffplay patch as it was already done by Marton,
and removed the frame_thread_encoder patch as it became unnecessary after a
change by Andreas.
The decklink patch still only removes the av_init_packet() calls and doesn't
remove stack usage, as I can't test it.

James Almer (48):
  avcodec/packet: deprecate av_init_packet()
  avcodec/packet_internal: make avpriv_packet_list_* functions use an
    internal struct
  avcodec/cri: use av_packet_alloc() to allocate packets
  avcodec/mmal: use av_packet_alloc() to allocate packets
  avcodec/libxvid: use av_packet_alloc() to allocate packets
  avcodec/mpegvideo_enc: use av_packet_alloc() to allocate packets
  avcodec/pthread_frame: use av_packet_alloc() to allocate packets
  avcodec/tdsc: use av_packet_alloc() to allocate packets
  avcodec/tiff: use av_packet_alloc() to allocate AVPackets
  avcodec/webp: use av_packet_alloc() to allocate packets
  avcodec/tests/avpacket: use av_packet_alloc() to allocate packets
  avformat/mux: use av_packet_alloc() to allocate packets
  avformat/utils: use av_packet_alloc() to allocate packets
  avformat/amvenc: use av_packet_alloc() to allocate packets
  avformat/asfdec_o: use av_packet_alloc() to allocate packets
  avformat/avidec: use av_packet_alloc() to allocate packets
  avformat/avienc: use av_packet_alloc() to allocate packets
  avformat/flac_picture: replace call to av_init_packet()
  avformat/id3v2: replace call to av_init_packet()
  avformat/flacdec: use av_packet_alloc() to allocate packets
  avformat/hls: use av_packet_alloc() to allocate packets
  avformat/matroskadec: use av_packet_alloc() to allocate packets
  avformat/matroskaenc: use av_packet_alloc() to allocate packets
  avformat/movenc: use av_packet_alloc() to allocate packets
  avformat/mpegts: use av_packet_alloc() to allocate packets
  avformat/mpegtsenc: use av_packet_alloc() to allocate packets
  avformat/rtpdec: use av_packet_alloc() to allocate packets
  avformat/rtpenc_mpegts: use av_packet_alloc() to allocate packets
  avformat/subtitles: use av_packet_alloc() to allocate packets
  avformat/wc3movie: use av_packet_alloc() to allocate packets
  avformat/tests/fifo_muxer: use av_packet_alloc() to allocate packets
  avformat/tests/movenc: use av_packet_alloc() to allocate packets
  avdevice/decklink_dec: stop using av_init_packet()
  avdevice/xcbgrab: stop using av_init_packet()
  avfilter/vf_mcdeint: use av_packet_alloc() to allocate packets
  avfilter/vf_uspp: use av_packet_alloc() to allocate packets
  tools/pktdumper: use av_packet_alloc() to allocate packets
  tools/target_dec_fuzzer: use av_packet_alloc() to allocate packets
  tools/target_dem_fuzzer: use av_packet_alloc() to allocate packets
  tools/target_bsf_fuzzer: use av_packet_alloc() to allocate packets
  tests/api/api-flac-test: use av_packet_alloc() to allocate packets
  doc/examples/demuxing_decoding: use av_packet_alloc() to allocate
    packets
  doc/examples/transcode_aac: use av_packet_alloc() to allocate packets
  doc/examples/transcoding: use av_packet_alloc() to allocate packets
  doc/examples/vaapi_encode: use av_packet_alloc() to allocate packets
  doc/examples/vaapi_transcode: use av_packet_alloc() to allocate
    packets
  fftools/ffprobe: use av_packet_alloc() to allocate packets
  fftools/ffmpeg: use av_packet_alloc() to allocate packets

 doc/examples/demuxing_decoding.c |  25 +--
 doc/examples/transcode_aac.c     |  46 +++--
 doc/examples/transcoding.c       |  48 +++--
 doc/examples/vaapi_encode.c      |  16 +-
 doc/examples/vaapi_transcode.c   |  42 ++--
 fftools/ffmpeg.c                 | 318 ++++++++++++++++---------------
 fftools/ffmpeg.h                 |   4 +
 fftools/ffmpeg_opt.c             |   5 +-
 fftools/ffprobe.c                |  34 ++--
 libavcodec/avpacket.c            |  41 ++--
 libavcodec/cri.c                 |  16 +-
 libavcodec/libxvid.c             |  13 +-
 libavcodec/mmaldec.c             |  15 +-
 libavcodec/mpegvideo_enc.c       |  38 ++--
 libavcodec/packet.h              |  22 ++-
 libavcodec/packet_internal.h     |  10 +-
 libavcodec/pthread_frame.c       |  20 +-
 libavcodec/tdsc.c                |  14 +-
 libavcodec/tests/avpacket.c      |  19 +-
 libavcodec/tiff.c                |  14 +-
 libavcodec/version.h             |   5 +-
 libavcodec/webp.c                |  24 ++-
 libavdevice/decklink_common.h    |   2 +-
 libavdevice/decklink_dec.cpp     |  21 +-
 libavdevice/dshow.c              |  10 +-
 libavdevice/dshow_capture.h      |   3 +-
 libavdevice/vfwcap.c             |  13 +-
 libavdevice/xcbgrab.c            |   4 -
 libavfilter/vf_mcdeint.c         |  13 +-
 libavfilter/vf_uspp.c            |  14 +-
 libavformat/aiffenc.c            |   4 +-
 libavformat/amvenc.c             |  41 ++--
 libavformat/asfdec_o.c           |  63 +++---
 libavformat/avformat.h           |   4 +
 libavformat/avidec.c             |  24 ++-
 libavformat/avienc.c             |  18 +-
 libavformat/flac_picture.c       |   2 +-
 libavformat/flacdec.c            |  15 +-
 libavformat/flacenc.c            |   2 +-
 libavformat/hls.c                |  73 +++----
 libavformat/id3v2.c              |   2 +-
 libavformat/internal.h           |  20 +-
 libavformat/jacosubdec.c         |   2 +-
 libavformat/matroskadec.c        |  21 +-
 libavformat/matroskaenc.c        |  21 +-
 libavformat/movenc.c             | 101 ++++++----
 libavformat/movenc.h             |   4 +-
 libavformat/movenchint.c         |  19 +-
 libavformat/mp3enc.c             |   2 +-
 libavformat/mpeg.c               |   4 +-
 libavformat/mpegts.c             |  36 ++--
 libavformat/mpegtsenc.c          |  19 +-
 libavformat/mpsubdec.c           |   4 +-
 libavformat/mux.c                |  51 ++---
 libavformat/mxfenc.c             |   7 +-
 libavformat/options.c            |   9 +
 libavformat/rtpdec.c             |   2 +-
 libavformat/rtpdec_qt.c          |  63 +++---
 libavformat/rtpenc_mpegts.c      |  23 ++-
 libavformat/subtitles.c          |  69 +++----
 libavformat/subtitles.h          |   2 +-
 libavformat/tedcaptionsdec.c     |   4 +-
 libavformat/tests/fifo_muxer.c   |  28 ++-
 libavformat/tests/movenc.c       |  81 ++++----
 libavformat/ttaenc.c             |   2 +-
 libavformat/utils.c              | 115 ++++++-----
 libavformat/wc3movie.c           |  21 +-
 tests/api/api-flac-test.c        |  21 +-
 tools/pktdumper.c                |  23 ++-
 tools/target_bsf_fuzzer.c        |  33 ++--
 tools/target_dec_fuzzer.c        |  73 ++++---
 tools/target_dem_fuzzer.c        |  13 +-
 72 files changed, 1153 insertions(+), 857 deletions(-)