Derivatives API for Media ecosystem (D7)

We encourage users to post events happening in the community to the community events group on https://www.drupal.org.
You are viewing a wiki page. You are welcome to join the group and then edit it. Be bold!

Project information

Project page on drupal.org: http://drupal.org/sandbox/slashrsm/1111700
Student's blog about project: http://janezurevc.name/tags/summer-code-2011
Student: Janez Urevc (slashrsm)
Mentor: Kevin Reynen (kreynen)

Current status

Description

The goal of this project is to implement Derivates API for Media Library (Media, Styles, ...) ecosystem in Drupal 7. This API will provide a flexible, extensible and abstract API to implement derivation engines for different types of files.

With evolving of HTML5 and it’s video functionalities we face formats problem. Currently we do not have de-facto stadard, that would satisfy every web browser, mobile device, … There is only one solution at the moment, if we want to support every major browser. We must provide our video in different formats. Currently we cannot do that, since Media ecosystem in D7 does not provide any way to distribute one instance of video content in different formats. It would be really usefull to have a possibility to do that.

Video is not the only type of content that could be converted. We have audio, that could be distributed in different formats, qualities, … Some day we could also have possibility to upload a document in any format, and system would easily distribute it in pdf, odt, rtf, doc, … We could do this almost for any file type, that can exist in different formats and we have possibility to convert it.

Derivates API would provide framework, that would provide standard Media and Styles integration for that kind of systems. This is a D7 project.

The following features will be available when project is completed:

  • unified and standardised wrapper for back end engines,
  • ability to process various types of media files (audio, video, ...) through 3rd party providers,
  • ability to create custom derivation presets,
  • ability to choose automatically extracted thumbnails for any media type.

Project schedule

This section should contain a schedule for your project, including milestones. Work with your mentors to refine this. Split milestones into drupal.org issues, and link to those. Cross items off your list as you get them completed.

  • Before May 23rd: Community bonding period

    • Create d.o. sandbox and git repo
    • Fax my Student Foreign Certification and Proof of Enrollment to Google
    • Meetings with mentor and other people from the Drupal community (expecially those heavily involved in Media)
    • Research of Media and Styles code and infrastructure
    • Research of similar modules from D6
    • Refine scope and timeline
    • Launch blog where I can post news about this project; publish it on Drupal Planet
    • Get familiar with test driven development (simpletest)
  • May 23rd - May 29th

    • Research of Media, Styles and similar modules is done
  • May 29th - June 15th

    • Final scope and API architecture is defined
    • API planning: research of possibilities
    • research of APIs in Drupal
    • guidelines for API developing (blogs, sessions recordings, books, ... ?)
    • See: http://www.archive.org/details/aphorisms_of_api_design
  • June 15th - July 15th

    • Initial implementation
    • most of features roughly implemented
    • midterm submission
  • July 15 - August 15

    • Implementation
    • Polishing, bug fixing, tests, ...
  • August 15 - August 22

    • Final report
    • Presentation at Drupalcon London?

Media

Group organizers

Group categories

Group notifications

This group offers an RSS feed. Or subscribe to these personalized, sitewide feeds:

Hot content this week