Index: media/mp4/mp4_stream_parser.cc |
diff --git a/media/mp4/mp4_stream_parser.cc b/media/mp4/mp4_stream_parser.cc |
index 2e20c5cae7e1f080b4e6173d4cbc8b04353559ee..a6e2dc8c67f6cdfa629d54f3c7b642a049ab9d0e 100644 |
--- a/media/mp4/mp4_stream_parser.cc |
+++ b/media/mp4/mp4_stream_parser.cc |
@@ -163,10 +163,11 @@ bool MP4StreamParser::ParseMoov(BoxReader* reader) { |
// (entry.format == FOURCC_ENCA && |
// entry.sinf.format.format == FOURCC_MP4A)); |
- const ChannelLayout layout = |
- AVC::ConvertAACChannelCountToChannelLayout(entry.channelcount); |
- audio_config.Initialize(kCodecAAC, entry.samplesize, layout, |
- entry.samplerate, NULL, 0, false); |
+ aac_ = entry.esds.aac; |
acolwell GONE FROM CHROMIUM
2012/06/28 17:31:25
What protects this code from other audio codecs be
|
+ audio_config.Initialize(kCodecAAC, entry.samplesize, |
+ aac_.channel_layout(), aac_.frequency(), |
+ NULL, 0, false); |
+ |
has_audio_ = true; |
audio_track_id_ = track->header.track_id; |
} |
@@ -287,6 +288,10 @@ bool MP4StreamParser::EnqueueSample(BufferQueue* audio_buffers, |
} |
} |
+ if (audio) { |
+ aac_.ConvertEsdsToADTS(&frame_buf); |
+ } |
+ |
scoped_refptr<StreamParserBuffer> stream_buf = |
StreamParserBuffer::CopyFrom(&frame_buf[0], frame_buf.size(), |
runs_.is_keyframe()); |