Challenge Overview
1. Project Overview
The client of this application is a company that needs to encode/transcode many media files to the desired formats. The media files to be converted can be video content (like .mov, .avi files etc), still content (like JPEG, TIFF, GIF files etc) or audio content (mpeg 3, .au, FLAC files etc). The output of the converted files should be the same content as the input files. For instance, the video file should be converted a video file (like from .mov to .avi), but not a still content.
The content owner of the client's company will provide the media files (video content, still content, audio etc) to the system for encoding/transcoding.
The processed media files will be retrieved by the Media Traffic Associate users who can handle the media files. For example, the media traffic associate users can transform the media files to external systems.
Previously, the client does not have a custom tool for media file encoding/transcoding, and thus the client has to use the commercial tools for this business purpose. Usually, the commercial tools are used for standard codecs ONLY.
The main goal of the project is to define a modern, flexible, and extensible Java-based web application for media encoding and transcoding. This media conversion engine will provide the interface to the plug-in codecs that could be flexible enough to support more codecs if needed.
2. Contest Task Overview
2.1 Users and Help page
The assembly will provide following deliverables for: Users, Help and Contact Us Page.
All Spring controllers.
Configuration of the listed components
Converting the static HTML to JSP
Providing the spring mapping files
Writing clear deployment documentation
Error pages
Button navigation
2.2 Media Conversion Enhancements
In current code base, it's just support several codecs. We use ffmpeg in backend so it should be able to support all required codecs.
In this contest, you should make sure it could convert all required types (includes video, audio, images, etc.) correctly:
- Video Formats
- MOV
- MPEG-1
- MPEG-2
- MPEG-4
- H.264
- Container Formats
- AVI
- QuickTime (NOTE: QuickTime and MOV codec are one and the same (http://en.wikipedia.org/wiki/QuickTime_File_Format) so need not separately cover QuickTime format. QuickTime is mentioned here just for requirements sake.)
- Audio Formats
- MP3
- FLAC
- WAV
- AAC
- Still Image Formats
- JPEG
- GIF
- TIFF
You should just need to configure the properly codec plugin for these types.
The current configuration also has some bugs. It can't convert some media files correctly. I attached an example to this contest and the converted video can't be played.
To submitters: you should provide test media file for each codec.
To reviewers: you shouldn't just use the files provide in submission, you should also try to find some media files to test the conversion.
3. Submission Deliverables
Note: All files should be submitted except the jar library.
- All Source Code, Configuration Files, Build Scripts, Test Data File, DB Script, etc.
- Deployment Guide
4. UI Prototype and Architecture
http://apps.topcoder.com/wiki/pages/viewpageattachments.action?pageId=99484592
Final Submission Guidelines
N/A