docs: update README

This commit is contained in:
ThetaDev 2025-01-16 03:27:06 +01:00
parent dee8a99e7a
commit 0432477451
No known key found for this signature in database
GPG key ID: E319D3C5148D65B6
15 changed files with 184 additions and 47 deletions

View file

@ -225,7 +225,7 @@ struct OauthCodeRequest {
/// The login process works as follows:
/// 1. Obtain a user code and show it to the user
/// 2. The user opens the login page under <https://google.com/device>, enters the code and logs in with his account
/// 3. The application has to check periodically if the login has succeeded using [`RustyPipe::oauth_login`] or [`RustyPipe::oauth_wait_for_login`]
/// 3. The application has to check periodically if the login has succeeded using [`RustyPipe::user_auth_login`] or [`RustyPipe::user_auth_wait_for_login`]
/// 4. If the login is successful, the application receives a valid access/refresh token pair which can be used to access YouTube
#[derive(Debug, Deserialize)]
pub struct OauthDeviceCode {
@ -1261,7 +1261,7 @@ impl RustyPipe {
///
/// Returns `false` if the user has not logged in yet, in this case repeat
/// the login attempt after a few seconds.
/// The function [`RustyPipe::oauth_wait_for_login`] does this automatically.
/// The function [`RustyPipe::user_auth_wait_for_login`] does this automatically.
pub async fn user_auth_login(&self, code: &OauthDeviceCode) -> Result<bool, Error> {
tracing::debug!("OAuth login attempt (user_code: {})", code.user_code);

View file

@ -37,7 +37,7 @@ struct QRadio<'a> {
}
impl RustyPipeQuery {
/// Get the metadata of a YouTube music track
/// Get the metadata of a YouTube Music track
#[tracing::instrument(skip(self), level = "error")]
pub async fn music_details<S: AsRef<str> + Debug>(
&self,
@ -61,7 +61,7 @@ impl RustyPipeQuery {
.await
}
/// Get the lyrics of a YouTube music track
/// Get the lyrics of a YouTube Music track
///
/// The `lyrics_id` has to be obtained using [`RustyPipeQuery::music_details`].
#[tracing::instrument(skip(self), level = "error")]

View file

@ -57,7 +57,7 @@ impl RustyPipeQuery {
.await
}
/// Search YouTube music and return items of all types
/// Search YouTube Music and return items of all types
pub async fn music_search_main<S: AsRef<str>>(
&self,
query: S,

View file

@ -81,9 +81,6 @@ impl RustyPipeQuery {
///
/// The clients are used in the given order. If a client cannot fetch the requested video,
/// an attempt is made with the next one.
///
/// If an age-restricted video is detected, it will automatically use the [`ClientType::TvHtml5Embed`]
/// since it is the only one that can circumvent age restrictions.
pub async fn player_from_clients<S: AsRef<str> + Debug>(
&self,
video_id: S,

View file

@ -82,9 +82,6 @@ pub enum ExtractionError {
#[non_exhaustive]
pub enum UnavailabilityReason {
/// Video/Channel is age restricted.
///
/// Video age restriction may be circumvented with the
/// [`ClientType::TvHtml5Embed`](crate::client::ClientType::TvHtml5Embed) client.
AgeRestricted,
/// Video was deleted or censored
Deleted,

View file

@ -4,7 +4,7 @@ use super::{
VideoItem, YouTubeItem,
};
/// Trait for casting generic YouTube/YouTube music items to a specific kind.
/// Trait for casting generic YouTube/YouTube Music items to a specific kind.
///
/// Returns [`None`] if the item does not match.
pub trait FromYtItem: Sized {

View file

@ -1180,7 +1180,7 @@ pub struct AlbumId {
pub name: String,
}
/// YouTube music playlist object
/// YouTube Music playlist object
#[derive(Debug, Clone, Serialize, Deserialize, PartialEq, Eq)]
#[non_exhaustive]
pub struct MusicPlaylist {
@ -1204,7 +1204,7 @@ pub struct MusicPlaylist {
pub related_playlists: Paginator<MusicPlaylistItem>,
}
/// YouTube music album object
/// YouTube Music album object
#[derive(Debug, Clone, Serialize, Deserialize, PartialEq, Eq)]
#[non_exhaustive]
pub struct MusicAlbum {
@ -1234,7 +1234,7 @@ pub struct MusicAlbum {
pub variants: Vec<AlbumItem>,
}
/// YouTube music artist object
/// YouTube Music artist object
#[derive(Debug, Clone, Serialize, Deserialize, PartialEq, Eq)]
#[non_exhaustive]
pub struct MusicArtist {

View file

@ -355,7 +355,7 @@ impl<T> TryRemove<T> for Vec<T> {
}
/// Check if a channel name equals "YouTube Music"
/// (the author of original YouTube music playlists)
/// (the author of original YouTube Music playlists)
pub(crate) fn is_ytm(text: &TextComponent) -> bool {
if let TextComponent::Text { text, .. } = text {
text.starts_with("YouTube")