pub enum OggVorbisMode {
OriginalStreamCompatible = 1,
HaveIndependentHeader = 2,
HaveNoCodebookHeader = 3,
}
Expand description
- OggVorbis encoder mode
Variants§
OriginalStreamCompatible = 1
- Please use this mode, it works well because it just uses the WAV
data
chunk to encapsulate the whole Ogg Vorbis audio stream.
HaveIndependentHeader = 2
- This mode works on some players. It separates the Ogg Vorbis header into the
fmt
chunk extension data. - Some players with the Ogg Vorbis decoder for the WAV file may fail because the header is separated.
HaveNoCodebookHeader = 3
- Please don’t use this mode. The encoder strips the Ogg Vorbis header in this mode, and to decode it, the decoder should use another encoder to create an Ogg Vorbis header for the audio stream to be decoded.
- What if the decoder has a different version of
libvorbis
, the header info is misaligned to the audio body, then BAM, it’s unable to play. - I’m still wondering why the Japanese developer invented this mode. to reduce the audio file size? Or to use the
fmt
chunk info to create the header? - The result is that you can’t control the bitrate, thus the file would be very large at full bitrate settings by default.
Trait Implementations§
Source§impl Clone for OggVorbisMode
impl Clone for OggVorbisMode
Source§fn clone(&self) -> OggVorbisMode
fn clone(&self) -> OggVorbisMode
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moreSource§impl Debug for OggVorbisMode
impl Debug for OggVorbisMode
Source§impl Default for OggVorbisMode
impl Default for OggVorbisMode
Source§fn default() -> OggVorbisMode
fn default() -> OggVorbisMode
Returns the “default value” for a type. Read more
Source§impl PartialEq for OggVorbisMode
impl PartialEq for OggVorbisMode
impl Copy for OggVorbisMode
impl StructuralPartialEq for OggVorbisMode
Auto Trait Implementations§
impl Freeze for OggVorbisMode
impl RefUnwindSafe for OggVorbisMode
impl Send for OggVorbisMode
impl Sync for OggVorbisMode
impl Unpin for OggVorbisMode
impl UnwindSafe for OggVorbisMode
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more