BASS_ATTRIB_SCANINFO attribute
The scanned info of a channel.
BASS_ChannelSetAttributeEx( DWORD handle, BASS_ATTRIB_SCANINFO, void *scaninfo, DWORD size );
Parameters
handle | The channel handle. |
scaninfo | The scanned info. |
size | The size of the scanned info. |
Remarks
This attribute is the information that is scanned from a file when the BASS_STREAM_PRESCAN flag is used in a BASS_StreamCreateFile call or when the BASS_POS_SCAN flag is used with BASS_ChannelSetPosition. It is supported on MP3/MP2/MP1 files and chained OGG files. It may be supported by add-ons too; see the documentation.The structure of the scanned info may change in future versions, so if the data is stored, be prepared for BASS_ChannelSetAttributeEx to fail when trying to apply it; the file can be scanned again if that happens.
Example
Transfer scanned info from one stream to another stream of the same file.DWORD size=BASS_ChannelGetAttributeEx(stream1, BASS_ATTRIB_SCANINFO, NULL, 0); // get the size void *scaninfo=malloc(size); // allocate a buffer for the data BASS_ChannelGetAttributeEx(stream1, BASS_ATTRIB_SCANINFO, scaninfo, size); // get the data BASS_ChannelSetAttributeEx(stream2, BASS_ATTRIB_SCANINFO, scaninfo, size); // apply it to the other stream free(scaninfo);