1 playumidi - play standard midi-file format 0/1 for FreeBSD USB-MIDI device
5 [Introduction]--------------------------------------------------------------
7 "playumidi" is the "SIMPLE" MIDI file player for USB MIDI device on FreeBSD.
8 This software is able to direct control for FreeBSD-umidi device(/dev/umidi*.*)
9 in the "uaudio" driver.
10 Therefore, You don't need to use the "/dev/sequencer" device or the other
11 software when listening the MIDI-file music.
12 And, Support for auto-judge MIDI-file XG/GS/GM mode & auto add the
13 Tone-Generator ReSet code when the ReSet code isn't exist in a MIDI-file.
16 [Requirement]---------------------------------------------------------------
18 "playumid" is able to running following environment.
19 * OS: FreeBSD 12.x / 11.x
20 * Available /dev/umidi*.* driver Only(integrated uaudio driver)
21 (But Can't use /dev/sequencer (old midi driver))
22 * USB-MIDI Device (Support by FreeBSD uaudio driver)
23 * MIDI Tone generator or Compatible Device
24 (e.g. YAMAMA MU1000/2000/128/etc... or Roland SC-88xx)
25 * Depends on libpthread
26 (Usually, libpthread is FreeBSD-default library.
27 So, You don't neet to install this library.)
29 (However, only if you want to play MIDI files with embedded languages
32 Reference Environment:
33 * FreeBSD 12.0-RELEASE
34 * uaudio driver (umidi)
35 * YAMAHA MU1000 Tone Generator (Integrated USB)
38 [Install]-------------------------------------------------------------------
40 Please read INSTALL text.
43 [Usage]---------------------------------------------------------------------
45 playumidi is command-line software.
48 "playumidi [option] file"
52 * Set the USB MIDI device name (Device Number & Port Number is auto-search)
53 (If you want to use the "/dev/umidi0.0" device, you set "-d umidi".
54 Don't set the Device Number & Port Number("0.0") )
55 * playumidi use the midi device that the device directory is
56 "/dev/<device_name>DeviceNumber.Number".
60 * playumidi use the indicate device as the port-0 midi device.
61 * Can't use the "-d"option same time.
62 (When use both "-d" option and "-0/1/2/3"option,
63 playumidi terminate process)
64 * DEFAULT: "umidiX.0" (X is serarched by playumidi from 0 to 15.)
67 * playumidi use the indicate device as the port-1 midi device.
68 * Can't use the "-d"option same time.
69 (When use both "-d" option and "-0/1/2/3"option,
70 playumidi terminate process)
71 * DEFAULT: "umidiX.1" (X is serarched by playumidi from 0 to 15.)
74 * playumidi use the indicate device as the port-2 midi device.
75 * Can't use the "-d"option same time.
76 (When use both "-d" option and "-0/1/2/3"option,
77 playumidi terminate process)
78 * DEFAULT: "umidiX.2" (X is serarched by playumidi from 0 to 15.)
81 * playumidi use the indicate device as the port-3 midi device.
82 * Can't use the "-d"option same time.
83 (When use both "-d" option and "-0/1/2/3"option,
84 playumidi terminate process)
85 * DEFAULT: "umidiX.3" (X is serarched by playumidi from 0 to 15.)
88 * Disable Auto-Insert XG/GS/GM Reset code.
91 * Quiet Mode : Don't output the Meta-Event Text to the terminal stdout.
94 * Verbose Mode : Output the playumidi running status.
97 * Output Command-Line Help Message (Usage)
100 * Setting the Text Language-Code of the MIDI-File MetaEvent TextCode.
101 * This option is enabled only when you build by giving the "-DWITH_ICONV"
103 * The parameter "language_code" of Option -l is abilityto specify a value
104 that is displayed in the command "iconv -l"
105 * DEFAULT: SHIFT_JISX0213 (Japanese)
108 * Setting the Output Text Language-Code for Terminal.
109 * This option is enabled only when you build by giving the "-DWITH_ICONV"
111 * The parameter "language_code" of Option -t is abilityto specify a value
112 that is displayed in the command "iconv -l"
114 The string of the back than the "." of the environment variable LANG.
115 If isn't setting the LANG variable, the default value is "EUC-JP".
117 The following Playing-Operation are available
120 * Stop playing music & Terminate playumidi.
123 [CAUTION!!]-----------------------------------------------------------------
125 playumidi directly opens, writes midi-event data, and closes
126 the /dev/<usb-midi device>.
127 So, it is necessary to grant the R/W privileges(666) to /dev/<usb-midi device>
128 before use playumidi.
129 But, the FreeBSD umidi-driver (integraed by uaudio driver) is not granted
130 permission only of the root-user R/W and others user/group read-only
131 (permission 644) at the default.
133 Therefore, there is a need to grant permissions to R/W prior to use.
134 I will show some examples below.
136 * (Example 1) set permissions every use time
137 Do the following command as the root user.
138 (Of course, can use sudo command also.)
139 "chmod -R 755 /dev/umidi*"
141 * (Example 2) Set permanently R/W permission for usb-midi device. (FreeBSD 8/9 only)
142 Do the following operation as the root user.
143 (Of course, can use sudo command also.)
145 1. Append to /etc/devfs.rules the following two lines.
146 (Making /etc/devfs.rules when there is not existing this file.)
147 ------------------------------------------
149 add path 'umidi*' mode 0666 group wheel
150 ------------------------------------------
152 2. Append to /etc/rc.conf the following three lines.
153 ------------------------------------------
155 ------------------------------------------
157 3. Reboot FreeBSD (shutdown -r now)
160 [AUTHORS]----------------------------------------------------------------
162 Koine Yuusuke (koinec@users.osdn.me)
165 [CHANGELOG]--------------------------------------------------------------
167 Version 0.8.2 - 2019/08/11
168 * Minor Correction for support FreeBSD ports. (Makefile)
169 Version 0.8.1 - 2015/12/23
170 * Support for FreeBSD 10.x (Fix linker program name in src/Makefile)
171 Version 0.8.0 - 2014/02/23
175 [LICENSE]----------------------------------------------------------------
177 playumidi presented by the "FreeBSD License".
179 Please read LICENSE text file.
182 END of README ***********************************************************