[FFmpeg-cvslog] avcodec/rl: Improve documentation of ff_rl_init/ff_rl_init_vlc

Andreas Rheinhardt git at videolan.org
Wed May 5 19:27:54 EEST 2021


ffmpeg | branch: master | Andreas Rheinhardt <andreas.rheinhardt at gmail.com> | Wed Jan 27 17:21:01 2021 +0100| [b30851c87274730749f282b61875393e29918d8e] | committer: Andreas Rheinhardt

avcodec/rl: Improve documentation of ff_rl_init/ff_rl_init_vlc

In particular, document that they initialize different parts of an
RLTable and therefore need not be synchronized.

Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt at gmail.com>

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=b30851c87274730749f282b61875393e29918d8e
---

 libavcodec/rl.h | 15 +++++++++++++++
 1 file changed, 15 insertions(+)

diff --git a/libavcodec/rl.h b/libavcodec/rl.h
index 26e0b32a90..5aae698e31 100644
--- a/libavcodec/rl.h
+++ b/libavcodec/rl.h
@@ -49,10 +49,25 @@ typedef struct RLTable {
 } RLTable;
 
 /**
+ * Initialize index_run, max_level and max_run from n, last, table_vlc,
+ * table_run and table_level.
  * @param static_store static uint8_t array[2][2*MAX_RUN + MAX_LEVEL + 3]
  *                     to hold the level and run tables.
+ * @note  This function does not touch rl_vlc at all, hence there is no need
+ *        to synchronize calls to ff_rl_init() and ff_rl_init_vlc() using the
+ *        same RLTable.
  */
 void ff_rl_init(RLTable *rl, uint8_t static_store[2][2*MAX_RUN + MAX_LEVEL + 3]);
+
+/**
+ * Initialize rl_vlc from n, last, table_vlc, table_run and table_level.
+ * All rl_vlc pointers to be initialized must already point to a static
+ * buffer of `static_size` RL_VLC_ELEM elements; if a pointer is NULL,
+ * initializing further VLCs stops.
+ * @note  This function does not touch what ff_rl_init() initializes at all,
+ *        hence there is no need to synchronize calls to ff_rl_init() and
+ *        ff_rl_init_vlc() using the same RLTable.
+ */
 void ff_rl_init_vlc(RLTable *rl, unsigned static_size);
 
 #define INIT_VLC_RL(rl, static_size)\



More information about the ffmpeg-cvslog mailing list