Changeset 3540:df9a0828521d in roaraudio


Ignore:
Timestamp:
02/20/10 00:53:36 (14 years ago)
Author:
phi
Branch:
default
Phase:
public
Message:

added support to set channel mapping to libroar, roard will reject anyway

File:
1 edited

Legend:

Unmodified
Added
Removed
  • libroar/stream.c

    r3539 r3540  
    544544} 
    545545 
    546 int roar_stream_set_chanmap (struct roar_connection * con, struct roar_stream * s, char * map, size_t   len); 
     546int roar_stream_set_chanmap (struct roar_connection * con, struct roar_stream * s, char * map, size_t   len) { 
     547 struct roar_message m; 
     548 uint16_t * data = (uint16_t *) m.data; 
     549 
     550 if ( con == NULL || s == NULL || map == NULL ) 
     551  return -1; 
     552 
     553 if ( len == 0 ) 
     554  return 0; 
     555 
     556 memset(&m, 0, sizeof(m)); 
     557 
     558 m.cmd     = ROAR_CMD_SET_STREAM_PARA; 
     559 m.stream  = s->id; 
     560 m.datalen = 2*2 + len; 
     561 
     562 if ( m.datalen > sizeof(m.data) ) 
     563  return -1; 
     564 
     565 data[0] = 0; // Version and reserved 
     566 data[1] = ROAR_STREAM_PARA_CHANMAP; 
     567 
     568 data[0] = ROAR_HOST2NET16(data[0]); 
     569 data[1] = ROAR_HOST2NET16(data[1]); 
     570 
     571 memcpy(&(m.data[4]), map, len); 
     572 
     573 if ( roar_req(con, &m, NULL) == -1 ) 
     574  return -1; 
     575 
     576 if ( m.cmd != ROAR_CMD_OK ) 
     577  return -1; 
     578 
     579 return 0; 
     580} 
    547581 
    548582 
Note: See TracChangeset for help on using the changeset viewer.