Hi Ali,

looks good so far.

One quick comment:

-<hx:video>
=> fallBack: does it need to be a facet ?
  What about "alternatePlayer" and warning (or alert) ?

-Matthias

On Wed, May 19, 2010 at 10:30 PM, Ali Ok <al...@aliok.com.tr> wrote:
> Hi all,
> I've prepared some component prototypes, and your feedback is appreciated.
> There are 20+ components and I want to send them to discuss here, one by
> one; "to have a 'cleaner' separation of the discussion".
> Also, IMHO, it is better to post prototypes inline.
> ===============================
> ==========<hx:video>============
> ===============================
>       REFS:
>          [0] http://www.whatwg.org/specs/web-apps/current-work/#video
>          [1] https://developer.mozilla.org/En/HTML/Element/Video
>
>       EXTENDS:
>          May extend a abstract component with hx:audio.
>
>       specific ATTRIBUTES:
>          preload can be:
>             none: do not preload the media from the server
>             metadata: fetch metadata (length, quality, etc.) (default)
>             auto: load the data from the server, even if user doesnt play it
>          showControls:
>             true: browser's media controls are shown (default)
>             false: controls are not shown unless page author provides one
> explicitly
>          loop:
>             true or false (default)
>          poster:
>             image to show when not playing or seeking
>          width:
>             width of the video
>          height:
>             height of the video
>
>       FACETS:
>          fallBack:
>             content to display when HTML5 video is not supported. possible
> actions
>             can be using a flash player as a fallback or displaying a
> message that displays this is not supported.
>
>       NOTES:
>          see <hx:mediaSource> and <hx:mediaSources>
>          new <track> feature is not included, since there is no browser
> support yet (impossible to test). this feature can be added
>             when a browser starts supporting it
>    <!-- ---------------------------------------usage
> --------------------------------------------------- -->
>    <hx:video value="#{videoBean.someVideoFileURL}" preload="metadata"
>          poster="somePosterImage.jpg"
>          width="600px" height="300px"
>          autoplay="true" loop="true" showControls="true" >
>       <f:facet name="fallBack">
>          <embed player.swf ....>.....</embed>
>          <!-- SOME FALLBACK MECHANISM TO PLAY THE FILE (FLASH may be). or
> alerting the user about HTML5 video support.  -->
>       </f:facet>
>    </hx:video>
>
>    <!-- expected HTML5 code -->
>    <video src="someAddress/someFile.mkv" preload="metadata" autoplay loop
> controls poster="somePosterImage.jpg"
>          width="600px" height="300px">
>       <embed player.swf ....>.....</embed>
>    </video>
>
>
>
>    <!-- ---------------------------------------usage
> --------------------------------------------------- -->
>    <hx:video preload="none"
>          autoplay="false" loop="false" showControls="false"
>          poster="#{videoBean.posterImage}">
>       <f:facet name="fallBack">
>          Your browser does not support HTML5 video.
>       </f:facet>
>
>       <hx:mediaSource src="http://someaddress/someFile.ogg";
> contentType="video/ogg" codecs="avc1.42E01E" media="screen and
> (device-width: 800px)">
>       <hx:mediaSource src="http://someaddress/some3DFile.ogg";
> media="3d-glasses">
>
>       <!-- <hx:mediaSources> component, not <hx:mediaSource> -->
>       <hx:mediaSources items="#{someBean.mediaInfoList}">
>    </hx:video>
>
>    <!-- expected HTML5 code for usage -->
>    <video preload="none" poster="somePosterImage.jpg" controls="false"
> autoplay="false">
>       Your browser does not support HTML5 video.
>       <source src='http://someaddress/someFile.ogg' Type='video/ogg;
> codecs="avc1.42E01E"' media="screen and (device-width: 800px)" />
>       <source src='someAddress/some3Dfile.ogg' media="3d-glasses"/>
>
>       <!-- elements below are generated with <hx:mediaSources> -->
>       <source src='video.mp4' type='video/mp4; codecs="avc1.42E01E,
> mp4a.40.2"' media="screen">
>       <source src='video.mp4' type='video/mp4; codecs="avc1.58A01E,
> mp4a.40.2"' media="3d-glasses">
>       <source src='video.mp4' type='video/mp4; codecs="avc1.4D401E,
> mp4a.40.2"'>
>       <source src='video.mp4' type='video/mp4; codecs="avc1.64001E,
> mp4a.40.2"'>
>       <source src='video.mp4' type='video/mp4; codecs="mp4v.20.8,
> mp4a.40.2"'>
>    </video>
>
> ===============================
> =======<hx:mediaSource>=========
> ===============================
>       REFS:
>          [0]
> http://www.whatwg.org/specs/web-apps/current-work/multipage/video.html#the-source-element
>          [1] https://developer.mozilla.org/En/HTML/Element/Source
>       EXTENDS:
>          --
>       specific ATTRIBUTES:
>          src:
>             URL of the source.
>          contentType:
>             MIME content type of the source (ie:video/ogg).
>          codecs:
>             Codecs of the source (ie:'avc1.64001E, mp4a.40.2').
>          media:
>             media attribute: just like the @media in CSS.
>
>
>       NOTES:
>          see <hx:mediaSources>, <hx:audio> and <hx:video>
>
>    <!-- -----------------------usage ---------------------------- -->
>    <hx:mediaSource src="http://someaddress/someFile.ogg";
> contentType="video/ogg" codecs="avc1.42E01E" media="screen and
> (device-width: 800px)"/>
>
>    <!-- expected HTML5 code for usage-->
>    <source src='http://someaddress/someFile.ogg' contentType="video/ogg"
> codecs="avc1.42E01E" media="screen and (device-width: 800px)" />
>
>
>    <!-- -----------------------usage ---------------------------- -->
>    <hx:mediaSource src="http://someaddress/some3DFile.ogg";
> media="3d-glasses" />
>
>    <!-- expected HTML5 code for usage-->
>    <source src='someAddress/some3Dfile.ogg' media="3d-glasses"/>
>
> ===============================
> =======<hx:mediaSources>========
> ===============================
>       REFS:
>          [0]
> http://www.whatwg.org/specs/web-apps/current-work/multipage/video.html#the-source-element
>          [1] https://developer.mozilla.org/En/HTML/Element/Source
>       EXTENDS:
>          --
>       specific ATTRIBUTES:
>          items:
>             binding of a collection which has elements of types having these
> methods
>                public String getSrc(),
>                public String getContentType(),
>                public String getMedia(),
>                public String getCodecs().
>             (ie.
> Collection<org.apache.myfaces.html5.media.MediaSourceInfo>)
>             'src', 'contentType', 'media' and 'codecs' are explained in
> mediaSource.xhtml (w/o 's' at the end)
>
>       NOTES:
>          see mediaSource.xhtml, audio.xhtml and video.xhtml
>    <!-- usage -->
>    <hx:mediaSources items="#{audioBean.someAudioFileInfos}"/>
>
>    <!-- expected HTML5 code-->
>    <source src='someAddress/somefile.ogg' type='video/ogg; codecs="flac"' />
>    <source src='http://someaddress/someFile.ogg' media="screen and
> (device-width: 800px)" />
>    <source src='http://someaddress/someFile.ogg' media="3d-glasses"/>
>
> Regards,
> Ali
> --
> My Blog: http://blog.aliok.com.tr
> Twitter: http://twitter.com/aliok_tr
>
>



-- 
Matthias Wessendorf

blog: http://matthiaswessendorf.wordpress.com/
sessions: http://www.slideshare.net/mwessendorf
twitter: http://twitter.com/mwessendorf

Reply via email to