[GEM-dev] V4L2

cyrille henry cyrille.henry at la-kitchen.fr
Wed Apr 2 15:59:38 CEST 2008



Georg Holzmann a écrit :
> Hallo!
> 
>> ./make does compile the 3 externals, but fail for the plugins :
>> Dans le fichier inclus à partir de plugins/FileReadGst.cpp:20:
>> plugins/FileReadGst.h:26:32: erreur: gst/app/gstappsink.h : Aucun 
>> fichier ou répertoire de ce type
>> plugins/FileReadGst.h:27:34: erreur: gst/app/gstappbuffer.h : Aucun 
>> fichier ou répertoire de ce type
>>
>> and then i've got lot's of error...
>>
>> (it mean that some include from plugins/FileReadGst.cpp:20: can't be 
>> find (gst/app/gstappsink.h and gst/app/gstappbuffer.h).
>>
>> i don't have the app folder in /usr/include/gstreamer-0.10/gst.
>> this is certainly because i don't have the gstreamer-plugins-bad headers.
>> i have gstreamer-plugins-bad, but i don't have any 
>> gstreamer-plugins-bad-dev package. where should i get it?
> 
> Yes thats the problem why I haven't released the external yet.
> You will need the gstreamer-plugins-bad headers and there is no dev 
> package - so you have to download directly the gstreamer source for 
> gstreamer-plugins-bad:
> http://gstreamer.freedesktop.org/src/
ok.
i downloaded the http://gstreamer.freedesktop.org/src/gst-plugins-bad/gst-plugins-bad-0.10.5.tar.gz file (as it's the same version that is curently installed on my computer)
then : 
sudo cp -r /home/nusmuk/Desktop/gst-plugins-bad-0.10.5/gst-libs/gst/* /usr/include/gstreamer-0.10/gst/


i now have this only error : 

nusmuk at nusmuk:~/pd/videoIO/src$ make
g++ -c -Wall -O2 -fPIC -ffast-math -mmmx -I/usr/include/gstreamer-0.10/ -I/usr/include/glib-2.0/ -I/usr/lib/glib-2.0/include/ -I/usr/include/libxml2 plugins/FileReadGst.cpp
plugins/FileReadGst.cpp: In member function «virtual int FileReadGst::processFrameData()":
plugins/FileReadGst.cpp:198: erreur: «gst_app_sink_pull_preroll" was not declared in this scope
make: *** [FileReadGst] Erreur 1

did i miss something?

> 
>> moreover, i don't understand GLIB_INCLUDE1 and GLIB_INCLUDE2.
>> should they be like : GLIB_INCLUDE1=/usr/include/glib-2.0/gobject/
>> GLIB_INCLUDE2=/usr/include/glib-2.0/glib/
>> ?
> 
> I have it like this:
> GLIB_INCLUDE1=/usr/include/glib-2.0
> GLIB_INCLUDE2=/usr/lib/glib-2.0/include/
> on ubuntu 7.10
> 
ok

>> for now, this objects crash when i open the helpfile because : No 
>> VideoIO Plugin found! Be sure that they are in the right path 
>> (/usr/lib/videoIO) !
> 
> Yes, that's clear because you have no plugin ...
> 
>> this "dazzle" device i'm using have 2 input : TV and analog input.
>>
>> using mplayer i get the analog input with :
>> mplayer -tv  driver=v4l2:device=/dev/video0:input=1:width=640:height=480 
>> tv://
>>
>> while tv input is the same but with input=0
>>
>> does pix_device_read can select the input 1?
>> (i can't see something like this in the help)
> 
> Hm, I haven't tested it ... you can specify the video device during 
> open, but I don't know if this will help you.
> However, you can change the following propoerties in the gstreamer 
> element (see [1]) - if it's in there you can just add the property.
ok, thanks. i'll have to digg.

cyrille

> 
> I also just realized that we only implemented v4l - but you can change 
> the "v4lsrc" to "v4l2src" in DeviceReadGst.cpp line 321.
> You can also set additional properties (as in [1]) like done in line 324 
> in that file.
> 
> If this works for you (v4l2) then I will add it also to the videoIO 
> external ...
> 
> LG
> Georg
> 
> 
> [1]:
> Element Properties:
>    name                : The name of the object
>                          flags: readable, writable
>                          String. Default: null Current: "v4lsrc0"
>    blocksize           : Size in bytes to read per buffer (0 = default)
>                          flags: readable, writable
>                          Unsigned Long. Range: 0 - 4294967295 Default: 
> 4096 Current: 4096
>    num-buffers         : Number of buffers to output before sending EOS
>                          flags: readable, writable
>                          Integer. Range: -1 - 2147483647 Default: -1 
> Current: -1
>    typefind            : Run typefind before negotiating
>                          flags: readable, writable
>                          Boolean. Default: false Current: false
>    device              : Device location
>                          flags: readable, writable
>                          String. Default: null Current: "/dev/video0"
>    device-name         : Name of the device
>                          flags: readable
>                          String. Default: null Current: null
>    flags               : Device type flags
>                          flags: readable
>                          Flags "GstV4lDeviceTypeFlags" Current: 0, "(none)"
>                             (0x00000001): Device can capture - CAPTURE
>                             (0x00000002): Device has a tuner - TUNER
>                             (0x00000008): Device can do overlay - OVERLAY
>                             (0x00000400): Device can decode MPEG - 
> MPEG_DECODER
>                             (0x00000800): Device can encode MPEG - 
> MPEG_ENCODER
>                             (0x00001000): Device can decode MJPEG - 
> MJPEG_DECODER
>                             (0x00002000): Device can encode MJPEG - 
> MJPEG_ENCODER
>                             (0x00010000): Device handles audio - AUDIO
>    autoprobe           : Whether the device should be probed for all 
> possible features
>                          flags: readable, writable
>                          Boolean. Default: true Current: true
>    autoprobe-fps       : Whether the device should be probed for framerates
>                          flags: readable, writable
>                          Boolean. Default: true Current: true
>    copy-mode           : Whether to send out copies of buffers, or 
> direct pointers to the mmap region
>                          flags: readable, writable
>                          Boolean. Default: true Current: true
>    timestamp-offset    : A time offset subtracted from timestamps set on 
> buffers (in ns)
>                          flags: readable, writable
>                          Integer64. Range: -9223372036854775808 - 
> 9223372036854775807 Default: 0 Current: 0
> 
> _______________________________________________
> GEM-dev mailing list
> GEM-dev at iem.at
> http://lists.puredata.info/listinfo/gem-dev
> 
> 




More information about the GEM-dev mailing list