Update To 11.40.268.0
[platform/framework/web/crosswalk.git] / src / media / cast / sender / video_encoder_impl.cc
index 4cbb769..a54ddfc 100644 (file)
 #include "media/base/video_frame.h"
 #include "media/cast/cast_defines.h"
 #include "media/cast/sender/fake_software_video_encoder.h"
-#if !defined(MEDIA_DISABLE_LIBVPX)
 #include "media/cast/sender/vp8_encoder.h"
-#endif  // !defined(MEDIA_DISABLE_LIBVPX)
 
 namespace media {
 namespace cast {
 
 namespace {
 
-#if !defined(MEDIA_DISABLE_LIBVPX)
 typedef base::Callback<void(Vp8Encoder*)> PassEncoderCallback;
 
 void InitializeEncoderOnEncoderThread(
@@ -30,13 +27,12 @@ void InitializeEncoderOnEncoderThread(
   DCHECK(environment->CurrentlyOn(CastEnvironment::VIDEO));
   encoder->Initialize();
 }
-#endif  // !defined(MEDIA_DISABLE_LIBVPX)
 
 void EncodeVideoFrameOnEncoderThread(
     scoped_refptr<CastEnvironment> environment,
     SoftwareVideoEncoder* encoder,
     const scoped_refptr<media::VideoFrame>& video_frame,
-    const base::TimeTicks& capture_time,
+    const base::TimeTicks& reference_time,
     const VideoEncoderImpl::CodecDynamicConfig& dynamic_config,
     const VideoEncoderImpl::FrameEncodedCallback& frame_encoded_callback) {
   DCHECK(environment->CurrentlyOn(CastEnvironment::VIDEO));
@@ -47,41 +43,26 @@ void EncodeVideoFrameOnEncoderThread(
       dynamic_config.latest_frame_id_to_reference);
   encoder->UpdateRates(dynamic_config.bit_rate);
 
-  scoped_ptr<EncodedFrame> encoded_frame(
-      new EncodedFrame());
-  if (!encoder->Encode(video_frame, encoded_frame.get())) {
-    VLOG(1) << "Encoding failed";
-    return;
-  }
-  if (encoded_frame->data.empty()) {
-    VLOG(1) << "Encoding resulted in an empty frame";
-    return;
-  }
-  encoded_frame->rtp_timestamp = GetVideoRtpTimestamp(capture_time);
-  encoded_frame->reference_time = capture_time;
-
+  scoped_ptr<EncodedFrame> encoded_frame(new EncodedFrame());
+  encoder->Encode(video_frame, reference_time, encoded_frame.get());
   environment->PostTask(
       CastEnvironment::MAIN,
       FROM_HERE,
-      base::Bind(
-          frame_encoded_callback, base::Passed(&encoded_frame)));
+      base::Bind(frame_encoded_callback, base::Passed(&encoded_frame)));
 }
 }  // namespace
 
 VideoEncoderImpl::VideoEncoderImpl(
     scoped_refptr<CastEnvironment> cast_environment,
-    const VideoSenderConfig& video_config,
-    int max_unacked_frames)
+    const VideoSenderConfig& video_config)
     : cast_environment_(cast_environment) {
   if (video_config.codec == CODEC_VIDEO_VP8) {
-#if !defined(MEDIA_DISABLE_LIBVPX)
-    encoder_.reset(new Vp8Encoder(video_config, max_unacked_frames));
+    encoder_.reset(new Vp8Encoder(video_config));
     cast_environment_->PostTask(CastEnvironment::VIDEO,
                                 FROM_HERE,
                                 base::Bind(&InitializeEncoderOnEncoderThread,
                                            cast_environment,
                                            encoder_.get()));
-#endif  // !defined(MEDIA_DISABLE_LIBVPX)
 #ifndef OFFICIAL_BUILD
   } else if (video_config.codec == CODEC_VIDEO_FAKE) {
     encoder_.reset(new FakeSoftwareVideoEncoder(video_config));
@@ -108,7 +89,7 @@ VideoEncoderImpl::~VideoEncoderImpl() {
 
 bool VideoEncoderImpl::EncodeVideoFrame(
     const scoped_refptr<media::VideoFrame>& video_frame,
-    const base::TimeTicks& capture_time,
+    const base::TimeTicks& reference_time,
     const FrameEncodedCallback& frame_encoded_callback) {
   DCHECK(cast_environment_->CurrentlyOn(CastEnvironment::MAIN));
   cast_environment_->PostTask(CastEnvironment::VIDEO,
@@ -117,7 +98,7 @@ bool VideoEncoderImpl::EncodeVideoFrame(
                                          cast_environment_,
                                          encoder_.get(),
                                          video_frame,
-                                         capture_time,
+                                         reference_time,
                                          dynamic_config_,
                                          frame_encoded_callback));