134 Commits

Author SHA1 Message Date
Manisha Jajoo
d1317b60fc Add support for RTSP AMR-NB/WB
Added AMR-NB/WB RTP packet reader and added support for AMR-NB/WB
playback through RTSP

Change-Id: I0a975fa1e1aa8450bda1c828599a523ba796bc48
2022-02-23 16:22:07 +05:30
Manisha Jajoo
ef9393a337 Fix review comments on RtpMPEG4Reader 2022-02-21 13:20:12 +05:30
manisha_jajoo
706d5ac252
Merge branch 'main' into rtp-mpeg4 2022-02-21 12:33:09 +05:30
Ian Baker
f3eb6e1376 Merge pull request #36 from ittiam-systems:rtp-h265
PiperOrigin-RevId: 429566102
2022-02-18 16:41:12 +00:00
Rakesh Kumar
ca1c1c26d5 Fix some minor review comments in RtpH265Reader 2022-02-15 22:32:06 +05:30
Rakesh Kumar
aa6874655d Add TODO for AggregationPacket mode 2022-02-11 13:46:20 +05:30
Manisha Jajoo
e7567d2072 Fix review comments in RtpMPEG4Reader 2022-02-09 21:36:28 +05:30
Manisha Jajoo
dfef2d1387 Some minor cleanup in RTPMpeg4Reader 2022-02-09 17:23:36 +05:30
Rakesh Kumar
3ef90d9dd4 Fixed some of nitpick for RtpH265Reader 2022-02-09 15:06:16 +05:30
Rakesh Kumar
ace363e183 Fix review comments in RtpH265Reader 2022-02-08 16:41:45 +05:30
tonihei
287182952d Fix the position of IntDefs to match TYPE_USE
#minor-release

PiperOrigin-RevId: 427131569
2022-02-08 11:07:50 +00:00
olly
1f7174e731 Revert of 87420e5f9bd1671cd3068185f7358f5faba53e71
PiperOrigin-RevId: 426996878
2022-02-08 11:07:43 +00:00
ibaker
87420e5f9b Fix the position of IntDefs to match TYPE_USE
#minor-release

PiperOrigin-RevId: 426855255
2022-02-07 10:49:31 +00:00
ibaker
8149ac8922 Mark all non-public IntDefs as only TYPE_USE
This only changes IntDefs that cannot be used by apps because they're
either private or package-private.

A follow-up change will fix the positions of existing usages to match
this new config.

#minor-release

PiperOrigin-RevId: 426372273
2022-02-04 14:51:52 +00:00
ibaker
daa45a16bd Fix parameter comments
PiperOrigin-RevId: 425874534
2022-02-04 09:32:39 +00:00
olly
cb81b04dab Use ImmutableMap.Builder.buildOrThrow() instead of deprecated build().
More info: ​go/immutable-map-buildorthrow-lsc

NOTE: if the source of truth for this code is *NOT* `third_party`, please let me know and I'll revert this CL (and please consider upstreaming this change yourself).

#inlineme

Tested:
    TAP for global presubmit queue passed after automated deflaking of failures: http://mondo/deflaker/run/530857d2-45cb-4069-a234-48c5efe945f1 http://mondo/deflaker/run/0dce4296-e6bb-42d2-8b64-b393f45b6ad3
    http://test/OCL:425453729:BASE:425451020:1643699365244:811c1a24
PiperOrigin-RevId: 425616165
2022-02-01 18:21:37 +00:00
Manisha Jajoo
743437e34f Clean up RtpMpeg4Reader 2022-01-31 17:31:01 +05:30
Manisha Jajoo
d2f807ebae Add support for RTSP MPEG4
Added MPEG4 RTP packet reader and added support for MPEG4
playback through RTSP

Change-Id: I57c9a61b18471dbd2c368177ebfb89ee662f995b
2022-01-28 14:02:28 +05:30
Rakesh Kumar
9cb243647f Clean up RtpH265Reader 2022-01-28 12:25:14 +05:30
claincly
1fe8e07068 Ignore invalid RTP-Info header value.
Issue: google/ExoPlayer#9619

(and a few other GH issues related to invalid RTP-Info header)

PiperOrigin-RevId: 423283017
2022-01-25 19:08:54 +00:00
claincly
914cf423bd Handle when RTSP track timing is not available.
Issue: google/ExoPlayer#9775

We got a few issues for this on GH already. Some RTSP servers do not provide
track timing in PLAY responses, or the timings are invalid.

Missing timing means the RTSP stream is not seekable. Added method to
1. Update the timeline that seek is not possible
2. Report read discontinuity so that playback can start from the beginning.

PiperOrigin-RevId: 423281439
2022-01-25 19:07:44 +00:00
Rakesh Kumar
4b99db938a Add support for RTSP H265
Added H265 RTP packet reader and added support for H265
playback through RTSP

Change-Id: Ic0e135768bb92cd3343212c2edd84bae6947320e
2022-01-18 19:36:22 +05:30
claincly
be99b97a46 Use RTSP server for RTSP auth realm.
PiperOrigin-RevId: 420053894
2022-01-11 13:32:41 +00:00
claincly
152a1650f6 Prefers DIGEST when RTSP servers sends both BASIC and DIGEST auth info.
Issue: google/ExoPlayer#9800

Added test for RTSP authentication.

PiperOrigin-RevId: 420048821
2022-01-11 13:31:19 +00:00
claincly
1078fffd63 Allow continuous seeking.
PiperOrigin-RevId: 419629912
2022-01-05 12:15:35 +00:00
ibaker
34a1f884dc Add MediaSource.Factory and deprecate MediaSourceFactory
This more closely matches the pattern we have for all implementations
except DefaultMediaSourceFactory (e.g. ProgressiveMediaSource.Factory)
and other factory interfaces like (Http)DataSource.Factory.

PiperOrigin-RevId: 417826803
2022-01-05 10:51:41 +00:00
ibaker
cee7e8e2db Delete deprecated methods from MediaSourceFactory
Some have been deprecated since 2.13.0
([commit](5b9fa7d7d9)):
* `setDrmSessionManager(DrmSessionManager)`
* `setDrmHttpDataSourceFactory(HttpDataSource.Factory)`
* `setDrmUserAgent(String)`

And the rest have been deprecated since 2.12.0
([commit](d1bbd3507a)):
* `setStreamKeys(List<String>)`
* `createMediaSource(Uri)`

PiperOrigin-RevId: 417622794
2022-01-05 10:44:23 +00:00
Ian Baker
e1eb30c8ba Merge pull request #9606 from ened:rtsp-socket-factory
PiperOrigin-RevId: 413751821
2021-12-07 16:43:17 +00:00
claincly
fbbedf32f9 Remove the check for dynamic payload type.
Issue: google/ExoPlayer#9744

We do not rely on the payload type to determine the sample MIME type, we depend
on the SDP message, so it's worthless checking the payload type.

After removing the line, a server can use payload type 35 (an unassigned
payload type) for H264; while normally H264 requires payload type >= 96).

PiperOrigin-RevId: 413658076
2021-12-07 16:41:22 +00:00
tonihei
f1a5825d73 Add optional id to TrackGroup.
This allows to give TrackGroups an identifier. The underlying goal is
to provide a way to make otherwise identical TrackGroups
distinguishable.

Also set this id in all internal sources that may produce identical
TrackGroups in certain edge cases.

Issue: google/ExoPlayer#9718
PiperOrigin-RevId: 413430719
2021-12-02 11:56:42 +00:00
claincly
f527fb729c Fix sequence number calculation logic.
Issue: google/ExoPlayer#9697

Before, the `MAX_SEQUENCE_NUMBER` is 65535, such that the logic to get the next
sequence number:

`previousSeqNumber + 1 % MAX_SEQUENCE_NUMBER`

yields 0 when `previousSeqNumber` is 65534. However, the next sequence number
should be 65535.

PiperOrigin-RevId: 410530098
2021-11-19 15:00:12 +00:00
tonihei
3a5bf735fa Add missing RetentionPolicy for IntDef
PiperOrigin-RevId: 407162673
2021-11-09 10:09:13 +00:00
ibaker
a60843ead5 Migrate callers of deprecated C.java methods to Util.java
#minor-release

PiperOrigin-RevId: 406166670
2021-11-08 15:17:26 +00:00
Andrew Lewis
933e207b3e Update to androidx.media3
PiperOrigin-RevId: 405656499
2021-10-27 09:12:46 +01:00