mirror of
https://gitee.com/openharmony/third_party_ffmpeg
synced 2024-11-23 19:30:05 +00:00
use common aac sample rate tables
Originally committed as revision 12671 to svn://svn.ffmpeg.org/ffmpeg/trunk
This commit is contained in:
parent
b2fec0fc25
commit
7bfacd4e75
@ -306,8 +306,9 @@ OBJS-$(CONFIG_ADPCM_YAMAHA_ENCODER) += adpcm.o
|
||||
|
||||
# libavformat dependencies
|
||||
OBJS-$(CONFIG_GXF_DEMUXER) += mpeg12data.o
|
||||
OBJS-$(CONFIG_MATROSKA_AUDIO_MUXER) += xiph.o
|
||||
OBJS-$(CONFIG_MATROSKA_MUXER) += xiph.o
|
||||
OBJS-$(CONFIG_MATROSKA_AUDIO_MUXER) += xiph.o mpeg4audio.o
|
||||
OBJS-$(CONFIG_MATROSKA_DEMUXER) += mpeg4audio.o
|
||||
OBJS-$(CONFIG_MATROSKA_MUXER) += xiph.o mpeg4audio.o
|
||||
OBJS-$(CONFIG_NUT_MUXER) += mpegaudiodata.o
|
||||
OBJS-$(CONFIG_OGG_MUXER) += xiph.o
|
||||
OBJS-$(CONFIG_RTP_MUXER) += mpegvideo.o
|
||||
|
@ -33,6 +33,7 @@
|
||||
#include "riff.h"
|
||||
#include "intfloat_readwrite.h"
|
||||
#include "matroska.h"
|
||||
#include "libavcodec/mpeg4audio.h"
|
||||
|
||||
typedef struct Track {
|
||||
MatroskaTrackType type;
|
||||
@ -1997,14 +1998,10 @@ matroska_aac_profile (char *codec_id)
|
||||
static int
|
||||
matroska_aac_sri (int samplerate)
|
||||
{
|
||||
static const int aac_sample_rates[] = {
|
||||
96000, 88200, 64000, 48000, 44100, 32000,
|
||||
24000, 22050, 16000, 12000, 11025, 8000,
|
||||
};
|
||||
int sri;
|
||||
|
||||
for (sri=0; sri<ARRAY_SIZE(aac_sample_rates); sri++)
|
||||
if (aac_sample_rates[sri] == samplerate)
|
||||
for (sri=0; sri<ARRAY_SIZE(ff_mpeg4audio_sample_rates); sri++)
|
||||
if (ff_mpeg4audio_sample_rates[sri] == samplerate)
|
||||
break;
|
||||
return sri;
|
||||
}
|
||||
|
@ -25,6 +25,7 @@
|
||||
#include "xiph.h"
|
||||
#include "matroska.h"
|
||||
#include "avc.h"
|
||||
#include "libavcodec/mpeg4audio.h"
|
||||
|
||||
typedef struct ebml_master {
|
||||
offset_t pos; ///< absolute offset in the file where the master's elements start
|
||||
@ -438,10 +439,6 @@ static int put_flac_codecpriv(AVFormatContext *s, ByteIOContext *pb, AVCodecCont
|
||||
|
||||
static void get_aac_sample_rates(AVFormatContext *s, AVCodecContext *codec, int *sample_rate, int *output_sample_rate)
|
||||
{
|
||||
static const int aac_sample_rates[] = {
|
||||
96000, 88200, 64000, 48000, 44100, 32000,
|
||||
24000, 22050, 16000, 12000, 11025, 8000,
|
||||
};
|
||||
int sri;
|
||||
|
||||
if (codec->extradata_size < 2) {
|
||||
@ -454,7 +451,7 @@ static void get_aac_sample_rates(AVFormatContext *s, AVCodecContext *codec, int
|
||||
av_log(s, AV_LOG_WARNING, "AAC samplerate index out of bounds\n");
|
||||
return;
|
||||
}
|
||||
*sample_rate = aac_sample_rates[sri];
|
||||
*sample_rate = ff_mpeg4audio_sample_rates[sri];
|
||||
|
||||
// if sbr, get output sample rate as well
|
||||
if (codec->extradata_size == 5) {
|
||||
@ -463,7 +460,7 @@ static void get_aac_sample_rates(AVFormatContext *s, AVCodecContext *codec, int
|
||||
av_log(s, AV_LOG_WARNING, "AAC output samplerate index out of bounds\n");
|
||||
return;
|
||||
}
|
||||
*output_sample_rate = aac_sample_rates[sri];
|
||||
*output_sample_rate = ff_mpeg4audio_sample_rates[sri];
|
||||
}
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user