Roll src/third_party/WebKit f36d5e0:68b67cd (svn 193299:193303)
[chromium-blink-merge.git] / remoting / codec / audio_decoder.h
blobf5088bceb5c3a2c9b8b21aca3d7ad3b69d81c89a
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
3 // found in the LICENSE file.
5 #ifndef REMOTING_CODEC_AUDIO_DECODER_H_
6 #define REMOTING_CODEC_AUDIO_DECODER_H_
8 #include "base/memory/scoped_ptr.h"
10 namespace remoting {
12 namespace protocol {
13 class SessionConfig;
14 } // namespace protocol
16 class AudioPacket;
18 class AudioDecoder {
19 public:
20 static scoped_ptr<AudioDecoder> CreateAudioDecoder(
21 const protocol::SessionConfig& config);
23 virtual ~AudioDecoder() {}
25 // Returns the decoded packet. If the packet is invalid, then a NULL
26 // scoped_ptr is returned.
27 virtual scoped_ptr<AudioPacket> Decode(scoped_ptr<AudioPacket> packet) = 0;
30 } // namespace remoting
32 #endif // REMOTING_CODEC_AUDIO_DECODER_H_