Index: media/webm/webm_audio_client.cc |
diff --git a/media/webm/webm_audio_client.cc b/media/webm/webm_audio_client.cc |
index e52f44b4a9a7f33ee8bf8119b044999e4e4c8eee..49089c3fc7a8dc87bab9d0ec4999326fd9f5471c 100644 |
--- a/media/webm/webm_audio_client.cc |
+++ b/media/webm/webm_audio_client.cc |
@@ -26,12 +26,15 @@ void WebMAudioClient::Reset() { |
bool WebMAudioClient::InitializeConfig( |
const std::string& codec_id, const std::vector<uint8>& codec_private, |
- bool is_encrypted, AudioDecoderConfig* config) { |
+ int64 seek_pre_roll, int64 codec_delay, bool is_encrypted, |
+ AudioDecoderConfig* config) { |
DCHECK(config); |
AudioCodec audio_codec = kUnknownAudioCodec; |
if (codec_id == "A_VORBIS") { |
audio_codec = kCodecVorbis; |
+ } else if (codec_id == "A_OPUS" || codec_id == "A_OPUS/EXPERIMENTAL") { |
+ audio_codec = kCodecOpus; |
} else { |
MEDIA_LOG(log_cb_) << "Unsupported audio codec_id " << codec_id; |
return false; |
@@ -63,8 +66,12 @@ bool WebMAudioClient::InitializeConfig( |
} |
config->Initialize( |
- audio_codec, kSampleFormatPlanarF32, channel_layout, |
- samples_per_second, extra_data, extra_data_size, is_encrypted, true); |
+ audio_codec, |
+ (audio_codec == kCodecOpus) ? kSampleFormatS16 : kSampleFormatPlanarF32, |
+ channel_layout, |
+ samples_per_second, extra_data, extra_data_size, is_encrypted, true, |
+ base::TimeDelta::FromMicroseconds(seek_pre_roll / 1000), |
acolwell GONE FROM CHROMIUM
2013/09/03 20:14:01
This code isn't checking for -1. I believe these f
vignesh
2013/09/03 22:43:03
Done.
|
+ base::TimeDelta::FromMicroseconds(codec_delay / 1000)); |
return config->IsValidConfig(); |
} |