PicPat -- Pause Vic, Pause Vat Installation and Execution Instructions ####################################### Introduction ------------ PicPat allows users to pause and restart on-going, live MBone (vic and vat) transmissions. Use of PicPat requires the availability of the standard MBone tools. (vic, vat and sdr). PicPat uses disk buffering on the client machine to accumulate incoming video and audio streams and to provide the pause facility. The size of the disk buffer is user-configurable. PicPat provides the user with a "pause budget" that limits the total amount of time the video/audio stream can be paused for the duration of the program. The pause budget may be expended in "one shot" or in increments over the viewing time. The size configured for the disk buffer determines the pause budget. Credits ------- PicPat is bassed on ideas published in K. Almeroth and M. Ammar, "On the Use of Multicast Delivery to Provide a Scalable and Interactive Video-on-Demand Service", Journal on Selected Areas of Communication, August 1996. (http://www.cc.gatech.edu/fac/Mostafa.Ammar/papers/VOD.ps) PicPat was written by Sameer Merchant (sampav@cc.gatech.edu) with some code borrowed from the MBone VCR and using tcl/tk for the interface (see license information). Status and Availability ------------------------ This is version 0.1 of PicPat. It is relatively robust but may be a little rough around the edges. Send comments to sampav@cc.gatech.edu or ammar@cc.gatech.edu Currently, only binaries for Sun Solaris are available. We hope to have ports for other platforms available in the future. Also we are working to exapnd the functionality of the system to add other modes of interactivity. A gzipped unix tar file maybe downloaded from http://www.cc.gatech.edu/fac/Mostafa.Ammar/picpat Installation ------------ 1. Unzip the file picpat.tar.gz using gzip or gunzip as follows gzip -d picpat.tar.gz OR gunzip picpat.tar.gz 2. Untar the resulting file picpat.tar as follows - tar -xvf picpat.tar This results in creation of a directory called picpat and the files are installed in this directory. 3. Make sure that the following files have execution permissions set a) vcr.stat b) vcrrec.stat c) picpat d) vcr_sh e) startvicvat Execution --------- Do the following to execute the system 1. Set the TK_LIBRARY environment variable so that it contains the './library ' path before all others. Under C-shell this can be done as follows - setenv TK_LIBRARY ./library:$TK_LIBRARY 2. Set the LD_LIBRARY_PATH so that it contains the path to the directory containing the libXext.so shared library. Usually this shared library is stored in the /usr/openwin/lib directory. For this directory the path can be set as follows under C-shell - setenv LD_LIBRARY_PATH /usr/openwin/lib:$LD_LIBRARY_PATH 3. Make sure that path to vic and vat is included in the PATH environment variable. 4. Start vic and vat by invoking the script startvicvat installed by PicPat. (This starts vic and vat listening on the loopback address with some default ports.) 5. Invoke the picpat program as follows - picpat & 6. Set the video and audio multicast address and ports on which the stream is being sent out and also the size and the location of the local buffer. PicPat is initialized with the addresses and ports for the IMJ Channel 1 (http://imj.gatech.edu). 7. Press done. 8. PicPat will display a message saying that it is buffering data. If no data is available on the specified group addresses the the system will wait indefinitely. To overcome this problem a Quit button is provided. Pressing Quit will stop the buffering activity and kill the current session, and the initial configuration screen comes up again. 9. Once sufficient data has been buffered, a VCR like screen appears with Play and Pause buttons. 10. At startup the system is in the Pause mode. This is displayed by the Mode indicator in the lower left corner. Press Play to start playing out the data available on the specified group address. 11. To Pause the stream press the Pause button. The Mode indicator will indicate that the stream is currently Paused. 12. As the buffer starts filling up with the incoming data, the available buffer space displayed in the VCR window will get decremented. Similiarly the available pause budget (an estimate of how much pause time you have) will also go down. If the available pause budget becomes 0, i.e. all the available buffer space is consumed, PicPat will automatically resume the paused session from the point it was paused. 13. To resume the stream press either the Pause or the Play button. 14. To end this session and to return to the initial configuration screen, press the Quit button. 15. When the stream ends and all the data from thbe buffer is played out, the session ends automatically and the initial configuration screen appears. Note that if two sessions are transmitted on the specified group address back to back and the second session is received and stored in the buffer before the first session is completely played out, then the system does not quit at the end of the first session. Instead it continues to play out the data from the second session. This is to ensure that the user does not loose information from the second session. License Information ------------------- The PicPat system uses Tcl/Tk and MBone VCR native code. Please read the file license.txt for relevant licensing information. Known Problem ------------- PicPat will not work on audio-only sessions. It will work on Video-only sessions though. We are working to modify this behavior. Troubleshooting --------------- Problem : After I selected the audio and video channels and ports in the configuration screen and pressed done, PicPat froze at the "PicPat is buffering initial data. Please wait." screen. What happened? Solution : If you see this behaviour then one possibility is that you are not getting a MBone feed on the multicast address and port that you entered in the configuration screen. You can confirm this by running vic and vat so that they are directly listening to these multicast group addresses/ports. Thus if you entered the following information in the configuration screen - Video Address : 224.2.2.1 Video Port : 19990 Audio Address : 224.2.2.2 Audio Port : 61020 ,then you can check if you are receiving the MBone feed on the above address by invoking vic/vat as follows vat -r -I 2 -C "Test Aud Feed" 224.2.2.2/61020 vic -I 2 -C "Test Vid Feed" 224.2.2.1/19990