20 #ifndef SOUND_HANDLER_AHI_H 21 #define SOUND_HANDLER_AHI_H 28 #include <proto/dos.h> 29 #include <proto/exec.h> 30 #include <proto/ahi.h> 32 #include <devices/ahi.h> 33 #include <exec/memory.h> 35 #include <sys/types.h> 52 struct MsgPort *_port;
54 struct TimeRequest *_timerio;
55 struct TimerIFace *ITimer;
57 struct AHIIFace *IAHI;
58 struct Library *AHIBase;
59 struct MsgPort *AHImp;
60 struct AHIRequest *AHIio;
62 struct AHIRequest *AHIios[2];
71 struct Process *AudioPump;
75 void TimerReset(uint32 microDelay);
85 struct DeathMessage *_dmsg;
86 struct MsgPort *_DMreplyport;
92 void mix(std::int16_t* outSamples, std::int16_t* inSamples,
93 unsigned int nSamples,
float volume);
102 virtual int create_sound(std::unique_ptr<SimpleBuffer>
data, std::unique_ptr<media::SoundInfo> sinfo);
107 unsigned int data_bytes,
108 unsigned int sample_count,
112 virtual void stop_sound(
int sound_handle);
115 virtual void delete_sound(
int sound_handle);
118 virtual void reset();
121 virtual void stop_all_sounds();
124 virtual int get_volume(
int sound_handle);
127 virtual void set_volume(
int sound_handle,
int volume);
134 virtual void pause();
138 virtual void unpause();
141 virtual unsigned int get_duration(
int sound_handle);
144 virtual unsigned int tell(
int sound_handle);
148 void plugInputStream(std::unique_ptr<InputStream> in);
151 void fetchSamples(std::int16_t* to,
unsigned int nSamples);
161 #endif // SOUND_HANDLER_AHI_H Definition: klash_part.cpp:331
Sound mixer.
Definition: sound_handler.h:87
SimpleBuffer data
Definition: LocalConnection_as.cpp:151
Anonymous namespace for callbacks, local functions, event handlers etc.
Definition: dbus_ext.cpp:40
AHI-based sound_handler.
Definition: sound_handler_ahi.h:49
unsigned long StreamBlockId
Identifier of a streaming sound block.
Definition: sound_handler.h:97
Definition: GnashKey.h:159