diff --git a/spec/invidious/helpers_spec.cr b/spec/invidious/helpers_spec.cr index 9fbb6d6fe..bf1ed5303 100644 --- a/spec/invidious/helpers_spec.cr +++ b/spec/invidious/helpers_spec.cr @@ -31,6 +31,13 @@ Spectator.describe "Helper" do end end + describe "#format_audio_quality_label" do + it "formats audio bitrates as readable kilobit labels" do + expect(Helpers.format_audio_quality_label(128000)).to eq("128k") + expect(Helpers.format_audio_quality_label(50000)).to eq("50k") + end + end + describe "#sign_token" do it "correctly signs a given hash" do token = { diff --git a/src/invidious/helpers/helpers.cr b/src/invidious/helpers/helpers.cr index a08135eaa..a502c7a03 100644 --- a/src/invidious/helpers/helpers.cr +++ b/src/invidious/helpers/helpers.cr @@ -40,6 +40,10 @@ module Helpers return description end + def format_audio_quality_label(bitrate : Int) : String + "#{(bitrate / 1000).round.to_i}k" + end + def cache_annotation(id, annotations) if !CONFIG.cache_annotations return diff --git a/src/invidious/views/components/player.ecr b/src/invidious/views/components/player.ecr index fbd472e0e..2181c8056 100644 --- a/src/invidious/views/components/player.ecr +++ b/src/invidious/views/components/player.ecr @@ -28,12 +28,13 @@ src_url = invidious_companion.public_url.to_s + src_url + "&check=#{invidious_companion_check_id}" if (invidious_companion) - bitrate = fmt["bitrate"] + bitrate = fmt["bitrate"].as_i + quality_label = Helpers.format_audio_quality_label(bitrate) mimetype = HTML.escape(fmt["mimeType"].as_s) selected = (i == best_m4a_stream_index) %> - + <% if !params.local && !CONFIG.disabled?("local") %> <% end %>