[!download.png|align=center,width=150!|http://webfiler.teltek.es/webfiler/galicaster/galicaster-1.0.0-rc.tgz]
By downloading, I agree to the [non-commercial license|http://creativecommons.org/licenses/by-nc-sa/3.0/].
[!http://i.creativecommons.org/l/by-nc-sa/3.0/80x15.png|align=center,width=80!|http://creativecommons.org/licenses/by-nc-sa/3.0/]
\\
{tip:title=Mailing List}
[Comunity mailing list|http://galicaster-community.2311038.n4.nabble.com/] \- [subscribe|http://galicaster-community.2311038.n4.nabble.com/template/NamlServlet.jtp?macro=subscribe&node=4127427]
{tip}
{column}\\ {section}
----
h5. Hardware
In this release, two reference configurations are proposed. One uses an USB web camera the other uses a video capture card, such as the Hauppauge PVR350. In both cases, using a VGA capture card model VGA2USB or superior is recommended.
h6. Video Capture Card
!g_hau.png|align=center,width=655!
|| Component \\ || Known Good Hardware || Notes \\ ||
| Processor & Motherboard \\ | Intel i3 Processor \\
4GB RAM | Not much CPU is needed, since the video capture card encodes the video stream by hardware |
| Video Capture Card \\ | Hauppauge PVR-250 \\
Hauppauge PVR-350 \\
Hauppauge HVR-1600 \\ | The audio is also captured with this card |
| VGA Capture Card \\ | VGA2USB \\
VGA2USB-I \\
VGA2USB LR \\
VGA2USB LR-I \\ | |
h6. WebCam USB
!g_webcam.png|align=center,width=655!
|| Component \\ || Known Good Hardware || Notes \\ ||
| Processor & Motherboard \\ | Intel i5 Processor \\
4GB RAM | As both video streams need encoding, there is a higher CPU demand |
| Video Capture Card \\ | Hauppauge PVR250 \\
Hauppauge PVR350 \\
Hauppauge HVR1600 \\ | |
| WebCam \\ | USB Logitech HD Pro Webcam \\ | Valid for all web cameras compatible with V4L2 |
| Sound Card | Linux compatible | |
The [cookbook|Galicaster:Cookbook] section will find solutions for setting capture card in linux
h5. Software
Galicaster is based on Open Source technologies.
The recommended OS for this release is Ubuntu 10.04 LTS.
The installation process consists of five steps: installing dependencies, checking configuration, downloading software, configuring and running.
h6. 1.\- Install dependences.
Galicaster requires the following software to be installed:
* Gstreamer
* python-setuptools and pip
* iCalendar
* pyCurl
* Capture card configuration tools
{code:none}
$ sudo apt-get install \
gstreamer0.10-ffmpeg gstreamer0.10-alsa gstreamer0.10-plugins-bad gstreamer0.10-plugins-bad-multiverse \
gstreamer0.10-plugins-base gstreamer0.10-plugins-base-apps gstreamer0.10-plugins-good \
gstreamer0.10-plugins-ugly gstreamer0.10-plugins-ugly-multiverse
$ sudo apt-get install python-pip python-setuptools
$ sudo pip install icalendar
$ sudo apt-get install python-pycurl
$ sudo apt-get install v4l-conf ivtv-utils guvcview
{code}
In ubuntu 11.04 and above is recommended installing v4l-utils instead of ivtv-utils.
h6. 2.\- Check configuration.
Launch the following commands from a shell to verify that all dependencies are installed:
{code:none}
$ python --version
Python 2.6.5
$ python -c "import pygtk; pygtk.require('2.0')"
$ python -c "import pygst; pygst.require('0.10')"
$ python -c "import pycurl"
$ python -c "import icalendar"
$ gst-launch v4l2src num-buffers=25 ! video/x-raw-yuv,width=800,framerate=24/1 ! ffmpegcolorspace ! xvimagesink
$ gst-launch v4l2src num-buffers=25 ! video/x-raw-yuv,width=800,framerate=24/1 ! ffmpegcolorspace ! x264enc pass=5 quantizer=22 speed-preset=4 profile=1 ! queue ! avimux ! filesink location=out.avi
$ file out.avi
out.avi: RIFF (little-endian) data, AVI, 800 x 600, ~24 fps, video: H.264 X.264 or H.264
$ rm out.avi
{code}
h6. 3.\- Download software
Download the software from [this site|http://webfiler.teltek.es/webfiler/galicaster/galicaster-1.0.0-rc.tgz].
Uncompress it using tar:
{code}
$ tar xzf galicaster-1.0.0-rc.tgz
$ cd galicaster-1.0.0-rc
{code}
h6. 4.\- Configure Galicaster
The values are in the file {{conf.ini}}:
Sections:
* {{basic}}
** {{repository}}: path to the working folder.
** {{admin}}: enables admin mode (True\|False)
** Example:
{code:none}
[basic]
repository = /mnt/videos/Repository
admin = True
{code}
* {{screen}}
** {{right}}: Name of the video device to be shown in the right screen (None to deactivate).
** {{left}}: Name of the video device to be shown in the left screen (None to deactivate).
** {{cursor}}: Shows or hides the cursor. (True\|False)
** Example:
{code:none}
[screen]
right = Epiphan
left = Hauppagge
cursor = True
{code}
* {{ingest}}
** The data to connect Galicaster to an Opencast-Matterhorn server.
** Example:
{code:none}
[ingest]
default = True
username = matterhorn_system_account
host = http://admin.matterhorn.es:8080
password = CHANGE_ME
workflow = full
{code}
* {{trackN}}
** Values common to all devices:
*** {{name}}: Name assigned to the device.
*** {{device}}: Device type. (v4l2\|vga2usb\|webcam\|hauppage\|pulse)
*** {{flavor}}: Matterhorn "flavor" associated to the track. (presenter\|presentation\|other)
*** {{location}}: Device's mount point in the system (e.g. /dev/video0).
**** For PulseAudio devices run:
{code:none}
$ pactl -list | grep "Source" -A 5
{code}
and use "Name:" as the {{location}} field.
*** {{file}}: The file name where the track will be recorded.
*** {{active}}: Whether the device will be played and recorded. (True\|False)
** Values in audio (pulse) devices:
*** {{playing}}: Indicates if the audio, apart from being recorded, is played. (True\|False)
*** {{vumeter}}: Activates data sending to the program's vumeter. (True\|False) Only one device should be activated.
*** {{amplification}}: Gstreamer amplification value: < 1 decreases and > 1 increases volume. Values between 1 and 2 are commonly used.
** Example:
{code:none}
[track1]
name = Hauppagge
loc2 = /dev/hauprevideo
loc3 = /dev/haupreaudio
location = /dev/haucamera
file = CAMERA.mpg
device = hauppage
flavor = presenter
active = False
[track2]
name = Epiphan
active = False
location = /dev/screen
file = SCREEN.avi
device = vga2usb
flavor = presentation
[track3]
amplification = 2.0
name = AudioSource
vumeter = Active
location = alsa_input.usb-046d_081d_96D1FD90-00-U0x46d0x81d.analog-mono
file = sound.mp3
device = pulse
flavor = presenter
active = False
playing = False
[track4]
name = Webcam
videocrop-left = 160
videocrop-right = 160
caps = image/jpeg,framerate=25/1,width=1280,height=720
active = False
location = /dev/webcam
file = CAMERA.avi
device = mjpeg
flavor = presenter
{code}
h6. 5.\- Running
Galicaster Class is launched with the command:
{code:none}
$ ./classexec
{code}