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_CMD_DEFINE (query_version, xmms_visualization_client_version, xmms_visualization_t *, INT32, NONE, NONE)
 
 XMMS_CMD_DEFINE (registercl, xmms_visualization_client_register, xmms_visualization_t *, INT32, NONE, NONE)
 
 XMMS_CMD_DEFINE (init_shm, xmms_visualization_client_init_shm, xmms_visualization_t *, INT32, INT32, STRING)
 
 XMMS_CMD_DEFINE (init_udp, xmms_visualization_client_init_udp, xmms_visualization_t *, INT32, INT32, NONE)
 
 XMMS_CMD_DEFINE3 (property_set, xmms_visualization_client_property_set, xmms_visualization_t *, INT32, INT32, STRING, STRING)
 
 XMMS_CMD_DEFINE (properties_set, xmms_visualization_client_properties_set, xmms_visualization_t *, INT32, INT32, DICT)
 
 XMMS_CMD_DEFINE (shutdown, xmms_visualization_client_shutdown, xmms_visualization_t *, NONE, INT32, NONE)
 
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

Definition at line 54 of file xmmsc_visualization.h.

#define XMMS_VISPACKET_UDP_OFFSET   (1 + sizeof (uint16_t))

Definition at line 91 of file xmmsc_visualization.h.

Referenced by write_udp().

#define XMMS_VISPACKET_VERSION   1

Definition at line 47 of file xmmsc_visualization.h.

Referenced by xmms_visualization_new().

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

Definition at line 84 of file xmmsc_visualization.h.

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

Definition at line 78 of file xmmsc_visualization.h.

Referenced by write_udp().

#define XMMSC_VISUALIZATION_WINDOW_SIZE   512

Definition at line 27 of file xmmsc_visualization.h.

Enumeration Type Documentation

Possible data modes.

Enumerator
VIS_PCM 
VIS_SPECTRUM 
VIS_PEAK 

Definition at line 112 of file xmmsc_visualization.h.

Enumerator
VIS_NEW 
VIS_TRYING_UNIXSHM 
VIS_TO_TRY_UDP 
VIS_TRYING_UDP 
VIS_ERRORED 
VIS_WORKING 

Definition at line 150 of file xmmsc_visualization.h.

Possible vis transports.

Enumerator
VIS_UNIXSHM 
VIS_UDP 
VIS_NONE 

Definition at line 144 of file xmmsc_visualization.h.

Function Documentation

void delete_client ( int32_t  id)

Definition at line 91 of file object.c.

Referenced by write_start_shm(), write_udp(), and xmms_visualization_new().

xmms_vis_client_t* get_client ( int32_t  id)

Definition at line 80 of file object.c.

Referenced by xmms_visualization_new().

double net2ts ( int32_t *  s)

Definition at line 14 of file timestamp.c.

char* packet_init_data ( xmmsc_vis_udp_data_t p)

Definition at line 8 of file udp.c.

Referenced by write_udp().

char* packet_init_timing ( xmmsc_vis_udp_timing_t p)

Definition at line 22 of file udp.c.

void send_data ( int  channels,
int  size,
short *  buf 
)

Definition at line 343 of file object.c.

void ts2net ( int32_t *  d,
double  t 
)

Definition at line 20 of file timestamp.c.

void tv2net ( int32_t *  d,
struct timeval *  t 
)

Definition at line 29 of file timestamp.c.

Referenced by write_shm().

double tv2ts ( struct timeval *  t)

Definition at line 8 of file timestamp.c.

XMMS_CMD_DEFINE ( query_version  ,
xmms_visualization_client_version  ,
xmms_visualization_t ,
INT32  ,
NONE  ,
NONE   
)
XMMS_CMD_DEFINE ( registercl  ,
xmms_visualization_client_register  ,
xmms_visualization_t ,
INT32  ,
NONE  ,
NONE   
)
XMMS_CMD_DEFINE ( init_shm  ,
xmms_visualization_client_init_shm  ,
xmms_visualization_t ,
INT32  ,
INT32  ,
STRING   
)
XMMS_CMD_DEFINE ( init_udp  ,
xmms_visualization_client_init_udp  ,
xmms_visualization_t ,
INT32  ,
INT32  ,
NONE   
)
XMMS_CMD_DEFINE ( properties_set  ,
xmms_visualization_client_properties_set  ,
xmms_visualization_t ,
INT32  ,
INT32  ,
DICT   
)
XMMS_CMD_DEFINE ( shutdown  ,
xmms_visualization_client_shutdown  ,
xmms_visualization_t ,
NONE  ,
INT32  ,
NONE   
)
XMMS_CMD_DEFINE3 ( property_set  ,
xmms_visualization_client_property_set  ,
xmms_visualization_t ,
INT32  ,
INT32  ,
STRING  ,
STRING   
)
xmms_visualization_t* xmms_visualization_new ( xmms_output_t output)

Initialize the Vis module.

Definition at line 120 of file object.c.

Referenced by main().