-
Notifications
You must be signed in to change notification settings - Fork 21
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
JPEG XS essence support #48
Conversation
Signed-off-by: Nisha Bhaskar <[email protected]>
Thanks! I don't have time available today to review but will try make a start tomorrow or Wednesday. Is there a sample available somewhere online I can use to test? |
Signed-off-by: Nisha Bhaskar <[email protected]>
Great! I don't know if there are any jxs samples available online. I have added a short RGB test sequence here: https://github.com/nishabfhg/bmx-jxs/tree/main/Blender_FullHD_Testsequence. In raw2bmx, you will need the jxs_rgba command line option in this case. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I've only managed to review some of it thus far but it is looking good. I'm certain it hasn't been trivial to figure out where things need to go!
There are a couple comments inline. Beyond that you need to convert the tabs to (4) spaces :-) There are also some build warnings which I'll copy into a comment as I don't think you can see the build results in the GitHub Actions output.
I'll try and complete the review this week.
Blender_FullHD_Testsequence/Blender_Sequence_FullHD_1920x1080_8b_444_00000.jxs
Outdated
Show resolved
Hide resolved
deps/libMXFpp/libMXF++/metadata/base/JPEGXSSubDescriptorBase.cpp
Outdated
Show resolved
Hide resolved
Here is the list of warnings from the Linux build:
|
As promised, here is the process for creating regression tests for JXS. More info on testing can be found here. This process assumes you only have an RGBA example. If you also have a CDCI example file then ignore the steps below that delete that particular part of the tests; you will have 4 test data files instead of 2.
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I've completed the review and further comments / suggestions can be found inline
Hi Philip, thanks for the review! I will try to make all the modifications next week and get back to you. |
Signed-off-by: Nisha Bhaskar <[email protected]>
Hi Philip, |
I've had a quick look through and looks like you covered everything, thanks for the updates! I'll probably take a proper look sometime next week as I'm away from work. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for your update!. There are a couple remaining issues to look at (most of the comments are whitespace related).
There are also a couple of merge conflicts that have arisen because of recent updates to main.
The test data is likely to change and you can run cmake --build . --target bmx_jpegxs_rgba_data
and cmake --build . --target bmx_jpegxs_cdci_data
to update them.
Hi Philip. I made the fixes. I hope I didn't miss anything. I synced my version with your latest commits, so the merge conflicts should not appear anymore. |
All done now except for some unexpected changes to some non-jxs test checksums - see below the diff showing what needs to be changed. Do you know what caused this? Just asking as it might be an issue that needs fixing. If you run Diff showing what needs to be changed back: diff --git a/deps/libMXF/test/test_indextable.md5 b/deps/libMXF/test/test_indextable.md5
index e781305e..6dc5d47a 100644
--- a/deps/libMXF/test/test_indextable.md5
+++ b/deps/libMXF/test/test_indextable.md5
@@ -1 +1 @@
-d41d8cd98f00b204e9800998ecf8427e
\ No newline at end of file
+5ff6163c7004300edb5e0c6670e547d3
\ No newline at end of file
diff --git a/test/as02/iecdv25.md5s b/test/as02/iecdv25.md5s
index ec6da267..8e831eb3 100644
--- a/test/as02/iecdv25.md5s
+++ b/test/as02/iecdv25.md5s
@@ -1 +1 @@
-abce8e563ec3408a0dbf10ae34dfe30c;ca114c9f2707afde489d6e6066f8833c;e4a2bdff4418802e3d127654ee906dc6;99538bb806a99596b95236ac8a965b52
\ No newline at end of file
+227a7e8a6b34571cfb3a9b70642c0183;4e4605266cb9d916830ea1eef722321d;d8b021e1b8bc3bd3796676b0b5e8f594;16ff89dda611b560eda0739fd90d0214
\ No newline at end of file
diff --git a/test/avid_mxf/mpeg2lg_422p_hl_1080i.md5s b/test/avid_mxf/mpeg2lg_422p_hl_1080i.md5s
index 606895d7..8e1e6d3e 100644
--- a/test/avid_mxf/mpeg2lg_422p_hl_1080i.md5s
+++ b/test/avid_mxf/mpeg2lg_422p_hl_1080i.md5s
@@ -1 +1 @@
-f95eae8d685f5c222c7e3e9fb84b9f9a;419a18c68d4b87dfb10408653a6bc58e;805d6fd84c1ed39585053c49016f52f7
\ No newline at end of file
+f189845c35fbe0a69d36b181d85937f9;0ece8877ab256657df705de6a01a8a48;f323a74f1505abc8bf201eeef07e0089
\ No newline at end of file
diff --git a/test/avid_mxf/mpeg2lg_mp_hl_1920_1080i.md5s b/test/avid_mxf/mpeg2lg_mp_hl_1920_1080i.md5s
index 2b2e3f30..793a0a50 100644
--- a/test/avid_mxf/mpeg2lg_mp_hl_1920_1080i.md5s
+++ b/test/avid_mxf/mpeg2lg_mp_hl_1920_1080i.md5s
@@ -1 +1 @@
-93d9e5755cdcdd13000b71bcad7d55d1;a31f0491c9255156d07ec78ac265311c;f3259501cd9d48ce94f5f1aa0006d697
\ No newline at end of file
+fbd8e5365fbd58c4a4908cd2e78319f7;0ece8877ab256657df705de6a01a8a48;f323a74f1505abc8bf201eeef07e0089
\ No newline at end of file
diff --git a/test/d10_mxf/d10_40_2997.md5 b/test/d10_mxf/d10_40_2997.md5
index 20d6158e..8563ad8d 100644
--- a/test/d10_mxf/d10_40_2997.md5
+++ b/test/d10_mxf/d10_40_2997.md5
@@ -1 +1 @@
-8a256f169a5cbaa6145f95a9d008df0a
\ No newline at end of file
+6e62f6adec11065622203c7e75cc2b38
\ No newline at end of file |
Signed-off-by: Nisha Bhaskar <[email protected]>
The md5s might have changed when I rebuilt the project using the visual studio solution. I am not sure why this happened. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
All done now as the build succeeds, Thanks for your contribution!
That's great! Thanks for the review. |
Hi,
Here are my changes to include JPEG XS essence support into bmx. It works pretty much like JPEG 2000. Only PARSE_FRAME_START_SIZE has to be larger in RawEssenceReader. Let me know if I need to modify something.
Thank you.
Best regards,
Nisha