diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/invidious.cr | 1 | ||||
| -rw-r--r-- | src/invidious/views/components/player.ecr | 3 | ||||
| -rw-r--r-- | src/invidious/views/components/player_sources.ecr | 4 | ||||
| -rw-r--r-- | src/invidious/views/preferences.ecr | 2 |
4 files changed, 8 insertions, 2 deletions
diff --git a/src/invidious.cr b/src/invidious.cr index bc85bb74..f49a40a8 100644 --- a/src/invidious.cr +++ b/src/invidious.cr @@ -2822,7 +2822,6 @@ get "/api/v1/playlists/:plid" do |env| page = env.params.query["page"]?.try &.to_i? page ||= 1 - begin playlist = fetch_playlist(plid) videos = fetch_playlist_videos(plid, page, playlist.video_count) diff --git a/src/invidious/views/components/player.ecr b/src/invidious/views/components/player.ecr index 34df55c3..8b9e92da 100644 --- a/src/invidious/views/components/player.ecr +++ b/src/invidious/views/components/player.ecr @@ -11,6 +11,9 @@ <source src="<%= fmt["url"] %>" type='<%= fmt["type"] %>' label="<%= fmt["bitrate"] %>k" selected="<%= i == 0 ? true : false %>"> <% end %> <% else %> + <% if params[:quality] == "dash" %> + <source src="/api/manifest/dash/id/<%= video.id %>?local=true" type='application/dash+xml' label="dash"> + <% end %> <% fmt_stream.each_with_index do |fmt, i| %> <% if params[:quality] %> <source src="<%= fmt["url"] %>" type='<%= fmt["type"] %>' label="<%= fmt["label"] %>" selected="<%= params[:quality] == fmt["label"].split(" - ")[0] %>"> diff --git a/src/invidious/views/components/player_sources.ecr b/src/invidious/views/components/player_sources.ecr index f50d16cf..3afce6cb 100644 --- a/src/invidious/views/components/player_sources.ecr +++ b/src/invidious/views/components/player_sources.ecr @@ -8,4 +8,8 @@ <script src="/js/videojs-markers.min.js"></script> <script src="/js/videojs-share.min.js"></script> <script src="/js/videojs-http-streaming.min.js"></script> +<% if env.get?("user") && env.get("user").as(User).preferences.quality == "dash" %> +<script src="/js/dash.mediaplayer.min.js"></script> +<script src="/js/videojs-dash.min.js"></script> <script src="/js/videojs-contrib-quality-levels.min.js"></script> +<% end %>
\ No newline at end of file diff --git a/src/invidious/views/preferences.ecr b/src/invidious/views/preferences.ecr index cdd2eb42..aa70e4dc 100644 --- a/src/invidious/views/preferences.ecr +++ b/src/invidious/views/preferences.ecr @@ -35,7 +35,7 @@ function update_value(element) { <div class="pure-control-group"> <label for="quality">Preferred video quality: </label> <select name="quality" id="quality"> - <% {"hd720", "medium", "small"}.each do |option| %> + <% {"dash", "hd720", "medium", "small"}.each do |option| %> <option <% if user.preferences.quality == option %> selected <% end %>><%= option %></option> <% end %> </select> |
