Merge branch '4524_cleanup'
[midnight-commander.git] / misc / ext.d / sound.sh
blob60a3cdd525b114e7d3eba9f5386289eb64de8a29
1 #!/bin/sh
3 # $1 - action
4 # $2 - type of file
6 action=$1
7 filetype=$2
9 [ -n "${MC_XDG_OPEN}" ] || MC_XDG_OPEN="xdg-open"
11 do_view_action() {
12 filetype=$1
14 case "${filetype}" in
15 common)
16 mediainfo "${MC_EXT_FILENAME}"
19 mp3)
20 mpg123 -vtn1 "${MC_EXT_FILENAME}" 2>&1 | \
21 sed -n '/^Title/,/^Comment/p;/^MPEG/,/^Audio/p'
23 ogg)
24 ogginfo "${MC_EXT_FILENAME}"
26 opus)
27 opusinfo "${MC_EXT_FILENAME}"
29 wma)
30 mplayer -quiet -slave -frames 0 -vo null -ao null -identify "${MC_EXT_FILENAME}" 2>/dev/null | \
31 tail +13 || file "${MC_EXT_FILENAME}"
34 cat "${MC_EXT_FILENAME}"
36 esac
39 do_open_action() {
40 filetype=$1
42 case "${filetype}" in
43 common)
44 if [ -n "$DISPLAY" ]; then
45 (audacious "${MC_EXT_FILENAME}" >/dev/null 2>&1 &)
46 else
47 play "${MC_EXT_FILENAME}"
50 mod)
51 mikmod "${MC_EXT_FILENAME}"
52 #tracker "${MC_EXT_FILENAME}"
54 wav22)
55 vplay -s 22 "${MC_EXT_FILENAME}"
57 mp3)
58 if [ -n "$DISPLAY" ]; then
59 (audacious "${MC_EXT_FILENAME}" >/dev/null 2>&1 &)
60 else
61 mpg123 "${MC_EXT_FILENAME}"
64 ogg)
65 if [ -n "$DISPLAY" ]; then
66 (audacious "${MC_EXT_FILENAME}" >/dev/null 2>&1 &)
67 else
68 ogg123 "${MC_EXT_FILENAME}"
71 opus)
72 if [ -n "$DISPLAY" ]; then
73 (audacious "${MC_EXT_FILENAME}" >/dev/null 2>&1 &)
74 else
75 play "${MC_EXT_FILENAME}"
78 midi)
79 timidity "${MC_EXT_FILENAME}"
81 wma)
82 mplayer -vo null "${MC_EXT_FILENAME}"
84 playlist)
85 if [ -n "$DISPLAY" ]; then
86 (audacious -p "${MC_EXT_FILENAME}" >/dev/null 2>&1 &)
87 else
88 mplayer -vo null -playlist "${MC_EXT_FILENAME}"
93 esac
96 case "${action}" in
97 view)
98 do_view_action "${filetype}"
100 open)
101 ("${MC_XDG_OPEN}" "${MC_EXT_FILENAME}" >/dev/null 2>&1) || \
102 do_open_action "${filetype}"
106 esac