libavcodec/shorten.c File Reference
Shorten decoder.  
More...
#include <limits.h>
#include "avcodec.h"
#include "bitstream.h"
#include "golomb.h"
Go to the source code of this file.
 | 
 Data Structures | 
| struct   | ShortenContext | 
 Defines | 
| #define  | DEBUG | 
| #define  | MAX_CHANNELS   8 | 
| #define  | MAX_BLOCKSIZE   65535 | 
| #define  | OUT_BUFFER_SIZE   16384 | 
| #define  | ULONGSIZE   2 | 
| #define  | WAVE_FORMAT_PCM   0x0001 | 
| #define  | DEFAULT_BLOCK_SIZE   256 | 
| #define  | TYPESIZE   4 | 
| #define  | CHANSIZE   0 | 
| #define  | LPCQSIZE   2 | 
| #define  | ENERGYSIZE   3 | 
| #define  | BITSHIFTSIZE   2 | 
| #define  | TYPE_S16HL   3 | 
| #define  | TYPE_S16LH   5 | 
| #define  | NWRAP   3 | 
| #define  | NSKIPSIZE   1 | 
| #define  | LPCQUANT   5 | 
| #define  | V2LPCQOFFSET   (1 << LPCQUANT) | 
| #define  | FNSIZE   2 | 
| #define  | FN_DIFF0   0 | 
| #define  | FN_DIFF1   1 | 
| #define  | FN_DIFF2   2 | 
| #define  | FN_DIFF3   3 | 
| #define  | FN_QUIT   4 | 
| #define  | FN_BLOCKSIZE   5 | 
| #define  | FN_BITSHIFT   6 | 
| #define  | FN_QLPC   7 | 
| #define  | FN_ZERO   8 | 
| #define  | FN_VERBATIM   9 | 
| #define  | VERBATIM_CKSIZE_SIZE   5 | 
| #define  | VERBATIM_BYTE_SIZE   8 | 
| #define  | CANONICAL_HEADER_SIZE   44 | 
 Functions | 
| static av_cold int  | shorten_decode_init (AVCodecContext *avctx) | 
| static int  | allocate_buffers (ShortenContext *s) | 
| static unsigned int  | get_uint (ShortenContext *s, int k) | 
| static void  | fix_bitshift (ShortenContext *s, int32_t *buffer) | 
| static void  | init_offset (ShortenContext *s) | 
| static int  | get_le32 (GetBitContext *gb) | 
| static short  | get_le16 (GetBitContext *gb) | 
| static int  | decode_wave_header (AVCodecContext *avctx, uint8_t *header, int header_size) | 
| static int16_t *  | interleave_buffer (int16_t *samples, int nchan, int blocksize, int32_t **buffer) | 
| static void  | decode_subframe_lpc (ShortenContext *s, int channel, int residual_size, int pred_order) | 
| static int  | shorten_decode_frame (AVCodecContext *avctx, void *data, int *data_size, const uint8_t *buf, int buf_size) | 
| static av_cold int  | shorten_decode_close (AVCodecContext *avctx) | 
| static void  | shorten_flush (AVCodecContext *avctx) | 
 Variables | 
| AVCodec  | shorten_decoder | 
Detailed Description
Shorten decoder. 
- Author:
 - Jeff Muizelaar 
 
Definition in file shorten.c.
Define Documentation
      
        
          | #define CANONICAL_HEADER_SIZE   44           | 
        
      
 
 
      
        
          | #define DEFAULT_BLOCK_SIZE   256           | 
        
      
 
 
      
        
          | #define MAX_BLOCKSIZE   65535           | 
        
      
 
 
      
        
          | #define OUT_BUFFER_SIZE   16384           | 
        
      
 
 
      
        
          | #define V2LPCQOFFSET   (1 << LPCQUANT)           | 
        
      
 
 
      
        
          | #define VERBATIM_BYTE_SIZE   8           | 
        
      
 
 
      
        
          | #define VERBATIM_CKSIZE_SIZE   5           | 
        
      
 
 
      
        
          | #define WAVE_FORMAT_PCM   0x0001           | 
        
      
 
 
Function Documentation
      
        
          | static void decode_subframe_lpc            | 
          ( | 
          ShortenContext *  | 
           s,  | 
        
        
           | 
           | 
          int  | 
           channel,  | 
        
        
           | 
           | 
          int  | 
           residual_size,  | 
        
        
           | 
           | 
          int  | 
           pred_order |   | 
        
        
           | 
          ) | 
           |  |  [static] | 
        
      
 
 
      
        
          | static int decode_wave_header            | 
          ( | 
          AVCodecContext *  | 
           avctx,  | 
        
        
           | 
           | 
          uint8_t *  | 
           header,  | 
        
        
           | 
           | 
          int  | 
           header_size |   | 
        
        
           | 
          ) | 
           |  |  [static] | 
        
      
 
 
      
        
          | static void fix_bitshift            | 
          ( | 
          ShortenContext *  | 
           s,  | 
        
        
           | 
           | 
          int32_t *  | 
           buffer |   | 
        
        
           | 
          ) | 
           |  |  [static] | 
        
      
 
 
Definition at line 181 of file shorten.c.
Referenced by ape_read_header(), asf_build_simple_index(), asf_read_header(), avi_read_header(), avi_read_packet(), avs_read_header(), avs_read_packet(), cin_read_file_header(), cin_read_frame_header(), decode_wave_header(), ff_asf_get_packet(), ffm_read_header(), get_fourcc(), get_le24(), get_le32(), get_str16_nolen(), get_swf_tag(), get_value(), mm_read_header(), mpc8_get_chunk_header(), msnwc_tcp_read_packet(), mtv_read_header(), nc_read_packet(), nsv_parse_NSVs_header(), nsv_read_chunk(), process_video_header_mdec(), read_braindead_odml_indx(), read_frame(), read_header(), read_packet(), rl2_read_header(), seq_init_frame_buffers(), seq_parse_frame_data(), siff_parse_soun(), siff_parse_vbv1(), siff_read_packet(), sol_read_header(), swf_read_header(), swf_read_packet(), tta_read_header(), vid_read_header(), vid_read_packet(), voc_get_packet(), voc_read_header(), wv_read_block_header(), and xa_read_header().
 
 
Definition at line 176 of file shorten.c.
Referenced by aiff_read_header(), apc_read_header(), ape_parse_tag(), ape_read_header(), ape_tag_read_field(), asf_build_simple_index(), asf_read_frame_header(), asf_read_header(), au_read_header(), avi_load_index(), avi_read_header(), avi_read_idx1(), avs_read_header(), bfi_read_header(), bfi_read_packet(), cin_read_file_header(), cin_read_frame_header(), decode_wave_header(), dxa_read_header(), ea_read_packet(), ff_asf_get_packet(), ff_rm_read_mdpr_codecdata(), ffm_read_header(), find_tag(), fourxm_read_packet(), get_aiff_header(), get_codec_data(), get_fourcc(), get_le64(), get_riff(), get_swf_tag(), get_tag(), get_value(), gxf_header(), gxf_read_index(), idcin_read_header(), idcin_read_packet(), iff_read_header(), mm_read_header(), mmf_read_header(), mov_read_cmov(), mov_read_default(), mov_read_dref(), mov_read_ftyp(), mov_read_hdlr(), mov_read_stsd(), mov_read_udta_string(), mov_read_wide(), mpc8_read_header(), mpc_read_header(), mpc_read_packet(), msnwc_tcp_read_packet(), mtv_read_header(), nsv_parse_NSVf_header(), nsv_parse_NSVs_header(), nsv_read_chunk(), nuv_header(), ogg_read_page(), process_audio_header_eacs(), process_audio_header_sead(), process_ea_header(), process_video_header_vp6(), rdt_load_mdpr(), read_atom(), read_braindead_odml_indx(), read_header(), read_packet(), rl2_read_header(), rm_read_header(), rpl_read_packet(), siff_parse_soun(), siff_parse_vbv1(), siff_read_header(), siff_read_packet(), smacker_read_header(), smacker_read_packet(), sol_read_header(), swf_read_header(), tta_read_header(), txd_read_packet(), vc1t_read_header(), vc1t_read_packet(), voc_get_packet(), wav_read_header(), wv_read_block_header(), and xa_read_header().
 
 
      
        
          | static unsigned int get_uint            | 
          ( | 
          ShortenContext *  | 
           s,  | 
        
        
           | 
           | 
          int  | 
           k |   | 
        
        
           | 
          ) | 
           |  |  [inline, static] | 
        
      
 
 
      
        
          | static int16_t* interleave_buffer            | 
          ( | 
          int16_t *  | 
           samples,  | 
        
        
           | 
           | 
          int  | 
           nchan,  | 
        
        
           | 
           | 
          int  | 
           blocksize,  | 
        
        
           | 
           | 
          int32_t **  | 
           buffer |   | 
        
        
           | 
          ) | 
           |  |  [static] | 
        
      
 
 
      
        
          | static av_cold int shorten_decode_close            | 
          ( | 
          AVCodecContext *  | 
           avctx           | 
           )  | 
           [static] | 
        
      
 
 
      
        
          | static int shorten_decode_frame            | 
          ( | 
          AVCodecContext *  | 
           avctx,  | 
        
        
           | 
           | 
          void *  | 
           data,  | 
        
        
           | 
           | 
          int *  | 
           data_size,  | 
        
        
           | 
           | 
          const uint8_t *  | 
           buf,  | 
        
        
           | 
           | 
          int  | 
           buf_size |   | 
        
        
           | 
          ) | 
           |  |  [static] | 
        
      
 
 
      
        
          | static av_cold int shorten_decode_init            | 
          ( | 
          AVCodecContext *  | 
           avctx           | 
           )  | 
           [static] | 
        
      
 
 
Variable Documentation
Initial value:
 {
    "shorten",
    CODEC_TYPE_AUDIO,
    CODEC_ID_SHORTEN,
    sizeof(ShortenContext),
    shorten_decode_init,
    NULL,
    shorten_decode_close,
    shorten_decode_frame,
    .flush= shorten_flush,
    .long_name= NULL_IF_CONFIG_SMALL("Shorten"),
}
 
Definition at line 532 of file shorten.c.