xrdpvr: added volume message
This commit is contained in:
parent
fad70062d6
commit
50db19c88c
@ -750,3 +750,38 @@ xrdpvr_write_to_client(void *channel, STREAM *s)
|
|||||||
usleep(1000 * 3);
|
usleep(1000 * 3);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* write set volume to a xrdpvr client
|
||||||
|
*
|
||||||
|
* @param channel opaque handle returned by WTSVirtualChannelOpenEx
|
||||||
|
* @param volume volume 0x0000 to 0xffff
|
||||||
|
*
|
||||||
|
* @return 0 on success, -1 on failure
|
||||||
|
******************************************************************************/
|
||||||
|
int
|
||||||
|
send_volume(void *channel, int volume)
|
||||||
|
{
|
||||||
|
STREAM *s;
|
||||||
|
char *cptr;
|
||||||
|
int rv;
|
||||||
|
int len;
|
||||||
|
|
||||||
|
stream_new(s, MAX_BUFSIZE);
|
||||||
|
|
||||||
|
stream_ins_u32_le(s, 0); /* number of bytes to follow */
|
||||||
|
stream_ins_u32_le(s, CMD_SET_VOLUME);
|
||||||
|
stream_ins_u32_le(s, volume);
|
||||||
|
|
||||||
|
/* insert number of bytes in stream */
|
||||||
|
len = stream_length(s) - 4;
|
||||||
|
cptr = s->p;
|
||||||
|
s->p = s->data;
|
||||||
|
stream_ins_u32_le(s, len);
|
||||||
|
s->p = cptr;
|
||||||
|
|
||||||
|
/* write data to virtual channel */
|
||||||
|
rv = xrdpvr_write_to_client(channel, s);
|
||||||
|
stream_free(s);
|
||||||
|
return rv;
|
||||||
|
}
|
||||||
|
@ -44,6 +44,7 @@ int xrdpvr_seek_media(int64_t pos, int backward);
|
|||||||
int xrdpvr_get_frame(void **av_pkt_ret, int *is_video_frame, int *delay_in_us);
|
int xrdpvr_get_frame(void **av_pkt_ret, int *is_video_frame, int *delay_in_us);
|
||||||
int send_audio_pkt(void *channel, int stream_id, void *pkt_p);
|
int send_audio_pkt(void *channel, int stream_id, void *pkt_p);
|
||||||
int send_video_pkt(void *channel, int stream_id, void *pkt_p);
|
int send_video_pkt(void *channel, int stream_id, void *pkt_p);
|
||||||
|
int send_volume(void *channel, int volume);
|
||||||
|
|
||||||
#ifdef __cplusplus
|
#ifdef __cplusplus
|
||||||
}
|
}
|
||||||
|
@ -61,6 +61,7 @@
|
|||||||
#define CMD_WRITE_META_DATA 7
|
#define CMD_WRITE_META_DATA 7
|
||||||
#define CMD_DEINIT_XRDPVR 8
|
#define CMD_DEINIT_XRDPVR 8
|
||||||
#define CMD_SET_GEOMETRY 9
|
#define CMD_SET_GEOMETRY 9
|
||||||
|
#define CMD_SET_VOLUME 10
|
||||||
|
|
||||||
/* max number of bytes we can send in one pkt */
|
/* max number of bytes we can send in one pkt */
|
||||||
#define MAX_PDU_SIZE 1600
|
#define MAX_PDU_SIZE 1600
|
||||||
|
Loading…
Reference in New Issue
Block a user