Typically WebKit has 3 doors for external world (i.e whoever wants to use WebKit), platform specific interfaces and WebKit layer, and JavaScript bindings. I have special case in my hand; currently I maintain a custom branch of WebKit, I already have implemented a module which sits closely with WebCore and it works just fine. One of my goals is to deliver these changes back to community and even may be back to WebKit repository. In near future I will be implementing at least 2-3 such modules, which work closely with WebCore and JavaScriptCore but they may not have to anything to do HTML browser engine as such. I need some suggestions from WebKit Guru's on how such code can be structured so that this can be contributed back to WebKit without disturbing harmony of many WebKit embedders. Basically future proof. Thanks Chinmaya
On Tue, Aug 24, 2010 at 12:21 PM, Chinmaya Sn <chinmaya@gmail.com> wrote:
I have special case in my hand; currently I maintain a custom branch of WebKit, I already have implemented a module which sits closely with WebCore and it works just fine. One of my goals is to deliver these changes back to community and even may be back to WebKit repository. In near future I will be implementing at least 2-3 such modules, which work closely with WebCore and JavaScriptCore but they may not have to anything to do HTML browser engine as such.
Why don't you say more about what you're trying to do. It's hard to answer in the abstract. PK
The current module I have implemented works closely with RenderingEngine/GraphicsContext and HTML5 video player, which tries to deliver some special interactive Apps (In Cable World) as an overlay over HTML5 Video, the apps themselves are delivered as one of the private streams in the Video, so some work has gone inside implementation of video player itself. In near future, I will be poking around a lot with HTML5 player. I will be implementing lot more modules like above, which will be linked to WebCore. Each of the new enhancements I provide needs to be use WebCore and should be accessible to HTML page author. So I will be drilling some holes to expose these modules as a finite set of JavaScript objects. -- Chinmaya On Tue, Aug 24, 2010 at 1:23 PM, Peter Kasting <pkasting@google.com> wrote:
On Tue, Aug 24, 2010 at 12:21 PM, Chinmaya Sn <chinmaya@gmail.com> wrote:
I have special case in my hand; currently I maintain a custom branch of WebKit, I already have implemented a module which sits closely with WebCore and it works just fine. One of my goals is to deliver these changes back to community and even may be back to WebKit repository. In near future I will be implementing at least 2-3 such modules, which work closely with WebCore and JavaScriptCore but they may not have to anything to do HTML browser engine as such.
Why don't you say more about what you're trying to do. It's hard to answer in the abstract. PK
-- -- chinmaya sn
The current module I have implemented works closely with RenderingEngine/GraphicsContext and HTML5 video player, which tries to deliver some special interactive Apps (In Cable World) as an overlay over HTML5 Video, the apps themselves are delivered as one of the private streams in the Video, so some work has gone inside implementation of video player itself.
I guess you also need to supply the justification: what would WebKit gain from such modules? Are the modules part of HTML5 and other web standards? Regards, -- Ariya Hidayat http://www.linkedin.com/in/ariyahidayat
I'll be the first to ask this question: what do you need to do that you can do with existing WebKit APIs, and existing web technology? With video, you could use http streaming to deliver custom content, and make sure of accelerated compositing to ensure that you can efficiently layer HTML content on top of video. If your platform does not have support for these, then the "right" way to address this is to add support for these missing pieces, rather than hacking at WebCore internals. Simon On Aug 24, 2010, at 12:31 PM, Chinmaya Sn wrote:
The current module I have implemented works closely with RenderingEngine/GraphicsContext and HTML5 video player, which tries to deliver some special interactive Apps (In Cable World) as an overlay over HTML5 Video, the apps themselves are delivered as one of the private streams in the Video, so some work has gone inside implementation of video player itself.
In near future, I will be poking around a lot with HTML5 player. I will be implementing lot more modules like above, which will be linked to WebCore. Each of the new enhancements I provide needs to be use WebCore and should be accessible to HTML page author. So I will be drilling some holes to expose these modules as a finite set of JavaScript objects.
-- Chinmaya
On Tue, Aug 24, 2010 at 1:23 PM, Peter Kasting <pkasting@google.com> wrote:
On Tue, Aug 24, 2010 at 12:21 PM, Chinmaya Sn <chinmaya@gmail.com> wrote:
I have special case in my hand; currently I maintain a custom branch of WebKit, I already have implemented a module which sits closely with WebCore and it works just fine. One of my goals is to deliver these changes back to community and even may be back to WebKit repository. In near future I will be implementing at least 2-3 such modules, which work closely with WebCore and JavaScriptCore but they may not have to anything to do HTML browser engine as such.
Why don't you say more about what you're trying to do. It's hard to answer in the abstract. PK
Let me put it this way, I am working on a new standard, which leverages some of HTML5 standards but tries to extend them (not enhance) to answer some of the Cable industry challenges. I started by analysing WebKit layer, it has very strong assumption of layering browser-engine, and mostly has APIs which helps you build a html browser, why not, WebKit is a browser-engine. In my first case, of rendering a special kind of "app" on top of HTML5 video; these apps don't speak html/javascript, they speak primitives such as drawRectangle, drawLine etc. and has own events and processing functions (its a language in itself) which needs to be translated into either C++ or HTML/JavaScript. My primary requirements is to add new modules which represent new standards which work in conjunction with HTML5 (very closely) without any changes inside WebCore. Today WebKit would not gain anything, this is new standard work in progress. Tomorrow things might change, and if someone says I want this Cable specific feature, one could easily tell 'hey build WebKit with this flag and you will get that feature for free', that is my motto. I am driving this as as future proof solution. Currently I'll be performing these changes only in my own branch. Makes sense? On Tue, Aug 24, 2010 at 2:09 PM, Ariya Hidayat <ariya.hidayat@gmail.com> wrote:
I guess you also need to supply the justification: what would WebKit gain from such modules? Are the modules part of HTML5 and other web standards?
Regards,
On Tue, Aug 24, 2010 at 2:17 PM, Simon Fraser <simon.fraser@apple.com> wrote:
I'll be the first to ask this question: what do you need to do that you can do with existing WebKit APIs, and existing web technology?
With video, you could use http streaming to deliver custom content, and make sure of accelerated compositing to ensure that you can efficiently layer HTML content on top of video.
If your platform does not have support for these, then the "right" way to address this is to add support for these missing pieces, rather than hacking at WebCore internals.
Simon
On Aug 24, 2010, at 12:31 PM, Chinmaya Sn wrote:
The current module I have implemented works closely with RenderingEngine/GraphicsContext and HTML5 video player, which tries to deliver some special interactive Apps (In Cable World) as an overlay over HTML5 Video, the apps themselves are delivered as one of the private streams in the Video, so some work has gone inside implementation of video player itself.
In near future, I will be poking around a lot with HTML5 player. I will be implementing lot more modules like above, which will be linked to WebCore. Each of the new enhancements I provide needs to be use WebCore and should be accessible to HTML page author. So I will be drilling some holes to expose these modules as a finite set of JavaScript objects.
-- Chinmaya
On Tue, Aug 24, 2010 at 1:23 PM, Peter Kasting <pkasting@google.com> wrote:
On Tue, Aug 24, 2010 at 12:21 PM, Chinmaya Sn <chinmaya@gmail.com> wrote:
I have special case in my hand; currently I maintain a custom branch of WebKit, I already have implemented a module which sits closely with WebCore and it works just fine. One of my goals is to deliver these changes back to community and even may be back to WebKit repository. In near future I will be implementing at least 2-3 such modules, which work closely with WebCore and JavaScriptCore but they may not have to anything to do HTML browser engine as such.
Why don't you say more about what you're trying to do. It's hard to answer in the abstract. PK
-- Chinmaya
It's unclear to me how these contributions would further the project goals: http://webkit.org/projects/goals.html The closest goal seems to be the following: [[ Web Content Engine The project's primary focus is content deployed on the World Wide Web, using standards-based technologies such as HTML, CSS, JavaScript and the DOM. However, we also want to make it possible to embed WebKit in other applications, and to use it as a general-purpose display and interaction engine. ]] Adam On Tue, Aug 24, 2010 at 2:26 PM, Chinmaya Sn <chinmaya@gmail.com> wrote:
Let me put it this way, I am working on a new standard, which leverages some of HTML5 standards but tries to extend them (not enhance) to answer some of the Cable industry challenges.
I started by analysing WebKit layer, it has very strong assumption of layering browser-engine, and mostly has APIs which helps you build a html browser, why not, WebKit is a browser-engine.
In my first case, of rendering a special kind of "app" on top of HTML5 video; these apps don't speak html/javascript, they speak primitives such as drawRectangle, drawLine etc. and has own events and processing functions (its a language in itself) which needs to be translated into either C++ or HTML/JavaScript.
My primary requirements is to add new modules which represent new standards which work in conjunction with HTML5 (very closely) without any changes inside WebCore.
Today WebKit would not gain anything, this is new standard work in progress. Tomorrow things might change, and if someone says I want this Cable specific feature, one could easily tell 'hey build WebKit with this flag and you will get that feature for free', that is my motto.
I am driving this as as future proof solution. Currently I'll be performing these changes only in my own branch.
Makes sense?
On Tue, Aug 24, 2010 at 2:09 PM, Ariya Hidayat <ariya.hidayat@gmail.com> wrote:
I guess you also need to supply the justification: what would WebKit gain from such modules? Are the modules part of HTML5 and other web standards?
Regards,
On Tue, Aug 24, 2010 at 2:17 PM, Simon Fraser <simon.fraser@apple.com> wrote:
I'll be the first to ask this question: what do you need to do that you can do with existing WebKit APIs, and existing web technology?
With video, you could use http streaming to deliver custom content, and make sure of accelerated compositing to ensure that you can efficiently layer HTML content on top of video.
If your platform does not have support for these, then the "right" way to address this is to add support for these missing pieces, rather than hacking at WebCore internals.
Simon
On Aug 24, 2010, at 12:31 PM, Chinmaya Sn wrote:
The current module I have implemented works closely with RenderingEngine/GraphicsContext and HTML5 video player, which tries to deliver some special interactive Apps (In Cable World) as an overlay over HTML5 Video, the apps themselves are delivered as one of the private streams in the Video, so some work has gone inside implementation of video player itself.
In near future, I will be poking around a lot with HTML5 player. I will be implementing lot more modules like above, which will be linked to WebCore. Each of the new enhancements I provide needs to be use WebCore and should be accessible to HTML page author. So I will be drilling some holes to expose these modules as a finite set of JavaScript objects.
-- Chinmaya
On Tue, Aug 24, 2010 at 1:23 PM, Peter Kasting <pkasting@google.com> wrote:
On Tue, Aug 24, 2010 at 12:21 PM, Chinmaya Sn <chinmaya@gmail.com> wrote:
I have special case in my hand; currently I maintain a custom branch of WebKit, I already have implemented a module which sits closely with WebCore and it works just fine. One of my goals is to deliver these changes back to community and even may be back to WebKit repository. In near future I will be implementing at least 2-3 such modules, which work closely with WebCore and JavaScriptCore but they may not have to anything to do HTML browser engine as such.
Why don't you say more about what you're trying to do. It's hard to answer in the abstract. PK
-- Chinmaya _______________________________________________ webkit-dev mailing list webkit-dev@lists.webkit.org http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev
On Aug 24, 2010, at 2:26 PM, Chinmaya Sn wrote:
Let me put it this way, I am working on a new standard, which leverages some of HTML5 standards but tries to extend them (not enhance) to answer some of the Cable industry challenges.
Can you point us to this standard? Is it a W3C spec?
I started by analysing WebKit layer, it has very strong assumption of layering browser-engine, and mostly has APIs which helps you build a html browser, why not, WebKit is a browser-engine.
In my first case, of rendering a special kind of "app" on top of HTML5 video; these apps don't speak html/javascript, they speak primitives such as drawRectangle, drawLine etc. and has own events and processing functions (its a language in itself) which needs to be translated into either C++ or HTML/JavaScript.
Maybe you can translate these primitives into SVG or Canvas, and just map it down to web technology?
My primary requirements is to add new modules which represent new standards which work in conjunction with HTML5 (very closely) without any changes inside WebCore.
Today WebKit would not gain anything, this is new standard work in progress. Tomorrow things might change, and if someone says I want this Cable specific feature, one could easily tell 'hey build WebKit with this flag and you will get that feature for free', that is my motto.
I am driving this as as future proof solution. Currently I'll be performing these changes only in my own branch.
Makes sense?
Yes, but it only makes sense for us to ingrate changes like this back into the main repository for features that will get used by most webkit clients. We try hard to avoid accumulating features that are only of interest to some limited audience. Simon
On Tue, Aug 24, 2010 at 2:09 PM, Ariya Hidayat <ariya.hidayat@gmail.com> wrote:
I guess you also need to supply the justification: what would WebKit gain from such modules? Are the modules part of HTML5 and other web standards?
Regards,
On Tue, Aug 24, 2010 at 2:17 PM, Simon Fraser <simon.fraser@apple.com> wrote:
I'll be the first to ask this question: what do you need to do that you can do with existing WebKit APIs, and existing web technology?
With video, you could use http streaming to deliver custom content, and make sure of accelerated compositing to ensure that you can efficiently layer HTML content on top of video.
If your platform does not have support for these, then the "right" way to address this is to add support for these missing pieces, rather than hacking at WebCore internals.
Simon
On Aug 24, 2010, at 12:31 PM, Chinmaya Sn wrote:
The current module I have implemented works closely with RenderingEngine/GraphicsContext and HTML5 video player, which tries to deliver some special interactive Apps (In Cable World) as an overlay over HTML5 Video, the apps themselves are delivered as one of the private streams in the Video, so some work has gone inside implementation of video player itself.
In near future, I will be poking around a lot with HTML5 player. I will be implementing lot more modules like above, which will be linked to WebCore. Each of the new enhancements I provide needs to be use WebCore and should be accessible to HTML page author. So I will be drilling some holes to expose these modules as a finite set of JavaScript objects.
-- Chinmaya
On Tue, Aug 24, 2010 at 1:23 PM, Peter Kasting <pkasting@google.com> wrote:
On Tue, Aug 24, 2010 at 12:21 PM, Chinmaya Sn <chinmaya@gmail.com> wrote:
I have special case in my hand; currently I maintain a custom branch of WebKit, I already have implemented a module which sits closely with WebCore and it works just fine. One of my goals is to deliver these changes back to community and even may be back to WebKit repository. In near future I will be implementing at least 2-3 such modules, which work closely with WebCore and JavaScriptCore but they may not have to anything to do HTML browser engine as such.
Why don't you say more about what you're trying to do. It's hard to answer in the abstract. PK
-- Chinmaya
I am driving this as as future proof solution. Currently I'll be performing these changes only in my own branch.
Is your branch available somewhere? Are your patched made public already? -- Ariya Hidayat http://www.linkedin.com/in/ariyahidayat
Given your description, I'm not sure this functionality is appropriate for WebKit. We are generally reluctant to take feature patches for features that are experimental or of niche interest - we prefer to focus on technologies that are part of the standards-based Web technology stack, that are likely to become Web standards, or that are valuable general-purpose complements to Web standards. It sounds like the feature you are talking about does not fit this template very well currently, though it may in the future if it does get on track to become a Web standard. Regards, Maciej On Aug 24, 2010, at 2:26 PM, Chinmaya Sn wrote:
Let me put it this way, I am working on a new standard, which leverages some of HTML5 standards but tries to extend them (not enhance) to answer some of the Cable industry challenges.
I started by analysing WebKit layer, it has very strong assumption of layering browser-engine, and mostly has APIs which helps you build a html browser, why not, WebKit is a browser-engine.
In my first case, of rendering a special kind of "app" on top of HTML5 video; these apps don't speak html/javascript, they speak primitives such as drawRectangle, drawLine etc. and has own events and processing functions (its a language in itself) which needs to be translated into either C++ or HTML/JavaScript.
My primary requirements is to add new modules which represent new standards which work in conjunction with HTML5 (very closely) without any changes inside WebCore.
Today WebKit would not gain anything, this is new standard work in progress. Tomorrow things might change, and if someone says I want this Cable specific feature, one could easily tell 'hey build WebKit with this flag and you will get that feature for free', that is my motto.
I am driving this as as future proof solution. Currently I'll be performing these changes only in my own branch.
Makes sense?
On Tue, Aug 24, 2010 at 2:09 PM, Ariya Hidayat <ariya.hidayat@gmail.com> wrote:
I guess you also need to supply the justification: what would WebKit gain from such modules? Are the modules part of HTML5 and other web standards?
Regards,
On Tue, Aug 24, 2010 at 2:17 PM, Simon Fraser <simon.fraser@apple.com> wrote:
I'll be the first to ask this question: what do you need to do that you can do with existing WebKit APIs, and existing web technology?
With video, you could use http streaming to deliver custom content, and make sure of accelerated compositing to ensure that you can efficiently layer HTML content on top of video.
If your platform does not have support for these, then the "right" way to address this is to add support for these missing pieces, rather than hacking at WebCore internals.
Simon
On Aug 24, 2010, at 12:31 PM, Chinmaya Sn wrote:
The current module I have implemented works closely with RenderingEngine/GraphicsContext and HTML5 video player, which tries to deliver some special interactive Apps (In Cable World) as an overlay over HTML5 Video, the apps themselves are delivered as one of the private streams in the Video, so some work has gone inside implementation of video player itself.
In near future, I will be poking around a lot with HTML5 player. I will be implementing lot more modules like above, which will be linked to WebCore. Each of the new enhancements I provide needs to be use WebCore and should be accessible to HTML page author. So I will be drilling some holes to expose these modules as a finite set of JavaScript objects.
-- Chinmaya
On Tue, Aug 24, 2010 at 1:23 PM, Peter Kasting <pkasting@google.com> wrote:
On Tue, Aug 24, 2010 at 12:21 PM, Chinmaya Sn <chinmaya@gmail.com> wrote:
I have special case in my hand; currently I maintain a custom branch of WebKit, I already have implemented a module which sits closely with WebCore and it works just fine. One of my goals is to deliver these changes back to community and even may be back to WebKit repository. In near future I will be implementing at least 2-3 such modules, which work closely with WebCore and JavaScriptCore but they may not have to anything to do HTML browser engine as such.
Why don't you say more about what you're trying to do. It's hard to answer in the abstract. PK
-- Chinmaya _______________________________________________ webkit-dev mailing list webkit-dev@lists.webkit.org http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev
Thanks All. I think I am getting the general idea of what can get into to WebKit and how things fit. Right now both the standard and implementation are WIP, spec is intended to be a Web standard. At this point, neither the standard nor the implementation are public. My primary goal was to keep my changes around the WebKits coding and development rules, such as: I am already using WTF library extensively to keep the code compatible with WebKit. In future, if I can convince you folks to take these changes into WebKit it will be lot easier. What this means to me today, is just enforcing WebKit's disciplines. If I can't get these changes into WebKit then may be I need to fork as CableKit or something :) May be I pushed the button little early, I should wait till 108th minute. cheeers Chinmaya On Tue, Aug 24, 2010 at 3:39 PM, Maciej Stachowiak <mjs@apple.com> wrote:
Given your description, I'm not sure this functionality is appropriate for WebKit. We are generally reluctant to take feature patches for features that are experimental or of niche interest - we prefer to focus on technologies that are part of the standards-based Web technology stack, that are likely to become Web standards, or that are valuable general-purpose complements to Web standards.
It sounds like the feature you are talking about does not fit this template very well currently, though it may in the future if it does get on track to become a Web standard.
Regards, Maciej
On Aug 24, 2010, at 2:26 PM, Chinmaya Sn wrote:
Let me put it this way, I am working on a new standard, which leverages some of HTML5 standards but tries to extend them (not enhance) to answer some of the Cable industry challenges.
I started by analysing WebKit layer, it has very strong assumption of layering browser-engine, and mostly has APIs which helps you build a html browser, why not, WebKit is a browser-engine.
In my first case, of rendering a special kind of "app" on top of HTML5 video; these apps don't speak html/javascript, they speak primitives such as drawRectangle, drawLine etc. and has own events and processing functions (its a language in itself) which needs to be translated into either C++ or HTML/JavaScript.
My primary requirements is to add new modules which represent new standards which work in conjunction with HTML5 (very closely) without any changes inside WebCore.
Today WebKit would not gain anything, this is new standard work in progress. Tomorrow things might change, and if someone says I want this Cable specific feature, one could easily tell 'hey build WebKit with this flag and you will get that feature for free', that is my motto.
I am driving this as as future proof solution. Currently I'll be performing these changes only in my own branch.
Makes sense?
On Tue, Aug 24, 2010 at 2:09 PM, Ariya Hidayat <ariya.hidayat@gmail.com> wrote:
I guess you also need to supply the justification: what would WebKit gain from such modules? Are the modules part of HTML5 and other web standards?
Regards,
On Tue, Aug 24, 2010 at 2:17 PM, Simon Fraser <simon.fraser@apple.com> wrote:
I'll be the first to ask this question: what do you need to do that you can do with existing WebKit APIs, and existing web technology?
With video, you could use http streaming to deliver custom content, and make sure of accelerated compositing to ensure that you can efficiently layer HTML content on top of video.
If your platform does not have support for these, then the "right" way to address this is to add support for these missing pieces, rather than hacking at WebCore internals.
Simon
On Aug 24, 2010, at 12:31 PM, Chinmaya Sn wrote:
The current module I have implemented works closely with RenderingEngine/GraphicsContext and HTML5 video player, which tries to deliver some special interactive Apps (In Cable World) as an overlay over HTML5 Video, the apps themselves are delivered as one of the private streams in the Video, so some work has gone inside implementation of video player itself.
In near future, I will be poking around a lot with HTML5 player. I will be implementing lot more modules like above, which will be linked to WebCore. Each of the new enhancements I provide needs to be use WebCore and should be accessible to HTML page author. So I will be drilling some holes to expose these modules as a finite set of JavaScript objects.
-- Chinmaya
On Tue, Aug 24, 2010 at 1:23 PM, Peter Kasting <pkasting@google.com> wrote:
On Tue, Aug 24, 2010 at 12:21 PM, Chinmaya Sn <chinmaya@gmail.com> wrote:
I have special case in my hand; currently I maintain a custom branch of WebKit, I already have implemented a module which sits closely with WebCore and it works just fine. One of my goals is to deliver these changes back to community and even may be back to WebKit repository. In near future I will be implementing at least 2-3 such modules, which work closely with WebCore and JavaScriptCore but they may not have to anything to do HTML browser engine as such.
Why don't you say more about what you're trying to do. It's hard to answer in the abstract. PK
-- Chinmaya _______________________________________________ webkit-dev mailing list webkit-dev@lists.webkit.org http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev
-- -- chinmaya sn
Secret ports have an absolutely horrible track record of ever catching up with public WebKit. Only one has ever been successful to my knowledge (Chromium) and I'm not even sure we could call it full success yet. (They've spent 2 years attempting to fully catch up, and yet you can't build a useable binary out of webkit.org -- although that's very close!) Apple's iPhone fork has (or had, maybe this has changed) one full-time person who's job is constantly merging. I'm not sure how close to tip-of-tree they're able to stay. It's possible that you work with the most fantastic engineers WebKit will ever see. But let me caution you: if CableKit forks in secret, you're very likely to always be months if not years behind and riddled with security vulnerabilities. :) Furthermore, specs take a long time and a lot of buy-in. Spec-work done in secret is unlikely to end up ever getting the buy-in it needs to become a spec. Best of luck. -eric On Tue, Aug 24, 2010 at 3:50 PM, Chinmaya Sn <chinmaya@gmail.com> wrote:
Thanks All. I think I am getting the general idea of what can get into to WebKit and how things fit.
Right now both the standard and implementation are WIP, spec is intended to be a Web standard. At this point, neither the standard nor the implementation are public.
My primary goal was to keep my changes around the WebKits coding and development rules, such as: I am already using WTF library extensively to keep the code compatible with WebKit.
In future, if I can convince you folks to take these changes into WebKit it will be lot easier. What this means to me today, is just enforcing WebKit's disciplines. If I can't get these changes into WebKit then may be I need to fork as CableKit or something :)
May be I pushed the button little early, I should wait till 108th minute.
cheeers Chinmaya
On Tue, Aug 24, 2010 at 3:39 PM, Maciej Stachowiak <mjs@apple.com> wrote:
Given your description, I'm not sure this functionality is appropriate for WebKit. We are generally reluctant to take feature patches for features that are experimental or of niche interest - we prefer to focus on technologies that are part of the standards-based Web technology stack, that are likely to become Web standards, or that are valuable general-purpose complements to Web standards.
It sounds like the feature you are talking about does not fit this template very well currently, though it may in the future if it does get on track to become a Web standard.
Regards, Maciej
On Aug 24, 2010, at 2:26 PM, Chinmaya Sn wrote:
Let me put it this way, I am working on a new standard, which leverages some of HTML5 standards but tries to extend them (not enhance) to answer some of the Cable industry challenges.
I started by analysing WebKit layer, it has very strong assumption of layering browser-engine, and mostly has APIs which helps you build a html browser, why not, WebKit is a browser-engine.
In my first case, of rendering a special kind of "app" on top of HTML5 video; these apps don't speak html/javascript, they speak primitives such as drawRectangle, drawLine etc. and has own events and processing functions (its a language in itself) which needs to be translated into either C++ or HTML/JavaScript.
My primary requirements is to add new modules which represent new standards which work in conjunction with HTML5 (very closely) without any changes inside WebCore.
Today WebKit would not gain anything, this is new standard work in progress. Tomorrow things might change, and if someone says I want this Cable specific feature, one could easily tell 'hey build WebKit with this flag and you will get that feature for free', that is my motto.
I am driving this as as future proof solution. Currently I'll be performing these changes only in my own branch.
Makes sense?
On Tue, Aug 24, 2010 at 2:09 PM, Ariya Hidayat <ariya.hidayat@gmail.com> wrote:
I guess you also need to supply the justification: what would WebKit gain from such modules? Are the modules part of HTML5 and other web standards?
Regards,
On Tue, Aug 24, 2010 at 2:17 PM, Simon Fraser <simon.fraser@apple.com> wrote:
I'll be the first to ask this question: what do you need to do that you can do with existing WebKit APIs, and existing web technology?
With video, you could use http streaming to deliver custom content, and make sure of accelerated compositing to ensure that you can efficiently layer HTML content on top of video.
If your platform does not have support for these, then the "right" way to address this is to add support for these missing pieces, rather than hacking at WebCore internals.
Simon
On Aug 24, 2010, at 12:31 PM, Chinmaya Sn wrote:
The current module I have implemented works closely with RenderingEngine/GraphicsContext and HTML5 video player, which tries to deliver some special interactive Apps (In Cable World) as an overlay over HTML5 Video, the apps themselves are delivered as one of the private streams in the Video, so some work has gone inside implementation of video player itself.
In near future, I will be poking around a lot with HTML5 player. I will be implementing lot more modules like above, which will be linked to WebCore. Each of the new enhancements I provide needs to be use WebCore and should be accessible to HTML page author. So I will be drilling some holes to expose these modules as a finite set of JavaScript objects.
-- Chinmaya
On Tue, Aug 24, 2010 at 1:23 PM, Peter Kasting <pkasting@google.com> wrote:
On Tue, Aug 24, 2010 at 12:21 PM, Chinmaya Sn <chinmaya@gmail.com> wrote: > > I have special case in my hand; currently I maintain a custom branch > of WebKit, I already have > implemented a module which sits closely with WebCore and it works just > fine. One of my > goals is to deliver these changes back to community and even may be > back to WebKit repository. In near > future I will be implementing at least 2-3 such modules, which work > closely with WebCore and > JavaScriptCore but they may not have to anything to do HTML browser > engine as such.
Why don't you say more about what you're trying to do. It's hard to answer in the abstract. PK
-- Chinmaya _______________________________________________ webkit-dev mailing list webkit-dev@lists.webkit.org http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev
-- -- chinmaya sn _______________________________________________ webkit-dev mailing list webkit-dev@lists.webkit.org http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev
On Tue, Aug 24, 2010 at 11:50 PM, Chinmaya Sn <chinmaya@gmail.com> wrote:
Thanks All. I think I am getting the general idea of what can get into to WebKit and how things fit.
Right now both the standard and implementation are WIP, spec is intended to be a Web standard. At this point, neither the standard nor the implementation are public.
Even if you want to use your prototype implementation to inform your spec's design, I'd highly recommend bringing up your general ideas on some standards list ASAP. These lists often have a lot of smart people with a lot of varied experience. Often they'll be able to point out major flaws in your idea or other technologies you might want to look at. And, at very least, it'll give you an idea of how your final spec will be received. I'd highly suggest at least floating the general concepts around some standards lists otherwise there's a good chance your proposal will be dead on arrival. On Tue, Aug 24, 2010 at 11:59 PM, Eric Seidel <eric@webkit.org> wrote:
Secret ports have an absolutely horrible track record of ever catching up with public WebKit.
Only one has ever been successful to my knowledge (Chromium) and I'm not even sure we could call it full success yet. (They've spent 2 years attempting to fully catch up, and yet you can't build a useable binary out of webkit.org -- although that's very close!)
Apple's iPhone fork has (or had, maybe this has changed) one full-time person who's job is constantly merging. I'm not sure how close to tip-of-tree they're able to stay.
It's possible that you work with the most fantastic engineers WebKit will ever see. But let me caution you: if CableKit forks in secret, you're very likely to always be months if not years behind and riddled with security vulnerabilities. :)
Furthermore, specs take a long time and a lot of buy-in. Spec-work done in secret is unlikely to end up ever getting the buy-in it needs to become a spec.
Best of luck.
+1 J
participants (8)
-
Adam Barth
-
Ariya Hidayat
-
Chinmaya Sn
-
Eric Seidel
-
Jeremy Orlow
-
Maciej Stachowiak
-
Peter Kasting
-
Simon Fraser