Releases: ozkozturk/ytcap
Releases · ozkozturk/ytcap
Release list
v0.4.0
v0.3.0
Added
- Improved sentence-level export with a dependency-free sentence boundary engine that avoids splitting abbreviations (
Dr.,Mr.,e.g.,etc.), decimals and version numbers (3.14,v2.4.1), domains and technical names (example.com,Node.js,Next.js), and initials (J. R. R. Tolkien,U.S.). Closing quotes and brackets after terminal punctuation stay inside the sentence. - Sentence JSONL records now include
cue_coverage,timing_precision, paddedplayback_start/playback_endplayback ranges, and cue provenance fields (start_cue_index,end_cue_index,cue_count,start_char_in_first_cue,end_char_in_last_cue,boundary_engine). - Cue-internal sentence boundaries are now estimated with weighted token interpolation (word length and punctuation pause weights), with the previous character-ratio approach kept as a fallback.
- Strong cue gaps (over 0.6 s) can split unpunctuated text when the next cue starts with an uppercase letter; well punctuated continuing sentences are never split because of a gap.
Changed
- The legacy
timing_strategysentence field is now derived from the newcue_coverageandtiming_precisionfields with unchanged values (cue_exact,cue_merge,heuristic,unknown).
v0.2.0
Added
- Added
channelcommand to process all videos inside a YouTube channel target, by channel ID or URL. - Added
--ignore-no-subsflag to thechannelcommand to skip videos lacking the requested subtitle track instead of counting them as failures.
Changed
- Optimized flat playlist extraction in both
playlistandchannelcommands by calculatingplaylist_endand passing it via--playlist-endtoyt-dlp, preventing unnecessary fetching of entire large playlists/channels. - Added channel URL normalization to automatically append
/videosif a channel URL lacks a specific tab, targeting uploaded videos directly. - Enhanced
_playlist_entry_sourceto filter out non-video entries (such as nested sub-playlists or channel tabs returned byyt-dlp).
v0.1.5
v0.1.4
v0.1.3
v0.1.2
v0.1.1
Changed
- Added GitHub Actions CI and Trusted Publishing release workflows.
- Updated release documentation to use GitHub Releases, GitHub Actions, and PyPI/TestPyPI Trusted Publishing.
- Updated English subtitle selection so --lang en can use manual en-* tracks while keeping output filenames canonical.
ytcap 0.1.0
Initial public release of ytcap.\n\nHighlights:\n- Extract YouTube metadata and subtitles with yt-dlp.\n- Inspect video metadata and subtitle availability.\n- Process single videos, batch files, and playlists.\n- Export SRT/VTT subtitles to cue-level or sentence-level JSONL.\n- Publishable Python CLI package with the ytcap console command.\n\nInstall from PyPI with: pipx install ytcap