pyxine-checkins Mailing List for Pyxine
Status: Pre-Alpha
Brought to you by:
dairiki
You can subscribe to this list here.
2003 |
Jan
|
Feb
(36) |
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
---|---|---|---|---|---|---|---|---|---|---|---|---|
2004 |
Jan
|
Feb
|
Mar
|
Apr
|
May
(1) |
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
From: <ben...@id...> - 2004-05-22 12:40:55
|
Dear Open Source developer I am doing a research project on "Fun and Software Development" in which I kindly invite you to participate. You will find the online survey under http://fasd.ethz.ch/qsf/. The questionnaire consists of 53 questions and you will need about 15 minutes to complete it. With the FASD project (Fun and Software Development) we want to define the motivational significance of fun when software developers decide to engage in Open Source projects. What is special about our research project is that a similar survey is planned with software developers in commercial firms. This procedure allows the immediate comparison between the involved individuals and the conditions of production of these two development models. Thus we hope to obtain substantial new insights to the phenomenon of Open Source Development. With many thanks for your participation, Benno Luthiger PS: The results of the survey will be published under http://www.isu.unizh.ch/fuehrung/blprojects/FASD/. We have set up the mailing list fa...@we... for this study. Please see http://fasd.ethz.ch/qsf/mailinglist_en.html for registration to this mailing list. _______________________________________________________________________ Benno Luthiger Swiss Federal Institute of Technology Zurich 8092 Zurich Mail: benno.luthiger(at)id.ethz.ch _______________________________________________________________________ |
From: <da...@us...> - 2003-02-13 23:14:12
|
Update of /cvsroot/pyxine/pyxine In directory sc8-pr-cvs1:/tmp/cvs-serv27639 Modified Files: ChangeLog Log Message: Wups. Forgot to save this before the previous commit. Index: ChangeLog =================================================================== RCS file: /cvsroot/pyxine/pyxine/ChangeLog,v retrieving revision 1.9 retrieving revision 1.10 diff -u -d -r1.9 -r1.10 --- ChangeLog 13 Feb 2003 23:11:03 -0000 1.9 +++ ChangeLog 13 Feb 2003 23:14:08 -0000 1.10 @@ -1,7 +1,9 @@ 2003-02-13 Geoffrey T. Dairiki <da...@da...> + * doc/: New subdirectory for documentation. (Currently the only documentation is an HTML version of the README.) + * Makefile (SUBDIRS): add new doc subdir * doc/Makefile: New file * doc/pyxine.css: New file |
From: <da...@us...> - 2003-02-13 23:11:07
|
Update of /cvsroot/pyxine/pyxine In directory sc8-pr-cvs1:/tmp/cvs-serv25909 Modified Files: ChangeLog Makefile Log Message: New doc subdirectory. (Currently it only has the HTML version of the README.) Index: ChangeLog =================================================================== RCS file: /cvsroot/pyxine/pyxine/ChangeLog,v retrieving revision 1.8 retrieving revision 1.9 diff -u -d -r1.8 -r1.9 --- ChangeLog 13 Feb 2003 19:51:27 -0000 1.8 +++ ChangeLog 13 Feb 2003 23:11:03 -0000 1.9 @@ -1,8 +1,12 @@ 2003-02-13 Geoffrey T. Dairiki <da...@da...> - + + * doc/: New subdirectory for documentation. (Currently the + only documentation is an HTML version of the README.) + * doc/Makefile: New file + * doc/pyxine.css: New file + Abstract some of the higher-level player functionality into pyxine.player.Player. - * pyxine/player.py: New file. * pyxine/__init__.py: Update __all__ * pyxine/Makefile(PYSOURCE): Add pyxine/player.py Index: Makefile =================================================================== RCS file: /cvsroot/pyxine/pyxine/Makefile,v retrieving revision 1.4 retrieving revision 1.5 diff -u -d -r1.4 -r1.5 --- Makefile 12 Feb 2003 21:03:17 -0000 1.4 +++ Makefile 13 Feb 2003 23:11:03 -0000 1.5 @@ -23,7 +23,7 @@ # FIXME PYXINE_VERSION = 0.1alpha2 -SUBDIRS = pxlib pyxine test examples +SUBDIRS = pxlib pyxine test examples doc GEN_FILES = setup.py MANIFEST DIST_FILES= $(GEN_FILES) |
From: <da...@us...> - 2003-02-13 23:11:07
|
Update of /cvsroot/pyxine/pyxine/doc In directory sc8-pr-cvs1:/tmp/cvs-serv25909/doc Added Files: Makefile pyxine.css Log Message: New doc subdirectory. (Currently it only has the HTML version of the README.) --- NEW FILE: Makefile --- # $Id: Makefile,v 1.1 2003/02/13 23:11:04 dairiki Exp $ # # Copyright (C) 2003 Geoffrey T. Dairiki <da...@da...> # # This file is part of Pyxine, Python bindings for xine. # # Pyxine is free software; you can redistribute it and/or # modify it under the terms of the GNU General Public License # as published by the Free Software Foundation; either version 2 # of the License, or (at your option) any later version. # # Pyxine is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. TOP = .. GEN_FILES = README.html DIST_FILES= $(GEN_FILES) DIST_FILES+= Makefile default.css # Program to convertion from prStucturedDocumentation to HTML. # See http://docutils.sf.net/ DOCUTILS_HTML = html.py STYLESHEET = pyxine.css VPATH = $(TOP) %.html : % $(DOCUTILS_HTML) --stylesheet="$(STYLESHEET)" $< > $@ -include $(TOP)/common.mak --- NEW FILE: pyxine.css --- /* $Id: pyxine.css,v 1.1 2003/02/13 23:11:04 dairiki Exp $ * * Stylesheet for the Pyxine documentation. * * This is based on tools/stylesheets/default.css from the docutils * distribution. (http://docutils.sf.net/) * * * Copyright (C) 2003 Geoffrey T. Dairiki * * This file is part of Pyxine, Python bindings for xine. * * Pyxine is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License * as published by the Free Software Foundation; either version 2 * of the License, or (at your option) any later version. * * Pyxine is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ /* * Original header: * :Author: David Goodger :Contact: go...@us... :date: Date: 2003/01/22 22:26:48 :version: Revision: 1.29 :copyright: This stylesheet has been placed in the public domain. Default cascading style sheet for the HTML output of Docutils. */ .first { margin-top: 0 } .last { margin-bottom: 0 } a.toc-backref { text-decoration: none ; color: black } dd { margin-bottom: 0.5em } div.abstract { margin: 2em 5em } div.abstract p.topic-title { font-weight: bold ; text-align: center } div.attention, div.caution, div.danger, div.error, div.hint, div.important, div.note, div.tip, div.warning { margin: 2em ; border: medium outset ; padding: 1em } div.attention p.admonition-title, div.caution p.admonition-title, div.danger p.admonition-title, div.error p.admonition-title, div.warning p.admonition-title { color: red ; font-weight: bold ; font-family: sans-serif } div.hint p.admonition-title, div.important p.admonition-title, div.note p.admonition-title, div.tip p.admonition-title { font-weight: bold ; font-family: sans-serif } div.dedication { margin: 2em 5em ; text-align: center ; font-style: italic } div.dedication p.topic-title { font-weight: bold ; font-style: normal } div.figure { margin-left: 2em } div.footer, div.header { font-size: smaller } div.system-messages { margin: 5em } div.system-messages h1 { color: red } div.system-message { border: medium outset ; padding: 1em } div.system-message p.system-message-title { color: red ; font-weight: bold } div.topic { margin: 2em } h1.title { text-align: center } h2.subtitle { text-align: center } hr { width: 75% } ol.simple, ul.simple { margin-bottom: 1em } ol.arabic { list-style: decimal } ol.loweralpha { list-style: lower-alpha } ol.upperalpha { list-style: upper-alpha } ol.lowerroman { list-style: lower-roman } ol.upperroman { list-style: upper-roman } p.caption { font-style: italic } p.credits { font-style: italic ; font-size: smaller } p.label { white-space: nowrap } p.topic-title { font-weight: bold } pre.address { margin-bottom: 0 ; margin-top: 0 ; font-family: serif ; font-size: 100% } pre.line-block { font-family: serif ; font-size: 100% } pre.literal-block, pre.doctest-block { margin-left: 2em ; margin-right: 2em ; background-color: #eeeeee } span.classifier { font-family: sans-serif ; font-style: oblique } span.classifier-delimiter { font-family: sans-serif ; font-weight: bold } span.interpreted { font-family: sans-serif } span.option { white-space: nowrap } span.option-argument { font-style: italic } span.pre { white-space: pre } span.problematic { color: red } table { margin-top: 0.5em ; margin-bottom: 0.5em } table.citation { border-left: solid thin gray ; padding-left: 0.5ex } table.docinfo { margin: 2em 4em } table.footnote { border-left: solid thin black ; padding-left: 0.5ex } td, th { padding-left: 0.5em ; padding-right: 0.5em ; vertical-align: top } th.docinfo-name, th.field-name { font-weight: bold ; text-align: left ; white-space: nowrap } h1 tt, h2 tt, h3 tt, h4 tt, h5 tt, h6 tt { font-size: 100% } tt { background-color: #eeeeee } ul.auto-toc { list-style-type: none } div.topic.contents { margin: inherit; } h1.title, h2.subtitle { text-decoration: none; } h1.title { font-size: xx-large; } h2.subtitle { font-size: large; } h1, div.contents p.topic-title { font-size: x-large; } h2 { font-size: large; } h3, h4, h5, h6 { font-size: normal; } h1, h2, h3, h4, div.contents p.topic-title { text-decoration: underline; } |
From: <da...@us...> - 2003-02-13 23:05:12
|
Update of /cvsroot/pyxine/pyxine/doc In directory sc8-pr-cvs1:/tmp/cvs-serv23461/doc Log Message: Directory /cvsroot/pyxine/pyxine/doc added to the repository |
From: <da...@us...> - 2003-02-13 19:51:31
|
Update of /cvsroot/pyxine/pyxine/pyxine In directory sc8-pr-cvs1:/tmp/cvs-serv15179/pyxine Modified Files: Makefile __init__.py Added Files: player.py Log Message: Abstract some higher-level playing functionality into new class pyxine.player.Player. --- NEW FILE: player.py --- # $Id: player.py,v 1.1 2003/02/13 19:51:27 dairiki Exp $ # # Copyright (C) 2003 Geoffrey T. Dairiki <da...@da...> # # This file is part of Pyxine, Python bindings for xine. # # Pyxine is free software; you can redistribute it and/or # modify it under the terms of the GNU General Public License # as published by the Free Software Foundation; either version 2 # of the License, or (at your option) any later version. # # Pyxine is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. """Generic higher-level multimedia player support """ # FIXME: include a log in the distribution LOGO = "/usr/share/xine/skins/xine-ui_logo.mpv" class Player: """Mixin which adds higher level player control methods. """ __stream = None __listener = None __logo = LOGO __mrl = None def __init__(self, stream=None, logo=LOGO): self.__logo = logo if (stream): self.set_stream(stream) def set_stream(self, stream): self.__stream = stream if stream: self.__listener = stream.new_event_listener(self.__xine_event_cb) self.stop() else: self.__listener = None def __xine_event_cb(self, event): if event.type == "FRAME_FORMAT_CHANGE": # FIXME:? self.frame_format_change(event.data) elif event.type == "UI_PLAYBACK_FINISHED": self.stop() def frame_format_change(self, event_data): pass def play(self, mrl): stream = self.__stream stream.close() stream.open(mrl) self.__mrl = mrl if stream.has_video: # disconnect any audio visualization post plugin stream.audio_source.wire(stream.ao) else: self.__visualize_audio("goom") stream.play() def __visualize_audio(self, post_name="goom"): stream = self.__stream from pyxine import post goom = post.Post(stream, post_name, audio_target=stream.ao, video_target=stream.vo) stream.audio_source.wire(goom.inputs["audio in"]) def stop(self): stream = self.__stream if self.__mrl != self.__logo: self.play(self.__logo) def pause(self, do_pause="TOGGLE"): stream = self.__stream if do_pause == "TOGGLE": do_pause = stream.speed != "PAUSE" stream.speed = do_pause and "PAUSE" or "NORMAL"; # FIXME: % or secs def seek(self, pos): stream = self.__stream stream.stop() stream.play(pos) # FIXME: % or secs? def seekrel(self, secs): stream = self.__stream pos = stream.get_pos_length()[1] stream.stop() stream.play(start_time = pos + secs) Index: Makefile =================================================================== RCS file: /cvsroot/pyxine/pyxine/pyxine/Makefile,v retrieving revision 1.2 retrieving revision 1.3 diff -u -d -r1.2 -r1.3 --- Makefile 8 Feb 2003 00:51:45 -0000 1.2 +++ Makefile 13 Feb 2003 19:51:27 -0000 1.3 @@ -24,7 +24,7 @@ PYSOURCE = config.py constants.py constwrap.py cstruct.py PYSOURCE += event.py __init__.py osd.py post.py -PYSOURCE += weakmethod.py x11.py xine.py +PYSOURCE += weakmethod.py x11.py xine.py player.py GEN_FILES = libxine_wrap.c pxlib.py DIST_FILES= Makefile libxine.i fixed_xine.h orig_xine.h Index: __init__.py =================================================================== RCS file: /cvsroot/pyxine/pyxine/pyxine/__init__.py,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -u -d -r1.1.1.1 -r1.2 --- __init__.py 8 Feb 2003 00:42:20 -0000 1.1.1.1 +++ __init__.py 13 Feb 2003 19:51:27 -0000 1.2 @@ -18,7 +18,9 @@ # along with this program; if not, write to the Free Software # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. -__all__ = [ 'constants', 'xine', 'x11', 'stream' ] +__all__ = [ 'constants', 'xine', 'x11', + 'osd', 'post', 'player', 'weakmethod' ] + class Error(Exception): """Base exception class for exceptions raised by pyxine. |
From: <da...@us...> - 2003-02-13 19:51:30
|
Update of /cvsroot/pyxine/pyxine/examples In directory sc8-pr-cvs1:/tmp/cvs-serv15179/examples Modified Files: player.py tkplayer.py Log Message: Abstract some higher-level playing functionality into new class pyxine.player.Player. Index: player.py =================================================================== RCS file: /cvsroot/pyxine/pyxine/examples/player.py,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -u -d -r1.1.1.1 -r1.2 --- player.py 8 Feb 2003 00:42:18 -0000 1.1.1.1 +++ player.py 13 Feb 2003 19:51:27 -0000 1.2 @@ -27,6 +27,7 @@ from Xlib import X, Xutil, threaded, display, XK import pyxine +import pyxine.player import sys, os, os.path @@ -86,47 +87,15 @@ self.xine_visual = pyxine.XlibDrawable(self.window) -class Player: +class Player(pyxine.player.Player): def __init__(self, window): xine = pyxine.Xine(cfg_filename=XINECFG) ao = xine.open_audio_driver() vo = xine.open_video_driver(data=window.xine_visual) #vo = xine.open_video_driver("xv", visual="X11", data=vis) stream = xine.stream_new(ao, vo) - self.stream = stream - self.play(LOGO) + self.set_stream(stream) - def play(self, mrl, pos=0, time=0): - stream = self.stream - stream.open(mrl) - if stream.has_video: - self.degoomify() - else: - self.goomify() - stream.play(pos, time) - - def stop(self): - self.stream.stop() - - def pause(self): - stream = self.stream - if stream.speed == "NORMAL": - stream.speed = "PAUSE" - else: - stream.speed = "NORMAL" - - def degoomify(self): - stream = self.stream - stream.audio_source.wire(stream.ao) - - def goomify(self): - stream = self.stream - from pyxine import post - goom = post.Post(stream, "goom", - audio_target=stream.ao, - video_target=stream.vo) - stream.audio_source.wire(goom.inputs["audio in"]) - class Quit(Exception): pass @@ -185,7 +154,8 @@ raise Quit def play(self): - self.player.play(self.playlist[0]) + if self.playlist: + self.player.play(self.playlist[0]) def stop(self): self.player.stop() @@ -194,18 +164,20 @@ self.player.pause() def play_next(self): - self.playlist.append(self.playlist.pop(0)) - self.play() + if self.playlist: + self.playlist.append(self.playlist.pop(0)) + self.play() def play_prev(self): - self.playlist.insert(0, self.playlist.pop()) - self.play() + if self.playlist: + self.playlist.insert(0, self.playlist.pop()) + self.play() def handle_ClientMessage(self, e): if e.client_type == window.WM_PROTOCOLS: fmt, data = e.data - if fmt == 32 and data[0] == window.WM_DELETE_WINDOW: - raise Quit + if fmt == 32 and data[0] == window.WM_DELETE_WINDOW: + raise Quit if __name__ == '__main__': Index: tkplayer.py =================================================================== RCS file: /cvsroot/pyxine/pyxine/examples/tkplayer.py,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -u -d -r1.1.1.1 -r1.2 --- tkplayer.py 8 Feb 2003 00:42:18 -0000 1.1.1.1 +++ tkplayer.py 13 Feb 2003 19:51:27 -0000 1.2 @@ -21,13 +21,11 @@ # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. from Tkinter import * -import pyxine -from pyxine import constwrap +import pyxine, pyxine.player import os, os.path XINECFG = os.path.join(os.environ['HOME'], '.xine/config2') -LOGO = "/usr/share/xine/skins/xine-ui_logo.mpv" # Callbacks from pyxine happen asynchronously. # Tkinter doesn't seem to be thread-safe. @@ -84,10 +82,10 @@ lock = theTkMutex() return pyxine.TkWidget.frame_output_cb(self, *args) -class Player(Frame): +class Player(Frame, pyxine.player.Player): def __init__(self, master=None): Frame.__init__(self, master, bg='gray10', width=100, height=100) - + self.stream = None vidwin = Frame(self, bg='') @@ -103,26 +101,16 @@ return xine = pyxine.Xine(cfg_filename=XINECFG) visual = X11Visual(self.vidwin) + self.visual = visual vo = xine.open_video_driver("xv", data=visual) stream = xine.stream_new(vo=vo) - self.listener = stream.new_event_listener(self.xine_event_cb) - self.stream = stream - self.visual = visual - self.play(LOGO) - + self.set_stream(stream) + print "STREAM OPEN" + def close_stream(self): self.listener = None - self.stream = None self.visual = None - - def xine_event_cb(self, event): - if event.type == "FRAME_FORMAT_CHANGE": - self.frame_format_change(event.data) - elif event.type == "UI_PLAYBACK_FINISHED": - print "PLAYBACK DONE" - self.stop() - else: - print "Unhandled event", event + self.set_stream(None) def frame_format_change(self, format): video_geometry = format.get_video_geometry() @@ -142,55 +130,6 @@ top.geometry("%dx%d" % (fwidth, fheight)) print "FRAME SIZE CHANGE", (width, height), (fwidth, fheight) - def play(self, mrl): - stream = self.stream - stream.close() - print "OPEN" - stream.open(mrl) - self.current_mrl = mrl - if stream.has_video: - self.degoomify() - else: - self.goomify() - print "PLAY" - stream.play() - - def stop(self): - stream = self.stream - if self.current_mrl != LOGO: - self.play(LOGO) - else: - self.stream.close() - - def pause(self): - stream = self.stream - if stream.speed == "NORMAL": - stream.speed = "PAUSE" - else: - stream.speed = "NORMAL" - - def seek(self, pos): - stream = self.stream - stream.stop() - stream.play(pos) - - def seekrel(self, secs): - stream = self.stream - pos = stream.get_pos_length()[1] - stream.stop() - stream.play(start_time = pos + secs) - - def degoomify(self): - stream = self.stream - stream.audio_source.wire(stream.ao) - - def goomify(self): - stream = self.stream - from pyxine import post - goom = post.Post(stream, "goom", - audio_target=stream.ao, - video_target=stream.vo) - stream.audio_source.wire(goom.inputs["audio in"]) class Main(Tk): def __init__(self): |
From: <da...@us...> - 2003-02-13 19:51:30
|
Update of /cvsroot/pyxine/pyxine In directory sc8-pr-cvs1:/tmp/cvs-serv15179 Modified Files: ChangeLog Log Message: Abstract some higher-level playing functionality into new class pyxine.player.Player. Index: ChangeLog =================================================================== RCS file: /cvsroot/pyxine/pyxine/ChangeLog,v retrieving revision 1.7 retrieving revision 1.8 diff -u -d -r1.7 -r1.8 --- ChangeLog 13 Feb 2003 05:53:21 -0000 1.7 +++ ChangeLog 13 Feb 2003 19:51:27 -0000 1.8 @@ -1,3 +1,14 @@ +2003-02-13 Geoffrey T. Dairiki <da...@da...> + + Abstract some of the higher-level player functionality + into pyxine.player.Player. + + * pyxine/player.py: New file. + * pyxine/__init__.py: Update __all__ + * pyxine/Makefile(PYSOURCE): Add pyxine/player.py + * examples/player.py(Player): Use pyxine.player.Player. + * examples/tkplayer.py(Player): Use pyxine.player.Player. + 2003-02-12 Geoffrey T. Dairiki <da...@da...> * README (README): Convert to reStructuredMarkup formatting. @@ -5,10 +16,10 @@ 2003-02-12 Geoffrey T. Dairiki <da...@da...> - ================= - Release 0.1alpha2 - ================= - + ================== + Release 0.1alpha2. + ================== + * Makefile: Increment PYXINE_VERSION * README: Instructions for playing an audio file were wrong. |
From: <da...@us...> - 2003-02-13 05:53:23
|
Update of /cvsroot/pyxine/pyxine In directory sc8-pr-cvs1:/tmp/cvs-serv24415 Modified Files: ChangeLog README Log Message: Convert to reStructuredMarkup formatting. Added some text. (README is now on the pyxine web site.) Index: ChangeLog =================================================================== RCS file: /cvsroot/pyxine/pyxine/ChangeLog,v retrieving revision 1.6 retrieving revision 1.7 diff -u -d -r1.6 -r1.7 --- ChangeLog 12 Feb 2003 21:03:17 -0000 1.6 +++ ChangeLog 13 Feb 2003 05:53:21 -0000 1.7 @@ -1,5 +1,14 @@ 2003-02-12 Geoffrey T. Dairiki <da...@da...> + * README (README): Convert to reStructuredMarkup formatting. + Added some text. (README is now on the pyxine web site.) + +2003-02-12 Geoffrey T. Dairiki <da...@da...> + + ================= + Release 0.1alpha2 + ================= + * Makefile: Increment PYXINE_VERSION * README: Instructions for playing an audio file were wrong. Index: README =================================================================== RCS file: /cvsroot/pyxine/pyxine/README,v retrieving revision 1.3 retrieving revision 1.4 diff -u -d -r1.3 -r1.4 --- README 12 Feb 2003 19:03:28 -0000 1.3 +++ README 13 Feb 2003 05:53:21 -0000 1.4 @@ -1,66 +1,144 @@ -OVERVIEW +============== +README: Pyxine +============== - Pyxine is a Python package which provides Python bindings for - libxine, the backend of the xine media player (see http://xinehq.de/). +.. + :Author: Geoffrey T. Dairiki + :Contact: da...@us... + :Date: $Date$ + :Web Site: http://pyxine.sourceforge.net/ - Using Pyxine, it is possible to write simple (or complex) - user-interfaces to xine. This makes it much easier for one to - write custom xine UIs. +.. contents:: Table of Contents - For the latest news and updates, make sure to check the Pyxine - web page: http://pyxine.sourceforge.net/ -REQUIREMENTS +Overview +======== - To build and install this package, you'll need: +Pyxine is a `Python`_ package which provides Python bindings for +`libxine`_, the backend of the `xine media player`_. +Using Pyxine, it is possible to write simple (or complex) +user-interfaces to xine. This makes it much easier for one to +write custom xine UIs. - - Python 2.2 or better - - Modern GNU gcc/g++ - - xine-lib-1-beta4 (or better) +Pyxine is very much a work-in-progress. It seems to work for me +(but consider yourself lucky if you can get it to work without a hitch.) +The API is subject to change without notice. - If you want to hack the source, you'll also probably need: +For the latest news and updates, make sure to check the +`Pyxine web page`_. - - SWIG (I'm using version 1.1) - - GNU make -INSTALLATION +Requirements +============ - Installation (hopefully) is as simple as: +To build and install this package, you'll need: - python setup.py install +- Python 2.2 or better. (2.1 might work?) +- Modern GNU gcc/g++ +- xine-lib-1-beta4 (or better) - See http://www.python.org/doc/current/inst/ for more details. +If you want to hack the source, you'll also probably need: -USAGE +- SWIG (I'm using version 1.1) +- GNU make - Playing an audio file can be as simple as: +Installation +============ - >>> import pyxine - >>> xine = pyxine.Xine() - >>> stream = xine.stream_new() - >>> stream.open("music.mp3") - >>> stream.play() +Installation (hopefully) is as simple as:: - To play a movie, it will probably take a little more work in order to - properly initialize the video output driver. For now, have a look at - ``tkplayer.py`` and ``player.py`` in the ``examples`` subdirectory. + python setup.py install + +See also: `Installing Python Modules`_. + + +Usage +===== + +Playing an audio file can be as simple as: + +>>> import pyxine +>>> xine = pyxine.Xine() +>>> stream = xine.stream_new() +>>> stream.open("music.mp3") +>>> stream.play() + +To play a movie, it will probably take a little more work in order to +properly initialize the video output driver. For now, have a look at +``tkplayer.py`` and ``player.py`` in the ``examples`` subdirectory. - E.g., if you have the Tkinter package installed:: +E.g., if you have the `Tkinter` package installed:: - # python tkplayer.py some_movie.avi + # python tkplayer.py some_movie.avi - might actually play a movie for you. (Hit 'p' to start playback.) +might actually play a movie for you. (Hit ``p`` to start playback.) - FIXME +**FIXME**: need more here -ROADMAP +Bugs & Questions +================ + +Feel free to ask questions and make bug reports. You may e-mail `me`_ +directly, or better yet, (especially if your question is one others +might be interested in) post it to the `pyxine-devel`_ mailing list, +<mailto:pyx...@li...>. + +Roadmap +======= + +Here's the beginnings of an outline to the internals of Pyxine. - pyxine.libxine +pyxine.libxine +-------------- - This module is a raw interface to libxine which is more-or-less automatically - generated by SWIG. (See http://www.swig.org/) +This module is a raw interface to libxine which is more-or-less +automatically generated by `SWIG`_. - You should probably not use this module directly, as the rest of the pyxine - package provides a friendlier object-oriented wrapper over the the functions - in this module. +You should probably not use this module directly, as the rest of the +pyxine package provides a friendlier object-oriented wrapper over +the the functions in this module. + +pyxine.pxlib, pyxine.pxlibc +--------------------------- + +This is some support code written in C++, along with its `SWIG`_ +generated wrappers. It handles some of the dirty details associated +with running a `xine`_ in an X11 window. + +The code in pxlib catches ``ShmCompletion`` and ``Exposure`` events +and passes them on to `xine`_. It also provides some glue for the +callbacks ``frame_output_cb`` and ``dest_size_cb``, as well as providing +for the caching of return values from those callback. + +**FIXME**: need more here + +the rest +-------- + +The rest of the code in the package is a higher-level, object-oriented +wrapper over the interface presented by ``libxine``. + +**FIXME**: need more here + +.. References + ========== + +.. _xine: http://xinehq.de/ +.. _libxine: xine_ +.. _xine media player: xine_ +.. _Pyxine web page: http://pyxine.sourceforge.net/ +.. _Python: http://www.python.org/ +.. _Installing Python Modules: http://www.python.org/doc/current/inst/ +.. _SWIG: http://www.swig.org/ +.. _me: mailto:da...@us... +.. _pyxine-devel: http://lists.sourceforge.net/lists/listinfo/pyxine-devel + + +.. + Local Variables: + mode: indented-text + indent-tabs-mode: nil + sentence-end-double-space: t + fill-column: 70 + End: |
From: <da...@us...> - 2003-02-13 04:35:15
|
Update of /cvsroot/pyxine/htdocs/src In directory sc8-pr-cvs1:/tmp/cvs-serv976/src Added Files: .htaccess README.html Log Message: Added README. --- NEW FILE: .htaccess --- Order deny,allow Deny from all --- NEW FILE: README.html --- <?xml version="1.0" encoding="utf-8" ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <meta name="generator" content="Docutils 0.2.8: http://docutils.sourceforge.net/" /> <title>README: Pyxine</title> <link rel="stylesheet" href="default.css" type="text/css" /> </head> <body> <div class="document" id="readme-pyxine"> <h1 class="title">README: Pyxine</h1> <!-- :Author: Geoffrey T. Dairiki :Contact: da...@us... :Date: $Date: 2003/02/13 04:35:12 $ :Web Site: http://pyxine.sourceforge.net/ --> <div class="contents topic" id="table-of-contents"> <p class="topic-title"><a name="table-of-contents">Table of Contents</a></p> <ul class="simple"> <li><a class="reference" href="#overview" id="id1" name="id1">Overview</a></li> <li><a class="reference" href="#requirements" id="id2" name="id2">Requirements</a></li> <li><a class="reference" href="#installation" id="id3" name="id3">Installation</a></li> <li><a class="reference" href="#usage" id="id4" name="id4">Usage</a></li> <li><a class="reference" href="#bugs-questions" id="id5" name="id5">Bugs & Questions</a></li> <li><a class="reference" href="#roadmap" id="id6" name="id6">Roadmap</a><ul> <li><a class="reference" href="#pyxine-libxine" id="id7" name="id7">pyxine.libxine</a></li> <li><a class="reference" href="#pyxine-pxlib-pyxine-pxlibc" id="id8" name="id8">pyxine.pxlib, pyxine.pxlibc</a></li> <li><a class="reference" href="#the-rest" id="id9" name="id9">the rest</a></li> </ul> </li> </ul> </div> <div class="section" id="overview"> <h1><a class="toc-backref" href="#id1" name="overview">Overview</a></h1> <p>Pyxine is a <a class="reference" href="http://www.python.org/">Python</a> package which provides Python bindings for <a class="reference" href="http://xinehq.de/">libxine</a>, the backend of the <a class="reference" href="http://xinehq.de/">xine media player</a>. Using Pyxine, it is possible to write simple (or complex) user-interfaces to xine. This makes it much easier for one to write custom xine UIs.</p> <p>Pyxine is very much a work-in-progress. It seems to work for me (but consider yourself lucky if you can get it to work without a hitch.) The API is subject to change without notice.</p> <p>For the latest news and updates, make sure to check the <a class="reference" href="http://pyxine.sourceforge.net/">Pyxine web page</a>.</p> </div> <div class="section" id="requirements"> <h1><a class="toc-backref" href="#id2" name="requirements">Requirements</a></h1> <p>To build and install this package, you'll need:</p> <ul class="simple"> <li>Python 2.2 or better. (2.1 might work?)</li> <li>Modern GNU gcc/g++</li> <li>xine-lib-1-beta4 (or better)</li> </ul> <p>If you want to hack the source, you'll also probably need:</p> <ul class="simple"> <li>SWIG (I'm using version 1.1)</li> <li>GNU make</li> </ul> </div> <div class="section" id="installation"> <h1><a class="toc-backref" href="#id3" name="installation">Installation</a></h1> <p>Installation (hopefully) is as simple as:</p> <pre class="literal-block"> python setup.py install </pre> <p>See also: <a class="reference" href="http://www.python.org/doc/current/inst/">Installing Python Modules</a>.</p> </div> <div class="section" id="usage"> <h1><a class="toc-backref" href="#id4" name="usage">Usage</a></h1> <p>Playing an audio file can be as simple as:</p> <pre class="doctest-block"> >>> import pyxine >>> xine = pyxine.Xine() >>> stream = xine.stream_new() >>> stream.open("music.mp3") >>> stream.play() </pre> <p>To play a movie, it will probably take a little more work in order to properly initialize the video output driver. For now, have a look at <tt class="literal"><span class="pre">tkplayer.py</span></tt> and <tt class="literal"><span class="pre">player.py</span></tt> in the <tt class="literal"><span class="pre">examples</span></tt> subdirectory.</p> <p>E.g., if you have the <cite>Tkinter</cite> package installed:</p> <pre class="literal-block"> # python tkplayer.py some_movie.avi </pre> <p>might actually play a movie for you. (Hit <tt class="literal"><span class="pre">p</span></tt> to start playback.)</p> <p><strong>FIXME</strong>: need more here</p> </div> <div class="section" id="bugs-questions"> <h1><a class="toc-backref" href="#id5" name="bugs-questions">Bugs & Questions</a></h1> <p>Feel free to ask questions and make bug reports. You may e-mail <a class="reference" href="mailto:dairiki@users.sourceforge.net">me</a> directly, or better yet, (especially if your question is one others might be interested in) post it to the <a class="reference" href="http://lists.sourceforge.net/lists/listinfo/pyxine-devel">pyxine-devel</a> mailing list, <<a class="reference" href="mailto:pyxine-devel@lists.sourceforge.net">mailto:pyxine-devel@lists.sourceforge.net</a>>.</p> </div> <div class="section" id="roadmap"> <h1><a class="toc-backref" href="#id6" name="roadmap">Roadmap</a></h1> <p>Here's the beginnings of an outline to the internals of Pyxine.</p> <div class="section" id="pyxine-libxine"> <h2><a class="toc-backref" href="#id7" name="pyxine-libxine">pyxine.libxine</a></h2> <p>This module is a raw interface to libxine which is more-or-less automatically generated by <a class="reference" href="http://www.swig.org/">SWIG</a>.</p> <p>You should probably not use this module directly, as the rest of the pyxine package provides a friendlier object-oriented wrapper over the the functions in this module.</p> </div> <div class="section" id="pyxine-pxlib-pyxine-pxlibc"> <h2><a class="toc-backref" href="#id8" name="pyxine-pxlib-pyxine-pxlibc">pyxine.pxlib, pyxine.pxlibc</a></h2> <p>This is some support code written in C++, along with its <a class="reference" href="http://www.swig.org/">SWIG</a> generated wrappers. It handles some of the dirty details associated with running a <a class="reference" href="http://xinehq.de/">xine</a> in an X11 window.</p> <p>The code in pxlib catches <tt class="literal"><span class="pre">ShmCompletion</span></tt> and <tt class="literal"><span class="pre">Exposure</span></tt> events and passes them on to <a class="reference" href="http://xinehq.de/">xine</a>. It also provides some glue for the callbacks <tt class="literal"><span class="pre">frame_output_cb</span></tt> and <tt class="literal"><span class="pre">dest_size_cb</span></tt>, as well as providing for the caching of return values from those callback.</p> <p><strong>FIXME</strong>: need more here</p> </div> <div class="section" id="the-rest"> <h2><a class="toc-backref" href="#id9" name="the-rest">the rest</a></h2> <p>The rest of the code in the package is a higher-level, object-oriented wrapper over the interface presented by <tt class="literal"><span class="pre">libxine</span></tt>.</p> <p><strong>FIXME</strong>: need more here</p> <!-- References ========== --> <!-- Local Variables: mode: indented-text indent-tabs-mode: nil sentence-end-double-space: t fill-column: 70 End: --> </div> </div> </div> </body> </html> |
From: <da...@us...> - 2003-02-13 04:35:15
|
Update of /cvsroot/pyxine/htdocs/pyxine In directory sc8-pr-cvs1:/tmp/cvs-serv976/pyxine Modified Files: index.tmpl pyxine.inc pyxine.tmpl Log Message: Added README. Index: index.tmpl =================================================================== RCS file: /cvsroot/pyxine/htdocs/pyxine/index.tmpl,v retrieving revision 1.4 retrieving revision 1.5 diff -u -d -r1.4 -r1.5 --- index.tmpl 10 Feb 2003 18:55:44 -0000 1.4 +++ index.tmpl 13 Feb 2003 04:35:12 -0000 1.5 @@ -1,48 +1,58 @@ <hr class="hide" /> <?php -function index_head($head) { - static $first = true; - if (!$first) { - ?><span class="hide"> </span><?php +class Index { + function Index($selected) { + $this->_selected = $selected; + $this->_section_sep = ""; } - $first = false; - ?><strong class="h2"><?=htmlspecialchars($head)?><span class="hide">:</span></strong> - <?php -} -function index_entry($text, $url, $title=false) { - ?><a href="<?=htmlspecialchars($url)?>"<?php - if ($text == $GLOBAL['SELECTED']) { - ?> id="selected"<?php + function head($head) { + echo $this->_section_sep; + $this->_section_sep = '<span class="hide"> </span>'; + ?><strong class="h2"><?=htmlspecialchars($head)?><span class="hide">:</span></strong> + <?php + } + + function entry($text, $url, $title=false) { + ?><a href="<?=htmlspecialchars($url)?>"<?php + if ($text == $this->_selected) { + ?> class="selected"<?php + } + if (!$title) { + $title = $text; + } + ?> title="<?=htmlspecialchars($title)?>"><?=htmlspecialchars($text)?></a> + <?php } - if (!$title) - $title = $text; - ?> title="<?=htmlspecialchars($title)?>"><?=htmlspecialchars($text)?></a> - <?php } -index_head('Pages'); -index_entry('Home', - "http://pyxine.sourceforge.net/", - "The Pyxine Home Page"); -index_head('SourceForge'); -index_entry("Project Info", - "http://sourceforge.net/projects/pyxine", - "SourceForge project info for Pyxine"); -index_entry("Downloads", - "http://sourceforge.net/project/showfiles.php?group_id=73236"); -index_entry("CVS", - "http://sourceforge.net/cvs/?group_id=73236", - "CVS Repository"); +$i = new Index($SELECTED); +$i->head('Pages'); +$i->entry('Home', + "http://pyxine.sourceforge.net/", + "The Pyxine Home Page"); +$i->entry('README', + "http://pyxine.sourceforge.net/readme.html", + "The README from the latest Pyxine distribution"); -index_head('Links'); -index_entry("xine", - "http://xinehq.de", - "The xine home page"); -index_entry("freshmeat", - "http://freshmeat.net/projects/pyxine", - "The freshmeat listing for Pyxine"); +$i->head('SourceForge'); +$i->entry("Project Info", + "http://sourceforge.net/projects/pyxine", + "SourceForge project info for Pyxine"); +$i->entry("Downloads", + "http://sourceforge.net/project/showfiles.php?group_id=73236"); +$i->entry("CVS", + "http://sourceforge.net/cvs/?group_id=73236", + "CVS Repository"); + +$i->head('Links'); +$i->entry("xine", + "http://xinehq.de", + "The xine home page"); +$i->entry("freshmeat", + "http://freshmeat.net/projects/pyxine", + "The freshmeat listing for Pyxine"); ?> <hr class="hide" /> Index: pyxine.inc =================================================================== RCS file: /cvsroot/pyxine/htdocs/pyxine/pyxine.inc,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 --- pyxine.inc 8 Feb 2003 05:57:45 -0000 1.1 +++ pyxine.inc 13 Feb 2003 04:35:12 -0000 1.2 @@ -19,4 +19,32 @@ } } +function docutils_output($filename) +{ + $fp = fopen($filename, "r"); + + while ($line = fgets($fp, 2048)) { + if ($line == "<body>\n") + break; + } + + while ($line = fgets($fp, 2048)) { + if ($line == "</body>\n") + break; + + /* + $line = str_replace('<div class="contents topic" id="table-of-contents">', + '<div class="contents topic">', + $line); + + $line = str_replace('<a name="table-of-contents">', + '<a id="table-of-contents">', + $line); + */ + print $line; + } + + fclose ($fp); +} + ?> Index: pyxine.tmpl =================================================================== RCS file: /cvsroot/pyxine/htdocs/pyxine/pyxine.tmpl,v retrieving revision 1.2 retrieving revision 1.3 diff -u -d -r1.2 -r1.3 --- pyxine.tmpl 8 Feb 2003 19:12:02 -0000 1.2 +++ pyxine.tmpl 13 Feb 2003 04:35:12 -0000 1.3 @@ -1,6 +1,7 @@ <?php echo "<?xml version='1.0' encoding='ISO-8859-1'?>\n"; ?> -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" - "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> +<!DOCTYPE html + PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" + "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title>Pyxine - <?=$TITLE?></title> @@ -12,7 +13,7 @@ </head> <body> -<h1>Pyxine - Python bindings for xine</h1> +<h1 class="title">Pyxine - Python bindings for xine</h1> <div id="body"> <div id="index"><?=$INDEX?></div> <div id="main"><?=$BODY?></div> @@ -26,8 +27,8 @@ src="http://jigsaw.w3.org/css-validator/images/vcss" alt="Valid CSS!" class="logo" /></a> <a href="http://validator.w3.org/check/referer"><img - src="http://www.w3.org/Icons/valid-xhtml11" - alt="Valid XHTML 1.1!" class="logo" /></a> + src="http://www.w3.org/Icons/valid-xhtml10" + alt="Valid XHTML 1.0!" class="logo" /></a> </div> </body> </html> |
From: <da...@us...> - 2003-02-13 04:35:14
|
Update of /cvsroot/pyxine/htdocs In directory sc8-pr-cvs1:/tmp/cvs-serv976 Modified Files: index.html pyxine.css Added Files: docutils.css readme.html Log Message: Added README. --- NEW FILE: docutils.css --- /* * Modified from docutils/tools/stylesheets/default.css: */ /* :Orig-Author: David Goodger :Orig-Contact: go...@us... :Orig-date: $Date: 2003/02/13 04:35:12 $ :Orig-version: $Revision: 1.1 $ :Orig-copyright: This stylesheet has been placed in the public domain. Default cascading style sheet for the HTML output of Docutils. */ .document .first { margin-top: 0 } .document .last { margin-bottom: 0 } .document a.toc-backref { text-decoration: none ; color: black } .document dd { margin-bottom: 0.5em } .document div.abstract { margin: 2em 5em } .document div.abstract p.topic-title { font-weight: bold ; text-align: center } .document div.attention, .document div.caution, .document div.danger, .document div.error, .document div.hint, .document div.important, .document div.note, .document div.tip, .document div.warning { margin: 2em ; border: medium outset ; padding: 1em } .document div.attention p.admonition-title, .document div.caution p.admonition-title, .document div.danger p.admonition-title, .document div.error p.admonition-title, .document div.warning p.admonition-title { color: red ; font-weight: bold ; font-family: sans-serif } .document div.hint p.admonition-title, .document div.important p.admonition-title, .document div.note p.admonition-title, .document div.tip p.admonition-title { font-weight: bold ; font-family: sans-serif } .document div.dedication { margin: 2em 5em ; text-align: center ; font-style: italic } .document div.dedication p.topic-title { font-weight: bold ; font-style: normal } .document div.figure { margin-left: 2em } .document div.footer, .document div.header { font-size: smaller } .document div.system-messages { margin: 5em } .document div.system-messages h1 { color: red } .document div.system-message { border: medium outset ; padding: 1em } .document div.system-message p.system-message-title { color: red ; font-weight: bold } .document div.topic { margin: 2em } .document h1.title { text-align: center } .document h2.subtitle { text-align: center } .document hr { width: 75% } .document ol.simple, .document ul.simple { margin-bottom: 1em } .document ol.arabic { list-style: decimal } .document ol.loweralpha { list-style: lower-alpha } .document ol.upperalpha { list-style: upper-alpha } .document ol.lowerroman { list-style: lower-roman } .document ol.upperroman { list-style: upper-roman } .document p.caption { font-style: italic } .document p.credits { font-style: italic ; font-size: smaller } .document p.label { white-space: nowrap } .document p.topic-title { font-weight: bold } .document pre.address { margin-bottom: 0 ; margin-top: 0 ; font-family: serif ; font-size: 100% } .document pre.line-block { font-family: serif ; font-size: 100% } .document pre.literal-block, .document pre.doctest-block { margin-left: 2em ; margin-right: 2em ; background-color: #eeeeee } .document span.classifier { font-family: sans-serif ; font-style: oblique } .document span.classifier-delimiter { font-family: sans-serif ; font-weight: bold } .document span.interpreted { font-family: sans-serif } .document span.option { white-space: nowrap } .document span.option-argument { font-style: italic } .document span.pre { white-space: pre } .document span.problematic { color: red } .document table { margin-top: 0.5em ; margin-bottom: 0.5em } .document table.citation { border-left: solid thin gray ; padding-left: 0.5ex } .document table.docinfo { margin: 2em 4em } .document table.footnote { border-left: solid thin black ; padding-left: 0.5ex } .document td, .document th { padding-left: 0.5em ; padding-right: 0.5em ; vertical-align: top } .document th.docinfo-name, .document th.field-name { font-weight: bold ; text-align: left ; white-space: nowrap } .document h1 tt, .document h2 tt, .document h3 tt, .document h4 tt, .document h5 tt, .document h6 tt { font-size: 100% } .document tt { background-color: #eeeeee } .document ul.auto-toc { list-style-type: none } --- NEW FILE: readme.html --- <?php include 'pyxine/pyxine.inc'; $page = new Page('README'); docutils_output('src/README.html'); $page->flush(); ?> Index: index.html =================================================================== RCS file: /cvsroot/pyxine/htdocs/index.html,v retrieving revision 1.5 retrieving revision 1.6 diff -u -d -r1.5 -r1.6 --- index.html 12 Feb 2003 21:41:35 -0000 1.5 +++ index.html 13 Feb 2003 04:35:12 -0000 1.6 @@ -8,15 +8,19 @@ <p>Using Pyxine it is possible to write simple (or complex) movie players in the Python programming language.</p> <hr class="hide" /> -<h2>News</h2> +<h1>News</h1> <div class="newsitem"> -<h3>12 February, 2003</h3> +<h2>12 February, 2003</h2> <p>A stupid-bug fix release (<a href="http://sourceforge.net/project/showfiles.php?group_id=73236">0.1alpha2</a>) is out. This one might just compile for you!</p> + +<p>I've also updated the (still incomplete) <a href="readme.html">README</a> and put it on-line. +(Of course, the updated README didn't make it into 0.1alpha2.)</p> + <hr /> </div> <div class="newsitem"> -<h3>7 February, 2003</h3> +<h2>7 February, 2003</h2> <p><strong>First release!</strong> Get it <a href="http://sourceforge.net/project/showfiles.php?group_id=73236" >here</a>.</p> Index: pyxine.css =================================================================== RCS file: /cvsroot/pyxine/htdocs/pyxine.css,v retrieving revision 1.4 retrieving revision 1.5 diff -u -d -r1.4 -r1.5 --- pyxine.css 12 Feb 2003 21:38:16 -0000 1.4 +++ pyxine.css 13 Feb 2003 04:35:12 -0000 1.5 @@ -1,10 +1,12 @@ +@import url(docutils.css); + body { color: black; background: #cdf; margin: 1ex 1em; font-family: arial, helvetica, sans-serif; } -h1 { +h1.title { color: #821; background: #cdf; } @@ -22,8 +24,8 @@ #index { position: absolute; - top: 0; - left: 0; + top: 0px; + left: 0px; width: 8em; height: 100%; margin: 0; @@ -56,16 +58,37 @@ color: black; background: white; } -#main h2 { + +#main h1, #main h2, #main h3, #main h4, #main h5, #main h6 { color: #821; background: #def; - margin-left: -1em; margin-right: 0; + font-weight: bold; +} +#main h1 { padding: 0.5ex 0.5em; + margin-left: -1em; +} +#main h2, #main h3, #main h4, #main h5, #main h6 { + margin-left: -0.3em; + padding: 0.3ex 0.3em; +} +#main h1 { + font-size: x-large; +} +#main h2 { + font-size: large; +} +#main h3, #main h4, #main h5 { + font-size: medium; } -.newsitem h3 { +#main .newsitem h2 { + color: inherit; + background: transparent; text-decoration: underline; + font-weight: bold; + font-size: medium; } .newsitem hr { width: 85%; @@ -88,4 +111,29 @@ border: 0; width: 88px; height: 31px; +} + + +/* + * Docutils fixups + */ +.document h1.title { + display: none; +} +.document a.toc-backref { + color: inherit; + background-color: inherit; +} +.document div.contents { + margin: 0; +} +.document div.contents p.topic-title { + /* Copy from #body h1 */ + color: #821; + background: #def; + margin-right: 0; + padding: 0.5ex 0.5em; + margin-left: -1em; + font-size: x-large; + font-weight: bold; } |
From: <da...@us...> - 2003-02-13 04:31:36
|
Update of /cvsroot/pyxine/htdocs/src In directory sc8-pr-cvs1:/tmp/cvs-serv32476/src Log Message: Directory /cvsroot/pyxine/htdocs/src added to the repository |
From: <da...@us...> - 2003-02-12 21:41:41
|
Update of /cvsroot/pyxine/htdocs In directory sc8-pr-cvs1:/tmp/cvs-serv32303 Modified Files: index.html Log Message: Spelling fix. Index: index.html =================================================================== RCS file: /cvsroot/pyxine/htdocs/index.html,v retrieving revision 1.4 retrieving revision 1.5 diff -u -d -r1.4 -r1.5 --- index.html 12 Feb 2003 21:38:15 -0000 1.4 +++ index.html 12 Feb 2003 21:41:35 -0000 1.5 @@ -10,13 +10,13 @@ <hr class="hide" /> <h2>News</h2> <div class="newsitem"> -<h3>12 Februrary, 2003</h3> +<h3>12 February, 2003</h3> <p>A stupid-bug fix release (<a href="http://sourceforge.net/project/showfiles.php?group_id=73236">0.1alpha2</a>) is out. This one might just compile for you!</p> <hr /> </div> <div class="newsitem"> -<h3>7 Februrary, 2003</h3> +<h3>7 February, 2003</h3> <p><strong>First release!</strong> Get it <a href="http://sourceforge.net/project/showfiles.php?group_id=73236" >here</a>.</p> |
From: <da...@us...> - 2003-02-12 21:38:21
|
Update of /cvsroot/pyxine/htdocs In directory sc8-pr-cvs1:/tmp/cvs-serv29274 Modified Files: index.html pyxine.css Log Message: Announce release 0.1alpha2 Index: index.html =================================================================== RCS file: /cvsroot/pyxine/htdocs/index.html,v retrieving revision 1.3 retrieving revision 1.4 diff -u -d -r1.3 -r1.4 --- index.html 8 Feb 2003 19:12:01 -0000 1.3 +++ index.html 12 Feb 2003 21:38:15 -0000 1.4 @@ -10,6 +10,12 @@ <hr class="hide" /> <h2>News</h2> <div class="newsitem"> +<h3>12 Februrary, 2003</h3> +<p>A stupid-bug fix release (<a href="http://sourceforge.net/project/showfiles.php?group_id=73236">0.1alpha2</a>) is out. This one might just compile for you!</p> +<hr /> +</div> + +<div class="newsitem"> <h3>7 Februrary, 2003</h3> <p><strong>First release!</strong> Get it <a href="http://sourceforge.net/project/showfiles.php?group_id=73236" Index: pyxine.css =================================================================== RCS file: /cvsroot/pyxine/htdocs/pyxine.css,v retrieving revision 1.3 retrieving revision 1.4 diff -u -d -r1.3 -r1.4 --- pyxine.css 8 Feb 2003 19:12:01 -0000 1.3 +++ pyxine.css 12 Feb 2003 21:38:16 -0000 1.4 @@ -67,6 +67,10 @@ .newsitem h3 { text-decoration: underline; } +.newsitem hr { + width: 85%; + height: 1px; +} p.signature { margin-top: 0; margin-left: 5%; |
From: <da...@us...> - 2003-02-12 21:03:21
|
Update of /cvsroot/pyxine/pyxine In directory sc8-pr-cvs1:/tmp/cvs-serv4482 Modified Files: ChangeLog Makefile Log Message: Increment PYXINE_VERSION to 0.1alpha2 Index: ChangeLog =================================================================== RCS file: /cvsroot/pyxine/pyxine/ChangeLog,v retrieving revision 1.5 retrieving revision 1.6 diff -u -d -r1.5 -r1.6 --- ChangeLog 12 Feb 2003 19:03:27 -0000 1.5 +++ ChangeLog 12 Feb 2003 21:03:17 -0000 1.6 @@ -1,5 +1,7 @@ 2003-02-12 Geoffrey T. Dairiki <da...@da...> + * Makefile: Increment PYXINE_VERSION + * README: Instructions for playing an audio file were wrong. Added some notes about the example players. Index: Makefile =================================================================== RCS file: /cvsroot/pyxine/pyxine/Makefile,v retrieving revision 1.3 retrieving revision 1.4 diff -u -d -r1.3 -r1.4 --- Makefile 8 Feb 2003 01:16:41 -0000 1.3 +++ Makefile 12 Feb 2003 21:03:17 -0000 1.4 @@ -21,7 +21,7 @@ TOP = . # FIXME -PYXINE_VERSION = 0.1alpha1 +PYXINE_VERSION = 0.1alpha2 SUBDIRS = pxlib pyxine test examples GEN_FILES = setup.py MANIFEST |
From: <da...@us...> - 2003-02-12 19:03:31
|
Update of /cvsroot/pyxine/pyxine In directory sc8-pr-cvs1:/tmp/cvs-serv8427 Modified Files: ChangeLog README Log Message: Instructions for playing an audio file were wrong. Added some notes about the example players. Index: ChangeLog =================================================================== RCS file: /cvsroot/pyxine/pyxine/ChangeLog,v retrieving revision 1.4 retrieving revision 1.5 diff -u -d -r1.4 -r1.5 --- ChangeLog 12 Feb 2003 18:06:15 -0000 1.4 +++ ChangeLog 12 Feb 2003 19:03:27 -0000 1.5 @@ -1,5 +1,8 @@ 2003-02-12 Geoffrey T. Dairiki <da...@da...> + * README: Instructions for playing an audio file were wrong. + Added some notes about the example players. + * pxlib/Geometry.cc (to_string): Add namespace to std::ostringstream Index: README =================================================================== RCS file: /cvsroot/pyxine/pyxine/README,v retrieving revision 1.2 retrieving revision 1.3 diff -u -d -r1.2 -r1.3 --- README 8 Feb 2003 04:17:02 -0000 1.2 +++ README 12 Feb 2003 19:03:28 -0000 1.3 @@ -38,12 +38,20 @@ >>> import pyxine >>> xine = pyxine.Xine() >>> stream = xine.stream_new() - >>> stream.play("music.mp3") + >>> stream.open("music.mp3") + >>> stream.play() To play a movie, it will probably take a little more work in order to - properly initialize the video output driver. + properly initialize the video output driver. For now, have a look at + ``tkplayer.py`` and ``player.py`` in the ``examples`` subdirectory. + + E.g., if you have the Tkinter package installed:: - FIXME + # python tkplayer.py some_movie.avi + + might actually play a movie for you. (Hit 'p' to start playback.) + + FIXME ROADMAP |
From: <da...@us...> - 2003-02-12 18:06:51
|
Update of /cvsroot/pyxine/pyxine In directory sc8-pr-cvs1:/tmp/cvs-serv8069 Modified Files: ChangeLog Log Message: A couple more typo/bug fixes. (Thanks to gabor for the reports.) Index: ChangeLog =================================================================== RCS file: /cvsroot/pyxine/pyxine/ChangeLog,v retrieving revision 1.3 retrieving revision 1.4 diff -u -d -r1.3 -r1.4 --- ChangeLog 11 Feb 2003 23:52:11 -0000 1.3 +++ ChangeLog 12 Feb 2003 18:06:15 -0000 1.4 @@ -1,3 +1,11 @@ +2003-02-12 Geoffrey T. Dairiki <da...@da...> + + * pxlib/Geometry.cc (to_string): Add namespace to + std::ostringstream + + * pxlib/XDisplay.cc (select_input): Remove spurious (and wrong) + 'inline' declaration. + 2003-02-11 Geoffrey T. Dairiki <da...@da...> * pxlib/Callback.cc (rep_t, ~rep_t): Remove debugging calls to |
From: <da...@us...> - 2003-02-12 18:06:24
|
Update of /cvsroot/pyxine/pyxine/pxlib In directory sc8-pr-cvs1:/tmp/cvs-serv8069/pxlib Modified Files: Geometry.cc XDisplay.cc Log Message: A couple more typo/bug fixes. (Thanks to gabor for the reports.) Index: Geometry.cc =================================================================== RCS file: /cvsroot/pyxine/pyxine/pxlib/Geometry.cc,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -u -d -r1.1.1.1 -r1.2 --- Geometry.cc 8 Feb 2003 00:42:21 -0000 1.1.1.1 +++ Geometry.cc 12 Feb 2003 18:06:18 -0000 1.2 @@ -82,7 +82,7 @@ std::string Traits<WindowGeometry>::to_string(const WindowGeometry& g) { - ostringstream buf; + std::ostringstream buf; buf << "<" << typeid(g).name() << ": " << g.width << "x" << g.height Index: XDisplay.cc =================================================================== RCS file: /cvsroot/pyxine/pyxine/pxlib/XDisplay.cc,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -u -d -r1.1.1.1 -r1.2 --- XDisplay.cc 8 Feb 2003 00:42:21 -0000 1.1.1.1 +++ XDisplay.cc 12 Feb 2003 18:06:19 -0000 1.2 @@ -160,7 +160,7 @@ return g; } -inline void +void XDisplay::select_input(Window w, long event_mask) { XDisplayLock xlock(display); |
From: <da...@us...> - 2003-02-11 23:52:16
|
Update of /cvsroot/pyxine/pyxine In directory sc8-pr-cvs1:/tmp/cvs-serv11844 Modified Files: ChangeLog Log Message: Remove debugging calls to cerr.form(). Apparently ostream::form() is a GNU extension. Don't use it! Index: ChangeLog =================================================================== RCS file: /cvsroot/pyxine/pyxine/ChangeLog,v retrieving revision 1.2 retrieving revision 1.3 diff -u -d -r1.2 -r1.3 --- ChangeLog 8 Feb 2003 04:17:02 -0000 1.2 +++ ChangeLog 11 Feb 2003 23:52:11 -0000 1.3 @@ -1,3 +1,9 @@ +2003-02-11 Geoffrey T. Dairiki <da...@da...> + + * pxlib/Callback.cc (rep_t, ~rep_t): Remove debugging calls to + cerr.form(). Apparently ostream::form() is a GNU extension. + Don't use it! + 2003-02-07 Geoffrey T. Dairiki <da...@da...> * README: Add xine-lib to requirements |
From: <da...@us...> - 2003-02-11 23:52:16
|
Update of /cvsroot/pyxine/pyxine/pxlib In directory sc8-pr-cvs1:/tmp/cvs-serv11844/pxlib Modified Files: Callback.cc Log Message: Remove debugging calls to cerr.form(). Apparently ostream::form() is a GNU extension. Don't use it! Index: Callback.cc =================================================================== RCS file: /cvsroot/pyxine/pyxine/pxlib/Callback.cc,v retrieving revision 1.1.1.1 retrieving revision 1.2 diff -u -d -r1.1.1.1 -r1.2 --- Callback.cc 8 Feb 2003 00:42:21 -0000 1.1.1.1 +++ Callback.cc 11 Feb 2003 23:52:12 -0000 1.2 @@ -66,13 +66,11 @@ state = PyThreadState_New(PyThreadState_Get()->interp); if (!state) throw Error("PyThreadState_New failed"); - cerr.form("NEW PyThreadState: %p\n", state); PyThreadState_Clear(state); } PythonContext::rep_t::~rep_t() { - cerr.form("DELETE PyThreadState: %p\n", state); PyThreadState_Delete(state); } |
From: <da...@us...> - 2003-02-10 18:55:47
|
Update of /cvsroot/pyxine/htdocs/pyxine In directory sc8-pr-cvs1:/tmp/cvs-serv3490/pyxine Modified Files: index.tmpl Log Message: Add link to xine homepage. Add titles (tool-tips) to the links. Index: index.tmpl =================================================================== RCS file: /cvsroot/pyxine/htdocs/pyxine/index.tmpl,v retrieving revision 1.3 retrieving revision 1.4 diff -u -d -r1.3 -r1.4 --- index.tmpl 10 Feb 2003 17:45:10 -0000 1.3 +++ index.tmpl 10 Feb 2003 18:55:44 -0000 1.4 @@ -1,38 +1,48 @@ <hr class="hide" /> <?php -$INDEX = array('Pages' => - array("Home" => "http://pyxine.sourceforge.net/"), +function index_head($head) { + static $first = true; + if (!$first) { + ?><span class="hide"> </span><?php + } + $first = false; + ?><strong class="h2"><?=htmlspecialchars($head)?><span class="hide">:</span></strong> + <?php +} - 'Links' => - array("SF Project Info" => - "http://sourceforge.net/projects/pyxine", - - "Downloads" => - "http://sourceforge.net/project/showfiles.php?group_id=73236", - - "CVS Repo" => - "http://sourceforge.net/cvs/?group_id=73236", +function index_entry($text, $url, $title=false) { + ?><a href="<?=htmlspecialchars($url)?>"<?php + if ($text == $GLOBAL['SELECTED']) { + ?> id="selected"<?php + } + if (!$title) + $title = $text; + ?> title="<?=htmlspecialchars($title)?>"><?=htmlspecialchars($text)?></a> + <?php +} - "Freshmeat listing" => - "http://freshmeat.net/projects/pyxine", - ) - ); +index_head('Pages'); +index_entry('Home', + "http://pyxine.sourceforge.net/", + "The Pyxine Home Page"); -$first = true; +index_head('SourceForge'); +index_entry("Project Info", + "http://sourceforge.net/projects/pyxine", + "SourceForge project info for Pyxine"); +index_entry("Downloads", + "http://sourceforge.net/project/showfiles.php?group_id=73236"); +index_entry("CVS", + "http://sourceforge.net/cvs/?group_id=73236", + "CVS Repository"); -foreach ($INDEX as $head => $list) { - if (!$first) { - ?><span class="hide"> </span><?php - } - $first = false; - ?><strong class="h2"><?=$head?><span class="hide">:</span></strong> - <?php - foreach ($list as $text => $url) { - $class = ($text == $SELECTED) ? 'selected' : 'menu'; - ?><a href="<?=$url?>" class="<?=$class?>"><?=$text?></a> - <?php - } -} +index_head('Links'); +index_entry("xine", + "http://xinehq.de", + "The xine home page"); +index_entry("freshmeat", + "http://freshmeat.net/projects/pyxine", + "The freshmeat listing for Pyxine"); ?> <hr class="hide" /> |
From: <da...@us...> - 2003-02-10 17:45:16
|
Update of /cvsroot/pyxine/htdocs/pyxine In directory sc8-pr-cvs1:/tmp/cvs-serv32327/pyxine Modified Files: index.tmpl Log Message: Added link to freshmeat project page Index: index.tmpl =================================================================== RCS file: /cvsroot/pyxine/htdocs/pyxine/index.tmpl,v retrieving revision 1.2 retrieving revision 1.3 diff -u -d -r1.2 -r1.3 --- index.tmpl 8 Feb 2003 19:12:02 -0000 1.2 +++ index.tmpl 10 Feb 2003 17:45:10 -0000 1.3 @@ -12,7 +12,11 @@ "http://sourceforge.net/project/showfiles.php?group_id=73236", "CVS Repo" => - "http://sourceforge.net/cvs/?group_id=73236") + "http://sourceforge.net/cvs/?group_id=73236", + + "Freshmeat listing" => + "http://freshmeat.net/projects/pyxine", + ) ); $first = true; |
From: <da...@us...> - 2003-02-08 19:12:05
|
Update of /cvsroot/pyxine/htdocs In directory sc8-pr-cvs1:/tmp/cvs-serv30846 Modified Files: index.html pyxine.css Log Message: Bug fixes. Cleanup of CSS-less formatting. Index: index.html =================================================================== RCS file: /cvsroot/pyxine/htdocs/index.html,v retrieving revision 1.2 retrieving revision 1.3 diff -u -d -r1.2 -r1.3 --- index.html 8 Feb 2003 05:57:45 -0000 1.2 +++ index.html 8 Feb 2003 19:12:01 -0000 1.3 @@ -7,6 +7,7 @@ <a href="http://xinehq.de/">xine</a>.</p> <p>Using Pyxine it is possible to write simple (or complex) movie players in the Python programming language.</p> +<hr class="hide" /> <h2>News</h2> <div class="newsitem"> <h3>7 Februrary, 2003</h3> Index: pyxine.css =================================================================== RCS file: /cvsroot/pyxine/htdocs/pyxine.css,v retrieving revision 1.2 retrieving revision 1.3 diff -u -d -r1.2 -r1.3 --- pyxine.css 8 Feb 2003 03:57:51 -0000 1.2 +++ pyxine.css 8 Feb 2003 19:12:01 -0000 1.3 @@ -12,6 +12,9 @@ font-weight: bold; text-decoration: none; } +.hide { + display: none; +} #body { position: relative; @@ -35,12 +38,6 @@ margin: 0.25ex 0; padding: 0; } -#index .hide { - display: block; - visibility: hidden; - height: 0; - margin: 0; -} #index a { display: block; width: 7.75em; @@ -49,7 +46,7 @@ margin: 0.25ex 0; padding: 0 0 0 0.25em; } -#index a#selected { +#index a.selected { color: #5d3376; background: #fff; } |
From: <da...@us...> - 2003-02-08 19:12:05
|
Update of /cvsroot/pyxine/htdocs/pyxine In directory sc8-pr-cvs1:/tmp/cvs-serv30846/pyxine Modified Files: index.tmpl pyxine.tmpl Log Message: Bug fixes. Cleanup of CSS-less formatting. Index: index.tmpl =================================================================== RCS file: /cvsroot/pyxine/htdocs/pyxine/index.tmpl,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 --- index.tmpl 8 Feb 2003 05:57:45 -0000 1.1 +++ index.tmpl 8 Feb 2003 19:12:02 -0000 1.2 @@ -1,3 +1,4 @@ +<hr class="hide" /> <?php $INDEX = array('Pages' => @@ -17,20 +18,17 @@ $first = true; foreach ($INDEX as $head => $list) { - if ($first) { -?> - <span class="hide"> </span> -<?php - $first = false; + if (!$first) { + ?><span class="hide"> </span><?php } -?> - <strong class="h2"><?=$head?><span class="hide">:</span></strong> -<?php + $first = false; + ?><strong class="h2"><?=$head?><span class="hide">:</span></strong> + <?php foreach ($list as $text => $url) { $class = ($text == $SELECTED) ? 'selected' : 'menu'; -?> - <a href="<?=$url?>" class="<?=$class?>"><?=$text?></a> -<?php + ?><a href="<?=$url?>" class="<?=$class?>"><?=$text?></a> + <?php } } ?> +<hr class="hide" /> Index: pyxine.tmpl =================================================================== RCS file: /cvsroot/pyxine/htdocs/pyxine/pyxine.tmpl,v retrieving revision 1.1 retrieving revision 1.2 diff -u -d -r1.1 -r1.2 --- pyxine.tmpl 8 Feb 2003 05:57:45 -0000 1.1 +++ pyxine.tmpl 8 Feb 2003 19:12:02 -0000 1.2 @@ -17,12 +17,11 @@ <div id="index"><?=$INDEX?></div> <div id="main"><?=$BODY?></div> </div> +<hr class="hide" /> <div id="logos"> -<div id="sflogo"> -<a href="http://sourceforge.net"><img +<a id="sflogo" href="http://sourceforge.net"><img src="http://sourceforge.net/sflogo.php?group_id=73236&type=1" alt="SourceForge.net Logo" class="logo" /></a> -</div> <a href="http://jigsaw.w3.org/css-validator/check/referer"><img src="http://jigsaw.w3.org/css-validator/images/vcss" alt="Valid CSS!" class="logo" /></a> |