-
Notifications
You must be signed in to change notification settings - Fork 12
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
CMITT 1.3.0 ST0604.3-7 non compliance #102
Comments
Some more detailed reading suggests its probably looking for a video packet level metadata entry. An example that does include it is shown in https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/uploads/addca4b4d4d9dca44456d0a5bcf6b8ed/klv_metadata_test_sync.ts
The key part is that "MISPmicrosectime" key, followed by a one byte flag and then a timestamp: 0x00 0x05 0xff 0x60 0x28 0xff 0x6b 0xca 0xff 0x14 0x67 where the 0xff are pad bytes.
(Note that requirement ST0604.3-7 was deprecated somewhere along the line to ST0604.6, but there are equivalent requirements in the newer versions). |
I also found https://medium.com/@kydare/decoding-unregistered-user-data-sei-in-ffmpeg-5de68b1cc9df but I don't yet see how to use any of that with the java bindings we have. |
OK. Using a current git version of ffmpeg from today, I managed to generate:
(more of that) The code to produce that looks like:
Clearly we don't want to modify ffmpeg for the jMISB usage, but it looks like we can do something like:
We can then pull the bits we want out of the side data. However there are going to be delays. This code didn't make it in to 4.3. So its unlikely to appear until 4.4, which I think is probably going to be early 2021. Then we need presets to catch up with a release. |
Describe the bug
On some self-generated code that attempts to encode the image frame, CMITT flags a non-compliance: "ST 0604.3-07: All video frames must contain a timestamp. "
To Reproduce
Steps to reproduce the behavior:
output.addVideoFrame(new VideoFrame(image, pts));
whereimage
is a BufferedImage, andpts
is the same timestamp I'm passing to the KLV build.Expected behavior
Green tick in CMITT.
Screenshots
N/A
Configuration (please complete the following information):
N/A.
Additional context
api/src/main/java/org/jmisb/api/video/VideoOutput.java
has a couple of methods that are probably related.The text was updated successfully, but these errors were encountered: