fix(download): preserve finalization metadata and library labels

This commit is contained in:
zarzet
2026-08-29 00:31:25 +07:00
parent c3b2214e2a
commit 5dac33dfa4
11 changed files with 264 additions and 26 deletions
@@ -101,6 +101,40 @@ class NativeFinalizationPolicyTest {
assertFalse(NativeFinalizationPolicy.isLosslessAudioCodec("aac"))
}
@Test
fun forcedContainerConversionAttemptsInconclusiveCodecButPreservesLossy() {
assertTrue(
NativeFinalizationPolicy.shouldAttemptLosslessContainerConversion(
forceConversion = true,
probedCodec = null,
),
)
assertTrue(
NativeFinalizationPolicy.shouldAttemptLosslessContainerConversion(
forceConversion = true,
probedCodec = "m4a",
),
)
assertTrue(
NativeFinalizationPolicy.shouldAttemptLosslessContainerConversion(
forceConversion = false,
probedCodec = "flac",
),
)
assertFalse(
NativeFinalizationPolicy.shouldAttemptLosslessContainerConversion(
forceConversion = true,
probedCodec = "aac",
),
)
assertFalse(
NativeFinalizationPolicy.shouldAttemptLosslessContainerConversion(
forceConversion = false,
probedCodec = null,
),
)
}
@Test
fun isoBmffAudioUsesM4aExceptForAc4Passthrough() {
assertEquals(