Gets a list of potential audio output devices,
    See L{libvlc_audio_output_device_set}().
    @note: Not all audio outputs support enumerating devices.
    The audio output may be functional even if the list is empty (NULL).
    @note: The list may not be exhaustive.
    @warning: Some audio output devices in the list might not actually work in
    some circumstances. By default, it is recommended to not specify any
    explicit audio device.
    @param mp: media player.
    @return: A NULL-terminated linked list of potential audio output devices. It must be freed it with L{libvlc_audio_output_device_list_release}().
    @version: LibVLC 2.2.0 or later.

def libvlc_audio_output_device_enum(mp):
    '''Gets a list of potential audio output devices,
    See L{libvlc_audio_output_device_set}().
    @note: Not all audio outputs support enumerating devices.
    The audio output may be functional even if the list is empty (NULL).
    @note: The list may not be exhaustive.
    @warning: Some audio output devices in the list might not actually work in
    some circumstances. By default, it is recommended to not specify any
    explicit audio device.
    @param mp: media player.
    @return: A NULL-terminated linked list of potential audio output devices. It must be freed it with L{libvlc_audio_output_device_list_release}().
    @version: LibVLC 2.2.0 or later.
    '''
    f = _Cfunctions.get('libvlc_audio_output_device_enum', None) or \
        _Cfunction('libvlc_audio_output_device_enum', ((1,),), None,
                    ctypes.POINTER(AudioOutputDevice), MediaPlayer)
    return f(mp)