KSPROPERTY_SYNTH_DLS_UNLOAD

The KSPROPERTY_SYNTH_DLS_UNLOAD property unloads a DLS data resource that was previously downloaded.

Usage Summary Table

Get Set Target Property descriptor type Property value type

No

Yes

Pin

KSNODEPROPERTY

HANDLE

 

The property value (operation data) is of type HANDLE and contains the handle of the downloaded DLS data resource that is to be freed. This is the handle that the miniport driver generated to identify the DLS data in a previous KSPROPERTY_SYNTH_DLS_DOWNLOADget-property request.

Return Value

A KSPROPERTY_SYNTH_DLS_UNLOAD property request returns STATUS_SUCCESS to indicate that it has completed successfully. Otherwise, the request returns an appropriate error status code. The following table shows some of the possible error codes.

Status Code Meaning

STATUS_BUFFER_TOO_SMALL

The buffer was too small to complete the operation.

STATUS_UNSUCCESSFUL

The operation did not complete successfully.

STATUS_PENDING

The operation will complete at a later time.

 

Remarks

The miniport driver should unload the DLS data as soon as there are no notes playing that use the DLS data. If the synthesizer is not able to free the memory associated with the DLS data resource at the time of the KSPROPERTY_SYNTH_DLS_UNLOAD set-property request, it can use asynchronous property completion to finish the request at a later time.

If, after unloading the DLS data resource, the synthesizer receives a note-on event that uses the resource, the miniport driver should ignore the event unless a new DLS data resource has been downloaded in the interim.

For more information, see the discussion of the IDirectMusicPort::UnloadInstrument method in the Microsoft Windows SDK documentation.

Requirements

Header

Dmusprop.h (include Dmusprop.h)

See also

KSNODEPROPERTY

KSPROPERTY_SYNTH_DLS_DOWNLOAD

IDirectMusicSynth::Unload

 

 

Send comments about this topic to Microsoft