summaryrefslogtreecommitdiff
path: root/chromium/media/base/android/media_codec_bridge_impl.cc
diff options
context:
space:
mode:
authorAllan Sandfeld Jensen <allan.jensen@qt.io>2017-11-20 10:33:36 +0100
committerAllan Sandfeld Jensen <allan.jensen@qt.io>2017-11-22 11:45:12 +0000
commitbe59a35641616a4cf23c4a13fa0632624b021c1b (patch)
tree9da183258bdf9cc413f7562079d25ace6955467f /chromium/media/base/android/media_codec_bridge_impl.cc
parentd702e4b6a64574e97fc7df8fe3238cde70242080 (diff)
downloadqtwebengine-chromium-be59a35641616a4cf23c4a13fa0632624b021c1b.tar.gz
BASELINE: Update Chromium to 62.0.3202.101
Change-Id: I2d5eca8117600df6d331f6166ab24d943d9814ac Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
Diffstat (limited to 'chromium/media/base/android/media_codec_bridge_impl.cc')
-rw-r--r--chromium/media/base/android/media_codec_bridge_impl.cc20
1 files changed, 10 insertions, 10 deletions
diff --git a/chromium/media/base/android/media_codec_bridge_impl.cc b/chromium/media/base/android/media_codec_bridge_impl.cc
index bee494f8351..e58d433b544 100644
--- a/chromium/media/base/android/media_codec_bridge_impl.cc
+++ b/chromium/media/base/android/media_codec_bridge_impl.cc
@@ -28,6 +28,7 @@ using base::android::AttachCurrentThread;
using base::android::ConvertJavaStringToUTF8;
using base::android::ConvertUTF8ToJavaString;
using base::android::JavaIntArrayToIntVector;
+using base::android::JavaRef;
using base::android::ScopedJavaLocalRef;
#define RETURN_ON_ERROR(condition) \
@@ -48,7 +49,7 @@ enum {
};
// Parses |extra_data| and sets the appropriate fields of the given MediaFormat.
-bool ConfigureMediaFormatForAudio(jobject j_format,
+bool ConfigureMediaFormatForAudio(const JavaRef<jobject>& j_format,
AudioCodec codec,
const uint8_t* extra_data,
size_t extra_data_size,
@@ -183,9 +184,9 @@ bool ConfigureMediaFormatForAudio(jobject j_format,
// static
std::unique_ptr<MediaCodecBridge> MediaCodecBridgeImpl::CreateAudioDecoder(
const AudioDecoderConfig& config,
- jobject media_crypto) {
+ const JavaRef<jobject>& media_crypto) {
DVLOG(2) << __func__ << ": " << config.AsHumanReadableString()
- << " media_crypto:" << media_crypto;
+ << " media_crypto:" << media_crypto.obj();
if (!MediaCodecUtil::IsMediaCodecAvailable())
return nullptr;
@@ -217,7 +218,7 @@ std::unique_ptr<MediaCodecBridge> MediaCodecBridgeImpl::CreateAudioDecoder(
const int64_t seek_preroll_ns = config.seek_preroll().InMicroseconds() *
base::Time::kNanosecondsPerMicrosecond;
if (!ConfigureMediaFormatForAudio(
- j_format.obj(), config.codec(), config.extra_data().data(),
+ j_format, config.codec(), config.extra_data().data(),
config.extra_data().size(), codec_delay_ns, seek_preroll_ns)) {
return nullptr;
}
@@ -235,8 +236,8 @@ std::unique_ptr<MediaCodecBridge> MediaCodecBridgeImpl::CreateVideoDecoder(
VideoCodec codec,
CodecType codec_type,
const gfx::Size& size,
- jobject surface,
- jobject media_crypto,
+ const JavaRef<jobject>& surface,
+ const JavaRef<jobject>& media_crypto,
const std::vector<uint8_t>& csd0,
const std::vector<uint8_t>& csd1,
bool allow_adaptive_playback) {
@@ -458,9 +459,8 @@ MediaCodecStatus MediaCodecBridgeImpl::QueueSecureInputBuffer(
return static_cast<MediaCodecStatus>(
Java_MediaCodecBridge_queueSecureInputBuffer(
- env, j_bridge_.obj(), index, 0, j_iv.obj(), j_key_id.obj(),
- clear_array, cypher_array, num_subsamples,
- static_cast<int>(encryption_scheme.mode()),
+ env, j_bridge_, index, 0, j_iv, j_key_id, clear_array, cypher_array,
+ num_subsamples, static_cast<int>(encryption_scheme.mode()),
static_cast<int>(encryption_scheme.pattern().encrypt_blocks()),
static_cast<int>(encryption_scheme.pattern().skip_blocks()),
presentation_time.InMicroseconds()));
@@ -584,7 +584,7 @@ std::string MediaCodecBridgeImpl::GetName() {
return ConvertJavaStringToUTF8(env, j_name);
}
-bool MediaCodecBridgeImpl::SetSurface(jobject surface) {
+bool MediaCodecBridgeImpl::SetSurface(const JavaRef<jobject>& surface) {
DCHECK_GE(base::android::BuildInfo::GetInstance()->sdk_int(), 23);
JNIEnv* env = AttachCurrentThread();
return Java_MediaCodecBridge_setSurface(env, j_bridge_, surface);