예제 #1
0
 def ServerInfo(self):
     """
     Info: Gets server and device info
     Args: None
     Returns: dict
     Errors: None
     """
     info = {}
     info["pa_count_devices"] = pyo.pa_count_devices()  # type: ignore
     info["pa_get_default_input"] = pyo.pa_get_default_input(
     )  # type: ignore
     info["pa_get_default_output"] = pyo.pa_get_default_output(
     )  # type: ignore
     info["pm_get_input_devices"] = pyo.pm_get_input_devices(
     )  # type: ignore
     info["pa_count_host_apis"] = pyo.pa_count_host_apis()  # type: ignore
     info["pa_get_default_host_api"] = pyo.pa_get_default_host_api(
     )  # type: ignore
     info["pm_count_devices"] = pyo.pm_count_devices()  # type: ignore
     info["pa_get_input_devices"] = pyo.pa_get_input_devices(
     )  # type: ignore
     info["pm_get_default_input"] = pyo.pm_get_default_input(
     )  # type: ignore
     info["pm_get_output_devices"] = pyo.pm_get_output_devices(
     )  # type: ignore
     info["pm_get_default_output"] = pyo.pm_get_default_output(
     )  # type: ignore
     info["pa_get_devices_infos"] = pyo.pa_get_devices_infos(
     )  # type: ignore
     info["pa_get_version"] = pyo.pa_get_version()  # type: ignore
     info["pa_get_version_text"] = pyo.pa_get_version_text()  # type: ignore
     return info
예제 #2
0
파일: foococo.py 프로젝트: amiguet/foococo
def _find_device(device_index=1):
    for name, index in zip(*pyo.pm_get_input_devices()):
        if name == 'SSCOM MIDI 1':
            device_index -= 1
            if device_index == 0:
                return index
    
    raise RuntimeError("Could not find a SoftStep Controller")
예제 #3
0
파일: app.py 프로젝트: cchurch/beatdown
 def GetMidiInputs(self):
     if not hasattr(self, '_midi_inputs'):
         input_device_names, input_device_indexes = pyo.pm_get_input_devices()
         default_input_index = pyo.pm_get_default_input()
         midi_inputs = {}
         for input_index, input_name in zip(input_device_indexes, input_device_names):
             midi_inputs[input_index] = {
                 'name': input_name,
                 'default': bool(input_index == default_input_index),
             }
         setattr(self, '_midi_inputs', midi_inputs)
     return getattr(self, '_midi_inputs')
예제 #4
0
 def getAvailableAudioMidiDrivers(self):
     inputDriverList, inputDriverIndexes = pa_get_input_devices()
     selectedInputDriver = inputDriverList[inputDriverIndexes.index(
         pa_get_default_input())]
     outputDriverList, outputDriverIndexes = pa_get_output_devices()
     selectedOutputDriver = outputDriverList[outputDriverIndexes.index(
         pa_get_default_output())]
     midiDriverList, midiDriverIndexes = pm_get_input_devices()
     if midiDriverList == []:
         selectedMidiDriver = ""
     else:
         selectedMidiDriver = midiDriverList[midiDriverIndexes.index(
             pm_get_default_input())]
     return inputDriverList, selectedInputDriver, outputDriverList, selectedOutputDriver, midiDriverList, selectedMidiDriver
예제 #5
0
def getAvailableAudioMidiDrivers():
    inputDriverList, inputDriverIndexes = pa_get_input_devices()
    defaultInputDriver = inputDriverList[inputDriverIndexes.index(
        pa_get_default_input())]
    outputDriverList, outputDriverIndexes = pa_get_output_devices()
    defaultOutputDriver = outputDriverList[outputDriverIndexes.index(
        pa_get_default_output())]
    midiDriverList, midiDriverIndexes = pm_get_input_devices()
    if midiDriverList == []:
        defaultMidiDriver = ""
    else:
        defaultMidiDriver = midiDriverList[midiDriverIndexes.index(
            pm_get_default_input())]
    return inputDriverList, inputDriverIndexes, defaultInputDriver, outputDriverList, outputDriverIndexes, \
            defaultOutputDriver, midiDriverList, midiDriverIndexes, defaultMidiDriver
예제 #6
0
def getAvailableAudioMidiDrivers():
    inDefault = pa_get_default_input()
    inDriverList, inDriverIndexes = pa_get_input_devices()
    if inDefault in inDriverIndexes:
        defaultInputDriver = inDriverList[inDriverIndexes.index(inDefault)]
    else:
        defaultInputDriver = ""
    outDriverList, outDriverIndexes = pa_get_output_devices()
    outDefault = pa_get_default_output()
    if outDefault in outDriverIndexes:
        defaultOutputDriver = outDriverList[outDriverIndexes.index(outDefault)]
    else:
        defaultOutputDriver = ""
    midiDefault = pm_get_default_input()
    midiDriverList, midiDriverIndexes = pm_get_input_devices()
    if midiDefault in midiDriverIndexes:
        defaultMidiDriver = midiDriverList[midiDriverIndexes.index(midiDefault)]
    else:
        defaultMidiDriver = ""
    return (inDriverList, inDriverIndexes, defaultInputDriver,
            outDriverList, outDriverIndexes, defaultOutputDriver,
            midiDriverList, midiDriverIndexes, defaultMidiDriver)
예제 #7
0
파일: QLiveLib.py 프로젝트: belangeo/qlive
def getAvailableAudioMidiDrivers():
    inDefault = pa_get_default_input()
    inDriverList, inDriverIndexes = pa_get_input_devices()
    if inDefault in inDriverIndexes:
        defaultInputDriver = inDriverList[inDriverIndexes.index(inDefault)]
    else:
        defaultInputDriver = ""
    outDriverList, outDriverIndexes = pa_get_output_devices()
    outDefault = pa_get_default_output()
    if outDefault in outDriverIndexes:
        defaultOutputDriver = outDriverList[outDriverIndexes.index(outDefault)]
    else:
        defaultOutputDriver = ""
    midiDefault = pm_get_default_input()
    midiDriverList, midiDriverIndexes = pm_get_input_devices()
    if midiDefault in midiDriverIndexes:
        defaultMidiDriver = midiDriverList[midiDriverIndexes.index(midiDefault)]
    else:
        defaultMidiDriver = ""
    return (inDriverList, inDriverIndexes, defaultInputDriver,
            outDriverList, outDriverIndexes, defaultOutputDriver,
            midiDriverList, midiDriverIndexes, defaultMidiDriver)
예제 #8
0
    def _GetDevicesDict(self):
        pa_input = pyo.pa_get_input_devices()
        pa_output = pyo.pa_get_output_devices()
        pm_input = pyo.pm_get_input_devices()
        pm_output = pyo.pm_get_output_devices()

        i = 0
        pa_input_list = []
        for d in pa_input[0]:
            pa_input_list.append([i, d])
            i += 1

        i = 0
        pa_output_list = []
        for d in pa_output[0]:
            pa_output_list.append([i, d])
            i += 1

        i = 0
        pm_input_list = []
        for d in pm_input[0]:
            pm_input_list.append([i, d])
            i += 1

        i = 0
        pm_output_list = []
        for d in pm_output[0]:
            pm_output_list.append([i, d])
            i += 1

        return {
            'a_input': pa_input_list,
            'a_output': pa_output_list,
            'm_input': pm_input_list,
            'm_output': pm_output_list
        }
예제 #9
0
def discover_pm_devices():
    inputs = pyo.pm_get_input_devices()
    return dict(zip(inputs[1], inputs[0]))
예제 #10
0
    ipcSend('error', 'python-pyo module not found')

version = int(pyo.PYO_VERSION.replace('.', ''))

if version < 83:
    ipcSend(
        'error',
        'python-pyo >= 8.3.0 module is required (%s found)' % pyo.PYO_VERSION)

if not pyo.withPortmidi():
    ipcSend('error', 'python-pyo must be built with portmidi support')

# get midi devices

_midiOutputs = pyo.pm_get_output_devices()
_midiInputs = pyo.pm_get_input_devices()

# list midi devices

if 'list' in argv:

    message = []

    message.append('===========')
    message.append('MIDI Inputs')
    message.append('%3i: %s' % (-1, 'null (disabled)'))

    for k in range(len(_midiInputs[0])):

        if _midiInputs[0][k] in pyoHidden:
            continue