Stream objects

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
8 messages Options
Reply | Threaded
Open this post in threaded view
|

Stream objects

Bèrto ëd Sèra
Hi!

I was wondering if Iliad has/will have some object to manage streaming
files like .ogg and .ogv (or mp3, wmv, for that matter). I am told
that probably html5 makes this 100% obsolete, but I admit my full
ignorance in the matter of HTML5... do we need this stuff at all or
can I simply wait for the next Firefox upgrade?

Bèrto

--
==============================
Constitution du 24 juin 1793 - Article 35. - Quand le gouvernement
viole les droits du peuple, l'insurrection est, pour le peuple et pour
chaque portion du peuple, le plus sacré des droits et le plus
indispensable des devoirs.


--
Subscription settings: http://groups.google.com/group/iliad/subscribe?hl=fr
Reply | Threaded
Open this post in threaded view
|

Re: Stream objects

Nicolas Petton
Hi Berto,

I'm forwarding this to Janko who is the current Swazoo maintainer. I
know he successfully streams flv files with Swazoo.

About the video tag in HTML5, IMHO as long as all modern browsers don't
support it, you have to at least be able to degrade to a flash player.

Cheers,

Nico  

Le mercredi 21 avril 2010 à 20:19 +0300, Bèrto ëd Sèra a écrit :

> Hi!
>
> I was wondering if Iliad has/will have some object to manage streaming
> files like .ogg and .ogv (or mp3, wmv, for that matter). I am told
> that probably html5 makes this 100% obsolete, but I admit my full
> ignorance in the matter of HTML5... do we need this stuff at all or
> can I simply wait for the next Firefox upgrade?
>
> Bèrto
>
> --
> ==============================
> Constitution du 24 juin 1793 - Article 35. - Quand le gouvernement
> viole les droits du peuple, l'insurrection est, pour le peuple et pour
> chaque portion du peuple, le plus sacré des droits et le plus
> indispensable des devoirs.
>
>


signature.asc (204 bytes) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: Stream objects

Janko Mivšek
Hi guys,

Yes, Swazoo has streaming impelemented, in both input (uplaod) and
output (download) directions. It works nicely, I serve all my static
content through Swazoo on my hosting now :)

More on http://www.swazoo.org/streaming.html

How you stream big files you can see in Aida, look at FileProxy class,
then AIDASite>answer:toGetOrPost:on:

Best regards
Janko

On 21. 04. 2010 19:28, Nicolas Petton wrote:

> Hi Berto,
>
> I'm forwarding this to Janko who is the current Swazoo maintainer. I
> know he successfully streams flv files with Swazoo.
>
> About the video tag in HTML5, IMHO as long as all modern browsers don't
> support it, you have to at least be able to degrade to a flash player.
>
> Cheers,
>
> Nico  
>
> Le mercredi 21 avril 2010 à 20:19 +0300, Bèrto ëd Sèra a écrit :
>> Hi!
>>
>> I was wondering if Iliad has/will have some object to manage streaming
>> files like .ogg and .ogv (or mp3, wmv, for that matter). I am told
>> that probably html5 makes this 100% obsolete, but I admit my full
>> ignorance in the matter of HTML5... do we need this stuff at all or
>> can I simply wait for the next Firefox upgrade?
>>
>> Bèrto
>>
>> --
>> ==============================
>> Constitution du 24 juin 1793 - Article 35. - Quand le gouvernement
>> viole les droits du peuple, l'insurrection est, pour le peuple et pour
>> chaque portion du peuple, le plus sacré des droits et le plus
>> indispensable des devoirs.
>>
>>
>

--
Janko Mivšek
Svetovalec za informatiko
Eranova d.o.o.
Ljubljana, Slovenija
www.eranova.si
tel:  01 514 22 55
faks: 01 514 22 56
gsm: 031 674 565


--
Subscription settings: http://groups.google.com/group/iliad/subscribe?hl=fr
Reply | Threaded
Open this post in threaded view
|

Re: Stream objects

Bèrto ëd Sèra
So, this appears to be technically possible, but it requires some
tweaking Iliad-side to import Aida's streaming, if I get Janko right.
The next question is whether this is already planned or not.

Bèrto

2010/4/22 Janko Mivšek <[hidden email]>:

> Hi guys,
>
> Yes, Swazoo has streaming impelemented, in both input (uplaod) and
> output (download) directions. It works nicely, I serve all my static
> content through Swazoo on my hosting now :)
>
> More on http://www.swazoo.org/streaming.html
>
> How you stream big files you can see in Aida, look at FileProxy class,
> then AIDASite>answer:toGetOrPost:on:
>
> Best regards
> Janko
>
> On 21. 04. 2010 19:28, Nicolas Petton wrote:
>> Hi Berto,
>>
>> I'm forwarding this to Janko who is the current Swazoo maintainer. I
>> know he successfully streams flv files with Swazoo.
>>
>> About the video tag in HTML5, IMHO as long as all modern browsers don't
>> support it, you have to at least be able to degrade to a flash player.
>>
>> Cheers,
>>
>> Nico
>>
>> Le mercredi 21 avril 2010 à 20:19 +0300, Bèrto ëd Sèra a écrit :
>>> Hi!
>>>
>>> I was wondering if Iliad has/will have some object to manage streaming
>>> files like .ogg and .ogv (or mp3, wmv, for that matter). I am told
>>> that probably html5 makes this 100% obsolete, but I admit my full
>>> ignorance in the matter of HTML5... do we need this stuff at all or
>>> can I simply wait for the next Firefox upgrade?
>>>
>>> Bèrto
>>>
>>> --
>>> ==============================
>>> Constitution du 24 juin 1793 - Article 35. - Quand le gouvernement
>>> viole les droits du peuple, l'insurrection est, pour le peuple et pour
>>> chaque portion du peuple, le plus sacré des droits et le plus
>>> indispensable des devoirs.
>>>
>>>
>>
>
> --
> Janko Mivšek
> Svetovalec za informatiko
> Eranova d.o.o.
> Ljubljana, Slovenija
> www.eranova.si
> tel:  01 514 22 55
> faks: 01 514 22 56
> gsm: 031 674 565
>
>
> --
> Subscription settings: http://groups.google.com/group/iliad/subscribe?hl=fr
>



--
==============================
Constitution du 24 juin 1793 - Article 35. - Quand le gouvernement
viole les droits du peuple, l'insurrection est, pour le peuple et pour
chaque portion du peuple, le plus sacré des droits et le plus
indispensable des devoirs.
Reply | Threaded
Open this post in threaded view
|

Re: Stream objects

Nicolas Petton
Le vendredi 23 avril 2010 à 17:21 +0300, Bèrto ëd Sèra a écrit :
> So, this appears to be technically possible, but it requires some
> tweaking Iliad-side to import Aida's streaming, if I get Janko right.
> The next question is whether this is already planned or not.

I use Apache as a front end server, and it serves all static files.
If you really want to use a 100% smalltalk solution, I guess Swazoo is
your best shot, but I would rather use a more robust solution for that.

Cheers,

Nico

>
> Bèrto
>
> 2010/4/22 Janko Mivšek <[hidden email]>:
> > Hi guys,
> >
> > Yes, Swazoo has streaming impelemented, in both input (uplaod) and
> > output (download) directions. It works nicely, I serve all my static
> > content through Swazoo on my hosting now :)
> >
> > More on http://www.swazoo.org/streaming.html
> >
> > How you stream big files you can see in Aida, look at FileProxy class,
> > then AIDASite>answer:toGetOrPost:on:
> >
> > Best regards
> > Janko
> >
> > On 21. 04. 2010 19:28, Nicolas Petton wrote:
> >> Hi Berto,
> >>
> >> I'm forwarding this to Janko who is the current Swazoo maintainer. I
> >> know he successfully streams flv files with Swazoo.
> >>
> >> About the video tag in HTML5, IMHO as long as all modern browsers don't
> >> support it, you have to at least be able to degrade to a flash player.
> >>
> >> Cheers,
> >>
> >> Nico
> >>
> >> Le mercredi 21 avril 2010 à 20:19 +0300, Bèrto ëd Sèra a écrit :
> >>> Hi!
> >>>
> >>> I was wondering if Iliad has/will have some object to manage streaming
> >>> files like .ogg and .ogv (or mp3, wmv, for that matter). I am told
> >>> that probably html5 makes this 100% obsolete, but I admit my full
> >>> ignorance in the matter of HTML5... do we need this stuff at all or
> >>> can I simply wait for the next Firefox upgrade?
> >>>
> >>> Bèrto
> >>>
> >>> --
> >>> ==============================
> >>> Constitution du 24 juin 1793 - Article 35. - Quand le gouvernement
> >>> viole les droits du peuple, l'insurrection est, pour le peuple et pour
> >>> chaque portion du peuple, le plus sacré des droits et le plus
> >>> indispensable des devoirs.
> >>>
> >>>
> >>
> >
> > --
> > Janko Mivšek
> > Svetovalec za informatiko
> > Eranova d.o.o.
> > Ljubljana, Slovenija
> > www.eranova.si
> > tel:  01 514 22 55
> > faks: 01 514 22 56
> > gsm: 031 674 565
> >
> >
> > --
> > Subscription settings: http://groups.google.com/group/iliad/subscribe?hl=fr
> >
>
>
>


signature.asc (204 bytes) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: Stream objects

Bèrto ëd Sèra
Hi all,

the following classes do the job fine for me, since I'm developing a
local application that needs only being served to Firefox. I suppose
we can work on them to add javascript degradation for IE and the like,
if Nicolas confirms that what I did is Iliad-like. It's my first time
as an HTML tag creator, so I'm not 100% sure this is what the classes
are supposed to look like.

Bèrto

"======================================================================
|
|   Iliad.ILAudioElement class definition
|
 ======================================================================"

"======================================================================
| Copyright (c) 2008  Berto 'd Sera for Vox Humanitatis <[hidden email]>
| X11 license (often called MIT)
| ----------------------------------------------------------------
| Permission is hereby granted, free of charge, to any person
| obtaining a copy of this software and associated documentation
| files (the 'Software'), to deal in the Software without
| restriction, including without limitation the rights to use,
| copy, modify, merge, publish, distribute, sublicense, and/or sell
| copies of the Software, and to permit persons to whom the
| Software is furnished to do so, subject to the following
| conditions:
| The above copyright notice and this permission notice shall be
| included in all copies or substantial portions of the Software.
| THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,
| EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
| OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
| NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
| HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
| WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
| FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
| OTHER DEALINGS IN THE SOFTWARE.
 ======================================================================"

  Iliad.ILXHTMLElement subclass: ILAudioElement [
    <category: 'Iliad-Core-XHTMLElements'>
    <comment: 'version 0.6.0.
      This class implements an HTML5 .ogv audio streaming tag. This is
EXPERIMENTAL code,
      and it is currently expected to work ONLY on FF 3.5 or higher.
      Specs at http://www.w3.org/TR/html5/video.html ' >

    tag [
        <category: 'accessing'>
        ^'audio'
    ]

    src: aString [
        <category: 'accessing attributes'>
        self attributeAt: 'src' put: aString
    ]

    controls [
        <category: 'accessing attributes'>
        self attributeAt: 'controls' put: 'controls'
    ]

    preloadNone [
        <category: 'accessing attributes'>
        self attributeAt: 'preload' put: 'none'
    ]

    preloadMetadata [
        <category: 'accessing attributes'>
        self attributeAt: 'preload' put: 'metadata'
    ]

    preloadAuto [
        <category: 'accessing attributes'>
        self attributeAt: 'preload' put: 'auto'
    ]

    autoplay [
        <category: 'accessing attributes'>
        self attributeAt: 'autoplay' put: 'autoplay'
    ]

    loop [
        <category: 'accessing attributes'>
        self attributeAt: 'loop' put: 'loop'
    ]

  ]


Iliad.ILXHTMLElement extend [

   audio [
     <category: 'adding-conveniance'>
     ^self add: Iliad.ILAudioElement new
    ]

]


"======================================================================
|
|   Iliad.ILVideoElement class definition
|
 ======================================================================"

"======================================================================
| Copyright (c) 2008  Berto 'd Sera for Vox Humanitatis <[hidden email]>
| X11 license (often called MIT)
| ----------------------------------------------------------------
| Permission is hereby granted, free of charge, to any person
| obtaining a copy of this software and associated documentation
| files (the 'Software'), to deal in the Software without
| restriction, including without limitation the rights to use,
| copy, modify, merge, publish, distribute, sublicense, and/or sell
| copies of the Software, and to permit persons to whom the
| Software is furnished to do so, subject to the following
| conditions:
| The above copyright notice and this permission notice shall be
| included in all copies or substantial portions of the Software.
| THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,
| EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
| OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
| NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
| HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
| WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
| FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
| OTHER DEALINGS IN THE SOFTWARE.
 ======================================================================"

  Iliad.ILXHTMLElement subclass: ILVideoElement [
    <category: 'Iliad-Core-XHTMLElements'>
    <comment: 'version 0.6.0.
      This class implements an HTML5 .ogv video streaming tag. This is
EXPERIMENTAL code,
      and it is currently expected to work ONLY on FF 3.5 or higher.
      Specs at http://www.w3.org/TR/html5/video.html ' >

    tag [
        <category: 'accessing'>
        ^'video'
    ]

    height: anInteger [
        <category: 'accessing attributes'>
        self attributeAt: 'height' put: anInteger greaseString
    ]

    width: anInteger [
        <category: 'accessing attributes'>
        self attributeAt: 'width' put: anInteger greaseString
    ]

    src: aString [
        <category: 'accessing attributes'>
        self attributeAt: 'src' put: aString
    ]

    controls [
        <category: 'accessing attributes'>
        self attributeAt: 'controls' put: 'controls'
    ]

    poster: aString [
        <category: 'accessing attributes'>
        self attributeAt: 'poster' put: aString
    ]

    preloadNone [
        <category: 'accessing attributes'>
        self attributeAt: 'preload' put: 'none'
    ]

    preloadMetadata [
        <category: 'accessing attributes'>
        self attributeAt: 'preload' put: 'metadata'
    ]

    preloadAuto [
        <category: 'accessing attributes'>
        self attributeAt: 'preload' put: 'auto'
    ]

    autoplay [
        <category: 'accessing attributes'>
        self attributeAt: 'autoplay' put: 'autoplay'
    ]

    loop [
        <category: 'accessing attributes'>
        self attributeAt: 'loop' put: 'loop'
    ]

  ]


Iliad.ILXHTMLElement extend [

   video [
     <category: 'adding-conveniance'>
     ^self add: Iliad.ILVideoElement new
    ]

]


--
Subscription settings: http://groups.google.com/group/iliad/subscribe?hl=fr
Reply | Threaded
Open this post in threaded view
|

Re: Stream objects

Nicolas Petton
Hi Bèrto,

This is nice :)

From what I saw it's exactly how it's supposed to look like.
Did you follow HTML5 specs?

The only problem is that the video tag is a HTML5 tag, and you are
building it inside an XHTML1.0 page...

I guess I should rename some classes and add methods to be able to
change the doctype ;)

Then we could add some other elements for HTML5, like date inputs, etc
and put them is an HTML5 category.

What do you think?

Cheers,
Nico

signature.asc (204 bytes) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: Stream objects

Bèrto ëd Sèra
Nice for me :) I admit having made almost NO study about HTML 5, I
simply went to the w3c page and implemented the stuff just as they
described it, it actually worked out-of-the-box in FF 3.5 with .ogg
audio and .ogv video (provided that apache knows about the mime types
it's streaming). In the far future I'll probably want to use swazoo,
so people do not need installing apache for a local app, but this is
FAR in the future.

I'll be busy finishing the demo for a couple of weeks, but I'm willing
to take up the issue right after that (we need to request funds, so
it's nice if I have some basic magick to show ;). I'd agree that the
best thing to do is to follow w3c specs, especially since they're very
clear and require almost no effort to be implemented.

Bèrto

2010/4/24 Nicolas Petton <[hidden email]>:

> Hi Bèrto,
>
> This is nice :)
>
> From what I saw it's exactly how it's supposed to look like.
> Did you follow HTML5 specs?
>
> The only problem is that the video tag is a HTML5 tag, and you are
> building it inside an XHTML1.0 page...
>
> I guess I should rename some classes and add methods to be able to
> change the doctype ;)
>
> Then we could add some other elements for HTML5, like date inputs, etc
> and put them is an HTML5 category.
>
> What do you think?
>
> Cheers,
> Nico
>



--
==============================
Constitution du 24 juin 1793 - Article 35. - Quand le gouvernement
viole les droits du peuple, l'insurrection est, pour le peuple et pour
chaque portion du peuple, le plus sacré des droits et le plus
indispensable des devoirs.


--
Subscription settings: http://groups.google.com/group/iliad/subscribe?hl=fr