mirror of
https://github.com/androidx/media.git
synced 2025-04-30 06:46:50 +08:00
Add Accept header to DESCRIBE request
The Accept header is required by some servers, and we only support SDP. Issue: google/ExoPlayer#10919 PiperOrigin-RevId: 645361576
This commit is contained in:
parent
52bd9a2815
commit
89fbd0d27a
1
api.txt
1
api.txt
@ -548,6 +548,7 @@ package androidx.media3.common {
|
|||||||
field public static final String APPLICATION_PGS = "application/pgs";
|
field public static final String APPLICATION_PGS = "application/pgs";
|
||||||
field @Deprecated public static final String APPLICATION_RAWCC = "application/x-rawcc";
|
field @Deprecated public static final String APPLICATION_RAWCC = "application/x-rawcc";
|
||||||
field public static final String APPLICATION_RTSP = "application/x-rtsp";
|
field public static final String APPLICATION_RTSP = "application/x-rtsp";
|
||||||
|
field public static final String APPLICATION_SDP = "application/sdp";
|
||||||
field public static final String APPLICATION_SS = "application/vnd.ms-sstr+xml";
|
field public static final String APPLICATION_SS = "application/vnd.ms-sstr+xml";
|
||||||
field public static final String APPLICATION_SUBRIP = "application/x-subrip";
|
field public static final String APPLICATION_SUBRIP = "application/x-subrip";
|
||||||
field public static final String APPLICATION_TTML = "application/ttml+xml";
|
field public static final String APPLICATION_TTML = "application/ttml+xml";
|
||||||
|
@ -139,6 +139,7 @@ public final class MimeTypes {
|
|||||||
public static final String APPLICATION_VOBSUB = BASE_TYPE_APPLICATION + "/vobsub";
|
public static final String APPLICATION_VOBSUB = BASE_TYPE_APPLICATION + "/vobsub";
|
||||||
public static final String APPLICATION_PGS = BASE_TYPE_APPLICATION + "/pgs";
|
public static final String APPLICATION_PGS = BASE_TYPE_APPLICATION + "/pgs";
|
||||||
@UnstableApi public static final String APPLICATION_SCTE35 = BASE_TYPE_APPLICATION + "/x-scte35";
|
@UnstableApi public static final String APPLICATION_SCTE35 = BASE_TYPE_APPLICATION + "/x-scte35";
|
||||||
|
public static final String APPLICATION_SDP = BASE_TYPE_APPLICATION + "/sdp";
|
||||||
|
|
||||||
@UnstableApi
|
@UnstableApi
|
||||||
public static final String APPLICATION_CAMERA_MOTION = BASE_TYPE_APPLICATION + "/x-camera-motion";
|
public static final String APPLICATION_CAMERA_MOTION = BASE_TYPE_APPLICATION + "/x-camera-motion";
|
||||||
|
@ -39,11 +39,11 @@ import static java.lang.annotation.ElementType.TYPE_USE;
|
|||||||
|
|
||||||
import android.net.Uri;
|
import android.net.Uri;
|
||||||
import android.os.Handler;
|
import android.os.Handler;
|
||||||
import android.os.Looper;
|
|
||||||
import android.util.SparseArray;
|
import android.util.SparseArray;
|
||||||
import androidx.annotation.IntDef;
|
import androidx.annotation.IntDef;
|
||||||
import androidx.annotation.Nullable;
|
import androidx.annotation.Nullable;
|
||||||
import androidx.media3.common.C;
|
import androidx.media3.common.C;
|
||||||
|
import androidx.media3.common.MimeTypes;
|
||||||
import androidx.media3.common.ParserException;
|
import androidx.media3.common.ParserException;
|
||||||
import androidx.media3.common.util.Log;
|
import androidx.media3.common.util.Log;
|
||||||
import androidx.media3.common.util.Util;
|
import androidx.media3.common.util.Util;
|
||||||
@ -384,7 +384,11 @@ import org.checkerframework.checker.nullness.qual.MonotonicNonNull;
|
|||||||
public void sendDescribeRequest(Uri uri, @Nullable String sessionId) {
|
public void sendDescribeRequest(Uri uri, @Nullable String sessionId) {
|
||||||
sendRequest(
|
sendRequest(
|
||||||
getRequestWithCommonHeaders(
|
getRequestWithCommonHeaders(
|
||||||
METHOD_DESCRIBE, sessionId, /* additionalHeaders= */ ImmutableMap.of(), uri));
|
METHOD_DESCRIBE,
|
||||||
|
sessionId,
|
||||||
|
/* additionalHeaders= */ ImmutableMap.of(
|
||||||
|
RtspHeaders.ACCEPT, MimeTypes.APPLICATION_SDP),
|
||||||
|
uri));
|
||||||
}
|
}
|
||||||
|
|
||||||
public void sendSetupRequest(Uri trackUri, String transport, @Nullable String sessionId) {
|
public void sendSetupRequest(Uri trackUri, String transport, @Nullable String sessionId) {
|
||||||
|
@ -15,10 +15,12 @@
|
|||||||
*/
|
*/
|
||||||
package androidx.media3.exoplayer.rtsp;
|
package androidx.media3.exoplayer.rtsp;
|
||||||
|
|
||||||
|
import static androidx.media3.common.util.Assertions.checkArgument;
|
||||||
import static com.google.common.truth.Truth.assertThat;
|
import static com.google.common.truth.Truth.assertThat;
|
||||||
|
|
||||||
import android.net.Uri;
|
import android.net.Uri;
|
||||||
import androidx.annotation.Nullable;
|
import androidx.annotation.Nullable;
|
||||||
|
import androidx.media3.common.MimeTypes;
|
||||||
import androidx.media3.common.util.Util;
|
import androidx.media3.common.util.Util;
|
||||||
import androidx.media3.exoplayer.rtsp.RtspClient.PlaybackEventListener;
|
import androidx.media3.exoplayer.rtsp.RtspClient.PlaybackEventListener;
|
||||||
import androidx.media3.exoplayer.rtsp.RtspClient.SessionInfoListener;
|
import androidx.media3.exoplayer.rtsp.RtspClient.SessionInfoListener;
|
||||||
@ -167,6 +169,8 @@ public final class RtspClientTest {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public RtspResponse getDescribeResponse(Uri requestedUri, RtspHeaders headers) {
|
public RtspResponse getDescribeResponse(Uri requestedUri, RtspHeaders headers) {
|
||||||
|
checkArgument(
|
||||||
|
headers.asMultiMap().containsEntry(RtspHeaders.ACCEPT, MimeTypes.APPLICATION_SDP));
|
||||||
return RtspTestUtils.newDescribeResponseWithSdpMessage(
|
return RtspTestUtils.newDescribeResponseWithSdpMessage(
|
||||||
SESSION_DESCRIPTION, rtpPacketStreamDumps, requestedUri);
|
SESSION_DESCRIPTION, rtpPacketStreamDumps, requestedUri);
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user