README
author viric@llimona
Fri, 14 Sep 2007 23:59:42 +0200
changeset 19 12de2cd767f2
parent 17 b94514bf216a
permissions -rw-r--r--
Removed utf-8 from readme.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
17
b94514bf216a More detailed README.
viric@llimona
parents: 14
diff changeset
     1
-----------------------------------------------------------
19
12de2cd767f2 Removed utf-8 from readme.
viric@llimona
parents: 17
diff changeset
     2
stdin mixer - Copyright (C) 2007  Lluis Batlle i Rossell
17
b94514bf216a More detailed README.
viric@llimona
parents: 14
diff changeset
     3
    Program licensed under GPL v2 or above.
b94514bf216a More detailed README.
viric@llimona
parents: 14
diff changeset
     4
    See the file COPYING.
b94514bf216a More detailed README.
viric@llimona
parents: 14
diff changeset
     5
    [http://vicerveza.homeunix.net/~viric/soft/stdinmix]
b94514bf216a More detailed README.
viric@llimona
parents: 14
diff changeset
     6
-----------------------------------------------------------
b94514bf216a More detailed README.
viric@llimona
parents: 14
diff changeset
     7
14
286b248e402a Adding better error messages and a README.
viric@llimona
parents:
diff changeset
     8
Motivation
286b248e402a Adding better error messages and a README.
viric@llimona
parents:
diff changeset
     9
-----------
286b248e402a Adding better error messages and a README.
viric@llimona
parents:
diff changeset
    10
I wanted to run mplayer, and command things to it using a key bind. I could
286b248e402a Adding better error messages and a README.
viric@llimona
parents:
diff changeset
    11
run "mplayer -slave", but I needed its standard input accessible from any other
286b248e402a Adding better error messages and a README.
viric@llimona
parents:
diff changeset
    12
program. Then, I wrote this program to share stdin.
286b248e402a Adding better error messages and a README.
viric@llimona
parents:
diff changeset
    13
286b248e402a Adding better error messages and a README.
viric@llimona
parents:
diff changeset
    14
286b248e402a Adding better error messages and a README.
viric@llimona
parents:
diff changeset
    15
What does it do
286b248e402a Adding better error messages and a README.
viric@llimona
parents:
diff changeset
    16
-----------------
286b248e402a Adding better error messages and a README.
viric@llimona
parents:
diff changeset
    17
It allows the standard input of a program to be accessible from other terminals
286b248e402a Adding better error messages and a README.
viric@llimona
parents:
diff changeset
    18
through a unix socket, offering also a simple client for this socket.
286b248e402a Adding better error messages and a README.
viric@llimona
parents:
diff changeset
    19
286b248e402a Adding better error messages and a README.
viric@llimona
parents:
diff changeset
    20
286b248e402a Adding better error messages and a README.
viric@llimona
parents:
diff changeset
    21
Exmaple of use
286b248e402a Adding better error messages and a README.
viric@llimona
parents:
diff changeset
    22
-----------------
286b248e402a Adding better error messages and a README.
viric@llimona
parents:
diff changeset
    23
You can try it with 'cat'. In a shell, start "stdinmix cat". Test how 'cat'
286b248e402a Adding better error messages and a README.
viric@llimona
parents:
diff changeset
    24
works; write lines, and see its output.
286b248e402a Adding better error messages and a README.
viric@llimona
parents:
diff changeset
    25
286b248e402a Adding better error messages and a README.
viric@llimona
parents:
diff changeset
    26
From another shell, start "stdinmix", and write there lines. See how they
286b248e402a Adding better error messages and a README.
viric@llimona
parents:
diff changeset
    27
are treated as if they went to 'cat' input. In fact they went to 'cat' input.
286b248e402a Adding better error messages and a README.
viric@llimona
parents:
diff changeset
    28
286b248e402a Adding better error messages and a README.
viric@llimona
parents:
diff changeset
    29
286b248e402a Adding better error messages and a README.
viric@llimona
parents:
diff changeset
    30
How does it work
286b248e402a Adding better error messages and a README.
viric@llimona
parents:
diff changeset
    31
------------------
286b248e402a Adding better error messages and a README.
viric@llimona
parents:
diff changeset
    32
'stdinmix [app]' allow two ways of sending commands to its child application
286b248e402a Adding better error messages and a README.
viric@llimona
parents:
diff changeset
    33
stdin:
286b248e402a Adding better error messages and a README.
viric@llimona
parents:
diff changeset
    34
- using the terminal stdin (as if you run the application alone)
286b248e402a Adding better error messages and a README.
viric@llimona
parents:
diff changeset
    35
- using a unix socket, by default at /tmp/socket-sm.UID, overwritable by
286b248e402a Adding better error messages and a README.
viric@llimona
parents:
diff changeset
    36
  the environment variable SM_SOCKET.
286b248e402a Adding better error messages and a README.
viric@llimona
parents:
diff changeset
    37
286b248e402a Adding better error messages and a README.
viric@llimona
parents:
diff changeset
    38
If you don't specify any argument, it will connect to the mentioned unix socket,
286b248e402a Adding better error messages and a README.
viric@llimona
parents:
diff changeset
    39
and forward the current stdin to that socket.
286b248e402a Adding better error messages and a README.
viric@llimona
parents:
diff changeset
    40
286b248e402a Adding better error messages and a README.
viric@llimona
parents:
diff changeset
    41
17
b94514bf216a More detailed README.
viric@llimona
parents: 14
diff changeset
    42
Known problems
b94514bf216a More detailed README.
viric@llimona
parents: 14
diff changeset
    43
------------------
b94514bf216a More detailed README.
viric@llimona
parents: 14
diff changeset
    44
If you write data at the same time to the application stdin and to the unix
b94514bf216a More detailed README.
viric@llimona
parents: 14
diff changeset
    45
socket, both will be mixed in a quite unpredictable way. I let the user
b94514bf216a More detailed README.
viric@llimona
parents: 14
diff changeset
    46
control this not to happen.
b94514bf216a More detailed README.
viric@llimona
parents: 14
diff changeset
    47
b94514bf216a More detailed README.
viric@llimona
parents: 14
diff changeset
    48
14
286b248e402a Adding better error messages and a README.
viric@llimona
parents:
diff changeset
    49
How do I use it
286b248e402a Adding better error messages and a README.
viric@llimona
parents:
diff changeset
    50
------------------
286b248e402a Adding better error messages and a README.
viric@llimona
parents:
diff changeset
    51
I wanted a program for transcribing voice in audio tracks. I had mplayer, and
286b248e402a Adding better error messages and a README.
viric@llimona
parents:
diff changeset
    52
I only needed a way to send commands to it as "-slave". By now, on need,
286b248e402a Adding better error messages and a README.
viric@llimona
parents:
diff changeset
    53
I use xbindkeys [1] to map F1 to "mplayer-remote -p" (pause) and
286b248e402a Adding better error messages and a README.
viric@llimona
parents:
diff changeset
    54
F2 to "mplayer-remote -b" (back a few seconds). Then I can transcribe in
286b248e402a Adding better error messages and a README.
viric@llimona
parents:
diff changeset
    55
my favourite editor (vim) pausing and moving back the audio track when needed.
286b248e402a Adding better error messages and a README.
viric@llimona
parents:
diff changeset
    56
17
b94514bf216a More detailed README.
viric@llimona
parents: 14
diff changeset
    57
You can find some scripts in the utils/ directory.
b94514bf216a More detailed README.
viric@llimona
parents: 14
diff changeset
    58
b94514bf216a More detailed README.
viric@llimona
parents: 14
diff changeset
    59
b94514bf216a More detailed README.
viric@llimona
parents: 14
diff changeset
    60
Author
b94514bf216a More detailed README.
viric@llimona
parents: 14
diff changeset
    61
---------
19
12de2cd767f2 Removed utf-8 from readme.
viric@llimona
parents: 17
diff changeset
    62
Lluis Batlle i Rossell 
17
b94514bf216a More detailed README.
viric@llimona
parents: 14
diff changeset
    63
[http://vicerveza.homeunix.net/~viric/]
b94514bf216a More detailed README.
viric@llimona
parents: 14
diff changeset
    64
[viric ĉe vicerveza punkto homelinux punkto net]
b94514bf216a More detailed README.
viric@llimona
parents: 14
diff changeset
    65
14
286b248e402a Adding better error messages and a README.
viric@llimona
parents:
diff changeset
    66
286b248e402a Adding better error messages and a README.
viric@llimona
parents:
diff changeset
    67
References
286b248e402a Adding better error messages and a README.
viric@llimona
parents:
diff changeset
    68
------------
286b248e402a Adding better error messages and a README.
viric@llimona
parents:
diff changeset
    69
[1] xbindkeys: http://hocwp.free.fr/xbindkeys/xbindkeys.html