Commit graph

30 commits

Author SHA1 Message Date
Aaron Boxer b2a0fd9e96 jpeg2000parse: sub-sampling parse should take component into account
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1653>
2020-10-27 08:26:23 +01:00
Stéphane Cerveau 7edff6e746 jpeg2000parse: no pts interpolation with subframe.
The jpeg2000parser must not interpolate PTS with subframes.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1653>
2020-10-27 08:26:23 +01:00
Aaron Boxer db13dc9d02 jpeg2000parse: support frame and stripe alignment in caps
forward alignment and num-stripes caps properties

Use caps height when setting caps for subframe

We want downstream to use full frame height, not subframe height

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1653>
2020-10-27 08:26:23 +01:00
Aaron Boxer 1414e58dfa jpeg2000parse: fail caps negotiation if caps are NOT fixed 2019-11-05 21:21:51 +00:00
Aaron Boxer 7b3491adf7 jpeg2000parse: use pre_push_frame to reset parser 2019-11-05 21:21:51 +00:00
Aaron Boxer bfee115d66 jpeg2000parse: parse_event: call base class at end
derived class should do it's work first before calling base
2019-11-05 21:21:51 +00:00
Aaron Boxer 67cffd70ad jpeg2000parse: do hard reset if gst_base_parse_finish_frame fails 2019-11-05 21:21:51 +00:00
Aaron Boxer a35157debf jpeg2000parse: initialize some variables to make valgrind happy 2019-11-05 21:21:51 +00:00
Aaron Boxer fae0664824 jpeg2000parse: use GST_INT in caps for profile
Negotiation failed with GST_UINT
2019-11-05 21:21:51 +00:00
Aaron Boxer 1344d9f560 jpeg2000parse: make explicit that codec_format is for src caps 2019-11-05 21:21:51 +00:00
Aaron Boxer 969e30c035 jpeg2000parse: refactor
1. only recalculate src codec format if sink caps change
2. use correct value for "jp2c" magic in J2C box ID
3. only parse J2K magic once, and store result
4. more sanity checks comparing caps to parsed codec
2019-11-05 21:21:51 +00:00
Aaron Boxer 2b6b1a2b04 jpeg2000parse: set parsed to TRUE in src caps 2019-11-05 21:21:51 +00:00
Aaron Boxer 453a65b8e9 jpeg2000parse: only cache caps parameters when caps have in fact changed 2019-11-05 21:21:51 +00:00
Aaron Boxer ead5dba3ac jpeg2000parse: fix typos in media format 2019-11-05 21:21:51 +00:00
Aaron Boxer 88efbd2344 jpeg2000parse: add reset method
Also add three new struct members, currently unused.
2019-11-05 21:21:51 +00:00
Aaron Boxer bbbdc2cd7e tsmux/tsdemux: Add support for JPEG2000
Based on patches by Milos Seleceni.

https://bugzilla.gnome.org/show_bug.cgi?id=753323
2017-07-21 09:33:31 +03:00
Aaron Boxer 45dbe864e2 jpeg2000parse: support 2-component images
https://bugzilla.gnome.org/show_bug.cgi?id=784797
2017-07-17 15:53:06 +03:00
Aaron Boxer e10276a616 jpeg2000parse: initial support for JP2 format
This is a simple way of supporting JP2 : we treat is as JPC, and throw
away header info.

https://bugzilla.gnome.org/show_bug.cgi?id=767546
2017-07-17 15:51:02 +03:00
Aaron Boxer 85fbbc7a24 jpeg2000parse: Parse colorimetry, interlace-mode, field-order, multiview-mode and chroma-site
https://bugzilla.gnome.org/show_bug.cgi?id=753323
2017-07-17 15:49:34 +03:00
Aaron Boxer 2cffa1579a jpeg2000parse: allow parsing when current caps are null
In this case, we assume that the format is jpc, and we infer the color
space from the number of components. This allows the parser to process a
jpc disk file coming from a filesrc element.

https://bugzilla.gnome.org/show_bug.cgi?id=783291
2017-07-10 10:03:43 +03:00
Aaron Boxer 9ec2b7ce13 jpeg2000parse: parse RSIZ capabilities and put profile/level into the caps
The RSIZ capabilities tag stores the JPEG 2000 profile. In the case of
broadcast profiles, it also stores the broadcast main level, which
specifies the bit rate.

https://bugzilla.gnome.org/show_bug.cgi?id=782337
2017-06-07 10:06:26 +03:00
Vincent Penquerc'h ba22007e2f jpeg2000parse: fix negotiation with j2c and jpc both allowed upstream
If upstream supports both, but downstream supports only jpc, j2c
would have been selected as the first in the caps.

https://bugzilla.gnome.org/show_bug.cgi?id=782221
2017-05-12 11:14:31 +01:00
Sebastian Dröge 8daf628910 jpeg2000parse: Don't pass NULL strings to the colorspace / sampling parsing functions
They assert on NULL.
2016-09-24 10:05:49 -04:00
Sebastian Dröge 064f46e9e1 jpeg2000parse: Use correct enum type
GST_JPEG2000_SAMPLING_RGB instead of GST_JPEG2000_COLORSPACE_RGB

https://bugzilla.gnome.org/show_bug.cgi?id=768696
2016-07-12 00:02:53 +03:00
Luis de Bethencourt 418e643b61 gstjpeg2000parse: no need for else after a goto
else clause is redundant when the end of the if statement is a jump.
If we haven't gone to the beach, we are in the false branch.
2016-07-01 14:08:13 +01:00
Aaron Boxer 154698389d gstjpeg2000parse: improved parsing of jpc magic and j2c box
https://bugzilla.gnome.org/show_bug.cgi?id=767512
2016-07-01 13:15:11 +01:00
Aaron Boxer e7e6a3579d jpeg2000parse: use enums for colorspace and sampling, rather than strings
Also, move gstjpeg2000sampling to codecparsers project

https://bugzilla.gnome.org/show_bug.cgi?id=767908
2016-06-24 11:23:31 +03:00
Aaron Boxer 81e3b998be jpeg2000parse: support j2c format
https://bugzilla.gnome.org/show_bug.cgi?id=767512
2016-06-17 23:08:37 +03:00
Aaron Boxer 3dc3a915ea jpeg2000parse: Require either colorspace or sampling field in sink caps
And always set the sampling field on the src caps, if necessary guessing a
correct value for it from the colorspace field.

Also, did some cleanup: removed sampling enum - redundant.

https://bugzilla.gnome.org/show_bug.cgi?id=766236
2016-06-10 16:25:50 +03:00
Aaron Boxer fffee978c2 jpeg2000parse: Add JPEG2000 parser element
https://bugzilla.gnome.org/show_bug.cgi?id=766236
2016-06-07 15:29:41 +03:00