[FFmpeg-cvslog] avutil/iamf: add some more doxy to structs

James Almer git at videolan.org
Mon Jan 15 23:16:51 EET 2024


ffmpeg | branch: master | James Almer <jamrial at gmail.com> | Mon Jan 15 18:15:10 2024 -0300| [d8f3cc90ac148f42e9f514995c11ee3c8dd528f6] | committer: James Almer

avutil/iamf: add some more doxy to structs

Particularly, state that their size is not part of the ABI.

Signed-off-by: James Almer <jamrial at gmail.com>

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

 libavutil/iamf.h | 43 +++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 43 insertions(+)

diff --git a/libavutil/iamf.h b/libavutil/iamf.h
index c6412180b4..93785d9fec 100644
--- a/libavutil/iamf.h
+++ b/libavutil/iamf.h
@@ -62,6 +62,8 @@ enum AVIAMFAnimationType {
 
 /**
  * Mix Gain Parameter Data as defined in section 3.8.1 of IAMF.
+ *
+ * @note This struct's size is not a part of the public ABI.
  */
 typedef struct AVIAMFMixGain {
     const AVClass *av_class;
@@ -111,6 +113,8 @@ typedef struct AVIAMFMixGain {
 
 /**
  * Demixing Info Parameter Data as defined in section 3.8.2 of IAMF.
+ *
+ * @note This struct's size is not a part of the public ABI.
  */
 typedef struct AVIAMFDemixingInfo {
     const AVClass *av_class;
@@ -129,6 +133,8 @@ typedef struct AVIAMFDemixingInfo {
 
 /**
  * Recon Gain Info Parameter Data as defined in section 3.8.3 of IAMF.
+ *
+ * @note This struct's size is not a part of the public ABI.
  */
 typedef struct AVIAMFReconGain {
     const AVClass *av_class;
@@ -172,6 +178,8 @@ enum AVIAMFParamDefinitionType {
  * The struct is allocated by av_iamf_param_definition_alloc() along with an
  * array of subblocks, its type depending on the value of type.
  * This array is placed subblocks_offset bytes after the start of this struct.
+ *
+ * @note This struct's size is not a part of the public ABI.
  */
 typedef struct AVIAMFParamDefinition {
     const AVClass *av_class;
@@ -270,6 +278,9 @@ enum AVIAMFAmbisonicsMode {
  * Layout layer as defined in section 3.6.2 of IAMF.
  * For AV_IAMF_AUDIO_ELEMENT_TYPE_SCENE, it is an Ambisonics channel
  * layout as defined in section 3.6.3 of IAMF.
+ *
+ * @note The struct should be allocated with av_iamf_audio_element_add_layer()
+ *       and its size is not a part of the public ABI.
  */
 typedef struct AVIAMFLayer {
     const AVClass *av_class;
@@ -326,6 +337,13 @@ enum AVIAMFAudioElementType {
     AV_IAMF_AUDIO_ELEMENT_TYPE_SCENE,
 };
 
+/**
+ * Information on how to combine one or more audio streams, as defined in
+ * section 3.6 of IAMF.
+ *
+ * @note The struct should be allocated with av_iamf_audio_element_alloc()
+ *       and its size is not a part of the public ABI.
+ */
 typedef struct AVIAMFAudioElement {
     const AVClass *av_class;
 
@@ -410,6 +428,12 @@ enum AVIAMFHeadphonesMode {
     AV_IAMF_HEADPHONES_MODE_BINAURAL,
 };
 
+/**
+ * Submix element as defined in section 3.7 of IAMF.
+ *
+ * @note The struct should be allocated with av_iamf_submix_add_element()
+ *       and its size is not a part of the public ABI.
+ */
 typedef struct AVIAMFSubmixElement {
     const AVClass *av_class;
 
@@ -468,6 +492,12 @@ enum AVIAMFSubmixLayoutType {
     AV_IAMF_SUBMIX_LAYOUT_TYPE_BINAURAL = 3,
 };
 
+/**
+ * Submix layout as defined in section 3.7.6 of IAMF.
+ *
+ * @note The struct should be allocated with av_iamf_submix_add_layout()
+ *       and its size is not a part of the public ABI.
+ */
 typedef struct AVIAMFSubmixLayout {
     const AVClass *av_class;
 
@@ -504,6 +534,12 @@ typedef struct AVIAMFSubmixLayout {
     AVRational album_anchored_loudness;
 } AVIAMFSubmixLayout;
 
+/**
+ * Submix layout as defined in section 3.7 of IAMF.
+ *
+ * @note The struct should be allocated with av_iamf_mix_presentation_add_submix()
+ *       and its size is not a part of the public ABI.
+ */
 typedef struct AVIAMFSubmix {
     const AVClass *av_class;
 
@@ -554,6 +590,13 @@ typedef struct AVIAMFSubmix {
     AVRational default_mix_gain;
 } AVIAMFSubmix;
 
+/**
+ * Information on how to render and mix one or more AVIAMFAudioElement to generate
+ * the final audio output, as defined in section 3.7 of IAMF.
+ *
+ * @note The struct should be allocated with av_iamf_mix_presentation_alloc()
+ *       and its size is not a part of the public ABI.
+ */
 typedef struct AVIAMFMixPresentation {
     const AVClass *av_class;
 



More information about the ffmpeg-cvslog mailing list