diff options
| author | HiFiPhile <[email protected]> | 2024-05-11 12:32:47 +0200 |
|---|---|---|
| committer | HiFiPhile <[email protected]> | 2024-05-11 12:33:51 +0200 |
| commit | 9ce44db56f145d2efeec6b67d0786230c1a735c4 (patch) | |
| tree | 6378258c0673ae38b433be1bba1c37eff03accc1 /src | |
| parent | f4d4f2da297bb043990d94b9189c7850da772b09 (diff) | |
Always send 4 bytes feedback despite 10.14 format (Apple wtf ?!)
Diffstat (limited to 'src')
| -rw-r--r-- | src/class/audio/audio_device.c | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/src/class/audio/audio_device.c b/src/class/audio/audio_device.c index 77645c412..5ee0a4007 100644 --- a/src/class/audio/audio_device.c +++ b/src/class/audio/audio_device.c @@ -1231,7 +1231,20 @@ static inline bool audiod_fb_send(audiod_function_t *audio) audio->feedback.send_buf = audio->feedback.value; } - return usbd_edpt_xfer(audio->rhport, audio->ep_fb, (uint8_t *) &audio->feedback.send_buf, apply_correction ? 3 : 4); + // About feedback format on FS + // + // 3 variables: Format | packetSize | sendSize | Working OS: + // 16.16 4 4 Linux, Windows + // 16.16 4 3 Linux + // 16.16 3 4 Linux + // 16.16 3 3 Linux + // 10.14 4 4 Linux + // 10.14 4 3 Linux + // 10.14 3 4 Linux, OSX + // 10.14 3 3 Linux + // + // OSX requires wMaxPacketSize=3 while sending 4 bytes (Wth ?!), so we still send 4 bytes even of correction is applied + return usbd_edpt_xfer(audio->rhport, audio->ep_fb, (uint8_t *) &audio->feedback.send_buf, 4); } #endif |
