Make base classes for native video encoder/decoder public

Implementers of Java wrappers for native encoders need to have the same
implementation of all the unsupported methods, as mentioned in the
documentation of VideoEncoder.createNativeVideoEncoder (and its decoder
equivalent).

This simplifies implementation of such encoders/decoders, and also make sure
they don’t override unsupported methods, as they are guaranteed not to be
called.

Bug: None
Change-Id: Iaa8499eda1b52cc14b04622bea2766cd09ba43e6
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/160186
Reviewed-by: Sami Kalliomäki <sakal@webrtc.org>
Commit-Queue: Xavier Lepaul <xalep@google.com>
Cr-Commit-Position: refs/heads/master@{#29866}
This commit is contained in:
Xavier Lepaul
2019-11-21 16:10:22 +01:00
committed by Commit Bot
parent 58a3210823
commit 6e9d0d38ef
3 changed files with 15 additions and 15 deletions

View File

@ -1,43 +0,0 @@
/*
* Copyright (c) 2017 The WebRTC project authors. All Rights Reserved.
*
* Use of this source code is governed by a BSD-style license
* that can be found in the LICENSE file in the root of the source
* tree. An additional intellectual property rights grant can be found
* in the file PATENTS. All contributing project authors may
* be found in the AUTHORS file in the root of the source tree.
*/
package org.webrtc;
/**
* Wraps a native webrtc::VideoDecoder.
*/
abstract class WrappedNativeVideoDecoder implements VideoDecoder {
@Override public abstract long createNativeVideoDecoder();
@Override
public VideoCodecStatus initDecode(Settings settings, Callback decodeCallback) {
throw new UnsupportedOperationException("Not implemented.");
}
@Override
public VideoCodecStatus release() {
throw new UnsupportedOperationException("Not implemented.");
}
@Override
public VideoCodecStatus decode(EncodedImage frame, DecodeInfo info) {
throw new UnsupportedOperationException("Not implemented.");
}
@Override
public boolean getPrefersLateDecoding() {
throw new UnsupportedOperationException("Not implemented.");
}
@Override
public String getImplementationName() {
throw new UnsupportedOperationException("Not implemented.");
}
}

View File

@ -1,49 +0,0 @@
/*
* Copyright (c) 2017 The WebRTC project authors. All Rights Reserved.
*
* Use of this source code is governed by a BSD-style license
* that can be found in the LICENSE file in the root of the source
* tree. An additional intellectual property rights grant can be found
* in the file PATENTS. All contributing project authors may
* be found in the AUTHORS file in the root of the source tree.
*/
package org.webrtc;
/**
* Wraps a native webrtc::VideoEncoder.
*/
abstract class WrappedNativeVideoEncoder implements VideoEncoder {
@Override public abstract long createNativeVideoEncoder();
@Override public abstract boolean isHardwareEncoder();
@Override
public VideoCodecStatus initEncode(Settings settings, Callback encodeCallback) {
throw new UnsupportedOperationException("Not implemented.");
}
@Override
public VideoCodecStatus release() {
throw new UnsupportedOperationException("Not implemented.");
}
@Override
public VideoCodecStatus encode(VideoFrame frame, EncodeInfo info) {
throw new UnsupportedOperationException("Not implemented.");
}
@Override
public VideoCodecStatus setRateAllocation(BitrateAllocation allocation, int framerate) {
throw new UnsupportedOperationException("Not implemented.");
}
@Override
public ScalingSettings getScalingSettings() {
throw new UnsupportedOperationException("Not implemented.");
}
@Override
public String getImplementationName() {
throw new UnsupportedOperationException("Not implemented.");
}
}