how to only a frame

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

how to only a frame

Francesco Argese
Hi all

I'm trying to capture only a frame from my dvcam.

I have seen the properties and num_buffers in dv1394src (but also in
other source) but i don't know how to use them.

I have done some attempts but i have not understand how it they works.

Can anyone help me?

Thanks
Francesco Argese

-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/gstreamer-devel
Reply | Threaded
Open this post in threaded view
|

Re: how to only a frame

Jorge-2
On Thu, 2008-10-02 at 12:59 +0200, Francesco Argese wrote:
> Hi all
>
> I'm trying to capture only a frame from my dvcam.
>

What i did was setting a probe on a pad. When you want to take a frame
you setup the probe, and then in the probe body you save the frame and
remove the probe. Thus a single frame is captured. Something like this
(in python):

def grab_frame(self):
 self.grabprobe = self.grabpad.add_buffer_probe(self.process_frame, []);
       
def process_frame(self, pad, buffer, ret):
 pad.remove_buffer_probe(self.grabprobe)
 #do stuff with buffer
 return True


If you want to save the frame, you can just capture after an encoder
(say jpegenc). Alternativelly you can avoid the encoding bin, and encode
only the captured frame using some other library in the probe itself.
This could be useful if you want encode using say png, which kills the
CPU if you do it on a stream.

Jorge


-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/gstreamer-devel
Reply | Threaded
Open this post in threaded view
|

Re: how to only a frame

Francesco Argese
Thanks. This solution works well but i'd like to do it from a pipeline.

Is it possible? Is there any caps to obtain the same behaviour?

Regards
Francesco Argese

-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/gstreamer-devel
Reply | Threaded
Open this post in threaded view
|

Re: how to only a frame

Jorge-2
On Mon, 2008-10-06 at 09:12 +0200, Francesco Argese wrote:
> Thanks. This solution works well but i'd like to do it from a pipeline.
>
> Is it possible? Is there any caps to obtain the same behaviour?

I'd swear there must be a bin for doing exactly that, but seems there
isn't. Perhaps you could arrange somehow pipelines with tees and queues
and then somehow play/pause them to feed single frames... Or grab from a
pad and then feed the frames by hand into another pipeline using appsrc
or something...

In any case:

http://bugzilla.gnome.org/show_bug.cgi?id=464630


Jorge



-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/gstreamer-devel
Reply | Threaded
Open this post in threaded view
|

Re: how to only a frame

Francesco Argese
Thanks,

the link was very useful!

2008/10/6 Jorge <[hidden email]>:

> On Mon, 2008-10-06 at 09:12 +0200, Francesco Argese wrote:
>> Thanks. This solution works well but i'd like to do it from a pipeline.
>>
>> Is it possible? Is there any caps to obtain the same behaviour?
>
> I'd swear there must be a bin for doing exactly that, but seems there
> isn't. Perhaps you could arrange somehow pipelines with tees and queues
> and then somehow play/pause them to feed single frames... Or grab from a
> pad and then feed the frames by hand into another pipeline using appsrc
> or something...
>
> In any case:
>
> http://bugzilla.gnome.org/show_bug.cgi?id=464630

-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/gstreamer-devel