Inputs / Sample code to build frame grabber on gstreamer-0.10

classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|

Inputs / Sample code to build frame grabber on gstreamer-0.10

Ashish Kumar Mishra
This post was updated on .
Dear All ,

1) We are having an setup with Video and Audio input which is stitched together to form
    an avi / mkv  file .

2) In one of our proposed plan , we need to support below mentioned functionalities :-
    Rewind
    Fast Forward / Backward
    Slow Play
    Capture Frame
    Forward Frame
    Reverse Frame

Now could group members please provide an input based on their previous exposure / any idea as to
how could these be supported.
The exposure i have is to create pipeline , pause ,start the pads and create .

3) Could team members let me know of any standard plugin we can use or to achieve above mentioned functionality we have to build custom plugin ?

We are able to create an avi / mkv file by capturing audio & video and store it to mSATA .
Loosely this is our pipeline now ( created as proof of concept on Gstreamer 1.6 )
gst-launch-1.0 -v v4l2src do-timestamp=true ! video/x-raw,width=960,height=720,framerate=30/1 ! timeoverlay shaded-background=1 ! x264enc tune=zerolatency ! mux. alsasrc ! audio/x-raw,width=16,depth=16,rate=44100,channels=2 ! queue ! mux. matroskamux name=mux  ! filesink


Thanks,
Ashish Kumar Mishra
Reply | Threaded
Open this post in threaded view
|

Re: Inputs / Sample code to build frame grabber on gstreamer-0.10

Nicolas Dufresne-4
Le lundi 07 mars 2016 à 01:54 -0800, Ashish Kumar Mishra a écrit :

> Dear All , 
>
> 1) We are having an TI Dm816x core with Video and Audio input which
> is
> stitched together to form 
>     an avi / mkv  file . 
>
> 2) In one of our proposed plan , we need to support below mentioned
> functionalities :-
>     Rewind 
>     Fast Forward / Backward 
>     Slow Play
See gst_element_seek() operations.

>     Capture Frame 

See "last-sample" property found on most video sinks.

>     Forward Frame
>     Reverse Frame

You can send step operation. Support vary depending on which mux format
you are using. Report bugs if you are having issues around this one.

>
> Now could group members please provide an input based on their
> previous
> exposure / any idea as to 
> how could these be supported. 
> The exposure i have is to create pipeline , pause ,start the pads and
> create
> . 
>
> 3) Could team members let me know of any standard plugin we can use
> or to
> achieve above mentioned functionality we have to build custom plugin
> ?
>
> We are able to create an avi / mkv file by capturing audio & video
> and store
> it to mSATA . 
> Loosely this is our pipeline now ( created as proof of concept on
> Gstreamer
> 1.6 )
> gst-launch-1.0 -v v4l2src do-timestamp=true !
Using do-timesamp=1 will lead to audio and video not being
synchronized. Should only be used if the driver timestamp are broken
anyway, and correct synchronization is not possible using HW timestamp
information.

> video/x-raw,width=960,height=720,framerate=30/1 ! timeoverlay
> shaded-background=1 ! x264enc tune=zerolatency ! mux. alsasrc !
> audio/x-raw,width=16,depth=16,rate=44100,channels=2 ! queue ! mux.
> matroskamux name=mux  ! filesink 

width and depth fields no longer exist in GStreamer 1.0 audio
capabilities. Set format=S16LE or similar instead. This will otherwise
cause negotiation failure. This is also ambiguous as you subject line
says 0.10, which has been abandoned few years ago. On 0.10, you would
have to fix bugs by yourself, and for yourself. Also, step operation
didn't exist.

cheers,
Nicolas
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel

signature.asc (188 bytes) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: Inputs / Sample code to build frame grabber on gstreamer-0.10

Ashish Kumar Mishra
Dear Nicholas ,

Thanks for your pointers and comments on when to use do-timestamp property.

The shared sample pipeline was for Gstreamer-1.0 as you currently pointed ,it was to just give an rough idea of our approach.