yb.podcast.publish¶
Assemble a publishable podcast episode from a media file.
Produces the per-episode asset bundle in an output directory: an MP3 (with
ID3 chapters embedded), show-notes text, a PSC chapter sidecar, a chapters
JSON, and optionally a cover-over-audio video for video platforms. Delivery to
a host/Spotify is via RSS (yb.podcast.feed) — this prepares the assets
and a ready-to-use yb.podcast.feed.EpisodeFeedItem stub.
Functions
|
Build a podcast episode bundle from |
Classes
|
Paths to the generated episode assets. |
- class yb.podcast.publish.PodcastEpisode(audio, show_notes, chapters_psc=None, chapters_json=None, cover_video=None, content=None, extras=<factory>)[source]¶
Bases:
objectPaths to the generated episode assets.
- yb.podcast.publish.prepare_podcast_episode(media, output_dir, *, content=None, audio=None, cover_image=None, make_cover_video=False, ken_burns=False, embed_chapters=True, language='English', brand=None, extra_context=None, audio_bitrate='192k')[source]¶
Build a podcast episode bundle from
mediaintooutput_dir.- Parameters:
output_dir (
str|Path) – Directory to write the episode assets into.content (
PublicationContent|None) – PrecomputedPublicationContent; built viayb.content.prepare_content()when omitted.audio (
str|Path|None) – Explicit episode audio. When omitted,mediais used if it is audio, else its audio track is extracted to MP3.cover_image (
str|Path|None) – Cover art (required formake_cover_video).make_cover_video (
bool) – Also render a cover-over-audio mp4 (e.g. for YouTube).ken_burns (
bool) – Apply a Ken Burns pan/zoom to the cover video.embed_chapters (
bool) – Embed ID3 chapter frames into the episode MP3.audio_bitrate (
str) – Bitrate for extracted MP3 audio.
- Return type:
- Returns:
A
PodcastEpisodewith the asset paths.