XMMS2
Data Structures | Macros | Enumerations | Functions
Visualization

Feeds playing data in various forms to the client. More...

Data Structures

struct  xmmsc_vischunk_t
 Package format for vis data, encapsulated by unixshm or udp transport. More...
 
struct  xmmsc_vis_udp_data_t
 UDP package descriptor to deliver a vis chunk. More...
 
struct  xmmsc_vis_udp_timing_t
 UDP package descriptor to synchronize time. More...
 
struct  xmmsc_vis_properties_t
 Properties of the delivered vis data. More...
 
struct  xmmsc_vis_unixshm_t
 data describing a unixshm transport More...
 
struct  xmmsc_vis_udp_t
 data describing a udp transport More...
 

Macros

#define XMMSC_VISUALIZATION_WINDOW_SIZE   512
 
#define XMMS_VISPACKET_VERSION   1
 
#define XMMS_VISPACKET_SHMCOUNT   500
 
#define XMMSC_VIS_UNALIGNED_WRITE(dst, src, typ)
 
#define XMMSC_VIS_UNALIGNED_READ(dst, src, typ)
 
#define XMMS_VISPACKET_UDP_OFFSET   (1 + sizeof (uint16_t))
 

Enumerations

enum  xmmsc_vis_data_t { VIS_PCM, VIS_SPECTRUM, VIS_PEAK }
 Possible data modes. More...
 
enum  xmmsc_vis_transport_t { VIS_UNIXSHM, VIS_UDP, VIS_NONE }
 Possible vis transports. More...
 
enum  xmmsc_vis_state_t {
  VIS_NEW, VIS_TRYING_UNIXSHM, VIS_TO_TRY_UDP, VIS_TRYING_UDP,
  VIS_ERRORED, VIS_WORKING
}
 

Functions

xmms_vis_client_tget_client (int32_t id)
 
void delete_client (int32_t id)
 
xmms_visualization_txmms_visualization_new (xmms_output_t *output)
 Initialize the Vis module. More...
 
void send_data (int channels, int size, short *buf)
 
double tv2ts (struct timeval *t)
 
double net2ts (int32_t *s)
 
void ts2net (int32_t *d, double t)
 
void tv2net (int32_t *d, struct timeval *t)
 
char * packet_init_data (xmmsc_vis_udp_data_t *p)
 
char * packet_init_timing (xmmsc_vis_udp_timing_t *p)
 

Detailed Description

Feeds playing data in various forms to the client.

Common structs for the visualization client and server.

Macro Definition Documentation

#define XMMS_VISPACKET_SHMCOUNT   500
#define XMMS_VISPACKET_UDP_OFFSET   (1 + sizeof (uint16_t))

Referenced by write_udp().

#define XMMS_VISPACKET_VERSION   1
#define XMMSC_VIS_UNALIGNED_READ (   dst,
  src,
  typ 
)
Value:
do { \
typ *__s = (src); \
memcpy (&(dst), __s, sizeof (typ)); \
} while (0)
#define XMMSC_VIS_UNALIGNED_WRITE (   dst,
  src,
  typ 
)
Value:
do { \
typ *__d = (dst); \
typ __s = (src); \
memcpy (__d, &__s, sizeof (typ)); \
} while (0)

Referenced by write_udp().

#define XMMSC_VISUALIZATION_WINDOW_SIZE   512

Enumeration Type Documentation

Possible data modes.

Enumerator
VIS_PCM 
VIS_SPECTRUM 
VIS_PEAK 
Enumerator
VIS_NEW 
VIS_TRYING_UNIXSHM 
VIS_TO_TRY_UDP 
VIS_TRYING_UDP 
VIS_ERRORED 
VIS_WORKING 

Possible vis transports.

Enumerator
VIS_UNIXSHM 
VIS_UDP 
VIS_NONE 

Function Documentation

void delete_client ( int32_t  id)

Referenced by write_start_shm(), and write_udp().

xmms_vis_client_t* get_client ( int32_t  id)
double net2ts ( int32_t *  s)
char* packet_init_data ( xmmsc_vis_udp_data_t p)

Referenced by write_udp().

char* packet_init_timing ( xmmsc_vis_udp_timing_t p)
void send_data ( int  channels,
int  size,
short *  buf 
)
void ts2net ( int32_t *  d,
double  t 
)
void tv2net ( int32_t *  d,
struct timeval *  t 
)

Referenced by write_shm().

double tv2ts ( struct timeval *  t)
xmms_visualization_t* xmms_visualization_new ( xmms_output_t output)

Initialize the Vis module.

Referenced by main().