Skip to content

Import media and podcast sources

Use file import for media you already have, episode import for a Xiaoyuzhou conversation, and subscriptions for a series. Metadata, downloaded audio, and completed transcripts are different states.

Source Entry First step
Local audio/video New Item or exec transcribe Establish source/process local media
Xiaoyuzhou episode App import or exec import Fetch metadata, optionally audio
Xiaoyuzhou podcast Add Subscription / subscriptions add Resolve feed and episodes
Apple Podcasts show Add Subscription Resolve the show's feed
RSS Add Subscription / subscriptions add Read feed entries

Exec import takes a Xiaoyuzhou episode URL, not an Apple Podcasts show or RSS URL. A file extension does not prove there is a decodable audio track; working FFmpeg is required.

Local file

Choose New Item, file, and group, then local processing. CLI:

atot exec transcribe path/to/recording.m4a --language zh --local-only --json
atot exec transcribe path/to/recording.mp4 --job-dir path/to/work-dir \
  --language zh --local-only --json

Use different work directories for different sources. Default managed workflows associate media/work with episode IDs.

Xiaoyuzhou episode

atot exec import "https://www.xiaoyuzhoufm.com/episode/<episode-id>" \
  --group-name Research --language zh --local-only --json

CLI import downloads/transcribes by default; local-only skips cloud summaries. Metadata/audio without ASR:

atot exec import "https://www.xiaoyuzhoufm.com/episode/<episode-id>" --data-only --json

Metadata without audio download:

atot exec import "https://www.xiaoyuzhoufm.com/episode/<episode-id>" \
  --data-only --no-download --json

Missing audio prevents ASR. Group-name is logical grouping; folder-name/audio-name change generated names. Force redownloads/replaces imported media deliberately.

Subscribe to a series

Use a feed, Xiaoyuzhou podcast, or Apple Podcasts show in the subscription panel:

atot exec subscriptions add "https://example.org/podcast/rss.xml" \
  --group-name Research --limit 10 --json
atot exec subscriptions list --json

Replace the URL. Initial CLI import defaults to 10 metadata entries, not processing an entire series. See queues.

Verify the import

Open Overview for title, show, source URL, duration, and group; check audio readiness. Use returned paths and library status rather than guessing directories.

Separate source resolution/download failures from ASR. Providers can remove content or change access. Keep the URL/error, and avoid forcing a full reimport for every failure.

Transcription → · Import troubleshooting →