Compare commits
2
Commits
aa825e0a64
..
main
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
ff21297b77
|
||
|
|
f5b70acc00
|
Generated
+1
-1
@@ -971,7 +971,7 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "usbd-uac2"
|
name = "usbd-uac2"
|
||||||
version = "0.1.1"
|
version = "0.1.2"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"byteorder-embedded-io",
|
"byteorder-embedded-io",
|
||||||
"defmt 1.1.1",
|
"defmt 1.1.1",
|
||||||
|
|||||||
+1
-1
@@ -15,7 +15,7 @@ description = "USB Audio Class 2.0 for usb-device"
|
|||||||
readme = "README.md"
|
readme = "README.md"
|
||||||
authors = ["Keenan Tims <ktims@gotroot.ca>"]
|
authors = ["Keenan Tims <ktims@gotroot.ca>"]
|
||||||
repository = "https://github.com/ktims/usbd-uac2"
|
repository = "https://github.com/ktims/usbd-uac2"
|
||||||
version = "0.1.1"
|
version = "0.1.2"
|
||||||
edition = "2024"
|
edition = "2024"
|
||||||
license = "MIT"
|
license = "MIT"
|
||||||
keywords = ["no-std", "usb-device", "audio"]
|
keywords = ["no-std", "usb-device", "audio"]
|
||||||
|
|||||||
+9
-5
@@ -131,7 +131,7 @@ impl<T: RangeType> RangeEntry<T> {
|
|||||||
buf.write_all(self.min.to_le_bytes().as_ref())?;
|
buf.write_all(self.min.to_le_bytes().as_ref())?;
|
||||||
buf.write_all(self.max.to_le_bytes().as_ref())?;
|
buf.write_all(self.max.to_le_bytes().as_ref())?;
|
||||||
buf.write_all(self.res.to_le_bytes().as_ref())?;
|
buf.write_all(self.res.to_le_bytes().as_ref())?;
|
||||||
Ok(T::ZERO.count_zeros() as usize * 3)
|
Ok((T::ZERO.count_zeros() as usize / 8) * 3)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1351,15 +1351,19 @@ impl<'a, B: UsbBus, AU: AudioHandler<'a, B> + ClockSource> UsbAudioClass<'a, B,
|
|||||||
channel
|
channel
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
let req_len = xfer.request().length;
|
||||||
xfer.accept(|mut buf| match self.audio_impl.sample_rates() {
|
xfer.accept(|mut buf| match self.audio_impl.sample_rates() {
|
||||||
Ok(rates) => {
|
Ok(rates) => {
|
||||||
|
debug!(" wLength = {} buf_len = {}", req_len, buf.len());
|
||||||
buf.write_u16::<LittleEndian>(rates.len() as u16)
|
buf.write_u16::<LittleEndian>(rates.len() as u16)
|
||||||
.map_err(|_e| UsbError::BufferOverflow)?;
|
.map_err(|_e| UsbError::BufferOverflow)?;
|
||||||
let mut written = 2usize;
|
let mut written = 2usize;
|
||||||
for rate in rates {
|
if req_len > 2 {
|
||||||
written += rate
|
for rate in rates {
|
||||||
.write(&mut buf)
|
written += rate
|
||||||
.map_err(|_e| UsbError::BufferOverflow)?
|
.write(&mut buf)
|
||||||
|
.map_err(|_e| UsbError::BufferOverflow)?
|
||||||
|
}
|
||||||
}
|
}
|
||||||
Ok(written)
|
Ok(written)
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user