| Index: webrtc/sdk/android/api/org/webrtc/RtpReceiver.java
|
| diff --git a/webrtc/sdk/android/api/org/webrtc/RtpReceiver.java b/webrtc/sdk/android/api/org/webrtc/RtpReceiver.java
|
| index d4244ed62c1dc13a259bd79b151c22d51540679f..d72d41b60f5f745fc2cb0d3663a1568ed975f1e4 100644
|
| --- a/webrtc/sdk/android/api/org/webrtc/RtpReceiver.java
|
| +++ b/webrtc/sdk/android/api/org/webrtc/RtpReceiver.java
|
| @@ -21,13 +21,20 @@ public class RtpReceiver {
|
| final long nativeRtpReceiver;
|
| private long nativeObserver;
|
|
|
| - private MediaStreamTrack cachedTrack;
|
| + private final MediaStreamTrack cachedTrack;
|
|
|
| public RtpReceiver(long nativeRtpReceiver) {
|
| this.nativeRtpReceiver = nativeRtpReceiver;
|
| - long track = nativeGetTrack(nativeRtpReceiver);
|
| // We can assume that an RtpReceiver always has an associated track.
|
| - cachedTrack = new MediaStreamTrack(track);
|
| + long track = nativeGetTrack(nativeRtpReceiver);
|
| + String kind = MediaStreamTrack.nativeKind(track);
|
| + if (kind.equals("audio")) {
|
| + cachedTrack = new AudioTrack(track);
|
| + } else if (kind.equals("video")) {
|
| + cachedTrack = new VideoTrack(track);
|
| + } else {
|
| + throw new IllegalStateException("unexpected kind " + kind);
|
| + }
|
| }
|
|
|
| public MediaStreamTrack track() {
|
|
|