PK aH^W W lib_src/README.rstSample Rate Conversion Library
==============================
.. |i2s| replace:: I |-| :sup:`2` |-| S
.. |i2c| replace:: I |-| :sup:`2` |-| C
.. rheader::
Sample Rate Conversion Library |version|
Overview
--------
The XMOS Sample Rate Conversion (SRC) library provides both synchronous and asynchronous audio sample rate conversion functions for use on xCORE-200 multicore micro-controllers.
In systems where the rate change is exactly equal to the ratio of nominal rates, synchronous sample rate conversion (SSRC) provides efficient and high performance rate conversion. Where the input and output rates are not locked by a common clock or clocked by an exact rational frequency ratio, the Asynchronous Sample Rate Converter (ASRC) provides a way of streaming high quality audio between the two different clock domains, at the cost of higher processing resource usage. ASRC can ease interfacing in cases where the are multiple digital audio inputs or allow cost saving by removing the need for physical clock recovery using a PLL.
Features
........
* Conversion between 44.1, 48, 88.2, 96, 176.4 and 192KHz input and output sample rates
* 32 bit PCM input and output data in Q1.31 signed format
* Optional output dithering to 24 bit using Triangular Probability Density Function (TPDF)
* Optimized for xCORE-200 instruction set with dual-issue
* Block based processing - Minimum 4 samples input per call, must be power of 2
* Up to 10000 ppm sample rate ratio deviation from nominal rate (ASRC only)
* Very high quality - SNR greater than 135db (ASRC) or 140db (SSRC), with THD of less than 0.0001% (reference 1KHz)
* Configurable number of audio channels per SRC instance
* Reentrant library permitting multiple instances with differing configurations and channel count
* No external components (PLL or memory) required
Components
..........
* Synchronous Sample Rate Converter function
* Asynchronous Sample Rate Converter function
Software version and dependencies
.................................
.. libdeps::
Related application notes
.........................
The following application notes use this library:
* AN00230 - [Adding Synchronous Sample Rate Conversion to the USB Audio reference design]
* AN00231 - [SPDIF receive to |i2s| output using Asynchronous Sample Rate Conversion]
|newpage|
Typical Resource Usage
......................
.. resusage::
* - configuration: SSRC
- target: XCORE-200-EXPLORER
- globals: int in_buff[4]; int out_buff[20]; ssrc_state_t sSSRCState[2]; int iSSRCStack[2][32]; ssrc_ctrl_t sSSRCCtrl[2];
- ports: 0
- locals:
- flags:
- pins: 0
- fn: unsafe{ssrc_init(0, 0, sSSRCCtrl, 2, 4, 0);ssrc_process(in_buff, out_buff, sSSRCCtrl);}
The SSRC algorithm runs a series of cascaded FIR filters to perform the rate conversion. This includes interpolation, decimation and bandwidth limiting filters with a final polyphase FIR filter. The last stage supports the rational rate change of 147:160 or 160:147 allowing conversion between 44.1KHz family of sample rates to the 48KHz family of sample rates.
.. tip::
The below table shows the worst case MHz consumption at a given sample rate using the minimum block size of 4 input samples with dithering disabled. The MHz requirement can be reduced by around 8-12%, depending on sample rate, by increasing the input block size to 16. It is not usefully reduced by increasing block size beyond 16.
.. list-table:: SSRC Processor Usage per Channel (MHz)
:header-rows: 1
* -
- Output sample rate
-
-
-
-
-
* - Input sample rate
- 44.1KHz
- 48KHz
- 88.2KHz
- 96KHz
- 176.4KHz
- 192KHz
* - 44.1KHz
- 1MHz
- 23MHz
- 16MHz
- 26MHz
- 26MHz
- 46MHz
* - 48KHz
- 26MHz
- 1MHz
- 28MHz
- 17MHz
- 48MHz
- 29MHz
* - 88.2KHz
- 18MHz
- 43MHz
- 1MHz
- 46MHz
- 32MHz
- 53MHz
* - 96KHz
- 48MHz
- 20MHz
- 52MHz
- 2MHz
- 56MHz
- 35MHz
* - 176.4KHz
- 33MHz
- 61MHz
- 37MHz
- 67MHz
- 3MHz
- 76MHz
* - 192KHz
- 66MHz
- 36MHz
- 70MHz
- 40MHz
- 80MHz
- 4MHz
.. resusage::
* - configuration: ASRC
- target: XCORE-200-EXPLORER
- globals: int in_buff[4]; int out_buff[20]; asrc_ctrl_t sASRCCtrl[2]; asrc_adfir_coefs_t SiASRCADFIRCoefs; asrc_state_t sASRCState[2]; int asrc_stack[2][32];
- locals:
- ports: 0
- flags:
- pins: 0
- fn: unsafe{asrc_init(0, 0, sASRCCtrl, 2, 4, 0); asrc_process(in_buff, out_buff, 0, sASRCCtrl);}
The ASRC algorithm also runs a series of cascaded FIR filters to perform the rate conversion. The final filter is different because it uses adaptive coefficients to handle the varying rate change between the input and the output. The adaptive coefficients must be computed for each output sample period, but can be shared amongst all channels within the ASRC instance. Consequently, the MHz usage of the ASRC is expressed as two tables; the first table enumerates the MHz required for the first channel with adaptive coefficients calculation and the second table specifies the MHz required for filtering of each additional channel processed by the ASRC instance.
.. tip::
The below tables show the worst case MHz consumption per sample, using the minimum block size of 4 input samples. The MHz requirement can be reduced by around 8-12% by increasing the input block size to 16.
.. tip::
Typically you will need to allow for performance headroom for buffering (especially if the system is sample orientated rather than block orientated) and inter-task communication. Please refer to the application notes for practical examples of usage.
.. list-table:: ASRC Processor Usage (MHz) for the First Channel in the ASRC Instance
:header-rows: 1
* -
- Output sample rate
-
-
-
-
-
* - Input sample rate
- 44.1KHz
- 48KHz
- 88.2KHz
- 96KHz
- 176.4KHz
- 192KHz
* - 44.1KHz
- 29MHz
- 30MHz
- 40MHz
- 42MHz
- 62MHz
- 66MHz
* - 48KHz
- 33MHz
- 32MHz
- 42MHz
- 43MHz
- 63MHz
- 66MHz
* - 88.2KHz
- 47MHz
- 50MHz
- 58MHz
- 61MHz
- 80MHz
- 85MHz
* - 96KHz
- 55MHz
- 51MHz
- 67MHz
- 64MHz
- 84MHz
- 87MHz
* - 176.4KHz
- 60MHz
- 66MHz
- 76MHz
- 81MHz
- 105MHz
- 106MHz
* - 192KHz
- 69MHz
- 66MHz
- 82MHz
- 82MHz
- 109MHz
- 115MHz
.. caution:: Configurations requiring more than 100MHz cannot currently be run in real time on a single core. The performance limit for a single core on a 500MHz xCORE-200 device is 100MHz (500/5). Further optimization of the library, including assembler optimization and pipelining of the adaptive filter generation and FIR filter stages, is feasible to achieve higher sample rate operation within the constraints of a 100MHz logical core.
.. list-table:: ASRC Processor Usage (MHz) for Subsequent Channels in the ASRC Instance
:header-rows: 1
* -
- Output sample rate
-
-
-
-
-
* - Input sample rate
- 44.1KHz
- 48KHz
- 88.2KHz
- 96KHz
- 176.4KHz
- 192KHz
* - 44.1KHz
- 28MHz
- 28MHz
- 32MHz
- 30MHz
- 40MHz
- 40MHz
* - 48KHz
- 39MHz
- 31MHz
- 33MHz
- 36MHz
- 40MHz
- 45MHz
* - 88.2KHz
- 51MHz
- 49MHz
- 57MHz
- 55MHz
- 65MHz
- 60MHz
* - 96KHz
- 51MHz
- 56MHz
- 57MHz
- 62MHz
- 66MHz
- 71MHz
* - 176.4KHz
- 60MHz
- 66MHz
- 76MHz
- 79MHz
- 92MHz
- 91MHz
* - 192KHz
- 69MHz
- 66MHz
- 76MHz
- 82MHz
- 90MHz
- 100MHz
PK aHS% lib_src/CHANGELOG.rstlib_src change log
==================
1.0.0
-----
* Initial version
* Changes to dependencies:
- lib_logging: Added dependency 2.0.1
- lib_xassert: Added dependency 2.0.1
PK aHnQ* Q* lib_src/LICENSE.txtSoftware Release License Agreement
Copyright (c) 2016, XMOS, All rights reserved.
BY ACCESSING, USING, INSTALLING OR DOWNLOADING THE XMOS SOFTWARE, YOU AGREE TO BE BOUND BY THE FOLLOWING TERMS. IF YOU DO NOT AGREE TO THESE, DO NOT ATTEMPT TO DOWNLOAD, ACCESS OR USE THE XMOS Software.
Parties:
(1) XMOS Limited, incorporated and registered in England and Wales with company number 5494985 whose registered office is 107 Cheapside, London, EC2V 6DN (XMOS).
(2) An individual or legal entity exercising permissions granted by this License (Customer).
If you are entering into this Agreement on behalf of another legal entity such as a company, partnership, university, college etc. (for example, as an employee, student or consultant), you warrant that you have authority to bind that entity.
1. Definitions
"License" means this Software License and any schedules or annexes to it.
"License Fee" means the fee for the XMOS Software as detailed in any schedules or annexes to this Software License
"Licensee Modifications" means all developments and modifications of the XMOS Software developed independently by the Customer.
"XMOS Modifications" means all developments and modifications of the XMOS Software developed or co-developed by XMOS.
"XMOS Hardware" means any XMOS hardware devices supplied by XMOS from time to time and/or the particular XMOS devices detailed in any schedules or annexes to this Software License.
"XMOS Software" comprises the XMOS owned circuit designs, schematics, source code, object code, reference designs, (including related programmer comments and documentation, if any), error corrections, improvements, modifications (including XMOS Modifications) and updates.
The headings in this License do not affect its interpretation. Save where the context otherwise requires, references to clauses and schedules are to clauses and schedules of this License.
Unless the context otherwise requires:
- references to XMOS and the Customer include their permitted successors and assigns;
- references to statutory provisions include those statutory provisions as amended or re-enacted; and
- references to any gender include all genders.
Words in the singular include the plural and in the plural include the singular.
2. License
XMOS grants the Customer a non-exclusive license to use, develop, modify and distribute the XMOS Software with, or for the purpose of being used with, XMOS Hardware.
Open Source Software (OSS) must be used and dealt with in accordance with any license terms under which OSS is distributed.
3. Consideration
In consideration of the mutual obligations contained in this License, the parties agree to its terms.
4. Term
Subject to clause 12 below, this License shall be perpetual.
5. Restrictions on Use
The Customer will adhere to all applicable import and export laws and regulations of the country in which it resides and of the United States and United Kingdom, without limitation. The Customer agrees that it is its responsibility to obtain copies of and to familiarise itself fully with these laws and regulations to avoid violation.
6. Modifications
The Customer will own all intellectual property rights in the Licensee Modifications but will undertake to provide XMOS with any fixes made to correct any bugs found in the XMOS Software on a non-exclusive, perpetual and royalty free license basis.
XMOS will own all intellectual property rights in the XMOS Modifications.
The Customer may only use the Licensee Modifications and XMOS Modifications on, or in relation to, XMOS Hardware.
7. Support
Support of the XMOS Software may be provided by XMOS pursuant to a separate support agreement.
8. Warranty and Disclaimer
The XMOS Software is provided "AS IS" without a warranty of any kind. XMOS and its licensors' entire liability and Customer's exclusive remedy under this warranty to be determined in XMOS's sole and absolute discretion, will be either (a) the corrections of defects in media or replacement of the media, or (b) the refund of the license fee paid (if any).
Whilst XMOS gives the Customer the ability to load their own software and applications onto XMOS devices, the security of such software and applications when on the XMOS devices is the Customer's own responsibility and any breach of security shall not be deemed a defect or failure of the hardware. XMOS shall have no liability whatsoever in relation to any costs, damages or other losses Customer may incur as a result of any breaches of security in relation to your software or applications.
XMOS AND ITS LICENSORS DISCLAIM ALL OTHER WARRANTIES, EXPRESS OR IMPLIED, INCLUDING ANY IMPLIED WARRANTY OF MERCHANTABILITY/ SATISFACTORY QUALITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT EXCEPT TO THE EXTENT THAT THESE DISCLAIMERS ARE HELD TO BE LEGALLY INVALID UNDER APPLICABLE LAW.
9. High Risk Activities
The XMOS Software is not designed or intended for use in conjunction with on-line control equipment in hazardous environments requiring fail-safe performance, including without limitation the operation of nuclear facilities, aircraft navigation or communication systems, air traffic control, life support machines, or weapons systems (collectively "High Risk Activities") in which the failure of the XMOS Software could lead directly to death, personal injury, or severe physical or environmental damage. XMOS and its licensors specifically disclaim any express or implied warranties relating to use of the XMOS Software in connection with High Risk Activities.
10. Liability
TO THE EXTENT NOT PROHIBITED BY APPLICABLE LAW, NEITHER XMOS NOR ITS LICENSORS SHALL BE LIABLE FOR ANY LOST REVENUE, BUSINESS, PROFIT, CONTRACTS OR DATA, ADMINISTRATIVE OR OVERHEAD EXPENSES, OR FOR SPECIAL, INDIRECT, CONSEQUENTIAL, INCIDENTAL OR PUNITIVE DAMAGES HOWEVER CAUSED AND REGARDLESS OF THEORY OF LIABILITY ARISING OUT OF THIS LICENSE, EVEN IF XMOS HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. In no event shall XMOS's liability to the Customer whether in contract, tort (including negligence), or otherwise exceed the License Fee.
Customer agrees to indemnify, hold harmless, and defend XMOS and its licensors from and against any claims or lawsuits, including attorneys' fees and any other liabilities, demands, proceedings, damages, losses, costs, expenses fines and charges which are made or brought against or incurred by XMOS as a result of your use or distribution of the Licensee Modifications or your use or distribution of XMOS Software, or any development of it, other than in accordance with the terms of this License.
11. Ownership
The copyrights and all other intellectual and industrial property rights for the protection of information with respect to the XMOS Software (including the methods and techniques on which they are based) are retained by XMOS and/or its licensors. Nothing in this Agreement serves to transfer such rights. Customer may not sell, mortgage, underlet, sublease, sublicense, lend or transfer possession of the XMOS Software in any way whatsoever to any third party who is not bound by this Agreement.
12. Termination
Either party may terminate this License at any time on written notice to the other if the other:
- is in material or persistent breach of any of the terms of this License and either that breach is incapable of remedy, or the other party fails to remedy that breach within 30 days after receiving written notice requiring it to remedy that breach; or
- is unable to pay its debts (within the meaning of section 123 of the Insolvency Act 1986), or becomes insolvent, or is subject to an order or a resolution for its liquidation, administration, winding-up or dissolution (otherwise than for the purposes of a solvent amalgamation or reconstruction), or has an administrative or other receiver, manager, trustee, liquidator, administrator or similar officer appointed over all or any substantial part of its assets, or enters into or proposes any composition or arrangement with its creditors generally, or is subject to any analogous event or proceeding in any applicable jurisdiction.
Termination by either party in accordance with the rights contained in clause 12 shall be without prejudice to any other rights or remedies of that party accrued prior to termination.
On termination for any reason:
- all rights granted to the Customer under this License shall cease;
- the Customer shall cease all activities authorised by this License;
- the Customer shall immediately pay any sums due to XMOS under this License; and
- the Customer shall immediately destroy or return to the XMOS (at the XMOS's option) all copies of the XMOS Software then in its possession, custody or control and, in the case of destruction, certify to XMOS that it has done so.
Clauses 5, 8, 9, 10 and 11 shall survive any effective termination of this Agreement.
13. Third party rights
No term of this License is intended to confer a benefit on, or to be enforceable by, any person who is not a party to this license.
14. Confidentiality and publicity
Each party shall, during the term of this License and thereafter, keep confidential all, and shall not use for its own purposes nor without the prior written consent of the other disclose to any third party any, information of a confidential nature (including, without limitation, trade secrets and information of commercial value) which may become known to such party from the other party and which relates to the other party, unless such information is public knowledge or already known to such party at the time of disclosure, or subsequently becomes public knowledge other than by breach of this license, or subsequently comes lawfully into the possession of such party from a third party.
The terms of this license are confidential and may not be disclosed by the Customer without the prior written consent of XMOS.
The provisions of clause 14 shall remain in full force and effect notwithstanding termination of this license for any reason.
15. Entire agreement
This License and the documents annexed as appendices to this License or otherwise referred to herein contain the whole agreement between the parties relating to the subject matter hereof and supersede all prior agreements, arrangements and understandings between the parties relating to that subject matter.
16. Assignment
The Customer shall not assign this License or any of the rights granted under it without XMOS's prior written consent.
17. Governing law and jurisdiction
This License shall be governed by and construed in accordance with English law and each party hereby submits to the non-exclusive jurisdiction of the English courts.
This License has been entered into on the date stated at the beginning of it.
Schedule
XMOS Sample Rate Conversion Library software
PK aHy$v v lib_src/lib_src/.xproject
lib_src
1.0.0
PK aHN80 lib_src/lib_src/.project
lib_src
com.xmos.cdt.core.LegacyProjectCheckerBuilder
com.xmos.cdt.core.ProjectInfoSyncBuilder
com.xmos.cdt.core.ModulePathBuilder
org.eclipse.cdt.managedbuilder.core.genmakebuilder
clean,full,incremental,
org.eclipse.cdt.managedbuilder.core.ScannerConfigBuilder
full,incremental,
org.eclipse.cdt.core.cnature
org.eclipse.cdt.managedbuilder.core.managedBuildNature
org.eclipse.cdt.managedbuilder.core.ScannerConfigNature
com.xmos.cdt.core.XdeProjectNature
PK aHWMǦ ! lib_src/lib_src/module_build_infoOPTIONAL_HEADERS += src_conf.h
MODULE_XCC_FLAGS = $(XCC_FLAGS) -Wno-missing-braces -O3
DEPENDENT_MODULES = lib_logging(>=2.0.0) lib_xassert(>=2.0.0)
VERSION = 1.0.0
PK aH
~ lib_src/lib_src/.makefileall:
@echo "** Module only - only builds as part of application **"
clean:
@echo "** Module only - only builds as part of application **"
PK aHnQ* Q* lib_src/lib_src/LICENSE.txtSoftware Release License Agreement
Copyright (c) 2016, XMOS, All rights reserved.
BY ACCESSING, USING, INSTALLING OR DOWNLOADING THE XMOS SOFTWARE, YOU AGREE TO BE BOUND BY THE FOLLOWING TERMS. IF YOU DO NOT AGREE TO THESE, DO NOT ATTEMPT TO DOWNLOAD, ACCESS OR USE THE XMOS Software.
Parties:
(1) XMOS Limited, incorporated and registered in England and Wales with company number 5494985 whose registered office is 107 Cheapside, London, EC2V 6DN (XMOS).
(2) An individual or legal entity exercising permissions granted by this License (Customer).
If you are entering into this Agreement on behalf of another legal entity such as a company, partnership, university, college etc. (for example, as an employee, student or consultant), you warrant that you have authority to bind that entity.
1. Definitions
"License" means this Software License and any schedules or annexes to it.
"License Fee" means the fee for the XMOS Software as detailed in any schedules or annexes to this Software License
"Licensee Modifications" means all developments and modifications of the XMOS Software developed independently by the Customer.
"XMOS Modifications" means all developments and modifications of the XMOS Software developed or co-developed by XMOS.
"XMOS Hardware" means any XMOS hardware devices supplied by XMOS from time to time and/or the particular XMOS devices detailed in any schedules or annexes to this Software License.
"XMOS Software" comprises the XMOS owned circuit designs, schematics, source code, object code, reference designs, (including related programmer comments and documentation, if any), error corrections, improvements, modifications (including XMOS Modifications) and updates.
The headings in this License do not affect its interpretation. Save where the context otherwise requires, references to clauses and schedules are to clauses and schedules of this License.
Unless the context otherwise requires:
- references to XMOS and the Customer include their permitted successors and assigns;
- references to statutory provisions include those statutory provisions as amended or re-enacted; and
- references to any gender include all genders.
Words in the singular include the plural and in the plural include the singular.
2. License
XMOS grants the Customer a non-exclusive license to use, develop, modify and distribute the XMOS Software with, or for the purpose of being used with, XMOS Hardware.
Open Source Software (OSS) must be used and dealt with in accordance with any license terms under which OSS is distributed.
3. Consideration
In consideration of the mutual obligations contained in this License, the parties agree to its terms.
4. Term
Subject to clause 12 below, this License shall be perpetual.
5. Restrictions on Use
The Customer will adhere to all applicable import and export laws and regulations of the country in which it resides and of the United States and United Kingdom, without limitation. The Customer agrees that it is its responsibility to obtain copies of and to familiarise itself fully with these laws and regulations to avoid violation.
6. Modifications
The Customer will own all intellectual property rights in the Licensee Modifications but will undertake to provide XMOS with any fixes made to correct any bugs found in the XMOS Software on a non-exclusive, perpetual and royalty free license basis.
XMOS will own all intellectual property rights in the XMOS Modifications.
The Customer may only use the Licensee Modifications and XMOS Modifications on, or in relation to, XMOS Hardware.
7. Support
Support of the XMOS Software may be provided by XMOS pursuant to a separate support agreement.
8. Warranty and Disclaimer
The XMOS Software is provided "AS IS" without a warranty of any kind. XMOS and its licensors' entire liability and Customer's exclusive remedy under this warranty to be determined in XMOS's sole and absolute discretion, will be either (a) the corrections of defects in media or replacement of the media, or (b) the refund of the license fee paid (if any).
Whilst XMOS gives the Customer the ability to load their own software and applications onto XMOS devices, the security of such software and applications when on the XMOS devices is the Customer's own responsibility and any breach of security shall not be deemed a defect or failure of the hardware. XMOS shall have no liability whatsoever in relation to any costs, damages or other losses Customer may incur as a result of any breaches of security in relation to your software or applications.
XMOS AND ITS LICENSORS DISCLAIM ALL OTHER WARRANTIES, EXPRESS OR IMPLIED, INCLUDING ANY IMPLIED WARRANTY OF MERCHANTABILITY/ SATISFACTORY QUALITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-INFRINGEMENT EXCEPT TO THE EXTENT THAT THESE DISCLAIMERS ARE HELD TO BE LEGALLY INVALID UNDER APPLICABLE LAW.
9. High Risk Activities
The XMOS Software is not designed or intended for use in conjunction with on-line control equipment in hazardous environments requiring fail-safe performance, including without limitation the operation of nuclear facilities, aircraft navigation or communication systems, air traffic control, life support machines, or weapons systems (collectively "High Risk Activities") in which the failure of the XMOS Software could lead directly to death, personal injury, or severe physical or environmental damage. XMOS and its licensors specifically disclaim any express or implied warranties relating to use of the XMOS Software in connection with High Risk Activities.
10. Liability
TO THE EXTENT NOT PROHIBITED BY APPLICABLE LAW, NEITHER XMOS NOR ITS LICENSORS SHALL BE LIABLE FOR ANY LOST REVENUE, BUSINESS, PROFIT, CONTRACTS OR DATA, ADMINISTRATIVE OR OVERHEAD EXPENSES, OR FOR SPECIAL, INDIRECT, CONSEQUENTIAL, INCIDENTAL OR PUNITIVE DAMAGES HOWEVER CAUSED AND REGARDLESS OF THEORY OF LIABILITY ARISING OUT OF THIS LICENSE, EVEN IF XMOS HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. In no event shall XMOS's liability to the Customer whether in contract, tort (including negligence), or otherwise exceed the License Fee.
Customer agrees to indemnify, hold harmless, and defend XMOS and its licensors from and against any claims or lawsuits, including attorneys' fees and any other liabilities, demands, proceedings, damages, losses, costs, expenses fines and charges which are made or brought against or incurred by XMOS as a result of your use or distribution of the Licensee Modifications or your use or distribution of XMOS Software, or any development of it, other than in accordance with the terms of this License.
11. Ownership
The copyrights and all other intellectual and industrial property rights for the protection of information with respect to the XMOS Software (including the methods and techniques on which they are based) are retained by XMOS and/or its licensors. Nothing in this Agreement serves to transfer such rights. Customer may not sell, mortgage, underlet, sublease, sublicense, lend or transfer possession of the XMOS Software in any way whatsoever to any third party who is not bound by this Agreement.
12. Termination
Either party may terminate this License at any time on written notice to the other if the other:
- is in material or persistent breach of any of the terms of this License and either that breach is incapable of remedy, or the other party fails to remedy that breach within 30 days after receiving written notice requiring it to remedy that breach; or
- is unable to pay its debts (within the meaning of section 123 of the Insolvency Act 1986), or becomes insolvent, or is subject to an order or a resolution for its liquidation, administration, winding-up or dissolution (otherwise than for the purposes of a solvent amalgamation or reconstruction), or has an administrative or other receiver, manager, trustee, liquidator, administrator or similar officer appointed over all or any substantial part of its assets, or enters into or proposes any composition or arrangement with its creditors generally, or is subject to any analogous event or proceeding in any applicable jurisdiction.
Termination by either party in accordance with the rights contained in clause 12 shall be without prejudice to any other rights or remedies of that party accrued prior to termination.
On termination for any reason:
- all rights granted to the Customer under this License shall cease;
- the Customer shall cease all activities authorised by this License;
- the Customer shall immediately pay any sums due to XMOS under this License; and
- the Customer shall immediately destroy or return to the XMOS (at the XMOS's option) all copies of the XMOS Software then in its possession, custody or control and, in the case of destruction, certify to XMOS that it has done so.
Clauses 5, 8, 9, 10 and 11 shall survive any effective termination of this Agreement.
13. Third party rights
No term of this License is intended to confer a benefit on, or to be enforceable by, any person who is not a party to this license.
14. Confidentiality and publicity
Each party shall, during the term of this License and thereafter, keep confidential all, and shall not use for its own purposes nor without the prior written consent of the other disclose to any third party any, information of a confidential nature (including, without limitation, trade secrets and information of commercial value) which may become known to such party from the other party and which relates to the other party, unless such information is public knowledge or already known to such party at the time of disclosure, or subsequently becomes public knowledge other than by breach of this license, or subsequently comes lawfully into the possession of such party from a third party.
The terms of this license are confidential and may not be disclosed by the Customer without the prior written consent of XMOS.
The provisions of clause 14 shall remain in full force and effect notwithstanding termination of this license for any reason.
15. Entire agreement
This License and the documents annexed as appendices to this License or otherwise referred to herein contain the whole agreement between the parties relating to the subject matter hereof and supersede all prior agreements, arrangements and understandings between the parties relating to that subject matter.
16. Assignment
The Customer shall not assign this License or any of the rights granted under it without XMOS's prior written consent.
17. Governing law and jurisdiction
This License shall be governed by and construed in accordance with English law and each party hereby submits to the non-exclusive jurisdiction of the English courts.
This License has been entered into on the date stated at the beginning of it.
Schedule
XMOS Sample Rate Conversion Library software
PK aH?k4 4 lib_src/lib_src/.cproject
PK aHBk k # lib_src/lib_src/doc/pdf/lib_src.pdf%PDF-1.5
%
1 0 obj
<< /S /GoTo /D (section*.1) >>
endobj
4 0 obj
(Sample Rate Conversion Library)
endobj
5 0 obj
<< /S /GoTo /D (section.1) >>
endobj
8 0 obj
(Usage)
endobj
9 0 obj
<< /S /GoTo /D (subsection.1.1) >>
endobj
12 0 obj
(Initialization)
endobj
13 0 obj
<< /S /GoTo /D (subsection.1.2) >>
endobj
16 0 obj
(Processing)
endobj
17 0 obj
<< /S /GoTo /D (subsection.1.3) >>
endobj
20 0 obj
(Buffer Formats)
endobj
21 0 obj
<< /S /GoTo /D (section.2) >>
endobj
24 0 obj
(SSRC Performance)
endobj
25 0 obj
<< /S /GoTo /D (section.3) >>
endobj
28 0 obj
(ASRC Performance)
endobj
29 0 obj
<< /S /GoTo /D (section.4) >>
endobj
32 0 obj
(SRC Implementation)
endobj
33 0 obj
<< /S /GoTo /D (subsection.4.1) >>
endobj
36 0 obj
(SRC Nominal Rate Changes)
endobj
37 0 obj
<< /S /GoTo /D (subsection.4.2) >>
endobj
40 0 obj
(SSRC Structure)
endobj
41 0 obj
<< /S /GoTo /D (subsection.4.3) >>
endobj
44 0 obj
(ASRC Structure)
endobj
45 0 obj
<< /S /GoTo /D (subsection.4.4) >>
endobj
48 0 obj
(SRC Filter list)
endobj
49 0 obj
<< /S /GoTo /D (section.5) >>
endobj
52 0 obj
(SRC File Structure and Overview)
endobj
53 0 obj
<< /S /GoTo /D (section.6) >>
endobj
56 0 obj
(SSRC API)
endobj
57 0 obj
<< /S /GoTo /D (subsection.6.1) >>
endobj
60 0 obj
(Initialization)
endobj
61 0 obj
<< /S /GoTo /D (subsection.6.2) >>
endobj
64 0 obj
(SSRC Processing)
endobj
65 0 obj
<< /S /GoTo /D (section.7) >>
endobj
68 0 obj
(ASRC API)
endobj
69 0 obj
<< /S /GoTo /D (subsection.7.1) >>
endobj
72 0 obj
(Initialization)
endobj
73 0 obj
<< /S /GoTo /D (subsection.7.2) >>
endobj
76 0 obj
(ASRC Processing)
endobj
77 0 obj
<< /S /GoTo /D (section.A) >>
endobj
80 0 obj
(Known Issues)
endobj
81 0 obj
<< /S /GoTo /D (section.B) >>
endobj
84 0 obj
(lib\137src change log)
endobj
85 0 obj
<< /S /GoTo /D (subsection.B.1) >>
endobj
88 0 obj
(1.0.0)
endobj
89 0 obj
<< /S /GoTo /D [90 0 R /Fit] >>
endobj
93 0 obj <<
/Length 1980
/Filter /FlateDecode
>>
stream
xڵko6{~ZzX:n6״4q
tBiXIt%*;eYvs- p8$=CF?~Ehs/(//~v-MFWGsShuR/h4[8(鎛-FrSWLNUnpAyuY?'LyI>L#i8h lX{4 05>}QhĹǾmƁAK;ҁxi'4Й?Ћxְp5ӃG;0DNzSG
N͕^#|]J
fg`څTF3c^Mug|`e[F
U@G }mej*e^ lkUpױ4 @n^|9v-.k_Y"l+\;fjuT8T)+\4
2-?'t|͘;{3}RTg]Zִ@`2rSy&b'3զՈvW6Ⱦ 1
`5j§83[RB_4B[!hC-%zk>9hY1Ez`p /v:a.>@ZBk˽g
i>ly Zd?+ 2>(5QcDZ\D*\H lXEMBF#s42͈k`.Mc6Z4sZ6JC ЎZ !BYY#-Iu"@a0X Vf+#Ԡ;7[2E:cGb,Fo-Jv,TºfB ;S"W:S2R2}e7{B0^uT&n(W\3SҘfJ
eRU`A3^`0C&0! Im\N=bRBԝr _P"Vl.)JTM7fG&m=ٌĥ-O]=Ao鼬 OdӴcɓi3VVlK~\4Gι$;kBf9t9*My:;HҢxzZ}OwUy{,<=NzU Z̑bЫuoaDAQ@7.D>ǩ2g6Ҵ)9A2|}jljs]eĩDblc}N"묢+Wh`Zw5GYn]MU&҃m+}V?rpEب
t#2ޑo!!27ԟ7dKS=Yv.gey{^ӜTzrBBވjyBbvUX q*F*oK{+6#mn;825|*{v\f
W՝Rp뭪fթB&Nݧf77NZ)VjAU5[eF?(v?gQAc4{%vIeY X_R[PUǂI7=-D_Sր_q S{SDBp]TJ?iŴczי0e#?V\,:_6WM&v[.~В,fzTke>]\;r!š7cH&T@Ap@E>1?|lOp|^V
u"0H菟sEqw}&9bB/ 3`fapꏷۭTƃ> endobj
91 0 obj <<
/Type /XObject
/Subtype /Form
/FormType 1
/PTEX.FileName (/buildslave/swnb/apps/DailyLibs_centos_5_64bit/build/sb/Installs/Linux/External/xdoc/xdoc/texinputs/xmoslogo18pt.pdf)
/PTEX.PageNumber 1
/PTEX.InfoDict 100 0 R
/BBox [0 0 53.8584 15.0234]
/LastModified (D:20120829081646+01'00')
/PieceInfo <<
/Illustrator 101 0 R
>>
/Resources <<
/ColorSpace <<
/CS0 102 0 R
/CS1 103 0 R
/CS2 104 0 R
>>/ExtGState <<
/GS0 105 0 R
>>/Properties <<
/MC0 <<
/Color [ 20224 32768 65535]
/Dimmed false
/Editable true
/Preview true
/Printed true
/Title (Layer 1)
/Visible true
>>
>>>>
/Length 1293
/Filter /FlateDecode
>>
stream
HlWˎ6+el>#OW5)ͬ
;,쮮.9oOxeߎ}۾كhdOƲ琵ǯۭ.1BcSЫd]èX(7g'42]d>oloX4disj'ikzWd7{*2"ð)v ?WNpl=$]$kD6n+"L3-QDGqΎ X~!J7j4#hrD?2T&-Amb{밬ΐ>>6hKHޅS2"^bPCVŲB:3V9EB.,frSFfUԬꡘfApT©㔲r)S}*8tB2RL[k 8vL6v6t]_TZGsei!#Y)MjbNfFⱫ4lLؙQ*Xi;3qMXST`2nM+Isx MۄIƋűfyy)ShX͵u1]0
ĉ)ZY0-PR(+͆ՐO f䫂Laq¦X9(cNpU0I` 5.29)kQox壌->闞mkf 41O<
$21˲K&Щwm D&