fix(ism): prevent duplicate track IDs for audio tracks with same lang/codec/bitrate

Include StreamIndex Name and Url attributes in the track ID hash to disambiguate tracks that share the same codec, language, bitrate, and QualityLevel index.
This commit is contained in:
Andy
2026-03-07 13:01:36 -07:00
parent 15acaea208
commit ec2ecfe7b4

View File

@@ -145,7 +145,14 @@ class ISM:
fragment_time += duration_frag fragment_time += duration_frag
track_id = hashlib.md5( track_id = hashlib.md5(
f"{codec}-{track_lang}-{ql.get('Bitrate') or 0}-{ql.get('Index') or 0}".encode() "{codec}-{lang}-{bitrate}-{index}-{name}-{url}".format(
codec=codec,
lang=track_lang,
bitrate=ql.get("Bitrate") or 0,
index=ql.get("Index") or 0,
name=stream_index.get("Name") or "",
url=stream_index.get("Url") or "",
).encode()
).hexdigest() ).hexdigest()
data = { data = {