Creates a sample stream from an ALAC file on the internet, optionally receiving the downloaded data in a callback.
HSTREAM BASS_ALAC_StreamCreateURL( char *url, DWORD offset, DWORD flags, DOWNLOADPROC *proc, void *user );
url | URL of the file to stream. Should begin with "http://" or "https://" or "ftp://". The URL can be followed by custom HTTP request headers to be sent to the server; the URL and each header should be terminated with a carriage return and line feed ("\r\n"). | ||||||||||||||||||||
offset | File position to start streaming from. This is ignored by some servers, specifically when the length is unknown/undefined. | ||||||||||||||||||||
flags | A combination of these flags.
| ||||||||||||||||||||
proc | Callback function to receive the file as it is downloaded... NULL = no callback. | ||||||||||||||||||||
user | User instance data to pass to the callback function. |
BASS_ERROR_INIT | BASS_Init has not been successfully called. |
BASS_ERROR_NOTAVAIL | The BASS_STREAM_AUTOFREE flag cannot be combined with the BASS_STREAM_DECODE flag. |
BASS_ERROR_NONET | No internet connection could be opened. |
BASS_ERROR_ILLPARAM | url is not a valid URL. |
BASS_ERROR_PROTOCOL | The protocol in url is not supported. |
BASS_ERROR_SSL | SSL/HTTPS support is not available. See BASS_CONFIG_LIBSSL. |
BASS_ERROR_TIMEOUT | The server did not respond to the request within the timeout period, as set with the BASS_CONFIG_NET_TIMEOUT config option. |
BASS_ERROR_FILEOPEN | The file could not be opened. |
BASS_ERROR_FILEFORM | The file's format is not recognised/supported. |
BASS_ERROR_UNSTREAMABLE | The file cannot be streamed because its "mdat" atom comes before its "moov" atom. |
BASS_ERROR_FORMAT | The sample format is not supported. |
BASS_ERROR_SPEAKER | The specified SPEAKER flags are invalid. |
BASS_ERROR_MEM | There is insufficient memory. |
BASS_ERROR_NO3D | Could not initialize 3D support. |
BASS_ERROR_UNKNOWN | Some other mystery problem! |
In order to stream an ALAC file, its "moov" atom/box must come before its "mdat" atom/box.
BASS_ChannelGetInfo, BASS_ChannelGetLength, BASS_ChannelGetTags, BASS_ChannelPlay, BASS_ChannelSetAttribute, BASS_ChannelSetDSP, BASS_ChannelSetFX, BASS_StreamFree, BASS_StreamGetFilePosition, DOWNLOADPROC callback, BASS_CONFIG_NET_AGENT, BASS_CONFIG_NET_BUFFER, BASS_CONFIG_NET_PREBUF, BASS_CONFIG_NET_PROXY, BASS_CONFIG_NET_TIMEOUT