Changeset 114:a68766835a6a in roaraudio


Ignore:
Timestamp:
07/13/08 04:24:43 (16 years ago)
Author:
phi
Branch:
default
Phase:
public
Message:

added support to list meta tags on streams in libroar

Files:
3 edited

Legend:

Unmodified
Added
Removed
  • include/libroar/meta.h

    r110 r114  
    99int roar_stream_meta_get (struct roar_connection * con, struct roar_stream * s, struct roar_meta * meta); 
    1010 
     11int roar_stream_meta_list (struct roar_connection * con, struct roar_stream * s, int * types, size_t len); 
     12 
    1113int roar_meta_free (struct roar_meta * meta); 
    1214 
  • include/roaraudio/proto.h

    r100 r114  
    3939 
    4040#define ROAR_CMD_GET_META      22 /* get meta data of streamed data */ 
     41#define ROAR_CMD_LIST_META     23 /* get list of meta data of streamed data */ 
    4142 
    4243 
  • libroar/meta.c

    r110 r114  
    132132} 
    133133 
     134int roar_stream_meta_list (struct roar_connection * con, struct roar_stream * s, int * types, size_t len) { 
     135 int i; 
     136 struct roar_message m; 
     137 
     138 m.cmd     = ROAR_CMD_LIST_META; 
     139 m.stream  = s->id; 
     140 
     141 m.data[0] = 0; 
     142 m.datalen = 1; 
     143 
     144 if ( roar_req(con, &m, NULL) == -1 ) 
     145  return -1; 
     146 
     147 if ( m.cmd != ROAR_CMD_OK ) 
     148  return -1; 
     149 
     150 if ( m.datalen < 1 ) 
     151  return -1; 
     152 
     153 if ( m.data[0] != 0 ) 
     154  return -1; 
     155 
     156 if ( len < (m.datalen - 1 ) ) 
     157  return -1; 
     158 
     159 for (i = 1; i < m.datalen; i++) 
     160  types[i-1] = (unsigned) m.data[i]; 
     161 
     162 return m.datalen - 1; 
     163} 
     164 
    134165int roar_meta_free (struct roar_meta * meta) { 
    135166 if ( meta->value ) 
Note: See TracChangeset for help on using the changeset viewer.