Frame By Frame Tags

Brian Panneton brian.panneton at gmail.com
Thu Jun 16 17:11:26 UTC 2016


Actually I can't seem to find that data anywhere even while in PLAYING
mode. Is there somewhere else metadata is hidden aside from the TAGs? I
didn't see them in the CAPS either.

Thanks,
Brian

On Tue, Jun 14, 2016 at 3:44 PM, Brian Panneton <brian.panneton at gmail.com>
wrote:

> Hello,
>
> I currently am stepping frame by frame in PAUSED mode with the following
> python code and pulling out each frame:
>
> self.elements['innersink'].send_event(Gst.Event.new_step(Gst.Format.BUFFERS,
> 1, 1, True, False))
>         self.inner_sample = self.elements['innersink'].emit('pull-preroll')
>         self.inner_buffer = self.inner_sample.get_buffer()
>
> I am struggling to get tags out without being in PLAYING mode. Is there
> any way to get the Tags out while in PAUSED mode? From what I can tell, the
> only way to get the streaming tags is to listen for them on the bus similar
> to how one would listen for the EOS. I attempted this as I stepped through,
> but I couldn't seem to get anything.
>
> While in paused mode I do something like this to get some tags off the
> beginning:
>
>         while(True):
>             msg =
> self.pipeline_front.get_bus().pop_filtered(Gst.MessageType.TAG |
> Gst.MessageType.ERROR | Gst.MessageType.ASYNC_DONE)
>             print "TAG TYPE", msg, type(msg), msg.type
>             if msg.type != Gst.MessageType.TAG:
>                 print 'Done:', msg.type
>                 break
>             tags = msg.parse_tag()
>             print tags.to_string()
>             for tag in range(tags.n_tags()):
>                 name = tags.nth_tag_name(tag)
>                 print tag, name, tags.get_string(name)
>
>
> It seems to work, but I only get a few tags like the following. I assume
> these are metadata tags.
>
> taglist, video-codec=(string)H264;
> taglist, container-format=(string)Matroska;
> taglist, video-codec=(string)H.264;
>
> When I run 'strings <file>' command on the file I find these, so I know
> there are more tags.
> matroska
> GStreamer plugin version 1.2.4
> GStreamer Matroska muxer
> Video
> V_MPEG4/ISO/AVC
>
> The one I'm trying to pull out is the encoder tag (encoder=GStreamer
> plugin version 1.2.4) but I can't for the life of me find it. Any help
> would be appreciated!
>
> Thanks,
> Brian Panneton
>
>
>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/gstreamer-devel/attachments/20160616/65857468/attachment-0001.html>


More information about the gstreamer-devel mailing list