/** * @file VorbisFramework.h * @author Dave Camp * @date Fri Oct 10 2003 * @brief For the Macview project * * $LicenseInfo:firstyear=2003&license=viewergpl$ * * Copyright (c) 2003-2009, Linden Research, Inc. * * Second Life Viewer Source Code * The source code in this file ("Source Code") is provided by Linden Lab * to you under the terms of the GNU General Public License, version 2.0 * ("GPL"), unless you have obtained a separate licensing agreement * ("Other License"), formally executed by you and Linden Lab. Terms of * the GPL can be found in doc/GPL-license.txt in this distribution, or * online at http://secondlifegrid.net/programs/open_source/licensing/gplv2 * * There are special exceptions to the terms and conditions of the GPL as * it is applied to this Source Code. View the full text of the exception * in the file doc/FLOSS-exception.txt in this software distribution, or * online at * http://secondlifegrid.net/programs/open_source/licensing/flossexception * * By copying, modifying or distributing this software, you acknowledge * that you have read and understood your obligations described above, * and agree to abide by those obligations. * * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, * COMPLETENESS OR PERFORMANCE. * $/LicenseInfo$ */ #ifdef __cplusplus extern "C" { #endif #include "ogg/ogg.h" #include "vorbis/codec.h" #include "vorbis/vorbisenc.h" extern int mac_vorbis_analysis(vorbis_block *vb,ogg_packet *op); extern int mac_vorbis_analysis_headerout(vorbis_dsp_state *v, vorbis_comment *vc, ogg_packet *op, ogg_packet *op_comm, ogg_packet *op_code); extern int mac_vorbis_analysis_init(vorbis_dsp_state *v,vorbis_info *vi); extern int mac_vorbis_encode_ctl(vorbis_info *vi,int number,void *arg); extern int mac_vorbis_encode_setup_init(vorbis_info *vi); extern int mac_vorbis_encode_setup_managed(vorbis_info *vi, long channels, long rate, long max_bitrate, long nominal_bitrate, long min_bitrate); extern void mac_vorbis_info_init(vorbis_info *vi); extern void mac_vorbis_info_clear(vorbis_info *vi); extern void mac_vorbis_comment_init(vorbis_comment *vc); extern void mac_vorbis_comment_clear(vorbis_comment *vc); extern int mac_vorbis_block_init(vorbis_dsp_state *v, vorbis_block *vb); extern int mac_vorbis_block_clear(vorbis_block *vb); extern void mac_vorbis_dsp_clear(vorbis_dsp_state *v); extern float **mac_vorbis_analysis_buffer(vorbis_dsp_state *v,int vals); extern int mac_vorbis_analysis_wrote(vorbis_dsp_state *v,int vals); extern int mac_vorbis_analysis_blockout(vorbis_dsp_state *v,vorbis_block *vb); extern int mac_ogg_stream_packetin(ogg_stream_state *os, ogg_packet *op); extern int mac_ogg_stream_init(ogg_stream_state *os,int serialno); extern int mac_ogg_stream_flush(ogg_stream_state *os, ogg_page *og); extern int mac_ogg_stream_pageout(ogg_stream_state *os, ogg_page *og); extern int mac_ogg_page_eos(ogg_page *og); extern int mac_ogg_stream_clear(ogg_stream_state *os); #ifdef __cplusplus } #endif