| OLD | NEW |
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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 #include "media/filters/ffmpeg_video_decoder.h" | 5 #include "media/filters/ffmpeg_video_decoder.h" |
| 6 | 6 |
| 7 #include <algorithm> | 7 #include <algorithm> |
| 8 #include <string> | 8 #include <string> |
| 9 | 9 |
| 10 #include "base/bind.h" | 10 #include "base/bind.h" |
| (...skipping 342 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 353 DCHECK_NE(state_, kUninitialized); | 353 DCHECK_NE(state_, kUninitialized); |
| 354 DCHECK_NE(state_, kDecodeFinished); | 354 DCHECK_NE(state_, kDecodeFinished); |
| 355 DCHECK(!read_cb_.is_null()); | 355 DCHECK(!read_cb_.is_null()); |
| 356 | 356 |
| 357 if (!reset_cb_.is_null()) { | 357 if (!reset_cb_.is_null()) { |
| 358 base::ResetAndReturn(&read_cb_).Run(kOk, NULL); | 358 base::ResetAndReturn(&read_cb_).Run(kOk, NULL); |
| 359 DoReset(); | 359 DoReset(); |
| 360 return; | 360 return; |
| 361 } | 361 } |
| 362 | 362 |
| 363 if (decrypt_status == Decryptor::kError) { | 363 if (decrypt_status == Decryptor::kNoKey || |
| 364 decrypt_status == Decryptor::kError) { |
| 364 state_ = kDecodeFinished; | 365 state_ = kDecodeFinished; |
| 365 base::ResetAndReturn(&read_cb_).Run(kDecryptError, NULL); | 366 base::ResetAndReturn(&read_cb_).Run(kDecryptError, NULL); |
| 366 return; | 367 return; |
| 367 } | 368 } |
| 368 | 369 |
| 369 DCHECK_EQ(Decryptor::kSuccess, decrypt_status); | 370 DCHECK_EQ(Decryptor::kSuccess, decrypt_status); |
| 370 DCHECK(buffer); | 371 DCHECK(buffer); |
| 371 DCHECK(buffer->GetDataSize()); | 372 DCHECK(buffer->GetDataSize()); |
| 372 DCHECK(!buffer->GetDecryptConfig()); | 373 DCHECK(!buffer->GetDecryptConfig()); |
| 373 DecodeBuffer(buffer); | 374 DecodeBuffer(buffer); |
| (...skipping 167 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 541 av_free(codec_context_); | 542 av_free(codec_context_); |
| 542 codec_context_ = NULL; | 543 codec_context_ = NULL; |
| 543 } | 544 } |
| 544 if (av_frame_) { | 545 if (av_frame_) { |
| 545 av_free(av_frame_); | 546 av_free(av_frame_); |
| 546 av_frame_ = NULL; | 547 av_frame_ = NULL; |
| 547 } | 548 } |
| 548 } | 549 } |
| 549 | 550 |
| 550 } // namespace media | 551 } // namespace media |
| OLD | NEW |