2 * Copyright (C) 2012 Juho Vähä-Herttua
4 * Permission is hereby granted, free of charge, to any person obtaining
5 * a copy of this software and associated documentation files (the
6 * "Software"), to deal in the Software without restriction, including
7 * without limitation the rights to use, copy, modify, merge, publish,
8 * distribute, sublicense, and/or sell copies of the Software, and to
9 * permit persons to whom the Software is furnished to do so, subject to
10 * the following conditions:
12 * The above copyright notice and this permission notice shall be included
13 * in all copies or substantial portions of the Software.
15 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
16 * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
17 * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
18 * IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
19 * CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
20 * TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
21 * SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
24 #include "raopcallbackhandler.h"
26 RaopCallbackHandler::RaopCallbackHandler(QObject
*parent
) :
31 void RaopCallbackHandler::init(RaopAudioHandler
*callbacks
)
33 m_callbacks
= callbacks
;
36 void RaopCallbackHandler::audioInit(void *session
, int bits
, int channels
, int samplerate
)
38 void **retval
= (void**)session
;
40 *retval
= m_callbacks
->audioInit(bits
, channels
, samplerate
);
44 void RaopCallbackHandler::audioProcess(void *session
, void *buffer
, int buflen
)
47 m_callbacks
->audioProcess(session
, QByteArray((const char *)buffer
, buflen
));
51 void RaopCallbackHandler::audioDestroy(void *session
)
54 m_callbacks
->audioDestroy(session
);
58 void RaopCallbackHandler::audioFlush(void *session
)
61 m_callbacks
->audioFlush(session
);
65 void RaopCallbackHandler::audioSetVolume(void *session
, float volume
)
68 m_callbacks
->audioSetVolume(session
, volume
);
72 void RaopCallbackHandler::audioSetMetadata(void *session
, void *buffer
, int buflen
)
75 m_callbacks
->audioSetMetadata(session
, QByteArray((const char *)buffer
, buflen
));
79 void RaopCallbackHandler::audioSetCoverart(void *session
, void *buffer
, int buflen
)
82 m_callbacks
->audioSetCoverart(session
, QByteArray((const char *)buffer
, buflen
));