OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "remoting/codec/audio_decoder_verbatim.h" | 5 #include "remoting/codec/audio_decoder_verbatim.h" |
6 | 6 |
7 #include "base/logging.h" | 7 #include "base/logging.h" |
8 #include "remoting/proto/audio.pb.h" | 8 #include "remoting/proto/audio.pb.h" |
9 | 9 |
10 namespace remoting { | 10 namespace remoting { |
11 | 11 |
12 AudioDecoderVerbatim::AudioDecoderVerbatim() { | 12 AudioDecoderVerbatim::AudioDecoderVerbatim() { |
13 } | 13 } |
14 | 14 |
15 AudioDecoderVerbatim::~AudioDecoderVerbatim() { | 15 AudioDecoderVerbatim::~AudioDecoderVerbatim() { |
16 } | 16 } |
17 | 17 |
18 scoped_ptr<AudioPacket> AudioDecoderVerbatim::Decode( | 18 scoped_ptr<AudioPacket> AudioDecoderVerbatim::Decode( |
19 scoped_ptr<AudioPacket> packet) { | 19 scoped_ptr<AudioPacket> packet) { |
20 // Return a null scoped_ptr if we get a corrupted packet. | 20 // Return a null scoped_ptr if we get a corrupted packet. |
21 if ((packet->encoding() != AudioPacket::ENCODING_RAW) || | 21 if ((packet->encoding() != AudioPacket::ENCODING_RAW) || |
22 (packet->data_size() != 1) || | 22 (packet->data_size() != 1) || |
23 (packet->sampling_rate() == AudioPacket::SAMPLING_RATE_INVALID) || | 23 (packet->sampling_rate() == AudioPacket::SAMPLING_RATE_INVALID) || |
24 (packet->bytes_per_sample() == AudioPacket::BYTES_PER_SAMPLE_INVALID)) { | 24 (packet->bytes_per_sample() != AudioPacket::BYTES_PER_SAMPLE_2) || |
| 25 (packet->channels() != AudioPacket::CHANNELS_STEREO)) { |
| 26 LOG(WARNING) << "Verbatim decoder received an invalid packet."; |
25 return scoped_ptr<AudioPacket>(); | 27 return scoped_ptr<AudioPacket>(); |
26 } | 28 } |
27 return packet.Pass(); | 29 return packet.Pass(); |
28 } | 30 } |
29 | 31 |
30 } // namespace remoting | 32 } // namespace remoting |
OLD | NEW |