1 /********************************************************************
3 * THIS FILE IS PART OF THE Ogg Vorbis SOFTWARE CODEC SOURCE CODE. *
4 * USE, DISTRIBUTION AND REPRODUCTION OF THIS SOURCE IS GOVERNED BY *
5 * THE GNU PUBLIC LICENSE 2, WHICH IS INCLUDED WITH THIS SOURCE. *
6 * PLEASE READ THESE TERMS DISTRIBUTING. *
8 * THE OggSQUISH SOURCE CODE IS (C) COPYRIGHT 1994-2000 *
9 * by Monty <monty@xiph.org> and The XIPHOPHORUS Company *
10 * http://www.xiph.org/ *
12 ********************************************************************
14 function: channel mapping 0 implementation
15 last mod: $Id: mapping0.h,v 1.1 2000/01/20 04:43:02 xiphmont Exp $
17 ********************************************************************/
19 typedef struct vorbis_info_mapping0{
20 int timesubmap; /* list position of the time backend/settings
23 int *floorsubmap; /* for each floor map, which channels */
24 int *residuesubmap; /* residue to use for each incoming channel */
25 int *psysubmap; /* psychoacoustics to use for each incoming channel */
27 } vorbis_info_mapping0;
29 extern _vi_info_map *_vorbis_map0_dup (vorbis_info *vi,
30 _vi_info_map *source);
31 extern void _vorbis_map0_free (_vi_info_map *i);
32 extern void _vorbis_map0_pack (vorbis_info *vi,
35 extern _vi_info_map *_vorbis_map0_unpack (vorbis_info *vi,
37 extern int _vorbis_map0_analysis (vorbis_block *vb,
38 _vi_info_map *i,ogg_packet *);
39 extern int _vorbis_map0_synthesis(vorbis_block *vb,
40 _vi_info_map *i,ogg_packet *);