/
/
/
1"""Constants for Chromecast Player provider."""
2
3from __future__ import annotations
4
5from music_assistant_models.config_entries import ConfigEntry
6from music_assistant_models.enums import ConfigEntryType
7
8from music_assistant.constants import (
9 CONF_ENTRY_HTTP_PROFILE,
10 CONF_ENTRY_OUTPUT_CODEC,
11 create_sample_rates_config_entry,
12)
13
14MASS_APP_ID = "C35B0678"
15APP_MEDIA_RECEIVER = "CC1AD845"
16SENDSPIN_CAST_APP_ID = "938CBF87"
17SENDSPIN_CAST_NAMESPACE = "urn:x-cast:sendspin"
18CONF_USE_MASS_APP = "use_mass_app"
19CONF_USE_SENDSPIN_MODE = "use_sendspin_mode"
20CONF_SENDSPIN_SYNC_DELAY = "sendspin_sync_delay"
21CONF_SENDSPIN_CODEC = "sendspin_codec"
22DEFAULT_SENDSPIN_SYNC_DELAY = -300
23DEFAULT_SENDSPIN_CODEC = "flac"
24
25CAST_PLAYER_CONFIG_ENTRIES = (
26 CONF_ENTRY_OUTPUT_CODEC,
27 CONF_ENTRY_HTTP_PROFILE,
28 ConfigEntry(
29 key=CONF_USE_MASS_APP,
30 type=ConfigEntryType.BOOLEAN,
31 label="Use Music Assistant Cast App",
32 default_value=True,
33 description="By default, Music Assistant will use a special Music Assistant "
34 "Cast Receiver app to play media on cast devices. It is tweaked to provide "
35 "better metadata and future expansion. \\n\\n"
36 "If you want to use the official Google Cast Receiver app instead, disable this option, "
37 "for example if your device has issues with the Music Assistant app.",
38 advanced=True,
39 ),
40)
41
42# originally/officially cast supports 96k sample rate (even for groups)
43# but it seems a (recent?) update broke this ?!
44# For now only set safe default values and let the user try out higher values
45CONF_ENTRY_SAMPLE_RATES_CAST = create_sample_rates_config_entry(
46 max_sample_rate=192000,
47 max_bit_depth=24,
48 safe_max_sample_rate=48000,
49 safe_max_bit_depth=16,
50)
51CONF_ENTRY_SAMPLE_RATES_CAST_GROUP = create_sample_rates_config_entry(
52 max_sample_rate=96000,
53 max_bit_depth=24,
54 safe_max_sample_rate=48000,
55 safe_max_bit_depth=16,
56)
57