SDL3pp
A slim C++ wrapper for SDL3
Loading...
Searching...
No Matches
SDL::AudioDecoder Struct Reference

An opaque object that represents an audio decoder. More...

Inheritance diagram for SDL::AudioDecoder:
[legend]

Public Member Functions

constexpr AudioDecoder (AudioDecoderRaw resource) noexcept
 Constructs from raw AudioDecoder.
constexpr AudioDecoder (AudioDecoder &&other) noexcept
 Move constructor.
 AudioDecoder (StringParam path, PropertiesRef props=nullptr)
 Create a AudioDecoder from a path on the filesystem.
 AudioDecoder (IOStreamRef io, bool closeio=false, PropertiesRef props=nullptr)
 Create a AudioDecoder from an IOStream.
 ~AudioDecoder ()
 Destructor.
constexpr AudioDecoderoperator= (AudioDecoder &&other) noexcept
 Assignment operator.
Public Member Functions inherited from SDL::AudioDecoderBase
void Destroy ()
 Destroy the specified audio decoder.
PropertiesRef GetProperties ()
 Get the properties associated with a AudioDecoder.
void GetFormat (AudioSpec *spec)
 Query the initial audio format of a AudioDecoder.
int DecodeAudio (TargetBytes buffer, const AudioSpec &spec)
 Decode more audio from a AudioDecoder.
constexpr ResourceBaseT ()=default
 Default constructor, creates null/invalid resource.
constexpr ResourceBaseT (RawPointer resource)
 Constructs from resource pointer.
constexpr ResourceBaseT (std::nullptr_t)
 Constructs null/invalid.
constexpr ResourceBaseT (const ResourceBaseT &)=default
 Copy constructor.
constexpr ResourceBaseT (ResourceBaseT &&) noexcept=default
 Move constructor.
Public Member Functions inherited from SDL::ResourceBaseT< AudioDecoderRaw >
constexpr ResourceBaseT ()=default
 Default constructor, creates null/invalid resource.
constexpr operator bool () const
 Converts to bool.
constexpr auto operator<=> (const ResourceBaseT &other) const=default
 Comparison.
constexpr RawConstPointer operator-> () const noexcept
 member access to underlying resource pointer.
constexpr RawPointer get () const noexcept
 Retrieves underlying resource pointer.
constexpr RawPointer release () noexcept
 Retrieves underlying resource pointer and clear this.

Additional Inherited Members

Public Types inherited from SDL::ResourceBaseT< AudioDecoderRaw >
using RawPointer
 The underlying raw pointer type.
using RawConstPointer
 The underlying const raw pointer type.
Protected Member Functions inherited from SDL::ResourceBaseT< AudioDecoderRaw >
constexpr ~ResourceBaseT ()=default
 Destructor.
constexpr ResourceBaseToperator= (const ResourceBaseT &)=default
 Assignment operator.

Detailed Description

An opaque object that represents an audio decoder.

Most apps won't need this, as SDL_mixer's usual interfaces will decode audio as needed. However, if one wants to decode an audio file into a memory buffer without playing it, this interface offers that.

These objects are created with CreateAudioDecoder() or CreateAudioDecoder_IO(), and then can use DecodeAudio() to retrieve the raw PCM data.

Since
This struct is available since SDL_mixer 3.0.0.
Category:
Resource

Constructor & Destructor Documentation

◆ AudioDecoder()

SDL::AudioDecoder::AudioDecoder ( AudioDecoderRaw resource)
inlineexplicitconstexprnoexcept

Constructs from raw AudioDecoder.

Parameters
resourcea AudioDecoderRaw to be wrapped.

This assumes the ownership, call release() if you need to take back.


The documentation for this struct was generated from the following file: