Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

GUI for multiplatform multimedia project

1 view
Skip to first unread message

trzew...@trzewiczek.info

unread,
Jan 6, 2010, 4:53:09 PM1/6/10
to pytho...@python.org
Hi everyone,

I posted that question on a python-forum, but got answer, so I ask here.

I'm working on an artistic project and I'm looking for the best
cross-platform GUI solution. The problem is that it's gonna be a tool that
will have to be double-click installable/runnable and pre-installation of
any libraries for end-users is very much like an evil. It really has to be
double-click tool

My first thought was PyQt, because it's a real framework with a lot of
stuff inside (including Phonon) and I know some cross-platform media
software written in C++ QT (like VLC). But on the other hand I've heard
that it's not that easy to make it "double-clicky" multi-platform. Is that
true?

Another thing that matters for me is ease of integration with libraries
like OpenCV.

I will be VERY thankful for any help. I'm SO tired googling the problem
(it's like weeks now!!)

Best from Poland,
trzewiczek

Philip Semanchuk

unread,
Jan 6, 2010, 10:53:01 PM1/6/10
to Python (General)

On Jan 6, 2010, at 4:53 PM, <trzew...@trzewiczek.info> <trzew...@trzewiczek.info
> wrote:

Cześć trzewiczek,
I'm not well qualified to answer your question but since no one else
has I'll make a stab at it. I'm interested because I'll have to solve
the same problem in some months time with a suite of wxPython-based
apps that rely on a lot of libraries.

When you say "cross platform" I assume you mean OS X, Linux and
Windows. All three of those require a different technique to create a
double-clickable app, so in a way you have three problems to solve,
not just one. For instance, py2exe is a popular solution for building
monolithic application blobs for Windows, while py2app does the same
for the Mac.

It might be true that PyQt isn't all that easy to cram into a "double-
clicky" application blob. But I don't know that e.g. wxPython will be
any easier. Bundling a Python GUI app is non-trivial. I think that's
exactly why you've been able to spend weeks googling -- there's no
easy, obvious, this-is-it, canonical solution. Different people use
different techniques.

So to get back to your original question, although I don't know if one
GUI toolkit is easier to bundle than another, I suspect that none of
them are easy. I would pick the GUI toolkit based on what suits your
technical & licensing needs best and worry about distribution later.

That's one man's opinion. I hope someone else with more practical
experience in the matter can offer you some advice.

Good luck
Philip

r0g

unread,
Jan 6, 2010, 11:25:30 PM1/6/10
to
Philip Semanchuk wrote:
>
> On Jan 6, 2010, at 4:53 PM, <trzew...@trzewiczek.info>
> <trzew...@trzewiczek.info> wrote:
>
>> Hi everyone,
>>
>> I posted that question on a python-forum, but got answer, so I ask here.
>>
>> I'm working on an artistic project and I'm looking for the best
>> cross-platform GUI solution. The problem is that it's gonna be a tool
>> that
>> will have to be double-click installable/runnable and pre-installation of

>> any libraries for end-users is very much like an evil. It really has
>> to be
>> double-click tool
>>
>> My first thought was PyQt, because it's a real framework with a lot of
>> stuff inside (including Phonon) and I know some cross-platform media
>> software written in C++ QT (like VLC). But on the other hand I've heard
>> that it's not that easy to make it "double-clicky" multi-platform. Is
>> that
>> true?
>>
>> Another thing that matters for me is ease of integration with libraries
>> like OpenCV.
>>
>> I will be VERY thankful for any help. I'm SO tired googling the problem
>> (it's like weeks now!!)
>
> Cześć trzewiczek,
> I'm not well qualified to answer your question but since no one else has
> I'll make a stab at it. I'm interested because I'll have to solve the
> same problem in some months time with a suite of wxPython-based apps
> that rely on a lot of libraries.
>


Actually the one I wouldn't recommend for the OP is wxPython. It's very
good and I use it almost exclusively but as the OP has an "artistic
project" I'm not sure it would be ideal. wxPython works by leveraging
the runtime platform's native toolkit so your apps are very portable and
fit in nicely with the look and feel of whatever system they're on but...

Sometimes that can make it hard to do very precise layouts that look the
same across platforms. Sometimes it doesn't manifest and the times where
it does wont be a problem for the vast majority of apps but if you
require very granular control you may be better off picking one toolkit
and sticking to it. I'd pick QT over GTK if I had to make a choice and
also I agree with the last poster that packaging any of them (for
windows at least) will require a fair degree of faff.

Roger.

CM

unread,
Jan 7, 2010, 10:26:18 AM1/7/10
to

I don't know this for sure, but I would be surprised if any of the
widget
toolkits gave you much more trouble than any other when making your
app
into a bundled executable.

I have made wxPython apps into a Windows .exe file easily using
GUI2Exe,
which is an excellent GUI interface (written in wxPython by Andrea
Gavana)
to a number of the executable bundlers: py2exe, PyInstaller, py2app,
cx_Freeze, bbFreeze. Some of these are for Windows, some for Mac,
some
for Linux.

wxPython apparently works with OpenCV:
http://opencv.willowgarage.com/wiki/wxpython

While you're Googling you might want to be aware of any legal
concerns with py2exe and distributing dll files (if there are
any).


Diez B. Roggisch

unread,
Jan 7, 2010, 2:56:22 PM1/7/10
to
trzew...@trzewiczek.info schrieb:

> Hi everyone,
>
> I posted that question on a python-forum, but got answer, so I ask here.
>
> I'm working on an artistic project and I'm looking for the best
> cross-platform GUI solution. The problem is that it's gonna be a tool that
> will have to be double-click installable/runnable and pre-installation of
> any libraries for end-users is very much like an evil. It really has to be
> double-click tool
>
> My first thought was PyQt, because it's a real framework with a lot of
> stuff inside (including Phonon) and I know some cross-platform media
> software written in C++ QT (like VLC). But on the other hand I've heard
> that it's not that easy to make it "double-clicky" multi-platform. Is that
> true?

I don't know exactly what you mean with that, but I doubt it's easier
with anything else.

Another option might be pygame + simple OpenGL though, if you are
planning on heavy use of Canvas-like things, that might be good enough &
less heavyweight.

>
> Another thing that matters for me is ease of integration with libraries
> like OpenCV.

That has little todo with the toolkit. You need some
image-converting-code, I've written such for Cocoa, to convert OpenCV's
RGBA to OSX ARGB. But the last resort would be to save the images from
OpenCV and read them using Qt (or whatever toolkit you use in th eend.

Diez

0 new messages