Difference between revisions of "Hypertwins Community:Plans/media hosting"
(saving work) |
(links) |
||
(One intermediate revision by the same user not shown) | |||
Line 1: | Line 1: | ||
The key components of a media hosting service like YouTube are: | ==Components== | ||
* ability to upload very large media files (multiple gigabytes) | The key components of a media hosting service (MHS) like YouTube are: | ||
* ability to play media files in a web browser | * ability to upload very large media files (multiple gigabytes) | ||
* ability to play media files in a web browser | |||
Almost as important: | Almost as important: | ||
Line 11: | Line 12: | ||
* allow some kind of collaborative contribution to media file annotations | * allow some kind of collaborative contribution to media file annotations | ||
** in YouTube, this takes the form of comments (for anyone who doesn't "own" the video), but there are certainly other models which could be followed | ** in YouTube, this takes the form of comments (for anyone who doesn't "own" the video), but there are certainly other models which could be followed | ||
==File Uploading== | |||
The key idea would be to use OwnCloud to handle the uploading of files. Since we're also wanting to allow people to use OwnCloud for its actual intended purpose, i.e. cloud storage, we need some way to inform the MHS of which files are intended to be hosted as media ("published", i.e. made available in a web-based player and possibly downloadable) and which are private. | |||
This could be done in any of the following ways: | |||
* Designate the MHS as a "user" on OwnCloud, and "share" files (this is supported by ownCloud) in order to publish them on the MHS. | |||
* Designate a specific folder in each user's OwnCloud file area for publishing. | |||
* Designate a particular OwnCloud server for the MHS -- all files shared with that server become "published". | |||
In each of these scenarios, there is the question of whether the MHS would serve them from ownCloud's file repository (where users might modify, move, rename, or delete them) or move them elsewhere to serve them. There are arguments on either side, so I'll leave that decision for later. | |||
==Serving Media== | |||
There are at least two open-source JavaScript libraries ([https://github.com/videojs/video.js/blob/stable/docs/guides/options.md video.js], Kaltura) for serving video via HTML5. I've tried one, which is very easy to use, and plan to experiment with the other one soon. | |||
There are also numerous open-source JavaScript audio players, one of which ([https://kolber.github.io/audiojs/ audiojs]) I'm experimenting with. So far I haven't been able to get it to work, but technically this is less challenging. |
Latest revision as of 01:48, 18 December 2014
Components
The key components of a media hosting service (MHS) like YouTube are:
- ability to upload very large media files (multiple gigabytes)
- ability to play media files in a web browser
Almost as important:
- ability to maintain (edit, display) information about each media file
- ability to search media files by data
Any modern media service that we would expect people to actually use should also:
- allow grouping/ordering of files into playlists
- allow some kind of collaborative contribution to media file annotations
- in YouTube, this takes the form of comments (for anyone who doesn't "own" the video), but there are certainly other models which could be followed
File Uploading
The key idea would be to use OwnCloud to handle the uploading of files. Since we're also wanting to allow people to use OwnCloud for its actual intended purpose, i.e. cloud storage, we need some way to inform the MHS of which files are intended to be hosted as media ("published", i.e. made available in a web-based player and possibly downloadable) and which are private.
This could be done in any of the following ways:
- Designate the MHS as a "user" on OwnCloud, and "share" files (this is supported by ownCloud) in order to publish them on the MHS.
- Designate a specific folder in each user's OwnCloud file area for publishing.
- Designate a particular OwnCloud server for the MHS -- all files shared with that server become "published".
In each of these scenarios, there is the question of whether the MHS would serve them from ownCloud's file repository (where users might modify, move, rename, or delete them) or move them elsewhere to serve them. There are arguments on either side, so I'll leave that decision for later.
Serving Media
There are at least two open-source JavaScript libraries (video.js, Kaltura) for serving video via HTML5. I've tried one, which is very easy to use, and plan to experiment with the other one soon.
There are also numerous open-source JavaScript audio players, one of which (audiojs) I'm experimenting with. So far I haven't been able to get it to work, but technically this is less challenging.