sound.sh 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990
  1. #!/bin/sh
  2. # $1 - action
  3. # $2 - type of file
  4. action=$1
  5. filetype=$2
  6. do_view_action() {
  7. filetype=$1
  8. case "${filetype}" in
  9. mp3)
  10. mpg123 -vtn1 "${MC_EXT_FILENAME}" 2>&1 | \
  11. sed -n '/^Title/,/^Comment/p;/^MPEG/,/^Audio/p'
  12. ;;
  13. ogg)
  14. ogginfo "${MC_EXT_SELECTED}"
  15. ;;
  16. wma)
  17. mplayer -quiet -slave -frames 0 -vo null -ao null -identify "${MC_EXT_FILENAME}" 2>/dev/null | \
  18. tail +13 || file "${MC_EXT_FILENAME}"
  19. ;;
  20. *)
  21. cat "${MC_EXT_FILENAME}"
  22. ;;
  23. esac
  24. }
  25. do_open_action() {
  26. filetype=$1
  27. case "${filetype}" in
  28. common)
  29. if [ "$DISPLAY" = "" ]; then
  30. play "${MC_EXT_FILENAME}"
  31. else
  32. (xmms "${MC_EXT_FILENAME}" >/dev/null 2>&1 &)
  33. fi
  34. ;;
  35. mod)
  36. mikmod "${MC_EXT_FILENAME}"
  37. #tracker "${MC_EXT_FILENAME}"
  38. ;;
  39. wav22)
  40. vplay -s 22 "${MC_EXT_FILENAME}"
  41. ;;
  42. mp3)
  43. if [ "$DISPLAY" = "" ]; then
  44. mpg123 "${MC_EXT_FILENAME}"
  45. else
  46. (xmms "${MC_EXT_FILENAME}" >/dev/null 2>&1 &)
  47. fi
  48. ;;
  49. ogg)
  50. if [ "$DISPLAY" = "" ]; then
  51. ogg123 "${MC_EXT_FILENAME}"
  52. else
  53. (xmms "${MC_EXT_FILENAME}" >/dev/null 2>&1 &)
  54. fi
  55. ;;
  56. midi)
  57. timidity "${MC_EXT_FILENAME}"
  58. ;;
  59. wma)
  60. mplayer -vo null "${MC_EXT_FILENAME}"
  61. ;;
  62. playlist)
  63. if [ -z "$DISPLAY" ]; then
  64. mplayer -vo null -playlist "${MC_EXT_FILENAME}"
  65. else
  66. (xmms -p "${MC_EXT_FILENAME}" >/dev/null 2>&1 &)
  67. fi
  68. ;;
  69. *)
  70. ;;
  71. esac
  72. }
  73. case "${action}" in
  74. view)
  75. do_view_action "${filetype}"
  76. ;;
  77. open)
  78. xdg-open "${MC_EXT_FILENAME}" 2>/dev/null || \
  79. do_open_action "${filetype}"
  80. ;;
  81. *)
  82. ;;
  83. esac