Date: prev next · Thread: first prev next last
2017 Archives by date, by thread · List index


Hi anne-ology,

I think my subject line was misleading.  My USB device is a musical
keyboard rather than an external HD.

I inherited the keyboard from my step son.  It happened to be a MIDI
keyboard.  This turned out to be just what I needed, as it tells me exactly
the note number that has been pressed, (or released), plus any movement in
the nine sliders.  I have set up the sliders to correspond to the draw bars
on a Hammond Organ.  (The draw bars determine which harmonics are used to
modify the sound produced.  A very large number of variations are
possible.)  So armed with the MIDI information, I hope to write a program
that can simulate a Hammond Organ.  Possibly a pipe dream, but time will
tell.

But to get started I need to be able to read the MIDI stream, which at the
moment is coming through a USB port.  Hence my request for any info on code
that might help help me to do that.

Thanks for your reply,

Noel
--
Noel Lodge
lodgemn@gmail.com

On 28 August 2017 at 08:25, anne-ology <laginnis@gmail.com> wrote:

       If your external HD has LO, then there shouldn't be a problem.

       Question: is there some reason you're using .midi rather than
another sound application?;
          .midi programs are outdated, since they supposedly don't have
the actual sound, rather merely text.

       Hoping this helps, and you're able to accomplish whatever you're
planning,




From: Marion & Noel Lodge <lodgemn@gmail.com>
Date: Sun, Aug 27, 2017 at 8:47 AM
Subject: [libreoffice-users] Reading from a USB device.
To: "users@global.libreoffice.org" <users@global.libreoffice.org>



I have a Studio Logic MIDI music keyboard which I have plugged into my PC
via a USB cable.  Windows has automatically installed the appropriate
driver/s.  I am attempting to read the MIDI input from the keyboard as I
want to see if I can use a Macro to modify the sound before it goes to the
speaker.   (Actually I want to try to programmatically mix sine waves like
a Hammond Organ does - it may not be possible, but I'd like to give it a
try!)

I installed a trial version of Device Monitoring Studio,   see
https://www.hhdsoftware.com/device-monitoring-studio    which enables me
to
trap the raw data from the keyboard, and I'm able to identify which keys
are pressed or released, and also the keyboard sliders' movements and
slider positions.  For my purposes, that is all I need to extract from the
MIDI stream.

I then went on the Web to see if I could find examples of Macro code that
would enable my program to emulate what I had been able to do with Device
Monitoring Studio.  It turns out that USB coding is very complex and the
only examples I could find were in C, C++ or Visual Basic, none of which I
have, or have ever worked with.

I then had a look at LibreOffice 5.3 SDK API.  I believe that is the API
that Base uses, and over several years I have developed a number of
databases using macros that make calls to the API. One API service I found
was,  com.sun.star.io.pipe,  which looks as though it might be what I need,
but I don't know if it would work with a USB port, and I could not find any
macro code examples that might point me in the right direction.

So my questions are -
1.  Does anyone know if it is possible to read from a USB port using a
LibreOffice macro utilising the API?  If so can you point me to some
example code (preferably in Basic)?
2.  Failing that, is there a simple application on the market that can read
a USB MIDI stream into a buffer or file?  I think Device Monitoring Studio
can do that, but it is expensive and has far more features than I'll ever
need.

Any help in this regard would be much appreciated

Thanks,

Noel
--
Noel Lodge
lodgemn@gmail.com



-- 
To unsubscribe e-mail to: users+unsubscribe@global.libreoffice.org
Problems? http://www.libreoffice.org/get-help/mailing-lists/how-to-unsubscribe/
Posting guidelines + more: http://wiki.documentfoundation.org/Netiquette
List archive: http://listarchives.libreoffice.org/global/users/
All messages sent to this list will be publicly archived and cannot be deleted

Context


Privacy Policy | Impressum (Legal Info) | Copyright information: Unless otherwise specified, all text and images on this website are licensed under the Creative Commons Attribution-Share Alike 3.0 License. This does not include the source code of LibreOffice, which is licensed under the Mozilla Public License (MPLv2). "LibreOffice" and "The Document Foundation" are registered trademarks of their corresponding registered owners or are in actual use as trademarks in one or more countries. Their respective logos and icons are also subject to international copyright laws. Use thereof is explained in our trademark policy.