Probe: die Gegenprobe war womöglich selbst falsch
Der Server sagt transcoderVideo=1 — er kann umrechnen. Damit ist auch diese Ausrede weg, und es liegt an meiner Anfrage. Zwei Stellen, an denen ich es mir zu leicht gemacht habe. Der Titel für die Gegenprobe kam aus den Startseiten-Reihen, und dort stehen auch Einträge von plex.tv, deren Kennung kein Schlüssel dieses Servers ist. Mit so einem Eintrag prüft die Gegenprobe gar nichts — sie kommt jetzt aus einer echten Mediathek, und vorher wird nachgesehen, ob der Eintrag überhaupt existiert. Und die Antwort der Live-Sitzung war bei 700 Zeichen abgeschnitten, ausgerechnet dort, wo `Part` anfängt — an der einzigen Stelle, die zählt. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 5
parent
ab3e1c975e
commit
008f6b7fd7
@@ -717,9 +717,11 @@ extension PlexServer {
|
||||
// Und wie die Sitzung danach aussieht — dorthin zeigt der Pfad, den
|
||||
// der Transcoder bekommt.
|
||||
if let sessionKey = Self.firstSessionKey(in: data) {
|
||||
// Großzügig: bisher war genau dort abgeschnitten, wo `Part`
|
||||
// anfängt — also an der einzigen Stelle, die zählt.
|
||||
probes.append(ChannelProbe(
|
||||
path: sessionKey,
|
||||
result: await rawResponse(forPath: sessionKey, limit: 700)
|
||||
result: await rawResponse(forPath: sessionKey, limit: 2_500)
|
||||
))
|
||||
}
|
||||
|
||||
@@ -1504,6 +1506,12 @@ extension PlexServer {
|
||||
public func transcoderBisect(ratingKey: String) async -> [String] {
|
||||
let session = UUID().uuidString
|
||||
let path = "/library/metadata/\(ratingKey)"
|
||||
|
||||
// Erst prüfen, ob es diesen Eintrag überhaupt gibt. Der Titel für die
|
||||
// Gegenprobe kam aus den Startseiten-Reihen, und dort stehen auch
|
||||
// Einträge von plex.tv, deren Kennung kein Mediathek-Schlüssel ist.
|
||||
// Dann wäre die ganze Gegenprobe wertlos gewesen.
|
||||
var lines = [" Eintrag \(ratingKey): \(await rawResponse(forPath: path, limit: 150))"]
|
||||
let encoded = path.addingPercentEncoding(withAllowedCharacters: .plexParameterAllowed) ?? path
|
||||
|
||||
let variants: [(String, [URLQueryItem])] = [
|
||||
@@ -1552,7 +1560,6 @@ extension PlexServer {
|
||||
]),
|
||||
]
|
||||
|
||||
var lines: [String] = []
|
||||
for (name, items) in variants {
|
||||
lines.append(" \(name): \(await probe(items: items, endpoint: "start.m3u8"))")
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user