Skip to content
This repository has been archived by the owner on Jul 4, 2024. It is now read-only.

crunchy-cli v3.0.0

Compare
Choose a tag to compare
@bytedream bytedream released this 07 Aug 15:05
· 208 commits to master since this release

Version 3.0.0 is here 🥳

This version is a complete rewrite of the cli (and underlying library). Most features/commands are the same as in v2 but some removals, renamings and behavior changes took place nevertheless.
The release notes should cover most changes done but it's still recommended to take a look at the README which features examples for commands and some more detailed information about specific topics.

download command

  • Change default output format from .ts to .mp4. Due to this change, ffmpeg is required for download too (#111)
  • Embed subtitles as soft-sub if output format is .mkv, .mov or .mp4. If you want to burn-in the subtitles nevertheless, use the --force-hardsub flag

archive command

  • Add --default-subtitle flag which sets the default subtitle language which should be shown when playing the video
  • Rename -l/--language flag to -a/--audio
  • Rename --sublang flag to --subtitle
  • Remove -c/--compress flag
  • Remove --no-subtitle-optimizations flag

download and archive commands

  • Add optional ffmpeg optimizations / presets (#78)
  • Add --skip-existing flag. This skips the download of already downloaded files (#109)
  • Add interactive choosing when season number is duplicated (#100). Use the -y/--yes flag to suppress it and download everything
  • Add output which indicates that the output file gets generated
  • Add check for remaining disk space. If the calculated size of files which must be stored exceeds the remaining space on the disk a warning gets printed (#192)
  • Add retry if connection got reset by peer (#144)
  • Add label to subtitle stream (if present as soft-sub) if the subtitle was recognized as CC
  • Add progress spinner as indicator for subtitle downloads
  • Add support for old urls (which are still used in some places like the rss)
  • Downloading of direct episode urls works again (#178)
  • Remove -d/--directory flag. The directory can now be directly specified with the -o/--output command too
  • Remove --temp flag. If you want to specify the temporary directory where files are stored in before they get merged into the final output file, use the CRUNCHY_CLI_TEMP_DIR env variable
  • Remove -g/--goroutines flag. The count of (green) download threads is now fixed set to the count of your cpu cores

login command

  • Add --remove flag to remove the stored login
  • Rename --refresh-token flag to --etp-rt
  • Remove --encrypt flag
  • Remove --persistent flag. Every call to this command stores the session persistent now
  • Remove --session-id flag

search command

This command was newly added. It allows you to search through Crunchyroll, either with a series/episode url or a search term.

The search can be done in two ways:

  • By providing a url, just like you'd do to use download or archive
  • By providing a search term which then gets searched, just like the search bar on the Crunchyroll website

The search command is designed to show only the specific information you want. This is done with the -o/--output flag.
You can specify keywords in a specific pattern and they will get replaced in the output text. The required pattern for this begins with {{, then the keyword, and closes with }} (e.g. {{episode.title}}). For example, if you want to get the title of an episode, you can use Title {{episode.title}} and {{episode.title}} will be replaced with the episode title.

See the output of crunchy-cli search --help for all supported keywords and their meaning.

Other flags

Besides output formatting there are also other flags to filter the output even more.

  • --audio - audio languages to include (can be specified multiple times)
  • --search-top-results-limit - limit of search results to parse
    • --search-series-limit - limit of series to search
    • --search-movie-listing-limit - limit of movies to search
    • --search-episode-limit - limit of episodes to search
    • --search-music-limit - limit of music to search

root command

  • Add --credentials, --etp-rt and --anonymous flag to specify which credentials to use without the need to call login first
  • Add openssl as default tls backend due to Cloudflare issues (#104)
  • Add --experimental-stabilizations flag which can help to resolve issues in some situations (#178)
  • Add error notice if rate limit is detected (#195)
  • Add check for invalid configurations before executing a command
  • Remove info and update commands
  • Remove --useragent flag. In order to bypass the Cloudflare specific user agents are needed, thus setting custom ones makes little sense

Other

  • Change license from GPLv3 to MIT
  • Add aarch64/arm64 linux release binary

Thanks to all contributors which committed to this new major version @bytedream, @adracea, @hannesbraun, @hitorilabs, @stepbrobd, @Serverfrog, @ghost and everyone who made helpful bug reports or feature requests.

Full Changelog: v2.3.6...v3.0.0