Hi,
I'm currently trying to make a very simple pipeline that would take an MXF file with JPEG2000 video essence as input and display it. For now, the pipeline looks something like this: gst-launch filesrc location="source.mxf" ! mxfdemux name=d d. ! jp2kdec ! autovideosink But that won't take me anywhere, I only get this error message: ERROR : element /GstPipeline:pipeline0/GstMXFDemux:d : Internal data stream error. Additional debug info: mxfdemux.c(2797): gst_mxf_demux_loop (): /GstPipeline:pipeline0/GstMXFDemux:d: stream stopped, reason not-negotiated From what I've experimented so far, it looks like mxfdemux has no problem at all unwrapping the JPEG2000 code stream (if I just link the demuxer to a filesink, I get a nice concatenation of valid JPEG2000 code streams), but I can't think of a reason why jp2kdec would refuse to handle this raw code stream. Adding to the confusion, when I try to rewrap the code stream into an MJ2 file, I also seem to get a corrupt file. I don't really know where to look now... Any ideas? Thanks! -- Florian ------------------------------------------------------------------------------ Learn how Oracle Real Application Clusters (RAC) One Node allows customers to consolidate database storage, standardize their database environment, and, should the need arise, upgrade to a full multi-node Oracle RAC database without downtime or disruption http://p.sf.net/sfu/oracle-sfdevnl _______________________________________________ gstreamer-devel mailing list [hidden email] https://lists.sourceforge.net/lists/listinfo/gstreamer-devel |
Administrator
|
On Thu, 2010-12-30 at 17:12 +0100, Florian Agez wrote:
> Hi, > > I'm currently trying to make a very simple pipeline that would take an > MXF file with JPEG2000 video essence as input and display it. For now, > the pipeline looks something like this: > > gst-launch filesrc location="source.mxf" ! mxfdemux name=d d. ! > jp2kdec ! autovideosink > > But that won't take me anywhere, I only get this error message: > > ERROR : element /GstPipeline:pipeline0/GstMXFDemux:d : Internal > data stream error. > Additional debug info: > mxfdemux.c(2797): gst_mxf_demux_loop (): > /GstPipeline:pipeline0/GstMXFDemux:d: > stream stopped, reason not-negotiated > Do you get any more detailed warnings when running the same command line with "GST_DEBUG=2 gst-launch...." ? If nothing 'useful' comes up, please file a bug report with full compressed log (GST_DEBUG=5 gst-launch .... > log 2>&1). Bonus points for quicker debugging if you also provide (a link to) a sample file which fails. Edward > > From what I've experimented so far, it looks like mxfdemux has no > problem at all unwrapping the JPEG2000 code stream (if I just link the > demuxer to a filesink, I get a nice concatenation of valid JPEG2000 code > streams), but I can't think of a reason why jp2kdec would refuse to > handle this raw code stream. Adding to the confusion, when I try to > rewrap the code stream into an MJ2 file, I also seem to get a corrupt file. > > I don't really know where to look now... Any ideas? > > Thanks! > ------------------------------------------------------------------------------ Learn how Oracle Real Application Clusters (RAC) One Node allows customers to consolidate database storage, standardize their database environment, and, should the need arise, upgrade to a full multi-node Oracle RAC database without downtime or disruption http://p.sf.net/sfu/oracle-sfdevnl _______________________________________________ gstreamer-devel mailing list [hidden email] https://lists.sourceforge.net/lists/listinfo/gstreamer-devel |
In reply to this post by Florian Agez
On Thu, 2010-12-30 at 17:12 +0100, Florian Agez wrote:
> I'm currently trying to make a very simple pipeline that would take an > MXF file with JPEG2000 video essence as input and display it. For now, > the pipeline looks something like this: > > gst-launch filesrc location="source.mxf" ! mxfdemux name=d d. ! > jp2kdec ! autovideosink > > But that won't take me anywhere, I only get this error message: > > ERROR : element /GstPipeline:pipeline0/GstMXFDemux:d : Internal > data stream error. > Additional debug info: > mxfdemux.c(2797): gst_mxf_demux_loop (): > /GstPipeline:pipeline0/GstMXFDemux:d: > stream stopped, reason not-negotiated First thing to try in such cases is: does it work with playbin? gst-launch-0.10 -v playbin2 uri=file:///path/to/foo.mxf If not, the output of that might already tell us something. > From what I've experimented so far, it looks like mxfdemux has no > problem at all unwrapping the JPEG2000 code stream (if I just link the > demuxer to a filesink, I get a nice concatenation of valid JPEG2000 code > streams), but I can't think of a reason why jp2kdec would refuse to > handle this raw code stream. You might need an ffmpegcolorspace ! videoscale in front of the autovideosink as well. Cheers -Tim ------------------------------------------------------------------------------ Learn how Oracle Real Application Clusters (RAC) One Node allows customers to consolidate database storage, standardize their database environment, and, should the need arise, upgrade to a full multi-node Oracle RAC database without downtime or disruption http://p.sf.net/sfu/oracle-sfdevnl _______________________________________________ gstreamer-devel mailing list [hidden email] https://lists.sourceforge.net/lists/listinfo/gstreamer-devel |
Le 02/01/2011 12:54, Tim-Philipp Müller a écrit :
> First thing to try in such cases is: does it work with playbin? > gst-launch-0.10 -v playbin2 uri=file:///path/to/foo.mxf > > If not, the output of that might already tell us something. > > You might need an ffmpegcolorspace ! videoscale in front of the > autovideosink as well. > > Cheers > -Tim log for the "playbin" command line is attached). I also tried running the command line with GST_DEBUG=2 as advised by Edward, the output of that didn't look really helpful to me either: 0:00:00.114181342 2907 0x98f1f00 WARN mxf mxfmetadata.c:482:mxf_metadata_new: No handler for type 0x015a found -- using generic metadata parser 0:00:00.114224084 2907 0x98f1f00 WARN mxfdemux mxfdemux.c:1244:gst_mxf_demux_handle_metadata:<d> Unknown or unhandled metadata of type 0x015a 0:00:01.249151118 2907 0x98f1f00 WARN mxfdemux mxfdemux.c:2797:gst_mxf_demux_loop:<d> error: Internal data stream error. 0:00:01.249210483 2907 0x98f1f00 WARN mxfdemux mxfdemux.c:2797:gst_mxf_demux_loop:<d> error: stream stopped, reason not-negotiated So I'm going to do as Edward said and file a bug report for this. Thank you both for your help! -- Florian ------------------------------------------------------------------------------ Learn how Oracle Real Application Clusters (RAC) One Node allows customers to consolidate database storage, standardize their database environment, and, should the need arise, upgrade to a full multi-node Oracle RAC database without downtime or disruption http://p.sf.net/sfu/oracle-sfdevnl _______________________________________________ gstreamer-devel mailing list [hidden email] https://lists.sourceforge.net/lists/listinfo/gstreamer-devel playbin.log (4K) Download Attachment |
On Mon, 2011-01-03 at 15:50 +0100, Florian Agez wrote:
> mxfdemux.c:2797:gst_mxf_demux_loop:<d> error: stream stopped, reason > not-negotiated > > So I'm going to do as Edward said and file a bug report for this. Please do. If you could make the file (or another sample file that triggers this) available, that'd be very helpful, thanks! Cheers -Tim ------------------------------------------------------------------------------ Learn how Oracle Real Application Clusters (RAC) One Node allows customers to consolidate database storage, standardize their database environment, and, should the need arise, upgrade to a full multi-node Oracle RAC database without downtime or disruption http://p.sf.net/sfu/oracle-sfdevnl _______________________________________________ gstreamer-devel mailing list [hidden email] https://lists.sourceforge.net/lists/listinfo/gstreamer-devel |
In reply to this post by Florian Agez
Hi,
Is somebody found a fix for this topic ? I'm facing the same problem for MXF JPEG2000. I try it with files generated from opencinematools and openDcp. In two case I have the same error message : ERROR : element /GstPipeline:pipeline0/GstMXFDemux:d : Internal data stream error. Can I found somewhere a sample MXF JPEG2000 for tests with gstreamer ? Cheers Nico Le 30/12/2010 20:12, Florian Agez a écrit : > Hi, > > I'm currently trying to make a very simple pipeline that would take an > MXF file with JPEG2000 video essence as input and display it. For now, > the pipeline looks something like this: > > gst-launch filesrc location="source.mxf" ! mxfdemux name=d d. ! > jp2kdec ! autovideosink > > But that won't take me anywhere, I only get this error message: > > ERROR : element /GstPipeline:pipeline0/GstMXFDemux:d : Internal > data stream error. > Additional debug info: > mxfdemux.c(2797): gst_mxf_demux_loop (): > /GstPipeline:pipeline0/GstMXFDemux:d: > stream stopped, reason not-negotiated > > > From what I've experimented so far, it looks like mxfdemux has no > problem at all unwrapping the JPEG2000 code stream (if I just link the > demuxer to a filesink, I get a nice concatenation of valid JPEG2000 code > streams), but I can't think of a reason why jp2kdec would refuse to > handle this raw code stream. Adding to the confusion, when I try to > rewrap the code stream into an MJ2 file, I also seem to get a corrupt file. > > I don't really know where to look now... Any ideas? > > Thanks! > _______________________________________________ gstreamer-devel mailing list [hidden email] http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel |
On Mon, 2011-04-11 at 10:29 +0400, Nicolas Bertrand wrote:
> Hi, > Is somebody found a fix for this topic ? > I'm facing the same problem for MXF JPEG2000. > I try it with files generated from opencinematools and openDcp. In two > case I have the same error message : > > ERROR : element /GstPipeline:pipeline0/GstMXFDemux:d : Internal > data stream error. > > Can I found somewhere a sample MXF JPEG2000 for tests with gstreamer ? https://bugzilla.gnome.org/show_bug.cgi?id=638578 To fix this we need support for the 12 bit color formats in libgstvideo, ffmpegcolorspace and jp2kdec at least. _______________________________________________ gstreamer-devel mailing list [hidden email] http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel signature.asc (205 bytes) Download Attachment |
It is a hard work to support '12 bit color formats'. May be I can give some help. But where to start ? Did somebody knows if an existing opensource solution exists for playing mxf/JPEG2000 file ? Cheers Nico This is probably this bug: https://bugzilla.gnome.org/show_bug.cgi?id=638578 To fix this we need support for the 12 bit color formats in libgstvideo, ffmpegcolorspace and jp2kdec at least._______________________________________________ gstreamer-devel mailing list [hidden email] http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel _______________________________________________ gstreamer-devel mailing list [hidden email] http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel |
On Mon, 2011-04-11 at 16:04 +0400, Nicolas Bertrand wrote:
> Thkks for the bug link. > It is a hard work to support '12 bit color formats'. May be I can > give some help. But where to start ? > > Did somebody knows if an existing opensource solution exists for > playing mxf/JPEG2000 file ? It's not that much work actually Jasper (the JPEG2000 decoder library used by jp2kdec) supports 12 bit per color component. Adding support for this in GStreamer only requires to add some enums to libgstvideo for the new formats, implement them in all the functions that return the rowstride, component width, etc. and then. Afterwards conversion from/to this formats should be added to ffmpegcolorspace and jp2kdec should output with these caps if a 12bit per component image is found. If you want to try that feel free to ask further questions on IRC (FreeNode, #gstreamer) or on this list. _______________________________________________ gstreamer-devel mailing list [hidden email] http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel signature.asc (205 bytes) Download Attachment |
On Mon, 11 Apr 2011, Sebastian Dröge wrote: > On Mon, 2011-04-11 at 16:04 +0400, Nicolas Bertrand wrote: >> Thkks for the bug link. >> It is a hard work to support '12 bit color formats'. May be I can >> give some help. But where to start ? >> >> Did somebody knows if an existing opensource solution exists for >> playing mxf/JPEG2000 file ? > > It's not that much work actually > > Jasper (the JPEG2000 decoder library used by jp2kdec) supports 12 bit > per color component. Adding support for this in GStreamer only requires > to add some enums to libgstvideo for the new formats, implement them in > all the functions that return the rowstride, component width, etc. and > then. Afterwards conversion from/to this formats should be added to > ffmpegcolorspace and jp2kdec should output with these caps if a 12bit > per component image is found. > > If you want to try that feel free to ask further questions on IRC > (FreeNode, #gstreamer) or on this list. Vincent Torri _______________________________________________ gstreamer-devel mailing list [hidden email] http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel |
In reply to this post by Sebastian Dröge-7
add GST_VIDEO_FORMAT_JP2 in GstVideoFormat Enum #define GST_VIDEO_CAPS_JP2 \ "video/x-raw-jp2, " \ "bpp = (int) 32, " \ "depth = (int) 12, " \ "endianness = (int) BIG_ENDIAN, " \ "width = " GST_VIDEO_SIZE_RANGE ", " \ "height = " GST_VIDEO_SIZE_RANGE ", " \ "framerate = " GST_VIDEO_FPS_RANGE It's not that much work actually Jasper (the JPEG2000 decoder library used by jp2kdec) supports 12 bit per color component. Adding support for this in GStreamer only requires to add some enums to libgstvideo for the new formats, implement them in all the functions that return the rowstride, component width, etc. and then. Afterwards conversion from/to this formats should be added to ffmpegcolorspace and jp2kdec should output with these caps if a 12bit per component image is found. If you want to try that feel free to ask further questions on IRC (FreeNode, #gstreamer) or on this list._______________________________________________ gstreamer-devel mailing list [hidden email] http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel _______________________________________________ gstreamer-devel mailing list [hidden email] http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel |
On Mon, 2011-04-11 at 22:46 +0400, Nicolas Bertrand wrote:
> For structure do you think its correct to have in video.h smthg > like : > > add GST_VIDEO_FORMAT_JP2 in GstVideoFormat Enum > > > #define GST_VIDEO_CAPS_JP2 \ > [...] No, it's actually RGB or YUV with 12bit per component. You should create caps that are similar to the other RGB or YUV caps. _______________________________________________ gstreamer-devel mailing list [hidden email] http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel signature.asc (205 bytes) Download Attachment |
Hi I still trying to start ....
For Jpeg2000 with RGB : If I understand well, we need to switch for 32 to 64 bits represenation ... Is This caps seems correct ? #define GST_VIDEO_CAPS_SRGB64 \ "video/x-raw-rgb, " \ "bpp = (int) 64, " /* ??or 36 : 2x12 bits per component */ \ "depth = (int) 12, " \ "endianness = (int) BIG_ENDIAN, " /* TBC */ \ "red_mask = (long) 0xfff0000000000000, " \ "green_mask = (long) 0x0000fff000000000, " \ "blue_mask = (long) 0x0000000fff000000, " \ "alpha_mask = (long) 0x0000000000fff000, \ "width = " GST_VIDEO_SIZE_RANGE ", " \ "height = " GST_VIDEO_SIZE_RANGE ", " \ "framerate = " GST_VIDEO_FPS_RANGE Le 11/04/2011 23:28, Sebastian Dröge a écrit :
_______________________________________________ gstreamer-devel mailing list [hidden email] http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel |
On Wed, 2011-04-13 at 11:36 +0400, Nicolas Bertrand wrote:
> Hi I still trying to start .... > For Jpeg2000 with RGB : > > If I understand well, we need to switch for 32 to 64 bits > represenation ... > > Is This caps seems correct ? > > #define GST_VIDEO_CAPS_SRGB64 \ > "video/x-raw-rgb, " \ > "bpp = (int) 64, " /* ??or 36 : 2x12 bits per component */ \ > "depth = (int) 12, " \ > "endianness = (int) BIG_ENDIAN, " /* TBC */ \ > "red_mask = (long) 0xfff0000000000000, " \ > "green_mask = (long) 0x0000fff000000000, " \ > "blue_mask = (long) 0x0000000fff000000, " \ > "alpha_mask = (long) 0x0000000000fff000, \ > "width = " GST_VIDEO_SIZE_RANGE ", " \ > "height = " GST_VIDEO_SIZE_RANGE ", " \ > "framerate = " GST_VIDEO_FPS_RANGE to do something similar to that. Also how are the 3x12bits packed here? 36 bits and 12 bits padding? Each component as 16 bits with 2 bits padding? _______________________________________________ gstreamer-devel mailing list [hidden email] http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel signature.asc (205 bytes) Download Attachment |
Free forum by Nabble | Edit this page |