Add circus pcm audio support

This commit is contained in:
2025-08-03 19:41:44 +08:00
parent ec3088e2bf
commit dc04dd1ab1
10 changed files with 932 additions and 2 deletions

View File

@@ -47,3 +47,19 @@ impl StructPack for bool {
Ok(())
}
}
impl<T: StructPack> StructPack for Option<T> {
fn pack<W: Write>(&self, writer: &mut W, big: bool, encoding: Encoding) -> Result<()> {
if let Some(value) = self {
value.pack(writer, big, encoding)?;
}
Ok(())
}
}
impl<T: StructUnpack> StructUnpack for Option<T> {
fn unpack<R: Read + Seek>(reader: R, big: bool, encoding: Encoding) -> Result<Self> {
let value = T::unpack(reader, big, encoding)?;
Ok(Some(value))
}
}