Skip to content
Merged
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 5 additions & 2 deletions YoutubeExplode/Videos/Streams/StreamClient.cs
Original file line number Diff line number Diff line change
Expand Up @@ -274,11 +274,14 @@ private async ValueTask<IReadOnlyList<IStreamInfo>> GetStreamInfosAsync(

return await GetStreamInfosAsync(videoId, playerResponse, cancellationToken);
}
catch (VideoUnplayableException)
// Retry with deciphering
catch (VideoUnplayableException ex)
// Only retry on videos that are unplayable for reasons other than being unavailable (deleted, private, etc)
when (ex is not VideoUnavailableException)
{
// Try to get player response from a client with cipher
var cipherManifest = await ResolveCipherManifestAsync(cancellationToken);

// Try to get player response from a client with cipher
var playerResponse = await _controller.GetPlayerResponseAsync(
videoId,
cipherManifest.SignatureTimestamp,
Expand Down