Changeset 518 for pjproject/trunk/pjmedia/include/pjmedia/doxygen.h
- Timestamp:
- Jun 18, 2006 2:02:36 AM (18 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
pjproject/trunk/pjmedia/include/pjmedia/doxygen.h
r188 r518 35 35 36 36 /** 37 * @mainpage Welcome to PJMEDIA! 38 * 39 * @section intro_sec What is PJMEDIA 40 * 41 * PJMEDIA open source (GPL) library contains objects that implements multimedia 42 * capabilities. It can be used with signaling libraries such as PJSIP to create 43 * a complete multimedia communication endpoint. 44 * 45 * 37 * @mainpage PJMEDIA and PJMEDIA-CODEC 38 * 39 * \n 40 * @section intro_sec PJMEDIA 41 * 42 * PJMEDIA is a rather complete media stack, distributed under Open Source/GPL 43 * terms, and featuring small footprint and good extensibility and portability. 44 * 45 * Please click the <A HREF="modules.htm"><b>Modules</b></A> link on top 46 * of this page to get the complete features currently present in PJMEDIA. 47 * 48 * Also please read the documentation about @ref PJMEDIA_PORT_CONCEPT, 49 * which is a major concept that is used for implementing many objects in 50 * the library. 51 * 52 * \n 53 * @section pjmedia_codec_sec PJMEDIA-CODEC 54 * 55 * PJMEDIA-CODEC is a static library containing various codec implementations, 56 * wrapped into PJMEDIA codec framework. The static library is designed as 57 * such so that only codecs that are explicitly initialized are linked with 58 * the application, therefore keeping the application size in control. 59 * 60 * Please see @ref pjmedia_codec_page on how to use the codec in 61 * PJMEDIA-CODEC. 62 * 63 * \n 64 * @section pjmedia_lic Copying and Acknowledgements 65 * 66 * Please see @ref lic_stuffs page for the details. 67 */ 68 69 70 /** 71 * @page pjmedia_codec_page Using PJMEDIA-CODEC 72 * 73 * Before application can use a codec, it needs to initialize and register 74 * the codec to the codec manager. This is accomplished with using 75 * constructs like the following: 76 * 77 \code 78 #include <pjmedia.h> 79 #include <pjmedia-codec.h> 80 81 init_codecs( pjmedia_endpt *med_ept ) 82 { 83 // Register G.711 codecs 84 pjmedia_codec_g711_init(med_ept); 85 86 // Register GSM codec. 87 pjmedia_codec_gsm_init(med_ept); 88 89 // Register Speex codecs. 90 // With the default flag, this will register three codecs: 91 // speex/8000, speex/16000, and speex/32000 92 pjmedia_codec_speex_init(med_ept, 0, 0, 0); 93 } 94 \endcode 95 * 96 * After the codec is registered, application may create the encoder/decoder 97 * instance, by using the API as documented in @ref PJMEDIA_CODEC. 98 */ 99 100 101 102 /** 103 * @page lic_stuffs Copying and Acknowledgements 104 * @section lic_stuff Copying and Acknowledgements 46 105 * @subsection pjmedia_about_subsec About PJMEDIA 47 106 * 48 * <pre> 49 * Copyright (C) 2003-2006 Benny Prijono <benny@prijono.org> 50 * 51 * This program is free software; you can redistribute it and/or modify 52 * it under the terms of the GNU General Public License as published by 53 * the Free Software Foundation; either version 2 of the License, or 54 * (at your option) any later version. 55 * 56 * This program is distributed in the hope that it will be useful, 57 * but WITHOUT ANY WARRANTY; without even the implied warranty of 58 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 59 * GNU General Public License for more details. 60 * 61 * You should have received a copy of the GNU General Public License 62 * along with this program; if not, write to the Free Software 63 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 64 * </pre> 65 * 66 * 67 * @subsection portaudio_subsec About PortAudio 68 * 69 * PortAudio is an excellent sound device library that is chosen as sound 70 * device abstraction in PJMEDIA. It has the following characteristics that 71 * makes it perfect for our use: 72 * 73 * - It is portable and complete 74 *\n 75 * It supports multiple back-ends on Windows, Windows CE (WinCE)/PocketPC, 76 * Linux, Unix, and MacOS. More platforms may be supported. 77 * - It is callback based 78 *\n 79 * The callback based for supplying/retrieving frames from the audio 80 * device is perfect for our use. 81 * - No nonsense, C based library. 82 * - Actively maintained. 107 * PJMEDIA is distributed under GPL terms (other licensing schemes may be 108 * arranged): 109 \verbatim 110 Copyright (C) 2003-2006 Benny Prijono <benny@prijono.org> 111 112 This program is free software; you can redistribute it and/or modify 113 it under the terms of the GNU General Public License as published by 114 the Free Software Foundation; either version 2 of the License, or 115 (at your option) any later version. 116 117 This program is distributed in the hope that it will be useful, 118 but WITHOUT ANY WARRANTY; without even the implied warranty of 119 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 120 GNU General Public License for more details. 121 122 You should have received a copy of the GNU General Public License 123 along with this program; if not, write to the Free Software 124 Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 125 \endverbatim 126 * 127 * 128 * @section other_acks Acknowlegments 129 * @subsection portaudio_subsec PortAudio 130 * 131 * PortAudio is supported as one of the sound device backend, and 132 * is used by default on Linux/Unix and MacOS X target. 83 133 * 84 * Please visit http://www.portaudio.com for more info. 134 * Please visit <A HREF="http://www.portaudio.com">http://www.portaudio.com</A> 135 * for more info. 85 136 * 86 137 * PortAudio is distributed with the following condition. 87 * <pre> 88 * Based on the Open Source API proposed by Ross Bencina 89 * Copyright (c) 1999-2000 Phil Burk 90 * 91 * Permission is hereby granted, free of charge, to any person obtaining 92 * a copy of this software and associated documentation files 93 * (the "Software"), to deal in the Software without restriction, 94 * including without limitation the rights to use, copy, modify, merge, 95 * publish, distribute, sublicense, and/or sell copies of the Software, 96 * and to permit persons to whom the Software is furnished to do so, 97 * subject to the following conditions: 98 * 99 * The above copyright notice and this permission notice shall be 100 * included in all copies or substantial portions of the Software. 101 * </pre> 138 \verbatim 139 Based on the Open Source API proposed by Ross Bencina 140 Copyright (c) 1999-2000 Phil Burk 141 142 Permission is hereby granted, free of charge, to any person obtaining 143 a copy of this software and associated documentation files 144 (the "Software"), to deal in the Software without restriction, 145 including without limitation the rights to use, copy, modify, merge, 146 publish, distribute, sublicense, and/or sell copies of the Software, 147 and to permit persons to whom the Software is furnished to do so, 148 subject to the following conditions: 149 150 The above copyright notice and this permission notice shall be 151 included in all copies or substantial portions of the Software. 152 \endverbatim 153 * 154 * 155 * @subsection resample_ack Resample 156 * 157 * PJMEDIA uses <tt>resample-1.8.tar.gz</tt> from 158 * <A HREF="http://www-ccrma.stanford.edu/~jos/resample/"> 159 * Digital Audio Resampling Home Page</A>. This library is distibuted 160 * on LGPL terms. 161 * 162 * Some excerpts from the original source codes: 163 \verbatim 164 HISTORY 165 166 The first version of this software was written by Julius O. Smith III 167 <jos@ccrma.stanford.edu> at CCRMA <http://www-ccrma.stanford.edu> in 168 1981. It was called SRCONV and was written in SAIL for PDP-10 169 compatible machines. The algorithm was first published in 170 171 Smith, Julius O. and Phil Gossett. ``A Flexible Sampling-Rate 172 Conversion Method,'' Proceedings (2): 19.4.1-19.4.4, IEEE Conference 173 on Acoustics, Speech, and Signal Processing, San Diego, March 1984. 174 175 An expanded tutorial based on this paper is available at the Digital 176 Audio Resampling Home Page given above. 177 178 Circa 1988, the SRCONV program was translated from SAIL to C by 179 Christopher Lee Fraley working with Roger Dannenberg at CMU. 180 181 Since then, the C version has been maintained by jos. 182 183 Sndlib support was added 6/99 by John Gibson <jgg9c@virginia.edu>. 184 185 The resample program is free software distributed in accordance 186 with the Lesser GNU Public License (LGPL). There is NO warranty; not 187 even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 188 \endverbatim 189 * 190 * @subsection jb_ack Adaptive Jitter Buffer 191 * 192 * The PJMEDIA jitter buffer is based on implementation kindly donated 193 * by <A HREF="http://www.switchlab.com">Switchlab, Ltd.</A>, and is 194 * distributed under PJMEDIA licensing terms. 195 * 196 * 197 * @subsection silence_det_ack Adaptive Silence Detector 198 * 199 * The adaptive silence detector was based on silence detector 200 * implementation in <A HREF="http://www.openh323.org">Open H323</A> 201 * project. I couldn't find the source code anymore, but generally 202 * Open H323 files are distributed under MPL terms and has the 203 * following excerpts: 204 \verbatim 205 Open H323 Library 206 207 Copyright (c) 1998-2000 Equivalence Pty. Ltd. 208 209 The contents of this file are subject to the Mozilla Public License 210 Version 1.0 (the "License"); you may not use this file except in 211 compliance with the License. You may obtain a copy of the License at 212 http://www.mozilla.org/MPL/ 213 214 Software distributed under the License is distributed on an "AS IS" 215 basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See 216 the License for the specific language governing rights and limitations 217 under the License. 218 219 The Original Code is Open H323 Library. 220 221 The Initial Developer of the Original Code is Equivalence Pty. Ltd. 222 223 Portions of this code were written with the assisance of funding from 224 Vovida Networks, Inc. http://www.vovida.com. 225 \endverbatim 226 227 * @subsection gsm_ack GSM Codec 228 * 229 * PJMEDIA uses GSM 230 * <A HREF="http://kbs.cs.tu-berlin.de/~jutta/toast.html">GSM 06.10</A> 231 * version 1.0 at patchlevel 12. It has the following Copyright notice: 232 * 233 \verbatim 234 Copyright 1992, 1993, 1994 by Jutta Degener and Carsten Bormann, 235 Technische Universitaet Berlin 236 237 Any use of this software is permitted provided that this notice is not 238 removed and that neither the authors nor the Technische Universitaet Berlin 239 are deemed to have made any representations as to the suitability of this 240 software for any purpose nor are held responsible for any defects of 241 this software. THERE IS ABSOLUTELY NO WARRANTY FOR THIS SOFTWARE. 242 243 As a matter of courtesy, the authors request to be informed about uses 244 this software has found, about bugs in this software, and about any 245 improvements that may be of general interest. 246 247 Berlin, 28.11.1994 248 Jutta Degener 249 Carsten Bormann 250 \endverbatim 251 * 252 * 253 * @subsection speex_codec_ack Speex Codec 254 * 255 * PJMEDIA uses Speex codec uses version 1.1.12 from <A HREF="http://www.speex.org"> 256 * www.speex.org</A>. The Speex library comes with the following Copying 257 * notice: 258 \verbatim 259 Copyright 2002-2005 260 Xiph.org Foundation 261 Jean-Marc Valin 262 David Rowe 263 EpicGames 264 Analog Devices 265 266 Redistribution and use in source and binary forms, with or without 267 modification, are permitted provided that the following conditions 268 are met: 269 270 - Redistributions of source code must retain the above copyright 271 notice, this list of conditions and the following disclaimer. 272 273 - Redistributions in binary form must reproduce the above copyright 274 notice, this list of conditions and the following disclaimer in the 275 documentation and/or other materials provided with the distribution. 276 277 - Neither the name of the Xiph.org Foundation nor the names of its 278 contributors may be used to endorse or promote products derived from 279 this software without specific prior written permission. 280 281 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 282 ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 283 LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 284 A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR 285 CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, 286 EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, 287 PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR 288 PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF 289 LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING 290 NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS 291 SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 292 \endverbatim 293 * 294 * 295 * @subsection g711_codec_ack G.711 Codec 296 * 297 * The G.711 codec algorithm came from Sun Microsystems, Inc, and it's 298 * got the following excerpts: 299 * 300 \verbatim 301 This source code is a product of Sun Microsystems, Inc. and is provided 302 for unrestricted use. Users may copy or modify this source code without 303 charge. 304 305 SUN SOURCE CODE IS PROVIDED AS IS WITH NO WARRANTIES OF ANY KIND INCLUDING 306 THE WARRANTIES OF DESIGN, MERCHANTIBILITY AND FITNESS FOR A PARTICULAR 307 PURPOSE, OR ARISING FROM A COURSE OF DEALING, USAGE OR TRADE PRACTICE. 308 309 Sun source code is provided with no support and without any obligation on 310 the part of Sun Microsystems, Inc. to assist in its use, correction, 311 modification or enhancement. 312 313 SUN MICROSYSTEMS, INC. SHALL HAVE NO LIABILITY WITH RESPECT TO THE 314 INFRINGEMENT OF COPYRIGHTS, TRADE SECRETS OR ANY PATENTS BY THIS SOFTWARE 315 OR ANY PART THEREOF. 316 317 In no event will Sun Microsystems, Inc. be liable for any lost revenue 318 or profits or other special, indirect and consequential damages, even if 319 Sun has been advised of the possibility of such damages. 320 321 Sun Microsystems, Inc. 322 2550 Garcia Avenue 323 Mountain View, California 94043 324 \endverbatim 325 * 102 326 */ 103 327
Note: See TracChangeset
for help on using the changeset viewer.