sound: Add new sampling rates 12000Hz and 24000Hz

These values were just merged upstream in oasis, let's add them.

37c6a40667

Signed-off-by: Manos Pitsidianakis <manos.pitsidianakis@linaro.org>
This commit is contained in:
Manos Pitsidianakis 2024-10-24 21:28:57 +03:00 committed by Manos Pitsidianakis
parent ff0cfd99b6
commit 24f0e13cd6
4 changed files with 17 additions and 7 deletions

View File

@ -3,6 +3,8 @@
### Added
- [[#746]](https://github.com/rust-vmm/vhost-device/pull/746) Add new sampling rates 12000Hz and 24000Hz
### Changed
### Fixed

View File

@ -75,7 +75,8 @@ fn update_pcm(
virtio_sound::VIRTIO_SND_PCM_RATE_96000 => 96000,
virtio_sound::VIRTIO_SND_PCM_RATE_176400 => 176400,
virtio_sound::VIRTIO_SND_PCM_RATE_192000 => 192000,
virtio_sound::VIRTIO_SND_PCM_RATE_384000 => 384000,
virtio_sound::VIRTIO_SND_PCM_RATE_12000 => 12000,
virtio_sound::VIRTIO_SND_PCM_RATE_24000 => 24000,
// We check if a rate value is supported in PCM_SET_PARAMS so it should never have
// an unknown value.
_ => unreachable!(),
@ -752,6 +753,8 @@ mod tests {
virtio_sound::VIRTIO_SND_PCM_RATE_176400,
virtio_sound::VIRTIO_SND_PCM_RATE_192000,
virtio_sound::VIRTIO_SND_PCM_RATE_384000,
virtio_sound::VIRTIO_SND_PCM_RATE_12000,
virtio_sound::VIRTIO_SND_PCM_RATE_24000,
];
const FORMATS: [u8; _VIRTIO_SND_PCM_FMT_MAX as usize] = [

View File

@ -45,11 +45,12 @@ use crate::{
VIRTIO_SND_PCM_FMT_S8, VIRTIO_SND_PCM_FMT_U16, VIRTIO_SND_PCM_FMT_U18_3,
VIRTIO_SND_PCM_FMT_U20, VIRTIO_SND_PCM_FMT_U20_3, VIRTIO_SND_PCM_FMT_U24,
VIRTIO_SND_PCM_FMT_U24_3, VIRTIO_SND_PCM_FMT_U32, VIRTIO_SND_PCM_FMT_U8,
VIRTIO_SND_PCM_RATE_11025, VIRTIO_SND_PCM_RATE_16000, VIRTIO_SND_PCM_RATE_176400,
VIRTIO_SND_PCM_RATE_192000, VIRTIO_SND_PCM_RATE_22050, VIRTIO_SND_PCM_RATE_32000,
VIRTIO_SND_PCM_RATE_384000, VIRTIO_SND_PCM_RATE_44100, VIRTIO_SND_PCM_RATE_48000,
VIRTIO_SND_PCM_RATE_5512, VIRTIO_SND_PCM_RATE_64000, VIRTIO_SND_PCM_RATE_8000,
VIRTIO_SND_PCM_RATE_88200, VIRTIO_SND_PCM_RATE_96000,
VIRTIO_SND_PCM_RATE_11025, VIRTIO_SND_PCM_RATE_12000, VIRTIO_SND_PCM_RATE_16000,
VIRTIO_SND_PCM_RATE_176400, VIRTIO_SND_PCM_RATE_192000, VIRTIO_SND_PCM_RATE_22050,
VIRTIO_SND_PCM_RATE_24000, VIRTIO_SND_PCM_RATE_32000, VIRTIO_SND_PCM_RATE_384000,
VIRTIO_SND_PCM_RATE_44100, VIRTIO_SND_PCM_RATE_48000, VIRTIO_SND_PCM_RATE_5512,
VIRTIO_SND_PCM_RATE_64000, VIRTIO_SND_PCM_RATE_8000, VIRTIO_SND_PCM_RATE_88200,
VIRTIO_SND_PCM_RATE_96000,
},
Direction, Error, Result, Stream,
};
@ -296,6 +297,8 @@ impl AudioBackend for PwBackend {
VIRTIO_SND_PCM_RATE_176400 => 176400,
VIRTIO_SND_PCM_RATE_192000 => 192000,
VIRTIO_SND_PCM_RATE_384000 => 384000,
VIRTIO_SND_PCM_RATE_12000 => 12000,
VIRTIO_SND_PCM_RATE_24000 => 24000,
_ => 44100,
},
flags: 0,

View File

@ -107,7 +107,9 @@ pub const VIRTIO_SND_PCM_RATE_96000: u8 = 10;
pub const VIRTIO_SND_PCM_RATE_176400: u8 = 11;
pub const VIRTIO_SND_PCM_RATE_192000: u8 = 12;
pub const VIRTIO_SND_PCM_RATE_384000: u8 = 13;
pub(crate) const _VIRTIO_SND_PCM_RATE_MAX: u8 = 14;
pub const VIRTIO_SND_PCM_RATE_12000: u8 = 14;
pub const VIRTIO_SND_PCM_RATE_24000: u8 = 15;
pub(crate) const _VIRTIO_SND_PCM_RATE_MAX: u8 = 16;
// standard channel position definition