summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
author138138138 <78271024+138138138@users.noreply.github.com>2022-06-23 02:27:46 +0800
committerGitHub <noreply@github.com>2022-06-23 02:27:46 +0800
commit81abebd14493d4207a663d6f575d945a23b03170 (patch)
treee121a219a75c11fcce015771c036bb8c4500f4d6 /src
parent140b6c1227754356145acd7b76820e3921745ef8 (diff)
downloadinvidious-81abebd14493d4207a663d6f575d945a23b03170.tar.gz
invidious-81abebd14493d4207a663d6f575d945a23b03170.tar.bz2
invidious-81abebd14493d4207a663d6f575d945a23b03170.zip
Highest quality m4a on audio only mode as default
Audio mode will automatically select highest quality m4a as default.
Diffstat (limited to 'src')
-rw-r--r--src/invidious/views/components/player.ecr15
1 files changed, 13 insertions, 2 deletions
diff --git a/src/invidious/views/components/player.ecr b/src/invidious/views/components/player.ecr
index fffefc9a..a342097e 100644
--- a/src/invidious/views/components/player.ecr
+++ b/src/invidious/views/components/player.ecr
@@ -7,14 +7,25 @@
<source src="<%= URI.parse(hlsvp).request_target %><% if params.local %>?local=true<% end %>" type="application/x-mpegURL" label="livestream">
<% else %>
<% if params.listen %>
- <% audio_streams.each_with_index do |fmt, i|
+ <% # ignore the 64k m4a stream, only consider the 128k m4a stream
+ best_m4a_stream_index = 0
+ best_m4a_stream_bitrate = 0
+ audio_streams.each_with_index do |fmt, i|
+ bandwidth = fmt["bitrate"].as_i
+ if (fmt["mimeType"].as_s.starts_with?("audio/mp4") && bandwidth > best_m4a_stream_bitrate)
+ best_m4a_stream_bitrate = bandwidth
+ best_m4a_stream_index = i
+ end
+ end
+
+ audio_streams.each_with_index do |fmt, i|
src_url = "/latest_version?id=#{video.id}&itag=#{fmt["itag"]}"
src_url += "&local=true" if params.local
bitrate = fmt["bitrate"]
mimetype = HTML.escape(fmt["mimeType"].as_s)
- selected = i == 0 ? true : false
+ selected = i == best_m4a_stream_index ? true : false
%>
<source src="<%= src_url %>" type='<%= mimetype %>' label="<%= bitrate %>k" selected="<%= selected %>">
<% if !params.local && !CONFIG.disabled?("local") %>