New parser for parsing a custom format

Bharath Bhushan (Kowshik) b.kowshik at drishti.com
Wed Feb 3 07:27:50 UTC 2021


Hello Gstreamers,

I am planning to write a new gstreamer parser plugin for parsing a custom byte-stream format. The pipeline should look something like below:-
Example A: tcpclientsrc ! my-custom-parser ! h264parse ! fakesink 
Example B: filesrc ! my-custom-parser ! h264parse ! fakesink

The byte-stream has the following format:
	4 bytes: size of data segment and timestamp
	8 bytes: timestamp
	N-8 bytes: data segment which is a H.264 NALU

My plugin will create one GstBuffer per data segment and set the PTS/DTS based on the timestamp and send it to the downstream plugin (h264parse for example).

Some questions:-
- Is there a simple parser example plugin which I can start from?
- Is vorbisparse a good example to use? Is gstttransform.c in the gst-templates repo a good example to use?
- What are the options for push vs pull that are available in my parser? 
- Is there any documentation about how to write new parsers?

Any help is greatly appreciated.


More information about the gstreamer-devel mailing list