You would use Universal Email to upload the videos, but you would have to have your own way of displaying the videos on the site. You could use DataAssist to do the search if you inserted the relevant information into the database. To get the comments to work, you would want to use DataAssist to store the comments inserted and which video it was inserted for. Then use a recordset and repeating region to display the comments posted for each video.
You may want to build a backend that will insert the videos and is restricted, so you might want to use SecurityAssist for that.