Re: [MeeGo-dev] Regarding "Qt with HTML5 layer" from MeeGo Smart TV WG Meeting Minutes for 9/20/2011

2011-10-03 Thread Niels Mayer
On Mon, Oct 3, 2011 at 12:01 PM,   wrote:
> Here is the whitepaper: 
> http://qt.nokia.com/files/pdf/whitepaper-qt-hybrid-server-driven-ui/at_download/file

Dilip -- Thanks for the response.

I guess I've already read that paper almost a year ago... :-)

-rw-r--r-- 1 npm npm  196168 2010-11-04 23:14
/home/npm/Download/Qt_ServerDrivenUIHybrid_Whitepaper.pdf

> The critical, and missing, context here is that Qt WebKit hybrid is a way to 
> build native apps, not apps that run in a browser. Another way to think about 
> it: Qt WebKit hybrid lets you build an app-specific "web browser" that is 
> designed to run that particular app

Indeed, that is exactly what I'm beginning to explore with Qtzibit (
http://nielsmayer.com/meego/qml/qtzibit.xhtml ). Using it to display
and provide faceted browsing of QML datamodels, local data, or
internet data. Thus Qtzibit and "mashup" stye browser displays can be
used to augment existing means of display using QML -- best of both
worlds, using QML as best-tool-for-the-job when it fits, and using
HTML5 and a more DOM and CSS based approach when it works best. Since
qtzibit and Exhibit are based on their own JSON-based abstract
datamodels, it is quite complementary to the way QML works -- they can
exchange JSON data much like a webserver/browser exchange HTML.

Also, the "server" in this kind of app is "virtual" in that everything
runs locally, but you might want to make calls out to other
webservices, or the local "virtual" server to get local application or
mobility data. With qtzibit, apps that normally run on a website run
locally (although the google-map-based ones require an internet
connection, the timeline, timeplot, chart, visualizations don't).
These can run "standalone" and the associated JavaScript is loaded in
from the local filesystem, computed in QML/JavaScript/C++ or
transferred from the web or local SQL datastore. Qt/QML can be used to
visualize arbitrary datamodels as JSON in QML, and in-turn, this JSON
can be rendered via QtWebKit in Exhibit. In many ways, it duplicates
or complements the "delegate"-based rendering of datamodels in Qt/QML,
but uses Web-based layouts and rendering.

Also, it makes sense for there to be a QML "glue layer" between the
many  Qt-Mobility interfaces that one may want to access in HTML5 via
javascript.

Finally, it's possible that such a QML "glue layer" architecture
between Qt/QtMobility and QtWebKit could also be where the extra
layers of security could be placed between the free-for-all world of
JavaScript in the browser (cross-site scripting and malicious
advertising) and system-level functionality for which this glue layer,
plus Qt/QtMobility and QML would act as "middleware."

For example, one can envision a kind of
self-expiring-one-time-pad-like-crypto-token build into the QML
middleware layer so as to ensure that only certain apps, can access
certain data for certain amounts of time, etc. Similar technique could
be used to secure access to DRM-protected media streams and data,
where Qt and QML encapsulate native C++ code to perform secure network
access or media decryption.

-- Niels
http://nielsmayer.com
___
MeeGo-dev mailing list
MeeGo-dev@meego.com
http://lists.meego.com/listinfo/meego-dev
http://wiki.meego.com/Mailing_list_guidelines


Re: [MeeGo-dev] Regarding "Qt with HTML5 layer" from MeeGo Smart TV WG Meeting Minutes for 9/20/2011

2011-10-03 Thread dilip.kenchammana
Neils, 

Here is the whitepaper: 
http://qt.nokia.com/files/pdf/whitepaper-qt-hybrid-server-driven-ui/at_download/file

The critical, and missing, context here is that Qt WebKit hybrid is a way to 
build native apps, not apps that run in a browser. Another way to think about 
it: Qt WebKit hybrid lets you build an app-specific "web browser" that is 
designed to run that particular app. And another relevant datapoint: the Qt 
WebKit hybrid design pattern has been used by several companies for building 
connected TV apps for streaming premium content. e.g. Netflix in North America, 
and CNTV in China, to name a couple. 

Hope that answers yours concerns, and thanks for the links to your projects.

Best,
Dilip


On Oct 2, 2011, at 3:50 PM, ext Niels Mayer wrote:

> In "MeeGo Smart TV WG Meeting Minutes for 9/20/2011" I noticed:
>> o Dilip Kenchammana: Qt with HTML5 layer Dilip has 
>> provided a white paper via e-mail. Discussion postponed to next meeting.
> 
> Is it possible to get a copy of this whitepaper? I have serious
> concerns all-around over the approach being taken, and am curious how
> a number of issues are being resolved. Especially w/r/t/ security, and
> also because silly breakage needs to be done to very hairy browser
> code in order to "poke holes" for video acceleration and/or
> DRM-protection. And once that breakage has been perpetrated, a
> tidal-wave of bugreports will ensue because the HTML5 standard permits
> "canvas" like operations on top of the video; also dynamically
> altering the video frame. An extreme example:
> http://www.craftymind.com/factory/html5video/CanvasVideo.html
> 
> Especially troubling for the "Tizen" approach, are statements like:
> 
> http://lists.meego.com/pipermail/meego-tv/2011-September/000103.html
>> Q: Narm, is there privacy controls to prevent rogue JavaScript from 
>> accessing private data.
>> A: Doninique, not that he's seen. Designed for closed system.
>> Access to scripts and code inside the box is limited by physical security.
> 
> .
> 
> FYI, my own "qt and html5" project: http://code.google.com/p/qtzibit/
> http://nielsmayer.com/meego/qml/qtzibit.xhtml
> "qtzibit: tiny programs make amazing web mashups using Simile-Widgets
> Exhibit, QtWebKit and QML"
> ( http://nielsmayer.com/meego/qml/qtzibit_0_1_0.i586.rpm
> http://nielsmayer.com/meego/qml/qtzibit_0.1.0_armel.deb )
> 
> Also, MeeGo/Qt and "TV" related:
> http://nielsmayer.com/meego/qml/qmltube.xhtml
> ("qmltube: Port/fork of cutetube-qml for Linux, MeeGo Netbook, Tablet
> and Harmattan.")
> ( http://nielsmayer.com/meego/qml/qmltube_1_11_2.i586.rpm
> http://nielsmayer.com/meego/qml/qmltube_1.11.1_armel.deb )
> 
> PS: Coming soon to a Nokia N9 (validation-willing) near you, my new
> app 'voicetogoog':
> http://nielsmayer.com/voicetogoog/voicetogoog-map-view.png
> http://nielsmayer.com/voicetogoog/voicetogoog-details-view.png
> http://nielsmayer.com/voicetogoog/voicetogoog-menu-view.png
> http://nielsmayer.com/voicetogoog/voicetogoog-recording-voice.png
> 
> Niels
> http://nielsmayer.com


___
MeeGo-dev mailing list
MeeGo-dev@meego.com
http://lists.meego.com/listinfo/meego-dev
http://wiki.meego.com/Mailing_list_guidelines


[MeeGo-dev] Regarding "Qt with HTML5 layer" from MeeGo Smart TV WG Meeting Minutes for 9/20/2011

2011-10-02 Thread Niels Mayer
In "MeeGo Smart TV WG Meeting Minutes for 9/20/2011" I noticed:
>  o Dilip Kenchammana: Qt with HTML5 layer     Dilip has 
> provided a white paper via e-mail. Discussion postponed to next meeting.

Is it possible to get a copy of this whitepaper? I have serious
concerns all-around over the approach being taken, and am curious how
a number of issues are being resolved. Especially w/r/t/ security, and
also because silly breakage needs to be done to very hairy browser
code in order to "poke holes" for video acceleration and/or
DRM-protection. And once that breakage has been perpetrated, a
tidal-wave of bugreports will ensue because the HTML5 standard permits
"canvas" like operations on top of the video; also dynamically
altering the video frame. An extreme example:
http://www.craftymind.com/factory/html5video/CanvasVideo.html

Especially troubling for the "Tizen" approach, are statements like:

http://lists.meego.com/pipermail/meego-tv/2011-September/000103.html
> Q: Narm, is there privacy controls to prevent rogue JavaScript from accessing 
> private data.
> A: Doninique, not that he's seen. Designed for closed system.
> Access to scripts and code inside the box is limited by physical security.

.

FYI, my own "qt and html5" project: http://code.google.com/p/qtzibit/
http://nielsmayer.com/meego/qml/qtzibit.xhtml
"qtzibit: tiny programs make amazing web mashups using Simile-Widgets
Exhibit, QtWebKit and QML"
( http://nielsmayer.com/meego/qml/qtzibit_0_1_0.i586.rpm
http://nielsmayer.com/meego/qml/qtzibit_0.1.0_armel.deb )

Also, MeeGo/Qt and "TV" related:
http://nielsmayer.com/meego/qml/qmltube.xhtml
("qmltube: Port/fork of cutetube-qml for Linux, MeeGo Netbook, Tablet
and Harmattan.")
( http://nielsmayer.com/meego/qml/qmltube_1_11_2.i586.rpm
http://nielsmayer.com/meego/qml/qmltube_1.11.1_armel.deb )

PS: Coming soon to a Nokia N9 (validation-willing) near you, my new
app 'voicetogoog':
http://nielsmayer.com/voicetogoog/voicetogoog-map-view.png
http://nielsmayer.com/voicetogoog/voicetogoog-details-view.png
http://nielsmayer.com/voicetogoog/voicetogoog-menu-view.png
http://nielsmayer.com/voicetogoog/voicetogoog-recording-voice.png

Niels
http://nielsmayer.com
___
MeeGo-dev mailing list
MeeGo-dev@meego.com
http://lists.meego.com/listinfo/meego-dev
http://wiki.meego.com/Mailing_list_guidelines