demo.sh
上传用户:kjfoods
上传日期:2020-07-06
资源大小:29949k
文件大小:4k
源码类别:

midi

开发平台:

Unix_Linux

  1. #!/bin/sh
  2. ########################################################################
  3. # VLC demo command line generator
  4. # $Id$
  5. ########################################################################
  6. #TODO: change on Max OS X
  7. if test ".`uname -s`" = ".Darwin"; then
  8.   VLC="./VLC.app/Contents/MacOS/VLC --quiet --color "
  9. else
  10.   VLC="./vlc --quiet --color "
  11. fi
  12. CMD=""
  13. pyschedelic()
  14. {
  15.   echo -e "n- Psychedelic demo -nconfigurationn"
  16.   echo -en "Please choose an input. Live camera feeds are best.ninput? "
  17.   read input
  18.   echo -e "n$VLC --sub-filter marq --marq-position 8 --marq-size 30 --marq-color 16776960 --marq-marquee "VLC - Psychedelic video filter" --vout-filter distort --distort-mode psychedelic $input"
  19. }
  20. gradient()
  21. {
  22.   echo -e "n- Gradient demo -nconfigurationn"
  23.   echo -en "Please choose an input. Live camera feeds are best.ninput? "
  24.   read input
  25.   echo -en "Please choose a logo to display (or multiple logos according to the --logo-file syntax)nlogo? "
  26.   read logofile
  27.   echo "new a broadcast enabled loop
  28. setup a input $input
  29. setup a output #duplicate{dst=mosaic-bridge,select=video}
  30. control a play" > "`pwd`/demo.vlm"
  31.   echo "VLM batch file saved to `pwd`/demo.vlm"
  32.   echo -e "n$VLC --sub-filter mosaic:marq:logo --mosaic-width 120 --mosaic-height 90 --mosaic-cols 1 --mosaic-rows 1 --marq-position 8 --marq-size 30 --marq-color 65280 --marq-marquee "VLC - Gradient video filter" --logo-file $logofile --vout-filter distort --distort-mode gradient --extraintf telnet --telnet-host localhost --vlm-conf `pwd`/demo.vlm $input"
  33. }
  34. mosaic()
  35. {
  36.   echo -e "n- Mosaic demo -nconfigurationn"
  37.   echo -en "Please choose a background input.nbackground input? "
  38.   read bg
  39.   echo -en "Please choose a video to blend.nvideo? "
  40.   read vid
  41.   echo "new a broadcast enabled loop
  42. setup a input $vid
  43. setup a output #duplicate{dst=mosaic-bridge,select=video}
  44. control a play" > "`pwd`/demo.vlm"
  45.   echo "VLM batch file saved to `pwd`/demo.vlm"
  46.   echo -e "n$VLC --sub-filter mosaic:marq --marq-marque "VLC - mosaic" --marq-position 6 --mosaic-width 120 --mosaic-height 90 --mosaic-rows 1 --mosaic-cols 1 --mosaic-alpha 150 --extraintf telnet --telnet-host localhost --vlm-conf `pwd`/demo.vlm $bg"
  47. }
  48. opengl()
  49. {
  50.   echo -e "n- OpenGL cube demo -nconfigurationn"
  51.   echo -en "Please choose an input.ninput? "
  52.   read input
  53.   echo -e "n$VLC -V opengl --opengl-effect transparent-cube $input"
  54. }
  55. wall()
  56. {
  57.   echo -e "n- Video wall demo -nconfigurationn"
  58.   echo -en "Please choose an input.ninput? "
  59.   read input
  60.   echo -en "Do you want to use rotated laptops/screens ?n[y/N] "
  61.   read rot
  62.   case "$rot" in
  63.     "y"|"Y"|"yes")
  64.       echo -e "nLeft hand side:n$VLC --vout-filter wall:transform --transform-type 90 --wall-cols 2 --wall-rows 1 --wall-active 0 $input"
  65.       echo -e "nRight hand side:n$VLC --vout-filter wall:transform --transform-type 90 --wall-cols 2 --wall-rows 1 --wall-active 1 --sub-filter marq --marq-marquee "VLC - Video wall" $input"
  66.       ;;
  67.     *)
  68.       echo -e "nLeft hand side:n$VLC --vout-filter wall --wall-cols 2 --wall-rows 1 --wall-active 0 --sub-filter marq --marq-marquee "VLC - Video wall" $input"
  69.       echo -e "nRight hand side:n$VLC --vout-filter wall --wall-cols 2 --wall-rows 1 --wall-active 1 $input"
  70.       ;;
  71.   esac
  72. }
  73. cat << EOF
  74. VLC cool demos script
  75.  1. psychedelic video filter
  76.  2. gradient video filter
  77.  3. mosaic
  78.  4. OpenGL cube
  79.  5. video wall
  80. EOF
  81. echo -n "demo number? "
  82. read choice
  83. case "$choice" in
  84.  1) pyschedelic;;
  85.  2) gradient;;
  86.  3) mosaic;;
  87.  4) opengl;;
  88.  5) wall;;
  89.  *) echo "Unrecognized input, please try again"; exit 1;;
  90. esac
  91. echo -e "nUse the previous command to run the demo."
  92. echo "Note: make sure that you reset your preferences before running these demos."