XRS Version 1 - WiNRADiO

Transcription

XRS Extensible Radio SpecificationVersion 1.2CONFIDENTIAL1

WiNRADiO Software Developer’s Guide - The Plug-in Interface (XRS v1.2)Limited Evaluation LicenseWiNRADiO Communications (hereinafter called ‘WiNRADiO’) hereby grants to you at no charge a nonexclusive, non-transferable, worldwide, limited license (without any right to sublicense) under WiNRADiO’sintellectual property rights that are essential to practice the Extensible Radio Specification (XRS, hereinaftercalled ‘Specification’) to use the Specification for internal evaluation purposes only. Other than this limitedlicense, you acquire no right, title, or interest in or to the Specification and you shall have no right to use theSpecification for productive or commercial use. Should you wish to use the Specification for productive orcommercial use, you need to apply for XRS Client Developer License or XRS Server OEM License.Confidential InformationThis documentation is the confidential and proprietary information of WiNRADiO. You shall not disclosethis confidential information and shall use it only in accordance with the terms of this license agreement youentered into with WiNRADiO.Limited WarrantyThe specification is provided ‘AS IS’ and all warranties whether express, implied, statutory or otherwise,relating in any way to the subject matter of this licence or to this licence generally, including withoutlimitation, warranties as to: quality; fitness; merchantability; correctness; accuracy; reliability;correspondence with any description or sample, meeting your or any other requirements; uninterrupted use;compliance with any relevant legislation and being error or virus free are excluded.Where any legislation implies in this agreement any term, and that legislation avoids or prohibits provisionsin a contract excluding or modifying such a term, such term shall be deemed to be included in this agreement.However, the liability of WiNRADiO for any breach of such term shall if permitted by that legislation belimited, at WiNRADiO’s option, to any one or more of the following: if the breach related to goods: thereplacement of the goods or the supply of equivalent goods; the repair of such goods; the payment of the costof replacing the goods or of acquiring equivalent goods; or the payment of the cost of having the goodsrepaired; and if the breach relates to services: the supplying of the services again; or the payment of the costof having the services supplied again.Licensee warrants that it has not relied on any representation made by WiNRADiO or upon this specificationin any way.Limitation of LiabilityExcept for the limited warranty (above), WiNRADiO shall not be under any liability to Licensee in respect ofany loss or damage (including consequential loss or damage) however caused, which may be suffered orincurred or which may arise directly or indirectly in respect to the use of this specification or the failure oromission on the part of WiNRADiO to comply with its obligations under this licence.TrademarksWiNRADiO, VisiTune and XRS are trademarks or registered trademarks of WiNRADiO Communications inthe United States of America and other countries of the World.CopyrightsThe copyright in this document is owned by WiNRADiO Communications. All rights reserved.Copyright 1999-2003 WiNRADiO Communications, Melbourne, Australia2

WiNRADiO Software Developer’s Guide - The Plug-in Interface (XRS v1.2)XRS 1.2ContentsLIMITED EVALUATION LICENSE.2Confidential Information.2Limited Warranty .2Limitation of Liability .2Trademarks .2Copyrights.2XRS 1.2.3CONTENTS .3INTRODUCTION .7XRS PLUG-IN BASICS .8How Plug-ins Work .8Overview of Plug-in Structure.9XRS DEVELOPMENT OVERVIEW.9Conventions.9Writing Plug-ins.9Registering Plug-ins.10Initialisation .10Device Information .12Instance Destruction .12Shutdown.12Minimal Plug-in Example .13XRS EVENT HANDLING AND CONTROL .14Start-up Conditions .14Notifications .14Commands.14User Interface Control .15Memory Control .15DSP Control.16XRS API REFERENCE .19PLUG-IN FUNCTIONS .19xrsPluginInit.19xrsPluginDone .20xrsPluginStart .20xrsPluginNotify .22XRS FUNCTIONS.24xrsCopyRadioDevCaps .24xrsFreeRadioDevCaps .24xrsValidateServer.25PluginProc .25XRS STRUCTURES .29AGCEXCAPS .29AGCEXPARAMS.30DEMODDEF CAPS.34MEMORYENTRY .35MODDEF.39MODPARAMS .40PARAEQCAPS .42PARAEQPARAMS .43RADIODEVCAPS .44SQUELCHSETTINGS .53TONECAPS.553

WiNRADiO Software Developer’s Guide - The Plug-in Interface (XRS v1.2)TXAUDIOPROC .55XRS COMMANDS.57PM CAPABILITIES.57PM CLOSED.57PM CREATEFOLDER .57PM DELETEFOLDER .58PM DISABLE .58PM EVENT.59PM FILTERFLAGS.59PM GETMEM .60PM GETMEMFILE .60PM GETNEXTFOLDER .60PM GETNEXTMEM.61PM GETNEXTPLUGIN .61PM GETNUMMEMS .62PM GETSETTINGS.62PM GETSUBFOLDER.62PM MINIMIZE .63PM MOVEFOLDER.63PM OPENFOLDER .64PM POWER .64PM RECALLMEM .64PM SELECTBANK.65PM SETMEMFILE.65PM STARTPLUGIN .66PM STOPPLUGIN .66PM STOREMEM.66PM VISIBLE.67PMR/T AUDIOFILTER.67PMR/T DSPADCSTART.68PMR/T DSPADDINBUF .69PMR/T DSPCLOSE.69PMR/T DSPDACSTART.69PMR/T DSPINPUT .70PMR/T DSPREADBYTE .70PMR/T DSPSENDBUF .71PMR/T DSPSENDBYTE.71PMR/T DSPSTART.71PMR/T EXTOSC.72PMR/T FREQ.72PMR/T FREQUENCY .73PMR AFC.73PMR AGC .73PMR ATTEN .74PMR AUDIOSRC .75PMR BALANCE .75PMR BANDWIDTH .76PMR BLOCKSCAN.76PMR DEMODSIGNAL.77PMR IFGAIN .77PMR IFSHIFT.78PMR IFSPECTRUM .78PMR LOUD.78PMR MODE .79PMR MODEXDATA.80PMR MONO.80PMR MUTE.81PMR NOISEBLANKER .81PMR NOISEREDUCT.81PMR NOTCH .82PMR PREAMP .82PMR RFINPUT .83PMR SQUELCH.834

WiNRADiO Software Developer’s Guide - The Plug-in Interface (XRS v1.2)PMR STOPSCAN .84PMR TRACKID.84PMR TRUNKFREQ .85PMR VOLUME .85PMT ANTIVOX .85PMT AUDIOPROC.86PMT MODE .86PMT MODSRC.88PMT RFPOWER .88PMT SELCALL.89PMT TX .90PMT XMTCTL.90XRS NOTIFICATIONS .92PN CAPABILITIES .92PN CLOSE .92PN DISABLED.92PN MEMBANK .93PN MEMCHANGE.93PN MEMFILE .93PN MEMFOLDER .93PN MEMRECALL .94PN MINIMIZED.94PN PLUGINSTARTED.94PN PLUGINSTOPPED .95PN POWER .95PN VISIBLE .95PNR/T AUDIOFILTER .95PNR/T DSP .96PNR/T DSPINBUFFULL .97PNR/T DSPINPUT .97PNR/T DSPREQREAD.97PNR/T DSPREQSEND.98PNR/T DSPREQUEST .98PNR/T DSPSENDBUFDONE .98PNR/T EXTOSC .98PNR/T FREQUENCY.99PNR AFC.99PNR AGC .99PNR ATTEN .100PNR AUDIOSRC.100PNR BALANCE.101PNR BANDWIDTH .

XRS standard is designed from the ground up to provide a flexible platform for development of software suitable for a wide variety of radio applications. To provide the opportunity for radio device manufacturers to take advantage of existing and future XRS applications. By licensing the XRS server technology for use in their products, other .