1. #!/bin/bash
  2. # Fitxer: videoScript.sh
  3. # Autor: wida36581590
  4. # Data: 27/01/2011
  5. # Versio: 0.1
  6. # Descripcio:
  7. # Descarrega de videos de TV3 a la carta
  8. #
  9.  
  10.  
  11. #---------------------INICI DE L'SCRIPT EN LA TERMINAL----------------------------------------
  12.  
  13. #if [ -z $DISPLAY ]
  14. #then
  15. echo -e "\n\n **********************************************************"
  16. echo " **************** TV3 Video Downloader Plus ***************"
  17. echo " **********************************************************"
  18.  
  19. echo -ne " * Quants videos vol descarregar ? * \n * "
  20. read NUM_VIDEOS
  21.  
  22. if [ `type rtmpdump 2>/dev/null >/dev/null ; echo $?` -eq 1 ]
  23. # també es podria fer if [ ! -x /usr/bin/rtmpdump ]
  24. then
  25. echo "ERROR: No està instal·lada la comanda rtmpdump en aquest equip"
  26. echo "per instalar-la utilitza les comandes següents com a root:"
  27. echo "yum install openssl-devel"
  28. echo "wget http://rtmpdump.mplayerhq.hu/download/rtmpdump-2.2e.tar.gz"
  29. echo "tar xvf rtmpdump-2.2e.tar.gz"
  30. echo "cd rtmpdump-2.2e"
  31. echo "make"
  32. echo "make install"
  33. fi
  34.  
  35. #inicialitzar de variabes/contadors
  36. I=0
  37. COMPLETATS=0
  38.  
  39. while [ $NUM_VIDEOS -ne $I ]
  40. do
  41. echo -e " * Introdueixi la url del video que desitja descarregar: * "
  42. echo -en " * (exemple: http://www.tv3.cat/videos/2714990) *\n * "
  43. read URL_VIDEO
  44. #COMPROVACIO URL_VIDEO
  45. #echo "URL_VIDEO= $URL_VIDEO"
  46.  
  47. ID_VIDEO=`echo $URL_VIDEO | cut -d/ -f5`
  48. #COMPROVACIO ID_VIDEO
  49. #echo "IDVIDEO= $ID_VIDEO"
  50.  
  51. LINK_VIDEO_DIRECTE=`links -dump "http://www.tv3.cat/su/tvc/tvcConditionalAccess.jsp?ID=$ID_VIDEO&QUALITY=H&FORMAT=MP4" | grep rtmp | cut -d? -f1 `
  52. #COMPROVACIO LINK_VIDEO_DIRECTE
  53. #echo "LINK_VIDEO_DIRECTE= $LINK_VIDEO_DIRECTE"
  54.  
  55. echo -ne " * Nom del fitxer del video $(($I+1)) (per defecte video$(($I+1)) )? *\n * "
  56. read NOM_FITXER
  57.  
  58. if [ $NOM_FIXER -z ]
  59. then
  60. NOM_FIXER=video$(($I+1))
  61. fi
  62.  
  63. #COMPROVACIO NOM_FIXER
  64. #echo "NOM_FIXER= $NOM_FIXER"
  65.  
  66. echo " ************ La operació s'està processant....************"
  67. rtmpdump -r $LINK_VIDEO_DIRECTE -o $NOM_FITXER.mp4 2>/dev/null | grep %
  68.  
  69. ERROR=`echo $?`
  70.  
  71. case $ERROR in
  72. 0 )
  73. #Si no dona error mostrar "completat"
  74. echo " * DESCÀRREGA COMPLETADA: S'ha descarregat amb éxit el *"
  75. echo -ne " * video número $(($I+1)) , guardat amb el nom $NOM_FITXER a la carpeta \n * $PWD \n"
  76. COMPLETATS=$(($COMPLETATS+1))
  77. ;;
  78.  
  79. 1 )
  80. # Si dona un error irrecuperable informar de l'error de descarrega del video
  81. echo "ERROR: No s'ha pogut descarregar el video $(($I+1))"
  82. ;;
  83. 2 )
  84. #Continuar la descarga en cas de pararse
  85. rtmpdump -r $LINK_VIDEO_DIRECTE -o $NOM_FITXER.mp4 --resume 2>/dev/null >/dev/null
  86. ;;
  87. esac
  88.  
  89. I=$(($I+1))
  90. done
  91.  
  92. echo " * $COMPLETATS VIDEO(S) (DE $NUM_VIDEOS VIDEO(S)) DESCARREGAT(S) *"
  93.  
  94.  
  95. #else
  96.  
  97. #------------------------------versió gráfica---------------------------------------
  98.  
  99. #zenity --info --text="Benvingut a TV3 Video Downloader Plus" --title="WELCOME"
  100.  
  101. #NUM_VIDEOS=`zenity --entry --text="Quants videos vol descarregar ? " --entry-text="1" --title="Benvingut a TV3 Video Downloader Plus"`
  102.  
  103. #if [ `type rtmpdump 2>/dev/null >/dev/null ; echo $?` -eq 1 ]
  104. #then
  105. # echo "ERROR: No està instal·lada la comanda rtmpdump en aquest equip"
  106. # exit 0
  107. #fi
  108.  
  109.  
  110.  
  111.  
  112.  
  113.  
  114. #fi