From: Marcel van der Veldt Date: Mon, 15 Apr 2024 23:52:56 +0000 (+0200) Subject: prefer aac for sample clips X-Git-Url: https://git.kitaultman.com/?a=commitdiff_plain;h=63b724aca7a27a2b7b0aaeb476b2e3fc5f6a0c11;p=music-assistant-server.git prefer aac for sample clips --- diff --git a/music_assistant/server/controllers/webserver.py b/music_assistant/server/controllers/webserver.py index c2fef846..7921fb97 100644 --- a/music_assistant/server/controllers/webserver.py +++ b/music_assistant/server/controllers/webserver.py @@ -204,7 +204,7 @@ class WebserverController(CoreController): """Serve short preview sample.""" provider_instance_id_or_domain = request.query["provider"] item_id = urllib.parse.unquote(request.query["item_id"]) - resp = web.StreamResponse(status=200, reason="OK", headers={"Content-Type": "audio/mp3"}) + resp = web.StreamResponse(status=200, reason="OK", headers={"Content-Type": "audio/aac"}) await resp.prepare(request) async for chunk in get_preview_stream(self.mass, provider_instance_id_or_domain, item_id): await resp.write(chunk) diff --git a/music_assistant/server/helpers/audio.py b/music_assistant/server/helpers/audio.py index 2d4c0db8..10735711 100644 --- a/music_assistant/server/helpers/audio.py +++ b/music_assistant/server/helpers/audio.py @@ -833,7 +833,7 @@ async def get_preview_stream( if streamdetails.stream_type == StreamType.CUSTOM else streamdetails.path, input_format=streamdetails.audio_format, - output_format=AudioFormat(content_type=ContentType.MP3), + output_format=AudioFormat(content_type=ContentType.AAC), extra_input_args=["-to", "30"], ): yield chunk @@ -1013,6 +1013,8 @@ def get_ffmpeg_args( output_args = ["-f", "null", "-"] elif output_format.content_type == ContentType.UNKNOWN: raise RuntimeError("Invalid output format specified") + elif output_format.content_type == ContentType.AAC: + output_args = ["-f", "adts", output_path] else: if output_format.content_type.is_pcm(): output_args += ["-acodec", output_format.content_type.name.lower()]