| Index: media/cast/sender/h264_vt_encoder.cc
|
| diff --git a/media/cast/sender/h264_vt_encoder.cc b/media/cast/sender/h264_vt_encoder.cc
|
| index 5d19284a33658bc3b2bf8088808ce0c7f592e042..364a4167bb2a9970f8252c71d10a45d857b29a07 100644
|
| --- a/media/cast/sender/h264_vt_encoder.cc
|
| +++ b/media/cast/sender/h264_vt_encoder.cc
|
| @@ -227,29 +227,25 @@ H264VideoToolboxEncoder::H264VideoToolboxEncoder(
|
| const scoped_refptr<CastEnvironment>& cast_environment,
|
| const VideoSenderConfig& video_config,
|
| const gfx::Size& frame_size,
|
| - const CastInitializationCallback& initialization_cb)
|
| + const StatusChangeCallback& status_change_cb)
|
| : cast_environment_(cast_environment),
|
| -
|
| videotoolbox_glue_(VideoToolboxGlue::Get()),
|
| frame_id_(kStartFrameId),
|
| encode_next_frame_as_keyframe_(false) {
|
| DCHECK(!frame_size.IsEmpty());
|
| + DCHECK(!status_change_cb.is_null());
|
|
|
| - CastInitializationStatus initialization_status;
|
| - if (videotoolbox_glue_) {
|
| - initialization_status = (Initialize(video_config, frame_size))
|
| - ? STATUS_VIDEO_INITIALIZED
|
| - : STATUS_INVALID_VIDEO_CONFIGURATION;
|
| + OperationalStatus operational_status;
|
| + if (video_config.codec == CODEC_VIDEO_H264 && videotoolbox_glue_) {
|
| + operational_status = Initialize(video_config, frame_size) ?
|
| + STATUS_INITIALIZED : STATUS_INVALID_CONFIGURATION;
|
| } else {
|
| - LOG(ERROR) << " VideoToolbox is not available";
|
| - initialization_status = STATUS_HW_VIDEO_ENCODER_NOT_SUPPORTED;
|
| - }
|
| - if (!initialization_cb.is_null()) {
|
| - cast_environment_->PostTask(
|
| - CastEnvironment::MAIN,
|
| - FROM_HERE,
|
| - base::Bind(initialization_cb, initialization_status));
|
| + operational_status = STATUS_UNSUPPORTED_CODEC;
|
| }
|
| + cast_environment_->PostTask(
|
| + CastEnvironment::MAIN,
|
| + FROM_HERE,
|
| + base::Bind(status_change_cb, operational_status));
|
| }
|
|
|
| H264VideoToolboxEncoder::~H264VideoToolboxEncoder() {
|
|
|