Changeset 2538:efe4a248d8a7 in roaraudio


Ignore:
Timestamp:
09/02/09 03:09:22 (15 years ago)
Author:
phi
Branch:
default
Phase:
public
Message:

added emul_esd_on_stream_pan()

Files:
2 edited

Legend:

Unmodified
Added
Removed
  • plugins/roard/protocol-esound.c

    r2537 r2538  
    4040#define _UNIMPLEMNTED_IN_ESD NULL 
    4141#define _NEED_SAMPLE_SUPPORT NULL 
     42 
     43#define _ROAR2ESD(x) ((x)+1) 
     44#define _ESD2ROAR(x) ((x)-1) 
    4245 
    4346struct emul_esd_command g_emul_esd_commands[] = { 
     
    6265 {ESD_PROTO_SUBSCRIBE,    0                          , _NAME("SUBSCRIBE"),    _UNIMPLEMNTED_IN_ESD}, 
    6366 {ESD_PROTO_UNSUBSCRIBE,  0                          , _NAME("UNSUBSCRIBE"),  _UNIMPLEMNTED_IN_ESD}, 
    64  {ESD_PROTO_STREAM_PAN,                  3 * _INTSIZE, _NAME("STREAM_PAN"),   NULL}, 
     67 {ESD_PROTO_STREAM_PAN,                  3 * _INTSIZE, _NAME("STREAM_PAN"),   emul_esd_on_stream_pan}, 
    6568 {ESD_PROTO_SAMPLE_PAN,                  3 * _INTSIZE, _NAME("SAMPLE_PAN"),   _NEED_SAMPLE_SUPPORT}, 
    6669 {ESD_PROTO_STANDBY_MODE,                    _INTSIZE, _NAME("STANDBY_MODE"), emul_esd_on_standbymode}, 
     
    352355} 
    353356 
     357int emul_esd_on_stream_pan (int client, struct emul_esd_command * cmd, void * data, struct roar_vio_calls * vio) { 
     358 struct roar_stream_server * ss; 
     359 int stream; 
     360 int left, right; 
     361 int ok = 0; 
     362 
     363 emul_esd_int_read_buf(client, &stream, data + 0*_INTSIZE); 
     364 emul_esd_int_read_buf(client, &left,   data + 1*_INTSIZE); 
     365 emul_esd_int_read_buf(client, &right,  data + 2*_INTSIZE); 
     366 
     367 stream = _ESD2ROAR(stream); 
     368 
     369 if ( streams_get(stream, &ss) != -1 ) { 
     370  ss->mixer.mixer[0] = left  == 256 ? 65535 : left  * 256; 
     371  ss->mixer.mixer[1] = right == 256 ? 65535 : right * 256; 
     372  if ( streams_set_mixer(stream) != -1 ) 
     373   ok = 1; 
     374 } 
     375 
     376 return emul_esd_int_write(client, ok, vio); 
     377} 
     378 
    354379#endif 
    355380#endif 
  • roard/include/emul_esd.h.OLD

    r2536 r2538  
    5757int emul_esd_on_standbymode(int client, struct emul_esd_command * cmd, void * data, struct roar_vio_calls * vio); 
    5858 
     59int emul_esd_on_stream_pan (int client, struct emul_esd_command * cmd, void * data, struct roar_vio_calls * vio); 
     60 
    5961#endif 
    6062#endif 
Note: See TracChangeset for help on using the changeset viewer.