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

Side by Side Diff: media/cast/video_sender/video_encoder_impl.h

Issue 288103002: [Cast] EncodedAudioFrame+EncodedVideoFrame+reference_time --> EncodedFrame (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: rebase Created 6 years, 7 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 | Annotate | Revision Log
« no previous file with comments | « media/cast/video_sender/video_encoder.h ('k') | media/cast/video_sender/video_encoder_impl.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 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 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_SENDER_VIDEO_ENCODER_IMPL_H_ 5 #ifndef MEDIA_CAST_VIDEO_SENDER_VIDEO_ENCODER_IMPL_H_
6 #define MEDIA_CAST_VIDEO_SENDER_VIDEO_ENCODER_IMPL_H_ 6 #define MEDIA_CAST_VIDEO_SENDER_VIDEO_ENCODER_IMPL_H_
7 7
8 #include "base/memory/scoped_ptr.h" 8 #include "base/memory/scoped_ptr.h"
9 #include "media/cast/cast_config.h" 9 #include "media/cast/cast_config.h"
10 #include "media/cast/cast_environment.h" 10 #include "media/cast/cast_environment.h"
11 #include "media/cast/video_sender/software_video_encoder.h" 11 #include "media/cast/video_sender/software_video_encoder.h"
12 #include "media/cast/video_sender/video_encoder.h" 12 #include "media/cast/video_sender/video_encoder.h"
13 13
14 namespace media { 14 namespace media {
15 class VideoFrame; 15 class VideoFrame;
16 16
17 namespace cast { 17 namespace cast {
18 18
19 // This object is called external from the main cast thread and internally from 19 // This object is called external from the main cast thread and internally from
20 // the video encoder thread. 20 // the video encoder thread.
21 class VideoEncoderImpl : public VideoEncoder { 21 class VideoEncoderImpl : public VideoEncoder {
22 public: 22 public:
23 struct CodecDynamicConfig { 23 struct CodecDynamicConfig {
24 bool key_frame_requested; 24 bool key_frame_requested;
25 uint32 latest_frame_id_to_reference; 25 uint32 latest_frame_id_to_reference;
26 int bit_rate; 26 int bit_rate;
27 }; 27 };
28 28
29 typedef base::Callback<void(scoped_ptr<transport::EncodedVideoFrame>, 29 typedef base::Callback<void(scoped_ptr<transport::EncodedFrame>)>
30 const base::TimeTicks&)> FrameEncodedCallback; 30 FrameEncodedCallback;
31 31
32 VideoEncoderImpl(scoped_refptr<CastEnvironment> cast_environment, 32 VideoEncoderImpl(scoped_refptr<CastEnvironment> cast_environment,
33 const VideoSenderConfig& video_config, 33 const VideoSenderConfig& video_config,
34 uint8 max_unacked_frames); 34 uint8 max_unacked_frames);
35 35
36 virtual ~VideoEncoderImpl(); 36 virtual ~VideoEncoderImpl();
37 37
38 // Called from the main cast thread. This function post the encode task to the 38 // Called from the main cast thread. This function post the encode task to the
39 // video encoder thread; 39 // video encoder thread;
40 // The video_frame must be valid until the closure callback is called. 40 // The video_frame must be valid until the closure callback is called.
(...skipping 26 matching lines...) Expand all
67 // video encoder thread and video encoder thread can out-live the main thread. 67 // video encoder thread and video encoder thread can out-live the main thread.
68 scoped_ptr<SoftwareVideoEncoder> encoder_; 68 scoped_ptr<SoftwareVideoEncoder> encoder_;
69 69
70 DISALLOW_COPY_AND_ASSIGN(VideoEncoderImpl); 70 DISALLOW_COPY_AND_ASSIGN(VideoEncoderImpl);
71 }; 71 };
72 72
73 } // namespace cast 73 } // namespace cast
74 } // namespace media 74 } // namespace media
75 75
76 #endif // MEDIA_CAST_VIDEO_SENDER_VIDEO_ENCODER_IMPL_H_ 76 #endif // MEDIA_CAST_VIDEO_SENDER_VIDEO_ENCODER_IMPL_H_
OLDNEW
« no previous file with comments | « media/cast/video_sender/video_encoder.h ('k') | media/cast/video_sender/video_encoder_impl.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698