r128.py 1.1 KB

12345678910111213141516171819202122232425262728
  1. from typing import TYPE_CHECKING, Optional
  2. from yandex_music import YandexMusicModel
  3. from yandex_music.utils import model
  4. if TYPE_CHECKING:
  5. from yandex_music import ClientType
  6. @model
  7. class R128(YandexMusicModel):
  8. """Класс, описывающий параметры нормализации громкости трека в соответствии с рекомендацией EBU R 128.
  9. Attributes:
  10. i (:obj:`float`): Интегрированная громкость. Совокупная громкость от начала до конца.
  11. tp (:obj:`float`): True Peak. Реконструкция пикового уровня сигнала между выборками
  12. (пикового уровня, генерируемого между двумя выборками ), рассчитанного с помощью
  13. передискретизации.
  14. client (:obj:`yandex_music.Client`, optional): Клиент Yandex Music.
  15. """
  16. i: float
  17. tp: float
  18. client: Optional['ClientType'] = None
  19. def __post_init__(self) -> None:
  20. self._id_attrs = (self.i, self.tp)