summaryrefslogtreecommitdiff
path: root/ext/dc1394
Commit message (Collapse)AuthorAgeFilesLines
* meson: build dc1394 pluginTim-Philipp Müller2018-12-171-0/+12
|
* dc1394src: Remove logically dead codeEdward Hervey2017-11-241-8/+2
| | | | | | | buffer would always be NULL in the error case. Simplify and just return GST_FLOW_ERROR CID #1417216
* Remove plugin specific static build optionNicolas Dufresne2017-05-161-2/+0
| | | | | Static and dynamic plugins now have the same interface. The standard --enable-static/--enable-shared toggle are sufficient.
* docs: Port all docstring to gtk-doc markdownThibault Saunier2017-04-121-3/+3
|
* dc1394src: check for disabled transmission in _stop_camJoan Pau Beltran2016-06-201-0/+22
| | | | | | | For symetry with _start_cam, check that the transmission is effectively disabled in _stop_cam. https://bugzilla.gnome.org/show_bug.cgi?id=763026
* dc1394src: minor clean-upTim-Philipp Müller2016-06-091-20/+11
| | | | We always call _parse_caps() with non-NULL out vars.
* dc1394src: fix some more c99-ismsTim-Philipp Müller2016-06-091-13/+17
|
* dc1394src: prefix and file names according to Gstreamer conventionsJoan Pau Beltran2016-06-093-122/+130
| | | | | | | | | | | | | Replace the type and function prefix to follow the conventions: - Use `GST_TYPE_DC1394_SRC` instead of `GST_TYPE_DC1394`. - Use `GstDC1394Src` and `GstDC1394SrcClass` instead of `GstDc1394` and `GstDc1394Class`. - Use `gst_dc1394_src` instead of `gst_dc1394`. https://bugzilla.gnome.org/show_bug.cgi?id=763026
* dc1394src: port to 1.XJoan Pau Beltran2016-06-093-1118/+990
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The dc1394src is a PushSrc element for IIDC cameras based on libdc1394. The implementation from the 0.x series is deffective: caps negotiation does not work, and some video formats provided by the camera are not supported. Refactor the code to port it to 1.X and enhance the support for the full set of video options of IIDC cameras: - The IIDC specification includes a set of camera video modes (video format, frame size, and frame rates). They do not map perfectly to Gstreamer formats, but those that do not match are very rare (if used at all by any camera). In addition, although the specification includes a raw format, some cameras use mono video formats to capture in Bayer format. Map corresponding video modes to Gstreamer formats in capabilities, allowing both gray raw and Bayer video formats for mono video modes. - The specification includes scalable video modes (Format7), where the frame size and rate can be set to arbitrary values (within the limits of the camera and the bus transport). Allow the use of such mode, using the frame size and rate from the negotiatied caps, and set the camera frame rate adjusting the packet size as in: <http://damien.douxchamps.net/ieee1394/libdc1394/faq/#How_do_I_set_the_frame_rate> The scalable modes also allow for a custom ROI offset. Support for it can be easily added later using properties. - Camera operation using libdc1394 is as follows: 1. Enumerate cameras on the system and open the camera identified the enumeration index or by a GUID (64bit hex code). 2. Query the video formats supported by the camera. 3. Configure the camera for the desired video format. 4. Setup the capture resources for the configured video format and start the camera transmission. 5. Capture frames from the camera and release them when not used. 6. Stop the camera transmission and clear the capture resources. 7. Close the camera freeing its resources. Do steps 2 and 3 when getting and setting the caps respectively. Ideally 4 and 6 would be done when going from PAUSED to PLAYING and viceversa, but since caps might not be set yet, the video mode is not properly configured leaving the camera in a broken state. Hence, setup capture and start transmission in the set caps method, and consequently clear the capture and stop the transmission when going from PAUSED to READY (instead of PLAYING to PAUSED). Symmetrycally, open the camera when going from READY to PAUSED, allowing to probe the camera caps in the negotiation stage. Implement that using the `start` and `stop` methods of `GstBaseSrc`, instead of the `change-state` method of `GstElement`. Stop the camera before setting new caps and restarting it again to handle caps reconfiguration while in PLAYING (it has no effect if the camera is not started). - Create buffers copying the bytes of the captured frames. Alternatively, the buffers could just wrap the bytes of the frames, releasing the frame in the buffer's destroy notify function, if all buffers were destroyed before going from PLAYING to PAUSED. - No timestamp nor offset is set when creating buffers. Timestamping is delegated to the parent class BaseSrc, setting `gst_base_src_set_live` TRUE, `gst_base_src_set_format` with GST_FORMAT_TIME and `gst_base_src_set_do_timestamp`. Captured frames have a timestamp field with the system time at the completion of the transmission of the frame, but it is not sure that this comes from a monotonic clock, and it seems to be left NULL in Windows. - Use GUID and unit properties to select the camera to operate on. The camera number used in version 0.X does not uniquely identify the device (it depends on the set of cameras currently detected). Since the GUID is 64bit identifier (same as MAC address), handle it with a string property with its hexadecimal representation. For practicality, operate on the first camera available if the GUID is null (default) and match any camera unit number if unit is -1. Alternatively, the GUID could be handed with an unsigned 64 bit integer type property, using `0xffffffffffffffff` as default value to select the first camera available (it is not a valid GUID value). - Keep name `GstDc1394` and prefix `gst_dc1394` as in version 0.X, although `GstDC1394Src` and `gst_dc1394_src` are more descriptive. - Adjust build files to reenable the compilation of the plugin. Remove dc1394 from the list of unported plugins in configure.ac. Add the missing flags and libraries to Makefile. Use `$()` for variable substitution, as many plugins do, although other plugins use `@@` instead. https://bugzilla.gnome.org/show_bug.cgi?id=763026
* Remove a bunch of silly ';;' typos at the end of linesJan Schmidt2015-03-121-1/+1
|
* gst: Add better support for static pluginsSebastian Dröge2013-04-151-1/+1
|
* Fix FSF addressTim-Philipp Müller2012-11-042-4/+4
| | | | https://bugzilla.gnome.org/show_bug.cgi?id=687520
* Use gst_element_class_set_static_metadata()Tim-Philipp Müller2012-10-171-2/+2
| | | | | where possible. Avoids some string copies. Also re-indent some stuff. Also some indent fixes here and there.
* replace gst_element_class_set_details_simple with gst_element_class_set_metadataMark Nauwelaerts2012-09-141-1/+1
|
* gst: Update for GST_PLUGIN_DEFINE() API changesSebastian Dröge2012-04-051-1/+1
|
* dc1394src: Implement LATENCY querySebastian Dröge2011-05-261-4/+55
| | | | | Based on the LATENCY query code in v4l2src and the patch by Tristan Matthews. Fixes bug #625520.
* Remove setting of plugindir from MakefilesDavid Schleef2011-04-011-1/+0
|
* various (ext): add missing G_PARAM_STATIC_STRINGS flagsStefan Kost2010-10-191-4/+4
| | | | Canonicalize property names as needed.
* Add -Wredundant-decls flagBenjamin Otte2010-03-221-2/+0
| | | | and fix warnings from it
* Add -Wmissing-declarations -Wmissing-prototypes to configure flagsBenjamin Otte2010-03-211-5/+3
| | | | And fix all warnings
* gst_element_class_set_details => gst_element_class_set_details_simpleBenjamin Otte2010-03-181-7/+4
|
* dc1394: list valid iso-speeds in help and validate speeds in set_property.Tristan Matthews2010-03-091-3/+4
|
* dc1394: check iso-speed values in set_property, ignore if invalidTristan Matthews2010-03-091-4/+19
|
* dc1394: add iso-speed propertyTristan Matthews2010-03-092-5/+52
| | | | | | | Add iso-speed property which allows for higher bandwidth dc video. Automatically set to b-mode as needed. Fixes #603745.
* Don't install static libs for plugins. Fixes #550851 for -bad.Stefan Kost2008-11-041-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Original commit message from CVS: * ext/alsaspdif/Makefile.am: * ext/amrwb/Makefile.am: * ext/apexsink/Makefile.am: * ext/arts/Makefile.am: * ext/artsd/Makefile.am: * ext/audiofile/Makefile.am: * ext/audioresample/Makefile.am: * ext/bz2/Makefile.am: * ext/cdaudio/Makefile.am: * ext/celt/Makefile.am: * ext/dc1394/Makefile.am: * ext/dirac/Makefile.am: * ext/directfb/Makefile.am: * ext/divx/Makefile.am: * ext/dts/Makefile.am: * ext/faac/Makefile.am: * ext/faad/Makefile.am: * ext/gsm/Makefile.am: * ext/hermes/Makefile.am: * ext/ivorbis/Makefile.am: * ext/jack/Makefile.am: * ext/jp2k/Makefile.am: * ext/ladspa/Makefile.am: * ext/lcs/Makefile.am: * ext/libfame/Makefile.am: * ext/libmms/Makefile.am: * ext/metadata/Makefile.am: * ext/mpeg2enc/Makefile.am: * ext/mplex/Makefile.am: * ext/musepack/Makefile.am: * ext/musicbrainz/Makefile.am: * ext/mythtv/Makefile.am: * ext/nas/Makefile.am: * ext/neon/Makefile.am: * ext/ofa/Makefile.am: * ext/polyp/Makefile.am: * ext/resindvd/Makefile.am: * ext/sdl/Makefile.am: * ext/shout/Makefile.am: * ext/snapshot/Makefile.am: * ext/sndfile/Makefile.am: * ext/soundtouch/Makefile.am: * ext/spc/Makefile.am: * ext/swfdec/Makefile.am: * ext/tarkin/Makefile.am: * ext/theora/Makefile.am: * ext/timidity/Makefile.am: * ext/twolame/Makefile.am: * ext/x264/Makefile.am: * ext/xine/Makefile.am: * ext/xvid/Makefile.am: * gst-libs/gst/app/Makefile.am: * gst-libs/gst/dshow/Makefile.am: * gst/aiffparse/Makefile.am: * gst/app/Makefile.am: * gst/audiobuffer/Makefile.am: * gst/bayer/Makefile.am: * gst/cdxaparse/Makefile.am: * gst/chart/Makefile.am: * gst/colorspace/Makefile.am: * gst/dccp/Makefile.am: * gst/deinterlace/Makefile.am: * gst/deinterlace2/Makefile.am: * gst/dvdspu/Makefile.am: * gst/festival/Makefile.am: * gst/filter/Makefile.am: * gst/flacparse/Makefile.am: * gst/flv/Makefile.am: * gst/games/Makefile.am: * gst/h264parse/Makefile.am: * gst/librfb/Makefile.am: * gst/mixmatrix/Makefile.am: * gst/modplug/Makefile.am: * gst/mpeg1sys/Makefile.am: * gst/mpeg4videoparse/Makefile.am: * gst/mpegdemux/Makefile.am: * gst/mpegtsmux/Makefile.am: * gst/mpegvideoparse/Makefile.am: * gst/mve/Makefile.am: * gst/nsf/Makefile.am: * gst/nuvdemux/Makefile.am: * gst/overlay/Makefile.am: * gst/passthrough/Makefile.am: * gst/pcapparse/Makefile.am: * gst/playondemand/Makefile.am: * gst/rawparse/Makefile.am: * gst/real/Makefile.am: * gst/rtjpeg/Makefile.am: * gst/rtpmanager/Makefile.am: * gst/scaletempo/Makefile.am: * gst/sdp/Makefile.am: * gst/selector/Makefile.am: * gst/smooth/Makefile.am: * gst/smoothwave/Makefile.am: * gst/speed/Makefile.am: * gst/speexresample/Makefile.am: * gst/stereo/Makefile.am: * gst/subenc/Makefile.am: * gst/tta/Makefile.am: * gst/vbidec/Makefile.am: * gst/videodrop/Makefile.am: * gst/videosignal/Makefile.am: * gst/virtualdub/Makefile.am: * gst/vmnc/Makefile.am: * gst/y4m/Makefile.am: * sys/acmenc/Makefile.am: * sys/cdrom/Makefile.am: * sys/dshowdecwrapper/Makefile.am: * sys/dshowsrcwrapper/Makefile.am: * sys/dvb/Makefile.am: * sys/dxr3/Makefile.am: * sys/fbdev/Makefile.am: * sys/oss4/Makefile.am: * sys/qcam/Makefile.am: * sys/qtwrapper/Makefile.am: * sys/vcd/Makefile.am: * sys/wininet/Makefile.am: * win32/common/config.h: Don't install static libs for plugins. Fixes #550851 for -bad.
* docs/plugins/: docs/plugins/inspect/plugin-mythtv.xmlStefan Kost2008-06-131-8/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Original commit message from CVS: * docs/plugins/Makefile.am: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins-sections.txt: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/gst-plugins-bad-plugins.hierarchy: * docs/plugins/gst-plugins-bad-plugins.interfaces: * docs/plugins/gst-plugins-bad-plugins.prerequisites: * docs/plugins/gst-plugins-bad-plugins.signals: * docs/plugins/inspect/plugin-alsaspdif.xml: * docs/plugins/inspect/plugin-amrwb.xml: * docs/plugins/inspect/plugin-app.xml: * docs/plugins/inspect/plugin-bayer.xml: * docs/plugins/inspect/plugin-bz2.xml: * docs/plugins/inspect/plugin-cdaudio.xml: * docs/plugins/inspect/plugin-cdxaparse.xml: * docs/plugins/inspect/plugin-dtsdec.xml: * docs/plugins/inspect/plugin-dvb.xml: * docs/plugins/inspect/plugin-dvdspu.xml: * docs/plugins/inspect/plugin-faac.xml: * docs/plugins/inspect/plugin-faad.xml: * docs/plugins/inspect/plugin-fbdevsink.xml: * docs/plugins/inspect/plugin-festival.xml: * docs/plugins/inspect/plugin-filter.xml: * docs/plugins/inspect/plugin-flvdemux.xml: * docs/plugins/inspect/plugin-freeze.xml: * docs/plugins/inspect/plugin-gsm.xml: * docs/plugins/inspect/plugin-gstinterlace.xml: * docs/plugins/inspect/plugin-gstrtpmanager.xml: * docs/plugins/inspect/plugin-h264parse.xml: * docs/plugins/inspect/plugin-interleave.xml: * docs/plugins/inspect/plugin-jack.xml: * docs/plugins/inspect/plugin-ladspa.xml: * docs/plugins/inspect/plugin-metadata.xml: * docs/plugins/inspect/plugin-mms.xml: * docs/plugins/inspect/plugin-modplug.xml: * docs/plugins/inspect/plugin-mpeg2enc.xml: * docs/plugins/inspect/plugin-mpeg4videoparse.xml: * docs/plugins/inspect/plugin-mpegtsparse.xml: * docs/plugins/inspect/plugin-mpegvideoparse.xml: * docs/plugins/inspect/plugin-musepack.xml: * docs/plugins/inspect/plugin-musicbrainz.xml: * docs/plugins/inspect/plugin-mve.xml: * docs/plugins/inspect/plugin-mythtv.xml * docs/plugins/inspect/plugin-nas.xml: * docs/plugins/inspect/plugin-neon.xml: * docs/plugins/inspect/plugin-nsfdec.xml: * docs/plugins/inspect/plugin-nuvdemux.xml: * docs/plugins/inspect/plugin-oss4.xml * docs/plugins/inspect/plugin-rawparse.xml: * docs/plugins/inspect/plugin-real.xml: * docs/plugins/inspect/plugin-replaygain.xml: * docs/plugins/inspect/plugin-rfbsrc.xml: * docs/plugins/inspect/plugin-sdl.xml: * docs/plugins/inspect/plugin-sdp.xml: * docs/plugins/inspect/plugin-selector.xml: * docs/plugins/inspect/plugin-sndfile.xml: * docs/plugins/inspect/plugin-soundtouch.xml: * docs/plugins/inspect/plugin-spcdec.xml: * docs/plugins/inspect/plugin-speed.xml: * docs/plugins/inspect/plugin-speexresample.xml: * docs/plugins/inspect/plugin-stereo.xml: * docs/plugins/inspect/plugin-subenc.xml * docs/plugins/inspect/plugin-timidity.xml: * docs/plugins/inspect/plugin-tta.xml: * docs/plugins/inspect/plugin-vcdsrc.xml: * docs/plugins/inspect/plugin-videosignal.xml: * docs/plugins/inspect/plugin-vmnc.xml: * docs/plugins/inspect/plugin-wildmidi.xml: * docs/plugins/inspect/plugin-x264.xml: * docs/plugins/inspect/plugin-xvid.xml: * docs/plugins/inspect/plugin-y4menc.xml: * ext/amrwb/gstamrwbdec.c: * ext/amrwb/gstamrwbenc.c: * ext/amrwb/gstamrwbparse.c: * ext/dc1394/gstdc1394.c: * ext/directfb/dfbvideosink.c: * ext/ivorbis/vorbisdec.c: * ext/jack/gstjackaudiosink.c: * ext/mpeg2enc/gstmpeg2enc.cc: * ext/mplex/gstmplex.cc: * ext/musicbrainz/gsttrm.c: * ext/mythtv/gstmythtvsrc.c: * ext/theora/theoradec.c: * ext/timidity/gsttimidity.c: * ext/timidity/gstwildmidi.c: * gst-libs/gst/app/gstappsink.c: * gst/deinterlace/gstdeinterlace.c: * gst/dvdspu/gstdvdspu.c: * gst/festival/gstfestival.c: * gst/freeze/gstfreeze.c: * gst/interleave/deinterleave.c: * gst/interleave/interleave.c: * gst/modplug/gstmodplug.cc: * gst/nuvdemux/gstnuvdemux.c: Add missing elements to docs. Fix doc-markup: use convinience syntax for examples (produces valid docbook), add several refsec2 when we have several titles. Fix some types.
* Do not use short_description in section docs for elements. We extract them ↵Stefan Kost2008-06-121-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | from element details and there will be war... Original commit message from CVS: * ext/dc1394/gstdc1394.c: * ext/ivorbis/vorbisdec.c: * ext/jack/gstjackaudiosink.c: * ext/metadata/gstmetadatademux.c: * ext/mythtv/gstmythtvsrc.c: * ext/theora/theoradec.c: * gst-libs/gst/app/gstappsink.c: * gst/bayer/gstbayer2rgb.c: * gst/deinterlace/gstdeinterlace.c: * gst/rawparse/gstaudioparse.c: * gst/rawparse/gstvideoparse.c: * gst/rtpmanager/gstrtpbin.c: * gst/rtpmanager/gstrtpclient.c: * gst/rtpmanager/gstrtpjitterbuffer.c: * gst/rtpmanager/gstrtpptdemux.c: * gst/rtpmanager/gstrtpsession.c: * gst/rtpmanager/gstrtpssrcdemux.c: * gst/selector/gstinputselector.c: * gst/selector/gstoutputselector.c: * gst/videosignal/gstvideoanalyse.c: * gst/videosignal/gstvideodetect.c: * gst/videosignal/gstvideomark.c: * sys/oss4/oss4-mixer.c: * sys/oss4/oss4-sink.c: * sys/oss4/oss4-source.c: Do not use short_description in section docs for elements. We extract them from element details and there will be warnings if they differ. Also fixing up the ChangeLog order.
* Add support for libdc1394 2.0.0 and above and require this version now. ↵Daniel Fischer2008-02-262-50/+47
| | | | | | | | | | | | | Fixes bug #514964. Original commit message from CVS: Patch by: Daniel Fischer <dan at f3c dot com> * configure.ac: * ext/dc1394/gstdc1394.c: (gst_dc1394_change_state), (gst_dc1394_get_cam_caps), (gst_dc1394_open_cam_with_best_caps): * ext/dc1394/gstdc1394.h: Add support for libdc1394 2.0.0 and above and require this version now. Fixes bug #514964.
* configure.ac: The dc1394 plugin seems to use API that was removed or changed ↵Tim-Philipp Müller2008-02-071-1/+2
| | | | | | | | | | | | before the final 2.0.0 release, so only ... Original commit message from CVS: * configure.ac: The dc1394 plugin seems to use API that was removed or changed before the final 2.0.0 release, so only build it if 2.0.0-rc5 is available. Someone needs to port it to the final API. * ext/dc1394/gstdc1394.c: (gst_dc1394_change_camera_transmission): Include string.h for memcpy and use g_usleep instead of usleep.
* docs/plugins/: Regenerate.Stefan Kost2008-01-221-0/+5
| | | | | | | | | | | | | Original commit message from CVS: * docs/plugins/gst-plugins-bad-plugins-docs.sgml: * docs/plugins/gst-plugins-bad-plugins.args: * docs/plugins/inspect/plugin-mpeg2enc.xml: * docs/plugins/inspect/plugin-musepack.xml: Regenerate. * docs/plugins/inspect/plugin-tremor.xml: Add vorbisidec aka trmor. * ext/dc1394/gstdc1394.c: Add short description.
* ext/dc1394/gstdc1394.c: Set initial structure name to fix assertion, due to ↵Stefan Kost2007-11-251-3/+2
| | | | | | | | | recent caps name constraints. Original commit message from CVS: * ext/dc1394/gstdc1394.c: Set initial structure name to fix assertion, due to recent caps name constraints.
* ext/dc1394/gstdc1394.c: Make a bunch of functions static, and move variable ↵Jan Schmidt2007-06-291-56/+41
| | | | | | | | | | | | | | | declarations to the start of blocks to av... Original commit message from CVS: * ext/dc1394/gstdc1394.c: (gst_dc1394_src_fixate), (gst_dc1394_create), (gst_dc1394_caps_set_format_vmode_caps), (gst_dc1394_set_caps_framesize_range), (gst_dc1394_caps_set_framerate_list), (gst_dc1394_get_cam_caps), (gst_dc1394_framerate_frac_to_const), (gst_dc1394_open_cam_with_best_caps): Make a bunch of functions static, and move variable declarations to the start of blocks to avoid problems on older gcc. Make sure to unset value types.
* ext/dc1394/gstdc1394.c: The correct fourcc for the 4:1:1 packed format is ↵Jan Schmidt2007-06-291-2/+2
| | | | | | | | | | 'IYU1'. Original commit message from CVS: * ext/dc1394/gstdc1394.c: (gst_dc1394_set_caps_color): The correct fourcc for the 4:1:1 packed format is 'IYU1'. With CVS of ffmpegcolorspace from plugins-base, I can now get 30 fps from the iSight.
* ext/dc1394/gstdc1394.c: Change a g_print to a GST_DEBUG message.Jan Schmidt2007-06-291-1/+2
| | | | | | Original commit message from CVS: * ext/dc1394/gstdc1394.c: (gst_dc1394_set_caps_color): Change a g_print to a GST_DEBUG message.
* Commit new dc1394src element.Eric Jonas2007-06-293-0/+1341
Original commit message from CVS: * configure.ac: * ext/Makefile.am: * ext/dc1394/Makefile.am: * ext/dc1394/gstdc1394.c: (gst_dc1394_base_init), (gst_dc1394_class_init), (gst_dc1394_init), (gst_dc1394_src_fixate), (gst_dc1394_set_property), (gst_dc1394_get_property), (gst_dc1394_getcaps), (gst_dc1394_setcaps), (gst_dc1394_get_times), (gst_dc1394_create), (gst_dc1394_parse_caps), (gst_dc1394_change_state), (gst_dc1394_caps_set_format_vmode_caps), (gst_dc1394_set_caps_color), (gst_dc1394_set_caps_framesize), (gst_dc1394_set_caps_framesize_range), (gst_dc1394_caps_set_framerate_list), (gst_dc1394_framerate_const_to_frac), (gst_dc1394_get_all_dc1394_caps), (gst_dc1394_get_cam_caps), (gst_dc1394_framerate_frac_to_const), (gst_dc1394_open_cam_with_best_caps), (gst_dc1394_change_camera_transmission), (plugin_init): * ext/dc1394/gstdc1394.h: Commit new dc1394src element. Patch By: Eric Jonas < jonas at mit dot edu > Close: #387251