Index: media/mojo/services/mojo_audio_decoder.h |
diff --git a/media/mojo/services/mojo_audio_decoder.h b/media/mojo/services/mojo_audio_decoder.h |
index 6bfae6e8415d14fba205b4e91d8dc920bf49177b..96b2940f22de7f227e017a8069f18e8c56c8fcb3 100644 |
--- a/media/mojo/services/mojo_audio_decoder.h |
+++ b/media/mojo/services/mojo_audio_decoder.h |
@@ -10,6 +10,7 @@ |
#include "media/base/audio_decoder.h" |
#include "media/mojo/interfaces/audio_decoder.mojom.h" |
#include "mojo/public/cpp/bindings/binding.h" |
+#include "mojo/public/cpp/system/data_pipe.h" |
namespace base { |
class SingleThreadTaskRunner; |
@@ -52,10 +53,21 @@ class MojoAudioDecoder : public AudioDecoder, |
// called when |remote_decoder_| finished Reset() sequence. |
void OnResetDone(); |
+ // A helper method that creates data pipe and sets the data connection to |
+ // the service. |
+ void CreateDataPipe(); |
+ |
+ // A helper method to serialize the data section of DecoderBuffer into pipe. |
+ interfaces::DecoderBufferPtr TransferDecoderBuffer( |
+ const scoped_refptr<DecoderBuffer>& media_buffer); |
+ |
scoped_refptr<base::SingleThreadTaskRunner> task_runner_; |
interfaces::AudioDecoderPtr remote_decoder_; |
+ // DataPipe for serializing the data section of DecoderBuffer. |
+ mojo::ScopedDataPipeProducerHandle producer_handle_; |
+ |
// Binding for AudioDecoderClient, bound to the |task_runner_|. |
mojo::Binding<AudioDecoderClient> binding_; |