Fix streamtags remove list

This commit is contained in:
Javanaut
2026-04-11 20:50:09 +02:00
parent 5eee7e1161
commit 9a980b5766
3 changed files with 117 additions and 1 deletions

View File

@@ -77,7 +77,48 @@ class MediaDescriptorChangeSetTests(unittest.TestCase):
self.assertIn("THIS_IS=embedded-subtitle", metadata_tokens)
self.assertIn("EXTERNAL_KEEP=keep-me", metadata_tokens)
self.assertNotIn("BPS=remove-me", metadata_tokens)
self.assertNotIn("BPS=", metadata_tokens)
self.assertIn("BPS=", metadata_tokens)
def test_target_only_tracks_still_emit_remove_tokens_for_configured_stream_keys(self):
context = {
"logger": get_ffx_logger(),
"config": StaticConfig(
{
"metadata": {
"remove": ["creation_time"],
"streams": {
"remove": ["BPS"],
}
}
}
),
}
target_track = TrackDescriptor(
index=0,
source_index=0,
sub_index=0,
track_type=TrackType.AUDIO,
tags={
"language": "eng",
"title": "Main Audio",
"BPS": "remove-me",
"KEEP_ME": "keep-me",
},
)
change_set = MediaDescriptorChangeSet(
context,
MediaDescriptor(tags={"creation_time": "remove-me"}, track_descriptors=[target_track]),
)
metadata_tokens = change_set.generateMetadataTokens()
self.assertIn("-metadata:g", metadata_tokens)
self.assertIn("creation_time=", metadata_tokens)
self.assertIn("-metadata:s:a:0", metadata_tokens)
self.assertIn("BPS=", metadata_tokens)
self.assertIn("KEEP_ME=keep-me", metadata_tokens)
if __name__ == "__main__":