crunchy-labs / crunchyroll-rs

🦀 Pure Rust implementation of the Crunchyroll API
Apache License 2.0
63 stars 14 forks source link

Update dash-mpd requirement from 0.6 to 0.7 #6

Closed dependabot[bot] closed 1 year ago

dependabot[bot] commented 1 year ago

Updates the requirements on dash-mpd to permit the latest version.

Changelog

Sourced from dash-mpd's changelog.

[0.7.0] - 2023-01-28

Changed

  • Downloading: switched to an asynchronous API. This will require code changes for clients. Functions download and download_to are now async, and you will need to call them from an async context and use .await (see the example download_bbc.rs for some sample code). If you are passing a reqwest client to DashDownloader (using with_http_client), you should now use a standard Client built using reqwest::Client::builder(), instead of using reqwest::blocking::Client::builder() as previously (see the example download_proxy.rs for some sample code). Clients will need to add an explicit dependency on the tokio crate (which was already pulled in via the reqwest crate, but implicitly).

[0.6.4] - 2023-01-14

New

  • Preliminary support for fetching subtitles (see function fetch_subtitles on DashDownloader). There is support for subtitles in WebVTT format (an AdaptationSet node with a @mimeType attribute of "text/vtt"), TTML (@mimeType of "application/ttml+xml") and SAMI (@mimeType of "application/x-sami"). There is also some support for WVTT (binary WebVTT in a wvtt box in fragmented MP4 container, as specified by ISO/IEC 14496-30:2014) and for STPP format (TTML in a fragmented MP4 container). WVTT subtitles will be converted to SRT format using the MP4Box commandline application, if it is available in the PATH.

Changed

  • Update dependency quick-xml to v0.27
  • Simplify serialization example using new version of the quick-xml crate.

[0.6.3] - 2022-12-10

Changed

  • Fix: xs:datetime fields such as MPD@publishTime and MPD@availabilityStartTime without a timezone are now parsed correctly instead of triggering an error. Issue seen with YouTube DASH manifests, reported by erg43hergeg.

[0.6.2] - 2022-11-27

Changed

  • Downloading: implement support for SegmentURL@mediaRange and Initialization@range using HTTP byte range requests. This allows us to download crazy DASH manifests that misuse Twitter's CDN by prepending dummy PNG headers to media segments (https://twitter.com/David3141593/status/1587978423120666625).
  • Fixed default value for SegmentTemplate@startNumber when downloading (1 instead of 0).
  • Fix: an AdaptationSet may contain a SegmentList.

New

  • We now check that the HTTP content-type of downloaded segments corresponds to audio or video content. New function without_content_type_checks on DashDownloader to disable these checks (may be necessary with poorly configured HTTP servers).
  • Added functions keep_video and keep_audio on DashDownloader to retain video and audio streams on disk after muxing.
  • Added attribute Representation@mediaStreamStructureId.
  • Added attribute SegmentTemplate@eptDelta.

... (truncated)

Commits
  • 0aad5d3 Prepare for v0.7.0 release
  • 91cff3c Update Github CI workflows to maintained actions
  • 49b504b Move to rt-multi-thread feature on tokio crate
  • c4927e4 Move to an async API for download support (breaking change).
  • e1a9b30 Prepare for 0.6.4 release
  • 648e67c Documentation for preliminary subtitle support
  • f201628 Improve support for downloading subtitles. If subtitles are downloaded in WVTT
  • 71a41b7 clippy/format
  • 5224115 Use the fs-err crate for better error messages than std::fs
  • c16da91 Allow for SAMI subtitles
  • Additional commits viewable in compare view


Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)