I want to build a web application that lets users upload documents, videos, images, music, and then give them an ability to search them. Thin
Text documents can be tagged using this keyphrase extraction algorithm/package. http://www.nzdl.org/Kea/ Currently it supports limited type of documents (Agricultural and medical I guess) but you can train it according to your requirements.
I'm not sure how would the image/video part work out, unless you're doing very accurate object detection (which has it's own shortcomings). How are you planning to do it ?