Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(375)

Side by Side Diff: services/media/framework_mojo/mojo_consumer.h

Issue 1814553002: Motown: Improvements to packet definition (Closed) Base URL: https://github.com/domokit/mojo.git@master
Patch Set: Added a comment. Created 4 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2016 The Chromium Authors. All rights reserved. 1 // Copyright 2016 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 #ifndef SERVICES_MEDIA_FRAMEWORK_MOJO_MOJO_CONSUMER_H_ 5 #ifndef SERVICES_MEDIA_FRAMEWORK_MOJO_MOJO_CONSUMER_H_
6 #define SERVICES_MEDIA_FRAMEWORK_MOJO_MOJO_CONSUMER_H_ 6 #define SERVICES_MEDIA_FRAMEWORK_MOJO_MOJO_CONSUMER_H_
7 7
8 8
9 #include "base/single_thread_task_runner.h" 9 #include "base/single_thread_task_runner.h"
10 #include "base/task_runner.h" 10 #include "base/task_runner.h"
(...skipping 71 matching lines...) Expand 10 before | Expand all | Expand 10 after
82 const SendPacketCallback& callback, 82 const SendPacketCallback& callback,
83 scoped_refptr<base::SingleThreadTaskRunner> task_runner, 83 scoped_refptr<base::SingleThreadTaskRunner> task_runner,
84 const MappedSharedBuffer& buffer) { 84 const MappedSharedBuffer& buffer) {
85 return PacketPtr(new PacketImpl( 85 return PacketPtr(new PacketImpl(
86 media_packet.Pass(), 86 media_packet.Pass(),
87 callback, 87 callback,
88 task_runner, 88 task_runner,
89 buffer)); 89 buffer));
90 } 90 }
91 91
92 // Packet implementation.
93 int64_t presentation_time() const override {
94 return media_packet_->pts;
95 }
96
97 uint64_t duration() const override {
98 return media_packet_->duration;
99 }
100
101 bool end_of_stream() const override {
102 return media_packet_->end_of_stream;
103 }
104
105 size_t size() const override {
106 return media_packet_->payload->length;
107 }
108
109 void* payload() const override { return payload_; }
110
111 protected: 92 protected:
112 void Release() override; 93 void Release() override;
113 94
114 private: 95 private:
115 PacketImpl( 96 PacketImpl(
116 MediaPacketPtr media_packet, 97 MediaPacketPtr media_packet,
117 const SendPacketCallback& callback, 98 const SendPacketCallback& callback,
118 scoped_refptr<base::SingleThreadTaskRunner> task_runner, 99 scoped_refptr<base::SingleThreadTaskRunner> task_runner,
119 const MappedSharedBuffer& buffer); 100 const MappedSharedBuffer& buffer);
120 101
121 ~PacketImpl() override; 102 ~PacketImpl() override;
122 103
123 static void RunCallback(const SendPacketCallback& callback); 104 static void RunCallback(const SendPacketCallback& callback);
124 105
125 MediaPacketPtr media_packet_; 106 MediaPacketPtr media_packet_;
126 const SendPacketCallback callback_; 107 const SendPacketCallback callback_;
127 scoped_refptr<base::SingleThreadTaskRunner> task_runner_; 108 scoped_refptr<base::SingleThreadTaskRunner> task_runner_;
128 void* payload_;
129 }; 109 };
130 110
131 BindingSet<MediaConsumer> bindings_; 111 BindingSet<MediaConsumer> bindings_;
132 PrimeRequestedCallback prime_requested_callback_; 112 PrimeRequestedCallback prime_requested_callback_;
133 FlushRequestedCallback flush_requested_callback_; 113 FlushRequestedCallback flush_requested_callback_;
134 scoped_refptr<base::SingleThreadTaskRunner> task_runner_; 114 scoped_refptr<base::SingleThreadTaskRunner> task_runner_;
135 MappedSharedBuffer buffer_; 115 MappedSharedBuffer buffer_;
136 SupplyCallback supply_callback_; 116 SupplyCallback supply_callback_;
137 }; 117 };
138 118
139 } // namespace media 119 } // namespace media
140 } // namespace mojo 120 } // namespace mojo
141 121
142 #endif // SERVICES_MEDIA_FRAMEWORK_MOJO_MOJO_CONSUMER_H_ 122 #endif // SERVICES_MEDIA_FRAMEWORK_MOJO_MOJO_CONSUMER_H_
OLDNEW
« no previous file with comments | « services/media/framework_ffmpeg/ffmpeg_video_decoder.cc ('k') | services/media/framework_mojo/mojo_consumer.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698