installRun-FC5-updatedJuanPa.txt 4.6 KB
Newer Older
jcaceres's avatar
jcaceres committed
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
This linux-based system is used for multi-machine jam sessions over Internet2. It is still being developed at CCRMA. At a miniumum, two machines are needed and it's easiest if they've got static ip addresses. The path between needs >3Mbps and low jitter. Set them up so ssh is easy (set up keys, allow X display to export) and run the session from two windows on one machine. Watch out for dhcp, watch out for incomplete /etc/hosts entries, watch out for firewalls and NAT boxes. If iperf udp looks ok on port 4464, in both directions, you've got it. You'll need root for lots of the installation 
steps (where indicated), but not to run.

=================basic machine============================================================
 (as root)
do an fc5 planetCCRMA, with sound applications, DEVELOPER install (THIS IS IMPORTANT)

=================Installing necesary software from Planet CCRMA - FEDORA CORE 5=============

------Installing the Planet CCRMA package signature------------------
rpm --import http://ccrma.stanford.edu/planetccrma/RPM-GPG-KEY.planetccrma.txt

------Updating Yum---------------------------------------------------
rpm -Uvh http://ccrma.stanford.edu/planetccrma/mirror/fedora/linux/planetccrma/5/i386/yum-2.6.1-0.1.rhfc5.ccrma.noarch.rpm

------Configuring Yum------------------------------------------------
rpm -Uvh http://ccrma.stanford.edu/planetccrma/mirror/fedora/linux/planetccrma/5/i386/planetccrma-repo-1.0-2.rhfc5.ccrma.noarch.rpm

------Synchronizing with the repository------------------------------
yum check-update

------Bringing your hat up to date-----------------------------------
yum check-update
yum update

------Install jack audio packages------------------------------------
yum install jack-audio-connection-kit
yum install jack-audio-connection-kit-devel
yum install jack-audio-connection-kit-example-clients
yum install jackeq
yum install jamin

------Install STK----------------------------------------------------
yum install stk


the firewall in the install option will interfere with using udp streaming, but you can turn it on while opening a hole for 4464:udp, if security might be an issue
---------------qt 3.3---------qwt 4.2.0------------------------
 (as root)
yum install qt-devel

logout, login to set environment variable
 (as root)
yum install qt-designer
yum install qwt-devel

-----------edit firewall --------------------------
 (as root)
/usr/bin/system-config-securitylevel
add a port (udp port, number 4464)
Other ports: 4464:udp

-----------set up keys for no password login--------------------------
(when you are asked for a passphrase, leave it empty)
(if there's no .ssh folder, create one)

chmod 700 ~/.ssh
ssh-keygen -t dsa -f ~/.ssh/id_dsa
cd ~/.ssh
scp id_dsa.pub SERVER:~/.ssh

ssh SERVER
chmod 700 ~/.ssh
cd .ssh
cat id_dsa.pub >> authorized_keys
chmod 600 authorized_keys
rm -f id_dsa.pub
--------------------test path using iperf both ways --------------------------
install iperf from rpm, google to find it

for example (as root)

rpm -ivh http://ftp.belnet.be/packages/dries.ulyssis.org/fedora/fc5/i386/RPMS.dries/iperf-2.0.2-1.2.fc5.rf.i386.rpm

[server]
iperf -u -s -p4464
[client]
iperf -u -c <server-name-or-addr> -b20M -p4464
...switch server and client and retest...

---------------allow remote user to grab sound hardware --------------------
 (as root)
edit 
/etc/security/console.perms.d/50-default.perms
and change the permissions for <sound> to 0666 ... two entries there, on the
same line
then to make it take effect immediately, do
chmod 0666 /dev/snd/*

----------------------------jackTrip.25--------------------------
not yet packaged, so...
get & uncompress http://ccrma.stanford.edu/~cc/projects/jackTrip.25
(I use anjuta to edit and there is an anjuta project, qtk.prj
I don't use the anjuta makefile features, 
instead I use the following script which runs qmake)

cd down to the /src directory
./m
make

-----------test new app --------------------------
in the src directory:
./sw (prints args)

[server]
qjackctl & 
	(then these settings in Setup page gui)
	Realtime, Frames/Period 32, Sample Rate 48000
./sw -j -z 32 -b 4 -q 2 -a 2 -r
[client]
run qjackctl the same (exporting the X gui)
./sw -j -z 32 -b 4 -q 2 -a 2 -t <server-name-or-addr>

To restart:
quit with <ctrl>c and re-run (always stop/start jack on both sides first)

Hints:
  ..."udp waited too long"... 
	message means choking or jitter problems
  ...if needed, increase packet sizes 32-64-128-256 at the expense of latency...
	this must be the same for qjackctl and the -z command
  ...add/reduce redundant packets with -b command...
  ...add/reduce input queue with -q command...

See README for blather about ownership.