Mercurial > hg > vamp-plugin-sdk
comparison vamp-sdk/hostext/PluginLoader.h @ 92:c94c066a4897
* Add Mark L's PluginBufferingAdapter
author | cannam |
---|---|
date | Fri, 02 Nov 2007 14:54:04 +0000 |
parents | 6683f99107cf |
children | cd72c0473341 |
comparison
equal
deleted
inserted
replaced
91:200a663bace1 | 92:c94c066a4897 |
---|---|
140 * the plugin can handle and the number available in the host. | 140 * the plugin can handle and the number available in the host. |
141 * This enables a host to use plugins that may require the input | 141 * This enables a host to use plugins that may require the input |
142 * to be mixed down to mono, etc., without having to worry about | 142 * to be mixed down to mono, etc., without having to worry about |
143 * doing that itself. | 143 * doing that itself. |
144 * | 144 * |
145 * ADAPT_ALL - Perform all available adaptations, where meaningful. | 145 * ADAPT_BUFFER_SIZE - Wrap the plugin in a PluginBufferingAdapter |
146 * | 146 * permitting the host to provide audio input using any block |
147 * See PluginInputDomainAdapter and PluginChannelAdapter for more | 147 * size, with no overlap, regardless of the plugin's preferred |
148 * details of the classes that the loader may use if these flags | 148 * block size (suitable for hosts that read from non-seekable |
149 * are set. | 149 * streaming media, for example). This adapter introduces some |
150 * run-time overhead and also changes the semantics of the plugin | |
151 * slightly (see the PluginBufferingAdapter header documentation | |
152 * for details). | |
153 * | |
154 * ADAPT_ALL_SAFE - Perform all available adaptations that are | |
155 * meaningful for the plugin and "safe". Currently this means to | |
156 * ADAPT_INPUT_DOMAIN if the plugin wants FrequencyDomain input; | |
157 * ADAPT_CHANNEL_COUNT always; and ADAPT_BUFFER_SIZE only if the | |
158 * input domain is being adapted but the plugin's preferred block | |
159 * size is not a power of two (the PluginInputDomainAdapter cannot | |
160 * handle non-power-of-two block sizes). | |
161 * | |
162 * ADAPT_ALL - Perform all available adaptations that are | |
163 * meaningful for the plugin. | |
164 * | |
165 * See PluginInputDomainAdapter, PluginChannelAdapter and | |
166 * PluginBufferingAdapter for more details of the classes that the | |
167 * loader may use if these flags are set. | |
150 */ | 168 */ |
151 enum AdapterFlags { | 169 enum AdapterFlags { |
170 | |
152 ADAPT_INPUT_DOMAIN = 0x01, | 171 ADAPT_INPUT_DOMAIN = 0x01, |
153 ADAPT_CHANNEL_COUNT = 0x02, | 172 ADAPT_CHANNEL_COUNT = 0x02, |
173 ADAPT_BUFFER_SIZE = 0x04, | |
174 | |
175 ADAPT_ALL_SAFE = 0x80, | |
176 | |
154 ADAPT_ALL = 0xff | 177 ADAPT_ALL = 0xff |
155 }; | 178 }; |
156 | 179 |
157 /** | 180 /** |
158 * Load a Vamp plugin, given its identifying key. If the plugin | 181 * Load a Vamp plugin, given its identifying key. If the plugin |