fix: file info bitrate units, multi-track display, tv scrolling

close #840, close #841
This commit is contained in:
edde746
2026-04-11 08:04:12 +02:00
parent c6f2e949a7
commit 91d191b3d8
34 changed files with 230 additions and 55 deletions
+7 -1
View File
@@ -1266,7 +1266,7 @@ class PlexClient {
final media = metadataJson['Media'][0];
final part = media['Part'] != null && (media['Part'] as List).isNotEmpty ? media['Part'][0] : null;
// Extract video stream details
// Extract video stream details and all audio/subtitle tracks
final streams = part?['Stream'] as List<dynamic>? ?? [];
Map<String, dynamic>? videoStream;
Map<String, dynamic>? audioStream;
@@ -1280,6 +1280,8 @@ class PlexClient {
}
}
final parsedTracks = _parseStreams(streams);
return PlexFileInfo(
// Media level properties
container: media['container'] as String?,
@@ -1308,8 +1310,12 @@ class PlexClient {
chromaSubsampling: videoStream?['chromaSubsampling'] as String?,
frameRate: (videoStream?['frameRate'] as num?)?.toDouble(),
bitDepth: videoStream?['bitDepth'] as int?,
videoBitrate: videoStream?['bitrate'] as int?,
// Audio stream details
audioChannelLayout: audioStream?['audioChannelLayout'] as String?,
// All audio and subtitle tracks
audioTracks: parsedTracks.audio,
subtitleTracks: parsedTracks.subtitles,
);
}