From 373dc625f82b47096893add42c4472e4a57ab7eb Mon Sep 17 00:00:00 2001 From: Aki Date: Wed, 9 Feb 2022 22:23:03 +0100 Subject: Moved third-party libraries to a separate subdirectory --- vorbis/doc/libvorbis/overview.html | 136 ------------------------------------- 1 file changed, 136 deletions(-) delete mode 100644 vorbis/doc/libvorbis/overview.html (limited to 'vorbis/doc/libvorbis/overview.html') diff --git a/vorbis/doc/libvorbis/overview.html b/vorbis/doc/libvorbis/overview.html deleted file mode 100644 index 22cd186..0000000 --- a/vorbis/doc/libvorbis/overview.html +++ /dev/null @@ -1,136 +0,0 @@ - - - -libvorbis - API Overview - - - - - - - - - -

libvorbis documentation

libvorbis version 1.3.2 - 20101101

- -

Libvorbis API Overview

- -

Libvorbis is the reference implementation of the Vorbis codec. It is -the lowest-level interface to the Vorbis encoder and decoder, working -with packets directly.

- -

All libvorbis routines and structures are declared in "vorbis/codec.h".

- -

Encoding workflow

- -
    -
  1. Initialize a vorbis_info structure -by calling vorbis_info_init and -then functions from libvorbisenc -on it.
  2. -
  3. Initialize a vorbis_dsp_state -for encoding based on the parameters in the vorbis_info by using vorbis_analysis_init.
  4. -
  5. Initialize a vorbis_comment -structure using vorbis_comment_init, -populate it with any comments you wish to store in the stream, and call -vorbis_analysis_headerout to -get the three Vorbis stream header packets. Output the packets.
  6. -
  7. Initialize a vorbis_block structure -using vorbis_block_init.
  8. -
  9. While there is more audio to encode:
      -
    1. Submit a chunk of audio data using vorbis_analysis_buffer and vorbis_analysis_wrote.
    2. -
    3. Obtain all available blocks using vorbis_analysis_blockout -in a loop. For each block obtained:
        -
      1. Encode the block into a packet (or prepare it for bitrate management) -using vorbis_analysis. (It's a good -idea to always pass the blocks through the bitrate -management mechanism; more information is on the vorbis_analysis page. It does not affect -the resulting packets unless you are actually using a bitrate-managed -mode.)
      2. -
      3. If you are using bitrate management, submit the block using vorbis_bitrate_addblock and obtain -packets using vorbis_bitrate_flushpacket.
      4. -
      5. Output any obtained packets.
      6. -
    4. -
  10. -
  11. Submit an empty buffer to indicate the end of input; this will result -in an end-of-stream packet after all encoding steps are done to it.
  12. -
  13. Destroy the structures using the appropriate vorbis_*_clear routines.
  14. -
- -

Decoding workflow

- -Note: if you do not need to do anything more involved than just -decoding the audio from an Ogg Vorbis file, you can use the far simpler -libvorbisfile interface, which -will take care of all of the demuxing and low-level decoding operations -(and even the I/O, if you want) for you. - -
    -
  1. When reading the header packets of an Ogg stream, you can use vorbis_synthesis_idheader to -check whether a stream might be Vorbis.
  2. -
  3. Initialize a vorbis_info and a vorbis_comment structure using the -appropriate vorbis_*_init routines, then pass the first three packets -from the stream (the Vorbis stream header packets) to vorbis_synthesis_headerin in -order. At this point, you can see the comments and basic parameters of -the Vorbis stream.
  4. -
  5. Initialize a vorbis_dsp_state -for decoding based on the parameters in the vorbis_info by using vorbis_synthesis_init.
  6. -
  7. Initialize a vorbis_block structure -using vorbis_block_init.
  8. -
  9. While there are more packets to decode:
      -
    1. Decode the next packet into a block using vorbis_synthesis.
    2. -
    3. Submit the block to the reassembly layer using vorbis_synthesis_blockin.
    4. -
    5. Obtain some decoded audio using vorbis_synthesis_pcmout and vorbis_synthesis_read. Any audio data -returned but not marked as consumed using vorbis_synthesis_read carries -over to the next call to vorbis_synthesis_pcmout.
    6. -
  10. -
  11. Destroy the structures using the appropriate vorbis_*_clear routines.
  12. -
- -

Metadata workflow

- -Note: if you do not need to do anything more involved than just -reading the metadata from an Ogg Vorbis file, libvorbisfile can do this for you. - -
    -
  1. Follow the decoding workflow above until you have access to the comments -and basic parameters of the Vorbis stream.
  2. -
  3. If you want to alter the comments, copy the first packet to the output -file, then create a packet for the modified comments using vorbis_commentheader_out and output -it, then copy the third packet and all subsequent packets into the output -file.
  4. -
- -

-
- - - - - - - - -

copyright © 2010 Xiph.Org

Ogg Vorbis

libvorbis documentation

libvorbis version 1.3.2 - 20101101

- - - - - -- cgit v1.1