Menu

#17 sequencer via pipes

open
nobody
None
HEAD
1
2017-06-10
2016-01-25
No

Hi.

It would be nice if munt could read the
midi data from stdin and output the PCM
sound to stdout. Currently this doesn't seem
to be supported.
The is a simple replacement for the C library
API, which doesn't compile at the moment
AFAIK.

Discussion

  • Serg M

    Serg M - 2017-06-10
     
  • Serg M

    Serg M - 2017-06-10

    This way seems to be a convenient usage for clients who does not require any special features. All the synth engine variables that may be changed through the library API seem to only be configured at the startup by providing a command line options.
    However, this kind of setup should already be possible with mt32emu-qt. It features both OSS MIDI-IN interface (which can be a FIFO) and RAW audio file writer (which can also be a FIFO). Available command-line option -profile allows to specify a customised set of synth engine settings. Although, OSS MIDI handler is currently provided for UNIX-like platforms only.

     
  • Stas Sergeev

    Stas Sergeev - 2017-06-10

    OK, thanks for explanation.
    As the C interface now compiles fine,
    I do no longer need this functionality.
    Still I would note that:
    1. qt frontend is not what I was asking for. I needed a GUI-less mode for this.
    2. OSS midi-in probably stands for OSS sequencer protocol, which is not for the
    raw midi stream. It accepts either midi events in an oss-specific format with
    imestamps, or raw midi bytes, each prepended by OSS-specific byte that indicates
    that the raw midi byte follows. So while it can be used, it would require additional
    data stream mangling.

    Currently I use mt32emu_parse_stream_at() for raw midi stream.

     
  • Serg M

    Serg M - 2017-06-10

    At the moment, mt32emu-qt is not a frontend but a UI-enabled synth application. I'm already considering switching to core/CLI/GUI design for that stuff but it will anyway be based on Qt.

    FYI, OSS MIDI these days implies access to exactly raw MIDI ports bypassing sequencer stuff. The OSS MIDI driver included in mt32emu-qt supports both, though support for old OSS 3 sequencer is very limited.

     

Log in to post a comment.