Git Inbox Mirror of the ffmpeg-devel mailing list - see https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
 help / color / mirror / Atom feed
From: Lynne via ffmpeg-devel <ffmpeg-devel@ffmpeg.org>
To: ffmpeg-devel@ffmpeg.org
Cc: Lynne <dev@lynne.ee>
Subject: [FFmpeg-devel] [PATCH 2/4] mpeg4audio: explicitly define each AOT
Date: Wed,  5 Jun 2024 05:08:36 +0200
Message-ID: <20240605030843.2807174-2-dev@lynne.ee> (raw)
In-Reply-To: <20240605030843.2807174-1-dev@lynne.ee>

This makes it far easier to figure out which AOT belongs to which
profile.
Also, explicitly highlight the holes.
---
 libavcodec/mpeg4audio.h | 82 +++++++++++++++++++++--------------------
 1 file changed, 42 insertions(+), 40 deletions(-)

diff --git a/libavcodec/mpeg4audio.h b/libavcodec/mpeg4audio.h
index 5daba7824b..0819e48a42 100644
--- a/libavcodec/mpeg4audio.h
+++ b/libavcodec/mpeg4audio.h
@@ -68,49 +68,51 @@ int avpriv_mpeg4audio_get_config2(MPEG4AudioConfig *c, const uint8_t *buf,
                                   int size, int sync_extension, void *logctx);
 
 enum AudioObjectType {
-    AOT_NULL,
+    AOT_NULL = 0,
                                // Support?                Name
-    AOT_AAC_MAIN,              ///< Y                       Main
-    AOT_AAC_LC,                ///< Y                       Low Complexity
-    AOT_AAC_SSR,               ///< N (code in SoC repo)    Scalable Sample Rate
-    AOT_AAC_LTP,               ///< Y                       Long Term Prediction
-    AOT_SBR,                   ///< Y                       Spectral Band Replication
-    AOT_AAC_SCALABLE,          ///< N                       Scalable
-    AOT_TWINVQ,                ///< N                       Twin Vector Quantizer
-    AOT_CELP,                  ///< N                       Code Excited Linear Prediction
-    AOT_HVXC,                  ///< N                       Harmonic Vector eXcitation Coding
+    AOT_AAC_MAIN         =  1, ///< Y                       Main
+    AOT_AAC_LC           =  2, ///< Y                       Low Complexity
+    AOT_AAC_SSR          =  3, ///< N (code in SoC repo)    Scalable Sample Rate
+    AOT_AAC_LTP          =  4, ///< Y                       Long Term Prediction
+    AOT_SBR              =  5, ///< Y                       Spectral Band Replication
+    AOT_AAC_SCALABLE     =  6, ///< N                       Scalable
+    AOT_TWINVQ           =  7, ///< N                       Twin Vector Quantizer
+    AOT_CELP             =  8, ///< N                       Code Excited Linear Prediction
+    AOT_HVXC             =  9, ///< N                       Harmonic Vector eXcitation Coding
+
     AOT_TTSI             = 12, ///< N                       Text-To-Speech Interface
-    AOT_MAINSYNTH,             ///< N                       Main Synthesis
-    AOT_WAVESYNTH,             ///< N                       Wavetable Synthesis
-    AOT_MIDI,                  ///< N                       General MIDI
-    AOT_SAFX,                  ///< N                       Algorithmic Synthesis and Audio Effects
-    AOT_ER_AAC_LC,             ///< N                       Error Resilient Low Complexity
+    AOT_MAINSYNTH        = 13, ///< N                       Main Synthesis
+    AOT_WAVESYNTH        = 14, ///< N                       Wavetable Synthesis
+    AOT_MIDI             = 15, ///< N                       General MIDI
+    AOT_SAFX             = 16, ///< N                       Algorithmic Synthesis and Audio Effects
+    AOT_ER_AAC_LC        = 17, ///< N                       Error Resilient Low Complexity
+
     AOT_ER_AAC_LTP       = 19, ///< N                       Error Resilient Long Term Prediction
-    AOT_ER_AAC_SCALABLE,       ///< N                       Error Resilient Scalable
-    AOT_ER_TWINVQ,             ///< N                       Error Resilient Twin Vector Quantizer
-    AOT_ER_BSAC,               ///< N                       Error Resilient Bit-Sliced Arithmetic Coding
-    AOT_ER_AAC_LD,             ///< N                       Error Resilient Low Delay
-    AOT_ER_CELP,               ///< N                       Error Resilient Code Excited Linear Prediction
-    AOT_ER_HVXC,               ///< N                       Error Resilient Harmonic Vector eXcitation Coding
-    AOT_ER_HILN,               ///< N                       Error Resilient Harmonic and Individual Lines plus Noise
-    AOT_ER_PARAM,              ///< N                       Error Resilient Parametric
-    AOT_SSC,                   ///< N                       SinuSoidal Coding
-    AOT_PS,                    ///< N                       Parametric Stereo
-    AOT_SURROUND,              ///< N                       MPEG Surround
-    AOT_ESCAPE,                ///< Y                       Escape Value
-    AOT_L1,                    ///< Y                       Layer 1
-    AOT_L2,                    ///< Y                       Layer 2
-    AOT_L3,                    ///< Y                       Layer 3
-    AOT_DST,                   ///< N                       Direct Stream Transfer
-    AOT_ALS,                   ///< Y                       Audio LosslesS
-    AOT_SLS,                   ///< N                       Scalable LosslesS
-    AOT_SLS_NON_CORE,          ///< N                       Scalable LosslesS (non core)
-    AOT_ER_AAC_ELD,            ///< N                       Error Resilient Enhanced Low Delay
-    AOT_SMR_SIMPLE,            ///< N                       Symbolic Music Representation Simple
-    AOT_SMR_MAIN,              ///< N                       Symbolic Music Representation Main
-    AOT_USAC,                  ///< Y                       Unified Speech and Audio Coding
-    AOT_SAOC,                  ///< N                       Spatial Audio Object Coding
-    AOT_LD_SURROUND,           ///< N                       Low Delay MPEG Surround
+    AOT_ER_AAC_SCALABLE  = 20, ///< N                       Error Resilient Scalable
+    AOT_ER_TWINVQ        = 21, ///< N                       Error Resilient Twin Vector Quantizer
+    AOT_ER_BSAC          = 22, ///< N                       Error Resilient Bit-Sliced Arithmetic Coding
+    AOT_ER_AAC_LD        = 23, ///< N                       Error Resilient Low Delay
+    AOT_ER_CELP          = 24, ///< N                       Error Resilient Code Excited Linear Prediction
+    AOT_ER_HVXC          = 25, ///< N                       Error Resilient Harmonic Vector eXcitation Coding
+    AOT_ER_HILN          = 26, ///< N                       Error Resilient Harmonic and Individual Lines plus Noise
+    AOT_ER_PARAM         = 27, ///< N                       Error Resilient Parametric
+    AOT_SSC              = 28, ///< N                       SinuSoidal Coding
+    AOT_PS               = 29, ///< N                       Parametric Stereo
+    AOT_SURROUND         = 30, ///< N                       MPEG Surround
+    AOT_ESCAPE           = 31, ///< Y                       Escape Value
+    AOT_L1               = 32, ///< Y                       Layer 1
+    AOT_L2               = 33, ///< Y                       Layer 2
+    AOT_L3               = 34, ///< Y                       Layer 3
+    AOT_DST              = 35, ///< N                       Direct Stream Transfer
+    AOT_ALS              = 36, ///< Y                       Audio LosslesS
+    AOT_SLS              = 37, ///< N                       Scalable LosslesS
+    AOT_SLS_NON_CORE     = 38, ///< N                       Scalable LosslesS (non core)
+    AOT_ER_AAC_ELD       = 39, ///< N                       Error Resilient Enhanced Low Delay
+    AOT_SMR_SIMPLE       = 40, ///< N                       Symbolic Music Representation Simple
+    AOT_SMR_MAIN         = 41, ///< N                       Symbolic Music Representation Main
+    AOT_USAC             = 42, ///< Y                       Unified Speech and Audio Coding
+    AOT_SAOC             = 43, ///< N                       Spatial Audio Object Coding
+    AOT_LD_SURROUND      = 44, ///< N                       Low Delay MPEG Surround
 };
 
 #define MAX_PCE_SIZE 320 ///<Maximum size of a PCE including the 3-bit ID_PCE
-- 
2.43.0.381.gb435a96ce8
_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel

To unsubscribe, visit link above, or email
ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".

  reply	other threads:[~2024-06-05  3:09 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-06-05  3:08 [FFmpeg-devel] [PATCH 1/4] mpeg4audio: rename AOT_USAC_NOSBR to AOT_USAC Lynne via ffmpeg-devel
2024-06-05  3:08 ` Lynne via ffmpeg-devel [this message]
2024-06-05 16:16   ` [FFmpeg-devel] [PATCH 2/4] mpeg4audio: explicitly define each AOT James Almer
2024-06-05  3:08 ` [FFmpeg-devel] [PATCH 3/4] aac: define a new profile for USAC Lynne via ffmpeg-devel
2024-06-05  5:33   ` Andreas Rheinhardt
2024-06-05 13:08     ` Lynne via ffmpeg-devel
2024-06-05 16:18   ` James Almer
2024-06-05  3:08 ` [FFmpeg-devel] [PATCH 4/4] lavc: bump minor and add APIchanges entry for new USAC profile Lynne via ffmpeg-devel
2024-06-05 16:17   ` James Almer
2024-06-05 16:15 ` [FFmpeg-devel] [PATCH 1/4] mpeg4audio: rename AOT_USAC_NOSBR to AOT_USAC James Almer

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20240605030843.2807174-2-dev@lynne.ee \
    --to=ffmpeg-devel@ffmpeg.org \
    --cc=dev@lynne.ee \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link

Git Inbox Mirror of the ffmpeg-devel mailing list - see https://ffmpeg.org/mailman/listinfo/ffmpeg-devel

This inbox may be cloned and mirrored by anyone:

	git clone --mirror https://master.gitmailbox.com/ffmpegdev/0 ffmpegdev/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 ffmpegdev ffmpegdev/ https://master.gitmailbox.com/ffmpegdev \
		ffmpegdev@gitmailbox.com
	public-inbox-index ffmpegdev

Example config snippet for mirrors.


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git