00001 //=========================================================================== 00002 //Copyright (C) 2003, 2004 Zentaro Kavanagh 00003 // 00004 //Redistribution and use in source and binary forms, with or without 00005 //modification, are permitted provided that the following conditions 00006 //are met: 00007 // 00008 //- Redistributions of source code must retain the above copyright 00009 // notice, this list of conditions and the following disclaimer. 00010 // 00011 //- Redistributions in binary form must reproduce the above copyright 00012 // notice, this list of conditions and the following disclaimer in the 00013 // documentation and/or other materials provided with the distribution. 00014 // 00015 //- Neither the name of Zentaro Kavanagh nor the names of contributors 00016 // may be used to endorse or promote products derived from this software 00017 // without specific prior written permission. 00018 // 00019 //THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 00020 //``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 00021 //LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A 00022 //PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE ORGANISATION OR 00023 //CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, 00024 //EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, 00025 //PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR 00026 //PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF 00027 //LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING 00028 //NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS 00029 //SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 00030 //=========================================================================== 00031 #pragma once 00032 #include <streams.h> 00033 #include <pullpin.h> 00034 #include <initguid.h> 00035 00036 // {278EA0E1-B5B3-444d-92BA-9B90C801C9A9} 00037 DEFINE_GUID(CLSID_DiracDecodeSourceFilter, 00038 0x278ea0e1, 0xb5b3, 0x444d, 0x92, 0xba, 0x9b, 0x90, 0xc8, 0x1, 0xc9, 0xa9); 00039 00040 00041 // 00042 // 00043 // 00044 //#ifdef LIBOOOGG_EXPORTS 00045 //#define LIBOOOGG_API __declspec(dllexport) 00046 //#else 00047 //#define LIBOOOGG_API __declspec(dllimport) 00048 //#endif 00049 // 00050 // 00051 //#ifdef DSFOGGDEMUX_EXPORTS 00052 //#pragma message("----> Exporting from Ogg Demux...") 00053 //#define OGG_DEMUX_API __declspec(dllexport) 00054 //#else 00055 //#pragma message("<---- Importing from Ogg Demux...") 00056 //#define OGG_DEMUX_API __declspec(dllimport) 00057 //#endif 00058 // 00059 // 00061 //DEFINE_GUID(CLSID_PropsAbout, 00062 //0x4bb64c4a, 0x1674, 0x436b, 0xa4, 0x9d, 0xd6, 0xb3, 0xb6, 0x4d, 0xbd, 0x60); 00063 // 00066 //DEFINE_GUID(CLSID_OggDemuxSourceFilter, 00067 //0x31ca0186, 0x1ff0, 0x4181, 0xaa, 0x38, 0x3c, 0xa4, 0x4, 0xb, 0xd2, 0x60); 00068 // 00070 //DEFINE_GUID(MEDIASUBTYPE_FLAC, 00071 //0x3913f0ab, 0xe7ed, 0x41c4, 0x97, 0x9b, 0x1d, 0x1f, 0xdd, 0x98, 0x3c, 0x7); 00072 // 00073 // 00075 //DEFINE_GUID(MEDIASUBTYPE_Vorbis, 00076 //0x8a0566ac, 0x42b3, 0x4ad9, 0xac, 0xa3, 0x93, 0xb9, 0x6, 0xdd, 0xf9, 0x8a); 00077 // 00079 //DEFINE_GUID(MEDIASUBTYPE_Speex, 00080 //0x25a9729d, 0x12f6, 0x420e, 0xbd, 0x53, 0x1d, 0x63, 0x1d, 0xc2, 0x17, 0xdf); 00081 // 00083 //DEFINE_GUID(FORMAT_Vorbis, 00084 //0x44e04f43, 0x58b3, 0x4de1, 0x9b, 0xaa, 0x89, 0x1, 0xf8, 0x52, 0xda, 0xe4); 00085 // 00087 //DEFINE_GUID(FORMAT_Speex, 00088 //0x78701a27, 0xefb5, 0x4157, 0x95, 0x53, 0x38, 0xa7, 0x85, 0x4e, 0x3e, 0x81); 00089 // 00091 //DEFINE_GUID(FORMAT_FLAC, 00092 //0x1cdc48ac, 0x4c24, 0x4b8b, 0x98, 0x2b, 0x70, 0x7, 0xa2, 0x9d, 0x83, 0xc4); 00093 // 00094 // 00096 //DEFINE_GUID(CLSID_TheoraDecodeFilter, 00097 //0x5187161, 0x5c36, 0x4324, 0xa7, 0x34, 0x22, 0xbf, 0x37, 0x50, 0x9f, 0x2d); 00098 // 00100 //DEFINE_GUID(MEDIASUBTYPE_Theora, 00101 //0xd124b2b1, 0x8968, 0x4ae8, 0xb2, 0x88, 0xfe, 0x16, 0xea, 0x34, 0xb0, 0xce); 00102 // 00104 //DEFINE_GUID(FORMAT_Theora, 00105 //0xa99f116c, 0xdffa, 0x412c, 0x95, 0xde, 0x72, 0x5f, 0x99, 0x87, 0x48, 0x26); 00106 // 00108 // 00109 // 00111 //const REGFILTER2 OggDemuxSourceFilterReg = { 00112 // 1, 00113 // MERIT_NORMAL, 00114 // 0, 00115 // NULL 00116 // 00117 //}; 00118 // 00119 // 00120 //struct sVorbisFormatBlock { 00121 // unsigned long vorbisVersion; 00122 // unsigned long samplesPerSec; 00123 // unsigned long minBitsPerSec; 00124 // unsigned long avgBitsPerSec; 00125 // unsigned long maxBitsPerSec; 00126 // unsigned char numChannels; 00127 //}; 00128 // 00129 //struct sSpeexFormatBlock { 00130 // unsigned long speexVersion; 00131 // unsigned long samplesPerSec; 00132 // unsigned long minBitsPerSec; 00133 // unsigned long avgBitsPerSec; 00134 // unsigned long maxBitsPerSec; 00135 // unsigned long numChannels; 00136 // 00137 //}; 00138 // 00139 //struct sFLACFormatBlock { 00140 // unsigned short numChannels; 00141 // unsigned long numBitsPerSample; 00142 // unsigned long sampleRate; 00143 // 00144 //}; 00145 // 00146 //struct sTheoraFormatBlock { 00147 // unsigned long theoraVersion; 00148 // unsigned long width; 00149 // unsigned long height; 00150 // unsigned long frameWidth; 00151 // unsigned long frameHeight; 00152 // unsigned long frameRateNumerator; 00153 // unsigned long frameRateDenominator; 00154 // unsigned long aspectNumerator; 00155 // unsigned long aspectDenominator; 00156 // unsigned long maxKeyframeInterval; 00157 // unsigned long targetBitrate; 00158 // unsigned char targetQuality; 00159 // unsigned char xOffset; 00160 // unsigned char yOffset; 00161 // unsigned char colourSpace; 00162 //};