foobar2000 SDK
2015-08-03
|
#include <output.h>
Protected Member Functions | |
output_impl () | |
virtual t_size | can_write_samples ()=0 |
virtual void | force_play ()=0 |
virtual t_size | get_latency_samples ()=0 |
virtual void | on_flush ()=0 |
virtual void | on_flush_changing_track () |
void | on_need_reopen () |
virtual void | on_update ()=0 |
virtual void | open (t_samplespec const &p_spec)=0 |
virtual void | pause (bool p_state)=0 |
virtual void | volume_set (double p_val)=0 |
virtual void | write (const audio_chunk &p_data)=0 |
Protected Member Functions inherited from service_base | |
service_base () | |
~service_base () | |
Private Member Functions | |
void | flush () |
void | flush_changing_track () |
double | get_latency () |
void | process_samples (const audio_chunk &p_chunk) |
void | update (bool &p_ready) |
Private Attributes | |
t_samplespec | m_active_spec |
pfc::array_t< audio_sample, pfc::alloc_fast_aggressive > | m_incoming |
t_size | m_incoming_ptr |
t_samplespec | m_incoming_spec |
Additional Inherited Members | |
Public Types inherited from service_base | |
typedef service_base | t_interface |
Public Member Functions inherited from output_v2 | |
virtual void | enable_fading (bool state) |
virtual void | on_track_mark () |
virtual bool | want_track_marks () |
Public Member Functions inherited from service_base | |
template<typename outPtr_t > | |
bool | cast (outPtr_t &outPtr) |
virtual int | service_add_ref ()=0 throw () |
virtual bool | service_query (service_ptr_t< service_base > &p_out, const GUID &p_guid) |
template<class T > | |
bool | service_query_t (service_ptr_t< T > &p_out) |
virtual int | service_release ()=0 throw () |
|
protectedpure virtual |
|
privatevirtual |
Flushes queued audio data. Called after seeking.
Implements output.
Definition at line 52 of file output.cpp.
|
privatevirtual |
Reimplemented from output_v2.
Definition at line 57 of file output.cpp.
|
protectedpure virtual |
Forces playback of queued data. Called when there's no more data to send, to prevent infinite waiting if output implementation starts actually playing after amount of data in internal buffer reaches some level.
Implements output.
|
privatevirtual |
Retrieves amount of audio data queued for playback, in seconds.
Implements output.
Definition at line 82 of file output.cpp.
|
protectedpure virtual |
|
protectedpure virtual |
|
inlineprotectedvirtual |
|
inlineprotected |
Definition at line 204 of file output.h.
|
protectedpure virtual |
|
protectedpure virtual |
|
protectedpure virtual |
Pauses/unpauses playback.
Implements output.
|
privatevirtual |
Sends new samples to the device. Allowed to be called only when update() indicates that the device is ready.
Implements output.
Definition at line 92 of file output.cpp.
|
privatevirtual |
Updates playback; queries whether the device is ready to receive new data.
p_ready | On success, receives value indicating whether the device is ready for next process_samples() call. |
Implements output.
Definition at line 62 of file output.cpp.
|
protectedpure virtual |
Sets playback volume. Volume level in dB. Value of 0 indicates full ("100%") volume, negative values indciate different attenuation levels.
Implements output.
|
protectedpure virtual |
Will never get more input than as returned by can_write_samples().
|
private |
|
private |
|
private |