-
Notifications
You must be signed in to change notification settings - Fork 7
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Test Content different codecs for Tests 8.15 and 8.16 #38
Comments
Would an HEVC equivalent of stream T1 from AVC be good enough? 60s or 30s? |
yes
We are fine with both. For 30s content, we can play around 15s of content with codec1 and switch to codec2 for the remaining |
Relates to cta-wave/dpctf-tests#85 |
We need to review the encoding parameters and validate them: https://github.com/cta-wave/Test-Content-Generation/tree/master/Instructions |
https://github.com/cta-wave/Test-Content-Generation/blob/master/Instructions/chh1.md There is a table in the v1.39 document with an attempt to define the list of streams. Modifiers are:
Do you feel like t1 to t4 cover all necessary options? For t5, do we want to cover different framerate families this way or generate each t1-t4 for each family (as the main script does) (note:the mezzanine source may be either TearsOfSteel or Croatia depending on the frame rate so mixing frame rate may not be trivial). Compared to the existing matrix, we don't test the following options, please comment if you think they may be necessary:
As a test I did add this folder with a t1 encoded in HEVC in all 3 fps families (including the cenc version, since I encoded using the main script). Just add Can someone test this HEVC content? |
I find the list of streams in 11.3.5 completely disconnected from the list of content options in 11.3.4. From the list of content options, I would have expected a table of comparable complexity to avc not the massively reduced one. |
Looking further at 11.3.4, there are seem to be 5 content options that have more than one possible value or state.
There are also a number of options that can only have one value or where it's only proposed to test one value.
@Romain: Of the options that have more than one possibility, please can you say which is used for your test stream. Also please could you check that your test stream is compatible with the options where 11.3.4 proposes we only test one value. |
I did. Eventually this is something we'll need to add to the WAVE verification script.
All ok.
Which kind of SEI? I guess from CMAF B.2.4 that we may be talking about payload types 137, 144 and 147 (related to color characteristics). In this sense it is ok.
While investigating these two are not ok (we should play with the encoder settings):
NB: I don't plan to fix the two last issues very soon unless told otherwise. |
Let me know when anyone was able to make a test, or if anything's missing to start testing. |
confirm content HEVC is working. Tested on Safari Mac. More tests on TV devices (HbbTV) planned. |
… for details regarding this specific test
@nicholas-fr @haudiobe Please can you comment on how serious the two points above are? |
I'm not sure about the first point, the second should probably be fixed as we're providing this as test content. However there are more serious issues that need to be fixed, please see points 3 and 4 below.
More importantly, the following need to be fixed:
and the JCCP segment validator:
|
I've never understood where this conformance rule comes from.
You are right.
It is 0, and I think (when reading the CMAF spec) that it should be 0. May I ask you to check again and let me know about the reference if I were mistaken?
I couldn't reproduce. Could it come from the FFmpeg bitstream extraction?
Fixed.
There was indeed an issue on the first segment. I fixed that. |
Would you indicate which VUI flag has an issue then?
The only difference is general_non_packed_constraint_flag, so if that is set correctly as defined by CMAF (seems it only matters for scalable HEVC), then would you mind clarifying what this issue is about?
The ffmpeg cli used is
|
Thanks for the quick answer.
@nicholas-fr I'm not sure to understand. I thought Note to self: I need to check as the gpac invoked command-line seems to involve removal:
@nicholas-fr I didn't get your remark was related to the codec description. Let me have another look.
My fix is not definitive though. Investigating for a better fix. |
Thanks Romain.
I understand now I think there was a typo in the original comment. |
Ok, it seems like the codec description and the ffmpeg's trailing zero, and the vui removal issues may all be related. |
Ok so it seems the right codec desc is 'hvc1.2.4.L123.90'. 'hvc1.2.4.L123.BO' would imply 'non_packed_constraint_flag=1' where as CMAF mandates 0. There is a new version under the 2023-05-12 subfolders of the content that should solve it all. I've also update the database.json. |
Thanks @rbouqueau, I can confirm this resolves those issues. There are remaining JCCP issues, but I believe all are incorrect (e.g. color primaries, transfer characteristics and matrix coeffs not detected correctly by JCCP).
|
@nicholas-fr What did you test exactly? If I go to https://conformance.dashif.org/ and I test https://dash.akamaized.net/WAVE/vectors/chh1_sets/12.5_25_50/t1/2023-05-12/stream.mpd, I get:
|
@rbouqueau I tested I see exactly the same result via https://conformance.dashif.org/ at the moment, also when resting with the latest development version (commit ae68be8) on my local machine. ( Side note: I like the formatting improvements :) )
I'm also confused about this failure:
|
The conformance tool reported errors w.r.t the WAVE media profile. As a consequence no conforming Switching Set was found (this is what this error says). In general the WAVE section didn't age well.
I don't see any issue on my end. I reported it.
The
Same, It seems to be not supported by the ISOSegmentValidator. Reported.
Not supported by the ISOSegmentValidator. Reported.
Not supported by the ISOSegmentValidator. Note that this box is forwarded from the mezzanine source. Reported.
This is useful information. However given its complexity it seems to be wrong most of the time. I've added a low priority note on my end to understand how the computation is made.
|
Validator issue that needs to be addressed in Conformance Tool. @FritzHeiden can move forward with the content as it appears to be valid. |
Tests 8.15 and 8.16 using provided HEVC content (chh1) are merged in master. I was not able to test this again, as I don't have access to a browser capable of decoding HEVC content at the moment. |
@louaybassbouss Fraunhofer will check on an HbbTV terminal after the plugfest. |
We are after the plugfest :) @louaybassbouss @FritzHeiden Please let us know when you could test. |
@rbouqueau we will check tomorrow |
@rbouqueau we confirm that chh1 content is valid |
Not sure whether this issue is already resolved? To be sure, a codec change and a change of channel configuration are different things (even though they tend to go together). To emulate a real-world-ish scenario, we could switch from EAC3 in a 5.1 configuration to AAC in a 2.0 configuration (and/or back). |
DPCAT Tests 8.15 Source Buffer Re-Initialization (without changeType) and 8.16 Source Buffer Re-Initialization (with changeType) require content in different 2 codecs. For video, we have AVC so we need content in a different codec e.g HEVC and/or AV1. this related comment from @jpiesing related to this issue may help (copied from the google document):
@FritzHeiden @dsilhavy FYI
The text was updated successfully, but these errors were encountered: