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

Side by Side Diff: media/cast/video_receiver/video_receiver.h

Issue 229503002: Cast: Make castv2 mirroring performance test run again (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: comments addressed Created 6 years, 8 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
« no previous file with comments | « media/cast/test/utility/udp_proxy.cc ('k') | media/cast/video_receiver/video_receiver.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2013 The Chromium Authors. All rights reserved. 1 // Copyright 2013 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 MEDIA_CAST_VIDEO_RECEIVER_VIDEO_RECEIVER_H_ 5 #ifndef MEDIA_CAST_VIDEO_RECEIVER_VIDEO_RECEIVER_H_
6 #define MEDIA_CAST_VIDEO_RECEIVER_VIDEO_RECEIVER_H_ 6 #define MEDIA_CAST_VIDEO_RECEIVER_VIDEO_RECEIVER_H_
7 7
8 #include "base/basictypes.h" 8 #include "base/basictypes.h"
9 #include "base/callback.h" 9 #include "base/callback.h"
10 #include "base/memory/ref_counted.h" 10 #include "base/memory/ref_counted.h"
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after
42 // the sender, then receive and re-order packets on the receiver, then decode 42 // the sender, then receive and re-order packets on the receiver, then decode
43 // frame) can vary in duration and is typically very hard to predict. 43 // frame) can vary in duration and is typically very hard to predict.
44 // Heuristics will determine when the targeted playout delay is insufficient in 44 // Heuristics will determine when the targeted playout delay is insufficient in
45 // the current environment; and the receiver can then increase the playout 45 // the current environment; and the receiver can then increase the playout
46 // delay, notifying the sender, to account for the extra variance. 46 // delay, notifying the sender, to account for the extra variance.
47 // TODO(miu): Make the last sentence true. http://crbug.com/360111 47 // TODO(miu): Make the last sentence true. http://crbug.com/360111
48 // 48 //
49 // Two types of frames can be requested: 1) A frame of decoded video data; or 2) 49 // Two types of frames can be requested: 1) A frame of decoded video data; or 2)
50 // a frame of still-encoded video data, to be passed into an external video 50 // a frame of still-encoded video data, to be passed into an external video
51 // decoder. Each request for a frame includes a callback which VideoReceiver 51 // decoder. Each request for a frame includes a callback which VideoReceiver
52 // guarantees will be called at some point in the future. Clients should 52 // guarantees will be called at some point in the future unless the
53 // generally limit the number of outstanding requests (perhaps to just one or 53 // VideoReceiver is destroyed. Clients should generally limit the number of
54 // two). When VideoReceiver is destroyed, any outstanding requests will be 54 // outstanding requests (perhaps to just one or two).
55 // immediately invoked with a NULL frame.
56 // 55 //
57 // This class is not thread safe. Should only be called from the Main cast 56 // This class is not thread safe. Should only be called from the Main cast
58 // thread. 57 // thread.
59 class VideoReceiver : public RtpReceiver, 58 class VideoReceiver : public RtpReceiver,
60 public RtpPayloadFeedback, 59 public RtpPayloadFeedback,
61 public base::NonThreadSafe, 60 public base::NonThreadSafe,
62 public base::SupportsWeakPtr<VideoReceiver> { 61 public base::SupportsWeakPtr<VideoReceiver> {
63 public: 62 public:
64 VideoReceiver(scoped_refptr<CastEnvironment> cast_environment, 63 VideoReceiver(scoped_refptr<CastEnvironment> cast_environment,
65 const VideoReceiverConfig& video_config, 64 const VideoReceiverConfig& video_config,
(...skipping 108 matching lines...) Expand 10 before | Expand all | Expand 10 after
174 // NOTE: Weak pointers must be invalidated before all other member variables. 173 // NOTE: Weak pointers must be invalidated before all other member variables.
175 base::WeakPtrFactory<VideoReceiver> weak_factory_; 174 base::WeakPtrFactory<VideoReceiver> weak_factory_;
176 175
177 DISALLOW_COPY_AND_ASSIGN(VideoReceiver); 176 DISALLOW_COPY_AND_ASSIGN(VideoReceiver);
178 }; 177 };
179 178
180 } // namespace cast 179 } // namespace cast
181 } // namespace media 180 } // namespace media
182 181
183 #endif // MEDIA_CAST_VIDEO_RECEIVER_VIDEO_RECEIVER_H_ 182 #endif // MEDIA_CAST_VIDEO_RECEIVER_VIDEO_RECEIVER_H_
OLDNEW
« no previous file with comments | « media/cast/test/utility/udp_proxy.cc ('k') | media/cast/video_receiver/video_receiver.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698