]> git.sesse.net Git - ffmpeg/blobdiff - libavcodec/mpeg4audio.h
x86inc: Support arbitrary stack alignments
[ffmpeg] / libavcodec / mpeg4audio.h
index 2d2b4a232eccb07c8ed6d68ed2a427b2702703a4..2eef2205bd651e316f5e006f66636aacb4daa197 100644 (file)
 #include "get_bits.h"
 #include "put_bits.h"
 
-typedef struct {
+typedef struct MPEG4AudioConfig {
     int object_type;
     int sampling_index;
     int sample_rate;
     int chan_config;
-    int sbr; //< -1 implicit, 1 presence
+    int sbr; ///< -1 implicit, 1 presence
     int ext_object_type;
     int ext_sampling_index;
     int ext_sample_rate;
     int ext_chan_config;
     int channels;
-    int ps;  //< -1 implicit, 1 presence
+    int ps;  ///< -1 implicit, 1 presence
+    int frame_length_short;
 } MPEG4AudioConfig;
 
-extern const int ff_mpeg4audio_sample_rates[16];
+extern av_export const int avpriv_mpeg4audio_sample_rates[16];
 extern const uint8_t ff_mpeg4audio_channels[8];
+
 /**
  * Parse MPEG-4 systems extradata to retrieve audio configuration.
  * @param[in] c        MPEG4AudioConfig structure to fill.
  * @param[in] buf      Extradata from container.
- * @param[in] buf_size Extradata size.
+ * @param[in] bit_size Extradata size in bits.
+ * @param[in] sync_extension look for a sync extension after config if true.
  * @return On error -1 is returned, on success AudioSpecificConfig bit index in extradata.
  */
-int ff_mpeg4audio_get_config(MPEG4AudioConfig *c, const uint8_t *buf, int buf_size);
+int avpriv_mpeg4audio_get_config(MPEG4AudioConfig *c, const uint8_t *buf,
+                                 int bit_size, int sync_extension);
 
 enum AudioObjectType {
     AOT_NULL,
@@ -101,6 +105,6 @@ enum AudioObjectType {
 #define MAX_PCE_SIZE 304 ///<Maximum size of a PCE including the 3-bit ID_PCE
                          ///<marker and the comment
 
-int ff_copy_pce_data(PutBitContext *pb, GetBitContext *gb);
+int avpriv_copy_pce_data(PutBitContext *pb, GetBitContext *gb);
 
 #endif /* AVCODEC_MPEG4AUDIO_H */