Mplayer로 workspace이동하기

제목은 낚을려고한 반쯤은..........풰이크고.
사실은 mplayer의 파이프에 대해서...

뭐 이런거 없어도 그냥 워크스페이스 이동으로만으로 사라지게 할수 있습니다만..
그것도 아니면 아예 종료해버리던가요 (mplayer에서는 q를 누르면 종료가 되죠..)
하지만 그것을 막기 위해서 아래의 스크립트를 사용하는 겁니다..
긴급상황을 넘긴후에는 나머지 동영상을 끝까지 즐기세요!(뭔가 이상해..)

준비물 fluxbox,mplayer
뭐 fluxbox 가 없다하여도.... 대부분의 윈도메니져가 비슷한 기능을 제공할겁니다 그건 알아서 하시고..
전 일단 플빡을 쓰므로 플빡을 기준으로 하겠습니다..
미리 말하지만, 오타는 좀 이해를..
그리고 스크립트는 진짜 간단합니다 몇줄안되죠!

중요한것은 MPLAYER가 PIPE 입력을 지원한다는 점입니다..
시실 이거 하나만 알면 됩니다.. 아랬건 별 필요가 없어요..
DBUS 같은걸로 할줄 알았는데 아니네요,, 다행이어라..

~/.bashrc
 
# export 안하려면 일일히 경로를 지정해 주세요.
export MPLAYER_PIPE_PATH=/tmp/mplayer_pipe

function mp()
{
    if [ ! -e "$MPLAYER_PIPE_PATH" ];then
       mkfifo "$MPLAYER_PIPE_PATH"
    fi

    # -input file=.. 이걸로 파이프 경로를 적어줍니다..
    mplayer -channels 6 -input file="$MPLAYER_PIPE_PATH" "$@"
}

파이프에 메세지를 전달합니다.. 자세한 내용(옵션애 대한) 것은
구글에서 mplayer slave라고 검색하면 좀 나옵니다.
~/bin/screen_hide.sh

# 없앨수도 있을까나..
mplayer_pid=`pgrep mplayer`

if [ "$mplayer_pid" !- "" ];then
    echo "pause" > "$MPLAYER_PIPE_PATH"
fi

이건 플빡전용이라.. 플빡 쓰시는분 아니면 별 신경안써도 되실듯.. 물론 workspace는 2개이상이여야 하겠죠..
대충 내용을 설명하자면 MacroCmd라는건 {A} {B} {C} 이런식으로 명령을 주어진대로 실행하는 겁니다.
여기서는 alt_R 키를 누르면 해당 스크립트를 실행후에 workspace를 딴대로 돌려버리는거죠.
~/.fluxbox/keys

Alt_R :MacroCmd {Exec /home/$USER/bin/screen_hide.sh} {NextWorkSpace}

이러면 오른쪽 alt키로 "긴급한 순간" 에 화면을 확 돌려버릴수 있습니다..
동영상은 그대로 멈춤채로요.(이게 중요함!)
윈도에서 XXX 같은 프로그램보다 화면이동이 빨라서.. 순발력만 뛰어나면 잘 감출수 있을겁니다.

이걸 조금만 응용한다면 외부에서 현재 실행중인 mplayer의 정보를알수도 있으며
접근(멈춤이라던가) 도 가능합니다..

뭐...................... 이거 특별히 포스팅할거리는 아닌거 같지만..
글안올리는거 같기도하고 mplayer slave에 대한 것도 없길래 걍 함 올려보는 겁니다..

추가>
1, 구글링 무섭네연.. 십분바께 안됬는데 봇떠서 내페이지 맨위에 올라있는 후덜덜.
2 저 스크립트에 버그좀 있는데................ 에이 몰라연 알아서 고치셈.