2
# -*- coding: utf-8 -*-
6
__authors__ = ["Jan Jokela <janjokela@gmail.com>"]
7
__licenses__ = ["LICENSE.LGPL"]
8
__description__ = "Tests for the video widget"
19
# Change sys path to glitter path
20
glitter_path = os.path.split(sys.path[0])[0]
21
sys.path[0] = glitter_path
23
from window import Window
25
from image import Image
26
from toolbar import Toolbar
27
from button import Button
28
from slider import Slider
29
from video import Video
31
# Importing glitter.video messes up sys.path because in its turn, it import gst
32
# which messes up sys.path
33
glitter_path = os.path.split(sys.path[0])[0]
34
sys.path[0] = glitter_path
36
class VideoPlayer(object):
37
""" Tests for the video widget """
39
def __init__(self, video_uri, aspect_ratio):
41
self.video_uri = video_uri
42
self.aspect_ratio = aspect_ratio
44
self.window = Window("Glitter Video Player")
45
self.window.connect("destroy", self.destroy)
47
self.stage = self.window.get_stage()
48
self.stage.connect('notify::width', self.do_resize)
49
self.stage.connect('notify::height', self.do_resize)
51
self.video = Video(video_uri, aspect_ratio)
52
self.stage.add(self.video)
53
self.video._update_layout()
56
self.toolbar = Toolbar()
57
self.stage.add(self.toolbar)
58
self.toolbar.natural_width = 0.8
59
self.toolbar.natural_height = 0.05
60
self.toolbar.natural_x = 0.1
61
self.toolbar.natural_y = 0.8
62
self.toolbar._update_layout()
65
self.toolbar.add(self.hbox)
66
self.hbox._update_layout()
68
"""self.button = Button("test.svg")
69
self.hbox.pack(self.button)"""
71
self.slider = Slider()
72
self.hbox.pack(self.slider)
74
self.window.show_all()
77
def destroy(self, widget, data=None):
80
def do_resize(self, stage, event):
81
self.video._update_layout()
82
self.toolbar._update_layout()
84
if __name__ == '__main__':
85
if len(sys.argv) != 3:
86
print "Missing arguments, correct usage is: "
87
print "python video.py video_file_uri [ex: glitter.mov] " + \
88
"mode [native, widescreen, tv, smart]"
91
VideoPlayer(sys.argv[1], sys.argv[2])