chore: fix streaming quality is worse then available

This commit is contained in:
Kingkor Roy Tirtho 2025-06-21 22:40:20 +06:00
parent cb97f4352c
commit 5b457fc4bd
2 changed files with 30 additions and 3 deletions

View File

@ -17,7 +17,11 @@ class NewPipeEngine implements YouTubeEngine {
FileSize.unknown, FileSize.unknown,
Bitrate(stream.bitrate), Bitrate(stream.bitrate),
stream.codec, stream.codec,
stream.quality, switch (stream.bitrate) {
> 130 * 1024 => "high",
> 64 * 1024 => "medium",
_ => "low",
},
[], [],
MediaType.parse(stream.mediaFormat!.mimeType), MediaType.parse(stream.mediaFormat!.mimeType),
null, null,

View File

@ -11,8 +11,9 @@ class YouTubeExplodeEngine implements YouTubeEngine {
} }
@override @override
Future<StreamManifest> getStreamManifest(String videoId) { Future<StreamManifest> getStreamManifest(String videoId) async {
return _youtubeExplode.videos.streamsClient.getManifest( final streamManifest =
await _youtubeExplode.videos.streamsClient.getManifest(
videoId, videoId,
requireWatchPage: false, requireWatchPage: false,
ytClients: [ ytClients: [
@ -21,6 +22,28 @@ class YouTubeExplodeEngine implements YouTubeEngine {
YoutubeApiClient.mweb, YoutubeApiClient.mweb,
], ],
); );
return StreamManifest(
streamManifest.audioOnly.map((stream) {
return AudioOnlyStreamInfo(
stream.videoId,
stream.tag,
stream.url,
stream.container,
stream.size,
stream.bitrate,
stream.audioCodec,
switch (stream.bitrate.bitsPerSecond) {
> 130 * 1024 => "high",
> 64 * 1024 => "medium",
_ => "low",
},
stream.fragments,
stream.codec,
stream.audioTrack,
);
}),
);
} }
@override @override