Open schuettecarsten opened 4 months ago
@schuettecarsten,
let me add some initial comments first to explain the issues.
Unexpected, sampleDurationPresent must be present Currently we expect sampleDuration to be present in the trun box, I think some of your contents doesn't have that so it failed.
Unexpected missing chunk indicated by manifest is currently not supported Currently we expect if a chunk is specified by manifest then it must exist. The reason is we have to determine whether we need to do some form of healing (e.g. insert silence for missing audio) by analyzing the manifest without having to download and check each fragments.
unfortunately, in both of these case, we're not sure if there are easy/good solutions right now...
cc: @duggaraju, @weibz
- Unexpected, sampleDurationPresent must be present Currently we expect sampleDuration to be present in the trun box, I think some of your contents doesn't have that so it failed.
I've looked into the source code (TransMuxer.cs, line 254). For me it looks like the exception occurs when the migrator tries to fix issues with the stream length, which requires sampleDuration for calculation. I think that the exception is not neccessary here, a warning that the stream cannot be checked is enough - and of course only do the checks when possible?
hi @schuettecarsten,
@duggaraju gave a great suggestion on issue 1.
First one looks like a bug in our code? Are we assuming that a 'trun' box is always present even if all samples have same duration and the duration is specified in the tfhd box?
so maybe this can be fixed easily...
i'm wondering if you can provide sample for issue 1 to check this?
@pohhsu @duggaraju
i'm wondering if you can provide sample for issue 1 to check this?
Sure, but I cannot post this here - please drop me an email schuettecarsten at googlemail.com
and I will send you a SAS link to the asset.
Also, if you are interested, I put up a draft PR to address the ‘Unexpected, sampleDurationPresent must be present‘ issue but I couldn’t test it out.
https://github.com/Azure/azure-media-migration/compare/main...pohhsu/test_tfhd
Also, if you are interested, I put up a draft PR to address the ‘Unexpected, sampleDurationPresent must be present‘ issue but I couldn’t test it out.
@pohhsu @duggaraju I've send you an email with some sample assets.
The issue with the missing sampleDurationPresent is fixed with the draft PR and the resulting asset looks good.
For the missing chunks issue, a lot of our assets are affected by this and we need to migrate them. So, maybe it's an option to simply ignore the gaps, add black there or repeat the previous chunk?
We have a bunch of "Live Archive" assets that we need to migrate before AMS is retired. They were all recorded by AMS using RTMP ingest during the last few years and can be played without any known issues. But migration fails with different errors on most of these assets.
For example:
Some of them are complaining about gaps and missing chunks, log does not show on which asset which makes it difficult to figure out if this error will cause whe whole asset to fail:
Any ideas how to mitigate these errors? Let me know if you need sample assets.