summaryrefslogtreecommitdiffstats
path: root/client/playback_channel.cpp
diff options
context:
space:
mode:
authorAlexander Larsson <alexl@redhat.com>2010-06-18 17:12:31 +0200
committerAlexander Larsson <alexl@redhat.com>2010-06-18 20:27:32 +0200
commit972951dbb78ecb8b9b7549a1302a49a00ad1b44b (patch)
treed12e59ca0ff2f22f96acb66fe8301030b70e7ea0 /client/playback_channel.cpp
parent4ce4364f84a1b458b715f4c5fa83ea20fd26f749 (diff)
downloadspice-972951dbb78ecb8b9b7549a1302a49a00ad1b44b.tar.gz
spice-972951dbb78ecb8b9b7549a1302a49a00ad1b44b.tar.xz
spice-972951dbb78ecb8b9b7549a1302a49a00ad1b44b.zip
Make sound data @as_ptr to avoid copying data
Diffstat (limited to 'client/playback_channel.cpp')
-rw-r--r--client/playback_channel.cpp8
1 files changed, 4 insertions, 4 deletions
diff --git a/client/playback_channel.cpp b/client/playback_channel.cpp
index 9ac6ed63..1e902a90 100644
--- a/client/playback_channel.cpp
+++ b/client/playback_channel.cpp
@@ -295,8 +295,8 @@ void PlaybackChannel::handle_stop(RedPeer::InMessage* message)
void PlaybackChannel::handle_raw_data(RedPeer::InMessage* message)
{
SpiceMsgPlaybackPacket* packet = (SpiceMsgPlaybackPacket*)message->data();
- uint8_t* data = (uint8_t*)(packet + 1);
- uint32_t size = message->size() - sizeof(*packet);
+ uint8_t* data = packet->data;
+ uint32_t size = packet->data_size;
#ifdef WAVE_CAPTURE
put_wave_data(data, size);
return;
@@ -315,8 +315,8 @@ void PlaybackChannel::handle_raw_data(RedPeer::InMessage* message)
void PlaybackChannel::handle_celt_data(RedPeer::InMessage* message)
{
SpiceMsgPlaybackPacket* packet = (SpiceMsgPlaybackPacket*)message->data();
- uint8_t* data = (uint8_t*)(packet + 1);
- uint32_t size = message->size() - sizeof(*packet);
+ uint8_t* data = packet->data;
+ uint32_t size = packet->data_size;
celt_int16_t pcm[256 * 2];
if (celt051_decode(_celt_decoder, data, size, pcm) != CELT_OK) {