Skip to content

Commit

Permalink
Enable live DASH stream for IMA DAI
Browse files Browse the repository at this point in the history
This change enables the IMA extension to play live DASH streams
with DAI support. Samples streams can be found and played in the
main demo app.

Issue: google/ExoPlayer#10912
#minor-release
PiperOrigin-RevId: 532407708
(cherry picked from commit dab1353)
  • Loading branch information
marcbaechinger authored and tof-tof committed May 17, 2023
1 parent 3633ad1 commit 1510710
Show file tree
Hide file tree
Showing 3 changed files with 16 additions and 18 deletions.
4 changes: 4 additions & 0 deletions RELEASENOTES.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,10 @@
* Add `Player.replaceMediaItem(s)` as a shortcut to adding and removing
items at the same position
([#8046](https://github.com/google/ExoPlayer/issues/8046)).
* IMA extension:
* Enable multi-period live DASH streams for DAI. Please note that the
current implementation does not yet support seeking in live streams
([#10912](https://github.com/google/ExoPlayer/issues/10912)).
* Session:
* Add `androidx.media3.session.MediaButtonReceiver` to enable apps to
implement playback resumption with media button events sent by, for
Expand Down
26 changes: 12 additions & 14 deletions demos/main/src/main/assets/media.exolist.json
Original file line number Diff line number Diff line change
Expand Up @@ -406,6 +406,18 @@
"name": "DASH VOD: Tears of Steel (11 periods, pre/mid/post), 2/5/2 ads [5/10s]",
"uri": "ssai://dai.google.com/?contentSourceId=2559737&videoId=tos-dash&format=0&adsId=1"
},
{
"name": "DASH live: Tears of Steel (mid), 3 ads each [10 s]",
"uri": "ssai://dai.google.com/?assetKey=jNVjPZwzSkyeGiaNQTPqiQ&format=0&adsId=1"
},
{
"name": "DASH live: New Tears of Steel (mid), 3 ads each [10 s]",
"uri": "ssai://dai.google.com/?assetKey=PSzZMzAkSXCmlJOWDmRj8Q&format=0&adsId=12"
},
{
"name": "DASH live: Unencrypted stream with 30s ad breaks every minute",
"uri": "ssai://dai.google.com/?assetKey=0ndl1dJcRmKDUPxTRjvdog&format=0&adsId=21"
},
{
"name": "Playlist: No ads - HLS VOD: Demo (skippable pre/post) - No ads",
"playlist": [
Expand Down Expand Up @@ -434,20 +446,6 @@
}
]
},
{
"name": "Playlist: No ads - HLS Live: Big Buck Bunny (mid) - No ads",
"playlist": [
{
"uri": "https://html5demos.com/assets/dizzy.mp4"
},
{
"uri": "ssai://dai.google.com/?assetKey=sN_IYUG8STe1ZzhIIE_ksA&format=2&adsId=3"
},
{
"uri": "https://html5demos.com/assets/dizzy.mp4"
}
]
},
{
"name": "Playlist: No ads - DASH VOD: Tears of Steel (11 periods, pre/mid/post) - No ads",
"playlist": [
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -381,10 +381,6 @@ public Uri build() {
if (streamActivityMonitorId != null) {
streamRequest.setStreamActivityMonitorId(streamActivityMonitorId);
}
checkState(
streamRequest.getFormat() != StreamFormat.DASH
|| TextUtils.isEmpty(streamRequest.getAssetKey()),
"DASH live streams are not supported yet.");
return streamRequest;
}
}

0 comments on commit 1510710

Please sign in to comment.