This commit is contained in:
Boaz 2011-01-11 19:09:13 -08:00
Родитель aabd1f6965
Коммит 94f6d3aea6
1 изменённых файлов: 29 добавлений и 86 удалений

115
readme.md
Просмотреть файл

@ -1,90 +1,33 @@
Project brief:
PopcornJS
=============
The HTML5 <video> framework
Vision
Demos
------------
* Original Mozilla Summit Demo: http://popcornjs.org/demos/semantic_video
* Brendan Eich Demo: http://popcornjs.org/demos/brendan_eich (made with butter)
BUTTER is a tool for helping non developers generate html5 video pages that use popcorn.js.
Overview
-------------
Popcorn.js is an event system for <video>, with strong syntactic sugar for chaining <video> methods and adding events to the timeline.
Popcorn is a JavaScript Function that wraps the native <video> element and returns a Popcorn object which;
1. maintains a reference to the original HTMLVideoElement
2. provides a normalized interface to the <video> elements native methods and properties.
3. adds a special data property which contains meta data about the <video> (this is where the magic happens)
By normalizing the native methods, the framework allows developers to write chainable function executions off the returned Popcorn object.
API
-------------
We have begun API documentation here: https://gist.github.com/729213#file_popcorn_api.js
Plugin Factory
-------------
Popcorn also offers a plugin factory. Popcorn plugins are a way for developers to wrap functionality that responds to a point in a video.
Audience
* Vloggers who use wordpress or tumblr to host their video
* Vloggers who run their own websites
Goals
* Make it easier to use popcorn.js
* Generate buzz for popcorn among web video geeks who do not program
* Generate buzz for popcorn among web developers
* Make butter easy to host (fully clientside html/css/js)
User Requirements
* Video must be hosted somewhere and user must have path to it
* Video must be h264, ogg/theora, or webm
Tasks
* Develop GUI
* Video finder: An input for selecting a video file to operate on and for selecting multiple formats for fallbacks
* Timeline interface: A method of synchronizing the current popcorn data being created to a time range.
* Popcorn data type selector: A selector for which data type the current popcorn data will be: twitter, wikipedia, maps, flickr, attribution, footnotes, webpage
* Popcorn data organizer: A method for arranging the order of the popcorn data
* Page data elements: A method for adding video title, and about text to the popcorn page
* Page tempate selector: A method of choosing how that data will then be layed out in a page, according to a set of pre-defined templates.
* Output generator: A method for generating the embed code that gathers the HTML/CSS/JS created in the GUI and makes it available for download/embedding.
* Develop Templates
* Full page template
* Narrow template
* Develop Roadmap to Popcorn 1.0
* Develop Roadmap to Butter 1.0
* Blog about progress on weblog.bocoup.com
* Create online resources that CLEARLY explain what popcorn is, what stage it is in, how to use it, and how to get involved
* Housed at popcornjs.org
* Path to butter for non devs
* Path to contributing for devs
* hosted by github or by wordpress somewhere
Dependencies
* popcorn.js hitting 0.2
* access to popcornjs.org domain registration credentials
* hosting for popcornjs.org
Roadmap
-------------
We are working on the 0.3 & 1.0 Roadmaps at http://etherpad.mozilla.com:9000/popcornjs