Fix some lint warnings on Android.
Bug: webrtc:6597 Change-Id: I215b319b3129949d12b74b11e6ec35eb123a1e5a Reviewed-on: https://webrtc-review.googlesource.com/6781 Reviewed-by: Henrik Andreassson <henrika@webrtc.org> Reviewed-by: Magnus Jedvert <magjed@webrtc.org> Commit-Queue: Sami Kalliomäki <sakal@webrtc.org> Cr-Commit-Position: refs/heads/master@{#20182}
This commit is contained in:

committed by
Commit Bot

parent
fb26f85b79
commit
602dc431b0
@ -139,9 +139,8 @@ public class CallActivity extends Activity implements AppRTCClient.SignalingEven
|
|||||||
// Peer connection statistics callback period in ms.
|
// Peer connection statistics callback period in ms.
|
||||||
private static final int STAT_CALLBACK_PERIOD = 1000;
|
private static final int STAT_CALLBACK_PERIOD = 1000;
|
||||||
|
|
||||||
private class ProxyRenderer<T extends VideoRenderer.Callbacks & VideoSink>
|
private static class ProxyRenderer implements VideoRenderer.Callbacks {
|
||||||
implements VideoRenderer.Callbacks, VideoSink {
|
private VideoRenderer.Callbacks target;
|
||||||
private T target;
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
synchronized public void renderFrame(VideoRenderer.I420Frame frame) {
|
synchronized public void renderFrame(VideoRenderer.I420Frame frame) {
|
||||||
@ -154,6 +153,14 @@ public class CallActivity extends Activity implements AppRTCClient.SignalingEven
|
|||||||
target.renderFrame(frame);
|
target.renderFrame(frame);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
synchronized public void setTarget(VideoRenderer.Callbacks target) {
|
||||||
|
this.target = target;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private static class ProxyVideoSink implements VideoSink {
|
||||||
|
private VideoSink target;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
synchronized public void onFrame(VideoFrame frame) {
|
synchronized public void onFrame(VideoFrame frame) {
|
||||||
if (target == null) {
|
if (target == null) {
|
||||||
@ -164,13 +171,13 @@ public class CallActivity extends Activity implements AppRTCClient.SignalingEven
|
|||||||
target.onFrame(frame);
|
target.onFrame(frame);
|
||||||
}
|
}
|
||||||
|
|
||||||
synchronized public void setTarget(T target) {
|
synchronized public void setTarget(VideoSink target) {
|
||||||
this.target = target;
|
this.target = target;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private final ProxyRenderer remoteProxyRenderer = new ProxyRenderer();
|
private final ProxyRenderer remoteProxyRenderer = new ProxyRenderer();
|
||||||
private final ProxyRenderer localProxyRenderer = new ProxyRenderer();
|
private final ProxyVideoSink localProxyVideoSink = new ProxyVideoSink();
|
||||||
private PeerConnectionClient peerConnectionClient = null;
|
private PeerConnectionClient peerConnectionClient = null;
|
||||||
private AppRTCClient appRtcClient;
|
private AppRTCClient appRtcClient;
|
||||||
private SignalingParameters signalingParameters;
|
private SignalingParameters signalingParameters;
|
||||||
@ -211,8 +218,7 @@ public class CallActivity extends Activity implements AppRTCClient.SignalingEven
|
|||||||
// adding content.
|
// adding content.
|
||||||
requestWindowFeature(Window.FEATURE_NO_TITLE);
|
requestWindowFeature(Window.FEATURE_NO_TITLE);
|
||||||
getWindow().addFlags(LayoutParams.FLAG_FULLSCREEN | LayoutParams.FLAG_KEEP_SCREEN_ON
|
getWindow().addFlags(LayoutParams.FLAG_FULLSCREEN | LayoutParams.FLAG_KEEP_SCREEN_ON
|
||||||
| LayoutParams.FLAG_DISMISS_KEYGUARD | LayoutParams.FLAG_SHOW_WHEN_LOCKED
|
| LayoutParams.FLAG_SHOW_WHEN_LOCKED | LayoutParams.FLAG_TURN_SCREEN_ON);
|
||||||
| LayoutParams.FLAG_TURN_SCREEN_ON);
|
|
||||||
getWindow().getDecorView().setSystemUiVisibility(getSystemUiVisibility());
|
getWindow().getDecorView().setSystemUiVisibility(getSystemUiVisibility());
|
||||||
setContentView(R.layout.activity_call);
|
setContentView(R.layout.activity_call);
|
||||||
|
|
||||||
@ -630,7 +636,7 @@ public class CallActivity extends Activity implements AppRTCClient.SignalingEven
|
|||||||
private void disconnect() {
|
private void disconnect() {
|
||||||
activityRunning = false;
|
activityRunning = false;
|
||||||
remoteProxyRenderer.setTarget(null);
|
remoteProxyRenderer.setTarget(null);
|
||||||
localProxyRenderer.setTarget(null);
|
localProxyVideoSink.setTarget(null);
|
||||||
if (appRtcClient != null) {
|
if (appRtcClient != null) {
|
||||||
appRtcClient.disconnectFromRoom();
|
appRtcClient.disconnectFromRoom();
|
||||||
appRtcClient = null;
|
appRtcClient = null;
|
||||||
@ -741,7 +747,7 @@ public class CallActivity extends Activity implements AppRTCClient.SignalingEven
|
|||||||
private void setSwappedFeeds(boolean isSwappedFeeds) {
|
private void setSwappedFeeds(boolean isSwappedFeeds) {
|
||||||
Logging.d(TAG, "setSwappedFeeds: " + isSwappedFeeds);
|
Logging.d(TAG, "setSwappedFeeds: " + isSwappedFeeds);
|
||||||
this.isSwappedFeeds = isSwappedFeeds;
|
this.isSwappedFeeds = isSwappedFeeds;
|
||||||
localProxyRenderer.setTarget(isSwappedFeeds ? fullscreenRenderer : pipRenderer);
|
localProxyVideoSink.setTarget(isSwappedFeeds ? fullscreenRenderer : pipRenderer);
|
||||||
remoteProxyRenderer.setTarget(isSwappedFeeds ? pipRenderer : fullscreenRenderer);
|
remoteProxyRenderer.setTarget(isSwappedFeeds ? pipRenderer : fullscreenRenderer);
|
||||||
fullscreenRenderer.setMirror(isSwappedFeeds);
|
fullscreenRenderer.setMirror(isSwappedFeeds);
|
||||||
pipRenderer.setMirror(!isSwappedFeeds);
|
pipRenderer.setMirror(!isSwappedFeeds);
|
||||||
@ -760,7 +766,7 @@ public class CallActivity extends Activity implements AppRTCClient.SignalingEven
|
|||||||
videoCapturer = createVideoCapturer();
|
videoCapturer = createVideoCapturer();
|
||||||
}
|
}
|
||||||
peerConnectionClient.createPeerConnection(
|
peerConnectionClient.createPeerConnection(
|
||||||
localProxyRenderer, remoteRenderers, videoCapturer, signalingParameters);
|
localProxyVideoSink, remoteRenderers, videoCapturer, signalingParameters);
|
||||||
|
|
||||||
if (signalingParameters.initiator) {
|
if (signalingParameters.initiator) {
|
||||||
logAndToast("Creating OFFER...");
|
logAndToast("Creating OFFER...");
|
||||||
|
@ -10,25 +10,22 @@
|
|||||||
|
|
||||||
package org.appspot.apprtc;
|
package org.appspot.apprtc;
|
||||||
|
|
||||||
import org.appspot.apprtc.AppRTCClient.SignalingParameters;
|
|
||||||
import org.appspot.apprtc.util.AsyncHttpURLConnection;
|
|
||||||
import org.appspot.apprtc.util.AsyncHttpURLConnection.AsyncHttpEvents;
|
|
||||||
|
|
||||||
import android.util.Log;
|
import android.util.Log;
|
||||||
|
|
||||||
import org.json.JSONArray;
|
|
||||||
import org.json.JSONException;
|
|
||||||
import org.json.JSONObject;
|
|
||||||
import org.webrtc.IceCandidate;
|
|
||||||
import org.webrtc.PeerConnection;
|
|
||||||
import org.webrtc.SessionDescription;
|
|
||||||
|
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
import java.io.InputStream;
|
import java.io.InputStream;
|
||||||
import java.net.HttpURLConnection;
|
import java.net.HttpURLConnection;
|
||||||
import java.net.URL;
|
import java.net.URL;
|
||||||
import java.util.LinkedList;
|
import java.util.LinkedList;
|
||||||
import java.util.Scanner;
|
import java.util.Scanner;
|
||||||
|
import org.appspot.apprtc.AppRTCClient.SignalingParameters;
|
||||||
|
import org.appspot.apprtc.util.AsyncHttpURLConnection;
|
||||||
|
import org.appspot.apprtc.util.AsyncHttpURLConnection.AsyncHttpEvents;
|
||||||
|
import org.json.JSONArray;
|
||||||
|
import org.json.JSONException;
|
||||||
|
import org.json.JSONObject;
|
||||||
|
import org.webrtc.IceCandidate;
|
||||||
|
import org.webrtc.PeerConnection;
|
||||||
|
import org.webrtc.SessionDescription;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* AsyncTask that converts an AppRTC room URL into the set of signaling
|
* AsyncTask that converts an AppRTC room URL into the set of signaling
|
||||||
@ -133,9 +130,11 @@ public class RoomParametersFetcher {
|
|||||||
boolean isTurnPresent = false;
|
boolean isTurnPresent = false;
|
||||||
for (PeerConnection.IceServer server : iceServers) {
|
for (PeerConnection.IceServer server : iceServers) {
|
||||||
Log.d(TAG, "IceServer: " + server);
|
Log.d(TAG, "IceServer: " + server);
|
||||||
if (server.uri.startsWith("turn:")) {
|
for (String uri : server.urls) {
|
||||||
isTurnPresent = true;
|
if (uri.startsWith("turn:")) {
|
||||||
break;
|
isTurnPresent = true;
|
||||||
|
break;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
// Request TURN servers.
|
// Request TURN servers.
|
||||||
|
@ -267,9 +267,8 @@ public class WebRtcAudioTrack {
|
|||||||
sampleRate, channelConfig, minBufferSizeInBytes);
|
sampleRate, channelConfig, minBufferSizeInBytes);
|
||||||
} else {
|
} else {
|
||||||
// Use default constructor for API levels below 21.
|
// Use default constructor for API levels below 21.
|
||||||
// Note that, this constructor will be deprecated in API level O (25).
|
audioTrack =
|
||||||
audioTrack = new AudioTrack(AudioManager.STREAM_VOICE_CALL, sampleRate, channelConfig,
|
createAudioTrackOnLowerThanLollipop(sampleRate, channelConfig, minBufferSizeInBytes);
|
||||||
AudioFormat.ENCODING_PCM_16BIT, minBufferSizeInBytes, AudioTrack.MODE_STREAM);
|
|
||||||
}
|
}
|
||||||
} catch (IllegalArgumentException e) {
|
} catch (IllegalArgumentException e) {
|
||||||
reportWebRtcAudioTrackInitError(e.getMessage());
|
reportWebRtcAudioTrackInitError(e.getMessage());
|
||||||
@ -369,8 +368,8 @@ public class WebRtcAudioTrack {
|
|||||||
// It allows certain platforms or routing policies to use this information for more
|
// It allows certain platforms or routing policies to use this information for more
|
||||||
// refined volume or routing decisions.
|
// refined volume or routing decisions.
|
||||||
@TargetApi(21)
|
@TargetApi(21)
|
||||||
private AudioTrack createAudioTrackOnLollipopOrHigher(
|
private static AudioTrack createAudioTrackOnLollipopOrHigher(
|
||||||
int sampleRateInHz, int channelConfig, int bufferSizeInBytes) {
|
int sampleRateInHz, int channelConfig, int bufferSizeInBytes) {
|
||||||
Logging.d(TAG, "createAudioTrackOnLollipopOrHigher");
|
Logging.d(TAG, "createAudioTrackOnLollipopOrHigher");
|
||||||
// TODO(henrika): use setPerformanceMode(int) with PERFORMANCE_MODE_LOW_LATENCY to control
|
// TODO(henrika): use setPerformanceMode(int) with PERFORMANCE_MODE_LOW_LATENCY to control
|
||||||
// performance when Android O is supported. Add some logging in the mean time.
|
// performance when Android O is supported. Add some logging in the mean time.
|
||||||
@ -399,6 +398,13 @@ public class WebRtcAudioTrack {
|
|||||||
AudioManager.AUDIO_SESSION_ID_GENERATE);
|
AudioManager.AUDIO_SESSION_ID_GENERATE);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@SuppressWarnings("deprecation") // Deprecated in API level 25.
|
||||||
|
private static AudioTrack createAudioTrackOnLowerThanLollipop(
|
||||||
|
int sampleRateInHz, int channelConfig, int bufferSizeInBytes) {
|
||||||
|
return new AudioTrack(AudioManager.STREAM_VOICE_CALL, sampleRateInHz, channelConfig,
|
||||||
|
AudioFormat.ENCODING_PCM_16BIT, bufferSizeInBytes, AudioTrack.MODE_STREAM);
|
||||||
|
}
|
||||||
|
|
||||||
@TargetApi(24)
|
@TargetApi(24)
|
||||||
private void logMainParametersExtended() {
|
private void logMainParametersExtended() {
|
||||||
if (WebRtcAudioUtils.runningOnMarshmallowOrHigher()) {
|
if (WebRtcAudioUtils.runningOnMarshmallowOrHigher()) {
|
||||||
|
@ -17,6 +17,8 @@ import android.media.MediaCodecInfo.CodecCapabilities;
|
|||||||
|
|
||||||
/** Container class for static constants and helpers used with MediaCodec. */
|
/** Container class for static constants and helpers used with MediaCodec. */
|
||||||
@TargetApi(18)
|
@TargetApi(18)
|
||||||
|
// We are forced to use the old API because we want to support API level < 21.
|
||||||
|
@SuppressWarnings("deprecation")
|
||||||
class MediaCodecUtils {
|
class MediaCodecUtils {
|
||||||
private static final String TAG = "MediaCodecUtils";
|
private static final String TAG = "MediaCodecUtils";
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user