Skip to content

Commit

Permalink
add ffmpeg to dependencies, lint and docs for server.py
Browse files Browse the repository at this point in the history
  • Loading branch information
hyades committed Sep 3, 2013
1 parent ae6a2b2 commit c6c0539
Show file tree
Hide file tree
Showing 2 changed files with 29 additions and 9 deletions.
2 changes: 1 addition & 1 deletion .travis-setup.sh
Expand Up @@ -5,7 +5,7 @@ echo 'yes' | sudo add-apt-repository ppa:gstreamer-developers/ppa
sudo apt-get update
sudo apt-get install libglib2.0-dev gir1.2-glib-2.0 libgirepository1.0-dev libglib2.0-0
sudo apt-get install python-gi python3-gi gstreamer1.0-tools gir1.2-gstreamer-1.0 gir1.2-gst-plugins-base-1.0 gstreamer1.0-plugins-good gstreamer1.0-plugins-ugly gstreamer1.0-plugins-bad gstreamer1.0-libav
sudo apt-get install python-scipy
sudo apt-get install python-scipy ffmpeg
sudo apt-get build-dep gstreamer1.0
sudo apt-get install autoconf automake autopoint libbz2-dev libdv4-dev libfaac-dev libfaad-dev libgtk-3-dev libmjpegtools-dev libtag1-dev libasound2-dev libtool libvpx-dev libxv-dev libx11-dev libogg-dev libvorbis-dev libopencv-dev libcv-dev libhighgui-dev libv4l-dev pkg-config zlib1g-dev gtk-doc-tools yasm bison flex
mkdir -p /usr/lib/pkgconfig
Expand Down
36 changes: 28 additions & 8 deletions python-api/gstswitch/server.py
@@ -1,9 +1,14 @@
"""
The server deals with all operations controlling gst-switch-srv
These include all OS related tasks
"""

import os
import signal
import subprocess

from errno import ENOENT
from exception import PathError, ServerProcessError
from .exception import PathError, ServerProcessError
from time import sleep


Expand Down Expand Up @@ -33,6 +38,14 @@ def __init__(
record_file='record.data'):

super(Server, self).__init__()

self._path = None
self._video_port = None
self._audio_port = None
self._control_port = None
self._record_file = None
self.gst_option_string = None

self.path = path
self.video_port = video_port
self.audio_port = audio_port
Expand All @@ -44,6 +57,7 @@ def __init__(

@property
def path(self):
"""Get the path"""
return self._path

@path.setter
Expand All @@ -58,6 +72,7 @@ def path(self, path):

@property
def video_port(self):
"""Get the video port"""
return self._video_port

@video_port.setter
Expand All @@ -83,6 +98,7 @@ def video_port(self, video_port):

@property
def audio_port(self):
"""Get the audio port"""
return self._audio_port

@audio_port.setter
Expand All @@ -108,6 +124,7 @@ def audio_port(self, audio_port):

@property
def control_port(self):
"""Get the control port"""
return self._control_port

@control_port.setter
Expand All @@ -133,6 +150,7 @@ def control_port(self, control_port):

@property
def record_file(self):
"""Get the record file"""
return self._record_file

@record_file.setter
Expand Down Expand Up @@ -168,7 +186,6 @@ def run(self, gst_option=''):
self.proc = self._run_process()
if self.proc:
self.pid = self.proc.pid
# TODO: Sleep time may vary
sleep(self.SLEEP_TIME)

def _run_process(self):
Expand Down Expand Up @@ -214,17 +231,20 @@ def _start_process(self, cmd):
raise ServerProcessError("Internal error "
"while launching process")


def make_coverage(self):
@classmethod
def make_coverage(cls):
"""Generate coverage
Calls 'make coverage' to generate coverage in .gcov files
"""
cmd = 'make -C {0} coverage'.format(TOOLS_DIR)
print TOOLS_DIR
with open(os.devnull, 'w'):
proc = subprocess.Popen(
proc = subprocess.Popen(
cmd.split(),
bufsize=-1,
shell=False)
out, err = proc.communicate()
print out
out, _ = proc.communicate()
print out


def terminate(self, cov=False):
Expand Down Expand Up @@ -268,7 +288,7 @@ def kill(self, cov=False):
try:
if cov:
self.gcov_flush()
self.make_coverage
self.make_coverage()
os.kill(self.pid, signal.SIGKILL)
self.proc = None
return True
Expand Down

0 comments on commit c6c0539

Please sign in to comment.