# PaCkAgE DaTaStReAm rplay 1 560 # end of header 0707010018179f000081a40000000000000000000000014dc7729e000000eb000000b600010002ffffffffffffffff0000000e00000000rplay/pkginfoPKG=rplay NAME=rplay 3.3.2 i86pc Solaris 11 VERSION=3.3.2 PSTAMP=9th May 2011 VENDOR=Mark Boyns EMAIL=http://rplay.doit.org/ DESC=Unix sound utility ARCH=i386 CATEGORY=utility CLASSES=none BASEDIR=/ ISTATES=S s 1 2 3 RSTATES=S s 1 2 3 0707010018179d000081a40000000000000000000000014dc7729e000005c3000000b600010002ffffffffffffffff0000000d00000000rplay/pkgmap: 1 560 1 d none /usr ? ? ? 1 d none /usr/local ? ? ? 1 d none /usr/local/include 0755 root root 1 f none /usr/local/include/rplay.h 0644 root root 10868 22048 1304916634 1 d none /usr/local/info 0755 root root 1 f none /usr/local/info/RPLAY.info 0644 root root 5161 29329 1304916634 1 f none /usr/local/info/RPTP.info 0644 root root 27420 13569 1304916634 1 f none /usr/local/info/librplay.info 0644 root root 22715 62257 1304916634 1 f none /usr/local/info/rplay.info 0644 root root 6059 65218 1304916634 1 d none /usr/local/lib 0755 root root 1 f none /usr/local/lib/librplay.a 0644 root root 81760 51105 1304916634 1 f none /usr/local/lib/librplay.so 0644 root root 74396 17188 1304916634 1 d none /usr/local/man 0755 root root 1 d none /usr/local/man/man1 0755 root root 1 f none /usr/local/man/man1/rplay.1 0644 root root 2679 26633 1304916634 1 f none /usr/local/man/man1/rptp.1 0644 root root 416 34998 1304916634 1 d none /usr/local/man/man5 0755 root root 1 f none /usr/local/man/man5/rplay.conf.5 0644 root root 638 53470 1304916634 1 f none /usr/local/man/man5/rplay.helpers.5 0644 root root 632 52714 1304916634 1 f none /usr/local/man/man5/rplay.hosts.5 0644 root root 1476 58542 1304916634 1 f none /usr/local/man/man5/rplay.servers.5 0644 root root 760 64024 1304916634 1 d none /usr/local/man/man8 0755 root root 1 f none /usr/local/man/man8/rplayd.8 0644 root root 6559 21638 1304916634 1 i checkinstall 790 2505 1304916723 1 i pkginfo 235 17701 1304916638 07070100000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000b00000000TRAILER!!!0707010018179f000081a40000000000000000000000014dc7729e000000eb000000b600010002ffffffffffffffff0000000800000000pkginfoPKG=rplay NAME=rplay 3.3.2 i86pc Solaris 11 VERSION=3.3.2 PSTAMP=9th May 2011 VENDOR=Mark Boyns EMAIL=http://rplay.doit.org/ DESC=Unix sound utility ARCH=i386 CATEGORY=utility CLASSES=none BASEDIR=/ ISTATES=S s 1 2 3 RSTATES=S s 1 2 3 0707010018179d000081a40000000000000000000000014dc7729e000005c3000000b600010002ffffffffffffffff0000000700000000pkgmap: 1 560 1 d none /usr ? ? ? 1 d none /usr/local ? ? ? 1 d none /usr/local/include 0755 root root 1 f none /usr/local/include/rplay.h 0644 root root 10868 22048 1304916634 1 d none /usr/local/info 0755 root root 1 f none /usr/local/info/RPLAY.info 0644 root root 5161 29329 1304916634 1 f none /usr/local/info/RPTP.info 0644 root root 27420 13569 1304916634 1 f none /usr/local/info/librplay.info 0644 root root 22715 62257 1304916634 1 f none /usr/local/info/rplay.info 0644 root root 6059 65218 1304916634 1 d none /usr/local/lib 0755 root root 1 f none /usr/local/lib/librplay.a 0644 root root 81760 51105 1304916634 1 f none /usr/local/lib/librplay.so 0644 root root 74396 17188 1304916634 1 d none /usr/local/man 0755 root root 1 d none /usr/local/man/man1 0755 root root 1 f none /usr/local/man/man1/rplay.1 0644 root root 2679 26633 1304916634 1 f none /usr/local/man/man1/rptp.1 0644 root root 416 34998 1304916634 1 d none /usr/local/man/man5 0755 root root 1 f none /usr/local/man/man5/rplay.conf.5 0644 root root 638 53470 1304916634 1 f none /usr/local/man/man5/rplay.helpers.5 0644 root root 632 52714 1304916634 1 f none /usr/local/man/man5/rplay.hosts.5 0644 root root 1476 58542 1304916634 1 f none /usr/local/man/man5/rplay.servers.5 0644 root root 760 64024 1304916634 1 d none /usr/local/man/man8 0755 root root 1 f none /usr/local/man/man8/rplayd.8 0644 root root 6559 21638 1304916634 1 i checkinstall 790 2505 1304916723 1 i pkginfo 235 17701 1304916638 070701001817b9000041ed0000000000000000000000024dc7729e00000000000000b600010002ffffffffffffffff0000000800000000install070701001817ba000081ed0000000000000000000000014dc772f300000316000000b600010002ffffffffffffffff0000001500000000install/checkinstall#!/bin/sh # expected_bits="64" expected_release="5.11" expected_platform="i386" # release=`uname -r` platform=`uname -p` bits=`isainfo -b` # if [ ${platform} != ${expected_platform} ]; then echo "\n\n\n\tThis package must be installed on a ${expected_platform} architecture\n" echo "\tAborting installation.\n\n\n" exit 1 fi if [ ${release} != ${expected_release} ]; then echo "\n\n\n\tThis package must be installed on a ${expected_release} machine\n" echo "\tAborting installation.\n\n\n" exit 1 fi #if [ ${bits} != ${expected_bits} ]; then # echo "\n\n\n\tThis package must be installed on a ${expected_bits} bit machine\n" # echo "\tYour machine is running a ${bits} bit O.S. currently\n" # echo "\tAborting installation.\n\n\n" # exit 1 #fi exit 0 070701001817a0000041ed0000000000000000000000034dc7729e00000000000000b600010002ffffffffffffffff0000000500000000root070701001817a1000041ed0000000000000000000000034dc7729e00000000000000b600010002ffffffffffffffff0000000900000000root/usr070701001817a2000041ed0000000000000000000000064dc7729e00000000000000b600010002ffffffffffffffff0000000f00000000root/usr/local070701001817a3000041ed0000000000000000000000024dc7729e00000000000000b600010002ffffffffffffffff0000001700000000root/usr/local/include070701001817a4000081a40000000000000000000000014dc7729a00002a74000000b600010002ffffffffffffffff0000001f00000000root/usr/local/include/rplay.h/* $Id: rplay.h,v 1.3 1999/03/10 07:57:27 boyns Exp $ */ /* * Copyright (C) 1993-99 Mark R. Boyns * * This file is part of rplay. * * rplay is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or * (at your option) any later version. * * rplay is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with rplay; see the file COPYING. If not, write to the * Free Software Foundation, Inc., * 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA. */ #ifndef _rplay_h #define _rplay_h #include #include #include #include #include #undef FALSE #define FALSE 0 #undef TRUE #define TRUE 1 #define RPLAY_PORT 5555 #define RPTP_PORT 5556 #define OLD_RPLAY_PORT 55555 #define OLD_RPTP_PORT 55556 #define RPLAY_PACKET_ID 30 /* id sent with rplay 3.x packets */ /* Attributes: */ #define RPLAY_NULL 0 #define RPLAY_PLAY 1 #define RPLAY_STOP 2 #define RPLAY_PAUSE 3 #define RPLAY_CONTINUE 4 #define RPLAY_SOUND 5 #define RPLAY_VOLUME 6 #define RPLAY_NSOUNDS 7 #define RPLAY_COMMAND 8 #define RPLAY_APPEND 9 #define RPLAY_INSERT 10 #define RPLAY_DELETE 11 #define RPLAY_CHANGE 12 #define RPLAY_COUNT 13 #define RPLAY_LIST_COUNT 14 #define RPLAY_PRIORITY 15 #define RPLAY_RANDOM_SOUND 16 #define RPLAY_PING 17 #define RPLAY_RPTP_SERVER 18 #define RPLAY_RPTP_SERVER_PORT 19 #define RPLAY_RPTP_SEARCH 20 #define RPLAY_RPTP_FROM_SENDER 21 #define RPLAY_SAMPLE_RATE 22 #define RPLAY_RESET 23 #define RPLAY_DONE 24 #define RPLAY_CLIENT_DATA 25 #define RPLAY_LIST_NAME 26 #define RPLAY_PUT 27 #define RPLAY_ID 28 #define RPLAY_SEQUENCE 29 #define RPLAY_DATA 30 #define RPLAY_DATA_SIZE 31 /* audio formats */ #define RPLAY_FORMAT_NONE 0 #define RPLAY_FORMAT_LINEAR_8 1 /* 8-bit linear PCM */ #define RPLAY_FORMAT_ULINEAR_8 2 /* 8-bit unsigned linear PCM */ #define RPLAY_FORMAT_LINEAR_16 3 /* 16-bit linear PCM */ #define RPLAY_FORMAT_ULINEAR_16 4 /* 16-bit unsigned linear PCM */ #define RPLAY_FORMAT_ULAW 5 /* 8-bit ISDN u-law */ #define RPLAY_FORMAT_G721 6 /* CCITT G.721 4-bits ADPCM */ #define RPLAY_FORMAT_G723_3 7 /* CCITT G.723 3-bits ADPCM */ #define RPLAY_FORMAT_G723_5 8 /* CCITT G.723 5-bits ADPCM */ #define RPLAY_FORMAT_GSM 9 /* GSM 0.610 13 kbit/s RPE/LTP speech compression */ /* audio byte order */ #define RPLAY_BIG_ENDIAN 1 #define RPLAY_LITTLE_ENDIAN 2 /* Audio ports: */ #define RPLAY_AUDIO_PORT_NONE (1<<0) #define RPLAY_AUDIO_PORT_SPEAKER (1<<1) #define RPLAY_AUDIO_PORT_HEADPHONE (1<<2) #define RPLAY_AUDIO_PORT_LINEOUT (1<<3) /* Attribute restrictions: */ #define RPLAY_MIN_VOLUME 0 #define RPLAY_MAX_VOLUME 255 #define RPLAY_MIN_PRIORITY 0 #define RPLAY_MAX_PRIORITY 255 /* Attribute defaults: */ #define RPLAY_DEFAULT_VOLUME 127 #define RPLAY_DEFAULT_PRIORITY 0 #define RPLAY_DEFAULT_COUNT 1 #define RPLAY_DEFAULT_LIST_COUNT 1 #define RPLAY_DEFAULT_RANDOM_SOUND -1 #define RPLAY_DEFAULT_SAMPLE_RATE 0 #define RPLAY_DEFAULT_OFFSET 0 #define RPLAY_DEFAULT_BYTE_ORDER 0 #define RPLAY_DEFAULT_CHANNELS 0 #define RPLAY_DEFAULT_BITS 0 /* RPLAY errors used by rplay_errno: */ #define RPLAY_ERROR_NONE 0 #define RPLAY_ERROR_MEMORY 1 #define RPLAY_ERROR_HOST 2 #define RPLAY_ERROR_CONNECT 3 #define RPLAY_ERROR_SOCKET 4 #define RPLAY_ERROR_WRITE 5 #define RPLAY_ERROR_CLOSE 6 #define RPLAY_ERROR_PACKET_SIZE 7 #define RPLAY_ERROR_BROADCAST 8 #define RPLAY_ERROR_ATTRIBUTE 9 #define RPLAY_ERROR_COMMAND 10 #define RPLAY_ERROR_INDEX 11 #define RPLAY_ERROR_MODIFIER 12 /* RPTP errors used by rptp_errno: */ #define RPTP_ERROR_NONE 0 #define RPTP_ERROR_MEMORY 1 #define RPTP_ERROR_HOST 2 #define RPTP_ERROR_CONNECT 3 #define RPTP_ERROR_SOCKET 4 #define RPTP_ERROR_OPEN 5 #define RPTP_ERROR_READ 6 #define RPTP_ERROR_WRITE 7 #define RPTP_ERROR_PING 8 #define RPTP_ERROR_TIMEOUT 9 #define RPTP_ERROR_PROTOCOL 10 /* RPTP response types: */ #define RPTP_ERROR '-' #define RPTP_OK '+' #define RPTP_TIMEOUT '!' #define RPTP_NOTIFY '@' /* RPLAY 2.0 support: */ #define OLD_RPLAY_PLAY 1 #define OLD_RPLAY_STOP 2 #define OLD_RPLAY_PAUSE 3 #define OLD_RPLAY_CONTINUE 4 /* Definitions for the RPTP asynchronous I/O system: */ #define RPTP_ASYNC_READ 1 #define RPTP_ASYNC_WRITE 2 #define RPTP_ASYNC_RAW 4 #define RPTP_ASYNC_ENABLE 1 #define RPTP_ASYNC_DISABLE 2 /* These event can be used to specify a mask: */ #define RPTP_EVENT_OK (1 << 0) #define RPTP_EVENT_ERROR (1 << 1) #define RPTP_EVENT_TIMEOUT (1 << 2) #define RPTP_EVENT_OTHER (1 << 3) #define RPTP_EVENT_CONTINUE (1 << 4) #define RPTP_EVENT_DONE (1 << 5) #define RPTP_EVENT_PAUSE (1 << 6) #define RPTP_EVENT_PLAY (1 << 7) #define RPTP_EVENT_SKIP (1 << 8) #define RPTP_EVENT_STATE (1 << 9) #define RPTP_EVENT_STOP (1 << 10) #define RPTP_EVENT_VOLUME (1 << 11) #define RPTP_EVENT_CLOSE (1 << 12) #define RPTP_EVENT_FLOW (1 << 13) #define RPTP_EVENT_MODIFY (1 << 14) #define RPTP_EVENT_LEVEL (1 << 15) #define RPTP_EVENT_POSITION (1 << 16) #define RPTP_EVENT_ALL 0x0000ffff /* Size restrictions for RPTP: */ #define RPTP_MAX_LINE 1024 #define RPTP_MAX_ARGS 32 /* rplay object attributes: */ typedef struct _rplay_attrs { struct _rplay_attrs *next; char *sound; int volume; int count; char *rptp_server; unsigned short rptp_server_port; int rptp_search; unsigned long sample_rate; char *client_data; } RPLAY_ATTRS; /* the rplay object */ typedef struct _rplay { struct _rplay_attrs *attrs; struct _rplay_attrs **attrsp; char *buf; int len; int size; int command; int nsounds; int count; int priority; int random_sound; char *list_name; int id; unsigned long sequence; unsigned short data_size; char *data; } RPLAY; extern int rplay_errno; extern int rptp_errno; extern char *rplay_errlist[]; extern char *rptp_errlist[]; #ifdef __cplusplus #ifndef __STDC__ #define __STDC__ #endif extern "C" { #endif #ifdef __STDC__ extern void * xmalloc(size_t size); extern RPLAY *rplay_create (int rplay_command); extern char *rplay_convert (char *buf); extern int rplay_pack (RPLAY * rp); extern RPLAY *rplay_unpack (char *buf); extern void rplay_destroy (RPLAY * rp); extern long rplay_set (RPLAY *,...); extern long rplay_get (RPLAY *,...); extern int rplay_open (char *host); extern int rplay_open_port (char *host, int port); extern int rplay_open_sockaddr_in (struct sockaddr_in *saddr); extern int rplay (int rplay_fd, RPLAY * rp); extern int rplay_close (int rplay_fd); extern void rplay_perror (char *message); extern int rplay_open_display (void); extern int rplay_display (char *sound); extern int rplay_local (char *sound); extern int rplay_host (char *host, char *sound); extern int rplay_host_volume (char *host, char *sound, int volume); extern int rplay_sound (int rplay_fd, char *sound); extern int rplay_ping (char *host); extern int rplay_ping_sockaddr_in (struct sockaddr_in *saddr); extern int rplay_ping_sockfd (int sock_fd); extern char *rplay_default_host (void); extern int rplay_default (char *sound); extern int rplay_open_default (void); extern int rptp_open (char *host, int port, char *response, int response_size); extern int rptp_read (int rptp_fd, char *buf, int nbytes); extern int rptp_write (int rptp_fd, char *buf, int nbytes); extern int rptp_close (int rptp_fd); extern void rptp_perror (char *message); extern int rptp_putline (int rptp_fd, char *fmt,...); extern int rptp_getline (int rptp_fd, char *buf, int nbytes); extern int rptp_command (int rptp_fd, char *command, char *response, int response_size); extern char *rptp_parse (char *response, char *name); extern int rptp_async_putline (int rptp_fd, void (*callback)(), char *fmt, ...); extern int rptp_async_write (int rptp_fd, void (*callback)(), char *ptr, int nbytes); extern void rptp_async_register(int rptp_fd, int what, void (*callback)()); extern void rptp_async_notify (int rptp_fd, int mask, void (*callback)()); extern void rptp_async_process (int rptp_fd, int what); extern int rptp_main_loop (void); extern void rptp_stop_main_loop (int); #else extern RPLAY *rplay_create ( /* int rplay_command */ ); extern char *rplay_convert ( /* char *buf */ ); extern int rplay_pack ( /* RPLAY *rp */ ); extern RPLAY *rplay_unpack ( /* char *buf */ ); extern void rplay_destroy ( /* RPLAY *rp */ ); extern int rplay_set ( /* RPLAY *, ... */ ); extern int rplay_get ( /* RPLAY *, ... */ ); extern int rplay_open ( /* char *host */ ); extern int rplay_open_port ( /* char *host, int port */ ); extern int rplay_open_sockaddr_in ( /* struct sockaddr_in *saddr */ ); extern int rplay ( /* int rplay_fd, RPLAY *rp */ ); extern int rplay_close ( /* int rplay_fd */ ); extern void rplay_perror ( /* char *message */ ); extern int rplay_open_display (); extern int rplay_display ( /* char *sound */ ); extern int rplay_local ( /* char *sound */ ); extern int rplay_host ( /* char *host, char *sound */ ); extern int rplay_host_volume ( /* char *host, char *sound, int volume */ ); extern int rplay_sound ( /* int rplay_fd, char *sound */ ); extern int rplay_ping ( /* char *host */ ); extern int rplay_ping_sockaddr_in ( /* struct sockaddr_in *saddr */ ); extern int rplay_ping_sockfd ( /* int sock_fd */ ); extern char *rplay_default_host (); extern int rplay_default ( /* char *sound */ ); extern int rplay_open_default (); extern int rptp_open ( /* char *host, int port, char *response, int response_size */ ); extern int rptp_read ( /* int rptp_fd, char *buf, int nbytes */ ); extern int rptp_write ( /* int rptp_fd, char *buf, int nbytes */ ); extern int rptp_close ( /* int rptp_fd */ ); extern void rptp_perror ( /* char *message */ ); extern int rptp_putline ( /* int rptp_fd, char *fmt, ... */ ); extern int rptp_getline ( /* int rptp_fd, char *buf, int nbytes */ ); extern int rptp_command ( /* int rptp_fd, char *command, char *response, int response_size */ ); extern char *rptp_parse ( /* char *response, char *name */ ); extern int rptp_async_putline ( /* int rptp_fd, void (callback *)(), char *fmt, ... */ ); extern int rptp_async_write ( /* int rptp_fd, void (callback *)(), char *ptr, int nbytes */ ); extern void rptp_async_register (/* int rptp_fd, int what, void (callback*)() */ ); extern void rptp_async_notify ( /* int rptp_fd, int what, void (*callback)() */ ); extern void rptp_async_process ( /* int rptp_fd, int what */ ); extern int rptp_main_loop (); extern void rptp_stop_main_loop (); #endif #ifdef __cplusplus } #endif #endif /* _rplay_h */ 070701001817a6000041ed0000000000000000000000024dc7729e00000000000000b600010002ffffffffffffffff0000001400000000root/usr/local/info070701001817a9000081a40000000000000000000000014dc7729a000058bb000000b600010002ffffffffffffffff0000002200000000root/usr/local/info/librplay.infoThis is Info file librplay.info, produced by Makeinfo-1.63 from the input file librplay.texi. This file documents librplay. Copyright (C) 1995 Mark Boyns Permission is granted to make and distribute verbatim copies of this manual provided the copyright notice and this permission notice are preserved on all copies. Permission is granted to copy and distribute modified versions of this manual under the conditions for verbatim copying, provided also that the entire resulting derived work is distributed under the terms of a permission notice identical to this one. Permission is granted to copy and distribute translations of this manual into another language, under the above conditions for modified versions.  File: librplay.info, Node: Top, Next: RPLAY Core Functions, Prev: (dir), Up: (dir) librplay ******** This file documents `librplay', the C library interface to the RPLAY and RPTP protocols. Programs that wish to use `librplay' must include `rplay.h' and link with `librplay'. rplay is based on two protocols and therefore this library has two distinct sets of routines. The routines can be distinguished by either a `rplay_' or `rptp_' prefix. To avoid conflicts, user programs are encouraged not to use variables or functions that begin with either of these prefixes. In most cases, each function description includes one or more examples to help illustrate how the function can be used. * Menu: * RPLAY Core Functions:: Low-level routines. * RPLAY Helper Functions:: * RPLAY Miscellaneous Functions:: Routines that may not be very useful. * RPLAY Error Reporting:: How to deal with RPLAY errors. * RPTP Core Functions:: Low-level routines. * RPTP Helper Functions:: * RPTP Error Reporting:: How to deal with RPTP errors. * Function Index:: Function Index.  File: librplay.info, Node: RPLAY Core Functions, Next: RPLAY Helper Functions, Prev: Top, Up: Top RPLAY Core Functions ******************** - Function: int rplay_open (char *HOST) Open a UDP socket connection to send RPLAY packets to host. The HOST argument is the name or IP address of the host where packets will be sent. The IP address can be a subnet mask which is used to broadcast packets to multiple hosts. The return value is a socket descriptor on success and `-1' on failure. Example: int rplay_fd; rplay_fd = rplay_open ("130.191.255.255"); if (rplay_fd < 0) { rplay_perror ("rplay_open"); exit (1); } - Function: int rplay_close (int RPLAY_FD) This function closes a rplay connection. The RPLAY_FD argument should be a socket descriptor opened by `rplay_open'. The return value is `0' on success and `-1' on failure. - Function: RPLAY * rplay_create (int COMMAND) Create a RPLAY object to perform a specific command. The COMMAND argument should be one of the following: `RPLAY_PLAY', `RPLAY_STOP', `RPLAY_PAUSE', `RPLAY_CONTINUE', `RPLAY_PING', or `RPLAY_RESET'. The return value is a pointer to a new RPLAY object on success and `NULL' on failure. Example: RPLAY *rp; rp = rplay_create (RPLAY_PLAY); if (rp == NULL) { rplay_perror ("rplay_create"); exit (1); } - Function: int rplay_set (RPLAY *RP, ...) Modify attributes of a RPLAY object. The RP argument should be a pointer to a RPLAY object created by `rplay_create'. The remaining arguments will be: `RPLAY_APPEND' Append a sound and its attributes. `RPLAY_DELETE' Delete a sound and its attributes. `RPLAY_INSERT' Insert a sound and its attributes. `RPLAY_RANDOM_SOUND' Choose a sound at random from the sound list. Only the chosen sound will be played, not entire sound list. The attribute list must be terminated with `NULL'. The return value is `0' on success and `-1' on failure. Example: /* Add a sound named `bogus.au' with volume 200. */ rplay_set (rp, RPLAY_APPEND, RPLAY_SOUND, "bogus.au", RPLAY_VOLUME, 200, NULL); /* Insert a sound named `bogus.au' with volume 200. */ rplay_set (rp, RPLAY_INSERT, 0, RPLAY_SOUND, "bogus.au", RPLAY_VOLUME, 200, NULL); /* Prepare to stop a sound named `excellent.au'. */ rp = rplay_create(RPLAY_STOP); rplay_set (rp, RPLAY_APPEND, RPLAY_SOUND, "excellent.au", NULL); /* Delete the sound at position 1. */ rplay_set (rp, RPLAY_DELETE, 1, NULL); /* * count and list count example * * result = gong.au gong.au drip.au drip.au * gong.au gong.au drip.au drip.au * */ rplay_set (rp, RPLAY_LIST_COUNT, 2, NULL); rplay_set (rp, RPLAY_APPEND, RPLAY_SOUND, "gong.au", RPLAY_COUNT, 2, NULL); rplay_set (rp, RPLAY_APPEND, RPLAY_SOUND, "drip.au", RPLAY_COUNT, 2, NULL); /* * random example (assume there is already a sound list) */ rplay_set (rp, RPLAY_RANDOM_SOUND, NULL); /* pick a sound randomly */ rplay_set (rp, RPLAY_RANDOM_SOUND, NULL); /* pick another sound */ rplay (rplay_fd, rp); /* play the random sound */ - Function: int rplay_get (RPLAY *RP, ...) Retrieve attributes from a RPLAY object. The RP argument should be a pointer to a RPLAY object created by `rplay_create' and modified using `rplay_set'. This argument is followed by a rplay attribute and its optional attribute argument. The return value will be either `int' or `char *' depending on the attribute. The caller will need to cast the return value to `char *' when necessary. Example: RPLAY *rp; int n; char *p; /* Get the number of sounds. */ n = rplay_get (rp, RPLAY_NSOUNDS); /* Get the name of sound 0. */ p = (char *) rplay_get (rp, RPLAY_SOUND, 0); /* Get the volume of sound 1. */ n = rplay_get (rp, RPLAY_VOLUME, 1); /* Get the rplay command. */ n = rplay_get (rp, RPLAY_COMMAND); - Function: int rplay (int RPLAY_FD, RPLAY *RP) This function uses a RPLAY packet to send RP to the host connected to RPLAY_FD. The RPLAY_FD argument should be a socket descriptor opened by `rplay_open'. RP should be a pointer to a `RPLAY' object created by `rplay_create' and modified using `rplay_set'. The return value is `0' on success and `-1' on failure. Example: if (rplay (rplay_fd, rp) < 0) { rplay_perror ("rplay"); exit (1); } - Function: void rplay_destroy (RPLAY *RP) Release all memory used by a RPLAY object. The RP argument should be a pointer to a RPLAY object created by `rplay_create'.  File: librplay.info, Node: RPLAY Helper Functions, Next: RPLAY Miscellaneous Functions, Prev: RPLAY Core Functions, Up: Top RPLAY Helper Functions ********************** - Function: int rplay_default (char *SOUND) Play SOUND on the default rplay host which is obtained using `rplay_default_host'. The SOUND argument is the name of the sound to play. The return value is `0' on success and `-1' on failure. Example: if (rplay_default ("bogus.au") < 0) { rplay_perror ("rplay_default"); exit (1); } - Function: char * rplay_default_host (void) Obtain the name of the default rplay host. A default rplay host can be specified by the user with the `RPLAY_HOST' environment variable. If this variable is not defined, `localhost' will be used instead. Example: char *hostname; hostname = rplay_default_host (); - Function: int rplay_display (char *SOUND) Play a sound on the host returned by rplay_open_display. The SOUND argument is the name of the sound to play. The return value is `0' on success and `-1' on failure. Example: if (rplay_display ("bogus.au") < 0) { rplay_perror ("rplay_display"); exit (1); } - Function: int rplay_host (char *HOST, char *SOUND) Play a sound on a host. The HOST is the name or IP address of the host where SOUND will be played. The return value is `0' on success and `-1' on failure. Example: if (rplay_host ("bozo.sdsu.edu", "bogus.au") < 0) { rplay_perror ("rplay_host"); exit (1); } - Function: int rplay_host_volume (char *HOST, char *SOUND, int VOLUME) Play a sound at specific volume on a host. The HOST is the name or IP address of the host where SOUND will be played using VOLUME. The return value is `0' on success and `-1' on failure. Example: if (rplay_host_volume ("bozo.sdsu.edu", "bogus.au", 200) < 0) { rplay_perror ("rplay_host_volume"); exit (1); } - Function: int rplay_local (char *SOUND) Play a sound on the localhost. The SOUND argument is the name of the sound to play. The return value is `0' on success and `-1' on failure. Example: if (rplay_local ("bogus.au") < 0) { rplay_perror ("rplay_local"); exit (1); } - Function: int rplay_open_default (void) Open a UDP socket connection to send RPLAY packets to the user's default rplay host. The default rplay host is obtained using `rplay_default_host'. The return value is a socket descriptor on success and `-1' on failure. Example: int rplay_fd; rplay_fd = rplay_open_default (); if (rplay_fd < 0) { rplay_perror ("rplay_open_default"); exit (1); } - Function: int rplay_open_display (void) Open a UDP socket connection to the host associated with the current X Windows display. The `DISPLAY' environment variable is used obtain the name of the X Windows display host. If this variable is not defined, `localhost' is used. The return value is a socket descriptor on success and `-1' on failure. Example: int rplay_fd; rplay_fd = rplay_open_display (); if (rplay_fd < 0) { rplay_perror ("rplay_open_display"); exit (1); } - Function: int rplay_open_port (char *HOST, int PORT) Open a UDP socket connection to send RPLAY packets to host at a specific port. The HOST argument is the same as `rplay_open' and the PORT argument should be the port number desired. The default port is defined in rplay.h as `RPLAY_PORT'. The return value is a socket descriptor on success and `-1' on failure. Example: int rplay_fd; rplay_fd = rplay_open_port ("130.191.224.3", 5555); if (rplay_fd < 0) { rplay_perror ("rplay_open_port"); exit (1); } - Function: int rplay_open_sockaddr_in (struct sockaddr_in *ADDR) Open a UDP socket connection to send RPLAY packets to the address specified in a `struct sockaddr_in'. The return value is a socket descriptor on success and `-1' on failure. Example: struct sockaddr_in *saddr; int rplay_fd; rplay_fd = rplay_open_sockaddr_in (saddr); if (rplay_fd < 0) { rplay_perror ("rplay_open_sockaddr_in"); exit (1); } - Function: int rplay_ping (char *HOST) Send a `RPLAY_PING' package to a host. This funcion is used to wake-up rplay servers that are started by inetd. The HOST argument is the name or IP address of the host that will receive the ping. The return value is `0' on success and `-1' on failure. Example: if (rplay_ping ("bozo.sdsu.edu") < 0) { rplay_perror ("rplay_ping"); exit (1); } - Function: int rplay_ping_sockaddr_in (struct sockaddr_in *ADDR) The same as `rplay_ping' except the ping is sent to the host addressed by ADDR. - Function: int rplay_ping_sockfd (int SOCKFD) The same as `rplay_ping' except the ping is sent to the host associated with UDP socket descriptor SOCKFD. - Function: int rplay_sound (int RPLAY_FD, char *SOUND) Play a sound on a host associated with a UDP socket descriptor. The RPLAY_FD argument is a UDP socket descriptor returned by any of the rplay_open routines and the SOUND argument is the name of the sound to be played. The return value is `0' on success and `-1' on failure. Example: rplay_sound (rplay_fd, "bogus.au");  File: librplay.info, Node: RPLAY Miscellaneous Functions, Next: RPLAY Error Reporting, Prev: RPLAY Helper Functions, Up: Top RPLAY Miscellaneous Functions ***************************** - Function: char * rplay_convert (char *PTR) Convert a RPLAY 2.0 packet to a RPLAY 3.0 packet. The PTR argument should be a pointer to the data contained in a RPLAY 2.0. The return value is the data pointed to by PTR converted to a RPLAY 3.0 packet. - Function: int rplay_pack (RPLAY *RP) Pack-up the attributes of the RPLAY object into the packet buffer associated with the object. This routine is called automatically by all routines that modify attributes. The RP argument should be a pointer to a RPLAY object created by `rplay_create'. The return value is `0' on success and `-1' on failure. - Function: RPLAY * rplay_unpack (char *RAW_PTR) Unpack a raw rplay 3.0 packet into a new RPLAY object. The RAW_PTR argument should be a pointer to a rplay 3.0 packet sent by a rplay client. The return value is a pointer to a new RPLAY object that is created using `rplay_create'.  File: librplay.info, Node: RPLAY Error Reporting, Next: RPTP Core Functions, Prev: RPLAY Miscellaneous Functions, Up: Top RPLAY Error Reporting ********************* - Function: void rplay_perror (char *MESSAGE) Report errors return by rplay library routines to standard error. Errors are obtained using `rplay_errno' and `rplay_errlist'. This should be called when routines return -1 or NULL. The MESSAGE argument followed by `: ' will prefix the rplay error message.  File: librplay.info, Node: RPTP Core Functions, Next: RPTP Helper Functions, Prev: RPLAY Error Reporting, Up: Top RPTP Core Functions ******************* - Function: int rptp_open (char *HOST, int PORT, char *RESPONSE, int RESPONSE_SIZE) Open a TCP socket connection for a RPTP session. The HOST argument is the name or IP address of a RPTP server, PORT is the TCP port at HOST to connect to, and up-to RESPONSE_SIZE bytes of the server's initial reponse are stored in RESPONSE. The return value is a TCP socket descriptor and `-1' on failure. Example: int rptp_fd; char buf[RPTP_MAX_LINE]; /* defined in rplay.h */ rptp_fd = rptp_open ("bozo.sdsu.edu", RPTP_PORT, buf, sizeof(buf)); if (rptp_fd < 0) { rptp_perror ("bozo.sdsu.edu"); exit(1); } - Function: int rptp_close (int RPTP_FD) Close a TCP socket descriptor created by `rptp_open'. The return value is `0' on success and `-1' on failure. - Function: int rptp_read (int RPTP_FD, char *BUF, int NBYTES) Read data from a RPTP server. The RPTP_FD argument should be a TCP socket descriptor returned by RPTP_OPEN. At most NBYTES will be read into the BUF. The return value is the number of bytes read and `-1' on failure. Example: if (rptp_read (rptp_fd, buf, sizeof(buf)) < 0) { rptp_perror ("rptp_read"); exit (1); } - Function: int rptp_write (int RPTP_FD, char *BUF, int NBYTES) Write data to a RPTP server. The RPTP_FD argument should be a TCP socket descriptor returned by RPTP_OPEN. NBYTES of data will be written from BUF. The return value is the number of bytes written and `-1' on failure. Example: if (rptp_write (rptp_fd, buf, sizeof(buf)) != sizeof(buf)) { rptp_perror ("rptp_write"); exit (1); }  File: librplay.info, Node: RPTP Helper Functions, Next: RPTP Error Reporting, Prev: RPTP Core Functions, Up: Top RPTP Helper Functions ********************* - Function: int rptp_command (int RPTP_FD, char *COMMAND, char *RESPONSE, int RESPONSE_SIZE) Send a RPTP command a RPTP server, storing the server's response in a buffer. The RPTP_FD argument should be a TCP socket descriptor returned by RPTP_OPEN. COMMAND is the command that will be sent and RESPONSE is where up-to RESPONSE_SIZE bytes of the command response will be stored. The return value is `0' if the response begins with `RPTP_OK' or or `RPTP_NOTIFY', `1' if the response beings with `RPTP_ERROR', and `-1' if the response beings with `RPTP_TIMEOUT' or there's an error. Example: char *error; switch (rptp_command (rptp_fd, command, response, sizeof(response))) { case -1: rptp_perror (command); break; case 1: error = rptp_parse (response, "error"); printf ("%s\n", error); break; case 0: /* Success! Now do something useful. */ break; } - Function: int rptp_getline (int RPTP_FD, char *BUF, int NBYTES) Read a line from a RPTP connection. `\r\n' will be removed from the line. The RPTP_FD argument should be a TCP socket descriptor returned by RPTP_OPEN. BUF is the buffer where up-to NBYTES of the line will be stored. The return value is the number of bytes read and `-1' on failure. Example: if (rptp_getline (rptp_fd, buf, sizeof(buf)) < 0) { rptp_perror ("rptp_getline"); exit (1); } - Function: char * rptp_parse (char *RESPONSE, char *NAME) Parse name-value pairs contained in RPTP responses. The RESPONSE argument can be a list of name-value pairs or `NULL'. The NAME can be the name of specific name-value pair or `NULL'. The example below gives more details. Note that any leading dashes in any name-value pair will be ignored. The return value can be name or value of a name-value pair depending on the arguments. Example: /* Return the value of `name' where `name=value' is in the response string. */ value = rptp_parse (response, "name") /* Same as above but return the value of `name' in the previously specified response. */ value = rptp_parse (NULL, "name") /* Return the first `name' in the response `name=value' list. */ name = rptp_parse (response, NULL) /* Same as above but return the next `name' is the previously specified response. name = rptp_parse (NULL, NULL) - Function: int rptp_putline (int RPTP_FD, char *FMT, ...) Send a line to a RPTP server. This routine will always append `\r\n' to the line sent. The RPTP_FD argument should be a TCP socket descriptor returned by RPTP_OPEN. FMT is any `printf' format string and the rest of the arguments are the values for the format specified. The return value is `0' on success and `-1' on failure. Example: if (rptp_putline (rptp_fd, "find sound=%s", "bogus.au") < 0) { rptp_perror ("rptp_putline"); exit (1); }  File: librplay.info, Node: RPTP Error Reporting, Next: Function Index, Prev: RPTP Helper Functions, Up: Top RPTP Error Reporting ******************** - Function: void rptp_perror (char *MESSAGE) Report errors return by rptp library routines to standard error. Errors are obtained using `rptp_errno' and `rptp_errlist'. This should be called when routines return -1 or NULL. The MESSAGE argument followed by `: ' will prefix the rptp error message.  File: librplay.info, Node: Function Index, Prev: RPTP Error Reporting, Up: Top Function Index ************** * Menu: * rplay: RPLAY Core Functions. * rplay_close: RPLAY Core Functions. * rplay_convert: RPLAY Miscellaneous Functions. * rplay_create: RPLAY Core Functions. * rplay_default: RPLAY Helper Functions. * rplay_default_host: RPLAY Helper Functions. * rplay_destroy: RPLAY Core Functions. * rplay_display: RPLAY Helper Functions. * rplay_get: RPLAY Core Functions. * rplay_host: RPLAY Helper Functions. * rplay_host_volume: RPLAY Helper Functions. * rplay_local: RPLAY Helper Functions. * rplay_open: RPLAY Core Functions. * rplay_open_default: RPLAY Helper Functions. * rplay_open_display: RPLAY Helper Functions. * rplay_open_port: RPLAY Helper Functions. * rplay_open_sockaddr_in: RPLAY Helper Functions. * rplay_pack: RPLAY Miscellaneous Functions. * rplay_perror: RPLAY Error Reporting. * rplay_ping: RPLAY Helper Functions. * rplay_ping_sockaddr_in: RPLAY Helper Functions. * rplay_ping_sockfd: RPLAY Helper Functions. * rplay_set: RPLAY Core Functions. * rplay_sound: RPLAY Helper Functions. * rplay_unpack: RPLAY Miscellaneous Functions. * rptp_close: RPTP Core Functions. * rptp_command: RPTP Helper Functions. * rptp_getline: RPTP Helper Functions. * rptp_open: RPTP Core Functions. * rptp_parse: RPTP Helper Functions. * rptp_perror: RPTP Error Reporting. * rptp_putline: RPTP Helper Functions. * rptp_read: RPTP Core Functions. * rptp_write: RPTP Core Functions.  Tag Table: Node: Top734 Node: RPLAY Core Functions1886 Node: RPLAY Helper Functions7013 Node: RPLAY Miscellaneous Functions12728 Node: RPLAY Error Reporting13892 Node: RPTP Core Functions14398 Node: RPTP Helper Functions16308 Node: RPTP Error Reporting19628 Node: Function Index20113  End Tag Table 070701001817aa000081a40000000000000000000000014dc7729a000017ab000000b600010002ffffffffffffffff0000001f00000000root/usr/local/info/rplay.infoThis is Info file rplay.info, produced by Makeinfo version 1.67 from the input file rplay.texi. This file documents the rplay Network Audio System. Copyright (C) 1993-97 Mark Boyns Permission is granted to make and distribute verbatim copies of this manual provided the copyright notice and this permission notice are preserved on all copies. Permission is granted to copy and distribute modified versions of this manual under the conditions for verbatim copying, provided also that the entire resulting derived work is distributed under the terms of a permission notice identical to this one. Permission is granted to copy and distribute translations of this manual into another language, under the above conditions for modified versions.  File: rplay.info, Node: Top, Next: Overview, Prev: (dir), Up: (dir) rplay Network Audio System ************************** This file documents the rplay Network Audio System. * Menu: * Overview:: Prelimary information * rplayd:: The rplay audio server. * rplay:: A sample RPLAY client. * rptp:: A sample RPTP client. * xrplay:: A X Windows rplay audio control panel.  File: rplay.info, Node: Overview, Next: rplayd, Prev: Top, Up: Top Overview ******** rplay is a flexible network audio system that allows sounds to be played to and from local and remote Unix systems. Sounds can be played with or without sending audio data over the network using either UDP or TCP/IP. rplay audio servers can be configured to share sound files with each other. Support for rplay is included in several applications. These include xpilot, xlockmore, xboing, fvwm, and ctwm. The rplay audio server is known to work well on Linux, SunOS 4.1.x, and Solaris 2.x. FreeBSD, Irix, and HPUX are known to work but the current status of these drivers is unknown. Linux support is based on the Open Sound System (OSS) driver so other systems using this driver might work with a few modifications. rplay supports two network protocols: `RPLAY' The Remote Play protocol which is connection-less and based on UDP (User Datagram Protocol). This protocol uses one-way communication with the audio server using single UDP packets. RPLAY was designed to be used by games which attempt to play hundreds of sounds a second, but it is also ideal for low-bandwidth applications. If you want simplicity, speed, and no error reporting, you should use RPLAY. `RPTP' The Remote Play Transfer Protocol which is connection-oriented and based on TCP (Transmission Control Protocol). This protocol uses two-way communication with the audio server using an interactive command language. RPTP is intended to be used by applications that require complete control of the audio server. Both protocols allow sounds to be played, paused, continued, and stopped.  File: rplay.info, Node: rplayd, Next: rplay, Prev: Overview, Up: Top rplayd ****** rplayd is the sound server for the rplay audio system. The server listens for requests to play, pause, continue, and stop sounds using both the RPLAY and RPTP protocols. Normally RPLAY requests are received on port 5555/udp and RPTP on 5556/tcp. (Older ports 55555/udp and 55556/tcp are also supported) Access to the server is restricted using the rplay.hosts file. rplayd can be started during the system boot process, via inetd, or by individual users. root access may be required depending on audio device permissions. In most causes rplayd will play sounds that are available on the local disk. However, rplayd can be sent sounds via the network and rplayd can also contact other rplayds to share sound files. The index of all the local sound files is stored in rplay.conf and remote rplayds are specified in rplay.servers. Sounds received from other rplayds will be stored in a cache directory normally located in /tmp/.rplay-cache. Cache entries are expired on an LRU basis. Many sound file formats are supported by rplayd. These include: AU AIFF WAV VOC UB UL G.721 4-bit, G.723 3-bit, G.723 5-bit GSM Several sounds can be played at once and sounds can be played at any sample rate. rplayd can be configured to output many different formats using the various -audio options. On some systems, namely Solaris and Linux, rplayd can read sounds directly from CDROM using CDDA. The special sound name cdrom: will play the entire CDROM. cdrom:3-5 will play tracks 3 through 5.  File: rplay.info, Node: rplay, Next: rptp, Prev: rplayd, Up: Top rplay ***** rplay is client that communicates with rplayd to play, pause, continue, and stop sounds using both the RPLAY and RPTP protocols. Sound files can be played by rplayd directly if available on the local system or sounds can be sent over the network using UDP or TCP/IP. rplay will attempt to determine whether or not the server has the sound before using the network.  File: rplay.info, Node: rptp, Next: xrplay, Prev: rplay, Up: Top rptp **** rptp is a simple RPTP client that communicates with rplayd using the RPTP protocol. Several commands can be issued to control rplayd and report its status. See the output of the rptp help command for a list of available commands.  File: rplay.info, Node: xrplay, Prev: rptp, Up: Top xrplay ****** rplay control panel which includes CD player-like buttons, volume control, a simple vu meter, and a sound progess bar. Sounds can be played, paused, continued, and stopped using the appropriate buttons. xrplay is also useful as a sound file player and can be used with web browsers and other applications that use external programs to play sounds. xrplay communicates with the local (or remote) rplayd using the RPTP protocol.  Tag Table: Node: Top761 Node: Overview1247 Node: rplayd2983 Node: rplay4640 Node: rptp5094 Node: xrplay5413  End Tag Table 070701001817a8000081a40000000000000000000000014dc7729a00006b1c000000b600010002ffffffffffffffff0000001e00000000root/usr/local/info/RPTP.infoThis is Info file RPTP.info, produced by Makeinfo-1.63 from the input file RPTP.texi. This file documents RPTP protocol. Copyright (C) 1995 Mark Boyns Permission is granted to make and distribute verbatim copies of this manual provided the copyright notice and this permission notice are preserved on all copies. Permission is granted to copy and distribute modified versions of this manual under the conditions for verbatim copying, provided also that the entire resulting derived work is distributed under the terms of a permission notice identical to this one. Permission is granted to copy and distribute translations of this manual into another language, under the above conditions for modified versions.  File: RPTP.info, Node: Top, Next: Overview, Prev: (dir), Up: (dir) RPTP **** This document describes the Remote Play Transfer Protocol, otherwise known as RPTP. * Menu: * Overview:: * Attributes:: * Events:: * Event Notification:: * Commands:: * Connecting:: * Timeouts:: * Attribute Index:: Attribute Index. * Event Index:: Event Index. * Command Index:: Command Index.  File: RPTP.info, Node: Overview, Next: Attributes, Prev: Top, Up: Top Overview ******** RPTP is a command-based TCP interface to control the rplay audio server. The protocol is simple, the client sends a command and the server sends back a result. Name-value pairs are used in both commands and results. A name-value pair is of the form `name=value' where `name' is an attribute name and `value' is the value of the attribute. Multiple name-value pairs on a line are separated by a spaces and/or tabs. When `value' contains spaces or tabs it must be quoted as `name="value"'. Commands consist of a command name followed by command attributes. An example would be `play volume=50 sound=bogus.au'. In this case, the command is `play' and its attributes are `volume=50' and `sound=bogus.au'. The server responds to each command with a result line. Each result line begins with a special character which is used to determine command success or failure. The following characaters are defined: `+' Successful command execution (RPTP_OK) `-' Error (RPTP_ERROR) `!' Connection timeout (RPTP_TIMEOUT) `@' Event notification (RPTP_NOTIFY) After this first character, the result line contains name-value pairs. For example, if the server wanted to report an error to the client, the result line could be: `-error="sorry, you can't do that"'. There is one RPTP command that returns more than one line. This is the list command which returns a normal result line followed by zero or more lines terminated by a line containing only a `.'. These additional lines do not begin with any special characters. Future versions may include an attribute that clients can use to determine the number of lines that will be returned. All RPTP lines are terminated using a carriage return `\r' (ASCII 13) followed by a newline `\n' (ASCII 10).  File: RPTP.info, Node: Attributes, Next: Events, Prev: Overview, Up: Top Attributes ********** The following is a list of attributes that can be found within the name-value lists. - Attribute: access A set of characters defining access permissions. These characters can include `r' - read access, `w' - write access, and `x' - execute access. Example: access=rwx - Attribute: application The name of an rplay application. Example: application="rptp 3.2.0a7" - Attribute: audio-bits The number of bits in an audio sample or audio device. The value can be 8, 16, and maybe 24 and 32 in the future. Example: audio-bits=16 - Attribute: audio-bufsize The size in bytes of the audio buffer. Example: audio-bufsize=1600 - Attribute: audio-byte-order The byte order of the audio data. The value can be either big-endian or little-endian. Example: audio-byte-order=big-endian - Attribute: audio-channels The number of channels in an audio sample or audio device. The value can be 1 or 2. Example: audio-channels=2 - Attribute: audio-device The name of an audio device. The value can be any audio device name. Example: audio-device=/dev/audio - Attribute: audio-format The format of an audio sample or audio device. The value can be ulaw, linear-8, ulinear-8, linear-16, or ulinear-16. (linear = signed, ulinear = unsigned) Example: audio-format=ulaw - Attribute: audio-offset Number of bytes to skip from the current position in the audio data. Example: audio-offset=32. - Attribute: audio-port Audio output ports. The value can be speaker, headphone, and lineout. Multiple ports should be separated using a comma. Example: audio-port=headphone,speaker - Attribute: audio-rate The rate at which audio buffers are being written. Example: audio-rate=10 - Attribute: audio-sample-rate The sample rate of an audio sample or audio device. Example: audio-sample-rate=11025 - Attribute: audio-volume The volume of an audio sample or audio device. The value can be an integer between 0 and 255. Example: audio-volume=120 - Attribute: bits See audio-bits. - Attribute: channels See audio-channels. - Attribute: count The number of times a sound will be played or a generic number of items. Example: count=5 - Attribute: event The name of an RPTP event. Example: event=play - Attribute: error An error message. Example: error="access denied" - Attribute: format See audio-format. - Attribute: host A hostname. Example: host=mojo - Attribute: id A spool id. The value can be an integer between 0 and 999. A value of 0 refers to all ids. An id always begins with the `#' character since ids can be intermixed with sound names. Therefore, sounds can never begin with `#'. Example: id=#219 - Attribute: idle The amount of time a RPTP connection has been idle. Example: idle=1+01:37:05 - Attribute: input Where audio is coming from. Example: input=flow - Attribute: input-bits See audio-bits. - Attribute: input-byte-order See audio-byte-order. - Attribute: input-channels See audio-channels. - Attribute: input-format See audio-format. - Attribute: input-offset See audio-offset. - Attribute: input-sample-rate See audio-sample-rate. - Attribute: left The output level of the left speaker. Valid levels range from 0 to 255. - Attribute: list-count The number of times a list of sounds will be played. Example: list-count=5 - Attribute: message A generic message. Example: message="stop successful" - Attribute: notify A list of RPTP events. Multiple events should be separated using a comma. Example: notify=play,pause,done - Attribute: pause The number of sounds paused. Example: pause=1 - Attribute: play The number of sounds playing. Example: play=3 - Attribute: position The current second offset in a sound. - Attribute: priority The priority of a sound. The value should be an integer between 0 and 255 where 0 is the lowest priority and 255 is the highest. Example: priority=0 - Attribute: random Play a random sound from a list of sounds. Example: random=true - Attribute: remain Number of seconds remaining in a sound. - Attribute: right The output level of the right speaker. Valid levels range from 0 to 255. - Attribute: sample The current sample offset in a sound. - Attribute: samples The total number of samples in a sound. - Attribute: sample-rate See audio-sample-rate. - Attribute: seconds Number of seconds in a sound. Example: seconds=247.54 - Attribute: size The number of bytes in an audio file. Example: size=1868508 - Attribute: sound The name of a sound. Example: sound=petergun.au - Attribute: uptime The amount of time an RPTP server has been running. Example: uptime=27+09:19:10 - Attribute: version The version of rplay. Example: version=3.2.0a8 - Attribute: volume See audio-volume.  File: RPTP.info, Node: Events, Next: Event Notification, Prev: Attributes, Up: Top Events ****** RPTP supports both synchronous and asynchronous event notification. Events can be use to monitor the status of the server or wait for something special to happen. These events are: `all' All events. `any' See all. `continue' A sound has been continued. `done' A sound is finished. `level' Used to obtain the output level of the left and right speakers. Level values range from 0 to 255. `none' No events. `pause' A sound has been paused. `play' A sound has been played. `position' Used to obtain the current sample position of a sound that's being played. `skip' A sound has been skipped. `state' A server state change. `stop' A sound has been stopped. `volume' The volume has changed.  File: RPTP.info, Node: Event Notification, Next: Commands, Prev: Events, Up: Top Event Notification ****************** RPTP clients can receive event notification messages from the server. The event notification messages sent by the server always begin with the `@' character followed by a list of attributes. This character is used to help RPTP clients distinguish notification messages from other RPTP responses. Using a special character is especially useful for clients that deal with server messages asychronously. Each message will always contain an event attribute to inform the client which event occurred. The message can also contain several other attributes to provide the client with more event information. The following is a list of sample event messages: `continue' Example: @event=continue id=#160 sound=bogus.au `done' Example: @event=done id=#23 sound=bogus.au `level' Example: @event=level volume=46 left=23 right=23 `pause' Example: @event=pause id=#160 sound=bogus.au `play' Example: @event=play id=#160 sound=bogus.au volume=127 sample-rate=8000 seconds=1.19 count=1 `position' Example: @event=position id=#24 position=0.50 remain=0.69 seconds=1.19 sample=4000 samples=9542 `skip' Example: @event=skip id=#160 sound=bogus.au `state' Example: @event=state play=1 pause=1 volume=120 `stop' Example: @event=stop id=#160 sound=bogus.au `volume' Example: @event=volume volume=200 Notification messages can be enabled and disabled using the `set' command. For example, `set notify=play,pause' tells the server to send notification messages when sounds are played or paused. For fun you might try connecting to your rplay server with telnet and monitor its events in real-time. This can be done using the following: $ telnet somehost.sdsu.edu 5556 Once connected, type `set notify=all' and you will receive notification for all server events.  File: RPTP.info, Node: Commands, Next: Connecting, Prev: Event Notification, Up: Top Commands ******** Clients use commands to interact with the server. All commands will return errors using a result line beginning with `-'. This line will always contain the `error' attribute which contains a text error message. An example error response would be: `-error="access denied"'. The follow is a list of all the RPTP commands. Almost all commands accept attributes which can be specified in any order. More commands and command attributes can and probably will be added in the future. - Command: access Obtain client access permissions. This command returns one line containing the `access' attribute. - Command: application NAME Set the name of the client application. This command returns one line containing the `name' of the application. Example: application Xrplay 2.0 +Xrplay 2.0 *Caution:* This command is considered obsolete and may be removed in the future. Please use the `set' command instead. - Command: continue ID|SOUND ... Continue playing a paused sound. This command returns one line containing the `message' attribute. Example: continue sound=bogus.au +message="continue successful" - Command: done ID|SOUND ... Force a playing or paused sound to be done. In most cases this is the same as stop. This command returns one line containing the `message' attribute. Example: done sound=bogus.au message="done successful" - Command: find SOUND Search for a sound. This command returns one line containing the `sound' and `size' attributes. Example: find sound=bogus.au +sound=bogus.au size=9574 - Command: get SOUND Retrieve a sound. This command returns one line containing the `sound' and `size' attributes followed by `size' bytes of audio data. Example: get sound=bogus.au +sound=bogus.au size=9574 ... 9574 bytes of audio data ... - Command: help Obtain a list of server-supported commands. - Command: info SOUND Obtain information about a sound. This command returns one line containing information about the sound. The following attributes may be included: `sound', `size', `bits', `sample-rate', and `channels'. Example: info sound=bogus.au +sound=bogus.au size=9574 bits=8 sample-rate=8000 channels=1 - Command: list [CONNECTIONS|HOSTS|SERVERS|SPOOL|SOUNDS] List the specified server information. `connections' the server's RPTP connections `hosts' the server's rplay.hosts. `servers' the server's rplay.servers. `spool' the server's audio spool. `sounds' the server's rplay.conf and rplay.cache. This command returns one line containing the `message' attribute followed by zero or more lines terminated by a line containing only a `.'. Example: list connections +message="connections" host=130.191.225.64 type=client what=idle host=127.0.0.1 type=client what="notify 00000080" idle=.06 application="Xrplay 2.0" . list hosts +message="hosts" host=mojo access=rwx host=127.0.0.1 access=rwx . list servers +message="servers" host=hercules.sdsu.edu port=5556 host=pandora.sdsu.edu port=5556 . list spool +message="spool" id=#437 state=play sound=petergun host=130.191.225.64 volume=127 \backslash priority=0 count=1 seconds=227.75 sample_rate=8000 . list sounds +message="sounds" sound=monster2.au sound=monster1.au sound=monkey-3.au sound=monkey-2.au sound=monkey-1.au . *Caution:* This command does not use name-value pairs as arguments. - Command: pause ID|SOUND Pause a playing sound. This command returns one line containing the `message' attribute. Example: pause sound=bogus.au +message="pause successful" - Command: play Play a sound. This command accepts several attribute arguments, but only the `sound' attribute is required and it may be repeated to play a list of sounds sequentially. The `sound' attribute can be preceded by any of the following attributes: `count' `list-count' `priority' `random' `sample-rate' `volume' `input' `input-bits' `input-byte-order' `input-channels' `input-format' `input-offset' `input-sample-rate' This command returns one line containing the `id' attribute. Example: play sample-rate=4000 priority=255 sound=Debbie +id=#84 - Command: put ID|SIZE Give the server an entire sound or send flow data to a particular spool id. This command returns one line containing the `sound' or `id' and `size' attributes. After this line is received by the client, the server assumes the client will then send `size' bytes of audio data. If the specified spool id doesn't exist, the server will return an error. Example: put sound=bogus.au size=9574 +sound=bogus.au size=9574 or put id=#200 size=8000 +id=#200 size=8000 - Command: quit Terminate the RPTP session. This command returns nothing, the server simply closes the connection. - Command: reset Tell the server to reset itself. A reset usually includes re-reading all configuration files, closing all connections, and removing all sounds from the spool. If possible, the server will return one line containing the `message' attribute. The server will probably close the connect so the line may not be sent. - Command: set NAME[=VALUE] ... Get and set server attributes. The current set of supported server attributes is: `application' `level-notify-rate' `notify' `notify-rate' `position-notify-rate' `priority-threshold' `volume' This command returns one line containing the server's values for the specified attributes. If an attribute cannot be set, the server will return a value of `-1' for that attribute. Example: set application="Xrplay 2.0" notify=state volume=127 +application="Xrplay 2.0" notify=state volume=127 or set volume +volume=127 *Caution:* This command does not use name-value pairs to "get" the value of attributes. - Command: skip ID|COUNT Skip around to sounds in a sound list. The sound list must be referenced by ID. The number of sounds to skip (COUNT) can be negative (skip backwards), zero (skip to the beginning of the current sound), or positive (skip forward). Skipping before the beginning of the sound list will cause the first sound to be played. Skipping after the last sound will terminate the spool entry. Skipping a paused sound will cause the next sound (the skipee?) to also be paused. This command returns one line containing the `message' attribute. Example: skip id=#0 count=1 +message="skipped" - Command: status Obtain a server's current status. This command returns one line containing several attributes. Example: status +host=mojo version=3.2.0a8 uptime=01:32 audio-bits=8 audio-bufsize=800 \ audio-channels=1 audio-device=/dev/audio audio-format=ulaw \ audio-port=speaker audio-rate=10 audio-sample-rate=8000 volume=127 \ curr-bufsize=800 curr-rate=10 - Command: stop ID|SOUND ... Stop a paused or playing sound. This command returns one line containing the `message' attribute. Example: stop sound=bogus.au +message="stop successful" - Command: version Obtain the version number of the server. This command returns one line containing the `version' attribute. Example: version +version=3.2.0a8 - Command: volume [NEW-VOLUME] Get and set the volume of the audio device. This command returns one line containing the volume of the audio device. - Command: wait ID|EVENT|COMMAND Wait for a spool id, an event, or wait for the completion of a RPTP command. This comand returns one line that always contains the event attribute. Other attributes may also be included to provide more event information. Example: wait play sound=bogus +event=done id=#267 sound=bogus.au or wait event=volume +event=volume volume=135 or wait id=#300 +event=done id=#300 sound=tap2.au or wait event=any +event=play id=#360 sound=tap2.au volume=127 sample-rate=8000 seconds=0.21 count=1 *Caution:* This command is considered obsolete and may be removed in the future. Please use the `set' command instead.  File: RPTP.info, Node: Connecting, Next: Timeouts, Prev: Commands, Up: Top Connecting ********** An initial connection to a RPTP server is considered to be a RPTP command. This means that the server will always send a response to every client connection. The response sent is one line that begins with `+' for a successful connection and `-' for errors. The rest of the line consists of server attributes that can be used to find out more information about the server. An example would be: +host=hercules version=3.2.0b3 uptime=00:47:20 audio-bits=16 \ audio-bufsize=2450 audio-byte-order=big-endian audio-channels=1 \ audio-device=/dev/audio audio-format=linear-16 \ audio-port=speaker,headphone,lineout audio-rate=10 \ audio-sample-rate=11025 volume=120 curr-bufsize=2450 curr-rate=9 \ priority-threshold=0 Note that a `\' was used in the above example to split up the long attribute line.  File: RPTP.info, Node: Timeouts, Next: Attribute Index, Prev: Connecting, Up: Top Timeouts ******** RPTP servers can be configured to close connections on idle clients. Before the connection is closed, the server will send a timeout notification to the client. The notification is one line that begins with `!'. The reset of the line will contain attributes which should contain information about the timeout. For example: !message="Connection timed out after 300 idle seconds."  File: RPTP.info, Node: Attribute Index, Next: Event Index, Prev: Timeouts, Up: Top Attribute Index *************** * Menu: * access: Attributes. * application: Attributes. * audio-bits: Attributes. * audio-bufsize: Attributes. * audio-byte-order: Attributes. * audio-channels: Attributes. * audio-device: Attributes. * audio-format: Attributes. * audio-offset: Attributes. * audio-port: Attributes. * audio-rate: Attributes. * audio-sample-rate: Attributes. * audio-volume: Attributes. * bits: Attributes. * channels: Attributes. * count: Attributes. * error: Attributes. * event: Attributes. * format: Attributes. * host: Attributes. * id: Attributes. * idle: Attributes. * input: Attributes. * input-bits: Attributes. * input-byte-order: Attributes. * input-channels: Attributes. * input-format: Attributes. * input-offset: Attributes. * input-sample-rate: Attributes. * left: Attributes. * list-count: Attributes. * message: Attributes. * notify: Attributes. * pause: Attributes. * play: Attributes. * position: Attributes. * priority: Attributes. * random: Attributes. * remain: Attributes. * right: Attributes. * sample: Attributes. * sample-rate: Attributes. * samples: Attributes. * seconds: Attributes. * size: Attributes. * sound: Attributes. * uptime: Attributes. * version: Attributes. * volume: Attributes.  File: RPTP.info, Node: Event Index, Next: Command Index, Prev: Attribute Index, Up: Top Event Index *********** * Menu: * all: Events. * any: Events. * continue: Events. * done: Events. * level: Events. * none: Events. * pause: Events. * play: Events. * position: Events. * skip: Events. * state: Events. * stop: Events. * volume: Events.  File: RPTP.info, Node: Command Index, Prev: Event Index, Up: Top Command Index ************* * Menu: * access: Commands. * application: Commands. * continue: Commands. * done: Commands. * find: Commands. * get: Commands. * help: Commands. * info: Commands. * list: Commands. * pause: Commands. * play: Commands. * put: Commands. * quit: Commands. * reset: Commands. * set: Commands. * skip: Commands. * status: Commands. * stop: Commands. * version: Commands. * volume: Commands. * wait: Commands.  Tag Table: Node: Top731 Node: Overview1170 Node: Attributes3059 Node: Events8728 Node: Event Notification9612 Node: Commands11672 Node: Connecting21105 Node: Timeouts22048 Node: Attribute Index22548 Node: Event Index25229 Node: Command Index25983  End Tag Table 070701001817a7000081a40000000000000000000000014dc7729a00001429000000b600010002ffffffffffffffff0000001f00000000root/usr/local/info/RPLAY.infoThis is Info file RPLAY.info, produced by Makeinfo-1.63 from the input file RPLAY.texi. This file documents RPLAY protocol. Copyright (C) 1995 Mark Boyns Permission is granted to make and distribute verbatim copies of this manual provided the copyright notice and this permission notice are preserved on all copies. Permission is granted to copy and distribute modified versions of this manual under the conditions for verbatim copying, provided also that the entire resulting derived work is distributed under the terms of a permission notice identical to this one. Permission is granted to copy and distribute translations of this manual into another language, under the above conditions for modified versions.  File: RPLAY.info, Node: Top, Next: Overview, Prev: (dir), Up: (dir) RPLAY ***** This file documents the RPLAY protocol. * Menu: * Overview:: Prelimary information * Commands:: List of supported commands. * Attributes:: List of supported command attributes. * Packet description:: What a RPLAY packet looks like.  File: RPLAY.info, Node: Overview, Next: Commands, Prev: Top, Up: Top Overview ******** The `RPLAY' protocol uses simple binary UDP packets to control the audio server. Communication between the client and server is one-way - packets are sent to the server and the server *never* replies.  File: RPLAY.info, Node: Commands, Next: Attributes, Prev: Overview, Up: Top Commands ******** `RPLAY' is based on a small set of commands which are used to control the audio server. These commands are: `RPLAY_PLAY' Play a sound. `RPLAY_STOP' Stop a sound. `RPLAY_PAUSE' Pause a sound. `RPLAY_CONTINUE' Continue a sound. `RPLAY_PING' Wakeup the server. This command was introduced to solve a problem with TCP clients that are trying to connect to a server that's started by inetd using a UDP port. `RPLAY_RESET' Force the server to reset itself. A reset normally involves re-reading all database files, closing all connections, and stops all playing sounds. `RPLAY_DONE' Force a sound to be done. In most cases this is the same as `RPLAY_STOP'.  File: RPLAY.info, Node: Attributes, Next: Packet description, Prev: Commands, Up: Top Attributes ********** Most `RPLAY' commands use attributes to modify their behaviour. These attributes are: `RPLAY_COUNT' The number of times to play a sound. The value should be between 0 and 255 inclusive. A value of 0 will play the sound forever. The default is RPLAY_DEFAULT_COUNT. `RPLAY_LIST_COUNT' The number of times to play a sound list. The value should be between 0 and 255 inclusive. A value of 0 will play the sound forever. The default is RPLAY_DEFAULT_LIST_COUNT. `RPLAY_PRIORITY' The priority of a sound. The value should be between RPLAY_MIN_PRIORITY (0) and RPLAY_MAX_PRIORITY (255). The default is RPLAY_DEFAULT_PRIORITY (0). `RPLAY_RPTP_FROM_SENDER' Tell the rplay server that it should try to contact the sender's RPTP server to obtain RPLAY_SOUND. This is only used if the rplay server does not already have the sound. `RPLAY_RPTP_SERVER' Tell the rplay server which RPTP server should be used to try and obtain RPLAY_SOUND. This is only used if the rplay server does not already have the sound and RPLAY_RPTP_SEARCH is true. `RPLAY_RPTP_SEARCH' Tell the rplay server whether or not it should search for RPLAY_SOUND. `RPLAY_RPTP_SERVER_PORT' Tell the rplay server which port should be used to contact the RPTP server when using RPLAY_RPTP_SEARCH. `RPLAY_SAMPLE_RATE' Play a sound at a specified sample rate. A value of 0 will use the sound's default sample rate. The default value is RPLAY_DEFAULT_SAMPLE_RATE (0). `RPLAY_SOUND' The name of a sound. `RPLAY_VOLUME' The volume of a sound. The value should be between RPLAY_MIN_VOLUME (0) and RPLAY_MAX_VOLUME (255). The default is RPLAY_DEFAULT_VOLUME (127).  File: RPLAY.info, Node: Packet description, Prev: Attributes, Up: Top Packet description ****************** RPLAY packets always begin with a RPLAY_ID byte followed by a RPLAY command. (*note Commands::.) The remaining contents is a list of attributes (*note Attributes::.) and their corresponding values. The packet is terminated with the RPLAY_NULL attribute. A packet will never contain an attribute that is set to a default value. This feature allows new attributes to be added without breaking old servers and it also makes packets very small. Here's an example packet: RPLAY_ID RPLAY_PLAY RPLAY_SOUND RPLAY_NULL 30 1 5 bogus.au 0 Note that numbers in RPLAY packets are stored in one byte and strings are always null-terminated. The above example in hexadecimal would be: 1E 01 05 62 6f 67 75 73 2E 61 75 00 00  Tag Table: Node: Top734 Node: Overview1124 Node: Commands1425 Node: Attributes2252 Node: Packet description4129  End Tag Table 070701001817ae000041ed0000000000000000000000054dc7729e00000000000000b600010002ffffffffffffffff0000001300000000root/usr/local/man070701001817b2000041ed0000000000000000000000024dc7729e00000000000000b600010002ffffffffffffffff0000001800000000root/usr/local/man/man5070701001817b4000081a40000000000000000000000014dc7729a00000278000000b600010002ffffffffffffffff0000002800000000root/usr/local/man/man5/rplay.helpers.5.TH RPLAY.HELPERS 5 06/22/98 .SH NAME rplay.helpers \- rplay helper applications .SH SYNOPSIS .B /usr/local/etc/rplay.helpers .SH DESCRIPTION The .I rplay.helpers file contains a list of regex and application pairs used by .I rplayd to convert unknown file formats. The application must be configured to accept input from stdin and output data to stdout in the given audio format. Each line of this file is of the form: .IP .SH EXAMPLE .*mp3$ linear16,44100,16,2,little-endian /usr/bin/mpg123 -s -q -r 44100 --stereo - .SH FILES .B /usr/local/etc/rplay.helpers .SH "SEE ALSO" .BR rplayd (8) 070701001817b3000081a40000000000000000000000014dc7729a0000027e000000b600010002ffffffffffffffff0000002500000000root/usr/local/man/man5/rplay.conf.5.TH RPLAY.CONF 5 12/21/97 .SH NAME rplay.conf \- rplay sound database .SH SYNOPSIS .B /usr/local/etc/rplay.conf .SH DESCRIPTION The .I rplay.conf file contains a list of sound files that are available locally to .I rplayd. Each line must contain the complete pathname of one sound file. rplayd can be forced to re-read this file using the .I "rplay --reset" command. .SH EXAMPLE /usr/local/lib/sounds/bark.au .br /usr/local/lib/sounds/bogus.au .br /usr/local/lib/sounds/Puke.au .SH FILES .B /usr/local/etc/rplay.conf .SH "SEE ALSO" .BR rplayd (8) .BR rplay (1) .SH BUGS The name of this file should really be rplay.sounds, but it's not. 070701001817b6000081a40000000000000000000000014dc7729a000002f8000000b600010002ffffffffffffffff0000002800000000root/usr/local/man/man5/rplay.servers.5.TH RPLAY.SERVERS 5 12/21/97 .SH NAME rplay.servers \- rplay servers database .SH SYNOPSIS .B /usr/local/etc/rplay.servers .SH DESCRIPTION The .I rplay.servers file contains a list of hosts that .I rplayd will contact to obtain sound files that are not available locally. Servers are contacted sequentially; best servers should be listed first. Each line is of the form: .IP hostname[:port] .LP where .TP 15 .B hostname is the name of a remote host or a host's IP address. .TP 15 .B port is an optional field containing the port to connect to. Port 5556 is used when the port is not specified. .SH EXAMPLE bozo.sdsu.edu .br 130.191.224.88 .br bozo.nowhere.com .br soundhost.foo.com:9999 .SH FILES .B /usr/local/etc/rplay.servers .SH "SEE ALSO" .BR rplayd (8) 070701001817b5000081a40000000000000000000000014dc7729a000005c4000000b600010002ffffffffffffffff0000002600000000root/usr/local/man/man5/rplay.hosts.5.TH RPLAY.HOSTS 5 12/21/97 .SH NAME rplay.hosts \- rplay host authentication database .SH SYNOPSIS .B /usr/local/etc/rplay.hosts .SH DESCRIPTION The .I rplay.hosts file contains a list of hosts and access permissions which .I rplayd uses to validate incoming connections. Each line is of the form: .IP hostname[:permission] .PP where .TP 15 .B hostname is the name of a remote host or a host's IP address. Wildcards can be used within IP addresses to match multiple hosts. The wildcard character is "*". .TP 15 .B permission is an optional field containing any combination of the following characters: .RS .TP 3 .B r the host can read sounds. .TP 3 .B w the host can write sounds. .TP 3 .B x the host can play, stop, pause, and continue sounds. This is normally called execute permission. .RE .TP "rx" permissions are used when no permissions are specified. .SH EXAMPLE .LP .ft B .nf # # All hosts have read access: # *:r # # Trusted hosts: # nice-guy.sdsu.edu:rwx friend.sdsu.edu:rwx amigo.sdsu.edu:rwx 130.191.224.224:rwx # # Hosts which can read and execute: # foo.bar.com:rx 130.190.*:rx 146.244.234.*:rx using.default.perms.edu .fi .ft R .LP .SH FILES .B /usr/local/etc/rplay.hosts .SH "SEE ALSO" .BR rplayd (1) .SH BUGS The permissions for an "*" entry apply to .B all matching hosts. The order of this file does not matter. Specific hosts can have access disabled with entries like: .LP .nf bad.guy.edu: .fi .LP however, any matching "*" entries will still apply. 070701001817b7000041ed0000000000000000000000024dc7729e00000000000000b600010002ffffffffffffffff0000001800000000root/usr/local/man/man8070701001817b8000081a40000000000000000000000014dc7729a0000199f000000b600010002ffffffffffffffff0000002100000000root/usr/local/man/man8/rplayd.8.TH RPLAYD 8 6/29/98 .SH NAME rplayd \- rplay sound server .SH SYNOPSIS .B rplayd [options] .SH DESCRIPTION .B rplayd is the sound server for the rplay audio system. The server listens for requests to play, pause, continue, and stop sounds using both the RPLAY and RPTP protocols. Normally RPLAY requests are received on port 5555/udp and RPTP on 5556/tcp. (Older ports 55555/udp and 55556/tcp are also supported) Access to the server is restricted using the .I rplay.hosts file. .P rplayd can be started during the system boot process, via inetd, or by individual users. root access may be required depending on audio device permissions. .P In most causes rplayd will play sounds that are available on the local disk. However, rplayd can be sent sounds via the network and rplayd can also contact other rplayds to share sound files. The index of all the local sound files is stored in .I rplay.conf and remote rplayds are specified in .I rplay.servers. Sounds received from other rplayds will be stored in a cache directory normally located in .I /tmp/.rplay-cache. Cache entries are expired on an LRU basis. .P Many sound file formats are supported by rplayd. These include: .nf AU AIFF WAV VOC UB UL G.721 4-bit, G.723 3-bit, G.723 5-bit GSM .fi .P Other formats can be played using external helper applications which convert unknown file formats to CD quality data which can then be played by rplayd. See rplay.helpers(5) .P Several sounds can be played at once and sounds can be played at any sample rate. rplayd can be configured to output many different formats using the various \-\-audio options. .P On some systems, namely Solaris and Linux, rplayd can read sounds directly from CDROM using CDDA. The special sound name .I cdrom: will play the entire CDROM. .I cdrom:3-5 will play tracks 3 through 5. .SH OPTIONS .TP .I "\-A DEVICE, \-\-audio\-device=DEVICE" Use DEVICE for the audio device (/dev/dsp). .TP .I "\-B N, \-\-audio\-bits=N" Audio device bits per sample, 8 or 16. .TP .I "\-\-audio\-channels=N" Number of audio channels to use, 1 == mono, 2 == stereo. .TP .I "\-c N, \-\-audio\-close=N" Close /dev/dsp after N idle seconds, disabled with 0 (5). .TP .I "\-F N, \-\-audio_flush=N" Flush /dev/dsp after N idle seconds, disabled with 0 (-1). N = -1 : flush when spool is empty. N = -2 : flush after each audio write. (not recommended) N should be <= to the audio close timeout. .TP .I "\-\-audio\-format=FORMAT" Tell rplayd to write audio data using FORMAT, where FORMAT can be ulaw, linear-8, ulinear-8, linear-16, or ulinear-16. (linear = signed, ulinear = unsigned) .TP .I "\-\-audio\-fragsize=N" Audio fragment size (0). The default size is zero which lets the audio driver pick the "best" size. The size specified must be a power of 2 greater than 16. Example: 256, 1024, 4096. .TP .I "\-\-audio\-info=INFO, \-\-info=INFO, \-i INFO" Specify complete audio device information with one option. INFO is of the form: format,sample-rate,bits,channels Examples: `ulaw,8000,8,1' and `linear-16,44100,16,2' Also provided are: --audio-info-ulaw, --info-ulaw -> ulaw,8000,8,1 .TP .I "\-\-audio\-match" Attempt to match the sample rate of the audio device with the sample rate of the current sound when no other sounds are playing. If the match fails, --audio-sample-rate is used. This option overrides --audio-bufsize. .TP .I "\-\-audio\-port=PORT[,PORT...]" Output audio to the specified audio port(s). Valid ports are `speaker', `headphone', and `lineout'. Multiple ports can be specified using `speaker,headphone,lineout' .TP .I "\-r N, \-\-audio\-rate=N" Write the audio buffer N times per second (0). .TP .I "\-R N, \-\-audio\-sample\-rate=N" Sample rate of the audio device. .TP .I "\-\-auth" Enable host access authentication. .TP .I "\-D DIR, \-\-cache\-directory=DIR" Use DIR for rplay.cache (/tmp/.rplay-cache). .TP .I "\-\-cache\-remove" Remove the cache directory and all its contents when rplayd exists. .TP .I "\-s N, \-\-cache\-size=N" Maximum size in bytes of the rplay cache, disabled with 0 (8388608). .TP .I "\-\-cdrom0=DEVICE, \-\-cdrom1=DEVICE, \-\-cdrom2=DEVICE, \-\-cdrom3=DEVICE" Specify the cdrom[0-3] to DEVICE mapping. For Solaris 2.x the default mapping is cdrom[0-3] -> /vol/dev/aliases/cdrom[0-3]. Linux uses cdrom[0-3] -> /dev/cdrom[0-3]. .TP .I "\-C FILE, \-\-conf=FILE" Use FILE for rplay.conf (/etc/rplay/rplay.conf). .TP .I "\-T N, \-\-connection\-timeout=N" Close idle RPTP connections after N seconds, disabled with 0 (300). .TP .I "\-d, \-\-debug" Enable debug mode. .TP .I "\-f HOST, \-\-forward=HOST" Forward all RPLAY packets to HOST. .TP .I "\-\-fork" Enable backgrounding rplayd at startup. (enabled) .TP .I "\-\-group=GROUP" Run with GROUP privs. (audio) .TP .I "\-\-help" Display helpful information. .TP .I "\-\-helpers=FILE" Use FILE for rplay.helpers (/etc/rplay/rplay.helpers). .TP .I "\-H FILE, \-\-hosts=FILE" Use FILE for rplay.hosts (/etc/rplay/rplay.hosts). .TP .I "\-\-inetd" Enable inetd mode. (disabled) .TP .I "\-L FILE, \-\-log\-file=FILE" Use file for rplay.log (/tmp/rplay.log). .TP .I "\-l N, \-\-log\-level=N" Use logging level N where 0 <= n <= 4. .TP .I "\-\-memory\-cache\-size=N" Maximum size in bytes of the memory cache, disable caching with 0 (4194304). .TP .I "\-\-memory\-cache\-sound\-size=N" Maximum size in bytes of a sound that can be cached in memory. A value of 0 means to try and cache all sounds. (2097152) .TP .I "\-N, \-\-no\-audio" Disable audio, RPTP file server mode. .TP .I "\-\-no\-auth" Disable host access authentication. .TP .I "\-n, \-\-no\-inetd" Disable inetd mode. (disabled) .TP .I "\-\-no\-fork" Disable backgrounding rplayd at startup. (enabled) .TP .I "\-\-options\-file=FILE" Read rplayd options from FILE. .TP .I "\-\-port=PORT, \-\-rplay\-port=PORT" Use PORT as the RPLAY/UDP port. (5555) (--other-rplay-port may also be available) .TP .I "\-\-rptp\-port=PORT" Use PORT as the RPTP/TCP port. (5556) (--other-rptp-port may also be available) .TP .I "\-S FILE, \-\-servers=FILE" Use FILE for rplay.servers (/etc/rplay/rplay.servers). .TP .I "\-t N, \-\-timeout=N" Exit after N idle seconds, disabled with 0 (0). .TP .I "\-\-user=USER" Run with USER privs. (nobody) .TP .I "\-v, \-\-version" Print the rplay version and exit. .SH FILES .nf ~/.rplaydrc /tmp/.rplay-cache /usr/local/etc/rplay.conf /usr/local/etc/rplay.helpers /usr/local/etc/rplay.hosts /usr/local/etc/rplay.servers .fi .SH SEE ALSO .IR rplay.conf (5), .IR rplay.helpers (5), .IR rplay.hosts (5), .IR rplay.servers (5), .IR rplay (1), .IR rptp (1) 070701001817af000041ed0000000000000000000000024dc7729e00000000000000b600010002ffffffffffffffff0000001800000000root/usr/local/man/man1070701001817b0000081a40000000000000000000000014dc7729a00000a77000000b600010002ffffffffffffffff0000002000000000root/usr/local/man/man1/rplay.1.TH RPLAY 1 6/29/98 .SH NAME rplay \- play, pause, continue, and stop sounds .SH SYNOPSIS .B rplay [options] [sound ...] .SH DESCRIPTION rplay is client that communicates with rplayd to play, pause, continue, and stop sounds using both the RPLAY and RPTP protocols. Sound files can be played by rplayd directly if available on the local system or sounds can be sent over the network using UDP or TCP/IP. rplay will attempt to determine whether or not the server has the sound before using the network. .SH OPTIONS .TP .I "\-b BYTES, \-\-buffer\-size=BYTES" Use of a buffer size of BYTES when playing sounds using RPTP flows. The default is 8K. .TP .I "\-c, \-\-continue" Continue sounds. .TP .I "\-n N, \-\-count=N" Number of times to play the sound, default = 1. .TP .I "\-N N, \-\-list\-count=N" Number of times to play all the sounds, default = 1. .TP .I "\-\-list\-name=NAME" Name this list NAME. rplayd appends sounds with the same NAME into the same sound list -- it plays them sequentially. .TP .I "\-\-help" Display helpful information. .TP .I "\-h HOST, \-\-host=HOST, \-\-hosts=HOST" Specify the rplay host, default = localhost. .TP .I "\-i INFO, \-\-info=INFO" Audio information for a sound file. This option is intended to be used when sounds are read from standard input. INFO must be of the form: `format,sample-rate,bits,channels,byte-order,offset' Examples: ulaw,8000,8,1,big-endian,0 gsm,8000 Shorthand info is provided for Sun's audio devices using the following options: --info-amd, --info-dbri, --info-cs4231. There's also: --info-ulaw and --info-gsm. .TP .I "\-p, \-\-pause" Pause sounds. .TP .I "\-\-port=PORT" Use PORT instead of the default RPLAY/UDP or RPTP/TCP port. .TP .I "\-P N, \-\-priority=N" Play sounds at priority N (0 <= N <= 255), default = 0. .TP .I "\-r, \-\-random" Randomly choose one of the given sounds. .TP .I "\-\-reset" Tell the server to reset itself. .TP .I "\-\-rplay, \-\-RPLAY" Force the use of the RPLAY protocol. The default protocol to be used is determined by checking whether or not the server has local access to the specified sounds. RPLAY is used when sounds are accessible, otherwise RPTP and possibly flows are used. RPLAY will also be used when sound accessibility cannot be determined. .TP .I "\-\-rptp, \-\-RPTP" Force the use of the RPTP protocol. See `--rplay' for more information about protocols. .TP .I "\-R N, \-\-sample\-rate=N" Play sounds at sample rate N, default = 0. .TP .I "\-s, \-\-stop" Stop sounds. .TP .I "\-\-version" Print the rplay version and exit. .TP .I "\-v N, \-\-volume=N" Play sounds at volume N (0 <= N <= 255), default = 127. .SH SEE ALSO .IR rplayd (8), .IR rptp (1) 070701001817b1000081a40000000000000000000000014dc7729a000001a0000000b600010002ffffffffffffffff0000001f00000000root/usr/local/man/man1/rptp.1.TH RPTP 1 6/29/98 .SH NAME rptp \- communicate with rplayd using RPTP .SH SYNOPSIS .B rptp [options] [command] .SH DESCRIPTION rptp is a simple RPTP client that communicates with rplayd using the RPTP protocol. Several commands can be issued to control rplayd and report its status. See the output of the .B rptp help command for a list of available commands. .OPTIONS .SH SEE ALSO .IR rplayd (8), .IR rplay (1) 070701001817ab000041ed0000000000000000000000024dc7729e00000000000000b600010002ffffffffffffffff0000001300000000root/usr/local/lib070701001817ac000081a40000000000000000000000014dc7729a00013f60000000b600010002ffffffffffffffff0000001e00000000root/usr/local/lib/librplay.a! / 1304916634 0 0 0 1248 ` 9$$$$$$$$$$$$$$$$$$$$$$$$$$$$DDDDDDDDDDDDDrplay_packrplay_errnorplay_unpackrplay_createrplay_setrplay_getrplay_destroyrplay_convert.XBKk4DpZK3xNlBq.rplay_convert.bufrplay_openrplay_open_portrplay_open_sockaddr_inrplayrplay_closerplay_perrorrplay_errlistrplay_open_displayrplay_displayrplay_soundrplay_localrplay_hostrplay_pingrplay_ping_sockfdrplay_ping_sockaddr_inrplay_host_volumerplay_default_hostrplay_defaultrplay_open_defaultrptp_openrptp_errnorptp_getlinerptp_readrptp_writerptp_putlinerptp_commandrptp_closerptp_perrorrptp_errlistrptp_parse.XBKk4DpaK3xNlCq.rptp_parse.list_pos.XAKk4DpaK3xNlCq.list.XAKk4DpaK3xNlCq.list_next.XBKk4DpaK3xNlCq.rptp_parse.buf.XBKk4DpaK3xNlCq.rptp_parse.cache_posrptp_main_loop.XAKk4DpaK3xNVDq.looping.XAKk4DpaK3xNVDq.main_loop_return_value.XAKk4DpaK3xNVDq.grouprptp_async_processrptp_stop_main_looprptp_async_putlinerptp_async_writerptp_async_registerrptp_async_notify.XBKk4DpaK3xNVDq.process_input.length.XBKk4DpaK3xNVDq.process_input.line.XAKk4DpaK3xNVDq.eventsrplay.o/ 1304916634 0 0 100644 43676 ` ELF4(.strtab.text.bss.data.rodata.rodata1.comment.debug_loc.debug_info.debug_line.debug_abbrev.debug_pubnames.debug_funcnames.debug_typenames.debug_varnames.symtabrplay.crplay_attrs_createrplay_attrs_destroyget_attrsdefault_rplay_portBbss.bssDdata.dataDrodata.rodatamallocfreerplay_packrplay_errnoreallocmemcpystrlenhtonlhtonsrplay_unpackrplay_createstrdupntohsntohlprintfrplay_settimesrandomrandomgethostnamememsetinet_addrgethostbynameinet_ntoarplay_getrplay_destroyrplay_convert.XBKk4DpZK3xNlBq.rplay_convert.bufstrcpygetservbynamerplay_openrplay_open_portrplay_open_sockaddr_insocketsetsockoptconnectrplaywriterplay_closecloserplay_perrorrplay_errlist__iobfprintfrplay_open_displaygetenvstrchrstrcmprplay_displayrplay_soundrplay_localrplay_hostrplay_pingrplay_ping_sockfdrplay_ping_sockaddr_inrplay_host_volumerplay_default_hostrplay_defaultrplay_open_default.rel.text.rel.data.rel.debug_info.rel.debug_line.rel.debug_pubnames.rel.debug_funcnames.rel.debug_typenames.rel.debug_varnamesUjj$EEu EhE@EPE@E@ E@UfBE@E@EP EEEÐUE@@tEj@PE@tEj@PE@ @tEj@ PjEPÐU$EE@ EEE@ U@;BvJE@EE@UBE@= ~EE@ U@;BwEtAUE@PBPЋEPE@uEIEUHJ jEPQ E@ U@B E@EEE@ U@;BvLE@EE@UBE@= ~EE@ U@;BwEtAUE@PBPЋEPE@uEmEUHJ jEPQ E@ U@B E@EEE@ U@;BvJE@EE@UBE@= ~EE@ U@;BwEtAUE@PBPЋEPE@uEEUHJ jEPQ E@ U@B E@EEE@ U@;BvLE@EE@UBE@= ~EE@ U@;BwEtAUE@PBPЋEPE@uEEUHJ jEPQ E@ U@B E@ EEE@ U@;BvJE@EE@UBE@= ~EE@ U@;BwEtAUE@PBPЋEPE@uEEUHJ jEPQ E@ U@B E@ EEE@ U@;BvLE@EE@UBE@= ~E=E@ U@;BwEtAUE@PBPЋEPE@uEEUHJ jEPQ E@ U@B E@(@EEE@ U@;BvJE@EE@UBE@= ~EOE@ U@;BwEtAUE@PBPЋEPE@uEEUHJ jEPQ E@ U@B Ej@(P@EEEP UE;P~LE@EE@UBE@= ~EgEP UE;PEt?UE@PBPЋEPE@uEEUHJ UEPB(PQ EP UEP E@,EEE@ U@;BvKE@EE@UBE@= ~ExE@ U@;BwEtAUE@PBPЋEPE@uE!EUHJ jEPQ E@ U@B Ej@,PEEE@ U;BvME@EE@UBE@= ~EE@ U;BwEt?UE@PBPЋEPE@uE7EUHJ jEPQ E@ UB E@0EEE@ U@;BvLE@EE@UBE@= ~EE@ U@;BwEtAUE@PBPЋEPE@uEMEUHJ jEPQ E@ U@B Ej@0PEEE@ U;BvME@EE@UBE@= ~EE@ U;BwEt?UE@PBPЋEPE@uEcEUHJ jEPQ E@ UB E@8E@4EEE@ U@;BvLE@EE@UBE@= ~EE@ U@;BwEtAUE@PBPЋEPE@uEiEUHJ jEPQ E@ U@B E@4jPfEEE@ U;BvOE@EE@UBE@= ~EE@ U;BwEt?UE@PBPЋEPE@uE{EUHJ jEPQ E@ UB EEE@ U@;BvKE@EE@UBE@= ~EE@ U@;BwEtAUE@PBPЋEPE@uEEUHJ jEPQ E@ U@B EUE@4R M;A~UE@EE@UBE@= ~EUE@4R M;AEtAUE@PBPЋEPE@uEEUHJ UE@4PB8PQ UE@4R M‰A EE@EEE@$tEU;P$tdE@@EEE@ U@;BvJE@EE@UBE@= ~EE@ U@;BwEtAUE@PBPЋEPE@uEEUHJ jEPQ E@ U@B Ej@P@EEEP UE;P~LE@EE@UBE@= ~EEP UE;PEt?UE@PBPЋEPE@uEEUHJ UEPBPQ EP UEP E@EEE@ U@;BvKE@EE@UBE@= ~EE@ U@;BwEtAUE@PBPЋEPE@uEEUHJ jEPQ E@ U@B E@EEE@ U@;BvLE@EE@UBE@= ~E-E@ U@;BwEtAUE@PBPЋEPE@uE EUHJ jEPQ E@ U@B E@  EEE@ U@;BvJE@EE@UBE@= ~EC E@ U@;BwEtAUE@PBPЋEPE@uE EUHJ jEPQ E@ U@B E@ EEE@ U@;BvLE@EE@UBE@= ~Ei E@ U@;BwEtAUE@PBPЋEPE@uE EUHJ jEPQ E@ U@B E@EEE@ U@;BvJE@EE@UBE@= ~E E@ U@;BwEtAUE@PBPЋEPE@uE) EUHJ jEPQ E@ U@B Ej@P@EEEP UE;P~LE@EE@UBE@= ~E EP UE;PEt?UE@PBPЋEPE@uE? EUHJ UEPBPQ EP UEP E@=EEE@ U@;BvLE@EE@UBE@= ~E E@ U@;BwEtAUE@PBPЋEPE@uEM EUHJ jEPQ E@ U@B E@jPfEEE@ U;BvLE@EE@UBE@= ~EE@ U;BwEt?UE@PBPЋEPE@uE_EUHJ jEPQ E@ UB E@EEE@ U@;BvLE@EE@UBE@= ~EE@ U@;BwEtAUE@PBPЋEPE@uEuEUHJ jEPQ E@ U@B E@EEE@ U@;BvLE@EE@UBE@= ~EE@ U@;BwEtAUE@PBPЋEPE@uEEUHJ jEPQ E@ U@B E@EEE@ U@;BvJE@EE@UBE@= ~EE@ U@;BwEtAUE@PBPЋEPE@uEEUHJ jEPQ E@ U@B Ej@PEEE@ U;BvME@EE@UBE@= ~E E@ U;BwEt?UE@PBPЋEPE@uEEUHJ jEPQ E@ UB E@ @EEE@ U@;BvLE@EE@UBE@= ~E1E@ U@;BwEtAUE@PBPЋEPE@uEEUHJ jEPQ E@ U@B Ej@ P@EEEP UE;P~LE@EE@UBE@= ~EGEP UE;PEt?UE@PBPЋEPE@uEEUHJ UEPB PQ EP UEP EEE@ U@;BvJE@EE@UBE@= ~EgE@ U@;BwEtAUE@PBPЋEPE@uEEUHJ jEPQ E@ U@B E@EEE܋E@EE_EEEE@ U@;BvKE@EE@UBE@= ~E`E@ U@;BwEtAUE@PBPЋEPE@uE EUHJ jEPQ E@ U@B EEE@ U@;BvME@EE@UBE@= ~EE@ U@;BwEt=UE@PBPЋEPE@uE0EUHJ jEPQ E@ U@B EEÐUEE@EE@EE@EE@EEEjEPEEuE[ЋE@PE@@uEPE>E@ЋEPE@EjEPЋEP(jEPUDEE@ЋEP E@EjEPЋE@@PjEPUDEE@ЋE@@PE@E`E@ЋE@@P E@E<jEPЋE@@PjEPUDEE@PjEPBP E@@@jPЋE@@fPEEE@ЋE@@PE@EE@PjEPBP E@@j@PЋE@@PEE<jEPЋE@@P jEPUDEUjEPB,P Ej@,PЋEP,EEUjEPB0P Ej@0PЋEP0EEUjEPB4P E@4jPUfB4EEJE@4jPЋEP8UE@4PEPB8P E@4U‰EE@U@BE@U@BE@u E7ЋE@PE@@uE E@PhExEEE@EEP}: }&} <몐o딍Bw$)&B y$I&EEEEô"!8"%%"#d##%%#"%$P$$$Ujj<EEuE1E@EUPjhЋEPE@uEE@ E@E@E@E@E@ E@$E$P(E@,E@0E@8UfB4"EUPQ ECU}Bw$'}}tătt븃t뱐EEEÌ''''UE } E>EE;E }(Et E@EE@EE;E }EuEEEÐU`EEE EE@EEEKEE@UPEuEEUPE@U@BWE@EEEE} EEE@EE;E}.Et&EEE@EE@EE;E}EuڋEuE;Et Ea_EEuE;Et EUP E@UPEUPE@u EUPE@U@BCE@EEEE} EEE@EE;E}.Et&EEE@EE@EE;E}EuڋEu EUEt$EU@BE@u EUP"EU@BE@u EUPjEPE@UHBBE@EEEUEPBPEEu EEU@BEEE@(@tEj@(PE@EԋEEEԉEjEPЋEP(EU@B EEhjjEjEPMy‹ЋEP$.EU@B,EEEU@B0EE EE@8tEj@8PE@E܋EEEU@fB4EEE@4jPЋEP8E@8uEUE@4PEPB8P A EU}Bw$1Bw$"1EE@EԋEԉEЋEEEЉE̋Ẽ`EU@BEEE@(@tEj@(PE@EȋEEEȉEjEPЋEP(EU@B EEE@@tEj@PE@EEEEEjEPЋEPOEU@BEE4EU@B EEE@EEEEԃu>hP}EEE@EEEjjEP jEPEEuQjEPEEuEEPE@ PBPEP jEPEP jujPЋEPEU@fBEEEU@BEEEU@BEEE@ @tEj@ PE@EEEEEjEPЋEP V E~Uԃ}+ }ːBw$:1Bw$F1E@EԋEԉEȋEEEȉEċEăjEPEEð()*+-d++++-(,D,x,`,.-..//.0l0l00-UE EE@EEEkE@ElE@E\E@ELE@(E<E@ E,E@$EE@,E E@0EE@4EE@8EE@EEEUEPBPEEu EE@EE@EEEUEPBPVEEu E<E@E,E@EEEUEPBPEEu EE@ EE@EEEUEPBPEEu EE@E|E@EEEUEPBPNEEu E4E@E#E@EEEUEPBPEEu EE@EE@EEEUEPBPEEu EE@EwE@EEEUEPBPJEEu E3E@ E' EEw$5E@2211444421114H3334P4444142202 2UE@EEt%EEE@EjEPEuۋE@(@tEj@(PE@8tEj@8PEj@PjEPÐUEUBE@EQUBE@E]UBE@EIUBE@E5UBE@E!EEE@EE@Hw$7UBE@EEPEPjEP@EEEEEEEUBE@EE@UBE@EE@EUBE@EE@kUBE@EEEd6x666U h0h(EEtE@jPE EEEEÐUEEPEPEEÐUjjEP jEPEEuOjEPEEuEbEPE@ PBPEP jEPEP E jPfEfEjEPEEÐU Ejjj EE}EijjEPj hEP}E3jEPEP }EEEEÐUU E @ PBPEP ЋE ;P tEEEÐUjEP}E EEÐUjjPEPh4h ÐU jh<EEt E@:uhDPEPPj:PEEt UBhPPt2hXPth`PuhDPjPEEÐUEE} EEPEPEEÐUEPhDEEÐUjEPEE} EE PEPEEUjjEEu E_jjE Pjj EP} E7EPEP} EjEPEEÐUEEEEPEPEE} EjEPEE=u EEEPEPEE} E9jEPEE}E} EEEÐUjjEEu EajEP} ECEPEP} E%jEPjEPEEÐUjEPEE} EjEPEEÐU jEPEE} EjjEEu EajEPjE Pjj EP} E7EPEP} EjEPEEÐU jhdEEtEE DEEEEÐUЋEPREEÐUjPEEp|4Ldunpack: unknown attr '%d' rplayudp%s: %s DISPLAYlocalhostunixlocalXRPLAY_HOSTno errorout of memoryhost not foundcannot connect to socketcannot create socketerror writing to socketerror closing socketmax packet size exceededcannot enable broadcastunknown rplay attributeunknown rplay commandillegal rplay index valueunknown rplay modifier%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMIacomp: Sun C 5.10 SunOS_i386 Patch 142363-01 2009/07/15as: Sun Compiler Common 12.1 SunOS_i386 Patch 141858-03 2009/09/21rplay.c /var/tmp/rplay-3.3.2/librplay /opt/sunstudio12.1/prod/bin/cc -c -I. -I../include -I./../include -DHAVE_CONFIG_H -g rplay.c -W0,-xp.XAKk4DpZK3xNlBq.Xa;g;R=Sun C 5.10 SunOS_i386 Patch 142363-01 2009/07/15;G=.XAKk4DpZK3xNlBq.;backend;raw;cd;DBG_GEN 5.2.7charlong!4?& rplay_errlist.:rplay_attrs_createuUattrsv _rplay_attrs$S nextS# sound!# volumeX# countX# rptp_server!# rptp_server_port_# rptp_searchX# sample_rateq# client_data!# intunsigned shortunsigned long RPLAY_ATTRS rplay_attrs_destroyU attrsrplay_pack$!UX rpattrslenXgrowXiXvallvalqsval_sizeS _rplay< attrsS# attrsp# buf!# lenX# sizeX# commandX# nsoundsX# countX# priorityX# random_soundX#$ list_name!#( idX#, sequenceq#0 data_size_#4 data!#8 RPLAYunsigned charshortrplay_unpackr)&UC!packetlrpsstill_goingXtversionXurplay_create'UXcommandrpget_attrsIj(UattrsBXindexB iXJrplay_setd1U&rp^...^ argseattrsfprevfcurrfindexXgiXgmodifierXgdata!hseediV-0b-0b-0attributeXb-0-0-0-0-0-0./hph=addrm>s ?host!@hostname Avoid va_list &time_t! hostenth h_name!# h_aliases# h_addrtypeX# h_lengthX# h_addr_list# qu_long _sa_family_t _in_port_t uint8_t  s_b1# s_b2# s_b3# s_b4# _uint16_t  s_w1# s_w2#unsigned  uint32_t g S_un_b# S_un_w# S_addr# # in_addr S_un2 # & sockaddr_in sin_familyz# sin_port# sin_addrg # sin_zero # &rplay_get5U& rp... argsattrsgetXindexXrplay_destroy36U rpp q rplay_convert=7U!` !p7buf` >q!?lenX@ s &default_rplay_portk7UX sp lportXm servent s_name!# s_aliases# s_portX# s_proto!#  rplay_open&8UXg !host~portXrplay_open_port8UX !hostXport hphaddrms rplay_open_sockaddr_in9UX[ [ saddrrplay_fdXonX rplay:UX Xrplay_fdrp rplay_closeT:UX Xrplay_fdrplay_perror:U!srplay_open_display';UX|display!(p!(host|)&rplay_displayL;UX!soundFrplay_fdXMrplay_localc;UX!sound]rplay_hosts0<UXz!hostl!soundl rplay_fdXtrplay_sound<UXXrplay_fd!sound rprplay_ping=UXk!hostrplay_fdXportXerror1Xerror2Xrplay_ping_sockfd,>UXXrplay_fdrprplay_ping_sockaddr_inn>UX[ saddrrplay_fdXrplay_host_volume"?UX!host!sound Xvolumerplay_fdXrprplay_default_hostFl?U!host!Grplay_defaultY?UX$!soundSrplay_open_defaultg?UX Xssize_t[writeMM` gethostnameX!XcloseXXinet_ntoa!g   in_addr_tinet_addrstrdup!==strchr!fBXfstrcpy!!kstrcmpXmemsetX memcpy getservbyname N#NgethostbynamehySrplay_errnoX8srandom random&realloc malloc getenv!free--printfXR2 __FILE 4 _cntX# _ptrR# _baseR# _flag# _magic# !__orientation # !__ionolock #  !__seekable #  !__extendedfd #  !__xf_nocheck #  !__filler #  W9fprintfXd4>socketXXXXsetsockoptXXXX & sockaddr sa_familyz# sa_data#connectX7X  ntohsPntohl# i# htonshtonl# #   size_tstrlen"time /var/tmp/rplay-3.3.2/librplay../include/usr/include/iso/usr/include/sys/usr/include/netinetrplay.crplay.hstdarg_iso.htypes.hnetdb.hin.hsocket_impl.hbyteorder.hint_types.hstdio_impl.h  ( 2 > H R \ h r |           ' /             dw  P e ?N V ( <  ! )                      t  \ e 8G O   5 ! )             p  _g 8Zf n @ H ! ! 6!=!G! X! ! ! ! !! ! ! !! !! "" 2" 8"O" T"p" " "" "" ""  # #/# V# _# d## ## # # ##  $ $)$ B$ K$ P$e$ ~$ $ $$ $ $ $$ $  % %!% 0% <% H%X% f% p% |%%% % %&~&$& && & & & && & & & &  ''  ' *' 4' >' H' R' ^' h' r' |' ' ' ' '' 'q'' (( ((_( e( y(((( ( (( ( ( ( ( ( )) ) $) 0) P) V) _)}v)) ) ) ) ) ) ) ) )) ) ) * * *&* .* 8* D* d* j* s*}** * * * * * ** * *+ + +&+ <+ D+ N+ \+ d+y+ ++ + + ++ ++  , #, (,=, D,Y, `,j, x,, ,, , , , , , - -"- 0-~V-b-- -- -- - - ..  ./. @. n. t.. .. ... . . . //&/ 7/ ?/ P/ X/ b/ p/ // / // // 00 0+0 <0 j0 l0v0 00~00 v1|11 1 11111122 202@2R2 h2 p2 z2 2 22 2 2 2 2 23 3  3 *3 83 H3Z3 p3 x3 3 3 33 3 3 3 3 3 4  4 (4 24 @4 P4b4 x4 4 4 4 44 4 4 4 4 44 5555 5 5 5 6 6 #6 16 F6O6a6 d6v6 x66 66 66 6p66 6  7 7 7 -7 H7 Z7 j7 |7 7 77 7 777 8 8 !8 68 @8 P8 a8 i8 z8 8 8 8 888 8 8 9  9 9 &9 09 <9\9 f9 p99 9 99 9 9 9 9 99 :  : 3: =: H:O: c: : : : : :: : ; ; ]; q;; ; ; ; ;; ; ; ; < < <+< 6< E< M< X<u< << << < < << < < = == (=/=B= J= T= e=u= == = = = == == >>  > '> 6> G> O> X>i> v> > > >> > >> >> ?? ? 6? H? g? v? ? ? ?  DD%$> II !I/ 4I?  : ;  . : ; @ ' ID 4I : ;   :  I8 I: . : ; @ ' D  I: ;  .?  : ; @ ' ID .?  : ;@ ' ID I: ; 4I : ; . : ;@ ' ID   :  : I !I/.?  : ;@ ' D . : ;@ ID .?  : ;@ ' ID &I.? < ' ID I.? < ' D  .? < ' ID ! I8 ".? < ' ID ?rplay_errlistrplay_packrplay_unpackCrplay_createrplay_set rplay_get rplay_destroy rplay_convert rplay_openg rplay_open_port rplay_open_sockaddr_in` rplay rplay_close rplay_perrorrplay_open_displayrplay_displayrplay_localrplay_hostzrplay_soundrplay_pingkrplay_ping_sockfdrplay_ping_sockaddr_inrplay_host_volumerplay_default_hostrplay_default$rplay_open_defaultyrplay_errnob\rplay_attrs_createrplay_attrs_destroyget_attrss default_rplay_port*_rplay_attrsRPLAY_ATTRS_rplayRPLAYva_listtime_thostentmu_longzsa_family_tin_port_tuint8_tuint16_t# uint32_t2 g in_addr sockaddr_in serventMssize_tin_addr_tW__FILEsockaddrsize_t& bufo(Z7R"#$% & ' ( ) *+,38 COW^ekq0!~&sp(p15@6J AHV8&a08q99T:D`:,4: ;80<+;7;@B<M=_0>>vp>0?<p?"? 7  lF0j Fb.Jt &P<Z) 2 {    f     O    J     5 t   Nj2N,fPl>Z6`H$ *tfT>zVr>Z(Dl2\zI$ ,    !?!v!!!! ""!"[""w""""(#@####$#"#"$3$$^$o$$$$#$$h%%% %%%&)&-&1&5&9&=&A&E&I&M&Q&U&Y&]&a&e&i&m&&&&&&W' ''''''(()))0**F+++"+',(,)b,,,, --C-R---"9._.".*./+-/,F/-Z////./"50[0"n000011 111111"1&1*1.12161:1>1B1F1J1N1R1V1Z1^1b1f1~1r22"3z33*444455#5'5+5/53575;5?5C5G5K5O5S5W5[5_5c5g5k5o5s5w5{555555 66*6H626636~7277777 7 747#8688I8+W8,p8-88888798(9P99^9{9:999<9:':>5:d:o:@y: ~:A:B: :D: :3:3:E; ;F,; 8;FE; Q;F^; j;3{;5;C;H; ;J;5!<H;<!i<&<;<0<6 =L8=6[=L=!==; >=>0=>7_>L}>5>!>&>;?09? >?DZ? w?O?J?O?5         $ ( , 0 X@sw V!Z& $)-26;?DHMQVZ /  0  1 5 2  - 51 } 6  7 l ;p  =  ? (C,GI+J/HKLM3N7OP=QA#+3;CKS[cks %-5?GOW_iqy)19AKS[cku} %-5=GOW_gqy  %-5?GOWais{ !+3=EMU_goy #+3;EOW_jt! #+3;CKS[emw&    # + 3 ; C K U ] e m u }                    % - 5 = E O Y a i q y                    # - 5 ? G O W a i s {                   % - 7 ? G O Y a k s {                    ' 1 9 A K S ] e o w           /    #-7AKU_is{ !)1;CKS[cmu} &0-9AIQYaiq~1'/7?GO\cow56 %/7?L7S_gow; ='/7AN?UanCuGI'4J;GOWanHuK #-7?GOYakxLM  N'3;CMU]goyOPQ4B ?>D @D4tD"tD+ F4H?HK`Ww3eyu{fU|.}}   h         .  rptp.o/ 1304916634 0 0 100644 16652 ` ELFt=4(.strtab.text.bss.data.rodata.rodata1.comment.debug_loc.debug_info.debug_line.debug_abbrev.debug_pubnames.debug_typenames.debug_varnames.symtabrptp.cBbss.bssDdata.dataDrodata.rodatarptp_openrptp_errnomemsetinet_addrgethostbynamememcpyhtonsrplay_pingsocketconnectrptp_getlineclosesleeperrnorptp_readreadrptp_writewriterptp_putlinevsprintfstrcatstrlenrecvrptp_commandrptp_closerptp_perrorrptp_errlist__iobfprintfrptp_parse.XBKk4DpaK3xNlCq.rptp_parse.list_pos.XAKk4DpaK3xNlCq.listfree.XAKk4DpaK3xNlCq.list_next.XBKk4DpaK3xNlCq.rptp_parse.bufstrdupisspacestrpbrkstrchrmalloc.XBKk4DpaK3xNlCq.rptp_parse.cache_posstrcmp.rel.text.rel.data.rel.debug_info.rel.debug_line.rel.debug_pubnames.rel.debug_typenames.rel.debug_varnamesU(jjEP jEPEEuOjEPEEuEEPE@ PBPEP jEPEP E jPfEfEEE܃jEP}Ejjj EE}EjEPEP E؋E؃u?EPEPEP E@-uEEEx>jEPE@t jj+E9t=tِE@E܋E܃EEÐU EEE~hEPE PEP EE}#u5E0EuE+EEE EE EE+EEEÐU EEE~xEPE PEP EE}#uEE@EuE$E+EEE EE EE+EEEÐUEEEPE PP hPjPPPEP jP;tDž DžEEÐUEEE EE~jjjEPEPEPEE}(u>EDEuE$E+EEEE;E}OEE@ uUUB!EE@ uUUBE@EE;E|E;Eu E E@PPEP EE}!u밐EWEuE;E;E} E)EEEEEEÐUE PEP}EEPEPEP } EjB EQEGE; E%E@-} !t+tԃ-t@tȋEÐUjEPEEÐUjjPEPhh ÐUEuE uu EE EEt-E@jEPutjPjEPEE@E!E@-}+t -tۃ@t֋EE@E@jPtCE@EE@jPtE@EE@jPuQEEhEPEEE@=EUBE@EE@"uE@EE@EEEEtj"EPEhEPEEtUBE@EEtUBE@Ejj СP@uE@UP@UP@@$E(EEtE@?E E @-uE @E E @-tth@EE@t+E@-uE@EE@t E@-tEPE Pu@EEEtqE@EE@t+E@-uE@EE@t E@-tE PEPu E@ESE@EEuE9t&@@E EE,8HXl %s: %s = no errorout of memoryhost not foundconnection failedcannot create socketcannot open socketcannot read from socketcannot write to socketcannot ping rplay serverconnection timeoutRPTP protocol error%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMIacomp: Sun C 5.10 SunOS_i386 Patch 142363-01 2009/07/15as: Sun Compiler Common 12.1 SunOS_i386 Patch 141858-03 2009/09/21rptp.c /var/tmp/rplay-3.3.2/librplay /opt/sunstudio12.1/prod/bin/cc -c -I. -I../include -I./../include -DHAVE_CONFIG_H -g rptp.c -W0,-xp.XAKk4DpaK3xNlCq.Xa;g;R=Sun C 5.10 SunOS_i386 Patch 142363-01 2009/07/15;G=.XAKk4DpaK3xNlCq.;backend;raw;cd;DBG_GEN 5.2.7intrptp_errno1char8long@,^E rptp_errlistM3rptp_openpU@hostgportg @responsegresponse_sizeg addrq sr hps rptp_fdt iu nu memset 1 9 9 memcpyunsigned long u_longunsigned short sa_family_t in_port_tunsigned char uint8_t @s_b1#s_b2#s_b3#s_b4# uint16_t qs_w1@#s_w2@#unsigned quint32_tS_un_b#S_un_wO#S_addr}#in_addrS_un#8Esockaddr_inIsin_family#sin_port#sin_addr#sin_zero#@hostenth_name@#h_aliasesI#h_addrtype#h_length# h_addr_listI#Nrptp_readU;rptp_fd@ptr nbytes nleft nreadrptp_writeDUrptp_fd@ptr nbytesnleftnwrittenrptp_putline0USrptp_fd*@fmt* [...*args`1bufn2 strcatvoidS [va_list8Erptp_getlineVUUrptp_fdN@bufN nbytesNiWnWnleftWxWptr@Xtmp_bufUY8hErptp_commandUrptp_fd@command @responseresponse_sizerptp_closeUrptp_fdrptp_perrorUR@message_list next#name@#value@#RRLISTlistlist_nextrptp_parseP U@* @response@name buf@list_poscache_pos  , , 8 8 p@(response_name@)response_value@) strdup Jl+    strpbrk p isspace F * * quotedN    strchr D   lwp@x  b strcmpinet_addrG @ ssize_tSU writeG  G Z qsleepq qSreadG  G  qclose 8 gethostbyname  rplay_ping$ @malloc[> qfreeR [8R vsprintf @W [__FILE d _cnt#_ptr #_base #_flag# _magic# __orientationq# __ionolockq#  __seekableq#  __extendedfdq#  __xf_nocheckq#  __fillerq#   8i fprintf d n socket recvG  G  qG 8 E sockaddr#sa_family#sa_data # #connectR(qhtons@k@8k qsize_tstrlenup /var/tmp/rplay-3.3.2/librplay/usr/include/sys/usr/include/netinet/usr/include/isorptp.ctypes.hin.hsocket_impl.hbyteorder.hint_types.hnetdb.hstdarg_iso.hstdio_impl.h  1 9 J R \ h          $9 AU a k x     sb/     5 = G L V ` h l u ~o             % .n6? _e o     # ) / ;X ` j p z           w K S ] ` j t |    H<      ( ,6 @LXb lq      ,8J      z - i pv          , 4 F    Q 2     ~  b w      {   ( 5 D K  DD%$> 4I?  : ;  II !I/ .?  : ; @ ' ID I: ;  4I : ;  .? < ID  I:  :  I8  :  : .?  : ;@ ' ID 4I : ; I: ; I !I/.?  : ;@ ' D  I.? < ' ID I&I.? < ' D  I8 .? < ' ID rptp_errno^rptp_errlistzrptp_openrptp_read;rptp_writerptp_putlinerptp_getlinehrptp_commandrptp_closerptp_perrorrptp_parseu_longsa_family_tin_port_tuint8_t@uint16_tO}uint32_tin_addrsockaddr_inNhostent`va_listR_listLISTG ssize_t __FILE sockaddrusize_tHlistlist_next buf) list_posA cache_pos      !(0=CIOY^ioP|*,,P0"4=]dlt{'@T~/Nc+!>N# g% &'"'N(arA!Tb~$.Z, -.0: C K1U1]1e1p2x1113442544!6?6]6w 78  7K 9U 3] 3y 3 3 3 3 3   1 0 : :! :k ;x : 1 ; 0 0$ :) 01 06 :        $ ( , 41 4v,fjosx| L"P${)*.+213/% 4= 0V :[ _ d h m q v z           - 1 G K P T Y ] y }                    $,4<FPX`hpx (2:G NZbjrz"&.6>FNV`jw$~&.6>FNV^fnx)  (08@JR\fpx*+/ (08BLT^hrz &0:BLV^hrz   4  `P  8" +4?KV!WL)e +u+,L, 0h $4` 4x  6`  \=  d=   l=async.o/ 1304916634 0 0 100644 19936 ` ELFI4(.strtab.text.bss.data.rodata.rodata1.comment.debug_loc.debug_info.debug_line.debug_abbrev.debug_pubnames.debug_funcnames.debug_typenames.debug_varnames.symtabasync.cdo_registerread_procwrite_procdo_unregisterprocess_inputnotify_lineBbss.bssDdata.dataDrodata.rodatarptp_main_loop.XAKk4DpaK3xNVDq.looping.XAKk4DpaK3xNVDq.main_loop_return_valuememset.XAKk4DpaK3xNVDq.groupselecterrnorptp_async_processrptp_stop_main_looprptp_async_putlinerptp_errnovsprintfstrcatstrlenrptp_async_writemallocmemcpyrptp_async_registerrptp_async_notifystrcpystrrchrwritefreereadmemchr.XBKk4DpaK3xNVDq.process_input.length.XBKk4DpaK3xNVDq.process_input.linerptp_parse.XAKk4DpaK3xNVDq.eventsstrcmp.rel.text.rel.data.rel.debug_info.rel.debug_line.rel.debug_pubnames.rel.debug_funcnames.rel.debug_typenames.rel.debug_varnamesU|hj|P hjP Dž=t<R ӋPt<|R ӋP@=ԃ-?@NUM#t ME PEPEPЃ ÐUU tMjEP ЃUDŽÐUU tMjEP ЃUDŽ @ @ set notify=continue,done,pause,play,skip,state,stop,volume,flow,modify,level,position,noneeventcontinuedonepauseplayskipstatestopvolumeflowmodifylevelposition%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMIacomp: Sun C 5.10 SunOS_i386 Patch 142363-01 2009/07/15as: Sun Compiler Common 12.1 SunOS_i386 Patch 141858-03 2009/09/21Q async.c /var/tmp/rplay-3.3.2/librplay /opt/sunstudio12.1/prod/bin/cc -c -I. -I../include -I./../include -DHAVE_CONFIG_H -g async.c -W0,-xp.XAKk4DpaK3xNVDq.Xa;g;R=Sun C 5.10 SunOS_i386 Patch 142363-01 2009/07/15;G=.XAKk4DpaK3xNVDq.;backend;raw;cd;DBG_GEN 5.2.7rptp_main_loophUread_fdsiwrite_fdsjiknkintlongfd_setfds_bits# fd_set rptp_stop_main_loopU# return_valuerptp_async_putlineU rptp_fd callback fmt ...argsbuf cbcharvoid va_listrptp_async_write U rptp_fd callback ptr nbytesnewobuf_snext#data#current#length# callback#obufrptp_async_register:USrptp_fd2what2 callback2rptp_async_processfUrptp_fd_what_ rptp_async_notifyU*rptp_fdmask ,callbackcommand1p *Dwrite_procN Urptp_fdcurrentnread_proc  Urptp_fdbuffer n new{ %ibuf_slnextl#data#current#length# %%ibufqprocess_input;.Urptp_fd5p<ptr{=line>length?<event#mask#Kevents<hr eventsanotify_lineiU rptp_fdline whateventido_registerU?rptp_fddo_unregisterUvrptp_fdmain_loop_return_valueOloopingN(R olist#otail#ilist{#itail{# writing#notify_mask#rcallback#rraw#wcallback# wraw#$grpR n group[ M strrchr   unsignedmemchr    strcpy    strcmpB   B strcatk G memset   memcpy   ssize_t write     read     rptp_parseB malloc\  freep p vsprintf u  size_tstrlen    time_t suseconds_ttimeval$ tv_sec #tv_usec # select   $  /var/tmp/rplay-3.3.2/librplay/usr/include/sys/usr/include/isoasync.cselect.hstdarg_iso.htypes.htime.h # 1 G ] x    {<c n x       A N e vtk%       * A A U      ) ? Xb n w     % / 48J ] `r    q  $ @ N Px   r     & : G [ h |           ! . B O c z          ( : E b j t {           * > L Y w        ' G V h |       > d y          8 M `         N)56J P X_ dk pw |     { c0G gs       DD%.?  : ; @ ' ID 4I : ;  $> I !I/  :  I8 I: .?  : ; @ ' D  I: ;   D III !I/ .?  : ;@ ' D I: ; 4I : ; . : ;@ ' D  I!I&I.? < ' ID I.? < ' D .? < ' ID U rptp_main_looprptp_stop_main_loop#rptp_async_putlinerptp_async_writerptp_async_registerSrptp_async_processrptp_async_notifyoU Dwrite_procread_procprocess_inputnotify_line do_register?do_unregisterU fd_setfd_setcbva_listobuf_sobuf%ibuf_sqibufR grp ssize_t size_t time_t suseconds_t timevaliU linelengthKeventsreventsvmain_loop_return_valueloopingn grouppFP  NF >09  '()* + , - . /01@Y; ';8MT\bglsh$@VVo \o  #"#:$BN%_&{'&#(0(O)'#FUn}#5[o,%%'3%HT%iu%%%%%%/;%P\%m-%" 3 X . /   # /5 j 0      ( (@ )s      ( 1@ 2W 3] )n 2u 2{ 2 3 3 2 /  0 I T /b 2v 3| ) 2 2 /    /A}455655>^~ $,4<DLT\-1!;"?' *l p+TX32]55RV~  (2:BJRZbjr|!" )'0<DLV^fnv*",4<FNV`o v+ $,4<DLT\dlt|  ,4>FNV^hpx $,4<DLT\dnx (08@JR\kr~ &08GNZbjw~4m l$"$+4 ? U Kn,W5e6uc7s78m8p h< A` xA   BH  I / I D IY I070701001817ad000081a40000000000000000000000014dc7729a0001229c000000b600010002ffffffffffffffff0000001f00000000root/usr/local/lib/librplay.soELF4L4 ("!@@@@ $$$Pmm !#%'()+.0124679:=>ABDEGHIKLNOPQSTUVXYZ\]^_`acdefghl  "$&*,-/358;<?@CFJMRW[bijk  ( ;`  OIa YZq ls{py  } y  x c] @X Yx l L^0 ,t4:AId< \el_W zr @d_  dV`Vw{ 0m` d@ T# )`g 3:DKPb ]c܍~L .`  h i m i #0Bh 0z BN`? Z`c lt ?! XG `\ ]g P`_ S k @ JH  'x ; e? EPeo\Lm, ^` lK `u $y6 .49@u? Tp[ d`a tz؍d@oh [D )0]w /5librplay.socrti.svalues-Xa.crplay.crplay_attrs_createrplay_attrs_destroyget_attrsdefault_rplay_portrptp.casync.cdo_registerread_procwrite_procdo_unregisterprocess_inputnotify_linecrtn.smemsetrplay_ping_sockaddr_inrplay_destroyselectrplay_convert_init_edatarplay_open_displayrplay_errlistmemcpyconnectrplay_open_defaultisspacefprintfrplay_displayrptp_main_looprplay_default_hostsetsockopt_PROCEDURE_LINKAGE_TABLE__endrplay_errnorptp_async_writerptp_perrorrplay_default.XBKk4DpaK3xN1Fq.rptp_parse.cache_pos_finirptp_readstrcatinet_ntoastrchrrplay_ping_sockfd__iob.XAKk4DpaK3xN1Fq.list_nextntohl.XBKk4DpaK3xN1Eq.rplay_convert.buf.XBKk4DpaK3xNlGq.process_input.lengthrplay_soundrptp_writerptp_getlinerptp_parsemalloc_lib_versionntohsrptp_putlinerplay_unpackrptp_async_notifygethostnamerplay_localrplay_host_volumesrandomrplay_pack.XAKk4DpaK3xNlGq.loopingrplay_createrplay_open_sockaddr_inrplay_closerplay_hostfreerptp_closerplay_getrptp_commandstrcpy_etextstrduprplay_setgethostbynamerptp_async_registerrptp_open.XBKk4DpaK3xN1Fq.rptp_parse.bufinet_addr.XAKk4DpaK3xNlGq.main_loop_return_value.XBKk4DpaK3xN1Fq.rptp_parse.list_postimerptp_errlistrplay_perrorhtonl.XAKk4DpaK3xNlGq.grouprptp_async_putline_DYNAMICsocketrptp_async_processhtonsrecvgetenvrptp_stop_main_looprplay_open_portrplay_pingrptp_errno.XAKk4DpaK3xN1Fq.listmemchrstrpbrkvsprintfstrlen_GLOBAL_OFFSET_TABLE_strrchrstrcmp.XAKk4DpaK3xNlGq.eventsrplay_open.XBKk4DpaK3xNlGq.process_input.linegetservbynamerplaysleeprealloclibc.so.1SUNW_1.23SUNW_0.9SUNW_0.7SYSVABI_1.3/usr/local/lib:/lib:/usr/lib=yG(= Q(= Z7c%F@HSNyjI|J^!CK8k1D#*V-9?:O_);"ib(UeA  ,=scv]m37zx5ZW+GYa'&PT 8\p|ȋ̋Ћԋ؋܋tx|čȍ̍Ѝԍ $,4<\#  @dPZtKxH[܍[!E5GO%h fL*X:`ld h_lNpTt6x@|,"J3I0FB4>ĊiȊX̊7ЊRԊ؊ ܊c;`Veg& 9$A(j,048<DYH(LkT$X^`d'hUl- ]SċbP \) hh h$h(h ,h(0h04h8p8h@`<hHP@hP@HhX0Ph` ThhXhp\hx`hdhhhlhphxhhhph`hPh@h0h hhhhhhhh h(h0h8ph@`hHPhP@hX0h` hh hphxh h$h(h,hPhXhxhp|h`hPh@h0h hU]ZUjjj$EEu EiE@EPE@E@ E@UfBE@E@EP EEE]ÐU]ZUiڋE@@tEj@P.E@tEj@PE@ @tEj@ PjEP]U,]ZUظGiEE@ EEE@ U@;BvOE@EE@UBE@= ~@E E@ U@;BwEtEUE@PBP2ЋEPE@u@EN EUHJ jEPQ E@ U@B E@EEE@ U@;BvPE@EE@UBE@= ~@EE@ U@;BwEtEUE@PBPNЋEPE@u@EjEUHJ jEPQ E@ U@B E@EEE@ U@;BvNE@EE@UBE@= ~@EE@ U@;BwEtEUE@PBP^ЋEPE@u@EzEUHJ jEPQ$ E@ U@B E@EEE@ U@;BvPE@EE@UBE@= ~@EE@ U@;BwEtEUE@PBPzЋEPE@u@EEUHJ jEPQ@ E@ U@B E@ EEE@ U@;BvNE@EE@UBE@= ~@EE@ U@;BwEtEUE@PBPЋEPE@u@EEUHJ jEPQP E@ U@B E@ EEE@ U@;BvPE@EE@UBE@= ~@EE@ U@;BwEtEUE@PBPЋEPE@u@EEUHJ jEPQl E@ U@B E@(@EEE@ U@;BvNE@EE@UBE@= ~@E(E@ U@;BwEtEUE@PBPЋEPE@u@EEUHJ jEPQx E@ U@B Ej@(Pj@EEEP UE;P~PE@EE@UBE@= ~@E8EP UE;PEtCUE@PBPЋEPE@u@EEUHJ UEPB(PQ EP UEP E@,EEE@ U@;BvOE@EE@UBE@= ~@EAE@ U@;BwEtEUE@PBPЋEPE@u@EEUHJ jEPQ E@ U@B Ej@,PEEE@ U;BvQE@EE@UBE@= ~@EQE@ U;BwEtCUE@PBPЋEPE@u@EEUHJ jEPQ E@ UB E@0EEE@ U@;BvPE@EE@UBE@= ~@E^E@ U@;BwEtEUE@PBPЋEPE@u@EEUHJ jEPQ E@ U@B Ej@0PEEE@ U;BvQE@EE@UBE@= ~@EmE@ U;BwEtCUE@PBPЋEPE@u@EEUHJ jEPQ E@ UB E@8E@4EEE@ U@;BvPE@EE@UBE@= ~@EjE@ U@;BwEtEUE@PBPЋEPE@u@EEUHJ jEPQ E@ U@B E@4jPfEEE@ U;BvOE@EE@UBE@= ~@EwE@ U;BwEtCUE@PBPЋEPE@u@EEUHJ jEPQ E@ UB EEE@ U@;BvOE@EE@UBE@= ~@EE@ U@;BwEtEUE@PBPЋEPE@u@E:EUHJ jEPQ E@ U@B EUE@4R M;A~UE@EE@UBE@= ~@EUE@4R M;AEtEUE@PBP6ЋEPE@u@EREUHJ UE@4PB8PQ UE@4R M‰A EE@EE)E@$tEU;P$tE@@EEE@ U@;BvNE@EE@UBE@= ~@EpE@ U@;BwEtEUE@PBPЋEPE@u@EEUHJ jEPQ E@ U@B Ej@P@EEEP UE;P~PE@EE@UBE@= ~@EEP UE;PEtCUE@PBPЋEPE@u@E$EUHJ UEPBPQ EP UEP E@EEE@ U@;BvOE@EE@UBE@= ~@EE@ U@;BwEtEUE@PBPЋEPE@u@E.EUHJ jEPQ E@ U@B E@EEE@ U@;BvPE@EE@UBE@= ~@EE@ U@;BwEtEUE@PBP.ЋEPE@u@EJEUHJ jEPQ E@ U@B E@  EEE@ U@;BvNE@EE@UBE@= ~@E E@ U@;BwEtEUE@PBP>ЋEPE@u@EZ EUHJ jEPQ E@ U@B E@ EEE@ U@;BvPE@EE@UBE@= ~@E E@ U@;BwEtEUE@PBPZЋEPE@u@Ev EUHJ jEPQ E@ U@B E@EEE@ U@;BvNE@EE@UBE@= ~@E E@ U@;BwEtEUE@PBPjЋEPE@u@E EUHJ jEPQ0 E@ U@B Ej@P"@EEEP UE;P~PE@EE@UBE@= ~@E EP UE;PEtCUE@PBPxЋEPE@u@E EUHJ UEPBPQ; EP UEP E@=EEE@ U@;BvPE@EE@UBE@= ~@E E@ U@;BwEtEUE@PBP~ЋEPE@u@E EUHJ jEPQD E@ U@B E@jPUfEEE@ U;BvPE@EE@UBE@= ~@E E@ U;BwEtCUE@PBPЋEPE@u@EEUHJ jEPQP E@ UB E@EEE@ U@;BvPE@EE@UBE@= ~@EE@ U@;BwEtEUE@PBPЋEPE@u@EEUHJ jEPQ\ E@ U@B E@EEE@ U@;BvPE@EE@UBE@= ~@E*E@ U@;BwEtEUE@PBPЋEPE@u@EEUHJ jEPQx E@ U@B E@EEE@ U@;BvNE@EE@UBE@= ~@E8E@ U@;BwEtEUE@PBPЋEPE@u@EEUHJ jEPQ E@ U@B Ej@PEEE@ U;BvQE@EE@UBE@= ~@EIE@ U;BwEtCUE@PBPЋEPE@u@EEUHJ jEPQ E@ UB E@ @EEE@ U@;BvPE@EE@UBE@= ~@ERE@ U@;BwEtEUE@PBPЋEPE@u@EEUHJ jEPQ E@ U@B Ej@ P@EEEP UE;P~PE@EE@UBE@= ~@E`EP UE;PEtCUE@PBPЋEPE@u@EEUHJ UEPB PQ EP UEP EEE@ U@;BvNE@EE@UBE@= ~@ExE@ U@;BwEtEUE@PBPЋEPE@u@EEUHJ jEPQ E@ U@B E@EEE܋E@EEEEEE@ U@;BvOE@EE@UBE@= ~@EiE@ U@;BwEtEUE@PBPЋEPE@u@EEUHJ jEPQ E@ U@B EEE@ U@;BvME@EE@UBE@= ~@EE@ U@;BwEtAUE@PBPЋEPE@u@E1EUHJ jEPQ E@ U@B EE]ÐU,]ZUHE@E@EE@EE@EE@EEEjEPEEu@EЋE@PE@@u@EEE@ЋEPE@EVjEP ЋEP(jEPUDE#E@ЋEP E@EjEPЋE@@PjEP]UDEE@ЋE@@PE@EE@ЋE@@P E@EjEP5ЋE@@PjEPUDEIE@PjEPBP E@@@jPЋE@@fPEEE@ЋE@@PE@EE@PjEPBP( E@@j@PЋE@@PEEjEP5ЋE@@P jEPUDEIUjEPB,P Ej@,PЋEP,EE UjEPB0Pf Ej@0PЋEP0EEUjEPB4P* E@4jPxUfB4EEE@4jPЋEP8UE@4PEPB8P E@4U‰EIE@U@BE@U@BE@u E;/ЋE@PE@@u@E@ DE@PREEEE@EE@E؃}cE؃ }8E؃}E؃$떐E؃TE؃wE؍HeUDUE؍H BUD؋UEzEEE]ß#ssOssss;wU]uZUTBڋ@jj<EEu@EIE@EUPjhYЋEPE@u@EE@ E@E@E@E@E@ E@$LEP(E@,E@0E@8UfB4&EUPe@ ETu}NwظUDU}} t볐tt뤃t띐EEE]u((((U ]E } E?EE;E }(Et E@EE@EE;E }EuEEE]ÐUlZ @EEE E@E@EEEEE@UPEu@EEUPE@U@BE@EEEE}@ EHEE@EE;E}.Et&EEE@EE@EE;E}EuڋEu"E;Et@ EEEu@EEt EUP E@UPEUPE@u EUPE@U@BE@EEEE}@ E(EE@EE;E}.Et&EEE@EE@EE;E}EuڋEu@ EEt$EU@BE@u EUP"EU@BE@u EUPjEPqE@UHBxE@EEEUEPBPEEu@ E 'EU@BEE E@(@tEj@(P;E@EԋEEEԉEjEPЋEP(EU@B EEjjEjEPMy‹ЋEP$`EU@B,EEFEU@B0EE*@ EE@8tEj@8PCE@E܋EEEU@fB4EEE@4jPЋEP8E@8u@EeUE@4PEPB8P k@ E*u}"NwԸS DNwk D苕EE@EԋEԉEЋEEEЉE̋ẼEU@BEEJE@(@tEj@(PE@EȋEEEȉEjEP%ЋEP(EU@B EEE@@tEj@PkE@EEEEEjEPЋEPEU@BEEjEU@B EENE@EEEEԃu>hP}@E;EE@EEEjjEPu jEPwEEuUjEPnEEu@EEPE@ PBPEP: jEPEP% jujP]ЋEP-EU@fBEEEU@BEEEU@BEEE@ @tEj@ PkE@EEEEEjEPЋEP @ Euԃ}> }zÐNww D􋕜Nw D܋E@EԋEԉEȋEEEȉEċEăljEPEES#?;ccU]ZUg6ڍE E@E@EEEE@EE@EE@EE@(EqE@ EaE@$EQE@,EAE@0E1E@4E E@8EE@EEEUEPBPEEu@ EE@EE@EEEUEPBPvEEu@ EjE@EYE@EEEUEPBPEEu@ EE@ EE@EEEUEPBPEEu@ EE@EE@EEEUEPBPbEEu@ EVE@EDE@EEEUEPBPEEu@ EE@EE@EEEUEPBPEEu@ EE@EE@EEEUEPBPNEEu@ EEE@ E8@ E!EHwݸfUDUE]?CScS gsU]ZU1ڋ@E@EEt%EEE@EjEPEuۋE@(@tEj@(P E@8tEj@8PEj@PjEP]ÐU]ZU'1ڋtEUBE@ERUBE@ElUBE@EXUBE@EDUBE@E0EEE@EE@HwUDUUBE@EEPEPjEP@EEEEEEEUBE@EE@UBE@EE@EUBE@EE@kUBE@EtEE]7K_sU]ZU/ڋ|PRHEEtE@jP[EEEEE]ÐU]ZU/ZEEPEPEE]ÐU$]ZU.ڋ@jjEP jEPEEuQjEP EEu@EaEPE@ PBPEPڿ jEPEPſ E jPfEfEjEPEE]ÐU]ZU-Ejjj EE}@EojjEPj hEP}@E8jEPEPm }@E EEE]ÐU ]ZU-ڋ@U E @ PBPEP ЋE ;P t@EEE]ÐU ]ZU,ڋ@jEP裿}@EEE]ÐU ]uZU,ڋPjjPEPQF P']uUZ+ڋjPEEt E@:uPP'EPP j:P諾EEt UBPP菾t6PPttPPYuPP~jP=EEU]ZU*EE} EEPEPEE]ÐU ]ZU'*ڋEPR˽EE]ÐU]ZU)jEP`EE} EE PEP[EE]ÐU]ZU)jjREEu E`jjE Pjj EP} E7EPEP} EjEPEE]ÐU]ZU(EE EEPEP舻EE}EjEP聼EE=u EEEPEP4EE} E9jEP1EE}E} EEE]U]ZU'jj貹EEu EbjEP]} ECEPEPo} E%jEP聻jEPSEE]ÐU]ZU7'jEPEE} EjEPEE]ÐU]ZU&jEPPEE}Ejj{EEu EajEPjE Pjj EP;} E7EPEP+} EjEPEE]ÐU]ZU%ڋjP=EEt EE EEEE]ÐU ]ZU%覹ЋEPR:EE]U ]ZUW%fjPθEE]ÐU0]ZUԸ%ڋ@jjEPa jEPcEEuUjEPZEEu@EEPE@ PBPEP& jEPEP E jP2fEfEEE܃6jEPd}@Ejjj EE}@EjEPEP E؋E؃uGEPEPEP E@-u@EEEBjEP詶E@t jj褷3@EA@t=tѐE@E܋E܃@EE]ÐU]ZU"ڋ@EEE~nEPE PEP EE})@u7@E1EuE+EEE EE EE+EEE]ÐU]ZU"ڋ@EEEEPE PEP EE})@uK@EIEu@E)E+EEE EE EzE+EEE]ÐUZ+!ڍEE@EPE PPe PP_jP~PPEPJ jPW;t Dž DžEEÐU$ZQ ڋ@EEE EEjjjEPEPEP覴EE}0@uR@EXEu@E4E+EEEE;E}OEE@ uUUB!EE@ uUUBE@EE;E|E;Eu E E@PPEPg EE})@u묐@E_Eu@E?E;E} E,EEEEj@EEÐU ]ZUGڋ@E PEPѲ} EEPEPEP; } ErJ@ EVEKE?@ E&E@-} !t+tЃ-t@tċE]ÐU ]ZUWڋ@jEPsEE]ÐU ]uZUڋ0P4jjPEPQF P]uU]ZU踧ڋEu#E u8@u EE <E@ED@t=D@E싃D@D@BjEP蘭D@uËD@DHPL@tLj@PLjEP训ЋLPL@EE@E!E@-}+t -tۃ@t֋EE@E@jP tCE@EE@jPtE@EE@jPϯuqEETPEP躯EEE@=EUBE@EE@"uE@EE@EEEEtj"EPE\PEP4EEtUBE@EEtUBE@Ejj 荫ЋH@PH@@uEH@@UPH@@UPH@H@BH@@`EdEEtE@D8@Bh@E .E @-uE @E E @-t틃h@tqh@@EE@t+E@-uE@EE@t E@-tEPE PNuh@@ED@EEtqE@EE@t+E@-uE@EE@t E@-tE PEPϫu E@EkE@EEuEQ8@t:8h@B8@8@Bh@@E EE]ÐUZڋl@p@l@hj|P轩 hjP觩 Dž=tЋt<R ֋PtЋDt<|R ֋P@=1jjjP|Ph } @u,E=Dž=拄|#ƃt;HtЋDtjP[拄#ƃt;HtЋDtjP@=} l@gp@EEÐU]ZUڋl@pUP]ÐUZ;ڍEEE| E=|@E@EPEPPG PPAjP`jjPPE PEP蔨jP1;tDž DžEEÐU]ZU'ڋE| E=|@E'jjWEE@E~7Et/jEP,ЋEPUEPEPBP= E@EU@BEUP EU PUtЋDt6UtЋDUPUtЋUT0UtЋUUtЋUTUtЋDujEP E]ÐU]ZUڋE| E=|@UtЋUT UtD$UtЋUT UtD$VUtЋUTUtD"E }tJ w]ÐU]ZUڋE| E=|@UtЋDt>UtЋDt$UtjEPDЃjEPyUtЋD$t>UtЋD t$UtjEPD ЃjEPE $t]ÐU ZAڋPPߡE tPP~E tPP]E @tPP<E %tPPE %tPPE %tPPӢE %tPP谢E %tPP荢E % tPPjE %@tPPGE %tPP$E %tPPj,P耢uPPɡBPjEPD UtЋUTUtЋU TUtDÐU]uZU ڋUtЋujEP(UtЋEE@t/UE@ PBPEPx EE} EEP +UEP EPUEPE@ E@tUjEPBЃE@tEj@PGMUtЋQUtЋD;EuUtDjEPUtЋujEP]uÐUZ hPEPM UtЋD%t]UtЋDtCUtЋPhEPDЃ UtDjj軛@jP藛ЋPPPBP蜛 P @BUtЋD t>UtЋD PUtЋT 9UtЋTUtЋT jEPÐU]u}ZU ڋUtЋDEErUE@ Pj BP EEVxMEU+PRAP>P1 EM+HBBH PEP@EEEU@B U;s&UEM+HR +ыEP EUPEj@PjUtЋU;T u9EUtЋUT UtЋUTMUtЋQTjEPpUE@ PBP1Pޘ UHJ HEj@P蕘UtЋU;T uUtЋU#Tt&UtЋE PEPEPDЃ ]ÐU]ZUڋUtЋD t UtjEPD ЃUtD]ÐU]ZUGڋUtЋD t UtjEPD ЃUtD]UWVS[[^_UWVS[í[^_unpack: unknown attr '%d' rplayudp%s: %s DISPLAYlocalhostunixlocalXRPLAY_HOSTno errorout of memoryhost not foundcannot connect to socketcannot create socketerror writing to socketerror closing socketmax packet size exceededcannot enable broadcastunknown rplay attributeunknown rplay commandillegal rplay index valueunknown rplay modifier %s: %s = no errorout of memoryhost not foundconnection failedcannot create socketcannot open socketcannot read from socketcannot write to socketcannot ping rplay serverconnection timeoutRPTP protocol error set notify=continue,done,pause,play,skip,state,stop,volume,flow,modify,level,position,noneeventcontinuedonepauseplayskipstatestopvolumeflowmodifylevelposition$"2BRbr̆І؆"2BRbr܆"2BRb r@DLPT"\dh2BLRP\hpxbĉr̉Љ= l oo $ `````(oEoooJoo``>@$4D`xć܇ (lxĈ؈$8؉ @  $@,4$    l  @$tLLL !dV  t+L4CK ^ch`  |̆Ia Zq І؆܆  +L t4L@D LPT\"d(h+L 4L.6L<py H  R} ]P c\ ihopux{ ĉy ̉  x Љ+X 4Lc] @X &-Yx ;l ALH^0 [t4ipxd< _W r @d_  dV`Vw{ 0m` d@ ,TR X`g biszPb ܍L ]`  h i m +2?Ei R0Bh _z q}`? `c  ?! XG `\ ]g P`_  S k )0@7> JH  HVx j e? tP\L, ^` lK `'u :$CJy6 ]chou? p[ `a ؍@ h [D &JX0]w ^dlibrplay.socrti.svalues-Xa.cDdata.dataBbss.bssDrodata.rodatarplay.crplay_attrs_create.L44.L52rplay_attrs_destroy.L1713.L1770get_attrsdefault_rplay_port.L2551.L2552.L2723.L2734.L2744.L2766.L2768.L2770.L3070Dpicdata.picdatarptp.c.L286.L521.L553.L554.L626.L661.L701.L703async.c.L174do_registerread_procwrite_proc.L369.L376.L385.L394.L403.L412.L421.L430.L439.L448.L457.L466.L475.L485do_unregister.L619process_inputnotify_line.L796crtn.s_END__START_memsetrplay_ping_sockaddr_inrplay_destroyselectrplay_convert_init_edatarplay_open_displayrplay_errlistmemcpyconnectrplay_open_defaultisspacefprintfrplay_displayrptp_main_looprplay_default_hostsetsockopt_PROCEDURE_LINKAGE_TABLE__endrplay_errnorptp_async_writerptp_perrorrplay_default.XBKk4DpaK3xN1Fq.rptp_parse.cache_pos_finirptp_readstrcatinet_ntoastrchrrplay_ping_sockfd__iob.XAKk4DpaK3xN1Fq.list_nextntohl.XBKk4DpaK3xN1Eq.rplay_convert.buf.XBKk4DpaK3xNlGq.process_input.lengthrplay_soundrptp_writerptp_getlinerptp_parsemalloc_lib_versionntohsrptp_putlinerplay_unpackrptp_async_notifygethostnamerplay_localrplay_host_volumesrandomrplay_pack.XAKk4DpaK3xNlGq.loopingrplay_createrplay_open_sockaddr_inrplay_closerplay_hostfreerptp_closerplay_getrptp_commandstrcpy_etextstrduprplay_setgethostbynamerptp_async_registerrptp_open.XBKk4DpaK3xN1Fq.rptp_parse.bufinet_addr.XAKk4DpaK3xNlGq.main_loop_return_value.XBKk4DpaK3xN1Fq.rptp_parse.list_postimerptp_errlistrplay_perrorhtonl.XAKk4DpaK3xNlGq.grouprptp_async_putline_DYNAMICsocketrptp_async_processhtonsrecvgetenvrptp_stop_main_looprplay_open_portrplay_pingrptp_errno.XAKk4DpaK3xN1Fq.listmemchrstrpbrkvsprintfstrlen_GLOBAL_OFFSET_TABLE_strrchrstrcmp.XAKk4DpaK3xNlGq.eventsrplay_open.XBKk4DpaK3xNlGq.process_input.linegetservbynamerplaysleeprealloc%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMIacomp: Sun C 5.10 SunOS_i386 Patch 142363-01 2009/07/15as: Sun Compiler Common 12.1 SunOS_i386 Patch 141858-03 2009/09/21%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMIacomp: Sun C 5.10 SunOS_i386 Patch 142363-01 2009/07/15as: Sun Compiler Common 12.1 SunOS_i386 Patch 141858-03 2009/09/21%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMIacomp: Sun C 5.10 SunOS_i386 Patch 142363-01 2009/07/15as: Sun Compiler Common 12.1 SunOS_i386 Patch 141858-03 2009/09/21ld: Software Generation Utilities - Solaris Link Editors: 5.11-1.1689rplay.c /var/tmp/rplay-3.3.2/librplay /opt/sunstudio12.1/prod/bin/cc -c -fPIC -I. -I../include -I./../include -DHAVE_CONFIG_H -g rplay.c -W0,-xp.XAKk4DpaK3xN1Eq.Xa;g;P;R=Sun C 5.10 SunOS_i386 Patch 142363-01 2009/07/15;G=.XAKk4DpaK3xN1Eq.;backend;raw;cd;DBG_GEN 5.2.7char!long)4G. rplay_errlist6:trplay_attrs_createuR Uattrsv _rplay_attrs$[ next[# sound)# volume`# count`# rptp_server)# rptp_server_portg# rptp_search`# sample_ratey# client_data)# intunsigned shortunsigned long RPLAY_ATTRS rplay_attrs_destroy` U attrsrplay_pack /BU` rpattrslen`grow`i`vallvalysvalgsize[ _rplay< attrs[# attrsp# buf)# len`# size`# command`# nsounds`# count`# priority`# random_sound`#$ list_name)#( id`#, sequencey#0 data_sizeg#4 data)#8 RPLAYunsigned charshortrplay_unpackr0BGUV)packetlrpsstill_going`tversion`uBrplay_createGIU`commandrpget_attrsIIJUattrsB`indexB i`Jrplay_setd JhSU.rp^...^ argseattrsfprevfcurrfindex`gi`gmodifier`gdata)hseedi|OFSOFSOFSattribute`OFSOSOSOSORORPQhp{=addr>s ?host)@hostname Avoid va_list .time_t) hostent{ h_name)# h_aliases # h_addrtype`# h_length`# h_addr_list # yu_long gsa_family_t gin_port_t uint8_t  s_b1# s_b2# s_b3# s_b4# guint16_t * s_w1# s_w2#unsigned * uint32_t z S_un_b# S_un_w # S_addr6 # in_addr S_unE #! . sockaddr_in sin_family# sin_port# sin_addrz # sin_zero #! .rplay_getSWU. rp... argsattrsget`index`rplay_destroy@XYU rpp q rplay_convert=YZU)s )p7bufs >Lq)?len`@! .default_rplay_portkZ[U` sp* lport`m servent* s_name)# s_aliases # s_port`# s_proto)#  rplay_open [d[U`z )host~port`rplay_open_portp[_\U` )host`port hp{addrs rplay_open_sockaddr_in`\.]U`n n saddrrplay_fd`on` rplay0]]U` `rplay_fdrp rplay_close]^U` `rplay_fdrplay_perror ^^U")srplay_open_display'^_U`display)(p)(host)!.rplay_displayL_`U`)soundFrplay_fd`Mrplay_localc`O`U`-)sound]rplay_hostsP``U`)hostl)soundl rplay_fd`trplay_sound`YaU``rplay_fd)sound rprplay_ping`aPbU`~)hostrplay_fd`port`error1`error2`rplay_ping_sockfdPbbU``rplay_fdrprplay_ping_sockaddr_inc]cU`.n saddrrplay_fd`rplay_host_volume`c1dU`)host)sound `volumerplay_fd`rprplay_default_hostF@ddU)host)Grplay_defaultYddU`7)soundSrplay_open_defaultgdeU` `ssize_tnwrite``s* gethostname`)`close``inet_ntoa)z ! * in_addr_tinet_addr,!,strdup)P1!Pstrchr)yU`!ystrcpy))~!!strcmp`memset`* memcpy'* !'!1getservbyname* a,6!agethostbyname{frplay_errno`8`V srandom* !random.realloc* malloc* !getenv),  free@!@printf`eE __FILE G _cnt`# _ptre# _basee# _flag# _magic# "__orientation* # "__ionolock* #  "__seekable* #  "__extendedfd* #  "__xf_nocheck* #  "__filler* #  j!Lfprintf`wGQsocket````setsockopt````* !. sockaddr sa_family# sa_data#connect`J` * ntohscntohl6 |6 htonshtonl6 6 ! * size_tstrlen#time@rptp.c /var/tmp/rplay-3.3.2/librplay /opt/sunstudio12.1/prod/bin/cc -c -fPIC -I. -I../include -I./../include -DHAVE_CONFIG_H -g rptp.c -W0,-xp.XAKk4DpaK3xN1Fq.Xa;g;P;R=Sun C 5.10 SunOS_i386 Patch 142363-01 2009/07/15;G=.XAKk4DpaK3xN1Fq.;backend;raw;cd;DBG_GEN 5.2.7intrptp_errno1char@longH,fM rptp_errlistU3rptp_openp e_gUHhostgportg Hresponsegresponse_sizeg addrq sr hps rptp_fdt iu nu memset oee wee wee memcpyunsigned long u_longunsigned short sa_family_t in_port_tunsigned char uint8_t Hs_b1#s_b2#s_b3#s_b4# uint16_t ys_w1H#s_w2H#unsigned yuint32_tS_un_b #S_un_wW#S_addr#in_addrS_un#@Msockaddr_inQsin_family#sin_port#sin_addr#sin_zero#Hhostenth_nameH#h_aliasesQ#h_addrtype#h_length# h_addr_listQ#Vrptp_read`ghUCrptp_fdHptr nbytes nleft nreadrptp_write hhUrptp_fdHptr nbytesnleftnwrittenrptp_putline0iiU[rptp_fd*Hfmt* c...*argsh1bufv2 strcatvoid[ cva_list@Mrptp_getlineVikU]rptp_fdNHbufN nbytesNiWnWnleftWxWptrHXtmp_buf]Y@pMrptp_commandklUrptp_fdHcommand Hresponseresponse_sizerptp_closel+mU$rptp_fdrptp_perror0mmUZHmessage_list next#nameH#valueH#ZZLISTlist؍list_next܍rptp_parsemrUH2 HresponseHname bufHPlist_posLcache_posT mp mp mp mp mppH(response_nameH)response_valueH) strdup manl+ np np np strpbrk nLo isspace ho&p op opquotedN oo oo oo strchr ptr p,r p,rlwpHx qq +qq +qq qqq strcmpinet_addrO H ssize_t[] writeO  O b ysleepy y[readO  O  yclose @ gethostbyname  rplay_ping, HmalloccF yfreeZ c@Z vsprintf H_ c__FILE l _cnt#_ptr #_base #_flag# _magic# __orientationy# __ionolocky#  __seekabley#  __extendedfdy#  __xf_nochecky#  __fillery#   @q fprintf l v socket recvO  O  yO @ M sockaddr+sa_family#sa_data # +connectZ0yhtonsHsH@s ysize_tstrlen}xY async.c /var/tmp/rplay-3.3.2/librplay /opt/sunstudio12.1/prod/bin/cc -c -fPIC -I. -I../include -I./../include -DHAVE_CONFIG_H -g async.c -W0,-xp.XAKk4DpaK3xNlGq.Xa;g;P;R=Sun C 5.10 SunOS_i386 Patch 142363-01 2009/07/15;G=.XAKk4DpaK3xNlGq.;backend;raw;cd;DBG_GEN 5.2.7rptp_main_loophruUread_fdsiwrite_fdsjiknkintlongfd_setfds_bits# fd_set rptp_stop_main_loopuuU+ return_valuerptp_async_putlineuwU rptp_fd callback fmt ...argsbuf cbcharvoid va_list rptp_async_writewxU rptp_fd callback ptr nbytesnewobuf_snext#data#current#length# callback#obufrptp_async_register:xyU[rptp_fd2what2 callback2rptp_async_processfyzUrptp_fd_what_ rptp_async_notifyz|}U2rptp_fdmask 4callbackcommand9p 2Lwrite_proc}Urptp_fdcurrentnread_proc  Urptp_fdbuffer n new -ibuf_stnextt#data#current#length# --ibufyprocess_input; Urptp_fd5p<ptr=line>length?"Devent#mask#"SeventsD"hz eventsinotify_linehUrptp_fdline whateventido_registerpUGrptp_fddo_unregisteriU~rptp_fdmain_loop_return_valueO\loopingNX(Z olist#otail#ilist#itail# writing#notify_mask#rcallback#rraw#wcallback# wraw#$grpZ v groupc M` strrchr   unsignedmemchr    strcpy   ! strcmpJ  & J strcats O memset   memcpy   ssize_t write     read '    rptp_parseJ mallocd  freex x vsprintf }  size_tstrlen    time_t suseconds_ttimeval, tv_sec #tv_usec # select   ,  /var/tmp/rplay-3.3.2/librplay../include/usr/include/iso/usr/include/sys/usr/include/netinetrplay.crplay.hstdarg_iso.htypes.hnetdb.hin.hsocket_impl.hbyteorder.hint_types.hstdio_impl.h        $ . 8 D J `          !!"! *! "  " " " " # # $$ $ % % && & ' ' {(( ( l) ) ^*m* u* P+ d+ B,a, i, D- Z- 6. >. / 0-0 80 C0 H0[0 c0 <1 Q1 32B2 J2 $3 -3 44 4 4 5 55 5 6 6 77 7 8 8 99 9 : : ;; ; t< < f=y= = \> q> S?[? 4@V@b@ j@ DALA  B 'B 0BQBXBeB vB B B B BB B B BC  C#C (C>C VC \CsC xCC C CC CC CD 0D 8DSD zD D DD DD D D DE 0E 8EME fE oE tEE E E EE E E EF !F 0F 8FEF TF `F lF|F F F FFF F F~G~GG GHH  H (H 5H DHNH WH nH yH H HH H H H H H H H H H I I I I  I-I 8IqII III IJ  J  JPJ^JdJqJ J JJ J J J J J JJ J K K 0K 6K ?K}VKfK sK K K K K K K KK K K K K KL L #L 0L PL VL _L}vL~L L L L L L LL L LL L MM ,M 4M AM PM XMmM tMM M M MM MM N N N1N 8NMN TNaN pN{N NN N N N N N O O!O 0O~|OOO OO OO O "P (P=P DPSP dP P PP PP PPP Q Q Q (Q:QJQ [Q cQ tQ |Q Q Q QQ Q QR  R!R (R=R DRSR dR R RR RS~FSWS SSST T T,TV TV \V iV xV VV V V V V VV  W W !W 0W @WRW hW pW }W W WW WW@XaXnX X X X X X X X Y1Y:YLY PYbY dYvY xYY YY YpYY Y Z  Z Z (Z CZ UZ eZ wZ Z ZZZ Z Z[ [  [A[ I[ \[ p[[ [ [ [ [ [ [ [ [ \*\=\ F\ W\ `\\ \ \ \ \ \\ \ \] ]  ]&] 0]Q] ^] ] ] ]] ]] ] ] ] ^^  ^D^ x^ ^^ ^ ^ ^_ _ _ *_ {_ __ __ _ _ __ `1` G` P`q` ` ` `` `` ` ` `a a1a  II !I/ 4I?  : ;  . : ; @ ' ID 4I : ;   :  I8 I: . : ; @ ' D  I: ;  .?  : ; @ ' ID .?  : ;@ ' ID I: ; 4I : ; D D . : ;@ ' ID   :  : I !I/.?  : ;@ ' D . : ;@ ID .?  : ;@ ' ID &I.? < ' ID I .? < ' D !.? < ' ID " I8 #.? < ' ID  DD%$> 4I?  : ;  II !I/ .?  : ; @ ' ID I: ;  4I : ;  .? < ID  I:  :  I8  :  : .?  : ;@ ' ID 4I : ; I: ; I !I/.?  : ;@ ' D  I.? < ' ID I&I.? < ' D  I8 .? < ' ID  DD%.?  : ; @ ' ID 4I : ;  $> I !I/  :  I8 I: .?  : ; @ ' D  I: ;   D III !I/ .?  : ;@ ' D I: ; 4I : ; . : ;@ ' D  I!I&I.? < ' ID I.? < ' D .? < ' ID Grplay_errlistrplay_packrplay_unpackVrplay_createrplay_set rplay_get rplay_destroy rplay_convert/ rplay_openz rplay_open_port rplay_open_sockaddr_ins rplay rplay_close rplay_perror"rplay_open_displayrplay_displayrplay_local-rplay_hostrplay_soundrplay_ping~rplay_ping_sockfdrplay_ping_sockaddr_in.rplay_host_volumerplay_default_hostrplay_default7rplay_open_defaultrplay_errno&rptp_errnofrptp_errlistrptp_openrptp_readCrptp_writerptp_putlinerptp_getlineprptp_commandrptp_close$rptp_perrorrptp_parse&] !rptp_main_looprptp_stop_main_loop+rptp_async_putline rptp_async_writerptp_async_register[rptp_async_processrptp_async_notifybdrplay_attrs_createrplay_attrs_destroyget_attrs default_rplay_porto&] Lwrite_procread_procprocess_inputnotify_linedo_registerGdo_unregister*_rplay_attrsRPLAY_ATTRS_rplayRPLAYva_listtime_thostentu_longsa_family_tin_port_tuint8_tuint16_t 6 uint32_tE z in_addr sockaddr_in servent`ssize_tin_addr_tj__FILEsockaddrsize_tu_longsa_family_tin_port_tuint8_t Huint16_tWuint32_tin_addrsockaddr_inVhostenthva_listZ_listLISTO ssize_t __FILE sockaddr}size_t&] fd_setfd_setcbva_listobuf_sobuf-ibuf_syibuf"Z grp ssize_t size_t time_t suseconds_t timeval9 bufHlistlist_next buf1 list_posI cache_posi&] linelengthSeventszevents~main_loop_return_valueloopingv group.hash.SUNW_ldynsym.dynsym.dynstr.SUNW_version.SUNW_versym.SUNW_dynsymsort.SUNW_reloc.rel.plt.text.init.fini.rodata.rodata1.got.dynamic.data.bssf.picdata.bss.symtab.strtab.comment.debug_loc.debug_info.debug_line.debug_abbrev.debug_pubnames.debug_funcnames.debug_typenames.debug_varnames.shstrtabpo  $$" %oP3o@o(Q ] B afflllrx@@$$PttLLLLLLL` j l2''h h-/= G07070100000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000b00000000TRAILER!!!