WildMidi_GetInfo(3) WildMidi Programmer's Manual WildMidi_GetInfo(3)NAMEWildMidi_GetInfo - get information on a midi
LIBRARY
libWildMidi
SYNOPSIS
#include <wildmidi_lib.h>
struct _WM_Info *WildMidi_GetInfo (midi *handle);
DESCRIPTION
Obtains information allowing you to determine song position, current
options, and any copyright information.
handle The identifier obtained from opening a midi file with Wild‐
Midi_Open(3) or WildMidi_OpenBuffer(3)RETURN VALUE
On error returns NULL with an error message displayed to stderr.
Otherwise returns a pointer to a struct containing the information.
struct _WM_Info {
char *copyright;
unsigned long int current_sample;
unsigned long int approx_total_samples;
unsigned long int total_midi_time;
unsigned short int mixer_options;
unsigned long int total_midi_time;
};
copyright
A pointer to a \0 terminated string containing any copyright
MIDI events found while processing the MIDI file handle refers
to. If more than one copyright event was found then each one is
separated by \n
If copyright is NULL then no copyright MIDI events were found.
current_sample
This is the number of stereo samples libWildMidi has processed
for the MIDI file referred to by handle. You can use this value
to determine the current playing time by dividing this value by
the rate given when libWildMidi was initialized by Wild‐
Midi_Init(3).
approx_total_samples
This is the total number of stereo samples libWildMidi expects
to process. This can be used to obtain the total playing time by
dividing this value by the rate given when libWildMidi was ini‐
tialized by WildMidi_Init(3). Also when you divide current_sam‐
ple by this value and multiplying by 100, you have the percent‐
age currently processed.
total_midi_time
This is the total time of MIDI events in 1/1000's of a second.
It differs from approx_total_samples in that it only states the
total time within the MIDI file and does not take into account
the extra bit of time to finish playing sampling smoothly.
mixer_options
WM_MO_LOG_VOLUME
Using curved volume settings instead of linear ones.
WM_MO_ENHANCED_RESAMPLING
The enhanced resampler is active
WM_MO_REVERB
Reverb is being added to the final output.
SEE ALSOWildMidi_GetString(3), WildMidi_Init(3), WildMidi_MasterVolume(3),
WildMidi_Open(3), WildMidi_OpenBuffer(3), WildMidi_SetOption(3), Wild‐
Midi_GetOutput(3), WildMidi_FastSeek(3), WildMidi_Close(3), Wild‐
Midi_Shutdown(3), wildmidi.cfg(5)AUTHOR
Chris Ison <wildcode@users.sf.net> Bret Curtis <psi29a@gmail.com>
COPYRIGHT
Copyright (C) Chris Ison 2001-2010 Copyright (C) Bret Curtis 2013-2014
This file is part of WildMIDI.
WildMIDI is free software: you can redistribute and/or modify the
player under the terms of the GNU General Public License and you can
redistribute and/or modify the library under the terms of the GNU
Lesser General Public License as published by the Free Software Founda‐
tion, either version 3 of the licenses, or(at your option) any later
version.
WildMIDI is distributed in the hope that it will be useful, but WITHOUT
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
and the GNU Lesser General Public License for more details.
You should have received a copy of the GNU General Public License and
the GNU Lesser General Public License along with WildMIDI. If not, see
<http://www.gnu.org/licenses/>.
This manpage is licensed under the Creative Commons Attribution-Share
Alike 3.0 Unported License. To view a copy of this license, visit
http://creativecommons.org/licenses/by-sa/3.0/ or send a letter to Cre‐
ative Commons, 171 Second Street, Suite 300, San Francisco, California,
94105, USA.
27 February 2014 WildMidi_GetInfo(3)