1
0
Fork 0
mirror of https://github.com/ossrs/srs.git synced 2025-03-09 15:49:59 +00:00

for #310, refine code to support he/hev2, use aac object.

This commit is contained in:
winlin 2015-03-08 17:56:49 +08:00
parent 8dbabe3708
commit 885b9af122
10 changed files with 23 additions and 21 deletions

View file

@ -1397,15 +1397,15 @@ int SrsSource::on_audio(SrsCommonMessage* __audio)
// when got audio stream info.
SrsStatistic* stat = SrsStatistic::instance();
if ((ret = stat->on_audio_info(_req, SrsCodecAudioAAC, sample.sound_rate, sample.sound_type, codec.aac_profile)) != ERROR_SUCCESS) {
if ((ret = stat->on_audio_info(_req, SrsCodecAudioAAC, sample.sound_rate, sample.sound_type, codec.aac_object)) != ERROR_SUCCESS) {
return ret;
}
srs_trace("%dB audio sh, "
"codec(%d, profile=%d, %dchannels, %dkbps, %dHZ), "
"codec(%d, profile=%s, %dchannels, %dkbps, %dHZ), "
"flv(%dbits, %dchannels, %dHZ)",
msg.size, codec.audio_codec_id,
codec.aac_profile, codec.aac_channels,
srs_codec_aac_object2str(codec.aac_object).c_str(), codec.aac_channels,
codec.audio_data_rate / 1000, aac_sample_rates[codec.aac_sample_rate],
flv_sample_sizes[sample.sound_size], flv_sound_types[sample.sound_type],
flv_sample_rates[sample.sound_rate]);

View file

@ -60,7 +60,7 @@ SrsStatisticStream::SrsStatisticStream()
acodec = SrsCodecAudioReserved1;
asample_rate = SrsCodecAudioSampleRateReserved;
asound_type = SrsCodecAudioSoundTypeReserved;
aac_profile = SrsAacProfileReserved;
aac_object = SrsAacObjectTypeReserved;
}
SrsStatisticStream::~SrsStatisticStream()
@ -128,7 +128,7 @@ int SrsStatistic::on_video_info(SrsRequest* req,
int SrsStatistic::on_audio_info(SrsRequest* req,
SrsCodecAudio acodec, SrsCodecAudioSampleRate asample_rate, SrsCodecAudioSoundType asound_type,
SrsAacProfile aac_profile
SrsAacObjectType aac_object
) {
int ret = ERROR_SUCCESS;
@ -139,7 +139,7 @@ int SrsStatistic::on_audio_info(SrsRequest* req,
stream->acodec = acodec;
stream->asample_rate = asample_rate;
stream->asound_type = asound_type;
stream->aac_profile = aac_profile;
stream->aac_object = aac_object;
return ret;
}
@ -257,7 +257,7 @@ int SrsStatistic::dumps_streams(stringstream& ss)
<< __SRS_JFIELD_STR("codec", srs_codec_audio2str(stream->acodec)) << __SRS_JFIELD_CONT
<< __SRS_JFIELD_ORG("sample_rate", (int)flv_sample_rates[stream->asample_rate]) << __SRS_JFIELD_CONT
<< __SRS_JFIELD_ORG("channel", (int)stream->asound_type + 1) << __SRS_JFIELD_CONT
<< __SRS_JFIELD_STR("profile", srs_codec_aac_profile2str(stream->aac_profile))
<< __SRS_JFIELD_STR("profile", srs_codec_aac_object2str(stream->aac_object))
<< __SRS_JOBJECT_END;
}

View file

@ -73,7 +73,7 @@ public:
* 1.5.1.1 Audio object type definition, page 23,
* in aac-mp4a-format-ISO_IEC_14496-3+2001.pdf.
*/
SrsAacProfile aac_profile;
SrsAacObjectType aac_object;
public:
SrsStatisticStream();
virtual ~SrsStatisticStream();
@ -120,7 +120,7 @@ public:
*/
virtual int on_audio_info(SrsRequest* req,
SrsCodecAudio acodec, SrsCodecAudioSampleRate asample_rate, SrsCodecAudioSoundType asound_type,
SrsAacProfile aac_profile
SrsAacObjectType aac_object
);
/**
* when close stream.