README
上传用户:sy_wanhua
上传日期:2013-07-25
资源大小:3048k
文件大小:2k
源码类别:

流媒体/Mpeg4/MP4

开发平台:

C/C++

  1. VFilter readme
  2. For information about licensing, please see the LICENSE file in this
  3. directory, or http://www.vovida.org/license.html .
  4. simple filtering class.
  5. VFilter is a simple filtering class. 
  6. To use VFilter, do the following:
  7. 1.  run unix.  there is no vxworks support in it right now.
  8. 2.  define the environment variable SIP_FILTER !  This is important!
  9. use
  10. setenv SIP_FILTER 1
  11.         # to undefine, use:  unsetenv SIP_FILTER
  12. in tcsh, or 
  13. SIP_FILTER=1 ; export SIP_FILTER
  14. in bash to enable.
  15. VFilter prints out information as it starts running about this.
  16. 3.  run the appropriate infilter.pl and outfilter.pl code to filter
  17. the incoming and outgoing sides of the connections.  this code is in
  18. the vfilter directory under tools .
  19. You must run the infilter.pl and outfilter.pl in the correct
  20. directory.  this is the same directory that you ran your sip
  21. application in.  If you have started the sip program with SIP_FILTER
  22. set, you should now see the following files in your directory:
  23. sip-inpipe.in
  24. sip-inpipe.in.ctl
  25. sip-inpipe.out
  26. sip-inpipe.out.ctl
  27. sip-outpipe.in
  28. sip-outpipe.in.ctl
  29. sip-outpipe.out
  30. sip-outpipe.out.ctl
  31. these are named pipes (unix fifos) which are used by the perl side.
  32. Now, if you run the infilter.pl and outfilter.pl, you should see
  33. something like:
  34. # ./infilter.pl
  35. waiting for message
  36. # ./outfilter.pl
  37. waiting for message
  38. now, all code going sent to/from the SIP code goes through this filter.
  39. about the perl scripts
  40. the perl scripts are essentially identical apart from the name of the
  41. fifos which it sits on.
  42. the actual loop where messages are modified is at the bottom of the
  43. perl code.  It looks like this:
  44. while (1) {
  45.     print "waiting for messagen";
  46.     $buf = recMsg();
  47.     print "got msg... parsing and retransmittingn";
  48.     $buf = &filter($buf);
  49.     sendMsg($buf);
  50. }
  51. this code receives a message, prints out the "got msg..." notice, then
  52. calls a function &filter.  the result of &filter() is sent back to the
  53. SIP stack.