Navigation
API > API/Plugins > API/Plugins/HarmonixMidi
Position within a song (midi info)
| Name | FMidiSongPos |
| Type | struct |
| Header File | /Engine/Plugins/Runtime/Harmonix/Source/HarmonixMidi/Public/HarmonixMidi/MidiSongPos.h |
| Include Path | #include "HarmonixMidi/MidiSongPos.h" |
Syntax
USTRUCT (BlueprintType , Meta=(DisplayName="MIDI Song Position"))
struct FMidiSongPos
Variables
Public
| Name | Type | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|---|
| BarsIncludingCountIn | float | Total bars from the beginning of the song. | HarmonixMidi/MidiSongPos.h |
|
| BeatsIncludingCountIn | float | Total beats from the beginning of the song. | HarmonixMidi/MidiSongPos.h |
|
| BeatType | EMusicalBeatType | Whether this beat is a Downbeat (beat 1 of the current bar) or otherwise This value is determined by the authored content Defaults to "Normal" | HarmonixMidi/MidiSongPos.h |
|
| CurrentSongSection | FSongSection | HarmonixMidi/MidiSongPos.h | ||
| SecondsFromBarOne | float | Total seconds from bar 1 beat 1. (negative for count-in and/or pickup bars) | HarmonixMidi/MidiSongPos.h |
|
| SecondsIncludingCountIn | float | Total seconds from the beginning of the musical content (ie. includes all count-in and pickup bars) | HarmonixMidi/MidiSongPos.h |
|
| Tempo | float | Tempo in Quarter Notes Per Minute (BPM) | HarmonixMidi/MidiSongPos.h |
|
| TimeSigDenominator | int32 | Time Signature Numerator (Indicates Subdivision of Bar that counts as 1 beat (4 means Quarter Note = One Beat)) | HarmonixMidi/MidiSongPos.h |
|
| TimeSigNumerator | int32 | Time Signature Numerator (Indicates Number of Beats Per Bar) | HarmonixMidi/MidiSongPos.h |
|
| Timestamp | FMusicTimestamp | The Musical Timestamp: Bar Number and Beat Number within the bar (Bar 1 Beat 1.0f) | HarmonixMidi/MidiSongPos.h |
|
Protected
| Name | Type | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|---|
| IsSet | bool | Has anyone explicitly set this, or is this just the defaults. | HarmonixMidi/MidiSongPos.h |
Functions
Public
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
float GetBeatsPerMinute() |
Tempo converted from Quarter Notes to our Beats, only valid if TimeSigDenominator is set. | HarmonixMidi/MidiSongPos.h | |
float GetBeatsPerSecond() |
HarmonixMidi/MidiSongPos.h | ||
bool IsValid() |
Has this been set by a system yet, or is it in the default state? | HarmonixMidi/MidiSongPos.h | |
void Reset() |
HarmonixMidi/MidiSongPos.h | ||
void SetByTick
(
float Tick, |
Low-level version for midi players / parsers that use the low-level "midi tick system" for advancing song position. | HarmonixMidi/MidiSongPos.h | |
void SetByTime
(
float InElapsedMs, |
HarmonixMidi/MidiSongPos.h | ||
void SetByTime
(
float InElapsedMs, |
This version is for use when song maps are unavailable. | HarmonixMidi/MidiSongPos.h | |
void SetByTimeAndTick
(
float Ms, |
HarmonixMidi/MidiSongPos.h |
Static
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
static FMidiSongPos Lerp
(
const FMidiSongPos& A, |
HarmonixMidi/MidiSongPos.h |
Operators
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
bool operator==
(
const FMidiSongPos& rhs |
HarmonixMidi/MidiSongPos.h | ||
bool operator>
(
const FMidiSongPos& rhs |
HarmonixMidi/MidiSongPos.h | ||
bool operator>=
(
const FMidiSongPos& rhs |
HarmonixMidi/MidiSongPos.h |