Hello,
Your described needs can be answered by using Kaltura MediaSpace [KMS]. You can see a fully functional demo of KMS here:
http://portal.mediaspace.kaltura.com/
Note that KMS is neither open nor free software, if you are interested in purchasing it, please contact the sales team.
Alternatively, you can use the Kaltura API to create your own portal. All functionality seen in KMC is achieved by making API calls, making it possible to write third party applications that achieve the same functionality or a subset of it.
For technical resources on using the API, as well as code samples, see https://developer.kaltura.com.