[Zope] multimedia zclasses?

Brian Lloyd Brian@digicool.com
Mon, 13 Sep 1999 13:29:44 -0400


> Hello all,
> 
> I was showing off Zope the other day to a workmate (he's a 
> graphic artist type)
> and he said "hey that's cool" (yeah, zclasses and zcatalog 
> are cool :-)) then he
> asked: I wonder if zope can handle stuff like serving mp3 and 
> streaming media
> like real-audio, flash...?
> 
> Err...yeah, that'd be cool too, I guess. But is that 
> possible? How difficult
> would such a beast (or beasts) be? Thoughts? Ideas?
> 
> (Now I just _know_ someone's going to announce - in a couple 
> of hours - a
> realmedia zclass v0.0.1, right? ;-))

We have been doing some thinking about the low-level ZServer
architecture lately with an eye toward making large downloads
less resource-intensive. The Zope and ZServer underpinnings 
were designed in such a way that they did not *prevent* us 
from implementing low-impact streaming - but the actual support 
for it is not there yet.

Hopefully this won't expose my ignorance about streaming media
(oops, I just did it, didn't I?), but isn't the effectiveness 
of streaming mostly a question of connection quality between
the client and server? In my understanding, if a client were to 
request a big mp3, it would get loaded into memory as an object 
(with a non-trivial footprint). Zope would then start pushing the
data back down the pipe to the client. The "streaming media" client 
would basically cache a certain amount of the incoming data and try to 
play and keep the buffer filled.

If this is the case, the only problem (from Zope's point of view) is
that large objects have to get loaded into memory, which would be a 
problem for sites that made heavy use of such things. The architecure 
thinking that we are doing will eventually solve that problem. In the
interim, unless you are doing something really out there (like 
dynamically generating mp3s) you could probably save a lot of time
and worry by just making the big mondo files available from a normal
web server and linking to them.


Brian Lloyd        brian@digicool.com
Software Engineer  540.371.6909              
Digital Creations  http://www.digicool.com