User:Bawolff/GSoC2010

Identity

 * Name: Brian Wolff
 * Email: special:emailuser/bawolff or bawolff+gsoc At sign.svg gmail dot com
 * Project title: Improve media metadata support in mediawiki

Contact/working info

 * Timezone: MST (UTC -7)
 * IRC or IM networks/handle(s): bawolff (on #wikinews, #wikinews-en and #mediawiki on freenode)

Project summary
Currently mediawiki only supports displaying jpeg exif metadata on image pages. Some other metadata can also be returned using the api   however this is not that useful to the average viewer since it is not displayed. I propose as my project (should I be accepted and all that) to improve mediawiki's support for metadata. This would include supporting metadata for more media formats, and displaying the metadata on image pages where t is useful. Also having an on-wiki method of Considering Wikimedias general stance on copyright/Free-ness, I think being able to view and edit metadata would be a benefit, as being able to put the licensing info into the image, as opposed to the image description page, would stop the metadata from being seperated from the image once they are downloaded and passed around.

About you
I am currently a first year computer science student. I became involved with the wikimedia world first as a contributor to Wikinews several years ago. I also have commit access to mediawiki, and have made some patches, but nothing major as of yet. I would like to do Google summer of code as i think it would be a great way to become involved in mediawiki development, as well as an excellent experience to learn.

Deliverables
[I'm still in the process of writing this part]

Required deliverables

 * Display the "comment" meta-data for ogg files similar to how exif is displayed
 * Display (common) XMP and IPTC metadata for png and jpeg images
 * Display metadata from svg images (at least the type of metadata that inkscape encodes)
 * Have a method of on-wiki editing of some metadata fields that already exist in the image (aka Description and license should be editable, but some more technical fields like f-number probably should not)

If time permits

 * Display metadata for less common formats (pdf, djvu, tiff).
 * More complete support for editing the metadata, as well as creating metadata fields that don't pre-exist in the image.

Project schedule

 * Need to improve formatMetadata to make it more flexible (per comments currently in code). Specifically need to be able to output metadata that only references part of a file (like how an audio stream and a video stream in an ogg file could have different metadata, or perhaps a pdf file having different metadata for different pages)
 * add support to oggHandler for displaying ogg comment metadata which is currently available, but not displayed
 * parse and display svg metadata.
 * Need to parse XMP/IPTC data (the hard part)
 * Have the ability to edit metadata

Participation
I plan to hang around #mediawiki and wikitech-l, as those seem to be ideal places to ask for help, and learn from others. I expect to talk with my mentor quite regularly, and ask for advice when needed, as well as receive comments on code review.

Past open source experience
I've made some patches to mediawiki, and I also maintain several javascript tools on wikinews, however beyond that i don't have much experiance.

Any other info
This project proposal is still in the process of being written - its not done yet. However if you see this, please feel free to give feedback. - Ideas for how I think this should be done (at the moment): 
 * Editing metadata should be implemented as a special page that allows you to adjust fields. Once you hit save is equivalent to uploading a new image (similar to how reverting an image is like uploading a new image) but perhaps with a different action type in the upload log.
 * The metadata for an ogg file would look mostly like what the exif data does.