77 Commits

Author SHA1 Message Date
ibaker
e05e319d3b Add missing IntDef on MediaSource.Factory.getSupportedTypes overrides
Without this the annotation isn't shown in javadoc (same in Dackka)

No annotation:
https://exoplayer.dev/doc/reference/com/google/android/exoplayer2/source/DefaultMediaSourceFactory.html#getSupportedTypes()

Annotation present:
https://exoplayer.dev/doc/reference/com/google/android/exoplayer2/source/MediaSource.Factory.html#getSupportedTypes()

#minor-release

PiperOrigin-RevId: 487498450
(cherry picked from commit 4f04a284ed888768b14388daf8530c47df704994)
2022-11-10 12:24:56 +00:00
ibaker
937c463972 Fix Dackka/Metalava errors in the HLS and RTSP modules
This makes two fixes:
1. Remove `HlsSampleStreamWrapper.Callback` (package-private) from the
   list of interfaces implemented by `HlsMediaPeriod` (`public`) and
   move the implementation to a private inner class instead. This avoids
   Metalava complaining about a public class that inherits from a
   package-private type.
2. Reduce the visibility of
   `RtpPayloadFormat.isFormatSupported(MediaDescription)` from `public`
   to package-private. The `MediaDescription` type is already
   package-private, so this method was already unusable outside the
   package.

#minor-release

PiperOrigin-RevId: 487472781
(cherry picked from commit dbfc0cc7706d56a7d1ca86401cae6683ab9d9991)
2022-11-10 09:59:35 +00:00
Rohit Singh
a2096b6f4a Merge pull request #162 from ittiam-systems:rtp-mp4a-latm
PiperOrigin-RevId: 482490230
(cherry picked from commit d21c9488dfe807cf119fcaabbaf4127759835cb4)
2022-10-24 10:49:25 +00:00
claincly
ff59764978 Fix outdated RtpDataLoadable javadoc
PiperOrigin-RevId: 469443086
(cherry picked from commit b9bcf5224f2fbdfb26db8bea9681fa8e10acdab5)
2022-08-23 13:41:49 +00:00
claincly
11a26a88e5 Handle initial RTSP seek
PiperOrigin-RevId: 469143613
(cherry picked from commit a62cf312b7fb1d134cf33944e7afa9130af378d4)
2022-08-22 10:39:48 +00:00
claincly
e57a36bb20 Factor out RTP timestamp to sample time method
PiperOrigin-RevId: 465337074
(cherry picked from commit 80ec64696e22856ce324ef03535754f838a49778)
2022-08-04 16:49:03 +00:00
claincly
076218be9d Clean up NOP constructor lines in RTP readers
PiperOrigin-RevId: 465067191
(cherry picked from commit ed60c885f2c09bcc8484eeeb340a96559c7ad918)
2022-08-03 15:51:48 +00:00
tonihei
0c634543ce Merge pull request #115 from ittiam-systems:rtp_vp9fix
PiperOrigin-RevId: 463852948
(cherry picked from commit 92816023f16ac580a038e970b41aba7ae18f6055)
2022-08-08 08:23:56 +00:00
claincly
d20a1c7f29 Fix VP8 reader fragment packet size
Merging c37a767fdf

PiperOrigin-RevId: 463826373
(cherry picked from commit e848352a3e590de740bd88d816c22e05cca9cc07)
2022-07-28 13:50:54 +00:00
tonihei
c4ce6b7511 Merge pull request #119 from ittiam-systems:rtp_h263_test_and_fix
PiperOrigin-RevId: 463146426
(cherry picked from commit e54d2f56584d2f62d9bc26edf057408a9be84228)
2022-08-08 08:01:44 +00:00
ibaker
878279425b Annotate methods that always return this with @CanIgnoreReturnValue
It's always safe to ignore the result of these methods, because the
caller already has a reference to the returned value.

PiperOrigin-RevId: 462388947
(cherry picked from commit 2deb435625c7569cb0bd250848adaa846884dc50)
2022-07-21 15:24:07 +00:00
claincly
8f79af8155 Fix two typos in RtpVp8Reader and test
PiperOrigin-RevId: 460662425
(cherry picked from commit 40fd3ffa6c3ea058e58e59b533fcaadb377c94d2)
2022-07-13 09:27:06 +00:00
Rohit Singh
da52b9489a Merge pull request #110 from ittiam-systems:rtp_vp8_test
PiperOrigin-RevId: 460513413
(cherry picked from commit 9d9bbe3d33721b1301ae16df7f87f9aa51d06b89)
2022-07-13 17:40:18 +00:00
Marc Baechinger
9c02cdb1fb Merge pull request #63 from ittiam-systems:rtp-h263
PiperOrigin-RevId: 455347182
(cherry picked from commit dc0e5c447b926c0d1117182c4e4abf0abc0e9dcb)
2022-06-16 11:41:49 +00:00
Marc Baechinger
9a73ae90a0 Merge pull request #69 from ittiam-systems:rtp_amr_test
PiperOrigin-RevId: 453905355
(cherry picked from commit 58f7ac25a79d20af3faed321e9d3d3458b4394e5)
2022-06-09 18:36:35 +00:00
Marc Baechinger
fd1eb4b466 Merge pull request #53 from ittiam-systems:rtp_opus
PiperOrigin-RevId: 453490088
(cherry picked from commit a2a450432904c3d8ecc25e00c7148e73f1923d6e)
2022-06-09 18:36:35 +00:00
ibaker
26a1817ebf Rollback of e01bb47263
*** Original commit ***

Rollback of 07302a23bd

*** Original commit ***

Remove `@Nullable` from `MediaSource.Factory` setters

The null-behaviour of these methods creates a minimization footgun,
because **any** call to these setters will prevent R8 from removing
the default implementation (even if it's never used by the app) - this
is because R8 can't tell the default imple...

***

PiperOrigin-RevId: 450453325
2022-05-23 17:12:22 +01:00
ibaker
1d139174fd Rollback of 07302a23bd5894d57514c68b2db499ac46726e77
*** Original commit ***

Remove `@Nullable` from `MediaSource.Factory` setters

The null-behaviour of these methods creates a minimization footgun,
because **any** call to these setters will prevent R8 from removing
the default implementation (even if it's never used by the app) - this
is because R8 can't tell the default implementation is only used if the
parameter is `null`.

PiperOrigin-RevId: 450410833
2022-05-23 13:01:22 +01:00
ibaker
07302a23bd Remove @Nullable from MediaSource.Factory setters
The null-behaviour of these methods creates a minimization footgun,
because **any** call to these setters will prevent R8 from removing
the default implementation (even if it's never used by the app) - this
is because R8 can't tell the default implementation is only used if the
parameter is `null`.

PiperOrigin-RevId: 450386627
2022-05-24 11:07:07 +01:00
Ian Baker
05ce399558 Merge pull request #64 from ittiam-systems:rtp-vp9
PiperOrigin-RevId: 448978892
2022-05-24 10:46:15 +01:00
claincly
4c34160a96 Add support for static RTP payload types.
Some RTP foramts are statically assigned, so they don't have the rtpmap
attribute. Create the missing rtpmap attribute in this case.

PiperOrigin-RevId: 448239724
2022-05-24 10:38:44 +01:00
ibaker
9a67b30750 Migrate usages from C.TYPE_* to C.CONTENT_TYPE_*
PiperOrigin-RevId: 446156308
2022-05-09 10:46:04 +01:00
claincly
7af91fc9d5 Ignore mandatory SDP fields as ExoPlayer doesn't use them
Issue: google/ExoPlayer#10049
PiperOrigin-RevId: 444833508
2022-05-09 10:20:38 +01:00
Rakesh Kumar
432ae9d38c
Merge branch 'main' into rtp-vp9 2022-05-09 13:27:46 +05:30
Rakesh Kumar
a1cff9af0d Fix review comment in RTPVp9Reader
Change-Id: I7e2d36eb3d69fb09e0d0bbc283d41165c69d4076
2022-05-09 13:20:26 +05:30
claincly
59ced5325c Catch unchecked exception in RtspSessionTiming parsing.
Issue: google/ExoPlayer#10165
#minor-release
PiperOrigin-RevId: 443653894
2022-04-26 15:01:29 +01:00
claincly
16b0cee0b6 Fix Basic authentication header
Issue: google/ExoPlayer#9544

The header must include the word "Basic", but the word is missing.

#minor-release

PiperOrigin-RevId: 443386880
2022-04-26 14:56:38 +01:00
claincly
e780a32de4 Support colon (:) in RTSP timing.
Some RTSP servers use `npt`: notation rather than `npt=`

PiperOrigin-RevId: 439333319
2022-04-06 11:56:55 +01:00
Ian Baker
f48babb4ed Merge pull request #35 from ittiam-systems:rtp-mpeg4
PiperOrigin-RevId: 438000682
2022-04-06 11:19:08 +01:00
Ian Baker
e3a9ed6581 Merge pull request #56 from ittiam-systems:rtp_wav
PiperOrigin-RevId: 437783926
2022-04-06 11:14:43 +01:00
Ian Baker
9f29d22659 Merge pull request #47 from ittiam-systems:rtp-vp8
PiperOrigin-RevId: 437710223
2022-04-06 11:05:54 +01:00
Ian Baker
a11c22b67e Merge pull request #46 from ittiam-systems:rtp_amr
PiperOrigin-RevId: 437274290
2022-04-06 11:03:43 +01:00
Rakesh Kumar
3b9519c398 Add support for RTSP VP9
Change-Id: Id658564495af13c35fa78ecde9ab587557aabb47
2022-03-31 21:29:32 +05:30
Shraddha Basantwani
3f8a68004c Add PCM and G711 Reader Test
Add RtpPcmReader tests and warning for out of
order packets in RtpPcmReader.

Change-Id: I1554fa0a944dad00248a0a41fefad958da073a21
2022-03-28 11:27:32 +05:30
Shraddha Basantwani
500c879b8a Modify RtpPcmReader
Rename a few variable to be more relevant
Add detailed java docs
2022-03-28 11:22:23 +05:30
Shraddha Basantwani
bfc1fb9aa7 Merge branch 'main' of github.com:ittiam-systems/media into rtp_wav 2022-03-28 11:13:21 +05:30
olly
5d8ac644a6 Move TrackGroupArray back to ExoPlayer
PiperOrigin-RevId: 435325454
2022-03-17 13:08:56 +00:00
Shraddha Basantwani
ac528d3ab0 Add support for RTSP PCM/WAV and G711/WAV
Added PCM RTP packet reader and added support for PCM 8 bit,
16 bit, ALAW and MULAW playback through RTSP.

Change-Id: If0a187b55faa89850a159e17eae28358d6634799
2022-03-15 18:51:57 +05:30
olly
2ea902c1b2 Move TrackSelection back to ExoPlayer module
PiperOrigin-RevId: 433729648
2022-03-24 17:21:11 +00:00
Manisha Jajoo
1761b423ca Fix review comments in RtpAmrReader 2022-03-09 13:55:58 +05:30
Rakesh Kumar
8afa7a548a Fix review comments in RtpVP8Reader
Change-Id: Id47c746b199831d0bb51dc736c43fd20c2e79c08
2022-03-08 16:54:36 +05:30
Rakesh Kumar
f2e0953643 Updated way to create a formatBuilder
Change-Id: I2c8eb8d6ee28d8c044d71db042f3b186ea5762f3
2022-03-03 19:59:56 +05:30
Rakesh Kumar
f6a7cceaaf Add support for RTSP VP8
Added VP8 RTP packet reader and added support for VP8 playback
through RTSP.

Change-Id: Ie22ab79a234f61681cf95886a6ed8104a742f056
2022-02-24 21:02:41 +05:30
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