two problems with latest matroska mux/demux
Glen Diener
grd at loganmill.net
Fri Jul 24 14:51:12 PDT 2015
I have run into two problems with the matroska plugins in
plugins-good, working with the latest development build, as of July
24, 2015.
First, I can't get matroskamux to write track tags unless I set the
'streamable' property to true. As a simple demo:
$ gst-launch-1.0 -e videotestsrc ! taginject tags=comment=hello !
matroskamux ! filesink location=x.mkv
After control-c, running "mkvinfo x.mkv" indicates the 'comment' tag
is not set. Rerunning with streamable=true:
$ gst-launch-1.0 -e videotestsrc ! taginject tags=title=hello !
matroskamux streamable=true ! filesink location=x.mkv
...and mkvinfo verifies that the tag is now set. I can see from the
source code (matroskamux.c, line 2573) that this is intentional
behavior. Can someone suggest why this is so? I modified
matroskamux.c to delete this requirement: this fixed it for me, and
nothing has blown up so far.
Second, and more vexing, I can not get gstreamer to report track tags
at all. I know they are in there (mkvinfo tells me so), but I can't
extract them in my own application code and, it seems, neither can
gst-launch. For example:
$ gst-launch-1.0 -e videotestsrc ! taginject tags=comment=hello !
matroskamux streamable=true ! filesink location=x.mkv
mvkinfo verifies that the tag is set. But the following only reports
the implicit tags:
$ gst-launch-1.0 -t filesrc location=./x.mkv ! matroskademux ! fakesink
Setting pipeline to PAUSED ...
Pipeline is PREROLLING ...
FOUND TAG : found by element "fakesink0".
container format: Matroska
FOUND TAG : found by element "fakesink0".
video codec: Uncompressed planar YUV 4:4:4
Pipeline is PREROLLED ...
Setting pipeline to PLAYING ...
Am I missing something, or is this just broken?
Thanks,
-grd
More information about the gstreamer-devel
mailing list