• Print

Author Topic: one command to get the most out of PLAY  (Read 249 times)

mn64

  • Full Member
  • ***
  • Posts: 184
one command to get the most out of PLAY
« on: January 01, 2013, 06:58:17 AM »
if there was a command to change the program so PLAY would use a midi instrument, then without the command you'd get the standard "beep beeeeeeeeep beep boop, beep beeeeeeeeeeep, beep boop..." but with the command, you'd get something that sounded a lot better, using midi.

this doesn't mean there wouldn't be a superior set of features for doing full-on midi/fm stuff, but it does mean that PLAY would sound a little less 1981. even hallmark greeting cards have samples now. this isn't a limitation of qb64, it's a limitation of qb45. best of all, if you removed or commented the command, it would fallback to qb45 compatibility.

Galleon

  • Administrator
  • Hero Member
  • *****
  • Posts: 4711
  • QB Forever
    • Email
Re: one command to get the most out of PLAY
« Reply #1 on: January 01, 2013, 04:50:35 PM »
A simple, multiplatform (must work on iOS, Android, etc) library which can push midi data in real-time would be great. Does such a thing exist?
Something old... Something new... Something borrowed... Something blue...

SMcNeill

  • Hero Member
  • *****
  • Posts: 2612
    • Email
Re: one command to get the most out of PLAY
« Reply #2 on: January 01, 2013, 05:07:05 PM »
Quote from: Galleon on January 01, 2013, 04:50:35 PM
A simple, multiplatform (must work on iOS, Android, etc) library which can push midi data in real-time would be great. Does such a thing exist?

Try this link: https://github.com/jdkoftinoff/jdksmidi


J.D. Koftinoff Software, Ltd's C++ MIDI Library Source Code
web: www.jdkoftinoff.com
email: jeffk@jdkoftinoff.com

Released under the GPL (GNU PUBLIC LICENSE): Apr 27, 2004

For details of the GPL please see the file:
       COPYING


Please see the documentation in the subdirectory:
       docs

Supported Operating Systems
          win32,
          win64,
          Mac OS X,
          Linux,
          UcLinux,
          other Unix style systems,
          other embedded systems, 16 bit, 32 bit, 64 bit.
         
Supported Compilers:
          GNU gcc 3.4,4.0 - 4.4
          MSVC 6,7,8,9
          Intel C++         
         
This library was originally a collection of utility functions for MIDI written in C back in 1986 for the Atari ST computer. Since then it has evolved into a fairly powerful C++ MIDI Library including:

    * MIDI parsing
    * MIDI Show Control message creation and handling
    * Standard MIDI File type 0 and type 1 reading and writing
    * Timestamped MIDI message and System Exclusive encapsulation
    * Efficient MIDI Track objects for sequencing
    * MIDI Track objects for editing MIDI events
    * MIDI message process chains
    * Containers for multiple MIDI Tracks with iterators
    * MIDI Sequencer core for sequencing and triggering GUI events
    * MIDI Driver abstractions for I/O and sequencing
    * MIDI Driver implementation for Win32 for I/O and sequencing
    * Tempo calculations
    * MIDI Matrix to count note on's and off's and hold pedals to avoid stuck notes and all-notes-off problems when merging midi streams
    * SMPTE management and calculations
    * MIDI Utilities useful functions

This project now includes copyrighted content from multiple contributors.
Please see the file "AUTHORS" for more information.
http://bit.ly/TextImage -- Library of QB64 code to manipulate text and images, as a BM library.
http://bit.ly/Color32 -- A set of color CONST for use in 32 bit mode, as a BI library.

http://bit.ly/DataToDrive - A set of routines to quickly and easily get data to and from the disk.  BI and BM files

mn64

  • Full Member
  • ***
  • Posts: 184
Re: one command to get the most out of PLAY
« Reply #3 on: January 01, 2013, 09:09:11 PM »
gpl for a library huh?

i don't think that will work for packaging it with qb64. lgpl or a permissive license is better for most libraries.

Galleon

  • Administrator
  • Hero Member
  • *****
  • Posts: 4711
  • QB Forever
    • Email
Re: one command to get the most out of PLAY
« Reply #4 on: January 02, 2013, 03:58:24 PM »
I've got to agree with mennon on this one. GPL would force all people who use the PLAY statement in their code to release their program's source code, jeopardising the opportunity to profit from their work.

But, if we could get this to work with DECLARE LIBRARY then people could do this optionally.
Something old... Something new... Something borrowed... Something blue...

mn64

  • Full Member
  • ***
  • Posts: 184
Re: one command to get the most out of PLAY
« Reply #5 on: January 05, 2013, 07:48:12 AM »
Quote from: Galleon on January 02, 2013, 03:58:24 PM
GPL would force all people who use the PLAY statement in their code to release their program's source code, jeopardising the opportunity to profit from their work.

i don't see it that way. but i do think most (nearly all) libraries should NOT force you to release the source of the programs that use them, a la gpl. that's what lgpl is (primarily?) for.

  • Print