Class

HitakiSndFireface

Description [src]

class Hitaki.SndFireface : GObject.Object {
  parent_instance: GObject
}

A GObject-derived object for sound unit of RME Fireface series. The HitakiSndFireface is object class derived from GObject for sound unit of RME Fireface series supported by ALSA fireface driver (snd-fireface).

For Fireface 400, the object class implements HitakiTimestampedQuadletNotification interface to dispatch event of knob control. The message parameter of event includes unsigned 32 bit integer value with encoded data. The kind of data can be detected by below flags:

  • 0x00000100: MIDI message byte received in physical MIDI port 0
  • 0x01000000: MIDI message byte received in physical MIDI port 1
  • 0x04000000: signal level of channel

When it is for MIDI port 0, the value includes the message byte masked by 0x000000ff. When it is for MIDI port 1, the value includes the message byte masked by 0x00ff0000.

When it is for the signal level, the value includes paired channel position masked by 0xf0000000.

  • 0x00000000: Microphone input 0/1
  • 0x10000000: Line input 0/1
  • 0x20000000: Line output 0/1
  • 0x30000000: Line output 2/3
  • 0x40000000: Line output 4/5
  • 0x50000000: Headphone output 0/1
  • 0x60000000: S/PDIF output 0/1
  • 0x70000000: ADAT output 0/1
  • 0x80000000: ADAT output 2/3
  • 0x90000000: ADAT output 4/5
  • 0xa0000000: ADAT output 6/7

When the value includes flag of 0x02000000, the value includes signal level for both of channels in the pair. Unless, when the value includes flag of 0x08000000, the signal level is just for right channel in the pair. When both flags are not found, the signal level is just for left channel in the pair.

The value includes signal level masked by 0x00fffc00. The range of signal level differs depending on channels. For signal level of microphone input:

  • 0x00000000: zero
  • 0x00002800: +10.0 dB
  • 0x00002c00: +11.0 dB
  • 0x00003000: +12.0 dB
  • 0x0000fc00: +63.0 dB:
  • 0x00010000: +64.0 dB:
  • 0x00010400: +65.0 dB:

For signal level of line input:

  • 0x00000000: zero
  • 0x00000400: +0.5 dB
  • 0x00000800: +1.0 dB
  • 0x00000c00: +1.5 dB
  • 0x00008800: +17.0 dB:
  • 0x000008c0: +17.5 dB:
  • 0x00000900: +18.0 dB:

For signal level of any type of output:

  • 0x0000fc00: -infinite
  • 0x0000f800: -58.0 dB
  • 0x0000f400: -56.0 dB
  • 0x0000f000: -54.0 dB
  • 0x0000ec00: -53.0 dB
  • 0x0000e800: -52.0 dB
  • 0x00001c00: -1.0 dB
  • 0x00001800: 0.0 dB
  • 0x00001400: 1.0 dB
  • 0x00000800: +4.0 dB
  • 0x00000400: +5.0 dB
  • 0x00000000: +6.0 dB.

Ancestors

Constructors

hitaki_snd_fireface_new

Instantiate HitakiSndFireface object and return the instance.

Instance methods

Methods inherited from GObject (43)

Please see GObject for a full list of methods.

Methods inherited from HitakiAlsaFirewire (4)
hitaki_alsa_firewire_create_source

Allocate GSource to handle events from ALSA HwDep character device.

hitaki_alsa_firewire_lock

Lock kernel driver bound to the associated ALSA HwDep character device so that it is prohibited to start packet streaming.

hitaki_alsa_firewire_open

Open the special file for ALSA HwDep character device.

hitaki_alsa_firewire_unlock

Unlock kernel driver bound to the associated ALSA HwDep character device so that it can start packet streaming.

Properties

Properties inherited from HitakiAlsaFirewire (6)
Hitaki.AlsaFirewire:card-id

The numeric identifier for sound card.

Hitaki.AlsaFirewire:guid

Global unique identifier for the node in IEEE 1394 bus.

Hitaki.AlsaFirewire:is-disconnected

Whether the sound card is unavailable. It becomes FALSE when the sound card is removed or driver is unbound to it. Then the owner of this object should call g_object_unref() as quickly as possible to release ALSA hwdep character device.

Hitaki.AlsaFirewire:is-locked

Whether the associated unit is locked or not to start packet streaming.

Hitaki.AlsaFirewire:node-device

The name of node device in Linux FireWire subsystem which owns the unit; e.g. fw1.

Hitaki.AlsaFirewire:unit-type

The type of sound unit.

Signals

Signals inherited from GObject (1)
GObject.Object::notify

The notify signal is emitted on an object when one of its properties has its value set through g_object_set_property(), g_object_set(), et al.

Signals inherited from HitakiTimestampedQuadletNotification (1)
Hitaki.TimestampedQuadletNotification::notified-at

Emitted when the target unit transfers notification.

Class structure

struct HitakiSndFirefaceClass {
  GObjectClass parent_class;
  
}
Class members
parent_class
GObjectClass
  No description available.