RADLib
RADical C++ application framework
RADMedia.h File Reference

Audio parsing, streaming, device I/O, decoding, and playback APIs. More...

#include <RADCore/RADCore.h>
#include <atomic>
#include <cstdint>
#include <memory>
#include <optional>
#include <string>
#include <vector>
+ Include dependency graph for RADMedia.h:

Go to the source code of this file.

Classes

struct  RADMedia::WavFormat
 PCM/WAV stream format description. More...
 
class  RADMedia::WavFile
 In-memory WAV file representation for smaller files and tests. More...
 
class  RADMedia::WavStreamReader
 Streaming WAV reader that avoids loading the whole file up front. More...
 
struct  RADMedia::AudioSinkDevice
 Output audio device descriptor. More...
 
struct  RADMedia::AudioSourceDevice
 Input audio device descriptor. More...
 
class  RADMedia::AudioDevice
 Static audio device enumeration helpers. More...
 
struct  RADMedia::AudioBuffer
 Float32 interleaved decoded audio buffer. More...
 
struct  RADMedia::MidiNoteEvent
 One scheduled MIDI note event. More...
 
struct  RADMedia::MidiProgramChange
 One scheduled MIDI program change. More...
 
struct  RADMedia::MidiPitchBend
 One scheduled MIDI pitch-bend event. More...
 
struct  RADMedia::MidiClip
 Lightweight MIDI clip for preview rendering and RADBard score/piano-roll playback. More...
 
struct  RADMedia::MusicXmlNoteEvent
 MIDI-like note event for MusicXML score generation. More...
 
struct  RADMedia::MusicXmlHairpinEvent
 Crescendo or decrescendo span for MusicXML score generation. More...
 
struct  RADMedia::MusicXmlRepeatEvent
 Repeat barline span for compact MusicXML score notation. More...
 
struct  RADMedia::MusicXmlRehearsalEvent
 Rehearsal/section mark displayed above a measure. More...
 
struct  RADMedia::MusicXmlScoreOptions
 Options controlling MusicXML score generation. More...
 
class  RADMedia::MusicXml
 MusicXML helper for score export and notation renderers such as Verovio. More...
 
struct  RADMedia::SoundFontInfo
 Discovered SoundFont descriptor. More...
 
struct  RADMedia::SoundFontPreset
 One SoundFont preset/program exposed by a SoundFont file. More...
 
class  RADMedia::SoundFontCatalog
 SoundFont file discovery helpers. This does not load or link a synth engine. More...
 
class  RADMedia::MidiSynthesizer
 
class  RADMedia::AudioDecoder
 Whole-file audio decoder facade. More...
 
class  RADMedia::AudioDecoderStream
 Streaming decoder facade for long audio files. More...
 
class  RADMedia::RADAudioDevice
 ALSA-backed input or output audio device implementing RADIODevice. More...
 
class  RADMedia::AudioInputDevice
 Convenience input-only audio device. More...
 
class  RADMedia::AudioPlayer
 Convenience WAV/audio playback object with sync and async APIs. More...
 

Namespaces

 RADMedia
 

Enumerations

enum class  RADMedia::AudioSampleFormat {
  RADMedia::Unknown , RADMedia::UInt8 , RADMedia::Int16 , RADMedia::Int24 ,
  RADMedia::Int32 , RADMedia::Float32
}
 Sample encodings supported by RADMedia audio paths. More...
 
enum class  RADMedia::AudioDeviceDirection { RADMedia::Input , RADMedia::Output }
 Direction used when opening or enumerating audio devices. More...
 
enum class  RADMedia::MusicXmlStaffMode { RADMedia::Treble , RADMedia::Bass , RADMedia::GrandStaff }
 Staff layout used when generating MusicXML from MIDI-style note events. More...
 
enum class  RADMedia::SoundFontType { RADMedia::Unknown , RADMedia::SF2 , RADMedia::SF3 }
 Known SoundFont file type. More...
 

Detailed Description

Audio parsing, streaming, device I/O, decoding, and playback APIs.