pull/331/head
Dave Jones 2022-01-20 10:37:36 -06:00
rodzic 4d14aa91e7
commit 1f88b835ae
1 zmienionych plików z 19 dodań i 17 usunięć

Wyświetl plik

@ -757,26 +757,13 @@ Example of specifying four different image sizes:
## Live Item
`<podcast:liveItem>`<br><br>
The `liveItem` tag is used for a feed to deliver a live audio or video stream to podcast apps. It takes the same format as a standard `<item>` episode tag, and all tags that are
allowed inside of a normal `<item>` tag are also allowed as children of `<podcast:liveItem>`.
The [`<podcast:alternateEnclosure>`](#alternate-enclosure) tag is highly encouraged over the use of `<enclosure>` since it gives the broadest coverage of possible stream types and is
much more explicit in it's definition of what transport protocol and media codecs are being used. If [`<podcast:alternateEnclosure>`](#alternate-enclosure) cannot be used, `<enclosure>` can be used as a fallback,
however feed owners must limit the stream to using only the two most widely supported protocols (mp3 and mp4/h.264) to ensure compatibility with the broadest number of apps on various
platforms. Choosing a streaming format for `<enclosure>` outside of this narrow list will exclude many apps from playing your content.
The `<podcast:contentLink>` tag is also highly encouraged to ensure that listeners have a fallback option in case their chosen app cannot play the given content stream directly. Podcasters
who live stream to multiple platforms at once can also use the `<podcast:contentLink>` tag to provide links to those various platforms.
The `start` and `end` attributes denote when the live stream "should" start and end. But, real life dictates that those times might not be adhered to. Apps are therefore encouraged
not to rely solely on those times as anything more than an approximation. The canonical way to know if a stream has started is with the `status` attribute. If `status` is "live" then
the stream has started.
allowed inside of a normal `<item>` tag are also allowed as children of `<podcast:liveItem>`. Note that "allowed" is not the same as "supported". So, just like a normal `<item>`
you cannot depend on all apps to support all tags within `<podcast:liveItem>`, especially when the context of the tag is not obvious. For instance, including an `<itunes:duration>`
tag in a live item is probably a waste of time since apps will not know what to do with that value in the context of live media.
This tag will also make use of the [podping](https://podping.cloud) notification network. A podping notification SHOULD be sent out by the host when the live stream starts, to let
apps know.
The function of `<guid>` within a live item tag is the same as it is within a regular item. If the `<guid>` of a `<podcast:liveItem>` changes, it MUST be considered a new stream by
podcast apps.
### Parent
&nbsp; `<channel>`
@ -785,14 +772,29 @@ podcast apps.
### Node Value
All tags that are valid inside of a standard `<item>` tag are also valid here. The [`<podcast:alternateEnclosure>`](#alternate-enclosure) tag has robust support for specifying streaming content
in a myriad of ways and is highly encouraged over the use of `<enclosure>` where possible. A `<podcast:contentLink>` tag is also highly encouraged as a fallback for apps to display when
in a myriad of ways and is highly encouraged over the use of `<enclosure>` where possible. A `<podcast:contentLink>` tag is also required to be present as a fallback for apps to display/launch when
they cannot play the content directly.
The [`<podcast:alternateEnclosure>`](#alternate-enclosure) tag is highly encouraged over the use of `<enclosure>` since it gives the broadest coverage of possible stream types and is
much more explicit in it's definition of what transport protocol and media codecs are being used. If [`<podcast:alternateEnclosure>`](#alternate-enclosure) cannot be used, `<enclosure>` can be used as a fallback,
however feed owners must limit the stream to using only the two most widely supported protocols (mp3 and mp4/h.264) to ensure compatibility with the broadest number of apps on various
platforms. Choosing a streaming format for `<enclosure>` outside of this narrow list will exclude many apps from playing your content.
The [`<podcast:contentLink>`](#content-link) tag is also required to ensure that listeners have a fallback option in case their chosen app cannot play the given content stream directly. Podcasters
who live stream to multiple platforms at once can also use the `<podcast:contentLink>` tag to provide links to those various platforms.
The function of `<guid>` within a live item tag is the same as it is within a regular item. If the `<guid>` of a `<podcast:liveItem>` changes, it MUST be considered a new stream by
podcast apps.
### Attributes
- **status** (required) A string that must be one of `pending`, `live` or `ended`.
- **start** (required) A string representing an ISO8601 timestamp that denotes the time when the stream is intended to start.
- **end** (required) A string representing an ISO8601 timestamp that denotes the time when the stream is intended to end.
The `start` and `end` attributes denote when the live stream "should" start and end. But, real life dictates that those times might not be adhered to. Apps are therefore encouraged
not to rely solely on those times as anything more than an approximation. The canonical way to know if a stream has started is with the `status` attribute. If `status` is "live" then
the stream has started.
### Examples
A complete example:
```xml