espressif / esp-usb

Other
30 stars 16 forks source link

UAC Class Host Driver v1.2.0 #68

Closed leeebo closed 1 month ago

leeebo commented 1 month ago

Description

Release UAC Class Driver v1.2.0

Background

  • For UAC devices, the correct way to configure the volume is first to obtain the maximum, minimum (a subset ranging from +127.9961 dB (0x7FFF) to -127.9961 dB (0x8001)), and step values. Then SET_CUR with the 16-bit db value (Please check UAC1.0 Spec Page.77 for details). v1.2.0 provides the standard implementation.

Breaking Changes:

  1. Changed the parameter type of uac_host_device_set_volume_db from uint32_t to int16_t

Improvements:

  1. Support get current volume and mute status

Bugfixes:

  1. Fixed incorrect volume conversion. Using actual device volume range.
  2. Fixed concurrency issues when suspend/stop during read/write

Related

Testing

Unitest Pass in both ESP32-S3 and ESP32-P4


Checklist

Before submitting a Pull Request, please ensure the following:

leeebo commented 1 month ago

@tore-espressif @roma-jam @peter-marcisovsky PTAL! Thanks1

roma-jam commented 1 month ago

@leeebo don‘t forget to squash before merge ;)