3 [[!template id=gitbranch branch=schmonz/fancypodcast author="[[schmonz]]"]]
6 Nothing new since 2013/07/21 [[merge|done]] to `master`.
11 Feature |iTunes RSS|iTunes Atom|Downcast RSS|Downcast Atom
13 Feed title |(./) |(./) |(./) |(./)
14 Feed publisher | | | |
15 Feed "category" | | | |
16 Feed date |(./) |(./) |(./) |(./)
17 Feed description |(./) |(./) |(./) |
19 Episode title |(./) |(./) |(./) |(./)
20 Episode date |(./) |(./) |(./) |(./)
21 Episode duration | | | |
22 Episode author | | | |
23 Episode description|(./) |(./) |(./) |
24 Episode enclosure |(./) |(./) |(./) |(./)
27 ## Future improvements
29 ### Embedded audio/video player in browsers
31 * For a given enclosure, depending on autodetected MIME:
32 * `audio/*` -> `<audio>`
33 * `video/*` -> `<video>`
34 * For a given template:
35 * `page.tmpl` -> eagerly fetch media
36 * `inlinepage.tmpl` -> fetch just enough to display durations
37 * Only for HTML5 sites, or also okay for XHTML?
38 * Does this work well enough in enough browsers, or do we need a
39 JavaScript player to fill in some gaps?
41 ### iTunes fancy podcasting
43 * [iTunes-specific tags](https://www.apple.com/itunes/podcasts/specs.html)
45 * Can we always include them in RSS feeds, or would that break
47 * Is it even valid to include them in Atom feeds? If so, do
48 Atom podcasts look any better in podcatchers?
49 * Avoid adding a third kind of feed (`itunesrss`), or options
50 to the existing `rss` and `atom` feeds, unless we have to.
51 * Notable tags for feeds:
54 * `itunes:summary` (same as `description`)
55 * `itunes:owner` (includes `itunes:name` and `itunes:email`)
56 * `itunes:image href=''`
58 * `itunes:category text=''` (can contain subcategories)
60 * Notable tags for entries:
62 * [[!cpan Audio::TagLib]] might be fastest, if present and applicable
63 * [ffprobe](http://ffmpeg.org/ffprobe.html) is reasonably fast
64 * [mediainfo](http://mediainfo.sourceforge.net/) is way slower
65 * Cache computed durations as pagestate
67 Practice](https://github.com/gpodder/podcast-feed-best-practice/blob/master/podcast-feed-best-practice.md)
68 from the gPodder folks
70 ### Fancy podcast aggregating
72 * Write tests comparing a fancy podcast (HTML and feeds) against
73 the same podcast aggregated and republished, then make them pass
74 via changes to `aggregatepost.impl` and [[plugins/aggregate]].
78 * Optionally specify the enclosure's:
79 * MIME type, in case `File::MimeInfo` guesses wrong.
80 * Duration, in case `ffprobe` guesses wrong.
81 * Optionally specify enclosures outside the wiki:
82 * Some people don't want to store big unchanging files in the VCS.
83 * Other people like [podcasting found media](http://huffduffer.com/about).
84 * We'd have to download the file just to compute some metadata
85 about it, and then somehow not frequently re-download it.
86 * Configurably generate additional subscription links (such as
87 iTunes) alongside the RSS/Atom ones in [[plugins/inline]].
88 * Support Apple's "enhanced podcasts" (if they're still relevant).