254
edits
(→Background: Fix one blah) |
(→Background: Frameworks) |
||
| Line 19: | Line 19: | ||
In theory, given a muxing rule, you can put any video codec and any captiong format in any container, but in practice, video codec tends to have a conventional native container, so the video codec dictates the container and then different containers have different conventional timed text formats and the timed text formats might not have muxing rules for non-native containers. | In theory, given a muxing rule, you can put any video codec and any captiong format in any container, but in practice, video codec tends to have a conventional native container, so the video codec dictates the container and then different containers have different conventional timed text formats and the timed text formats might not have muxing rules for non-native containers. | ||
Gecko will embed an Ogg-specific playback framework called liboggplay. It only supports the Ogg container format. | |||
The Flash plug-in effectively provides a specialized playback framework for .flv and .mp4 containers. | |||
Typically, desktop environments come with a more general timed media playback framework. These frameworks can load extension libraries that enable support for various containers and codecs. | |||
{| summary="Map of video technology for the web" border="1" | {| summary="Map of video technology for the web" border="1" | ||
! Desktop | |||
! Framework | ! Framework | ||
|- | |||
| Windows | |||
| DirectShow | |||
|- | |||
| Mac OS X | |||
| QuickTime | |||
|- | |||
| Gnome | |||
| GStreamer | |||
|- | |||
| KDE | |||
| Phonon | |||
|} | |||
Example: Ogg and MP4 are containers, whereas Theora and H.264 are codecs. Gstreamer and QuickTime are both timed media frameworks, which each can play various container/codec combinations. Ogg, Theora and CMML are a natural match. MP4, H.264 and 3GPP TT are a natural match. While technically, you 'could' define a way to put 3GPP TT inside Ogg, the disadvantage to doing this is that the result might not interoperate well with authoring tools and other player due to the combination being unusual. | |||
{| summary="Map of video technology for the web" border="1" | |||
! Container | ! Container | ||
! Codecs | ! Codecs | ||
| Line 28: | Line 53: | ||
! Natural captioning format | ! Natural captioning format | ||
|- | |- | ||
| Ogg | | Ogg | ||
| | | | ||
| Line 36: | Line 60: | ||
| CMML | | CMML | ||
|- | |- | ||
| MP4 | | MP4 | ||
| H.264 | | H.264 | ||
| Line 42: | Line 65: | ||
| 3GPP Timed Text | | 3GPP Timed Text | ||
|- | |- | ||
| .flv | | .flv | ||
| | | | ||
| | | | ||
| | | | ||
|- | |- | ||
| | | WMV | ||
| WMV9/VC-1 | |||
| | |||
| | | | ||
| | | | ||
|} | |} | ||
Note: Subrip is external to the video container and can be used with any format. The main known disadvantage of this is blah, blah. It would make sense to use this if blah. | Note: Subrip is external to the video container and can be used with any format. The main known disadvantage of this is blah, blah. It would make sense to use this if blah. | ||
edits