From 54399760aad93cb3ec36162ced7649c8cd8286db Mon Sep 17 00:00:00 2001 From: Olivier Naudan Date: Fri, 13 Apr 2012 09:08:41 -0400 Subject: Imported Upstream version 0.11.90 --- ChangeLog | 9461 +++++++++++++++++++- Makefile.am | 14 +- Makefile.in | 156 +- NEWS | 50 +- RELEASE | 38 +- aclocal.m4 | 112 +- autogen.sh | 18 +- common/Makefile.in | 77 +- common/check-exports | 20 +- common/check.mak | 11 +- common/gst.supp | 2 +- common/gstdoc-scangobj | 15 +- common/gtk-doc-plugins.mak | 11 +- common/gtk-doc.mak | 6 +- common/m4/Makefile.in | 66 +- common/m4/gst-args.m4 | 18 + common/m4/gst-check.m4 | 56 +- common/m4/gst-doc.m4 | 2 +- common/m4/gst-feature.m4 | 31 + common/m4/gst-glib2.m4 | 18 + common/m4/gst-plugindir.m4 | 4 +- common/win32.mak | 2 +- compile | 195 +- config.guess | 258 +- config.h.in | 27 +- config.sub | 209 +- configure | 5117 ++++++----- configure.ac | 92 +- depcomp | 74 +- docs/Makefile.in | 77 +- docs/design/Makefile.am | 1 + docs/design/Makefile.in | 67 +- docs/design/part-TODO.txt | 4 +- docs/design/part-element-transform.txt | 2 +- docs/design/part-events.txt | 53 +- docs/design/part-latency.txt | 25 + docs/design/part-negotiation.txt | 120 +- docs/design/part-overview.txt | 7 +- docs/design/part-query.txt | 101 +- docs/design/part-scheduling.txt | 25 +- docs/design/part-segments.txt | 2 +- docs/design/part-streams.txt | 2 +- docs/design/part-toc.txt | 89 + docs/faq/Makefile.in | 82 +- docs/faq/developing.xml | 4 +- docs/faq/general.xml | 2 +- docs/gst/Makefile.am | 3 +- docs/gst/Makefile.in | 76 +- docs/gst/gst-universe.svg | 234 +- docs/gst/gstreamer-docs.sgml | 15 +- docs/gst/gstreamer-sections.txt | 770 +- docs/gst/gstreamer.types | 4 +- docs/gst/gstreamer.types.in | 4 +- docs/gst/html/GstBin.html | 18 +- docs/gst/html/GstBus.html | 19 +- docs/gst/html/GstChildProxy.html | 107 +- docs/gst/html/GstClock.html | 220 +- docs/gst/html/GstControlBinding.html | 365 + docs/gst/html/GstControlSource.html | 324 + docs/gst/html/GstElement.html | 467 +- docs/gst/html/GstElementFactory.html | 85 +- docs/gst/html/GstGhostPad.html | 284 +- docs/gst/html/GstIndex.html | 1448 --- docs/gst/html/GstIndexFactory.html | 206 - docs/gst/html/GstObject.html | 518 +- docs/gst/html/GstPad.html | 2151 ++--- docs/gst/html/GstPadTemplate.html | 108 +- docs/gst/html/GstPipeline.html | 25 +- docs/gst/html/GstPlugin.html | 6 +- docs/gst/html/GstPluginFeature.html | 100 +- docs/gst/html/GstPreset.html | 59 +- docs/gst/html/GstRegistry.html | 258 +- docs/gst/html/GstSystemClock.html | 6 +- docs/gst/html/GstTagSetter.html | 74 +- docs/gst/html/GstTask.html | 73 +- docs/gst/html/GstTaskPool.html | 10 +- docs/gst/html/GstTypeFindFactory.html | 136 +- docs/gst/html/annotation-glossary.html | 8 +- docs/gst/html/api-index-deprecated.html | 8 +- docs/gst/html/api-index-full.html | 1532 ++-- docs/gst/html/gst-building.html | 10 +- docs/gst/html/gst-running.html | 14 +- docs/gst/html/gstreamer-Gst.html | 126 +- docs/gst/html/gstreamer-GstAtomicQueue.html | 6 +- docs/gst/html/gstreamer-GstBuffer.html | 1118 +-- docs/gst/html/gstreamer-GstBufferList.html | 52 +- docs/gst/html/gstreamer-GstBufferPool.html | 469 +- docs/gst/html/gstreamer-GstCaps.html | 434 +- docs/gst/html/gstreamer-GstDateTime.html | 18 +- docs/gst/html/gstreamer-GstEvent.html | 756 +- docs/gst/html/gstreamer-GstFilter.html | 158 - docs/gst/html/gstreamer-GstFormat.html | 26 +- docs/gst/html/gstreamer-GstGError.html | 25 +- docs/gst/html/gstreamer-GstInfo.html | 155 +- docs/gst/html/gstreamer-GstIterator.html | 143 +- docs/gst/html/gstreamer-GstMemory.html | 1186 ++- docs/gst/html/gstreamer-GstMessage.html | 434 +- docs/gst/html/gstreamer-GstMeta.html | 413 +- docs/gst/html/gstreamer-GstMiniObject.html | 70 +- docs/gst/html/gstreamer-GstParamSpec.html | 11 +- docs/gst/html/gstreamer-GstParse.html | 10 +- docs/gst/html/gstreamer-GstPoll.html | 12 +- docs/gst/html/gstreamer-GstQuery.html | 1556 +++- docs/gst/html/gstreamer-GstSample.html | 270 + docs/gst/html/gstreamer-GstSegment.html | 108 +- docs/gst/html/gstreamer-GstStructure.html | 71 +- docs/gst/html/gstreamer-GstTagList.html | 586 +- docs/gst/html/gstreamer-GstToc.html | 481 + docs/gst/html/gstreamer-GstTocSetter.html | 308 + docs/gst/html/gstreamer-GstTrace.html | 582 -- docs/gst/html/gstreamer-GstTypeFind.html | 39 +- docs/gst/html/gstreamer-GstUriHandler.html | 158 +- docs/gst/html/gstreamer-GstUtils.html | 257 +- docs/gst/html/gstreamer-GstValue.html | 701 +- docs/gst/html/gstreamer-GstVersion.html | 12 +- docs/gst/html/gstreamer-gstconfig.html | 30 +- docs/gst/html/gstreamer-hierarchy.html | 16 +- docs/gst/html/gstreamer-support.html | 17 +- docs/gst/html/gstreamer.devhelp2 | 731 +- docs/gst/html/gstreamer.html | 10 +- docs/gst/html/index.html | 50 +- docs/gst/html/index.sgml | 5102 +++++------ docs/gst/html/libgstreamer.html | 41 +- docs/gst/running.xml | 2 +- docs/libs/Makefile.am | 9 +- docs/libs/Makefile.in | 82 +- docs/libs/gstreamer-libs-docs.sgml | 25 +- docs/libs/gstreamer-libs-sections.txt | 297 +- docs/libs/gstreamer-libs.types | 12 +- docs/libs/html/GstAdapter.html | 283 +- docs/libs/html/GstBaseSink.html | 293 +- docs/libs/html/GstBaseSrc.html | 146 +- docs/libs/html/GstBaseTransform.html | 191 +- docs/libs/html/GstCollectPads.html | 952 -- docs/libs/html/GstCollectPads2.html | 1500 ++++ docs/libs/html/GstControlSource.html | 407 - docs/libs/html/GstController.html | 681 -- docs/libs/html/GstInterpolationControlSource.html | 285 +- docs/libs/html/GstLFOControlSource.html | 53 +- docs/libs/html/GstNetClientClock.html | 34 +- docs/libs/html/GstNetTimeProvider.html | 26 +- docs/libs/html/GstPushSrc.html | 10 +- docs/libs/html/GstTimedValueControlSource.html | 309 + docs/libs/html/GstTriggerControlSource.html | 124 + docs/libs/html/annotation-glossary.html | 14 +- docs/libs/html/api-index-deprecated.html | 8 +- docs/libs/html/api-index-full.html | 419 +- docs/libs/html/gstreamer-base.html | 13 +- docs/libs/html/gstreamer-check.html | 8 +- docs/libs/html/gstreamer-control.html | 23 +- docs/libs/html/gstreamer-dataprotocol.html | 33 - docs/libs/html/gstreamer-hierarchy.html | 27 +- docs/libs/html/gstreamer-libs-GstBaseParse.html | 288 +- docs/libs/html/gstreamer-libs-GstBitReader.html | 96 +- docs/libs/html/gstreamer-libs-GstBufferStraw.html | 36 +- docs/libs/html/gstreamer-libs-GstByteReader.html | 426 +- docs/libs/html/gstreamer-libs-GstByteWriter.html | 208 +- docs/libs/html/gstreamer-libs-GstCheck.html | 134 +- .../html/gstreamer-libs-GstControllerGObject.html | 464 - docs/libs/html/gstreamer-libs-GstDataQueue.html | 544 -- .../libs/html/gstreamer-libs-GstNetTimePacket.html | 97 +- .../html/gstreamer-libs-GstStreamConsistency.html | 17 +- .../html/gstreamer-libs-GstTypeFindHelper.html | 191 +- docs/libs/html/gstreamer-libs-gstdataprotocol.html | 671 -- docs/libs/html/gstreamer-libs.devhelp2 | 235 +- docs/libs/html/gstreamer-libs.html | 26 +- docs/libs/html/gstreamer-net.html | 12 +- docs/libs/html/index.html | 26 +- docs/libs/html/index.sgml | 1327 ++- docs/manual/Makefile.in | 82 +- docs/manual/advanced-autoplugging.xml | 12 +- docs/manual/advanced-dataaccess.xml | 20 +- docs/manual/advanced-dparams.xml | 14 +- docs/manual/basics-helloworld.xml | 4 +- docs/manual/highlevel-components.xml | 2 +- docs/plugins/Makefile.am | 2 +- docs/plugins/Makefile.in | 80 +- docs/plugins/gstreamer-plugins-docs.sgml | 4 +- docs/plugins/gstreamer-plugins.args | 10 +- docs/plugins/gstreamer-plugins.hierarchy | 46 +- docs/plugins/gstreamer-plugins.prerequisites | 1 + docs/plugins/html/ch01.html | 12 +- docs/plugins/html/ch02.html | 20 +- .../plugins/html/gstreamer-plugins-capsfilter.html | 36 +- docs/plugins/html/gstreamer-plugins-fakesink.html | 44 +- docs/plugins/html/gstreamer-plugins-fakesrc.html | 42 +- docs/plugins/html/gstreamer-plugins-fdsink.html | 20 +- docs/plugins/html/gstreamer-plugins-fdsrc.html | 42 +- docs/plugins/html/gstreamer-plugins-filesink.html | 34 +- docs/plugins/html/gstreamer-plugins-filesrc.html | 34 +- docs/plugins/html/gstreamer-plugins-funnel.html | 18 +- docs/plugins/html/gstreamer-plugins-identity.html | 20 +- .../html/gstreamer-plugins-input-selector.html | 40 +- .../plugins/html/gstreamer-plugins-multiqueue.html | 32 +- .../html/gstreamer-plugins-output-selector.html | 20 +- .../gstreamer-plugins-plugin-coreelements.html | 17 +- .../gstreamer-plugins-plugin-coreindexers.html | 70 - docs/plugins/html/gstreamer-plugins-queue.html | 26 +- docs/plugins/html/gstreamer-plugins-queue2.html | 26 +- docs/plugins/html/gstreamer-plugins-tee.html | 36 +- docs/plugins/html/gstreamer-plugins-typefind.html | 26 +- docs/plugins/html/gstreamer-plugins-valve.html | 16 +- docs/plugins/html/gstreamer-plugins.devhelp2 | 87 +- docs/plugins/html/index.html | 19 +- docs/plugins/html/index.sgml | 676 +- docs/plugins/inspect/plugin-coreelements.xml | 18 +- docs/plugins/inspect/plugin-coreindexers.xml | 13 - docs/pwg/Makefile.in | 82 +- docs/pwg/advanced-events.xml | 4 +- docs/pwg/building-boiler.xml | 2 +- docs/slides/Makefile.in | 66 +- docs/version.entities.in | 2 +- docs/xsl/Makefile.in | 66 +- gst-element-check.m4.in | 4 +- gst/Makefile.am | 96 +- gst/Makefile.in | 1232 ++- gst/glib-compat-private.h | 49 +- gst/gst-i18n-app.h | 1 + gst/gst-i18n-lib.h | 1 + gst/gst.c | 115 +- gst/gst.h | 11 +- gst/gst_private.h | 33 +- gst/gstatomicqueue.c | 60 +- gst/gstatomicqueue.h | 2 +- gst/gstbin.c | 196 +- gst/gstbuffer.c | 1118 ++- gst/gstbuffer.h | 182 +- gst/gstbufferlist.c | 31 +- gst/gstbufferlist.h | 8 +- gst/gstbufferpool.c | 435 +- gst/gstbufferpool.h | 98 +- gst/gstbus.c | 135 +- gst/gstbus.h | 16 +- gst/gstcaps.c | 521 +- gst/gstcaps.h | 124 +- gst/gstchildproxy.c | 187 +- gst/gstchildproxy.h | 72 +- gst/gstclock.c | 305 +- gst/gstclock.h | 286 +- gst/gstcompat.h | 6 +- gst/gstconfig.h.in | 4 + gst/gstcontrolbinding.c | 325 + gst/gstcontrolbinding.h | 119 + gst/gstcontrolsource.c | 142 + gst/gstcontrolsource.h | 139 + gst/gstdatetime.c | 3 + gst/gstdatetime.h | 46 +- gst/gstdebugutils.c | 146 +- gst/gstdebugutils.h | 8 +- gst/gstelement.c | 325 +- gst/gstelement.h | 81 +- gst/gstelementfactory.c | 52 +- gst/gstelementfactory.h | 60 +- gst/gsterror.c | 16 - gst/gsterror.h | 7 - gst/gstevent.c | 522 +- gst/gstevent.h | 212 +- gst/gstfilter.c | 88 - gst/gstfilter.h | 44 - gst/gstformat.c | 24 +- gst/gstformat.h | 28 +- gst/gstghostpad.c | 681 +- gst/gstghostpad.h | 59 +- gst/gstindex.c | 1009 --- gst/gstindex.h | 424 - gst/gstindexfactory.c | 214 - gst/gstindexfactory.h | 76 - gst/gstinfo.c | 130 +- gst/gstinfo.h | 43 +- gst/gstiterator.c | 24 +- gst/gstiterator.h | 90 +- gst/gstmarshal.list | 25 - gst/gstmemory.c | 766 +- gst/gstmemory.h | 322 +- gst/gstmessage.c | 201 +- gst/gstmessage.h | 103 +- gst/gstmeta.c | 174 +- gst/gstmeta.h | 164 +- gst/gstminiobject.c | 47 +- gst/gstminiobject.h | 19 +- gst/gstobject.c | 542 +- gst/gstobject.h | 36 +- gst/gstpad.c | 3934 ++++---- gst/gstpad.h | 570 +- gst/gstpadtemplate.c | 27 +- gst/gstpadtemplate.h | 4 +- gst/gstparamspecs.c | 2 +- gst/gstparamspecs.h | 4 +- gst/gstparse.c | 36 +- gst/gstparse.h | 12 +- gst/gstpipeline.c | 18 +- gst/gstpipeline.h | 28 +- gst/gstplugin.c | 71 +- gst/gstplugin.h | 14 +- gst/gstpluginfeature.c | 33 +- gst/gstpluginfeature.h | 29 +- gst/gstpluginloader.c | 2 +- gst/gstpluginloader.h | 8 +- gst/gstpoll.c | 85 +- gst/gstpoll.h | 4 +- gst/gstpreset.c | 206 +- gst/gstpreset.h | 10 +- gst/gstquark.c | 10 +- gst/gstquark.h | 31 +- gst/gstquery.c | 1363 ++- gst/gstquery.h | 318 +- gst/gstregistry.c | 253 +- gst/gstregistry.h | 189 +- gst/gstregistrybinary.c | 25 +- gst/gstregistrybinary.h | 2 +- gst/gstregistrychunks.c | 35 +- gst/gstsample.c | 204 + gst/gstsample.h | 129 + gst/gstsegment.c | 66 +- gst/gstsegment.h | 16 +- gst/gststructure.c | 199 +- gst/gststructure.h | 24 +- gst/gstsystemclock.c | 120 +- gst/gstsystemclock.h | 4 - gst/gsttaglist.c | 441 +- gst/gsttaglist.h | 85 +- gst/gsttagsetter.c | 55 +- gst/gsttagsetter.h | 76 +- gst/gsttask.c | 96 +- gst/gsttask.h | 13 +- gst/gsttaskpool.h | 2 +- gst/gsttoc.c | 1038 +++ gst/gsttoc.h | 112 + gst/gsttocsetter.c | 362 + gst/gsttocsetter.h | 67 + gst/gsttrace.c | 450 +- gst/gsttrace.h | 192 +- gst/gsttypefind.c | 33 +- gst/gsttypefind.h | 8 +- gst/gsttypefindfactory.c | 7 +- gst/gsttypefindfactory.h | 26 +- gst/gsturi.c | 105 +- gst/gsturi.h | 114 +- gst/gstutils.c | 689 +- gst/gstutils.h | 317 +- gst/gstvalue.c | 1558 +++- gst/gstvalue.h | 312 +- gst/gstversion.h.in | 8 +- gst/math-compat.h | 15 + gst/parse/Makefile.am | 32 +- gst/parse/Makefile.in | 148 +- gst/parse/grammar.tab.h | 14 +- gst/parse/grammar.y | 38 +- gst/parse/types.h | 2 +- gstreamer.doap | 33 + gstreamer.spec | 11 +- gstreamer.spec.in | 7 +- install-sh | 29 +- libs/Makefile.in | 77 +- libs/gst/Makefile.am | 20 +- libs/gst/Makefile.in | 87 +- libs/gst/base/Makefile.am | 76 +- libs/gst/base/Makefile.in | 427 +- libs/gst/base/gstadapter.c | 226 +- libs/gst/base/gstadapter.h | 15 +- libs/gst/base/gstbaseparse.c | 1704 ++-- libs/gst/base/gstbaseparse.h | 88 +- libs/gst/base/gstbasesink.c | 1574 ++-- libs/gst/base/gstbasesink.h | 37 +- libs/gst/base/gstbasesrc.c | 774 +- libs/gst/base/gstbasesrc.h | 33 +- libs/gst/base/gstbasetransform.c | 1285 +-- libs/gst/base/gstbasetransform.h | 94 +- libs/gst/base/gstbitreader-docs.h | 18 +- libs/gst/base/gstbitreader.h | 37 +- libs/gst/base/gstbytereader-docs.h | 64 +- libs/gst/base/gstbytereader.h | 159 +- libs/gst/base/gstbytewriter.c | 17 +- libs/gst/base/gstbytewriter.h | 144 +- libs/gst/base/gstcollectpads.c | 1415 --- libs/gst/base/gstcollectpads.h | 221 - libs/gst/base/gstcollectpads2.c | 2039 +++++ libs/gst/base/gstcollectpads2.h | 371 + libs/gst/base/gstdataqueue.c | 660 -- libs/gst/base/gstdataqueue.h | 180 - libs/gst/base/gstindex.c | 1005 +++ libs/gst/base/gstindex.h | 446 + libs/gst/base/gstmemindex.c | 430 + libs/gst/base/gstpushsrc.c | 27 +- libs/gst/base/gstpushsrc.h | 8 +- libs/gst/base/gsttypefindhelper.c | 110 +- libs/gst/base/gsttypefindhelper.h | 12 +- libs/gst/check/Makefile.am | 54 +- libs/gst/check/Makefile.in | 321 +- libs/gst/check/gstbufferstraw.c | 13 +- libs/gst/check/gstbufferstraw.h | 6 +- libs/gst/check/gstcheck.c | 166 +- libs/gst/check/gstcheck.h | 375 +- libs/gst/check/gstconsistencychecker.c | 164 +- libs/gst/check/gstconsistencychecker.h | 8 +- libs/gst/check/libcheck/Makefile.in | 140 +- libs/gst/check/libcheck/check.h | 2 +- libs/gst/check/libcheck/check.h.in | 2 +- libs/gst/controller/Makefile.am | 75 +- libs/gst/controller/Makefile.in | 356 +- libs/gst/controller/gstargbcontrolbinding.c | 407 + libs/gst/controller/gstargbcontrolbinding.h | 98 + libs/gst/controller/gstcontroller.c | 959 -- libs/gst/controller/gstcontroller.h | 137 - libs/gst/controller/gstcontrollerprivate.h | 53 - libs/gst/controller/gstcontrolsource.c | 155 - libs/gst/controller/gstcontrolsource.h | 163 - libs/gst/controller/gstdirectcontrolbinding.c | 387 + libs/gst/controller/gstdirectcontrolbinding.h | 103 + libs/gst/controller/gsthelper.c | 370 - libs/gst/controller/gstinterpolation.c | 811 -- .../gst/controller/gstinterpolationcontrolsource.c | 992 +- .../gst/controller/gstinterpolationcontrolsource.h | 46 +- .../gstinterpolationcontrolsourceprivate.h | 102 - libs/gst/controller/gstlfocontrolsource.c | 1202 +-- libs/gst/controller/gstlfocontrolsource.h | 8 +- libs/gst/controller/gstlfocontrolsourceprivate.h | 64 - libs/gst/controller/gsttimedvaluecontrolsource.c | 422 + libs/gst/controller/gsttimedvaluecontrolsource.h | 131 + libs/gst/controller/gsttriggercontrolsource.c | 256 + libs/gst/controller/gsttriggercontrolsource.h | 83 + libs/gst/controller/lib.c | 58 - libs/gst/dataprotocol/Makefile.am | 81 - libs/gst/dataprotocol/Makefile.in | 815 -- libs/gst/dataprotocol/dataprotocol.c | 768 -- libs/gst/dataprotocol/dataprotocol.h | 175 - libs/gst/dataprotocol/dp-private.h | 52 - libs/gst/helpers/Makefile.am | 2 +- libs/gst/helpers/Makefile.in | 112 +- libs/gst/helpers/gst-plugin-scanner.c | 3 - libs/gst/net/Makefile.am | 57 +- libs/gst/net/Makefile.in | 292 +- libs/gst/net/gstnetaddressmeta.c | 110 + libs/gst/net/gstnetaddressmeta.h | 57 + libs/gst/net/gstnetclientclock.c | 443 +- libs/gst/net/gstnetclientclock.h | 33 +- libs/gst/net/gstnettimepacket.c | 124 +- libs/gst/net/gstnettimepacket.h | 36 +- libs/gst/net/gstnettimeprovider.c | 361 +- libs/gst/net/gstnettimeprovider.h | 50 +- ltmain.sh | 4016 ++++++--- m4/Makefile.in | 66 +- m4/libtool.m4 | 2236 +++-- m4/ltoptions.m4 | 32 +- m4/ltversion.m4 | 12 +- m4/lt~obsolete.m4 | 12 +- missing | 53 +- pkgconfig/Makefile.am | 28 +- pkgconfig/Makefile.in | 119 +- pkgconfig/gstreamer-base-uninstalled.pc.in | 4 +- pkgconfig/gstreamer-base.pc.in | 6 +- pkgconfig/gstreamer-check-uninstalled.pc.in | 4 +- pkgconfig/gstreamer-check.pc.in | 6 +- pkgconfig/gstreamer-controller-uninstalled.pc.in | 4 +- pkgconfig/gstreamer-controller.pc.in | 6 +- pkgconfig/gstreamer-dataprotocol-uninstalled.pc.in | 15 - pkgconfig/gstreamer-dataprotocol.pc.in | 15 - pkgconfig/gstreamer-net-uninstalled.pc.in | 4 +- pkgconfig/gstreamer-net.pc.in | 6 +- pkgconfig/gstreamer-uninstalled.pc.in | 2 +- pkgconfig/gstreamer.pc.in | 6 +- plugins/Makefile.am | 4 +- plugins/Makefile.in | 81 +- plugins/elements/Makefile.am | 8 +- plugins/elements/Makefile.in | 211 +- plugins/elements/gstcapsfilter.c | 70 +- plugins/elements/gstdataqueue.c | 661 ++ plugins/elements/gstdataqueue.h | 180 + plugins/elements/gstelements.c | 2 +- plugins/elements/gstfakesink.c | 156 +- plugins/elements/gstfakesink.h | 3 - plugins/elements/gstfakesrc.c | 139 +- plugins/elements/gstfdsink.c | 125 +- plugins/elements/gstfdsink.h | 2 + plugins/elements/gstfdsrc.c | 38 +- plugins/elements/gstfilesink.c | 74 +- plugins/elements/gstfilesrc.c | 129 +- plugins/elements/gstfunnel.c | 74 +- plugins/elements/gstidentity.c | 214 +- plugins/elements/gstidentity.h | 4 - plugins/elements/gstinputselector.c | 240 +- plugins/elements/gstinputselector.h | 8 +- plugins/elements/gstmultiqueue.c | 368 +- plugins/elements/gstmultiqueue.h | 6 +- plugins/elements/gstoutputselector.c | 169 +- plugins/elements/gstqueue.c | 493 +- plugins/elements/gstqueue.h | 12 +- plugins/elements/gstqueue2.c | 839 +- plugins/elements/gstqueue2.h | 11 +- plugins/elements/gsttee.c | 245 +- plugins/elements/gsttee.h | 8 +- plugins/elements/gsttypefindelement.c | 507 +- plugins/elements/gsttypefindelement.h | 9 +- plugins/elements/gstvalve.c | 90 +- plugins/elements/gstvalve.h | 1 + plugins/indexers/Makefile.am | 30 - plugins/indexers/Makefile.in | 765 -- plugins/indexers/gstindexers.c | 43 - plugins/indexers/gstindexers.h | 33 - plugins/indexers/gstmemindex.c | 444 - po/LINGUAS | 2 +- po/af.gmo | Bin 15602 -> 15346 bytes po/af.po | 32 +- po/az.gmo | Bin 1716 -> 1716 bytes po/az.po | 27 +- po/be.gmo | Bin 5090 -> 5090 bytes po/be.po | 27 +- po/bg.gmo | Bin 44477 -> 44078 bytes po/bg.po | 37 +- po/ca.gmo | Bin 34675 -> 34417 bytes po/ca.po | 33 +- po/cs.gmo | Bin 22504 -> 33872 bytes po/cs.po | 739 +- po/da.gmo | Bin 32778 -> 32509 bytes po/da.po | 33 +- po/de.gmo | Bin 34533 -> 34244 bytes po/de.po | 35 +- po/el.gmo | Bin 45251 -> 44854 bytes po/el.po | 37 +- po/en_GB.gmo | Bin 11720 -> 11610 bytes po/en_GB.po | 30 +- po/eo.gmo | Bin 0 -> 4341 bytes po/eo.po | 1161 +++ po/es.gmo | Bin 34367 -> 34427 bytes po/es.po | 52 +- po/eu.gmo | Bin 30322 -> 30078 bytes po/eu.po | 33 +- po/fi.gmo | Bin 33190 -> 32937 bytes po/fi.po | 33 +- po/fr.gmo | Bin 34855 -> 34566 bytes po/fr.po | 34 +- po/gl.gmo | Bin 34471 -> 34182 bytes po/gl.po | 33 +- po/gstreamer-0.11.pot | 1480 --- po/gstreamer-1.0.pot | 1502 ++++ po/hu.gmo | Bin 34175 -> 33909 bytes po/hu.po | 33 +- po/id.gmo | Bin 30992 -> 32234 bytes po/id.po | 77 +- po/it.gmo | Bin 34364 -> 34112 bytes po/it.po | 35 +- po/ja.gmo | Bin 14404 -> 14247 bytes po/ja.po | 31 +- po/lt.gmo | Bin 32129 -> 31890 bytes po/lt.po | 33 +- po/nb.gmo | Bin 9914 -> 9914 bytes po/nb.po | 28 +- po/nl.gmo | Bin 33573 -> 33299 bytes po/nl.po | 33 +- po/pl.gmo | Bin 33947 -> 33655 bytes po/pl.po | 34 +- po/pt_BR.gmo | Bin 34130 -> 33883 bytes po/pt_BR.po | 33 +- po/ro.gmo | Bin 33572 -> 33314 bytes po/ro.po | 33 +- po/ru.gmo | Bin 43848 -> 43488 bytes po/ru.po | 33 +- po/rw.gmo | Bin 689 -> 689 bytes po/rw.po | 32 +- po/sk.gmo | Bin 33772 -> 33512 bytes po/sk.po | 33 +- po/sl.gmo | Bin 33238 -> 33246 bytes po/sl.po | 51 +- po/sq.gmo | Bin 12891 -> 12764 bytes po/sq.po | 30 +- po/sr.gmo | Bin 15895 -> 42963 bytes po/sr.po | 708 +- po/sv.gmo | Bin 33058 -> 32824 bytes po/sv.po | 33 +- po/tr.gmo | Bin 12273 -> 12142 bytes po/tr.po | 30 +- po/uk.gmo | Bin 44087 -> 43708 bytes po/uk.po | 34 +- po/vi.gmo | Bin 35357 -> 35093 bytes po/vi.po | 33 +- po/zh_CN.gmo | Bin 25897 -> 25668 bytes po/zh_CN.po | 33 +- po/zh_TW.gmo | Bin 7450 -> 7316 bytes po/zh_TW.po | 30 +- scripts/gst-uninstalled | 8 +- tests/Makefile.in | 77 +- tests/benchmarks/Makefile.am | 2 +- tests/benchmarks/Makefile.in | 125 +- tests/benchmarks/controller.c | 51 +- tests/benchmarks/gstbufferstress.c | 17 +- tests/benchmarks/gstclockstress.c | 11 +- tests/benchmarks/gstpollstress.c | 17 +- tests/check/Makefile.am | 36 +- tests/check/Makefile.in | 1640 ++-- tests/check/elements/capsfilter.c | 6 +- tests/check/elements/fakesink.c | 22 +- tests/check/elements/fakesrc.c | 9 +- tests/check/elements/fdsrc.c | 8 +- tests/check/elements/filesink.c | 28 +- tests/check/elements/filesrc.c | 64 +- tests/check/elements/funnel.c | 12 +- tests/check/elements/identity.c | 11 +- tests/check/elements/multiqueue.c | 140 +- tests/check/elements/queue.c | 119 +- tests/check/elements/queue2.c | 56 + tests/check/elements/selector.c | 65 +- tests/check/elements/tee.c | 32 +- tests/check/elements/valve.c | 10 +- tests/check/generic/sinks.c | 17 +- tests/check/generic/states.c | 10 +- tests/check/gst/capslist.h | 12 +- tests/check/gst/gstatomicqueue.c | 46 + tests/check/gst/gstbin.c | 2 +- tests/check/gst/gstbuffer.c | 350 +- tests/check/gst/gstbufferlist.c | 10 +- tests/check/gst/gstbus.c | 2 +- tests/check/gst/gstcaps.c | 57 +- tests/check/gst/gstchildproxy.c | 4 +- tests/check/gst/gstcontroller.c | 695 ++ tests/check/gst/gstdatetime.c | 18 +- tests/check/gst/gstelementfactory.c | 8 +- tests/check/gst/gstevent.c | 123 +- tests/check/gst/gstghostpad.c | 95 +- tests/check/gst/gstindex.c | 59 - tests/check/gst/gstiterator.c | 2 +- tests/check/gst/gstmemory.c | 528 ++ tests/check/gst/gstmessage.c | 4 +- tests/check/gst/gstmeta.c | 97 +- tests/check/gst/gstpad.c | 683 +- tests/check/gst/gstpipeline.c | 4 +- tests/check/gst/gstplugin.c | 40 +- tests/check/gst/gstpreset.c | 4 +- tests/check/gst/gstregistry.c | 6 +- tests/check/gst/gstsegment.c | 31 +- tests/check/gst/gststructure.c | 57 +- tests/check/gst/gstsystemclock.c | 2 +- tests/check/gst/gsttag.c | 75 +- tests/check/gst/gsttagsetter.c | 12 +- tests/check/gst/gsttask.c | 51 +- tests/check/gst/gsttoc.c | 365 + tests/check/gst/gsttocsetter.c | 416 + tests/check/gst/gstutils.c | 113 +- tests/check/gst/gstvalue.c | 254 +- tests/check/gst/struct_arm.h | 2 +- tests/check/gst/struct_hppa.h | 2 +- tests/check/gst/struct_i386.h | 2 +- tests/check/gst/struct_ppc32.h | 2 +- tests/check/gst/struct_ppc64.h | 2 +- tests/check/gst/struct_sparc.h | 2 +- tests/check/gst/struct_x86_64.h | 4 +- tests/check/libs/adapter.c | 107 +- tests/check/libs/basesink.c | 44 +- tests/check/libs/basesrc.c | 30 +- tests/check/libs/bitreader.c | 20 +- tests/check/libs/bytereader.c | 20 +- tests/check/libs/collectpads.c | 348 - tests/check/libs/collectpads2.c | 353 + tests/check/libs/controller.c | 2627 ++---- tests/check/libs/gdp.c | 105 - tests/check/libs/gstlibscpp.cc | 11 +- tests/check/libs/gstnettimeprovider.c | 35 +- tests/check/libs/test_transform.c | 17 +- tests/check/libs/transform1.c | 46 +- tests/check/libs/typefindhelper.c | 8 +- tests/check/pipelines/parse-launch.c | 6 +- tests/check/pipelines/queue-error.c | 16 +- tests/check/pipelines/seek.c | 211 + tests/check/pipelines/simple-launch-lines.c | 26 +- tests/examples/Makefile.in | 78 +- tests/examples/adapter/Makefile.am | 2 +- tests/examples/adapter/Makefile.in | 109 +- tests/examples/adapter/adapter_test.c | 9 +- tests/examples/controller/Makefile.am | 21 +- tests/examples/controller/Makefile.in | 166 +- tests/examples/controller/audio-example.c | 80 +- tests/examples/controller/control-sources.c | 450 + tests/examples/controller/text-color-example.c | 117 + tests/examples/helloworld/Makefile.in | 105 +- tests/examples/launch/Makefile.in | 105 +- tests/examples/manual/Makefile.am | 2 +- tests/examples/manual/Makefile.in | 172 +- tests/examples/manual/decodebin.c | 2 +- tests/examples/manual/dynamic.c | 12 +- tests/examples/manual/fakesrc.c | 9 +- tests/examples/metadata/Makefile.in | 105 +- tests/examples/queue/Makefile.in | 105 +- tests/examples/stepping/Makefile.in | 105 +- tests/examples/streams/Makefile.in | 127 +- tests/examples/streams/stream-status.c | 4 +- tests/examples/typefind/Makefile.in | 105 +- tests/misc/Makefile.in | 66 +- tools/Makefile.am | 56 +- tools/Makefile.in | 330 +- tools/gst-inspect.c | 234 +- tools/gst-launch.1.in | 4 +- tools/gst-launch.c | 92 +- tools/gst-typefind.c | 2 - win32/MANIFEST | 4 +- win32/common/config.h | 41 +- win32/common/gstenumtypes.c | 407 +- win32/common/gstenumtypes.h | 48 +- win32/common/gstversion.h | 6 +- win32/common/libgstbase.def | 74 +- win32/common/libgstcontroller.def | 56 +- win32/common/libgstdataprotocol.def | 15 - win32/common/libgstnet.def | 3 + win32/common/libgstreamer.def | 375 +- win32/vs6/gstreamer.dsw | 15 - win32/vs6/libgstdataprotocol.dsp | 127 - 704 files changed, 82568 insertions(+), 62106 deletions(-) create mode 100644 docs/design/part-toc.txt create mode 100644 docs/gst/html/GstControlBinding.html create mode 100644 docs/gst/html/GstControlSource.html delete mode 100644 docs/gst/html/GstIndex.html delete mode 100644 docs/gst/html/GstIndexFactory.html delete mode 100644 docs/gst/html/gstreamer-GstFilter.html create mode 100644 docs/gst/html/gstreamer-GstSample.html create mode 100644 docs/gst/html/gstreamer-GstToc.html create mode 100644 docs/gst/html/gstreamer-GstTocSetter.html delete mode 100644 docs/gst/html/gstreamer-GstTrace.html delete mode 100644 docs/libs/html/GstCollectPads.html create mode 100644 docs/libs/html/GstCollectPads2.html delete mode 100644 docs/libs/html/GstControlSource.html delete mode 100644 docs/libs/html/GstController.html create mode 100644 docs/libs/html/GstTimedValueControlSource.html create mode 100644 docs/libs/html/GstTriggerControlSource.html delete mode 100644 docs/libs/html/gstreamer-dataprotocol.html delete mode 100644 docs/libs/html/gstreamer-libs-GstControllerGObject.html delete mode 100644 docs/libs/html/gstreamer-libs-GstDataQueue.html delete mode 100644 docs/libs/html/gstreamer-libs-gstdataprotocol.html delete mode 100644 docs/plugins/html/gstreamer-plugins-plugin-coreindexers.html delete mode 100644 docs/plugins/inspect/plugin-coreindexers.xml create mode 100644 gst/gstcontrolbinding.c create mode 100644 gst/gstcontrolbinding.h create mode 100644 gst/gstcontrolsource.c create mode 100644 gst/gstcontrolsource.h delete mode 100644 gst/gstfilter.c delete mode 100644 gst/gstfilter.h delete mode 100644 gst/gstindex.c delete mode 100644 gst/gstindex.h delete mode 100644 gst/gstindexfactory.c delete mode 100644 gst/gstindexfactory.h delete mode 100644 gst/gstmarshal.list create mode 100644 gst/gstsample.c create mode 100644 gst/gstsample.h create mode 100644 gst/gsttoc.c create mode 100644 gst/gsttoc.h create mode 100644 gst/gsttocsetter.c create mode 100644 gst/gsttocsetter.h delete mode 100644 libs/gst/base/gstcollectpads.c delete mode 100644 libs/gst/base/gstcollectpads.h create mode 100644 libs/gst/base/gstcollectpads2.c create mode 100644 libs/gst/base/gstcollectpads2.h delete mode 100644 libs/gst/base/gstdataqueue.c delete mode 100644 libs/gst/base/gstdataqueue.h create mode 100644 libs/gst/base/gstindex.c create mode 100644 libs/gst/base/gstindex.h create mode 100644 libs/gst/base/gstmemindex.c create mode 100644 libs/gst/controller/gstargbcontrolbinding.c create mode 100644 libs/gst/controller/gstargbcontrolbinding.h delete mode 100644 libs/gst/controller/gstcontroller.c delete mode 100644 libs/gst/controller/gstcontroller.h delete mode 100644 libs/gst/controller/gstcontrollerprivate.h delete mode 100644 libs/gst/controller/gstcontrolsource.c delete mode 100644 libs/gst/controller/gstcontrolsource.h create mode 100644 libs/gst/controller/gstdirectcontrolbinding.c create mode 100644 libs/gst/controller/gstdirectcontrolbinding.h delete mode 100644 libs/gst/controller/gsthelper.c delete mode 100644 libs/gst/controller/gstinterpolation.c delete mode 100644 libs/gst/controller/gstinterpolationcontrolsourceprivate.h delete mode 100644 libs/gst/controller/gstlfocontrolsourceprivate.h create mode 100644 libs/gst/controller/gsttimedvaluecontrolsource.c create mode 100644 libs/gst/controller/gsttimedvaluecontrolsource.h create mode 100644 libs/gst/controller/gsttriggercontrolsource.c create mode 100644 libs/gst/controller/gsttriggercontrolsource.h delete mode 100644 libs/gst/controller/lib.c delete mode 100644 libs/gst/dataprotocol/Makefile.am delete mode 100644 libs/gst/dataprotocol/Makefile.in delete mode 100644 libs/gst/dataprotocol/dataprotocol.c delete mode 100644 libs/gst/dataprotocol/dataprotocol.h delete mode 100644 libs/gst/dataprotocol/dp-private.h create mode 100644 libs/gst/net/gstnetaddressmeta.c create mode 100644 libs/gst/net/gstnetaddressmeta.h mode change 100755 => 100644 ltmain.sh delete mode 100644 pkgconfig/gstreamer-dataprotocol-uninstalled.pc.in delete mode 100644 pkgconfig/gstreamer-dataprotocol.pc.in create mode 100644 plugins/elements/gstdataqueue.c create mode 100644 plugins/elements/gstdataqueue.h delete mode 100644 plugins/indexers/Makefile.am delete mode 100644 plugins/indexers/Makefile.in delete mode 100644 plugins/indexers/gstindexers.c delete mode 100644 plugins/indexers/gstindexers.h delete mode 100644 plugins/indexers/gstmemindex.c create mode 100644 po/eo.gmo create mode 100644 po/eo.po delete mode 100644 po/gstreamer-0.11.pot create mode 100644 po/gstreamer-1.0.pot create mode 100644 tests/check/gst/gstatomicqueue.c create mode 100644 tests/check/gst/gstcontroller.c delete mode 100644 tests/check/gst/gstindex.c create mode 100644 tests/check/gst/gstmemory.c create mode 100644 tests/check/gst/gsttoc.c create mode 100644 tests/check/gst/gsttocsetter.c delete mode 100644 tests/check/libs/collectpads.c create mode 100644 tests/check/libs/collectpads2.c delete mode 100644 tests/check/libs/gdp.c create mode 100644 tests/check/pipelines/seek.c create mode 100644 tests/examples/controller/control-sources.c create mode 100644 tests/examples/controller/text-color-example.c delete mode 100644 win32/common/libgstdataprotocol.def delete mode 100644 win32/vs6/libgstdataprotocol.dsp diff --git a/ChangeLog b/ChangeLog index 981d021..8e6536b 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,9 +1,9466 @@ +=== release 0.11.90 === + +2012-04-12 Sebastian Dröge + + * configure.ac: + releasing 0.11.90, "And all with pearl and ruby glowing was the fair palace door" + +2012-04-11 13:20:18 +0200 Wim Taymans + + * plugins/elements/gstqueue2.c: + queue2: fix merge error + +2012-04-11 12:58:19 +0200 Wim Taymans + + * tests/check/elements/queue2.c: + queue2: set buffer to NULL before pull + +2012-04-11 12:54:36 +0200 Wim Taymans + + * tests/check/elements/queue2.c: + tests: port queue2 tests to 0.11 + +2012-04-11 12:50:50 +0200 Wim Taymans + + Merge remote-tracking branch 'origin/0.10' + Conflicts: + gst/gsttoc.c + plugins/elements/gstqueue2.c + +2012-04-11 12:34:55 +0200 Wim Taymans + + * plugins/elements/gstqueue2.c: + queue2: signal delete before waiting + When we don't have the requested data in the ringbuffer and we move our read + pointer to the requested position, signal the delete cond to inform the writer + that we changed the current fill level. If we don't, the writer might stay + blocked and we might wait forever. + +2012-04-11 12:15:37 +0200 Wim Taymans + + * tests/check/elements/queue2.c: + queue2: add test for ringbuffer deadlock + +2012-04-11 12:02:50 +0200 Wim Taymans + + * plugins/elements/gstqueue2.c: + queue2: update current read position before waiting + When we don't have enough bytes in the ringbuffer to satisfy the current + request, first update the current read position before waiting. If we don't do + that, the ringbuffer might appear full and the writer will never write more + bytes to wake us up. + +2012-04-11 12:00:10 +0200 Wim Taymans + + * plugins/elements/gstqueue2.c: + queue2: add range only on sinkpad + Only add the range when we receive a segment event on the sinkpad. The add_range + method will modify the write position, which only makes sense to do on the + sinkpad. + +2012-04-11 11:55:56 +0200 Wim Taymans + + * plugins/elements/gstqueue2.c: + queue2: fix debug message + We're not writing to the offset of the buffer + +2012-04-11 11:55:28 +0200 Wim Taymans + + * plugins/elements/gstqueue2.c: + queue2: add_range already updates the level + +2012-04-10 14:11:26 +0400 Alexander Saprykin + + * gst/gsttoc.c: + toc: fix memory leaks while copying content + +2012-04-10 14:18:48 +0400 Alexander Saprykin + + * tests/check/gst/gsttocsetter.c: + tocsetter: fix memory leaks in unit test + +2012-04-10 14:16:50 +0400 Alexander Saprykin + + * tests/check/gst/gsttoc.c: + toc: fix memory leaks in unit test + +2012-04-10 14:18:48 +0400 Alexander Saprykin + + * tests/check/gst/gsttocsetter.c: + tocsetter: fix memory leaks in unit test + +2012-04-10 14:16:50 +0400 Alexander Saprykin + + * tests/check/gst/gsttoc.c: + toc: fix memory leaks in unit test + +2012-04-10 14:11:26 +0400 Alexander Saprykin + + * gst/gsttoc.c: + toc: fix memory leaks while copying content + +2012-04-10 19:39:58 +0300 Sreerenj Balachandran + + * gst/gstbuffer.c: + buffer: Clean up header files + +2012-04-10 16:07:52 +0200 Wim Taymans + + Merge remote-tracking branch 'origin/0.10' + +2012-04-10 16:04:54 +0200 Wim Taymans + + * plugins/elements/gstqueue2.c: + queue2: clear seeking flag in all cases + Also clear the seeking flag when downstream is in pull mode. + +2012-04-10 12:55:31 +0200 Wim Taymans + + Merge remote-tracking branch 'origin/0.10' + Conflicts: + gst/gst.c + plugins/elements/gstqueue2.c + +2012-04-10 12:49:04 +0200 Wim Taymans + + * gst/gst.c: + gst: add toc entry ref/unref + +2012-04-10 12:09:53 +0200 Wim Taymans + + * plugins/elements/gstqueue2.c: + queue2: set seeking flag with the queue lock + +2012-04-10 11:20:09 +0200 Wim Taymans + + * plugins/elements/gstqueue2.c: + * plugins/elements/gstqueue2.h: + queue2: Keep track of the seeking state + Set the seeking flag right before we send a seek event upstream and discard all + data untill we see a flush-stop again. We need to do this because we activate + the range that we seek to immediately after sending the seek event and it is + possible that we receive data in our chain function from before the seek + which would then be added to the wrong range resulting in data corruption. + +2012-04-10 11:16:14 +0200 Wim Taymans + + * plugins/elements/gstqueue2.c: + queue2: make range on newsegment for ringbuffer + When using the ringbuffer, handle the newsegment event like we handle it when + using the temp-file mode: create a new range for the new byte segment. The new + segment should normally already be created when we do a seek. + +2012-04-09 16:42:30 +0200 Sebastian Dröge + + Merge remote-tracking branch 'origin/0.10' + +2012-04-09 16:40:47 +0200 Sebastian Dröge + + * plugins/elements/gstmultiqueue.c: + multiqueue: Don't use buffer after pushing it downstream + +2012-04-09 16:04:22 +0200 Sebastian Dröge + + Merge remote-tracking branch 'origin/0.10' + +2012-04-09 15:58:21 +0200 Sebastian Dröge + + * gst/gstelement.c: + element: Fail if a pad for a non-request template is requested + +2012-04-09 13:40:35 +0100 Tim-Philipp Müller + + * gst/gstelement.c: + * gst/gstquark.c: + * gst/gstquark.h: + element: use quarks when storing standard metadata in structures + +2012-04-09 13:05:07 +0100 Tim-Philipp Müller + + * plugins/elements/gstcapsfilter.c: + * plugins/elements/gstfakesink.c: + * plugins/elements/gstfakesrc.c: + * plugins/elements/gstfdsink.c: + * plugins/elements/gstfdsrc.c: + * plugins/elements/gstfilesink.c: + * plugins/elements/gstfilesrc.c: + * plugins/elements/gstfunnel.c: + * plugins/elements/gstidentity.c: + * plugins/elements/gstinputselector.c: + * plugins/elements/gstmultiqueue.c: + * plugins/elements/gstoutputselector.c: + * plugins/elements/gstqueue.c: + * plugins/elements/gstqueue2.c: + * plugins/elements/gsttee.c: + * plugins/elements/gsttypefindelement.c: + * plugins/elements/gstvalve.c: + plugins: use new gst_element_class_set_static_metadata() + +2012-04-09 12:47:58 +0100 Tim-Philipp Müller + + * docs/gst/gstreamer-sections.txt: + * gst/gstelement.c: + * gst/gstelement.h: + * win32/common/libgstreamer.def: + element: add gst_element_class_{set,add}_static_metadata() + Add gst_element_class_{add,set}_metadata() variants for static strings, + so we can avoid unnecessary g_strdup()s. + API: gst_element_class_add_static_metadata() + API: gst_element_class_set_static_metadata() + +2012-04-08 21:17:14 +0100 Tim-Philipp Müller + + * docs/gst/gstreamer-sections.txt: + * gst/gsttask.c: + * gst/gsttask.h: + * tests/examples/streams/stream-status.c: + task: remove gst_task_set_priority() + It doesn't actually do anything. + +2012-01-14 00:31:32 -0500 Matej Knopp + + * win32/vs10/Common.props: + * win32/vs10/Library.props: + * win32/vs10/Plugin.props: + * win32/vs10/ReadMe.txt: + * win32/vs10/Tool.props: + * win32/vs10/base/base.vcxproj: + * win32/vs10/base/base.vcxproj.filters: + * win32/vs10/controller/controller.vcxproj: + * win32/vs10/controller/controller.vcxproj.filters: + * win32/vs10/generated/generated.vcxproj: + * win32/vs10/generated/generated.vcxproj.filters: + * win32/vs10/gst-inspect/gst-inspect.vcxproj: + * win32/vs10/gst-inspect/gst-inspect.vcxproj.filters: + * win32/vs10/gst-launch/gst-launch.vcxproj: + * win32/vs10/gst-launch/gst-launch.vcxproj.filters: + * win32/vs10/gst-typefind/gst-typefind.vcxproj: + * win32/vs10/gst-typefind/gst-typefind.vcxproj.filters: + * win32/vs10/gstcoreelements/gstcoreelements.vcxproj: + * win32/vs10/gstcoreelements/gstcoreelements.vcxproj.filters: + * win32/vs10/gstreamer.sln: + * win32/vs10/gstreamer/gstreamer.vcxproj: + * win32/vs10/gstreamer/gstreamer.vcxproj.filters: + * win32/vs10/net/net.vcxproj: + * win32/vs10/net/net.vcxproj.filters: + win32: add VS 10 Project files + https://bugzilla.gnome.org/show_bug.cgi?id=666219 + +2012-04-08 18:25:39 +0100 Tim-Philipp Müller + + * win32/common/config.h: + * win32/common/gstenumtypes.c: + * win32/common/gstenumtypes.h: + * win32/common/gstversion.h: + win32: update for version changes + +2012-04-07 16:35:27 +0100 Tim-Philipp Müller + + Merge remote-tracking branch 'origin/0.10' + +2012-04-07 16:06:22 +0100 Tim-Philipp Müller + + * win32/common/libgstreamer.def: + win32: add new TOC API to libgstreamer.def + Fixes 'make check'. + +2012-04-07 16:05:33 +0100 Tim-Philipp Müller + + * tests/check/gst/.gitignore: + tests: add new toc test binaries to .gitignore + +2012-04-07 16:04:14 +0100 Tim-Philipp Müller + + * gst/gst.c: + * gst/gst_private.h: + * gst/gstevent.c: + * gst/gstmessage.c: + * gst/gstquery.c: + * gst/gsttoc.c: + gst: don't export private TOC functions + +2012-04-07 15:42:08 +0100 Tim-Philipp Müller + + Merge remote-tracking branch 'origin/0.10' + Conflicts: + gst/gstatomicqueue.c + +2012-02-24 15:24:42 +0100 Wim Taymans + + * gst/gstatomicqueue.c: + atomicqueue: fix race + After a writer has written to its reserved write location, it can only make the + location available for reading if all of the writers with lower locations have + finished. + +2012-02-24 12:51:24 +0100 Wim Taymans + + * gst/gstatomicqueue.c: + atomicqueue: fix subtle race + Fix a race where the reader would see the updated the tail pointer before the + write could write the data into the queue. Fix this by having a separate reader + tail pointer that is only incremented after the writer wrote the data. + +2012-04-07 15:20:05 +0100 Tim-Philipp Müller + + * plugins/elements/gstfilesrc.c: + filesrc: set default block size from local define + Doesn't actually change the default value, just makes use of the + define there is. Superficial testing with fakesink and jpegdec did + not reveal improved performance for bigger block sizes, so leave + default as it is. + +2012-04-06 16:46:58 +0200 Wim Taymans + + * plugins/elements/gstqueue2.c: + queue2: don't update the current reading_pos in flush + A flush from the upstream element should not make buffering go to 0, the next + pull request might be inside a range that we have and then we don't need to + buffer at all. If the next pull is outside anything we have, buffering will + happen as usual anyway. + +2012-04-06 12:42:39 +0200 Wim Taymans + + * plugins/elements/gstqueue2.c: + queue2: fix for merged changes + +2012-04-06 12:37:41 +0200 Wim Taymans + + Merge branch '0.10' + +2012-04-06 12:32:49 +0200 Wim Taymans + + * plugins/elements/gstqueue2.c: + queue2: check the pad mode on the right pad + +2012-04-06 12:24:22 +0200 Wim Taymans + + * plugins/elements/gstqueue2.c: + queue2: forward flush events correctly + We want to forward the flush events received on the sinkpad whenever the srcpad + is activated in pushmode, which can also happen when using the RINGBUFFER or + DOWNLOAD mode and downstream failed to activate us in pull mode. + +2012-04-05 21:56:05 +0200 Stefan Sauer + + * gst/gstcontrolbinding.c: + controlbinding: chain up on dispose and finalize + +2012-04-05 21:55:07 +0200 Stefan Sauer + + * gst/gstobject.c: + gstobject: unparent the controlbinding on dispose + +2012-04-05 21:07:55 +0200 Stefan Sauer + + * libs/gst/controller/gstargbcontrolbinding.c: + * libs/gst/controller/gstdirectcontrolbinding.c: + controller: dup the objects to avoid premature frees + +2012-04-05 21:06:14 +0200 Stefan Sauer + + * tests/check/gst/gstcontroller.c: + controller: add a finalizer for the test controlbindings + No idea why valgrind still inists that there are leaks. + +2012-04-05 18:42:30 +0200 Sebastian Dröge + + * common: + Automatic update of common submodule + From 7fda524 to 464fe15 + +2012-04-05 14:17:16 +0200 Sebastian Dröge + + * docs/pwg/building-boiler.xml: + * gst/gstplugin.h: + * plugins/elements/gstelements.c: + gst: Change name parameter of GST_PLUGIN_DEFINE() to not take a string anymore + This will be needed when we later add support for static linking + of plugins without introducing new API or changing existing API. + +2012-04-05 13:23:00 +0200 Sebastian Dröge + + * configure.ac: + * gst/gstpluginfeature.c: + gstplugin: Add hack for handling 0.11.9X and 0.11.89.X with X>0 the same as 1.0.0 + Also update the version number to 0.11.89.1 + +2012-04-05 12:22:11 +0200 Mark Nauwelaerts + + * gst/gsttocsetter.c: + tocsetter: clear mutex upon free + +2012-04-05 10:56:22 +0200 Sebastian Dröge + + * gst/gstregistrybinary.h: + registry: Set registry version to 1.0.0 too + +2012-04-05 10:36:08 +0200 Wim Taymans + + Merge branch '0.10' + Conflicts: + plugins/elements/gstqueue2.c + +2012-04-05 10:03:02 +0200 Wim Taymans + + * plugins/elements/gstqueue2.c: + queue2: stop waiting for more data after EOS + When we have EOS, read the remaining bytes in the buffer and make sure we don't + wait for more data. Also clip the output buffer to the amount of remaining + bytes. + +2012-04-05 09:56:52 +0200 Wim Taymans + + * plugins/elements/gstqueue2.c: + queue2: check for filled buffer correctly + When using the ringbuffer mode, the buffer is filled when we reached the + max_level.bytes mark or the total size of the ringbuffer, whichever is smaller. + +2012-04-04 13:07:27 +0200 Wim Taymans + + * plugins/elements/gstqueue2.c: + queue2: avoid waiting for a filled buffer + Use a threshold variable to hold the maximum distance from the current position + for with we will wait instead of doing a seek. + When using the ringbuffer and the requested offset is not available, avoid + waiting until the complete ringbuffer is filled but instead do a seek when the + requested data is further than the threshold. + Avoid doing the seek twice in the ringbuffer case. + Use the same threshold for ringbuffer and download buffering. + +2012-04-05 09:07:18 +0200 Alessandro Decina + + * gst/gstbuffer.c: + gstbuffer: fix compile warning + +2012-04-04 13:13:52 +0200 Sebastian Dröge + + * Makefile.am: + * configure.ac: + * docs/faq/developing.xml: + * docs/gst/Makefile.am: + * docs/gst/gstreamer-docs.sgml: + * docs/gst/running.xml: + * docs/libs/Makefile.am: + * docs/libs/gstreamer-libs-docs.sgml: + * docs/manual/basics-helloworld.xml: + * docs/plugins/Makefile.am: + * docs/plugins/gstreamer-plugins-docs.sgml: + * docs/random/autotools: + * docs/version.entities.in: + * gst-element-check.m4.in: + * gst/Makefile.am: + * gst/gstplugin.c: + * gst/gstpreset.c: + * gst/gstregistry.c: + * gst/gstversion.h.in: + * gstreamer.spec.in: + * libs/gst/base/Makefile.am: + * libs/gst/check/Makefile.am: + * libs/gst/controller/Makefile.am: + * libs/gst/helpers/Makefile.am: + * libs/gst/net/Makefile.am: + * pkgconfig/Makefile.am: + * pkgconfig/gstreamer-base-uninstalled.pc.in: + * pkgconfig/gstreamer-base.pc.in: + * pkgconfig/gstreamer-check-uninstalled.pc.in: + * pkgconfig/gstreamer-check.pc.in: + * pkgconfig/gstreamer-controller-uninstalled.pc.in: + * pkgconfig/gstreamer-controller.pc.in: + * pkgconfig/gstreamer-net-uninstalled.pc.in: + * pkgconfig/gstreamer-net.pc.in: + * pkgconfig/gstreamer-uninstalled.pc.in: + * pkgconfig/gstreamer.pc.in: + * plugins/elements/Makefile.am: + * tests/benchmarks/Makefile.am: + * tests/check/Makefile.am: + * tests/check/gst/gstpreset.c: + * tests/examples/adapter/Makefile.am: + * tests/examples/controller/Makefile.am: + * tests/examples/manual/Makefile.am: + * tools/Makefile.am: + * tools/gst-launch.1.in: + * tools/gstreamer-completion: + * win32/common/config.h: + gst: Change versioning + Remove GST_MAJORMINOR and replace it by GST_API_VERSION + Also set GST_VERSION_{MAJOR,MINOR,MICRO,NANO} explicitely + now. + All versions are at 1.0.0 now for the release soon but + API/ABI can still change until the 1.0.0 release. + Next release versions until 1.0.0 will be 0.10.9X and + these will be release candidates. GST_VERSION_* will + nonetheless stay at 1.0.0.0. + +2012-04-04 12:25:40 +0200 Sebastian Dröge + + Merge remote-tracking branch 'origin/0.10' + Conflicts: + docs/gst/gstreamer-sections.txt + gst/Makefile.am + gst/gst.c + gst/gst.h + gst/gstevent.c + gst/gstevent.h + gst/gstmessage.c + gst/gstmessage.h + gst/gstquark.c + gst/gstquark.h + gst/gstquery.c + gst/gstquery.h + gst/gsttoc.c + gst/gsttoc.h + gst/gsttocsetter.c + tests/check/Makefile.am + tests/check/gst/gsttoc.c + tests/check/gst/gsttocsetter.c + +2012-04-03 16:51:54 +0200 Wim Taymans + + * gst/gstbuffer.h: + buffer: improve _set_size() + +2012-04-03 16:44:58 +0200 Wim Taymans + + * gst/gstbuffer.c: + * gst/gstbuffer.h: + * win32/common/libgstreamer.def: + buffer: make get_sizes and _resize with ranges + Make the _get_sizes and _resize methods work on a range of memory to make them + more powerfull. + +2012-04-03 18:25:40 +0200 Mark Nauwelaerts + + * libs/gst/check/gstconsistencychecker.c: + consistencychecker: allow some more events before a segment event + +2012-04-03 15:46:29 +0200 Stefan Sauer + + * gst/gsttocsetter.c: + tocsetter: use new glib mutex api + +2012-04-02 23:17:21 +0100 Tim-Philipp Müller + + * tools/gst-launch.c: + tools: fix compiler warning + gst-launch.c: In function ‘print_toc_entry’: + gst-launch.c:446:3: error: the size of array ‘spc’ can’t be evaluated [-Werror=vla] + gst-launch.c:446:3: error: variable-sized object may not be initialized + +2012-04-02 23:29:24 +0100 Tim-Philipp Müller + + * tests/check/gst/.gitignore: + tests: add new unit test binaries to .gitignore + +2012-04-02 23:28:15 +0100 Tim-Philipp Müller + + * gst/gst.c: + gst: ref new entry enum types + Fixes 'make check', again. + +2012-04-02 23:24:22 +0100 Tim-Philipp Müller + + * win32/common/libgstreamer.def: + win32: add new API to .def file + Fixes 'make check'. + +2012-04-02 23:23:46 +0100 Tim-Philipp Müller + + * gst/gst_private.h: + * gst/gstevent.c: + * gst/gstmessage.c: + * gst/gstquery.c: + * gst/gsttoc.c: + toc: don't export private functions + +2012-04-02 23:17:21 +0100 Tim-Philipp Müller + + * tools/gst-launch.c: + tools: fix compiler warning + gst-launch.c: In function ‘print_toc_entry’: + gst-launch.c:446:3: error: the size of array ‘spc’ can’t be evaluated [-Werror=vla] + gst-launch.c:446:3: error: variable-sized object may not be initialized + +2012-04-02 23:16:39 +0100 Tim-Philipp Müller + + * po/af.po: + * po/az.po: + * po/be.po: + * po/bg.po: + * po/ca.po: + * po/cs.po: + * po/da.po: + * po/de.po: + * po/el.po: + * po/en_GB.po: + * po/eo.po: + * po/es.po: + * po/eu.po: + * po/fi.po: + * po/fr.po: + * po/gl.po: + * po/hu.po: + * po/id.po: + * po/it.po: + * po/ja.po: + * po/lt.po: + * po/nb.po: + * po/nl.po: + * po/pl.po: + * po/pt_BR.po: + * po/ro.po: + * po/ru.po: + * po/rw.po: + * po/sk.po: + * po/sl.po: + * po/sq.po: + * po/sr.po: + * po/sv.po: + * po/tr.po: + * po/uk.po: + * po/vi.po: + * po/zh_CN.po: + * po/zh_TW.po: + po: update for new translatable strings + +2012-04-02 23:01:17 +0200 Stefan Sauer + + Merge remote-tracking branch 'origin/master' + +2012-04-02 22:09:07 +0200 Stefan Sauer + + * gst/gstevent.c: + * gst/gstmessage.c: + * gst/gstquery.c: + * gst/gsttoc.c: + * gst/gsttoc.h: + * tests/check/gst/gsttoc.c: + * tests/check/gst/gsttocsetter.c: + toc: port to 0.11 + +2012-03-22 08:36:02 +0100 Stefan Sauer + + * tools/gst-launch.c: + gst-launch: add -c, --toc to print the toc + Print the nested chapter and edition structure of the chapters message. + +2012-03-28 23:15:41 +0400 Alexander Saprykin + + * docs/design/Makefile.am: + * docs/design/part-toc.txt: + docs: add overview of GstToc usage + +2012-03-14 21:14:23 +0400 Alexander Saprykin + + * docs/gst/gstreamer-docs.sgml: + * docs/gst/gstreamer-sections.txt: + docs: Add GstToc and GstTocSetter sections with related functions + +2012-03-14 21:13:22 +0400 Alexander Saprykin + + * tests/check/Makefile.am: + * tests/check/gst/gsttocsetter.c: + gstchecks: Add unit test for the GstTocSetter + +2012-03-14 21:12:22 +0400 Alexander Saprykin + + * tests/check/Makefile.am: + * tests/check/gst/gsttoc.c: + gstchecks: Add unit test for the GstToc + +2012-03-14 20:45:35 +0400 Alexander Saprykin + + * gst/Makefile.am: + * gst/gst.h: + * gst/gsttocsetter.c: + * gst/gsttocsetter.h: + Add new GstTocSetter interface + +2012-03-14 20:42:56 +0400 Alexander Saprykin + + * gst/gstquery.c: + * gst/gstquery.h: + Add new TOC query + +2012-03-14 20:41:48 +0400 Alexander Saprykin + + * gst/gstmessage.c: + * gst/gstmessage.h: + Add new TOC message + +2012-03-14 20:40:32 +0400 Alexander Saprykin + + * gst/gstevent.c: + * gst/gstevent.h: + * gst/gstquark.c: + * gst/gstquark.h: + Add new TOC and TOC select events + +2012-03-14 20:01:51 +0400 Alexander Saprykin + + * gst/Makefile.am: + * gst/gst.c: + * gst/gst.h: + * gst/gst_private.h: + * gst/gsttoc.c: + * gst/gsttoc.h: + Add generic table of contents (TOC) support + +2012-04-02 21:15:09 +0200 Stefan Sauer + + Merge branch '0.10' + Conflicts: + docs/gst/gstreamer-sections.txt + gst/Makefile.am + gst/gst.c + gst/gst.h + gst/gstevent.c + gst/gstevent.h + gst/gstmessage.h + gst/gstquark.c + gst/gstquark.h + gst/gstquery.c + gst/gstquery.h + tests/check/Makefile.am + +2012-04-02 15:30:04 +0200 Sebastian Dröge + + Merge remote-tracking branch 'origin/0.10' + Conflicts: + libs/gst/base/gstbaseparse.c + +2012-04-02 15:13:24 +0200 Edward Hervey + + * libs/gst/base/gstbaseparse.c: + baseparse: always attempt to push if not-linked + This avoids ending up with plenty of pending data (since we'll only + try to parse/push one frame from the incoming buffer). + Fixes increasing memory consumption when parsers aren't linked + Conflicts: + libs/gst/base/gstbaseparse.c + +2012-04-02 15:13:24 +0200 Edward Hervey + + * libs/gst/base/gstbaseparse.c: + baseparse: always attempt to push if not-linked + This avoids ending up with plenty of pending data (since we'll only + try to parse/push one frame from the incoming buffer). + Fixes increasing memory consumption when parsers aren't linked + +2012-04-01 03:30:51 +0400 Руслан Ижбулатов + + * plugins/elements/gstfdsrc.c: + Timeout is not used on W32 + Fixes #673267 + +2012-04-02 11:09:50 +0200 Wim Taymans + + * libs/gst/base/gstbasetransform.c: + * libs/gst/base/gstbasetransform.h: + trans: add transform_ip_on_passthrough + Add an option to control if transform_ip is called in passthrough mode or not. + for elements that don't want to look at the data in passthrough mode, this can + avoid some extra processing, mostly in subclasses. + +2012-03-22 08:36:02 +0100 Stefan Sauer + + * tools/gst-launch.c: + gst-launch: add -c, --toc to print the toc + Print the nested chapter and edition structure of the chapters message. + +2012-03-28 23:15:41 +0400 Alexander Saprykin + + * docs/design/Makefile.am: + * docs/design/part-toc.txt: + docs: add overview of GstToc usage + +2012-03-14 21:14:23 +0400 Alexander Saprykin + + * docs/gst/gstreamer-docs.sgml: + * docs/gst/gstreamer-sections.txt: + docs: Add GstToc and GstTocSetter sections with related functions + +2012-03-14 21:13:22 +0400 Alexander Saprykin + + * tests/check/Makefile.am: + * tests/check/gst/gsttocsetter.c: + gstchecks: Add unit test for the GstTocSetter + +2012-03-14 21:12:22 +0400 Alexander Saprykin + + * tests/check/Makefile.am: + * tests/check/gst/gsttoc.c: + gstchecks: Add unit test for the GstToc + +2012-03-14 20:45:35 +0400 Alexander Saprykin + + * gst/Makefile.am: + * gst/gst.h: + * gst/gsttocsetter.c: + * gst/gsttocsetter.h: + Add new GstTocSetter interface + +2012-03-14 20:42:56 +0400 Alexander Saprykin + + * gst/gstquery.c: + * gst/gstquery.h: + Add new TOC query + +2012-03-14 20:41:48 +0400 Alexander Saprykin + + * gst/gstmessage.c: + * gst/gstmessage.h: + Add new TOC message + +2012-03-14 20:40:32 +0400 Alexander Saprykin + + * gst/gstevent.c: + * gst/gstevent.h: + * gst/gstquark.c: + * gst/gstquark.h: + Add new TOC and TOC select events + +2012-03-14 20:01:51 +0400 Alexander Saprykin + + * gst/Makefile.am: + * gst/gst.c: + * gst/gst.h: + * gst/gst_private.h: + * gst/gsttoc.c: + * gst/gsttoc.h: + Add generic table of contents (TOC) support + +2012-04-01 12:01:34 +0200 Wim Taymans + + * gst/gstbuffer.c: + buffer: reuse more code + +2012-04-01 11:42:52 +0200 Wim Taymans + + * docs/gst/gstreamer-sections.txt: + * gst/gstbuffer.c: + * gst/gstbuffer.h: + * tests/check/gst/gstbuffer.c: + * win32/common/libgstreamer.def: + buffer: make function to find memory in a buffer + Make a function to find the memory blocks for a region in a buffer. + +2012-03-31 21:26:22 +0200 Stefan Sauer + + * gst/gstchildproxy.c: + childproxy: fix more missing GST_OBJECT -> G_OBJECT use + +2012-03-31 18:34:23 +0200 Wim Taymans + + * libs/gst/base/gstadapter.c: + adapter: use buffer_wrap + +2012-03-31 17:10:35 +0200 Wim Taymans + + * gst/gstbuffer.c: + * gst/gstbuffer.h: + * win32/common/libgstreamer.def: + buffer: add peek_memory method + Add a peerk_memory method that simply fetches the memory at an offset without + refcounting or merging. + +2012-03-31 12:00:56 +0200 Wim Taymans + + * gst/parse/grammar.y: + grammar.y: fix childproxy code + It takes GObject and not GstObject now + +2012-03-30 22:46:02 +0200 Stefan Sauer + + * gst/gstbin.c: + * gst/gstchildproxy.c: + * gst/gstchildproxy.h: + childproxy: include the child name in the signal + +2012-03-30 22:44:31 +0200 Stefan Sauer + + * gst/parse/grammar.y: + parser: update for childproxy api changes + +2012-03-30 22:36:35 +0200 Stefan Sauer + + * gst/gstchildproxy.c: + childproxy: fix signal parameter types + +2012-03-30 22:17:09 +0200 Stefan Sauer + + * gst/gstbin.c: + * gst/gstchildproxy.c: + * gst/gstchildproxy.h: + * tests/check/gst/gstchildproxy.c: + childproxy: use GObject instead of GstObject + This makes it prossible to be used more widely. Fix implementations for the API + change. + +2012-03-30 22:01:55 +0200 Stefan Sauer + + * gst/gstchildproxy.c: + * gst/gstchildproxy.h: + childproxy: make get_child_by_name virtual + Allows implementations to use custom name->object mappings. + +2012-03-30 22:01:26 +0200 Stefan Sauer + + * gst/gstchildproxy.c: + childproxy: fix indentation + +2012-03-30 18:04:51 +0200 Wim Taymans + + * docs/design/part-buffer.txt: + * docs/gst/gstreamer-sections.txt: + * docs/random/porting-to-0.11.txt: + * gst/gstbuffer.c: + * gst/gstbuffer.h: + * libs/gst/base/gstadapter.c: + * libs/gst/base/gstbytewriter.c: + * plugins/elements/gstfakesrc.c: + * tests/check/gst/gstbuffer.c: + * tests/check/libs/bitreader.c: + * tests/check/libs/bytereader.c: + * tests/check/libs/typefindhelper.c: + * win32/common/libgstreamer.def: + buffer: improve the buffer memory methods + gst_buffer_take_memory -> gst_buffer_insert_memory because insert is what the + method does. + Make all methods deal with ranges so that we can replace, merge, remove and map + a certain subset of the memory in a buffer. With the new methods we can make + some code nicer and reuse more code. Being able to deal with a subset of the + buffer memory allows us to optimize more cases later (most notably RTP headers + and payload that could be in different memory objects). + Make some more convenient macros that call the more generic range methods. + +2012-03-30 16:53:09 +0200 Mark Nauwelaerts + + * plugins/elements/gsttypefindelement.c: + typefindelement: plug caps leaks + +2012-03-30 16:53:05 +0200 Mark Nauwelaerts + + * libs/gst/base/gsttypefindhelper.c: + typefindhelper: also unmap collected mapped buffers + +2012-03-30 16:53:00 +0200 Mark Nauwelaerts + + * libs/gst/base/gstbasetransform.c: + basetransform: plug caps leak + +2012-03-30 11:58:20 +0200 Sebastian Dröge + + * libs/gst/base/gstbaseparse.c: + * libs/gst/base/gstbaseparse.h: + baseparse: Rename ::event() to ::sink_event() for consistency + +2012-03-30 11:49:16 +0200 Edward Hervey + + * libs/gst/base/gstbasesrc.h: + basesink: lower GST_BASE_SRC_FLAG_LAST + It wouldn't leave that much room for subclass users + +2012-03-30 08:55:33 +0200 Edward Hervey + + * win32/common/libgstbase.def: + win32: Update defs file + +2012-03-29 18:03:35 +0200 Sebastian Dröge + + * libs/gst/base/gstbytewriter.c: + bytewriter: Actually commit the .c file changes too + +2012-03-29 17:59:28 +0200 Sebastian Dröge + + * libs/gst/base/gstbytewriter.h: + bytewriter: Add unchecked/inline variant of gst_byte_writer_put_buffer() + +2012-03-29 17:53:47 +0200 Edward Hervey + + * gst/gstquery.c: + gstquery: Fix annotation + +2012-03-29 17:44:02 +0200 Edward Hervey + + * plugins/elements/gstqueue.c: + queue: Flush the internal queue when we see GST_FLOW_FLUSHING + Ensures that we don't end up with stale contents (like GstQuery) in + the internal GQueue after any blocking upstream thread returns. + +2012-03-29 17:43:17 +0200 Edward Hervey + + * plugins/elements/gstqueue.c: + queue: Don't unref GstQuery travelling through the queue + Unlike events and buffers, the reference is not given to us + +2012-03-29 17:08:49 +0200 Mark Nauwelaerts + + * gst/gstquery.c: + query: parsing allocation query need not provide reffed caps + ... in line with other query parsing function. + +2012-03-29 15:45:00 +0200 Fabrizio (Misto) Milo + + * gst/gstcaps.c: + caps: spelling fixes + +2012-03-29 15:28:44 +0200 Edward Hervey + + * gst/gstelement.h: + gstelement: lower GST_ELEMENT_FLAG_LAST + It wouldn't leave that much room for subclass users + +2012-03-29 15:18:33 +0200 Edward Hervey + + * gst/gstbuffer.c: + gstbuffer: Fix unitialized variable + gcc 4.5 complains otherwise :( + +2012-03-29 14:54:53 +0200 Sebastian Dröge + + Merge remote-tracking branch 'origin/0.10' + Conflicts: + plugins/elements/gstmultiqueue.c + +2012-03-29 14:45:41 +0200 Sebastian Dröge + + * plugins/elements/gstmultiqueue.c: + multiqueue: Wake up all not-linked streams when a stream switches from linked to not-linked + We reset all the waiting streams, let them push another buffer to + see if they're now active again. This allows faster switching + between streams and prevents deadlocks if downstream does any + waiting too. + Also improve locking a bit, srcresult must be protected by the + multiqueue lock too because it's used/set from random threads. + +2012-03-29 14:32:24 +0200 Sebastian Dröge + + * plugins/elements/gstmultiqueue.c: + multiqueue: Recompute high-time too when flushing, not only high-id + +2012-03-29 13:39:40 +0200 Sebastian Dröge + + * plugins/elements/gstinputselector.c: + inputselector: Only wait until the active pad's running time is reached if the active pad already saw data + Otherwise we might block forever because upstream (e.g. multiqueue) is waiting + for the previously active stream to return forever (which is waiting here + in inputselector) before pushing something on the newly selected stream. + +2012-03-29 13:34:50 +0200 Wim Taymans + + * docs/gst/gstreamer-sections.txt: + * gst/gstbuffer.h: + * gst/gstbufferlist.c: + * gst/gstclock.c: + * gst/gstelementfactory.c: + * gst/gstevent.c: + * gst/gstevent.h: + * gst/gstiterator.c: + * gst/gstmemory.c: + * gst/gstmemory.h: + * gst/gstmessage.c: + * gst/gstmeta.c: + * gst/gstmeta.h: + * gst/gstminiobject.c: + * gst/gstminiobject.h: + * gst/gstobject.c: + * gst/gstpad.c: + * gst/gstpad.h: + * gst/gstpadtemplate.c: + * gst/gstpipeline.c: + * gst/gstquery.c: + * gst/gstquery.h: + * gst/gstregistry.c: + * gst/gstsample.c: + * gst/gstsegment.c: + * gst/gststructure.c: + * gst/gsttask.c: + * gst/gsttrace.c: + * gst/gsturi.c: + * gst/gstvalue.c: + docs: update more documentation + +2012-03-28 18:12:23 +0200 Wim Taymans + + * docs/pwg/advanced-events.xml: + * gst/gstbin.c: + * gst/gstbuffer.c: + * gst/gstbufferlist.c: + * gst/gstbufferpool.c: + * gst/gstbufferpool.h: + * gst/gstbus.c: + * gst/gstcaps.c: + * gst/gstclock.c: + * gst/gstelement.c: + * gst/gstevent.c: + * gst/gstminiobject.c: + * gst/gstpad.h: + * libs/gst/base/gstbasesrc.h: + review some docs + +2012-03-28 16:44:34 +0200 Wim Taymans + + * gst/gstbuffer.c: + buffer: simplify and refactor _span and _merge + Unify the _span and _merge code paths and simplify now that we only use this + internally. + +2012-03-28 15:16:01 +0200 Wim Taymans + + * gst/gstbuffer.c: + buffer: we always call _span with the buffer size + +2012-03-28 15:12:05 +0200 Wim Taymans + + * gst/gstbuffer.c: + buffer: move some code around + +2012-03-28 15:08:44 +0200 Wim Taymans + + * gst/gstbuffer.c: + buffer: we call _span always with 0 offset + +2012-03-28 13:08:59 +0200 Wim Taymans + + * gst/gstbuffer.c: + buffer: remove always FALSE function argument + +2012-03-28 16:39:54 +0200 Mark Nauwelaerts + + * gst/gstbuffer.c: + buffer: delay buffer unref until buffer no longer needed + +2012-03-28 12:44:44 +0200 Wim Taymans + + * docs/gst/gstreamer-sections.txt: + * docs/random/porting-to-0.11.txt: + * gst/gstbuffer.c: + * gst/gstbuffer.h: + * gst/gstutils.c: + * gst/gstutils.h: + * libs/gst/base/gstadapter.c: + * tests/check/gst/gstbuffer.c: + * win32/common/libgstreamer.def: + buffer: unify buffer merge methods + Add gst_buffer_append() which appends the memory blocks from one buffer to + another. Remove the old inefficient _merge() and _join() methods which forced a + premature memcpy in most cases. + Remove the _is_span() and _span() methods they are not needed anymore now that + we can _append(). Merging and spanning will be delayed until mapping or maybe + not at all when the element can deal with the different memory blocks. + +2012-03-27 15:24:49 -0400 Olivier Crête + + * gst/gstghostpad.c: + gstpad: Fix typo in docstring + +2012-03-27 15:24:49 -0400 Olivier Crête + + * gst/gstghostpad.c: + gstpad: Fix typo in docstring + +2012-03-27 15:16:55 +0200 Wim Taymans + + * gst/gstbuffer.c: + buffer: re-enable _span offset calculations + when we _span two complete buffers, we can copy offsets and timestamps. + +2012-03-27 15:00:38 +0200 Wim Taymans + + * gst/gsttrace.c: + trace: add refcount to trace debug + +2012-03-27 14:59:06 +0200 Wim Taymans + + * gst/gstbuffer.c: + buffer: add more _is_writable checks + Add some checks to assert on writability for functions that modify metadata. + +2012-03-27 12:40:36 +0200 Wim Taymans + + * gst/gstbufferpool.c: + * gst/gstbufferpool.h: + bufferpool: remove const from get/set_param + Remove the const from the GstCaps in get/set_param. set_param modifies + the refcount of the caps. + Don't increment the refcount of the caps result of get_param like we + do with other objects. + Update some annotiations. + +2012-03-27 12:39:53 +0200 Wim Taymans + + * gst/gstbufferpool.c: + bufferpool: fix annotation for _release + _release takes ownership of the buffer + +2012-03-27 12:31:18 +0200 Sebastian Dröge + + * gst/gstbus.c: + * gst/gstbus.h: + bus: Change the timeout argument type of gst_bus_poll() from GstClockTimeDiff to GstClockTime + This is more consistent with the other GstBus methods that have a timeout. + +2012-03-26 19:13:21 +0200 Wim Taymans + + * gst/gstcaps.c: + caps: remove old code + Remove attempt to delay _make_writable + +2012-03-26 18:07:35 +0200 Mark Nauwelaerts + + * gst/gstcaps.c: + caps: ensure writable caps prior to modification + +2012-03-26 17:38:50 +0200 Wim Taymans + + * gst/gstbufferpool.c: + bufferpool: check min/max_buffers + +2012-03-26 17:35:18 +0200 Wim Taymans + + * gst/gstquery.c: + query:fix copy-and-paste problem + +2012-03-26 11:54:59 +0200 Wim Taymans + + Replace master with 0.11 + +2012-03-23 18:51:52 +0100 Mark Nauwelaerts + + * gst/gstutils.c: + utils: add and improve debug messages + ... so they end up in a more expected debug category rather than oblivion. + +2012-03-22 15:54:55 +0100 Wim Taymans + + * configure.ac: + back to devel + +2012-03-22 15:49:36 +0100 Wim Taymans + + * ChangeLog: + * NEWS: + * RELEASE: + * configure.ac: + * docs/plugins/gstreamer-plugins.args: + * docs/plugins/inspect-build.stamp: + * docs/plugins/inspect.stamp: + * docs/plugins/inspect/plugin-coreelements.xml: + * gstreamer.doap: + * po/af.po: + * po/az.po: + * po/be.po: + * po/bg.po: + * po/ca.po: + * po/cs.po: + * po/da.po: + * po/de.po: + * po/el.po: + * po/en_GB.po: + * po/eo.po: + * po/es.po: + * po/eu.po: + * po/fi.po: + * po/fr.po: + * po/gl.po: + * po/hu.po: + * po/id.po: + * po/it.po: + * po/ja.po: + * po/lt.po: + * po/nb.po: + * po/nl.po: + * po/pl.po: + * po/pt_BR.po: + * po/ro.po: + * po/ru.po: + * po/rw.po: + * po/sk.po: + * po/sl.po: + * po/sq.po: + * po/sr.po: + * po/sv.po: + * po/tr.po: + * po/uk.po: + * po/vi.po: + * po/zh_CN.po: + * po/zh_TW.po: + * win32/common/config.h: + * win32/common/gstenumtypes.c: + * win32/common/gstenumtypes.h: + * win32/common/gstversion.h: + Release 0.11.3 + +2012-03-22 15:22:57 +0100 Mark Nauwelaerts + + * libs/gst/base/gstbasetransform.c: + basetransform: remove automatic and undocumented setting of always_in_place + ... which controls how to (forcibly) deal with (non-)writable data and + is not necessarily related to identical caps. + In particular, it is also not so helpful anymore with a more advanced + GstVideoFilter subclass which always has a transform_ip method currently, + even though its subclass may not have a corresponding _ip method. + +2012-03-22 10:45:06 +0100 Wim Taymans + + Merge branch 'master' into 0.11 + Conflicts: + configure.ac + +2012-03-22 08:35:25 +0100 Stefan Sauer + + * tools/gst-launch.c: + gst-launch: don't shadow global variable + +2012-03-21 12:10:21 +0100 Wim Taymans + + * libs/gst/Makefile.am: + dist net directory only once + +2012-03-21 09:00:45 +0100 Sebastian Dröge + + * gst/gstquery.c: + query: Only allow fixed caps in the accept-caps query + +2012-03-20 17:08:28 +0100 Wim Taymans + + * libs/gst/base/gstbaseparse.c: + baseparse: do queries more directly + Just call our internal query function instead of going through the pad and the + query handler etc. + +2012-03-20 17:08:00 +0100 Wim Taymans + + * libs/gst/base/gstadapter.c: + adapter: add some performance debug + +2012-03-20 13:14:55 +0100 Wim Taymans + + * gst/gstpad.c: + * libs/gst/base/gstbasesrc.c: + * plugins/elements/gstqueue2.c: + pad: improve docs of get/pull_range + Improve the docs of the get/pull_range functions, define the lifetime of the + buffer in case of errors and short reads. + Make sure the code does what the docs say. + +2012-03-20 10:20:29 +0100 Wim Taymans + + * gst/gstbuffer.c: + * gst/gstbuffer.h: + * tests/check/gst/gstevent.c: + buffer: improve gst_buffer_new_wrapped_full() + Make it possible to wrap all kinds of memory by exposing all properties to + gst_buffer_new_wrapped_full(). This makes it possible to also create writable + memory without a free function or memory with extra padding. + +2012-03-19 11:45:27 +0100 Wim Taymans + + * plugins/elements/gstmultiqueue.c: + multiqueue: handle serialized queries + +2012-03-16 22:51:14 +0100 Wim Taymans + + * libs/gst/base/gstbasetransform.c: + * libs/gst/base/gstbasetransform.h: + basetransform: make more stuff private + +2012-03-16 22:25:38 +0100 Wim Taymans + + * libs/gst/base/gstbasetransform.c: + basetransform: small cleanups + +2012-03-16 21:37:10 +0100 Wim Taymans + + * gst/gstpad.c: + * gst/gstpad.h: + * libs/gst/base/gstbasesrc.c: + * libs/gst/base/gstbasetransform.c: + * plugins/elements/gsttypefindelement.c: + * tests/check/elements/filesrc.c: + pad: change the semantics of get/pull_range a little + Make it so that one can specify a buffer for get/pull_range where the downstream + element should write into. When passing NULL, upstream should allocate a buffer, + like in 0.10. + We also need to change the probes a little because before the pull probe, there + could already be a buffer passed. This then allows us to use the same PROBE + macro for before and after pulling. + While we're at the probes, make the query probe more powerful by handling the + GST_PAD_PROBE_DROP return value. Returning _DROP from a query probe will now + return TRUE upstream and will not forward the probe to the peer or handler. + Also handle _DROP for get/pull_range properly by not dispatching to the + peer/handler or by generating EOS when the probe returns DROP and no buffer. + Make filesrc handle the non-NULL buffer passed in the get_range function and + skip the allocation in that case, writing directly into the downstream provided + buffer. + Update tests because now we need to make sure to not pass a random value in the + buffer pointer to get/pull_range + +2012-03-16 21:36:33 +0100 Wim Taymans + + * plugins/elements/gsttypefindelement.c: + typefind: proxy allocation query + +2012-03-16 18:39:08 +0100 Wim Taymans + + * gst/gstevent.c: + event: fix docs a little, alloc_buffer is gone + +2012-03-15 22:09:02 +0100 Wim Taymans + + * gst/gstbufferpool.c: + * gst/gstbufferpool.h: + * gst/gstmemory.h: + * gst/gstquark.c: + * gst/gstquark.h: + * libs/gst/base/gstbasesrc.c: + * libs/gst/base/gstbasetransform.c: + * win32/common/libgstreamer.def: + bufferpool: split bufferpool configuration + Make separate methods to control the bufferpool and the allocator used by the + bufferpool. + Make it possible to change the allocator of a pool. + +2012-03-15 20:23:59 +0100 Wim Taymans + + * gst/gstquery.c: + * gst/gstquery.h: + * libs/gst/base/gstbaseparse.c: + * libs/gst/base/gstbasesrc.c: + * libs/gst/base/gstbasetransform.c: + * win32/common/libgstreamer.def: + query: rework the ALLOCATION query + Separate the bufferpool and allocator hints in the allocation query, some + of the values don't always make sense together. + Keep the bufferpool and its configuration together. + Keep the allocator and its parameters together. + Allow for multiple bufferpool configurations in the query. + +2012-03-15 16:50:31 +0100 Wim Taymans + + * gst/gstpad.c: + pad: comment and debug improvement + +2012-03-15 16:49:33 +0100 Wim Taymans + + * gst/gstutils.c: + utils: improve debug + also fix a potential memory leak + +2012-03-15 14:28:22 +0100 Wim Taymans + + * win32/common/libgstreamer.def: + defs: update + +2012-03-15 14:01:44 +0100 Wim Taymans + + * gst/gst.c: + * gst/gstbufferpool.c: + * gst/gstbufferpool.h: + GstBufferPoolParams -> GstBufferPoolAcquireParams + Because those flags are not from the bufferpool but for the acquire function. + +2012-03-15 13:28:28 +0100 Wim Taymans + + * gst/gstbuffer.c: + * gst/gstbuffer.h: + * gst/gstbufferpool.c: + * gst/gstcompat.h: + * gst/gstmemory.c: + * gst/gstmemory.h: + * gst/gstvalue.c: + * libs/gst/base/gstbasesrc.c: + * libs/gst/base/gstbasetransform.c: + * plugins/elements/gstfakesrc.c: + * plugins/elements/gstfdsrc.c: + * plugins/elements/gstqueue2.c: + * tests/check/gst/gstbuffer.c: + * tests/check/gst/gstmemory.c: + * win32/common/libgstreamer.def: + memory: group allocation parameters in a struct + Group the extra allocation parameters in a GstAllocationParams structure to make + it easier to deal with them and so that we can extend them later if needed. + Make gst_buffer_new_allocate() take the GstAllocationParams for added + functionality. + Add boxed type for GstAllocationParams. + +2012-03-15 00:25:50 +0100 Wim Taymans + + * plugins/elements/gstfilesrc.c: + filesrc: only update buffer size on short read + +2012-03-15 00:24:40 +0100 Wim Taymans + + * gst/gstquery.c: + query: fix copy function + Copy the structure too. + +2012-03-15 00:23:57 +0100 Wim Taymans + + * gst/gstmemory.c: + memory: fix maxsize after align + when we align the data pointer, make sure to update the maxsize. + Add some more debug + +2012-03-14 22:58:34 +0100 Wim Taymans + + * plugins/elements/gstqueue.c: + * plugins/elements/gstqueue2.c: + queue: remove useless PROXY_ALLOCATION flag + +2012-03-14 21:32:22 +0100 Wim Taymans + + * gst/gstbuffer.c: + * gst/gstbufferpool.c: + * gst/gstmemory.c: + * gst/gstmemory.h: + * libs/gst/base/gstbasesrc.c: + * libs/gst/base/gstbasetransform.c: + * tests/check/gst/gstbuffer.c: + * tests/check/gst/gstmemory.c: + memory: Add 0 padding + Change gst_allocator_alloc() so that we can also spicify flags and padding. + Add 2 new flags to mark the memory 0 prefixed/padded. This allows us to + remove some resizes in the base classes. + When allocating memory, memset prefix and padding with 0 when the flags tell + us to. + On resize, clear the zero padding flags if we can't guarantee the memory is + still 0 filled. + Update tests. + +2012-03-14 19:37:22 +0100 Wim Taymans + + * gst/gstbufferpool.c: + * gst/gstbufferpool.h: + * gst/gstquark.c: + * gst/gstquark.h: + * gst/gstquery.c: + * gst/gstquery.h: + * libs/gst/base/gstbasesrc.c: + * libs/gst/base/gstbasetransform.c: + query: also include padding in ALLOCATION query + Negotiating padding is needed on second thought so include it in the + ALLOCATION query. + Make the bufferpool take padding into account when allocating. + Make basesrc take padding into account. + Use padding and prefix when allocating in basetransform. + +2012-03-14 18:45:55 +0100 Wim Taymans + + * libs/gst/base/gstbasesrc.c: + basesrc: take prefix into account when allocating + Take into account the prefix that we received from the allocation query and use + it to allocate and resize a larger buffer. + +2012-03-14 17:16:36 +0100 Mark Nauwelaerts + + * gst/gstbufferpool.c: + bufferpool: free owned discarded pool config + +2012-03-14 16:27:31 +0100 Wim Taymans + + * gst/gstpad.c: + * libs/gst/base/gstbasesink.c: + pad: implement DRAIN handling + When we forward the DRAIN query and there is nothing to forward it to, assume we + are drained. + When a basesink receives a drain query, reply with TRUE. + +2012-03-14 16:14:12 +0100 Wim Taymans + + * gst/gstquark.c: + * gst/gstquark.h: + * gst/gstquery.c: + * gst/gstquery.h: + * win32/common/libgstreamer.def: + query: add new drain query + With the new serialized downstream queries we can implement a drain query that + makes an element waits until a downstream element replies to the query. + +2012-03-14 16:01:15 +0100 Wim Taymans + + * gst/gstpad.c: + pad: make serialized queries push sticky events first + Before we can proceed with a serialized query, we need to be sure that all + sticky events were pushed. + +2012-03-14 15:42:47 +0100 Wim Taymans + + * plugins/elements/gstmultiqueue.c: + * plugins/elements/gstqueue2.c: + queues: warn when receiving a serialized event + .. until we implement it. + +2012-03-14 15:42:33 +0100 Wim Taymans + + * plugins/elements/gstqueue.c: + * plugins/elements/gstqueue.h: + queue: add support for serialized queries + +2012-03-14 15:29:12 +0100 Wim Taymans + + * gst/gstpad.c: + pad: take stream lock on serialized queries + +2012-03-14 15:16:56 +0100 Wim Taymans + + * gst/gstpad.c: + pad: enforce correct query direction + +2012-03-14 14:51:16 +0100 Wim Taymans + + * gst/gst.c: + * gst/gstquery.c: + * gst/gstquery.h: + * win32/common/libgstreamer.def: + query: register queries like events + Also register queries with a QueryType that allows us to check if the event is + sent in the right direction. Add a serialized query type because we will need + this for the allocation query. + Remove the QueryTypeDefinition stuff, it is not used anymore and we now use + custom queries and separate API for them. + Update defs. + +2012-03-14 12:42:00 +0100 Wim Taymans + + * libs/gst/base/gstadapter.c: + adapter: add more debug + +2012-03-13 15:40:37 +0100 Wim Taymans + + * gst/gstbin.c: + bin: remove old compat mode + +2012-03-13 15:40:23 +0100 Wim Taymans + + * gst/gstcaps.c: + caps: small docs update + +2012-03-13 10:04:36 +0100 Wim Taymans + + * docs/random/porting-to-0.11.txt: + * gst/gstcaps.c: + * gst/gstcaps.h: + caps: remove gst_caps_union() + Remove gst_caps_union(), use gst_caps_merge(). This function was not used + anymore and it is unclear what the difference is with _merge(). + +2012-03-12 23:05:01 +0000 Tim-Philipp Müller + + * configure.ac: + configure: bump AS_LIBTOOL version + API was added to collectpads2 + +2012-03-12 23:02:48 +0000 Tim-Philipp Müller + + * configure.ac: + configure: backport AS_LIBTOOL version from 0.10.36 release + Might fix issues with missing symbols for people who install GStreamer + from source and at some point jumped back and forth between git master + and the 0.10.36 release (or 0.10. branch). + +2012-03-12 23:08:00 +0100 Stefan Sauer + + * libs/gst/base/gstcollectpads2.c: + docs: fix function name and typo + +2012-03-12 19:52:03 +0100 Wim Taymans + + * libs/gst/base/gstbasetransform.c: + basetransform: get template caps only once + Get the template caps of the pads only once, avoids unecessary ref + and unrefs. + +2012-03-12 18:34:30 +0100 Wim Taymans + + * gst/gstcaps.c: + caps: delay _make_writable() until needed in _normalize() + Delay _make_writable() until we actually found a list and need to update the + caps. + +2012-03-12 18:25:38 +0100 Wim Taymans + + * gst/gstcaps.c: + caps: shortcut simplify earlier + A simple caps is already simplified, no need to check for fixedness. + +2012-03-12 18:22:05 +0100 Wim Taymans + + * gst/gstcaps.c: + caps: small cleanup, remove const + +2012-03-12 18:02:27 +0100 Wim Taymans + + * gst/gstcaps.c: + caps: small cleanups + +2012-03-12 16:40:38 +0100 Wim Taymans + + * gst/gstcaps.c: + caps: small doc improvement + +2012-03-12 16:18:45 +0200 Sreerenj Balachandran + + * configure.ac: + configure.ac: bump required GLib to 2.31.14 + Fixes https://bugzilla.gnome.org/show_bug.cgi?id=671911 + +2012-03-12 13:50:45 +0000 Tim-Philipp Müller + + * docs/random/porting-to-0.11.txt: + docs: update porting-to-0.11.txt a little + +2012-03-12 12:35:07 +0100 Wim Taymans + + * gst/gstcaps.c: + caps: fix some 0.11 FIXMEs + +2012-03-12 12:21:34 +0100 Wim Taymans + + * gst/gstcaps.c: + * tests/check/gst/gstcaps.c: + caps: make _normalize take ownership of input + Make gst_caps_normalize() take ownership of the input so that it can more + intelligently decide when to copy or not. + +2012-03-12 11:38:37 +0100 Wim Taymans + + * docs/gst/gstreamer-sections.txt: + * gst/gstcaps.c: + * gst/gstcaps.h: + * gst/gstmeta.c: + * gst/gstmeta.h: + * gst/gstquery.c: + * gst/gstregistrychunks.c: + * plugins/elements/gstcapsfilter.c: + * tests/check/gst/gstcaps.c: + * win32/common/libgstreamer.def: + caps: _do_simplify() -> _simplify() + Rename _do_simplify() to _simplify(). The name was introduced as a replacement + method for a deprecated method but we can now rename it again. + Fix some docs. + +2012-03-12 10:42:23 +0100 Wim Taymans + + * gst/gstcaps.c: + * gst/gstcaps.h: + * gst/gstregistrychunks.c: + * plugins/elements/gstcapsfilter.c: + * tests/check/gst/gstcaps.c: + caps: improve _do_simplify + Make gst_caps_do_simplify() take ownership of the input caps and produce a + simplified output caps. This removes the requirement of having writable input + caps and the method can make the caps writable only when needed. + +2012-03-12 10:41:28 +0100 Wim Taymans + + * tests/check/gst/gstpad.c: + tests: fix unit test + with the new caps API, there is more sharing and less copying going on so the + unit test refcounts are different. + +2012-03-12 09:03:42 +0000 Christian Fredrik Kalager Schaller + + * docs/faq/general.xml: + update license link to point to 2.1 license, instead of just generic lgpl file, which is always the latest and thus not correct for gstreamer + +2012-03-11 18:57:44 +0100 Wim Taymans + + * docs/manual/advanced-autoplugging.xml: + * gst/gstcaps.c: + * gst/gstcaps.h: + * gst/gstpadtemplate.c: + * gst/gstutils.c: + * gst/gstutils.h: + * libs/gst/base/gstbasesink.c: + * libs/gst/base/gstbasesink.h: + * libs/gst/base/gstbasesrc.c: + * libs/gst/base/gstbasesrc.h: + * libs/gst/base/gstbasetransform.c: + * tests/check/gst/gstcaps.c: + caps: avoid using in-place oprations + Rework some caps operations so they don't rely on writable caps but instead take + ownership of the input caps and do _make_writable() only when needed. + Remove some const from caps functions, it does not make much sense for + refcounted objects and does not allow us to return a refcount to the const input + caps. + Rework the base classes fixate vmethods to not operate on the caps in-place. + All this saves us around 30% of caps and structure copy and new operations. + +2012-03-11 17:22:01 +0100 Wim Taymans + + * gst/gststructure.c: + structure: add allocation debug + +2012-03-10 09:25:43 +0100 Wim Taymans + + * gst/gsttypefind.c: + * gst/gsttypefind.h: + * libs/gst/base/gsttypefindhelper.c: + * plugins/elements/gsttypefindelement.c: + * plugins/elements/gsttypefindelement.h: + typefind: remove const from refcounted GstCaps + Having const on refcounted objects require us to make copies instead of simply + taking a ref, don't do that. + +2012-03-10 09:15:43 +0100 Wim Taymans + + * gst/gstregistrychunks.c: + registry: avoid copy when caps are fixed + Avoid doing a useless copy when the caps are fixed and simplify will not do + anything. + +2012-03-09 16:14:02 +0100 Wim Taymans + + * gst/gstbuffer.c: + buffer: small optimizations + shortcut heavy work when buffer_resize does nothing. + Avoid an extra _ref when mapping a buffer. + Add some G_LIKELY. + +2012-03-09 15:03:11 +0100 Wim Taymans + + * docs/design/part-bufferpool.txt: + bufferpool: fix array types + +2012-03-09 14:30:01 +0100 Wim Taymans + + * docs/design/part-buffer.txt: + * docs/design/part-bufferpool.txt: + * docs/design/part-memory.txt: + * docs/design/part-meta.txt: + * docs/design/part-overview.txt: + * docs/design/part-scheduling.txt: + docs: update docs + +2012-03-09 11:53:54 +0100 Wim Taymans + + * gst/gstpad.c: + pad: also push sticky events on new event + Make a helper function check_sticky to check and push pending sticky events. + Move the handling of the result of pushing the sticky event inside the + push_event function, we need to mark the event as received when it was pushed + correctly. + Move the sticky events code outside of gst_pad_push_event_unchecked and + make it purely handle sending the event to the peer. + when pushing a sticky event, first store it on the pad. Then check and push any + pending sticky events when we get a serialized or sticky event on a srcpad. This + fixes the issue where sticky events are not pushed when an event is pushed. + +2012-03-09 11:52:29 +0100 Wim Taymans + + * gst/gstpad.c: + pad: store the received result from _foreach + If the foreach function changes the received state of the sticky event, make + sure we remember that. + +2012-03-09 11:52:11 +0100 Wim Taymans + + * gst/gstpad.c: + pad: add comment + +2012-03-09 11:49:08 +0100 Wim Taymans + + * tests/check/gst/gstpad.c: + test: add test to check sticky events order + Sticky events pushed on an unlinked pad should be stored on the pad. When the + pad is then linked and an event is pushed, the event should be merged with the + already existing sticky events and then the sticky events should be pushed in + the order that they were originally pushed. + +2012-03-09 11:48:40 +0100 Wim Taymans + + * tests/check/gst/gstutils.c: + test: fix typo in comment + +2012-03-08 20:08:20 +0000 Tim-Philipp Müller + + * tests/check/pipelines/seek.c: + tests: port pipeline/seek test to 0.11 + Doesn't fail in 0.11 of course, at least not on my machine. + +2012-03-08 19:55:30 +0000 Tim-Philipp Müller + + Merge remote-tracking branch 'origin/master' into 0.11 + Conflicts: + common + gst/gstpad.h + gst/gsttask.c + libs/gst/base/gstcollectpads2.h + +2012-03-08 16:30:49 +0000 Tim-Philipp Müller + + * gst/gstpad.c: + * gst/gsttask.c: + pad, task: improve debug logging + +2012-03-08 16:26:44 +0000 Tim-Philipp Müller + + * gst/gstpad.h: + * libs/gst/base/gstcollectpads2.h: + pads, collectpads2: get rid of superfluous brackets around static rec mutex calls + Makes it possible to define those calls to something for tracing. + +2012-03-08 16:25:20 +0000 Tim-Philipp Müller + + * common: + common: update common module + For make foo/bar.check-norepeat target. + +2012-03-08 15:23:56 +0000 Tim-Philipp Müller + + * tests/check/Makefile.am: + * tests/check/pipelines/.gitignore: + * tests/check/pipelines/seek.c: + tests: add minimal basesrc ! sink seeking unit test + Should reproduce 'GStreamer-WARNING **: wrong STREAM_LOCK count 0' + warnings (with make pipelines/seek.torture or pipelines/seek.forever + anyway, since it appears to be racy). + https://bugzilla.gnome.org/show_bug.cgi?id=670846 + +2011-12-26 00:18:29 +0000 Tim-Philipp Müller + + * docs/gst/gstreamer-sections.txt: + * gst/gstvalue.c: + * gst/gstvalue.h: + * win32/common/libgstreamer.def: + value: remove gst_value_register_{subtract,union,intersect}_func() API + There isn't really any need to provide public API for that. It's not + used anywhere in practice, and we aim to provide an API that works + for GstCaps, not some kind of generic set manipulation API based on + GValue. Making this private also makes it easier to optimise this + later. We can always put it back if someone actually needs it. + +2012-03-08 10:47:39 +0100 Wim Taymans + + * plugins/elements/gsttee.c: + tee: fix refcount error + +2012-03-08 09:45:06 +0100 Wim Taymans + + * gst/gstpad.c: + * tests/check/gst/gstpad.c: + pad: return ANY for a pad without template + Because gst_pad_get_pad_template_caps() returns ANY when there is no template, + the query caps function should also return ANY when there is no template (and no + pad current caps) instead of EMPTY. + +2012-03-08 09:44:21 +0100 Wim Taymans + + * gst/gstpad.c: + pad: small cleanup + +2012-03-07 15:34:36 +0100 Wim Taymans + + * gst/gstmemory.c: + memory: add comment + +2012-03-08 10:32:02 +0100 Sebastian Dröge + + * libs/gst/base/gstbaseparse.c: + baseparse: Fix merge mistake + +2012-03-08 10:19:52 +0100 Sebastian Dröge + + Merge branch 'master' into 0.11 + Conflicts: + libs/gst/base/gstbaseparse.c + libs/gst/base/gstbasetransform.c + plugins/elements/gsttee.c + +2012-03-07 11:23:56 +0100 Mark Nauwelaerts + + * libs/gst/base/gstbaseparse.h: + baseparse: arrange for properly disjoint frame flags + +2012-03-06 15:17:05 +0100 Wim Taymans + + * libs/gst/base/gstbasetransform.c: + basetransform: delay pool activation + Delay the activation of the bufferpool until we actually need a buffer from the + pool. + +2012-03-06 12:28:02 +0100 Sebastian Dröge + + * libs/gst/base/gstbaseparse.c: + baseparse: Fix 'self-comparison always evaluates to true' + This was really a bug. + +2012-03-06 12:24:53 +0100 Sebastian Dröge + + * plugins/elements/gsttee.c: + tee: Fix 'use of logical '&&' with constant operand' compiler warning + This is actually a real bug. + +2012-03-06 12:23:15 +0100 Sebastian Dröge + + * libs/gst/base/gstbasetransform.c: + basetransform: Fix 'equality comparison with extraneous parentheses' compiler warning + +2012-03-06 12:16:19 +0100 Sebastian Dröge + + * gst/gst.c: + gst: Fix 'comparison of unsigned enum expression >= 0 is always true' compiler warning + +2012-03-05 15:23:46 +0100 Wim Taymans + + * libs/gst/base/gstbasetransform.c: + basetransform: don't propose_allocation before negotiation + Answer the allocation query with FALSE when we are not negotiated yet because at + that point we have no idea if we need to proxy the allocation query or not. + +2012-03-05 14:41:12 +0100 Sebastian Dröge + + * libs/gst/base/gstbaseparse.c: + baseparse: Fix handling of multiple newsegment events + Previously only the last would be pushed, which would cause + invalid running times downstream. This also fixes the handling + of update newsegment events. + +2012-03-05 14:25:57 +0100 Sebastian Dröge + + * libs/gst/base/gstbaseparse.c: + baseparse: Also flush the close_segment + Pushing this after flushing will confuse downstream. + +2012-03-05 14:23:17 +0100 Sebastian Dröge + + * libs/gst/base/gstbaseparse.c: + baseparse: Remove obsolete code and move gap handling to the correct place + The segment start adjustment code in pull mode should never trigger + anymore because the bisection code earlier would have already made + sure that we're at the desired position. + Also move the gap handling some lines below after sending the currently + configured segments. Otherwise we might fill gaps in a segment that is + not configured downstream yet. + +2012-03-05 13:12:18 +0100 Sebastian Dröge + + * libs/gst/base/gstbaseparse.c: + baseparse: Clear some more state when receiving FLUSH_STOP + Like pending serialized events and the currently cached buffer. + +2012-03-05 13:00:38 +0100 Sebastian Dröge + + * libs/gst/base/gstbaseparse.c: + baseparse: Only queue serialized events for sending them later + +2012-03-05 00:34:36 +0000 Tim-Philipp Müller + + * libs/gst/check/Makefile.am: + libgstcheck: export gst_consistency_checker_add_pad() + Fix build of the adder unit test in -base again. + +2012-03-02 17:32:28 +0100 Wim Taymans + + * libs/gst/base/gstbasetransform.c: + * libs/gst/base/gstbasetransform.h: + basetransform: refine metadata filter and transform + Add a vmethod to filter metadata that should be passed upstream. By default, + don't pass anything. + Add a vmethod to transform metadata from the input buffer to the output buffer. + By default, nothing is transformed or copied. + +2012-03-02 17:04:05 +0100 Wim Taymans + + * gst/gst.h: + gst: include gstmeta.h + +2012-03-02 17:03:49 +0100 Wim Taymans + + * gst/gstbufferpool.c: + bufferpool: add more debug info + +2012-03-02 13:02:46 +0100 Wim Taymans + + * win32/common/libgstreamer.def: + defs: update + +2012-03-02 13:02:37 +0100 Wim Taymans + + * tests/check/gst/gstmeta.c: + tests: improve metadata test + +2012-03-02 12:45:23 +0100 Wim Taymans + + * gst/gstbuffer.c: + * gst/gstmeta.h: + meta: add boolean to signal a region copy + Add a boolean to the metadata copy transform that signals if a only a + region is copied. + +2012-03-02 12:16:03 +0100 Stefan Sauer + + * libs/gst/check/gstconsistencychecker.c: + consitencychecker: don't fail on multiple flush_start events + This seems to be okay after a irc discussion. + +2012-03-02 11:57:52 +0100 Wim Taymans + + * gst/gstmeta.c: + * gst/gstmeta.h: + meta: transform docs + Use gst- prefix for metadata transform types. + +2012-03-02 11:04:21 +0100 Wim Taymans + + * libs/gst/base/gstbasetransform.c: + basetrans: fix comment + +2012-03-02 11:05:48 +0100 Sebastian Dröge + + * Android.mk: + * Makefile.am: + * docs/gst/Makefile.am: + * gst/Makefile.am: + * gst/gst.h: + * gst/gstbin.c: + * gst/gstbus.c: + * gst/gstchildproxy.c: + * gst/gstelement.c: + * gst/gstmarshal.list: + * gst/gstobject.c: + * gst/gstpad.c: + * gst/gstpadtemplate.c: + * gst/gstregistry.c: + * gst/gsturi.c: + * libs/gst/base/gstbasesink.c: + * libs/gst/base/gstbasesrc.c: + * libs/gst/base/gstbasetransform.c: + * libs/gst/base/gstindex.c: + * libs/gst/base/gstpushsrc.c: + * plugins/elements/gstfakesink.c: + * plugins/elements/gstfakesrc.c: + * plugins/elements/gstidentity.c: + * plugins/elements/gsttypefindelement.c: + * win32/common/gstmarshal.c: + * win32/common/gstmarshal.h: + gst: Remove gstmarshal.[ch] completely and use the generic marshaller + Fixes bug #671130. + +2012-03-02 10:51:42 +0100 Sebastian Dröge + + * gst/Makefile.am: + gst: Don't install gstmarshal.h + The generic, FFI based marshaller should be used instead of these + and we definitely shouldn't export the marshallers in our public API. + +2012-03-01 17:39:17 +0100 Wim Taymans + + * gst/gst_private.h: + * gst/gstinfo.c: + * gst/gstmeta.c: + meta: improve debugging + Add category for metadata debug + +2012-03-01 17:38:54 +0100 Wim Taymans + + * libs/gst/base/gstbasetransform.c: + basetransform: improve debugging + +2012-03-01 17:38:27 +0100 Wim Taymans + + * gst/gstpad.c: + pad: improve debugging + +2012-03-01 15:18:04 +0100 Wim Taymans + + * libs/gst/base/gstbasetransform.c: + * libs/gst/base/gstbasetransform.h: + basetransform: remove metadata tagged with the memory tag + Remove metadata that describes the particular memory of the buffer it is + attached to. We need to do this because in non-passthrough mode we will allocate + new memory for our output buffer. + +2012-03-01 15:17:37 +0100 Wim Taymans + + * gst/gstmeta.c: + * gst/gstmeta.h: + meta: add tag for memory metadata + +2012-03-01 14:49:38 +0100 Wim Taymans + + * gst/gstquery.c: + * gst/gstquery.h: + query: add method to remove allocation_meta + Also g_return_if_fail for out-of-bounds access instead of silently failing. + +2012-03-01 14:30:58 +0100 Wim Taymans + + * libs/gst/base/gstbasetransform.c: + * libs/gst/base/gstbasetransform.h: + basetransform: improve propose_allocation + Improve the propose allocation vmethod by passing the downstream allocation + query to it. This way the vmethod implementation can use properties of the + downstream allocation to generate the upstream query result. If there is no + downstream quety, it means that the element is working in passthrough mode. + Implement a default decide_allocation. + +2012-03-01 11:11:43 +0100 Wim Taymans + + * libs/gst/base/gstbasetransform.c: + basetransform: clear allocation parameters in passthrough + Clear the allocation parameters when we operate in passthrough. + +2012-03-01 11:06:49 +0100 Wim Taymans + + * tests/check/elements/capsfilter.c: + * tests/check/elements/tee.c: + * tests/check/elements/valve.c: + * tests/check/gst/capslist.h: + * tests/check/gst/gstelementfactory.c: + * tests/check/gst/gstghostpad.c: + * tests/check/gst/gstpad.c: + * tests/check/gst/gststructure.c: + * tests/check/pipelines/parse-launch.c: + * tests/check/pipelines/queue-error.c: + tests: fix old caps in tests now that core warns + +2012-03-01 14:51:26 +0100 Sebastian Dröge + + * libs/gst/base/gstcollectpads2.c: + * libs/gst/check/gstconsistencychecker.c: + libs: Fix some merge mistakes + +2012-03-01 14:43:01 +0100 Sebastian Dröge + + Merge branch 'master' into 0.11 + Conflicts: + libs/gst/base/gstcollectpads2.c + libs/gst/check/gstconsistencychecker.c + +2012-02-28 12:03:46 +0100 Mark Nauwelaerts + + * gst/gstpad.c: + pad: fix some debug message typos + +2012-02-29 21:57:00 +0100 Stefan Sauer + + * libs/gst/check/gstconsistencychecker.c: + * libs/gst/check/gstconsistencychecker.h: + consitencychecker: add handling for sink-pads + Add a pad-probe for sink-pads. One can now add extra pads (belonging to the same + element) to a checker. This allows us to extend the checks. + +2012-02-29 17:20:23 +0100 Wim Taymans + + * gst/gstbuffer.c: + * gst/gstbuffer.h: + * gst/gstmeta.c: + * gst/gstmeta.h: + * gst/gstquery.c: + * gst/gstquery.h: + * libs/gst/net/gstnetaddressmeta.c: + * libs/gst/net/gstnetaddressmeta.h: + * tests/check/gst/gstmeta.c: + * win32/common/libgstnet.def: + * win32/common/libgstreamer.def: + meta: split registration of API and implementation + Split out the registration of the metadata API and its implementation. Make a + GType for each metadata API. This allows us to store extra information with the + API type such as the tags. + Change the buffer API so that we can get the metadata using the API GType. + Change the query API so that we use the metadata API GType in the allocation + query instead of a string. + Update netaddress and unit tests + +2012-02-29 16:00:22 +0100 Wim Taymans + + * gst/gstminiobject.h: + minobject: small .h indent fix + +2012-02-29 12:41:44 +0000 Tim-Philipp Müller + + * gst/gststructure.c: + structure: print a g_warning() if someone tries to construct 0.10-style raw audio/video caps + +2012-02-29 08:44:04 +0100 Stefan Sauer + + * libs/gst/check/gstconsistencychecker.c: + consistencychecker: also check for duplicated flush_starts + +2012-02-28 20:36:59 +0100 Stefan Sauer + + * libs/gst/base/gstcollectpads2.c: + collectpads2: add more logging + +2012-02-28 16:17:47 +0100 Wim Taymans + + * gst/gstmeta.h: + * libs/gst/net/gstnetaddressmeta.c: + * tests/check/gst/gstmeta.c: + meta: add return vale to transform + Add a boolean return value so that we can see when a transform fails. + +2012-02-28 12:52:00 +0100 Wim Taymans + + * gst/gstmeta.c: + * gst/gstmeta.h: + * win32/common/libgstreamer.def: + meta: add method to check for a tag + +2012-02-28 12:51:27 +0100 Wim Taymans + + * tests/check/gst/gstmeta.c: + tests: fix unit test + +2012-02-28 11:34:48 +0100 Wim Taymans + + * gst/gstmeta.c: + * gst/gstmeta.h: + * libs/gst/net/gstnetaddressmeta.c: + meta: add support to tagging the metadata + Add support for adding tags to the metadata. with some standard keys, this + should make it possible to describe what the metadata refers to. We should be + able to use this information to decide if a transformation destroys the metadata + or not. + +2012-02-27 13:35:10 +0100 Edward Hervey + + * gst/gstquery.c: + * tools/gst-inspect.c: + Suppress deprecation warnings in selected files, for g_value_array_* mostly + +2012-02-27 11:46:08 +0100 Wim Taymans + + * tests/check/gst/gstbus.c: + tests: increase bus test timeout + +2012-02-21 20:43:48 +0000 Tim-Philipp Müller + + * tests/check/gst/gstdatetime.c: + tests: make datetime test more reliably when comparing two almost identical nows + Account for rounding errors in some places, and that two nows are + not always entirely identical, so allow some leeway when comparing + microseconds and seconds. Ran into this too often, esp. when the + system is under load. + +2012-02-27 09:48:06 +0100 Wim Taymans + + * gst/gst.h: + * gst/gstbufferpool.c: + * gst/gstbufferpool.h: + * gst/gstbus.c: + * gst/gstbus.h: + remove some useless includes in .h + +2012-02-27 09:02:07 +0100 Wim Taymans + + * gst/gstclock.c: + * gst/gstclock.h: + * gst/gstsystemclock.c: + * libs/gst/net/gstnetclientclock.c: + * tests/check/gst/gstsystemclock.c: + * win32/common/libgstreamer.def: + clock: make more stuff private + Expose methods to get and set the timeout because subclasses uses this. + +2012-02-26 20:45:14 +0100 Wim Taymans + + * gst/gstsystemclock.c: + * gst/gstsystemclock.h: + systemclock: make more stuff private + +2012-02-26 20:44:50 +0100 Wim Taymans + + * gst/gstbufferpool.c: + * gst/gstbufferpool.h: + bufferpool: make more stuff private + +2012-02-26 16:32:32 +0100 Wim Taymans + + * gst/gstbus.c: + * gst/gstbus.h: + bus: make more fields private + +2012-02-27 00:09:57 +0000 Tim-Philipp Müller + + * plugins/elements/gstfdsink.c: + fdsink: fix compilation after merge + +2012-02-27 00:08:39 +0000 Tim-Philipp Müller + + Merge remote-tracking branch 'origin/master' into 0.11 + Conflicts: + NEWS + RELEASE + configure.ac + docs/plugins/gstreamer-plugins.hierarchy + docs/plugins/inspect/plugin-coreelements.xml + libs/gst/base/gstcollectpads.c + libs/gst/base/gstcollectpads2.c + plugins/elements/gstfdsink.c + win32/common/config.h + win32/common/gstenumtypes.c + win32/common/gstversion.h + +2012-02-26 23:11:23 +0100 Stefan Sauer + + * libs/gst/base/gstcollectpads2.c: + collectpads2: rescue the annotation from collectpads + +2012-02-26 23:10:58 +0100 Stefan Sauer + + * libs/gst/base/gstcollectpads.c: + docs: fix a typo in comment + +2012-02-26 22:57:02 +0100 Stefan Sauer + + * libs/gst/base/gstcollectpads2.c: + collectpads2: move "MT save" tags to doc body + It is not useful to have "MT safe" tags randomly in body, returns or since paragraphs. + +2012-02-25 15:18:00 +0000 Tim-Philipp Müller + + * plugins/elements/gstfdsink.c: + fdsink: implement GstBaseSink::query instead of messing with the pad + +2012-02-25 15:08:55 +0000 Tim-Philipp Müller + + * plugins/elements/gstfdsink.c: + * plugins/elements/gstfdsink.h: + fdsink: implement SEEKING query + We may or may not support seeking. stdout to a + terminal doesn't support seeking, for example, but + ... ! fdsink > file.foo just might. + +2012-02-25 15:07:43 +0000 Tim-Philipp Müller + + * plugins/elements/gstfilesink.c: + filesink: implement SEEKING query + We may or may not do seeking, depends on the + output file/device really, it doesn't have to + be a file after all. + +2012-02-25 15:07:05 +0000 Tim-Philipp Müller + + * plugins/elements/gstfakesink.c: + fakesink: answer SEEKING query + We don't do seeking, in case anyone wants to know. + +2012-02-24 23:39:30 +0000 Tim-Philipp Müller + + * gst/gstregistrybinary.c: + registry: fix lseek() return code handling + lseek() returns the offset if successful, and this is != 0 and + does not indicate an error. And if it does actually fail, don't + return FALSE (0) as an int, but -1. None of these things are + likely to have made a difference, ever. I don't think the offset + seek can ever actually happen, the current file position and the + current offset should always be increased in lock step, unless + there was an error in which case we'd just error out. + +2012-02-24 23:19:51 +0000 Tim-Philipp Müller + + * gst/gstregistrybinary.c: + registry: don't forget to clean up registry temp file in another error case + Also clean up temp file if we get an error during write() rather + than just when doing fsync() or close(). + +2012-02-24 15:24:42 +0100 Wim Taymans + + * gst/gstatomicqueue.c: + atomicqueue: fix race + After a writer has written to its reserved write location, it can only make the + location available for reading if all of the writers with lower locations have + finished. + +2012-02-24 12:51:24 +0100 Wim Taymans + + * gst/gstatomicqueue.c: + atomicqueue: fix subtle race + Fix a race where the reader would see the updated the tail pointer before the + write could write the data into the queue. Fix this by having a separate reader + tail pointer that is only incremented after the writer wrote the data. + +2012-02-24 11:00:21 +0100 Wim Taymans + + * libs/gst/base/gstbasetransform.c: + * libs/gst/base/gstbasetransform.h: + * plugins/elements/gstcapsfilter.c: + * win32/common/libgstbase.def: + basetransform: fix reconfigure methods + Rename gst_base_transform_suggest to gst_base_transform_reconfigure_sink because + that is what it does. Also remove the caps and size because that is not needed. + Rename gst_base_transform_reconfigure to gst_base_transform_reconfigure_src. + Remove some old unused code in capsfilter. + +2012-02-24 10:23:27 +0100 Wim Taymans + + * gst/gstbuffer.c: + * gst/gstmeta.c: + * gst/gstmeta.h: + * libs/gst/net/gstnetaddressmeta.c: + * tests/check/gst/gstmeta.c: + * win32/common/libgstreamer.def: + meta: flesh out the metadata transform + Flesh out the transform method. Add a type and extra info to the transform + function so that implementation can transform the metadata. + Remove the copy function and replace with the more generic transform. + +2012-02-24 10:23:17 +0100 Wim Taymans + + * docs/design/part-meta.txt: + docs: update docs + +2012-02-23 08:48:22 -0800 David Schleef + + * tests/check/Makefile.am: + Fix gap in Makefile + +2012-02-23 08:48:10 -0800 David Schleef + + * gst/gstmemory.c: + spelling fix + +2011-12-26 16:45:20 -0800 David Schleef + + * gst/gstpoll.c: + poll: fix spelling of writable + +2012-02-23 15:32:33 +0100 Wim Taymans + + * gst/gstmemory.h: + memory: add user_data to GstMapInfo + Add extra pointers to GstMapInfo so that implementations can use these to store + extra info. + +2012-02-23 15:32:19 +0100 Wim Taymans + + * gst/gstbufferpool.h: + bufferpool: improve docs + +2012-02-23 12:09:31 +0000 Tim-Philipp Müller + + * NEWS: + * RELEASE: + Update NEWS and RELEASE as well + +2012-02-23 11:59:22 +0100 Wim Taymans + + * docs/libs/gstreamer-libs-sections.txt: + docs: remove transform lock + +2012-02-23 10:36:57 +0000 Tim-Philipp Müller + + * configure.ac: + * docs/plugins/gstreamer-plugins.hierarchy: + * docs/plugins/inspect/plugin-coreelements.xml: + * docs/plugins/inspect/plugin-coreindexers.xml: + * win32/common/config.h: + * win32/common/gstenumtypes.c: + * win32/common/gstversion.h: + Bump version after releases + +2012-02-23 11:08:26 +0100 Wim Taymans + + * libs/gst/base/gstbasetransform.c: + * libs/gst/base/gstbasetransform.h: + basetransform: remove transform lock + This is not needed anymore by the baseclass. subclasses should do their own + locking when needed. + +2012-02-23 10:12:44 +0100 Wim Taymans + + * libs/gst/base/gstbasetransform.c: + basetrans: cleanups + Clean up the setcaps function. + The passthrough variable is protected with the object lock. + +2012-02-22 15:26:05 +0100 Wim Taymans + + * libs/gst/base/gstbasetransform.c: + * libs/gst/base/gstbasetransform.h: + basetransform: improve propose_allocation + Always call the propose_allocation method and provide a default implementation + that passes the query on in passthrough mode so that subclasses can also call + this. Also pass if the transform is in passthrough mode so that the + implementation can adjust its algorithm. + +2012-02-22 12:24:34 +0100 Wim Taymans + + * libs/gst/base/gstbasetransform.c: + * libs/gst/base/gstbasetransform.h: + basetrans: improve fixate_caps function + Make it possible to also implement non-inplace fixate functions. Let the fixate + function make the caps writable when needed because some fixate functions might + not need to modify the caps. + +2012-02-22 02:02:50 +0100 Wim Taymans + + * gst/gstbuffer.c: + * gst/gstmemory.c: + * gst/gstmemory.h: + * libs/gst/base/gstadapter.c: + * libs/gst/base/gstbaseparse.c: + * libs/gst/base/gstbytewriter.c: + * plugins/elements/gstfakesrc.c: + * tests/check/gst/gstbuffer.c: + * tests/check/gst/gstmemory.c: + * tests/check/libs/bitreader.c: + * tests/check/libs/bytereader.c: + * tests/check/libs/typefindhelper.c: + memory: make _new_wrapped take user_data and notify + Make it possible to configure a GDestroyNotify and user_data for + gst_memory_new_wrapped() this allows for more flexible wrapping of foreign + memory blocks. + +2012-02-02 13:45:25 -0500 Ryan Lortie + + * autogen.sh: + build: avoid touching .po files during 'make' + A simple workaround to deal with GNU gettext automake integration + failing to deal with git. + https://bugzilla.gnome.org/show_bug.cgi?id=669207 + +2012-02-21 21:06:17 +0000 Tim-Philipp Müller + + * plugins/elements/gstinputselector.c: + input-selector: default to sync-streams=true + I think this is the expected behaviour, and we couldn't do this + in 0.10 for backwards-compatibility reasons, so change it now. + +2012-02-21 16:39:05 +0100 Wim Taymans + + * tests/check/elements/queue.c: + tests: fix queue unit test after queue changes + +2012-02-21 16:38:37 +0100 Wim Taymans + + * plugins/elements/gstqueue.c: + queue: remove some old code + +2012-02-21 16:37:11 +0100 Wim Taymans + + * gst/gstpad.c: + pad: handle NULL callbacks + When we have a matching NULL callback, also consider the 'callback' marshalled, + this way blocking probes with a NULL callback actually work. + +2012-02-21 12:52:44 +0100 Wim Taymans + + * plugins/elements/gstqueue.c: + queue: remove weird link behaviour + Remove the link functions and always start the pad task on the srcpad. If + applications need to autoplug they can put a blocking probe on the srcpad like + they would with any other element. + +2012-02-21 12:52:18 +0100 Wim Taymans + + * plugins/elements/gstfakesrc.c: + fakesrc: handle pts/dts + +2012-02-21 12:46:44 +0100 Wim Taymans + + * plugins/elements/gstfakesink.c: + fakesink: remove custom marshaller + +2012-02-21 12:43:18 +0100 Wim Taymans + + * plugins/elements/gstidentity.c: + identity: also debug dts/pts + +2012-02-21 12:13:28 +0100 Wim Taymans + + * plugins/elements/gstfakesink.c: + fakesink: debug pts and dts + +2012-02-21 12:12:21 +0100 Wim Taymans + + * plugins/elements/gstidentity.c: + identity: remove custom marshaller + +2011-11-24 18:40:40 +0100 Matej Knopp + + * tests/check/gst/gstpad.c: + Unit test for queue src caps notification + +2012-02-20 14:37:11 +0100 Wim Taymans + + * tests/check/gst/gstsegment.c: + tests: fix useless segment test + +2012-02-20 14:29:30 +0100 Wim Taymans + + * gst/gstsegment.c: + segment: don't use duration in clipping + Don't use the duration in the segment for calculating clipping values. + The duration is expressed in stream time and clipping is done on unrelated + timestamp values. + This used to be interesting for elements that used the segment structure to + implement seeking because then they would use stream-time for the segment + start/stop values and the duration could be used as a fallback when the stop + position was not set. Now that the complete segment event is passed between + elements we cannot do this anymore because some elements might store the + duration and start/stop values with different time bases in the segment. + +2012-02-20 14:22:00 +0100 Wim Taymans + + * gst/gstinfo.c: + info: debug segment duration as well + +2012-02-20 11:46:36 +0100 Wim Taymans + + * libs/gst/base/gstbasetransform.c: + basetransform: copy metadata when using a pool + also copy the metadata when we allocated a new buffer from a pool + +2012-01-26 03:02:48 -0500 Matej Knopp + + * libs/gst/net/gstnettimepacket.c: + nettimepacket: fix printf format warning in debug message + https://bugzilla.gnome.org/show_bug.cgi?id=664491 + +2012-02-18 01:04:18 +0100 Wim Taymans + + * gst/gstmemory.c: + memory: fix more docs + +2012-02-17 15:53:58 -0800 Edward Hervey + + * docs/gst/gstreamer-sections.txt: + * gst/gstevent.h: + * gst/gstmemory.h: + doc fixups + +2012-02-17 15:09:56 -0800 Edward Hervey + + * libs/gst/base/gstbasesrc.c: + basesrc: Move variable and assignment to where it's needed + +2012-02-17 15:09:06 -0800 Edward Hervey + + * libs/gst/base/gstbasetransform.c: + basetransform: Handle return value of decide_allocation vmethod + If it fails, properly propagate the error + +2012-02-17 15:08:32 -0800 Edward Hervey + + * gst/gstvalue.c: + gstvalue: Remove useless assignment + +2012-02-17 15:07:56 -0800 Edward Hervey + + * gst/gstvalue.c: + gstvalue: Gracefully handle NULL Gvalue + Avoids unreferencing NULL pointer + +2012-02-18 00:03:41 +0100 Wim Taymans + + * gst/gstpad.c: + pad: make some errors critical + When we have no chain function or when we are operating the pad in the wrong + mode, emit a critical instead of posting an error message. This is certainly a + programming error and we cannot always post a message (like when the pad has no + parent) + +2012-02-18 00:03:13 +0100 Wim Taymans + + * gst/gstinfo.c: + info: also debug position of segment + +2012-02-17 23:59:28 +0100 Wim Taymans + + * win32/common/config.h: + * win32/common/gstversion.h: + win32: back to development + +2012-02-17 11:02:40 +0100 Wim Taymans + + * configure.ac: + configure: back to development + +=== release 0.11.2 === + +2012-02-17 11:01:16 +0100 Wim Taymans + + * ChangeLog: + * NEWS: + * RELEASE: + * configure.ac: + * docs/plugins/gstreamer-plugins.args: + * docs/plugins/gstreamer-plugins.hierarchy: + * docs/plugins/inspect/plugin-coreelements.xml: + * gstreamer.doap: + * po/af.po: + * po/az.po: + * po/be.po: + * po/bg.po: + * po/ca.po: + * po/cs.po: + * po/da.po: + * po/de.po: + * po/el.po: + * po/en_GB.po: + * po/eo.po: + * po/es.po: + * po/eu.po: + * po/fi.po: + * po/fr.po: + * po/gl.po: + * po/hu.po: + * po/id.po: + * po/it.po: + * po/ja.po: + * po/lt.po: + * po/nb.po: + * po/nl.po: + * po/pl.po: + * po/pt_BR.po: + * po/ro.po: + * po/ru.po: + * po/rw.po: + * po/sk.po: + * po/sl.po: + * po/sq.po: + * po/sr.po: + * po/sv.po: + * po/tr.po: + * po/uk.po: + * po/vi.po: + * po/zh_CN.po: + * po/zh_TW.po: + * win32/common/config.h: + * win32/common/gstenumtypes.c: + * win32/common/gstversion.h: + RELEASE 0.11.2 + +2012-02-15 17:12:09 +0100 Mark Nauwelaerts + + * libs/gst/base/gstbaseparse.c: + * libs/gst/base/gstbaseparse.h: + baseparse: tweak some documentation + +2012-02-15 17:11:54 +0100 Mark Nauwelaerts + + * libs/gst/base/gstbaseparse.c: + * libs/gst/base/gstbaseparse.h: + baseparse: simplify and improve frame state handling + Use a frame flag to signal to subclass it should reset any retained + state w.r.t. frame parsing since the frame being passed is 'new', + i.e. not related to previously passed and processed data. + +2012-02-15 13:15:55 +0100 Wim Taymans + + * libs/gst/base/gstbaseparse.c: + baseparse: don't leak event + In the unlikely case where the subclass set the event function to NULL, don't + leak the event. + +2012-02-15 12:19:13 +0100 Wim Taymans + + * libs/gst/base/gstbaseparse.c: + baseparse: make activation code more like other + Make the pad activation code look more like other activation code. + Only start the sinkpad task when we decide to activate in pull mode, when we + later add srcpad pullmode this will be needed. + +2012-02-15 12:18:38 +0100 Wim Taymans + + * gst/gsttask.c: + task: add more debug + +2012-02-15 11:11:11 +0100 Wim Taymans + + * libs/gst/base/gstbaseparse.c: + baseparse: add some more debug + +2012-02-15 10:58:08 +0100 Mark Nauwelaerts + + * libs/gst/base/gstbaseparse.c: + baseparse: track consumed input size + ... as used by subsequent input data rate estimation (and seeking). + +2012-02-15 10:11:35 +0100 Wim Taymans + + * libs/gst/base/gstbaseparse.c: + * libs/gst/base/gstbaseparse.h: + baseparse: chain up to parent for defaults + Chain up to the parent instead of using the FALSE return value from the event + function (because it's otherwise impossible to return an error). + +2012-02-15 10:10:53 +0100 Wim Taymans + + * plugins/elements/gsttypefindelement.c: + typefind: don't ignore return value when starting a task + +2012-02-14 20:17:37 +0100 Mark Nauwelaerts + + * libs/gst/base/gstbaseparse.c: + baseparse: Revert "baseparse: really provide upstream ts to subclass" + This reverts commit 2363490ef5a9fe8d414369d24fcaa65a9dfa83ac. + +2012-02-14 19:33:50 +0100 Mark Nauwelaerts + + * libs/gst/base/gstbaseparse.c: + baseparse: remove dead code and superfluous loop level + +2012-02-14 19:33:46 +0100 Mark Nauwelaerts + + * libs/gst/base/gstbaseparse.c: + baseparse: modify reverse playback handling + ... so as to allow the push-mode case to provide data to subclass + on a buffer by buffer basis (as in regular forward case), rather + than all buffers of a fragment chucked together. + Also refactor buffer handling some more, and add some debug. + +2012-02-14 19:33:33 +0100 Mark Nauwelaerts + + * libs/gst/base/gstbaseparse.c: + baseparse: really provide upstream ts to subclass + +2012-02-14 13:24:49 +0100 Wim Taymans + + * plugins/elements/gsttypefindelement.c: + typefind: clean up src query handler + +2012-02-14 12:57:14 +0100 Wim Taymans + + * plugins/elements/gsttypefindelement.c: + typefind: pass results from activation + +2012-02-14 10:35:06 +0100 Wim Taymans + + Merge branch 'master' into 0.11 + +2012-02-14 10:30:40 +0100 Wim Taymans + + * win32/common/libgstbase.def: + defs: update + +2012-02-13 18:22:37 +0100 Mark Nauwelaerts + + * libs/gst/base/gstbaseparse.c: + * libs/gst/base/gstbaseparse.h: + baseparse: modify API to a _finish_frame based approach + ... which aligns it with other baseclass in the wild, and should give + converter parsers a bit cleaner freedom. + +2012-02-13 18:09:51 +0100 Mark Nauwelaerts + + * libs/gst/base/gstbaseparse.c: + baseparse: fix reverse playback + ... especially for all-keyframe (audio) cases. + +2012-02-13 16:33:00 +0100 Wim Taymans + + * gst/gstbuffer.c: + * gst/gstbuffer.h: + * gst/gstmemory.c: + * gst/gstmemory.h: + * tests/check/gst/gstbuffer.c: + * tests/check/gst/gstmemory.c: + * win32/common/libgstreamer.def: + memory: more work on refcount and writability + Rename _is_writable() with _is_exclusive because the writability does not depend + on the amount of references to the memory object anymore. + Add accessor macros for the memory flags. + Rename the GstBuffer _peek_memory() method to _get_memory() and return a + reference to the memory now that we can do this without affecting writability + of the memory object. Make it possible to also make this function merge the + buffer memory. + Add methods to replace memory in a buffer. Make some convience macros for the + buffer memory functions. + Fix unit tests. + +2012-02-13 17:22:51 +0100 Wim Taymans + + * win32/common/libgstreamer.def: + def: update + +2012-02-13 15:18:28 +0100 Wim Taymans + + * gst/gstmeta.h: + meta: fix typos + +2012-02-12 21:17:41 +0000 Tim-Philipp Müller + + * docs/design/part-events.txt: + docs: add a paragraph about the STREAM CONFIG event to the design docs + +2012-02-12 21:04:18 +0000 Tim-Philipp Müller + + * gst/gstevent.c: + * gst/gstevent.h: + event: make _parse_nth_stream_config_header() and _parse_setup_data() return a boolean + As they can fail (only one of stream headers or setup data + is usually present). + +2012-02-12 20:51:39 +0000 Tim-Philipp Müller + + * docs/gst/gstreamer-sections.txt: + * gst/gstevent.c: + * gst/gstevent.h: + * gst/gstquark.c: + * gst/gstquark.h: + * tests/check/gst/gstevent.c: + event: rename gst_event_{set,parse}_stream_config_codec_data() to _setup_data() + More generic. + +2012-02-10 15:03:03 +0100 Wim Taymans + + Merge branch 'master' into 0.11 + +2012-02-10 14:58:13 +0100 Wim Taymans + + * gst/gstevent.c: + * gst/gstmessage.c: + * gst/gstquery.c: + clean up object init + Make an _init method where the parent mini-object and other fields are + initialized. + Check that the passed structure doesn't already have a parent. + Use the _new_custom () constructors + +2012-02-07 11:28:41 +0100 Mark Nauwelaerts + + * libs/gst/base/gstbaseparse.c: + baseparse: bitrate mechanics should not deal with duration update + ... since that is already handled by _update_duration, or should not be done + altogether if the duration is determined by non-estimated means. + Fixes #669502. + +2012-02-10 12:45:50 +0000 Tim-Philipp Müller + + * docs/design/part-events.txt: + docs: push_event doesn't return a flow value after all + +2012-02-10 12:05:18 +0100 Wim Taymans + + * gst/gstpad.c: + pad: silence probe debug a litte + +2012-02-10 11:24:28 +0100 Wim Taymans + + * libs/gst/base/gstbasesink.c: + basesink: implement faster ACCEPT_CAPS query + +2012-02-10 11:09:01 +0100 Wim Taymans + + * gst/gstcaps.c: + * gst/gstpad.c: + gst: add some performance logging + Add some performance logging for caps copy and the slow default acceptcaps + implementation + +2012-01-14 19:16:01 +0100 Wim Taymans + + * docs/design/draft-metadata.txt: + * docs/design/part-TODO.txt: + * docs/design/part-bufferpool.txt: + * docs/design/part-element-transform.txt: + * docs/design/part-events.txt: + * docs/design/part-latency.txt: + * docs/design/part-meta.txt: + * docs/design/part-negotiation.txt: + * docs/design/part-probes.txt: + * docs/design/part-query.txt: + * docs/design/part-segments.txt: + * docs/design/part-streams.txt: + * gst/gstquery.c: + docs: update and improve docs + +2012-02-09 00:14:58 +0000 Tim-Philipp Müller + + * docs/gst/gstreamer-sections.txt: + * gst/gstutils.c: + * gst/gstutils.h: + * win32/common/libgstreamer.def: + utils: remove gst_element_class_install_std_props() + It's only used in one place (rtmp), and there not very well. + +2012-02-08 23:47:40 +0000 Tim-Philipp Müller + + * plugins/elements/gstfakesink.c: + * plugins/elements/gstfakesrc.c: + * plugins/elements/gstidentity.c: + fakesrc, identity, fakesink: do not generate last-message updates by default + Default to not creating lots of overhead by doing a couple of + g_strdup_printf()/g_free() per buffer or event just to generate + a last-message update that rarely anyone listens to. This means + that you need to enable silent=true explicitly in order to get + last-message dumps in gst-launch -v now. On the upside, people + won't inadvertently end up benchmarking g_strdup_printf() + performance instead of gstreamer data handling performance any + more. + Maybe the silent property should be renamed to enable-last-message + or something like that? + +2012-02-08 15:16:46 +0100 Wim Taymans + + * gst/gstbufferpool.c: + * gst/gstelement.h: + * gst/gstevent.c: + * gst/gstpad.c: + * gst/gstpad.h: + * libs/gst/base/gstbasesink.c: + * libs/gst/base/gstbasesrc.c: + * libs/gst/base/gstbasesrc.h: + * libs/gst/base/gstcollectpads2.c: + * plugins/elements/gstfdsink.c: + * plugins/elements/gstfdsrc.c: + * plugins/elements/gstinputselector.c: + * plugins/elements/gstmultiqueue.c: + * plugins/elements/gstqueue.c: + * plugins/elements/gstqueue2.c: + * tests/check/elements/fakesink.c: + * tests/check/elements/tee.c: + * tests/check/gst/gstpad.c: + * win32/common/config.h: + * win32/common/gstenumtypes.c: + * win32/common/gstenumtypes.h: + * win32/common/gstmarshal.c: + * win32/common/gstmarshal.h: + GST_FLOW_WRONG_STATE -> GST_FLOW_FLUSHING + +2012-02-08 15:34:28 +0100 Mark Nauwelaerts + + * plugins/elements/gstqueue.c: + queue: use default query function to optionally forward query + ... rather than querying peer unconditionally with possibly undesirable + outcome in case of e.g. SCHEDULING query. + +2012-02-08 15:03:56 +0100 Mark Nauwelaerts + + * libs/gst/base/gstbaseparse.c: + baseparse: clean up a few minor extraneous tokens + +2012-02-07 12:48:50 +0100 Mark Nauwelaerts + + * libs/gst/base/gstbaseparse.c: + baseparse: remove closing segment handling + +2012-02-08 14:45:25 +0100 Wim Taymans + + Merge branch 'master' into 0.11 + +2012-02-08 14:32:01 +0100 Wim Taymans + + * plugins/elements/gsttypefindelement.c: + typefind: fix race in pad mode change + Fixes #668909 and presumably also #669483 + +2012-02-08 12:57:11 +0100 Wim Taymans + + * gst/gstpad.c: + pad: error when activation mode is wrong + Post an error when we try to push on a pad activated in pull mode and pull on a + pad in push mode. + +2012-02-08 09:30:02 +0100 Wim Taymans + + * gst/gstclock.c: + clock: remove method declaration too + +2012-02-07 13:41:20 +0100 Stefan Sauer + + * gst/gstclock.c: + * gst/gstclock.h: + clock: remove unimplemented stats property while we can + +2012-02-07 10:44:07 +0100 Wim Taymans + + * plugins/elements/gstfakesrc.c: + fakesrc: remove custom marshaller + Remove our custom marshaller. + Make the buffer in the handoff signal static_scope so that it is actually + writable. + +2012-02-06 09:46:47 +0100 Wim Taymans + + * gst/gstbuffer.c: + * gst/gstminiobject.c: + * gst/gstpad.c: + gst: improve debugging + +2012-01-04 17:10:15 +0100 Havard Graff + + * gst/gstregistry.c: + registry: fix compilation with --disable-registry + __registry_reuse_plugin_scanner is only defined when + GST_DISABLE_REGISTRY is not defined. + gstregistry.c: In function 'gst_registry_scan_plugin_file': + gstregistry.c:1131:8: error: '__registry_reuse_plugin_scanner' undeclared (first use in this function) + https://bugzilla.gnome.org/show_bug.cgi?id=667284 + +2012-02-02 17:18:22 +0000 Vincent Penquerc'h + + * gst/gstbin.c: + bin: reset the EOS detection machinery after sending an EOS message + This will allow detecting further EOS, for instance after looping + a stream without changing states. + https://bugzilla.gnome.org/show_bug.cgi?id=668289 + +2012-01-07 23:00:12 -0500 Ryan Lortie + + * autogen.sh: + autogen.sh: allow calling from out-of-tree + https://bugzilla.gnome.org/show_bug.cgi?id=667664 + +2012-02-02 16:59:12 +0100 Wim Taymans + + * gst/gsttrace.c: + trace: print caps in dump + +2012-02-02 16:04:10 +0100 Wim Taymans + + * win32/common/libgstreamer.def: + defs: update + +2012-02-02 15:57:48 +0100 Wim Taymans + + * gst/gstmemory.c: + memory: add debug and trace for GstMemory + +2012-02-02 15:55:44 +0100 Wim Taymans + + * gst/gstobject.c: + * gst/gsttrace.c: + trace: don't check random pointers for objects + Only see if the traced pointer is a GObject when it was registered with the + special offset of -2. + +2012-02-02 15:54:28 +0100 Wim Taymans + + * gst/gst_private.h: + * gst/gstinfo.c: + Update debug categories + Remove some categories marked for deletion. + Add a category for GstMemory. + +2012-02-02 15:52:19 +0100 Wim Taymans + + * docs/gst/gstreamer-sections.txt: + * gst/gstbuffer.h: + * gst/gstbufferpool.h: + * gst/gstclock.c: + * gst/gstclock.h: + * gst/gstevent.h: + * gst/gstmessage.h: + * gst/gstmeta.h: + * gst/gstsample.h: + remove TRACE_NAME from headers + +2012-02-02 13:17:38 +0100 Wim Taymans + + * tests/check/gst/gstbuffer.c: + buffer: add new test + +2012-02-02 13:15:24 +0100 Wim Taymans + + * plugins/elements/gstidentity.c: + dentity: remove prepare_output_buffer + Correctly mark passthrough on the baseclass so that it can correctly do the + allocation of the output buffers. + Remove our custom prepare_output_buffer function now that the baseclass is + smarter. + +2012-02-02 13:10:27 +0100 Wim Taymans + + * libs/gst/base/gstbasetransform.c: + basetransform: improve prepare_output_buffer + Clean up the prepare_output_buffer function. + Reuse the input buffer when it is writable and when doing an + in-place but non-passthrough transform. + Move the copy-metadata function call to the prepare_output_buffer default + function. If subclasses implement a custom prepare_output_buffer, they must also + copy the metadata themselves. + Remove a useless memory copy because prepare_output_buffer already did that. + +2012-02-02 12:32:49 +0100 Wim Taymans + + * plugins/elements/gstidentity.c: + identity: only map when using the memory + +2012-02-02 12:32:07 +0100 Wim Taymans + + * plugins/elements/gstinputselector.c: + * plugins/elements/gstqueue.c: + * plugins/elements/gstqueue2.c: + plugins: proxy allocation query + +2012-02-02 12:30:14 +0100 Wim Taymans + + * libs/gst/base/gstbasetransform.c: + basetransform: simplify code + We already checked passthrough a few lines above. + +2012-02-02 12:07:28 +0100 Wim Taymans + + * gst/gstbuffer.c: + * gst/gstmemory.c: + memory: add some performce debug info + Add some PERFORMANCE debug lines where we copy and do other suboptimal things. + +2012-02-02 12:05:37 +0100 Wim Taymans + + * gst/gstpad.c: + * gst/gstpad.h: + pad: add flag to proxy allocation query + Add a flag to force the default query handler to forward the allocation query + instead of discarding it. + Reorder the pad flags a bit. + +2012-02-02 01:30:12 +0000 Tim-Philipp Müller + + * gst/gsttypefind.c: + * gst/gsttypefind.h: + * tests/check/libs/typefindhelper.c: + typefind: pass extensions as comma-separated list in a simple string + Fix annoying gst_type_find_register() function signature. A simple + string with comma-separated extensions works just as well and saves + lines of code, casts, relocations and ultimately kittens. + +2012-01-31 17:41:13 +0100 Wim Taymans + + * libs/gst/base/gstbasesrc.c: + basesrc: fix race in startup + Mark renegotiate before starting the pushing thread. + Do also check if we are starting in the get_range function. + +2012-01-31 16:27:55 +0100 Wim Taymans + + * gst/gstelement.c: + element: don't crash on missing template + Some request pads don't have a padtemplate (mostly those from encodebin). Avoid + crashing in this case. + +2012-01-31 12:20:41 +0100 Stefan Sauer + + * libs/gst/controller/gstinterpolationcontrolsource.c: + * libs/gst/controller/gstinterpolationcontrolsource.h: + * libs/gst/controller/gstlfocontrolsource.c: + * libs/gst/controller/gstlfocontrolsource.h: + * libs/gst/controller/gsttriggercontrolsource.c: + * libs/gst/controller/gsttriggercontrolsource.h: + * tests/benchmarks/controller.c: + * tests/check/libs/controller.c: + * tests/examples/controller/audio-example.c: + * tests/examples/controller/control-sources.c: + * tests/examples/controller/text-color-example.c: + controller: constructures for control sources return GstControlSource + Don't return the specific types. In most cases there is no specific api there + anyway. + +2012-01-31 12:10:21 +0100 Wim Taymans + + * gst/gstvalue.c: + * libs/gst/base/gstadapter.c: + * libs/gst/base/gstbasetransform.c: + * libs/gst/base/gsttypefindhelper.c: + don't do logic in g_assert... + +2012-01-30 19:17:00 +0100 Stefan Sauer + + * gst/gstobject.c: + * libs/gst/controller/Makefile.am: + * libs/gst/controller/gstargbcontrolbinding.c: + * libs/gst/controller/gstargbcontrolbinding.h: + * libs/gst/controller/gstcontrolbindingargb.c: + * libs/gst/controller/gstcontrolbindingargb.h: + * libs/gst/controller/gstcontrolbindingdirect.c: + * libs/gst/controller/gstcontrolbindingdirect.h: + * libs/gst/controller/gstdirectcontrolbinding.c: + * libs/gst/controller/gstdirectcontrolbinding.h: + * tests/benchmarks/controller.c: + * tests/check/libs/controller.c: + * tests/examples/controller/audio-example.c: + * tests/examples/controller/control-sources.c: + * tests/examples/controller/text-color-example.c: + * win32/common/libgstcontroller.def: + controller: rename control-bindings + gst_control_binding_xxx -> gst_xxx_control_binding for consistency. + +2012-01-30 14:48:44 -0200 João Paulo Pizani Flor + + * gst/gstpreset.h: + Fixes the lack of an include directive in gst/gstpreset.h + It blocked the build of external libraries depending on gstreamer-core (namely, gstreamermm). + Complete bug report at https://bugzilla.gnome.org/show_bug.cgi?id=669036 + +2012-01-30 18:17:34 +0100 Stefan Sauer + + * gst/gstcontrolsource.c: + controlsource: sink the floating ref + control sources can be used on several control bindings. + +2012-01-30 17:15:21 +0100 Wim Taymans + + * gst/gstbuffer.h: + buffer; remove IN_CAPS buffer flag + The IN_CAPS buffer flag is deprecated and should be replaced with the HEADER + flag. + +2012-01-30 16:09:03 +0100 Wim Taymans + + * win32/common/libgstreamer.def: + defs; update for new api + +2012-01-30 15:59:02 +0100 Wim Taymans + + * gst/gstquery.c: + * gst/gstquery.h: + * libs/gst/base/gstbasesrc.c: + * libs/gst/base/gstbasetransform.c: + query: pass allocator in query + Place the allocator object in the ALLOCATION query instead of the name. This + allows us to exchange allocators that are not in the global pool of allocators. + Update elements for the new api + +2012-01-30 15:57:39 +0100 Wim Taymans + + * gst/gstmemory.c: + * gst/gstmemory.h: + memory: add memory type + Add memory type when registering memory allocators. Add getter for the memory + type. + +2012-01-29 22:58:51 +0000 Olivier Crête + + * plugins/elements/gstvalve.c: + * plugins/elements/gstvalve.h: + valve: Repush sticky events after disabling dropping + +2012-01-30 13:28:34 +0100 Wim Taymans + + * gst/gstmemory.c: + * gst/gstmemory.h: + memory: add boxed GType for the allocator + +2012-01-30 13:02:13 +0100 Wim Taymans + + * gst/gstbuffer.c: + * gst/gstbuffer.h: + * gst/gstmemory.c: + * gst/gstmemory.h: + * libs/gst/base/gstbasesrc.c: + * libs/gst/base/gstbasetransform.c: + * win32/common/libgstreamer.def: + memory: make the allocator refcounted + Add refcounting to the GstAllocator object. + Remove const from functions because the allocator is refcounted now. + Rename the vmethods for consistency + Expose the constructor for GstAllocator and add a destroy notify for the + user_data. This should make it possible to create allocators that are not + registered and shared globally along with the possibility to destroy them + properly. + Update defs with new symbols. + +2012-01-30 10:30:58 +0100 Wim Taymans + + * win32/common/libgstreamer.def: + defs: update for gap event + +2012-01-30 10:07:51 +0100 Philippe Normand + + * gst/gst.c: + * gst/gst.h: + core: don't ship gsttrace.h private header + Include it explicitely in gst.c and no longer include it in gst.h. + That header was made private in 1969b94267b4f377ea2663876ae8720717889693. + +2012-01-28 18:50:23 +0000 Tim-Philipp Müller + + * gst/gstevent.c: + event: require a valid duration for the GAP event + +2012-01-28 18:49:44 +0000 Tim-Philipp Müller + + * gst/gst.c: + gst: ref new enum type in gst_init() + +2012-01-27 18:57:21 +0000 Tim-Philipp Müller + + * gst/gstevent.c: + docs: add some (out) annotations for stream config parser functions + +2012-01-27 18:56:01 +0000 Tim-Philipp Müller + + * gst/gstevent.c: + * gst/gstevent.h: + * gst/gstquark.c: + * gst/gstquark.h: + * tests/check/gst/gstevent.c: + event: add constructor and parse function for new GAP event + (Whatever you do, don't mention the filler event.) + +2012-01-27 18:37:13 +0000 Tim-Philipp Müller + + * gst/gstevent.h: + docs: GST_EVENT_STREAM_CONFIG is implemented now + +2012-01-27 17:57:58 +0000 Tim-Philipp Müller + + * docs/random/porting-to-0.11.txt: + docs: mention codec data / stream header change in porting docs + +2012-01-28 14:35:51 +0000 Olivier Crête + + * gst/gstcaps.c: + * gst/gstiterator.c: + * gst/gstpadtemplate.c: + * gst/gstparse.c: + * gst/gstsegment.c: + * gst/gsttaglist.c: + * gst/gsttypefind.c: + * gst/gstvalue.c: + * libs/gst/base/gstbaseparse.c: + * libs/gst/base/gstindex.c: + Use macros to register boxed types thread safely + +2012-01-28 08:38:03 +0100 Olivier Crête + + * libs/gst/check/gstcheck.c: + * libs/gst/check/gstcheck.h: + check: Update gst_check_element_push_buffer to 0.11 style caps + Pass the desired caps explicitely + +2012-01-27 19:00:03 +0100 Sebastian Dröge + + * tools/gst-inspect.c: + gst-inspect: Fix memory leak + +2012-01-27 18:53:45 +0100 Sebastian Dröge + + * tools/gst-inspect.c: + gst-inspect: Don't unref plugin features multiple times + gst_plugin_feature_list_free() unrefs them too. + +2012-01-27 17:50:38 +0000 Tim-Philipp Müller + + * docs/gst/gstreamer-sections.txt: + docs: add new stream config functions to docs + +2012-01-27 17:49:48 +0000 Tim-Philipp Müller + + * tests/check/pipelines/simple-launch-lines.c: + tests: fix simple-launch-lines compilation + Don't use removed API. + +2012-01-27 18:46:49 +0100 Sebastian Dröge + + * gst/gstsegment.h: + segment: Add padding to the public struct + +2012-01-27 17:45:39 +0000 Tim-Philipp Müller + + * gst/gst.c: + gst: don't ref GType for private enum for which there's no GType any more + +2012-01-27 17:45:15 +0000 Tim-Philipp Müller + + * win32/common/libgstreamer.def: + win32: update .def for new and removed API + +2012-01-27 17:39:12 +0000 Tim-Philipp Müller + + * gst/gstevent.c: + * gst/gstevent.h: + * gst/gstquark.c: + * gst/gstquark.h: + * tests/check/gst/gstevent.c: + event: add construct and parse API for the new STREAM CONFIG event + codec data and stream headers don't belong into caps, since they + are not negotiated. We signal them using the STREAM CONFIG event + instead. + +2012-01-27 18:24:43 +0100 Wim Taymans + + * docs/gst/gstreamer-docs.sgml: + * docs/gst/gstreamer-sections.txt: + * gst/Makefile.am: + trace: remove from public headers + +2012-01-27 12:16:05 +0100 Andoni Morales Alastruey + + * gst/gstcaps.c: + caps: fix documenation typo + +2012-01-27 17:50:42 +0100 Wim Taymans + + * gst/gst.c: + * gst/gstcaps.c: + * gst/gstclock.c: + * gst/gstminiobject.c: + * gst/gstobject.c: + * gst/gsttrace.c: + * gst/gsttrace.h: + * tools/gst-launch.c: + trace: rework alloc tracing + Remove trace, we use debug log for that + Make alloc trace simpler, removing some methods. + Activate alloc trace with a GST_TRACE=3 environment variable. + Dump leaked objects atexit. + Provide an offset in the object where the GType can be found so that more + verbose info can be given for objects. + Remove -T option from gst-launch because tracing is now triggered with the + environment variable. + +2012-01-25 12:35:43 +0000 Vincent Penquerc'h + + * plugins/elements/gsttypefindelement.c: + typefind: answer caps queries with our typefound caps + This avoids merely forwarding the event to the sink, and getting + something useless such as ANY. + https://bugzilla.gnome.org/show_bug.cgi?id=667571 + +2012-01-27 16:18:00 +0100 Sebastian Dröge + + * plugins/elements/gsttypefindelement.c: + * plugins/elements/gsttypefindelement.h: + typefind: Do typefinding from a separate thread and not from the state change function + +2012-01-27 15:32:37 +0100 Wim Taymans + + * plugins/elements/gstqueue2.c: + queue2: fix memory leak + unmap the buffer memory on errors. + +2012-01-27 15:32:18 +0100 Wim Taymans + + * gst/gst.c: + * gst/gst_private.h: + * gst/gstminiobject.c: + trace: make alloc trace work for miniobject again + +2012-01-27 15:09:35 +0100 Sebastian Dröge + + Merge branch 'master' into 0.11 + Conflicts: + libs/gst/base/gstcollectpads2.c + libs/gst/base/gstcollectpads2.h + +2012-01-27 15:02:52 +0100 Sebastian Dröge + + * libs/gst/base/gstcollectpads2.c: + * libs/gst/base/gstcollectpads2.h: + collectpads2: Move private fields from the public structs to private structs + Fixes bug #668764. + +2012-01-27 13:05:48 +0100 Stefan Sauer + + * libs/gst/controller/gstcontrolbindingargb.c: + * libs/gst/controller/gstcontrolbindingdirect.c: + * libs/gst/controller/gstinterpolationcontrolsource.c: + * libs/gst/controller/gstlfocontrolsource.c: + * libs/gst/controller/gsttriggercontrolsource.c: + controller: no fancy utf8 chars in the gi annotations + +2012-01-27 12:50:24 +0100 Wim Taymans + + * gst/gstdebugutils.c: + * gst/gstutils.c: + * libs/gst/base/gstbaseparse.c: + * tests/check/libs/adapter.c: + tests: fix some more leaks + +2012-01-27 12:33:32 +0100 Sebastian Dröge + + * plugins/elements/gstqueue2.c: + * plugins/elements/gstqueue2.h: + queue2: Fix handling of the new stream-start event + +2012-01-27 11:32:12 +0000 Vincent Penquerc'h + + * gst/gstplugin.c: + gstplugin: add a few consts to read only data + +2012-01-27 12:22:48 +0100 Stefan Sauer + + * libs/gst/controller/gstcontrolbindingargb.c: + * libs/gst/controller/gstcontrolbindingdirect.c: + * libs/gst/controller/gstinterpolationcontrolsource.c: + * libs/gst/controller/gstlfocontrolsource.c: + * libs/gst/controller/gsttriggercontrolsource.c: + controller: add gi annotations + +2012-01-27 12:14:28 +0100 Sebastian Dröge + + * tests/check/gst/gstutils.c: + utils: Fix unit test + +2012-01-27 12:10:09 +0100 Wim Taymans + + * tests/check/gst/gstvalue.c: + tests: fix leaks + +2012-01-27 11:40:37 +0100 Wim Taymans + + * gst/gstmemory.c: + memory: avoid memory leak + Unref the old memory in make_mapped. + Add some debug info + +2012-01-27 11:40:05 +0100 Wim Taymans + + * libs/gst/base/gstbasetransform.c: + basetransform: avoid caps leak + +2012-01-27 11:01:27 +0100 Sebastian Dröge + + * plugins/elements/gstfakesink.c: + * plugins/elements/gstfakesrc.c: + * plugins/elements/gstidentity.c: + identity/fake{src,sink}: Include event type name in the debug output + +2012-01-27 10:54:56 +0100 Sebastian Dröge + + * gst/gstevent.c: + * gst/gstevent.h: + event: Mark the new GAP event as non-sticky + +2012-01-27 10:46:02 +0100 Sebastian Dröge + + * libs/gst/base/gstcollectpads2.c: + * libs/gst/base/gstcollectpads2.h: + collectpads2: Drop the stream-start and stream-config events by default + +2012-01-27 10:42:09 +0100 Sebastian Dröge + + * gst/gstevent.c: + event rebase + +2012-01-27 10:41:07 +0100 Sebastian Dröge + + * libs/gst/base/gstbasesrc.c: + basesrc: Send the stream-start event as first event ever + +2012-01-27 10:30:43 +0100 Sebastian Dröge + + * docs/gst/gstreamer-sections.txt: + * gst/gstevent.c: + * gst/gstevent.h: + * win32/common/libgstreamer.def: + event: Add constructor and docs for the new STREAM_START event + +2012-01-26 19:28:01 +0100 Wim Taymans + + * gst/gstpad.c: + * gst/gstpad.h: + pad: add user data to chain functions + +2012-01-26 18:56:14 +0100 Wim Taymans + + * libs/gst/base/gstbasetransform.c: + basetransform: fix typo + +2012-01-26 18:22:29 +0000 Vincent Penquerc'h + + * gst/gsttaglist.c: + taglist: restore date/time type to GstDateTime + The change to GDateTime was apparently accidental, and + breaks plugins trying to feed a GstDateTime to the taglist APi. + +2012-01-26 19:12:16 +0200 Peteris Krisjanis + + * gst/gstparse.c: + gst: gst_parse_launch now returns a floating reference + +2012-01-26 18:53:51 +0100 Edward Hervey + + * gst/gststructure.c: + gststructure: Set "transfer none" to return values that shouldn't be freed + +2010-12-04 18:53:55 -0800 David Schleef + + * gst/gstelement.c: + element: call ->release_pad() to clean up pad + https://bugzilla.gnome.org/show_bug.cgi?id=636011 + https://bugzilla.gnome.org/show_bug.cgi?id=402562 + +2012-01-26 16:31:50 +0100 Wim Taymans + + * gst/gstevent.c: + * gst/gstevent.h: + event: add some more events + Add some more new events that we want to implement later. + +2012-01-26 15:15:21 +0100 Andoni Morales Alastruey + + * gst/gstmemory.c: + gstmemory: add missing parameter + +2012-01-26 14:57:14 +0100 Sebastian Dröge + + * gst/gstcaps.c: + caps: Fix compiler warning + +2012-01-26 14:55:30 +0100 Sebastian Dröge + + * gst/gstcaps.c: + caps: Use correct size for caps allocation + +2012-01-26 14:45:30 +0100 Sebastian Dröge + + * gst/gstcaps.c: + * gst/gstcaps.h: + caps: Make GstCaps public struct more opaque by moving the private pointer into the implementation + +2012-01-26 14:33:12 +0100 Sebastian Dröge + + * gst/gstcaps.c: + * gst/gstcaps.h: + * gst/gstelementfactory.c: + * gst/gstregistrychunks.c: + caps: Store a pointer to GstCaps in GstStaticCaps + ...instead of using hackish subclass of GstCaps, which also + had some thread-safety problems. + +2012-01-26 13:24:44 +0100 Wim Taymans + + * gst/gstevent.c: + * gst/gstevent.h: + * gst/gstpad.c: + event: remove the sticky event index + We don't use the sticky event index anymore, ordering of the events are how they + were sent initially. + Add some more padding between the event numbers so that we can insert new events + later. + +2012-01-26 10:48:02 +0000 Tim-Philipp Müller + + * docs/libs/gstreamer-libs-docs.sgml: + * docs/libs/gstreamer-libs-sections.txt: + * docs/libs/gstreamer-libs.types: + * tests/check/libs/.gitignore: + docs: remove collectpads from docs, fix build + +2012-01-26 10:22:29 +0000 Tim-Philipp Müller + + * gst/gstbufferpool.c: + bufferpool: use GstValueArray instead of GValueArray for storing options in the config + Since GValueArray is deprecated. It's all only internal anywhere here, + but if we use GstValueArray the option strings get serialized nicely + in the debug logs at least. + +2012-01-26 09:26:48 +0000 Tim-Philipp Müller + + * tools/gst-inspect.c: + tools: gst-inspect: suppress deprecation warnings for G_TYPE_VALUE_ARRAY + For now anyway. + +2012-01-26 11:42:29 +0100 Sebastian Dröge + + * tests/check/Makefile.am: + collectpads2: Unit test is valgrind clean now + +2012-01-26 11:40:53 +0100 Sebastian Dröge + + * tests/check/libs/collectpads2.c: + collectpads2: Fix unit test to actually work again + +2012-01-26 11:38:29 +0100 Sebastian Dröge + + * tests/check/Makefile.am: + * tests/check/libs/collectpads.c: + * tests/check/libs/collectpads2.c: + * tests/check/libs/gstlibscpp.cc: + * tests/check/libs/libsabi.c: + collectpads2: Port collectpads unit test to collectpads2 + Currently fails but really shouldn't. + +2012-01-26 11:01:21 +0100 Wim Taymans + + * gst/gstpad.c: + * gst/gstpad.h: + pad: add probe id to the info + +2012-01-26 10:48:56 +0100 Sebastian Dröge + + * libs/gst/base/Makefile.am: + * libs/gst/base/gstcollectpads.c: + * libs/gst/base/gstcollectpads.h: + * win32/common/libgstbase.def: + collectpads: Remove old collectpads + Still have to rename collectpads2 to collectpads before the 1.0 release. + +2012-01-26 10:30:25 +0100 Sebastian Dröge + + * libs/gst/base/gstcollectpads2.c: + * libs/gst/base/gstcollectpads2.h: + collectpads2: Don't forward CAPS event automatically + +2012-01-25 18:49:15 +0100 Sebastian Dröge + + * libs/gst/base/gstcollectpads2.c: + * libs/gst/base/gstcollectpads2.h: + collectpads2: Fix handling of the event function and document it + The event function is supposed to forward/drop the event in any case + now and takes ownership of the event. + +2012-01-25 18:36:42 +0100 Jason DeRose + + * gst/gstpadtemplate.c: + gst_pad_template_new() now returns a floating reference + +2012-01-25 19:41:03 +0200 Peteris Krisjanis + + * gst/gstpipeline.c: + gst_pipeline_new now returns a floating reference. + +2012-01-25 17:27:40 +0200 Peteris Krisjanis + + * gst/gstutils.c: + gst: gst_parse_bin_from_description returns a new reference + +2012-01-25 15:14:17 +0000 Tim-Philipp Müller + + * gst/gstquery.c: + query: use GArray for internal arrays instead of the now-deprecated GValueArray + +2012-01-25 16:01:02 +0200 Peteris Krisjanis + + * gst/gstbin.c: + * gst/gstghostpad.c: + * gst/gstpad.c: + gst: Changed introspection transfer flag to (transfer floating) + for gst_pad_new, gst_ghost_pad_new and gst_bin_new constuctors. Fixes + segfaults due of transfer full and floating ref problem. + +2012-01-25 13:46:13 +0100 Thomas Vander Stichele + + * common: + Automatic update of common submodule + From c463bc0 to 7fda524 + +2012-01-24 14:37:25 +0100 Wim Taymans + + * gst/gstmemory.c: + * gst/gstmemory.h: + memory: add flags to the mapinfo + +2012-01-20 16:10:26 +0100 Wim Taymans + + * gst/gstmemory.c: + * gst/gstmemory.h: + * tests/check/gst/gstbuffer.c: + * tests/check/gst/gstmemory.c: + memory: make guint8 * for easy usage + +2012-01-20 14:56:49 +0100 Wim Taymans + + * gst/gstbuffer.c: + * gst/gstmemory.c: + * gst/gstmemory.h: + * win32/common/libgstreamer.def: + memory: add method to create mapped memory + Add a method to create a GstMemory with the desired mapping. Makes a copy of the + memory if it is currently in use. + +2012-01-20 14:23:57 +0100 Wim Taymans + + * docs/manual/advanced-dataaccess.xml: + * gst/gstbuffer.c: + * gst/gstbuffer.h: + * gst/gstmemory.c: + * gst/gstmemory.h: + * gst/gstvalue.c: + * libs/gst/base/gstadapter.c: + * libs/gst/base/gstbasetransform.c: + * libs/gst/base/gsttypefindhelper.c: + * libs/gst/check/gstcheck.c: + * plugins/elements/gstfakesink.c: + * plugins/elements/gstfakesrc.c: + * plugins/elements/gstfdsink.c: + * plugins/elements/gstfdsrc.c: + * plugins/elements/gstfilesink.c: + * plugins/elements/gstfilesrc.c: + * plugins/elements/gstidentity.c: + * plugins/elements/gstqueue2.c: + * tests/check/elements/filesink.c: + * tests/check/elements/filesrc.c: + * tests/check/elements/identity.c: + * tests/check/elements/multiqueue.c: + * tests/check/gst/gstbuffer.c: + * tests/check/gst/gstmemory.c: + * tests/check/gst/gstmeta.c: + * tests/check/gst/gstpad.c: + * tests/check/gst/gststructure.c: + * tests/check/gst/gstvalue.c: + * tests/check/libs/adapter.c: + * tests/check/libs/bitreader.c: + * tests/check/libs/bytereader.c: + * tests/examples/adapter/adapter_test.c: + Add new GstMapInfo + Use a structure to hold info about the mapping. The application then keeps track + of this state and we can use it to unmap the memory again later. + +2012-01-25 11:49:50 +0100 Edward Hervey + + * gst/gstcontrolbinding.h: + controlbindings: name is not a const + It gets modified during the life of the object. Fixes build. + +2012-01-25 11:43:13 +0100 Sebastian Dröge + + Merge branch 'master' into 0.11 + +2012-01-25 11:37:40 +0100 Sebastian Dröge + + * common: + Automatic update of common submodule + From 2a59016 to c463bc0 + +2012-01-24 21:53:14 +0100 Stefan Sauer + + * gst/gstcontrolbinding.c: + * gst/gstcontrolbinding.h: + * libs/gst/controller/gstcontrolbindingargb.c: + * libs/gst/controller/gstcontrolbindingdirect.c: + * libs/gst/controller/gstcontrolbindingdirect.h: + * tests/check/gst/gstcontroller.c: + * win32/common/libgstcontroller.def: + controller: cleanup the control-binding construction + This is now bindings firendly as _new is just a classic c convenience and all + the work is done in a constructor. As a side effect _new never fails. + Fix the tests. + +2012-01-24 14:40:33 +0000 Vincent Penquerc'h + + * gst/gstvalue.c: + gstvalue: handle NULL dest in bitmask/bitmask intersection + +2011-12-01 12:43:03 +0000 Vincent Penquerc'h + + * tests/check/gst/gstvalue.c: + tests: add basic tests for new stepped ranges + https://bugzilla.gnome.org/show_bug.cgi?id=665294 + +2011-11-30 14:45:12 +0000 Vincent Penquerc'h + + * gst/gststructure.c: + * gst/gstvalue.c: + * gst/gstvalue.h: + * win32/common/libgstreamer.def: + gstvalue: add stepped ranges + int and int64 ranges can now have an optional step (defaulting to 1). + Members of the range are those values within the min and max bounds + which are a multiple of this step. + https://bugzilla.gnome.org/show_bug.cgi?id=665294 + +2011-11-30 17:58:07 +0000 Vincent Penquerc'h + + * gst/gstutils.c: + * gst/gstutils.h: + gstutils: add a 64 bit version of GCD calculation + https://bugzilla.gnome.org/show_bug.cgi?id=665294 + +2011-11-04 18:26:15 +0000 Vincent Penquerc'h + + * gst/gstvalue.c: + gstvalue: enforce identical basic types in lists, arrays + https://bugzilla.gnome.org/show_bug.cgi?id=322587 + +2012-01-23 10:32:01 +0000 Tim-Philipp Müller + + * tests/benchmarks/controller.c: + benchmarks: add missing include + +2012-01-23 11:03:09 +0100 Stefan Sauer + + * gst/gstobject.c: + object: register all properties in one go + +2012-01-23 11:02:45 +0100 Stefan Sauer + + * docs/design/part-controller.txt: + docs: update controller api design + +2012-01-21 20:03:52 +0100 Stefan Sauer + + * docs/gst/gstreamer-sections.txt: + * gst/gstcontrolbinding.c: + * gst/gstcontrolbinding.h: + * gst/gstobject.c: + * libs/gst/controller/Makefile.am: + * libs/gst/controller/gstcontrolbindingargb.c: + * libs/gst/controller/gstcontrolbindingargb.h: + * libs/gst/controller/gstcontrolbindingdirect.c: + * libs/gst/controller/gstcontrolbindingdirect.h: + * tests/benchmarks/controller.c: + * tests/check/gst/gstcontroller.c: + * tests/check/libs/controller.c: + * tests/examples/controller/.gitignore: + * tests/examples/controller/Makefile.am: + * tests/examples/controller/audio-example.c: + * tests/examples/controller/control-sources.c: + * tests/examples/controller/text-color-example.c: + * win32/common/libgstreamer.def: + controller: allow different controlbindings + Make controlbinding an abstract baseclass. Move implementation to control- + binding-direct and add a control-binding-argb. Add an example. + +2012-01-22 22:44:59 +0000 Tim-Philipp Müller + + * gst/gstformat.c: + * gst/gstinfo.c: + * gst/gstplugin.c: + * gst/gstquery.c: + * gst/gstregistry.c: + * gst/gstsystemclock.c: + * gst/gsttask.c: + * tests/check/elements/multiqueue.c: + Replace deprecated GStaticMutex with GMutex + https://bugzilla.gnome.org/show_bug.cgi?id=662207 + +2012-01-22 15:23:13 +0000 Tim-Philipp Müller + + * tools/gst-inspect.c: + tools: fix typo in gst-inspect debug message + +2012-01-22 01:39:49 +0000 Tim-Philipp Müller + + * docs/gst/gstreamer-sections.txt: + * docs/random/porting-to-0.11.txt: + * gst/gst.c: + * gst/gsterror.c: + * gst/gsterror.h: + * gst/gstmessage.c: + * tests/check/gst/gststructure.c: + * win32/common/libgstreamer.def: + Use GLib's type for GError instead of our own + We introduced our own when GLib didn't want to add a GType + for GError. But now that there is one, we can use GLib's + unconditionally and remove our version. + +2012-01-22 01:27:42 +0000 Tim-Philipp Müller + + * plugins/elements/gstmultiqueue.h: + multiqueue: fix size of atomic counter + +2012-01-22 01:25:22 +0000 Tim-Philipp Müller + + * gst/glib-compat-private.h: + * gst/gst.c: + * gst/gstatomicqueue.c: + * gst/gstbufferpool.c: + * gst/gstbus.c: + * gst/gstdatetime.c: + * gst/gstelementfactory.c: + * gst/gsterror.c: + * gst/gstpoll.c: + * gst/gstsystemclock.c: + * gst/gsttaglist.c: + * gst/gsttagsetter.c: + * gst/gsttask.c: + * gst/gstutils.c: + * libs/gst/base/gstbaseparse.c: + * libs/gst/helpers/gst-plugin-scanner.c: + * libs/gst/net/gstnetclientclock.c: + * libs/gst/net/gstnettimeprovider.c: + * plugins/elements/gstfakesink.c: + * plugins/elements/gstfakesink.h: + * plugins/elements/gstfakesrc.c: + * plugins/elements/gstidentity.c: + * plugins/elements/gstidentity.h: + * plugins/elements/gstinputselector.c: + * plugins/elements/gstmultiqueue.c: + * plugins/elements/gsttee.c: + * tests/benchmarks/gstbufferstress.c: + * tests/benchmarks/gstclockstress.c: + * tests/benchmarks/gstpollstress.c: + * tools/gst-inspect.c: + * tools/gst-launch.c: + * tools/gst-typefind.c: + Use recent GLib API unconditionally now that we depend on the latest GLib + +2012-01-22 00:42:34 +0000 Tim-Philipp Müller + + * gst/gst.c: + * gst/gsttrace.c: + * gst/gsttrace.h: + trace: don't use deprecated GStaticMutex API in (still) public header + +2012-01-21 12:56:50 +0000 Tim-Philipp Müller + + * scripts/gst-uninstalled: + scripts: set GI_TYPELIB_PATH in gst-uninstalled + So pygi finds/uses the local g-i files. + +2012-01-20 18:06:04 +0000 Vincent Penquerc'h + + * libs/gst/check/libcheck/check.h.in: + libcheck: make the definition of fail not fail with non GCC compilers + +2012-01-20 14:42:31 +0100 Stefan Sauer + + * docs/gst/gstreamer-sections.txt: + * gst/gstobject.c: + * gst/gstobject.h: + * tests/benchmarks/controller.c: + * tests/check/gst/gstcontroller.c: + * tests/check/libs/controller.c: + * tests/examples/controller/audio-example.c: + * tests/examples/controller/control-sources.c: + * win32/common/libgstreamer.def: + controller: improve control binding handling + Change _set_control_binding to _add_control_binding and take ownership. Add a + _remove_control_binding function. + +2012-01-20 08:27:57 +0100 Stefan Sauer + + * docs/gst/gstreamer-sections.txt: + * gst/gstcontrolbinding.c: + * gst/gstcontrolbinding.h: + * gst/gstobject.c: + * gst/gstobject.h: + * tests/benchmarks/controller.c: + * tests/check/gst/gstcontroller.c: + * tests/check/libs/controller.c: + * tests/examples/controller/audio-example.c: + * tests/examples/controller/control-sources.c: + * win32/common/libgstreamer.def: + controller: remove convenience api for control sources + This is needed to support multiple kinds of control-bindings. + +2012-01-19 15:17:58 +0100 Wim Taymans + + * libs/gst/base/gstbasesrc.c: + basesrc: handle NULL from getcaps + If the getcaps functions returns NULL, return FALSE from the CAPS query. + +2012-01-19 15:17:33 +0100 Wim Taymans + + * libs/gst/base/gstbasesink.c: + basesink: handle lists correctly + +2012-01-17 16:23:33 -0500 Colin Walters + + * common: + * configure.ac: + build: add --disable-fatal-warnings configure option + It's reasonable to build from git, but not want to turn all compiler + warnings into fatal errors. For example, GNOME's jhbuild helps people + get newer versions of software than came from their distribution, but + they may not necessarily want to hack on it. + +2012-01-19 12:57:48 +0100 Mark Nauwelaerts + + * tests/benchmarks/gstclockstress.c: + tests: clockstress: perform sanity check on thread number argument + +2012-01-19 09:12:05 +0100 Wim Taymans + + * docs/gst/gstreamer-sections.txt: + * gst/gstbuffer.c: + * gst/gstmemory.c: + * gst/gstmemory.h: + * tests/check/gst/gstmemory.c: + memory improvements + Make the memory object simply manage the data pointer and the maxsize and move + the offset and size handling to common functionality. + Use the READONLY flag to set a readonly lock. + Remove the data and size fields from the unmap method. We need an explicit + resize operation instead of using the unmap function. + Make internal helper lock and unlock functions. + Update unit test and users of the old API. + +2012-01-19 11:43:53 +0000 Tim-Philipp Müller + + * gst/gstbus.c: + docs: fix typo in bus docs + +2012-01-13 17:45:17 -0500 Matej Knopp + + * .gitignore: + .gitignore: add visual studio IDE files and OS X .DS_Store files + https://bugzilla.gnome.org/show_bug.cgi?id=667899 + +2012-01-19 09:27:04 +0100 Wim Taymans + + * gst/glib-compat-private.h: + * gst/gstbin.c: + * gst/gstbufferpool.c: + * gst/gstbus.c: + * gst/gstbus.h: + * gst/gstclock.c: + * gst/gstclock.h: + * gst/gstelement.c: + * gst/gstelement.h: + * gst/gstmemory.c: + * gst/gstmessage.c: + * gst/gstmessage.h: + * gst/gstmeta.c: + * gst/gstobject.c: + * gst/gstobject.h: + * gst/gstpad.c: + * gst/gstpad.h: + * gst/gstpoll.c: + * gst/gsttask.c: + * gst/gsttask.h: + * gst/gstutils.c: + * libs/gst/base/gstbaseparse.c: + * libs/gst/base/gstbasesink.c: + * libs/gst/base/gstbasesink.h: + * libs/gst/base/gstbasesrc.c: + * libs/gst/base/gstbasesrc.h: + * libs/gst/base/gstbasetransform.c: + * libs/gst/base/gstbasetransform.h: + * libs/gst/base/gstcollectpads.c: + * libs/gst/base/gstcollectpads.h: + * libs/gst/base/gstcollectpads2.c: + * libs/gst/base/gstcollectpads2.h: + * libs/gst/controller/gstinterpolationcontrolsource.c: + * libs/gst/controller/gstlfocontrolsource.c: + * libs/gst/controller/gstlfocontrolsource.h: + * libs/gst/controller/gsttimedvaluecontrolsource.c: + * libs/gst/controller/gsttimedvaluecontrolsource.h: + * libs/gst/controller/gsttriggercontrolsource.c: + * plugins/elements/gstdataqueue.c: + * plugins/elements/gstdataqueue.h: + * plugins/elements/gstinputselector.c: + * plugins/elements/gstinputselector.h: + * plugins/elements/gstmultiqueue.c: + * plugins/elements/gstmultiqueue.h: + * plugins/elements/gstqueue.c: + * plugins/elements/gstqueue.h: + * plugins/elements/gstqueue2.c: + * plugins/elements/gstqueue2.h: + * plugins/elements/gsttee.c: + * plugins/elements/gsttee.h: + * tests/benchmarks/gstbufferstress.c: + * tests/benchmarks/gstpollstress.c: + * tests/check/gst/gsttask.c: + Update for new gthread API + +2012-01-18 16:52:55 +0100 Sebastian Dröge + + * configure.ac: + configure.ac: GIO check is now in gst-glib2.m4 + +2012-01-18 16:45:51 +0100 Sebastian Dröge + + * common: + Automatic update of common submodule + From 0807187 to 2a59016 + +2012-01-18 16:14:51 +0100 Sebastian Dröge + + * configure.ac: + configure.ac: Require GLib 2.31.10 and improve GIO check + +2012-01-18 12:07:46 +0100 Sebastian Dröge + + * libs/gst/base/gstbasetransform.c: + * libs/gst/base/gstbasetransform.h: + basetransform: Always call ::propose_allocation vfunc + And only forward the allocation query if we're working in + passthrough mode if no ::propose_allocation is implemented. + In place buffer transformations will change the buffer + content and require explicit handling of all metas. + +2012-01-18 11:37:57 +0100 Sebastian Dröge + + * gst/gstpad.c: + pad: Don't forward the allocation query by default + This has to be handled explicitely by elements to + make sure that they support all the metas passed + in the allocation query. + Metas have to supported explicitely, otherwise the + query will fail. All elements in a chain need to + support a specific meta to allow its usage. + +2012-01-18 01:31:56 +0000 Tim-Philipp Müller + + * gst/gstbufferpool.c: + * gst/gstmemory.c: + * gst/gstmeta.c: + gst: suppress some more deprecated thread api until we fix it up + Which should be soon, since we already depend on an unstable glib for -base. + +2012-01-18 01:18:33 +0000 Tim-Philipp Müller + + * win32/common/libgstnet.def: + * win32/common/libgstreamer.def: + win32: update .def files for api changes + +2012-01-17 23:57:44 +0000 Tim-Philipp Müller + + * configure.ac: + * libs/gst/Makefile.am: + configure: remove --disable-net option and always build libgstnet + It should work everywhere now, and -base and -good depend on + the GstNetMeta API. + +2012-01-17 23:52:07 +0000 Tim-Philipp Müller + + * configure.ac: + * libs/gst/net/Makefile.am: + configure: remove some socket cruft + +2010-05-05 16:33:51 +0100 Tim-Philipp Müller + + * configure.ac: + * libs/gst/net/Makefile.am: + * libs/gst/net/gstnetclientclock.c: + * libs/gst/net/gstnetclientclock.h: + * libs/gst/net/gstnettimepacket.c: + * libs/gst/net/gstnettimepacket.h: + * libs/gst/net/gstnettimeprovider.c: + * libs/gst/net/gstnettimeprovider.h: + * tests/check/Makefile.am: + * tests/check/libs/gstnettimeprovider.c: + net: port to use gio's networking API + Some warts still, but it's a start. + +2012-01-17 16:50:13 +0100 Sebastian Dröge + + * libs/gst/net/Makefile.am: + net: Add GIO to the gi-scanner packages + +2012-01-16 13:34:28 +0100 Sebastian Dröge + + * configure.ac: + * libs/gst/net/Makefile.am: + * libs/gst/net/gstnetaddressmeta.c: + * libs/gst/net/gstnetaddressmeta.h: + * pkgconfig/gstreamer-net-uninstalled.pc.in: + * pkgconfig/gstreamer-net.pc.in: + netaddressmeta: Use GSocketAddress instead of our own wrapper type + +2012-01-16 15:57:35 +0100 Wim Taymans + + * gst/gstbuffer.c: + * gst/gstmemory.c: + * gst/gstmemory.h: + * tests/check/gst/gstmemory.c: + memory: make writability check into a method + Use a method to check for writability instead of a macro so that we can change + the implementation more easily. + +2012-01-16 12:24:48 +0100 Wim Taymans + + * tests/check/gst/gstmemory.c: + tests: improve memory test + +2012-01-16 12:24:20 +0100 Wim Taymans + + * gst/gstbuffer.c: + buffer: improve docs + +2012-01-11 10:59:53 +0100 Mark Nauwelaerts + + * libs/gst/base/gstadapter.c: + adapter: ensure automagic _unmap in some more cases + +2011-11-15 17:42:56 +0000 Vincent Penquerc'h + + * libs/gst/base/gstadapter.c: + adapter: automatically unmap on clearing + When _clear gets called between _map and _unmap, buffers + will be unreffed. If the adapter was mapped, memory leaks + may occur. + While calling _clear between _map and _unmap does not seem + like such a great idea, this is possible in the audio + encoder base class, as _clear may be called in _finish_frame. + Since the audio encoder relies on flushing to keep track of + timestamps, delaying flushing till after handle_frame seems + dangerous. + So, we unmap on clear, as the next unmap will do nothing. + This makes _clear safe to call between _map and _unmap, + while avoiding leaking the mapped buffer. + https://bugzilla.gnome.org/show_bug.cgi?id=664133 + +2012-01-13 14:20:33 +0100 Mark Nauwelaerts + + * libs/gst/base/gstbasesrc.c: + basesrc: prevent unlikely caps leak + +2012-01-13 10:43:12 +0000 Vincent Penquerc'h + + * tools/gst-inspect.c: + gst-inspect: plug factory leak on error + +2012-01-13 00:22:03 +0000 Tim-Philipp Müller + + Merge remote-tracking branch 'origin/master' into 0.11 + Conflicts: + tools/gst-inspect.c + +2012-01-12 20:46:27 +0000 Tim-Philipp Müller + + * docs/gst/gstreamer-sections.txt: + * docs/random/porting-to-0.11.txt: + * gst/gstcaps.c: + * gst/gststructure.c: + * gst/gsttaglist.c: + * gst/gstvalue.c: + * gst/gstvalue.h: + * tests/check/gst/gstvalue.c: + * win32/common/libgstreamer.def: + Remove GST_TYPE_DATE, our own GDate type + Which we had to add because GLib didn't have it + back in the day. Port everything to plain old + G_TYPE_DATE, which is also a boxed type. Ideally + we'd just use GDateTime for everything, but it + doesn't support not setting some of the fields + unfortuntely (which would be very useful for + tag handling in general, if we could express + 2012-01 for example). + https://bugzilla.gnome.org/show_bug.cgi?id=666351 + +2012-01-12 19:53:11 +0000 Antoine Tremblay + + * libs/gst/base/gstbaseparse.c: + baseparse: clear adapter in reset so baseparse is reusable + GstBaseParse was not clearing its adapter on reset causing + problems when a pipeline went for example from PLAYING to NULL + state and then back to PLAYING again. The data from the last + stream would be used in the parser. + https://bugzilla.gnome.org/show_bug.cgi?id=667444 + +2012-01-12 15:50:53 +0000 Vincent Penquerc'h + + * tools/gst-inspect.c: + gstinspect: fix features and list leaks + +2012-01-12 11:03:10 +0100 Edward Hervey + + * win32/common/libgstreamer.def: + win32: add new API to .def file + +2012-01-11 12:19:20 +0000 Vincent Penquerc'h + + * gst/gststructure.c: + gststructure: clarify _get docs about the returned reference + https://bugzilla.gnome.org/show_bug.cgi?id=667689 + +2012-01-10 13:00:07 +0100 Sebastian Dröge + + Merge branch 'master' into 0.11 + +2012-01-06 16:39:04 +0100 Edward Hervey + + * plugins/elements/gsttypefindelement.c: + typefind: Send caps again after activation + Avoids ending up in cases where typefind gets activated in pull-mode + and caps never get sent. + https://bugzilla.gnome.org/show_bug.cgi?id=667337 + +2012-01-09 15:59:09 +0000 Christian Fredrik Kalager Schaller + + * gstreamer.spec.in: + Add latest specfile changes + +2012-01-09 15:58:45 +0000 Christian Fredrik Kalager Schaller + + * gst/gstdebugutils.h: + Also add headerfile + +2012-01-09 15:57:51 +0000 Christian Fredrik Kalager Schaller + + * gst/gstdebugutils.c: + Fix dotfile API to be exported since macros can't be GI bound + +2012-01-09 13:19:04 +0000 Tim-Philipp Müller + + * tests/check/gst/.gitignore: + tests: ignore new memory test binary + +2012-01-09 03:14:41 -0500 Matej Knopp + + * gst/gstmemory.c: + * libs/gst/controller/gsttriggercontrolsource.c: + Fix printf format build warnings + +2012-01-09 13:10:10 +0000 Tim-Philipp Müller + + * po/af.po: + * po/az.po: + * po/be.po: + * po/bg.po: + * po/ca.po: + * po/cs.po: + * po/da.po: + * po/de.po: + * po/el.po: + * po/en_GB.po: + * po/eo.po: + * po/es.po: + * po/eu.po: + * po/fi.po: + * po/fr.po: + * po/gl.po: + * po/hu.po: + * po/id.po: + * po/it.po: + * po/ja.po: + * po/lt.po: + * po/nb.po: + * po/nl.po: + * po/pl.po: + * po/pt_BR.po: + * po/ro.po: + * po/ru.po: + * po/rw.po: + * po/sk.po: + * po/sl.po: + * po/sq.po: + * po/sr.po: + * po/sv.po: + * po/tr.po: + * po/uk.po: + * po/vi.po: + * po/zh_CN.po: + * po/zh_TW.po: + po: update translations for new strings + +2012-01-06 15:01:24 +0100 Edward Hervey + + * gst/gstvalue.c: + gstvalue: Allow NULL dest when subtracting bitmask + Happens when checking for subsets of caps + +2012-01-06 13:32:55 +0100 Wim Taymans + + * gst/gstbuffer.c: + buffer: ensure writable memory in memset + +2012-01-06 13:10:18 +0100 Wim Taymans + + * docs/design/part-memory.txt: + * gst/gstmemory.c: + * gst/gstmemory.h: + * tests/check/gst/gstmemory.c: + memory: check semantics of nested mappings + Count how many mappings are currently active and also with what access pattern. + Update the design doc with restrictions on the access patterns for nested + mappings. + Check if nested mappings obey the access mode restrictions of the design doc. + Add various unit tests to check the desired behaviour. + +2012-01-06 13:06:32 +0100 Wim Taymans + + * plugins/elements/gstqueue2.c: + queue2: unmap with the right data pointer + Use the original data pointer to unmap the buffer memory. + +2012-01-06 10:39:46 +0100 Wim Taymans + + * gst/gstmemory.c: + docs: improve memory docs + +2012-01-06 07:02:36 +0100 Wim Taymans + + * gst/gstmemory.c: + * tests/check/gst/gstmemory.c: + memory: handle -1 size in unmap + handle -1 in unmap correctly when the offset is modified. + +2012-01-06 06:43:08 +0100 Wim Taymans + + * gst/gstmemory.c: + * tests/check/gst/gstmemory.c: + memory: improve semantics of unmap + Make an unmap call with a different data pointer than the map call update the + offset field. This allows for both offset and size adjustements in the unmap + call. + +2011-11-29 14:22:44 +0100 Havard Graff + + * libs/gst/base/gstbasesink.c: + basesink: don't compensate for render-delay twice + https://bugzilla.gnome.org/show_bug.cgi?id=667298 + +2012-01-05 18:15:20 +0100 Wim Taymans + + * gst/gstmemory.c: + * tests/check/gst/gstmemory.c: + memory: add more checks + Add check for mapping and resizing + +2012-01-05 17:28:28 +0100 Wim Taymans + + * docs/design/part-memory.txt: + * gst/gstmemory.c: + * tests/check/gst/gstmemory.c: + memory: take offset into account + Take the offset into account whem mapping and unmapping the buffer. + +2012-01-05 17:02:48 +0100 Wim Taymans + + * docs/design/part-memory.txt: + docs: clarify resize and current mappings + +2012-01-05 16:41:58 +0100 Wim Taymans + + * docs/design/part-memory.txt: + * tests/check/gst/gstmemory.c: + memory: clarify nested mappings, add unit test + +2012-01-05 12:30:00 +0000 Tim-Philipp Müller + + * win32/common/libgstreamer.def: + win32: add new API to .def file + +2012-01-05 13:22:42 +0100 Wim Taymans + + * tests/check/gst/gstmemory.c: + tests: add more memory unit tests + Check for unmap with invalid size + +2012-01-05 13:11:05 +0100 Wim Taymans + + * gst/gstmemory.c: + * tests/check/Makefile.am: + * tests/check/gst/gstmemory.c: + tests: add unit test for GstMemory + Add a GstMemory unit test + Add some more asserts in GstMemory to catch invalid cases. + +2012-01-05 13:09:29 +0100 Wim Taymans + + * libs/gst/check/gstcheck.h: + check: add macro to check for memory refcount + +2012-01-05 12:39:17 +0100 Wim Taymans + + * docs/design/part-memory.txt: + improve docs a little + +2011-12-16 13:11:36 +0100 Sebastian Dröge + + * tests/check/gst/gstvalue.c: + value: Add tests for the bitmask type + +2011-12-16 12:39:15 +0100 Sebastian Dröge + + * gst/gststructure.c: + structure: Add "bitmask" as alias for (GstBitmask) when (de-)serializing values + +2011-12-16 12:32:26 +0100 Sebastian Dröge + + * gst/gstvalue.c: + * gst/gstvalue.h: + value: Add 64-bit bitmask type + +2012-01-01 16:32:27 +0100 Idar Tollefsen + + * autogen.sh: + build: don't output configure options via autogen if $NOCONFIGURE is set + https://bugzilla.gnome.org/show_bug.cgi?id=667296 + +2012-01-05 00:30:30 +0000 Tim-Philipp Müller + + * gst/gst-i18n-app.h: + * gst/gst-i18n-lib.h: + gst: include locale.h before any other i18n headers + This is also how we do it in -base. + https://bugzilla.gnome.org/show_bug.cgi?id=667290 + +2012-01-01 16:46:04 +0100 Idar Tollefsen + + * gst/gst_private.h: + * gst/gstconfig.h.in: + gstconfig.h: adds and uses SunPro visibility attribute for proper function exports + Define GST_EXPORT for SunPro. + https://bugzilla.gnome.org/show_bug.cgi?id=667289 + +2012-01-01 16:47:14 +0100 Idar Tollefsen + + * plugins/elements/gstfdsrc.c: + * plugins/elements/gstinputselector.c: + plugins: explicitly cast initialization values to the correct type + https://bugzilla.gnome.org/show_bug.cgi?id=667288 + +2012-01-01 20:17:41 +0100 Idar Tollefsen + + * gst/gstpoll.c: + poll: include correct poll.h based on autoconf test + https://bugzilla.gnome.org/show_bug.cgi?id=667286 + +2012-01-04 23:46:19 +0000 Tim-Philipp Müller + + * configure.ac: + configure: check for sys/poll.h + https://bugzilla.gnome.org/show_bug.cgi?id=667286 + +2012-01-04 19:50:01 +0000 Tim-Philipp Müller + + * common: + Automatic update of common submodule + From a62f3d4 to 0807187 + +2012-01-04 10:04:11 +0100 Wim Taymans + + * gst/gstbuffer.h: + buffer: only reserve 6 extra flags + Only reserve 6 extra flags instead of 10 so that more media specific flags + are available. + +2012-01-03 15:25:31 +0100 Wim Taymans + + * gst/gstcompat.h: + * libs/gst/base/gstcollectpads2.c: + GST_FLOW_UNEXPECTED -> GST_FLOW_EOS + +2012-01-03 15:05:47 +0100 Wim Taymans + + * gst/gstcompat.h: + compat: restore UNEXPECTED + +2012-01-03 15:03:38 +0100 Wim Taymans + + * docs/gst/gstreamer-docs.sgml: + * docs/gst/gstreamer-sections.txt: + * gst/gstcompat.h: + * gst/gstelement.h: + * gst/gstmemory.c: + * gst/gstregistry.c: + * gst/gstsample.c: + docs: fix some docs + +2012-01-03 14:45:08 +0100 Wim Taymans + + * win32/common/libgstreamer.def: + defs: update + +2012-01-03 14:43:05 +0100 Wim Taymans + + * gst/gsttaglist.c: + * gst/gsttaglist.h: + taglist: avoid exposing the lists in tags + +2012-01-03 13:42:12 +0100 Wim Taymans + + * gst/gsttaglist.c: + * gst/gsttaglist.h: + taglist: add missing functions + Add missing and essential functions now that we can't directly use GstStructure + methods on the taglist anymore. + +2012-01-03 10:42:31 +0100 Wim Taymans + + * gst/gstvalue.h: + value: add macro to check if a gvalue holds a sample + +2012-01-02 15:47:46 +0100 Wim Taymans + + * docs/manual/advanced-autoplugging.xml: + docs: fix build of docs examples + Update for registry method rename + +2012-01-02 15:39:02 +0100 Wim Taymans + + * libs/gst/base/gstbaseparse.c: + baseparse: turn assert into a real error + Post a real error instead of just asserting. + +2012-01-02 15:38:25 +0100 Wim Taymans + + * libs/gst/base/gstbasesrc.c: + basesrc: handle latency event + +2012-01-02 02:32:49 +0000 Tim-Philipp Müller + + * gst/gstregistry.c: + * gst/gstregistry.h: + * tests/check/gst/gstplugin.c: + * win32/common/libgstreamer.def: + registry: get rid of gst_default_registry_*() convenience macros + They're not really worth it: hardly save any typing, and aren't + great for bindings or gobject-introspection. + +2012-01-02 02:22:51 +0000 Tim-Philipp Müller + + * docs/random/porting-to-0.11.txt: + * gst/gst.c: + * gst/gstelementfactory.c: + * gst/gstplugin.c: + * gst/gstpluginfeature.c: + * gst/gstpluginloader.c: + * gst/gstregistry.c: + * gst/gstregistry.h: + * gst/gsttypefind.c: + * gst/gsttypefindfactory.c: + * gst/gsturi.c: + * libs/gst/check/gstcheck.c: + * tests/check/generic/states.c: + * tests/check/gst/gstplugin.c: + * tests/check/gst/gstregistry.c: + * tools/gst-inspect.c: + * win32/common/libgstreamer.def: + registry: rename gst_registry_get_default() to gst_registry_get() + It's not really a default if there is only one that can't be changed. + Should we return a ref like e.g. g_volume_monitor_get() does? + +2012-01-02 02:21:40 +0000 Tim-Philipp Müller + + Merge remote-tracking branch 'origin/master' into 0.11 + Conflicts: + gst/gsttaglist.c + plugins/elements/gstoutputselector.c + +2012-01-02 00:17:17 +0000 Tim-Philipp Müller + + * docs/gst/gstreamer-sections.txt: + * gst/gsttaglist.c: + * gst/gsttaglist.h: + tags: add GST_TAG_LANGUAGE_NAME + API: GST_TAG_LANGUAGE_NAME + +2012-01-01 20:59:22 +0100 Stefan Sauer + + * docs/design/part-controller.txt: + docs: update controller design doc + +2012-01-01 20:57:34 +0100 Stefan Sauer + + * tests/check/libs/controller.c: + controller: rename some tests + +2012-01-01 20:55:20 +0100 Stefan Sauer + + * gst/gstcontrolbinding.c: + * tests/check/libs/controller.c: + controller: support control mapping for enums + Add a mapping for enum types (supporting sparse enums). Add a test. + +2012-01-01 20:43:51 +0100 Stefan Sauer + + * tests/check/gst/gstcontroller.c: + * tests/check/libs/controller.c: + * tests/examples/controller/control-sources.c: + controller: remove nonsense parts from test object property descriptions + +2012-01-01 18:54:23 +0100 Stefan Sauer + + * libs/gst/controller/gstinterpolationcontrolsource.c: + interpolationcontrolsource: fix cubic interpolation for arrays + +2012-01-01 18:50:55 +0100 Stefan Sauer + + * tests/examples/controller/control-sources.c: + audio-example: also plot reverse-saw + +2012-01-01 18:43:23 +0100 Stefan Sauer + + * libs/gst/controller/gstlfocontrolsource.c: + lfocontrolsource: cleanups and fix triangle calculations + +2012-01-01 18:34:12 +0100 Stefan Sauer + + * tests/examples/controller/audio-example.c: + audio-example: fix the example + We need to scale the frequency values. + +2012-01-01 15:16:06 +0100 Stefan Sauer + + * libs/gst/controller/gstlfocontrolsource.c: + * tests/examples/controller/control-sources.c: + lfocontrolsource: make chainable + Now the properties of this controlsource are in turn controlable. Add an example + to show the usage. + +2012-01-01 15:01:22 +0100 Stefan Sauer + + * libs/gst/controller/gstinterpolationcontrolsource.c: + controller: add logging and fix array functions + +2012-01-01 14:55:35 +0100 Stefan Sauer + + * tests/check/libs/controller.c: + controller: cleanup the tests + +2012-01-01 14:28:54 +0100 Stefan Sauer + + * gst/gstcontrolbinding.c: + controller: add more debug logging + +2011-12-31 17:37:20 -0800 David Schleef + + * tests/check/Makefile.am: + convert Makefile spaces to tabs + +2011-12-31 15:52:18 +0100 Stefan Sauer + + * tests/examples/controller/control-sources.c: + controller: also test array functions + Improve the example to also collect value arrays and plot them. + +2011-12-31 15:26:26 +0100 Stefan Sauer + + * gst/gstobject.c: + controller: remove obsolete FIXME comment + +2011-12-31 09:56:53 +0100 Stefan Sauer + + * tests/check/libs/controller.c: + controller: fix tests + Set a defined value to check for no-change. + +2011-12-30 18:35:40 +0100 Stefan Sauer + + * gst/gstcontrolsource.c: + * gst/gstcontrolsource.h: + * tests/benchmarks/controller.c: + * tests/check/gst/gstcontroller.c: + * tests/check/libs/controller.c: + * tests/examples/controller/audio-example.c: + * tests/examples/controller/control-sources.c: + control-sources: turn into GstObjects + This is a preparation for chaining them. + +2011-12-30 19:37:31 +0000 Tim-Philipp Müller + + * gst/gstmarshal.list: + * gst/gstregistry.c: + * gst/gstregistry.h: + registry: remove padding and signal vfuncs + And fix signal GTypes and marshaller. No one will ever + need to subclass our registry, so just remove the padding + and the signal vfuncs. + +2011-12-30 15:39:55 +0000 Tim-Philipp Müller + + * tests/check/Makefile.am: + tests: disable GstIndex unit test + +2011-12-30 15:31:17 +0000 Tim-Philipp Müller + + * libs/gst/base/gstbaseparse.c: + * libs/gst/base/gstindex.c: + * libs/gst/base/gstindex.h: + * libs/gst/base/gstmemindex.c: + index: rename GstAssocFlags to GstIndexAssociationFlags + Just in case we resurrect this later. + +2011-12-30 15:24:52 +0000 Tim-Philipp Müller + + * libs/gst/base/gstindex.c: + * libs/gst/base/gstindex.h: + * libs/gst/base/gstmemindex.c: + base: disable unused index API and make functions static + It's simply private helper API for now, until someone + fixes up GstBaseParse not to need it any more. + +2011-12-30 15:24:32 +0000 Tim-Philipp Müller + + * win32/common/libgstreamer.def: + win32: remove index API from .def file + +2011-12-30 15:06:34 +0000 Tim-Philipp Müller + + * gst/gstelement.h: + element: add LARGE padding to class structure + Four slots for expansion is not a lot. + +2011-12-30 15:03:02 +0000 Tim-Philipp Müller + + * configure.ac: + * docs/gst/gstreamer-docs.sgml: + * docs/gst/gstreamer-sections.txt: + * docs/gst/gstreamer.types.in: + * gst/Makefile.am: + * gst/gst.c: + * gst/gst.h: + * gst/gstbin.c: + * gst/gstelement.c: + * gst/gstelement.h: + * gst/gstindex.c: + * gst/gstindex.h: + * gst/gstindexfactory.c: + * gst/gstindexfactory.h: + * gst/gstregistrybinary.c: + * gst/gstregistrychunks.c: + * libs/gst/base/Makefile.am: + * libs/gst/base/gstbaseparse.c: + * libs/gst/base/gstindex.c: + * libs/gst/base/gstindex.h: + * libs/gst/base/gstmemindex.c: + * plugins/Makefile.am: + * plugins/indexers/.gitignore: + * plugins/indexers/Makefile.am: + * plugins/indexers/gstfileindex.c: + * plugins/indexers/gstindexers.c: + * plugins/indexers/gstindexers.h: + * plugins/indexers/gstmemindex.c: + * tools/gst-inspect.c: + * tools/gst-launch.c: + index: remove GstIndex and GstIndexFactory for now + There are many good use cases for GstIndex and we want + to add it back again in some form, but possibly not with + the current API, which is very powerful (maybe too powerful), + but also a bit confusing. At the very least we'd need to + make the API bindings-friendly. + +2011-12-30 17:57:41 +0100 Stefan Sauer + + * gst/gst.c: + gst: unref the two cotnroller types in _deinit() + +2011-12-30 17:51:01 +0100 Stefan Sauer + + * tests/check/gst/gstcontroller.c: + controller: add more tests to core controller suite + Extend the dummy control-source to allow testing the sync code path. Add test + for 1:1 and 2:1 value <-> control-source sync. + +2011-12-30 13:52:08 +0100 Stefan Sauer + + * tests/check/gst/gstcontroller.c: + controller: add a test for bindings control sources multiple times + +2011-12-30 12:59:46 +0000 Tim-Philipp Müller + + * gst/math-compat.h: + math-compat: move static variable for NAN into #ifndef NAN block + And use G_GNUC_UNUSED instead of __attribute_used__ + +2011-12-30 13:32:18 +0100 Stefan Sauer + + * gst/math-compat.h: + * libs/gst/controller/gstinterpolationcontrolsource.c: + * libs/gst/controller/gsttriggercontrolsource.c: + controller: use NAN instead of FP_NAN (which is the class) + Also add a fallback define to math-compat.h. + Fixes #666887 + +2011-12-29 16:56:46 -0300 Thiago Santos + + * plugins/elements/gstoutputselector.c: + output-selector: Do not false warn about unlinked pad + When output-selector didn't receive a newsegment event it would + warn about pad being unlinked when switching pads. Making the logs + wrong and misleading. + +2011-12-29 16:49:39 +0100 Edward Hervey + + Merge remote-tracking branch 'origin/master' into 0.11 + +2011-12-28 15:13:09 +0100 Edward Hervey + + * tests/check/gst/gstpad.c: + tests: Fix leak in pad check + +2011-12-28 14:51:50 +0100 Wim Taymans + + * gst/gst.c: + gst: deinit meta flags too + +2011-12-28 12:25:59 +0100 Edward Hervey + + * gst/gst.c: + gst: Initialize new GstMetaFlags in init_post() + +2011-12-01 19:05:59 +0100 Edward Hervey + + * gst/gstquery.c: + gstquery: Small doc fixups + +2011-12-16 02:20:27 +0100 Matej Knopp + + * gst/gstbuffer.h: + * gst/gstbufferlist.h: + * gst/gstcaps.h: + * gst/gstevent.h: + * gst/gstinfo.h: + * gst/gstmemory.h: + * gst/gstsample.h: + * gst/gststructure.h: + * gst/gsttrace.h: + win32: fix exported variables for VS 2010 + https://bugzilla.gnome.org/show_bug.cgi?id=666219 + +2011-12-27 13:48:36 +0100 Stefan Sauer + + * libs/gst/controller/gsttriggercontrolsource.c: + triggercontrolsource: fix control reaches end of non-void function + Return NAN and check the value further up. + Fixes #666890 + +2011-12-27 11:40:40 +0000 Tim-Philipp Müller + + * libs/gst/controller/gsttriggercontrolsource.c: + controller: quick-fix compiler warning breaking the build + This is likely not the proper fix. + https://bugzilla.gnome.org/show_bug.cgi?id=666890 + +2011-12-27 11:35:28 +0000 Tim-Philipp Müller + + * tests/check/gst/gstplugin.c: + tests: can't access private registry structure members directly any longer + +2011-12-27 11:24:48 +0000 Tim-Philipp Müller + + * libs/gst/controller/gstinterpolationcontrolsource.c: + controller: fix compiler warning in interpolation control source + gstinterpolationcontrolsource.c:54: warning: type qualifiers ignored + on function return type + https://bugzilla.gnome.org/show_bug.cgi?id=666890 + +2011-12-26 18:44:39 +0000 Tim-Philipp Müller + + * plugins/elements/gstfilesrc.c: + filesrc: remove "fd" property + It's no longer useful, since we don't use mmap any more anyway, + and we might use a different API for I/O in future (such as GIO). + +2011-12-26 18:41:13 +0000 Tim-Philipp Müller + + * gst/gst_private.h: + * gst/gstplugin.c: + * gst/gstregistry.c: + * gst/gstregistry.h: + * gst/gstregistrybinary.c: + registry: move private bits into private struct + +2011-12-26 11:26:05 +0000 Tim-Philipp Müller + + * gst/gstvalue.c: + value: micro-optimisation: avoid some unnecessary g_value_unset() + We know there's nothing to do here and can save us the function + calls and GValueTable lookups. + +2011-12-25 23:41:03 +0000 Tim-Philipp Müller + + * Android.mk: + * configure.ac: + * docs/libs/gstreamer-libs-docs.sgml: + * docs/libs/gstreamer-libs-sections.txt: + * gstreamer.spec.in: + * libs/gst/Makefile.am: + * libs/gst/dataprotocol/.gitignore: + * libs/gst/dataprotocol/Makefile.am: + * libs/gst/dataprotocol/dataprotocol.c: + * libs/gst/dataprotocol/dataprotocol.h: + * libs/gst/dataprotocol/dp-private.h: + * pkgconfig/Makefile.am: + * pkgconfig/gstreamer-dataprotocol-uninstalled.pc.in: + * pkgconfig/gstreamer-dataprotocol.pc.in: + * scripts/gst-uninstalled: + * tests/check/Makefile.am: + * tests/check/gst/.gitignore: + * tests/check/libs/gdp.c: + * tests/check/libs/gstlibscpp.cc: + * tests/check/libs/libsabi.c: + * win32/MANIFEST: + * win32/vs6/gstreamer.dsw: + * win32/vs6/libgstdataprotocol.dsp: + libs: remove gdp dataprotocol library + Made private and moved to gdp plugin in -base for + the time being, until we figure out what we do with + gdp and 0.11. + +2011-12-25 21:02:41 +0000 Tim-Philipp Müller + + * tests/benchmarks/controller.c: + tests: fix unused-variable compiler warning + +2011-12-25 21:01:43 +0000 Tim-Philipp Müller + + * win32/common/libgstcontroller.def: + * win32/common/libgstreamer.def: + win32: update exports for new API + +2011-12-25 20:49:41 +0100 Stefan Sauer + + * docs/design/part-controller.txt: + docs: add the start of a design document for controller + +2011-12-25 18:49:01 +0100 Stefan Sauer + + * tests/check/Makefile.am: + * tests/check/gst/gstcontroller.c: + * tests/check/libs/controller.c: + controller: split and cleanup the tests + The controller object was once copied from buzztards unit tests. Change + TestMonoSource to TestObj as it is not a full fledged element. Split the tests + into a core and library test suite. + +2011-12-22 23:48:30 +0100 Stefan Sauer + + * docs/gst/gstreamer-sections.txt: + * docs/random/porting-to-0.11.txt: + * gst/gstcontrolbinding.c: + * gst/gstcontrolbinding.h: + * gst/gstcontrolsource.c: + * gst/gstcontrolsource.h: + * gst/gstobject.c: + * gst/gstobject.h: + * libs/gst/controller/Makefile.am: + * libs/gst/controller/gstinterpolation.c: + * libs/gst/controller/gstinterpolationcontrolsource.c: + * libs/gst/controller/gstinterpolationcontrolsourceprivate.h: + * libs/gst/controller/gstlfocontrolsource.c: + * libs/gst/controller/gstlfocontrolsourceprivate.h: + * libs/gst/controller/gsttimedvaluecontrolsource.c: + * libs/gst/controller/gsttimedvaluecontrolsource.h: + * libs/gst/controller/gsttriggercontrolsource.c: + * tests/benchmarks/controller.c: + * tests/check/libs/controller.c: + * tests/check/libs/gstlibscpp.cc: + * tests/examples/controller/.gitignore: + * tests/examples/controller/Makefile.am: + * tests/examples/controller/audio-example.c: + * tests/examples/controller/control-sources.c: + controller: move GValue handling from control-sources to -binding + ControlSources are now gdouble based. A control source is mapped to a + particullar GObject property using a ControlBinding. + +2011-12-20 22:36:18 +0100 Stefan Sauer + + * docs/gst/gstreamer-docs.sgml: + * docs/gst/gstreamer-sections.txt: + * docs/gst/gstreamer.types.in: + * gst/Makefile.am: + * gst/gst.c: + * gst/gstcontrolbinding.c: + * gst/gstcontrolbinding.h: + * gst/gstcontrolsource.c: + * gst/gstobject.c: + * gst/gstobject.h: + * libs/gst/controller/gsttimedvaluecontrolsource.c: + * tests/check/libs/controller.c: + controller: move GstControlledProperty into a separate class + Add a GstControlBinding class. This is a preparation for making the + controlsources generate double valued control curves and do the gparamspec + mapping in the control binding. Now the API in GstObject is again mostly + for convenience. + +2011-12-25 12:47:55 +0000 Tim-Philipp Müller + + Merge remote-tracking branch 'origin/master' into 0.11 + Conflicts: + plugins/elements/gstfilesrc.c + +2011-12-25 12:39:49 +0000 Tim-Philipp Müller + + * plugins/elements/gstfilesrc.c: + filesrc: return any remaining data on EOS before returning FLOW_UNEXPECTED + +2011-12-25 12:29:46 +0000 Tim-Philipp Müller + + * plugins/elements/gstfilesrc.c: + filesrc: minor cosmetic changes + Rename woffset variable, maintain separate bytes_read in addition + to length variable. + +2011-12-25 12:13:57 +0000 Tim-Philipp Müller + + * libs/gst/base/gstcollectpads2.c: + collectpads2: fix up compilation after merge + +2011-12-25 11:58:12 +0000 Tim-Philipp Müller + + Merge remote-tracking branch 'origin/master' into 0.11 + Conflicts: + libs/gst/base/gstbasetransform.c + libs/gst/controller/gstinterpolationcontrolsource.c + libs/gst/controller/gstlfocontrolsource.c + plugins/elements/gstfilesrc.c + Dit not merge controller or basetransform changes. + +2011-12-24 14:59:16 -0300 Thiago Santos + + * docs/random/porting-to-0.11.txt: + porting: update porting-to-0.11 + Update gst_pad_get_caps -> gst_pad_query_caps change + +2011-12-23 15:37:45 +0100 Wim Taymans + + * gst/gstbufferpool.c: + * gst/gstbufferpool.h: + bufferpool: cleanup metadata in reset_buffer + Use the reset_buffer vmethod to remove the unpooled metadata from the buffer. + +2011-12-22 16:00:28 +0100 Wim Taymans + + * win32/common/libgstreamer.def: + def: update for new symbols + +2011-12-22 15:55:29 +0100 Wim Taymans + + * gst/gstbufferpool.c: + bufferpool: handle metadata in the pool + Mark all metadata on the allocated buffers with a POOLED flag. When a buffer + returns to the pool, remove all metadata that did not have the POOLED flag. This + makes sure that we never leave unknown metadata to the buffers in the pool. + +2011-12-22 15:54:03 +0100 Wim Taymans + + * gst/gstbuffer.c: + * gst/gstbuffer.h: + buffer: add foreach function for the metadata + +2011-12-22 15:53:19 +0100 Wim Taymans + + * gst/gstbufferlist.c: + bufferlist: small doc fix + +2011-12-22 15:52:08 +0100 Wim Taymans + + * gst/gstbuffer.c: + * gst/gstmeta.h: + meta: add metadata flags + Add metadata flags so that we can set extra properties of the metadata + +2011-12-02 14:10:32 +0100 Mark Nauwelaerts + + * gst/gstpipeline.c: + pipeline: only have a top-level pipeline do pipeline management + Fixes #665390. + +2011-12-22 11:08:42 +0000 Tim-Philipp Müller + + * libs/gst/controller/gstinterpolationcontrolsource.c: + controller: fix GType name of interpolation mode enum + +2011-12-21 11:13:47 +0100 Wim Taymans + + * win32/common/libgstreamer.def: + def: update + +2011-12-21 11:08:34 +0100 Wim Taymans + + * gst/gstcaps.c: + * gst/gstcaps.h: + caps: rename variable for consistency + Rename the variable for GST_CAPS_NONE to _gst_caps_none for consistency and to + hie the fact that NONE caps are also accidentally empty caps. + +2011-12-19 14:27:47 +0100 Sebastian Dröge + + * libs/gst/base/gstbasetransform.c: + basetransform: If the filtered peer caps are already empty error out early + +2011-12-20 13:21:36 +0100 Wim Taymans + + * win32/common/libgstreamer.def: + def: update defs + +2011-12-20 13:14:07 +0100 Wim Taymans + + * gst/gstcaps.c: + * gst/gstcaps.h: + caps: add ANY and EMPTY singletons + Add a singleton for ANY and EMPTY caps and make the GST_CAPS_ANY and + GST_CAPS_NONE point to them. This makes the API more consistent now + that the macro does not magically create a ref. It also solves some leaks in + places where the macro was used to register a padtemplate. + +2011-12-20 13:13:04 +0100 Wim Taymans + + * gst/gsttypefind.c: + * gst/gsttypefind.h: + remove const in gst_type_find_register() + Remove the const from the GstCaps in gst_type_find_register() because the + function takes a ref to the caps. + +2011-12-20 12:59:37 +0100 Wim Taymans + + * win32/common/libgstcontroller.def: + defs: update + +2011-12-20 11:38:19 +0100 Stefan Sauer + + * gst/gstcontrolsource.c: + controller: remove unused parent_class varriable from controlsource + +2011-12-19 23:32:57 +0100 Stefan Sauer + + * docs/libs/gstreamer-libs-sections.txt: + * docs/random/porting-to-0.11.txt: + * gst/gstobject.c: + * libs/gst/controller/gstinterpolation.c: + * libs/gst/controller/gstinterpolationcontrolsource.c: + * libs/gst/controller/gstinterpolationcontrolsource.h: + * tests/benchmarks/controller.c: + * tests/check/libs/controller.c: + * tests/examples/controller/audio-example.c: + controller: cleanup interpolation modes + Remove deprecated/unimplemented modes. Turn interpolation mode into a gobject + property. Update docs and examples. + +2011-12-19 11:13:45 +0100 Stefan Sauer + + * docs/libs/gstreamer-libs-docs.sgml: + * docs/libs/gstreamer-libs-sections.txt: + * docs/libs/gstreamer-libs.types: + * docs/random/porting-to-0.11.txt: + * gst/gstobject.c: + * libs/gst/controller/Makefile.am: + * libs/gst/controller/gstinterpolation.c: + * libs/gst/controller/gstinterpolationcontrolsource.c: + * libs/gst/controller/gstinterpolationcontrolsource.h: + * libs/gst/controller/gstinterpolationcontrolsourceprivate.h: + * libs/gst/controller/gsttimedvaluecontrolsource.c: + * libs/gst/controller/gsttimedvaluecontrolsource.h: + * libs/gst/controller/gsttriggercontrolsource.c: + * libs/gst/controller/gsttriggercontrolsource.h: + * tests/benchmarks/controller.c: + * tests/check/libs/controller.c: + * tests/examples/controller/audio-example.c: + controlsources: refactor interpolation control source + Move most of the code to a GstTimedValueControlSource. Split out the trigger + 'interpolation mode' to a new control source class. Move tests and examples to + new api. Update docs. + Fixes #610338 + +2011-12-19 22:01:02 +0100 Stefan Sauer + + * libs/gst/controller/gstlfocontrolsource.c: + controlsource: clean up lfo control source + Remove parent_class and use var from G_DEFINE_TYPE macro. Remove unused dispose + implementation. + +2011-12-19 20:57:44 +0000 Tim-Philipp Müller + + * win32/common/libgstbase.def: + win32: add new collectpads2 function to .def file + +2011-12-16 17:59:22 +0100 Mark Nauwelaerts + + * libs/gst/base/gstcollectpads2.c: + * libs/gst/base/gstcollectpads2.h: + collectpads2: add convenience clipping function + ... which also converts to running time; useful for typical muxer. + +2011-12-19 17:38:18 +0100 Mark Nauwelaerts + + * libs/gst/base/gstbasetransform.c: + basetransform: do not delay sparse stream newsegment updates + +2011-12-19 17:00:18 +0100 Wim Taymans + + * gst/gstmemory.h: + memory: make subclasses add other flags + Add GST_MAP_FLAG_LAST so that implementations can add additional flags when + mapping memory. + +2011-12-19 12:33:18 +0100 Mark Nauwelaerts + + * libs/gst/base/gstbasetransform.c: + basetransform: suggestion compatible with upstream is not much of a suggestion + ... in that upstream is already complying with that suggestion. + Fixes #666174. + +2011-12-15 14:31:05 +0100 Mark Nauwelaerts + + * libs/gst/base/gstcollectpads2.c: + collectpads2: delay collecting buffer if a pad newly set waiting + ... as commented; make code correspond to it (again). + +2011-12-15 16:06:30 +0100 Stefan Sauer + + * libs/gst/controller/gstinterpolationcontrolsource.c: + * libs/gst/controller/gstlfocontrolsource.c: + controller: user the parent_class vars from G_DEFINE_TYPE + +2011-12-14 12:13:36 +0000 Tim-Philipp Müller + + * gst/gstutils.c: + pad: allow NULL as filter caps argument with query_caps() + https://bugzilla.gnome.org/show_bug.cgi?id=666154 + +2011-12-12 13:05:36 +0000 Vincent Penquerc'h + + * plugins/elements/gstfilesrc.c: + filesrc: do not mistake short reads for EOS + While local filesystems will usually not cause short reads, + this may happen on seekable files on some remote filesystems. + Instead, loop till we get the requested amount of data, or + an actual EOS (ie, 0 bytes). + https://bugzilla.gnome.org/show_bug.cgi?id=665921 + +2011-11-14 02:26:31 +0100 Matej Knopp + + * libs/gst/base/gstbaseparse.c: + baseparse: Clear queued frames with other queues + +2011-12-12 12:11:40 +0000 Tim-Philipp Müller + + * configure.ac: + * gst/gstelementfactory.c: + elementfactory: use new 'transfer floating' annotation for gst_element_factory_make() + Requires gobject-introspection 1.31.1 (older versions will + error out with that). + https://bugzilla.gnome.org/show_bug.cgi?id=664099 + +2011-12-12 12:09:02 +0000 Tim-Philipp Müller + + * po/cs.po: + * po/eo.po: + * po/es.po: + * po/sr.po: + po: update languages + +2011-12-12 12:00:16 +0000 Tim-Philipp Müller + + Merge remote-tracking branch 'origin/master' into 0.11 + +2011-12-12 11:54:56 +0100 Sebastian Dröge + + * gst/glib-compat-private.h: + * gst/glib-compat.c: + glib-compat: Add license boilerplate for LGPL + +2011-12-10 01:16:05 +0000 Tim-Philipp Müller + + * po/LINGUAS: + * po/cs.po: + * po/eo.po: + * po/es.po: + * po/gl.po: + * po/sl.po: + * po/sr.po: + * po/uk.po: + po: update translations + +2011-12-10 11:08:22 +0100 Wim Taymans + + * libs/gst/base/gstbasesrc.c: + basesrc: say we handle RECONFIGURE event + We handle the RECONFIGURE event so return TRUE from the event handler. + +2011-12-10 11:07:02 +0100 Wim Taymans + + * gst/gstpad.c: + pad: don't forward on NULL pads + The iterator can return NULL in some cases, avoid pushing on those + NULL pads. + +2011-12-07 16:01:07 +0100 Stefan Sauer + + * docs/gst/gstreamer-sections.txt: + * gst/gstpreset.c: + * gst/gstpreset.h: + * win32/common/libgstreamer.def: + preset: allow applications to specify an extra preset dir + An extra application preset dir help to organize presets created for special + purposes. Fixes #660760 + API: gst_preset_set_app_dir(), gst_preset_get_app_dir() + +2011-12-09 10:01:16 +0100 Wim Taymans + + * libs/gst/base/gstbasesrc.c: + basesrc: stop when negotiation fails + +2011-12-08 17:32:19 +0000 Tim-Philipp Müller + + Merge remote-tracking branch 'origin/master' into 0.11 + +2011-12-08 18:00:00 +0100 Sebastian Dröge + + * libs/gst/base/gstbasetransform.c: + basetransform: Fix code path to come up with possible caps if incompatible caps are provided to buffer_alloc() + Previous code could almost never work and this should be slightly + better. + +2011-12-08 17:21:30 +0100 Sebastian Dröge + + * libs/gst/base/gstbasetransform.c: + basetransform: Fall back to upstream provided caps if suggested caps are not supported by the sinkpad + +2011-12-08 17:07:05 +0100 Sebastian Dröge + + * libs/gst/base/gstbasetransform.c: + basetransform: Fall back to upstream provided caps if fixation of suggested caps failed + +2011-12-08 17:02:28 +0100 Sebastian Dröge + + * libs/gst/base/gstbasetransform.c: + basetransform: Refactor gst_base_transform_buffer_alloc() code + Don't check if upstream provided caps are compatible with upstream + and don't try to fixate these caps. They must be fixated in any case. + +2011-12-08 00:49:17 +0000 Tim-Philipp Müller + + * win32/common/libgstbase.def: + * win32/common/libgstreamer.def: + win32: update .def files for latest API additions + +2011-12-08 00:47:46 +0000 Tim-Philipp Müller + + * tests/check/elements/selector.c: + tests: fix up selector test after merge + +2011-12-08 00:39:10 +0000 Tim-Philipp Müller + + Merge remote-tracking branch 'origin/master' into 0.11 + Conflicts: + gst/gstindexfactory.c + libs/gst/base/gstbasetransform.c + plugins/elements/gstfakesink.c + plugins/elements/gstfakesrc.c + plugins/elements/gstidentity.c + plugins/elements/gstinputselector.c + plugins/elements/gstoutputselector.c + Note: did not merge any of the basetransform changes from 0.10. + +2011-12-07 17:57:49 +0000 Vincent Penquerc'h + + * libs/gst/base/gstbaseparse.c: + baseparse: do not use a byte value instead of a time value when bisecting + This fixes FLAC seeking on some FLAC files. + +2011-12-07 11:04:42 +0100 Sebastian Dröge + + * tests/check/elements/selector.c: + selector: Push newsegment events before any buffers are pushed in the unit test + +2011-12-07 11:01:49 +0100 Sebastian Dröge + + * plugins/elements/gstinputselector.c: + inputselector: Don't send a NEWSEGMENT event if a buffer arrived before the segment was configured + +2011-12-07 11:01:31 +0100 Sebastian Dröge + + * plugins/elements/gstoutputselector.c: + outputselector: Don't send last segment/buffer when no segment was configured yet + +2011-12-07 09:50:40 +0100 Sebastian Dröge + + * libs/gst/base/gstbasetransform.c: + basetransform: If suggested caps are not compatible with upstream try to come up with compatible caps + Fixes bug #662199. + +2011-12-06 23:52:53 +0000 Tim-Philipp Müller + + * gst/gstindexfactory.c: + indexfactory: fix memory leak + Introduced by commit bd302bb6 pluginfeature: avoid duplicating feature->name + https://bugzilla.gnome.org/show_bug.cgi?id=459466 + https://bugzilla.gnome.org/show_bug.cgi?id=665703 + +2011-12-06 18:09:13 +0100 Wim Taymans + + * gst/gstpad.c: + * gst/gstpad.h: + pad: put new event probe type next to other event types + +2011-12-05 21:20:52 +0100 Matej Knopp + + * gst/gstpad.c: + * gst/gstpad.h: + Add GST_PAD_PROBE_TYPE_HANDLE_FLUSH + +2011-12-06 14:55:15 +0100 Sebastian Dröge + + * plugins/elements/gstfakesink.c: + fakesink: Make event/buffer verbose output consistent with identity + +2011-12-06 14:55:11 +0100 Sebastian Dröge + + * plugins/elements/gstidentity.c: + identity: Print buffer flags in the verbose output + +2011-12-06 14:53:47 +0100 Sebastian Dröge + + * plugins/elements/gstfakesrc.c: + fakesrc: Make event/buffer verbose output consistent with identity and print buffer flags + +2011-12-06 14:46:46 +0100 Stefan Sauer + + * tests/check/gst/gstpad.c: + tests: don't include glib/gthread.h directly + The g_thread functions are available after including glib.h as per docs. + +2011-12-06 14:23:39 +0100 Stefan Sauer + + * tests/check/libs/controller.c: + controller: port the test to new api as well + +2011-12-06 14:23:12 +0100 Stefan Sauer + + * gst/gstcontrolsource.c: + * gst/gstcontrolsource.h: + * gst/gstobject.c: + * gst/gstobject.h: + controller: fix gpointer vs. gpointer* mess up + +2011-12-06 14:24:15 +0100 Wim Taymans + + * gst/gstpad.c: + * gst/gstpad.h: + * tests/check/gst/gstpad.c: + pad: remove GST_FLOW_RESEND + It is unused and undefined. + +2011-12-06 14:01:50 +0100 Wim Taymans + + * libs/gst/base/gstbasesrc.c: + * libs/gst/base/gstbasesrc.h: + * plugins/elements/gstfakesrc.c: + basesrc: add async start option + Add a method to enable async start behaviour. The subclass can then complete the + start operation from any other thread by caling gst_base_src_start_complete(). + The base class can wait for the start to complete with + gst_base_src_start_wait(). + +2011-12-06 13:58:00 +0100 Wim Taymans + + * tests/check/libs/controller.c: + fix compilation + +2011-12-06 13:47:29 +0100 Wim Taymans + + * plugins/elements/gstfilesrc.c: + filesrc: cleanup error path + +2011-12-06 13:39:05 +0100 Wim Taymans + + * libs/gst/controller/gstinterpolation.c: + fix compilation + +2011-12-06 08:48:57 +0100 Stefan Sauer + + * gst/gstobject.c: + controller: use _OBJECT logging variants more + +2011-12-06 08:35:57 +0100 Stefan Sauer + + * docs/random/porting-to-0.11.txt: + * gst/gstcontrolsource.c: + * gst/gstcontrolsource.h: + * gst/gstobject.c: + * gst/gstobject.h: + * libs/gst/controller/gstinterpolation.c: + * libs/gst/controller/gstlfocontrolsource.c: + * tests/benchmarks/controller.c: + controller: remove GstValueArray + Instead pass the values as arguments. This simplifies that code and helps + bindings. + +2011-12-06 08:35:10 +0100 Stefan Sauer + + * docs/random/porting-to-0.11.txt: + * gst/gstobject.c: + * gst/gstobject.h: + controller: remove gst_object_get_value_arrays + One can easilly loop over the controlled properties manually. This is step 1 in + removing GstValueArray. + +2011-12-04 07:33:32 +0100 Matej Knopp + + * gst/gstpad.c: + correct return value in gst_push_sticky + +2011-12-05 11:07:24 +0100 Wim Taymans + + * gst/gstmessage.h: + * gst/gstquery.h: + make some macros into inline functions + +2011-12-05 10:24:34 +0100 Wim Taymans + + * gst/gstcaps.h: + * gst/gstevent.h: + * libs/gst/base/gsttypefindhelper.c: + make some more macros as inline functions + Make some macros as inline functions for added type checking. + USe new gst_caps_take() in typefind + +2011-12-05 10:23:04 +0100 Wim Taymans + + * docs/gst/gstreamer-sections.txt: + docs: remove some old methods + +2011-12-04 21:19:04 +0000 Tim-Philipp Müller + + * libs/gst/check/gstcheck.h: + check: allow non-joinable threads in private g_thread_create() copy + Looks like some tests use non-joinable threads after all. + +2011-12-04 15:42:07 +0000 Tim-Philipp Müller + + * docs/gst/gstreamer-sections.txt: + docs: remove removed tag list functions from docs as well + +2011-12-04 15:38:09 +0000 Tim-Philipp Müller + + Merge remote-tracking branch 'origin/master' into 0.11 + Conflicts: + gst/gstobject.h + libs/gst/check/gstcheck.h + libs/gst/controller/gstcontroller.c + plugins/elements/gstidentity.c + tools/gst-xmlinspect.c + +2011-12-04 14:38:26 +0000 Tim-Philipp Müller + + * gst/gstbin.c: + * gst/gstelement.c: + * gst/gstpad.c: + * gst/gsttask.c: + * gst/gstutils.c: + * libs/gst/base/gstbaseparse.c: + * libs/gst/base/gstbasesink.c: + * libs/gst/base/gstbasesrc.c: + * libs/gst/base/gstbasetransform.c: + * libs/gst/base/gstcollectpads2.c: + * plugins/elements/gstmultiqueue.c: + Suppress deprecation warnings in selected files, for g_static_rec_mutex_* mostly + GStaticRecMutex is part of our API/ABI, not much we can do here in 0.10. + +2011-12-04 13:35:38 +0000 Tim-Philipp Müller + + * gst/glib-compat-private.h: + * gst/gstbus.c: + * gst/gstclock.c: + * gst/gstelement.c: + * gst/gstobject.h: + * gst/gsttask.c: + * libs/gst/base/gstbaseparse.c: + * libs/gst/base/gstbasesrc.c: + * libs/gst/base/gstbasetransform.c: + * libs/gst/base/gstcollectpads.c: + * libs/gst/base/gstcollectpads2.c: + * libs/gst/base/gstdataqueue.c: + * libs/gst/check/gstcheck.h: + * libs/gst/controller/gstcontroller.c: + * libs/gst/controller/gstinterpolationcontrolsource.c: + * libs/gst/controller/gstlfocontrolsource.c: + * plugins/elements/gstinputselector.c: + * plugins/elements/gstqueue.c: + * plugins/elements/gstqueue2.c: + * plugins/elements/gsttee.c: + Work around deprecated thread API in glib master + Add private replacements for deprecated functions such as + g_mutex_new(), g_mutex_free(), g_cond_new() etc., mostly + to avoid the deprecation warnings. We can't change most of + these in 0.10 because they're part of our API and ABI. + +2011-12-04 13:09:53 +0000 Tim-Philipp Müller + + * tests/benchmarks/gstbufferstress.c: + * tests/benchmarks/gstclockstress.c: + * tests/benchmarks/gstpollstress.c: + benchmarks: g_thread_create() is deprecated in GLib master, use g_thread_try_new() instead + +2011-12-04 13:04:35 +0000 Tim-Philipp Müller + + * libs/gst/net/gstnetclientclock.c: + * libs/gst/net/gstnettimeprovider.c: + net: initialise GError variables to NULL + +2011-12-04 11:43:10 +0100 Edward Hervey + + * win32/common/libgstreamer.def: + win32: Update defs files + +2011-12-04 11:42:39 +0100 Edward Hervey + + * gst/gstquery.c: + gstquery: Fix unitialized variable + +2011-12-04 11:32:57 +0100 Edward Hervey + + * gst/gstsegment.c: + gstsegment: Initialize with proper type + +2011-12-03 17:40:53 +0000 Tim-Philipp Müller + + * gst/gst.c: + * libs/gst/helpers/gst-plugin-scanner.c: + * tools/gst-inspect.c: + * tools/gst-launch.c: + * tools/gst-typefind.c: + * tools/gst-xmlinspect.c: + g_thread_init() is deprecated in glib master + It's not needed any longer. + +2011-12-03 16:02:36 +0000 Tim-Philipp Müller + + * gst/gsttagsetter.c: + tagsetter: update for thread API deprecations in glib master + +2011-12-03 15:36:58 +0000 Tim-Philipp Müller + + * gst/gsttaglist.c: + taglist: update for thread API deprecations in glib master + +2011-12-03 15:18:21 +0000 Tim-Philipp Müller + + * gst/gsttaglist.c: + * gst/gsttaglist.h: + taglist: remove gst_tag_list_get_{char,uchar} + Those are unused and should never be used anywhere anyway + really. + +2011-12-03 14:06:58 +0000 Tim-Philipp Müller + + * docs/gst/gstreamer-sections.txt: + docs: remove some macros that no longer exist + +2011-12-03 13:58:51 +0000 Tim-Philipp Müller + + * gst/gstsystemclock.c: + * libs/gst/check/gstcheck.h: + * libs/gst/net/gstnetclientclock.c: + * libs/gst/net/gstnettimeprovider.c: + g_thread_create() is deprecated in GLib master, use g_thread_try_new() instead + +2011-12-03 07:06:11 +0100 Wim Taymans + + * libs/gst/base/gstbasesink.c: + basesink: use dts and pts for sync + First use DTS, then fall back to PTS for synchronization. + +2011-12-03 07:01:45 +0100 Wim Taymans + + * libs/gst/base/gstbasesink.c: + basesink: small cleanups + +2011-12-03 06:45:26 +0100 Wim Taymans + + * libs/gst/base/gstbasesink.c: + basesink: merge preroll functions + Inline a function that is only called from one place to make things a little + easier to follow. + +2011-12-03 06:29:42 +0100 Wim Taymans + + * libs/gst/base/gstbasesink.c: + basesink: more cleanups + Don't pass around the object type, we can find that very efficiently from the + object itself now. + +2011-12-02 23:13:23 +0100 Wim Taymans + + * libs/gst/base/gstbasesink.c: + basesink: clean up method names + +2011-12-02 22:50:55 +0100 Wim Taymans + + * libs/gst/base/gstbasesink.c: + basesink: merge render_object into chain + Merge the render_object code with the chain method. It is only called from there + and there are quite a few variables that can be reused to makes things less + confusing. + +2011-12-02 22:36:38 +0100 Wim Taymans + + * libs/gst/base/gstbasesink.c: + basesink: remove obsolete code + Remove some more code now that the render_object ethod is only + called with buffers or bufferlsts. + +2011-12-02 22:20:08 +0100 Wim Taymans + + * libs/gst/base/gstbasesink.c: + * libs/gst/base/gstbasesink.h: + * plugins/elements/gstfakesink.c: + * plugins/elements/gstfdsink.c: + * plugins/elements/gstfilesink.c: + basesink: clean up event handling + Add new wait_eos vmethod to wait for the eos timeout before posting the EOS + message on the bus. + Add default event handler. Move the default event actions in there. Call the + event vmethod from the pad event handler. Subclasses are now supposed to chain + up to the parent event handler or unref the event and do their own thing. + Avoid passing unused parameters to functions. + +2011-12-02 13:19:38 +0100 Mark Nauwelaerts + + * plugins/elements/gstidentity.c: + identity: unlock clock wait when appropriate + ... notably FLUSH and state change to READY. + +2011-12-02 13:35:58 +0100 Wim Taymans + + * libs/gst/base/gstbasesink.c: + basesink: small cleanup + Avoid passing around the segment. + +2011-12-02 13:28:18 +0100 Wim Taymans + + * libs/gst/base/gstbasesink.c: + * libs/gst/base/gstbasesink.h: + basesink: remove clip_segment + We only need one segment now that the preroll queue is gone. + +2011-12-02 12:42:50 +0100 Wim Taymans + + * libs/gst/base/gstbasesink.c: + basesink: more cleanups + Remove some unneeded functions, inline the code. + Remove the queue_object functions, we can proceed with the rendering + immediately. + +2011-12-02 12:20:02 +0100 Wim Taymans + + * libs/gst/base/gstbasesink.c: + * libs/gst/base/gstbasesink.h: + basesink: remove obsolete code + Remove the preroll queue and proceed directly to the rendering of objects. + +2011-12-01 23:35:26 +0000 Tim-Philipp Müller + + Merge remote-tracking branch 'origin/master' into 0.11 + Conflicts: + gst/gstbus.c + gst/gstevent.c + libs/gst/base/gstbasetransform.c + +2011-12-01 18:50:32 +0100 Wim Taymans + + * gst/gsttaglist.c: + * gst/gsttaglist.h: + taglist: make some tags of type GstSample + Make the image and attachment tags of type GstSample so that we can include + extra caps and info along with the buffer data. + +2011-12-01 18:49:34 +0100 Wim Taymans + + * gst/gstsample.c: + * gst/gstsample.h: + sample: remove const + The writability of the structure is ensured by the refcount of the parent + miniobject and we're fine if the parent is writable. + +2011-12-01 16:46:06 +0100 Wim Taymans + + * docs/libs/gstreamer-libs-sections.txt: + * libs/gst/base/gstbasesink.c: + * libs/gst/base/gstbasesink.h: + * tests/check/libs/basesink.c: + * win32/common/libgstbase.def: + basesink: last-buffer -> last-sample + Rename the last-buffer property to last-sample and make it return the new + GstSample type so that we can include caps and timing info in one nice bundle. + +2011-12-01 16:37:46 +0100 Wim Taymans + + * gst/Makefile.am: + * gst/gst.c: + * gst/gst.h: + * gst/gst_private.h: + * gst/gstsample.c: + * gst/gstsample.h: + * win32/common/libgstreamer.def: + sample: add new sample miniobject + Add a new simple miniobject that is a combination of a GstBuffer, GstCaps, + GstSegment and other arbitrary info organized in a GstStructure. This object can + be used to exchange samples between an element and the application or for + storing album art in tags etc. + +2011-12-01 16:25:07 +0100 Stefan Sauer + + * gst/gstbus.c: + bus: use GST_MESSAGE_SOURCE_NAME() which also takes care of src=NULL. + +2011-12-01 15:35:26 +0100 Wim Taymans + + * libs/gst/base/gstbasetransform.c: + basetrans: add some more debug + +2011-12-01 15:35:02 +0100 Wim Taymans + + * libs/gst/base/gstbasesrc.c: + basesrc: add some more debug + +2011-12-01 15:34:06 +0100 Wim Taymans + + * gst/gstbuffer.c: + * gst/gstbuffer.h: + buffer: add copy flag for meta + Add a flag to control if the meta should be copied or not instead of always + copying. + +2011-11-29 19:08:41 +0100 Wim Taymans + + * libs/gst/base/gstbasesink.c: + basesink: remove old property + +2011-11-30 13:59:46 +0100 Sebastian Dröge + + * libs/gst/base/gstbasetransform.c: + basetransform: Always intersect the suggested sink caps with the peer caps + This makes sure that we get correct and complete caps. The suggested caps + could be incomplete, e.g. video/x-raw-rgb without any fields, and by + intersecting with the peer caps we get something usable. + Fixes bug #662199. + +2011-11-30 12:39:34 +0000 Tim-Philipp Müller + + * gst/gstinfo.h: + info: move FIXME log level after WARNING + So it's now ERROR < WARNING < FIXME < INFO and *:5 becomes *:6. + +2011-11-30 00:24:32 +0000 Tim-Philipp Müller + + * gst/gstevent.c: + event: warn and fail instead of creating newsegment events in GST_FORMAT_UNDEFINED + +2011-11-29 15:53:01 +0100 Wim Taymans + + * gst/gstbin.c: + bin: keep the element flags up-to-date + Keep the require/provide_clock flags up to date. + +2011-11-29 11:47:34 +0100 Edward Hervey + + * plugins/elements/gstqueue.c: + queue: source and sink pads proxy caps + +2011-11-28 21:15:31 +0000 Tim-Philipp Müller + + Merge remote-tracking branch 'origin/master' into 0.11 + +2011-11-28 18:23:41 +0100 Wim Taymans + + * libs/gst/base/gstbaseparse.c: + update for indexable change + +2011-11-28 18:12:34 +0100 Wim Taymans + + * gst/gstelement.c: + * gst/gstelement.h: + * tools/gst-inspect.c: + * win32/common/libgstreamer.def: + element: add indexable flag + Remove the is_indexable method check and use an element flag to check if the + element can use an index. + +2011-11-28 17:50:17 +0100 Wim Taymans + + * win32/common/libgstreamer.def: + defs: update + +2011-11-28 17:22:44 +0100 Wim Taymans + + * gst/gstbin.c: + * gst/gstelement.c: + * gst/gstelement.h: + * tools/gst-inspect.c: + element: use flags for require/provide clock + Remove the _require/_provide_clock() methods and use element flags to mark + elements instead of looking at the implementation of the vmethod. + +2011-11-28 16:54:55 +0100 Wim Taymans + + * gst/gstbin.c: + * gst/gstelement.c: + * gst/gstelement.h: + * libs/gst/base/gstbasesink.c: + * libs/gst/base/gstbasesrc.c: + * tests/check/gst/gstbin.c: + element: clean up element flags + Clean up the element flags + +2011-11-28 15:35:21 +0100 Wim Taymans + + * gst/gstevent.c: + event: add sticky custom quark + +2011-11-28 14:24:16 +0100 Wim Taymans + + * gst/gstcaps.c: + * gst/gstcaps.h: + caps: _CAPS_FLAGS_ -> CAPS_FLAG_ + +2011-11-28 12:30:15 +0000 Vincent Penquerc'h + + * gst/gstelement.c: + * gst/gstelement.h: + * win32/common/libgstreamer.def: + gstelement: add gst_element_class_add_pad_template_from_static + This function helps ensure the pad template is unreffed + without having to complicate the calling code. + https://bugzilla.gnome.org/show_bug.cgi?id=662664 + +2011-11-28 13:54:43 +0100 Wim Taymans + + * gst/gstpad.c: + pad: Handle sticky event errors + Use GstFlowReturn to internally pass events between pads. + When we sticky events cause an error, translate this error into a GstFlowReturn. + Caps events will, for example, generate a NOT_NEGOTIATED return when the event + function returns an error. + This allows us then to refuse sending buffers if one of the sticky events is + refused and generate a correct error return value. + +2011-11-28 13:52:00 +0100 Wim Taymans + + * tests/check/elements/fakesrc.c: + * tests/check/elements/fdsrc.c: + tests: don't return FALSE from events + Returning FALSE from the event handler shuts down the sender. + +2011-11-28 13:51:11 +0100 Wim Taymans + + * tests/check/gst/gstpad.c: + test: fix refcount error + +2011-11-28 11:15:27 +0100 Edward Hervey + + * gst/gstmeta.c: + gstmeta: Some more docs + +2011-11-28 10:55:28 +0100 Wim Taymans + + * gst/gstevent.h: + event: add custom downstream sticky event + +2011-11-28 01:12:48 +0000 Tim-Philipp Müller + + * plugins/elements/gstqueue2.c: + queue2: fix up comment after merge from 0.10 + +2011-11-28 01:11:47 +0000 Tim-Philipp Müller + + Merge remote-tracking branch 'origin/master' into 0.11 + +2011-11-28 01:10:20 +0000 Tim-Philipp Müller + + * plugins/elements/gstqueue2.c: + queue2: fix refactoring of draining-on-eos, munge flow return to FLOW_OK + +2011-11-28 01:00:28 +0000 Tim-Philipp Müller + + * plugins/elements/gstqueue2.c: + queue2: fix up new bufferlist code for 0.11 + +2011-11-28 00:40:55 +0000 Tim-Philipp Müller + + Merge remote-tracking branch 'origin/master' into 0.11 + Conflicts: + plugins/elements/gstqueue2.c + +2011-11-03 10:34:49 +0000 Tim-Philipp Müller + + * plugins/elements/gstqueue2.c: + queue2: add bufferlist support + We want to maintain buffer lists if possible. + +2011-11-03 13:02:36 +0000 Tim-Philipp Müller + + * plugins/elements/gstqueue2.c: + queue2: split out draining of queue on FLOW_UNEXPECTED into separate function + +2011-11-03 08:55:20 +0000 Tim-Philipp Müller + + * plugins/elements/gstqueue2.c: + queue2: pass item type enum to _enqueue instead of simple isbuffer boolean + Avoids some unnecessary GST_IS_EVENT() + +2011-11-27 20:32:14 +0100 Matej Knopp + + * gst/gstcaps.h: + caps: fix compilation warning + GST_STATIC_CAPS is missing initializer for GstMiniObject's n_weak_refs and + weak_refs resulting in compilation warning (llvm-gcc -Wall) + https://bugzilla.gnome.org/show_bug.cgi?id=664927 + +2011-11-27 22:26:12 +0000 Tim-Philipp Müller + + Merge remote-tracking branch 'origin/master' into 0.11 + +2011-11-27 20:36:31 +0100 Stefan Sauer + + * gst/gstbin.c: + * gst/gstelement.c: + * tools/gst-inspect.c: + * tools/gst-xmlinspect.c: + warnings: avoid set-but-unused warnings with load-save disabled + +2011-11-26 17:34:12 +0100 Matej Knopp + + * libs/gst/base/gstbaseparse.c: + baseparse: fix broken default caps query + https://bugzilla.gnome.org/show_bug.cgi?id=664880 + +2011-11-26 19:51:37 +0000 Tim-Philipp Müller + + Merge remote-tracking branch 'origin/master' into 0.11 + +2011-11-26 19:45:48 +0000 Tim-Philipp Müller + + * gst/gsturi.h: + uri: fix wrong G_GNUC_MALLOC + _get_protocols() points to const memory in 0.10 + despite the non-const return value. + +2011-11-26 19:44:23 +0000 Tim-Philipp Müller + + Merge remote-tracking branch 'origin/master' into 0.11 + Conflicts: + gst/gstbuffer.h + gst/gstbufferlist.h + gst/gstcaps.h + gst/gstdatetime.h + gst/gstelementfactory.h + gst/gstevent.h + gst/gstghostpad.h + gst/gstindexfactory.h + gst/gstiterator.h + gst/gstmessage.h + gst/gstminiobject.h + gst/gstpipeline.h + gst/gstquery.h + gst/gstsegment.h + gst/gststructure.h + gst/gsttaglist.h + gst/gsturi.h + gst/gstvalue.h + libs/gst/base/gstbitreader.h + libs/gst/base/gstbytereader.h + libs/gst/base/gstbytewriter.h + Note: can't use G_GNUC_MALLOC with GstCaps return + values in 0.11 because of the EMPTY+ANY singletons. + +2011-11-26 18:58:38 +0000 Tim-Philipp Müller + + * libs/gst/base/gstadapter.h: + * libs/gst/base/gstbitreader.h: + * libs/gst/base/gstbytereader.h: + * libs/gst/base/gstbytewriter.h: + * libs/gst/base/gstdataqueue.h: + libs: sprinkle some G_GNUC_MALLOC + Maybe gcc can do something clever with that, or at least + warn us if we don't save the return value somewhere. + +2011-11-26 18:57:44 +0000 Tim-Philipp Müller + + * gst/gstatomicqueue.h: + * gst/gstbuffer.h: + * gst/gstbufferlist.h: + * gst/gstcaps.h: + * gst/gstdatetime.h: + * gst/gstelementfactory.h: + * gst/gstevent.h: + * gst/gstghostpad.h: + * gst/gstindexfactory.h: + * gst/gstiterator.h: + * gst/gstmessage.h: + * gst/gstminiobject.h: + * gst/gstpadtemplate.h: + * gst/gstparamspecs.h: + * gst/gstparse.h: + * gst/gstpipeline.h: + * gst/gstpluginfeature.h: + * gst/gstpoll.h: + * gst/gstpreset.h: + * gst/gstquery.h: + * gst/gstsegment.h: + * gst/gststructure.h: + * gst/gsttaglist.h: + * gst/gsturi.h: + * gst/gstvalue.h: + gst: sprinkle some G_GNUC_MALLOC + Maybe gcc can do something clever with that, or at least + warn us if we don't save the return value somewhere. + +2011-11-25 23:54:57 +0000 Tim-Philipp Müller + + Merge remote-tracking branch 'origin/master' into 0.11 + +2011-11-25 23:15:23 +0100 Stefan Sauer + + * docs/random/porting-to-0.11.txt: + docs: update porting docs. + +2011-11-16 01:04:45 +0000 Tim-Philipp Müller + + * docs/gst/gstreamer-sections.txt: + * gst/gstbuffer.c: + * gst/gstbuffer.h: + * tests/check/gst/gstbuffer.c: + * win32/common/libgstreamer.def: + buffer: add gst_buffer_{set,get}_qdata() + Allows people/us to attach arbitrary metadata to buffers. + https://bugzilla.gnome.org/show_bug.cgi?id=664720 + API: gst_buffer_set_qdata() + API: get_buffer_get_qdata() + +2011-11-25 07:11:24 +0100 Wim Taymans + + * gst/gstpad.c: + * tests/check/gst/gstpad.c: + pad: fix blocking probe emission + If we are dealing with a blocking probe, only then check if one the + blocking flags of the hook matches. + Add some more debug. + Make the pad unit test less racy. + +2011-11-24 17:47:09 +0100 Matej Knopp + + * tests/check/gst/gstpad.c: + Add test for PAD_PROBE_TYPE_BLOCK and PAD_PROBE_TYPE_BLOCKING + +2011-11-25 05:54:09 +0100 Wim Taymans + + * gst/gstutils.c: + utils: fix debug of query result + +2011-11-24 22:52:19 +0100 René Stadler + + * gst/gstquery.c: + query: fix typo in doc + Causes a warning from the introspection scanner. + +2011-11-24 21:36:12 +0100 René Stadler + + * libs/gst/check/gstcheck.c: + * libs/gst/check/gstcheck.h: + * tests/check/elements/capsfilter.c: + * tests/check/elements/fakesrc.c: + * tests/check/elements/fdsrc.c: + * tests/check/elements/filesink.c: + * tests/check/elements/filesrc.c: + * tests/check/elements/identity.c: + * tests/check/elements/queue.c: + * tests/check/elements/selector.c: + check: drop caps argument from gst_check_setup_{src,sink}_pad + Calling set_caps at that point is not useful in 0.10 (FIXME comment!), and in + 0.11 it is totally pointless: the caps event doesn't stick to a flushing pad. + +2011-11-24 14:07:14 +0100 René Stadler + + * win32/common/libgstbase.def: + defs: update for byte_writer_put_buffer + +2011-11-24 11:23:07 +0100 Sebastian Dröge + + Merge branch 'master' into 0.11 + Conflicts: + gst/gstpad.c + libs/gst/base/gstbaseparse.c + +2011-11-24 11:15:29 +0100 Sebastian Dröge + + * gst/gstpad.c: + pad: Remove g_warning() if pad accepted caps that are not a subset of the pad caps + This check is correct but unfortunately it's impossible to implement + in a threadsafe way because the caps could have changed in the meantime. + Fixes bug #659606. + +2011-10-03 12:34:20 +0100 Vincent Penquerc'h + + * plugins/elements/gstmultiqueue.c: + multiqueue: check filled state of queues even if another one is empty + This will avoid a case where overrun is never signalled if some + stream never produces any data, causing playbin2 to not end preroll. + https://bugzilla.gnome.org/show_bug.cgi?id=660778 + +2011-11-24 09:31:14 +0100 Edward Hervey + + * tests/check/gst/gstpad.c: + tests: Check for dataflow with incompatible caps + This test currently fails, but is there to ensure we fix this issue + and keep it fixed, since it completely breaks delayed negotiation + use-cases. + This behaviour started breaking since + dd65aae9a177f7b11dcef0f690a78d698f667cd4 + +2011-11-24 09:31:02 +0100 Edward Hervey + + * tests/check/gst/gstpad.c: + tests: Add comments to gstpad tests + +2011-11-24 09:30:14 +0100 Edward Hervey + + * tests/check/gst/gstpad.c: + tests: Remove "#if 0" block for behaviour that now works + +2011-11-24 09:28:32 +0100 Edward Hervey + + * tests/check/gst/gstpad.c: + tests: Remove commented block + This behaviour is actually tested in test_push_unlinked + +2011-11-24 01:06:52 +0000 Tim-Philipp Müller + + * tools/gst-inspect.c: + tools: make gst-inspect print a nasty debug message for non-grata property type + Try to eradicate properties of long/ulong/char/uchar type. + +2011-11-23 17:50:17 +0100 Wim Taymans + + * gst/gstevent.h: + * gst/gstpad.c: + * gst/gstpad.h: + * plugins/elements/gstoutputselector.c: + * plugins/elements/gsttee.c: + event: add STICKY_MULTY events + Add a new event flag for sticky events so that multiple events of that type can + be stored on a pad at the same time. Change the _get_sticky_event() function to + loop over the multiple events of a type. + Change the foreach function to make it possible to removed and modify the sticky + events on a pad. + Use an variable size array now to store the events. This could later be + optimized some more. + +2011-11-23 17:39:43 +0100 Wim Taymans + + * gst/gstbus.c: + bus: handle NULL message src in debug + +2011-11-23 17:38:24 +0100 Wim Taymans + + * gst/gstbufferlist.c: + bufferlist: avoid reading past the array + When the foreach function told us to remove the buffer from the list, decrease + the length of the array or else we might read past the last item in the array. + +2011-11-23 13:42:56 +0100 Sebastian Dröge + + * libs/gst/base/gstbaseparse.c: + baseparse: Return template caps instead of other side's peer caps if get_sink_caps vfunc is not implemented + Using gst_pad_proxy_get_caps() breaks backwards compatibility with old + parsers because it will propagate the other side's fields like "parsed" + and "framed" and also breaks parser/converters. + Fixes bug #664221. + +2011-11-23 11:03:19 +0100 René Stadler + + * libs/gst/base/gstbytewriter.c: + * libs/gst/base/gstbytewriter.h: + bytewriter: add method to write out a buffer + In 0.10, this can be done with a one-liner by using GST_BUFFER_DATA/SIZE with + put_data. A 0.11 user has to resort to gst_buffer_map, which is less convenient + and might require a memcpy internally. + API: gst_byte_writer_put_buffer() + +2011-11-23 08:17:36 +0100 Wim Taymans + + * gst/gstpad.c: + pad: take peerpad correctly + Don't take the peerpad too early, it might change because of the + probes. + +2011-11-22 18:32:51 +0100 Wim Taymans + + * gst/gstpad.c: + * gst/gstpad.h: + pad: rework sticky events + Rewrite sticky events, trying to make it a bit more simple. + When sticky events are pushed on a srcpad, store them in the sticky event + array and mark the event with received = FALSE. + When the sticky event is successfully sent to the peer pad, make + received = TRUE. + Keep a PENDING_EVENTS pad flag that is set when one of the events is in + the received = FALSE state for some reason. + when activating a sinkpad, mark all events received = FALSE on the peer + srcpad. + When pushing a buffer, check the PENDING_EVENTS flag and if it is set, push all + events to the peer pad first. + +2011-11-22 18:32:23 +0100 Wim Taymans + + * libs/gst/base/gstbaseparse.c: + baseparse: also let caps events go through + +2011-11-22 16:43:34 +0100 Wim Taymans + + * gst/gst.c: + gst: add new flags + +2011-11-21 18:56:19 +0100 Matej Knopp + + * libs/gst/base/gstadapter.c: + * libs/gst/base/gstadapter.h: + adapter: fix return type of _map() to gconstpointer + Fixes compiler warnings on OSX: + gstadapter.h:82: warning: type qualifiers ignored on function return type + gstadapter.c:412: warning: type qualifiers ignored on function return type + const gpointer is not the same as gconstpointer or const void *. + https://bugzilla.gnome.org/show_bug.cgi?id=664491 + +2011-11-22 12:46:39 +0100 Wim Taymans + + * win32/common/libgstbase.def: + * win32/common/libgstreamer.def: + defs: update defs files + +2011-11-22 12:45:41 +0100 Wim Taymans + + * gst/gstbuffer.h: + * gst/gstevent.h: + padd return value from _mini_object_replace() + +2011-11-21 18:56:19 +0100 Matej Knopp + + * gst/gstutils.c: + * libs/gst/base/gstbasesrc.c: + * plugins/elements/gstqueue2.c: + Fix printf format compiler warnings on OSX/64bit + https://bugzilla.gnome.org/show_bug.cgi?id=664491 + +2011-11-21 17:46:45 +0100 Wim Taymans + + * tests/check/gst/gstpad.c: + tests: improve pad tests + +2011-11-21 17:43:51 +0100 Wim Taymans + + * gst/gstpad.c: + pad: fix locking order error + +2011-11-21 17:43:04 +0100 Wim Taymans + + * gst/gstghostpad.c: + ghostpad: fix print format + +2011-11-21 15:47:01 +0100 Wim Taymans + + * docs/gst/gstreamer-sections.txt: + * gst/gstpad.c: + * gst/gstpad.h: + pad: Add destroy notify to pad functions + Add _full variants of the pad function setters that take a destroy notify. + Make some macros that make the old method name pass NULL to this new + function. + +2011-11-21 13:29:05 +0100 Wim Taymans + + * docs/gst/gstreamer-sections.txt: + * gst/gstghostpad.c: + * gst/gstghostpad.h: + * gst/gstpad.c: + * gst/gstpad.h: + * libs/gst/base/gstbaseparse.c: + * libs/gst/base/gstbasesink.c: + * libs/gst/base/gstbasesrc.c: + * libs/gst/base/gstbasetransform.c: + * plugins/elements/gstmultiqueue.c: + * plugins/elements/gstqueue.c: + * plugins/elements/gstqueue2.c: + * plugins/elements/gsttee.c: + * plugins/elements/gsttypefindelement.c: + * tests/check/elements/filesrc.c: + pad: Merge pad mode activation functions + Add the pad mode to the activate function so that we can reuse the same function + for all activation modes. This makes the core logic smaller and allows for some + elements to make their activation code easier. It would allow us to add more + scheduling modes later without having to add more activate functions. + +2011-11-18 18:08:21 +0100 Wim Taymans + + * docs/design/part-scheduling.txt: + * gst/gstquery.c: + docs: update design doc + also fix default alignment value (0 == no-alignment) + +2011-11-18 17:27:16 +0100 Wim Taymans + + * gst/gstpad.h: + * gst/gstquark.c: + * gst/gstquark.h: + * gst/gstquery.c: + * gst/gstquery.h: + * libs/gst/base/gstbaseparse.c: + * libs/gst/base/gstbasesink.c: + * libs/gst/base/gstbasesrc.c: + * libs/gst/base/gstpushsrc.c: + * plugins/elements/gstqueue2.c: + * plugins/elements/gsttypefindelement.c: + query: improve scheduling query + Turns some boolean arguments in the scheduling query to flags, which are easier + to extend and makes the code easier to read. + Make extra methods for configuring and querying the supported scheduling modes. + This should make it easier to add new modes later. + +2011-11-18 14:08:45 +0100 Wim Taymans + + * gst/gstquery.h: + query: move flags closer to buffering query + +2011-11-18 13:46:46 +0100 Wim Taymans + + * gst/gstghostpad.c: + * gst/gstghostpad.h: + * gst/gstpad.c: + * gst/gstpad.h: + * libs/gst/base/gstbaseparse.c: + * libs/gst/base/gstbasesink.c: + * libs/gst/base/gstbasesrc.c: + * libs/gst/base/gstbasetransform.c: + * plugins/elements/gstmultiqueue.c: + * plugins/elements/gstqueue.c: + * plugins/elements/gstqueue2.c: + * plugins/elements/gsttee.c: + * plugins/elements/gsttypefindelement.c: + pad: add parent to activate functions + +2011-11-18 12:35:46 +0100 Wim Taymans + + * docs/gst/gstreamer-sections.txt: + * docs/random/porting-to-0.11.txt: + * gst/gst.c: + * gst/gstpad.c: + * gst/gstpad.h: + * libs/gst/base/gstbaseparse.c: + * libs/gst/base/gstbasesink.c: + * libs/gst/base/gstbasesink.h: + * libs/gst/base/gstbasesrc.c: + * libs/gst/base/gstbasetransform.c: + * plugins/elements/gsttee.c: + * plugins/elements/gsttee.h: + pad: fix scheduling mode enums + GstPadActivateMode -> GstPadMode + GST_PAD_ACTIVATE_* -> GST_PAD_MODE_* + +2011-11-17 16:14:34 +0100 Wim Taymans + + * libs/gst/base/gsttypefindhelper.c: + * libs/gst/base/gsttypefindhelper.h: + * plugins/elements/gsttypefindelement.c: + typefind: fix for new getrange method signature + gst_type_find_helper_get_range_ext -> gst_type_find_helper_get_range + +2011-11-17 12:40:45 +0100 Wim Taymans + + * gst/gstghostpad.c: + * gst/gstghostpad.h: + * gst/gstpad.c: + * gst/gstpad.h: + * libs/gst/base/gstbaseparse.c: + * libs/gst/base/gstbasesink.c: + * libs/gst/base/gstbasesrc.c: + * libs/gst/base/gstbasetransform.c: + * libs/gst/base/gstcollectpads.c: + * libs/gst/base/gstcollectpads2.c: + * libs/gst/check/gstcheck.c: + * libs/gst/check/gstcheck.h: + * plugins/elements/gstfunnel.c: + * plugins/elements/gstidentity.c: + * plugins/elements/gstinputselector.c: + * plugins/elements/gstmultiqueue.c: + * plugins/elements/gstoutputselector.c: + * plugins/elements/gstqueue.c: + * plugins/elements/gstqueue.h: + * plugins/elements/gstqueue2.c: + * plugins/elements/gsttee.c: + * plugins/elements/gsttypefindelement.c: + * plugins/elements/gstvalve.c: + * tests/check/elements/fakesrc.c: + * tests/check/elements/fdsrc.c: + * tests/check/elements/filesrc.c: + * tests/check/elements/funnel.c: + * tests/check/elements/identity.c: + * tests/check/elements/multiqueue.c: + * tests/check/elements/queue.c: + * tests/check/elements/tee.c: + * tests/check/elements/valve.c: + * tests/check/gst/gstpad.c: + * tests/check/libs/test_transform.c: + pad: add parent to other functions + Add parent to chain, chain_list, getrange and event functions. + +2011-11-17 08:21:05 +0100 Stefan Sauer + + * docs/libs/gstreamer-libs-sections.txt: + * libs/gst/base/gstcollectpads.c: + * libs/gst/base/gstcollectpads.h: + * tests/check/libs/collectpads.c: + collectpads: move fields out of reserved and restore padding + Do the 0.11 ABI changes. Add extra fields for destroy_notify and drop the qdata + hack. Rename _add_pad_full to _add_pad and remove the old _add_pad. + +2011-11-16 17:49:46 +0100 Wim Taymans + + * gst/gstghostpad.c: + * gst/gstghostpad.h: + * gst/gstpad.c: + * gst/gstpad.h: + * plugins/elements/gstinputselector.c: + * plugins/elements/gstmultiqueue.c: + add parent to internal links + +2011-11-16 17:22:56 +0100 Wim Taymans + + * gst/gstghostpad.c: + * gst/gstghostpad.h: + * gst/gstpad.c: + * gst/gstpad.h: + * libs/gst/base/gstbaseparse.c: + * libs/gst/base/gstbasesink.c: + * libs/gst/base/gstbasesrc.c: + * libs/gst/base/gstbasetransform.c: + * plugins/elements/gstfdsink.c: + * plugins/elements/gstfunnel.c: + * plugins/elements/gstinputselector.c: + * plugins/elements/gstmultiqueue.c: + * plugins/elements/gstoutputselector.c: + * plugins/elements/gstqueue.c: + * plugins/elements/gstqueue2.c: + * plugins/elements/gsttee.c: + * plugins/elements/gsttypefindelement.c: + * plugins/elements/gstvalve.c: + * tests/check/elements/multiqueue.c: + pad: add parent to the query function + +2011-11-16 12:36:51 +0100 Wim Taymans + + * docs/random/porting-to-0.11.txt: + * gst/gstdebugutils.c: + * gst/gstelement.c: + * gst/gstpad.c: + * gst/gstpad.h: + * gst/gstutils.c: + * libs/gst/base/gstbasetransform.c: + * plugins/elements/gstinputselector.c: + * plugins/elements/gstmultiqueue.c: + * plugins/elements/gstqueue2.c: + * plugins/elements/gsttee.c: + GstPadFlags: rename flags GST_PAD_* -> GST_PAD_FLAG_* + +2011-11-16 12:10:55 +0100 Wim Taymans + + * plugins/elements/gstfunnel.c: + * plugins/elements/gstinputselector.c: + * plugins/elements/gstmultiqueue.c: + * plugins/elements/gstoutputselector.c: + * plugins/elements/gstqueue.c: + * plugins/elements/gstqueue2.c: + * plugins/elements/gsttee.c: + * plugins/elements/gstvalve.c: + plugins: remove obsolete parent checks + +2011-11-16 12:08:22 +0100 Wim Taymans + + * gst/gstelement.c: + * gst/gstpad.c: + * gst/gstpad.h: + pad: keep the parent alive when requested + Add a new pad flag NEED_PARENT that ensures that the parent of a pad is + reffed and not NULL when the event, query and internal links functions + are called. + When a pad is added to an element automatically make sure the NEED_PARENT flag + is enabled. + +2011-11-16 10:29:47 +0100 Wim Taymans + + * gst/gstutils.c: + don't require parent element to proxy + +2011-11-16 10:16:55 +0100 Wim Taymans + + * docs/random/porting-to-0.11.txt: + update porting doc + +2011-11-15 18:16:24 +0100 Wim Taymans + + * docs/gst/gstreamer-sections.txt: + * gst/gstpad.c: + * gst/gstpad.h: + * gst/gstutils.c: + * gst/gstutils.h: + pad: move query convenience functions together + Move the caps convenience functions to the other query functions. + +2011-11-15 17:50:34 +0100 Wim Taymans + + * docs/gst/gstreamer-sections.txt: + * gst/gstutils.c: + * gst/gstutils.h: + * libs/gst/base/gstbaseparse.c: + * libs/gst/base/gstbasesink.c: + * plugins/elements/gstqueue2.c: + _query_peer_*() -> _peer_query_*() + +2011-11-15 17:40:19 +0100 Wim Taymans + + * docs/gst/gstreamer-sections.txt: + * gst/gstpad.c: + * gst/gstpad.h: + * libs/gst/base/gstbasetransform.c: + * plugins/elements/gstcapsfilter.c: + _accept_caps() -> _query_accept_caps() + +2011-11-15 17:11:46 +0100 Wim Taymans + + * gst/gstpad.c: + * gst/gstpad.h: + * libs/gst/base/gstbasesrc.c: + * libs/gst/base/gstbasetransform.c: + * tests/check/elements/selector.c: + _peer_get_caps() -> peer_query_caps() + +2011-11-15 16:46:37 +0100 Wim Taymans + + * docs/gst/gstreamer-sections.txt: + * docs/manual/advanced-autoplugging.xml: + * docs/manual/highlevel-components.xml: + * gst/gstpad.c: + * gst/gstpad.h: + * gst/gstutils.c: + * gst/gstutils.h: + * libs/gst/base/gstbasesrc.c: + * libs/gst/base/gstbasetransform.c: + * tests/check/elements/selector.c: + * tests/check/elements/valve.c: + * tests/check/gst/gstghostpad.c: + * tests/check/gst/gstutils.c: + pad: _get_caps() -> _query_caps() + +2011-11-15 16:16:53 +0100 Wim Taymans + + * gst/gstutils.c: + utils: fix docs + +2011-11-15 16:13:59 +0100 Wim Taymans + + * gst/gstutils.c: + utils: fix the proxy functions + fix the proxy functions for query_accept_caps and query_caps to use the pad + forward helper functions which correctly forwards on the internally linked pads. + +2011-11-15 16:13:28 +0100 Wim Taymans + + * gst/gstpad.h: + pad: improve some flag macros + +2011-11-15 16:13:15 +0100 Wim Taymans + + * gst/gstpad.c: + pad: fix debug line + +2011-11-15 11:20:48 +0100 Wim Taymans + + * docs/gst/gstreamer-sections.txt: + * gst/gstdebugutils.c: + * gst/gstelement.c: + * gst/gstghostpad.c: + * gst/gstghostpad.h: + * gst/gstobject.c: + * gst/gstpad.c: + * gst/gstpad.h: + * gst/gstquark.c: + * gst/gstquark.h: + * gst/gstquery.c: + * gst/gstquery.h: + * gst/gstutils.c: + * gst/gstutils.h: + * libs/gst/base/gstbaseparse.c: + * libs/gst/base/gstbasesink.c: + * libs/gst/base/gstbasesrc.c: + * libs/gst/base/gstbasetransform.c: + * plugins/elements/gstfunnel.c: + * plugins/elements/gstinputselector.c: + * plugins/elements/gstmultiqueue.c: + * plugins/elements/gstoutputselector.c: + * plugins/elements/gstqueue.c: + * plugins/elements/gstqueue2.c: + * plugins/elements/gsttee.c: + * plugins/elements/gstvalve.c: + * tests/check/elements/multiqueue.c: + * tests/check/gst/gstutils.c: + * tools/gst-inspect.c: + pad: remove getcaps and use caps query + Remove the getcaps function on the pad and use the CAPS query for + the same effect. + Add PROXY_CAPS to the pad flags. This instructs the default caps event and query + handlers to pass on the CAPS related queries and events. This simplifies a lot + of elements that passtrough caps negotiation. + Make two utility functions to proxy caps queries and aggregate the result. Needs + to use the pad forward function instead later. + Make the _query_peer_ utility functions use the gst_pad_peer_query() function to + make sure the probes are emited properly. + +2011-11-14 11:26:17 +0100 Wim Taymans + + * gst/gstquark.c: + * gst/gstquark.h: + * gst/gstquery.c: + * gst/gstquery.h: + query: add caps query + +2011-11-14 09:57:32 +0000 Tim-Philipp Müller + + * gst/gstquery.h: + query: remove GST_QUERY_LAST + +2011-11-14 10:27:01 +0100 Wim Taymans + + * gst/gstbufferpool.h: + * gst/gstmemory.h: + * gst/gstmeta.h: + * gst/gstpad.h: + * gst/gstquery.h: + fix docs + +2011-11-12 10:29:30 +0200 Stefan Sauer + + * docs/gst/gstreamer-sections.txt: + * docs/random/porting-to-0.11.txt: + * gst/gstobject.c: + * gst/gstobject.h: + * tests/benchmarks/controller.c: + * tests/check/libs/controller.c: + * tests/examples/controller/audio-example.c: + controller: remove functions to add/remove controlled properties + Make that implizit with attaching/detaching controlsources. This is a lot easier + and has less invalid state (controlled property without control source). + +2011-11-13 23:25:23 +0000 Tim-Philipp Müller + + * plugins/elements/gstfdsink.c: + * plugins/elements/gstfdsrc.c: + * plugins/elements/gstfilesink.c: + * plugins/elements/gstfilesrc.c: + * tools/gst-inspect.c: + plugins, tools: update for get_protocols() return value change + +2011-11-13 23:14:15 +0000 Tim-Philipp Müller + + * gst/gsturi.h: + uri: clean up header files + Tabs to spaces. + +2011-11-13 23:07:58 +0000 Tim-Philipp Müller + + * gst/gstelementfactory.c: + * gst/gstelementfactory.h: + * gst/gsturi.c: + * gst/gsturi.h: + urihandler: fix return type of get_protocols() + +2011-11-13 20:56:02 +0000 Tim-Philipp Müller + + * gst/gstelementfactory.c: + * gst/gstelementfactory.h: + * gst/gsturi.h: + urihandler: fix return type of _get_uri_type() + Return a GstURIType and not a plain guint. + +2011-11-13 17:45:19 +0000 Tim-Philipp Müller + + * tests/check/elements/filesink.c: + * tests/check/elements/filesrc.c: + tests: update unit tests for URI handler API changes + +2011-11-13 17:44:57 +0000 Tim-Philipp Müller + + * plugins/elements/gstfdsink.c: + * plugins/elements/gstfdsrc.c: + * plugins/elements/gstfilesink.c: + * plugins/elements/gstfilesrc.c: + elements: update fd + file sources and sinks for GstUriHandler changes + +2011-11-13 17:44:06 +0000 Tim-Philipp Müller + + * docs/random/porting-to-0.11.txt: + * gst/gst.c: + * gst/gsturi.c: + * gst/gsturi.h: + * win32/common/libgstreamer.def: + urihandler: pass GError argument to gst_uri_handler_set_uri() + Also let gst_uri_handler_set_uri check already if the protocol + is supported, so that not every uri handler has to do that + itself. + +2011-11-13 15:51:44 +0000 Tim-Philipp Müller + + * gst/gsturi.c: + * gst/gsturi.h: + urihandler: make _get_uri() return a copy + For thread-safety. + +2011-11-13 15:37:40 +0000 Tim-Philipp Müller + + * docs/gst/gstreamer-sections.txt: + * gst/gsturi.c: + * gst/gsturi.h: + * plugins/elements/gstfilesrc.c: + urihandler: remove "new-uri" signal + No one but filesrc used that API. Should probably be replaced by + requiring an "uri" property instead, and then objects can do a + notify on that. Also removed interface structure padding, it's + not needed. + +2011-11-13 13:23:09 +0000 Tim-Philipp Müller + + Merge remote-tracking branch 'origin/master' into 0.11 + Conflicts: + tools/gst-inspect.c + +2011-11-12 16:42:14 +0000 Tim-Philipp Müller + + * tools/gst-inspect.c: + gst-inspect: print current value as default value + Instead of printing separate 'Current' and 'Default' values + (the former obtained via g_object_get() and the latter from + the property GParamSpec), simply print the Current value as + the Default value. This is the right thing to do for almost + all elements and avoids confusion if a subclass of a base + class chooses a different default than the base class. + +2011-11-12 14:55:07 +0000 Tim-Philipp Müller + + * gst/gstelementfactory.c: + * gst/gstparse.c: + * gst/gstplugin.c: + * libs/gst/controller/gstinterpolationcontrolsource.c: + gst, controller: replace g_list_prepend + reverse with GQueue + +2011-11-12 14:04:10 +0000 Tim-Philipp Müller + + * gst/gstbuffer.h: + docs: fix typo in buffer docs + +2011-11-12 01:54:44 +0100 René Stadler + + * libs/gst/base/gstbasetransform.c: + basetransform: fix caps unref in transform_caps filter subset check + I did not test this, but the code looked very wrong. + +2011-11-12 01:51:11 +0100 René Stadler + + * gst/gstquery.c: + query: do not return a ref from parse_accept_caps + Makes this exactly like gst_event_parse_caps. This is what current code + expects, so it fixes some leaks. + +2011-11-11 17:17:43 +0100 Wim Taymans + + * libs/gst/base/gstbaseparse.h: + * libs/gst/base/gstbitreader-docs.h: + * libs/gst/base/gstbitreader.h: + * libs/gst/base/gstbytereader-docs.h: + * libs/gst/base/gstbytereader.h: + * libs/gst/base/gstbytewriter.h: + * libs/gst/base/gstcollectpads.h: + * libs/gst/base/gstcollectpads2.h: + * libs/gst/check/gstbufferstraw.h: + * libs/gst/check/gstcheck.h: + * libs/gst/controller/gstinterpolationcontrolsource.h: + * libs/gst/controller/gstinterpolationcontrolsourceprivate.h: + * libs/gst/controller/gstlfocontrolsource.h: + * libs/gst/controller/gstlfocontrolsourceprivate.h: + * libs/gst/dataprotocol/dataprotocol.h: + * libs/gst/net/gstnetaddressmeta.h: + * libs/gst/net/gstnetclientclock.h: + * libs/gst/net/gstnettimepacket.h: + * libs/gst/net/gstnettimeprovider.h: + .h: fix header files + Ensure correct indentation and retab + Make sure all structure have padding + +2011-11-11 16:52:41 +0100 Wim Taymans + + * gst/gst.h: + * gst/gstbufferpool.h: + * gst/gstbus.h: + * gst/gstchildproxy.h: + * gst/gstclock.c: + * gst/gstclock.h: + * gst/gstcontrolsource.h: + * gst/gstdatetime.h: + * gst/gstelement.h: + * gst/gstelementfactory.h: + * gst/gstformat.h: + * gst/gstghostpad.h: + * gst/gstindex.h: + * gst/gstindexfactory.h: + * gst/gstiterator.h: + * gst/gstmemory.h: + * gst/gstmeta.h: + * gst/gstminiobject.h: + * gst/gstobject.h: + * gst/gstpad.h: + * gst/gstpadtemplate.h: + * gst/gstparamspecs.h: + * gst/gstpipeline.h: + * gst/gstplugin.h: + * gst/gstpluginfeature.h: + * gst/gstpluginloader.h: + * gst/gstpreset.h: + * gst/gstregistry.h: + * gst/gsttagsetter.h: + * gst/gsttask.h: + * gst/gsttaskpool.h: + * gst/gsttrace.h: + * gst/gsttypefindfactory.h: + * gst/gstutils.h: + * gst/gstvalue.h: + .h: fix header files + Ensure correct indentation and :retab. + Make sure all structures have padding + Fix up some old ABI additions. + +2011-11-11 17:04:52 +0200 Stefan Sauer + + * gst/gstobject.c: + docs: fix invalid xml + +2011-11-11 10:00:35 +0100 Wim Taymans + + * gst/gstbuffer.c: + buffer: avoid < -1 sizes + +2011-11-11 01:47:30 +0000 Tim-Philipp Müller + + * gst/gstbuffer.c: + * gst/gstbuffer.h: + * gst/gstmemory.c: + * gst/gstmemory.h: + buffer, memory: make size arguments where -1 is allowed signed + +2011-11-11 01:44:16 +0000 Tim-Philipp Müller + + * win32/common/libgstreamer.def: + win32: update .def file for latest API changes + +2011-11-10 19:37:28 +0200 Stefan Sauer + + * docs/gst/gstreamer-docs.sgml: + * docs/gst/gstreamer-sections.txt: + * docs/gst/gstreamer.types.in: + * docs/random/porting-to-0.11.txt: + * gst/Makefile.am: + * gst/gst.h: + * gst/gstcontroller.c: + * gst/gstcontroller.h: + * gst/gstcontrolsource.c: + * gst/gstobject.c: + * gst/gstobject.h: + * tests/benchmarks/controller.c: + * tests/check/libs/controller.c: + * tests/examples/controller/audio-example.c: + controller: merge controller into gstobject + This make the controller even more lightweight (no extra object, no extra lock, + less indirections). For object that don't use the controller the only 'overhead' + is a 3 unused fields in the gst_object structure. + +2011-11-10 18:58:35 +0100 Wim Taymans + + * libs/gst/net/gstnetaddressmeta.c: + * libs/gst/net/gstnetaddressmeta.h: + netmeta: avoid using g[u]long in headers + +2011-11-10 18:18:24 +0100 Wim Taymans + + * libs/gst/base/gstadapter.c: + * libs/gst/base/gstadapter.h: + * libs/gst/base/gstbaseparse.c: + * plugins/elements/gsttypefindelement.c: + * tests/check/libs/adapter.c: + adapter: remove flush from _unmap + +2011-11-10 16:02:59 +0100 Wim Taymans + + * libs/gst/base/gstbasesrc.c: + basesrc: implement a default get_caps function + Don't rely on the return value of a vmethod to trigger the default + implementation but make a real defaul implementation of the method that the + subclass can chain up to. + +2011-11-10 14:13:54 +0000 Vincent Penquerc'h + + * gst/gstbuffer.c: + gstbuffer: remove incorrect assertion + Offset and sizes have no bearing on each other here. + +2011-11-10 13:59:28 +0100 Edward Hervey + + * win32/common/libgstcontroller.def: + * win32/common/libgstreamer.def: + win32: Update def files + +2011-11-10 13:53:33 +0100 Edward Hervey + + * gst/gstbuffer.c: + * gst/gstbufferpool.c: + * gst/gstmemory.c: + gst: More introspection annotations + +2011-11-10 13:51:28 +0100 Edward Hervey + + * gst/gstmemory.c: + * gst/gstmemory.h: + gstmemory: Register a GBoxed GType + Allows using it from g-i + +2011-11-10 13:50:23 +0100 Edward Hervey + + * gst/Makefile.am: + * libs/gst/base/Makefile.am: + * libs/gst/check/Makefile.am: + * libs/gst/controller/Makefile.am: + * libs/gst/net/Makefile.am: + introspection: Add --warn-all to introspection scanner + ... and let's get fixing all those docs ! + +2011-11-10 13:38:58 +0100 Wim Taymans + + * libs/gst/base/gstbasetransform.c: + basetransform: fix vmethods + Make a default implementation of the transform_caps vmethod so that subclasses + can call into it. + Make a default implementation of transform_size. + Avoid doing something in the vmethod trampoline. + +2011-11-10 13:37:12 +0100 Wim Taymans + + * tests/check/libs/test_transform.c: + tests: only override when != NULL + Only override the methods in the unit tests when != NULL otherwise we might + override the default implementation. + +2011-11-10 13:36:10 +0100 Wim Taymans + + * libs/gst/base/gstpushsrc.c: + * libs/gst/base/gstpushsrc.h: + pushsrc: make alloc method a vmethod + +2011-11-10 12:33:49 +0100 Wim Taymans + + * libs/gst/base/gstbasesink.c: + basesink: reorder vmethod according to .h file + +2011-11-10 12:33:33 +0100 Wim Taymans + + * libs/gst/base/gstbasesink.h: + basesink: improve comments + +2011-11-10 12:33:10 +0100 Wim Taymans + + * libs/gst/base/gstbasesrc.c: + basesrc: don't do things in the vmethod trampoline + +2011-11-10 12:09:57 +0100 Wim Taymans + + * gst/gstbin.c: + * gst/gstelement.c: + element: add a default set_clock implementation + Add a default set_clock implementation and avoid doing work in the vmethod + trampoline. This requires subclasses to chain up. + +2011-11-10 12:08:51 +0100 Wim Taymans + + * gst/gstelement.c: + element: don't do anything in the vmethod trampoline + Avoid doing stuff in the vmethod trampoline, just let the default + implementation of the method take care of things. + +2011-11-10 12:08:15 +0100 Wim Taymans + + * gst/gstelement.c: + element: fix some docs + +2011-11-10 11:42:26 +0100 Wim Taymans + + * libs/gst/base/gstadapter.c: + * libs/gst/base/gstadapter.h: + adapter: use gpointer for return types + +2011-11-10 11:12:36 +0100 Wim Taymans + + * docs/random/porting-to-0.11.txt: + porting: update doc + +2011-11-10 10:58:42 +0100 Wim Taymans + + * docs/gst/gstreamer-sections.txt: + * gst/gstghostpad.c: + * gst/gstghostpad.h: + * gst/gstpad.c: + * gst/gstpad.h: + * libs/gst/base/gstbasesink.c: + * libs/gst/base/gstbasesrc.c: + * libs/gst/base/gstbasetransform.c: + * tests/check/gst/gstpad.c: + * tools/gst-inspect.c: + pad: remove GstPadFixateCapsFunction + The fixate caps function was not used externally and we have vmethods in the + base classes where it is needed. + Update some docs. + simplify some fixate functions in the base classes. Also pass the untruncated + caps to the vmethod. + +2011-11-09 17:43:49 +0100 Wim Taymans + + * gst/gstpad.c: + pad: don't store events on flushing pads + check the flushing state of the pad before storing the event. + +2011-11-09 17:36:00 +0100 Wim Taymans + + * gst/gstghostpad.c: + * gst/gstpad.c: + * gst/gstpad.h: + * gst/gstquark.c: + * gst/gstquark.h: + * gst/gstquery.c: + * gst/gstquery.h: + * libs/gst/base/gstbasetransform.c: + * plugins/elements/gstinputselector.c: + * plugins/elements/gstmultiqueue.c: + * plugins/elements/gstqueue.c: + * plugins/elements/gstqueue2.c: + * plugins/elements/gsttee.c: + * tools/gst-inspect.c: + pad: make an ACCEPT_CAPS query + Replace the acceptcaps function with a query. + +2011-11-09 17:25:30 +0100 Wim Taymans + + * gst/gstpad.c: + * plugins/elements/gsttypefindelement.c: + pad: refuse events in flushing + when we are flushing, don't store the event on the pad but simply return FALSE. + Don't deactivate the srcpad, we need it to be active in order to push the + caps. Downstream can change the scheduling mode of an active pad. + +2011-11-09 17:19:12 +0100 Wim Taymans + + * gst/gstelement.h: + * libs/gst/base/gstbasesink.c: + * libs/gst/base/gstbasesrc.c: + element: remove more query_types + +2011-11-09 11:05:59 +0100 Stefan Sauer + + * Android.mk: + * tests/examples/controller/Makefile.am: + Android: build audio controller example + Add buildsystem hooks for building the audiocontroller example + with the NDK. + Signed-off-by: Reynaldo H. Verdejo Pinochet + +2011-11-09 12:21:17 +0100 René Stadler + + * tests/check/gst/gstpad.c: + tests: pad: add tests for sticky caps handling + test_sticky_caps_flushing is currently failing. + +2011-11-09 12:12:26 +0100 Wim Taymans + + * common: + update common + +2011-11-09 12:03:28 +0100 Wim Taymans + + Merge branch 'master' into 0.11 + +2011-11-09 12:02:12 +0100 Wim Taymans + + * docs/random/porting-to-0.11.txt: + porting: update porting doc + +2011-11-09 11:47:10 +0100 Wim Taymans + + * gst/gstelement.c: + * gst/gstelement.h: + * gst/gstghostpad.c: + * gst/gstghostpad.h: + * gst/gstpad.c: + * gst/gstpad.h: + * libs/gst/base/gstbaseparse.c: + * libs/gst/base/gstbasetransform.c: + * tools/gst-inspect.c: + remove query types + It was not really useful + +2011-11-08 18:09:28 +0000 Vincent Penquerc'h + + * gst/gstvalue.c: + gstvalue: consider lists and ranges equal if they hold the same set + This fixes caps operations when different elements advertise some + of their caps' properties differently (eg, for audio channels, either + a range from 1 to 2, or a list of 1 and 2). + https://bugzilla.gnome.org/show_bug.cgi?id=663643 + +2011-11-09 11:24:26 +0100 Stefan Sauer + + * tests/check/gst/gststructure.c: + tests: add a subset test for structure + +2011-11-09 11:22:36 +0100 Wim Taymans + + * gst/gstghostpad.c: + * plugins/elements/gstinputselector.c: + * plugins/elements/gstmultiqueue.c: + pad: add more queries + Add more query functions to prepare for doing more with queries + +2011-10-28 13:39:58 +0200 Stefan Sauer + + * docs/manual/advanced-dparams.xml: + docs: also fix wrong call order for controller in manual + +2011-11-08 17:32:11 +0100 Wim Taymans + + * docs/design/part-probes.txt: + * gst/gstpad.c: + * gst/gstpad.h: + pad: install query probes + Fire query probes according to updated design doc. + +2011-11-08 15:51:48 +0100 Wim Taymans + + * gst/gstpad.h: + pad: remove lock/unlock_full versions of stream-lock + +2011-11-08 15:48:34 +0100 Wim Taymans + + * gst/gstpad.h: + pad: add defines for query probes + +2011-11-08 13:30:18 +0100 Wim Taymans + + * tests/check/gst/gstpad.c: + pad: fix unit test + +2011-11-08 13:13:55 +0100 Wim Taymans + + * gst/gstbuffer.c: + buffer: update docs + +2011-11-08 13:02:04 +0100 Wim Taymans + + * tests/check/gst/gstpad.c: + test: port to 0.11 + +2011-11-08 12:54:15 +0100 Wim Taymans + + Merge branch 'master' into 0.11 + Conflicts: + gst/gstelement.h + gst/gstghostpad.c + gst/gstminiobject.c + +2011-11-08 12:47:33 +0100 Wim Taymans + + * docs/design/part-probes.txt: + * gst/gstpad.c: + * gst/gstpad.h: + pad: add pull mode probes + Allow probes to inspect the offset and size from a probe in pull mode and allow + the probe to modify the buffer. + Update design doc a little. + +2011-11-08 12:22:21 +0100 René Stadler + + * tests/check/gst/gstpad.c: + tests: pad: add test to verify flushing behaviour + Seems like a trivial case, but this was actually broken in 0.11 recently. + +2011-11-08 11:04:19 +0100 Wim Taymans + + * gst/gstpad.c: + * gst/gstpad.h: + * libs/gst/check/gstbufferstraw.c: + * libs/gst/check/gstconsistencychecker.c: + * tests/check/elements/selector.c: + * tests/check/generic/sinks.c: + * tests/check/gst/gstevent.c: + * tests/check/gst/gstghostpad.c: + * tests/check/gst/gstpad.c: + * tests/check/gst/gstutils.c: + * tests/check/libs/basesrc.c: + * tests/check/pipelines/queue-error.c: + pad: Add GstPadProbeInfo + Make a new GstPadProbeInfo structure and pass this in the probe callback. This + allows us to add more things later and also allow the callback to replace or + modify the passed object. + +2011-11-08 08:26:29 +0100 Stefan Sauer + + * gst/gstevent.c: + event: log creation of qos events at LOG level instead at INFO + +2011-11-07 16:57:37 +0100 Stefan Sauer + + * gst/gstbuffer.c: + buffer: improve parameter docs + +2011-11-08 00:32:36 +0000 Tim-Philipp Müller + + * gst/gstcaps.c: + * gst/gstelement.h: + * gst/gstghostpad.c: + * gst/gstminiobject.c: + * gst/gststructure.c: + * libs/gst/base/gstbaseparse.c: + * libs/gst/base/gstbasesrc.c: + * plugins/elements/gstinputselector.c: + * plugins/elements/gstmultiqueue.c: + docs: fix Since: markers for API added after 0.10.35 + +2011-11-08 00:15:49 +0000 Tim-Philipp Müller + + * win32/common/libgstreamer.def: + win32: update .def file for new API + API: gst_caps_is_strictly_equal() + +2011-11-07 17:17:39 +0100 Wim Taymans + + Merge branch 'master' into 0.11 + Conflicts: + gst/gstvalue.c + +2011-11-07 17:04:13 +0100 Wim Taymans + + * gst/gstpad.c: + * gst/gstpad.h: + * libs/gst/check/gstconsistencychecker.c: + * tests/check/elements/selector.c: + * tests/check/generic/sinks.c: + * tests/check/gst/gstevent.c: + * tests/check/gst/gstpad.c: + * tests/check/gst/gstutils.c: + * tests/check/libs/basesrc.c: + * tests/check/pipelines/queue-error.c: + pad: rework pad probes + Make a separate cookie to detect chancges in the list of probes and keeping + track of what hooks have been invoked yet. + Remove the requirement to have probes on srcpads in push mode and sinkpads in + pull mode. + Add some more debug. + Keep track of what callbacks got executed. If no callback is called and we are a + blocking pad, let the item pass. This allows you to block pads on selected + items only. + Explicitly have an UPSTREAM and DOWNSTREAM PadProbeType. This allows you to only + block the pad on upstream or downstream items. + Add convenience macros to only block on downstream/upstream items. + +2011-10-27 12:59:57 +0100 Vincent Penquerc'h + + * gst/gstcaps.c: + gstcaps: remove unneeded use of gint64 + https://bugzilla.gnome.org/show_bug.cgi?id=662777 + +2011-10-27 12:24:13 +0100 Vincent Penquerc'h + + * gst/gststructure.c: + * gst/gstvalue.c: + gstvalue: quicker version of intersection when we do not need the result + https://bugzilla.gnome.org/show_bug.cgi?id=662777 + +2011-10-27 12:02:43 +0100 Vincent Penquerc'h + + * gst/gststructure.c: + gststructure: simplify return statement in gst_structure_can_intersect + https://bugzilla.gnome.org/show_bug.cgi?id=662777 + +2011-10-27 11:41:30 +0100 Vincent Penquerc'h + + * gst/gststructure.c: + gststructure: early out when we know a value cannot be a subset + If two values can be ordered, but are unequal, they are + necessarily distinct, thus one cannot be a subset of the other. + https://bugzilla.gnome.org/show_bug.cgi?id=662777 + +2011-10-27 10:35:53 +0100 Vincent Penquerc'h + + * gst/gststructure.c: + * gst/gstvalue.c: + gstvalue: quicker test for substraction emptiness + When we do not care about the actual resulting set, + but only whether it is empty of not, we can skip a fair bit + of GValue juggling. + Add a function that does so, since we cannot just pass NULL + to the existing API as it may be part of the API contract. + https://bugzilla.gnome.org/show_bug.cgi?id=662777 + +2011-10-27 09:45:41 +0100 Vincent Penquerc'h + + * gst/gststructure.c: + gststructure: rejig test ordering for speed + https://bugzilla.gnome.org/show_bug.cgi?id=662777 + +2011-11-07 12:28:22 +0100 Stefan Sauer + + * docs/random/porting-to-0.11.txt: + docs: mention more api changes in the porting guide + +2011-11-07 10:40:23 +0100 Wim Taymans + + * gst/gstcaps.c: + caps: fix compilation + +2011-11-07 10:01:27 +0100 Wim Taymans + + Merge branch 'master' into 0.11 + Conflicts: + libs/gst/base/gstbasetransform.c + +2011-11-06 00:07:10 +0000 Tim-Philipp Müller + + * gst/gstcontroller.c: + Revert "controller: fix g_return statement" + This reverts commit 593d2b297bd7b5ce9dbcdf2f1ae2b7624d94d6ae. + gst_controller_set_disabled () returns a void. + +2011-11-05 12:10:29 +0000 Tim-Philipp Müller + + * docs/gst/gstreamer-docs.sgml: + * docs/gst/gstreamer-sections.txt: + docs: remove refs to removed API + +2011-11-04 21:37:45 +0100 Stefan Sauer + + * gst/gstcontroller.c: + * gst/gstobject.c: + controller: the object needs a ref to the controller for the convenience api + Add a hack to ensure the object will have a ref to the controller once we + create it. Fixes the audio example (that uses the controller api directly). + +2011-11-04 21:37:21 +0100 Stefan Sauer + + * gst/gstcontroller.c: + controller: fix g_return statement + +2011-11-04 21:35:55 +0100 Stefan Sauer + + * gst/gstcontroller.c: + controller: logging tweaks + Don't log in _new before we have the log category. Use _OBJECT variants. + +2011-11-05 01:27:54 +0000 Tim-Philipp Müller + + * gst/gstcontroller.c: + * gst/gstobject.c: + gst: fix some compiler warnings + gstobject.c: In function 'gst_object_has_active_automation': + gstobject.c:1076:3: error: 'return' with no value, in function returning non-void + gstcontroller.c: In function 'gst_controller_is_active': + gstcontroller.c:509:3: error: 'return' with no value, in function returning non-void + +2011-11-04 20:50:58 +0100 Stefan Sauer + + * docs/gst/gstreamer-sections.txt: + * gst/gstcontroller.c: + * gst/gstcontroller.h: + * gst/gstobject.c: + * gst/gstobject.h: + controller: add api to check for active controllers (needed for e.g. volume) + +2011-11-04 20:32:32 +0100 Stefan Sauer + + * gst/gstobject.h: + controller: remove obsolete comments from api transition + +2011-11-04 14:00:24 +0100 Stefan Sauer + + * tests/check/libs/controller.c: + * tests/check/libs/gstlibscpp.cc: + controller: fix tests after move and API changes + +2011-11-04 11:42:34 +0100 Stefan Sauer + + * tests/benchmarks/controller.c: + * tests/examples/controller/audio-example.c: + * tools/gst-inspect.c: + controller: port to new controller api + +2011-11-04 11:39:25 +0100 Stefan Sauer + + * docs/gst/gstreamer-docs.sgml: + * docs/gst/gstreamer-sections.txt: + * docs/gst/gstreamer.types.in: + * docs/libs/Makefile.am: + * docs/libs/gstreamer-libs-docs.sgml: + * docs/libs/gstreamer-libs-sections.txt: + * docs/libs/gstreamer-libs.types: + controller: update docs for controller move + +2011-11-04 11:34:11 +0100 Stefan Sauer + + * gst/Makefile.am: + * gst/gst.h: + * gst/gstclock.h: + * gst/gstcontroller.c: + * gst/gstcontroller.h: + * gst/gstcontrolsource.c: + * gst/gstcontrolsource.h: + * gst/gstobject.c: + * gst/gstobject.h: + * libs/gst/controller/Makefile.am: + * libs/gst/controller/gstcontroller.c: + * libs/gst/controller/gstcontroller.h: + * libs/gst/controller/gstcontrollerprivate.h: + * libs/gst/controller/gstcontrolsource.c: + * libs/gst/controller/gstcontrolsource.h: + * libs/gst/controller/gsthelper.c: + * libs/gst/controller/gstinterpolationcontrolsource.c: + * libs/gst/controller/gstinterpolationcontrolsource.h: + * libs/gst/controller/gstlfocontrolsource.c: + * libs/gst/controller/gstlfocontrolsource.h: + * libs/gst/controller/lib.c: + controller: move to core/gstobject + Move the controller to gstobject as a simple delegate. The controller and + controlsource are not classes in core. The controlsources stay separate as a lib + for now. This way we can avoid the qdata lookups. + Also remove controller_init(). There is no more need to link to controller for + elements. + Also sanitize the API. We now have functions to add properties like we had + methods to remove that. That avoids then ref count hacks we had in _new. + +2011-11-03 18:23:13 +0100 Stefan Sauer + + * docs/random/porting-to-0.11.txt: + docs: small clarification + +2011-11-03 18:22:16 +0100 Stefan Sauer + + * docs/gst/gstreamer-sections.txt: + docs: missing rename iface->interface in the docs + +2011-11-04 19:17:06 +0100 Wim Taymans + + * gst/gstbin.c: + bin: fix the iterator copy + +2011-11-04 19:11:19 +0100 Wim Taymans + + Merge branch 'master' into 0.11 + Conflicts: + gst/gstbin.c + +2011-11-03 15:36:59 +0000 Sjoerd Simons + + * libs/gst/base/gstbasetransform.c: + basetransform: Only use the cached transform on strictly equal caps + https://bugzilla.gnome.org/show_bug.cgi?id=663333 + +2011-11-03 15:35:32 +0000 Sjoerd Simons + + * gst/gstcaps.c: + * gst/gstcaps.h: + caps: Add gst_caps_is_strictly_equal + +2011-11-04 18:47:10 +0100 Wim Taymans + + * tests/check/generic/sinks.c: + * tests/check/gst/gstevent.c: + tests: fix tests + Since blocks are not on both directions, we need to check in the block callback + if we are not blocking on an upstream event and let it pass. + +2011-11-04 18:19:14 +0100 Wim Taymans + + * docs/design/part-probes.txt: + * gst/gstpad.c: + pad: make probes work on all pads + fixes #644907 + +2011-10-15 22:52:25 +0300 Peteris Krisjanis + + * gst/gstclock.h: + introspection: add Value annotations for GST_SECOND, GST_MSECOND, GST_USECOND, GST_NSECOND constants + gobject-introspection won't parse them properly otherwise. + Still need to force the right type though (either GstClockTime or + guint64), but Type: xyz has no effect for me here, so someone with + a newer g-i needs to test this. + Some other defines are also missing, e.g. GST_CLOCK_TIME_NONE. + +2011-11-04 00:03:05 +0000 Tim-Philipp Müller + + * configure.ac: + configure: suppress unused variable warnings if gst debugging is disabled + https://bugzilla.gnome.org/show_bug.cgi?id=662952 + +2011-11-04 00:02:07 +0000 Tim-Philipp Müller + + * configure.ac: + configure: fix typo around GLIB_EXTRA_CFLAGS in GST_ALL_CXXFLAGS + +2011-11-03 23:08:52 +0000 Tim-Philipp Müller + + * plugins/elements/gstqueue.c: + * plugins/elements/gstqueue.h: + queue: use statically allocated GQueue + +2011-11-03 22:58:50 +0000 Tim-Philipp Müller + + * gst/gstbin.c: + bin: use statically allocated GQueue + Because we can. + +2011-11-03 22:51:57 +0000 Tim-Philipp Müller + + * libs/gst/base/gstcollectpads2.h: + collectpads2: use flags enum instead of guint in structure + +2011-11-03 08:47:20 +0000 Tim-Philipp Müller + + * plugins/elements/gstqueue2.c: + * plugins/elements/gstqueue2.h: + queue2: use statically allocated GQueue + +2011-11-03 17:49:45 +0100 Wim Taymans + + * plugins/elements/gstfunnel.c: + * plugins/elements/gstinputselector.c: + * plugins/elements/gstmultiqueue.c: + * plugins/elements/gstoutputselector.c: + * plugins/elements/gsttee.c: + * plugins/elements/gsttee.h: + * tests/check/elements/funnel.c: + * tests/check/elements/multiqueue.c: + * tests/check/elements/selector.c: + * tests/check/elements/tee.c: + * tests/check/gst/gstutils.c: + * tests/check/pipelines/parse-launch.c: + fix request pad + Make all request pads take _%u in the template. + Fix up unit tests. + +2011-11-03 16:49:48 +0100 Wim Taymans + + * win32/common/libgstnet.def: + def: update defs + +2011-11-03 16:46:35 +0100 Wim Taymans + + * common: + * libs/gst/net/Makefile.am: + * libs/gst/net/gstnetaddressmeta.c: + * libs/gst/net/gstnetaddressmeta.h: + net: add net address metadata + +2011-11-03 14:26:12 +0100 Wim Taymans + + * libs/gst/net/gstnettimeprovider.c: + * libs/gst/net/gstnettimeprovider.h: + nettime: clean up header + +2011-11-03 14:14:54 +0100 Wim Taymans + + * gst/gsttask.c: + task: don't use lock/unlock_full + +2011-11-03 11:30:52 +0100 Wim Taymans + + Merge branch 'master' into 0.11 + Conflicts: + gst/gstghostpad.c + +2011-11-02 12:37:15 +0100 Wim Taymans + + * gst/gstpad.c: + pad: small cleanup + +2011-10-25 17:26:50 -0400 Nicolas Dufresne + + * gst/gstghostpad.c: + * tests/check/gst/gstghostpad.c: + ghostpad: Don't cache internal proxy pad target + The internal proxy pad target is simply a cache of the internal proxy pad + peer. This patch uses the well implement GstPad peer handling to obtain the + target. This fixes issues with target not being set in both direction when + two ghostpads are linked together (empty bin). + https://bugzilla.gnome.org/show_bug.cgi?id=658517 + +2011-11-02 12:06:47 +0100 Wim Taymans + + * docs/random/porting-to-0.11.txt: + * gst/gstutils.c: + * gst/gstutils.h: + * libs/gst/base/gstbaseparse.c: + * tests/check/gst/gstutils.c: + * win32/common/libgstreamer.def: + utils: remove _found_tags_ API + remove gst_element_found_tags() and gst_element_found_tags_for_pad(), they are + nothing more than a wrapper around gst_pad_push_event() + +2011-11-02 10:29:04 +0100 Wim Taymans + + Merge branch 'master' into 0.11 + Conflicts: + common + configure.ac + +2011-10-30 21:33:11 +0100 Wim Taymans + + * gst/gstbuffer.h: + buffer: improve docs + +2011-10-29 09:43:04 +0200 Wim Taymans + + * gst/gstevent.c: + * gst/gstevent.h: + event: make GstSegment argument const + +2011-10-29 09:41:08 +0200 Wim Taymans + + * docs/gst/gstreamer-sections.txt: + docs: remove metatiming from docs + +2011-10-29 09:26:49 +0200 Wim Taymans + + * docs/gst/gstreamer-sections.txt: + * docs/random/porting-to-0.11.txt: + * gst/gstpad.c: + * gst/gsttask.c: + * gst/gsttask.h: + * tests/check/gst/gstmessage.c: + * tests/check/gst/gsttask.c: + * win32/common/libgstreamer.def: + task: api cleanup + gst_task_create() -> gst_task_new() + +2011-10-29 09:02:00 +0200 Wim Taymans + + * docs/gst/gstreamer-sections.txt: + * docs/random/porting-to-0.11.txt: + * gst/gstbufferpool.c: + * gst/gstcaps.c: + * gst/gstelement.c: + * gst/gstevent.c: + * gst/gstmessage.c: + * gst/gstquery.c: + * gst/gststructure.c: + * gst/gststructure.h: + * gst/gsttaglist.c: + * tests/check/gst/gstevent.c: + * tests/check/gst/gstiterator.c: + * tests/check/gst/gststructure.c: + * tests/check/pipelines/simple-launch-lines.c: + * win32/common/libgstreamer.def: + structure: cleanup API + gst_structure_empty_new() -> gst_structure_new_empty() + gst_structure_id_empty_new() -> gst_structure_new_id_empty() + gst_structure_id_new() -> gst_structure_new_id() + +2011-10-29 08:38:51 +0200 Wim Taymans + + * gst/gstmeta.c: + * gst/gstmeta.h: + meta: remove timing metadata + This is now on buffers by default + +2011-10-29 08:24:12 +0200 Wim Taymans + + * docs/gst/gstreamer-sections.txt: + * docs/random/porting-to-0.11.txt: + * gst/gstbufferlist.c: + * gst/gstbufferlist.h: + * gst/gstpad.c: + * libs/gst/base/gstbasesink.c: + * plugins/elements/gstmultiqueue.c: + * tests/check/gst/gstbufferlist.c: + * win32/common/libgstreamer.def: + bufferlist: clean up API + gst_buffer_list_len() -> gst_buffer_list_length() + gst_buffer_list_sized_new() -> gst_buffer_list_new_sized() + +2011-11-01 14:17:21 +0000 Tim-Philipp Müller + + * libs/gst/base/gstadapter.c: + adapter: simplify gst_adapter_take_list() + Use a stack-allocated GQueue to assemble our GList. + +2011-11-01 10:56:39 +0000 Tim-Philipp Müller + + * docs/random/porting-to-0.11.txt: + docs: mention GstActivateMode rename in porting doc + +2011-11-01 00:25:02 +0000 Tim-Philipp Müller + + * docs/gst/gstreamer-sections.txt: + * gst/gst.c: + * gst/gstpad.c: + * gst/gstpad.h: + * libs/gst/base/gstbaseparse.c: + * libs/gst/base/gstbasesink.c: + * libs/gst/base/gstbasesink.h: + * libs/gst/base/gstbasesrc.c: + * libs/gst/base/gstbasetransform.c: + * plugins/elements/gsttee.c: + * plugins/elements/gsttee.h: + * win32/common/gstenumtypes.c: + * win32/common/libgstreamer.def: + pad: rename GstActivateMode to GstPadActivateMode + These might be useful: + sed -i -e 's/GstActivateMode/GstPadActivateMode/g' `git grep GstActivateMode | sed -e 's/:.*//' | sort -u` + sed -i -e 's/GST_ACTIVATE_/GST_PAD_ACTIVATE_/g' `git grep GST_ACTIVATE_ | sed -e 's/:.*//' | sort -u` + +2011-11-01 00:13:35 +0000 Tim-Philipp Müller + + * docs/design/part-probes.txt: + * docs/gst/gstreamer-sections.txt: + * docs/random/porting-to-0.11.txt: + * gst/gst.c: + * gst/gstpad.c: + * gst/gstpad.h: + * libs/gst/check/gstbufferstraw.c: + * libs/gst/check/gstconsistencychecker.c: + * tests/check/elements/selector.c: + * tests/check/generic/sinks.c: + * tests/check/gst/gstevent.c: + * tests/check/gst/gstghostpad.c: + * tests/check/gst/gstpad.c: + * tests/check/gst/gstpipeline.c: + * tests/check/gst/gstutils.c: + * tests/check/libs/basesrc.c: + * tests/check/pipelines/queue-error.c: + * win32/common/gstenumtypes.c: + * win32/common/libgstreamer.def: + pad: rename GstProbeType and GstProbeReturn to GstPadProbe{Type,Return} + Better now than later in the cycle. These might come in handy: + sed -i -e 's/GstProbeReturn/GstPadProbeReturn/g' `git grep GstProbeReturn | sed -e 's/:.*//' | sort -u` + sed -i -e 's/GST_PROBE_/GST_PAD_PROBE_/g' `git grep GST_PROBE_ | sed -e 's/:.*//' | sort -u` + sed -i -e 's/GstProbeType/GstPadProbeType/g' `git grep GstProbeType | sed -e 's/:.*//' | sort -u` + +2011-10-31 23:32:17 +0000 Tim-Philipp Müller + + * docs/gst/gstreamer-sections.txt: + * gst/gsttaglist.c: + * gst/gsttaglist.h: + * win32/common/libgstreamer.def: + taglist: remove gst_tag_list_get_*long*() + No one uses this or should ever need to use it, since + the size is architecture-specific anyway. If normal + integers don't do, one should use 64-bit integers. + +2011-10-31 19:04:20 +0000 Tim-Philipp Müller + + * win32/common/libgstreamer.def: + Update .def file for removed/changed API + +2011-10-31 19:23:41 +0100 René Stadler + + * libs/gst/base/gstbasetransform.c: + basetransform: fix crash/warning in find_transform when pad is unlinked + Looks like the revert conflict in commit a44271 was resolved incorrectly. + +2011-10-31 17:45:44 +0000 Tim-Philipp Müller + + * common: + * configure.ac: + configure: make GLIB_EXTRA_CFLAGS overwritable + Make 'make GLIB_EXTRA_CFLAGS=...' work. + +2011-10-31 14:16:05 +0000 Tim-Philipp Müller + + * docs/gst/gstreamer-sections.txt: + * gst/Makefile.am: + * gst/gstfilter.c: + * gst/gstfilter.h: + * gst/gstpluginfeature.c: + * gst/gstpluginfeature.h: + * gst/gstregistry.c: + filter: remove gst_filter_run() and deprecated filter func + If someone wants to resurrect this, please use a less + generic name space for it. + +2011-10-31 14:03:15 +0000 Tim-Philipp Müller + + Merge remote-tracking branch 'origin/master' into 0.11 + Conflicts: + gst/gstpluginfeature.c + +2011-10-30 10:26:11 +0000 Tim-Philipp Müller + + * docs/gst/gstreamer-sections.txt: + * docs/random/porting-to-0.11.txt: + * gst/gsttaglist.c: + * gst/gsttaglist.h: + * gst/gsttagsetter.c: + * libs/gst/base/gstbaseparse.c: + * tests/check/gst/gstevent.c: + * tests/check/gst/gstmessage.c: + * tests/check/gst/gsttag.c: + * tests/check/gst/gsttagsetter.c: + * tests/check/gst/gstutils.c: + taglist: rename _new() to _new_empty() and new_full*() to new*() + +2011-10-30 21:54:36 +0000 Tim-Philipp Müller + + * gst/gstfilter.c: + * gst/gstfilter.h: + filter: deprecate gst_filter_run() + It's not really used outside of core at all, and has + serious namespace issues. If anyone feels the need to + revive this one, please use a less generic name space. + API: deprecate gst_filter_run() + API: deprecate GstFilterFunc + +2011-10-30 21:39:36 +0000 Tim-Philipp Müller + + * gst/gstregistry.c: + registry: don't use soon-to-be-deprecated gst_filter_run() + Lines-of-code savings are negligible anyway. + +2011-10-30 21:21:59 +0000 Tim-Philipp Müller + + * gst/gstpluginfeature.c: + * gst/gstpluginfeature.h: + * gst/gstregistry.c: + * tests/check/gst/struct_x86_64.h: + pluginfeature: deprecate gst_plugin_feature_type_name_filter() + It's only used internally anyway and the helper struct + has namespace issues. + API: deprecated gst_plugin_feature_type_name_filter() + API: deprecated GstTypeNameData + +2011-10-30 10:05:23 +0000 Tim-Philipp Müller + + * gst/gsttaglist.c: + * gst/gsttaglist.h: + taglist: make opaque + Hide the fact that it's just a GstStructure from the API. We + may want to change this in future (e.g. to add refcounting). + Also, it caused problems for bindings (though that's mostly + the way we typedefed it to GstStructure). + +2011-10-30 10:00:28 +0000 Tim-Philipp Müller + + Merge remote-tracking branch 'origin/master' into 0.11 + +2011-10-30 09:58:16 +0000 Tim-Philipp Müller + + * docs/gst/gstreamer-sections.txt: + * gst/gsttaglist.c: + * gst/gsttaglist.h: + * tests/check/gst/gsttag.c: + * win32/common/libgstreamer.def: + taglist: add to_string and new_from_string functions + We want to make GstTagList opaque and not have people use + GstStructure API on it. + API: gst_tag_list_to_string() + API: gst_tag_list_new_from_string() + +2011-10-30 09:31:39 +0000 Tim-Philipp Müller + + Merge remote-tracking branch 'origin/master' into 0.11 + +2011-10-30 01:46:22 +0100 Tim-Philipp Müller + + * gst/gsttaglist.c: + taglist: avoid pointless tag name -> quark lookups + We never get a tag name quark from a caller, it's always a + string, from which we'll try to look up our tag info in the + hash table, so change the hash table key from quark to string. + Avoids a bunch of pointless string => quark lookup in the + global quark table. We need to do an extra string => quark + conversion now when we copy a taglist, but in that case we're + in a slow path anyway. + +2011-10-30 00:44:44 +0100 Tim-Philipp Müller + + * docs/gst/gstreamer-sections.txt: + * gst/gsttaglist.c: + * gst/gsttaglist.h: + * tests/check/gst/gsttag.c: + * win32/common/libgstreamer.def: + taglist: add gst_tag_list_is_equal() + API: gst_tag_list_is_equal() + +2011-10-29 23:52:22 +0100 Tim-Philipp Müller + + * gst/gststructure.c: + structure: identical structures are definitely equal + +2011-10-29 20:06:54 +0100 Tim-Philipp Müller + + * gst/gsttaglist.h: + taglist: fix string for GST_TAG_ARTIST_SORTNAME + For historical reasons it was mapped to a musicbrainz prefix, + but it's not really musicbrainz-specific at all. + +2011-10-29 19:59:05 +0100 Tim-Philipp Müller + + * gst/gst_private.h: + * gst/gstelementfactory.h: + elementfactory: move private functions for registry to private header + +2011-10-28 21:40:47 +0200 René Stadler + + * libs/gst/base/gstbasetransform.c: + basetransform: fix invalid access to unreffed allocation query + +2011-10-28 16:45:23 +0200 Wim Taymans + + * gst/gstbuffer.h: + buffer: fix docs some more + +2011-10-28 16:27:43 +0200 Wim Taymans + + Merge branch 'master' into 0.11 + Conflicts: + libs/gst/base/gstbasetransform.c + +2011-10-28 16:08:37 +0200 Wim Taymans + + * tests/check/gst/gstsegment.c: + tests: fix segment check + +2011-10-28 15:52:58 +0200 Wim Taymans + + * gst/gstsegment.c: + * gst/gstsegment.h: + segment: remove GST_SEEK_TYPE_CUR + +2011-10-28 15:52:41 +0200 Wim Taymans + + * gst/gstbuffer.h: + buffer: improve docs + +2011-10-28 13:02:26 +0200 Sebastian Dröge + + * libs/gst/base/gstbytewriter.h: + bytewriter: Add padding + +2011-10-28 13:02:19 +0200 Sebastian Dröge + + * libs/gst/base/gstbitreader.h: + bitreader: Add padding + +2011-10-28 13:02:10 +0200 Sebastian Dröge + + * libs/gst/base/gstbytereader.h: + bytereader: Add padding + +2011-10-28 12:31:03 +0200 Wim Taymans + + * docs/random/porting-to-0.11.txt: + porting: update + +2011-10-28 12:28:46 +0200 Wim Taymans + + * docs/gst/gstreamer-sections.txt: + * docs/libs/gstreamer-libs-sections.txt: + docs: update + +2011-10-28 12:27:43 +0200 Wim Taymans + + * win32/common/libgstbase.def: + defs: update for new api + +2011-10-28 12:17:58 +0200 Wim Taymans + + * libs/gst/check/gstconsistencychecker.c: + check: also debug the DTS + +2011-10-28 12:16:21 +0200 Wim Taymans + + * libs/gst/base/gstadapter.c: + * libs/gst/base/gstadapter.h: + adapter: use pts/dts on buffers + +2011-10-28 12:24:02 +0200 Wim Taymans + + * gst/gstcompat.h: + compat: add timestamp compat defines + +2011-10-28 12:15:44 +0200 Wim Taymans + + * gst/gstbuffer.c: + * gst/gstbuffer.h: + * gst/gstbufferpool.c: + * gst/gstinfo.c: + buffer: add pts/dts to buffers + +2011-10-28 11:53:32 +0200 Sjoerd Simons + + * libs/gst/base/gstbasetransform.c: + basetransform: Also fush the cache when changing the upstream caps suggestion + +2011-10-28 11:50:23 +0200 Sjoerd Simons + + * libs/gst/base/gstbasetransform.c: + basetransform: Add debug output when returning a cached transform + +2011-10-28 11:33:44 +0200 Wim Taymans + + Merge branch 'master' into 0.11 + +2011-10-28 11:30:57 +0200 Wim Taymans + + * libs/gst/base/gstcollectpads2.c: + * libs/gst/base/gstcollectpads2.h: + coolectpads2: port to 0.11 + +2011-10-28 11:13:55 +0200 Wim Taymans + + Merge branch 'master' into 0.11 + +2011-10-28 10:54:19 +0200 Sebastian Dröge + + * libs/gst/base/gstcollectpads2.c: + collectpads2: Fix refcount handling if a buffer was dropped due to clipping + +2011-10-28 10:37:21 +0200 Sebastian Dröge + + * docs/libs/gstreamer-libs-sections.txt: + * libs/gst/base/gstcollectpads2.c: + * libs/gst/base/gstcollectpads2.h: + * win32/common/libgstbase.def: + collectpads2: Merge the clip and prepare_buffer function into one + +2011-10-28 10:17:06 +0200 Sebastian Dröge + + * libs/gst/base/gstcollectpads2.c: + * libs/gst/base/gstcollectpads2.h: + collectpads2: Merge clipping API from old collectpads + +2011-10-28 09:19:29 +0100 Tim-Philipp Müller + + * libs/gst/base/gstbasesink.c: + basesink: make default query function name show up in gst-inspect + +2011-09-27 15:48:52 +0200 Mark Nauwelaerts + + * libs/gst/base/gstcollectpads2.c: + collectpads2: avoid hanging in case of sparse newsegment events + ... in the extent that a non-waiting pad (so indicated by newsegment) + turns out to provide the best buffer, which is then forced to waiting + for book-keeping purposes, but that should only be temporary. + See bug #415754. + +2011-10-28 09:38:35 +0200 Sebastian Dröge + + * libs/gst/base/gstcollectpads2.c: + collectpads2: Use G_DEFINE_TYPE instead of GST_BOILERPLATE + +2011-10-28 09:35:50 +0200 Sebastian Dröge + + * docs/libs/gstreamer-libs-docs.sgml: + * docs/libs/gstreamer-libs-sections.txt: + collectpads2: Add to the documentation + +2011-10-28 09:26:11 +0200 Sebastian Dröge + + * win32/common/libgstbase.def: + win32: Add new collectpads2 API + +2011-10-28 09:18:55 +0200 Sebastian Dröge + + * libs/gst/base/Makefile.am: + * libs/gst/base/gstcollectpads2.c: + * libs/gst/base/gstcollectpads2.h: + base: Add collectpads2 + This handles muxing of sparse/subtitle streams and has + lots of cleanup. Still missing is special support for + live streams but this can be added later without breaking + API/ABI. + Based on the version from the videomixer plugin. + https://bugzilla.gnome.org/show_bug.cgi?id=415754 + +2011-10-27 17:09:51 +0200 Wim Taymans + + * tests/check/elements/funnel.c: + * tests/check/elements/selector.c: + * tests/check/elements/tee.c: + * tests/check/gst/gstbufferlist.c: + * tests/check/gst/gstelementfactory.c: + * tests/check/gst/gststructure.c: + * tests/check/gst/gstutils.c: + * tests/check/libs/transform1.c: + * tests/check/pipelines/queue-error.c: + tests: fix compilation + +2011-10-27 17:09:34 +0200 Wim Taymans + + * win32/common/libgstreamer.def: + defs: update + +2011-10-27 17:09:04 +0200 Wim Taymans + + * gst/gstcaps.c: + * gst/gstcaps.h: + caps: add empty_simple variants + +2011-10-27 16:51:16 +0200 Wim Taymans + + * tests/check/gst/gstiterator.c: + * tests/check/gst/gststructure.c: + * tests/check/pipelines/simple-launch-lines.c: + tests: fix compilation + +2011-10-27 14:56:24 +0100 Johan Boulé + + * gst/gstcaps.h: + caps: use G_GNUC_NULL_TERMINATED for gst_caps_new_simple() and gst_caps_new_full() + If you get warnings, use gst_caps_new_empty(). + https://bugzilla.gnome.org/show_bug.cgi?id=343346 + +2011-10-27 15:27:19 +0200 Wim Taymans + + Merge branch 'master' into 0.11 + Conflicts: + libs/gst/base/gstbasetransform.c + +2011-10-27 13:25:08 +0100 Tim-Philipp Müller + + * gst/gststructure.h: + structure: use G_GNUC_NULL_TERMINATED for gst_structure_new() + If you get a warning, use gst_structure_empty_new(). + https://bugzilla.gnome.org/show_bug.cgi?id=343346 + +2011-10-27 23:08:14 +1100 Jan Schmidt + + * libs/gst/base/gstbasetransform.c: + basetransform: Fix refcount leak + Don't leak peercaps and a ref to the basetransform when returning + the cached caps. + +2011-10-27 10:38:10 +0200 Stefan Sauer + + * libs/gst/controller/gstcontroller.c: + controller: fix wrong order of calls in the docs. + +2011-10-26 12:23:07 +0200 Stefan Sauer + + * gst/gstevent.c: + event: clarify docs for step event + +2011-10-18 23:19:47 +0100 Tim-Philipp Müller + + * gst/gstregistry.c: + registry: add support for GST_REGISTRY_REUSE_PLUGIN_SCANNER=no + This will make sure we spawn a new plugin scanner helper for each plugin + to be introspected, which helps with making sure we don't load too many + shared objects (libs, plugins) at the same time on systems where there + is a hard limit like on Android. + A better version might re-use the scanner for up to N times, though + it's not clear whether that would actually improve things dramatically. + https://bugzilla.gnome.org/show_bug.cgi?id=662091 + +2011-10-21 10:23:04 -0300 Thiago Santos + + * gst/gstcaps.c: + caps: No need to require writable caps for _append/_merge second caps + The second caps ownership is transfered, no need to require it to + be writable from the caller function. Instead, _append and _merge + make it writable on their own. + Discovered because of an assertion on encoding-profile.c in + _get_input_caps using _merge but not passing writable caps. + +2011-10-21 14:20:40 +0200 Stefan Sauer + + * gst/gsttagsetter.c: + * gst/gsttagsetter.h: + * tests/check/gst/struct_arm.h: + * tests/check/gst/struct_hppa.h: + * tests/check/gst/struct_i386.h: + * tests/check/gst/struct_ppc32.h: + * tests/check/gst/struct_ppc64.h: + * tests/check/gst/struct_sparc.h: + * tests/check/gst/struct_x86_64.h: + interfaces: clean up the use of iface and class/klass + +2011-10-21 11:15:11 +0200 Stefan Sauer + + * docs/random/porting-to-0.11.txt: + * docs/random/status-0.11-14-jun-2011.txt: + * gst/gstquery.c: + docs: spelling and formatting fixes + +2011-10-21 10:52:46 +0200 Edward Hervey + + Merging origin/master + Conflicts: + gst/gstbin.c + gst/gstbus.c + gst/gstdebugutils.c + gst/gstpad.c + libs/gst/base/gstbaseparse.c + libs/gst/base/gstbasesrc.c + +2011-10-20 16:59:01 +0200 Sebastian Dröge + + * libs/gst/base/gstbaseparse.c: + * libs/gst/base/gstbaseparse.h: + baseparse: Fix documentation, it's pre_push_frame and not pre_push_buffer + +2011-10-20 14:02:44 +0100 Vincent Penquerc'h + + * libs/gst/base/gstbasetransform.c: + basetransform: cache transformed caps where appropriate + Speeds up negotiation a fair bit on a contrived pipeline + with a dozen colorspace conversions. + Hopefully clears out the cache every time it ought to. + https://bugzilla.gnome.org/show_bug.cgi?id=662291 + +2011-10-20 10:45:30 -0300 Reynaldo H. Verdejo Pinochet + + * Android.mk: + Fix broken android building due to name change in 01d87250a845e55d6 + +2011-10-20 08:31:18 +0200 Sebastian Dröge + + * libs/gst/base/gstbaseparse.c: + * libs/gst/base/gstbaseparse.h: + basebarse: Add detect vfunc to allow subclasses to do format detection before anything else + API: GstBaseParseClass::detect() + This is called with the first buffers until the subclass has finished detection + and only afterwards the original buffers are handled as before. The vfunc allows + detection of the stream format without breaking the upstream framing. + +2011-10-20 08:57:57 +0200 Stefan Sauer + + * gst/gstpad.c: + pad: not only describe conditions in the docs, also check them in the code + When blocking pads, check if the pad is in the rigt direction. Log some info + for the developer and return FALSE, instead of just locking up. + +2011-10-19 23:07:46 +0200 René Stadler + + * gst/gstpluginfeature.h: + * gst/gstregistry.c: + * tests/check/generic/states.c: + * tests/check/gst/gstregistry.c: + Revert gst_plugin_feature_get_name to const string return + Returning a newly allocated string makes no sense. It's unexpected for a + getter, and also this behaves differently in 0.10, so it would make future + merges harder. + Except for these two places here in core which were updated for the new + semantic, the return value is getting leaked all over the place. + +2011-10-19 12:12:36 +0200 Edward Hervey + + * gst/gstobject.c: + gstobject: Add (skip) annotation to gst_object_ref_sink + +2011-10-19 11:59:29 +0200 Edward Hervey + + * gst/gstiterator.c: + gstiterator: Add skip annotation for creating GstIterator + Not really useful for bindings + +2011-08-29 13:56:19 -0300 Johan Dahlin + + * gst/gstpoll.c: + introspection: Skip gst_poll apis + https://bugzilla.gnome.org/show_bug.cgi?id=657640 + +2011-08-29 13:55:13 -0300 Johan Dahlin + + * gst/gstvalue.c: + introspection: Skip GType and GValue transform apis + These do not make sense to expose to language bindings + https://bugzilla.gnome.org/show_bug.cgi?id=657640 + +2011-08-29 13:54:21 -0300 Johan Dahlin + + * gst/gst.c: + introspection: Skip gst_init_get_option_group + It uses GOptionGroup which is not wrappable + https://bugzilla.gnome.org/show_bug.cgi?id=657640 + +2011-08-29 13:53:39 -0300 Johan Dahlin + + * gst/gstbufferpool.c: + * gst/gstparamspecs.c: + introspection: Add missing annotations + https://bugzilla.gnome.org/show_bug.cgi?id=657640 + +2011-08-29 13:52:26 -0300 Johan Dahlin + + * gst/gstbus.c: + introspection: Rename gst_bus_add_watch_full to gst_bus_add_watch + https://bugzilla.gnome.org/show_bug.cgi?id=657640 + +2011-08-29 13:50:40 -0300 Johan Dahlin + + * gst/gstindex.h: + Sync documentation arguments + The introspection scanner warns if the header and the source + uses mismatching parameter names. + https://bugzilla.gnome.org/show_bug.cgi?id=657640 + +2011-08-29 13:50:02 -0300 Johan Dahlin + + * gst/gststructure.c: + * gst/gststructure.h: + * win32/common/libgstreamer.def: + Add gst_structure_get_type + https://bugzilla.gnome.org/show_bug.cgi?id=657640 + +2011-10-18 19:21:58 -0300 Thiago Santos + + * gst/gstmessage.c: + message: protect against null message sources + Message sources can be null, check if it is before trying to + access its name. + +2011-10-18 08:48:37 -0300 Thiago Santos + + * libs/gst/base/gstbaseparse.h: + baseparse: add since doc to new getcaps function + +2011-10-18 14:08:19 +0200 Stefan Sauer + + * gst/gstbin.c: + * gst/gstbus.c: + * gst/gstmessage.c: + * libs/gst/base/gstbasesink.c: + logging: more logging and prefer human readable details over memory locations + +2011-10-18 14:05:37 +0200 Stefan Sauer + + * gst/gstdebugutils.c: + debugutils: improve display of ghost- and proxypads + Handle virtual links between ghost and proxypads when iterating pads instead of + when linking. Besides using less code this provides a more accurate picture. + +2011-10-18 13:54:52 +0200 Edward Hervey + + * libs/gst/controller/gstcontroller.c: + * libs/gst/controller/gsthelper.c: + * libs/gst/controller/gstinterpolationcontrolsource.c: + controller: Add g-i annotations and remove "Since:" markers + +2011-10-17 14:42:08 -0300 Thiago Santos + + * libs/gst/base/gstbaseparse.c: + * libs/gst/base/gstbaseparse.h: + baseparse: add getcaps function + Adds a getcaps function to the sink pad to make parsers propagate + downstream caps restrictions to upstream. + The pipeline "audiotestsrc num-buffers=100 ! faac ! aacparse ! + "audio/mpeg, version=(int)4, stream-format=(string)adts" ! filesink" + wouldn't work because aacparse wouldn't propagate the adts restriction + upstream to faac. + This patch adds a default getcaps to the sink pad to simply proxy + downstream caps and also adds a 'get_sink_caps' function pointer + to GstBaseParseClass for subclasses that need more refined getcaps. + https://bugzilla.gnome.org/show_bug.cgi?id=661874 + +2011-10-18 12:39:03 +0200 Wim Taymans + + * libs/gst/base/gstbasesrc.c: + basesrc: also update the stream time + +2011-10-18 10:58:14 +0200 Sebastian Dröge + + * libs/gst/base/gstbaseparse.c: + baseparse: Fix handling of queued frames + gst_base_parse_push_frame() already frees the frame, no need to + do it another time again. + +2011-10-17 21:38:56 +0200 René Stadler + + * tests/check/elements/selector.c: + tests: fix padtemplate leak in selector test + In 0.11, gst_pad_get_pad_template returns a reference. + +2011-10-17 21:37:17 +0200 René Stadler + + * gst/gstpad.c: + pad: fix buffer/event leak when pad is flushing + Apparently this got lost while refactoring probes. + +2011-10-17 17:00:04 +0200 Wim Taymans + + * libs/gst/base/gstbaseparse.c: + baseparse: remove the memory from the tmpbuf + We use a tmpbuf to hold a temporary pointer to the adapter memory. We need to + remove that memory when we no longer need it. + +2011-10-17 13:55:35 +0200 René Stadler + + * gst/gstcaps.c: + caps: fix race condition and memory leak in gst_static_caps_get + This was leaking the PtrArray from caps->priv, as set up by the other call to + gst_caps_init. Also, the thread safety issue presented in the comment above was + not taken care of anymore. We now zero the refcount again when publishing the + structure. + Fixes #661629. + +2011-10-17 09:28:43 +0200 Edward Hervey + + * libs/gst/check/gstcheck.h: + gstcheck: Make ASSERT_MINI_OBJECT_REFCOUNT more useful + knowing which miniobject failed helps us locate it in debug logs + +2011-10-17 09:28:24 +0200 Edward Hervey + + * libs/gst/check/gstcheck.c: + gstcheck: Make _check_buffer_data a bit more verbose + +2011-10-17 09:27:49 +0200 Edward Hervey + + * tests/check/gst/gstregistry.c: + check: Don't leak the feature name + +2011-10-17 09:27:26 +0200 Edward Hervey + + * gst/gstregistry.c: + gstregistry: Don't leak feature name + +2011-10-16 21:12:07 +0100 Tim-Philipp Müller + + * gst/gstbus.c: + bus: give watch source a name + Give our GSource a meaningful name. Source names can be + used for debugging and profiling, for example with + systemtap or gdb. + +2011-10-14 09:35:09 +0200 Edward Hervey + + * gst/gstutils.c: + gstbuffer: Add transfer annotations for gst_buffer_join() + +2011-10-16 17:42:22 +0200 Wim Taymans + + * docs/random/wtay/porting-list-0.11.txt: + porting: update + +2011-10-16 17:03:27 +0200 Wim Taymans + + * docs/random/wtay/porting-list-0.11.txt: + porting: update + +2011-10-16 17:00:09 +0200 Wim Taymans + + * docs/random/wtay/porting-list-0.11.txt: + porting: update porting list + +2011-10-16 14:45:03 +0200 Wim Taymans + + * gst/gstbus.c: + * gst/gstclock.c: + * gst/gstindex.c: + * gst/gstindexfactory.c: + * gst/gstregistry.c: + * gst/gstsystemclock.c: + * gst/gsttypefindfactory.c: + fix more parent_class + +2011-10-16 14:20:33 +0200 Wim Taymans + + Merge branch 'master' into 0.11 + Conflicts: + gst/gstevent.h + +2011-10-16 14:17:25 +0200 Wim Taymans + + * gst/gstpadtemplate.c: + padtemplate: clean up parent_class + +2011-10-14 12:57:38 +0200 Wim Taymans + + * gst/gstpad.c: + pad: clean up parent_class handling + +2011-10-14 09:35:09 +0200 Edward Hervey + + * gst/gstutils.c: + gstbuffer: Add transfer annotations for gst_buffer_join() + +2011-10-14 09:27:38 +0200 Edward Hervey + + * tools/gst-inspect.c: + gst-inspect: Don't leak plugin feature list + +2011-10-13 17:33:06 +0200 Stefan Sauer + + * gst/gstbus.c: + bus: fix typo in the docs + +2011-10-13 16:48:02 +0200 Stefan Sauer + + * gst/gstdebugutils.c: + debugutils: show if an element is state-locked + +2011-10-13 16:42:10 +0200 Stefan Sauer + + * gst/gstbin.c: + logging: use _OBJECT variants more + +2011-10-13 12:23:59 +0200 René Stadler + + * libs/gst/base/gstbasesrc.c: + basesrc: fix caps leak + +2011-10-13 10:19:34 +0200 Sebastian Dröge + + * gst/gstbuffer.h: + buffer: Use an inline function instead of a macro for gst_buffer_replace() + This gives us type checks by the compiler and more useful compiler errors. + +2011-10-13 10:18:51 +0200 Sebastian Dröge + + * gst/gstevent.h: + event: Use an inline function instead of a macro for gst_event_replace() + This gives us type checks by the compiler and more useful compiler errors. + +2011-10-13 08:51:42 +0200 Wim Taymans + + Merge branch 'master' into 0.11 + Conflicts: + gst/gstutils.c + libs/gst/base/gstbasesrc.c + +2011-10-12 18:14:00 -0300 Thiago Santos + + * gst/gstghostpad.c: + ghostpad: Do not unref the internal pad twice + g_value_unset should already unref the internal proxypad, no + need to do it again + +2011-10-12 17:17:09 +0200 Wim Taymans + + * libs/gst/base/gstbasesrc.c: + basesrc: properly adjust start time + When we do a non-flushing seek and closed the current segment, + make sure that we open the next segment from where we closed. + +2011-10-12 14:37:31 +0200 René Stadler + + * gst/gstevent.c: + event: add transfer type for gst_event_new_caps argument + These annotations are useful to humans as well... + +2011-10-12 14:34:24 +0200 René Stadler + + * plugins/elements/gstcapsfilter.c: + capsfilter: fix caps leak + gst_event_new_caps does not steal a reference to the caps. + +2011-10-12 13:31:48 +0200 René Stadler + + * gst/gstevent.c: + event: fix gst_event_new_segment transfer type + +2011-10-11 13:54:45 +0200 Edward Hervey + + * tests/check/generic/states.c: + * tests/check/gst/gstevent.c: + * tests/check/gst/gstghostpad.c: + * tests/check/gst/gstpad.c: + * tests/check/gst/gstutils.c: + * tests/check/gst/gstvalue.c: + tests: Fix more leaks + +2011-10-11 13:53:39 +0200 Edward Hervey + + * plugins/elements/gstcapsfilter.c: + capsfilter: Don't leak caps + +2011-10-11 13:51:54 +0200 Edward Hervey + + * libs/gst/base/gstbasetransform.c: + basetransform: Fix a caps leak and move a codeblock + The result from the block of code that was moved would only have + been used if 'peercaps' was present. + +2011-10-11 13:51:37 +0200 Edward Hervey + + * gst/gstpadtemplate.c: + * gst/gstvalue.c: + gst: More 'transfer' annotations + +2011-10-10 19:41:33 +0100 Tim-Philipp Müller + + * gst/gstutils.c: + utils: catch invalid instance sizes in gst_type_register_static_full() + Add guards to catch overly large instance sizes. + https://bugzilla.gnome.org/show_bug.cgi?id=660955 + +2011-10-10 19:30:34 +0100 Tim-Philipp Müller + + * docs/gst/gstreamer-sections.txt: + * gst/gstutils.c: + * gst/gstutils.h: + * win32/common/libgstreamer.def: + utils: remove gst_type_register_static_full() + It was only really used by GST_BOILERPLATE, and that is no more. + https://bugzilla.gnome.org/show_bug.cgi?id=660955 + +2011-10-10 11:47:42 -0300 Thiago Santos + + * libs/gst/base/gstbasesrc.c: + basesrc: avoid trying to alloc enormous buffer + If a class extending basesrc doesn't set blocksize, basesrc + would try to allocate a (guint)-1 sized buffer, which is enormous + and likely would fail. + Avoid it and error out. + +2011-10-10 17:17:37 +0200 Edward Hervey + + * docs/random/wtay/porting-list-0.11.txt: + porting: update + +2011-10-10 17:04:39 +0200 Edward Hervey + + * gst/gstghostpad.c: + ghostpad: If we don't control a pad/template, return proper caps + If there's a filter, we can return that in _get_caps() + +2011-10-10 16:52:43 +0200 Edward Hervey + + * gst/gstpad.c: + gstpad: Specify transfer full for gst_pad_get_caps() + It increments the reference count of the returned caps. + +2011-10-10 11:02:08 +0200 Edward Hervey + + * gst/gstpad.c: + gstpad: Add debug to know what events are transferred between pads + +2011-10-10 10:38:12 +0200 Edward Hervey + + * gst/gstpad.c: + gstpad: Unset EOS event on FLUSH_STOP + +2011-10-07 11:49:19 +0200 Edward Hervey + + * gst/gstpad.c: + gstpad: Don't ignore downstream FlowReturn with IDLE probes + If pushgin downstream returned a non-ok value (like GST_FLOW_WRONG_STATE), + we don't want to end up returning a different value (GST_FLOW_OK in this + case) if IDLE probes are present. + +2011-10-10 13:23:09 +0200 Wim Taymans + + * docs/random/wtay/porting-list-0.11.txt: + porting: update + +2011-10-10 12:54:54 +0200 Wim Taymans + + * docs/random/wtay/porting-list-0.11.txt: + porting: update + +2011-10-10 12:38:35 +0200 Wim Taymans + + * docs/random/wtay/porting-list-0.11.txt: + porting: update + +2011-10-10 12:27:52 +0200 Wim Taymans + + * docs/random/wtay/porting-list-0.11.txt: + porting: update + +2011-10-10 11:49:46 +0200 Wim Taymans + + * docs/random/wtay/porting-list-0.11.txt: + porting: update + +2011-10-10 11:36:23 +0200 Wim Taymans + + * gst/gstcompat.h: + compat: add compat define for UNEXPECTED + +2011-10-10 11:33:51 +0200 Wim Taymans + + * docs/random/porting-to-0.11.txt: + * gst/gstbufferpool.c: + * gst/gstpad.c: + * gst/gstpad.h: + * libs/gst/base/gstbaseparse.c: + * libs/gst/base/gstbasesink.c: + * libs/gst/base/gstbasesrc.c: + * libs/gst/base/gstcollectpads.c: + * plugins/elements/gstfakesink.c: + * plugins/elements/gstfdsrc.c: + * plugins/elements/gstfilesrc.c: + * plugins/elements/gstidentity.c: + * plugins/elements/gstmultiqueue.c: + * plugins/elements/gstqueue.c: + * plugins/elements/gstqueue2.c: + * plugins/elements/gsttee.c: + * tests/check/elements/fakesink.c: + * tests/check/elements/filesrc.c: + * tests/check/gst/gstpad.c: + pad: GST_FLOW_UNEXPECTED -> GST_FLOW_EOS + +2011-10-10 11:30:21 +0200 Wim Taymans + + * docs/random/wtay/porting-list-0.11.txt: + porting: update + +2011-10-09 11:49:45 -0300 Thiago Santos + + * tests/check/elements/tee.c: + tests: tee: Remember to initialize variables to NULL + app_thread needs to be initialized to NULL, otherwise tests + will try to use it and crash + +2011-10-08 20:56:59 +0100 Tim-Philipp Müller + + * common: + Update common for check-exports script changes + +2011-10-08 20:46:22 +0100 Tim-Philipp Müller + + * gst/gstelement.c: + * gst/gstelementfactory.c: + * win32/common/libgstreamer.def: + elementfactory: don't export private _gst_elementclass_factory quark + +2011-10-08 20:15:46 +0100 Tim-Philipp Müller + + * gst/gst.c: + * gst/gst_private.h: + * gst/gstinfo.c: + * gst/gstinfo.h: + info: make _gst_debug_init() private for now + This was a FIXME for 0.11. I guess a case could be made to keep it around + separately for apps or libraries that only want to use GStreamer's debugging + system, but it seems more likely they'd just copy the two source files into + their own tree if the case. Also, things like types wouldn't be initialised + without gst_init(). We can still make it public again if anyone needs it, + but then we should make it a proper function and not hide it behind + underscores. + +2011-10-08 19:54:06 +0100 Tim-Philipp Müller + + Merge remote-tracking branch 'origin/master' into symbol-exports + +2011-10-08 14:17:25 +0100 Tim-Philipp Müller + + * gst/gstparse.c: + * gst/parse/.gitignore: + * gst/parse/Makefile.am: + * gst/parse/grammar.y: + * gst/parse/types.h: + gstparse: prefix generated parser functions so they don't get exported + Don't export those 35-something random _gst_parse_yy* symbols. These were + never in any header files and also blacklisted from our .def files, in + case anyone wonders. + +2011-10-08 13:37:09 +0100 Tim-Philipp Müller + + * configure.ac: + * gst/gstinfo.c: + * gst/gstinfo.h: + * gst/gstobject.c: + * win32/common/libgstreamer.def: + info: rename __gst_debug_* to _gst_debug_* and fix symbol export regexp + Only export GStreamer symbols with one leading underscore, not two + or more leading underscores. + Requires a rebuild of the entire stack, sorry. + +2011-10-08 15:16:59 +0200 Wim Taymans + + * docs/random/wtay/porting-list-0.11.txt: + porting: update doc + +2011-10-08 14:25:02 +0200 Wim Taymans + + Merge branch 'master' into 0.11 + +2011-10-08 14:23:30 +0200 Wim Taymans + + * docs/random/wtay/porting-list-0.11.txt: + porting: update + +2011-10-08 12:08:49 +0200 Wim Taymans + + * docs/random/wtay/porting-list-0.11.txt: + porting: upate porting list + +2011-10-08 09:41:54 +0200 Wim Taymans + + * gst/gstinfo.c: + info: port to 0.11 + +2011-10-08 09:28:02 +0200 Wim Taymans + + Merge branch 'master' into 0.11 + Conflicts: + gst/gstpad.c + +2011-10-07 09:45:20 -0300 Thiago Santos + + * gst/gstpipeline.c: + pipeline: Use pipeline category for one more log message + Makes debugging easier. + +2011-10-07 16:36:10 +0200 Robert Swain + + * gst/gstinfo.c: + * gst/gstpad.c: + GST_PTR_FORMAT: Add GstBuffer ptr format and use in GST_SCHEDULING + GstBuffer pointers can now be printed using GST_PTR_FORMAT. This is used + in the very useful GST_SCHEDULING debug logs in gstpad.c and allows for + easier and more information tracking of buffer progress through a + pipeline with just debug logging. + +2011-10-07 13:55:18 +0100 Tim-Philipp Müller + + * tests/check/generic/sinks.c: + tests: fix compiler warnings in sinks test + +2011-10-07 13:54:51 +0100 Tim-Philipp Müller + + * docs/libs/gstreamer-libs-docs.sgml: + * docs/libs/gstreamer-libs-sections.txt: + * libs/gst/base/Makefile.am: + * libs/gst/base/gstdataqueue.c: + * libs/gst/base/gstdataqueue.h: + * plugins/elements/Makefile.am: + * plugins/elements/gstdataqueue.c: + * plugins/elements/gstdataqueue.h: + * plugins/elements/gstmultiqueue.h: + * tests/check/libs/gstlibscpp.cc: + * tests/check/libs/libsabi.c: + * win32/common/libgstbase.def: + base: make GstDataQueue private API for multiqueue + There's no code that uses it other than multiqueue, so make it private + to multiqueue for now. That way we can also do optimisations that + require API/ABI breaks. If anyone ever wants to use it, we can still + make it public again. + +2011-10-06 17:27:47 +0200 Wim Taymans + + Merge branch 'master' into 0.11 + +2011-10-06 17:26:02 +0200 Wim Taymans + + * docs/random/wtay/porting-list-0.11.txt: + porting: update list + +2011-10-06 14:34:09 +0200 Mark Nauwelaerts + + * libs/gst/base/gstbaseparse.c: + baseparse: send duration message when updating internal duration + +2011-10-06 14:04:05 +0200 Wim Taymans + + * docs/random/wtay/porting-list-0.11.txt: + porting: update list + +2011-10-06 10:59:09 +0200 Wim Taymans + + * docs/random/wtay/porting-list-0.11.txt: + update porting list + +2011-10-05 20:06:51 +0200 Wim Taymans + + * docs/random/wtay/porting-list-0.11.txt: + porting: update list + +2011-10-05 13:43:46 +0200 Wim Taymans + + * docs/random/wtay/porting-list-0.11.txt: + porting: update porting status + +2011-10-05 11:20:37 +0200 Edward Hervey + + * gst/gstbufferpool.c: + gstbufferpool: Use glib compat macros for atomic pointers + +2011-10-04 18:55:20 +0200 Wim Taymans + + * docs/random/wtay/porting-list-0.11.txt: + update porting list + +2011-10-04 18:55:09 +0200 Wim Taymans + + * gst/gstbuffer.c: + buffer: improve docs + +2011-10-04 17:39:17 +0200 Wim Taymans + + Merge branch 'master' into 0.11 + +2011-10-04 17:36:26 +0200 Wim Taymans + + * docs/random/wtay/porting-list-0.11.txt: + update porting list + +2011-10-04 15:55:05 +0200 Edward Hervey + + * gst/gstevent.c: + gstevent: specify (transfer) for gst_event_new_segment + +2011-10-04 13:16:14 +0200 Wim Taymans + + * docs/random/wtay/porting-list-0.11.txt: + add porting list + +2011-09-26 14:36:46 +0400 Stas Sergeev + + * libs/gst/base/gstbaseparse.c: + baseparse: Return success if optional start/stop method is not provided + This allows to not implement the optional start/stop methods. + +2011-10-03 10:06:17 +0200 Wim Taymans + + Merge branch 'master' into 0.11 + Conflicts: + libs/gst/base/gstbaseparse.c + +2011-10-03 09:29:10 +0200 Edward Hervey + + * gst/gstquery.c: + gstquery: Make debugging message more informative + For all the newcomers out there who still don't know the values of + GstQueryType enum by heart... + ... and old-timers who've got better things to do :) + +2011-09-30 15:25:20 +0100 Tim-Philipp Müller + + * libs/gst/base/gstbaseparse.c: + baseparse: make estimating the position in query handler actually work + No point estimating if we don't set the result afterwards. + +2011-09-26 13:14:42 +0100 Vincent Penquerc'h + + * libs/gst/base/gstbaseparse.c: + baseparse: answer position query in stream time and try upstream first + Let the demuxer have first say as well. + https://bugzilla.gnome.org/show_bug.cgi?id=659485 + +2011-09-30 14:52:01 +0100 Tim-Philipp Müller + + * gst/gst.h: + gst.h: include header for atomic queue + +2011-09-30 14:50:51 +0100 Tim-Philipp Müller + + * tests/check/Makefile.am: + * tests/check/gst/.gitignore: + * tests/check/gst/gstatomicqueue.c: + tests: add minimal test for GstAtomicQueue + Just new + free. + +2011-09-29 18:06:25 +0200 Wim Taymans + + * docs/random/release: + update release notes + Change the mail addresses to the freedesktop ones + +2011-09-29 17:04:57 +0200 Wim Taymans + + * configure.ac: + * win32/common/config.h: + * win32/common/gstversion.h: + back to development + === release 0.11.1 === -2011-09-29 Wim Taymans +2011-09-29 16:50:21 +0200 Wim Taymans + * ChangeLog: + * NEWS: + * RELEASE: * configure.ac: - releasing 0.11.1, "Sweet New Blossom" + * gstreamer.doap: + * po/af.po: + * po/az.po: + * po/be.po: + * po/bg.po: + * po/ca.po: + * po/cs.po: + * po/da.po: + * po/de.po: + * po/el.po: + * po/en_GB.po: + * po/es.po: + * po/eu.po: + * po/fi.po: + * po/fr.po: + * po/gl.po: + * po/hu.po: + * po/id.po: + * po/it.po: + * po/ja.po: + * po/lt.po: + * po/nb.po: + * po/nl.po: + * po/pl.po: + * po/pt_BR.po: + * po/ro.po: + * po/ru.po: + * po/rw.po: + * po/sk.po: + * po/sl.po: + * po/sq.po: + * po/sr.po: + * po/sv.po: + * po/tr.po: + * po/uk.po: + * po/vi.po: + * po/zh_CN.po: + * po/zh_TW.po: + * win32/common/config.h: + * win32/common/gstenumtypes.c: + * win32/common/gstenumtypes.h: + * win32/common/gstversion.h: + RELEASE 0.11.1 2011-09-28 18:46:09 +0200 Wim Taymans diff --git a/Makefile.am b/Makefile.am index f6ddc4a..671aec1 100644 --- a/Makefile.am +++ b/Makefile.am @@ -4,7 +4,7 @@ DISTCHECK_CONFIGURE_FLAGS=--enable-gtk-doc --enable-docbook ACLOCAL_AMFLAGS = -I m4 -I common/m4 aclocaldir = $(datadir)/aclocal -aclocal_DATA = gst-element-check-@GST_MAJORMINOR@.m4 +aclocal_DATA = gst-element-check-@GST_API_VERSION@.m4 SUBDIRS = pkgconfig \ gst libs plugins tools tests \ @@ -32,7 +32,7 @@ EXTRA_DIST = \ scripts/gst-uninstalled \ $(win32) -CLEANFILES = gst-element-check-@GST_MAJORMINOR@.m4 +CLEANFILES = gst-element-check-@GST_API_VERSION@.m4 DISTCLEANFILES = _stdint.h @@ -96,12 +96,10 @@ endif # FIXME: this target should be run every time we do "make release" # find a way of automating that win32-update: - for f in gstversion.h gstenumtypes.c gstenumtypes.h gstmarshal.c gstmarshal.h; do \ + for f in gstversion.h gstenumtypes.c gstenumtypes.h; do \ cp $(top_builddir)/gst/$$f win32/common; done $(top_srcdir)/tools/gst-indent win32/common/gstenumtypes.c $(top_srcdir)/tools/gst-indent win32/common/gstenumtypes.c - $(top_srcdir)/tools/gst-indent win32/common/gstmarshal.c - $(top_srcdir)/tools/gst-indent win32/common/gstmarshal.c cp $(top_builddir)/win32/common/config.h-new \ $(top_srcdir)/win32/common/config.h @@ -150,8 +148,8 @@ endif check: $(CHECK_EXPORTS) check-enum-gettypes -gst-element-check-@GST_MAJORMINOR@.m4: gst-element-check.m4 - $(AM_V_GEN)cp gst-element-check.m4 gst-element-check-@GST_MAJORMINOR@.m4 +gst-element-check-@GST_API_VERSION@.m4: gst-element-check.m4 + $(AM_V_GEN)cp gst-element-check.m4 gst-element-check-@GST_API_VERSION@.m4 # cruft: plugins that have been merged or moved or renamed @@ -200,4 +198,4 @@ CRUFT_DIRS = \ include $(top_srcdir)/common/cruft.mak -all-local: gst-element-check-@GST_MAJORMINOR@.m4 check-cruft +all-local: gst-element-check-@GST_API_VERSION@.m4 check-cruft diff --git a/Makefile.in b/Makefile.in index e85d449..b307364 100644 --- a/Makefile.in +++ b/Makefile.in @@ -1,9 +1,9 @@ -# Makefile.in generated by automake 1.11.1 from Makefile.am. +# Makefile.in generated by automake 1.11.4 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, -# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation, -# Inc. +# 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software +# Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. @@ -27,6 +27,23 @@ # set CRUFT_FILES and/or CRUFT_DIRS in your Makefile.am when you include this VPATH = @srcdir@ +am__make_dryrun = \ + { \ + am__dry=no; \ + case $$MAKEFLAGS in \ + *\\[\ \ ]*) \ + echo 'am--echo: ; @echo "AM" OK' | $(MAKE) -f - 2>/dev/null \ + | grep '^AM OK$$' >/dev/null || am__dry=yes;; \ + *) \ + for am__flg in $$MAKEFLAGS; do \ + case $$am__flg in \ + *=*|--*) ;; \ + *n*) am__dry=yes; break;; \ + esac; \ + done;; \ + esac; \ + test $$am__dry = yes; \ + } pkgdatadir = $(datadir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ pkglibdir = $(libdir)/@PACKAGE@ @@ -100,11 +117,11 @@ mkinstalldirs = $(install_sh) -d CONFIG_HEADER = config.h CONFIG_CLEAN_FILES = stamp.h gst-element-check.m4 gstreamer.spec CONFIG_CLEAN_VPATH_FILES = -AM_V_GEN = $(am__v_GEN_$(V)) -am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) +AM_V_GEN = $(am__v_GEN_@AM_V@) +am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@) am__v_GEN_0 = @echo " GEN " $@; -AM_V_at = $(am__v_at_$(V)) -am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) +AM_V_at = $(am__v_at_@AM_V@) +am__v_at_ = $(am__v_at_@AM_DEFAULT_V@) am__v_at_0 = @ SOURCES = DIST_SOURCES = @@ -115,6 +132,11 @@ RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \ install-pdf-recursive install-ps-recursive install-recursive \ installcheck-recursive installdirs-recursive pdf-recursive \ ps-recursive uninstall-recursive +am__can_run_installinfo = \ + case $$AM_UPDATE_INFO_DIR in \ + n|no|NO) false;; \ + *) (install-info --version) >/dev/null 2>&1;; \ + esac am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; am__vpath_adj = case $$p in \ $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \ @@ -136,6 +158,12 @@ am__nobase_list = $(am__nobase_strip_setup); \ am__base_list = \ sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \ sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g' +am__uninstall_files_from_dir = { \ + test -z "$$files" \ + || { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \ + || { echo " ( cd '$$dir' && rm -f" $$files ")"; \ + $(am__cd) "$$dir" && rm -f $$files; }; \ + } am__installdirs = "$(DESTDIR)$(aclocaldir)" DATA = $(aclocal_DATA) RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \ @@ -149,9 +177,11 @@ DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) distdir = $(PACKAGE)-$(VERSION) top_distdir = $(distdir) am__remove_distdir = \ - { test ! -d "$(distdir)" \ - || { find "$(distdir)" -type d ! -perm -200 -exec chmod u+w {} ';' \ - && rm -fr "$(distdir)"; }; } + if test -d "$(distdir)"; then \ + find "$(distdir)" -type d ! -perm -200 -exec chmod u+w {} ';' \ + && rm -rf "$(distdir)" \ + || { sleep 5 && rm -rf "$(distdir)"; }; \ + else :; fi am__relativize = \ dir0=`pwd`; \ sed_first='s,^\([^/]*\)/.*$$,\1,'; \ @@ -180,6 +210,8 @@ am__relativize = \ DIST_ARCHIVES = $(distdir).tar.gz $(distdir).tar.bz2 GZIP_ENV = --best distuninstallcheck_listfiles = find . -type f -print +am__distuninstallcheck_listfiles = $(distuninstallcheck_listfiles) \ + | sed 's|^\./|$(prefix)/|' | grep -v '$(infodir)/dir$$' distcleancheck_listfiles = find . -type f -print ACLOCAL = @ACLOCAL@ @@ -236,10 +268,12 @@ GCOV_CFLAGS = @GCOV_CFLAGS@ GCOV_LIBS = @GCOV_LIBS@ GETTEXT_MACRO_VERSION = @GETTEXT_MACRO_VERSION@ GETTEXT_PACKAGE = @GETTEXT_PACKAGE@ +GIO_CFLAGS = @GIO_CFLAGS@ +GIO_LDFLAGS = @GIO_LDFLAGS@ +GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ +GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ GLIB_LIBS = @GLIB_LIBS@ -GLIB_ONLY_CFLAGS = @GLIB_ONLY_CFLAGS@ -GLIB_ONLY_LIBS = @GLIB_ONLY_LIBS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GMP_LIBS = @GMP_LIBS@ @@ -252,10 +286,10 @@ GST_ALL_CFLAGS = @GST_ALL_CFLAGS@ GST_ALL_CXXFLAGS = @GST_ALL_CXXFLAGS@ GST_ALL_LDFLAGS = @GST_ALL_LDFLAGS@ GST_ALL_LIBS = @GST_ALL_LIBS@ +GST_API_VERSION = @GST_API_VERSION@ GST_CURRENT = @GST_CURRENT@ GST_DISABLE_ALLOC_TRACE_DEFINE = @GST_DISABLE_ALLOC_TRACE_DEFINE@ GST_DISABLE_GST_DEBUG_DEFINE = @GST_DISABLE_GST_DEBUG_DEFINE@ -GST_DISABLE_NET_DEFINE = @GST_DISABLE_NET_DEFINE@ GST_DISABLE_OPTION_PARSING_DEFINE = @GST_DISABLE_OPTION_PARSING_DEFINE@ GST_DISABLE_PARSE_DEFINE = @GST_DISABLE_PARSE_DEFINE@ GST_DISABLE_PLUGIN_DEFINE = @GST_DISABLE_PLUGIN_DEFINE@ @@ -269,7 +303,6 @@ GST_LIBVERSION = @GST_LIBVERSION@ GST_LIB_LDFLAGS = @GST_LIB_LDFLAGS@ GST_LICENSE = @GST_LICENSE@ GST_LT_LDFLAGS = @GST_LT_LDFLAGS@ -GST_MAJORMINOR = @GST_MAJORMINOR@ GST_OBJ_CFLAGS = @GST_OBJ_CFLAGS@ GST_OBJ_CXXFLAGS = @GST_OBJ_CXXFLAGS@ GST_OBJ_LIBS = @GST_OBJ_LIBS@ @@ -286,6 +319,10 @@ GST_PRINTF_EXTENSION_SEGMENT_FORMAT_DEFINE = @GST_PRINTF_EXTENSION_SEGMENT_FORMA GST_REGISTRY_DOC_TYPES = @GST_REGISTRY_DOC_TYPES@ GST_REVISION = @GST_REVISION@ GST_USING_PRINTF_EXTENSION_DEFINE = @GST_USING_PRINTF_EXTENSION_DEFINE@ +GST_VERSION_MAJOR = @GST_VERSION_MAJOR@ +GST_VERSION_MICRO = @GST_VERSION_MICRO@ +GST_VERSION_MINOR = @GST_VERSION_MINOR@ +GST_VERSION_NANO = @GST_VERSION_NANO@ GTKDOC_CHECK = @GTKDOC_CHECK@ HAVE_DOCBOOK2HTML = @HAVE_DOCBOOK2HTML@ HAVE_DOCBOOK2PS = @HAVE_DOCBOOK2PS@ @@ -301,7 +338,6 @@ HAVE_PS2PDF = @HAVE_PS2PDF@ HAVE_XMLLINT = @HAVE_XMLLINT@ HOST_CPU = @HOST_CPU@ HTML_DIR = @HTML_DIR@ -INET_ATON_LIBS = @INET_ATON_LIBS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ @@ -334,6 +370,7 @@ LTLIBINTL = @LTLIBINTL@ LTLIBOBJS = @LTLIBOBJS@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ +MANIFEST_TOOL = @MANIFEST_TOOL@ MKDIR_P = @MKDIR_P@ MSGFMT = @MSGFMT@ MSGFMT_015 = @MSGFMT_015@ @@ -389,6 +426,7 @@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ abs_top_srcdir = @abs_top_srcdir@ +ac_ct_AR = @ac_ct_AR@ ac_ct_CC = @ac_ct_CC@ ac_ct_CXX = @ac_ct_CXX@ ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ @@ -422,7 +460,6 @@ libdir = @libdir@ libexecdir = @libexecdir@ localedir = @localedir@ localstatedir = @localstatedir@ -lt_ECHO = @lt_ECHO@ mandir = @mandir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ @@ -445,7 +482,7 @@ top_builddir = @top_builddir@ top_srcdir = @top_srcdir@ DISTCHECK_CONFIGURE_FLAGS = --enable-gtk-doc --enable-docbook aclocaldir = $(datadir)/aclocal -aclocal_DATA = gst-element-check-@GST_MAJORMINOR@.m4 +aclocal_DATA = gst-element-check-@GST_API_VERSION@.m4 SUBDIRS = pkgconfig \ gst libs plugins tools tests \ docs \ @@ -483,7 +520,7 @@ EXTRA_DIST = \ scripts/gst-uninstalled \ $(win32) -CLEANFILES = gst-element-check-@GST_MAJORMINOR@.m4 +CLEANFILES = gst-element-check-@GST_API_VERSION@.m4 DISTCLEANFILES = _stdint.h # make bz2 as well @@ -542,7 +579,7 @@ all: config.h $(MAKE) $(AM_MAKEFLAGS) all-recursive .SUFFIXES: -am--refresh: +am--refresh: Makefile @: $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(top_srcdir)/common/win32.mak $(top_srcdir)/common/release.mak $(top_srcdir)/common/po.mak $(top_srcdir)/common/coverage/lcov.mak $(top_srcdir)/common/cruft.mak $(am__configure_deps) @for dep in $?; do \ @@ -567,6 +604,7 @@ Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status echo ' cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe)'; \ cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe);; \ esac; +$(top_srcdir)/common/win32.mak $(top_srcdir)/common/release.mak $(top_srcdir)/common/po.mak $(top_srcdir)/common/coverage/lcov.mak $(top_srcdir)/common/cruft.mak: $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) $(SHELL) ./config.status --recheck @@ -578,10 +616,8 @@ $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) $(am__aclocal_m4_deps): config.h: stamp-h1 - @if test ! -f $@; then \ - rm -f stamp-h1; \ - $(MAKE) $(AM_MAKEFLAGS) stamp-h1; \ - else :; fi + @if test ! -f $@; then rm -f stamp-h1; else :; fi + @if test ! -f $@; then $(MAKE) $(AM_MAKEFLAGS) stamp-h1; else :; fi stamp-h1: $(srcdir)/config.h.in $(top_builddir)/config.status @rm -f stamp-h1 @@ -610,8 +646,11 @@ distclean-libtool: -rm -f libtool config.lt install-aclocalDATA: $(aclocal_DATA) @$(NORMAL_INSTALL) - test -z "$(aclocaldir)" || $(MKDIR_P) "$(DESTDIR)$(aclocaldir)" @list='$(aclocal_DATA)'; test -n "$(aclocaldir)" || list=; \ + if test -n "$$list"; then \ + echo " $(MKDIR_P) '$(DESTDIR)$(aclocaldir)'"; \ + $(MKDIR_P) '$(DESTDIR)$(aclocaldir)' || exit 1; \ + fi; \ for p in $$list; do \ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ echo "$$d$$p"; \ @@ -625,9 +664,7 @@ uninstall-aclocalDATA: @$(NORMAL_UNINSTALL) @list='$(aclocal_DATA)'; test -n "$(aclocaldir)" || list=; \ files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ - test -n "$$files" || exit 0; \ - echo " ( cd '$(DESTDIR)$(aclocaldir)' && rm -f" $$files ")"; \ - cd "$(DESTDIR)$(aclocaldir)" && rm -f $$files + dir='$(DESTDIR)$(aclocaldir)'; $(am__uninstall_files_from_dir) # This directory's subdirectories are mostly independent; you can cd # into them and run `make' without going through this Makefile. @@ -798,13 +835,10 @@ distdir: $(DISTFILES) done @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \ if test "$$subdir" = .; then :; else \ - test -d "$(distdir)/$$subdir" \ - || $(MKDIR_P) "$(distdir)/$$subdir" \ - || exit 1; \ - fi; \ - done - @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \ - if test "$$subdir" = .; then :; else \ + $(am__make_dryrun) \ + || test -d "$(distdir)/$$subdir" \ + || $(MKDIR_P) "$(distdir)/$$subdir" \ + || exit 1; \ dir1=$$subdir; dir2="$(distdir)/$$subdir"; \ $(am__relativize); \ new_distdir=$$reldir; \ @@ -838,7 +872,11 @@ dist-gzip: distdir tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz $(am__remove_distdir) dist-bzip2: distdir - tardir=$(distdir) && $(am__tar) | bzip2 -9 -c >$(distdir).tar.bz2 + tardir=$(distdir) && $(am__tar) | BZIP2=$${BZIP2--9} bzip2 -c >$(distdir).tar.bz2 + $(am__remove_distdir) + +dist-lzip: distdir + tardir=$(distdir) && $(am__tar) | lzip -c $${LZIP_OPT--9} >$(distdir).tar.lz $(am__remove_distdir) dist-lzma: distdir @@ -846,7 +884,7 @@ dist-lzma: distdir $(am__remove_distdir) dist-xz: distdir - tardir=$(distdir) && $(am__tar) | xz -c >$(distdir).tar.xz + tardir=$(distdir) && $(am__tar) | XZ_OPT=$${XZ_OPT--e} xz -c >$(distdir).tar.xz $(am__remove_distdir) dist-tarZ: distdir @@ -864,7 +902,7 @@ dist-zip: distdir dist dist-all: distdir tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz - tardir=$(distdir) && $(am__tar) | bzip2 -9 -c >$(distdir).tar.bz2 + tardir=$(distdir) && $(am__tar) | BZIP2=$${BZIP2--9} bzip2 -c >$(distdir).tar.bz2 $(am__remove_distdir) # This target untars the dist file and tries a VPATH configuration. Then @@ -878,6 +916,8 @@ distcheck: dist bzip2 -dc $(distdir).tar.bz2 | $(am__untar) ;;\ *.tar.lzma*) \ lzma -dc $(distdir).tar.lzma | $(am__untar) ;;\ + *.tar.lz*) \ + lzip -dc $(distdir).tar.lz | $(am__untar) ;;\ *.tar.xz*) \ xz -dc $(distdir).tar.xz | $(am__untar) ;;\ *.tar.Z*) \ @@ -898,6 +938,7 @@ distcheck: dist && am__cwd=`pwd` \ && $(am__cd) $(distdir)/_build \ && ../configure --srcdir=.. --prefix="$$dc_install_base" \ + $(AM_DISTCHECK_CONFIGURE_FLAGS) \ $(DISTCHECK_CONFIGURE_FLAGS) \ && $(MAKE) $(AM_MAKEFLAGS) \ && $(MAKE) $(AM_MAKEFLAGS) dvi \ @@ -926,8 +967,16 @@ distcheck: dist list='$(DIST_ARCHIVES)'; for i in $$list; do echo $$i; done) | \ sed -e 1h -e 1s/./=/g -e 1p -e 1x -e '$$p' -e '$$x' distuninstallcheck: - @$(am__cd) '$(distuninstallcheck_dir)' \ - && test `$(distuninstallcheck_listfiles) | wc -l` -le 1 \ + @test -n '$(distuninstallcheck_dir)' || { \ + echo 'ERROR: trying to run $@ with an empty' \ + '$$(distuninstallcheck_dir)' >&2; \ + exit 1; \ + }; \ + $(am__cd) '$(distuninstallcheck_dir)' || { \ + echo 'ERROR: cannot chdir into $(distuninstallcheck_dir)' >&2; \ + exit 1; \ + }; \ + test `$(am__distuninstallcheck_listfiles) | wc -l` -eq 0 \ || { echo "ERROR: files left after uninstall:" ; \ if test -n "$(DESTDIR)"; then \ echo " (check DESTDIR support)"; \ @@ -961,10 +1010,15 @@ install-am: all-am installcheck: installcheck-recursive install-strip: - $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ - install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ - `test -z '$(STRIP)' || \ - echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install + if test -z '$(STRIP)'; then \ + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + install; \ + else \ + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \ + fi mostlyclean-generic: clean-generic: @@ -1054,8 +1108,8 @@ uninstall-am: uninstall-aclocalDATA .PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \ all all-am all-local am--refresh check check-am clean \ clean-generic clean-libtool ctags ctags-recursive dist \ - dist-all dist-bzip2 dist-gzip dist-hook dist-lzma dist-shar \ - dist-tarZ dist-xz dist-zip distcheck distclean \ + dist-all dist-bzip2 dist-gzip dist-hook dist-lzip dist-lzma \ + dist-shar dist-tarZ dist-xz dist-zip distcheck distclean \ distclean-generic distclean-hdr distclean-libtool \ distclean-tags distcleancheck distdir distuninstallcheck dvi \ dvi-am html html-am info info-am install install-aclocalDATA \ @@ -1098,7 +1152,7 @@ check-exports: @fail=0 ; \ for l in $(win32defs); do \ libbase=`basename "$$l" ".def"`; \ - libso=`find "$(top_builddir)" -name "$$libbase-@GST_MAJORMINOR@.so" | grep -v /_build/ | head -n1`; \ + libso=`find "$(top_builddir)" -name "$$libbase-@GST_API_VERSION@.so" | grep -v /_build/ | head -n1`; \ libdef="$(top_srcdir)/win32/common/$$libbase.def"; \ if test "x$$libso" != "x"; then \ echo Checking symbols in $$libso; \ @@ -1200,12 +1254,10 @@ download-po: $(top_srcdir)/common/download-translations # FIXME: this target should be run every time we do "make release" # find a way of automating that win32-update: - for f in gstversion.h gstenumtypes.c gstenumtypes.h gstmarshal.c gstmarshal.h; do \ + for f in gstversion.h gstenumtypes.c gstenumtypes.h; do \ cp $(top_builddir)/gst/$$f win32/common; done $(top_srcdir)/tools/gst-indent win32/common/gstenumtypes.c $(top_srcdir)/tools/gst-indent win32/common/gstenumtypes.c - $(top_srcdir)/tools/gst-indent win32/common/gstmarshal.c - $(top_srcdir)/tools/gst-indent win32/common/gstmarshal.c cp $(top_builddir)/win32/common/config.h-new \ $(top_srcdir)/win32/common/config.h @@ -1282,8 +1334,8 @@ lcov: check: $(CHECK_EXPORTS) check-enum-gettypes -gst-element-check-@GST_MAJORMINOR@.m4: gst-element-check.m4 - $(AM_V_GEN)cp gst-element-check.m4 gst-element-check-@GST_MAJORMINOR@.m4 +gst-element-check-@GST_API_VERSION@.m4: gst-element-check.m4 + $(AM_V_GEN)cp gst-element-check.m4 gst-element-check-@GST_API_VERSION@.m4 check-cruft: @cruft_files=""; cruft_dirs=""; \ @@ -1335,7 +1387,7 @@ clean-cruft: clean-cruft-dirs clean-cruft-files # # all-local: check-cruft -all-local: gst-element-check-@GST_MAJORMINOR@.m4 check-cruft +all-local: gst-element-check-@GST_API_VERSION@.m4 check-cruft # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. diff --git a/NEWS b/NEWS index 24a61f4..d09aec1 100644 --- a/NEWS +++ b/NEWS @@ -1,8 +1,48 @@ -This is GStreamer 0.11.1 "Sweet New Blossom" +This is GStreamer 0.11.90 "And all with pearl and ruby glowing was the fair palace door" -New featues in 0.11.1: +New features in 0.11.90: + + * Lots of bugfixes, cleanup and other improvements + * Improvements to the buffer and memory managment API + * A new GstTOC interface, e.g. for handling chapters + * The GstChildProxy interface works with any GObject now + +New features in 0.11.3: + + * Various bug fixes and improvements + * Input-selector defaults to sync-streams=true + * Queue don't just start the thread on linking + * Add user_data and notify to gst_memory_new_wrapped() + * Rework caps function for performance + * Improve basetransform allocator handling + * Implement metadata transforms + * Metadata registration improvements + * Use generic marshallers everywhere + * Push Sticky events in more cases + * Register queries like events + * Add DRAIN serialized query + * Add 0-padding and prefix to GstMemory + * Rework the ALLOCATION query + * Allow setting the allocator in a bufferpool + * Improve pull/get_range + +New features in 0.11.2: * Parallel installability with 0.10.x series - * Remove negotiation from state change in GstBaseSrc - * Removed our custom FOURCC type - * Updates to the base classes + * Added pts/dts to buffers + * Moved controller into core + * Pad probe rewrite + * AcceptCaps and GetCaps made as queries + * Added parent to pad functions + * Sticky events rewrite + * New GstSample object + * Asynchronous state change support for basesrc + * Added new bitmask type + * GstMemory updates + * Port to gio + * Port to newest glib + * Add stepped ranges + * Do typefind in separate thread + * Rework alloc tracing + * Added STREAM_CONFIG, GAP and STREAM_START events + * Various cleanups and leak fixes diff --git a/RELEASE b/RELEASE index dc1c808..3ad52ad 100644 --- a/RELEASE +++ b/RELEASE @@ -1,5 +1,5 @@ -Release notes for GStreamer 0.11.1 "Sweet New Blossom" +Release notes for GStreamer 0.11.90 "And all with pearl and ruby glowing was the fair palace door" @@ -8,7 +8,8 @@ in the 0.11.x unstable series of the core of the GStreamer streaming media framework. -The 0.11.x series is an unstable series targeted at developers +The 0.11.x series is an unstable series targeted at developers and will +eventually lead up to the stable 1.0 series. It is not API or ABI compatible with the stable 0.10.x series. It is, however, parallel installable with the 0.10.x series. @@ -17,6 +18,7 @@ The 0.11.x series has improved memory management and features various cleanups and enhancements. + This module, gstreamer, only contains core functionality. For actual media playback, you will need other modules. @@ -37,10 +39,10 @@ contains a set of less supported plug-ins that haven't passed the Features of this release - * Parallel installability with 0.10.x series - * Remove negotiation from state change in GstBaseSrc - * Removed our custom FOURCC type - * Updates to the base classes + * Lots of bugfixes, cleanup and other improvements + * Improvements to the buffer and memory managment API + * A new GstTOC interface, e.g. for handling chapters + * The GstChildProxy interface works with any GObject now There were no bugs fixed in this release @@ -69,30 +71,26 @@ will create more lists as necessary. Applications -No applications are ported to 0.11 as of yet. We are looking for more people to -port plugins and applications. +Various applications have early ports to GStreamer 0.11 including Totem, RhythmBox, +Webkit, Jokosher, Transmageddon and others. We're working on porting more applications. Contributors to this release + * Alessandro Decina + * Alexander Saprykin + * Christian Fredrik Kalager Schaller * David Schleef * Edward Hervey * Fabrizio (Misto) Milo - * Guillaume Desmottes - * Josep Torra * Mark Nauwelaerts - * Nicolas Dufresne - * Peteris Krisjanis - * Piotr Fusik - * Raimo Järvi + * Matej Knopp + * Olivier Crête + * Ryan Lortie * Sebastian Dröge - * Shaun Hoopes - * Sjoerd Simons - * Stas Sergeev - * Stefan Kost + * Sreerenj Balachandran * Stefan Sauer - * Thomas Vander Stichele * Tim-Philipp Müller - * Vincent Penquerc'h * Wim Taymans + * Руслан Ижбулатов   \ No newline at end of file diff --git a/aclocal.m4 b/aclocal.m4 index 058d28b..49a8d86 100644 --- a/aclocal.m4 +++ b/aclocal.m4 @@ -1,7 +1,8 @@ -# generated automatically by aclocal 1.11.1 -*- Autoconf -*- +# generated automatically by aclocal 1.11.4 -*- Autoconf -*- # Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, -# 2005, 2006, 2007, 2008, 2009 Free Software Foundation, Inc. +# 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software Foundation, +# Inc. # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. @@ -13,18 +14,21 @@ m4_ifndef([AC_AUTOCONF_VERSION], [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl -m4_if(m4_defn([AC_AUTOCONF_VERSION]), [2.67],, -[m4_warning([this file was generated for autoconf 2.67. +m4_if(m4_defn([AC_AUTOCONF_VERSION]), [2.68],, +[m4_warning([this file was generated for autoconf 2.68. You have another version of autoconf. It may work, but is not guaranteed to. If you have problems, you may need to regenerate the build system entirely. To do so, use the procedure documented by the package, typically `autoreconf'.])]) -# Copyright (C) 2002, 2003, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. +# Copyright (C) 2002, 2003, 2005, 2006, 2007, 2008, 2011 Free Software +# Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. +# serial 1 + # AM_AUTOMAKE_VERSION(VERSION) # ---------------------------- # Automake X.Y traces this macro to ensure aclocal.m4 has been @@ -34,7 +38,7 @@ AC_DEFUN([AM_AUTOMAKE_VERSION], [am__api_version='1.11' dnl Some users find AM_AUTOMAKE_VERSION and mistake it for a way to dnl require some minimum version. Point them to the right macro. -m4_if([$1], [1.11.1], [], +m4_if([$1], [1.11.4], [], [AC_FATAL([Do not call $0, use AM_INIT_AUTOMAKE([$1]).])])dnl ]) @@ -50,7 +54,7 @@ m4_define([_AM_AUTOCONF_VERSION], []) # Call AM_AUTOMAKE_VERSION and AM_AUTOMAKE_VERSION so they can be traced. # This function is AC_REQUIREd by AM_INIT_AUTOMAKE. AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION], -[AM_AUTOMAKE_VERSION([1.11.1])dnl +[AM_AUTOMAKE_VERSION([1.11.4])dnl m4_ifndef([AC_AUTOCONF_VERSION], [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl _AM_AUTOCONF_VERSION(m4_defn([AC_AUTOCONF_VERSION]))]) @@ -79,12 +83,14 @@ _AM_IF_OPTION([no-dependencies],, [_AM_DEPENDENCIES([CCAS])])dnl # AM_AUX_DIR_EXPAND -*- Autoconf -*- -# Copyright (C) 2001, 2003, 2005 Free Software Foundation, Inc. +# Copyright (C) 2001, 2003, 2005, 2011 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. +# serial 1 + # For projects using AC_CONFIG_AUX_DIR([foo]), Autoconf sets # $ac_aux_dir to `$srcdir/foo'. In other projects, it is set to # `$srcdir', `$srcdir/..', or `$srcdir/../..'. @@ -166,14 +172,14 @@ AC_CONFIG_COMMANDS_PRE( Usually this means the macro was only invoked conditionally.]]) fi])]) -# Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2009 -# Free Software Foundation, Inc. +# Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2009, +# 2010, 2011 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. -# serial 10 +# serial 12 # There are a few dirty hacks below to avoid letting `AC_PROG_CC' be # written in clear, in which case automake, when reading aclocal.m4, @@ -213,6 +219,7 @@ AC_CACHE_CHECK([dependency style of $depcc], # instance it was reported that on HP-UX the gcc test will end up # making a dummy file named `D' -- because `-MD' means `put the output # in D'. + rm -rf conftest.dir mkdir conftest.dir # Copy depcomp to subdir because otherwise we won't find it if we're # using a relative directory. @@ -277,7 +284,7 @@ AC_CACHE_CHECK([dependency style of $depcc], break fi ;; - msvisualcpp | msvcmsys) + msvc7 | msvc7msys | msvisualcpp | msvcmsys) # This compiler won't grok `-c -o', but also, the minuso test has # not run yet. These depmodes are late enough in the game, and # so weak that their functioning should not be impacted. @@ -342,10 +349,13 @@ AC_DEFUN([AM_DEP_TRACK], if test "x$enable_dependency_tracking" != xno; then am_depcomp="$ac_aux_dir/depcomp" AMDEPBACKSLASH='\' + am__nodep='_no' fi AM_CONDITIONAL([AMDEP], [test "x$enable_dependency_tracking" != xno]) AC_SUBST([AMDEPBACKSLASH])dnl _AM_SUBST_NOTMAKE([AMDEPBACKSLASH])dnl +AC_SUBST([am__nodep])dnl +_AM_SUBST_NOTMAKE([am__nodep])dnl ]) # Generate code to set up dependency tracking. -*- Autoconf -*- @@ -579,12 +589,15 @@ for _am_header in $config_headers :; do done echo "timestamp for $_am_arg" >`AS_DIRNAME(["$_am_arg"])`/stamp-h[]$_am_stamp_count]) -# Copyright (C) 2001, 2003, 2005, 2008 Free Software Foundation, Inc. +# Copyright (C) 2001, 2003, 2005, 2008, 2011 Free Software Foundation, +# Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. +# serial 1 + # AM_PROG_INSTALL_SH # ------------------ # Define $install_sh. @@ -624,8 +637,8 @@ AC_SUBST([am__leading_dot])]) # Add --enable-maintainer-mode option to configure. -*- Autoconf -*- # From Jim Meyering -# Copyright (C) 1996, 1998, 2000, 2001, 2002, 2003, 2004, 2005, 2008 -# Free Software Foundation, Inc. +# Copyright (C) 1996, 1998, 2000, 2001, 2002, 2003, 2004, 2005, 2008, +# 2011 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -645,7 +658,7 @@ AC_DEFUN([AM_MAINTAINER_MODE], [disable], [m4_define([am_maintainer_other], [enable])], [m4_define([am_maintainer_other], [enable]) m4_warn([syntax], [unexpected argument to AM@&t@_MAINTAINER_MODE: $1])]) -AC_MSG_CHECKING([whether to am_maintainer_other maintainer-specific portions of Makefiles]) +AC_MSG_CHECKING([whether to enable maintainer-specific portions of Makefiles]) dnl maintainer-mode's default is 'disable' unless 'enable' is passed AC_ARG_ENABLE([maintainer-mode], [ --][am_maintainer_other][-maintainer-mode am_maintainer_other make rules and dependencies not useful @@ -791,12 +804,15 @@ else fi ]) -# Copyright (C) 2003, 2004, 2005, 2006 Free Software Foundation, Inc. +# Copyright (C) 2003, 2004, 2005, 2006, 2011 Free Software Foundation, +# Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. +# serial 1 + # AM_PROG_MKDIR_P # --------------- # Check for `mkdir -p'. @@ -819,13 +835,14 @@ esac # Helper functions for option handling. -*- Autoconf -*- -# Copyright (C) 2001, 2002, 2003, 2005, 2008 Free Software Foundation, Inc. +# Copyright (C) 2001, 2002, 2003, 2005, 2008, 2010 Free Software +# Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. -# serial 4 +# serial 5 # _AM_MANGLE_OPTION(NAME) # ----------------------- @@ -833,13 +850,13 @@ AC_DEFUN([_AM_MANGLE_OPTION], [[_AM_OPTION_]m4_bpatsubst($1, [[^a-zA-Z0-9_]], [_])]) # _AM_SET_OPTION(NAME) -# ------------------------------ +# -------------------- # Set option NAME. Presently that only means defining a flag for this option. AC_DEFUN([_AM_SET_OPTION], [m4_define(_AM_MANGLE_OPTION([$1]), 1)]) # _AM_SET_OPTIONS(OPTIONS) -# ---------------------------------- +# ------------------------ # OPTIONS is a space-separated list of Automake options. AC_DEFUN([_AM_SET_OPTIONS], [m4_foreach_w([_AM_Option], [$1], [_AM_SET_OPTION(_AM_Option)])]) @@ -915,13 +932,13 @@ Check your system clock]) fi AC_MSG_RESULT(yes)]) -# Copyright (C) 2009 Free Software Foundation, Inc. +# Copyright (C) 2009, 2011 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. -# serial 1 +# serial 2 # AM_SILENT_RULES([DEFAULT]) # -------------------------- @@ -936,18 +953,50 @@ yes) AM_DEFAULT_VERBOSITY=0;; no) AM_DEFAULT_VERBOSITY=1;; *) AM_DEFAULT_VERBOSITY=m4_if([$1], [yes], [0], [1]);; esac +dnl +dnl A few `make' implementations (e.g., NonStop OS and NextStep) +dnl do not support nested variable expansions. +dnl See automake bug#9928 and bug#10237. +am_make=${MAKE-make} +AC_CACHE_CHECK([whether $am_make supports nested variables], + [am_cv_make_support_nested_variables], + [if AS_ECHO([['TRUE=$(BAR$(V)) +BAR0=false +BAR1=true +V=1 +am__doit: + @$(TRUE) +.PHONY: am__doit']]) | $am_make -f - >/dev/null 2>&1; then + am_cv_make_support_nested_variables=yes +else + am_cv_make_support_nested_variables=no +fi]) +if test $am_cv_make_support_nested_variables = yes; then + dnl Using `$V' instead of `$(V)' breaks IRIX make. + AM_V='$(V)' + AM_DEFAULT_V='$(AM_DEFAULT_VERBOSITY)' +else + AM_V=$AM_DEFAULT_VERBOSITY + AM_DEFAULT_V=$AM_DEFAULT_VERBOSITY +fi +AC_SUBST([AM_V])dnl +AM_SUBST_NOTMAKE([AM_V])dnl +AC_SUBST([AM_DEFAULT_V])dnl +AM_SUBST_NOTMAKE([AM_DEFAULT_V])dnl AC_SUBST([AM_DEFAULT_VERBOSITY])dnl AM_BACKSLASH='\' AC_SUBST([AM_BACKSLASH])dnl _AM_SUBST_NOTMAKE([AM_BACKSLASH])dnl ]) -# Copyright (C) 2001, 2003, 2005 Free Software Foundation, Inc. +# Copyright (C) 2001, 2003, 2005, 2011 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. +# serial 1 + # AM_PROG_INSTALL_STRIP # --------------------- # One issue with vendor `install' (even GNU) is that you can't @@ -970,13 +1019,13 @@ fi INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s" AC_SUBST([INSTALL_STRIP_PROGRAM])]) -# Copyright (C) 2006, 2008 Free Software Foundation, Inc. +# Copyright (C) 2006, 2008, 2010 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. -# serial 2 +# serial 3 # _AM_SUBST_NOTMAKE(VARIABLE) # --------------------------- @@ -985,13 +1034,13 @@ AC_SUBST([INSTALL_STRIP_PROGRAM])]) AC_DEFUN([_AM_SUBST_NOTMAKE]) # AM_SUBST_NOTMAKE(VARIABLE) -# --------------------------- +# -------------------------- # Public sister of _AM_SUBST_NOTMAKE. AC_DEFUN([AM_SUBST_NOTMAKE], [_AM_SUBST_NOTMAKE($@)]) # Check how to create a tarball. -*- Autoconf -*- -# Copyright (C) 2004, 2005 Free Software Foundation, Inc. +# Copyright (C) 2004, 2005, 2012 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -1013,10 +1062,11 @@ AC_DEFUN([AM_SUBST_NOTMAKE], [_AM_SUBST_NOTMAKE($@)]) # a tarball read from stdin. # $(am__untar) < result.tar AC_DEFUN([_AM_PROG_TAR], -[# Always define AMTAR for backward compatibility. -AM_MISSING_PROG([AMTAR], [tar]) +[# Always define AMTAR for backward compatibility. Yes, it's still used +# in the wild :-( We should find a proper way to deprecate it ... +AC_SUBST([AMTAR], ['$${TAR-tar}']) m4_if([$1], [v7], - [am__tar='${AMTAR} chof - "$$tardir"'; am__untar='${AMTAR} xf -'], + [am__tar='$${TAR-tar} chof - "$$tardir"' am__untar='$${TAR-tar} xf -'], [m4_case([$1], [ustar],, [pax],, [m4_fatal([Unknown tar format])]) AC_MSG_CHECKING([how to create a $1 tar archive]) diff --git a/autogen.sh b/autogen.sh index c0cd19e..b2e9ee4 100755 --- a/autogen.sh +++ b/autogen.sh @@ -1,6 +1,12 @@ #!/bin/sh # Run this to generate all the initial makefiles, etc. +test -n "$srcdir" || srcdir=`dirname "$0"` +test -n "$srcdir" || srcdir=. + +olddir=`pwd` +cd "$srcdir" + DIE=0 package=gstreamer srcfile=gst/gst.c @@ -29,7 +35,9 @@ then ln -s ../../common/hooks/pre-commit.hook .git/hooks/pre-commit fi - +# GNU gettext automake support doesn't get along with git. +# https://bugzilla.gnome.org/show_bug.cgi?id=661128 +touch -t 200001010000 po/gstreamer-0.10.pot CONFIGURE_DEF_OPT='--enable-maintainer-mode --enable-failing-tests --enable-poisoning --enable-gtk-doc --enable-docbook' @@ -56,7 +64,7 @@ autoheader_check || DIE=1 die_check $DIE # if no arguments specified then this will be printed -if test -z "$*"; then +if test -z "$*" && test -z "$NOCONFIGURE"; then echo "+ checking for autogen.sh options" echo " This autogen script will automatically run ./configure as:" echo " ./configure $CONFIGURE_DEF_OPT" @@ -97,13 +105,15 @@ test -n "$NOCONFIGURE" && { exit 0 } +cd "$olddir" + echo "+ running configure ... " test ! -z "$CONFIGURE_DEF_OPT" && echo " ./configure default flags: $CONFIGURE_DEF_OPT" test ! -z "$CONFIGURE_EXT_OPT" && echo " ./configure external flags: $CONFIGURE_EXT_OPT" echo -echo ./configure $CONFIGURE_DEF_OPT $CONFIGURE_EXT_OPT -./configure $CONFIGURE_DEF_OPT $CONFIGURE_EXT_OPT || { +echo "$srcdir/configure" $CONFIGURE_DEF_OPT $CONFIGURE_EXT_OPT +"$srcdir/configure" $CONFIGURE_DEF_OPT $CONFIGURE_EXT_OPT || { echo " configure failed" exit 1 } diff --git a/common/Makefile.in b/common/Makefile.in index e786866..e45e7cd 100644 --- a/common/Makefile.in +++ b/common/Makefile.in @@ -1,9 +1,9 @@ -# Makefile.in generated by automake 1.11.1 from Makefile.am. +# Makefile.in generated by automake 1.11.4 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, -# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation, -# Inc. +# 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software +# Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. @@ -15,6 +15,23 @@ @SET_MAKE@ VPATH = @srcdir@ +am__make_dryrun = \ + { \ + am__dry=no; \ + case $$MAKEFLAGS in \ + *\\[\ \ ]*) \ + echo 'am--echo: ; @echo "AM" OK' | $(MAKE) -f - 2>/dev/null \ + | grep '^AM OK$$' >/dev/null || am__dry=yes;; \ + *) \ + for am__flg in $$MAKEFLAGS; do \ + case $$am__flg in \ + *=*|--*) ;; \ + *n*) am__dry=yes; break;; \ + esac; \ + done;; \ + esac; \ + test $$am__dry = yes; \ + } pkgdatadir = $(datadir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ pkglibdir = $(libdir)/@PACKAGE@ @@ -77,11 +94,11 @@ mkinstalldirs = $(install_sh) -d CONFIG_HEADER = $(top_builddir)/config.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = -AM_V_GEN = $(am__v_GEN_$(V)) -am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) +AM_V_GEN = $(am__v_GEN_@AM_V@) +am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@) am__v_GEN_0 = @echo " GEN " $@; -AM_V_at = $(am__v_at_$(V)) -am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) +AM_V_at = $(am__v_at_@AM_V@) +am__v_at_ = $(am__v_at_@AM_DEFAULT_V@) am__v_at_0 = @ SOURCES = DIST_SOURCES = @@ -92,6 +109,11 @@ RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \ install-pdf-recursive install-ps-recursive install-recursive \ installcheck-recursive installdirs-recursive pdf-recursive \ ps-recursive uninstall-recursive +am__can_run_installinfo = \ + case $$AM_UPDATE_INFO_DIR in \ + n|no|NO) false;; \ + *) (install-info --version) >/dev/null 2>&1;; \ + esac RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \ distclean-recursive maintainer-clean-recursive AM_RECURSIVE_TARGETS = $(RECURSIVE_TARGETS:-recursive=) \ @@ -179,10 +201,12 @@ GCOV_CFLAGS = @GCOV_CFLAGS@ GCOV_LIBS = @GCOV_LIBS@ GETTEXT_MACRO_VERSION = @GETTEXT_MACRO_VERSION@ GETTEXT_PACKAGE = @GETTEXT_PACKAGE@ +GIO_CFLAGS = @GIO_CFLAGS@ +GIO_LDFLAGS = @GIO_LDFLAGS@ +GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ +GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ GLIB_LIBS = @GLIB_LIBS@ -GLIB_ONLY_CFLAGS = @GLIB_ONLY_CFLAGS@ -GLIB_ONLY_LIBS = @GLIB_ONLY_LIBS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GMP_LIBS = @GMP_LIBS@ @@ -195,10 +219,10 @@ GST_ALL_CFLAGS = @GST_ALL_CFLAGS@ GST_ALL_CXXFLAGS = @GST_ALL_CXXFLAGS@ GST_ALL_LDFLAGS = @GST_ALL_LDFLAGS@ GST_ALL_LIBS = @GST_ALL_LIBS@ +GST_API_VERSION = @GST_API_VERSION@ GST_CURRENT = @GST_CURRENT@ GST_DISABLE_ALLOC_TRACE_DEFINE = @GST_DISABLE_ALLOC_TRACE_DEFINE@ GST_DISABLE_GST_DEBUG_DEFINE = @GST_DISABLE_GST_DEBUG_DEFINE@ -GST_DISABLE_NET_DEFINE = @GST_DISABLE_NET_DEFINE@ GST_DISABLE_OPTION_PARSING_DEFINE = @GST_DISABLE_OPTION_PARSING_DEFINE@ GST_DISABLE_PARSE_DEFINE = @GST_DISABLE_PARSE_DEFINE@ GST_DISABLE_PLUGIN_DEFINE = @GST_DISABLE_PLUGIN_DEFINE@ @@ -212,7 +236,6 @@ GST_LIBVERSION = @GST_LIBVERSION@ GST_LIB_LDFLAGS = @GST_LIB_LDFLAGS@ GST_LICENSE = @GST_LICENSE@ GST_LT_LDFLAGS = @GST_LT_LDFLAGS@ -GST_MAJORMINOR = @GST_MAJORMINOR@ GST_OBJ_CFLAGS = @GST_OBJ_CFLAGS@ GST_OBJ_CXXFLAGS = @GST_OBJ_CXXFLAGS@ GST_OBJ_LIBS = @GST_OBJ_LIBS@ @@ -229,6 +252,10 @@ GST_PRINTF_EXTENSION_SEGMENT_FORMAT_DEFINE = @GST_PRINTF_EXTENSION_SEGMENT_FORMA GST_REGISTRY_DOC_TYPES = @GST_REGISTRY_DOC_TYPES@ GST_REVISION = @GST_REVISION@ GST_USING_PRINTF_EXTENSION_DEFINE = @GST_USING_PRINTF_EXTENSION_DEFINE@ +GST_VERSION_MAJOR = @GST_VERSION_MAJOR@ +GST_VERSION_MICRO = @GST_VERSION_MICRO@ +GST_VERSION_MINOR = @GST_VERSION_MINOR@ +GST_VERSION_NANO = @GST_VERSION_NANO@ GTKDOC_CHECK = @GTKDOC_CHECK@ HAVE_DOCBOOK2HTML = @HAVE_DOCBOOK2HTML@ HAVE_DOCBOOK2PS = @HAVE_DOCBOOK2PS@ @@ -244,7 +271,6 @@ HAVE_PS2PDF = @HAVE_PS2PDF@ HAVE_XMLLINT = @HAVE_XMLLINT@ HOST_CPU = @HOST_CPU@ HTML_DIR = @HTML_DIR@ -INET_ATON_LIBS = @INET_ATON_LIBS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ @@ -277,6 +303,7 @@ LTLIBINTL = @LTLIBINTL@ LTLIBOBJS = @LTLIBOBJS@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ +MANIFEST_TOOL = @MANIFEST_TOOL@ MKDIR_P = @MKDIR_P@ MSGFMT = @MSGFMT@ MSGFMT_015 = @MSGFMT_015@ @@ -332,6 +359,7 @@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ abs_top_srcdir = @abs_top_srcdir@ +ac_ct_AR = @ac_ct_AR@ ac_ct_CC = @ac_ct_CC@ ac_ct_CXX = @ac_ct_CXX@ ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ @@ -365,7 +393,6 @@ libdir = @libdir@ libexecdir = @libexecdir@ localedir = @localedir@ localstatedir = @localstatedir@ -lt_ECHO = @lt_ECHO@ mandir = @mandir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ @@ -615,13 +642,10 @@ distdir: $(DISTFILES) done @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \ if test "$$subdir" = .; then :; else \ - test -d "$(distdir)/$$subdir" \ - || $(MKDIR_P) "$(distdir)/$$subdir" \ - || exit 1; \ - fi; \ - done - @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \ - if test "$$subdir" = .; then :; else \ + $(am__make_dryrun) \ + || test -d "$(distdir)/$$subdir" \ + || $(MKDIR_P) "$(distdir)/$$subdir" \ + || exit 1; \ dir1=$$subdir; dir2="$(distdir)/$$subdir"; \ $(am__relativize); \ new_distdir=$$reldir; \ @@ -656,10 +680,15 @@ install-am: all-am installcheck: installcheck-recursive install-strip: - $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ - install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ - `test -z '$(STRIP)' || \ - echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install + if test -z '$(STRIP)'; then \ + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + install; \ + else \ + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \ + fi mostlyclean-generic: clean-generic: diff --git a/common/check-exports b/common/check-exports index c6d3eca..ee01ff7 100755 --- a/common/check-exports +++ b/common/check-exports @@ -25,29 +25,11 @@ if nm -V 2>&1 |grep Solaris > /dev/null; then NMARGS=-p fi -# FIXME 0.11: in 0.11, we should change the export filter to only export -# _gst_foo, but not __gst_foo (we can't change this now, since we added -# __gst_debug_min and __gst_debug_enabled at some point and need to keep -# ABI compatibility). So below we special-case some symbols that shouldn't -# really be exported, either because we're too lazy to rename them to something -# that's not exported (like the _gst_parse_* stuff) or because we had them in -# public headers at some point although they shouldn't be and so we need to -# keep them exported now (like _gst_debug_init, -# __gst_element_factory_add_interface or -# __gst_element_factory_add_static_pad_template). We suppress them here to -# make sure they're at least not exported in the windows msvc build (they -# were never in the .def file, so they never got exported). # _end is special cased because for some reason it is reported as an exported # BSS symbol, unlike on linux where it's a local absolute symbol. nm $NMARGS $lib_path | awk \ '{ - if ($3 !~ /^_gst_parse_yy/ && \ - $3 !~ /^_gst_[a-z]*_init/ && \ - $3 !~ /^_gst_parse_launch/ && \ - $3 !~ /^__gst_element_details_/ && \ - $3 !~ /^__gst_element_factory_add_/ && \ - $3 !~ /^gst_interfaces_marshal/ && \ - $3 ~ /^[_]*(gst_|Gst|GST_).*/) + if ($3 ~ /^[_]?(gst_|Gst|GST_).*/) { if ($2 ~ /^[BSDG]$/) print "\t" $3 " DATA" diff --git a/common/check.mak b/common/check.mak index 30487f1..0aec843 100644 --- a/common/check.mak +++ b/common/check.mak @@ -24,6 +24,12 @@ LOOPS = 10 CK_DEFAULT_TIMEOUT=20 \ $* +# just like 'check', but don't run it again if it fails (useful for debugging) +%.check-norepeat: % + @$(TESTS_ENVIRONMENT) \ + CK_DEFAULT_TIMEOUT=20 \ + $* + # run any given test in a loop %.torture: % @for i in `seq 1 $(LOOPS)`; do \ @@ -140,7 +146,7 @@ valgrind.gen-suppressions: $(TESTS) fi # inspect every plugin feature -GST_INSPECT = $(GST_TOOLS_DIR)/gst-inspect-$(GST_MAJORMINOR) +GST_INSPECT = $(GST_TOOLS_DIR)/gst-inspect-$(GST_API_VERSION) inspect: @echo "Inspecting features ..." @for e in `$(TESTS_ENVIRONMENT) $(GST_INSPECT) | head -n -2 \ @@ -152,7 +158,8 @@ help: @echo @echo "make check -- run all checks" @echo "make torture -- run all checks $(LOOPS) times" - @echo "make (dir)/(test).check -- run the given check once" + @echo "make (dir)/(test).check -- run the given check once, repeat with GST_DEBUG=*:2 if it fails" + @echo "make (dir)/(test).check-norepeat -- run the given check once, but don't run it again if it fails" @echo "make (dir)/(test).forever -- run the given check forever" @echo "make (dir)/(test).torture -- run the given check $(LOOPS) times" @echo diff --git a/common/gst.supp b/common/gst.supp index c10005f..d7f8961 100644 --- a/common/gst.supp +++ b/common/gst.supp @@ -915,7 +915,7 @@ fun:*alloc ... fun:g_type_init* - fun:init_pre + fun:init_pre* } { diff --git a/common/gstdoc-scangobj b/common/gstdoc-scangobj index 5b13352..b0699c7 100755 --- a/common/gstdoc-scangobj +++ b/common/gstdoc-scangobj @@ -142,6 +142,9 @@ for () { $ntypes = @types + @impl_types + 1; print OUTPUT < #include #include @@ -182,7 +185,9 @@ xmlprint (gint indent, const gchar *tag, const gchar *data) static gint gst_feature_sort_compare (gconstpointer a, gconstpointer b) { - return strcmp (((GstPluginFeature *)a)->name, ((GstPluginFeature *)b)->name); + const gchar *name_a = gst_plugin_feature_get_name ((GstPluginFeature *) a); + const gchar *name_b = gst_plugin_feature_get_name ((GstPluginFeature *) b); + return strcmp (name_a, name_b); } static gint @@ -216,7 +221,7 @@ get_object_types (void) gboolean reinspect; /* get a list of features from plugins in our source module */ - plugins = gst_registry_get_plugin_list (gst_registry_get_default()); + plugins = gst_registry_get_plugin_list (gst_registry_get ()); xmlstr = g_string_new (""); @@ -267,7 +272,7 @@ get_object_types (void) } features = - gst_registry_get_feature_list_by_plugin (gst_registry_get_default (), + gst_registry_get_feature_list_by_plugin (gst_registry_get (), plugin->desc.name); /* sort factories by feature->name */ @@ -287,7 +292,7 @@ get_object_types (void) const gchar *pad_pres[] = { "always","sometimes","request" }; GList *pads, *pad; - $debug_log (" feature: %s", feature->name); + $debug_log (" feature: %s", gst_plugin_feature_get_name (feature)); factory = GST_ELEMENT_FACTORY (feature); factories = g_list_prepend (factories, factory); @@ -295,7 +300,7 @@ get_object_types (void) if (reinspect) { /* output element data */ fputs (" \\n", inspect); - fputs (xmlprint(6, "name", feature->name),inspect); + fputs (xmlprint(6, "name", gst_plugin_feature_get_name (feature)),inspect); fputs (xmlprint(6, "longname", gst_element_factory_get_longname (factory)),inspect); fputs (xmlprint(6, "class", gst_element_factory_get_klass (factory)),inspect); fputs (xmlprint(6, "description", gst_element_factory_get_description (factory)),inspect); diff --git a/common/gtk-doc-plugins.mak b/common/gtk-doc-plugins.mak index 8cc42e7..f7c05ed 100644 --- a/common/gtk-doc-plugins.mak +++ b/common/gtk-doc-plugins.mak @@ -13,8 +13,7 @@ help: @echo # update the stuff maintained by doc maintainers -update: - $(MAKE) scanobj-update +update: scanobj-update $(MAKE) check-outdated-docs # We set GPATH here; this gives us semantics for GNU make @@ -25,7 +24,7 @@ update: GPATH = $(srcdir) # thomas: make docs parallel installable -TARGET_DIR=$(HTML_DIR)/$(DOC_MODULE)-@GST_MAJORMINOR@ +TARGET_DIR=$(HTML_DIR)/$(DOC_MODULE)-@GST_API_VERSION@ MAINTAINER_DOC_STAMPS = \ scanobj-build.stamp @@ -130,7 +129,7 @@ scanobj-build.stamp: $(SCANOBJ_DEPS) $(basefiles) --module=$(DOC_MODULE) --source=$(PACKAGE) --inspect-dir=$(INSPECT_DIR) && \ echo " DOC Merging introspection data" && \ $(PYTHON) \ - $(top_srcdir)/common/scangobj-merge.py $(DOC_MODULE); \ + $(top_srcdir)/common/scangobj-merge.py $(DOC_MODULE) || exit 1; \ if test x"$(srcdir)" != x. ; then \ for f in $(SCANOBJ_FILES); \ do \ @@ -225,7 +224,7 @@ html-build.stamp: sgml.stamp $(DOC_MAIN_SGML_FILE) $(content_files) fi; \ cd html && gtkdoc-mkhtml $$mkhtml_options $(DOC_MODULE) $(DOC_MAIN_SGML_FILE) @mv html/index.sgml html/index.sgml.bak - @$(SED) "s/ href=\"$(DOC_MODULE)\// href=\"$(DOC_MODULE)-@GST_MAJORMINOR@\//g" html/index.sgml.bak >html/index.sgml + @$(SED) "s/ href=\"$(DOC_MODULE)\// href=\"$(DOC_MODULE)-@GST_API_VERSION@\//g" html/index.sgml.bak >html/index.sgml @rm -f html/index.sgml.bak @rm -f html/$(DOC_MAIN_SGML_FILE) @rm -rf html/xml @@ -293,7 +292,7 @@ install-data-local: echo '-- Installing $(builddir)/html/$(DOC_MODULE).devhelp2' ; \ if test -e $(builddir)/html/$(DOC_MODULE).devhelp2; then \ $(INSTALL_DATA) $(builddir)/html/$(DOC_MODULE).devhelp2 \ - $(DESTDIR)$(TARGET_DIR)/$(DOC_MODULE)-@GST_MAJORMINOR@.devhelp2; \ + $(DESTDIR)$(TARGET_DIR)/$(DOC_MODULE)-@GST_API_VERSION@.devhelp2; \ fi; \ (which gtkdoc-rebase >/dev/null && \ gtkdoc-rebase --relative --dest-dir=$(DESTDIR) --html-dir=$(DESTDIR)$(TARGET_DIR)) || true ; \ diff --git a/common/gtk-doc.mak b/common/gtk-doc.mak index dd2b5a5..31b56f9 100644 --- a/common/gtk-doc.mak +++ b/common/gtk-doc.mak @@ -12,7 +12,7 @@ GPATH = $(srcdir) # thomas: make docs parallel installable -TARGET_DIR=$(HTML_DIR)/$(DOC_MODULE)-@GST_MAJORMINOR@ +TARGET_DIR=$(HTML_DIR)/$(DOC_MODULE)-@GST_API_VERSION@ EXTRA_DIST = \ $(content_files) \ @@ -132,7 +132,7 @@ html-build.stamp: sgml.stamp $(DOC_MAIN_SGML_FILE) $(content_files) fi; \ cd html && gtkdoc-mkhtml $$mkhtml_options $(MKHTML_OPTIONS) $(DOC_MODULE) ../$(DOC_MAIN_SGML_FILE) @mv html/index.sgml html/index.sgml.bak - @$(SED) "s/ href=\"$(DOC_MODULE)\// href=\"$(DOC_MODULE)-@GST_MAJORMINOR@\//g" html/index.sgml.bak >html/index.sgml + @$(SED) "s/ href=\"$(DOC_MODULE)\// href=\"$(DOC_MODULE)-@GST_API_VERSION@\//g" html/index.sgml.bak >html/index.sgml @rm -f html/index.sgml.bak @rm -rf html/xml @rm -f version.entities @@ -192,7 +192,7 @@ install-data-local: echo '-- Installing $(builddir)/html/$(DOC_MODULE).devhelp2' ; \ if test -e $(builddir)/html/$(DOC_MODULE).devhelp2; then \ $(INSTALL_DATA) $(builddir)/html/$(DOC_MODULE).devhelp2 \ - $(DESTDIR)$(TARGET_DIR)/$(DOC_MODULE)-@GST_MAJORMINOR@.devhelp2; \ + $(DESTDIR)$(TARGET_DIR)/$(DOC_MODULE)-@GST_API_VERSION@.devhelp2; \ fi; \ (which gtkdoc-rebase >/dev/null && \ gtkdoc-rebase --relative --dest-dir=$(DESTDIR) --html-dir=$(DESTDIR)$(TARGET_DIR)) || true ; \ diff --git a/common/m4/Makefile.in b/common/m4/Makefile.in index fd1c868..999f436 100644 --- a/common/m4/Makefile.in +++ b/common/m4/Makefile.in @@ -1,9 +1,9 @@ -# Makefile.in generated by automake 1.11.1 from Makefile.am. +# Makefile.in generated by automake 1.11.4 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, -# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation, -# Inc. +# 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software +# Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. @@ -15,6 +15,23 @@ @SET_MAKE@ VPATH = @srcdir@ +am__make_dryrun = \ + { \ + am__dry=no; \ + case $$MAKEFLAGS in \ + *\\[\ \ ]*) \ + echo 'am--echo: ; @echo "AM" OK' | $(MAKE) -f - 2>/dev/null \ + | grep '^AM OK$$' >/dev/null || am__dry=yes;; \ + *) \ + for am__flg in $$MAKEFLAGS; do \ + case $$am__flg in \ + *=*|--*) ;; \ + *n*) am__dry=yes; break;; \ + esac; \ + done;; \ + esac; \ + test $$am__dry = yes; \ + } pkgdatadir = $(datadir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ pkglibdir = $(libdir)/@PACKAGE@ @@ -77,14 +94,19 @@ mkinstalldirs = $(install_sh) -d CONFIG_HEADER = $(top_builddir)/config.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = -AM_V_GEN = $(am__v_GEN_$(V)) -am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) +AM_V_GEN = $(am__v_GEN_@AM_V@) +am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@) am__v_GEN_0 = @echo " GEN " $@; -AM_V_at = $(am__v_at_$(V)) -am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) +AM_V_at = $(am__v_at_@AM_V@) +am__v_at_ = $(am__v_at_@AM_DEFAULT_V@) am__v_at_0 = @ SOURCES = DIST_SOURCES = +am__can_run_installinfo = \ + case $$AM_UPDATE_INFO_DIR in \ + n|no|NO) false;; \ + *) (install-info --version) >/dev/null 2>&1;; \ + esac DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ACLOCAL_AMFLAGS = @ACLOCAL_AMFLAGS@ @@ -139,10 +161,12 @@ GCOV_CFLAGS = @GCOV_CFLAGS@ GCOV_LIBS = @GCOV_LIBS@ GETTEXT_MACRO_VERSION = @GETTEXT_MACRO_VERSION@ GETTEXT_PACKAGE = @GETTEXT_PACKAGE@ +GIO_CFLAGS = @GIO_CFLAGS@ +GIO_LDFLAGS = @GIO_LDFLAGS@ +GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ +GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ GLIB_LIBS = @GLIB_LIBS@ -GLIB_ONLY_CFLAGS = @GLIB_ONLY_CFLAGS@ -GLIB_ONLY_LIBS = @GLIB_ONLY_LIBS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GMP_LIBS = @GMP_LIBS@ @@ -155,10 +179,10 @@ GST_ALL_CFLAGS = @GST_ALL_CFLAGS@ GST_ALL_CXXFLAGS = @GST_ALL_CXXFLAGS@ GST_ALL_LDFLAGS = @GST_ALL_LDFLAGS@ GST_ALL_LIBS = @GST_ALL_LIBS@ +GST_API_VERSION = @GST_API_VERSION@ GST_CURRENT = @GST_CURRENT@ GST_DISABLE_ALLOC_TRACE_DEFINE = @GST_DISABLE_ALLOC_TRACE_DEFINE@ GST_DISABLE_GST_DEBUG_DEFINE = @GST_DISABLE_GST_DEBUG_DEFINE@ -GST_DISABLE_NET_DEFINE = @GST_DISABLE_NET_DEFINE@ GST_DISABLE_OPTION_PARSING_DEFINE = @GST_DISABLE_OPTION_PARSING_DEFINE@ GST_DISABLE_PARSE_DEFINE = @GST_DISABLE_PARSE_DEFINE@ GST_DISABLE_PLUGIN_DEFINE = @GST_DISABLE_PLUGIN_DEFINE@ @@ -172,7 +196,6 @@ GST_LIBVERSION = @GST_LIBVERSION@ GST_LIB_LDFLAGS = @GST_LIB_LDFLAGS@ GST_LICENSE = @GST_LICENSE@ GST_LT_LDFLAGS = @GST_LT_LDFLAGS@ -GST_MAJORMINOR = @GST_MAJORMINOR@ GST_OBJ_CFLAGS = @GST_OBJ_CFLAGS@ GST_OBJ_CXXFLAGS = @GST_OBJ_CXXFLAGS@ GST_OBJ_LIBS = @GST_OBJ_LIBS@ @@ -189,6 +212,10 @@ GST_PRINTF_EXTENSION_SEGMENT_FORMAT_DEFINE = @GST_PRINTF_EXTENSION_SEGMENT_FORMA GST_REGISTRY_DOC_TYPES = @GST_REGISTRY_DOC_TYPES@ GST_REVISION = @GST_REVISION@ GST_USING_PRINTF_EXTENSION_DEFINE = @GST_USING_PRINTF_EXTENSION_DEFINE@ +GST_VERSION_MAJOR = @GST_VERSION_MAJOR@ +GST_VERSION_MICRO = @GST_VERSION_MICRO@ +GST_VERSION_MINOR = @GST_VERSION_MINOR@ +GST_VERSION_NANO = @GST_VERSION_NANO@ GTKDOC_CHECK = @GTKDOC_CHECK@ HAVE_DOCBOOK2HTML = @HAVE_DOCBOOK2HTML@ HAVE_DOCBOOK2PS = @HAVE_DOCBOOK2PS@ @@ -204,7 +231,6 @@ HAVE_PS2PDF = @HAVE_PS2PDF@ HAVE_XMLLINT = @HAVE_XMLLINT@ HOST_CPU = @HOST_CPU@ HTML_DIR = @HTML_DIR@ -INET_ATON_LIBS = @INET_ATON_LIBS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ @@ -237,6 +263,7 @@ LTLIBINTL = @LTLIBINTL@ LTLIBOBJS = @LTLIBOBJS@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ +MANIFEST_TOOL = @MANIFEST_TOOL@ MKDIR_P = @MKDIR_P@ MSGFMT = @MSGFMT@ MSGFMT_015 = @MSGFMT_015@ @@ -292,6 +319,7 @@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ abs_top_srcdir = @abs_top_srcdir@ +ac_ct_AR = @ac_ct_AR@ ac_ct_CC = @ac_ct_CC@ ac_ct_CXX = @ac_ct_CXX@ ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ @@ -325,7 +353,6 @@ libdir = @libdir@ libexecdir = @libexecdir@ localedir = @localedir@ localstatedir = @localstatedir@ -lt_ECHO = @lt_ECHO@ mandir = @mandir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ @@ -479,10 +506,15 @@ install-am: all-am installcheck: installcheck-am install-strip: - $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ - install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ - `test -z '$(STRIP)' || \ - echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install + if test -z '$(STRIP)'; then \ + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + install; \ + else \ + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \ + fi mostlyclean-generic: clean-generic: diff --git a/common/m4/gst-args.m4 b/common/m4/gst-args.m4 index d16fa79..2dc0184 100644 --- a/common/m4/gst-args.m4 +++ b/common/m4/gst-args.m4 @@ -19,6 +19,7 @@ dnl AG_GST_ARG_ENABLE_EXTERNAL dnl AG_GST_ARG_ENABLE_EXPERIMENTAL dnl AG_GST_ARG_ENABLE_BROKEN +dnl AG_GST_ARG_DISABLE_FATAL_WARNINGS AC_DEFUN([AG_GST_ARG_DEBUG], [ dnl debugging stuff @@ -333,3 +334,20 @@ AC_DEFUN([AG_GST_ARG_ENABLE_BROKEN], AC_MSG_NOTICE([not building broken plug-ins]) ]) ]) + +dnl allow people (or build tools) to override default behaviour +dnl for fatal compiler warnings +AC_DEFUN([AG_GST_ARG_DISABLE_FATAL_WARNINGS], +[ + AC_ARG_ENABLE(fatal-warnings, + AC_HELP_STRING([--disable-fatal-warnings], + [Don't turn compiler warnings into fatal errors]), + [ + case "${enableval}" in + yes) FATAL_WARNINGS=yes ;; + no) FATAL_WARNINGS=no ;; + *) AC_MSG_ERROR(bad value ${enableval} for --disable-fatal-warnings) ;; + esac + ], + [FATAL_WARNINGS=$GST_GIT]) dnl Default value +]) diff --git a/common/m4/gst-check.m4 b/common/m4/gst-check.m4 index 3fd3acf..cba7e96 100644 --- a/common/m4/gst-check.m4 +++ b/common/m4/gst-check.m4 @@ -10,8 +10,8 @@ dnl specific: dnl AG_GST_CHECK_GST([MAJMIN], [MINVER], [REQUIRED]) dnl also sets/ACSUBSTs GST_TOOLS_DIR and GST_PLUGINS_DIR dnl AG_GST_CHECK_GST_BASE([MAJMIN], [MINVER], [REQUIRED]) -dnl AG_GST_CHECK_GST_GDP([MAJMIN], [MINVER], [REQUIRED]) dnl AG_GST_CHECK_GST_CONTROLLER([MAJMIN], [MINVER], [REQUIRED]) +dnl AG_GST_CHECK_GST_NET([MAJMIN], [MINVER], [REQUIRED]) dnl AG_GST_CHECK_GST_CHECK([MAJMIN], [MINVER], [REQUIRED]) dnl AG_GST_CHECK_GST_PLUGINS_BASE([MAJMIN], [MINVER], [REQUIRED]) dnl also sets/ACSUBSTs GSTPB_PLUGINS_DIR @@ -98,18 +98,18 @@ AC_DEFUN([AG_GST_CHECK_GST_BASE], [GStreamer Base Libraries], [$3]) ]) -AC_DEFUN([AG_GST_CHECK_GST_GDP], -[ - AG_GST_CHECK_MODULES(GST_GDP, gstreamer-dataprotocol-[$1], [$2], - [GStreamer Data Protocol Library], [$3]) -]) - AC_DEFUN([AG_GST_CHECK_GST_CONTROLLER], [ AG_GST_CHECK_MODULES(GST_CONTROLLER, gstreamer-controller-[$1], [$2], [GStreamer Controller Library], [$3]) ]) +AC_DEFUN([AG_GST_CHECK_GST_NET], +[ + AG_GST_CHECK_MODULES(GST_NET, gstreamer-net-[$1], [$2], + [GStreamer Network Library], [$3]) +]) + AC_DEFUN([AG_GST_CHECK_GST_CHECK], [ AG_GST_CHECK_MODULES(GST_CHECK, gstreamer-check-[$1], [$2], @@ -117,7 +117,39 @@ AC_DEFUN([AG_GST_CHECK_GST_CHECK], ]) dnl =========================================================================== -dnl AG_GST_CHECK_GST_PLUGINS_BASE([GST-MAJORMINOR], [MIN-VERSION], [REQUIRED]) +dnl AG_GST_CHECK_UNINSTALLED_SETUP([ACTION-IF-UNINSTALLED], [ACTION-IF-NOT]) +dnl +dnl ACTION-IF-UNINSTALLED (optional) extra actions to perform if the setup +dnl is an uninstalled setup +dnl ACTION-IF-NOT (optional) extra actions to perform if the setup +dnl is not an uninstalled setup +dnl =========================================================================== +AC_DEFUN([AG_GST_CHECK_UNINSTALLED_SETUP], +[ + AC_MSG_CHECKING([whether this is an uninstalled GStreamer setup]) + AC_CACHE_VAL(gst_cv_is_uninstalled_setup,[ + gst_cv_is_uninstalled_setup=no + if (set -u; : $GST_PLUGIN_SYSTEM_PATH) 2>/dev/null ; then + if test -z "$GST_PLUGIN_SYSTEM_PATH" \ + -a -n "$GST_PLUGIN_SCANNER" \ + -a -n "$GST_PLUGIN_PATH" \ + -a -n "$GST_REGISTRY" \ + -a -n "$DYLD_LIBRARY_PATH" \ + -a -n "$LD_LIBRARY_PATH"; then + gst_cv_is_uninstalled_setup=yes; + fi + fi + ]) + AC_MSG_RESULT($gst_cv_is_uninstalled_setup) + if test "x$gst_cv_is_uninstalled_setup" = "xyes"; then + ifelse([$1], , :, [$1]) + else + ifelse([$2], , :, [$2]) + fi +]) + +dnl =========================================================================== +dnl AG_GST_CHECK_GST_PLUGINS_BASE([GST-API_VERSION], [MIN-VERSION], [REQUIRED]) dnl dnl Sets GST_PLUGINS_BASE_CFLAGS and GST_PLUGINS_BASE_LIBS. dnl @@ -150,7 +182,7 @@ AC_DEFUN([AG_GST_CHECK_GST_PLUGINS_BASE], ]) dnl =========================================================================== -dnl AG_GST_CHECK_GST_PLUGINS_GOOD([GST-MAJORMINOR], [MIN-VERSION]) +dnl AG_GST_CHECK_GST_PLUGINS_GOOD([GST-API_VERSION], [MIN-VERSION]) dnl dnl Will set GST_PLUGINS_GOOD_DIR for use in Makefile.am. Note that this will dnl only be set in an uninstalled setup, since -good ships no .pc file and in @@ -178,7 +210,7 @@ AC_DEFUN([AG_GST_CHECK_GST_PLUGINS_GOOD], ]) dnl =========================================================================== -dnl AG_GST_CHECK_GST_PLUGINS_UGLY([GST-MAJORMINOR], [MIN-VERSION]) +dnl AG_GST_CHECK_GST_PLUGINS_UGLY([GST-API_VERSION], [MIN-VERSION]) dnl dnl Will set GST_PLUGINS_UGLY_DIR for use in Makefile.am. Note that this will dnl only be set in an uninstalled setup, since -bad ships no .pc file and in @@ -206,7 +238,7 @@ AC_DEFUN([AG_GST_CHECK_GST_PLUGINS_UGLY], ]) dnl =========================================================================== -dnl AG_GST_CHECK_GST_PLUGINS_BAD([GST-MAJORMINOR], [MIN-VERSION]) +dnl AG_GST_CHECK_GST_PLUGINS_BAD([GST-API_VERSION], [MIN-VERSION]) dnl dnl Will set GST_PLUGINS_BAD_DIR for use in Makefile.am. Note that this will dnl only be set in an uninstalled setup, since -ugly ships no .pc file and in @@ -234,7 +266,7 @@ AC_DEFUN([AG_GST_CHECK_GST_PLUGINS_BAD], ]) dnl =========================================================================== -dnl AG_GST_CHECK_GST_PLUGINS_FFMPEG([GST-MAJORMINOR], [MIN-VERSION]) +dnl AG_GST_CHECK_GST_PLUGINS_FFMPEG([GST-API_VERSION], [MIN-VERSION]) dnl dnl Will set GST_PLUGINS_FFMPEG_DIR for use in Makefile.am. Note that this will dnl only be set in an uninstalled setup, since -ffmpeg ships no .pc file and in diff --git a/common/m4/gst-doc.m4 b/common/m4/gst-doc.m4 index 6521097..871c346 100644 --- a/common/m4/gst-doc.m4 +++ b/common/m4/gst-doc.m4 @@ -5,7 +5,7 @@ AC_DEFUN([AG_GST_DOCBOOK_CHECK], then AC_MSG_ERROR([Internal error - PACKAGE_TARNAME not set]) fi - docdir="\$(datadir)/doc/$PACKAGE_TARNAME-$GST_MAJORMINOR" + docdir="\$(datadir)/doc/$PACKAGE_TARNAME-$GST_API_VERSION" dnl enable/disable docbook documentation building AC_ARG_ENABLE(docbook, diff --git a/common/m4/gst-feature.m4 b/common/m4/gst-feature.m4 index 7f684b0..6da0940 100644 --- a/common/m4/gst-feature.m4 +++ b/common/m4/gst-feature.m4 @@ -224,7 +224,38 @@ AC_DEFUN([AG_GST_PARSE_SUBSYSTEM_DISABLES], AG_GST_PARSE_SUBSYSTEM_DISABLE($1,XML) ]) +dnl AG_GST_CHECK_GST_DEBUG_DISABLED(ACTION-IF-DISABLED, ACTION-IF-NOT-DISABLED) +dnl +dnl Checks if the GStreamer debugging system is disabled in the core version +dnl we are compiling against (by checking gstconfig.h) +dnl +AC_DEFUN([AG_GST_CHECK_GST_DEBUG_DISABLED], +[ + AC_REQUIRE([AG_GST_CHECK_GST]) + + AC_MSG_CHECKING([whether the GStreamer debugging system is enabled]) + AC_LANG_PUSH([C]) + save_CFLAGS="$CFLAGS" + CFLAGS="$GST_CFLAGS $CFLAGS" + AC_COMPILE_IFELSE([ + AC_LANG_SOURCE([[ + #include + #ifdef GST_DISABLE_GST_DEBUG + #error "debugging disabled, make compiler fail" + #endif]])], [ debug_system_enabled=yes], [debug_system_enabled=no]) + CFLAGS="$save_CFLAGS" + AC_LANG_POP([C]) + AC_MSG_RESULT([$debug_system_enabled]) + + if test "x$debug_system_enabled" = "xyes" ; then + $2 + true + else + $1 + true + fi +]) dnl relies on GST_PLUGINS_ALL, GST_PLUGINS_SELECTED, GST_PLUGINS_YES, dnl GST_PLUGINS_NO, and BUILD_EXTERNAL diff --git a/common/m4/gst-glib2.m4 b/common/m4/gst-glib2.m4 index bafba41..b141bee 100644 --- a/common/m4/gst-glib2.m4 +++ b/common/m4/gst-glib2.m4 @@ -70,4 +70,22 @@ AC_DEFUN([AG_GST_GLIB_CHECK], dnl for the poor souls who for example have glib in /usr/local AS_SCRUB_INCLUDE(GLIB_CFLAGS) + + AC_SUBST(GLIB_EXTRA_CFLAGS) + + dnl Now check for GIO + PKG_CHECK_MODULES(GIO, gio-2.0 >= $GLIB_REQ) + if test "x$HAVE_GIO" = "xno"; then + AC_MSG_ERROR([This package requires GIO >= $GLIB_REQ to compile.]) + fi + + GIO_MODULE_DIR="`$PKG_CONFIG --variable=giomoduledir gio-2.0`" + AC_DEFINE_UNQUOTED(GIO_MODULE_DIR, "$GIO_MODULE_DIR", + [The GIO modules directory.]) + GIO_LIBDIR="`$PKG_CONFIG --variable=libdir gio-2.0`" + AC_DEFINE_UNQUOTED(GIO_LIBDIR, "$GIO_LIBDIR", + [The GIO library directory.]) + AC_SUBST(GIO_CFLAGS) + AC_SUBST(GIO_LIBS) + AC_SUBST(GIO_LDFLAGS) ]) diff --git a/common/m4/gst-plugindir.m4 b/common/m4/gst-plugindir.m4 index 09989d0..c9e1301 100644 --- a/common/m4/gst-plugindir.m4 +++ b/common/m4/gst-plugindir.m4 @@ -6,12 +6,12 @@ dnl AC_SUBST plugindir, to be used in Makefile.am's AC_DEFUN([AG_GST_SET_PLUGINDIR], [ dnl define location of plugin directory - AS_AC_EXPAND(PLUGINDIR, ${libdir}/gstreamer-$GST_MAJORMINOR) + AS_AC_EXPAND(PLUGINDIR, ${libdir}/gstreamer-$GST_API_VERSION) AC_DEFINE_UNQUOTED(PLUGINDIR, "$PLUGINDIR", [directory where plugins are located]) AC_MSG_NOTICE([Using $PLUGINDIR as the plugin install location]) dnl plugin directory configure-time variable for use in Makefile.am - plugindir="\$(libdir)/gstreamer-$GST_MAJORMINOR" + plugindir="\$(libdir)/gstreamer-$GST_API_VERSION" AC_SUBST(plugindir) ]) diff --git a/common/win32.mak b/common/win32.mak index 94afaec..c343a04 100644 --- a/common/win32.mak +++ b/common/win32.mak @@ -39,7 +39,7 @@ check-exports: @fail=0 ; \ for l in $(win32defs); do \ libbase=`basename "$$l" ".def"`; \ - libso=`find "$(top_builddir)" -name "$$libbase-@GST_MAJORMINOR@.so" | grep -v /_build/ | head -n1`; \ + libso=`find "$(top_builddir)" -name "$$libbase-@GST_API_VERSION@.so" | grep -v /_build/ | head -n1`; \ libdef="$(top_srcdir)/win32/common/$$libbase.def"; \ if test "x$$libso" != "x"; then \ echo Checking symbols in $$libso; \ diff --git a/compile b/compile index c0096a7..b1f4749 100755 --- a/compile +++ b/compile @@ -1,10 +1,10 @@ #! /bin/sh -# Wrapper for compilers which do not understand `-c -o'. +# Wrapper for compilers which do not understand '-c -o'. -scriptversion=2009-10-06.20; # UTC +scriptversion=2012-01-04.17; # UTC -# Copyright (C) 1999, 2000, 2003, 2004, 2005, 2009 Free Software -# Foundation, Inc. +# Copyright (C) 1999, 2000, 2003, 2004, 2005, 2009, 2010, 2012 Free +# Software Foundation, Inc. # Written by Tom Tromey . # # This program is free software; you can redistribute it and/or modify @@ -29,21 +29,186 @@ scriptversion=2009-10-06.20; # UTC # bugs to or send patches to # . +nl=' +' + +# We need space, tab and new line, in precisely that order. Quoting is +# there to prevent tools from complaining about whitespace usage. +IFS=" "" $nl" + +file_conv= + +# func_file_conv build_file lazy +# Convert a $build file to $host form and store it in $file +# Currently only supports Windows hosts. If the determined conversion +# type is listed in (the comma separated) LAZY, no conversion will +# take place. +func_file_conv () +{ + file=$1 + case $file in + / | /[!/]*) # absolute file, and not a UNC file + if test -z "$file_conv"; then + # lazily determine how to convert abs files + case `uname -s` in + MINGW*) + file_conv=mingw + ;; + CYGWIN*) + file_conv=cygwin + ;; + *) + file_conv=wine + ;; + esac + fi + case $file_conv/,$2, in + *,$file_conv,*) + ;; + mingw/*) + file=`cmd //C echo "$file " | sed -e 's/"\(.*\) " *$/\1/'` + ;; + cygwin/*) + file=`cygpath -m "$file" || echo "$file"` + ;; + wine/*) + file=`winepath -w "$file" || echo "$file"` + ;; + esac + ;; + esac +} + +# func_cl_wrapper cl arg... +# Adjust compile command to suit cl +func_cl_wrapper () +{ + # Assume a capable shell + lib_path= + shared=: + linker_opts= + for arg + do + if test -n "$eat"; then + eat= + else + case $1 in + -o) + # configure might choose to run compile as 'compile cc -o foo foo.c'. + eat=1 + case $2 in + *.o | *.[oO][bB][jJ]) + func_file_conv "$2" + set x "$@" -Fo"$file" + shift + ;; + *) + func_file_conv "$2" + set x "$@" -Fe"$file" + shift + ;; + esac + ;; + -I*) + func_file_conv "${1#-I}" mingw + set x "$@" -I"$file" + shift + ;; + -l*) + lib=${1#-l} + found=no + save_IFS=$IFS + IFS=';' + for dir in $lib_path $LIB + do + IFS=$save_IFS + if $shared && test -f "$dir/$lib.dll.lib"; then + found=yes + set x "$@" "$dir/$lib.dll.lib" + break + fi + if test -f "$dir/$lib.lib"; then + found=yes + set x "$@" "$dir/$lib.lib" + break + fi + done + IFS=$save_IFS + + test "$found" != yes && set x "$@" "$lib.lib" + shift + ;; + -L*) + func_file_conv "${1#-L}" + if test -z "$lib_path"; then + lib_path=$file + else + lib_path="$lib_path;$file" + fi + linker_opts="$linker_opts -LIBPATH:$file" + ;; + -static) + shared=false + ;; + -Wl,*) + arg=${1#-Wl,} + save_ifs="$IFS"; IFS=',' + for flag in $arg; do + IFS="$save_ifs" + linker_opts="$linker_opts $flag" + done + IFS="$save_ifs" + ;; + -Xlinker) + eat=1 + linker_opts="$linker_opts $2" + ;; + -*) + set x "$@" "$1" + shift + ;; + *.cc | *.CC | *.cxx | *.CXX | *.[cC]++) + func_file_conv "$1" + set x "$@" -Tp"$file" + shift + ;; + *.c | *.cpp | *.CPP | *.lib | *.LIB | *.Lib | *.OBJ | *.obj | *.[oO]) + func_file_conv "$1" mingw + set x "$@" "$file" + shift + ;; + *) + set x "$@" "$1" + shift + ;; + esac + fi + shift + done + if test -n "$linker_opts"; then + linker_opts="-link$linker_opts" + fi + exec "$@" $linker_opts + exit 1 +} + +eat= + case $1 in '') - echo "$0: No command. Try \`$0 --help' for more information." 1>&2 + echo "$0: No command. Try '$0 --help' for more information." 1>&2 exit 1; ;; -h | --h*) cat <<\EOF Usage: compile [--help] [--version] PROGRAM [ARGS] -Wrapper for compilers which do not understand `-c -o'. -Remove `-o dest.o' from ARGS, run PROGRAM with the remaining +Wrapper for compilers which do not understand '-c -o'. +Remove '-o dest.o' from ARGS, run PROGRAM with the remaining arguments, and rename the output as expected. If you are trying to build a whole package this is not the -right script to run: please start by reading the file `INSTALL'. +right script to run: please start by reading the file 'INSTALL'. Report bugs to . EOF @@ -53,11 +218,13 @@ EOF echo "compile $scriptversion" exit $? ;; + cl | *[/\\]cl | cl.exe | *[/\\]cl.exe ) + func_cl_wrapper "$@" # Doesn't return... + ;; esac ofile= cfile= -eat= for arg do @@ -66,8 +233,8 @@ do else case $1 in -o) - # configure might choose to run compile as `compile cc -o foo foo.c'. - # So we strip `-o arg' only if arg is an object. + # configure might choose to run compile as 'compile cc -o foo foo.c'. + # So we strip '-o arg' only if arg is an object. eat=1 case $2 in *.o | *.obj) @@ -94,10 +261,10 @@ do done if test -z "$ofile" || test -z "$cfile"; then - # If no `-o' option was seen then we might have been invoked from a + # If no '-o' option was seen then we might have been invoked from a # pattern rule where we don't need one. That is ok -- this is a # normal compilation that the losing compiler can handle. If no - # `.c' file was seen then we are probably linking. That is also + # '.c' file was seen then we are probably linking. That is also # ok. exec "$@" fi @@ -106,7 +273,7 @@ fi cofile=`echo "$cfile" | sed 's|^.*[\\/]||; s|^[a-zA-Z]:||; s/\.c$/.o/'` # Create the lock directory. -# Note: use `[/\\:.-]' here to ensure that we don't use the same name +# Note: use '[/\\:.-]' here to ensure that we don't use the same name # that we are using for the .o file. Also, base the name on the expected # object file name, since that is what matters with a parallel build. lockdir=`echo "$cofile" | sed -e 's|[/\\:.-]|_|g'`.d diff --git a/config.guess b/config.guess index c2246a4..d622a44 100755 --- a/config.guess +++ b/config.guess @@ -1,10 +1,10 @@ #! /bin/sh # Attempt to guess a canonical system name. # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, -# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 -# Free Software Foundation, Inc. +# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, +# 2011, 2012 Free Software Foundation, Inc. -timestamp='2009-12-30' +timestamp='2012-02-10' # This file is free software; you can redistribute it and/or modify it # under the terms of the GNU General Public License as published by @@ -17,9 +17,7 @@ timestamp='2009-12-30' # General Public License for more details. # # You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA -# 02110-1301, USA. +# along with this program; if not, see . # # As a special exception to the GNU General Public License, if you # distribute this file as part of a program that contains a @@ -57,8 +55,8 @@ GNU config.guess ($timestamp) Originally written by Per Bothner. Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, -2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free -Software Foundation, Inc. +2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012 +Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." @@ -145,7 +143,7 @@ UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in *:NetBSD:*:*) # NetBSD (nbsd) targets should (where applicable) match one or - # more of the tupples: *-*-netbsdelf*, *-*-netbsdaout*, + # more of the tuples: *-*-netbsdelf*, *-*-netbsdaout*, # *-*-netbsdecoff* and *-*-netbsd*. For targets that recently # switched to ELF, *-*-netbsd* would select the old # object file format. This provides both forward @@ -181,7 +179,7 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in fi ;; *) - os=netbsd + os=netbsd ;; esac # The OS release @@ -224,7 +222,7 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'` ;; *5.*) - UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'` + UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'` ;; esac # According to Compaq, /usr/sbin/psrinfo has been available on @@ -270,7 +268,10 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in # A Xn.n version is an unreleased experimental baselevel. # 1.2 uses "1.2" for uname -r. echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[PVTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` - exit ;; + # Reset EXIT trap before exiting to avoid spurious non-zero exit code. + exitcode=$? + trap '' 0 + exit $exitcode ;; Alpha\ *:Windows_NT*:*) # How do we know it's Interix rather than the generic POSIX subsystem? # Should we change UNAME_MACHINE based on the output of uname instead @@ -296,7 +297,7 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in echo s390-ibm-zvmoe exit ;; *:OS400:*:*) - echo powerpc-ibm-os400 + echo powerpc-ibm-os400 exit ;; arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*) echo arm-acorn-riscix${UNAME_RELEASE} @@ -395,23 +396,23 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in # MiNT. But MiNT is downward compatible to TOS, so this should # be no problem. atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*) - echo m68k-atari-mint${UNAME_RELEASE} + echo m68k-atari-mint${UNAME_RELEASE} exit ;; atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*) echo m68k-atari-mint${UNAME_RELEASE} - exit ;; + exit ;; *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*) - echo m68k-atari-mint${UNAME_RELEASE} + echo m68k-atari-mint${UNAME_RELEASE} exit ;; milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*) - echo m68k-milan-mint${UNAME_RELEASE} - exit ;; + echo m68k-milan-mint${UNAME_RELEASE} + exit ;; hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*) - echo m68k-hades-mint${UNAME_RELEASE} - exit ;; + echo m68k-hades-mint${UNAME_RELEASE} + exit ;; *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*) - echo m68k-unknown-mint${UNAME_RELEASE} - exit ;; + echo m68k-unknown-mint${UNAME_RELEASE} + exit ;; m68k:machten:*:*) echo m68k-apple-machten${UNAME_RELEASE} exit ;; @@ -481,8 +482,8 @@ EOF echo m88k-motorola-sysv3 exit ;; AViiON:dgux:*:*) - # DG/UX returns AViiON for all architectures - UNAME_PROCESSOR=`/usr/bin/uname -p` + # DG/UX returns AViiON for all architectures + UNAME_PROCESSOR=`/usr/bin/uname -p` if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ] then if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \ @@ -495,7 +496,7 @@ EOF else echo i586-dg-dgux${UNAME_RELEASE} fi - exit ;; + exit ;; M88*:DolphinOS:*:*) # DolphinOS (SVR3) echo m88k-dolphin-sysv3 exit ;; @@ -552,7 +553,7 @@ EOF echo rs6000-ibm-aix3.2 fi exit ;; - *:AIX:*:[456]) + *:AIX:*:[4567]) IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'` if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then IBM_ARCH=rs6000 @@ -595,52 +596,52 @@ EOF 9000/[678][0-9][0-9]) if [ -x /usr/bin/getconf ]; then sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null` - sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null` - case "${sc_cpu_version}" in - 523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0 - 528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1 - 532) # CPU_PA_RISC2_0 - case "${sc_kernel_bits}" in - 32) HP_ARCH="hppa2.0n" ;; - 64) HP_ARCH="hppa2.0w" ;; + sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null` + case "${sc_cpu_version}" in + 523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0 + 528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1 + 532) # CPU_PA_RISC2_0 + case "${sc_kernel_bits}" in + 32) HP_ARCH="hppa2.0n" ;; + 64) HP_ARCH="hppa2.0w" ;; '') HP_ARCH="hppa2.0" ;; # HP-UX 10.20 - esac ;; - esac + esac ;; + esac fi if [ "${HP_ARCH}" = "" ]; then eval $set_cc_for_build - sed 's/^ //' << EOF >$dummy.c + sed 's/^ //' << EOF >$dummy.c - #define _HPUX_SOURCE - #include - #include + #define _HPUX_SOURCE + #include + #include - int main () - { - #if defined(_SC_KERNEL_BITS) - long bits = sysconf(_SC_KERNEL_BITS); - #endif - long cpu = sysconf (_SC_CPU_VERSION); + int main () + { + #if defined(_SC_KERNEL_BITS) + long bits = sysconf(_SC_KERNEL_BITS); + #endif + long cpu = sysconf (_SC_CPU_VERSION); - switch (cpu) - { - case CPU_PA_RISC1_0: puts ("hppa1.0"); break; - case CPU_PA_RISC1_1: puts ("hppa1.1"); break; - case CPU_PA_RISC2_0: - #if defined(_SC_KERNEL_BITS) - switch (bits) - { - case 64: puts ("hppa2.0w"); break; - case 32: puts ("hppa2.0n"); break; - default: puts ("hppa2.0"); break; - } break; - #else /* !defined(_SC_KERNEL_BITS) */ - puts ("hppa2.0"); break; - #endif - default: puts ("hppa1.0"); break; - } - exit (0); - } + switch (cpu) + { + case CPU_PA_RISC1_0: puts ("hppa1.0"); break; + case CPU_PA_RISC1_1: puts ("hppa1.1"); break; + case CPU_PA_RISC2_0: + #if defined(_SC_KERNEL_BITS) + switch (bits) + { + case 64: puts ("hppa2.0w"); break; + case 32: puts ("hppa2.0n"); break; + default: puts ("hppa2.0"); break; + } break; + #else /* !defined(_SC_KERNEL_BITS) */ + puts ("hppa2.0"); break; + #endif + default: puts ("hppa1.0"); break; + } + exit (0); + } EOF (CCOPTS= $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy` test -z "$HP_ARCH" && HP_ARCH=hppa @@ -731,22 +732,22 @@ EOF exit ;; C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*) echo c1-convex-bsd - exit ;; + exit ;; C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*) if getsysinfo -f scalar_acc then echo c32-convex-bsd else echo c2-convex-bsd fi - exit ;; + exit ;; C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*) echo c34-convex-bsd - exit ;; + exit ;; C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*) echo c38-convex-bsd - exit ;; + exit ;; C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*) echo c4-convex-bsd - exit ;; + exit ;; CRAY*Y-MP:*:*:*) echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' exit ;; @@ -770,14 +771,14 @@ EOF exit ;; F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*) FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` - FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'` - FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'` - echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" - exit ;; + FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'` + FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'` + echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" + exit ;; 5000:UNIX_System_V:4.*:*) - FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'` - FUJITSU_REL=`echo ${UNAME_RELEASE} | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/ /_/'` - echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" + FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'` + FUJITSU_REL=`echo ${UNAME_RELEASE} | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/ /_/'` + echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" exit ;; i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*) echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE} @@ -789,13 +790,12 @@ EOF echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE} exit ;; *:FreeBSD:*:*) - case ${UNAME_MACHINE} in - pc98) - echo i386-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;; + UNAME_PROCESSOR=`/usr/bin/uname -p` + case ${UNAME_PROCESSOR} in amd64) echo x86_64-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;; *) - echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;; + echo ${UNAME_PROCESSOR}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;; esac exit ;; i*:CYGWIN*:*) @@ -804,15 +804,18 @@ EOF *:MINGW*:*) echo ${UNAME_MACHINE}-pc-mingw32 exit ;; + i*:MSYS*:*) + echo ${UNAME_MACHINE}-pc-msys + exit ;; i*:windows32*:*) - # uname -m includes "-pc" on this system. - echo ${UNAME_MACHINE}-mingw32 + # uname -m includes "-pc" on this system. + echo ${UNAME_MACHINE}-mingw32 exit ;; i*:PW*:*) echo ${UNAME_MACHINE}-pc-pw32 exit ;; *:Interix*:*) - case ${UNAME_MACHINE} in + case ${UNAME_MACHINE} in x86) echo i586-pc-interix${UNAME_RELEASE} exit ;; @@ -858,6 +861,13 @@ EOF i*86:Minix:*:*) echo ${UNAME_MACHINE}-pc-minix exit ;; + aarch64:Linux:*:*) + echo ${UNAME_MACHINE}-unknown-linux-gnu + exit ;; + aarch64_be:Linux:*:*) + UNAME_MACHINE=aarch64_be + echo ${UNAME_MACHINE}-unknown-linux-gnu + exit ;; alpha:Linux:*:*) case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in EV5) UNAME_MACHINE=alphaev5 ;; @@ -867,7 +877,7 @@ EOF EV6) UNAME_MACHINE=alphaev6 ;; EV67) UNAME_MACHINE=alphaev67 ;; EV68*) UNAME_MACHINE=alphaev68 ;; - esac + esac objdump --private-headers /bin/sh | grep -q ld.so.1 if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC} @@ -879,20 +889,29 @@ EOF then echo ${UNAME_MACHINE}-unknown-linux-gnu else - echo ${UNAME_MACHINE}-unknown-linux-gnueabi + if echo __ARM_PCS_VFP | $CC_FOR_BUILD -E - 2>/dev/null \ + | grep -q __ARM_PCS_VFP + then + echo ${UNAME_MACHINE}-unknown-linux-gnueabi + else + echo ${UNAME_MACHINE}-unknown-linux-gnueabihf + fi fi exit ;; avr32*:Linux:*:*) echo ${UNAME_MACHINE}-unknown-linux-gnu exit ;; cris:Linux:*:*) - echo cris-axis-linux-gnu + echo ${UNAME_MACHINE}-axis-linux-gnu exit ;; crisv32:Linux:*:*) - echo crisv32-axis-linux-gnu + echo ${UNAME_MACHINE}-axis-linux-gnu exit ;; frv:Linux:*:*) - echo frv-unknown-linux-gnu + echo ${UNAME_MACHINE}-unknown-linux-gnu + exit ;; + hexagon:Linux:*:*) + echo ${UNAME_MACHINE}-unknown-linux-gnu exit ;; i*86:Linux:*:*) LIBC=gnu @@ -934,7 +953,7 @@ EOF test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; } ;; or32:Linux:*:*) - echo or32-unknown-linux-gnu + echo ${UNAME_MACHINE}-unknown-linux-gnu exit ;; padre:Linux:*:*) echo sparc-unknown-linux-gnu @@ -960,7 +979,7 @@ EOF echo ${UNAME_MACHINE}-ibm-linux exit ;; sh64*:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-gnu + echo ${UNAME_MACHINE}-unknown-linux-gnu exit ;; sh*:Linux:*:*) echo ${UNAME_MACHINE}-unknown-linux-gnu @@ -968,14 +987,17 @@ EOF sparc:Linux:*:* | sparc64:Linux:*:*) echo ${UNAME_MACHINE}-unknown-linux-gnu exit ;; + tile*:Linux:*:*) + echo ${UNAME_MACHINE}-unknown-linux-gnu + exit ;; vax:Linux:*:*) echo ${UNAME_MACHINE}-dec-linux-gnu exit ;; x86_64:Linux:*:*) - echo x86_64-unknown-linux-gnu + echo ${UNAME_MACHINE}-unknown-linux-gnu exit ;; xtensa*:Linux:*:*) - echo ${UNAME_MACHINE}-unknown-linux-gnu + echo ${UNAME_MACHINE}-unknown-linux-gnu exit ;; i*86:DYNIX/ptx:4*:*) # ptx 4.0 does uname -s correctly, with DYNIX/ptx in there. @@ -984,11 +1006,11 @@ EOF echo i386-sequent-sysv4 exit ;; i*86:UNIX_SV:4.2MP:2.*) - # Unixware is an offshoot of SVR4, but it has its own version - # number series starting with 2... - # I am not positive that other SVR4 systems won't match this, + # Unixware is an offshoot of SVR4, but it has its own version + # number series starting with 2... + # I am not positive that other SVR4 systems won't match this, # I just have to hope. -- rms. - # Use sysv4.2uw... so that sysv4* matches it. + # Use sysv4.2uw... so that sysv4* matches it. echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION} exit ;; i*86:OS/2:*:*) @@ -1020,7 +1042,7 @@ EOF fi exit ;; i*86:*:5:[678]*) - # UnixWare 7.x, OpenUNIX and OpenServer 6. + # UnixWare 7.x, OpenUNIX and OpenServer 6. case `/bin/uname -X | grep "^Machine"` in *486*) UNAME_MACHINE=i486 ;; *Pentium) UNAME_MACHINE=i586 ;; @@ -1048,13 +1070,13 @@ EOF exit ;; pc:*:*:*) # Left here for compatibility: - # uname -m prints for DJGPP always 'pc', but it prints nothing about - # the processor, so we play safe by assuming i586. + # uname -m prints for DJGPP always 'pc', but it prints nothing about + # the processor, so we play safe by assuming i586. # Note: whatever this is, it MUST be the same as what config.sub # prints for the "djgpp" host, or else GDB configury will decide that # this is a cross-build. echo i586-pc-msdosdjgpp - exit ;; + exit ;; Intel:Mach:3*:*) echo i386-pc-mach3 exit ;; @@ -1089,8 +1111,8 @@ EOF /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \ && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;; 3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*) - /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ - && { echo i486-ncr-sysv4; exit; } ;; + /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ + && { echo i486-ncr-sysv4; exit; } ;; NCR*:*:4.2:* | MPRAS*:*:4.2:*) OS_REL='.3' test -r /etc/.relid \ @@ -1133,10 +1155,10 @@ EOF echo ns32k-sni-sysv fi exit ;; - PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort - # says - echo i586-unisys-sysv4 - exit ;; + PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort + # says + echo i586-unisys-sysv4 + exit ;; *:UNIX_System_V:4*:FTX*) # From Gerald Hewes . # How about differentiating between stratus architectures? -djm @@ -1162,11 +1184,11 @@ EOF exit ;; R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*) if [ -d /usr/nec ]; then - echo mips-nec-sysv${UNAME_RELEASE} + echo mips-nec-sysv${UNAME_RELEASE} else - echo mips-unknown-sysv${UNAME_RELEASE} + echo mips-unknown-sysv${UNAME_RELEASE} fi - exit ;; + exit ;; BeBox:BeOS:*:*) # BeOS running on hardware made by Be, PPC only. echo powerpc-be-beos exit ;; @@ -1231,6 +1253,9 @@ EOF *:QNX:*:4*) echo i386-pc-qnx exit ;; + NEO-?:NONSTOP_KERNEL:*:*) + echo neo-tandem-nsk${UNAME_RELEASE} + exit ;; NSE-?:NONSTOP_KERNEL:*:*) echo nse-tandem-nsk${UNAME_RELEASE} exit ;; @@ -1276,13 +1301,13 @@ EOF echo pdp10-unknown-its exit ;; SEI:*:*:SEIUX) - echo mips-sei-seiux${UNAME_RELEASE} + echo mips-sei-seiux${UNAME_RELEASE} exit ;; *:DragonFly:*:*) echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` exit ;; *:*VMS:*:*) - UNAME_MACHINE=`(uname -p) 2>/dev/null` + UNAME_MACHINE=`(uname -p) 2>/dev/null` case "${UNAME_MACHINE}" in A*) echo alpha-dec-vms ; exit ;; I*) echo ia64-dec-vms ; exit ;; @@ -1300,6 +1325,9 @@ EOF i*86:AROS:*:*) echo ${UNAME_MACHINE}-pc-aros exit ;; + x86_64:VMkernel:*:*) + echo ${UNAME_MACHINE}-unknown-esx + exit ;; esac #echo '(No uname command or uname output not recognized.)' 1>&2 @@ -1322,11 +1350,11 @@ main () #include printf ("m68k-sony-newsos%s\n", #ifdef NEWSOS4 - "4" + "4" #else - "" + "" #endif - ); exit (0); + ); exit (0); #endif #endif diff --git a/config.h.in b/config.h.in index 9396dc7..1c3e844 100644 --- a/config.h.in +++ b/config.h.in @@ -16,6 +16,15 @@ /* gettext package name */ #undef GETTEXT_PACKAGE +/* The GIO library directory. */ +#undef GIO_LIBDIR + +/* The GIO modules directory. */ +#undef GIO_MODULE_DIR + +/* GStreamer API Version */ +#undef GST_API_VERSION + /* data dir */ #undef GST_DATADIR @@ -43,9 +52,6 @@ /* GStreamer license */ #undef GST_LICENSE -/* library major.minor version */ -#undef GST_MAJORMINOR - /* package name in plugins */ #undef GST_PACKAGE_NAME @@ -160,15 +166,6 @@ /* Define to 1 if you have the header file. */ #undef HAVE_INTTYPES_H -/* Define to 1 if you have the `nsl' library (-lnsl). */ -#undef HAVE_LIBNSL - -/* Define to 1 if you have the `resolv' library (-lresolv). */ -#undef HAVE_LIBRESOLV - -/* Define to 1 if you have the `socket' library (-lsocket). */ -#undef HAVE_LIBSOCKET - /* Define to 1 if you have the `localtime_r' function. */ #undef HAVE_LOCALTIME_R @@ -241,6 +238,9 @@ /* Define to 1 if you have the header file. */ #undef HAVE_SYS_PARAM_H +/* Define to 1 if you have the header file. */ +#undef HAVE_SYS_POLL_H + /* Define to 1 if you have the header file. */ #undef HAVE_SYS_PRCTL_H @@ -314,9 +314,6 @@ /* Memory alignment by pagesize */ #undef MEMORY_ALIGNMENT_PAGESIZE -/* Define if you have no native inet_aton() function. */ -#undef NO_INET_ATON - /* Define to 1 if your C compiler doesn't accept -c and -o together. */ #undef NO_MINUS_C_MINUS_O diff --git a/config.sub b/config.sub index c2d1257..c894da4 100755 --- a/config.sub +++ b/config.sub @@ -1,10 +1,10 @@ #! /bin/sh # Configuration validation subroutine script. # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, -# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 -# Free Software Foundation, Inc. +# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, +# 2011, 2012 Free Software Foundation, Inc. -timestamp='2010-01-22' +timestamp='2012-02-10' # This file is (in principle) common to ALL GNU software. # The presence of a machine in this file suggests that SOME GNU software @@ -21,9 +21,7 @@ timestamp='2010-01-22' # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA -# 02110-1301, USA. +# along with this program; if not, see . # # As a special exception to the GNU General Public License, if you # distribute this file as part of a program that contains a @@ -76,8 +74,8 @@ version="\ GNU config.sub ($timestamp) Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, -2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free -Software Foundation, Inc. +2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012 +Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." @@ -124,13 +122,18 @@ esac # Here we must recognize all the valid KERNEL-OS combinations. maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'` case $maybe_os in - nto-qnx* | linux-gnu* | linux-dietlibc | linux-newlib* | linux-uclibc* | \ - uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | knetbsd*-gnu* | netbsd*-gnu* | \ + nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc | linux-newlib* | \ + linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \ + knetbsd*-gnu* | netbsd*-gnu* | \ kopensolaris*-gnu* | \ storm-chaos* | os2-emx* | rtmk-nova*) os=-$maybe_os basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'` ;; + android-linux) + os=-linux-android + basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`-unknown + ;; *) basic_machine=`echo $1 | sed 's/-[^-]*$//'` if [ $basic_machine != $1 ] @@ -157,8 +160,8 @@ case $os in os= basic_machine=$1 ;; - -bluegene*) - os=-cnk + -bluegene*) + os=-cnk ;; -sim | -cisco | -oki | -wec | -winbond) os= @@ -174,10 +177,10 @@ case $os in os=-chorusos basic_machine=$1 ;; - -chorusrdb) - os=-chorusrdb + -chorusrdb) + os=-chorusrdb basic_machine=$1 - ;; + ;; -hiux*) os=-hiuxwe2 ;; @@ -246,17 +249,22 @@ case $basic_machine in # Some are omitted here because they have special meanings below. 1750a | 580 \ | a29k \ + | aarch64 | aarch64_be \ | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \ | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \ | am33_2.0 \ | arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr | avr32 \ + | be32 | be64 \ | bfin \ | c4x | clipper \ | d10v | d30v | dlx | dsp16xx \ + | epiphany \ | fido | fr30 | frv \ | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \ + | hexagon \ | i370 | i860 | i960 | ia64 \ | ip2k | iq2000 \ + | le32 | le64 \ | lm32 \ | m32c | m32r | m32rle | m68000 | m68k | m88k \ | maxq | mb | microblaze | mcore | mep | metag \ @@ -282,29 +290,39 @@ case $basic_machine in | moxie \ | mt \ | msp430 \ + | nds32 | nds32le | nds32be \ | nios | nios2 \ | ns16k | ns32k \ + | open8 \ | or32 \ | pdp10 | pdp11 | pj | pjl \ - | powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \ + | powerpc | powerpc64 | powerpc64le | powerpcle \ | pyramid \ - | rx \ + | rl78 | rx \ | score \ | sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \ | sh64 | sh64le \ | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \ | sparcv8 | sparcv9 | sparcv9b | sparcv9v \ - | spu | strongarm \ - | tahoe | thumb | tic4x | tic80 | tron \ + | spu \ + | tahoe | tic4x | tic54x | tic55x | tic6x | tic80 | tron \ | ubicom32 \ - | v850 | v850e \ + | v850 | v850e | v850e1 | v850e2 | v850es | v850e2v3 \ | we32k \ - | x86 | xc16x | xscale | xscalee[bl] | xstormy16 | xtensa \ + | x86 | xc16x | xstormy16 | xtensa \ | z8k | z80) basic_machine=$basic_machine-unknown ;; - m6811 | m68hc11 | m6812 | m68hc12 | picochip) - # Motorola 68HC11/12. + c54x) + basic_machine=tic54x-unknown + ;; + c55x) + basic_machine=tic55x-unknown + ;; + c6x) + basic_machine=tic6x-unknown + ;; + m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x | picochip) basic_machine=$basic_machine-unknown os=-none ;; @@ -314,6 +332,21 @@ case $basic_machine in basic_machine=mt-unknown ;; + strongarm | thumb | xscale) + basic_machine=arm-unknown + ;; + xgate) + basic_machine=$basic_machine-unknown + os=-none + ;; + xscaleeb) + basic_machine=armeb-unknown + ;; + + xscaleel) + basic_machine=armel-unknown + ;; + # We use `pc' rather than `unknown' # because (1) that's what they normally are, and # (2) the word "unknown" tends to confuse beginning users. @@ -328,21 +361,25 @@ case $basic_machine in # Recognize the basic CPU types with company name. 580-* \ | a29k-* \ + | aarch64-* | aarch64_be-* \ | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \ | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \ | alphapca5[67]-* | alpha64pca5[67]-* | arc-* \ | arm-* | armbe-* | armle-* | armeb-* | armv*-* \ | avr-* | avr32-* \ + | be32-* | be64-* \ | bfin-* | bs2000-* \ - | c[123]* | c30-* | [cjt]90-* | c4x-* | c54x-* | c55x-* | c6x-* \ + | c[123]* | c30-* | [cjt]90-* | c4x-* \ | clipper-* | craynv-* | cydra-* \ | d10v-* | d30v-* | dlx-* \ | elxsi-* \ | f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \ | h8300-* | h8500-* \ | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \ + | hexagon-* \ | i*86-* | i860-* | i960-* | ia64-* \ | ip2k-* | iq2000-* \ + | le32-* | le64-* \ | lm32-* \ | m32c-* | m32r-* | m32rle-* \ | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \ @@ -368,26 +405,29 @@ case $basic_machine in | mmix-* \ | mt-* \ | msp430-* \ + | nds32-* | nds32le-* | nds32be-* \ | nios-* | nios2-* \ | none-* | np1-* | ns16k-* | ns32k-* \ + | open8-* \ | orion-* \ | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \ - | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \ + | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* \ | pyramid-* \ - | romp-* | rs6000-* | rx-* \ + | rl78-* | romp-* | rs6000-* | rx-* \ | sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \ | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \ | sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \ | sparclite-* \ - | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | strongarm-* | sv1-* | sx?-* \ - | tahoe-* | thumb-* \ + | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | sv1-* | sx?-* \ + | tahoe-* \ | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \ - | tile-* | tilegx-* \ + | tile*-* \ | tron-* \ | ubicom32-* \ - | v850-* | v850e-* | vax-* \ + | v850-* | v850e-* | v850e1-* | v850es-* | v850e2-* | v850e2v3-* \ + | vax-* \ | we32k-* \ - | x86-* | x86_64-* | xc16x-* | xps100-* | xscale-* | xscalee[bl]-* \ + | x86-* | x86_64-* | xc16x-* | xps100-* \ | xstormy16-* | xtensa*-* \ | ymp-* \ | z8k-* | z80-*) @@ -412,7 +452,7 @@ case $basic_machine in basic_machine=a29k-amd os=-udi ;; - abacus) + abacus) basic_machine=abacus-unknown ;; adobe68k) @@ -482,11 +522,20 @@ case $basic_machine in basic_machine=powerpc-ibm os=-cnk ;; + c54x-*) + basic_machine=tic54x-`echo $basic_machine | sed 's/^[^-]*-//'` + ;; + c55x-*) + basic_machine=tic55x-`echo $basic_machine | sed 's/^[^-]*-//'` + ;; + c6x-*) + basic_machine=tic6x-`echo $basic_machine | sed 's/^[^-]*-//'` + ;; c90) basic_machine=c90-cray os=-unicos ;; - cegcc) + cegcc) basic_machine=arm-unknown os=-cegcc ;; @@ -518,7 +567,7 @@ case $basic_machine in basic_machine=craynv-cray os=-unicosmp ;; - cr16) + cr16 | cr16-*) basic_machine=cr16-unknown os=-elf ;; @@ -676,7 +725,6 @@ case $basic_machine in i370-ibm* | ibm*) basic_machine=i370-ibm ;; -# I'm not sure what "Sysv32" means. Should this be sysv3.2? i*86v32) basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` os=-sysv32 @@ -734,7 +782,7 @@ case $basic_machine in basic_machine=ns32k-utek os=-sysv ;; - microblaze) + microblaze) basic_machine=microblaze-xilinx ;; mingw32) @@ -773,10 +821,18 @@ case $basic_machine in ms1-*) basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'` ;; + msys) + basic_machine=i386-pc + os=-msys + ;; mvs) basic_machine=i370-ibm os=-mvs ;; + nacl) + basic_machine=le32-unknown + os=-nacl + ;; ncr3000) basic_machine=i486-ncr os=-sysv4 @@ -841,6 +897,12 @@ case $basic_machine in np1) basic_machine=np1-gould ;; + neo-tandem) + basic_machine=neo-tandem + ;; + nse-tandem) + basic_machine=nse-tandem + ;; nsr-tandem) basic_machine=nsr-tandem ;; @@ -923,9 +985,10 @@ case $basic_machine in ;; power) basic_machine=power-ibm ;; - ppc) basic_machine=powerpc-unknown + ppc | ppcbe) basic_machine=powerpc-unknown ;; - ppc-*) basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'` + ppc-* | ppcbe-*) + basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'` ;; ppcle | powerpclittle | ppc-le | powerpc-little) basic_machine=powerpcle-unknown @@ -1019,6 +1082,9 @@ case $basic_machine in basic_machine=i860-stratus os=-sysv4 ;; + strongarm-* | thumb-*) + basic_machine=arm-`echo $basic_machine | sed 's/^[^-]*-//'` + ;; sun2) basic_machine=m68000-sun ;; @@ -1075,25 +1141,8 @@ case $basic_machine in basic_machine=t90-cray os=-unicos ;; - tic54x | c54x*) - basic_machine=tic54x-unknown - os=-coff - ;; - tic55x | c55x*) - basic_machine=tic55x-unknown - os=-coff - ;; - tic6x | c6x*) - basic_machine=tic6x-unknown - os=-coff - ;; - # This must be matched before tile*. - tilegx*) - basic_machine=tilegx-unknown - os=-linux-gnu - ;; tile*) - basic_machine=tile-unknown + basic_machine=$basic_machine-unknown os=-linux-gnu ;; tx39) @@ -1163,6 +1212,9 @@ case $basic_machine in xps | xps100) basic_machine=xps100-honeywell ;; + xscale-* | xscalee[bl]-*) + basic_machine=`echo $basic_machine | sed 's/^xscale/arm/'` + ;; ymp) basic_machine=ymp-cray os=-unicos @@ -1260,11 +1312,11 @@ esac if [ x"$os" != x"" ] then case $os in - # First match some system type aliases - # that might get confused with valid system types. + # First match some system type aliases + # that might get confused with valid system types. # -solaris* is a basic system type, with this one exception. - -auroraux) - os=-auroraux + -auroraux) + os=-auroraux ;; -solaris1 | -solaris1.*) os=`echo $os | sed -e 's|solaris1|sunos4|'` @@ -1300,8 +1352,9 @@ case $os in | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \ | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \ | -chorusos* | -chorusrdb* | -cegcc* \ - | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \ - | -mingw32* | -linux-gnu* | -linux-newlib* | -linux-uclibc* \ + | -cygwin* | -msys* | -pe* | -psos* | -moss* | -proelf* | -rtems* \ + | -mingw32* | -linux-gnu* | -linux-android* \ + | -linux-newlib* | -linux-uclibc* \ | -uxpv* | -beos* | -mpeix* | -udk* \ | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \ | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \ @@ -1348,7 +1401,7 @@ case $os in -opened*) os=-openedition ;; - -os400*) + -os400*) os=-os400 ;; -wince*) @@ -1397,7 +1450,7 @@ case $os in -sinix*) os=-sysv4 ;; - -tpf*) + -tpf*) os=-tpf ;; -triton*) @@ -1442,8 +1495,8 @@ case $os in -dicos*) os=-dicos ;; - -nacl*) - ;; + -nacl*) + ;; -none) ;; *) @@ -1466,10 +1519,10 @@ else # system, and we'll never get to this point. case $basic_machine in - score-*) + score-*) os=-elf ;; - spu-*) + spu-*) os=-elf ;; *-acorn) @@ -1481,8 +1534,17 @@ case $basic_machine in arm*-semi) os=-aout ;; - c4x-* | tic4x-*) - os=-coff + c4x-* | tic4x-*) + os=-coff + ;; + tic54x-*) + os=-coff + ;; + tic55x-*) + os=-coff + ;; + tic6x-*) + os=-coff ;; # This must come before the *-dec entry. pdp10-*) @@ -1502,14 +1564,11 @@ case $basic_machine in ;; m68000-sun) os=-sunos3 - # This also exists in the configure program, but was not the - # default. - # os=-sunos4 ;; m68*-cisco) os=-aout ;; - mep-*) + mep-*) os=-elf ;; mips*-cisco) @@ -1536,7 +1595,7 @@ case $basic_machine in *-ibm) os=-aix ;; - *-knuth) + *-knuth) os=-mmixware ;; *-wec) diff --git a/configure b/configure index f886595..30aef90 100755 --- a/configure +++ b/configure @@ -1,6 +1,6 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.67 for GStreamer 0.11.1. +# Generated by GNU Autoconf 2.68 for GStreamer 0.11.90. # # Report bugs to . # @@ -91,6 +91,7 @@ fi IFS=" "" $as_nl" # Find who we are. Look in the path if we contain no directory separator. +as_myself= case $0 in #(( *[\\/]* ) as_myself=$0 ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR @@ -173,6 +174,14 @@ test x\$exitcode = x0 || exit 1" as_lineno_2=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_2a=\$LINENO eval 'test \"x\$as_lineno_1'\$as_run'\" != \"x\$as_lineno_2'\$as_run'\" && test \"x\`expr \$as_lineno_1'\$as_run' + 1\`\" = \"x\$as_lineno_2'\$as_run'\"' || exit 1 + + test -n \"\${ZSH_VERSION+set}\${BASH_VERSION+set}\" || ( + ECHO='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\' + ECHO=\$ECHO\$ECHO\$ECHO\$ECHO\$ECHO + ECHO=\$ECHO\$ECHO\$ECHO\$ECHO\$ECHO\$ECHO + PATH=/empty FPATH=/empty; export PATH FPATH + test \"X\`printf %s \$ECHO\`\" = \"X\$ECHO\" \\ + || test \"X\`print -r -- \$ECHO\`\" = \"X\$ECHO\" ) || exit 1 test \$(( 1 + 1 )) = 2 || exit 1" if (eval "$as_required") 2>/dev/null; then : as_have_required=yes @@ -216,11 +225,18 @@ IFS=$as_save_IFS # We cannot yet assume a decent shell, so we have to provide a # neutralization value for shells without unset; and this also # works around shells that cannot unset nonexistent variables. + # Preserve -v and -x to the replacement shell. BASH_ENV=/dev/null ENV=/dev/null (unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV export CONFIG_SHELL - exec "$CONFIG_SHELL" "$as_myself" ${1+"$@"} + case $- in # (((( + *v*x* | *x*v* ) as_opts=-vx ;; + *v* ) as_opts=-v ;; + *x* ) as_opts=-x ;; + * ) as_opts= ;; + esac + exec "$CONFIG_SHELL" $as_opts "$as_myself" ${1+"$@"} fi if test x$as_have_required = xno; then : @@ -529,155 +545,8 @@ as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'" # Sed expression to map a string onto a valid variable name. as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'" - - -# Check that we are running under the correct shell. SHELL=${CONFIG_SHELL-/bin/sh} -case X$lt_ECHO in -X*--fallback-echo) - # Remove one level of quotation (which was required for Make). - ECHO=`echo "$lt_ECHO" | sed 's,\\\\\$\\$0,'$0','` - ;; -esac - -ECHO=${lt_ECHO-echo} -if test "X$1" = X--no-reexec; then - # Discard the --no-reexec flag, and continue. - shift -elif test "X$1" = X--fallback-echo; then - # Avoid inline document here, it may be left over - : -elif test "X`{ $ECHO '\t'; } 2>/dev/null`" = 'X\t' ; then - # Yippee, $ECHO works! - : -else - # Restart under the correct shell. - exec $SHELL "$0" --no-reexec ${1+"$@"} -fi - -if test "X$1" = X--fallback-echo; then - # used as fallback echo - shift - cat <<_LT_EOF -$* -_LT_EOF - exit 0 -fi - -# The HP-UX ksh and POSIX shell print the target directory to stdout -# if CDPATH is set. -(unset CDPATH) >/dev/null 2>&1 && unset CDPATH - -if test -z "$lt_ECHO"; then - if test "X${echo_test_string+set}" != Xset; then - # find a string as large as possible, as long as the shell can cope with it - for cmd in 'sed 50q "$0"' 'sed 20q "$0"' 'sed 10q "$0"' 'sed 2q "$0"' 'echo test'; do - # expected sizes: less than 2Kb, 1Kb, 512 bytes, 16 bytes, ... - if { echo_test_string=`eval $cmd`; } 2>/dev/null && - { test "X$echo_test_string" = "X$echo_test_string"; } 2>/dev/null - then - break - fi - done - fi - - if test "X`{ $ECHO '\t'; } 2>/dev/null`" = 'X\t' && - echo_testing_string=`{ $ECHO "$echo_test_string"; } 2>/dev/null` && - test "X$echo_testing_string" = "X$echo_test_string"; then - : - else - # The Solaris, AIX, and Digital Unix default echo programs unquote - # backslashes. This makes it impossible to quote backslashes using - # echo "$something" | sed 's/\\/\\\\/g' - # - # So, first we look for a working echo in the user's PATH. - - lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR - for dir in $PATH /usr/ucb; do - IFS="$lt_save_ifs" - if (test -f $dir/echo || test -f $dir/echo$ac_exeext) && - test "X`($dir/echo '\t') 2>/dev/null`" = 'X\t' && - echo_testing_string=`($dir/echo "$echo_test_string") 2>/dev/null` && - test "X$echo_testing_string" = "X$echo_test_string"; then - ECHO="$dir/echo" - break - fi - done - IFS="$lt_save_ifs" - - if test "X$ECHO" = Xecho; then - # We didn't find a better echo, so look for alternatives. - if test "X`{ print -r '\t'; } 2>/dev/null`" = 'X\t' && - echo_testing_string=`{ print -r "$echo_test_string"; } 2>/dev/null` && - test "X$echo_testing_string" = "X$echo_test_string"; then - # This shell has a builtin print -r that does the trick. - ECHO='print -r' - elif { test -f /bin/ksh || test -f /bin/ksh$ac_exeext; } && - test "X$CONFIG_SHELL" != X/bin/ksh; then - # If we have ksh, try running configure again with it. - ORIGINAL_CONFIG_SHELL=${CONFIG_SHELL-/bin/sh} - export ORIGINAL_CONFIG_SHELL - CONFIG_SHELL=/bin/ksh - export CONFIG_SHELL - exec $CONFIG_SHELL "$0" --no-reexec ${1+"$@"} - else - # Try using printf. - ECHO='printf %s\n' - if test "X`{ $ECHO '\t'; } 2>/dev/null`" = 'X\t' && - echo_testing_string=`{ $ECHO "$echo_test_string"; } 2>/dev/null` && - test "X$echo_testing_string" = "X$echo_test_string"; then - # Cool, printf works - : - elif echo_testing_string=`($ORIGINAL_CONFIG_SHELL "$0" --fallback-echo '\t') 2>/dev/null` && - test "X$echo_testing_string" = 'X\t' && - echo_testing_string=`($ORIGINAL_CONFIG_SHELL "$0" --fallback-echo "$echo_test_string") 2>/dev/null` && - test "X$echo_testing_string" = "X$echo_test_string"; then - CONFIG_SHELL=$ORIGINAL_CONFIG_SHELL - export CONFIG_SHELL - SHELL="$CONFIG_SHELL" - export SHELL - ECHO="$CONFIG_SHELL $0 --fallback-echo" - elif echo_testing_string=`($CONFIG_SHELL "$0" --fallback-echo '\t') 2>/dev/null` && - test "X$echo_testing_string" = 'X\t' && - echo_testing_string=`($CONFIG_SHELL "$0" --fallback-echo "$echo_test_string") 2>/dev/null` && - test "X$echo_testing_string" = "X$echo_test_string"; then - ECHO="$CONFIG_SHELL $0 --fallback-echo" - else - # maybe with a smaller string... - prev=: - - for cmd in 'echo test' 'sed 2q "$0"' 'sed 10q "$0"' 'sed 20q "$0"' 'sed 50q "$0"'; do - if { test "X$echo_test_string" = "X`eval $cmd`"; } 2>/dev/null - then - break - fi - prev="$cmd" - done - - if test "$prev" != 'sed 50q "$0"'; then - echo_test_string=`eval $prev` - export echo_test_string - exec ${ORIGINAL_CONFIG_SHELL-${CONFIG_SHELL-/bin/sh}} "$0" ${1+"$@"} - else - # Oops. We lost completely, so just stick with echo. - ECHO=echo - fi - fi - fi - fi - fi -fi - -# Copy echo and quote the copy suitably for passing to libtool from -# the Makefile, instead of quoting the original, which is used later. -lt_ECHO=$ECHO -if test "X$lt_ECHO" = "X$CONFIG_SHELL $0 --fallback-echo"; then - lt_ECHO="$CONFIG_SHELL \\\$\$0 --fallback-echo" -fi - - - test -n "$DJDIR" || exec 7<&0 &1 @@ -702,8 +571,8 @@ MAKEFLAGS= # Identity of this package. PACKAGE_NAME='GStreamer' PACKAGE_TARNAME='gstreamer' -PACKAGE_VERSION='0.11.1' -PACKAGE_STRING='GStreamer 0.11.1' +PACKAGE_VERSION='0.11.90' +PACKAGE_STRING='GStreamer 0.11.90' PACKAGE_BUGREPORT='http://bugzilla.gnome.org/enter_bug.cgi?product=GStreamer' PACKAGE_URL='' @@ -783,12 +652,13 @@ GST_LICENSE HAVE_CHECK_FALSE HAVE_CHECK_TRUE GLIB_PREFIX -GLIB_ONLY_LIBS -GLIB_ONLY_CFLAGS +GIO_LDFLAGS +GIO_LIBS +GIO_CFLAGS +GLIB_EXTRA_CFLAGS GLIB_LIBS GLIB_CFLAGS GLIB_REQ -INET_ATON_LIBS GST_USING_PRINTF_EXTENSION_DEFINE GST_PRINTF_EXTENSION_SEGMENT_FORMAT_DEFINE GST_PRINTF_EXTENSION_POINTER_FORMAT_DEFINE @@ -936,9 +806,6 @@ PKG_CONFIG GST_DISABLE_PLUGIN_FALSE GST_DISABLE_PLUGIN_TRUE GST_DISABLE_PLUGIN_DEFINE -GST_DISABLE_NET_FALSE -GST_DISABLE_NET_TRUE -GST_DISABLE_NET_DEFINE GST_REGISTRY_DOC_TYPES GST_DISABLE_REGISTRY_FALSE GST_DISABLE_REGISTRY_TRUE @@ -984,8 +851,9 @@ OTOOL LIPO NMEDIT DSYMUTIL -lt_ECHO +MANIFEST_TOOL RANLIB +ac_ct_AR AR LN_S NM @@ -999,6 +867,7 @@ SED am__fastdepCC_FALSE am__fastdepCC_TRUE CCDEPMODE +am__nodep AMDEPBACKSLASH AMDEP_FALSE AMDEP_TRUE @@ -1021,9 +890,15 @@ GST_LIBVERSION GST_AGE GST_REVISION GST_CURRENT -GST_MAJORMINOR +GST_API_VERSION +GST_VERSION_NANO +GST_VERSION_MICRO +GST_VERSION_MINOR +GST_VERSION_MAJOR AM_BACKSLASH AM_DEFAULT_VERBOSITY +AM_DEFAULT_V +AM_V host_os host_vendor host_cpu @@ -1112,6 +987,7 @@ with_pic enable_fast_install enable_dependency_tracking with_gnu_ld +with_sysroot enable_libtool_lock with_autoconf with_autoheader @@ -1121,13 +997,13 @@ enable_nls enable_rpath with_libiconv_prefix with_libintl_prefix +enable_fatal_warnings enable_gst_debug enable_parse enable_option_parsing enable_trace enable_alloc_trace enable_registry -enable_net enable_plugin enable_debug enable_profiling @@ -1171,8 +1047,8 @@ CCC CXXCPP GLIB_CFLAGS GLIB_LIBS -GLIB_ONLY_CFLAGS -GLIB_ONLY_LIBS' +GIO_CFLAGS +GIO_LIBS' # Initialize some variables set by options. @@ -1577,7 +1453,7 @@ Try \`$0 --help' for more information" $as_echo "$as_me: WARNING: you should use --build, --host, --target" >&2 expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null && $as_echo "$as_me: WARNING: invalid host type: $ac_option" >&2 - : ${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option} + : "${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option}" ;; esac @@ -1715,7 +1591,7 @@ if test "$ac_init_help" = "long"; then # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF -\`configure' configures GStreamer 0.11.1 to adapt to many kinds of systems. +\`configure' configures GStreamer 0.11.90 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1785,7 +1661,7 @@ fi if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of GStreamer 0.11.1:";; + short | recursive ) echo "Configuration of GStreamer 0.11.90:";; esac cat <<\_ACEOF @@ -1806,6 +1682,8 @@ Optional Features: --disable-libtool-lock avoid locking (might break parallel builds) --disable-nls do not use Native Language Support --disable-rpath do not hardcode runtime library paths + --disable-fatal-warnings + Don't turn compiler warnings into fatal errors --disable-gst-debug disable debugging subsystem --disable-parse disable command-line parser --disable-option-parsing @@ -1813,7 +1691,6 @@ Optional Features: --disable-trace disable tracing subsystem --disable-alloc-trace disable allocation tracing --disable-registry disable plugin registry - --disable-net disable network distribution --disable-plugin disable plugin --disable-debug disable addition of -g debugging info --enable-profiling adds -pg to compiler commandline, for profiling @@ -1839,9 +1716,11 @@ Optional Features: Optional Packages: --with-PACKAGE[=ARG] use PACKAGE [ARG=yes] --without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no) - --with-pic try to use only PIC/non-PIC objects [default=use + --with-pic[=PKGS] try to use only PIC/non-PIC objects [default=use both] --with-gnu-ld assume the C compiler uses GNU ld [default=no] + --with-sysroot=DIR Search for dependent libraries within DIR + (or the compiler's sysroot if not specified). --with-autoconf use a different autoconf for regeneration of Makefiles --with-autoheader use a different autoheader for regeneration of @@ -1882,10 +1761,8 @@ Some influential environment variables: CXXCPP C++ preprocessor GLIB_CFLAGS C compiler flags for GLIB, overriding pkg-config GLIB_LIBS linker flags for GLIB, overriding pkg-config - GLIB_ONLY_CFLAGS - C compiler flags for GLIB_ONLY, overriding pkg-config - GLIB_ONLY_LIBS - linker flags for GLIB_ONLY, overriding pkg-config + GIO_CFLAGS C compiler flags for GIO, overriding pkg-config + GIO_LIBS linker flags for GIO, overriding pkg-config Use these variables to override the choices made by `configure' or to help it to find libraries and programs with nonstandard names/locations. @@ -1953,8 +1830,8 @@ fi test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -GStreamer configure 0.11.1 -generated by GNU Autoconf 2.67 +GStreamer configure 0.11.90 +generated by GNU Autoconf 2.68 Copyright (C) 2010 Free Software Foundation, Inc. This configure script is free software; the Free Software Foundation @@ -2000,7 +1877,7 @@ sed 's/^/| /' conftest.$ac_ext >&5 ac_retval=1 fi - eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;} + eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno as_fn_set_status $ac_retval } # ac_fn_c_try_compile @@ -2046,7 +1923,7 @@ fi # interfere with the next link command; also delete a directory that is # left behind by Apple's compiler. We do this before executing the actions. rm -rf conftest.dSYM conftest_ipa8_conftest.oo - eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;} + eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno as_fn_set_status $ac_retval } # ac_fn_c_try_link @@ -2060,7 +1937,7 @@ ac_fn_c_check_header_compile () as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 $as_echo_n "checking for $2... " >&6; } -if eval "test \"\${$3+set}\"" = set; then : +if eval \${$3+:} false; then : $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext @@ -2078,7 +1955,7 @@ fi eval ac_res=\$$3 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 $as_echo "$ac_res" >&6; } - eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;} + eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno } # ac_fn_c_check_header_compile @@ -2114,7 +1991,7 @@ sed 's/^/| /' conftest.$ac_ext >&5 ac_retval=1 fi - eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;} + eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno as_fn_set_status $ac_retval } # ac_fn_c_try_cpp @@ -2156,7 +2033,7 @@ sed 's/^/| /' conftest.$ac_ext >&5 ac_retval=$ac_status fi rm -rf conftest.dSYM conftest_ipa8_conftest.oo - eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;} + eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno as_fn_set_status $ac_retval } # ac_fn_c_try_run @@ -2169,7 +2046,7 @@ ac_fn_c_check_func () as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 $as_echo_n "checking for $2... " >&6; } -if eval "test \"\${$3+set}\"" = set; then : +if eval \${$3+:} false; then : $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext @@ -2224,7 +2101,7 @@ fi eval ac_res=\$$3 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 $as_echo "$ac_res" >&6; } - eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;} + eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno } # ac_fn_c_check_func @@ -2239,7 +2116,7 @@ ac_fn_c_check_decl () as_decl_use=`echo $2|sed -e 's/(/((/' -e 's/)/) 0&/' -e 's/,/) 0& (/g'` { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $as_decl_name is declared" >&5 $as_echo_n "checking whether $as_decl_name is declared... " >&6; } -if eval "test \"\${$3+set}\"" = set; then : +if eval \${$3+:} false; then : $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext @@ -2270,7 +2147,7 @@ fi eval ac_res=\$$3 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 $as_echo "$ac_res" >&6; } - eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;} + eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno } # ac_fn_c_check_decl @@ -2307,7 +2184,7 @@ sed 's/^/| /' conftest.$ac_ext >&5 ac_retval=1 fi - eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;} + eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno as_fn_set_status $ac_retval } # ac_fn_cxx_try_compile @@ -2344,7 +2221,7 @@ sed 's/^/| /' conftest.$ac_ext >&5 ac_retval=1 fi - eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;} + eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno as_fn_set_status $ac_retval } # ac_fn_cxx_try_cpp @@ -2390,7 +2267,7 @@ fi # interfere with the next link command; also delete a directory that is # left behind by Apple's compiler. We do this before executing the actions. rm -rf conftest.dSYM conftest_ipa8_conftest.oo - eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;} + eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno as_fn_set_status $ac_retval } # ac_fn_cxx_try_link @@ -2403,10 +2280,10 @@ fi ac_fn_c_check_header_mongrel () { as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack - if eval "test \"\${$3+set}\"" = set; then : + if eval \${$3+:} false; then : { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 $as_echo_n "checking for $2... " >&6; } -if eval "test \"\${$3+set}\"" = set; then : +if eval \${$3+:} false; then : $as_echo_n "(cached) " >&6 fi eval ac_res=\$$3 @@ -2473,7 +2350,7 @@ $as_echo "$as_me: WARNING: $2: proceeding with the compiler's result" >&2;} esac { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 $as_echo_n "checking for $2... " >&6; } -if eval "test \"\${$3+set}\"" = set; then : +if eval \${$3+:} false; then : $as_echo_n "(cached) " >&6 else eval "$3=\$ac_header_compiler" @@ -2482,7 +2359,7 @@ eval ac_res=\$$3 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 $as_echo "$ac_res" >&6; } fi - eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;} + eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno } # ac_fn_c_check_header_mongrel @@ -2495,7 +2372,7 @@ ac_fn_c_check_type () as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 $as_echo_n "checking for $2... " >&6; } -if eval "test \"\${$3+set}\"" = set; then : +if eval \${$3+:} false; then : $as_echo_n "(cached) " >&6 else eval "$3=no" @@ -2536,7 +2413,7 @@ fi eval ac_res=\$$3 { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 $as_echo "$ac_res" >&6; } - eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;} + eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno } # ac_fn_c_check_type @@ -2713,7 +2590,7 @@ rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ rm -f conftest.val fi - eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;} + eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno as_fn_set_status $ac_retval } # ac_fn_c_compute_int @@ -2721,8 +2598,8 @@ cat >config.log <<_ACEOF This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by GStreamer $as_me 0.11.1, which was -generated by GNU Autoconf 2.67. Invocation command line was +It was created by GStreamer $as_me 0.11.90, which was +generated by GNU Autoconf 2.68. Invocation command line was $ $0 $@ @@ -2980,7 +2857,7 @@ $as_echo "$as_me: loading site script $ac_site_file" >&6;} || { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} as_fn_error $? "failed to load site script $ac_site_file -See \`config.log' for more details" "$LINENO" 5 ; } +See \`config.log' for more details" "$LINENO" 5; } fi done @@ -3125,7 +3002,7 @@ ac_configure="$SHELL $ac_aux_dir/configure" # Please don't use this var. { $as_echo "$as_me:${as_lineno-$LINENO}: checking for a BSD-compatible install" >&5 $as_echo_n "checking for a BSD-compatible install... " >&6; } if test -z "$INSTALL"; then -if test "${ac_cv_path_install+set}" = set; then : +if ${ac_cv_path_install+:} false; then : $as_echo_n "(cached) " >&6 else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR @@ -3212,11 +3089,11 @@ am_lf=' ' case `pwd` in *[\\\"\#\$\&\'\`$am_lf]*) - as_fn_error $? "unsafe absolute working directory name" "$LINENO" 5 ;; + as_fn_error $? "unsafe absolute working directory name" "$LINENO" 5;; esac case $srcdir in *[\\\"\#\$\&\'\`$am_lf\ \ ]*) - as_fn_error $? "unsafe srcdir value: \`$srcdir'" "$LINENO" 5 ;; + as_fn_error $? "unsafe srcdir value: \`$srcdir'" "$LINENO" 5;; esac # Do `set' in a subshell so we don't clobber the current shell's @@ -3302,7 +3179,7 @@ if test "$cross_compiling" != no; then set dummy ${ac_tool_prefix}strip; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_prog_STRIP+set}" = set; then : +if ${ac_cv_prog_STRIP+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$STRIP"; then @@ -3342,7 +3219,7 @@ if test -z "$ac_cv_prog_STRIP"; then set dummy strip; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_prog_ac_ct_STRIP+set}" = set; then : +if ${ac_cv_prog_ac_ct_STRIP+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$ac_ct_STRIP"; then @@ -3395,7 +3272,7 @@ INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s" { $as_echo "$as_me:${as_lineno-$LINENO}: checking for a thread-safe mkdir -p" >&5 $as_echo_n "checking for a thread-safe mkdir -p... " >&6; } if test -z "$MKDIR_P"; then - if test "${ac_cv_path_mkdir+set}" = set; then : + if ${ac_cv_path_mkdir+:} false; then : $as_echo_n "(cached) " >&6 else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR @@ -3446,7 +3323,7 @@ do set dummy $ac_prog; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_prog_AWK+set}" = set; then : +if ${ac_cv_prog_AWK+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$AWK"; then @@ -3486,7 +3363,7 @@ done $as_echo_n "checking whether ${MAKE-make} sets \$(MAKE)... " >&6; } set x ${MAKE-make} ac_make=`$as_echo "$2" | sed 's/+/p/g; s/[^a-zA-Z0-9_]/_/g'` -if eval "test \"\${ac_cv_prog_make_${ac_make}_set+set}\"" = set; then : +if eval \${ac_cv_prog_make_${ac_make}_set+:} false; then : $as_echo_n "(cached) " >&6 else cat >conftest.make <<\_ACEOF @@ -3544,7 +3421,7 @@ fi # Define the identity of the package. PACKAGE='gstreamer' - VERSION='0.11.1' + VERSION='0.11.90' cat >>confdefs.h <<_ACEOF @@ -3574,21 +3451,21 @@ MAKEINFO=${MAKEINFO-"${am_missing_run}makeinfo"} # We need awk for the "check" target. The system "awk" is bad on # some platforms. -# Always define AMTAR for backward compatibility. +# Always define AMTAR for backward compatibility. Yes, it's still used +# in the wild :-( We should find a proper way to deprecate it ... +AMTAR='$${TAR-tar}' -AMTAR=${AMTAR-"${am_missing_run}tar"} +am__tar='$${TAR-tar} chof - "$$tardir"' am__untar='$${TAR-tar} xf -' -am__tar='${AMTAR} chof - "$$tardir"'; am__untar='${AMTAR} xf -' - - PACKAGE_VERSION_MAJOR=$(echo 0.11.1 | cut -d'.' -f1) - PACKAGE_VERSION_MINOR=$(echo 0.11.1 | cut -d'.' -f2) - PACKAGE_VERSION_MICRO=$(echo 0.11.1 | cut -d'.' -f3) + PACKAGE_VERSION_MAJOR=$(echo 0.11.90 | cut -d'.' -f1) + PACKAGE_VERSION_MINOR=$(echo 0.11.90 | cut -d'.' -f2) + PACKAGE_VERSION_MICRO=$(echo 0.11.90 | cut -d'.' -f3) @@ -3599,7 +3476,7 @@ am__tar='${AMTAR} chof - "$$tardir"'; am__untar='${AMTAR} xf -' { $as_echo "$as_me:${as_lineno-$LINENO}: checking nano version" >&5 $as_echo_n "checking nano version... " >&6; } - NANO=$(echo 0.11.1 | cut -d'.' -f4) + NANO=$(echo 0.11.90 | cut -d'.' -f4) if test x"$NANO" = x || test "x$NANO" = "x0" ; then { $as_echo "$as_me:${as_lineno-$LINENO}: result: 0 (release)" >&5 @@ -3657,7 +3534,7 @@ $SHELL "$ac_aux_dir/config.sub" sun4 >/dev/null 2>&1 || { $as_echo "$as_me:${as_lineno-$LINENO}: checking build system type" >&5 $as_echo_n "checking build system type... " >&6; } -if test "${ac_cv_build+set}" = set; then : +if ${ac_cv_build+:} false; then : $as_echo_n "(cached) " >&6 else ac_build_alias=$build_alias @@ -3673,7 +3550,7 @@ fi $as_echo "$ac_cv_build" >&6; } case $ac_cv_build in *-*-*) ;; -*) as_fn_error $? "invalid value of canonical build" "$LINENO" 5 ;; +*) as_fn_error $? "invalid value of canonical build" "$LINENO" 5;; esac build=$ac_cv_build ac_save_IFS=$IFS; IFS='-' @@ -3691,7 +3568,7 @@ case $build_os in *\ *) build_os=`echo "$build_os" | sed 's/ /-/g'`;; esac { $as_echo "$as_me:${as_lineno-$LINENO}: checking host system type" >&5 $as_echo_n "checking host system type... " >&6; } -if test "${ac_cv_host+set}" = set; then : +if ${ac_cv_host+:} false; then : $as_echo_n "(cached) " >&6 else if test "x$host_alias" = x; then @@ -3706,7 +3583,7 @@ fi $as_echo "$ac_cv_host" >&6; } case $ac_cv_host in *-*-*) ;; -*) as_fn_error $? "invalid value of canonical host" "$LINENO" 5 ;; +*) as_fn_error $? "invalid value of canonical host" "$LINENO" 5;; esac host=$ac_cv_host ac_save_IFS=$IFS; IFS='-' @@ -3733,23 +3610,58 @@ yes) AM_DEFAULT_VERBOSITY=0;; no) AM_DEFAULT_VERBOSITY=1;; *) AM_DEFAULT_VERBOSITY=0;; esac +am_make=${MAKE-make} +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $am_make supports nested variables" >&5 +$as_echo_n "checking whether $am_make supports nested variables... " >&6; } +if ${am_cv_make_support_nested_variables+:} false; then : + $as_echo_n "(cached) " >&6 +else + if $as_echo 'TRUE=$(BAR$(V)) +BAR0=false +BAR1=true +V=1 +am__doit: + @$(TRUE) +.PHONY: am__doit' | $am_make -f - >/dev/null 2>&1; then + am_cv_make_support_nested_variables=yes +else + am_cv_make_support_nested_variables=no +fi +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_make_support_nested_variables" >&5 +$as_echo "$am_cv_make_support_nested_variables" >&6; } +if test $am_cv_make_support_nested_variables = yes; then + AM_V='$(V)' + AM_DEFAULT_V='$(AM_DEFAULT_VERBOSITY)' +else + AM_V=$AM_DEFAULT_VERBOSITY + AM_DEFAULT_V=$AM_DEFAULT_VERBOSITY +fi AM_BACKSLASH='\' -GST_MAJORMINOR=$PACKAGE_VERSION_MAJOR.$PACKAGE_VERSION_MINOR -GST_MAJORMINOR=0.11 +GST_VERSION_MAJOR=1 +GST_VERSION_MINOR=0 +GST_VERSION_MICRO=0 +GST_VERSION_NANO=0 + + + + + +GST_API_VERSION=1.0 cat >>confdefs.h <<_ACEOF -#define GST_MAJORMINOR "$GST_MAJORMINOR" +#define GST_API_VERSION "$GST_API_VERSION" _ACEOF - GST_CURRENT=31 + GST_CURRENT=0 GST_REVISION=0 GST_AGE=0 - GST_LIBVERSION=31:0:0 + GST_LIBVERSION=0:0:0 @@ -3772,13 +3684,13 @@ _ACEOF enable_win32_dll=yes case $host in -*-*-cygwin* | *-*-mingw* | *-*-pw32* | *-cegcc*) +*-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-cegcc*) if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}as", so it can be a program name with args. set dummy ${ac_tool_prefix}as; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_prog_AS+set}" = set; then : +if ${ac_cv_prog_AS+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$AS"; then @@ -3818,7 +3730,7 @@ if test -z "$ac_cv_prog_AS"; then set dummy as; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_prog_ac_ct_AS+set}" = set; then : +if ${ac_cv_prog_ac_ct_AS+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$ac_ct_AS"; then @@ -3870,7 +3782,7 @@ fi set dummy ${ac_tool_prefix}dlltool; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_prog_DLLTOOL+set}" = set; then : +if ${ac_cv_prog_DLLTOOL+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$DLLTOOL"; then @@ -3910,7 +3822,7 @@ if test -z "$ac_cv_prog_DLLTOOL"; then set dummy dlltool; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_prog_ac_ct_DLLTOOL+set}" = set; then : +if ${ac_cv_prog_ac_ct_DLLTOOL+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$ac_ct_DLLTOOL"; then @@ -3962,7 +3874,7 @@ fi set dummy ${ac_tool_prefix}objdump; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_prog_OBJDUMP+set}" = set; then : +if ${ac_cv_prog_OBJDUMP+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$OBJDUMP"; then @@ -4002,7 +3914,7 @@ if test -z "$ac_cv_prog_OBJDUMP"; then set dummy objdump; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_prog_ac_ct_OBJDUMP+set}" = set; then : +if ${ac_cv_prog_ac_ct_OBJDUMP+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$ac_ct_OBJDUMP"; then @@ -4080,8 +3992,8 @@ esac -macro_version='2.2.6b' -macro_revision='1.3017' +macro_version='2.4.2' +macro_revision='1.3337' @@ -4097,6 +4009,75 @@ macro_revision='1.3017' ltmain="$ac_aux_dir/ltmain.sh" +# Backslashify metacharacters that are still active within +# double-quoted strings. +sed_quote_subst='s/\(["`$\\]\)/\\\1/g' + +# Same as above, but do not quote variable references. +double_quote_subst='s/\(["`\\]\)/\\\1/g' + +# Sed substitution to delay expansion of an escaped shell variable in a +# double_quote_subst'ed string. +delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g' + +# Sed substitution to delay expansion of an escaped single quote. +delay_single_quote_subst='s/'\''/'\'\\\\\\\'\''/g' + +# Sed substitution to avoid accidental globbing in evaled expressions +no_glob_subst='s/\*/\\\*/g' + +ECHO='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\' +ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO +ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to print strings" >&5 +$as_echo_n "checking how to print strings... " >&6; } +# Test print first, because it will be a builtin if present. +if test "X`( print -r -- -n ) 2>/dev/null`" = X-n && \ + test "X`print -r -- $ECHO 2>/dev/null`" = "X$ECHO"; then + ECHO='print -r --' +elif test "X`printf %s $ECHO 2>/dev/null`" = "X$ECHO"; then + ECHO='printf %s\n' +else + # Use this function as a fallback that always works. + func_fallback_echo () + { + eval 'cat <<_LTECHO_EOF +$1 +_LTECHO_EOF' + } + ECHO='func_fallback_echo' +fi + +# func_echo_all arg... +# Invoke $ECHO with all args, space-separated. +func_echo_all () +{ + $ECHO "" +} + +case "$ECHO" in + printf*) { $as_echo "$as_me:${as_lineno-$LINENO}: result: printf" >&5 +$as_echo "printf" >&6; } ;; + print*) { $as_echo "$as_me:${as_lineno-$LINENO}: result: print -r" >&5 +$as_echo "print -r" >&6; } ;; + *) { $as_echo "$as_me:${as_lineno-$LINENO}: result: cat" >&5 +$as_echo "cat" >&6; } ;; +esac + + + + + + + + + + + + + + DEPDIR="${am__leading_dot}deps" ac_config_commands="$ac_config_commands depfiles" @@ -4149,6 +4130,7 @@ fi if test "x$enable_dependency_tracking" != xno; then am_depcomp="$ac_aux_dir/depcomp" AMDEPBACKSLASH='\' + am__nodep='_no' fi if test "x$enable_dependency_tracking" != xno; then AMDEP_TRUE= @@ -4169,7 +4151,7 @@ if test -n "$ac_tool_prefix"; then set dummy ${ac_tool_prefix}gcc; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_prog_CC+set}" = set; then : +if ${ac_cv_prog_CC+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$CC"; then @@ -4209,7 +4191,7 @@ if test -z "$ac_cv_prog_CC"; then set dummy gcc; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_prog_ac_ct_CC+set}" = set; then : +if ${ac_cv_prog_ac_ct_CC+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$ac_ct_CC"; then @@ -4262,7 +4244,7 @@ if test -z "$CC"; then set dummy ${ac_tool_prefix}cc; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_prog_CC+set}" = set; then : +if ${ac_cv_prog_CC+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$CC"; then @@ -4302,7 +4284,7 @@ if test -z "$CC"; then set dummy cc; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_prog_CC+set}" = set; then : +if ${ac_cv_prog_CC+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$CC"; then @@ -4361,7 +4343,7 @@ if test -z "$CC"; then set dummy $ac_tool_prefix$ac_prog; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_prog_CC+set}" = set; then : +if ${ac_cv_prog_CC+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$CC"; then @@ -4405,7 +4387,7 @@ do set dummy $ac_prog; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_prog_ac_ct_CC+set}" = set; then : +if ${ac_cv_prog_ac_ct_CC+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$ac_ct_CC"; then @@ -4460,7 +4442,7 @@ fi test -z "$CC" && { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} as_fn_error $? "no acceptable C compiler found in \$PATH -See \`config.log' for more details" "$LINENO" 5 ; } +See \`config.log' for more details" "$LINENO" 5; } # Provide some information about the compiler. $as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler version" >&5 @@ -4575,7 +4557,7 @@ sed 's/^/| /' conftest.$ac_ext >&5 { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} as_fn_error 77 "C compiler cannot create executables -See \`config.log' for more details" "$LINENO" 5 ; } +See \`config.log' for more details" "$LINENO" 5; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } @@ -4618,7 +4600,7 @@ else { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} as_fn_error $? "cannot compute suffix of executables: cannot compile and link -See \`config.log' for more details" "$LINENO" 5 ; } +See \`config.log' for more details" "$LINENO" 5; } fi rm -f conftest conftest$ac_cv_exeext { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_exeext" >&5 @@ -4677,7 +4659,7 @@ $as_echo "$ac_try_echo"; } >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} as_fn_error $? "cannot run C compiled programs. If you meant to cross compile, use \`--host'. -See \`config.log' for more details" "$LINENO" 5 ; } +See \`config.log' for more details" "$LINENO" 5; } fi fi fi @@ -4688,7 +4670,7 @@ rm -f conftest.$ac_ext conftest$ac_cv_exeext conftest.out ac_clean_files=$ac_clean_files_save { $as_echo "$as_me:${as_lineno-$LINENO}: checking for suffix of object files" >&5 $as_echo_n "checking for suffix of object files... " >&6; } -if test "${ac_cv_objext+set}" = set; then : +if ${ac_cv_objext+:} false; then : $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext @@ -4729,7 +4711,7 @@ sed 's/^/| /' conftest.$ac_ext >&5 { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} as_fn_error $? "cannot compute suffix of object files: cannot compile -See \`config.log' for more details" "$LINENO" 5 ; } +See \`config.log' for more details" "$LINENO" 5; } fi rm -f conftest.$ac_cv_objext conftest.$ac_ext fi @@ -4739,7 +4721,7 @@ OBJEXT=$ac_cv_objext ac_objext=$OBJEXT { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are using the GNU C compiler" >&5 $as_echo_n "checking whether we are using the GNU C compiler... " >&6; } -if test "${ac_cv_c_compiler_gnu+set}" = set; then : +if ${ac_cv_c_compiler_gnu+:} false; then : $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext @@ -4776,7 +4758,7 @@ ac_test_CFLAGS=${CFLAGS+set} ac_save_CFLAGS=$CFLAGS { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC accepts -g" >&5 $as_echo_n "checking whether $CC accepts -g... " >&6; } -if test "${ac_cv_prog_cc_g+set}" = set; then : +if ${ac_cv_prog_cc_g+:} false; then : $as_echo_n "(cached) " >&6 else ac_save_c_werror_flag=$ac_c_werror_flag @@ -4854,7 +4836,7 @@ else fi { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $CC option to accept ISO C89" >&5 $as_echo_n "checking for $CC option to accept ISO C89... " >&6; } -if test "${ac_cv_prog_cc_c89+set}" = set; then : +if ${ac_cv_prog_cc_c89+:} false; then : $as_echo_n "(cached) " >&6 else ac_cv_prog_cc_c89=no @@ -4953,7 +4935,7 @@ depcc="$CC" am_compiler_list= { $as_echo "$as_me:${as_lineno-$LINENO}: checking dependency style of $depcc" >&5 $as_echo_n "checking dependency style of $depcc... " >&6; } -if test "${am_cv_CC_dependencies_compiler_type+set}" = set; then : +if ${am_cv_CC_dependencies_compiler_type+:} false; then : $as_echo_n "(cached) " >&6 else if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then @@ -4962,6 +4944,7 @@ else # instance it was reported that on HP-UX the gcc test will end up # making a dummy file named `D' -- because `-MD' means `put the output # in D'. + rm -rf conftest.dir mkdir conftest.dir # Copy depcomp to subdir because otherwise we won't find it if we're # using a relative directory. @@ -5021,7 +5004,7 @@ else break fi ;; - msvisualcpp | msvcmsys) + msvc7 | msvc7msys | msvisualcpp | msvcmsys) # This compiler won't grok `-c -o', but also, the minuso test has # not run yet. These depmodes are late enough in the game, and # so weak that their functioning should not be impacted. @@ -5078,7 +5061,7 @@ fi { $as_echo "$as_me:${as_lineno-$LINENO}: checking for a sed that does not truncate output" >&5 $as_echo_n "checking for a sed that does not truncate output... " >&6; } -if test "${ac_cv_path_SED+set}" = set; then : +if ${ac_cv_path_SED+:} false; then : $as_echo_n "(cached) " >&6 else ac_script=s/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb/ @@ -5160,7 +5143,7 @@ Xsed="$SED -e 1s/^X//" { $as_echo "$as_me:${as_lineno-$LINENO}: checking for grep that handles long lines and -e" >&5 $as_echo_n "checking for grep that handles long lines and -e... " >&6; } -if test "${ac_cv_path_GREP+set}" = set; then : +if ${ac_cv_path_GREP+:} false; then : $as_echo_n "(cached) " >&6 else if test -z "$GREP"; then @@ -5223,7 +5206,7 @@ $as_echo "$ac_cv_path_GREP" >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: checking for egrep" >&5 $as_echo_n "checking for egrep... " >&6; } -if test "${ac_cv_path_EGREP+set}" = set; then : +if ${ac_cv_path_EGREP+:} false; then : $as_echo_n "(cached) " >&6 else if echo a | $GREP -E '(a|b)' >/dev/null 2>&1 @@ -5290,7 +5273,7 @@ $as_echo "$ac_cv_path_EGREP" >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: checking for fgrep" >&5 $as_echo_n "checking for fgrep... " >&6; } -if test "${ac_cv_path_FGREP+set}" = set; then : +if ${ac_cv_path_FGREP+:} false; then : $as_echo_n "(cached) " >&6 else if echo 'ab*c' | $GREP -F 'ab*c' >/dev/null 2>&1 @@ -5421,7 +5404,7 @@ else { $as_echo "$as_me:${as_lineno-$LINENO}: checking for non-GNU ld" >&5 $as_echo_n "checking for non-GNU ld... " >&6; } fi -if test "${lt_cv_path_LD+set}" = set; then : +if ${lt_cv_path_LD+:} false; then : $as_echo_n "(cached) " >&6 else if test -z "$LD"; then @@ -5461,7 +5444,7 @@ fi test -z "$LD" && as_fn_error $? "no acceptable ld found in \$PATH" "$LINENO" 5 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if the linker ($LD) is GNU ld" >&5 $as_echo_n "checking if the linker ($LD) is GNU ld... " >&6; } -if test "${lt_cv_prog_gnu_ld+set}" = set; then : +if ${lt_cv_prog_gnu_ld+:} false; then : $as_echo_n "(cached) " >&6 else # I'd rather use --version here, but apparently some GNU lds only accept -v. @@ -5488,7 +5471,7 @@ with_gnu_ld=$lt_cv_prog_gnu_ld { $as_echo "$as_me:${as_lineno-$LINENO}: checking for BSD- or MS-compatible name lister (nm)" >&5 $as_echo_n "checking for BSD- or MS-compatible name lister (nm)... " >&6; } -if test "${lt_cv_path_NM+set}" = set; then : +if ${lt_cv_path_NM+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$NM"; then @@ -5541,14 +5524,17 @@ if test "$lt_cv_path_NM" != "no"; then NM="$lt_cv_path_NM" else # Didn't find any BSD compatible name lister, look for dumpbin. - if test -n "$ac_tool_prefix"; then - for ac_prog in "dumpbin -symbols" "link -dump -symbols" + if test -n "$DUMPBIN"; then : + # Let the user override the test. + else + if test -n "$ac_tool_prefix"; then + for ac_prog in dumpbin "link -dump" do # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args. set dummy $ac_tool_prefix$ac_prog; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_prog_DUMPBIN+set}" = set; then : +if ${ac_cv_prog_DUMPBIN+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$DUMPBIN"; then @@ -5586,13 +5572,13 @@ fi fi if test -z "$DUMPBIN"; then ac_ct_DUMPBIN=$DUMPBIN - for ac_prog in "dumpbin -symbols" "link -dump -symbols" + for ac_prog in dumpbin "link -dump" do # Extract the first word of "$ac_prog", so it can be a program name with args. set dummy $ac_prog; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_prog_ac_ct_DUMPBIN+set}" = set; then : +if ${ac_cv_prog_ac_ct_DUMPBIN+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$ac_ct_DUMPBIN"; then @@ -5641,6 +5627,15 @@ esac fi fi + case `$DUMPBIN -symbols /dev/null 2>&1 | sed '1q'` in + *COFF*) + DUMPBIN="$DUMPBIN -symbols" + ;; + *) + DUMPBIN=: + ;; + esac + fi if test "$DUMPBIN" != ":"; then NM="$DUMPBIN" @@ -5655,18 +5650,18 @@ test -z "$NM" && NM=nm { $as_echo "$as_me:${as_lineno-$LINENO}: checking the name lister ($NM) interface" >&5 $as_echo_n "checking the name lister ($NM) interface... " >&6; } -if test "${lt_cv_nm_interface+set}" = set; then : +if ${lt_cv_nm_interface+:} false; then : $as_echo_n "(cached) " >&6 else lt_cv_nm_interface="BSD nm" echo "int some_variable = 0;" > conftest.$ac_ext - (eval echo "\"\$as_me:5663: $ac_compile\"" >&5) + (eval echo "\"\$as_me:$LINENO: $ac_compile\"" >&5) (eval "$ac_compile" 2>conftest.err) cat conftest.err >&5 - (eval echo "\"\$as_me:5666: $NM \\\"conftest.$ac_objext\\\"\"" >&5) + (eval echo "\"\$as_me:$LINENO: $NM \\\"conftest.$ac_objext\\\"\"" >&5) (eval "$NM \"conftest.$ac_objext\"" 2>conftest.err > conftest.out) cat conftest.err >&5 - (eval echo "\"\$as_me:5669: output\"" >&5) + (eval echo "\"\$as_me:$LINENO: output\"" >&5) cat conftest.out >&5 if $GREP 'External.*some_variable' conftest.out > /dev/null; then lt_cv_nm_interface="MS dumpbin" @@ -5690,7 +5685,7 @@ fi # find the maximum length of command line arguments { $as_echo "$as_me:${as_lineno-$LINENO}: checking the maximum length of command line arguments" >&5 $as_echo_n "checking the maximum length of command line arguments... " >&6; } -if test "${lt_cv_sys_max_cmd_len+set}" = set; then : +if ${lt_cv_sys_max_cmd_len+:} false; then : $as_echo_n "(cached) " >&6 else i=0 @@ -5723,6 +5718,11 @@ else lt_cv_sys_max_cmd_len=8192; ;; + mint*) + # On MiNT this can take a long time and run out of memory. + lt_cv_sys_max_cmd_len=8192; + ;; + amigaos*) # On AmigaOS with pdksh, this test takes hours, literally. # So we just punt and use a minimum line length of 8192. @@ -5748,6 +5748,11 @@ else lt_cv_sys_max_cmd_len=196608 ;; + os2*) + # The test takes a long time on OS/2. + lt_cv_sys_max_cmd_len=8192 + ;; + osf*) # Dr. Hans Ekkehard Plesser reports seeing a kernel panic running configure # due to this test when exec_disable_arg_limit is 1 on Tru64. It is not @@ -5787,8 +5792,8 @@ else # If test is not a shell built-in, we'll probably end up computing a # maximum length that is only half of the actual maximum length, but # we can't tell. - while { test "X"`$SHELL $0 --fallback-echo "X$teststring$teststring" 2>/dev/null` \ - = "XX$teststring$teststring"; } >/dev/null 2>&1 && + while { test "X"`env echo "$teststring$teststring" 2>/dev/null` \ + = "X$teststring$teststring"; } >/dev/null 2>&1 && test $i != 17 # 1/2 MB should be enough do i=`expr $i + 1` @@ -5830,8 +5835,8 @@ $as_echo_n "checking whether the shell understands some XSI constructs... " >&6; # Try some XSI features xsi_shell=no ( _lt_dummy="a/b/c" - test "${_lt_dummy##*/},${_lt_dummy%/*},"${_lt_dummy%"$_lt_dummy"}, \ - = c,a/b,, \ + test "${_lt_dummy##*/},${_lt_dummy%/*},${_lt_dummy#??}"${_lt_dummy%"$_lt_dummy"}, \ + = c,a/b,b/c, \ && eval 'test $(( 1 + 1 )) -eq 2 \ && test "${#_lt_dummy}" -eq 5' ) >/dev/null 2>&1 \ && xsi_shell=yes @@ -5880,9 +5885,83 @@ esac +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to convert $build file names to $host format" >&5 +$as_echo_n "checking how to convert $build file names to $host format... " >&6; } +if ${lt_cv_to_host_file_cmd+:} false; then : + $as_echo_n "(cached) " >&6 +else + case $host in + *-*-mingw* ) + case $build in + *-*-mingw* ) # actually msys + lt_cv_to_host_file_cmd=func_convert_file_msys_to_w32 + ;; + *-*-cygwin* ) + lt_cv_to_host_file_cmd=func_convert_file_cygwin_to_w32 + ;; + * ) # otherwise, assume *nix + lt_cv_to_host_file_cmd=func_convert_file_nix_to_w32 + ;; + esac + ;; + *-*-cygwin* ) + case $build in + *-*-mingw* ) # actually msys + lt_cv_to_host_file_cmd=func_convert_file_msys_to_cygwin + ;; + *-*-cygwin* ) + lt_cv_to_host_file_cmd=func_convert_file_noop + ;; + * ) # otherwise, assume *nix + lt_cv_to_host_file_cmd=func_convert_file_nix_to_cygwin + ;; + esac + ;; + * ) # unhandled hosts (and "normal" native builds) + lt_cv_to_host_file_cmd=func_convert_file_noop + ;; +esac + +fi + +to_host_file_cmd=$lt_cv_to_host_file_cmd +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_to_host_file_cmd" >&5 +$as_echo "$lt_cv_to_host_file_cmd" >&6; } + + + + + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to convert $build file names to toolchain format" >&5 +$as_echo_n "checking how to convert $build file names to toolchain format... " >&6; } +if ${lt_cv_to_tool_file_cmd+:} false; then : + $as_echo_n "(cached) " >&6 +else + #assume ordinary cross tools, or native build. +lt_cv_to_tool_file_cmd=func_convert_file_noop +case $host in + *-*-mingw* ) + case $build in + *-*-mingw* ) # actually msys + lt_cv_to_tool_file_cmd=func_convert_file_msys_to_w32 + ;; + esac + ;; +esac + +fi + +to_tool_file_cmd=$lt_cv_to_tool_file_cmd +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_to_tool_file_cmd" >&5 +$as_echo "$lt_cv_to_tool_file_cmd" >&6; } + + + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $LD option to reload object files" >&5 $as_echo_n "checking for $LD option to reload object files... " >&6; } -if test "${lt_cv_ld_reload_flag+set}" = set; then : +if ${lt_cv_ld_reload_flag+:} false; then : $as_echo_n "(cached) " >&6 else lt_cv_ld_reload_flag='-r' @@ -5896,6 +5975,11 @@ case $reload_flag in esac reload_cmds='$LD$reload_flag -o $output$reload_objs' case $host_os in + cygwin* | mingw* | pw32* | cegcc*) + if test "$GCC" != yes; then + reload_cmds=false + fi + ;; darwin*) if test "$GCC" = yes; then reload_cmds='$LTCC $LTCFLAGS -nostdlib ${wl}-r -o $output$reload_objs' @@ -5918,7 +6002,7 @@ if test -n "$ac_tool_prefix"; then set dummy ${ac_tool_prefix}objdump; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_prog_OBJDUMP+set}" = set; then : +if ${ac_cv_prog_OBJDUMP+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$OBJDUMP"; then @@ -5958,7 +6042,7 @@ if test -z "$ac_cv_prog_OBJDUMP"; then set dummy objdump; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_prog_ac_ct_OBJDUMP+set}" = set; then : +if ${ac_cv_prog_ac_ct_OBJDUMP+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$ac_ct_OBJDUMP"; then @@ -6014,7 +6098,7 @@ test -z "$OBJDUMP" && OBJDUMP=objdump { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to recognize dependent libraries" >&5 $as_echo_n "checking how to recognize dependent libraries... " >&6; } -if test "${lt_cv_deplibs_check_method+set}" = set; then : +if ${lt_cv_deplibs_check_method+:} false; then : $as_echo_n "(cached) " >&6 else lt_cv_file_magic_cmd='$MAGIC_CMD' @@ -6056,16 +6140,18 @@ mingw* | pw32*) # Base MSYS/MinGW do not provide the 'file' command needed by # func_win32_libid shell function, so use a weaker test based on 'objdump', # unless we find 'file', for example because we are cross-compiling. - if ( file / ) >/dev/null 2>&1; then + # func_win32_libid assumes BSD nm, so disallow it if using MS dumpbin. + if ( test "$lt_cv_nm_interface" = "BSD nm" && file / ) >/dev/null 2>&1; then lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL' lt_cv_file_magic_cmd='func_win32_libid' else - lt_cv_deplibs_check_method='file_magic file format pei*-i386(.*architecture: i386)?' + # Keep this pattern in sync with the one in func_win32_libid. + lt_cv_deplibs_check_method='file_magic file format (pei*-i386(.*architecture: i386)?|pe-arm-wince|pe-x86-64)' lt_cv_file_magic_cmd='$OBJDUMP -f' fi ;; -cegcc) +cegcc*) # use the weaker test based on 'objdump'. See mingw*. lt_cv_deplibs_check_method='file_magic file format pe-arm-.*little(.*architecture: arm)?' lt_cv_file_magic_cmd='$OBJDUMP -f' @@ -6095,6 +6181,10 @@ gnu*) lt_cv_deplibs_check_method=pass_all ;; +haiku*) + lt_cv_deplibs_check_method=pass_all + ;; + hpux10.20* | hpux11*) lt_cv_file_magic_cmd=/usr/bin/file case $host_cpu in @@ -6103,11 +6193,11 @@ hpux10.20* | hpux11*) lt_cv_file_magic_test_file=/usr/lib/hpux32/libc.so ;; hppa*64*) - lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|ELF-[0-9][0-9]) shared object file - PA-RISC [0-9].[0-9]' + lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|ELF[ -][0-9][0-9])(-bit)?( [LM]SB)? shared object( file)?[, -]* PA-RISC [0-9]\.[0-9]' lt_cv_file_magic_test_file=/usr/lib/pa20_64/libc.sl ;; *) - lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|PA-RISC[0-9].[0-9]) shared library' + lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|PA-RISC[0-9]\.[0-9]) shared library' lt_cv_file_magic_test_file=/usr/lib/libc.sl ;; esac @@ -6128,7 +6218,7 @@ irix5* | irix6* | nonstopux*) lt_cv_deplibs_check_method=pass_all ;; -# This must be Linux ELF. +# This must be glibc/ELF. linux* | k*bsd*-gnu | kopensolaris*-gnu) lt_cv_deplibs_check_method=pass_all ;; @@ -6210,6 +6300,21 @@ esac fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_deplibs_check_method" >&5 $as_echo "$lt_cv_deplibs_check_method" >&6; } + +file_magic_glob= +want_nocaseglob=no +if test "$build" = "$host"; then + case $host_os in + mingw* | pw32*) + if ( shopt | grep nocaseglob ) >/dev/null 2>&1; then + want_nocaseglob=yes + else + file_magic_glob=`echo aAbBcCdDeEfFgGhHiIjJkKlLmMnNoOpPqQrRsStTuUvVwWxXyYzZ | $SED -e "s/\(..\)/s\/[\1]\/[\1]\/g;/g"` + fi + ;; + esac +fi + file_magic_cmd=$lt_cv_file_magic_cmd deplibs_check_method=$lt_cv_deplibs_check_method test -z "$deplibs_check_method" && deplibs_check_method=unknown @@ -6223,18 +6328,28 @@ test -z "$deplibs_check_method" && deplibs_check_method=unknown + + + + + + + + + + if test -n "$ac_tool_prefix"; then - # Extract the first word of "${ac_tool_prefix}ar", so it can be a program name with args. -set dummy ${ac_tool_prefix}ar; ac_word=$2 + # Extract the first word of "${ac_tool_prefix}dlltool", so it can be a program name with args. +set dummy ${ac_tool_prefix}dlltool; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_prog_AR+set}" = set; then : +if ${ac_cv_prog_DLLTOOL+:} false; then : $as_echo_n "(cached) " >&6 else - if test -n "$AR"; then - ac_cv_prog_AR="$AR" # Let the user override the test. + if test -n "$DLLTOOL"; then + ac_cv_prog_DLLTOOL="$DLLTOOL" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH @@ -6243,7 +6358,7 @@ do test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then - ac_cv_prog_AR="${ac_tool_prefix}ar" + ac_cv_prog_DLLTOOL="${ac_tool_prefix}dlltool" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi @@ -6253,10 +6368,10 @@ IFS=$as_save_IFS fi fi -AR=$ac_cv_prog_AR -if test -n "$AR"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $AR" >&5 -$as_echo "$AR" >&6; } +DLLTOOL=$ac_cv_prog_DLLTOOL +if test -n "$DLLTOOL"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $DLLTOOL" >&5 +$as_echo "$DLLTOOL" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } @@ -6264,17 +6379,17 @@ fi fi -if test -z "$ac_cv_prog_AR"; then - ac_ct_AR=$AR - # Extract the first word of "ar", so it can be a program name with args. -set dummy ar; ac_word=$2 +if test -z "$ac_cv_prog_DLLTOOL"; then + ac_ct_DLLTOOL=$DLLTOOL + # Extract the first word of "dlltool", so it can be a program name with args. +set dummy dlltool; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_prog_ac_ct_AR+set}" = set; then : +if ${ac_cv_prog_ac_ct_DLLTOOL+:} false; then : $as_echo_n "(cached) " >&6 else - if test -n "$ac_ct_AR"; then - ac_cv_prog_ac_ct_AR="$ac_ct_AR" # Let the user override the test. + if test -n "$ac_ct_DLLTOOL"; then + ac_cv_prog_ac_ct_DLLTOOL="$ac_ct_DLLTOOL" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH @@ -6283,7 +6398,7 @@ do test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then - ac_cv_prog_ac_ct_AR="ar" + ac_cv_prog_ac_ct_DLLTOOL="dlltool" $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi @@ -6293,17 +6408,17 @@ IFS=$as_save_IFS fi fi -ac_ct_AR=$ac_cv_prog_ac_ct_AR -if test -n "$ac_ct_AR"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_AR" >&5 -$as_echo "$ac_ct_AR" >&6; } +ac_ct_DLLTOOL=$ac_cv_prog_ac_ct_DLLTOOL +if test -n "$ac_ct_DLLTOOL"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_DLLTOOL" >&5 +$as_echo "$ac_ct_DLLTOOL" >&6; } else { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi - if test "x$ac_ct_AR" = x; then - AR="false" + if test "x$ac_ct_DLLTOOL" = x; then + DLLTOOL="false" else case $cross_compiling:$ac_tool_warned in yes:) @@ -6311,17 +6426,51 @@ yes:) $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac - AR=$ac_ct_AR + DLLTOOL=$ac_ct_DLLTOOL fi else - AR="$ac_cv_prog_AR" + DLLTOOL="$ac_cv_prog_DLLTOOL" fi -test -z "$AR" && AR=ar -test -z "$AR_FLAGS" && AR_FLAGS=cru +test -z "$DLLTOOL" && DLLTOOL=dlltool + + + + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to associate runtime and link libraries" >&5 +$as_echo_n "checking how to associate runtime and link libraries... " >&6; } +if ${lt_cv_sharedlib_from_linklib_cmd+:} false; then : + $as_echo_n "(cached) " >&6 +else + lt_cv_sharedlib_from_linklib_cmd='unknown' + +case $host_os in +cygwin* | mingw* | pw32* | cegcc*) + # two different shell functions defined in ltmain.sh + # decide which to use based on capabilities of $DLLTOOL + case `$DLLTOOL --help 2>&1` in + *--identify-strict*) + lt_cv_sharedlib_from_linklib_cmd=func_cygming_dll_for_implib + ;; + *) + lt_cv_sharedlib_from_linklib_cmd=func_cygming_dll_for_implib_fallback + ;; + esac + ;; +*) + # fallback: assume linklib IS sharedlib + lt_cv_sharedlib_from_linklib_cmd="$ECHO" + ;; +esac + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_sharedlib_from_linklib_cmd" >&5 +$as_echo "$lt_cv_sharedlib_from_linklib_cmd" >&6; } +sharedlib_from_linklib_cmd=$lt_cv_sharedlib_from_linklib_cmd +test -z "$sharedlib_from_linklib_cmd" && sharedlib_from_linklib_cmd=$ECHO @@ -6331,15 +6480,186 @@ test -z "$AR_FLAGS" && AR_FLAGS=cru if test -n "$ac_tool_prefix"; then - # Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args. -set dummy ${ac_tool_prefix}strip; ac_word=$2 + for ac_prog in ar + do + # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args. +set dummy $ac_tool_prefix$ac_prog; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_prog_STRIP+set}" = set; then : +if ${ac_cv_prog_AR+:} false; then : $as_echo_n "(cached) " >&6 else - if test -n "$STRIP"; then - ac_cv_prog_STRIP="$STRIP" # Let the user override the test. + if test -n "$AR"; then + ac_cv_prog_AR="$AR" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then + ac_cv_prog_AR="$ac_tool_prefix$ac_prog" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +AR=$ac_cv_prog_AR +if test -n "$AR"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $AR" >&5 +$as_echo "$AR" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + + test -n "$AR" && break + done +fi +if test -z "$AR"; then + ac_ct_AR=$AR + for ac_prog in ar +do + # Extract the first word of "$ac_prog", so it can be a program name with args. +set dummy $ac_prog; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_ac_ct_AR+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$ac_ct_AR"; then + ac_cv_prog_ac_ct_AR="$ac_ct_AR" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then + ac_cv_prog_ac_ct_AR="$ac_prog" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +ac_ct_AR=$ac_cv_prog_ac_ct_AR +if test -n "$ac_ct_AR"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_AR" >&5 +$as_echo "$ac_ct_AR" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + + test -n "$ac_ct_AR" && break +done + + if test "x$ac_ct_AR" = x; then + AR="false" + else + case $cross_compiling:$ac_tool_warned in +yes:) +{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 +$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} +ac_tool_warned=yes ;; +esac + AR=$ac_ct_AR + fi +fi + +: ${AR=ar} +: ${AR_FLAGS=cru} + + + + + + + + + + + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for archiver @FILE support" >&5 +$as_echo_n "checking for archiver @FILE support... " >&6; } +if ${lt_cv_ar_at_file+:} false; then : + $as_echo_n "(cached) " >&6 +else + lt_cv_ar_at_file=no + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + echo conftest.$ac_objext > conftest.lst + lt_ar_try='$AR $AR_FLAGS libconftest.a @conftest.lst >&5' + { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$lt_ar_try\""; } >&5 + (eval $lt_ar_try) 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } + if test "$ac_status" -eq 0; then + # Ensure the archiver fails upon bogus file names. + rm -f conftest.$ac_objext libconftest.a + { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$lt_ar_try\""; } >&5 + (eval $lt_ar_try) 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } + if test "$ac_status" -ne 0; then + lt_cv_ar_at_file=@ + fi + fi + rm -f conftest.* libconftest.a + +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ar_at_file" >&5 +$as_echo "$lt_cv_ar_at_file" >&6; } + +if test "x$lt_cv_ar_at_file" = xno; then + archiver_list_spec= +else + archiver_list_spec=$lt_cv_ar_at_file +fi + + + + + + + +if test -n "$ac_tool_prefix"; then + # Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args. +set dummy ${ac_tool_prefix}strip; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_STRIP+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$STRIP"; then + ac_cv_prog_STRIP="$STRIP" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH @@ -6375,7 +6695,7 @@ if test -z "$ac_cv_prog_STRIP"; then set dummy strip; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_prog_ac_ct_STRIP+set}" = set; then : +if ${ac_cv_prog_ac_ct_STRIP+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$ac_ct_STRIP"; then @@ -6434,7 +6754,7 @@ if test -n "$ac_tool_prefix"; then set dummy ${ac_tool_prefix}ranlib; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_prog_RANLIB+set}" = set; then : +if ${ac_cv_prog_RANLIB+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$RANLIB"; then @@ -6474,7 +6794,7 @@ if test -z "$ac_cv_prog_RANLIB"; then set dummy ranlib; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_prog_ac_ct_RANLIB+set}" = set; then : +if ${ac_cv_prog_ac_ct_RANLIB+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$ac_ct_RANLIB"; then @@ -6536,15 +6856,27 @@ old_postuninstall_cmds= if test -n "$RANLIB"; then case $host_os in openbsd*) - old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB -t \$oldlib" + old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB -t \$tool_oldlib" ;; *) - old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB \$oldlib" + old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB \$tool_oldlib" ;; esac - old_archive_cmds="$old_archive_cmds~\$RANLIB \$oldlib" + old_archive_cmds="$old_archive_cmds~\$RANLIB \$tool_oldlib" fi +case $host_os in + darwin*) + lock_old_archive_extraction=yes ;; + *) + lock_old_archive_extraction=no ;; +esac + + + + + + @@ -6591,7 +6923,7 @@ compiler=$CC # Check for command to grab the raw symbol name followed by C symbol from nm. { $as_echo "$as_me:${as_lineno-$LINENO}: checking command to parse $NM output from $compiler object" >&5 $as_echo_n "checking command to parse $NM output from $compiler object... " >&6; } -if test "${lt_cv_sys_global_symbol_pipe+set}" = set; then : +if ${lt_cv_sys_global_symbol_pipe+:} false; then : $as_echo_n "(cached) " >&6 else @@ -6652,8 +6984,8 @@ esac lt_cv_sys_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern int \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'" # Transform an extracted symbol line into symbol name and symbol address -lt_cv_sys_global_symbol_to_c_name_address="sed -n -e 's/^: \([^ ]*\) $/ {\\\"\1\\\", (void *) 0},/p' -e 's/^$symcode* \([^ ]*\) \([^ ]*\)$/ {\"\2\", (void *) \&\2},/p'" -lt_cv_sys_global_symbol_to_c_name_address_lib_prefix="sed -n -e 's/^: \([^ ]*\) $/ {\\\"\1\\\", (void *) 0},/p' -e 's/^$symcode* \([^ ]*\) \(lib[^ ]*\)$/ {\"\2\", (void *) \&\2},/p' -e 's/^$symcode* \([^ ]*\) \([^ ]*\)$/ {\"lib\2\", (void *) \&\2},/p'" +lt_cv_sys_global_symbol_to_c_name_address="sed -n -e 's/^: \([^ ]*\)[ ]*$/ {\\\"\1\\\", (void *) 0},/p' -e 's/^$symcode* \([^ ]*\) \([^ ]*\)$/ {\"\2\", (void *) \&\2},/p'" +lt_cv_sys_global_symbol_to_c_name_address_lib_prefix="sed -n -e 's/^: \([^ ]*\)[ ]*$/ {\\\"\1\\\", (void *) 0},/p' -e 's/^$symcode* \([^ ]*\) \(lib[^ ]*\)$/ {\"\2\", (void *) \&\2},/p' -e 's/^$symcode* \([^ ]*\) \([^ ]*\)$/ {\"lib\2\", (void *) \&\2},/p'" # Handle CRLF in mingw tool chain opt_cr= @@ -6677,6 +7009,7 @@ for ac_symprfx in "" "_"; do # which start with @ or ?. lt_cv_sys_global_symbol_pipe="$AWK '"\ " {last_section=section; section=\$ 3};"\ +" /^COFF SYMBOL TABLE/{for(i in hide) delete hide[i]};"\ " /Section length .*#relocs.*(pick any)/{hide[last_section]=1};"\ " \$ 0!~/External *\|/{next};"\ " / 0+ UNDEF /{next}; / UNDEF \([^|]\)*()/{next};"\ @@ -6689,6 +7022,7 @@ for ac_symprfx in "" "_"; do else lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[ ]\($symcode$symcode*\)[ ][ ]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'" fi + lt_cv_sys_global_symbol_pipe="$lt_cv_sys_global_symbol_pipe | sed '/ __gnu_lto/d'" # Check to see that the pipe works correctly. pipe_works=no @@ -6714,8 +7048,8 @@ _LT_EOF test $ac_status = 0; }; then # Now try to grab the symbols. nlist=conftest.nm - if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$NM conftest.$ac_objext \| $lt_cv_sys_global_symbol_pipe \> $nlist\""; } >&5 - (eval $NM conftest.$ac_objext \| $lt_cv_sys_global_symbol_pipe \> $nlist) 2>&5 + if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$NM conftest.$ac_objext \| "$lt_cv_sys_global_symbol_pipe" \> $nlist\""; } >&5 + (eval $NM conftest.$ac_objext \| "$lt_cv_sys_global_symbol_pipe" \> $nlist) 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } && test -s "$nlist"; then @@ -6730,6 +7064,18 @@ _LT_EOF if $GREP ' nm_test_var$' "$nlist" >/dev/null; then if $GREP ' nm_test_func$' "$nlist" >/dev/null; then cat <<_LT_EOF > conftest.$ac_ext +/* Keep this code in sync between libtool.m4, ltmain, lt_system.h, and tests. */ +#if defined(_WIN32) || defined(__CYGWIN__) || defined(_WIN32_WCE) +/* DATA imports from DLLs on WIN32 con't be const, because runtime + relocations are performed -- see ld's documentation on pseudo-relocs. */ +# define LT_DLSYM_CONST +#elif defined(__osf__) +/* This system does not cope well with relocations in const data. */ +# define LT_DLSYM_CONST +#else +# define LT_DLSYM_CONST const +#endif + #ifdef __cplusplus extern "C" { #endif @@ -6741,7 +7087,7 @@ _LT_EOF cat <<_LT_EOF >> conftest.$ac_ext /* The mapping between symbol names and symbols. */ -const struct { +LT_DLSYM_CONST struct { const char *name; void *address; } @@ -6767,8 +7113,8 @@ static const void *lt_preloaded_setup() { _LT_EOF # Now try linking the two files. mv conftest.$ac_objext conftstm.$ac_objext - lt_save_LIBS="$LIBS" - lt_save_CFLAGS="$CFLAGS" + lt_globsym_save_LIBS=$LIBS + lt_globsym_save_CFLAGS=$CFLAGS LIBS="conftstm.$ac_objext" CFLAGS="$CFLAGS$lt_prog_compiler_no_builtin_flag" if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5 @@ -6778,8 +7124,8 @@ _LT_EOF test $ac_status = 0; } && test -s conftest${ac_exeext}; then pipe_works=yes fi - LIBS="$lt_save_LIBS" - CFLAGS="$lt_save_CFLAGS" + LIBS=$lt_globsym_save_LIBS + CFLAGS=$lt_globsym_save_CFLAGS else echo "cannot find nm_test_func in $nlist" >&5 fi @@ -6816,6 +7162,20 @@ else $as_echo "ok" >&6; } fi +# Response file support. +if test "$lt_cv_nm_interface" = "MS dumpbin"; then + nm_file_list_spec='@' +elif $NM --help 2>/dev/null | grep '[@]FILE' >/dev/null; then + nm_file_list_spec='@' +fi + + + + + + + + @@ -6833,6 +7193,40 @@ fi + + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for sysroot" >&5 +$as_echo_n "checking for sysroot... " >&6; } + +# Check whether --with-sysroot was given. +if test "${with_sysroot+set}" = set; then : + withval=$with_sysroot; +else + with_sysroot=no +fi + + +lt_sysroot= +case ${with_sysroot} in #( + yes) + if test "$GCC" = yes; then + lt_sysroot=`$CC --print-sysroot 2>/dev/null` + fi + ;; #( + /*) + lt_sysroot=`echo "$with_sysroot" | sed -e "$sed_quote_subst"` + ;; #( + no|'') + ;; #( + *) + { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${with_sysroot}" >&5 +$as_echo "${with_sysroot}" >&6; } + as_fn_error $? "The sysroot must be an absolute path." "$LINENO" 5 + ;; +esac + + { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${lt_sysroot:-no}" >&5 +$as_echo "${lt_sysroot:-no}" >&6; } @@ -6869,7 +7263,7 @@ ia64-*-hpux*) ;; *-*-irix6*) # Find out which ABI we are using. - echo '#line 6872 "configure"' > conftest.$ac_ext + echo '#line '$LINENO' "configure"' > conftest.$ac_ext if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 (eval $ac_compile) 2>&5 ac_status=$? @@ -6963,7 +7357,7 @@ s390*-*linux*|s390*-*tpf*|sparc*-*linux*) CFLAGS="$CFLAGS -belf" { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the C compiler needs -belf" >&5 $as_echo_n "checking whether the C compiler needs -belf... " >&6; } -if test "${lt_cv_cc_needs_belf+set}" = set; then : +if ${lt_cv_cc_needs_belf+:} false; then : $as_echo_n "(cached) " >&6 else ac_ext=c @@ -7004,7 +7398,7 @@ $as_echo "$lt_cv_cc_needs_belf" >&6; } CFLAGS="$SAVE_CFLAGS" fi ;; -sparc*-*solaris*) +*-*solaris*) # Find out which ABI we are using. echo 'int i;' > conftest.$ac_ext if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 @@ -7015,7 +7409,20 @@ sparc*-*solaris*) case `/usr/bin/file conftest.o` in *64-bit*) case $lt_cv_prog_gnu_ld in - yes*) LD="${LD-ld} -m elf64_sparc" ;; + yes*) + case $host in + i?86-*-solaris*) + LD="${LD-ld} -m elf_x86_64" + ;; + sparc*-*-solaris*) + LD="${LD-ld} -m elf64_sparc" + ;; + esac + # GNU ld 2.21 introduced _sol2 emulations. Use them if available. + if ${LD-ld} -V | grep _sol2 >/dev/null 2>&1; then + LD="${LD-ld}_sol2" + fi + ;; *) if ${LD-ld} -64 -r -o conftest2.o conftest.o >/dev/null 2>&1; then LD="${LD-ld} -64" @@ -7031,6 +7438,123 @@ esac need_locks="$enable_libtool_lock" +if test -n "$ac_tool_prefix"; then + # Extract the first word of "${ac_tool_prefix}mt", so it can be a program name with args. +set dummy ${ac_tool_prefix}mt; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_MANIFEST_TOOL+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$MANIFEST_TOOL"; then + ac_cv_prog_MANIFEST_TOOL="$MANIFEST_TOOL" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then + ac_cv_prog_MANIFEST_TOOL="${ac_tool_prefix}mt" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +MANIFEST_TOOL=$ac_cv_prog_MANIFEST_TOOL +if test -n "$MANIFEST_TOOL"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MANIFEST_TOOL" >&5 +$as_echo "$MANIFEST_TOOL" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + +fi +if test -z "$ac_cv_prog_MANIFEST_TOOL"; then + ac_ct_MANIFEST_TOOL=$MANIFEST_TOOL + # Extract the first word of "mt", so it can be a program name with args. +set dummy mt; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_ac_ct_MANIFEST_TOOL+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$ac_ct_MANIFEST_TOOL"; then + ac_cv_prog_ac_ct_MANIFEST_TOOL="$ac_ct_MANIFEST_TOOL" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then + ac_cv_prog_ac_ct_MANIFEST_TOOL="mt" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +ac_ct_MANIFEST_TOOL=$ac_cv_prog_ac_ct_MANIFEST_TOOL +if test -n "$ac_ct_MANIFEST_TOOL"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_MANIFEST_TOOL" >&5 +$as_echo "$ac_ct_MANIFEST_TOOL" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + if test "x$ac_ct_MANIFEST_TOOL" = x; then + MANIFEST_TOOL=":" + else + case $cross_compiling:$ac_tool_warned in +yes:) +{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 +$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} +ac_tool_warned=yes ;; +esac + MANIFEST_TOOL=$ac_ct_MANIFEST_TOOL + fi +else + MANIFEST_TOOL="$ac_cv_prog_MANIFEST_TOOL" +fi + +test -z "$MANIFEST_TOOL" && MANIFEST_TOOL=mt +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if $MANIFEST_TOOL is a manifest tool" >&5 +$as_echo_n "checking if $MANIFEST_TOOL is a manifest tool... " >&6; } +if ${lt_cv_path_mainfest_tool+:} false; then : + $as_echo_n "(cached) " >&6 +else + lt_cv_path_mainfest_tool=no + echo "$as_me:$LINENO: $MANIFEST_TOOL '-?'" >&5 + $MANIFEST_TOOL '-?' 2>conftest.err > conftest.out + cat conftest.err >&5 + if $GREP 'Manifest Tool' conftest.out > /dev/null; then + lt_cv_path_mainfest_tool=yes + fi + rm -f conftest* +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_path_mainfest_tool" >&5 +$as_echo "$lt_cv_path_mainfest_tool" >&6; } +if test "x$lt_cv_path_mainfest_tool" != xyes; then + MANIFEST_TOOL=: +fi + + + + + case $host_os in rhapsody* | darwin*) @@ -7039,7 +7563,7 @@ need_locks="$enable_libtool_lock" set dummy ${ac_tool_prefix}dsymutil; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_prog_DSYMUTIL+set}" = set; then : +if ${ac_cv_prog_DSYMUTIL+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$DSYMUTIL"; then @@ -7079,7 +7603,7 @@ if test -z "$ac_cv_prog_DSYMUTIL"; then set dummy dsymutil; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_prog_ac_ct_DSYMUTIL+set}" = set; then : +if ${ac_cv_prog_ac_ct_DSYMUTIL+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$ac_ct_DSYMUTIL"; then @@ -7131,7 +7655,7 @@ fi set dummy ${ac_tool_prefix}nmedit; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_prog_NMEDIT+set}" = set; then : +if ${ac_cv_prog_NMEDIT+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$NMEDIT"; then @@ -7171,7 +7695,7 @@ if test -z "$ac_cv_prog_NMEDIT"; then set dummy nmedit; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_prog_ac_ct_NMEDIT+set}" = set; then : +if ${ac_cv_prog_ac_ct_NMEDIT+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$ac_ct_NMEDIT"; then @@ -7223,7 +7747,7 @@ fi set dummy ${ac_tool_prefix}lipo; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_prog_LIPO+set}" = set; then : +if ${ac_cv_prog_LIPO+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$LIPO"; then @@ -7263,7 +7787,7 @@ if test -z "$ac_cv_prog_LIPO"; then set dummy lipo; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_prog_ac_ct_LIPO+set}" = set; then : +if ${ac_cv_prog_ac_ct_LIPO+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$ac_ct_LIPO"; then @@ -7315,7 +7839,7 @@ fi set dummy ${ac_tool_prefix}otool; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_prog_OTOOL+set}" = set; then : +if ${ac_cv_prog_OTOOL+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$OTOOL"; then @@ -7355,7 +7879,7 @@ if test -z "$ac_cv_prog_OTOOL"; then set dummy otool; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_prog_ac_ct_OTOOL+set}" = set; then : +if ${ac_cv_prog_ac_ct_OTOOL+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$ac_ct_OTOOL"; then @@ -7407,7 +7931,7 @@ fi set dummy ${ac_tool_prefix}otool64; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_prog_OTOOL64+set}" = set; then : +if ${ac_cv_prog_OTOOL64+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$OTOOL64"; then @@ -7447,7 +7971,7 @@ if test -z "$ac_cv_prog_OTOOL64"; then set dummy otool64; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_prog_ac_ct_OTOOL64+set}" = set; then : +if ${ac_cv_prog_ac_ct_OTOOL64+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$ac_ct_OTOOL64"; then @@ -7522,7 +8046,7 @@ fi { $as_echo "$as_me:${as_lineno-$LINENO}: checking for -single_module linker flag" >&5 $as_echo_n "checking for -single_module linker flag... " >&6; } -if test "${lt_cv_apple_cc_single_mod+set}" = set; then : +if ${lt_cv_apple_cc_single_mod+:} false; then : $as_echo_n "(cached) " >&6 else lt_cv_apple_cc_single_mod=no @@ -7538,7 +8062,13 @@ else $LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \ -dynamiclib -Wl,-single_module conftest.c 2>conftest.err _lt_result=$? - if test -f libconftest.dylib && test ! -s conftest.err && test $_lt_result = 0; then + # If there is a non-empty error log, and "single_module" + # appears in it, assume the flag caused a linker warning + if test -s conftest.err && $GREP single_module conftest.err; then + cat conftest.err >&5 + # Otherwise, if the output was created with a 0 exit code from + # the compiler, it worked. + elif test -f libconftest.dylib && test $_lt_result -eq 0; then lt_cv_apple_cc_single_mod=yes else cat conftest.err >&5 @@ -7549,9 +8079,10 @@ else fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_apple_cc_single_mod" >&5 $as_echo "$lt_cv_apple_cc_single_mod" >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for -exported_symbols_list linker flag" >&5 $as_echo_n "checking for -exported_symbols_list linker flag... " >&6; } -if test "${lt_cv_ld_exported_symbols_list+set}" = set; then : +if ${lt_cv_ld_exported_symbols_list+:} false; then : $as_echo_n "(cached) " >&6 else lt_cv_ld_exported_symbols_list=no @@ -7581,9 +8112,44 @@ rm -f core conftest.err conftest.$ac_objext \ fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ld_exported_symbols_list" >&5 $as_echo "$lt_cv_ld_exported_symbols_list" >&6; } - case $host_os in - rhapsody* | darwin1.[012]) - _lt_dar_allow_undefined='${wl}-undefined ${wl}suppress' ;; + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for -force_load linker flag" >&5 +$as_echo_n "checking for -force_load linker flag... " >&6; } +if ${lt_cv_ld_force_load+:} false; then : + $as_echo_n "(cached) " >&6 +else + lt_cv_ld_force_load=no + cat > conftest.c << _LT_EOF +int forced_loaded() { return 2;} +_LT_EOF + echo "$LTCC $LTCFLAGS -c -o conftest.o conftest.c" >&5 + $LTCC $LTCFLAGS -c -o conftest.o conftest.c 2>&5 + echo "$AR cru libconftest.a conftest.o" >&5 + $AR cru libconftest.a conftest.o 2>&5 + echo "$RANLIB libconftest.a" >&5 + $RANLIB libconftest.a 2>&5 + cat > conftest.c << _LT_EOF +int main() { return 0;} +_LT_EOF + echo "$LTCC $LTCFLAGS $LDFLAGS -o conftest conftest.c -Wl,-force_load,./libconftest.a" >&5 + $LTCC $LTCFLAGS $LDFLAGS -o conftest conftest.c -Wl,-force_load,./libconftest.a 2>conftest.err + _lt_result=$? + if test -s conftest.err && $GREP force_load conftest.err; then + cat conftest.err >&5 + elif test -f conftest && test $_lt_result -eq 0 && $GREP forced_load conftest >/dev/null 2>&1 ; then + lt_cv_ld_force_load=yes + else + cat conftest.err >&5 + fi + rm -f conftest.err libconftest.a conftest conftest.c + rm -rf conftest.dSYM + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ld_force_load" >&5 +$as_echo "$lt_cv_ld_force_load" >&6; } + case $host_os in + rhapsody* | darwin1.[012]) + _lt_dar_allow_undefined='${wl}-undefined ${wl}suppress' ;; darwin1.*) _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress' ;; darwin*) # darwin 5.x on @@ -7608,7 +8174,7 @@ $as_echo "$lt_cv_ld_exported_symbols_list" >&6; } else _lt_dar_export_syms='~$NMEDIT -s $output_objdir/${libname}-symbols.expsym ${lib}' fi - if test "$DSYMUTIL" != ":"; then + if test "$DSYMUTIL" != ":" && test "$lt_cv_ld_force_load" = "no"; then _lt_dsymutil='~$DSYMUTIL $lib || :' else _lt_dsymutil= @@ -7628,7 +8194,7 @@ if test -n "$CPP" && test -d "$CPP"; then CPP= fi if test -z "$CPP"; then - if test "${ac_cv_prog_CPP+set}" = set; then : + if ${ac_cv_prog_CPP+:} false; then : $as_echo_n "(cached) " >&6 else # Double quotes because CPP needs to be expanded @@ -7744,7 +8310,7 @@ else { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} as_fn_error $? "C preprocessor \"$CPP\" fails sanity check -See \`config.log' for more details" "$LINENO" 5 ; } +See \`config.log' for more details" "$LINENO" 5; } fi ac_ext=c @@ -7756,7 +8322,7 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ANSI C header files" >&5 $as_echo_n "checking for ANSI C header files... " >&6; } -if test "${ac_cv_header_stdc+set}" = set; then : +if ${ac_cv_header_stdc+:} false; then : $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext @@ -7887,7 +8453,7 @@ for ac_header in dlfcn.h do : ac_fn_c_check_header_compile "$LINENO" "dlfcn.h" "ac_cv_header_dlfcn_h" "$ac_includes_default " -if test "x$ac_cv_header_dlfcn_h" = x""yes; then : +if test "x$ac_cv_header_dlfcn_h" = xyes; then : cat >>confdefs.h <<_ACEOF #define HAVE_DLFCN_H 1 _ACEOF @@ -7898,6 +8464,8 @@ done + + # Set options @@ -7969,7 +8537,22 @@ fi # Check whether --with-pic was given. if test "${with_pic+set}" = set; then : - withval=$with_pic; pic_mode="$withval" + withval=$with_pic; lt_p=${PACKAGE-default} + case $withval in + yes|no) pic_mode=$withval ;; + *) + pic_mode=default + # Look at the argument we got. We use all the common list separators. + lt_save_ifs="$IFS"; IFS="${IFS}$PATH_SEPARATOR," + for lt_pkg in $withval; do + IFS="$lt_save_ifs" + if test "X$lt_pkg" = "X$lt_p"; then + pic_mode=yes + fi + done + IFS="$lt_save_ifs" + ;; + esac else pic_mode=default fi @@ -8040,6 +8623,11 @@ LIBTOOL='$(SHELL) $(top_builddir)/libtool' + + + + + @@ -8067,7 +8655,7 @@ fi { $as_echo "$as_me:${as_lineno-$LINENO}: checking for objdir" >&5 $as_echo_n "checking for objdir... " >&6; } -if test "${lt_cv_objdir+set}" = set; then : +if ${lt_cv_objdir+:} false; then : $as_echo_n "(cached) " >&6 else rm -f .libs 2>/dev/null @@ -8095,19 +8683,6 @@ _ACEOF - - - - - - - - - - - - - case $host_os in aix3*) # AIX sometimes has problems with the GCC collect2 program. For some @@ -8120,23 +8695,6 @@ aix3*) ;; esac -# Sed substitution that helps us do robust quoting. It backslashifies -# metacharacters that are still active within double-quoted strings. -sed_quote_subst='s/\(["`$\\]\)/\\\1/g' - -# Same as above, but do not quote variable references. -double_quote_subst='s/\(["`\\]\)/\\\1/g' - -# Sed substitution to delay expansion of an escaped shell variable in a -# double_quote_subst'ed string. -delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g' - -# Sed substitution to delay expansion of an escaped single quote. -delay_single_quote_subst='s/'\''/'\'\\\\\\\'\''/g' - -# Sed substitution to avoid accidental globbing in evaled expressions -no_glob_subst='s/\*/\\\*/g' - # Global variables: ofile=libtool can_build_shared=yes @@ -8165,7 +8723,7 @@ for cc_temp in $compiler""; do *) break;; esac done -cc_basename=`$ECHO "X$cc_temp" | $Xsed -e 's%.*/%%' -e "s%^$host_alias-%%"` +cc_basename=`$ECHO "$cc_temp" | $SED "s%.*/%%; s%^$host_alias-%%"` # Only perform the check for file, if the check method requires it @@ -8175,7 +8733,7 @@ file_magic*) if test "$file_magic_cmd" = '$MAGIC_CMD'; then { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ${ac_tool_prefix}file" >&5 $as_echo_n "checking for ${ac_tool_prefix}file... " >&6; } -if test "${lt_cv_path_MAGIC_CMD+set}" = set; then : +if ${lt_cv_path_MAGIC_CMD+:} false; then : $as_echo_n "(cached) " >&6 else case $MAGIC_CMD in @@ -8241,7 +8799,7 @@ if test -z "$lt_cv_path_MAGIC_CMD"; then if test -n "$ac_tool_prefix"; then { $as_echo "$as_me:${as_lineno-$LINENO}: checking for file" >&5 $as_echo_n "checking for file... " >&6; } -if test "${lt_cv_path_MAGIC_CMD+set}" = set; then : +if ${lt_cv_path_MAGIC_CMD+:} false; then : $as_echo_n "(cached) " >&6 else case $MAGIC_CMD in @@ -8374,11 +8932,16 @@ if test -n "$compiler"; then lt_prog_compiler_no_builtin_flag= if test "$GCC" = yes; then - lt_prog_compiler_no_builtin_flag=' -fno-builtin' + case $cc_basename in + nvcc*) + lt_prog_compiler_no_builtin_flag=' -Xcompiler -fno-builtin' ;; + *) + lt_prog_compiler_no_builtin_flag=' -fno-builtin' ;; + esac { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -fno-rtti -fno-exceptions" >&5 $as_echo_n "checking if $compiler supports -fno-rtti -fno-exceptions... " >&6; } -if test "${lt_cv_prog_compiler_rtti_exceptions+set}" = set; then : +if ${lt_cv_prog_compiler_rtti_exceptions+:} false; then : $as_echo_n "(cached) " >&6 else lt_cv_prog_compiler_rtti_exceptions=no @@ -8394,15 +8957,15 @@ else -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:8397: $lt_compile\"" >&5) + (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&5) (eval "$lt_compile" 2>conftest.err) ac_status=$? cat conftest.err >&5 - echo "$as_me:8401: \$? = $ac_status" >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 if (exit $ac_status) && test -s "$ac_outfile"; then # The compiler can only warn and ignore the option if not recognized # So say no if there are warnings other than the usual output. - $ECHO "X$_lt_compiler_boilerplate" | $Xsed -e '/^$/d' >conftest.exp + $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' >conftest.exp $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2 if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then lt_cv_prog_compiler_rtti_exceptions=yes @@ -8431,8 +8994,6 @@ fi lt_prog_compiler_pic= lt_prog_compiler_static= -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $compiler option to produce PIC" >&5 -$as_echo_n "checking for $compiler option to produce PIC... " >&6; } if test "$GCC" = yes; then lt_prog_compiler_wl='-Wl,' @@ -8480,6 +9041,12 @@ $as_echo_n "checking for $compiler option to produce PIC... " >&6; } lt_prog_compiler_pic='-fno-common' ;; + haiku*) + # PIC is the default for Haiku. + # The "-static" flag exists, but is broken. + lt_prog_compiler_static= + ;; + hpux*) # PIC is the default for 64-bit PA HP-UX, but not for 32-bit # PA HP-UX. On IA64 HP-UX, PIC is the default but the pic flag @@ -8522,6 +9089,15 @@ $as_echo_n "checking for $compiler option to produce PIC... " >&6; } lt_prog_compiler_pic='-fPIC' ;; esac + + case $cc_basename in + nvcc*) # Cuda Compiler Driver 2.2 + lt_prog_compiler_wl='-Xlinker ' + if test -n "$lt_prog_compiler_pic"; then + lt_prog_compiler_pic="-Xcompiler $lt_prog_compiler_pic" + fi + ;; + esac else # PORTME Check for flag to pass linker flags through the system compiler. case $host_os in @@ -8584,7 +9160,13 @@ $as_echo_n "checking for $compiler option to produce PIC... " >&6; } lt_prog_compiler_pic='--shared' lt_prog_compiler_static='--static' ;; - pgcc* | pgf77* | pgf90* | pgf95*) + nagfor*) + # NAG Fortran compiler + lt_prog_compiler_wl='-Wl,-Wl,,' + lt_prog_compiler_pic='-PIC' + lt_prog_compiler_static='-Bstatic' + ;; + pgcc* | pgf77* | pgf90* | pgf95* | pgfortran*) # Portland Group compilers (*not* the Pentium gcc compiler, # which looks to be a dead project) lt_prog_compiler_wl='-Wl,' @@ -8596,25 +9178,40 @@ $as_echo_n "checking for $compiler option to produce PIC... " >&6; } # All Alpha code is PIC. lt_prog_compiler_static='-non_shared' ;; - xl*) - # IBM XL C 8.0/Fortran 10.1 on PPC + xl* | bgxl* | bgf* | mpixl*) + # IBM XL C 8.0/Fortran 10.1, 11.1 on PPC and BlueGene lt_prog_compiler_wl='-Wl,' lt_prog_compiler_pic='-qpic' lt_prog_compiler_static='-qstaticlink' ;; *) case `$CC -V 2>&1 | sed 5q` in + *Sun\ Ceres\ Fortran* | *Sun*Fortran*\ [1-7].* | *Sun*Fortran*\ 8.[0-3]*) + # Sun Fortran 8.3 passes all unrecognized flags to the linker + lt_prog_compiler_pic='-KPIC' + lt_prog_compiler_static='-Bstatic' + lt_prog_compiler_wl='' + ;; + *Sun\ F* | *Sun*Fortran*) + lt_prog_compiler_pic='-KPIC' + lt_prog_compiler_static='-Bstatic' + lt_prog_compiler_wl='-Qoption ld ' + ;; *Sun\ C*) # Sun C 5.9 lt_prog_compiler_pic='-KPIC' lt_prog_compiler_static='-Bstatic' lt_prog_compiler_wl='-Wl,' ;; - *Sun\ F*) - # Sun Fortran 8.3 passes all unrecognized flags to the linker - lt_prog_compiler_pic='-KPIC' + *Intel*\ [CF]*Compiler*) + lt_prog_compiler_wl='-Wl,' + lt_prog_compiler_pic='-fPIC' + lt_prog_compiler_static='-static' + ;; + *Portland\ Group*) + lt_prog_compiler_wl='-Wl,' + lt_prog_compiler_pic='-fpic' lt_prog_compiler_static='-Bstatic' - lt_prog_compiler_wl='' ;; esac ;; @@ -8646,7 +9243,7 @@ $as_echo_n "checking for $compiler option to produce PIC... " >&6; } lt_prog_compiler_pic='-KPIC' lt_prog_compiler_static='-Bstatic' case $cc_basename in - f77* | f90* | f95*) + f77* | f90* | f95* | sunf77* | sunf90* | sunf95*) lt_prog_compiler_wl='-Qoption ld ';; *) lt_prog_compiler_wl='-Wl,';; @@ -8703,13 +9300,17 @@ case $host_os in lt_prog_compiler_pic="$lt_prog_compiler_pic -DPIC" ;; esac -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_prog_compiler_pic" >&5 -$as_echo "$lt_prog_compiler_pic" >&6; } - - - - +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $compiler option to produce PIC" >&5 +$as_echo_n "checking for $compiler option to produce PIC... " >&6; } +if ${lt_cv_prog_compiler_pic+:} false; then : + $as_echo_n "(cached) " >&6 +else + lt_cv_prog_compiler_pic=$lt_prog_compiler_pic +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_pic" >&5 +$as_echo "$lt_cv_prog_compiler_pic" >&6; } +lt_prog_compiler_pic=$lt_cv_prog_compiler_pic # # Check to make sure the PIC flag actually works. @@ -8717,7 +9318,7 @@ $as_echo "$lt_prog_compiler_pic" >&6; } if test -n "$lt_prog_compiler_pic"; then { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler PIC flag $lt_prog_compiler_pic works" >&5 $as_echo_n "checking if $compiler PIC flag $lt_prog_compiler_pic works... " >&6; } -if test "${lt_cv_prog_compiler_pic_works+set}" = set; then : +if ${lt_cv_prog_compiler_pic_works+:} false; then : $as_echo_n "(cached) " >&6 else lt_cv_prog_compiler_pic_works=no @@ -8733,15 +9334,15 @@ else -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:8736: $lt_compile\"" >&5) + (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&5) (eval "$lt_compile" 2>conftest.err) ac_status=$? cat conftest.err >&5 - echo "$as_me:8740: \$? = $ac_status" >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 if (exit $ac_status) && test -s "$ac_outfile"; then # The compiler can only warn and ignore the option if not recognized # So say no if there are warnings other than the usual output. - $ECHO "X$_lt_compiler_boilerplate" | $Xsed -e '/^$/d' >conftest.exp + $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' >conftest.exp $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2 if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then lt_cv_prog_compiler_pic_works=yes @@ -8770,13 +9371,18 @@ fi + + + + + # # Check to make sure the static flag actually works. # wl=$lt_prog_compiler_wl eval lt_tmp_static_flag=\"$lt_prog_compiler_static\" { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler static flag $lt_tmp_static_flag works" >&5 $as_echo_n "checking if $compiler static flag $lt_tmp_static_flag works... " >&6; } -if test "${lt_cv_prog_compiler_static_works+set}" = set; then : +if ${lt_cv_prog_compiler_static_works+:} false; then : $as_echo_n "(cached) " >&6 else lt_cv_prog_compiler_static_works=no @@ -8789,7 +9395,7 @@ else if test -s conftest.err; then # Append any errors to the config.log. cat conftest.err 1>&5 - $ECHO "X$_lt_linker_boilerplate" | $Xsed -e '/^$/d' > conftest.exp + $ECHO "$_lt_linker_boilerplate" | $SED '/^$/d' > conftest.exp $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2 if diff conftest.exp conftest.er2 >/dev/null; then lt_cv_prog_compiler_static_works=yes @@ -8819,7 +9425,7 @@ fi { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -c -o file.$ac_objext" >&5 $as_echo_n "checking if $compiler supports -c -o file.$ac_objext... " >&6; } -if test "${lt_cv_prog_compiler_c_o+set}" = set; then : +if ${lt_cv_prog_compiler_c_o+:} false; then : $as_echo_n "(cached) " >&6 else lt_cv_prog_compiler_c_o=no @@ -8838,16 +9444,16 @@ else -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:8841: $lt_compile\"" >&5) + (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&5) (eval "$lt_compile" 2>out/conftest.err) ac_status=$? cat out/conftest.err >&5 - echo "$as_me:8845: \$? = $ac_status" >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 if (exit $ac_status) && test -s out/conftest2.$ac_objext then # The compiler can only warn and ignore the option if not recognized # So say no if there are warnings - $ECHO "X$_lt_compiler_boilerplate" | $Xsed -e '/^$/d' > out/conftest.exp + $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' > out/conftest.exp $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er2 if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then lt_cv_prog_compiler_c_o=yes @@ -8874,7 +9480,7 @@ $as_echo "$lt_cv_prog_compiler_c_o" >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -c -o file.$ac_objext" >&5 $as_echo_n "checking if $compiler supports -c -o file.$ac_objext... " >&6; } -if test "${lt_cv_prog_compiler_c_o+set}" = set; then : +if ${lt_cv_prog_compiler_c_o+:} false; then : $as_echo_n "(cached) " >&6 else lt_cv_prog_compiler_c_o=no @@ -8893,16 +9499,16 @@ else -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:8896: $lt_compile\"" >&5) + (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&5) (eval "$lt_compile" 2>out/conftest.err) ac_status=$? cat out/conftest.err >&5 - echo "$as_me:8900: \$? = $ac_status" >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 if (exit $ac_status) && test -s out/conftest2.$ac_objext then # The compiler can only warn and ignore the option if not recognized # So say no if there are warnings - $ECHO "X$_lt_compiler_boilerplate" | $Xsed -e '/^$/d' > out/conftest.exp + $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' > out/conftest.exp $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er2 if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then lt_cv_prog_compiler_c_o=yes @@ -8968,7 +9574,6 @@ $as_echo_n "checking whether the $compiler linker ($LD) supports shared librarie hardcode_direct=no hardcode_direct_absolute=no hardcode_libdir_flag_spec= - hardcode_libdir_flag_spec_ld= hardcode_libdir_separator= hardcode_minus_L=no hardcode_shlibpath_var=unsupported @@ -9012,13 +9617,39 @@ $as_echo_n "checking whether the $compiler linker ($LD) supports shared librarie openbsd*) with_gnu_ld=no ;; - linux* | k*bsd*-gnu) + linux* | k*bsd*-gnu | gnu*) link_all_deplibs=no ;; esac ld_shlibs=yes + + # On some targets, GNU ld is compatible enough with the native linker + # that we're better off using the native interface for both. + lt_use_gnu_ld_interface=no if test "$with_gnu_ld" = yes; then + case $host_os in + aix*) + # The AIX port of GNU ld has always aspired to compatibility + # with the native linker. However, as the warning in the GNU ld + # block says, versions before 2.19.5* couldn't really create working + # shared libraries, regardless of the interface used. + case `$LD -v 2>&1` in + *\ \(GNU\ Binutils\)\ 2.19.5*) ;; + *\ \(GNU\ Binutils\)\ 2.[2-9]*) ;; + *\ \(GNU\ Binutils\)\ [3-9]*) ;; + *) + lt_use_gnu_ld_interface=yes + ;; + esac + ;; + *) + lt_use_gnu_ld_interface=yes + ;; + esac + fi + + if test "$lt_use_gnu_ld_interface" = yes; then # If archive_cmds runs LD, not CC, wlarc should be empty wlarc='${wl}' @@ -9052,11 +9683,12 @@ $as_echo_n "checking whether the $compiler linker ($LD) supports shared librarie ld_shlibs=no cat <<_LT_EOF 1>&2 -*** Warning: the GNU linker, at least up to release 2.9.1, is reported +*** Warning: the GNU linker, at least up to release 2.19, is reported *** to be unable to reliably create shared libraries on AIX. *** Therefore, libtool is disabling shared libraries support. If you -*** really care for shared libraries, you may want to modify your PATH -*** so that a non-GNU linker is found, and then restart. +*** really care for shared libraries, you may want to install binutils +*** 2.20 or above, or modify your PATH so that a non-GNU linker is found. +*** You will then need to restart the configuration process. _LT_EOF fi @@ -9092,10 +9724,12 @@ _LT_EOF # _LT_TAGVAR(hardcode_libdir_flag_spec, ) is actually meaningless, # as there is no search path for DLLs. hardcode_libdir_flag_spec='-L$libdir' + export_dynamic_flag_spec='${wl}--export-all-symbols' allow_undefined_flag=unsupported always_export_symbols=no enable_shared_with_static_runtimes=yes - export_symbols_cmds='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[BCDGRS][ ]/s/.*[ ]\([^ ]*\)/\1 DATA/'\'' | $SED -e '\''/^[AITW][ ]/s/.*[ ]//'\'' | sort | uniq > $export_symbols' + export_symbols_cmds='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[BCDGRS][ ]/s/.*[ ]\([^ ]*\)/\1 DATA/;s/^.*[ ]__nm__\([^ ]*\)[ ][^ ]*/\1 DATA/;/^I[ ]/d;/^[AITW][ ]/s/.* //'\'' | sort | uniq > $export_symbols' + exclude_expsyms='[_]+GLOBAL_OFFSET_TABLE_|[_]+GLOBAL__[FID]_.*|[_]+head_[A-Za-z0-9_]+_dll|[A-Za-z0-9_]+_dll_iname' if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib' @@ -9113,6 +9747,11 @@ _LT_EOF fi ;; + haiku*) + archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' + link_all_deplibs=yes + ;; + interix[3-9]*) hardcode_direct=no hardcode_shlibpath_var=no @@ -9138,15 +9777,16 @@ _LT_EOF if $LD --help 2>&1 | $EGREP ': supported targets:.* elf' > /dev/null \ && test "$tmp_diet" = no then - tmp_addflag= + tmp_addflag=' $pic_flag' tmp_sharedflag='-shared' case $cc_basename,$host_cpu in pgcc*) # Portland Group C compiler - whole_archive_flag_spec='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $ECHO \"$new_convenience\"` ${wl}--no-whole-archive' + whole_archive_flag_spec='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive' tmp_addflag=' $pic_flag' ;; - pgf77* | pgf90* | pgf95*) # Portland Group f77 and f90 compilers - whole_archive_flag_spec='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $ECHO \"$new_convenience\"` ${wl}--no-whole-archive' + pgf77* | pgf90* | pgf95* | pgfortran*) + # Portland Group f77 and f90 compilers + whole_archive_flag_spec='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive' tmp_addflag=' $pic_flag -Mnomain' ;; ecc*,ia64* | icc*,ia64*) # Intel C compiler on ia64 tmp_addflag=' -i_dynamic' ;; @@ -9157,13 +9797,17 @@ _LT_EOF lf95*) # Lahey Fortran 8.1 whole_archive_flag_spec= tmp_sharedflag='--shared' ;; - xl[cC]*) # IBM XL C 8.0 on PPC (deal with xlf below) + xl[cC]* | bgxl[cC]* | mpixl[cC]*) # IBM XL C 8.0 on PPC (deal with xlf below) tmp_sharedflag='-qmkshrobj' tmp_addflag= ;; + nvcc*) # Cuda Compiler Driver 2.2 + whole_archive_flag_spec='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive' + compiler_needs_object=yes + ;; esac case `$CC -V 2>&1 | sed 5q` in *Sun\ C*) # Sun C 5.9 - whole_archive_flag_spec='${wl}--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; $ECHO \"$new_convenience\"` ${wl}--no-whole-archive' + whole_archive_flag_spec='${wl}--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive' compiler_needs_object=yes tmp_sharedflag='-G' ;; *Sun\ F*) # Sun Fortran 8.3 @@ -9179,17 +9823,16 @@ _LT_EOF fi case $cc_basename in - xlf*) + xlf* | bgf* | bgxlf* | mpixlf*) # IBM XL Fortran 10.1 on PPC cannot create shared libs itself whole_archive_flag_spec='--whole-archive$convenience --no-whole-archive' - hardcode_libdir_flag_spec= - hardcode_libdir_flag_spec_ld='-rpath $libdir' - archive_cmds='$LD -shared $libobjs $deplibs $compiler_flags -soname $soname -o $lib' + hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' + archive_cmds='$LD -shared $libobjs $deplibs $linker_flags -soname $soname -o $lib' if test "x$supports_anon_versioning" = xyes; then archive_expsym_cmds='echo "{ global:" > $output_objdir/$libname.ver~ cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ echo "local: *; };" >> $output_objdir/$libname.ver~ - $LD -shared $libobjs $deplibs $compiler_flags -soname $soname -version-script $output_objdir/$libname.ver -o $lib' + $LD -shared $libobjs $deplibs $linker_flags -soname $soname -version-script $output_objdir/$libname.ver -o $lib' fi ;; esac @@ -9203,8 +9846,8 @@ _LT_EOF archive_cmds='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib' wlarc= else - archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' - archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' + archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' + archive_expsym_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' fi ;; @@ -9222,8 +9865,8 @@ _LT_EOF _LT_EOF elif $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then - archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' - archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' + archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' + archive_expsym_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' else ld_shlibs=no fi @@ -9269,8 +9912,8 @@ _LT_EOF *) if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then - archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' - archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' + archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' + archive_expsym_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' else ld_shlibs=no fi @@ -9310,8 +9953,10 @@ _LT_EOF else # If we're using GNU nm, then we don't want the "-C" option. # -C means demangle to AIX nm, but means don't demangle with GNU nm + # Also, AIX nm treats weak defined symbols like other global + # defined symbols, whereas GNU nm marks them as "W". if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then - export_symbols_cmds='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B")) && (substr(\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols' + export_symbols_cmds='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W")) && (substr(\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols' else export_symbols_cmds='$NM -BCpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B")) && (substr(\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols' fi @@ -9399,7 +10044,13 @@ _LT_EOF allow_undefined_flag='-berok' # Determine the default libpath from the value encoded in an # empty executable. - cat confdefs.h - <<_ACEOF >conftest.$ac_ext + if test "${lt_cv_aix_libpath+set}" = set; then + aix_libpath=$lt_cv_aix_libpath +else + if ${lt_cv_aix_libpath_+:} false; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int @@ -9412,25 +10063,32 @@ main () _ACEOF if ac_fn_c_try_link "$LINENO"; then : -lt_aix_libpath_sed=' - /Import File Strings/,/^$/ { - /^0/ { - s/^0 *\(.*\)$/\1/ - p - } - }' -aix_libpath=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"` -# Check for a 64-bit object if we didn't find anything. -if test -z "$aix_libpath"; then - aix_libpath=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"` -fi + lt_aix_libpath_sed=' + /Import File Strings/,/^$/ { + /^0/ { + s/^0 *\([^ ]*\) *$/\1/ + p + } + }' + lt_cv_aix_libpath_=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"` + # Check for a 64-bit object if we didn't find anything. + if test -z "$lt_cv_aix_libpath_"; then + lt_cv_aix_libpath_=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"` + fi fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext -if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi + if test -z "$lt_cv_aix_libpath_"; then + lt_cv_aix_libpath_="/usr/lib:/lib" + fi + +fi + + aix_libpath=$lt_cv_aix_libpath_ +fi hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:'"$aix_libpath" - archive_expsym_cmds='$CC -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then $ECHO "X${wl}${allow_undefined_flag}" | $Xsed; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag" + archive_expsym_cmds='$CC -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then func_echo_all "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag" else if test "$host_cpu" = ia64; then hardcode_libdir_flag_spec='${wl}-R $libdir:/usr/lib:/lib' @@ -9439,7 +10097,13 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi else # Determine the default libpath from the value encoded in an # empty executable. - cat confdefs.h - <<_ACEOF >conftest.$ac_ext + if test "${lt_cv_aix_libpath+set}" = set; then + aix_libpath=$lt_cv_aix_libpath +else + if ${lt_cv_aix_libpath_+:} false; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int @@ -9452,30 +10116,42 @@ main () _ACEOF if ac_fn_c_try_link "$LINENO"; then : -lt_aix_libpath_sed=' - /Import File Strings/,/^$/ { - /^0/ { - s/^0 *\(.*\)$/\1/ - p - } - }' -aix_libpath=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"` -# Check for a 64-bit object if we didn't find anything. -if test -z "$aix_libpath"; then - aix_libpath=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"` -fi + lt_aix_libpath_sed=' + /Import File Strings/,/^$/ { + /^0/ { + s/^0 *\([^ ]*\) *$/\1/ + p + } + }' + lt_cv_aix_libpath_=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"` + # Check for a 64-bit object if we didn't find anything. + if test -z "$lt_cv_aix_libpath_"; then + lt_cv_aix_libpath_=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"` + fi fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext -if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi + if test -z "$lt_cv_aix_libpath_"; then + lt_cv_aix_libpath_="/usr/lib:/lib" + fi + +fi + + aix_libpath=$lt_cv_aix_libpath_ +fi hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:'"$aix_libpath" # Warning - without using the other run time loading flags, # -berok will link without error, but may produce a broken library. no_undefined_flag=' ${wl}-bernotok' allow_undefined_flag=' ${wl}-berok' - # Exported symbols can be pulled into shared objects from archives - whole_archive_flag_spec='$convenience' + if test "$with_gnu_ld" = yes; then + # We only use this code for GNU lds that support --whole-archive. + whole_archive_flag_spec='${wl}--whole-archive$convenience ${wl}--no-whole-archive' + else + # Exported symbols can be pulled into shared objects from archives + whole_archive_flag_spec='$convenience' + fi archive_cmds_need_lc=yes # This is similar to how AIX traditionally builds its shared libraries. archive_expsym_cmds="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs ${wl}-bnoentry $compiler_flags ${wl}-bE:$export_symbols${allow_undefined_flag}~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$soname' @@ -9507,20 +10183,64 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi # Microsoft Visual C++. # hardcode_libdir_flag_spec is actually meaningless, as there is # no search path for DLLs. - hardcode_libdir_flag_spec=' ' - allow_undefined_flag=unsupported - # Tell ltmain to make .lib files, not .a files. - libext=lib - # Tell ltmain to make .dll files, not .so files. - shrext_cmds=".dll" - # FIXME: Setting linknames here is a bad hack. - archive_cmds='$CC -o $lib $libobjs $compiler_flags `$ECHO "X$deplibs" | $Xsed -e '\''s/ -lc$//'\''` -link -dll~linknames=' - # The linker will automatically build a .lib file if we build a DLL. - old_archive_from_new_cmds='true' - # FIXME: Should let the user specify the lib program. - old_archive_cmds='lib -OUT:$oldlib$oldobjs$old_deplibs' - fix_srcfile_path='`cygpath -w "$srcfile"`' - enable_shared_with_static_runtimes=yes + case $cc_basename in + cl*) + # Native MSVC + hardcode_libdir_flag_spec=' ' + allow_undefined_flag=unsupported + always_export_symbols=yes + file_list_spec='@' + # Tell ltmain to make .lib files, not .a files. + libext=lib + # Tell ltmain to make .dll files, not .so files. + shrext_cmds=".dll" + # FIXME: Setting linknames here is a bad hack. + archive_cmds='$CC -o $output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-dll~linknames=' + archive_expsym_cmds='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then + sed -n -e 's/\\\\\\\(.*\\\\\\\)/-link\\\ -EXPORT:\\\\\\\1/' -e '1\\\!p' < $export_symbols > $output_objdir/$soname.exp; + else + sed -e 's/\\\\\\\(.*\\\\\\\)/-link\\\ -EXPORT:\\\\\\\1/' < $export_symbols > $output_objdir/$soname.exp; + fi~ + $CC -o $tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~ + linknames=' + # The linker will not automatically build a static lib if we build a DLL. + # _LT_TAGVAR(old_archive_from_new_cmds, )='true' + enable_shared_with_static_runtimes=yes + exclude_expsyms='_NULL_IMPORT_DESCRIPTOR|_IMPORT_DESCRIPTOR_.*' + export_symbols_cmds='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[BCDGRS][ ]/s/.*[ ]\([^ ]*\)/\1,DATA/'\'' | $SED -e '\''/^[AITW][ ]/s/.*[ ]//'\'' | sort | uniq > $export_symbols' + # Don't use ranlib + old_postinstall_cmds='chmod 644 $oldlib' + postlink_cmds='lt_outputfile="@OUTPUT@"~ + lt_tool_outputfile="@TOOL_OUTPUT@"~ + case $lt_outputfile in + *.exe|*.EXE) ;; + *) + lt_outputfile="$lt_outputfile.exe" + lt_tool_outputfile="$lt_tool_outputfile.exe" + ;; + esac~ + if test "$MANIFEST_TOOL" != ":" && test -f "$lt_outputfile.manifest"; then + $MANIFEST_TOOL -manifest "$lt_tool_outputfile.manifest" -outputresource:"$lt_tool_outputfile" || exit 1; + $RM "$lt_outputfile.manifest"; + fi' + ;; + *) + # Assume MSVC wrapper + hardcode_libdir_flag_spec=' ' + allow_undefined_flag=unsupported + # Tell ltmain to make .lib files, not .a files. + libext=lib + # Tell ltmain to make .dll files, not .so files. + shrext_cmds=".dll" + # FIXME: Setting linknames here is a bad hack. + archive_cmds='$CC -o $lib $libobjs $compiler_flags `func_echo_all "$deplibs" | $SED '\''s/ -lc$//'\''` -link -dll~linknames=' + # The linker will automatically build a .lib file if we build a DLL. + old_archive_from_new_cmds='true' + # FIXME: Should let the user specify the lib program. + old_archive_cmds='lib -OUT:$oldlib$oldobjs$old_deplibs' + enable_shared_with_static_runtimes=yes + ;; + esac ;; darwin* | rhapsody*) @@ -9530,7 +10250,12 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi hardcode_direct=no hardcode_automatic=yes hardcode_shlibpath_var=unsupported - whole_archive_flag_spec='' + if test "$lt_cv_ld_force_load" = "yes"; then + whole_archive_flag_spec='`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience ${wl}-force_load,$conv\"; done; func_echo_all \"$new_convenience\"`' + + else + whole_archive_flag_spec='' + fi link_all_deplibs=yes allow_undefined_flag="$_lt_dar_allow_undefined" case $cc_basename in @@ -9538,7 +10263,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi *) _lt_dar_can_shared=$GCC ;; esac if test "$_lt_dar_can_shared" = "yes"; then - output_verbose_link_cmd=echo + output_verbose_link_cmd=func_echo_all archive_cmds="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}" module_cmds="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}" archive_expsym_cmds="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}" @@ -9556,10 +10281,6 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi hardcode_shlibpath_var=no ;; - freebsd1*) - ld_shlibs=no - ;; - # FreeBSD 2.2.[012] allows us to include c++rt0.o to get C++ constructor # support. Future versions do this automatically, but an explicit c++rt0.o # does not break anything, and helps significantly (at the cost of a little @@ -9572,7 +10293,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi ;; # Unfortunately, older versions of FreeBSD 2 do not have this feature. - freebsd2*) + freebsd2.*) archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' hardcode_direct=yes hardcode_minus_L=yes @@ -9581,7 +10302,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi # FreeBSD 3 and greater uses gcc -shared to do shared libraries. freebsd* | dragonfly*) - archive_cmds='$CC -shared -o $lib $libobjs $deplibs $compiler_flags' + archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' hardcode_libdir_flag_spec='-R$libdir' hardcode_direct=yes hardcode_shlibpath_var=no @@ -9589,7 +10310,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi hpux9*) if test "$GCC" = yes; then - archive_cmds='$RM $output_objdir/$soname~$CC -shared -fPIC ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $libobjs $deplibs $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' + archive_cmds='$RM $output_objdir/$soname~$CC -shared $pic_flag ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $libobjs $deplibs $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' else archive_cmds='$RM $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' fi @@ -9604,14 +10325,13 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi ;; hpux10*) - if test "$GCC" = yes -a "$with_gnu_ld" = no; then - archive_cmds='$CC -shared -fPIC ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags' + if test "$GCC" = yes && test "$with_gnu_ld" = no; then + archive_cmds='$CC -shared $pic_flag ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags' else archive_cmds='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags' fi if test "$with_gnu_ld" = no; then hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir' - hardcode_libdir_flag_spec_ld='+b $libdir' hardcode_libdir_separator=: hardcode_direct=yes hardcode_direct_absolute=yes @@ -9623,16 +10343,16 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi ;; hpux11*) - if test "$GCC" = yes -a "$with_gnu_ld" = no; then + if test "$GCC" = yes && test "$with_gnu_ld" = no; then case $host_cpu in hppa*64*) archive_cmds='$CC -shared ${wl}+h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags' ;; ia64*) - archive_cmds='$CC -shared -fPIC ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags' + archive_cmds='$CC -shared $pic_flag ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags' ;; *) - archive_cmds='$CC -shared -fPIC ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags' + archive_cmds='$CC -shared $pic_flag ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags' ;; esac else @@ -9644,7 +10364,46 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi archive_cmds='$CC -b ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags' ;; *) - archive_cmds='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags' + + # Older versions of the 11.00 compiler do not understand -b yet + # (HP92453-01 A.11.01.20 doesn't, HP92453-01 B.11.X.35175-35176.GP does) + { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC understands -b" >&5 +$as_echo_n "checking if $CC understands -b... " >&6; } +if ${lt_cv_prog_compiler__b+:} false; then : + $as_echo_n "(cached) " >&6 +else + lt_cv_prog_compiler__b=no + save_LDFLAGS="$LDFLAGS" + LDFLAGS="$LDFLAGS -b" + echo "$lt_simple_link_test_code" > conftest.$ac_ext + if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then + # The linker can only warn and ignore the option if not recognized + # So say no if there are warnings + if test -s conftest.err; then + # Append any errors to the config.log. + cat conftest.err 1>&5 + $ECHO "$_lt_linker_boilerplate" | $SED '/^$/d' > conftest.exp + $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2 + if diff conftest.exp conftest.er2 >/dev/null; then + lt_cv_prog_compiler__b=yes + fi + else + lt_cv_prog_compiler__b=yes + fi + fi + $RM -r conftest* + LDFLAGS="$save_LDFLAGS" + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler__b" >&5 +$as_echo "$lt_cv_prog_compiler__b" >&6; } + +if test x"$lt_cv_prog_compiler__b" = xyes; then + archive_cmds='$CC -b ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $libobjs $deplibs $compiler_flags' +else + archive_cmds='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags' +fi + ;; esac fi @@ -9672,26 +10431,39 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi irix5* | irix6* | nonstopux*) if test "$GCC" = yes; then - archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' + archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' # Try to use the -exported_symbol ld option, if it does not # work, assume that -exports_file does not work either and # implicitly export all symbols. - save_LDFLAGS="$LDFLAGS" - LDFLAGS="$LDFLAGS -shared ${wl}-exported_symbol ${wl}foo ${wl}-update_registry ${wl}/dev/null" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext + # This should be the same for all languages, so no per-tag cache variable. + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the $host_os linker accepts -exported_symbol" >&5 +$as_echo_n "checking whether the $host_os linker accepts -exported_symbol... " >&6; } +if ${lt_cv_irix_exported_symbol+:} false; then : + $as_echo_n "(cached) " >&6 +else + save_LDFLAGS="$LDFLAGS" + LDFLAGS="$LDFLAGS -shared ${wl}-exported_symbol ${wl}foo ${wl}-update_registry ${wl}/dev/null" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ -int foo(void) {} +int foo (void) { return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : - archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations ${wl}-exports_file ${wl}$export_symbols -o $lib' - + lt_cv_irix_exported_symbol=yes +else + lt_cv_irix_exported_symbol=no fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext - LDFLAGS="$save_LDFLAGS" + LDFLAGS="$save_LDFLAGS" +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_irix_exported_symbol" >&5 +$as_echo "$lt_cv_irix_exported_symbol" >&6; } + if test "$lt_cv_irix_exported_symbol" = yes; then + archive_expsym_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations ${wl}-exports_file ${wl}$export_symbols -o $lib' + fi else - archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib' - archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -exports_file $export_symbols -o $lib' + archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib' + archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -exports_file $export_symbols -o $lib' fi archive_cmds_need_lc='no' hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' @@ -9753,17 +10525,17 @@ rm -f core conftest.err conftest.$ac_objext \ hardcode_libdir_flag_spec='-L$libdir' hardcode_minus_L=yes allow_undefined_flag=unsupported - archive_cmds='$ECHO "LIBRARY $libname INITINSTANCE" > $output_objdir/$libname.def~$ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~$ECHO DATA >> $output_objdir/$libname.def~$ECHO " SINGLE NONSHARED" >> $output_objdir/$libname.def~$ECHO EXPORTS >> $output_objdir/$libname.def~emxexp $libobjs >> $output_objdir/$libname.def~$CC -Zdll -Zcrtdll -o $lib $libobjs $deplibs $compiler_flags $output_objdir/$libname.def' + archive_cmds='$ECHO "LIBRARY $libname INITINSTANCE" > $output_objdir/$libname.def~$ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~echo DATA >> $output_objdir/$libname.def~echo " SINGLE NONSHARED" >> $output_objdir/$libname.def~echo EXPORTS >> $output_objdir/$libname.def~emxexp $libobjs >> $output_objdir/$libname.def~$CC -Zdll -Zcrtdll -o $lib $libobjs $deplibs $compiler_flags $output_objdir/$libname.def' old_archive_from_new_cmds='emximp -o $output_objdir/$libname.a $output_objdir/$libname.def' ;; osf3*) if test "$GCC" = yes; then allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*' - archive_cmds='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' + archive_cmds='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' else allow_undefined_flag=' -expect_unresolved \*' - archive_cmds='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib' + archive_cmds='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib' fi archive_cmds_need_lc='no' hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' @@ -9773,13 +10545,13 @@ rm -f core conftest.err conftest.$ac_objext \ osf4* | osf5*) # as osf3* with the addition of -msym flag if test "$GCC" = yes; then allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*' - archive_cmds='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' + archive_cmds='$CC -shared${allow_undefined_flag} $pic_flag $libobjs $deplibs $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' else allow_undefined_flag=' -expect_unresolved \*' - archive_cmds='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags -msym -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib' + archive_cmds='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags -msym -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib' archive_expsym_cmds='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done; printf "%s\\n" "-hidden">> $lib.exp~ - $CC -shared${allow_undefined_flag} ${wl}-input ${wl}$lib.exp $compiler_flags $libobjs $deplibs -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib~$RM $lib.exp' + $CC -shared${allow_undefined_flag} ${wl}-input ${wl}$lib.exp $compiler_flags $libobjs $deplibs -soname $soname `test -n "$verstring" && $ECHO "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib~$RM $lib.exp' # Both c and cxx compiler support -rpath directly hardcode_libdir_flag_spec='-rpath $libdir' @@ -9792,9 +10564,9 @@ rm -f core conftest.err conftest.$ac_objext \ no_undefined_flag=' -z defs' if test "$GCC" = yes; then wlarc='${wl}' - archive_cmds='$CC -shared ${wl}-z ${wl}text ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags' + archive_cmds='$CC -shared $pic_flag ${wl}-z ${wl}text ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags' archive_expsym_cmds='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ - $CC -shared ${wl}-z ${wl}text ${wl}-M ${wl}$lib.exp ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp' + $CC -shared $pic_flag ${wl}-z ${wl}text ${wl}-M ${wl}$lib.exp ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp' else case `$CC -V 2>&1` in *"Compilers 5.0"*) @@ -9982,44 +10754,50 @@ x|xyes) # to ld, don't add -lc before -lgcc. { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether -lc should be explicitly linked in" >&5 $as_echo_n "checking whether -lc should be explicitly linked in... " >&6; } - $RM conftest* - echo "$lt_simple_compile_test_code" > conftest.$ac_ext +if ${lt_cv_archive_cmds_need_lc+:} false; then : + $as_echo_n "(cached) " >&6 +else + $RM conftest* + echo "$lt_simple_compile_test_code" > conftest.$ac_ext - if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 + if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 (eval $ac_compile) 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } 2>conftest.err; then - soname=conftest - lib=conftest - libobjs=conftest.$ac_objext - deplibs= - wl=$lt_prog_compiler_wl - pic_flag=$lt_prog_compiler_pic - compiler_flags=-v - linker_flags=-v - verstring= - output_objdir=. - libname=conftest - lt_save_allow_undefined_flag=$allow_undefined_flag - allow_undefined_flag= - if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$archive_cmds 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1\""; } >&5 + soname=conftest + lib=conftest + libobjs=conftest.$ac_objext + deplibs= + wl=$lt_prog_compiler_wl + pic_flag=$lt_prog_compiler_pic + compiler_flags=-v + linker_flags=-v + verstring= + output_objdir=. + libname=conftest + lt_save_allow_undefined_flag=$allow_undefined_flag + allow_undefined_flag= + if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$archive_cmds 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1\""; } >&5 (eval $archive_cmds 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1) 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } - then - archive_cmds_need_lc=no - else - archive_cmds_need_lc=yes - fi - allow_undefined_flag=$lt_save_allow_undefined_flag - else - cat conftest.err 1>&5 - fi - $RM conftest* - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $archive_cmds_need_lc" >&5 -$as_echo "$archive_cmds_need_lc" >&6; } + then + lt_cv_archive_cmds_need_lc=no + else + lt_cv_archive_cmds_need_lc=yes + fi + allow_undefined_flag=$lt_save_allow_undefined_flag + else + cat conftest.err 1>&5 + fi + $RM conftest* + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_archive_cmds_need_lc" >&5 +$as_echo "$lt_cv_archive_cmds_need_lc" >&6; } + archive_cmds_need_lc=$lt_cv_archive_cmds_need_lc ;; esac fi @@ -10171,11 +10949,6 @@ esac - - - - - @@ -10190,16 +10963,23 @@ if test "$GCC" = yes; then darwin*) lt_awk_arg="/^libraries:/,/LR/" ;; *) lt_awk_arg="/^libraries:/" ;; esac - lt_search_path_spec=`$CC -print-search-dirs | awk $lt_awk_arg | $SED -e "s/^libraries://" -e "s,=/,/,g"` - if $ECHO "$lt_search_path_spec" | $GREP ';' >/dev/null ; then + case $host_os in + mingw* | cegcc*) lt_sed_strip_eq="s,=\([A-Za-z]:\),\1,g" ;; + *) lt_sed_strip_eq="s,=/,/,g" ;; + esac + lt_search_path_spec=`$CC -print-search-dirs | awk $lt_awk_arg | $SED -e "s/^libraries://" -e $lt_sed_strip_eq` + case $lt_search_path_spec in + *\;*) # if the path contains ";" then we assume it to be the separator # otherwise default to the standard path separator (i.e. ":") - it is # assumed that no part of a normal pathname contains ";" but that should # okay in the real world where ";" in dirpaths is itself problematic. - lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED -e 's/;/ /g'` - else - lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"` - fi + lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED 's/;/ /g'` + ;; + *) + lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED "s/$PATH_SEPARATOR/ /g"` + ;; + esac # Ok, now we have the path, separated by spaces, we can step through it # and add multilib dir if necessary. lt_tmp_lt_search_path_spec= @@ -10212,7 +10992,7 @@ if test "$GCC" = yes; then lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path" fi done - lt_search_path_spec=`$ECHO $lt_tmp_lt_search_path_spec | awk ' + lt_search_path_spec=`$ECHO "$lt_tmp_lt_search_path_spec" | awk ' BEGIN {RS=" "; FS="/|\n";} { lt_foo=""; lt_count=0; @@ -10232,7 +11012,13 @@ BEGIN {RS=" "; FS="/|\n";} { if (lt_foo != "") { lt_freq[lt_foo]++; } if (lt_freq[lt_foo] == 1) { print lt_foo; } }'` - sys_lib_search_path_spec=`$ECHO $lt_search_path_spec` + # AWK program above erroneously prepends '/' to C:/dos/paths + # for these hosts. + case $host_os in + mingw* | cegcc*) lt_search_path_spec=`$ECHO "$lt_search_path_spec" |\ + $SED 's,/\([A-Za-z]:\),\1,g'` ;; + esac + sys_lib_search_path_spec=`$ECHO "$lt_search_path_spec" | $lt_NL2SP` else sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib" fi @@ -10258,7 +11044,7 @@ need_version=unknown case $host_os in aix3*) - version_type=linux + version_type=linux # correct to gnu/linux during the next big refactor library_names_spec='${libname}${release}${shared_ext}$versuffix $libname.a' shlibpath_var=LIBPATH @@ -10267,7 +11053,7 @@ aix3*) ;; aix[4-9]*) - version_type=linux + version_type=linux # correct to gnu/linux during the next big refactor need_lib_prefix=no need_version=no hardcode_into_libs=yes @@ -10320,7 +11106,7 @@ amigaos*) m68k) library_names_spec='$libname.ixlibrary $libname.a' # Create ${libname}_ixlibrary.a entries in /sys/libs. - finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`$ECHO "X$lib" | $Xsed -e '\''s%^.*/\([^/]*\)\.ixlibrary$%\1%'\''`; test $RM /sys/libs/${libname}_ixlibrary.a; $show "cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a"; cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a || exit 1; done' + finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`func_echo_all "$lib" | $SED '\''s%^.*/\([^/]*\)\.ixlibrary$%\1%'\''`; test $RM /sys/libs/${libname}_ixlibrary.a; $show "cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a"; cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a || exit 1; done' ;; esac ;; @@ -10332,7 +11118,7 @@ beos*) ;; bsdi[45]*) - version_type=linux + version_type=linux # correct to gnu/linux during the next big refactor need_version=no library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' soname_spec='${libname}${release}${shared_ext}$major' @@ -10351,8 +11137,9 @@ cygwin* | mingw* | pw32* | cegcc*) need_version=no need_lib_prefix=no - case $GCC,$host_os in - yes,cygwin* | yes,mingw* | yes,pw32* | yes,cegcc*) + case $GCC,$cc_basename in + yes,*) + # gcc library_names_spec='$libname.dll.a' # DLL is installed to $(libdir)/../bin by postinstall_cmds postinstall_cmds='base_file=`basename \${file}`~ @@ -10373,44 +11160,91 @@ cygwin* | mingw* | pw32* | cegcc*) cygwin*) # Cygwin DLLs use 'cyg' prefix rather than 'lib' soname_spec='`echo ${libname} | sed -e 's/^lib/cyg/'``echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}' - sys_lib_search_path_spec="/usr/lib /lib/w32api /lib /usr/local/lib" + + sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/lib/w32api" ;; mingw* | cegcc*) # MinGW DLLs use traditional 'lib' prefix soname_spec='${libname}`echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}' - sys_lib_search_path_spec=`$CC -print-search-dirs | $GREP "^libraries:" | $SED -e "s/^libraries://" -e "s,=/,/,g"` - if $ECHO "$sys_lib_search_path_spec" | $GREP ';[c-zC-Z]:/' >/dev/null; then - # It is most probably a Windows format PATH printed by - # mingw gcc, but we are running on Cygwin. Gcc prints its search - # path with ; separators, and with drive letters. We can handle the - # drive letters (cygwin fileutils understands them), so leave them, - # especially as we might pass files found there to a mingw objdump, - # which wouldn't understand a cygwinified path. Ahh. - sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'` - else - sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"` - fi ;; pw32*) # pw32 DLLs use 'pw' prefix rather than 'lib' library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}' ;; esac + dynamic_linker='Win32 ld.exe' ;; - *) - library_names_spec='${libname}`echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext} $libname.lib' - ;; - esac - dynamic_linker='Win32 ld.exe' - # FIXME: first we should search . and the directory the executable is in - shlibpath_var=PATH - ;; + *,cl*) + # Native MSVC + libname_spec='$name' + soname_spec='${libname}`echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}' + library_names_spec='${libname}.dll.lib' + + case $build_os in + mingw*) + sys_lib_search_path_spec= + lt_save_ifs=$IFS + IFS=';' + for lt_path in $LIB + do + IFS=$lt_save_ifs + # Let DOS variable expansion print the short 8.3 style file name. + lt_path=`cd "$lt_path" 2>/dev/null && cmd //C "for %i in (".") do @echo %~si"` + sys_lib_search_path_spec="$sys_lib_search_path_spec $lt_path" + done + IFS=$lt_save_ifs + # Convert to MSYS style. + sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | sed -e 's|\\\\|/|g' -e 's| \\([a-zA-Z]\\):| /\\1|g' -e 's|^ ||'` + ;; + cygwin*) + # Convert to unix form, then to dos form, then back to unix form + # but this time dos style (no spaces!) so that the unix form looks + # like /cygdrive/c/PROGRA~1:/cygdr... + sys_lib_search_path_spec=`cygpath --path --unix "$LIB"` + sys_lib_search_path_spec=`cygpath --path --dos "$sys_lib_search_path_spec" 2>/dev/null` + sys_lib_search_path_spec=`cygpath --path --unix "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"` + ;; + *) + sys_lib_search_path_spec="$LIB" + if $ECHO "$sys_lib_search_path_spec" | $GREP ';[c-zC-Z]:/' >/dev/null; then + # It is most probably a Windows format PATH. + sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'` + else + sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"` + fi + # FIXME: find the short name or the path components, as spaces are + # common. (e.g. "Program Files" -> "PROGRA~1") + ;; + esac -darwin* | rhapsody*) - dynamic_linker="$host_os dyld" - version_type=darwin - need_lib_prefix=no + # DLL is installed to $(libdir)/../bin by postinstall_cmds + postinstall_cmds='base_file=`basename \${file}`~ + dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\${base_file}'\''i; echo \$dlname'\''`~ + dldir=$destdir/`dirname \$dlpath`~ + test -d \$dldir || mkdir -p \$dldir~ + $install_prog $dir/$dlname \$dldir/$dlname' + postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~ + dlpath=$dir/\$dldll~ + $RM \$dlpath' + shlibpath_overrides_runpath=yes + dynamic_linker='Win32 link.exe' + ;; + + *) + # Assume MSVC wrapper + library_names_spec='${libname}`echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext} $libname.lib' + dynamic_linker='Win32 ld.exe' + ;; + esac + # FIXME: first we should search . and the directory the executable is in + shlibpath_var=PATH + ;; + +darwin* | rhapsody*) + dynamic_linker="$host_os dyld" + version_type=darwin + need_lib_prefix=no need_version=no library_names_spec='${libname}${release}${major}$shared_ext ${libname}$shared_ext' soname_spec='${libname}${release}${major}$shared_ext' @@ -10423,7 +11257,7 @@ darwin* | rhapsody*) ;; dgux*) - version_type=linux + version_type=linux # correct to gnu/linux during the next big refactor need_lib_prefix=no need_version=no library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname$shared_ext' @@ -10431,10 +11265,6 @@ dgux*) shlibpath_var=LD_LIBRARY_PATH ;; -freebsd1*) - dynamic_linker=no - ;; - freebsd* | dragonfly*) # DragonFly does not have aout. When/if they implement a new # versioning mechanism, adjust this. @@ -10442,7 +11272,7 @@ freebsd* | dragonfly*) objformat=`/usr/bin/objformat` else case $host_os in - freebsd[123]*) objformat=aout ;; + freebsd[23].*) objformat=aout ;; *) objformat=elf ;; esac fi @@ -10460,7 +11290,7 @@ freebsd* | dragonfly*) esac shlibpath_var=LD_LIBRARY_PATH case $host_os in - freebsd2*) + freebsd2.*) shlibpath_overrides_runpath=yes ;; freebsd3.[01]* | freebsdelf3.[01]*) @@ -10480,12 +11310,26 @@ freebsd* | dragonfly*) ;; gnu*) - version_type=linux + version_type=linux # correct to gnu/linux during the next big refactor need_lib_prefix=no need_version=no library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}${major} ${libname}${shared_ext}' soname_spec='${libname}${release}${shared_ext}$major' shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=no + hardcode_into_libs=yes + ;; + +haiku*) + version_type=linux # correct to gnu/linux during the next big refactor + need_lib_prefix=no + need_version=no + dynamic_linker="$host_os runtime_loader" + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}${major} ${libname}${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + shlibpath_var=LIBRARY_PATH + shlibpath_overrides_runpath=yes + sys_lib_dlsearch_path_spec='/boot/home/config/lib /boot/common/lib /boot/system/lib' hardcode_into_libs=yes ;; @@ -10531,12 +11375,14 @@ hpux9* | hpux10* | hpux11*) soname_spec='${libname}${release}${shared_ext}$major' ;; esac - # HP-UX runs *really* slowly unless shared libraries are mode 555. + # HP-UX runs *really* slowly unless shared libraries are mode 555, ... postinstall_cmds='chmod 555 $lib' + # or fails outright, so override atomically: + install_override_mode=555 ;; interix[3-9]*) - version_type=linux + version_type=linux # correct to gnu/linux during the next big refactor need_lib_prefix=no need_version=no library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}' @@ -10552,7 +11398,7 @@ irix5* | irix6* | nonstopux*) nonstopux*) version_type=nonstopux ;; *) if test "$lt_cv_prog_gnu_ld" = yes; then - version_type=linux + version_type=linux # correct to gnu/linux during the next big refactor else version_type=irix fi ;; @@ -10589,9 +11435,9 @@ linux*oldld* | linux*aout* | linux*coff*) dynamic_linker=no ;; -# This must be Linux ELF. +# This must be glibc/ELF. linux* | k*bsd*-gnu | kopensolaris*-gnu) - version_type=linux + version_type=linux # correct to gnu/linux during the next big refactor need_lib_prefix=no need_version=no library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' @@ -10599,12 +11445,17 @@ linux* | k*bsd*-gnu | kopensolaris*-gnu) finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir' shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=no + # Some binutils ld are patched to set DT_RUNPATH - save_LDFLAGS=$LDFLAGS - save_libdir=$libdir - eval "libdir=/foo; wl=\"$lt_prog_compiler_wl\"; \ - LDFLAGS=\"\$LDFLAGS $hardcode_libdir_flag_spec\"" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext + if ${lt_cv_shlibpath_overrides_runpath+:} false; then : + $as_echo_n "(cached) " >&6 +else + lt_cv_shlibpath_overrides_runpath=no + save_LDFLAGS=$LDFLAGS + save_libdir=$libdir + eval "libdir=/foo; wl=\"$lt_prog_compiler_wl\"; \ + LDFLAGS=\"\$LDFLAGS $hardcode_libdir_flag_spec\"" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int @@ -10617,13 +11468,17 @@ main () _ACEOF if ac_fn_c_try_link "$LINENO"; then : if ($OBJDUMP -p conftest$ac_exeext) 2>/dev/null | grep "RUNPATH.*$libdir" >/dev/null; then : - shlibpath_overrides_runpath=yes + lt_cv_shlibpath_overrides_runpath=yes fi fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext - LDFLAGS=$save_LDFLAGS - libdir=$save_libdir + LDFLAGS=$save_LDFLAGS + libdir=$save_libdir + +fi + + shlibpath_overrides_runpath=$lt_cv_shlibpath_overrides_runpath # This implies no fast_install, which is unacceptable. # Some rework will be needed to allow for fast_install @@ -10632,7 +11487,7 @@ rm -f core conftest.err conftest.$ac_objext \ # Append ld.so.conf contents to the search path if test -f /etc/ld.so.conf; then - lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \$2)); skip = 1; } { if (!skip) print \$0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;/^[ ]*hwcap[ ]/d;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;/^$/d' | tr '\n' ' '` + lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \$2)); skip = 1; } { if (!skip) print \$0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;/^[ ]*hwcap[ ]/d;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;s/"//g;/^$/d' | tr '\n' ' '` sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra" fi @@ -10676,7 +11531,7 @@ netbsd*) ;; newsos6) - version_type=linux + version_type=linux # correct to gnu/linux during the next big refactor library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=yes @@ -10745,7 +11600,7 @@ rdos*) ;; solaris*) - version_type=linux + version_type=linux # correct to gnu/linux during the next big refactor need_lib_prefix=no need_version=no library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' @@ -10770,7 +11625,7 @@ sunos4*) ;; sysv4 | sysv4.3*) - version_type=linux + version_type=linux # correct to gnu/linux during the next big refactor library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' soname_spec='${libname}${release}${shared_ext}$major' shlibpath_var=LD_LIBRARY_PATH @@ -10794,7 +11649,7 @@ sysv4 | sysv4.3*) sysv4*MP*) if test -d /usr/nec ;then - version_type=linux + version_type=linux # correct to gnu/linux during the next big refactor library_names_spec='$libname${shared_ext}.$versuffix $libname${shared_ext}.$major $libname${shared_ext}' soname_spec='$libname${shared_ext}.$major' shlibpath_var=LD_LIBRARY_PATH @@ -10825,7 +11680,7 @@ sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*) tpf*) # TPF is a cross-target only. Preferred cross-host = GNU/Linux. - version_type=linux + version_type=linux # correct to gnu/linux during the next big refactor need_lib_prefix=no need_version=no library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' @@ -10835,7 +11690,7 @@ tpf*) ;; uts4*) - version_type=linux + version_type=linux # correct to gnu/linux during the next big refactor library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' soname_spec='${libname}${release}${shared_ext}$major' shlibpath_var=LD_LIBRARY_PATH @@ -10941,6 +11796,11 @@ fi + + + + + @@ -11019,7 +11879,7 @@ else # if libdl is installed we need to link against it { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlopen in -ldl" >&5 $as_echo_n "checking for dlopen in -ldl... " >&6; } -if test "${ac_cv_lib_dl_dlopen+set}" = set; then : +if ${ac_cv_lib_dl_dlopen+:} false; then : $as_echo_n "(cached) " >&6 else ac_check_lib_save_LIBS=$LIBS @@ -11053,7 +11913,7 @@ LIBS=$ac_check_lib_save_LIBS fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dl_dlopen" >&5 $as_echo "$ac_cv_lib_dl_dlopen" >&6; } -if test "x$ac_cv_lib_dl_dlopen" = x""yes; then : +if test "x$ac_cv_lib_dl_dlopen" = xyes; then : lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl" else @@ -11067,12 +11927,12 @@ fi *) ac_fn_c_check_func "$LINENO" "shl_load" "ac_cv_func_shl_load" -if test "x$ac_cv_func_shl_load" = x""yes; then : +if test "x$ac_cv_func_shl_load" = xyes; then : lt_cv_dlopen="shl_load" else { $as_echo "$as_me:${as_lineno-$LINENO}: checking for shl_load in -ldld" >&5 $as_echo_n "checking for shl_load in -ldld... " >&6; } -if test "${ac_cv_lib_dld_shl_load+set}" = set; then : +if ${ac_cv_lib_dld_shl_load+:} false; then : $as_echo_n "(cached) " >&6 else ac_check_lib_save_LIBS=$LIBS @@ -11106,16 +11966,16 @@ LIBS=$ac_check_lib_save_LIBS fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dld_shl_load" >&5 $as_echo "$ac_cv_lib_dld_shl_load" >&6; } -if test "x$ac_cv_lib_dld_shl_load" = x""yes; then : +if test "x$ac_cv_lib_dld_shl_load" = xyes; then : lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-ldld" else ac_fn_c_check_func "$LINENO" "dlopen" "ac_cv_func_dlopen" -if test "x$ac_cv_func_dlopen" = x""yes; then : +if test "x$ac_cv_func_dlopen" = xyes; then : lt_cv_dlopen="dlopen" else { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlopen in -ldl" >&5 $as_echo_n "checking for dlopen in -ldl... " >&6; } -if test "${ac_cv_lib_dl_dlopen+set}" = set; then : +if ${ac_cv_lib_dl_dlopen+:} false; then : $as_echo_n "(cached) " >&6 else ac_check_lib_save_LIBS=$LIBS @@ -11149,12 +12009,12 @@ LIBS=$ac_check_lib_save_LIBS fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dl_dlopen" >&5 $as_echo "$ac_cv_lib_dl_dlopen" >&6; } -if test "x$ac_cv_lib_dl_dlopen" = x""yes; then : +if test "x$ac_cv_lib_dl_dlopen" = xyes; then : lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl" else { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlopen in -lsvld" >&5 $as_echo_n "checking for dlopen in -lsvld... " >&6; } -if test "${ac_cv_lib_svld_dlopen+set}" = set; then : +if ${ac_cv_lib_svld_dlopen+:} false; then : $as_echo_n "(cached) " >&6 else ac_check_lib_save_LIBS=$LIBS @@ -11188,12 +12048,12 @@ LIBS=$ac_check_lib_save_LIBS fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_svld_dlopen" >&5 $as_echo "$ac_cv_lib_svld_dlopen" >&6; } -if test "x$ac_cv_lib_svld_dlopen" = x""yes; then : +if test "x$ac_cv_lib_svld_dlopen" = xyes; then : lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-lsvld" else { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dld_link in -ldld" >&5 $as_echo_n "checking for dld_link in -ldld... " >&6; } -if test "${ac_cv_lib_dld_dld_link+set}" = set; then : +if ${ac_cv_lib_dld_dld_link+:} false; then : $as_echo_n "(cached) " >&6 else ac_check_lib_save_LIBS=$LIBS @@ -11227,7 +12087,7 @@ LIBS=$ac_check_lib_save_LIBS fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dld_dld_link" >&5 $as_echo "$ac_cv_lib_dld_dld_link" >&6; } -if test "x$ac_cv_lib_dld_dld_link" = x""yes; then : +if test "x$ac_cv_lib_dld_dld_link" = xyes; then : lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-ldld" fi @@ -11268,7 +12128,7 @@ fi { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether a program can dlopen itself" >&5 $as_echo_n "checking whether a program can dlopen itself... " >&6; } -if test "${lt_cv_dlopen_self+set}" = set; then : +if ${lt_cv_dlopen_self+:} false; then : $as_echo_n "(cached) " >&6 else if test "$cross_compiling" = yes; then : @@ -11277,7 +12137,7 @@ else lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 lt_status=$lt_dlunknown cat > conftest.$ac_ext <<_LT_EOF -#line 11280 "configure" +#line $LINENO "configure" #include "confdefs.h" #if HAVE_DLFCN_H @@ -11318,7 +12178,13 @@ else # endif #endif -void fnord() { int i=42;} +/* When -fvisbility=hidden is used, assume the code has been annotated + correspondingly for the symbols needed. */ +#if defined(__GNUC__) && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3)) +int fnord () __attribute__((visibility("default"))); +#endif + +int fnord () { return 42; } int main () { void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW); @@ -11327,7 +12193,11 @@ int main () if (self) { if (dlsym (self,"fnord")) status = $lt_dlno_uscore; - else if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore; + else + { + if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore; + else puts (dlerror ()); + } /* dlclose (self); */ } else @@ -11364,7 +12234,7 @@ $as_echo "$lt_cv_dlopen_self" >&6; } wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $lt_prog_compiler_static\" { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether a statically linked program can dlopen itself" >&5 $as_echo_n "checking whether a statically linked program can dlopen itself... " >&6; } -if test "${lt_cv_dlopen_self_static+set}" = set; then : +if ${lt_cv_dlopen_self_static+:} false; then : $as_echo_n "(cached) " >&6 else if test "$cross_compiling" = yes; then : @@ -11373,7 +12243,7 @@ else lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 lt_status=$lt_dlunknown cat > conftest.$ac_ext <<_LT_EOF -#line 11376 "configure" +#line $LINENO "configure" #include "confdefs.h" #if HAVE_DLFCN_H @@ -11414,7 +12284,13 @@ else # endif #endif -void fnord() { int i=42;} +/* When -fvisbility=hidden is used, assume the code has been annotated + correspondingly for the symbols needed. */ +#if defined(__GNUC__) && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3)) +int fnord () __attribute__((visibility("default"))); +#endif + +int fnord () { return 42; } int main () { void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW); @@ -11423,7 +12299,11 @@ int main () if (self) { if (dlsym (self,"fnord")) status = $lt_dlno_uscore; - else if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore; + else + { + if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore; + else puts (dlerror ()); + } /* dlclose (self); */ } else @@ -11592,6 +12472,8 @@ CC="$lt_save_CC" + + ac_config_commands="$ac_config_commands libtool" @@ -11717,7 +12599,7 @@ rm -f conf$$.file set dummy msgfmt; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_path_MSGFMT+set}" = set; then : +if ${ac_cv_path_MSGFMT+:} false; then : $as_echo_n "(cached) " >&6 else case "$MSGFMT" in @@ -11758,7 +12640,7 @@ fi set dummy gmsgfmt; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_path_GMSGFMT+set}" = set; then : +if ${ac_cv_path_GMSGFMT+:} false; then : $as_echo_n "(cached) " >&6 else case $GMSGFMT in @@ -11840,7 +12722,7 @@ rm -f conf$$.file set dummy xgettext; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_path_XGETTEXT+set}" = set; then : +if ${ac_cv_path_XGETTEXT+:} false; then : $as_echo_n "(cached) " >&6 else case "$XGETTEXT" in @@ -11918,7 +12800,7 @@ rm -f conf$$.file set dummy msgmerge; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_path_MSGMERGE+set}" = set; then : +if ${ac_cv_path_MSGMERGE+:} false; then : $as_echo_n "(cached) " >&6 else case "$MSGMERGE" in @@ -12040,7 +12922,7 @@ else { $as_echo "$as_me:${as_lineno-$LINENO}: checking for non-GNU ld" >&5 $as_echo_n "checking for non-GNU ld... " >&6; } fi -if test "${acl_cv_path_LD+set}" = set; then : +if ${acl_cv_path_LD+:} false; then : $as_echo_n "(cached) " >&6 else if test -z "$LD"; then @@ -12077,7 +12959,7 @@ fi test -z "$LD" && as_fn_error $? "no acceptable ld found in \$PATH" "$LINENO" 5 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if the linker ($LD) is GNU ld" >&5 $as_echo_n "checking if the linker ($LD) is GNU ld... " >&6; } -if test "${acl_cv_prog_gnu_ld+set}" = set; then : +if ${acl_cv_prog_gnu_ld+:} false; then : $as_echo_n "(cached) " >&6 else # I'd rather use --version here, but apparently some GNU ld's only accept -v. @@ -12097,7 +12979,7 @@ with_gnu_ld=$acl_cv_prog_gnu_ld { $as_echo "$as_me:${as_lineno-$LINENO}: checking for shared library run path origin" >&5 $as_echo_n "checking for shared library run path origin... " >&6; } -if test "${acl_cv_rpath+set}" = set; then : +if ${acl_cv_rpath+:} false; then : $as_echo_n "(cached) " >&6 else @@ -12611,7 +13493,7 @@ fi { $as_echo "$as_me:${as_lineno-$LINENO}: checking for CFPreferencesCopyAppValue" >&5 $as_echo_n "checking for CFPreferencesCopyAppValue... " >&6; } -if test "${gt_cv_func_CFPreferencesCopyAppValue+set}" = set; then : +if ${gt_cv_func_CFPreferencesCopyAppValue+:} false; then : $as_echo_n "(cached) " >&6 else gt_save_LIBS="$LIBS" @@ -12645,7 +13527,7 @@ $as_echo "#define HAVE_CFPREFERENCESCOPYAPPVALUE 1" >>confdefs.h fi { $as_echo "$as_me:${as_lineno-$LINENO}: checking for CFLocaleCopyCurrent" >&5 $as_echo_n "checking for CFLocaleCopyCurrent... " >&6; } -if test "${gt_cv_func_CFLocaleCopyCurrent+set}" = set; then : +if ${gt_cv_func_CFLocaleCopyCurrent+:} false; then : $as_echo_n "(cached) " >&6 else gt_save_LIBS="$LIBS" @@ -12721,7 +13603,7 @@ typedef int array [2 * (__GNU_GETTEXT_SUPPORTED_REVISION(0) >= 1) - 1]; { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GNU gettext in libc" >&5 $as_echo_n "checking for GNU gettext in libc... " >&6; } -if eval "test \"\${$gt_func_gnugettext_libc+set}\"" = set; then : +if eval \${$gt_func_gnugettext_libc+:} false; then : $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext @@ -12784,7 +13666,7 @@ $as_echo "$ac_res" >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: checking for iconv" >&5 $as_echo_n "checking for iconv... " >&6; } -if test "${am_cv_func_iconv+set}" = set; then : +if ${am_cv_func_iconv+:} false; then : $as_echo_n "(cached) " >&6 else @@ -12841,7 +13723,7 @@ $as_echo "$am_cv_func_iconv" >&6; } if test "$am_cv_func_iconv" = yes; then { $as_echo "$as_me:${as_lineno-$LINENO}: checking for working iconv" >&5 $as_echo_n "checking for working iconv... " >&6; } -if test "${am_cv_func_iconv_works+set}" = set; then : +if ${am_cv_func_iconv_works+:} false; then : $as_echo_n "(cached) " >&6 else @@ -13392,7 +14274,7 @@ fi { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GNU gettext in libintl" >&5 $as_echo_n "checking for GNU gettext in libintl... " >&6; } -if eval "test \"\${$gt_func_gnugettext_libintl+set}\"" = set; then : +if eval \${$gt_func_gnugettext_libintl+:} false; then : $as_echo_n "(cached) " >&6 else gt_save_CPPFLAGS="$CPPFLAGS" @@ -13569,7 +14451,7 @@ $as_echo "#define HAVE_DCGETTEXT 1" >>confdefs.h if test "$USE_NLS" = "yes"; then - GETTEXT_PACKAGE=gstreamer-$GST_MAJORMINOR + GETTEXT_PACKAGE=gstreamer-$GST_API_VERSION else GETTEXT_PACKAGE=NULL fi @@ -13617,6 +14499,21 @@ _ACEOF + # Check whether --enable-fatal-warnings was given. +if test "${enable_fatal_warnings+set}" = set; then : + enableval=$enable_fatal_warnings; + case "${enableval}" in + yes) FATAL_WARNINGS=yes ;; + no) FATAL_WARNINGS=no ;; + *) as_fn_error $? "bad value ${enableval} for --disable-fatal-warnings" "$LINENO" 5 ;; + esac + +else + FATAL_WARNINGS=$GST_GIT +fi + + + # Check whether --enable-gst-debug was given. @@ -13625,7 +14522,7 @@ if test "${enable_gst_debug+set}" = set; then : case "${enableval}" in yes) GST_DISABLE_GST_DEBUG=no ;; no) GST_DISABLE_GST_DEBUG=yes ;; - *) as_fn_error $? "bad value ${enableval} for --enable-gst-debug" "$LINENO" 5 ;; + *) as_fn_error $? "bad value ${enableval} for --enable-gst-debug" "$LINENO" 5 ;; esac else @@ -13659,7 +14556,7 @@ if test "${enable_parse+set}" = set; then : case "${enableval}" in yes) GST_DISABLE_PARSE=no ;; no) GST_DISABLE_PARSE=yes ;; - *) as_fn_error $? "bad value ${enableval} for --enable-parse" "$LINENO" 5 ;; + *) as_fn_error $? "bad value ${enableval} for --enable-parse" "$LINENO" 5 ;; esac else @@ -13698,7 +14595,7 @@ if test "${enable_option_parsing+set}" = set; then : case "${enableval}" in yes) GST_DISABLE_OPTION_PARSING=no ;; no) GST_DISABLE_OPTION_PARSING=yes ;; - *) as_fn_error $? "bad value ${enableval} for --enable-option-parsing" "$LINENO" 5 ;; + *) as_fn_error $? "bad value ${enableval} for --enable-option-parsing" "$LINENO" 5 ;; esac else @@ -13737,7 +14634,7 @@ if test "${enable_trace+set}" = set; then : case "${enableval}" in yes) GST_DISABLE_TRACE=no ;; no) GST_DISABLE_TRACE=yes ;; - *) as_fn_error $? "bad value ${enableval} for --enable-trace" "$LINENO" 5 ;; + *) as_fn_error $? "bad value ${enableval} for --enable-trace" "$LINENO" 5 ;; esac else @@ -13771,7 +14668,7 @@ if test "${enable_alloc_trace+set}" = set; then : case "${enableval}" in yes) GST_DISABLE_ALLOC_TRACE=no ;; no) GST_DISABLE_ALLOC_TRACE=yes ;; - *) as_fn_error $? "bad value ${enableval} for --enable-alloc-trace" "$LINENO" 5 ;; + *) as_fn_error $? "bad value ${enableval} for --enable-alloc-trace" "$LINENO" 5 ;; esac else @@ -13805,7 +14702,7 @@ if test "${enable_registry+set}" = set; then : case "${enableval}" in yes) GST_DISABLE_REGISTRY=no ;; no) GST_DISABLE_REGISTRY=yes ;; - *) as_fn_error $? "bad value ${enableval} for --enable-registry" "$LINENO" 5 ;; + *) as_fn_error $? "bad value ${enableval} for --enable-registry" "$LINENO" 5 ;; esac else @@ -13840,47 +14737,13 @@ fi - # Check whether --enable-net was given. -if test "${enable_net+set}" = set; then : - enableval=$enable_net; - case "${enableval}" in - yes) GST_DISABLE_NET=no ;; - no) GST_DISABLE_NET=yes ;; - *) as_fn_error $? "bad value ${enableval} for --enable-net" "$LINENO" 5 ;; - esac - -else - GST_DISABLE_NET=no -fi - - if test x$GST_DISABLE_NET = xyes; then - { $as_echo "$as_me:${as_lineno-$LINENO}: disabled subsystem network distribution" >&5 -$as_echo "$as_me: disabled subsystem network distribution" >&6;} - GST_DISABLE_NET_DEFINE="#define GST_DISABLE_NET 1" - else - GST_DISABLE_NET_DEFINE="/* #undef GST_DISABLE_NET */" - fi - - - - if test "x$GST_DISABLE_NET" = "xyes"; then - GST_DISABLE_NET_TRUE= - GST_DISABLE_NET_FALSE='#' -else - GST_DISABLE_NET_TRUE='#' - GST_DISABLE_NET_FALSE= -fi - - - - # Check whether --enable-plugin was given. if test "${enable_plugin+set}" = set; then : enableval=$enable_plugin; case "${enableval}" in yes) GST_DISABLE_PLUGIN=no ;; no) GST_DISABLE_PLUGIN=yes ;; - *) as_fn_error $? "bad value ${enableval} for --enable-plugin" "$LINENO" 5 ;; + *) as_fn_error $? "bad value ${enableval} for --enable-plugin" "$LINENO" 5 ;; esac else @@ -13913,7 +14776,7 @@ if test "${enable_debug+set}" = set; then : case "${enableval}" in yes) USE_DEBUG=yes ;; no) USE_DEBUG=no ;; - *) as_fn_error $? "bad value ${enableval} for --enable-debug" "$LINENO" 5 ;; + *) as_fn_error $? "bad value ${enableval} for --enable-debug" "$LINENO" 5 ;; esac else @@ -13927,7 +14790,7 @@ if test "${enable_profiling+set}" = set; then : case "${enableval}" in yes) USE_PROFILING=yes ;; no) USE_PROFILING=no ;; - *) as_fn_error $? "bad value ${enableval} for --enable-profiling" "$LINENO" 5 ;; + *) as_fn_error $? "bad value ${enableval} for --enable-profiling" "$LINENO" 5 ;; esac else @@ -13942,7 +14805,7 @@ if test "x$ac_cv_env_PKG_CONFIG_set" != "xset"; then set dummy ${ac_tool_prefix}pkg-config; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_path_PKG_CONFIG+set}" = set; then : +if ${ac_cv_path_PKG_CONFIG+:} false; then : $as_echo_n "(cached) " >&6 else case $PKG_CONFIG in @@ -13985,7 +14848,7 @@ if test -z "$ac_cv_path_PKG_CONFIG"; then set dummy pkg-config; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_path_ac_pt_PKG_CONFIG+set}" = set; then : +if ${ac_cv_path_ac_pt_PKG_CONFIG+:} false; then : $as_echo_n "(cached) " >&6 else case $ac_pt_PKG_CONFIG in @@ -14057,7 +14920,7 @@ if test "${enable_valgrind+set}" = set; then : case "${enableval}" in yes) USE_VALGRIND="$USE_DEBUG" ;; no) USE_VALGRIND=no ;; - *) as_fn_error $? "bad value ${enableval} for --enable-valgrind" "$LINENO" 5 ;; + *) as_fn_error $? "bad value ${enableval} for --enable-valgrind" "$LINENO" 5 ;; esac else @@ -14275,7 +15138,7 @@ if test "${enable_examples+set}" = set; then : case "${enableval}" in yes) BUILD_EXAMPLES=yes ;; no) BUILD_EXAMPLES=no ;; - *) as_fn_error $? "bad value ${enableval} for --disable-examples" "$LINENO" 5 ;; + *) as_fn_error $? "bad value ${enableval} for --disable-examples" "$LINENO" 5 ;; esac else @@ -14309,8 +15172,8 @@ fi if test "${with_package_name+set}" = set; then : withval=$with_package_name; case "${withval}" in - yes) as_fn_error $? "bad value ${withval} for --with-package-name" "$LINENO" 5 ;; - no) as_fn_error $? "bad value ${withval} for --with-package-name" "$LINENO" 5 ;; + yes) as_fn_error $? "bad value ${withval} for --with-package-name" "$LINENO" 5 ;; + no) as_fn_error $? "bad value ${withval} for --with-package-name" "$LINENO" 5 ;; *) GST_PACKAGE_NAME="${withval}" ;; esac @@ -14352,8 +15215,8 @@ _ACEOF if test "${with_package_origin+set}" = set; then : withval=$with_package_origin; case "${withval}" in - yes) as_fn_error $? "bad value ${withval} for --with-package-origin" "$LINENO" 5 ;; - no) as_fn_error $? "bad value ${withval} for --with-package-origin" "$LINENO" 5 ;; + yes) as_fn_error $? "bad value ${withval} for --with-package-origin" "$LINENO" 5 ;; + no) as_fn_error $? "bad value ${withval} for --with-package-origin" "$LINENO" 5 ;; *) GST_PACKAGE_ORIGIN="${withval}" ;; esac @@ -14469,7 +15332,7 @@ if test "${enable_tests+set}" = set; then : case "${enableval}" in yes) BUILD_TESTS=yes ;; no) BUILD_TESTS=no ;; - *) as_fn_error $? "bad value ${enableval} for --disable-tests" "$LINENO" 5 ;; + *) as_fn_error $? "bad value ${enableval} for --disable-tests" "$LINENO" 5 ;; esac else @@ -14490,7 +15353,7 @@ if test "${enable_failing_tests+set}" = set; then : case "${enableval}" in yes) BUILD_FAILING_TESTS=yes ;; no) BUILD_FAILING_TESTS=no ;; - *) as_fn_error $? "bad value ${enableval} for --disable-failing-tests" "$LINENO" 5 ;; + *) as_fn_error $? "bad value ${enableval} for --disable-failing-tests" "$LINENO" 5 ;; esac else @@ -14518,7 +15381,7 @@ if test "${enable_poisoning+set}" = set; then : case "${enableval}" in yes) USE_POISONING=yes ;; no) USE_POISONING=no ;; - *) as_fn_error $? "bad value ${enableval} for --enable-poisoning" "$LINENO" 5 ;; + *) as_fn_error $? "bad value ${enableval} for --enable-poisoning" "$LINENO" 5 ;; esac else @@ -14539,14 +15402,14 @@ fi case $host_os in solaris*) ac_fn_c_check_decl "$LINENO" "__i386" "ac_cv_have_decl___i386" "$ac_includes_default" -if test "x$ac_cv_have_decl___i386" = x""yes; then : +if test "x$ac_cv_have_decl___i386" = xyes; then : I386_ABI="yes" else I386_ABI="no" fi ac_fn_c_check_decl "$LINENO" "__amd64" "ac_cv_have_decl___amd64" "$ac_includes_default" -if test "x$ac_cv_have_decl___amd64" = x""yes; then : +if test "x$ac_cv_have_decl___amd64" = xyes; then : AMD64_ABI="yes" else AMD64_ABI="no" @@ -14651,7 +15514,7 @@ $as_echo "#define HAVE_CPU_CRISV32 1" >>confdefs.h { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether byte ordering is bigendian" >&5 $as_echo_n "checking whether byte ordering is bigendian... " >&6; } -if test "${ac_cv_c_bigendian+set}" = set; then : +if ${ac_cv_c_bigendian+:} false; then : $as_echo_n "(cached) " >&6 else ac_cv_c_bigendian=unknown @@ -14870,7 +15733,7 @@ $as_echo "#define AC_APPLE_UNIVERSAL_BUILD 1" >>confdefs.h ;; #( *) as_fn_error $? "unknown endianness - presetting ac_cv_c_bigendian=no (or yes) will help" "$LINENO" 5 ;; + presetting ac_cv_c_bigendian=no (or yes) will help" "$LINENO" 5 ;; esac @@ -15018,7 +15881,7 @@ $as_echo_n "checking if unaligned memory access works correctly... " >&6; } { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} as_fn_error $? "cannot run test program while cross compiling -See \`config.log' for more details" "$LINENO" 5 ; } +See \`config.log' for more details" "$LINENO" 5; } else cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ @@ -15169,7 +16032,7 @@ if test "$enable_largefile" != no; then { $as_echo "$as_me:${as_lineno-$LINENO}: checking for special C compiler options needed for large files" >&5 $as_echo_n "checking for special C compiler options needed for large files... " >&6; } -if test "${ac_cv_sys_largefile_CC+set}" = set; then : +if ${ac_cv_sys_largefile_CC+:} false; then : $as_echo_n "(cached) " >&6 else ac_cv_sys_largefile_CC=no @@ -15220,7 +16083,7 @@ $as_echo "$ac_cv_sys_largefile_CC" >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: checking for _FILE_OFFSET_BITS value needed for large files" >&5 $as_echo_n "checking for _FILE_OFFSET_BITS value needed for large files... " >&6; } -if test "${ac_cv_sys_file_offset_bits+set}" = set; then : +if ${ac_cv_sys_file_offset_bits+:} false; then : $as_echo_n "(cached) " >&6 else while :; do @@ -15289,7 +16152,7 @@ rm -rf conftest* if test $ac_cv_sys_file_offset_bits = unknown; then { $as_echo "$as_me:${as_lineno-$LINENO}: checking for _LARGE_FILES value needed for large files" >&5 $as_echo_n "checking for _LARGE_FILES value needed for large files... " >&6; } -if test "${ac_cv_sys_large_files+set}" = set; then : +if ${ac_cv_sys_large_files+:} false; then : $as_echo_n "(cached) " >&6 else while :; do @@ -15370,7 +16233,7 @@ if test -n "$ac_tool_prefix"; then set dummy ${ac_tool_prefix}gcc; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_prog_CC+set}" = set; then : +if ${ac_cv_prog_CC+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$CC"; then @@ -15410,7 +16273,7 @@ if test -z "$ac_cv_prog_CC"; then set dummy gcc; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_prog_ac_ct_CC+set}" = set; then : +if ${ac_cv_prog_ac_ct_CC+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$ac_ct_CC"; then @@ -15463,7 +16326,7 @@ if test -z "$CC"; then set dummy ${ac_tool_prefix}cc; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_prog_CC+set}" = set; then : +if ${ac_cv_prog_CC+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$CC"; then @@ -15503,7 +16366,7 @@ if test -z "$CC"; then set dummy cc; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_prog_CC+set}" = set; then : +if ${ac_cv_prog_CC+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$CC"; then @@ -15562,7 +16425,7 @@ if test -z "$CC"; then set dummy $ac_tool_prefix$ac_prog; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_prog_CC+set}" = set; then : +if ${ac_cv_prog_CC+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$CC"; then @@ -15606,7 +16469,7 @@ do set dummy $ac_prog; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_prog_ac_ct_CC+set}" = set; then : +if ${ac_cv_prog_ac_ct_CC+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$ac_ct_CC"; then @@ -15661,7 +16524,7 @@ fi test -z "$CC" && { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} as_fn_error $? "no acceptable C compiler found in \$PATH -See \`config.log' for more details" "$LINENO" 5 ; } +See \`config.log' for more details" "$LINENO" 5; } # Provide some information about the compiler. $as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler version" >&5 @@ -15690,7 +16553,7 @@ done { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are using the GNU C compiler" >&5 $as_echo_n "checking whether we are using the GNU C compiler... " >&6; } -if test "${ac_cv_c_compiler_gnu+set}" = set; then : +if ${ac_cv_c_compiler_gnu+:} false; then : $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext @@ -15727,7 +16590,7 @@ ac_test_CFLAGS=${CFLAGS+set} ac_save_CFLAGS=$CFLAGS { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC accepts -g" >&5 $as_echo_n "checking whether $CC accepts -g... " >&6; } -if test "${ac_cv_prog_cc_g+set}" = set; then : +if ${ac_cv_prog_cc_g+:} false; then : $as_echo_n "(cached) " >&6 else ac_save_c_werror_flag=$ac_c_werror_flag @@ -15805,7 +16668,7 @@ else fi { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $CC option to accept ISO C89" >&5 $as_echo_n "checking for $CC option to accept ISO C89... " >&6; } -if test "${ac_cv_prog_cc_c89+set}" = set; then : +if ${ac_cv_prog_cc_c89+:} false; then : $as_echo_n "(cached) " >&6 else ac_cv_prog_cc_c89=no @@ -15904,7 +16767,7 @@ depcc="$CC" am_compiler_list= { $as_echo "$as_me:${as_lineno-$LINENO}: checking dependency style of $depcc" >&5 $as_echo_n "checking dependency style of $depcc... " >&6; } -if test "${am_cv_CC_dependencies_compiler_type+set}" = set; then : +if ${am_cv_CC_dependencies_compiler_type+:} false; then : $as_echo_n "(cached) " >&6 else if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then @@ -15913,6 +16776,7 @@ else # instance it was reported that on HP-UX the gcc test will end up # making a dummy file named `D' -- because `-MD' means `put the output # in D'. + rm -rf conftest.dir mkdir conftest.dir # Copy depcomp to subdir because otherwise we won't find it if we're # using a relative directory. @@ -15972,7 +16836,7 @@ else break fi ;; - msvisualcpp | msvcmsys) + msvc7 | msvc7msys | msvisualcpp | msvcmsys) # This compiler won't grok `-c -o', but also, the minuso test has # not run yet. These depmodes are late enough in the game, and # so weak that their functioning should not be impacted. @@ -16033,7 +16897,7 @@ fi *) : { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $CC option to accept ISO C99" >&5 $as_echo_n "checking for $CC option to accept ISO C99... " >&6; } -if test "${ac_cv_prog_cc_c99+set}" = set; then : +if ${ac_cv_prog_cc_c99+:} false; then : $as_echo_n "(cached) " >&6 else ac_cv_prog_cc_c99=no @@ -16208,7 +17072,7 @@ if test "x$ac_cv_prog_cc_c99" != xno; then : else { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $CC option to accept ISO C89" >&5 $as_echo_n "checking for $CC option to accept ISO C89... " >&6; } -if test "${ac_cv_prog_cc_c89+set}" = set; then : +if ${ac_cv_prog_cc_c89+:} false; then : $as_echo_n "(cached) " >&6 else ac_cv_prog_cc_c89=no @@ -16304,7 +17168,7 @@ fi esac { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $CC option to accept ISO Standard C" >&5 $as_echo_n "checking for $CC option to accept ISO Standard C... " >&6; } - if test "${ac_cv_prog_cc_stdc+set}" = set; then : + if ${ac_cv_prog_cc_stdc+:} false; then : $as_echo_n "(cached) " >&6 fi @@ -16330,7 +17194,7 @@ $as_echo_n "checking whether cc understands -c and -o together... " >&6; } fi set dummy $CC; ac_cc=`$as_echo "$2" | sed 's/[^a-zA-Z0-9_]/_/g;s/^[0-9]/_/'` -if eval "test \"\${ac_cv_prog_cc_${ac_cc}_c_o+set}\"" = set; then : +if eval \${ac_cv_prog_cc_${ac_cc}_c_o+:} false; then : $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext @@ -16416,433 +17280,50 @@ $as_echo "$ac_try_echo"; } >&5 fi fi else - eval ac_cv_prog_cc_${ac_cc}_c_o=no -fi -rm -f core conftest* - -fi -if eval test \$ac_cv_prog_cc_${ac_cc}_c_o = yes; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 -$as_echo "yes" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } - -$as_echo "#define NO_MINUS_C_MINUS_O 1" >>confdefs.h - -fi - -# FIXME: we rely on the cache variable name because -# there is no other way. -set dummy $CC -am_cc=`echo $2 | sed 's/[^a-zA-Z0-9_]/_/g;s/^[0-9]/_/'` -eval am_t=\$ac_cv_prog_cc_${am_cc}_c_o -if test "$am_t" != yes; then - # Losing compiler, so override with the script. - # FIXME: It is wrong to rewrite CC. - # But if we don't then we get into trouble of one sort or another. - # A longer-term fix would be to have automake use am__CC in this case, - # and then we could set am__CC="\$(top_srcdir)/compile \$(CC)" - CC="$am_aux_dir/compile $CC" -fi - - - -# By default we simply use the C compiler to build assembly code. - -test "${CCAS+set}" = set || CCAS=$CC -test "${CCASFLAGS+set}" = set || CCASFLAGS=$CFLAGS - - - -depcc="$CCAS" am_compiler_list= - -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking dependency style of $depcc" >&5 -$as_echo_n "checking dependency style of $depcc... " >&6; } -if test "${am_cv_CCAS_dependencies_compiler_type+set}" = set; then : - $as_echo_n "(cached) " >&6 -else - if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then - # We make a subdir and do the tests there. Otherwise we can end up - # making bogus files that we don't know about and never remove. For - # instance it was reported that on HP-UX the gcc test will end up - # making a dummy file named `D' -- because `-MD' means `put the output - # in D'. - mkdir conftest.dir - # Copy depcomp to subdir because otherwise we won't find it if we're - # using a relative directory. - cp "$am_depcomp" conftest.dir - cd conftest.dir - # We will build objects and dependencies in a subdirectory because - # it helps to detect inapplicable dependency modes. For instance - # both Tru64's cc and ICC support -MD to output dependencies as a - # side effect of compilation, but ICC will put the dependencies in - # the current directory while Tru64 will put them in the object - # directory. - mkdir sub - - am_cv_CCAS_dependencies_compiler_type=none - if test "$am_compiler_list" = ""; then - am_compiler_list=`sed -n 's/^#*\([a-zA-Z0-9]*\))$/\1/p' < ./depcomp` - fi - am__universal=false - - - for depmode in $am_compiler_list; do - # Setup a source with many dependencies, because some compilers - # like to wrap large dependency lists on column 80 (with \), and - # we should not choose a depcomp mode which is confused by this. - # - # We need to recreate these files for each test, as the compiler may - # overwrite some of them when testing with obscure command lines. - # This happens at least with the AIX C compiler. - : > sub/conftest.c - for i in 1 2 3 4 5 6; do - echo '#include "conftst'$i'.h"' >> sub/conftest.c - # Using `: > sub/conftst$i.h' creates only sub/conftst1.h with - # Solaris 8's {/usr,}/bin/sh. - touch sub/conftst$i.h - done - echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf - - # We check with `-c' and `-o' for the sake of the "dashmstdout" - # mode. It turns out that the SunPro C++ compiler does not properly - # handle `-M -o', and we need to detect this. Also, some Intel - # versions had trouble with output in subdirs - am__obj=sub/conftest.${OBJEXT-o} - am__minus_obj="-o $am__obj" - case $depmode in - gcc) - # This depmode causes a compiler race in universal mode. - test "$am__universal" = false || continue - ;; - nosideeffect) - # after this tag, mechanisms are not by side-effect, so they'll - # only be used when explicitly requested - if test "x$enable_dependency_tracking" = xyes; then - continue - else - break - fi - ;; - msvisualcpp | msvcmsys) - # This compiler won't grok `-c -o', but also, the minuso test has - # not run yet. These depmodes are late enough in the game, and - # so weak that their functioning should not be impacted. - am__obj=conftest.${OBJEXT-o} - am__minus_obj= - ;; - none) break ;; - esac - if depmode=$depmode \ - source=sub/conftest.c object=$am__obj \ - depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \ - $SHELL ./depcomp $depcc -c $am__minus_obj sub/conftest.c \ - >/dev/null 2>conftest.err && - grep sub/conftst1.h sub/conftest.Po > /dev/null 2>&1 && - grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 && - grep $am__obj sub/conftest.Po > /dev/null 2>&1 && - ${MAKE-make} -s -f confmf > /dev/null 2>&1; then - # icc doesn't choke on unknown options, it will just issue warnings - # or remarks (even with -Werror). So we grep stderr for any message - # that says an option was ignored or not supported. - # When given -MP, icc 7.0 and 7.1 complain thusly: - # icc: Command line warning: ignoring option '-M'; no argument required - # The diagnosis changed in icc 8.0: - # icc: Command line remark: option '-MP' not supported - if (grep 'ignoring option' conftest.err || - grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else - am_cv_CCAS_dependencies_compiler_type=$depmode - break - fi - fi - done - - cd .. - rm -rf conftest.dir -else - am_cv_CCAS_dependencies_compiler_type=none -fi - -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_CCAS_dependencies_compiler_type" >&5 -$as_echo "$am_cv_CCAS_dependencies_compiler_type" >&6; } -CCASDEPMODE=depmode=$am_cv_CCAS_dependencies_compiler_type - - if - test "x$enable_dependency_tracking" != xno \ - && test "$am_cv_CCAS_dependencies_compiler_type" = gcc3; then - am__fastdepCCAS_TRUE= - am__fastdepCCAS_FALSE='#' -else - am__fastdepCCAS_TRUE='#' - am__fastdepCCAS_FALSE= -fi - - - -ac_ext=cpp -ac_cpp='$CXXCPP $CPPFLAGS' -ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5' -ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_cxx_compiler_gnu -if test -z "$CXX"; then - if test -n "$CCC"; then - CXX=$CCC - else - if test -n "$ac_tool_prefix"; then - for ac_prog in g++ c++ gpp aCC CC cxx cc++ cl.exe FCC KCC RCC xlC_r xlC - do - # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args. -set dummy $ac_tool_prefix$ac_prog; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_prog_CXX+set}" = set; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$CXX"; then - ac_cv_prog_CXX="$CXX" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then - ac_cv_prog_CXX="$ac_tool_prefix$ac_prog" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -CXX=$ac_cv_prog_CXX -if test -n "$CXX"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CXX" >&5 -$as_echo "$CXX" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - - test -n "$CXX" && break - done -fi -if test -z "$CXX"; then - ac_ct_CXX=$CXX - for ac_prog in g++ c++ gpp aCC CC cxx cc++ cl.exe FCC KCC RCC xlC_r xlC -do - # Extract the first word of "$ac_prog", so it can be a program name with args. -set dummy $ac_prog; ac_word=$2 -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 -$as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_prog_ac_ct_CXX+set}" = set; then : - $as_echo_n "(cached) " >&6 -else - if test -n "$ac_ct_CXX"; then - ac_cv_prog_ac_ct_CXX="$ac_ct_CXX" # Let the user override the test. -else -as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -for as_dir in $PATH -do - IFS=$as_save_IFS - test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do - if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then - ac_cv_prog_ac_ct_CXX="$ac_prog" - $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 - break 2 - fi -done - done -IFS=$as_save_IFS - -fi -fi -ac_ct_CXX=$ac_cv_prog_ac_ct_CXX -if test -n "$ac_ct_CXX"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CXX" >&5 -$as_echo "$ac_ct_CXX" >&6; } -else - { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 -$as_echo "no" >&6; } -fi - - - test -n "$ac_ct_CXX" && break -done - - if test "x$ac_ct_CXX" = x; then - CXX="g++" - else - case $cross_compiling:$ac_tool_warned in -yes:) -{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 -$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} -ac_tool_warned=yes ;; -esac - CXX=$ac_ct_CXX - fi -fi - - fi -fi -# Provide some information about the compiler. -$as_echo "$as_me:${as_lineno-$LINENO}: checking for C++ compiler version" >&5 -set X $ac_compile -ac_compiler=$2 -for ac_option in --version -v -V -qversion; do - { { ac_try="$ac_compiler $ac_option >&5" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" -$as_echo "$ac_try_echo"; } >&5 - (eval "$ac_compiler $ac_option >&5") 2>conftest.err - ac_status=$? - if test -s conftest.err; then - sed '10a\ -... rest of stderr output deleted ... - 10q' conftest.err >conftest.er1 - cat conftest.er1 >&5 - fi - rm -f conftest.er1 conftest.err - $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; } -done - -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are using the GNU C++ compiler" >&5 -$as_echo_n "checking whether we are using the GNU C++ compiler... " >&6; } -if test "${ac_cv_cxx_compiler_gnu+set}" = set; then : - $as_echo_n "(cached) " >&6 -else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -int -main () -{ -#ifndef __GNUC__ - choke me -#endif - - ; - return 0; -} -_ACEOF -if ac_fn_cxx_try_compile "$LINENO"; then : - ac_compiler_gnu=yes -else - ac_compiler_gnu=no + eval ac_cv_prog_cc_${ac_cc}_c_o=no fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -ac_cv_cxx_compiler_gnu=$ac_compiler_gnu +rm -f core conftest* fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_cxx_compiler_gnu" >&5 -$as_echo "$ac_cv_cxx_compiler_gnu" >&6; } -if test $ac_compiler_gnu = yes; then - GXX=yes +if eval test \$ac_cv_prog_cc_${ac_cc}_c_o = yes; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } else - GXX= + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + +$as_echo "#define NO_MINUS_C_MINUS_O 1" >>confdefs.h + fi -ac_test_CXXFLAGS=${CXXFLAGS+set} -ac_save_CXXFLAGS=$CXXFLAGS -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CXX accepts -g" >&5 -$as_echo_n "checking whether $CXX accepts -g... " >&6; } -if test "${ac_cv_prog_cxx_g+set}" = set; then : - $as_echo_n "(cached) " >&6 -else - ac_save_cxx_werror_flag=$ac_cxx_werror_flag - ac_cxx_werror_flag=yes - ac_cv_prog_cxx_g=no - CXXFLAGS="-g" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -int -main () -{ +# FIXME: we rely on the cache variable name because +# there is no other way. +set dummy $CC +am_cc=`echo $2 | sed 's/[^a-zA-Z0-9_]/_/g;s/^[0-9]/_/'` +eval am_t=\$ac_cv_prog_cc_${am_cc}_c_o +if test "$am_t" != yes; then + # Losing compiler, so override with the script. + # FIXME: It is wrong to rewrite CC. + # But if we don't then we get into trouble of one sort or another. + # A longer-term fix would be to have automake use am__CC in this case, + # and then we could set am__CC="\$(top_srcdir)/compile \$(CC)" + CC="$am_aux_dir/compile $CC" +fi - ; - return 0; -} -_ACEOF -if ac_fn_cxx_try_compile "$LINENO"; then : - ac_cv_prog_cxx_g=yes -else - CXXFLAGS="" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -int -main () -{ - ; - return 0; -} -_ACEOF -if ac_fn_cxx_try_compile "$LINENO"; then : +# By default we simply use the C compiler to build assembly code. -else - ac_cxx_werror_flag=$ac_save_cxx_werror_flag - CXXFLAGS="-g" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ +test "${CCAS+set}" = set || CCAS=$CC +test "${CCASFLAGS+set}" = set || CCASFLAGS=$CFLAGS -int -main () -{ - ; - return 0; -} -_ACEOF -if ac_fn_cxx_try_compile "$LINENO"; then : - ac_cv_prog_cxx_g=yes -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext - ac_cxx_werror_flag=$ac_save_cxx_werror_flag -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cxx_g" >&5 -$as_echo "$ac_cv_prog_cxx_g" >&6; } -if test "$ac_test_CXXFLAGS" = set; then - CXXFLAGS=$ac_save_CXXFLAGS -elif test $ac_cv_prog_cxx_g = yes; then - if test "$GXX" = yes; then - CXXFLAGS="-g -O2" - else - CXXFLAGS="-g" - fi -else - if test "$GXX" = yes; then - CXXFLAGS="-O2" - else - CXXFLAGS= - fi -fi -ac_ext=c -ac_cpp='$CPP $CPPFLAGS' -ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' -ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' -ac_compiler_gnu=$ac_cv_c_compiler_gnu -depcc="$CXX" am_compiler_list= +depcc="$CCAS" am_compiler_list= { $as_echo "$as_me:${as_lineno-$LINENO}: checking dependency style of $depcc" >&5 $as_echo_n "checking dependency style of $depcc... " >&6; } -if test "${am_cv_CXX_dependencies_compiler_type+set}" = set; then : +if ${am_cv_CCAS_dependencies_compiler_type+:} false; then : $as_echo_n "(cached) " >&6 else if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then @@ -16851,6 +17332,7 @@ else # instance it was reported that on HP-UX the gcc test will end up # making a dummy file named `D' -- because `-MD' means `put the output # in D'. + rm -rf conftest.dir mkdir conftest.dir # Copy depcomp to subdir because otherwise we won't find it if we're # using a relative directory. @@ -16864,14 +17346,12 @@ else # directory. mkdir sub - am_cv_CXX_dependencies_compiler_type=none + am_cv_CCAS_dependencies_compiler_type=none if test "$am_compiler_list" = ""; then am_compiler_list=`sed -n 's/^#*\([a-zA-Z0-9]*\))$/\1/p' < ./depcomp` fi am__universal=false - case " $depcc " in #( - *\ -arch\ *\ -arch\ *) am__universal=true ;; - esac + for depmode in $am_compiler_list; do # Setup a source with many dependencies, because some compilers @@ -16910,7 +17390,7 @@ else break fi ;; - msvisualcpp | msvcmsys) + msvc7 | msvc7msys | msvisualcpp | msvcmsys) # This compiler won't grok `-c -o', but also, the minuso test has # not run yet. These depmodes are late enough in the game, and # so weak that their functioning should not be impacted. @@ -16937,7 +17417,7 @@ else # icc: Command line remark: option '-MP' not supported if (grep 'ignoring option' conftest.err || grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else - am_cv_CXX_dependencies_compiler_type=$depmode + am_cv_CCAS_dependencies_compiler_type=$depmode break fi fi @@ -16946,22 +17426,22 @@ else cd .. rm -rf conftest.dir else - am_cv_CXX_dependencies_compiler_type=none + am_cv_CCAS_dependencies_compiler_type=none fi fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_CXX_dependencies_compiler_type" >&5 -$as_echo "$am_cv_CXX_dependencies_compiler_type" >&6; } -CXXDEPMODE=depmode=$am_cv_CXX_dependencies_compiler_type +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_CCAS_dependencies_compiler_type" >&5 +$as_echo "$am_cv_CCAS_dependencies_compiler_type" >&6; } +CCASDEPMODE=depmode=$am_cv_CCAS_dependencies_compiler_type if test "x$enable_dependency_tracking" != xno \ - && test "$am_cv_CXX_dependencies_compiler_type" = gcc3; then - am__fastdepCXX_TRUE= - am__fastdepCXX_FALSE='#' + && test "$am_cv_CCAS_dependencies_compiler_type" = gcc3; then + am__fastdepCCAS_TRUE= + am__fastdepCCAS_FALSE='#' else - am__fastdepCXX_TRUE='#' - am__fastdepCXX_FALSE= + am__fastdepCCAS_TRUE='#' + am__fastdepCCAS_FALSE= fi @@ -16982,7 +17462,7 @@ if test -z "$CXX"; then set dummy $ac_tool_prefix$ac_prog; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_prog_CXX+set}" = set; then : +if ${ac_cv_prog_CXX+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$CXX"; then @@ -17026,7 +17506,7 @@ do set dummy $ac_prog; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_prog_ac_ct_CXX+set}" = set; then : +if ${ac_cv_prog_ac_ct_CXX+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$ac_ct_CXX"; then @@ -17104,7 +17584,7 @@ done { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are using the GNU C++ compiler" >&5 $as_echo_n "checking whether we are using the GNU C++ compiler... " >&6; } -if test "${ac_cv_cxx_compiler_gnu+set}" = set; then : +if ${ac_cv_cxx_compiler_gnu+:} false; then : $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext @@ -17141,7 +17621,7 @@ ac_test_CXXFLAGS=${CXXFLAGS+set} ac_save_CXXFLAGS=$CXXFLAGS { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CXX accepts -g" >&5 $as_echo_n "checking whether $CXX accepts -g... " >&6; } -if test "${ac_cv_prog_cxx_g+set}" = set; then : +if ${ac_cv_prog_cxx_g+:} false; then : $as_echo_n "(cached) " >&6 else ac_save_cxx_werror_flag=$ac_cxx_werror_flag @@ -17227,7 +17707,7 @@ depcc="$CXX" am_compiler_list= { $as_echo "$as_me:${as_lineno-$LINENO}: checking dependency style of $depcc" >&5 $as_echo_n "checking dependency style of $depcc... " >&6; } -if test "${am_cv_CXX_dependencies_compiler_type+set}" = set; then : +if ${am_cv_CXX_dependencies_compiler_type+:} false; then : $as_echo_n "(cached) " >&6 else if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then @@ -17236,6 +17716,7 @@ else # instance it was reported that on HP-UX the gcc test will end up # making a dummy file named `D' -- because `-MD' means `put the output # in D'. + rm -rf conftest.dir mkdir conftest.dir # Copy depcomp to subdir because otherwise we won't find it if we're # using a relative directory. @@ -17295,7 +17776,7 @@ else break fi ;; - msvisualcpp | msvcmsys) + msvc7 | msvc7msys | msvisualcpp | msvcmsys) # This compiler won't grok `-c -o', but also, the minuso test has # not run yet. These depmodes are late enough in the game, and # so weak that their functioning should not be impacted. @@ -17350,7 +17831,17 @@ else fi -if test -n "$CXX" && ( test "X$CXX" != "Xno" && + + +func_stripname_cnf () +{ + case ${2} in + .*) func_stripname_result=`$ECHO "${3}" | $SED "s%^${1}%%; s%\\\\${2}\$%%"`;; + *) func_stripname_result=`$ECHO "${3}" | $SED "s%^${1}%%; s%${2}\$%%"`;; + esac +} # func_stripname_cnf + + if test -n "$CXX" && ( test "X$CXX" != "Xno" && ( (test "X$CXX" = "Xg++" && `g++ -v >/dev/null 2>&1` ) || (test "X$CXX" != "Xg++"))) ; then ac_ext=cpp @@ -17361,7 +17852,7 @@ ac_compiler_gnu=$ac_cv_cxx_compiler_gnu { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to run the C++ preprocessor" >&5 $as_echo_n "checking how to run the C++ preprocessor... " >&6; } if test -z "$CXXCPP"; then - if test "${ac_cv_prog_CXXCPP+set}" = set; then : + if ${ac_cv_prog_CXXCPP+:} false; then : $as_echo_n "(cached) " >&6 else # Double quotes because CXXCPP needs to be expanded @@ -17476,7 +17967,8 @@ if $ac_preproc_ok; then : else { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} -_lt_caught_CXX_error=yes; } +as_fn_error $? "C++ preprocessor \"$CXXCPP\" fails sanity check +See \`config.log' for more details" "$LINENO" 5; } fi ac_ext=c @@ -17489,9 +17981,6 @@ else _lt_caught_CXX_error=yes fi - - - ac_ext=cpp ac_cpp='$CXXCPP $CPPFLAGS' ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5' @@ -17507,7 +17996,6 @@ export_dynamic_flag_spec_CXX= hardcode_direct_CXX=no hardcode_direct_absolute_CXX=no hardcode_libdir_flag_spec_CXX= -hardcode_libdir_flag_spec_ld_CXX= hardcode_libdir_separator_CXX= hardcode_minus_L_CXX=no hardcode_shlibpath_var_CXX=unsupported @@ -17517,6 +18005,8 @@ module_cmds_CXX= module_expsym_cmds_CXX= link_all_deplibs_CXX=unknown old_archive_cmds_CXX=$old_archive_cmds +reload_flag_CXX=$reload_flag +reload_cmds_CXX=$reload_cmds no_undefined_flag_CXX= whole_archive_flag_spec_CXX= enable_shared_with_static_runtimes_CXX=no @@ -17572,6 +18062,7 @@ $RM -r conftest* # Allow CC to be a program name with arguments. lt_save_CC=$CC + lt_save_CFLAGS=$CFLAGS lt_save_LD=$LD lt_save_GCC=$GCC GCC=$GXX @@ -17589,6 +18080,7 @@ $RM -r conftest* fi test -z "${LDCXX+set}" || LD=$LDCXX CC=${CXX-"c++"} + CFLAGS=$CXXFLAGS compiler=$CC compiler_CXX=$CC for cc_temp in $compiler""; do @@ -17599,7 +18091,7 @@ $RM -r conftest* *) break;; esac done -cc_basename=`$ECHO "X$cc_temp" | $Xsed -e 's%.*/%%' -e "s%^$host_alias-%%"` +cc_basename=`$ECHO "$cc_temp" | $SED "s%.*/%%; s%^$host_alias-%%"` if test -n "$compiler"; then @@ -17662,7 +18154,7 @@ else { $as_echo "$as_me:${as_lineno-$LINENO}: checking for non-GNU ld" >&5 $as_echo_n "checking for non-GNU ld... " >&6; } fi -if test "${lt_cv_path_LD+set}" = set; then : +if ${lt_cv_path_LD+:} false; then : $as_echo_n "(cached) " >&6 else if test -z "$LD"; then @@ -17702,7 +18194,7 @@ fi test -z "$LD" && as_fn_error $? "no acceptable ld found in \$PATH" "$LINENO" 5 { $as_echo "$as_me:${as_lineno-$LINENO}: checking if the linker ($LD) is GNU ld" >&5 $as_echo_n "checking if the linker ($LD) is GNU ld... " >&6; } -if test "${lt_cv_prog_gnu_ld+set}" = set; then : +if ${lt_cv_prog_gnu_ld+:} false; then : $as_echo_n "(cached) " >&6 else # I'd rather use --version here, but apparently some GNU lds only accept -v. @@ -17728,8 +18220,8 @@ with_gnu_ld=$lt_cv_prog_gnu_ld # Check if GNU C++ uses GNU ld as the underlying linker, since the # archiving commands below assume that GNU ld is being used. if test "$with_gnu_ld" = yes; then - archive_cmds_CXX='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib' - archive_expsym_cmds_CXX='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' + archive_cmds_CXX='$CC $pic_flag -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname -o $lib' + archive_expsym_cmds_CXX='$CC $pic_flag -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' hardcode_libdir_flag_spec_CXX='${wl}-rpath ${wl}$libdir' export_dynamic_flag_spec_CXX='${wl}--export-dynamic' @@ -17761,7 +18253,7 @@ with_gnu_ld=$lt_cv_prog_gnu_ld # Commands to make compiler produce verbose output that lists # what "hidden" libraries, object files and flags are used when # linking a shared library. - output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "\-L"' + output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"' else GXX=no @@ -17871,7 +18363,13 @@ $as_echo_n "checking whether the $compiler linker ($LD) supports shared librarie allow_undefined_flag_CXX='-berok' # Determine the default libpath from the value encoded in an empty # executable. - cat confdefs.h - <<_ACEOF >conftest.$ac_ext + if test "${lt_cv_aix_libpath+set}" = set; then + aix_libpath=$lt_cv_aix_libpath +else + if ${lt_cv_aix_libpath__CXX+:} false; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int @@ -17884,26 +18382,33 @@ main () _ACEOF if ac_fn_cxx_try_link "$LINENO"; then : -lt_aix_libpath_sed=' - /Import File Strings/,/^$/ { - /^0/ { - s/^0 *\(.*\)$/\1/ - p - } - }' -aix_libpath=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"` -# Check for a 64-bit object if we didn't find anything. -if test -z "$aix_libpath"; then - aix_libpath=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"` -fi + lt_aix_libpath_sed=' + /Import File Strings/,/^$/ { + /^0/ { + s/^0 *\([^ ]*\) *$/\1/ + p + } + }' + lt_cv_aix_libpath__CXX=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"` + # Check for a 64-bit object if we didn't find anything. + if test -z "$lt_cv_aix_libpath__CXX"; then + lt_cv_aix_libpath__CXX=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"` + fi fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext -if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi + if test -z "$lt_cv_aix_libpath__CXX"; then + lt_cv_aix_libpath__CXX="/usr/lib:/lib" + fi + +fi + + aix_libpath=$lt_cv_aix_libpath__CXX +fi hardcode_libdir_flag_spec_CXX='${wl}-blibpath:$libdir:'"$aix_libpath" - archive_expsym_cmds_CXX='$CC -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then $ECHO "X${wl}${allow_undefined_flag}" | $Xsed; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag" + archive_expsym_cmds_CXX='$CC -o $output_objdir/$soname $libobjs $deplibs '"\${wl}$no_entry_flag"' $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then func_echo_all "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$exp_sym_flag:\$export_symbols $shared_flag" else if test "$host_cpu" = ia64; then hardcode_libdir_flag_spec_CXX='${wl}-R $libdir:/usr/lib:/lib' @@ -17912,7 +18417,13 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi else # Determine the default libpath from the value encoded in an # empty executable. - cat confdefs.h - <<_ACEOF >conftest.$ac_ext + if test "${lt_cv_aix_libpath+set}" = set; then + aix_libpath=$lt_cv_aix_libpath +else + if ${lt_cv_aix_libpath__CXX+:} false; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int @@ -17925,30 +18436,42 @@ main () _ACEOF if ac_fn_cxx_try_link "$LINENO"; then : -lt_aix_libpath_sed=' - /Import File Strings/,/^$/ { - /^0/ { - s/^0 *\(.*\)$/\1/ - p - } - }' -aix_libpath=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"` -# Check for a 64-bit object if we didn't find anything. -if test -z "$aix_libpath"; then - aix_libpath=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"` -fi + lt_aix_libpath_sed=' + /Import File Strings/,/^$/ { + /^0/ { + s/^0 *\([^ ]*\) *$/\1/ + p + } + }' + lt_cv_aix_libpath__CXX=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"` + # Check for a 64-bit object if we didn't find anything. + if test -z "$lt_cv_aix_libpath__CXX"; then + lt_cv_aix_libpath__CXX=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"` + fi fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext -if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi + if test -z "$lt_cv_aix_libpath__CXX"; then + lt_cv_aix_libpath__CXX="/usr/lib:/lib" + fi + +fi + + aix_libpath=$lt_cv_aix_libpath__CXX +fi hardcode_libdir_flag_spec_CXX='${wl}-blibpath:$libdir:'"$aix_libpath" # Warning - without using the other run time loading flags, # -berok will link without error, but may produce a broken library. no_undefined_flag_CXX=' ${wl}-bernotok' allow_undefined_flag_CXX=' ${wl}-berok' - # Exported symbols can be pulled into shared objects from archives - whole_archive_flag_spec_CXX='$convenience' + if test "$with_gnu_ld" = yes; then + # We only use this code for GNU lds that support --whole-archive. + whole_archive_flag_spec_CXX='${wl}--whole-archive$convenience ${wl}--no-whole-archive' + else + # Exported symbols can be pulled into shared objects from archives + whole_archive_flag_spec_CXX='$convenience' + fi archive_cmds_need_lc_CXX=yes # This is similar to how AIX traditionally builds its shared # libraries. @@ -17978,28 +18501,75 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi ;; cygwin* | mingw* | pw32* | cegcc*) - # _LT_TAGVAR(hardcode_libdir_flag_spec, CXX) is actually meaningless, - # as there is no search path for DLLs. - hardcode_libdir_flag_spec_CXX='-L$libdir' - allow_undefined_flag_CXX=unsupported - always_export_symbols_CXX=no - enable_shared_with_static_runtimes_CXX=yes - - if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then - archive_cmds_CXX='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib' - # If the export-symbols file already is a .def file (1st line - # is EXPORTS), use it as is; otherwise, prepend... - archive_expsym_cmds_CXX='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then - cp $export_symbols $output_objdir/$soname.def; - else - echo EXPORTS > $output_objdir/$soname.def; - cat $export_symbols >> $output_objdir/$soname.def; - fi~ - $CC -shared -nostdlib $output_objdir/$soname.def $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib' - else - ld_shlibs_CXX=no - fi - ;; + case $GXX,$cc_basename in + ,cl* | no,cl*) + # Native MSVC + # hardcode_libdir_flag_spec is actually meaningless, as there is + # no search path for DLLs. + hardcode_libdir_flag_spec_CXX=' ' + allow_undefined_flag_CXX=unsupported + always_export_symbols_CXX=yes + file_list_spec_CXX='@' + # Tell ltmain to make .lib files, not .a files. + libext=lib + # Tell ltmain to make .dll files, not .so files. + shrext_cmds=".dll" + # FIXME: Setting linknames here is a bad hack. + archive_cmds_CXX='$CC -o $output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-dll~linknames=' + archive_expsym_cmds_CXX='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then + $SED -n -e 's/\\\\\\\(.*\\\\\\\)/-link\\\ -EXPORT:\\\\\\\1/' -e '1\\\!p' < $export_symbols > $output_objdir/$soname.exp; + else + $SED -e 's/\\\\\\\(.*\\\\\\\)/-link\\\ -EXPORT:\\\\\\\1/' < $export_symbols > $output_objdir/$soname.exp; + fi~ + $CC -o $tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~ + linknames=' + # The linker will not automatically build a static lib if we build a DLL. + # _LT_TAGVAR(old_archive_from_new_cmds, CXX)='true' + enable_shared_with_static_runtimes_CXX=yes + # Don't use ranlib + old_postinstall_cmds_CXX='chmod 644 $oldlib' + postlink_cmds_CXX='lt_outputfile="@OUTPUT@"~ + lt_tool_outputfile="@TOOL_OUTPUT@"~ + case $lt_outputfile in + *.exe|*.EXE) ;; + *) + lt_outputfile="$lt_outputfile.exe" + lt_tool_outputfile="$lt_tool_outputfile.exe" + ;; + esac~ + func_to_tool_file "$lt_outputfile"~ + if test "$MANIFEST_TOOL" != ":" && test -f "$lt_outputfile.manifest"; then + $MANIFEST_TOOL -manifest "$lt_tool_outputfile.manifest" -outputresource:"$lt_tool_outputfile" || exit 1; + $RM "$lt_outputfile.manifest"; + fi' + ;; + *) + # g++ + # _LT_TAGVAR(hardcode_libdir_flag_spec, CXX) is actually meaningless, + # as there is no search path for DLLs. + hardcode_libdir_flag_spec_CXX='-L$libdir' + export_dynamic_flag_spec_CXX='${wl}--export-all-symbols' + allow_undefined_flag_CXX=unsupported + always_export_symbols_CXX=no + enable_shared_with_static_runtimes_CXX=yes + + if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then + archive_cmds_CXX='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib' + # If the export-symbols file already is a .def file (1st line + # is EXPORTS), use it as is; otherwise, prepend... + archive_expsym_cmds_CXX='if test "x`$SED 1q $export_symbols`" = xEXPORTS; then + cp $export_symbols $output_objdir/$soname.def; + else + echo EXPORTS > $output_objdir/$soname.def; + cat $export_symbols >> $output_objdir/$soname.def; + fi~ + $CC -shared -nostdlib $output_objdir/$soname.def $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $output_objdir/$soname ${wl}--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib' + else + ld_shlibs_CXX=no + fi + ;; + esac + ;; darwin* | rhapsody*) @@ -18007,7 +18577,12 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi hardcode_direct_CXX=no hardcode_automatic_CXX=yes hardcode_shlibpath_var_CXX=unsupported - whole_archive_flag_spec_CXX='' + if test "$lt_cv_ld_force_load" = "yes"; then + whole_archive_flag_spec_CXX='`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience ${wl}-force_load,$conv\"; done; func_echo_all \"$new_convenience\"`' + + else + whole_archive_flag_spec_CXX='' + fi link_all_deplibs_CXX=yes allow_undefined_flag_CXX="$_lt_dar_allow_undefined" case $cc_basename in @@ -18015,7 +18590,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi *) _lt_dar_can_shared=$GCC ;; esac if test "$_lt_dar_can_shared" = "yes"; then - output_verbose_link_cmd=echo + output_verbose_link_cmd=func_echo_all archive_cmds_CXX="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}" module_cmds_CXX="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}" archive_expsym_cmds_CXX="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}" @@ -18049,7 +18624,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi esac ;; - freebsd[12]*) + freebsd2.*) # C++ shared libraries reported to be fairly broken before # switch to ELF ld_shlibs_CXX=no @@ -18068,6 +18643,11 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi gnu*) ;; + haiku*) + archive_cmds_CXX='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' + link_all_deplibs_CXX=yes + ;; + hpux9*) hardcode_libdir_flag_spec_CXX='${wl}+b ${wl}$libdir' hardcode_libdir_separator_CXX=: @@ -18092,11 +18672,11 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi # explicitly linking system object files so we need to strip them # from the output so that they don't get included in the library # dependencies. - output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | $EGREP "\-L"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; $ECHO "X$list" | $Xsed' + output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | $EGREP "\-L"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"' ;; *) if test "$GXX" = yes; then - archive_cmds_CXX='$RM $output_objdir/$soname~$CC -shared -nostdlib -fPIC ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' + archive_cmds_CXX='$RM $output_objdir/$soname~$CC -shared -nostdlib $pic_flag ${wl}+b ${wl}$install_libdir -o $output_objdir/$soname $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' else # FIXME: insert proper C++ library support ld_shlibs_CXX=no @@ -18157,7 +18737,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi # explicitly linking system object files so we need to strip them # from the output so that they don't get included in the library # dependencies. - output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | $GREP "\-L"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; $ECHO "X$list" | $Xsed' + output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | $GREP "\-L"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"' ;; *) if test "$GXX" = yes; then @@ -18167,10 +18747,10 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi archive_cmds_CXX='$CC -shared -nostdlib -fPIC ${wl}+h ${wl}$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' ;; ia64*) - archive_cmds_CXX='$CC -shared -nostdlib -fPIC ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' + archive_cmds_CXX='$CC -shared -nostdlib $pic_flag ${wl}+h ${wl}$soname ${wl}+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' ;; *) - archive_cmds_CXX='$CC -shared -nostdlib -fPIC ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' + archive_cmds_CXX='$CC -shared -nostdlib $pic_flag ${wl}+h ${wl}$soname ${wl}+b ${wl}$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' ;; esac fi @@ -18200,7 +18780,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi case $cc_basename in CC*) # SGI C++ - archive_cmds_CXX='$CC -shared -all -multigot $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib' + archive_cmds_CXX='$CC -shared -all -multigot $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib' # Archives containing C++ object files must be created using # "CC -ar", where "CC" is the IRIX C++ compiler. This is @@ -18211,9 +18791,9 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi *) if test "$GXX" = yes; then if test "$with_gnu_ld" = no; then - archive_cmds_CXX='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' + archive_cmds_CXX='$CC -shared $pic_flag -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' else - archive_cmds_CXX='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` -o $lib' + archive_cmds_CXX='$CC -shared $pic_flag -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` -o $lib' fi fi link_all_deplibs_CXX=yes @@ -18242,7 +18822,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi # explicitly linking system object files so we need to strip them # from the output so that they don't get included in the library # dependencies. - output_verbose_link_cmd='templist=`$CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1 | $GREP "ld"`; rm -f libconftest$shared_ext; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; $ECHO "X$list" | $Xsed' + output_verbose_link_cmd='templist=`$CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1 | $GREP "ld"`; rm -f libconftest$shared_ext; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"' hardcode_libdir_flag_spec_CXX='${wl}-rpath,$libdir' export_dynamic_flag_spec_CXX='${wl}--export-dynamic' @@ -18279,26 +18859,26 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi pgCC* | pgcpp*) # Portland Group C++ compiler case `$CC -V` in - *pgCC\ [1-5]* | *pgcpp\ [1-5]*) + *pgCC\ [1-5].* | *pgcpp\ [1-5].*) prelink_cmds_CXX='tpldir=Template.dir~ rm -rf $tpldir~ $CC --prelink_objects --instantiation_dir $tpldir $objs $libobjs $compile_deplibs~ - compile_command="$compile_command `find $tpldir -name \*.o | $NL2SP`"' + compile_command="$compile_command `find $tpldir -name \*.o | sort | $NL2SP`"' old_archive_cmds_CXX='tpldir=Template.dir~ rm -rf $tpldir~ $CC --prelink_objects --instantiation_dir $tpldir $oldobjs$old_deplibs~ - $AR $AR_FLAGS $oldlib$oldobjs$old_deplibs `find $tpldir -name \*.o | $NL2SP`~ + $AR $AR_FLAGS $oldlib$oldobjs$old_deplibs `find $tpldir -name \*.o | sort | $NL2SP`~ $RANLIB $oldlib' archive_cmds_CXX='tpldir=Template.dir~ rm -rf $tpldir~ $CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~ - $CC -shared $pic_flag $predep_objects $libobjs $deplibs `find $tpldir -name \*.o | $NL2SP` $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname -o $lib' + $CC -shared $pic_flag $predep_objects $libobjs $deplibs `find $tpldir -name \*.o | sort | $NL2SP` $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname -o $lib' archive_expsym_cmds_CXX='tpldir=Template.dir~ rm -rf $tpldir~ $CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~ - $CC -shared $pic_flag $predep_objects $libobjs $deplibs `find $tpldir -name \*.o | $NL2SP` $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname ${wl}-retain-symbols-file ${wl}$export_symbols -o $lib' + $CC -shared $pic_flag $predep_objects $libobjs $deplibs `find $tpldir -name \*.o | sort | $NL2SP` $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname ${wl}-retain-symbols-file ${wl}$export_symbols -o $lib' ;; - *) # Version 6 will use weak symbols + *) # Version 6 and above use weak symbols archive_cmds_CXX='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname -o $lib' archive_expsym_cmds_CXX='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname ${wl}-retain-symbols-file ${wl}$export_symbols -o $lib' ;; @@ -18306,7 +18886,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi hardcode_libdir_flag_spec_CXX='${wl}--rpath ${wl}$libdir' export_dynamic_flag_spec_CXX='${wl}--export-dynamic' - whole_archive_flag_spec_CXX='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; $ECHO \"$new_convenience\"` ${wl}--no-whole-archive' + whole_archive_flag_spec_CXX='${wl}--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive' ;; cxx*) # Compaq C++ @@ -18325,9 +18905,9 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi # explicitly linking system object files so we need to strip them # from the output so that they don't get included in the library # dependencies. - output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "ld"`; templist=`$ECHO "X$templist" | $Xsed -e "s/\(^.*ld.*\)\( .*ld .*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; $ECHO "X$list" | $Xsed' + output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "ld"`; templist=`func_echo_all "$templist" | $SED "s/\(^.*ld.*\)\( .*ld .*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "X$list" | $Xsed' ;; - xl*) + xl* | mpixl* | bgxl*) # IBM XL 8.0 on PPC, with GNU ld hardcode_libdir_flag_spec_CXX='${wl}-rpath ${wl}$libdir' export_dynamic_flag_spec_CXX='${wl}--export-dynamic' @@ -18347,13 +18927,13 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi archive_cmds_CXX='$CC -G${allow_undefined_flag} -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' archive_expsym_cmds_CXX='$CC -G${allow_undefined_flag} -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-retain-symbols-file ${wl}$export_symbols' hardcode_libdir_flag_spec_CXX='-R$libdir' - whole_archive_flag_spec_CXX='${wl}--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; $ECHO \"$new_convenience\"` ${wl}--no-whole-archive' + whole_archive_flag_spec_CXX='${wl}--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` ${wl}--no-whole-archive' compiler_needs_object_CXX=yes # Not sure whether something based on # $CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1 # would be better. - output_verbose_link_cmd='echo' + output_verbose_link_cmd='func_echo_all' # Archives containing C++ object files must be created using # "CC -xar", where "CC" is the Sun C++ compiler. This is @@ -18422,7 +19002,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi export_dynamic_flag_spec_CXX='${wl}-E' whole_archive_flag_spec_CXX="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive' fi - output_verbose_link_cmd=echo + output_verbose_link_cmd=func_echo_all else ld_shlibs_CXX=no fi @@ -18457,15 +19037,15 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi case $host in osf3*) allow_undefined_flag_CXX=' ${wl}-expect_unresolved ${wl}\*' - archive_cmds_CXX='$CC -shared${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $soname `test -n "$verstring" && $ECHO "X${wl}-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib' + archive_cmds_CXX='$CC -shared${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname $soname `test -n "$verstring" && func_echo_all "${wl}-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib' hardcode_libdir_flag_spec_CXX='${wl}-rpath ${wl}$libdir' ;; *) allow_undefined_flag_CXX=' -expect_unresolved \*' - archive_cmds_CXX='$CC -shared${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -msym -soname $soname `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib' + archive_cmds_CXX='$CC -shared${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -msym -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib' archive_expsym_cmds_CXX='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done~ echo "-hidden">> $lib.exp~ - $CC -shared$allow_undefined_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -msym -soname $soname ${wl}-input ${wl}$lib.exp `test -n "$verstring" && $ECHO "X-set_version $verstring" | $Xsed` -update_registry ${output_objdir}/so_locations -o $lib~ + $CC -shared$allow_undefined_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -msym -soname $soname ${wl}-input ${wl}$lib.exp `test -n "$verstring" && $ECHO "-set_version $verstring"` -update_registry ${output_objdir}/so_locations -o $lib~ $RM $lib.exp' hardcode_libdir_flag_spec_CXX='-rpath $libdir' ;; @@ -18481,17 +19061,17 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi # explicitly linking system object files so we need to strip them # from the output so that they don't get included in the library # dependencies. - output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "ld" | $GREP -v "ld:"`; templist=`$ECHO "X$templist" | $Xsed -e "s/\(^.*ld.*\)\( .*ld.*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; $ECHO "X$list" | $Xsed' + output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "ld" | $GREP -v "ld:"`; templist=`func_echo_all "$templist" | $SED "s/\(^.*ld.*\)\( .*ld.*$\)/\1/"`; list=""; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"' ;; *) if test "$GXX" = yes && test "$with_gnu_ld" = no; then allow_undefined_flag_CXX=' ${wl}-expect_unresolved ${wl}\*' case $host in osf3*) - archive_cmds_CXX='$CC -shared -nostdlib ${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "X${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' + archive_cmds_CXX='$CC -shared -nostdlib ${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' ;; *) - archive_cmds_CXX='$CC -shared -nostdlib ${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && $ECHO "${wl}-set_version ${wl}$verstring" | $Xsed` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' + archive_cmds_CXX='$CC -shared $pic_flag -nostdlib ${allow_undefined_flag} $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && func_echo_all "${wl}-set_version ${wl}$verstring"` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' ;; esac @@ -18501,7 +19081,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi # Commands to make compiler produce verbose output that lists # what "hidden" libraries, object files and flags are used when # linking a shared library. - output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "\-L"' + output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"' else # FIXME: insert proper C++ library support @@ -18537,7 +19117,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi solaris*) case $cc_basename in - CC*) + CC* | sunCC*) # Sun C++ 4.2, 5.x and Centerline C++ archive_cmds_need_lc_CXX=yes no_undefined_flag_CXX=' -zdefs' @@ -18558,7 +19138,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi esac link_all_deplibs_CXX=yes - output_verbose_link_cmd='echo' + output_verbose_link_cmd='func_echo_all' # Archives containing C++ object files must be created using # "CC -xar", where "CC" is the Sun C++ compiler. This is @@ -18578,14 +19158,14 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi if test "$GXX" = yes && test "$with_gnu_ld" = no; then no_undefined_flag_CXX=' ${wl}-z ${wl}defs' if $CC --version | $GREP -v '^2\.7' > /dev/null; then - archive_cmds_CXX='$CC -shared -nostdlib $LDFLAGS $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib' + archive_cmds_CXX='$CC -shared $pic_flag -nostdlib $LDFLAGS $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags ${wl}-h $wl$soname -o $lib' archive_expsym_cmds_CXX='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ - $CC -shared -nostdlib ${wl}-M $wl$lib.exp -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp' + $CC -shared $pic_flag -nostdlib ${wl}-M $wl$lib.exp -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp' # Commands to make compiler produce verbose output that lists # what "hidden" libraries, object files and flags are used when # linking a shared library. - output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "\-L"' + output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"' else # g++ 2.7 appears to require `-G' NOT `-shared' on this # platform. @@ -18596,7 +19176,7 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi # Commands to make compiler produce verbose output that lists # what "hidden" libraries, object files and flags are used when # linking a shared library. - output_verbose_link_cmd='$CC -G $CFLAGS -v conftest.$objext 2>&1 | $GREP "\-L"' + output_verbose_link_cmd='$CC -G $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"' fi hardcode_libdir_flag_spec_CXX='${wl}-R $wl$libdir' @@ -18650,6 +19230,10 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi CC*) archive_cmds_CXX='$CC -G ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' archive_expsym_cmds_CXX='$CC -G ${wl}-Bexport:$export_symbols ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + old_archive_cmds_CXX='$CC -Tprelink_objects $oldobjs~ + '"$old_archive_cmds_CXX" + reload_cmds_CXX='$CC -Tprelink_objects $reload_objs~ + '"$reload_cmds_CXX" ;; *) archive_cmds_CXX='$CC -shared ${wl}-h,$soname -o $lib $libobjs $deplibs $compiler_flags' @@ -18711,6 +19295,14 @@ private: }; _LT_EOF + +_lt_libdeps_save_CFLAGS=$CFLAGS +case "$CC $CFLAGS " in #( +*\ -flto*\ *) CFLAGS="$CFLAGS -fno-lto" ;; +*\ -fwhopr*\ *) CFLAGS="$CFLAGS -fno-whopr" ;; +*\ -fuse-linker-plugin*\ *) CFLAGS="$CFLAGS -fno-use-linker-plugin" ;; +esac + if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 (eval $ac_compile) 2>&5 ac_status=$? @@ -18724,7 +19316,7 @@ if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 pre_test_object_deps_done=no for p in `eval "$output_verbose_link_cmd"`; do - case $p in + case ${prev}${p} in -L* | -R* | -l*) # Some compilers place space between "-{L,R}" and the path. @@ -18733,13 +19325,22 @@ if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 test $p = "-R"; then prev=$p continue - else - prev= fi + # Expand the sysroot to ease extracting the directories later. + if test -z "$prev"; then + case $p in + -L*) func_stripname_cnf '-L' '' "$p"; prev=-L; p=$func_stripname_result ;; + -R*) func_stripname_cnf '-R' '' "$p"; prev=-R; p=$func_stripname_result ;; + -l*) func_stripname_cnf '-l' '' "$p"; prev=-l; p=$func_stripname_result ;; + esac + fi + case $p in + =*) func_stripname_cnf '=' '' "$p"; p=$lt_sysroot$func_stripname_result ;; + esac if test "$pre_test_object_deps_done" = no; then - case $p in - -L* | -R*) + case ${prev} in + -L | -R) # Internal compiler library paths should come after those # provided the user. The postdeps already come after the # user supplied libs so there is no need to process them. @@ -18759,8 +19360,10 @@ if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 postdeps_CXX="${postdeps_CXX} ${prev}${p}" fi fi + prev= ;; + *.lto.$objext) ;; # Ignore GCC LTO objects *.$objext) # This assumes that the test object file only shows up # once in the compiler output. @@ -18796,6 +19399,7 @@ else fi $RM -f confest.$objext +CFLAGS=$_lt_libdeps_save_CFLAGS # PORTME: override above test on systems where it is broken case $host_os in @@ -18831,7 +19435,7 @@ linux*) solaris*) case $cc_basename in - CC*) + CC* | sunCC*) # The more standards-conforming stlport4 library is # incompatible with the Cstd library. Avoid specifying # it if it's in CXXFLAGS. Ignore libCrun as @@ -18896,8 +19500,6 @@ fi lt_prog_compiler_pic_CXX= lt_prog_compiler_static_CXX= -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $compiler option to produce PIC" >&5 -$as_echo_n "checking for $compiler option to produce PIC... " >&6; } # C++ specific cases for pic, static, wl, etc. if test "$GXX" = yes; then @@ -18947,6 +19549,11 @@ $as_echo_n "checking for $compiler option to produce PIC... " >&6; } # DJGPP does not support shared libraries at all lt_prog_compiler_pic_CXX= ;; + haiku*) + # PIC is the default for Haiku. + # The "-static" flag exists, but is broken. + lt_prog_compiler_static_CXX= + ;; interix[3-9]*) # Interix 3.x gcc -fpic/-fPIC options generate broken code. # Instead, we relocate shared libraries at runtime. @@ -18996,6 +19603,11 @@ $as_echo_n "checking for $compiler option to produce PIC... " >&6; } ;; esac ;; + mingw* | cygwin* | os2* | pw32* | cegcc*) + # This hack is so that the source file can tell whether it is being + # built for inclusion in a dll (and should export symbols for example). + lt_prog_compiler_pic_CXX='-DDLL_EXPORT' + ;; dgux*) case $cc_basename in ec++*) @@ -19085,8 +19697,8 @@ $as_echo_n "checking for $compiler option to produce PIC... " >&6; } lt_prog_compiler_pic_CXX= lt_prog_compiler_static_CXX='-non_shared' ;; - xlc* | xlC*) - # IBM XL 8.0 on PPC + xlc* | xlC* | bgxl[cC]* | mpixl[cC]*) + # IBM XL 8.0, 9.0 on PPC and BlueGene lt_prog_compiler_wl_CXX='-Wl,' lt_prog_compiler_pic_CXX='-qpic' lt_prog_compiler_static_CXX='-qstaticlink' @@ -19148,7 +19760,7 @@ $as_echo_n "checking for $compiler option to produce PIC... " >&6; } ;; solaris*) case $cc_basename in - CC*) + CC* | sunCC*) # Sun C++ 4.2, 5.x and Centerline C++ lt_prog_compiler_pic_CXX='-KPIC' lt_prog_compiler_static_CXX='-Bstatic' @@ -19213,10 +19825,17 @@ case $host_os in lt_prog_compiler_pic_CXX="$lt_prog_compiler_pic_CXX -DPIC" ;; esac -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_prog_compiler_pic_CXX" >&5 -$as_echo "$lt_prog_compiler_pic_CXX" >&6; } - +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $compiler option to produce PIC" >&5 +$as_echo_n "checking for $compiler option to produce PIC... " >&6; } +if ${lt_cv_prog_compiler_pic_CXX+:} false; then : + $as_echo_n "(cached) " >&6 +else + lt_cv_prog_compiler_pic_CXX=$lt_prog_compiler_pic_CXX +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_pic_CXX" >&5 +$as_echo "$lt_cv_prog_compiler_pic_CXX" >&6; } +lt_prog_compiler_pic_CXX=$lt_cv_prog_compiler_pic_CXX # # Check to make sure the PIC flag actually works. @@ -19224,7 +19843,7 @@ $as_echo "$lt_prog_compiler_pic_CXX" >&6; } if test -n "$lt_prog_compiler_pic_CXX"; then { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler PIC flag $lt_prog_compiler_pic_CXX works" >&5 $as_echo_n "checking if $compiler PIC flag $lt_prog_compiler_pic_CXX works... " >&6; } -if test "${lt_cv_prog_compiler_pic_works_CXX+set}" = set; then : +if ${lt_cv_prog_compiler_pic_works_CXX+:} false; then : $as_echo_n "(cached) " >&6 else lt_cv_prog_compiler_pic_works_CXX=no @@ -19240,15 +19859,15 @@ else -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:19243: $lt_compile\"" >&5) + (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&5) (eval "$lt_compile" 2>conftest.err) ac_status=$? cat conftest.err >&5 - echo "$as_me:19247: \$? = $ac_status" >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 if (exit $ac_status) && test -s "$ac_outfile"; then # The compiler can only warn and ignore the option if not recognized # So say no if there are warnings other than the usual output. - $ECHO "X$_lt_compiler_boilerplate" | $Xsed -e '/^$/d' >conftest.exp + $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' >conftest.exp $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2 if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then lt_cv_prog_compiler_pic_works_CXX=yes @@ -19274,13 +19893,15 @@ fi + + # # Check to make sure the static flag actually works. # wl=$lt_prog_compiler_wl_CXX eval lt_tmp_static_flag=\"$lt_prog_compiler_static_CXX\" { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler static flag $lt_tmp_static_flag works" >&5 $as_echo_n "checking if $compiler static flag $lt_tmp_static_flag works... " >&6; } -if test "${lt_cv_prog_compiler_static_works_CXX+set}" = set; then : +if ${lt_cv_prog_compiler_static_works_CXX+:} false; then : $as_echo_n "(cached) " >&6 else lt_cv_prog_compiler_static_works_CXX=no @@ -19293,7 +19914,7 @@ else if test -s conftest.err; then # Append any errors to the config.log. cat conftest.err 1>&5 - $ECHO "X$_lt_linker_boilerplate" | $Xsed -e '/^$/d' > conftest.exp + $ECHO "$_lt_linker_boilerplate" | $SED '/^$/d' > conftest.exp $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2 if diff conftest.exp conftest.er2 >/dev/null; then lt_cv_prog_compiler_static_works_CXX=yes @@ -19320,7 +19941,7 @@ fi { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -c -o file.$ac_objext" >&5 $as_echo_n "checking if $compiler supports -c -o file.$ac_objext... " >&6; } -if test "${lt_cv_prog_compiler_c_o_CXX+set}" = set; then : +if ${lt_cv_prog_compiler_c_o_CXX+:} false; then : $as_echo_n "(cached) " >&6 else lt_cv_prog_compiler_c_o_CXX=no @@ -19339,16 +19960,16 @@ else -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:19342: $lt_compile\"" >&5) + (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&5) (eval "$lt_compile" 2>out/conftest.err) ac_status=$? cat out/conftest.err >&5 - echo "$as_me:19346: \$? = $ac_status" >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 if (exit $ac_status) && test -s out/conftest2.$ac_objext then # The compiler can only warn and ignore the option if not recognized # So say no if there are warnings - $ECHO "X$_lt_compiler_boilerplate" | $Xsed -e '/^$/d' > out/conftest.exp + $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' > out/conftest.exp $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er2 if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then lt_cv_prog_compiler_c_o_CXX=yes @@ -19372,7 +19993,7 @@ $as_echo "$lt_cv_prog_compiler_c_o_CXX" >&6; } { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -c -o file.$ac_objext" >&5 $as_echo_n "checking if $compiler supports -c -o file.$ac_objext... " >&6; } -if test "${lt_cv_prog_compiler_c_o_CXX+set}" = set; then : +if ${lt_cv_prog_compiler_c_o_CXX+:} false; then : $as_echo_n "(cached) " >&6 else lt_cv_prog_compiler_c_o_CXX=no @@ -19391,16 +20012,16 @@ else -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:19394: $lt_compile\"" >&5) + (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&5) (eval "$lt_compile" 2>out/conftest.err) ac_status=$? cat out/conftest.err >&5 - echo "$as_me:19398: \$? = $ac_status" >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 if (exit $ac_status) && test -s out/conftest2.$ac_objext then # The compiler can only warn and ignore the option if not recognized # So say no if there are warnings - $ECHO "X$_lt_compiler_boilerplate" | $Xsed -e '/^$/d' > out/conftest.exp + $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' > out/conftest.exp $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er2 if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then lt_cv_prog_compiler_c_o_CXX=yes @@ -19451,30 +20072,40 @@ fi $as_echo_n "checking whether the $compiler linker ($LD) supports shared libraries... " >&6; } export_symbols_cmds_CXX='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols' + exclude_expsyms_CXX='_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*' case $host_os in aix[4-9]*) # If we're using GNU nm, then we don't want the "-C" option. # -C means demangle to AIX nm, but means don't demangle with GNU nm + # Also, AIX nm treats weak defined symbols like other global defined + # symbols, whereas GNU nm marks them as "W". if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then - export_symbols_cmds_CXX='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B")) && (substr(\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols' + export_symbols_cmds_CXX='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W")) && (substr(\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols' else export_symbols_cmds_CXX='$NM -BCpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B")) && (substr(\$ 3,1,1) != ".")) { print \$ 3 } }'\'' | sort -u > $export_symbols' fi ;; pw32*) export_symbols_cmds_CXX="$ltdll_cmds" - ;; + ;; cygwin* | mingw* | cegcc*) - export_symbols_cmds_CXX='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[BCDGRS][ ]/s/.*[ ]\([^ ]*\)/\1 DATA/;/^.*[ ]__nm__/s/^.*[ ]__nm__\([^ ]*\)[ ][^ ]*/\1 DATA/;/^I[ ]/d;/^[AITW][ ]/s/.* //'\'' | sort | uniq > $export_symbols' - ;; - linux* | k*bsd*-gnu) + case $cc_basename in + cl*) + exclude_expsyms_CXX='_NULL_IMPORT_DESCRIPTOR|_IMPORT_DESCRIPTOR_.*' + ;; + *) + export_symbols_cmds_CXX='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[BCDGRS][ ]/s/.*[ ]\([^ ]*\)/\1 DATA/;s/^.*[ ]__nm__\([^ ]*\)[ ][^ ]*/\1 DATA/;/^I[ ]/d;/^[AITW][ ]/s/.* //'\'' | sort | uniq > $export_symbols' + exclude_expsyms_CXX='[_]+GLOBAL_OFFSET_TABLE_|[_]+GLOBAL__[FID]_.*|[_]+head_[A-Za-z0-9_]+_dll|[A-Za-z0-9_]+_dll_iname' + ;; + esac + ;; + linux* | k*bsd*-gnu | gnu*) link_all_deplibs_CXX=no - ;; + ;; *) export_symbols_cmds_CXX='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols' - ;; + ;; esac - exclude_expsyms_CXX='_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*' { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ld_shlibs_CXX" >&5 $as_echo "$ld_shlibs_CXX" >&6; } @@ -19506,44 +20137,50 @@ x|xyes) # to ld, don't add -lc before -lgcc. { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether -lc should be explicitly linked in" >&5 $as_echo_n "checking whether -lc should be explicitly linked in... " >&6; } - $RM conftest* - echo "$lt_simple_compile_test_code" > conftest.$ac_ext +if ${lt_cv_archive_cmds_need_lc_CXX+:} false; then : + $as_echo_n "(cached) " >&6 +else + $RM conftest* + echo "$lt_simple_compile_test_code" > conftest.$ac_ext - if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 + if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 (eval $ac_compile) 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } 2>conftest.err; then - soname=conftest - lib=conftest - libobjs=conftest.$ac_objext - deplibs= - wl=$lt_prog_compiler_wl_CXX - pic_flag=$lt_prog_compiler_pic_CXX - compiler_flags=-v - linker_flags=-v - verstring= - output_objdir=. - libname=conftest - lt_save_allow_undefined_flag=$allow_undefined_flag_CXX - allow_undefined_flag_CXX= - if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$archive_cmds_CXX 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1\""; } >&5 + soname=conftest + lib=conftest + libobjs=conftest.$ac_objext + deplibs= + wl=$lt_prog_compiler_wl_CXX + pic_flag=$lt_prog_compiler_pic_CXX + compiler_flags=-v + linker_flags=-v + verstring= + output_objdir=. + libname=conftest + lt_save_allow_undefined_flag=$allow_undefined_flag_CXX + allow_undefined_flag_CXX= + if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$archive_cmds_CXX 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1\""; } >&5 (eval $archive_cmds_CXX 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1) 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; } - then - archive_cmds_need_lc_CXX=no - else - archive_cmds_need_lc_CXX=yes - fi - allow_undefined_flag_CXX=$lt_save_allow_undefined_flag - else - cat conftest.err 1>&5 - fi - $RM conftest* - { $as_echo "$as_me:${as_lineno-$LINENO}: result: $archive_cmds_need_lc_CXX" >&5 -$as_echo "$archive_cmds_need_lc_CXX" >&6; } + then + lt_cv_archive_cmds_need_lc_CXX=no + else + lt_cv_archive_cmds_need_lc_CXX=yes + fi + allow_undefined_flag_CXX=$lt_save_allow_undefined_flag + else + cat conftest.err 1>&5 + fi + $RM conftest* + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_archive_cmds_need_lc_CXX" >&5 +$as_echo "$lt_cv_archive_cmds_need_lc_CXX" >&6; } + archive_cmds_need_lc_CXX=$lt_cv_archive_cmds_need_lc_CXX ;; esac fi @@ -19608,8 +20245,6 @@ esac - - @@ -19638,7 +20273,7 @@ need_version=unknown case $host_os in aix3*) - version_type=linux + version_type=linux # correct to gnu/linux during the next big refactor library_names_spec='${libname}${release}${shared_ext}$versuffix $libname.a' shlibpath_var=LIBPATH @@ -19647,7 +20282,7 @@ aix3*) ;; aix[4-9]*) - version_type=linux + version_type=linux # correct to gnu/linux during the next big refactor need_lib_prefix=no need_version=no hardcode_into_libs=yes @@ -19700,7 +20335,7 @@ amigaos*) m68k) library_names_spec='$libname.ixlibrary $libname.a' # Create ${libname}_ixlibrary.a entries in /sys/libs. - finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`$ECHO "X$lib" | $Xsed -e '\''s%^.*/\([^/]*\)\.ixlibrary$%\1%'\''`; test $RM /sys/libs/${libname}_ixlibrary.a; $show "cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a"; cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a || exit 1; done' + finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`func_echo_all "$lib" | $SED '\''s%^.*/\([^/]*\)\.ixlibrary$%\1%'\''`; test $RM /sys/libs/${libname}_ixlibrary.a; $show "cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a"; cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a || exit 1; done' ;; esac ;; @@ -19712,7 +20347,7 @@ beos*) ;; bsdi[45]*) - version_type=linux + version_type=linux # correct to gnu/linux during the next big refactor need_version=no library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' soname_spec='${libname}${release}${shared_ext}$major' @@ -19731,8 +20366,9 @@ cygwin* | mingw* | pw32* | cegcc*) need_version=no need_lib_prefix=no - case $GCC,$host_os in - yes,cygwin* | yes,mingw* | yes,pw32* | yes,cegcc*) + case $GCC,$cc_basename in + yes,*) + # gcc library_names_spec='$libname.dll.a' # DLL is installed to $(libdir)/../bin by postinstall_cmds postinstall_cmds='base_file=`basename \${file}`~ @@ -19753,36 +20389,82 @@ cygwin* | mingw* | pw32* | cegcc*) cygwin*) # Cygwin DLLs use 'cyg' prefix rather than 'lib' soname_spec='`echo ${libname} | sed -e 's/^lib/cyg/'``echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}' - sys_lib_search_path_spec="/usr/lib /lib/w32api /lib /usr/local/lib" + ;; mingw* | cegcc*) # MinGW DLLs use traditional 'lib' prefix soname_spec='${libname}`echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}' - sys_lib_search_path_spec=`$CC -print-search-dirs | $GREP "^libraries:" | $SED -e "s/^libraries://" -e "s,=/,/,g"` - if $ECHO "$sys_lib_search_path_spec" | $GREP ';[c-zC-Z]:/' >/dev/null; then - # It is most probably a Windows format PATH printed by - # mingw gcc, but we are running on Cygwin. Gcc prints its search - # path with ; separators, and with drive letters. We can handle the - # drive letters (cygwin fileutils understands them), so leave them, - # especially as we might pass files found there to a mingw objdump, - # which wouldn't understand a cygwinified path. Ahh. - sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'` - else - sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"` - fi ;; pw32*) # pw32 DLLs use 'pw' prefix rather than 'lib' library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}' ;; esac + dynamic_linker='Win32 ld.exe' + ;; + + *,cl*) + # Native MSVC + libname_spec='$name' + soname_spec='${libname}`echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext}' + library_names_spec='${libname}.dll.lib' + + case $build_os in + mingw*) + sys_lib_search_path_spec= + lt_save_ifs=$IFS + IFS=';' + for lt_path in $LIB + do + IFS=$lt_save_ifs + # Let DOS variable expansion print the short 8.3 style file name. + lt_path=`cd "$lt_path" 2>/dev/null && cmd //C "for %i in (".") do @echo %~si"` + sys_lib_search_path_spec="$sys_lib_search_path_spec $lt_path" + done + IFS=$lt_save_ifs + # Convert to MSYS style. + sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | sed -e 's|\\\\|/|g' -e 's| \\([a-zA-Z]\\):| /\\1|g' -e 's|^ ||'` + ;; + cygwin*) + # Convert to unix form, then to dos form, then back to unix form + # but this time dos style (no spaces!) so that the unix form looks + # like /cygdrive/c/PROGRA~1:/cygdr... + sys_lib_search_path_spec=`cygpath --path --unix "$LIB"` + sys_lib_search_path_spec=`cygpath --path --dos "$sys_lib_search_path_spec" 2>/dev/null` + sys_lib_search_path_spec=`cygpath --path --unix "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"` + ;; + *) + sys_lib_search_path_spec="$LIB" + if $ECHO "$sys_lib_search_path_spec" | $GREP ';[c-zC-Z]:/' >/dev/null; then + # It is most probably a Windows format PATH. + sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'` + else + sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"` + fi + # FIXME: find the short name or the path components, as spaces are + # common. (e.g. "Program Files" -> "PROGRA~1") + ;; + esac + + # DLL is installed to $(libdir)/../bin by postinstall_cmds + postinstall_cmds='base_file=`basename \${file}`~ + dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\${base_file}'\''i; echo \$dlname'\''`~ + dldir=$destdir/`dirname \$dlpath`~ + test -d \$dldir || mkdir -p \$dldir~ + $install_prog $dir/$dlname \$dldir/$dlname' + postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~ + dlpath=$dir/\$dldll~ + $RM \$dlpath' + shlibpath_overrides_runpath=yes + dynamic_linker='Win32 link.exe' ;; *) + # Assume MSVC wrapper library_names_spec='${libname}`echo ${release} | $SED -e 's/[.]/-/g'`${versuffix}${shared_ext} $libname.lib' + dynamic_linker='Win32 ld.exe' ;; esac - dynamic_linker='Win32 ld.exe' # FIXME: first we should search . and the directory the executable is in shlibpath_var=PATH ;; @@ -19802,7 +20484,7 @@ darwin* | rhapsody*) ;; dgux*) - version_type=linux + version_type=linux # correct to gnu/linux during the next big refactor need_lib_prefix=no need_version=no library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname$shared_ext' @@ -19810,10 +20492,6 @@ dgux*) shlibpath_var=LD_LIBRARY_PATH ;; -freebsd1*) - dynamic_linker=no - ;; - freebsd* | dragonfly*) # DragonFly does not have aout. When/if they implement a new # versioning mechanism, adjust this. @@ -19821,7 +20499,7 @@ freebsd* | dragonfly*) objformat=`/usr/bin/objformat` else case $host_os in - freebsd[123]*) objformat=aout ;; + freebsd[23].*) objformat=aout ;; *) objformat=elf ;; esac fi @@ -19839,7 +20517,7 @@ freebsd* | dragonfly*) esac shlibpath_var=LD_LIBRARY_PATH case $host_os in - freebsd2*) + freebsd2.*) shlibpath_overrides_runpath=yes ;; freebsd3.[01]* | freebsdelf3.[01]*) @@ -19859,12 +20537,26 @@ freebsd* | dragonfly*) ;; gnu*) - version_type=linux + version_type=linux # correct to gnu/linux during the next big refactor need_lib_prefix=no need_version=no library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}${major} ${libname}${shared_ext}' soname_spec='${libname}${release}${shared_ext}$major' shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=no + hardcode_into_libs=yes + ;; + +haiku*) + version_type=linux # correct to gnu/linux during the next big refactor + need_lib_prefix=no + need_version=no + dynamic_linker="$host_os runtime_loader" + library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}${major} ${libname}${shared_ext}' + soname_spec='${libname}${release}${shared_ext}$major' + shlibpath_var=LIBRARY_PATH + shlibpath_overrides_runpath=yes + sys_lib_dlsearch_path_spec='/boot/home/config/lib /boot/common/lib /boot/system/lib' hardcode_into_libs=yes ;; @@ -19910,12 +20602,14 @@ hpux9* | hpux10* | hpux11*) soname_spec='${libname}${release}${shared_ext}$major' ;; esac - # HP-UX runs *really* slowly unless shared libraries are mode 555. + # HP-UX runs *really* slowly unless shared libraries are mode 555, ... postinstall_cmds='chmod 555 $lib' + # or fails outright, so override atomically: + install_override_mode=555 ;; interix[3-9]*) - version_type=linux + version_type=linux # correct to gnu/linux during the next big refactor need_lib_prefix=no need_version=no library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major ${libname}${shared_ext}' @@ -19931,7 +20625,7 @@ irix5* | irix6* | nonstopux*) nonstopux*) version_type=nonstopux ;; *) if test "$lt_cv_prog_gnu_ld" = yes; then - version_type=linux + version_type=linux # correct to gnu/linux during the next big refactor else version_type=irix fi ;; @@ -19968,9 +20662,9 @@ linux*oldld* | linux*aout* | linux*coff*) dynamic_linker=no ;; -# This must be Linux ELF. +# This must be glibc/ELF. linux* | k*bsd*-gnu | kopensolaris*-gnu) - version_type=linux + version_type=linux # correct to gnu/linux during the next big refactor need_lib_prefix=no need_version=no library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' @@ -19978,12 +20672,17 @@ linux* | k*bsd*-gnu | kopensolaris*-gnu) finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir' shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=no + # Some binutils ld are patched to set DT_RUNPATH - save_LDFLAGS=$LDFLAGS - save_libdir=$libdir - eval "libdir=/foo; wl=\"$lt_prog_compiler_wl_CXX\"; \ - LDFLAGS=\"\$LDFLAGS $hardcode_libdir_flag_spec_CXX\"" - cat confdefs.h - <<_ACEOF >conftest.$ac_ext + if ${lt_cv_shlibpath_overrides_runpath+:} false; then : + $as_echo_n "(cached) " >&6 +else + lt_cv_shlibpath_overrides_runpath=no + save_LDFLAGS=$LDFLAGS + save_libdir=$libdir + eval "libdir=/foo; wl=\"$lt_prog_compiler_wl_CXX\"; \ + LDFLAGS=\"\$LDFLAGS $hardcode_libdir_flag_spec_CXX\"" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int @@ -19996,13 +20695,17 @@ main () _ACEOF if ac_fn_cxx_try_link "$LINENO"; then : if ($OBJDUMP -p conftest$ac_exeext) 2>/dev/null | grep "RUNPATH.*$libdir" >/dev/null; then : - shlibpath_overrides_runpath=yes + lt_cv_shlibpath_overrides_runpath=yes fi fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext - LDFLAGS=$save_LDFLAGS - libdir=$save_libdir + LDFLAGS=$save_LDFLAGS + libdir=$save_libdir + +fi + + shlibpath_overrides_runpath=$lt_cv_shlibpath_overrides_runpath # This implies no fast_install, which is unacceptable. # Some rework will be needed to allow for fast_install @@ -20011,7 +20714,7 @@ rm -f core conftest.err conftest.$ac_objext \ # Append ld.so.conf contents to the search path if test -f /etc/ld.so.conf; then - lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \$2)); skip = 1; } { if (!skip) print \$0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;/^[ ]*hwcap[ ]/d;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;/^$/d' | tr '\n' ' '` + lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \$2)); skip = 1; } { if (!skip) print \$0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;/^[ ]*hwcap[ ]/d;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;s/"//g;/^$/d' | tr '\n' ' '` sys_lib_dlsearch_path_spec="/lib /usr/lib $lt_ld_extra" fi @@ -20055,7 +20758,7 @@ netbsd*) ;; newsos6) - version_type=linux + version_type=linux # correct to gnu/linux during the next big refactor library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' shlibpath_var=LD_LIBRARY_PATH shlibpath_overrides_runpath=yes @@ -20124,7 +20827,7 @@ rdos*) ;; solaris*) - version_type=linux + version_type=linux # correct to gnu/linux during the next big refactor need_lib_prefix=no need_version=no library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' @@ -20149,7 +20852,7 @@ sunos4*) ;; sysv4 | sysv4.3*) - version_type=linux + version_type=linux # correct to gnu/linux during the next big refactor library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' soname_spec='${libname}${release}${shared_ext}$major' shlibpath_var=LD_LIBRARY_PATH @@ -20173,7 +20876,7 @@ sysv4 | sysv4.3*) sysv4*MP*) if test -d /usr/nec ;then - version_type=linux + version_type=linux # correct to gnu/linux during the next big refactor library_names_spec='$libname${shared_ext}.$versuffix $libname${shared_ext}.$major $libname${shared_ext}' soname_spec='$libname${shared_ext}.$major' shlibpath_var=LD_LIBRARY_PATH @@ -20204,7 +20907,7 @@ sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*) tpf*) # TPF is a cross-target only. Preferred cross-host = GNU/Linux. - version_type=linux + version_type=linux # correct to gnu/linux during the next big refactor need_lib_prefix=no need_version=no library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' @@ -20214,7 +20917,7 @@ tpf*) ;; uts4*) - version_type=linux + version_type=linux # correct to gnu/linux during the next big refactor library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}' soname_spec='${libname}${release}${shared_ext}$major' shlibpath_var=LD_LIBRARY_PATH @@ -20272,6 +20975,8 @@ fi + + @@ -20322,6 +21027,7 @@ fi fi # test -n "$compiler" CC=$lt_save_CC + CFLAGS=$lt_save_CFLAGS LDCXX=$LD LD=$lt_save_LD GCC=$lt_save_GCC @@ -20383,7 +21089,7 @@ fi set dummy perl; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_path_PERL_PATH+set}" = set; then : +if ${ac_cv_path_PERL_PATH+:} false; then : $as_echo_n "(cached) " >&6 else case $PERL_PATH in @@ -20430,7 +21136,7 @@ if test "x$GST_DISABLE_PARSE" != xyes; then set dummy bison; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_path_BISON_PATH+set}" = set; then : +if ${ac_cv_path_BISON_PATH+:} false; then : $as_echo_n "(cached) " >&6 else case $BISON_PATH in @@ -20488,7 +21194,7 @@ $as_echo "yes" >&6; } set dummy flex; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_path_FLEX_PATH+set}" = set; then : +if ${ac_cv_path_FLEX_PATH+:} false; then : $as_echo_n "(cached) " >&6 else case $FLEX_PATH in @@ -20557,7 +21263,7 @@ fi set dummy valgrind; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_path_VALGRIND_PATH+set}" = set; then : +if ${ac_cv_path_VALGRIND_PATH+:} false; then : $as_echo_n "(cached) " >&6 else case $VALGRIND_PATH in @@ -20633,20 +21339,20 @@ else as_fn_error $? "gobject-introspection-1.0 is not installed" "$LINENO" 5 fi if test -n "$PKG_CONFIG" && \ - { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gobject-introspection-1.0 >= 0.6.8\""; } >&5 - ($PKG_CONFIG --exists --print-errors "gobject-introspection-1.0 >= 0.6.8") 2>&5 + { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gobject-introspection-1.0 >= 1.31.1\""; } >&5 + ($PKG_CONFIG --exists --print-errors "gobject-introspection-1.0 >= 1.31.1") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then found_introspection=yes else - as_fn_error $? "You need to have gobject-introspection >= 0.6.8 installed to build GStreamer" "$LINENO" 5 + as_fn_error $? "You need to have gobject-introspection >= 1.31.1 installed to build GStreamer" "$LINENO" 5 fi ;; #( auto) : if test -n "$PKG_CONFIG" && \ - { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gobject-introspection-1.0 >= 0.6.8\""; } >&5 - ($PKG_CONFIG --exists --print-errors "gobject-introspection-1.0 >= 0.6.8") 2>&5 + { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gobject-introspection-1.0 >= 1.31.1\""; } >&5 + ($PKG_CONFIG --exists --print-errors "gobject-introspection-1.0 >= 1.31.1") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then @@ -20702,7 +21408,7 @@ fi then as_fn_error $? "Internal error - PACKAGE_TARNAME not set" "$LINENO" 5 fi - docdir="\$(datadir)/doc/$PACKAGE_TARNAME-$GST_MAJORMINOR" + docdir="\$(datadir)/doc/$PACKAGE_TARNAME-$GST_API_VERSION" # Check whether --enable-docbook was given. if test "${enable_docbook+set}" = set; then : @@ -20720,7 +21426,7 @@ fi set dummy docbook2ps; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_prog_HAVE_DOCBOOK2PS+set}" = set; then : +if ${ac_cv_prog_HAVE_DOCBOOK2PS+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$HAVE_DOCBOOK2PS"; then @@ -20758,7 +21464,7 @@ fi set dummy docbook2html; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_prog_HAVE_DOCBOOK2HTML+set}" = set; then : +if ${ac_cv_prog_HAVE_DOCBOOK2HTML+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$HAVE_DOCBOOK2HTML"; then @@ -20796,7 +21502,7 @@ fi set dummy jadetex; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_prog_HAVE_JADETEX+set}" = set; then : +if ${ac_cv_prog_HAVE_JADETEX+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$HAVE_JADETEX"; then @@ -20834,7 +21540,7 @@ fi set dummy ps2pdf; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_prog_HAVE_PS2PDF+set}" = set; then : +if ${ac_cv_prog_HAVE_PS2PDF+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$HAVE_PS2PDF"; then @@ -20920,7 +21626,7 @@ $as_echo "no" >&6; } set dummy xsltproc; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_prog_XSLTPROC+set}" = set; then : +if ${ac_cv_prog_XSLTPROC+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$XSLTPROC"; then @@ -20993,7 +21699,7 @@ $as_echo "$XSLTPROC_WORKS" >&6; } set dummy dvips; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_prog_HAVE_DVIPS+set}" = set; then : +if ${ac_cv_prog_HAVE_DVIPS+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$HAVE_DVIPS"; then @@ -21031,7 +21737,7 @@ fi set dummy xmllint; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_prog_HAVE_XMLLINT+set}" = set; then : +if ${ac_cv_prog_HAVE_XMLLINT+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$HAVE_XMLLINT"; then @@ -21070,7 +21776,7 @@ fi set dummy fig2dev; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_prog_HAVE_FIG2DEV+set}" = set; then : +if ${ac_cv_prog_HAVE_FIG2DEV+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$HAVE_FIG2DEV"; then @@ -21135,7 +21841,7 @@ $as_echo "$as_me: WARNING: Did not find fig2dev (from xfig), images will not be set dummy pngtopnm; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_prog_HAVE_PNGTOPNM+set}" = set; then : +if ${ac_cv_prog_HAVE_PNGTOPNM+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$HAVE_PNGTOPNM"; then @@ -21173,7 +21879,7 @@ fi set dummy pnmtops; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_prog_HAVE_PNMTOPS+set}" = set; then : +if ${ac_cv_prog_HAVE_PNMTOPS+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$HAVE_PNMTOPS"; then @@ -21211,7 +21917,7 @@ fi set dummy epstopdf; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_prog_HAVE_EPSTOPDF+set}" = set; then : +if ${ac_cv_prog_HAVE_EPSTOPDF+:} false; then : $as_echo_n "(cached) " >&6 else if test -n "$HAVE_EPSTOPDF"; then @@ -21367,7 +22073,7 @@ fi if test -z "$SED"; then { $as_echo "$as_me:${as_lineno-$LINENO}: checking for a sed that does not truncate output" >&5 $as_echo_n "checking for a sed that does not truncate output... " >&6; } -if test "${ac_cv_path_SED+set}" = set; then : +if ${ac_cv_path_SED+:} false; then : $as_echo_n "(cached) " >&6 else ac_script=s/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb/ @@ -21448,7 +22154,7 @@ do set dummy $ac_prog; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_path_GTKDOC_CHECK+set}" = set; then : +if ${ac_cv_path_GTKDOC_CHECK+:} false; then : $as_echo_n "(cached) " >&6 else case $GTKDOC_CHECK in @@ -21530,7 +22236,7 @@ else: set dummy $python_candidate; ac_word=$2 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_path_PYTHON+set}" = set; then : +if ${ac_cv_path_PYTHON+:} false; then : $as_echo_n "(cached) " >&6 else case $PYTHON in @@ -21657,13 +22363,13 @@ fi LIBM= case $host in -*-*-beos* | *-*-cygwin* | *-*-pw32* | *-*-darwin*) +*-*-beos* | *-*-cegcc* | *-*-cygwin* | *-*-haiku* | *-*-pw32* | *-*-darwin*) # These system don't have libm, or don't need it ;; *-ncr-sysv4.3*) { $as_echo "$as_me:${as_lineno-$LINENO}: checking for _mwvalidcheckl in -lmw" >&5 $as_echo_n "checking for _mwvalidcheckl in -lmw... " >&6; } -if test "${ac_cv_lib_mw__mwvalidcheckl+set}" = set; then : +if ${ac_cv_lib_mw__mwvalidcheckl+:} false; then : $as_echo_n "(cached) " >&6 else ac_check_lib_save_LIBS=$LIBS @@ -21697,13 +22403,13 @@ LIBS=$ac_check_lib_save_LIBS fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_mw__mwvalidcheckl" >&5 $as_echo "$ac_cv_lib_mw__mwvalidcheckl" >&6; } -if test "x$ac_cv_lib_mw__mwvalidcheckl" = x""yes; then : +if test "x$ac_cv_lib_mw__mwvalidcheckl" = xyes; then : LIBM="-lmw" fi { $as_echo "$as_me:${as_lineno-$LINENO}: checking for cos in -lm" >&5 $as_echo_n "checking for cos in -lm... " >&6; } -if test "${ac_cv_lib_m_cos+set}" = set; then : +if ${ac_cv_lib_m_cos+:} false; then : $as_echo_n "(cached) " >&6 else ac_check_lib_save_LIBS=$LIBS @@ -21737,7 +22443,7 @@ LIBS=$ac_check_lib_save_LIBS fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_m_cos" >&5 $as_echo "$ac_cv_lib_m_cos" >&6; } -if test "x$ac_cv_lib_m_cos" = x""yes; then : +if test "x$ac_cv_lib_m_cos" = xyes; then : LIBM="$LIBM -lm" fi @@ -21745,7 +22451,7 @@ fi *) { $as_echo "$as_me:${as_lineno-$LINENO}: checking for cos in -lm" >&5 $as_echo_n "checking for cos in -lm... " >&6; } -if test "${ac_cv_lib_m_cos+set}" = set; then : +if ${ac_cv_lib_m_cos+:} false; then : $as_echo_n "(cached) " >&6 else ac_check_lib_save_LIBS=$LIBS @@ -21779,7 +22485,7 @@ LIBS=$ac_check_lib_save_LIBS fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_m_cos" >&5 $as_echo "$ac_cv_lib_m_cos" >&6; } -if test "x$ac_cv_lib_m_cos" = x""yes; then : +if test "x$ac_cv_lib_m_cos" = xyes; then : LIBM="-lm" fi @@ -21792,7 +22498,7 @@ esac { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ANSI C header files" >&5 $as_echo_n "checking for ANSI C header files... " >&6; } -if test "${ac_cv_header_stdc+set}" = set; then : +if ${ac_cv_header_stdc+:} false; then : $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext @@ -21906,7 +22612,7 @@ fi for ac_header in ucontext.h do : ac_fn_c_check_header_mongrel "$LINENO" "ucontext.h" "ac_cv_header_ucontext_h" "$ac_includes_default" -if test "x$ac_cv_header_ucontext_h" = x""yes; then : +if test "x$ac_cv_header_ucontext_h" = xyes; then : cat >>confdefs.h <<_ACEOF #define HAVE_UCONTEXT_H 1 _ACEOF @@ -21919,7 +22625,7 @@ done for ac_header in sys/socket.h do : ac_fn_c_check_header_mongrel "$LINENO" "sys/socket.h" "ac_cv_header_sys_socket_h" "$ac_includes_default" -if test "x$ac_cv_header_sys_socket_h" = x""yes; then : +if test "x$ac_cv_header_sys_socket_h" = xyes; then : cat >>confdefs.h <<_ACEOF #define HAVE_SYS_SOCKET_H 1 _ACEOF @@ -21940,7 +22646,7 @@ fi for ac_header in sys/times.h do : ac_fn_c_check_header_mongrel "$LINENO" "sys/times.h" "ac_cv_header_sys_times_h" "$ac_includes_default" -if test "x$ac_cv_header_sys_times_h" = x""yes; then : +if test "x$ac_cv_header_sys_times_h" = xyes; then : cat >>confdefs.h <<_ACEOF #define HAVE_SYS_TIMES_H 1 _ACEOF @@ -21952,7 +22658,7 @@ done for ac_header in unistd.h do : ac_fn_c_check_header_mongrel "$LINENO" "unistd.h" "ac_cv_header_unistd_h" "$ac_includes_default" -if test "x$ac_cv_header_unistd_h" = x""yes; then : +if test "x$ac_cv_header_unistd_h" = xyes; then : cat >>confdefs.h <<_ACEOF #define HAVE_UNISTD_H 1 _ACEOF @@ -21973,7 +22679,7 @@ fi for ac_header in process.h do : ac_fn_c_check_header_mongrel "$LINENO" "process.h" "ac_cv_header_process_h" "$ac_includes_default" -if test "x$ac_cv_header_process_h" = x""yes; then : +if test "x$ac_cv_header_process_h" = xyes; then : cat >>confdefs.h <<_ACEOF #define HAVE_PROCESS_H 1 _ACEOF @@ -21986,7 +22692,7 @@ done for ac_header in sys/utsname.h do : ac_fn_c_check_header_mongrel "$LINENO" "sys/utsname.h" "ac_cv_header_sys_utsname_h" "$ac_includes_default" -if test "x$ac_cv_header_sys_utsname_h" = x""yes; then : +if test "x$ac_cv_header_sys_utsname_h" = xyes; then : cat >>confdefs.h <<_ACEOF #define HAVE_SYS_UTSNAME_H 1 _ACEOF @@ -21999,7 +22705,7 @@ done for ac_header in stdio_ext.h do : ac_fn_c_check_header_mongrel "$LINENO" "stdio_ext.h" "ac_cv_header_stdio_ext_h" "$ac_includes_default" -if test "x$ac_cv_header_stdio_ext_h" = x""yes; then : +if test "x$ac_cv_header_stdio_ext_h" = xyes; then : cat >>confdefs.h <<_ACEOF #define HAVE_STDIO_EXT_H 1 _ACEOF @@ -22012,7 +22718,7 @@ done for ac_header in pthread.h do : ac_fn_c_check_header_mongrel "$LINENO" "pthread.h" "ac_cv_header_pthread_h" "$ac_includes_default" -if test "x$ac_cv_header_pthread_h" = x""yes; then : +if test "x$ac_cv_header_pthread_h" = xyes; then : cat >>confdefs.h <<_ACEOF #define HAVE_PTHREAD_H 1 _ACEOF @@ -22033,7 +22739,7 @@ fi for ac_header in sys/prctl.h do : ac_fn_c_check_header_mongrel "$LINENO" "sys/prctl.h" "ac_cv_header_sys_prctl_h" "$ac_includes_default" -if test "x$ac_cv_header_sys_prctl_h" = x""yes; then : +if test "x$ac_cv_header_sys_prctl_h" = xyes; then : cat >>confdefs.h <<_ACEOF #define HAVE_SYS_PRCTL_H 1 _ACEOF @@ -22046,7 +22752,7 @@ done for ac_header in valgrind/valgrind.h do : ac_fn_c_check_header_mongrel "$LINENO" "valgrind/valgrind.h" "ac_cv_header_valgrind_valgrind_h" "$ac_includes_default" -if test "x$ac_cv_header_valgrind_valgrind_h" = x""yes; then : +if test "x$ac_cv_header_valgrind_valgrind_h" = xyes; then : cat >>confdefs.h <<_ACEOF #define HAVE_VALGRIND_VALGRIND_H 1 _ACEOF @@ -22059,7 +22765,7 @@ done for ac_header in winsock2.h do : ac_fn_c_check_header_mongrel "$LINENO" "winsock2.h" "ac_cv_header_winsock2_h" "$ac_includes_default" -if test "x$ac_cv_header_winsock2_h" = x""yes; then : +if test "x$ac_cv_header_winsock2_h" = xyes; then : cat >>confdefs.h <<_ACEOF #define HAVE_WINSOCK2_H 1 _ACEOF @@ -22085,7 +22791,7 @@ if test "x$BUILD_TESTS" = "xyes"; then { $as_echo "$as_me:${as_lineno-$LINENO}: checking for __gmpz_init_set_d in -lgmp" >&5 $as_echo_n "checking for __gmpz_init_set_d in -lgmp... " >&6; } -if test "${ac_cv_lib_gmp___gmpz_init_set_d+set}" = set; then : +if ${ac_cv_lib_gmp___gmpz_init_set_d+:} false; then : $as_echo_n "(cached) " >&6 else ac_check_lib_save_LIBS=$LIBS @@ -22119,7 +22825,7 @@ LIBS=$ac_check_lib_save_LIBS fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_gmp___gmpz_init_set_d" >&5 $as_echo "$ac_cv_lib_gmp___gmpz_init_set_d" >&6; } -if test "x$ac_cv_lib_gmp___gmpz_init_set_d" = x""yes; then : +if test "x$ac_cv_lib_gmp___gmpz_init_set_d" = xyes; then : HAVE_GMP=yes else HAVE_GMP=no @@ -22127,7 +22833,7 @@ fi if test "x$HAVE_GMP" = "xyes"; then ac_fn_c_check_header_mongrel "$LINENO" "gmp.h" "ac_cv_header_gmp_h" "$ac_includes_default" -if test "x$ac_cv_header_gmp_h" = x""yes; then : +if test "x$ac_cv_header_gmp_h" = xyes; then : : else HAVE_GMP=no @@ -22152,7 +22858,7 @@ $as_echo "#define HAVE_GMP 1" >>confdefs.h { $as_echo "$as_me:${as_lineno-$LINENO}: checking for gsl_rng_uniform_int in -lgsl" >&5 $as_echo_n "checking for gsl_rng_uniform_int in -lgsl... " >&6; } -if test "${ac_cv_lib_gsl_gsl_rng_uniform_int+set}" = set; then : +if ${ac_cv_lib_gsl_gsl_rng_uniform_int+:} false; then : $as_echo_n "(cached) " >&6 else ac_check_lib_save_LIBS=$LIBS @@ -22186,7 +22892,7 @@ LIBS=$ac_check_lib_save_LIBS fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_gsl_gsl_rng_uniform_int" >&5 $as_echo "$ac_cv_lib_gsl_gsl_rng_uniform_int" >&6; } -if test "x$ac_cv_lib_gsl_gsl_rng_uniform_int" = x""yes; then : +if test "x$ac_cv_lib_gsl_gsl_rng_uniform_int" = xyes; then : HAVE_GSL=yes else HAVE_GSL=no @@ -22194,7 +22900,7 @@ fi if test "x$HAVE_GSL" = "xyes"; then ac_fn_c_check_header_mongrel "$LINENO" "gsl/gsl_rng.h" "ac_cv_header_gsl_gsl_rng_h" "$ac_includes_default" -if test "x$ac_cv_header_gsl_gsl_rng_h" = x""yes; then : +if test "x$ac_cv_header_gsl_gsl_rng_h" = xyes; then : : else HAVE_GSL=no @@ -22223,7 +22929,7 @@ fi { $as_echo "$as_me:${as_lineno-$LINENO}: checking for __uint128_t" >&5 $as_echo_n "checking for __uint128_t... " >&6; } -if test "${gst_cv_uint128_t+set}" = set; then : +if ${gst_cv_uint128_t+:} false; then : $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext @@ -22298,7 +23004,7 @@ $as_echo "$have_tm_gmtoff" >&6; } for ac_func in gmtime_r do : ac_fn_c_check_func "$LINENO" "gmtime_r" "ac_cv_func_gmtime_r" -if test "x$ac_cv_func_gmtime_r" = x""yes; then : +if test "x$ac_cv_func_gmtime_r" = xyes; then : cat >>confdefs.h <<_ACEOF #define HAVE_GMTIME_R 1 _ACEOF @@ -22309,7 +23015,7 @@ done for ac_func in localtime_r do : ac_fn_c_check_func "$LINENO" "localtime_r" "ac_cv_func_localtime_r" -if test "x$ac_cv_func_localtime_r" = x""yes; then : +if test "x$ac_cv_func_localtime_r" = xyes; then : cat >>confdefs.h <<_ACEOF #define HAVE_LOCALTIME_R 1 _ACEOF @@ -22320,7 +23026,7 @@ done for ac_func in sigaction do : ac_fn_c_check_func "$LINENO" "sigaction" "ac_cv_func_sigaction" -if test "x$ac_cv_func_sigaction" = x""yes; then : +if test "x$ac_cv_func_sigaction" = xyes; then : cat >>confdefs.h <<_ACEOF #define HAVE_SIGACTION 1 _ACEOF @@ -22331,7 +23037,7 @@ done { $as_echo "$as_me:${as_lineno-$LINENO}: checking for _LARGEFILE_SOURCE value needed for large files" >&5 $as_echo_n "checking for _LARGEFILE_SOURCE value needed for large files... " >&6; } -if test "${ac_cv_sys_largefile_source+set}" = set; then : +if ${ac_cv_sys_largefile_source+:} false; then : $as_echo_n "(cached) " >&6 else while :; do @@ -22400,7 +23106,7 @@ fi for ac_func in ftello do : ac_fn_c_check_func "$LINENO" "ftello" "ac_cv_func_ftello" -if test "x$ac_cv_func_ftello" = x""yes; then : +if test "x$ac_cv_func_ftello" = xyes; then : cat >>confdefs.h <<_ACEOF #define HAVE_FTELLO 1 _ACEOF @@ -22412,7 +23118,7 @@ done for ac_func in fgetpos do : ac_fn_c_check_func "$LINENO" "fgetpos" "ac_cv_func_fgetpos" -if test "x$ac_cv_func_fgetpos" = x""yes; then : +if test "x$ac_cv_func_fgetpos" = xyes; then : cat >>confdefs.h <<_ACEOF #define HAVE_FGETPOS 1 _ACEOF @@ -22423,7 +23129,7 @@ done for ac_func in fsetpos do : ac_fn_c_check_func "$LINENO" "fsetpos" "ac_cv_func_fsetpos" -if test "x$ac_cv_func_fsetpos" = x""yes; then : +if test "x$ac_cv_func_fsetpos" = xyes; then : cat >>confdefs.h <<_ACEOF #define HAVE_FSETPOS 1 _ACEOF @@ -22435,7 +23141,7 @@ done for ac_func in poll do : ac_fn_c_check_func "$LINENO" "poll" "ac_cv_func_poll" -if test "x$ac_cv_func_poll" = x""yes; then : +if test "x$ac_cv_func_poll" = xyes; then : cat >>confdefs.h <<_ACEOF #define HAVE_POLL 1 _ACEOF @@ -22446,7 +23152,7 @@ done for ac_func in ppoll do : ac_fn_c_check_func "$LINENO" "ppoll" "ac_cv_func_ppoll" -if test "x$ac_cv_func_ppoll" = x""yes; then : +if test "x$ac_cv_func_ppoll" = xyes; then : cat >>confdefs.h <<_ACEOF #define HAVE_PPOLL 1 _ACEOF @@ -22457,7 +23163,7 @@ done for ac_func in pselect do : ac_fn_c_check_func "$LINENO" "pselect" "ac_cv_func_pselect" -if test "x$ac_cv_func_pselect" = x""yes; then : +if test "x$ac_cv_func_pselect" = xyes; then : cat >>confdefs.h <<_ACEOF #define HAVE_PSELECT 1 _ACEOF @@ -22466,6 +23172,19 @@ fi done +for ac_header in sys/poll.h +do : + ac_fn_c_check_header_mongrel "$LINENO" "sys/poll.h" "ac_cv_header_sys_poll_h" "$ac_includes_default" +if test "x$ac_cv_header_sys_poll_h" = xyes; then : + cat >>confdefs.h <<_ACEOF +#define HAVE_SYS_POLL_H 1 +_ACEOF + +fi + +done + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for broken poll" >&5 $as_echo_n "checking for broken poll... " >&6; } @@ -22536,7 +23255,7 @@ done for ac_func in getpagesize do : ac_fn_c_check_func "$LINENO" "getpagesize" "ac_cv_func_getpagesize" -if test "x$ac_cv_func_getpagesize" = x""yes; then : +if test "x$ac_cv_func_getpagesize" = xyes; then : cat >>confdefs.h <<_ACEOF #define HAVE_GETPAGESIZE 1 _ACEOF @@ -22546,7 +23265,7 @@ done { $as_echo "$as_me:${as_lineno-$LINENO}: checking for working mmap" >&5 $as_echo_n "checking for working mmap... " >&6; } -if test "${ac_cv_func_mmap_fixed_mapped+set}" = set; then : +if ${ac_cv_func_mmap_fixed_mapped+:} false; then : $as_echo_n "(cached) " >&6 else if test "$cross_compiling" = yes; then : @@ -22722,7 +23441,7 @@ fi for ac_func in posix_memalign do : ac_fn_c_check_func "$LINENO" "posix_memalign" "ac_cv_func_posix_memalign" -if test "x$ac_cv_func_posix_memalign" = x""yes; then : +if test "x$ac_cv_func_posix_memalign" = xyes; then : cat >>confdefs.h <<_ACEOF #define HAVE_POSIX_MEMALIGN 1 _ACEOF @@ -22733,7 +23452,7 @@ done for ac_func in getpagesize do : ac_fn_c_check_func "$LINENO" "getpagesize" "ac_cv_func_getpagesize" -if test "x$ac_cv_func_getpagesize" = x""yes; then : +if test "x$ac_cv_func_getpagesize" = xyes; then : cat >>confdefs.h <<_ACEOF #define HAVE_GETPAGESIZE 1 _ACEOF @@ -22745,7 +23464,7 @@ done for ac_func in clock_gettime do : ac_fn_c_check_func "$LINENO" "clock_gettime" "ac_cv_func_clock_gettime" -if test "x$ac_cv_func_clock_gettime" = x""yes; then : +if test "x$ac_cv_func_clock_gettime" = xyes; then : cat >>confdefs.h <<_ACEOF #define HAVE_CLOCK_GETTIME 1 _ACEOF @@ -22754,7 +23473,7 @@ else { $as_echo "$as_me:${as_lineno-$LINENO}: checking for clock_gettime in -lrt" >&5 $as_echo_n "checking for clock_gettime in -lrt... " >&6; } -if test "${ac_cv_lib_rt_clock_gettime+set}" = set; then : +if ${ac_cv_lib_rt_clock_gettime+:} false; then : $as_echo_n "(cached) " >&6 else ac_check_lib_save_LIBS=$LIBS @@ -22788,7 +23507,7 @@ LIBS=$ac_check_lib_save_LIBS fi { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_rt_clock_gettime" >&5 $as_echo "$ac_cv_lib_rt_clock_gettime" >&6; } -if test "x$ac_cv_lib_rt_clock_gettime" = x""yes; then : +if test "x$ac_cv_lib_rt_clock_gettime" = xyes; then : $as_echo "#define HAVE_CLOCK_GETTIME 1" >>confdefs.h @@ -22803,7 +23522,7 @@ done { $as_echo "$as_me:${as_lineno-$LINENO}: checking for posix timers" >&5 $as_echo_n "checking for posix timers... " >&6; } -if test "${gst_cv_posix_timers+set}" = set; then : +if ${gst_cv_posix_timers+:} false; then : $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext @@ -22861,7 +23580,7 @@ fi { $as_echo "$as_me:${as_lineno-$LINENO}: checking for monotonic clock" >&5 $as_echo_n "checking for monotonic clock... " >&6; } -if test "${gst_cv_monotonic_clock+set}" = set; then : +if ${gst_cv_monotonic_clock+:} false; then : $as_echo_n "(cached) " >&6 else cat confdefs.h - <<_ACEOF >conftest.$ac_ext @@ -22920,7 +23639,7 @@ fi { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC implements __PRETTY_FUNCTION__" >&5 $as_echo_n "checking whether $CC implements __PRETTY_FUNCTION__... " >&6; } - if test "${gst_cv_have_pretty_function+set}" = set; then : + if ${gst_cv_have_pretty_function+:} false; then : $as_echo_n "(cached) " >&6 else @@ -22955,7 +23674,7 @@ $as_echo "#define HAVE_PRETTY_FUNCTION 1" >>confdefs.h { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC implements __FUNCTION__" >&5 $as_echo_n "checking whether $CC implements __FUNCTION__... " >&6; } - if test "${gst_cv_have_function+set}" = set; then : + if ${gst_cv_have_function+:} false; then : $as_echo_n "(cached) " >&6 else @@ -22990,7 +23709,7 @@ $as_echo "#define HAVE_FUNCTION 1" >>confdefs.h { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC implements __func__" >&5 $as_echo_n "checking whether $CC implements __func__... " >&6; } - if test "${gst_cv_have_func+set}" = set; then : + if ${gst_cv_have_func+:} false; then : $as_echo_n "(cached) " >&6 else @@ -23036,292 +23755,51 @@ $as_echo "#define HAVE_FUNC 1" >>confdefs.h fi fi fi - -cat >>confdefs.h <<_ACEOF -#define GST_FUNCTION $function -_ACEOF - - - -for ac_func in register_printf_specifier register_printf_function -do : - as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` -ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var" -if eval test \"x\$"$as_ac_var"\" = x"yes"; then : - cat >>confdefs.h <<_ACEOF -#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1 -_ACEOF - HAVE_PRINTF_EXTENSION=yes -fi -done - - -if test "$HAVE_PRINTF_EXTENSION" = yes; then - GST_PRINTF_EXTENSION_POINTER_FORMAT_DEFINE="#define GST_PTR_FORMAT \"P\"" - GST_PRINTF_EXTENSION_SEGMENT_FORMAT_DEFINE="#define GST_SEGMENT_FORMAT \"Q\"" - GST_USING_PRINTF_EXTENSION_DEFINE="#define GST_USING_PRINTF_EXTENSION" - -$as_echo "#define HAVE_PRINTF_EXTENSION 1" >>confdefs.h - -else - GST_PRINTF_EXTENSION_POINTER_FORMAT_DEFINE="#define GST_PTR_FORMAT \"p\"" - GST_PRINTF_EXTENSION_SEGMENT_FORMAT_DEFINE="#define GST_SEGMENT_FORMAT \"p\"" - GST_USING_PRINTF_EXTENSION_DEFINE="#undef GST_USING_PRINTF_EXTENSION" -fi - - - - -save_cflags="$CFLAGS" -CFLAGS="$CFLAGS -D_GNU_SOURCE" -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for dladdr in -ldl" >&5 -$as_echo_n "checking for dladdr in -ldl... " >&6; } -if test "${ac_cv_lib_dl_dladdr+set}" = set; then : - $as_echo_n "(cached) " >&6 -else - ac_check_lib_save_LIBS=$LIBS -LIBS="-ldl $LIBS" -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -/* Override any GCC internal prototype to avoid an error. - Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" -#endif -char dladdr (); -int -main () -{ -return dladdr (); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - ac_cv_lib_dl_dladdr=yes -else - ac_cv_lib_dl_dladdr=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dl_dladdr" >&5 -$as_echo "$ac_cv_lib_dl_dladdr" >&6; } -if test "x$ac_cv_lib_dl_dladdr" = x""yes; then : - -$as_echo "#define HAVE_DLADDR 1" >>confdefs.h - - LIBS="$LIBS -ldl" -fi - -CFLAGS="$save_cflags" - -ac_fn_c_check_func "$LINENO" "socket" "ac_cv_func_socket" -if test "x$ac_cv_func_socket" = x""yes; then : - -else - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for socket in -lsocket" >&5 -$as_echo_n "checking for socket in -lsocket... " >&6; } -if test "${ac_cv_lib_socket_socket+set}" = set; then : - $as_echo_n "(cached) " >&6 -else - ac_check_lib_save_LIBS=$LIBS -LIBS="-lsocket $LIBS" -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -/* Override any GCC internal prototype to avoid an error. - Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" -#endif -char socket (); -int -main () -{ -return socket (); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - ac_cv_lib_socket_socket=yes -else - ac_cv_lib_socket_socket=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_socket_socket" >&5 -$as_echo "$ac_cv_lib_socket_socket" >&6; } -if test "x$ac_cv_lib_socket_socket" = x""yes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_LIBSOCKET 1 -_ACEOF - - LIBS="-lsocket $LIBS" - -fi - -fi - -ac_fn_c_check_func "$LINENO" "gethostbyname" "ac_cv_func_gethostbyname" -if test "x$ac_cv_func_gethostbyname" = x""yes; then : - -else - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for gethostbyname in -lnsl" >&5 -$as_echo_n "checking for gethostbyname in -lnsl... " >&6; } -if test "${ac_cv_lib_nsl_gethostbyname+set}" = set; then : - $as_echo_n "(cached) " >&6 -else - ac_check_lib_save_LIBS=$LIBS -LIBS="-lnsl $LIBS" -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -/* Override any GCC internal prototype to avoid an error. - Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" -#endif -char gethostbyname (); -int -main () -{ -return gethostbyname (); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - ac_cv_lib_nsl_gethostbyname=yes -else - ac_cv_lib_nsl_gethostbyname=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_nsl_gethostbyname" >&5 -$as_echo "$ac_cv_lib_nsl_gethostbyname" >&6; } -if test "x$ac_cv_lib_nsl_gethostbyname" = x""yes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_LIBNSL 1 -_ACEOF - - LIBS="-lnsl $LIBS" - -fi - -fi - - -save_libs="$LIBS" -ac_fn_c_check_func "$LINENO" "inet_aton" "ac_cv_func_inet_aton" -if test "x$ac_cv_func_inet_aton" = x""yes; then : - -else - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for inet_aton in -lnsl" >&5 -$as_echo_n "checking for inet_aton in -lnsl... " >&6; } -if test "${ac_cv_lib_nsl_inet_aton+set}" = set; then : - $as_echo_n "(cached) " >&6 -else - ac_check_lib_save_LIBS=$LIBS -LIBS="-lnsl $LIBS" -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ - -/* Override any GCC internal prototype to avoid an error. - Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" -#endif -char inet_aton (); -int -main () -{ -return inet_aton (); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - ac_cv_lib_nsl_inet_aton=yes -else - ac_cv_lib_nsl_inet_aton=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_nsl_inet_aton" >&5 -$as_echo "$ac_cv_lib_nsl_inet_aton" >&6; } -if test "x$ac_cv_lib_nsl_inet_aton" = x""yes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_LIBNSL 1 + +cat >>confdefs.h <<_ACEOF +#define GST_FUNCTION $function _ACEOF - LIBS="-lnsl $LIBS" -else - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for inet_aton in -lsocket" >&5 -$as_echo_n "checking for inet_aton in -lsocket... " >&6; } -if test "${ac_cv_lib_socket_inet_aton+set}" = set; then : - $as_echo_n "(cached) " >&6 -else - ac_check_lib_save_LIBS=$LIBS -LIBS="-lsocket $LIBS" -cat confdefs.h - <<_ACEOF >conftest.$ac_ext -/* end confdefs.h. */ -/* Override any GCC internal prototype to avoid an error. - Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" -#endif -char inet_aton (); -int -main () -{ -return inet_aton (); - ; - return 0; -} -_ACEOF -if ac_fn_c_try_link "$LINENO"; then : - ac_cv_lib_socket_inet_aton=yes -else - ac_cv_lib_socket_inet_aton=no -fi -rm -f core conftest.err conftest.$ac_objext \ - conftest$ac_exeext conftest.$ac_ext -LIBS=$ac_check_lib_save_LIBS -fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_socket_inet_aton" >&5 -$as_echo "$ac_cv_lib_socket_inet_aton" >&6; } -if test "x$ac_cv_lib_socket_inet_aton" = x""yes; then : +for ac_func in register_printf_specifier register_printf_function +do : + as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` +ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var" +if eval test \"x\$"$as_ac_var"\" = x"yes"; then : cat >>confdefs.h <<_ACEOF -#define HAVE_LIBSOCKET 1 +#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1 _ACEOF + HAVE_PRINTF_EXTENSION=yes +fi +done + + +if test "$HAVE_PRINTF_EXTENSION" = yes; then + GST_PRINTF_EXTENSION_POINTER_FORMAT_DEFINE="#define GST_PTR_FORMAT \"P\"" + GST_PRINTF_EXTENSION_SEGMENT_FORMAT_DEFINE="#define GST_SEGMENT_FORMAT \"Q\"" + GST_USING_PRINTF_EXTENSION_DEFINE="#define GST_USING_PRINTF_EXTENSION" - LIBS="-lsocket $LIBS" +$as_echo "#define HAVE_PRINTF_EXTENSION 1" >>confdefs.h else - { $as_echo "$as_me:${as_lineno-$LINENO}: checking for inet_aton in -lresolv" >&5 -$as_echo_n "checking for inet_aton in -lresolv... " >&6; } -if test "${ac_cv_lib_resolv_inet_aton+set}" = set; then : + GST_PRINTF_EXTENSION_POINTER_FORMAT_DEFINE="#define GST_PTR_FORMAT \"p\"" + GST_PRINTF_EXTENSION_SEGMENT_FORMAT_DEFINE="#define GST_SEGMENT_FORMAT \"p\"" + GST_USING_PRINTF_EXTENSION_DEFINE="#undef GST_USING_PRINTF_EXTENSION" +fi + + + + +save_cflags="$CFLAGS" +CFLAGS="$CFLAGS -D_GNU_SOURCE" +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for dladdr in -ldl" >&5 +$as_echo_n "checking for dladdr in -ldl... " >&6; } +if ${ac_cv_lib_dl_dladdr+:} false; then : $as_echo_n "(cached) " >&6 else ac_check_lib_save_LIBS=$LIBS -LIBS="-lresolv $LIBS" +LIBS="-ldl $LIBS" cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ @@ -23331,52 +23809,37 @@ cat confdefs.h - <<_ACEOF >conftest.$ac_ext #ifdef __cplusplus extern "C" #endif -char inet_aton (); +char dladdr (); int main () { -return inet_aton (); +return dladdr (); ; return 0; } _ACEOF if ac_fn_c_try_link "$LINENO"; then : - ac_cv_lib_resolv_inet_aton=yes + ac_cv_lib_dl_dladdr=yes else - ac_cv_lib_resolv_inet_aton=no + ac_cv_lib_dl_dladdr=no fi rm -f core conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi -{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_resolv_inet_aton" >&5 -$as_echo "$ac_cv_lib_resolv_inet_aton" >&6; } -if test "x$ac_cv_lib_resolv_inet_aton" = x""yes; then : - cat >>confdefs.h <<_ACEOF -#define HAVE_LIBRESOLV 1 -_ACEOF - - LIBS="-lresolv $LIBS" - -else - -$as_echo "#define NO_INET_ATON 1" >>confdefs.h - -fi - -fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dl_dladdr" >&5 +$as_echo "$ac_cv_lib_dl_dladdr" >&6; } +if test "x$ac_cv_lib_dl_dladdr" = xyes; then : -fi +$as_echo "#define HAVE_DLADDR 1" >>confdefs.h + LIBS="$LIBS -ldl" fi -INET_ATON_LIBS=$LIBS - -LIBS="$save_libs" - +CFLAGS="$save_cflags" -GLIB_REQ=2.26 +GLIB_REQ=2.31.14 @@ -23546,21 +24009,22 @@ fi + pkg_failed=no -{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for GLIB_ONLY" >&5 -$as_echo_n "checking for GLIB_ONLY... " >&6; } +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for GIO" >&5 +$as_echo_n "checking for GIO... " >&6; } if test -n "$PKG_CONFIG"; then - if test -n "$GLIB_ONLY_CFLAGS"; then - pkg_cv_GLIB_ONLY_CFLAGS="$GLIB_ONLY_CFLAGS" + if test -n "$GIO_CFLAGS"; then + pkg_cv_GIO_CFLAGS="$GIO_CFLAGS" else if test -n "$PKG_CONFIG" && \ - { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"glib-2.0 >= \$GLIB_REQ\""; } >&5 - ($PKG_CONFIG --exists --print-errors "glib-2.0 >= $GLIB_REQ") 2>&5 + { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gio-2.0 >= \$GLIB_REQ\""; } >&5 + ($PKG_CONFIG --exists --print-errors "gio-2.0 >= $GLIB_REQ") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then - pkg_cv_GLIB_ONLY_CFLAGS=`$PKG_CONFIG --cflags "glib-2.0 >= $GLIB_REQ" 2>/dev/null` + pkg_cv_GIO_CFLAGS=`$PKG_CONFIG --cflags "gio-2.0 >= $GLIB_REQ" 2>/dev/null` else pkg_failed=yes fi @@ -23569,16 +24033,16 @@ else pkg_failed=untried fi if test -n "$PKG_CONFIG"; then - if test -n "$GLIB_ONLY_LIBS"; then - pkg_cv_GLIB_ONLY_LIBS="$GLIB_ONLY_LIBS" + if test -n "$GIO_LIBS"; then + pkg_cv_GIO_LIBS="$GIO_LIBS" else if test -n "$PKG_CONFIG" && \ - { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"glib-2.0 >= \$GLIB_REQ\""; } >&5 - ($PKG_CONFIG --exists --print-errors "glib-2.0 >= $GLIB_REQ") 2>&5 + { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gio-2.0 >= \$GLIB_REQ\""; } >&5 + ($PKG_CONFIG --exists --print-errors "gio-2.0 >= $GLIB_REQ") 2>&5 ac_status=$? $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 test $ac_status = 0; }; then - pkg_cv_GLIB_ONLY_LIBS=`$PKG_CONFIG --libs "glib-2.0 >= $GLIB_REQ" 2>/dev/null` + pkg_cv_GIO_LIBS=`$PKG_CONFIG --libs "gio-2.0 >= $GLIB_REQ" 2>/dev/null` else pkg_failed=yes fi @@ -23597,22 +24061,22 @@ else _pkg_short_errors_supported=no fi if test $_pkg_short_errors_supported = yes; then - GLIB_ONLY_PKG_ERRORS=`$PKG_CONFIG --short-errors --errors-to-stdout --print-errors "glib-2.0 >= $GLIB_REQ"` + GIO_PKG_ERRORS=`$PKG_CONFIG --short-errors --errors-to-stdout --print-errors "gio-2.0 >= $GLIB_REQ"` else - GLIB_ONLY_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "glib-2.0 >= $GLIB_REQ"` + GIO_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "gio-2.0 >= $GLIB_REQ"` fi # Put the nasty error message in config.log where it belongs - echo "$GLIB_ONLY_PKG_ERRORS" >&5 + echo "$GIO_PKG_ERRORS" >&5 - as_fn_error $? "Package requirements (glib-2.0 >= $GLIB_REQ) were not met: + as_fn_error $? "Package requirements (gio-2.0 >= $GLIB_REQ) were not met: -$GLIB_ONLY_PKG_ERRORS +$GIO_PKG_ERRORS Consider adjusting the PKG_CONFIG_PATH environment variable if you installed software in a non-standard prefix. -Alternatively, you may set the environment variables GLIB_ONLY_CFLAGS -and GLIB_ONLY_LIBS to avoid the need to call pkg-config. +Alternatively, you may set the environment variables GIO_CFLAGS +and GIO_LIBS to avoid the need to call pkg-config. See the pkg-config man page for more details. " "$LINENO" 5 elif test $pkg_failed = untried; then @@ -23622,19 +24086,39 @@ as_fn_error $? "The pkg-config script could not be found or is too old. Make su is in your PATH or set the PKG_CONFIG environment variable to the full path to pkg-config. -Alternatively, you may set the environment variables GLIB_ONLY_CFLAGS -and GLIB_ONLY_LIBS to avoid the need to call pkg-config. +Alternatively, you may set the environment variables GIO_CFLAGS +and GIO_LIBS to avoid the need to call pkg-config. See the pkg-config man page for more details. To get pkg-config, see . -See \`config.log' for more details" "$LINENO" 5 ; } +See \`config.log' for more details" "$LINENO" 5; } else - GLIB_ONLY_CFLAGS=$pkg_cv_GLIB_ONLY_CFLAGS - GLIB_ONLY_LIBS=$pkg_cv_GLIB_ONLY_LIBS + GIO_CFLAGS=$pkg_cv_GIO_CFLAGS + GIO_LIBS=$pkg_cv_GIO_LIBS { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } : fi + if test "x$HAVE_GIO" = "xno"; then + as_fn_error $? "This package requires GIO >= $GLIB_REQ to compile." "$LINENO" 5 + fi + + GIO_MODULE_DIR="`$PKG_CONFIG --variable=giomoduledir gio-2.0`" + +cat >>confdefs.h <<_ACEOF +#define GIO_MODULE_DIR "$GIO_MODULE_DIR" +_ACEOF + + GIO_LIBDIR="`$PKG_CONFIG --variable=libdir gio-2.0`" + +cat >>confdefs.h <<_ACEOF +#define GIO_LIBDIR "$GIO_LIBDIR" +_ACEOF + + + + + GLIB_PREFIX="`$PKG_CONFIG --variable=prefix glib-2.0`" @@ -23645,7 +24129,7 @@ if test "${enable_check+set}" = set; then : case "${enableval}" in yes) BUILD_CHECK=yes ;; no) BUILD_CHECK=no ;; - *) as_fn_error $? "bad value ${enableval} for --disable-check" "$LINENO" 5 ;; + *) as_fn_error $? "bad value ${enableval} for --disable-check" "$LINENO" 5 ;; esac else @@ -23815,7 +24299,7 @@ _ACEOF EXP_VAR=PLUGINDIR - FROM_VAR=${libdir}/gstreamer-$GST_MAJORMINOR + FROM_VAR=${libdir}/gstreamer-$GST_API_VERSION prefix_save=$prefix exec_prefix_save=$exec_prefix @@ -23849,13 +24333,18 @@ _ACEOF { $as_echo "$as_me:${as_lineno-$LINENO}: Using $PLUGINDIR as the plugin install location" >&5 $as_echo "$as_me: Using $PLUGINDIR as the plugin install location" >&6;} - plugindir="\$(libdir)/gstreamer-$GST_MAJORMINOR" + plugindir="\$(libdir)/gstreamer-$GST_API_VERSION" GST_PKG_DEPS="glib-2.0, gobject-2.0, gmodule-no-export-2.0, gthread-2.0" +NO_WARNINGS="" +if test "x${GST_DISABLE_GST_DEBUG}" = "xyes"; then + NO_WARNINGS="-Wno-unused" +fi + @@ -24011,7 +24500,7 @@ rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext $as_echo "$flag_ok" >&6; } - if test "x$GST_GIT" != "xno" + if test "x$FATAL_WARNINGS" != "xno" then { $as_echo "$as_me:${as_lineno-$LINENO}: checking to see if compiler understands -Werror" >&5 @@ -24184,10 +24673,10 @@ fi fi fi - if test "x-Wmissing-declarations -Wmissing-prototypes -Wredundant-decls -Wundef -Wwrite-strings -Wformat-nonliteral -Wformat-security -Wold-style-definition -Winit-self -Wmissing-include-dirs -Waddress -Waggregate-return -Wno-multichar -Wnested-externs" != "x" + if test "x-Wmissing-declarations -Wmissing-prototypes -Wredundant-decls -Wundef -Wwrite-strings -Wformat-nonliteral -Wformat-security -Wold-style-definition -Winit-self -Wmissing-include-dirs -Waddress -Waggregate-return -Wno-multichar -Wnested-externs $NO_WARNINGS" != "x" then UNSUPPORTED="" - list="-Wmissing-declarations -Wmissing-prototypes -Wredundant-decls -Wundef -Wwrite-strings -Wformat-nonliteral -Wformat-security -Wold-style-definition -Winit-self -Wmissing-include-dirs -Waddress -Waggregate-return -Wno-multichar -Wnested-externs" + list="-Wmissing-declarations -Wmissing-prototypes -Wredundant-decls -Wundef -Wwrite-strings -Wformat-nonliteral -Wformat-security -Wold-style-definition -Winit-self -Wmissing-include-dirs -Waddress -Waggregate-return -Wno-multichar -Wnested-externs $NO_WARNINGS" for each in $list do @@ -24279,8 +24768,8 @@ GST_OPTION_CXXFLAGS="$GST_OPTION_CXXFLAGS -DGST_USE_UNSTABLE_API" -GST_ALL_CXXFLAGS="-I\$(top_srcdir)/libs -I\$(top_srcdir) -I\$(top_builddir)/libs -I\$(top_builddir) $GLIB_CFLAGS $GLIB_EXTRA_CFLAGS \$(GST_OPTION_CXXFLAGS) \$(ERROR_CXXFLAGS)" -GST_ALL_CFLAGS="-I\$(top_srcdir)/libs -I\$(top_srcdir) -I\$(top_builddir)/libs -I\$(top_builddir) $GLIB_CFLAGS $GLIB_EXTRA_CFLAGS \$(GST_OPTION_CFLAGS) \$(ERROR_CFLAGS)" +GST_ALL_CXXFLAGS="-I\$(top_srcdir)/libs -I\$(top_srcdir) -I\$(top_builddir)/libs -I\$(top_builddir) $GLIB_CFLAGS \$(GLIB_EXTRA_CFLAGS) $XML_CFLAGS \$(GST_OPTION_CXXFLAGS) \$(ERROR_CXXFLAGS)" +GST_ALL_CFLAGS="-I\$(top_srcdir)/libs -I\$(top_srcdir) -I\$(top_builddir)/libs -I\$(top_builddir) $GLIB_CFLAGS \$(GLIB_EXTRA_CFLAGS) $XML_CFLAGS \$(GST_OPTION_CFLAGS) \$(ERROR_CFLAGS)" GST_ALL_LIBS="$GLIB_LIBS $LTLIBINTL \$(GCOV_LIBS)" @@ -24294,12 +24783,12 @@ fi -GST_LIB_LDFLAGS="-export-symbols-regex \^_*\(gst_\|Gst\|GST_\).*" +GST_LIB_LDFLAGS="-export-symbols-regex \^_?\(gst_\|Gst\|GST_\).*" GST_OBJ_CFLAGS="\$(GST_ALL_CFLAGS)" GST_OBJ_CXXFLAGS="\$(GST_ALL_CXXFLAGS)" -GST_OBJ_LIBS="\$(top_builddir)/gst/libgstreamer-$GST_MAJORMINOR.la \$(GST_ALL_LIBS)" +GST_OBJ_LIBS="\$(top_builddir)/gst/libgstreamer-$GST_API_VERSION.la \$(GST_ALL_LIBS)" @@ -24310,7 +24799,7 @@ GST_PLUGIN_LDFLAGS="$GST_PLUGIN_LDFLAGS" EXP_VAR=GST_PLUGIN_SCANNER_INSTALLED - FROM_VAR=${libexecdir}/gstreamer-$GST_MAJORMINOR/gst-plugin-scanner + FROM_VAR=${libexecdir}/gstreamer-$GST_API_VERSION/gst-plugin-scanner prefix_save=$prefix exec_prefix_save=$exec_prefix @@ -24374,7 +24863,7 @@ done for ac_func in localtime_r do : ac_fn_c_check_func "$LINENO" "localtime_r" "ac_cv_func_localtime_r" -if test "x$ac_cv_func_localtime_r" = x""yes; then : +if test "x$ac_cv_func_localtime_r" = xyes; then : cat >>confdefs.h <<_ACEOF #define HAVE_LOCALTIME_R 1 _ACEOF @@ -24390,7 +24879,7 @@ $as_echo_n "checking for stdint types... " >&6; } ac_stdint_h=`echo _stdint.h` # try to shortcircuit - if the default include path of the compiler # can find a "stdint.h" header then we assume that all compilers can. -if test "${ac_cv_header_stdint_t+set}" = set; then : +if ${ac_cv_header_stdint_t+:} false; then : $as_echo_n "(cached) " >&6 else @@ -24465,7 +24954,7 @@ ac_cv_stdint_result="(no helpful system typedefs seen)" { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdint uintptr_t" >&5 $as_echo_n "checking for stdint uintptr_t... " >&6; } -if test "${ac_cv_header_stdint_x+set}" = set; then : +if ${ac_cv_header_stdint_x+:} false; then : $as_echo_n "(cached) " >&6 else @@ -24478,7 +24967,7 @@ $as_echo "(..)" >&6; } unset ac_cv_type_uint64_t ac_fn_c_check_type "$LINENO" "uintptr_t" "ac_cv_type_uintptr_t" "#include <$i> " -if test "x$ac_cv_type_uintptr_t" = x""yes; then : +if test "x$ac_cv_type_uintptr_t" = xyes; then : ac_cv_header_stdint_x=$i else continue @@ -24486,7 +24975,7 @@ fi ac_fn_c_check_type "$LINENO" "uint64_t" "ac_cv_type_uint64_t" "#include<$i> " -if test "x$ac_cv_type_uint64_t" = x""yes; then : +if test "x$ac_cv_type_uint64_t" = xyes; then : and64="/uint64_t" else and64="" @@ -24507,7 +24996,7 @@ if test "_$ac_cv_header_stdint_x" = "_" ; then { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdint uint32_t" >&5 $as_echo_n "checking for stdint uint32_t... " >&6; } -if test "${ac_cv_header_stdint_o+set}" = set; then : +if ${ac_cv_header_stdint_o+:} false; then : $as_echo_n "(cached) " >&6 else @@ -24520,7 +25009,7 @@ $as_echo "(..)" >&6; } unset ac_cv_type_uint64_t ac_fn_c_check_type "$LINENO" "uint32_t" "ac_cv_type_uint32_t" "#include <$i> " -if test "x$ac_cv_type_uint32_t" = x""yes; then : +if test "x$ac_cv_type_uint32_t" = xyes; then : ac_cv_header_stdint_o=$i else continue @@ -24528,7 +25017,7 @@ fi ac_fn_c_check_type "$LINENO" "uint64_t" "ac_cv_type_uint64_t" "#include<$i> " -if test "x$ac_cv_type_uint64_t" = x""yes; then : +if test "x$ac_cv_type_uint64_t" = xyes; then : and64="/uint64_t" else and64="" @@ -24552,7 +25041,7 @@ if test "_$ac_cv_header_stdint_o" = "_" ; then { $as_echo "$as_me:${as_lineno-$LINENO}: checking for stdint u_int32_t" >&5 $as_echo_n "checking for stdint u_int32_t... " >&6; } -if test "${ac_cv_header_stdint_u+set}" = set; then : +if ${ac_cv_header_stdint_u+:} false; then : $as_echo_n "(cached) " >&6 else @@ -24564,7 +25053,7 @@ $as_echo "(..)" >&6; } unset ac_cv_type_u_int64_t ac_fn_c_check_type "$LINENO" "u_int32_t" "ac_cv_type_u_int32_t" "#include <$i> " -if test "x$ac_cv_type_u_int32_t" = x""yes; then : +if test "x$ac_cv_type_u_int32_t" = xyes; then : ac_cv_header_stdint_u=$i else continue @@ -24572,7 +25061,7 @@ fi ac_fn_c_check_type "$LINENO" "u_int64_t" "ac_cv_type_u_int64_t" "#include<$i> " -if test "x$ac_cv_type_u_int64_t" = x""yes; then : +if test "x$ac_cv_type_u_int64_t" = xyes; then : and64="/u_int64_t" else and64="" @@ -24603,7 +25092,7 @@ $as_echo "(..)" >&6; } # This bug is HP SR number 8606223364. { $as_echo "$as_me:${as_lineno-$LINENO}: checking size of char" >&5 $as_echo_n "checking size of char... " >&6; } -if test "${ac_cv_sizeof_char+set}" = set; then : +if ${ac_cv_sizeof_char+:} false; then : $as_echo_n "(cached) " >&6 else if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (char))" "ac_cv_sizeof_char" "$ac_includes_default"; then : @@ -24613,7 +25102,7 @@ else { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} as_fn_error 77 "cannot compute sizeof (char) -See \`config.log' for more details" "$LINENO" 5 ; } +See \`config.log' for more details" "$LINENO" 5; } else ac_cv_sizeof_char=0 fi @@ -24636,7 +25125,7 @@ _ACEOF # This bug is HP SR number 8606223364. { $as_echo "$as_me:${as_lineno-$LINENO}: checking size of short" >&5 $as_echo_n "checking size of short... " >&6; } -if test "${ac_cv_sizeof_short+set}" = set; then : +if ${ac_cv_sizeof_short+:} false; then : $as_echo_n "(cached) " >&6 else if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (short))" "ac_cv_sizeof_short" "$ac_includes_default"; then : @@ -24646,7 +25135,7 @@ else { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} as_fn_error 77 "cannot compute sizeof (short) -See \`config.log' for more details" "$LINENO" 5 ; } +See \`config.log' for more details" "$LINENO" 5; } else ac_cv_sizeof_short=0 fi @@ -24669,7 +25158,7 @@ _ACEOF # This bug is HP SR number 8606223364. { $as_echo "$as_me:${as_lineno-$LINENO}: checking size of int" >&5 $as_echo_n "checking size of int... " >&6; } -if test "${ac_cv_sizeof_int+set}" = set; then : +if ${ac_cv_sizeof_int+:} false; then : $as_echo_n "(cached) " >&6 else if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (int))" "ac_cv_sizeof_int" "$ac_includes_default"; then : @@ -24679,7 +25168,7 @@ else { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} as_fn_error 77 "cannot compute sizeof (int) -See \`config.log' for more details" "$LINENO" 5 ; } +See \`config.log' for more details" "$LINENO" 5; } else ac_cv_sizeof_int=0 fi @@ -24702,7 +25191,7 @@ _ACEOF # This bug is HP SR number 8606223364. { $as_echo "$as_me:${as_lineno-$LINENO}: checking size of long" >&5 $as_echo_n "checking size of long... " >&6; } -if test "${ac_cv_sizeof_long+set}" = set; then : +if ${ac_cv_sizeof_long+:} false; then : $as_echo_n "(cached) " >&6 else if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (long))" "ac_cv_sizeof_long" "$ac_includes_default"; then : @@ -24712,7 +25201,7 @@ else { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} as_fn_error 77 "cannot compute sizeof (long) -See \`config.log' for more details" "$LINENO" 5 ; } +See \`config.log' for more details" "$LINENO" 5; } else ac_cv_sizeof_long=0 fi @@ -24735,7 +25224,7 @@ _ACEOF # This bug is HP SR number 8606223364. { $as_echo "$as_me:${as_lineno-$LINENO}: checking size of void*" >&5 $as_echo_n "checking size of void*... " >&6; } -if test "${ac_cv_sizeof_voidp+set}" = set; then : +if ${ac_cv_sizeof_voidp+:} false; then : $as_echo_n "(cached) " >&6 else if ac_fn_c_compute_int "$LINENO" "(long int) (sizeof (void*))" "ac_cv_sizeof_voidp" "$ac_includes_default"; then : @@ -24745,7 +25234,7 @@ else { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} as_fn_error 77 "cannot compute sizeof (void*) -See \`config.log' for more details" "$LINENO" 5 ; } +See \`config.log' for more details" "$LINENO" 5; } else ac_cv_sizeof_voidp=0 fi @@ -24814,19 +25303,19 @@ unset ac_cv_type_int_least32_t unset ac_cv_type_int_fast32_t ac_fn_c_check_type "$LINENO" "int_least32_t" "ac_cv_type_int_least32_t" "#include <$ac_cv_header_stdint> " -if test "x$ac_cv_type_int_least32_t" = x""yes; then : +if test "x$ac_cv_type_int_least32_t" = xyes; then : fi ac_fn_c_check_type "$LINENO" "int_fast32_t" "ac_cv_type_int_fast32_t" "#include<$ac_cv_header_stdint> " -if test "x$ac_cv_type_int_fast32_t" = x""yes; then : +if test "x$ac_cv_type_int_fast32_t" = xyes; then : fi ac_fn_c_check_type "$LINENO" "intmax_t" "ac_cv_type_intmax_t" "#include <$ac_cv_header_stdint> " -if test "x$ac_cv_type_intmax_t" = x""yes; then : +if test "x$ac_cv_type_intmax_t" = xyes; then : fi @@ -24872,7 +25361,7 @@ fi -ac_config_files="$ac_config_files Makefile gst/Makefile gst/gstconfig.h gst/gstversion.h gst/parse/Makefile libs/Makefile libs/gst/Makefile libs/gst/base/Makefile libs/gst/check/Makefile libs/gst/check/libcheck/Makefile libs/gst/check/libcheck/check.h libs/gst/controller/Makefile libs/gst/dataprotocol/Makefile libs/gst/helpers/Makefile libs/gst/net/Makefile plugins/Makefile plugins/indexers/Makefile plugins/elements/Makefile po/Makefile.in tests/Makefile tests/benchmarks/Makefile tests/check/Makefile tests/misc/Makefile tests/examples/Makefile tests/examples/adapter/Makefile tests/examples/controller/Makefile tests/examples/stepping/Makefile tests/examples/helloworld/Makefile tests/examples/launch/Makefile tests/examples/manual/Makefile tests/examples/metadata/Makefile tests/examples/queue/Makefile tests/examples/streams/Makefile tests/examples/typefind/Makefile tools/Makefile common/Makefile common/m4/Makefile docs/Makefile docs/design/Makefile docs/faq/Makefile docs/gst/Makefile docs/gst/gstreamer.types docs/libs/Makefile docs/plugins/Makefile docs/manual/Makefile docs/pwg/Makefile docs/slides/Makefile docs/xsl/Makefile docs/version.entities m4/Makefile pkgconfig/Makefile stamp.h pkgconfig/gstreamer.pc pkgconfig/gstreamer-uninstalled.pc pkgconfig/gstreamer-base.pc pkgconfig/gstreamer-base-uninstalled.pc pkgconfig/gstreamer-check.pc pkgconfig/gstreamer-check-uninstalled.pc pkgconfig/gstreamer-controller.pc pkgconfig/gstreamer-controller-uninstalled.pc pkgconfig/gstreamer-dataprotocol.pc pkgconfig/gstreamer-dataprotocol-uninstalled.pc pkgconfig/gstreamer-net.pc pkgconfig/gstreamer-net-uninstalled.pc gst-element-check.m4 gstreamer.spec" +ac_config_files="$ac_config_files Makefile gst/Makefile gst/gstconfig.h gst/gstversion.h gst/parse/Makefile libs/Makefile libs/gst/Makefile libs/gst/base/Makefile libs/gst/check/Makefile libs/gst/check/libcheck/Makefile libs/gst/check/libcheck/check.h libs/gst/controller/Makefile libs/gst/helpers/Makefile libs/gst/net/Makefile plugins/Makefile plugins/elements/Makefile po/Makefile.in tests/Makefile tests/benchmarks/Makefile tests/check/Makefile tests/misc/Makefile tests/examples/Makefile tests/examples/adapter/Makefile tests/examples/controller/Makefile tests/examples/stepping/Makefile tests/examples/helloworld/Makefile tests/examples/launch/Makefile tests/examples/manual/Makefile tests/examples/metadata/Makefile tests/examples/queue/Makefile tests/examples/streams/Makefile tests/examples/typefind/Makefile tools/Makefile common/Makefile common/m4/Makefile docs/Makefile docs/design/Makefile docs/faq/Makefile docs/gst/Makefile docs/gst/gstreamer.types docs/libs/Makefile docs/plugins/Makefile docs/manual/Makefile docs/pwg/Makefile docs/slides/Makefile docs/xsl/Makefile docs/version.entities m4/Makefile pkgconfig/Makefile stamp.h pkgconfig/gstreamer.pc pkgconfig/gstreamer-uninstalled.pc pkgconfig/gstreamer-base.pc pkgconfig/gstreamer-base-uninstalled.pc pkgconfig/gstreamer-check.pc pkgconfig/gstreamer-check-uninstalled.pc pkgconfig/gstreamer-controller.pc pkgconfig/gstreamer-controller-uninstalled.pc pkgconfig/gstreamer-net.pc pkgconfig/gstreamer-net-uninstalled.pc gst-element-check.m4 gstreamer.spec" sed \ @@ -24881,7 +25370,7 @@ sed \ -e 's/.* GST_DATADIR$/#define GST_DATADIR PREFIX "\\\\share"/' \ -e 's/.* GST_LEVEL_DEFAULT$/#define GST_LEVEL_DEFAULT GST_LEVEL_ERROR/' \ -e 's/.* GST_LICENSE$/#define GST_LICENSE "'$GST_LICENSE'"/' \ - -e 's/.* GST_MAJORMINOR$/#define GST_MAJORMINOR "'$GST_MAJORMINOR'"/' \ + -e 's/.* GST_API_VERSION$/#define GST_API_VERSION "'$GST_API_VERSION'"/' \ -e "s,.* GST_PACKAGE_NAME$,#define GST_PACKAGE_NAME \"${GST_PACKAGE_NAME}\"," \ -e 's/.* GST_PACKAGE_ORIGIN$/#define GST_PACKAGE_ORIGIN "Unknown package origin"/' \ -e "s,.* GST_PACKAGE_RELEASE_DATETIME$,#define GST_PACKAGE_RELEASE_DATETIME \"${GST_PACKAGE_RELEASE_DATETIME}\"," \ @@ -24905,7 +25394,7 @@ sed \ -e "s/.* PACKAGE_STRING$/#define PACKAGE_STRING \"$PACKAGE_STRING\"/" \ -e 's/.* PACKAGE_TARNAME$/#define PACKAGE_TARNAME "'$PACKAGE_TARNAME'"/' \ -e 's/.* PACKAGE_VERSION$/#define PACKAGE_VERSION "'$PACKAGE_VERSION'"/' \ - -e 's/.* PLUGINDIR$/#ifdef _DEBUG\n# define PLUGINDIR PREFIX "\\\\debug\\\\lib\\\\gstreamer-0.11"\n#else\n# define PLUGINDIR PREFIX "\\\\lib\\\\gstreamer-0.11"\n#endif/' \ + -e 's/.* PLUGINDIR$/#ifdef _DEBUG\n# define PLUGINDIR PREFIX "\\\\debug\\\\lib\\\\gstreamer-1.0"\n#else\n# define PLUGINDIR PREFIX "\\\\lib\\\\gstreamer-1.0"\n#endif/' \ -e 's/.* GST_PLUGIN_SCANNER_INSTALLED$/#define GST_PLUGIN_SCANNER_INSTALLED LIBDIR "\\\\gst-plugin-scanner"/' \ -e 's/.* VERSION$/#define VERSION "'$VERSION'"/' \ config.h.in >win32/common/config.h-new @@ -24974,10 +25463,21 @@ $as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;; :end' >>confcache if diff "$cache_file" confcache >/dev/null 2>&1; then :; else if test -w "$cache_file"; then - test "x$cache_file" != "x/dev/null" && + if test "x$cache_file" != "x/dev/null"; then { $as_echo "$as_me:${as_lineno-$LINENO}: updating cache $cache_file" >&5 $as_echo "$as_me: updating cache $cache_file" >&6;} - cat confcache >$cache_file + if test ! -f "$cache_file" || test -h "$cache_file"; then + cat confcache >"$cache_file" + else + case $cache_file in #( + */* | ?:*) + mv -f confcache "$cache_file"$$ && + mv -f "$cache_file"$$ "$cache_file" ;; #( + *) + mv -f confcache "$cache_file" ;; + esac + fi + fi else { $as_echo "$as_me:${as_lineno-$LINENO}: not updating unwritable cache $cache_file" >&5 $as_echo "$as_me: not updating unwritable cache $cache_file" >&6;} @@ -25052,10 +25552,6 @@ if test -z "${GST_DISABLE_REGISTRY_TRUE}" && test -z "${GST_DISABLE_REGISTRY_FAL as_fn_error $? "conditional \"GST_DISABLE_REGISTRY\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi -if test -z "${GST_DISABLE_NET_TRUE}" && test -z "${GST_DISABLE_NET_FALSE}"; then - as_fn_error $? "conditional \"GST_DISABLE_NET\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi if test -z "${GST_DISABLE_PLUGIN_TRUE}" && test -z "${GST_DISABLE_PLUGIN_FALSE}"; then as_fn_error $? "conditional \"GST_DISABLE_PLUGIN\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 @@ -25145,10 +25641,6 @@ if test -z "${am__fastdepCXX_TRUE}" && test -z "${am__fastdepCXX_FALSE}"; then as_fn_error $? "conditional \"am__fastdepCXX\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi -if test -z "${am__fastdepCXX_TRUE}" && test -z "${am__fastdepCXX_FALSE}"; then - as_fn_error $? "conditional \"am__fastdepCXX\" was never defined. -Usually this means the macro was only invoked conditionally." "$LINENO" 5 -fi if test -z "${HAVE_CXX_TRUE}" && test -z "${HAVE_CXX_FALSE}"; then as_fn_error $? "conditional \"HAVE_CXX\" was never defined. Usually this means the macro was only invoked conditionally." "$LINENO" 5 @@ -25226,7 +25718,7 @@ if test -z "${SUBUNIT_TRUE}" && test -z "${SUBUNIT_FALSE}"; then Usually this means the macro was only invoked conditionally." "$LINENO" 5 fi -: ${CONFIG_STATUS=./config.status} +: "${CONFIG_STATUS=./config.status}" ac_write_fail=0 ac_clean_files_save=$ac_clean_files ac_clean_files="$ac_clean_files $CONFIG_STATUS" @@ -25327,6 +25819,7 @@ fi IFS=" "" $as_nl" # Find who we are. Look in the path if we contain no directory separator. +as_myself= case $0 in #(( *[\\/]* ) as_myself=$0 ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR @@ -25633,8 +26126,8 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" -This file was extended by GStreamer $as_me 0.11.1, which was -generated by GNU Autoconf 2.67. Invocation command line was +This file was extended by GStreamer $as_me 0.11.90, which was +generated by GNU Autoconf 2.68. Invocation command line was CONFIG_FILES = $CONFIG_FILES CONFIG_HEADERS = $CONFIG_HEADERS @@ -25699,8 +26192,8 @@ _ACEOF cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" ac_cs_version="\\ -GStreamer config.status 0.11.1 -configured by $0, generated by GNU Autoconf 2.67, +GStreamer config.status 0.11.90 +configured by $0, generated by GNU Autoconf 2.68, with options \\"\$ac_cs_config\\" Copyright (C) 2010 Free Software Foundation, Inc. @@ -25828,186 +26321,212 @@ AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir" sed_quote_subst='$sed_quote_subst' double_quote_subst='$double_quote_subst' delay_variable_subst='$delay_variable_subst' -AS='`$ECHO "X$AS" | $Xsed -e "$delay_single_quote_subst"`' -DLLTOOL='`$ECHO "X$DLLTOOL" | $Xsed -e "$delay_single_quote_subst"`' -OBJDUMP='`$ECHO "X$OBJDUMP" | $Xsed -e "$delay_single_quote_subst"`' -macro_version='`$ECHO "X$macro_version" | $Xsed -e "$delay_single_quote_subst"`' -macro_revision='`$ECHO "X$macro_revision" | $Xsed -e "$delay_single_quote_subst"`' -enable_shared='`$ECHO "X$enable_shared" | $Xsed -e "$delay_single_quote_subst"`' -enable_static='`$ECHO "X$enable_static" | $Xsed -e "$delay_single_quote_subst"`' -pic_mode='`$ECHO "X$pic_mode" | $Xsed -e "$delay_single_quote_subst"`' -enable_fast_install='`$ECHO "X$enable_fast_install" | $Xsed -e "$delay_single_quote_subst"`' -host_alias='`$ECHO "X$host_alias" | $Xsed -e "$delay_single_quote_subst"`' -host='`$ECHO "X$host" | $Xsed -e "$delay_single_quote_subst"`' -host_os='`$ECHO "X$host_os" | $Xsed -e "$delay_single_quote_subst"`' -build_alias='`$ECHO "X$build_alias" | $Xsed -e "$delay_single_quote_subst"`' -build='`$ECHO "X$build" | $Xsed -e "$delay_single_quote_subst"`' -build_os='`$ECHO "X$build_os" | $Xsed -e "$delay_single_quote_subst"`' -SED='`$ECHO "X$SED" | $Xsed -e "$delay_single_quote_subst"`' -Xsed='`$ECHO "X$Xsed" | $Xsed -e "$delay_single_quote_subst"`' -GREP='`$ECHO "X$GREP" | $Xsed -e "$delay_single_quote_subst"`' -EGREP='`$ECHO "X$EGREP" | $Xsed -e "$delay_single_quote_subst"`' -FGREP='`$ECHO "X$FGREP" | $Xsed -e "$delay_single_quote_subst"`' -LD='`$ECHO "X$LD" | $Xsed -e "$delay_single_quote_subst"`' -NM='`$ECHO "X$NM" | $Xsed -e "$delay_single_quote_subst"`' -LN_S='`$ECHO "X$LN_S" | $Xsed -e "$delay_single_quote_subst"`' -max_cmd_len='`$ECHO "X$max_cmd_len" | $Xsed -e "$delay_single_quote_subst"`' -ac_objext='`$ECHO "X$ac_objext" | $Xsed -e "$delay_single_quote_subst"`' -exeext='`$ECHO "X$exeext" | $Xsed -e "$delay_single_quote_subst"`' -lt_unset='`$ECHO "X$lt_unset" | $Xsed -e "$delay_single_quote_subst"`' -lt_SP2NL='`$ECHO "X$lt_SP2NL" | $Xsed -e "$delay_single_quote_subst"`' -lt_NL2SP='`$ECHO "X$lt_NL2SP" | $Xsed -e "$delay_single_quote_subst"`' -reload_flag='`$ECHO "X$reload_flag" | $Xsed -e "$delay_single_quote_subst"`' -reload_cmds='`$ECHO "X$reload_cmds" | $Xsed -e "$delay_single_quote_subst"`' -deplibs_check_method='`$ECHO "X$deplibs_check_method" | $Xsed -e "$delay_single_quote_subst"`' -file_magic_cmd='`$ECHO "X$file_magic_cmd" | $Xsed -e "$delay_single_quote_subst"`' -AR='`$ECHO "X$AR" | $Xsed -e "$delay_single_quote_subst"`' -AR_FLAGS='`$ECHO "X$AR_FLAGS" | $Xsed -e "$delay_single_quote_subst"`' -STRIP='`$ECHO "X$STRIP" | $Xsed -e "$delay_single_quote_subst"`' -RANLIB='`$ECHO "X$RANLIB" | $Xsed -e "$delay_single_quote_subst"`' -old_postinstall_cmds='`$ECHO "X$old_postinstall_cmds" | $Xsed -e "$delay_single_quote_subst"`' -old_postuninstall_cmds='`$ECHO "X$old_postuninstall_cmds" | $Xsed -e "$delay_single_quote_subst"`' -old_archive_cmds='`$ECHO "X$old_archive_cmds" | $Xsed -e "$delay_single_quote_subst"`' -CC='`$ECHO "X$CC" | $Xsed -e "$delay_single_quote_subst"`' -CFLAGS='`$ECHO "X$CFLAGS" | $Xsed -e "$delay_single_quote_subst"`' -compiler='`$ECHO "X$compiler" | $Xsed -e "$delay_single_quote_subst"`' -GCC='`$ECHO "X$GCC" | $Xsed -e "$delay_single_quote_subst"`' -lt_cv_sys_global_symbol_pipe='`$ECHO "X$lt_cv_sys_global_symbol_pipe" | $Xsed -e "$delay_single_quote_subst"`' -lt_cv_sys_global_symbol_to_cdecl='`$ECHO "X$lt_cv_sys_global_symbol_to_cdecl" | $Xsed -e "$delay_single_quote_subst"`' -lt_cv_sys_global_symbol_to_c_name_address='`$ECHO "X$lt_cv_sys_global_symbol_to_c_name_address" | $Xsed -e "$delay_single_quote_subst"`' -lt_cv_sys_global_symbol_to_c_name_address_lib_prefix='`$ECHO "X$lt_cv_sys_global_symbol_to_c_name_address_lib_prefix" | $Xsed -e "$delay_single_quote_subst"`' -objdir='`$ECHO "X$objdir" | $Xsed -e "$delay_single_quote_subst"`' -SHELL='`$ECHO "X$SHELL" | $Xsed -e "$delay_single_quote_subst"`' -ECHO='`$ECHO "X$ECHO" | $Xsed -e "$delay_single_quote_subst"`' -MAGIC_CMD='`$ECHO "X$MAGIC_CMD" | $Xsed -e "$delay_single_quote_subst"`' -lt_prog_compiler_no_builtin_flag='`$ECHO "X$lt_prog_compiler_no_builtin_flag" | $Xsed -e "$delay_single_quote_subst"`' -lt_prog_compiler_wl='`$ECHO "X$lt_prog_compiler_wl" | $Xsed -e "$delay_single_quote_subst"`' -lt_prog_compiler_pic='`$ECHO "X$lt_prog_compiler_pic" | $Xsed -e "$delay_single_quote_subst"`' -lt_prog_compiler_static='`$ECHO "X$lt_prog_compiler_static" | $Xsed -e "$delay_single_quote_subst"`' -lt_cv_prog_compiler_c_o='`$ECHO "X$lt_cv_prog_compiler_c_o" | $Xsed -e "$delay_single_quote_subst"`' -need_locks='`$ECHO "X$need_locks" | $Xsed -e "$delay_single_quote_subst"`' -DSYMUTIL='`$ECHO "X$DSYMUTIL" | $Xsed -e "$delay_single_quote_subst"`' -NMEDIT='`$ECHO "X$NMEDIT" | $Xsed -e "$delay_single_quote_subst"`' -LIPO='`$ECHO "X$LIPO" | $Xsed -e "$delay_single_quote_subst"`' -OTOOL='`$ECHO "X$OTOOL" | $Xsed -e "$delay_single_quote_subst"`' -OTOOL64='`$ECHO "X$OTOOL64" | $Xsed -e "$delay_single_quote_subst"`' -libext='`$ECHO "X$libext" | $Xsed -e "$delay_single_quote_subst"`' -shrext_cmds='`$ECHO "X$shrext_cmds" | $Xsed -e "$delay_single_quote_subst"`' -extract_expsyms_cmds='`$ECHO "X$extract_expsyms_cmds" | $Xsed -e "$delay_single_quote_subst"`' -archive_cmds_need_lc='`$ECHO "X$archive_cmds_need_lc" | $Xsed -e "$delay_single_quote_subst"`' -enable_shared_with_static_runtimes='`$ECHO "X$enable_shared_with_static_runtimes" | $Xsed -e "$delay_single_quote_subst"`' -export_dynamic_flag_spec='`$ECHO "X$export_dynamic_flag_spec" | $Xsed -e "$delay_single_quote_subst"`' -whole_archive_flag_spec='`$ECHO "X$whole_archive_flag_spec" | $Xsed -e "$delay_single_quote_subst"`' -compiler_needs_object='`$ECHO "X$compiler_needs_object" | $Xsed -e "$delay_single_quote_subst"`' -old_archive_from_new_cmds='`$ECHO "X$old_archive_from_new_cmds" | $Xsed -e "$delay_single_quote_subst"`' -old_archive_from_expsyms_cmds='`$ECHO "X$old_archive_from_expsyms_cmds" | $Xsed -e "$delay_single_quote_subst"`' -archive_cmds='`$ECHO "X$archive_cmds" | $Xsed -e "$delay_single_quote_subst"`' -archive_expsym_cmds='`$ECHO "X$archive_expsym_cmds" | $Xsed -e "$delay_single_quote_subst"`' -module_cmds='`$ECHO "X$module_cmds" | $Xsed -e "$delay_single_quote_subst"`' -module_expsym_cmds='`$ECHO "X$module_expsym_cmds" | $Xsed -e "$delay_single_quote_subst"`' -with_gnu_ld='`$ECHO "X$with_gnu_ld" | $Xsed -e "$delay_single_quote_subst"`' -allow_undefined_flag='`$ECHO "X$allow_undefined_flag" | $Xsed -e "$delay_single_quote_subst"`' -no_undefined_flag='`$ECHO "X$no_undefined_flag" | $Xsed -e "$delay_single_quote_subst"`' -hardcode_libdir_flag_spec='`$ECHO "X$hardcode_libdir_flag_spec" | $Xsed -e "$delay_single_quote_subst"`' -hardcode_libdir_flag_spec_ld='`$ECHO "X$hardcode_libdir_flag_spec_ld" | $Xsed -e "$delay_single_quote_subst"`' -hardcode_libdir_separator='`$ECHO "X$hardcode_libdir_separator" | $Xsed -e "$delay_single_quote_subst"`' -hardcode_direct='`$ECHO "X$hardcode_direct" | $Xsed -e "$delay_single_quote_subst"`' -hardcode_direct_absolute='`$ECHO "X$hardcode_direct_absolute" | $Xsed -e "$delay_single_quote_subst"`' -hardcode_minus_L='`$ECHO "X$hardcode_minus_L" | $Xsed -e "$delay_single_quote_subst"`' -hardcode_shlibpath_var='`$ECHO "X$hardcode_shlibpath_var" | $Xsed -e "$delay_single_quote_subst"`' -hardcode_automatic='`$ECHO "X$hardcode_automatic" | $Xsed -e "$delay_single_quote_subst"`' -inherit_rpath='`$ECHO "X$inherit_rpath" | $Xsed -e "$delay_single_quote_subst"`' -link_all_deplibs='`$ECHO "X$link_all_deplibs" | $Xsed -e "$delay_single_quote_subst"`' -fix_srcfile_path='`$ECHO "X$fix_srcfile_path" | $Xsed -e "$delay_single_quote_subst"`' -always_export_symbols='`$ECHO "X$always_export_symbols" | $Xsed -e "$delay_single_quote_subst"`' -export_symbols_cmds='`$ECHO "X$export_symbols_cmds" | $Xsed -e "$delay_single_quote_subst"`' -exclude_expsyms='`$ECHO "X$exclude_expsyms" | $Xsed -e "$delay_single_quote_subst"`' -include_expsyms='`$ECHO "X$include_expsyms" | $Xsed -e "$delay_single_quote_subst"`' -prelink_cmds='`$ECHO "X$prelink_cmds" | $Xsed -e "$delay_single_quote_subst"`' -file_list_spec='`$ECHO "X$file_list_spec" | $Xsed -e "$delay_single_quote_subst"`' -variables_saved_for_relink='`$ECHO "X$variables_saved_for_relink" | $Xsed -e "$delay_single_quote_subst"`' -need_lib_prefix='`$ECHO "X$need_lib_prefix" | $Xsed -e "$delay_single_quote_subst"`' -need_version='`$ECHO "X$need_version" | $Xsed -e "$delay_single_quote_subst"`' -version_type='`$ECHO "X$version_type" | $Xsed -e "$delay_single_quote_subst"`' -runpath_var='`$ECHO "X$runpath_var" | $Xsed -e "$delay_single_quote_subst"`' -shlibpath_var='`$ECHO "X$shlibpath_var" | $Xsed -e "$delay_single_quote_subst"`' -shlibpath_overrides_runpath='`$ECHO "X$shlibpath_overrides_runpath" | $Xsed -e "$delay_single_quote_subst"`' -libname_spec='`$ECHO "X$libname_spec" | $Xsed -e "$delay_single_quote_subst"`' -library_names_spec='`$ECHO "X$library_names_spec" | $Xsed -e "$delay_single_quote_subst"`' -soname_spec='`$ECHO "X$soname_spec" | $Xsed -e "$delay_single_quote_subst"`' -postinstall_cmds='`$ECHO "X$postinstall_cmds" | $Xsed -e "$delay_single_quote_subst"`' -postuninstall_cmds='`$ECHO "X$postuninstall_cmds" | $Xsed -e "$delay_single_quote_subst"`' -finish_cmds='`$ECHO "X$finish_cmds" | $Xsed -e "$delay_single_quote_subst"`' -finish_eval='`$ECHO "X$finish_eval" | $Xsed -e "$delay_single_quote_subst"`' -hardcode_into_libs='`$ECHO "X$hardcode_into_libs" | $Xsed -e "$delay_single_quote_subst"`' -sys_lib_search_path_spec='`$ECHO "X$sys_lib_search_path_spec" | $Xsed -e "$delay_single_quote_subst"`' -sys_lib_dlsearch_path_spec='`$ECHO "X$sys_lib_dlsearch_path_spec" | $Xsed -e "$delay_single_quote_subst"`' -hardcode_action='`$ECHO "X$hardcode_action" | $Xsed -e "$delay_single_quote_subst"`' -enable_dlopen='`$ECHO "X$enable_dlopen" | $Xsed -e "$delay_single_quote_subst"`' -enable_dlopen_self='`$ECHO "X$enable_dlopen_self" | $Xsed -e "$delay_single_quote_subst"`' -enable_dlopen_self_static='`$ECHO "X$enable_dlopen_self_static" | $Xsed -e "$delay_single_quote_subst"`' -old_striplib='`$ECHO "X$old_striplib" | $Xsed -e "$delay_single_quote_subst"`' -striplib='`$ECHO "X$striplib" | $Xsed -e "$delay_single_quote_subst"`' -compiler_lib_search_dirs='`$ECHO "X$compiler_lib_search_dirs" | $Xsed -e "$delay_single_quote_subst"`' -predep_objects='`$ECHO "X$predep_objects" | $Xsed -e "$delay_single_quote_subst"`' -postdep_objects='`$ECHO "X$postdep_objects" | $Xsed -e "$delay_single_quote_subst"`' -predeps='`$ECHO "X$predeps" | $Xsed -e "$delay_single_quote_subst"`' -postdeps='`$ECHO "X$postdeps" | $Xsed -e "$delay_single_quote_subst"`' -compiler_lib_search_path='`$ECHO "X$compiler_lib_search_path" | $Xsed -e "$delay_single_quote_subst"`' -LD_CXX='`$ECHO "X$LD_CXX" | $Xsed -e "$delay_single_quote_subst"`' -old_archive_cmds_CXX='`$ECHO "X$old_archive_cmds_CXX" | $Xsed -e "$delay_single_quote_subst"`' -compiler_CXX='`$ECHO "X$compiler_CXX" | $Xsed -e "$delay_single_quote_subst"`' -GCC_CXX='`$ECHO "X$GCC_CXX" | $Xsed -e "$delay_single_quote_subst"`' -lt_prog_compiler_no_builtin_flag_CXX='`$ECHO "X$lt_prog_compiler_no_builtin_flag_CXX" | $Xsed -e "$delay_single_quote_subst"`' -lt_prog_compiler_wl_CXX='`$ECHO "X$lt_prog_compiler_wl_CXX" | $Xsed -e "$delay_single_quote_subst"`' -lt_prog_compiler_pic_CXX='`$ECHO "X$lt_prog_compiler_pic_CXX" | $Xsed -e "$delay_single_quote_subst"`' -lt_prog_compiler_static_CXX='`$ECHO "X$lt_prog_compiler_static_CXX" | $Xsed -e "$delay_single_quote_subst"`' -lt_cv_prog_compiler_c_o_CXX='`$ECHO "X$lt_cv_prog_compiler_c_o_CXX" | $Xsed -e "$delay_single_quote_subst"`' -archive_cmds_need_lc_CXX='`$ECHO "X$archive_cmds_need_lc_CXX" | $Xsed -e "$delay_single_quote_subst"`' -enable_shared_with_static_runtimes_CXX='`$ECHO "X$enable_shared_with_static_runtimes_CXX" | $Xsed -e "$delay_single_quote_subst"`' -export_dynamic_flag_spec_CXX='`$ECHO "X$export_dynamic_flag_spec_CXX" | $Xsed -e "$delay_single_quote_subst"`' -whole_archive_flag_spec_CXX='`$ECHO "X$whole_archive_flag_spec_CXX" | $Xsed -e "$delay_single_quote_subst"`' -compiler_needs_object_CXX='`$ECHO "X$compiler_needs_object_CXX" | $Xsed -e "$delay_single_quote_subst"`' -old_archive_from_new_cmds_CXX='`$ECHO "X$old_archive_from_new_cmds_CXX" | $Xsed -e "$delay_single_quote_subst"`' -old_archive_from_expsyms_cmds_CXX='`$ECHO "X$old_archive_from_expsyms_cmds_CXX" | $Xsed -e "$delay_single_quote_subst"`' -archive_cmds_CXX='`$ECHO "X$archive_cmds_CXX" | $Xsed -e "$delay_single_quote_subst"`' -archive_expsym_cmds_CXX='`$ECHO "X$archive_expsym_cmds_CXX" | $Xsed -e "$delay_single_quote_subst"`' -module_cmds_CXX='`$ECHO "X$module_cmds_CXX" | $Xsed -e "$delay_single_quote_subst"`' -module_expsym_cmds_CXX='`$ECHO "X$module_expsym_cmds_CXX" | $Xsed -e "$delay_single_quote_subst"`' -with_gnu_ld_CXX='`$ECHO "X$with_gnu_ld_CXX" | $Xsed -e "$delay_single_quote_subst"`' -allow_undefined_flag_CXX='`$ECHO "X$allow_undefined_flag_CXX" | $Xsed -e "$delay_single_quote_subst"`' -no_undefined_flag_CXX='`$ECHO "X$no_undefined_flag_CXX" | $Xsed -e "$delay_single_quote_subst"`' -hardcode_libdir_flag_spec_CXX='`$ECHO "X$hardcode_libdir_flag_spec_CXX" | $Xsed -e "$delay_single_quote_subst"`' -hardcode_libdir_flag_spec_ld_CXX='`$ECHO "X$hardcode_libdir_flag_spec_ld_CXX" | $Xsed -e "$delay_single_quote_subst"`' -hardcode_libdir_separator_CXX='`$ECHO "X$hardcode_libdir_separator_CXX" | $Xsed -e "$delay_single_quote_subst"`' -hardcode_direct_CXX='`$ECHO "X$hardcode_direct_CXX" | $Xsed -e "$delay_single_quote_subst"`' -hardcode_direct_absolute_CXX='`$ECHO "X$hardcode_direct_absolute_CXX" | $Xsed -e "$delay_single_quote_subst"`' -hardcode_minus_L_CXX='`$ECHO "X$hardcode_minus_L_CXX" | $Xsed -e "$delay_single_quote_subst"`' -hardcode_shlibpath_var_CXX='`$ECHO "X$hardcode_shlibpath_var_CXX" | $Xsed -e "$delay_single_quote_subst"`' -hardcode_automatic_CXX='`$ECHO "X$hardcode_automatic_CXX" | $Xsed -e "$delay_single_quote_subst"`' -inherit_rpath_CXX='`$ECHO "X$inherit_rpath_CXX" | $Xsed -e "$delay_single_quote_subst"`' -link_all_deplibs_CXX='`$ECHO "X$link_all_deplibs_CXX" | $Xsed -e "$delay_single_quote_subst"`' -fix_srcfile_path_CXX='`$ECHO "X$fix_srcfile_path_CXX" | $Xsed -e "$delay_single_quote_subst"`' -always_export_symbols_CXX='`$ECHO "X$always_export_symbols_CXX" | $Xsed -e "$delay_single_quote_subst"`' -export_symbols_cmds_CXX='`$ECHO "X$export_symbols_cmds_CXX" | $Xsed -e "$delay_single_quote_subst"`' -exclude_expsyms_CXX='`$ECHO "X$exclude_expsyms_CXX" | $Xsed -e "$delay_single_quote_subst"`' -include_expsyms_CXX='`$ECHO "X$include_expsyms_CXX" | $Xsed -e "$delay_single_quote_subst"`' -prelink_cmds_CXX='`$ECHO "X$prelink_cmds_CXX" | $Xsed -e "$delay_single_quote_subst"`' -file_list_spec_CXX='`$ECHO "X$file_list_spec_CXX" | $Xsed -e "$delay_single_quote_subst"`' -hardcode_action_CXX='`$ECHO "X$hardcode_action_CXX" | $Xsed -e "$delay_single_quote_subst"`' -compiler_lib_search_dirs_CXX='`$ECHO "X$compiler_lib_search_dirs_CXX" | $Xsed -e "$delay_single_quote_subst"`' -predep_objects_CXX='`$ECHO "X$predep_objects_CXX" | $Xsed -e "$delay_single_quote_subst"`' -postdep_objects_CXX='`$ECHO "X$postdep_objects_CXX" | $Xsed -e "$delay_single_quote_subst"`' -predeps_CXX='`$ECHO "X$predeps_CXX" | $Xsed -e "$delay_single_quote_subst"`' -postdeps_CXX='`$ECHO "X$postdeps_CXX" | $Xsed -e "$delay_single_quote_subst"`' -compiler_lib_search_path_CXX='`$ECHO "X$compiler_lib_search_path_CXX" | $Xsed -e "$delay_single_quote_subst"`' +AS='`$ECHO "$AS" | $SED "$delay_single_quote_subst"`' +DLLTOOL='`$ECHO "$DLLTOOL" | $SED "$delay_single_quote_subst"`' +OBJDUMP='`$ECHO "$OBJDUMP" | $SED "$delay_single_quote_subst"`' +macro_version='`$ECHO "$macro_version" | $SED "$delay_single_quote_subst"`' +macro_revision='`$ECHO "$macro_revision" | $SED "$delay_single_quote_subst"`' +enable_shared='`$ECHO "$enable_shared" | $SED "$delay_single_quote_subst"`' +enable_static='`$ECHO "$enable_static" | $SED "$delay_single_quote_subst"`' +pic_mode='`$ECHO "$pic_mode" | $SED "$delay_single_quote_subst"`' +enable_fast_install='`$ECHO "$enable_fast_install" | $SED "$delay_single_quote_subst"`' +SHELL='`$ECHO "$SHELL" | $SED "$delay_single_quote_subst"`' +ECHO='`$ECHO "$ECHO" | $SED "$delay_single_quote_subst"`' +PATH_SEPARATOR='`$ECHO "$PATH_SEPARATOR" | $SED "$delay_single_quote_subst"`' +host_alias='`$ECHO "$host_alias" | $SED "$delay_single_quote_subst"`' +host='`$ECHO "$host" | $SED "$delay_single_quote_subst"`' +host_os='`$ECHO "$host_os" | $SED "$delay_single_quote_subst"`' +build_alias='`$ECHO "$build_alias" | $SED "$delay_single_quote_subst"`' +build='`$ECHO "$build" | $SED "$delay_single_quote_subst"`' +build_os='`$ECHO "$build_os" | $SED "$delay_single_quote_subst"`' +SED='`$ECHO "$SED" | $SED "$delay_single_quote_subst"`' +Xsed='`$ECHO "$Xsed" | $SED "$delay_single_quote_subst"`' +GREP='`$ECHO "$GREP" | $SED "$delay_single_quote_subst"`' +EGREP='`$ECHO "$EGREP" | $SED "$delay_single_quote_subst"`' +FGREP='`$ECHO "$FGREP" | $SED "$delay_single_quote_subst"`' +LD='`$ECHO "$LD" | $SED "$delay_single_quote_subst"`' +NM='`$ECHO "$NM" | $SED "$delay_single_quote_subst"`' +LN_S='`$ECHO "$LN_S" | $SED "$delay_single_quote_subst"`' +max_cmd_len='`$ECHO "$max_cmd_len" | $SED "$delay_single_quote_subst"`' +ac_objext='`$ECHO "$ac_objext" | $SED "$delay_single_quote_subst"`' +exeext='`$ECHO "$exeext" | $SED "$delay_single_quote_subst"`' +lt_unset='`$ECHO "$lt_unset" | $SED "$delay_single_quote_subst"`' +lt_SP2NL='`$ECHO "$lt_SP2NL" | $SED "$delay_single_quote_subst"`' +lt_NL2SP='`$ECHO "$lt_NL2SP" | $SED "$delay_single_quote_subst"`' +lt_cv_to_host_file_cmd='`$ECHO "$lt_cv_to_host_file_cmd" | $SED "$delay_single_quote_subst"`' +lt_cv_to_tool_file_cmd='`$ECHO "$lt_cv_to_tool_file_cmd" | $SED "$delay_single_quote_subst"`' +reload_flag='`$ECHO "$reload_flag" | $SED "$delay_single_quote_subst"`' +reload_cmds='`$ECHO "$reload_cmds" | $SED "$delay_single_quote_subst"`' +deplibs_check_method='`$ECHO "$deplibs_check_method" | $SED "$delay_single_quote_subst"`' +file_magic_cmd='`$ECHO "$file_magic_cmd" | $SED "$delay_single_quote_subst"`' +file_magic_glob='`$ECHO "$file_magic_glob" | $SED "$delay_single_quote_subst"`' +want_nocaseglob='`$ECHO "$want_nocaseglob" | $SED "$delay_single_quote_subst"`' +sharedlib_from_linklib_cmd='`$ECHO "$sharedlib_from_linklib_cmd" | $SED "$delay_single_quote_subst"`' +AR='`$ECHO "$AR" | $SED "$delay_single_quote_subst"`' +AR_FLAGS='`$ECHO "$AR_FLAGS" | $SED "$delay_single_quote_subst"`' +archiver_list_spec='`$ECHO "$archiver_list_spec" | $SED "$delay_single_quote_subst"`' +STRIP='`$ECHO "$STRIP" | $SED "$delay_single_quote_subst"`' +RANLIB='`$ECHO "$RANLIB" | $SED "$delay_single_quote_subst"`' +old_postinstall_cmds='`$ECHO "$old_postinstall_cmds" | $SED "$delay_single_quote_subst"`' +old_postuninstall_cmds='`$ECHO "$old_postuninstall_cmds" | $SED "$delay_single_quote_subst"`' +old_archive_cmds='`$ECHO "$old_archive_cmds" | $SED "$delay_single_quote_subst"`' +lock_old_archive_extraction='`$ECHO "$lock_old_archive_extraction" | $SED "$delay_single_quote_subst"`' +CC='`$ECHO "$CC" | $SED "$delay_single_quote_subst"`' +CFLAGS='`$ECHO "$CFLAGS" | $SED "$delay_single_quote_subst"`' +compiler='`$ECHO "$compiler" | $SED "$delay_single_quote_subst"`' +GCC='`$ECHO "$GCC" | $SED "$delay_single_quote_subst"`' +lt_cv_sys_global_symbol_pipe='`$ECHO "$lt_cv_sys_global_symbol_pipe" | $SED "$delay_single_quote_subst"`' +lt_cv_sys_global_symbol_to_cdecl='`$ECHO "$lt_cv_sys_global_symbol_to_cdecl" | $SED "$delay_single_quote_subst"`' +lt_cv_sys_global_symbol_to_c_name_address='`$ECHO "$lt_cv_sys_global_symbol_to_c_name_address" | $SED "$delay_single_quote_subst"`' +lt_cv_sys_global_symbol_to_c_name_address_lib_prefix='`$ECHO "$lt_cv_sys_global_symbol_to_c_name_address_lib_prefix" | $SED "$delay_single_quote_subst"`' +nm_file_list_spec='`$ECHO "$nm_file_list_spec" | $SED "$delay_single_quote_subst"`' +lt_sysroot='`$ECHO "$lt_sysroot" | $SED "$delay_single_quote_subst"`' +objdir='`$ECHO "$objdir" | $SED "$delay_single_quote_subst"`' +MAGIC_CMD='`$ECHO "$MAGIC_CMD" | $SED "$delay_single_quote_subst"`' +lt_prog_compiler_no_builtin_flag='`$ECHO "$lt_prog_compiler_no_builtin_flag" | $SED "$delay_single_quote_subst"`' +lt_prog_compiler_pic='`$ECHO "$lt_prog_compiler_pic" | $SED "$delay_single_quote_subst"`' +lt_prog_compiler_wl='`$ECHO "$lt_prog_compiler_wl" | $SED "$delay_single_quote_subst"`' +lt_prog_compiler_static='`$ECHO "$lt_prog_compiler_static" | $SED "$delay_single_quote_subst"`' +lt_cv_prog_compiler_c_o='`$ECHO "$lt_cv_prog_compiler_c_o" | $SED "$delay_single_quote_subst"`' +need_locks='`$ECHO "$need_locks" | $SED "$delay_single_quote_subst"`' +MANIFEST_TOOL='`$ECHO "$MANIFEST_TOOL" | $SED "$delay_single_quote_subst"`' +DSYMUTIL='`$ECHO "$DSYMUTIL" | $SED "$delay_single_quote_subst"`' +NMEDIT='`$ECHO "$NMEDIT" | $SED "$delay_single_quote_subst"`' +LIPO='`$ECHO "$LIPO" | $SED "$delay_single_quote_subst"`' +OTOOL='`$ECHO "$OTOOL" | $SED "$delay_single_quote_subst"`' +OTOOL64='`$ECHO "$OTOOL64" | $SED "$delay_single_quote_subst"`' +libext='`$ECHO "$libext" | $SED "$delay_single_quote_subst"`' +shrext_cmds='`$ECHO "$shrext_cmds" | $SED "$delay_single_quote_subst"`' +extract_expsyms_cmds='`$ECHO "$extract_expsyms_cmds" | $SED "$delay_single_quote_subst"`' +archive_cmds_need_lc='`$ECHO "$archive_cmds_need_lc" | $SED "$delay_single_quote_subst"`' +enable_shared_with_static_runtimes='`$ECHO "$enable_shared_with_static_runtimes" | $SED "$delay_single_quote_subst"`' +export_dynamic_flag_spec='`$ECHO "$export_dynamic_flag_spec" | $SED "$delay_single_quote_subst"`' +whole_archive_flag_spec='`$ECHO "$whole_archive_flag_spec" | $SED "$delay_single_quote_subst"`' +compiler_needs_object='`$ECHO "$compiler_needs_object" | $SED "$delay_single_quote_subst"`' +old_archive_from_new_cmds='`$ECHO "$old_archive_from_new_cmds" | $SED "$delay_single_quote_subst"`' +old_archive_from_expsyms_cmds='`$ECHO "$old_archive_from_expsyms_cmds" | $SED "$delay_single_quote_subst"`' +archive_cmds='`$ECHO "$archive_cmds" | $SED "$delay_single_quote_subst"`' +archive_expsym_cmds='`$ECHO "$archive_expsym_cmds" | $SED "$delay_single_quote_subst"`' +module_cmds='`$ECHO "$module_cmds" | $SED "$delay_single_quote_subst"`' +module_expsym_cmds='`$ECHO "$module_expsym_cmds" | $SED "$delay_single_quote_subst"`' +with_gnu_ld='`$ECHO "$with_gnu_ld" | $SED "$delay_single_quote_subst"`' +allow_undefined_flag='`$ECHO "$allow_undefined_flag" | $SED "$delay_single_quote_subst"`' +no_undefined_flag='`$ECHO "$no_undefined_flag" | $SED "$delay_single_quote_subst"`' +hardcode_libdir_flag_spec='`$ECHO "$hardcode_libdir_flag_spec" | $SED "$delay_single_quote_subst"`' +hardcode_libdir_separator='`$ECHO "$hardcode_libdir_separator" | $SED "$delay_single_quote_subst"`' +hardcode_direct='`$ECHO "$hardcode_direct" | $SED "$delay_single_quote_subst"`' +hardcode_direct_absolute='`$ECHO "$hardcode_direct_absolute" | $SED "$delay_single_quote_subst"`' +hardcode_minus_L='`$ECHO "$hardcode_minus_L" | $SED "$delay_single_quote_subst"`' +hardcode_shlibpath_var='`$ECHO "$hardcode_shlibpath_var" | $SED "$delay_single_quote_subst"`' +hardcode_automatic='`$ECHO "$hardcode_automatic" | $SED "$delay_single_quote_subst"`' +inherit_rpath='`$ECHO "$inherit_rpath" | $SED "$delay_single_quote_subst"`' +link_all_deplibs='`$ECHO "$link_all_deplibs" | $SED "$delay_single_quote_subst"`' +always_export_symbols='`$ECHO "$always_export_symbols" | $SED "$delay_single_quote_subst"`' +export_symbols_cmds='`$ECHO "$export_symbols_cmds" | $SED "$delay_single_quote_subst"`' +exclude_expsyms='`$ECHO "$exclude_expsyms" | $SED "$delay_single_quote_subst"`' +include_expsyms='`$ECHO "$include_expsyms" | $SED "$delay_single_quote_subst"`' +prelink_cmds='`$ECHO "$prelink_cmds" | $SED "$delay_single_quote_subst"`' +postlink_cmds='`$ECHO "$postlink_cmds" | $SED "$delay_single_quote_subst"`' +file_list_spec='`$ECHO "$file_list_spec" | $SED "$delay_single_quote_subst"`' +variables_saved_for_relink='`$ECHO "$variables_saved_for_relink" | $SED "$delay_single_quote_subst"`' +need_lib_prefix='`$ECHO "$need_lib_prefix" | $SED "$delay_single_quote_subst"`' +need_version='`$ECHO "$need_version" | $SED "$delay_single_quote_subst"`' +version_type='`$ECHO "$version_type" | $SED "$delay_single_quote_subst"`' +runpath_var='`$ECHO "$runpath_var" | $SED "$delay_single_quote_subst"`' +shlibpath_var='`$ECHO "$shlibpath_var" | $SED "$delay_single_quote_subst"`' +shlibpath_overrides_runpath='`$ECHO "$shlibpath_overrides_runpath" | $SED "$delay_single_quote_subst"`' +libname_spec='`$ECHO "$libname_spec" | $SED "$delay_single_quote_subst"`' +library_names_spec='`$ECHO "$library_names_spec" | $SED "$delay_single_quote_subst"`' +soname_spec='`$ECHO "$soname_spec" | $SED "$delay_single_quote_subst"`' +install_override_mode='`$ECHO "$install_override_mode" | $SED "$delay_single_quote_subst"`' +postinstall_cmds='`$ECHO "$postinstall_cmds" | $SED "$delay_single_quote_subst"`' +postuninstall_cmds='`$ECHO "$postuninstall_cmds" | $SED "$delay_single_quote_subst"`' +finish_cmds='`$ECHO "$finish_cmds" | $SED "$delay_single_quote_subst"`' +finish_eval='`$ECHO "$finish_eval" | $SED "$delay_single_quote_subst"`' +hardcode_into_libs='`$ECHO "$hardcode_into_libs" | $SED "$delay_single_quote_subst"`' +sys_lib_search_path_spec='`$ECHO "$sys_lib_search_path_spec" | $SED "$delay_single_quote_subst"`' +sys_lib_dlsearch_path_spec='`$ECHO "$sys_lib_dlsearch_path_spec" | $SED "$delay_single_quote_subst"`' +hardcode_action='`$ECHO "$hardcode_action" | $SED "$delay_single_quote_subst"`' +enable_dlopen='`$ECHO "$enable_dlopen" | $SED "$delay_single_quote_subst"`' +enable_dlopen_self='`$ECHO "$enable_dlopen_self" | $SED "$delay_single_quote_subst"`' +enable_dlopen_self_static='`$ECHO "$enable_dlopen_self_static" | $SED "$delay_single_quote_subst"`' +old_striplib='`$ECHO "$old_striplib" | $SED "$delay_single_quote_subst"`' +striplib='`$ECHO "$striplib" | $SED "$delay_single_quote_subst"`' +compiler_lib_search_dirs='`$ECHO "$compiler_lib_search_dirs" | $SED "$delay_single_quote_subst"`' +predep_objects='`$ECHO "$predep_objects" | $SED "$delay_single_quote_subst"`' +postdep_objects='`$ECHO "$postdep_objects" | $SED "$delay_single_quote_subst"`' +predeps='`$ECHO "$predeps" | $SED "$delay_single_quote_subst"`' +postdeps='`$ECHO "$postdeps" | $SED "$delay_single_quote_subst"`' +compiler_lib_search_path='`$ECHO "$compiler_lib_search_path" | $SED "$delay_single_quote_subst"`' +LD_CXX='`$ECHO "$LD_CXX" | $SED "$delay_single_quote_subst"`' +reload_flag_CXX='`$ECHO "$reload_flag_CXX" | $SED "$delay_single_quote_subst"`' +reload_cmds_CXX='`$ECHO "$reload_cmds_CXX" | $SED "$delay_single_quote_subst"`' +old_archive_cmds_CXX='`$ECHO "$old_archive_cmds_CXX" | $SED "$delay_single_quote_subst"`' +compiler_CXX='`$ECHO "$compiler_CXX" | $SED "$delay_single_quote_subst"`' +GCC_CXX='`$ECHO "$GCC_CXX" | $SED "$delay_single_quote_subst"`' +lt_prog_compiler_no_builtin_flag_CXX='`$ECHO "$lt_prog_compiler_no_builtin_flag_CXX" | $SED "$delay_single_quote_subst"`' +lt_prog_compiler_pic_CXX='`$ECHO "$lt_prog_compiler_pic_CXX" | $SED "$delay_single_quote_subst"`' +lt_prog_compiler_wl_CXX='`$ECHO "$lt_prog_compiler_wl_CXX" | $SED "$delay_single_quote_subst"`' +lt_prog_compiler_static_CXX='`$ECHO "$lt_prog_compiler_static_CXX" | $SED "$delay_single_quote_subst"`' +lt_cv_prog_compiler_c_o_CXX='`$ECHO "$lt_cv_prog_compiler_c_o_CXX" | $SED "$delay_single_quote_subst"`' +archive_cmds_need_lc_CXX='`$ECHO "$archive_cmds_need_lc_CXX" | $SED "$delay_single_quote_subst"`' +enable_shared_with_static_runtimes_CXX='`$ECHO "$enable_shared_with_static_runtimes_CXX" | $SED "$delay_single_quote_subst"`' +export_dynamic_flag_spec_CXX='`$ECHO "$export_dynamic_flag_spec_CXX" | $SED "$delay_single_quote_subst"`' +whole_archive_flag_spec_CXX='`$ECHO "$whole_archive_flag_spec_CXX" | $SED "$delay_single_quote_subst"`' +compiler_needs_object_CXX='`$ECHO "$compiler_needs_object_CXX" | $SED "$delay_single_quote_subst"`' +old_archive_from_new_cmds_CXX='`$ECHO "$old_archive_from_new_cmds_CXX" | $SED "$delay_single_quote_subst"`' +old_archive_from_expsyms_cmds_CXX='`$ECHO "$old_archive_from_expsyms_cmds_CXX" | $SED "$delay_single_quote_subst"`' +archive_cmds_CXX='`$ECHO "$archive_cmds_CXX" | $SED "$delay_single_quote_subst"`' +archive_expsym_cmds_CXX='`$ECHO "$archive_expsym_cmds_CXX" | $SED "$delay_single_quote_subst"`' +module_cmds_CXX='`$ECHO "$module_cmds_CXX" | $SED "$delay_single_quote_subst"`' +module_expsym_cmds_CXX='`$ECHO "$module_expsym_cmds_CXX" | $SED "$delay_single_quote_subst"`' +with_gnu_ld_CXX='`$ECHO "$with_gnu_ld_CXX" | $SED "$delay_single_quote_subst"`' +allow_undefined_flag_CXX='`$ECHO "$allow_undefined_flag_CXX" | $SED "$delay_single_quote_subst"`' +no_undefined_flag_CXX='`$ECHO "$no_undefined_flag_CXX" | $SED "$delay_single_quote_subst"`' +hardcode_libdir_flag_spec_CXX='`$ECHO "$hardcode_libdir_flag_spec_CXX" | $SED "$delay_single_quote_subst"`' +hardcode_libdir_separator_CXX='`$ECHO "$hardcode_libdir_separator_CXX" | $SED "$delay_single_quote_subst"`' +hardcode_direct_CXX='`$ECHO "$hardcode_direct_CXX" | $SED "$delay_single_quote_subst"`' +hardcode_direct_absolute_CXX='`$ECHO "$hardcode_direct_absolute_CXX" | $SED "$delay_single_quote_subst"`' +hardcode_minus_L_CXX='`$ECHO "$hardcode_minus_L_CXX" | $SED "$delay_single_quote_subst"`' +hardcode_shlibpath_var_CXX='`$ECHO "$hardcode_shlibpath_var_CXX" | $SED "$delay_single_quote_subst"`' +hardcode_automatic_CXX='`$ECHO "$hardcode_automatic_CXX" | $SED "$delay_single_quote_subst"`' +inherit_rpath_CXX='`$ECHO "$inherit_rpath_CXX" | $SED "$delay_single_quote_subst"`' +link_all_deplibs_CXX='`$ECHO "$link_all_deplibs_CXX" | $SED "$delay_single_quote_subst"`' +always_export_symbols_CXX='`$ECHO "$always_export_symbols_CXX" | $SED "$delay_single_quote_subst"`' +export_symbols_cmds_CXX='`$ECHO "$export_symbols_cmds_CXX" | $SED "$delay_single_quote_subst"`' +exclude_expsyms_CXX='`$ECHO "$exclude_expsyms_CXX" | $SED "$delay_single_quote_subst"`' +include_expsyms_CXX='`$ECHO "$include_expsyms_CXX" | $SED "$delay_single_quote_subst"`' +prelink_cmds_CXX='`$ECHO "$prelink_cmds_CXX" | $SED "$delay_single_quote_subst"`' +postlink_cmds_CXX='`$ECHO "$postlink_cmds_CXX" | $SED "$delay_single_quote_subst"`' +file_list_spec_CXX='`$ECHO "$file_list_spec_CXX" | $SED "$delay_single_quote_subst"`' +hardcode_action_CXX='`$ECHO "$hardcode_action_CXX" | $SED "$delay_single_quote_subst"`' +compiler_lib_search_dirs_CXX='`$ECHO "$compiler_lib_search_dirs_CXX" | $SED "$delay_single_quote_subst"`' +predep_objects_CXX='`$ECHO "$predep_objects_CXX" | $SED "$delay_single_quote_subst"`' +postdep_objects_CXX='`$ECHO "$postdep_objects_CXX" | $SED "$delay_single_quote_subst"`' +predeps_CXX='`$ECHO "$predeps_CXX" | $SED "$delay_single_quote_subst"`' +postdeps_CXX='`$ECHO "$postdeps_CXX" | $SED "$delay_single_quote_subst"`' +compiler_lib_search_path_CXX='`$ECHO "$compiler_lib_search_path_CXX" | $SED "$delay_single_quote_subst"`' LTCC='$LTCC' LTCFLAGS='$LTCFLAGS' compiler='$compiler_DEFAULT' +# A function that is used when there is no print builtin or printf. +func_fallback_echo () +{ + eval 'cat <<_LTECHO_EOF +\$1 +_LTECHO_EOF' +} + # Quote evaled strings. -for var in SED \ +for var in AS \ +DLLTOOL \ +OBJDUMP \ +SHELL \ +ECHO \ +PATH_SEPARATOR \ +SED \ GREP \ EGREP \ FGREP \ @@ -26019,8 +26538,12 @@ lt_NL2SP \ reload_flag \ deplibs_check_method \ file_magic_cmd \ +file_magic_glob \ +want_nocaseglob \ +sharedlib_from_linklib_cmd \ AR \ AR_FLAGS \ +archiver_list_spec \ STRIP \ RANLIB \ CC \ @@ -26030,14 +26553,14 @@ lt_cv_sys_global_symbol_pipe \ lt_cv_sys_global_symbol_to_cdecl \ lt_cv_sys_global_symbol_to_c_name_address \ lt_cv_sys_global_symbol_to_c_name_address_lib_prefix \ -SHELL \ -ECHO \ +nm_file_list_spec \ lt_prog_compiler_no_builtin_flag \ -lt_prog_compiler_wl \ lt_prog_compiler_pic \ +lt_prog_compiler_wl \ lt_prog_compiler_static \ lt_cv_prog_compiler_c_o \ need_locks \ +MANIFEST_TOOL \ DSYMUTIL \ NMEDIT \ LIPO \ @@ -26051,9 +26574,7 @@ with_gnu_ld \ allow_undefined_flag \ no_undefined_flag \ hardcode_libdir_flag_spec \ -hardcode_libdir_flag_spec_ld \ hardcode_libdir_separator \ -fix_srcfile_path \ exclude_expsyms \ include_expsyms \ file_list_spec \ @@ -26061,6 +26582,7 @@ variables_saved_for_relink \ libname_spec \ library_names_spec \ soname_spec \ +install_override_mode \ finish_eval \ old_striplib \ striplib \ @@ -26071,10 +26593,11 @@ predeps \ postdeps \ compiler_lib_search_path \ LD_CXX \ +reload_flag_CXX \ compiler_CXX \ lt_prog_compiler_no_builtin_flag_CXX \ -lt_prog_compiler_wl_CXX \ lt_prog_compiler_pic_CXX \ +lt_prog_compiler_wl_CXX \ lt_prog_compiler_static_CXX \ lt_cv_prog_compiler_c_o_CXX \ export_dynamic_flag_spec_CXX \ @@ -26084,9 +26607,7 @@ with_gnu_ld_CXX \ allow_undefined_flag_CXX \ no_undefined_flag_CXX \ hardcode_libdir_flag_spec_CXX \ -hardcode_libdir_flag_spec_ld_CXX \ hardcode_libdir_separator_CXX \ -fix_srcfile_path_CXX \ exclude_expsyms_CXX \ include_expsyms_CXX \ file_list_spec_CXX \ @@ -26096,9 +26617,9 @@ postdep_objects_CXX \ predeps_CXX \ postdeps_CXX \ compiler_lib_search_path_CXX; do - case \`eval \\\\\$ECHO "X\\\\\$\$var"\` in + case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in *[\\\\\\\`\\"\\\$]*) - eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"X\\\$\$var\\" | \\\$Xsed -e \\"\\\$sed_quote_subst\\"\\\`\\\\\\"" + eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED \\"\\\$sed_quote_subst\\"\\\`\\\\\\"" ;; *) eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\"" @@ -26120,11 +26641,13 @@ module_cmds \ module_expsym_cmds \ export_symbols_cmds \ prelink_cmds \ +postlink_cmds \ postinstall_cmds \ postuninstall_cmds \ finish_cmds \ sys_lib_search_path_spec \ sys_lib_dlsearch_path_spec \ +reload_cmds_CXX \ old_archive_cmds_CXX \ old_archive_from_new_cmds_CXX \ old_archive_from_expsyms_cmds_CXX \ @@ -26133,10 +26656,11 @@ archive_expsym_cmds_CXX \ module_cmds_CXX \ module_expsym_cmds_CXX \ export_symbols_cmds_CXX \ -prelink_cmds_CXX; do - case \`eval \\\\\$ECHO "X\\\\\$\$var"\` in +prelink_cmds_CXX \ +postlink_cmds_CXX; do + case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in *[\\\\\\\`\\"\\\$]*) - eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"X\\\$\$var\\" | \\\$Xsed -e \\"\\\$double_quote_subst\\" -e \\"\\\$sed_quote_subst\\" -e \\"\\\$delay_variable_subst\\"\\\`\\\\\\"" + eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED -e \\"\\\$double_quote_subst\\" -e \\"\\\$sed_quote_subst\\" -e \\"\\\$delay_variable_subst\\"\\\`\\\\\\"" ;; *) eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\"" @@ -26144,12 +26668,6 @@ prelink_cmds_CXX; do esac done -# Fix-up fallback echo if it was mangled by the above quoting rules. -case \$lt_ECHO in -*'\\\$0 --fallback-echo"') lt_ECHO=\`\$ECHO "X\$lt_ECHO" | \$Xsed -e 's/\\\\\\\\\\\\\\\$0 --fallback-echo"\$/\$0 --fallback-echo"/'\` - ;; -esac - ac_aux_dir='$ac_aux_dir' xsi_shell='$xsi_shell' lt_shell_append='$lt_shell_append' @@ -26222,11 +26740,9 @@ do "libs/gst/check/libcheck/Makefile") CONFIG_FILES="$CONFIG_FILES libs/gst/check/libcheck/Makefile" ;; "libs/gst/check/libcheck/check.h") CONFIG_FILES="$CONFIG_FILES libs/gst/check/libcheck/check.h" ;; "libs/gst/controller/Makefile") CONFIG_FILES="$CONFIG_FILES libs/gst/controller/Makefile" ;; - "libs/gst/dataprotocol/Makefile") CONFIG_FILES="$CONFIG_FILES libs/gst/dataprotocol/Makefile" ;; "libs/gst/helpers/Makefile") CONFIG_FILES="$CONFIG_FILES libs/gst/helpers/Makefile" ;; "libs/gst/net/Makefile") CONFIG_FILES="$CONFIG_FILES libs/gst/net/Makefile" ;; "plugins/Makefile") CONFIG_FILES="$CONFIG_FILES plugins/Makefile" ;; - "plugins/indexers/Makefile") CONFIG_FILES="$CONFIG_FILES plugins/indexers/Makefile" ;; "plugins/elements/Makefile") CONFIG_FILES="$CONFIG_FILES plugins/elements/Makefile" ;; "po/Makefile.in") CONFIG_FILES="$CONFIG_FILES po/Makefile.in" ;; "tests/Makefile") CONFIG_FILES="$CONFIG_FILES tests/Makefile" ;; @@ -26270,14 +26786,12 @@ do "pkgconfig/gstreamer-check-uninstalled.pc") CONFIG_FILES="$CONFIG_FILES pkgconfig/gstreamer-check-uninstalled.pc" ;; "pkgconfig/gstreamer-controller.pc") CONFIG_FILES="$CONFIG_FILES pkgconfig/gstreamer-controller.pc" ;; "pkgconfig/gstreamer-controller-uninstalled.pc") CONFIG_FILES="$CONFIG_FILES pkgconfig/gstreamer-controller-uninstalled.pc" ;; - "pkgconfig/gstreamer-dataprotocol.pc") CONFIG_FILES="$CONFIG_FILES pkgconfig/gstreamer-dataprotocol.pc" ;; - "pkgconfig/gstreamer-dataprotocol-uninstalled.pc") CONFIG_FILES="$CONFIG_FILES pkgconfig/gstreamer-dataprotocol-uninstalled.pc" ;; "pkgconfig/gstreamer-net.pc") CONFIG_FILES="$CONFIG_FILES pkgconfig/gstreamer-net.pc" ;; "pkgconfig/gstreamer-net-uninstalled.pc") CONFIG_FILES="$CONFIG_FILES pkgconfig/gstreamer-net-uninstalled.pc" ;; "gst-element-check.m4") CONFIG_FILES="$CONFIG_FILES gst-element-check.m4" ;; "gstreamer.spec") CONFIG_FILES="$CONFIG_FILES gstreamer.spec" ;; - *) as_fn_error $? "invalid argument: \`$ac_config_target'" "$LINENO" 5 ;; + *) as_fn_error $? "invalid argument: \`$ac_config_target'" "$LINENO" 5;; esac done @@ -26300,9 +26814,10 @@ fi # after its creation but before its name has been assigned to `$tmp'. $debug || { - tmp= + tmp= ac_tmp= trap 'exit_status=$? - { test -z "$tmp" || test ! -d "$tmp" || rm -fr "$tmp"; } && exit $exit_status + : "${ac_tmp:=$tmp}" + { test ! -d "$ac_tmp" || rm -fr "$ac_tmp"; } && exit $exit_status ' 0 trap 'as_fn_exit 1' 1 2 13 15 } @@ -26310,12 +26825,13 @@ $debug || { tmp=`(umask 077 && mktemp -d "./confXXXXXX") 2>/dev/null` && - test -n "$tmp" && test -d "$tmp" + test -d "$tmp" } || { tmp=./conf$$-$RANDOM (umask 077 && mkdir "$tmp") } || as_fn_error $? "cannot create a temporary directory in ." "$LINENO" 5 +ac_tmp=$tmp # Set up the scripts for CONFIG_FILES section. # No need to generate them if there are no CONFIG_FILES. @@ -26337,7 +26853,7 @@ else ac_cs_awk_cr=$ac_cr fi -echo 'BEGIN {' >"$tmp/subs1.awk" && +echo 'BEGIN {' >"$ac_tmp/subs1.awk" && _ACEOF @@ -26365,7 +26881,7 @@ done rm -f conf$$subs.sh cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 -cat >>"\$tmp/subs1.awk" <<\\_ACAWK && +cat >>"\$ac_tmp/subs1.awk" <<\\_ACAWK && _ACEOF sed -n ' h @@ -26413,7 +26929,7 @@ t delim rm -f conf$$subs.awk cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 _ACAWK -cat >>"\$tmp/subs1.awk" <<_ACAWK && +cat >>"\$ac_tmp/subs1.awk" <<_ACAWK && for (key in S) S_is_set[key] = 1 FS = "" @@ -26445,7 +26961,7 @@ if sed "s/$ac_cr//" < /dev/null > /dev/null 2>&1; then sed "s/$ac_cr\$//; s/$ac_cr/$ac_cs_awk_cr/g" else cat -fi < "$tmp/subs1.awk" > "$tmp/subs.awk" \ +fi < "$ac_tmp/subs1.awk" > "$ac_tmp/subs.awk" \ || as_fn_error $? "could not setup config files machinery" "$LINENO" 5 _ACEOF @@ -26479,7 +26995,7 @@ fi # test -n "$CONFIG_FILES" # No need to generate them if there are no CONFIG_HEADERS. # This happens for instance with `./config.status Makefile'. if test -n "$CONFIG_HEADERS"; then -cat >"$tmp/defines.awk" <<\_ACAWK || +cat >"$ac_tmp/defines.awk" <<\_ACAWK || BEGIN { _ACEOF @@ -26491,8 +27007,8 @@ _ACEOF # handling of long lines. ac_delim='%!_!# ' for ac_last_try in false false :; do - ac_t=`sed -n "/$ac_delim/p" confdefs.h` - if test -z "$ac_t"; then + ac_tt=`sed -n "/$ac_delim/p" confdefs.h` + if test -z "$ac_tt"; then break elif $ac_last_try; then as_fn_error $? "could not make $CONFIG_HEADERS" "$LINENO" 5 @@ -26593,7 +27109,7 @@ do esac case $ac_mode$ac_tag in :[FHL]*:*);; - :L* | :C*:*) as_fn_error $? "invalid tag \`$ac_tag'" "$LINENO" 5 ;; + :L* | :C*:*) as_fn_error $? "invalid tag \`$ac_tag'" "$LINENO" 5;; :[FH]-) ac_tag=-:-;; :[FH]*) ac_tag=$ac_tag:$ac_tag.in;; esac @@ -26612,7 +27128,7 @@ do for ac_f do case $ac_f in - -) ac_f="$tmp/stdin";; + -) ac_f="$ac_tmp/stdin";; *) # Look for the file first in the build tree, then in the source tree # (if the path is not absolute). The absolute path cannot be DOS-style, # because $ac_f cannot contain `:'. @@ -26621,7 +27137,7 @@ do [\\/$]*) false;; *) test -f "$srcdir/$ac_f" && ac_f="$srcdir/$ac_f";; esac || - as_fn_error 1 "cannot find input file: \`$ac_f'" "$LINENO" 5 ;; + as_fn_error 1 "cannot find input file: \`$ac_f'" "$LINENO" 5;; esac case $ac_f in *\'*) ac_f=`$as_echo "$ac_f" | sed "s/'/'\\\\\\\\''/g"`;; esac as_fn_append ac_file_inputs " '$ac_f'" @@ -26647,8 +27163,8 @@ $as_echo "$as_me: creating $ac_file" >&6;} esac case $ac_tag in - *:-:* | *:-) cat >"$tmp/stdin" \ - || as_fn_error $? "could not create $ac_file" "$LINENO" 5 ;; + *:-:* | *:-) cat >"$ac_tmp/stdin" \ + || as_fn_error $? "could not create $ac_file" "$LINENO" 5 ;; esac ;; esac @@ -26784,21 +27300,22 @@ s&@INSTALL@&$ac_INSTALL&;t t s&@MKDIR_P@&$ac_MKDIR_P&;t t $ac_datarootdir_hack " -eval sed \"\$ac_sed_extra\" "$ac_file_inputs" | $AWK -f "$tmp/subs.awk" >$tmp/out \ - || as_fn_error $? "could not create $ac_file" "$LINENO" 5 +eval sed \"\$ac_sed_extra\" "$ac_file_inputs" | $AWK -f "$ac_tmp/subs.awk" \ + >$ac_tmp/out || as_fn_error $? "could not create $ac_file" "$LINENO" 5 test -z "$ac_datarootdir_hack$ac_datarootdir_seen" && - { ac_out=`sed -n '/\${datarootdir}/p' "$tmp/out"`; test -n "$ac_out"; } && - { ac_out=`sed -n '/^[ ]*datarootdir[ ]*:*=/p' "$tmp/out"`; test -z "$ac_out"; } && + { ac_out=`sed -n '/\${datarootdir}/p' "$ac_tmp/out"`; test -n "$ac_out"; } && + { ac_out=`sed -n '/^[ ]*datarootdir[ ]*:*=/p' \ + "$ac_tmp/out"`; test -z "$ac_out"; } && { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file contains a reference to the variable \`datarootdir' which seems to be undefined. Please make sure it is defined" >&5 $as_echo "$as_me: WARNING: $ac_file contains a reference to the variable \`datarootdir' which seems to be undefined. Please make sure it is defined" >&2;} - rm -f "$tmp/stdin" + rm -f "$ac_tmp/stdin" case $ac_file in - -) cat "$tmp/out" && rm -f "$tmp/out";; - *) rm -f "$ac_file" && mv "$tmp/out" "$ac_file";; + -) cat "$ac_tmp/out" && rm -f "$ac_tmp/out";; + *) rm -f "$ac_file" && mv "$ac_tmp/out" "$ac_file";; esac \ || as_fn_error $? "could not create $ac_file" "$LINENO" 5 ;; @@ -26809,20 +27326,20 @@ which seems to be undefined. Please make sure it is defined" >&2;} if test x"$ac_file" != x-; then { $as_echo "/* $configure_input */" \ - && eval '$AWK -f "$tmp/defines.awk"' "$ac_file_inputs" - } >"$tmp/config.h" \ + && eval '$AWK -f "$ac_tmp/defines.awk"' "$ac_file_inputs" + } >"$ac_tmp/config.h" \ || as_fn_error $? "could not create $ac_file" "$LINENO" 5 - if diff "$ac_file" "$tmp/config.h" >/dev/null 2>&1; then + if diff "$ac_file" "$ac_tmp/config.h" >/dev/null 2>&1; then { $as_echo "$as_me:${as_lineno-$LINENO}: $ac_file is unchanged" >&5 $as_echo "$as_me: $ac_file is unchanged" >&6;} else rm -f "$ac_file" - mv "$tmp/config.h" "$ac_file" \ + mv "$ac_tmp/config.h" "$ac_file" \ || as_fn_error $? "could not create $ac_file" "$LINENO" 5 fi else $as_echo "/* $configure_input */" \ - && eval '$AWK -f "$tmp/defines.awk"' "$ac_file_inputs" \ + && eval '$AWK -f "$ac_tmp/defines.awk"' "$ac_file_inputs" \ || as_fn_error $? "could not create -" "$LINENO" 5 fi # Compute "$ac_file"'s index in $config_headers. @@ -26984,7 +27501,8 @@ $as_echo X"$file" | # NOTE: Changes made to this file will be lost: look at ltmain.sh. # # Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005, -# 2006, 2007, 2008 Free Software Foundation, Inc. +# 2006, 2007, 2008, 2009, 2010, 2011 Free Software +# Foundation, Inc. # Written by Gordon Matzigkeit, 1996 # # This file is part of GNU Libtool. @@ -27017,13 +27535,13 @@ available_tags="CXX " # ### BEGIN LIBTOOL CONFIG # Assembler program. -AS=$AS +AS=$lt_AS # DLL creation program. -DLLTOOL=$DLLTOOL +DLLTOOL=$lt_DLLTOOL # Object dumper program. -OBJDUMP=$OBJDUMP +OBJDUMP=$lt_OBJDUMP # Which release of libtool.m4 was used? macro_version=$macro_version @@ -27041,6 +27559,15 @@ pic_mode=$pic_mode # Whether or not to optimize for fast installation. fast_install=$enable_fast_install +# Shell to use when invoking shell scripts. +SHELL=$lt_SHELL + +# An echo program that protects backslashes. +ECHO=$lt_ECHO + +# The PATH separator for the build system. +PATH_SEPARATOR=$lt_PATH_SEPARATOR + # The host system. host_alias=$host_alias host=$host @@ -27090,20 +27617,36 @@ SP2NL=$lt_lt_SP2NL # turn newlines into spaces. NL2SP=$lt_lt_NL2SP -# How to create reloadable object files. -reload_flag=$lt_reload_flag -reload_cmds=$lt_reload_cmds +# convert \$build file names to \$host format. +to_host_file_cmd=$lt_cv_to_host_file_cmd + +# convert \$build files to toolchain format. +to_tool_file_cmd=$lt_cv_to_tool_file_cmd # Method to check whether dependent libraries are shared objects. deplibs_check_method=$lt_deplibs_check_method -# Command to use when deplibs_check_method == "file_magic". +# Command to use when deplibs_check_method = "file_magic". file_magic_cmd=$lt_file_magic_cmd +# How to find potential files when deplibs_check_method = "file_magic". +file_magic_glob=$lt_file_magic_glob + +# Find potential files using nocaseglob when deplibs_check_method = "file_magic". +want_nocaseglob=$lt_want_nocaseglob + +# Command to associate shared and link libraries. +sharedlib_from_linklib_cmd=$lt_sharedlib_from_linklib_cmd + # The archiver. AR=$lt_AR + +# Flags to create an archive. AR_FLAGS=$lt_AR_FLAGS +# How to feed a file listing to the archiver. +archiver_list_spec=$lt_archiver_list_spec + # A symbol stripping program. STRIP=$lt_STRIP @@ -27112,6 +27655,9 @@ RANLIB=$lt_RANLIB old_postinstall_cmds=$lt_old_postinstall_cmds old_postuninstall_cmds=$lt_old_postuninstall_cmds +# Whether to use a lock for old archive extraction. +lock_old_archive_extraction=$lock_old_archive_extraction + # A C compiler. LTCC=$lt_CC @@ -27130,14 +27676,14 @@ global_symbol_to_c_name_address=$lt_lt_cv_sys_global_symbol_to_c_name_address # Transform the output of nm in a C name address pair when lib prefix is needed. global_symbol_to_c_name_address_lib_prefix=$lt_lt_cv_sys_global_symbol_to_c_name_address_lib_prefix -# The name of the directory that contains temporary libtool files. -objdir=$objdir +# Specify filename containing input files for \$NM. +nm_file_list_spec=$lt_nm_file_list_spec -# Shell to use when invoking shell scripts. -SHELL=$lt_SHELL +# The root where to search for dependent libraries,and in which our libraries should be installed. +lt_sysroot=$lt_sysroot -# An echo program that does not interpret backslashes. -ECHO=$lt_ECHO +# The name of the directory that contains temporary libtool files. +objdir=$objdir # Used to examine libraries when file_magic_cmd begins with "file". MAGIC_CMD=$MAGIC_CMD @@ -27145,6 +27691,9 @@ MAGIC_CMD=$MAGIC_CMD # Must we lock files when doing compilation? need_locks=$lt_need_locks +# Manifest tool. +MANIFEST_TOOL=$lt_MANIFEST_TOOL + # Tool to manipulate archived DWARF debug symbol files on Mac OS X. DSYMUTIL=$lt_DSYMUTIL @@ -27201,6 +27750,9 @@ library_names_spec=$lt_library_names_spec # The coded name of the library, if different from the real name. soname_spec=$lt_soname_spec +# Permission mode override for installation of shared libraries. +install_override_mode=$lt_install_override_mode + # Command to use after installation of a shared archive. postinstall_cmds=$lt_postinstall_cmds @@ -27240,6 +27792,10 @@ striplib=$lt_striplib # The linker used to build libraries. LD=$lt_LD +# How to create reloadable object files. +reload_flag=$lt_reload_flag +reload_cmds=$lt_reload_cmds + # Commands used to build an old-style archive. old_archive_cmds=$lt_old_archive_cmds @@ -27252,12 +27808,12 @@ with_gcc=$GCC # Compiler flag to turn off builtin functions. no_builtin_flag=$lt_lt_prog_compiler_no_builtin_flag -# How to pass a linker flag through the compiler. -wl=$lt_lt_prog_compiler_wl - # Additional compiler flags for building library objects. pic_flag=$lt_lt_prog_compiler_pic +# How to pass a linker flag through the compiler. +wl=$lt_lt_prog_compiler_wl + # Compiler flag to prevent dynamic linking. link_static_flag=$lt_lt_prog_compiler_static @@ -27307,10 +27863,6 @@ no_undefined_flag=$lt_no_undefined_flag # This must work even if \$libdir does not exist hardcode_libdir_flag_spec=$lt_hardcode_libdir_flag_spec -# If ld is used when linking, flag to hardcode \$libdir into a binary -# during linking. This must work even if \$libdir does not exist. -hardcode_libdir_flag_spec_ld=$lt_hardcode_libdir_flag_spec_ld - # Whether we need a single "-rpath" flag with a separated argument. hardcode_libdir_separator=$lt_hardcode_libdir_separator @@ -27344,9 +27896,6 @@ inherit_rpath=$inherit_rpath # Whether libtool must link a program against all its dependency libraries. link_all_deplibs=$link_all_deplibs -# Fix the shell variable \$srcfile for the compiler. -fix_srcfile_path=$lt_fix_srcfile_path - # Set to "yes" if exported symbols are required. always_export_symbols=$always_export_symbols @@ -27362,6 +27911,9 @@ include_expsyms=$lt_include_expsyms # Commands necessary for linking programs (against libraries) with templates. prelink_cmds=$lt_prelink_cmds +# Commands necessary for finishing linking programs. +postlink_cmds=$lt_postlink_cmds + # Specify filename containing input files. file_list_spec=$lt_file_list_spec @@ -27408,212 +27960,169 @@ ltmain="$ac_aux_dir/ltmain.sh" # if finds mixed CR/LF and LF-only lines. Since sed operates in # text mode, it properly converts lines to CR/LF. This bash problem # is reportedly fixed, but why not run on old versions too? - sed '/^# Generated shell functions inserted here/q' "$ltmain" >> "$cfgfile" \ - || (rm -f "$cfgfile"; exit 1) - - case $xsi_shell in - yes) - cat << \_LT_EOF >> "$cfgfile" - -# func_dirname file append nondir_replacement -# Compute the dirname of FILE. If nonempty, add APPEND to the result, -# otherwise set result to NONDIR_REPLACEMENT. -func_dirname () -{ - case ${1} in - */*) func_dirname_result="${1%/*}${2}" ;; - * ) func_dirname_result="${3}" ;; - esac -} - -# func_basename file -func_basename () -{ - func_basename_result="${1##*/}" -} - -# func_dirname_and_basename file append nondir_replacement -# perform func_basename and func_dirname in a single function -# call: -# dirname: Compute the dirname of FILE. If nonempty, -# add APPEND to the result, otherwise set result -# to NONDIR_REPLACEMENT. -# value returned in "$func_dirname_result" -# basename: Compute filename of FILE. -# value retuned in "$func_basename_result" -# Implementation must be kept synchronized with func_dirname -# and func_basename. For efficiency, we do not delegate to -# those functions but instead duplicate the functionality here. -func_dirname_and_basename () -{ - case ${1} in - */*) func_dirname_result="${1%/*}${2}" ;; - * ) func_dirname_result="${3}" ;; - esac - func_basename_result="${1##*/}" -} - -# func_stripname prefix suffix name -# strip PREFIX and SUFFIX off of NAME. -# PREFIX and SUFFIX must not contain globbing or regex special -# characters, hashes, percent signs, but SUFFIX may contain a leading -# dot (in which case that matches only a dot). -func_stripname () -{ - # pdksh 5.2.14 does not do ${X%$Y} correctly if both X and Y are - # positional parameters, so assign one to ordinary parameter first. - func_stripname_result=${3} - func_stripname_result=${func_stripname_result#"${1}"} - func_stripname_result=${func_stripname_result%"${2}"} -} - -# func_opt_split -func_opt_split () -{ - func_opt_split_opt=${1%%=*} - func_opt_split_arg=${1#*=} -} - -# func_lo2o object -func_lo2o () -{ - case ${1} in - *.lo) func_lo2o_result=${1%.lo}.${objext} ;; - *) func_lo2o_result=${1} ;; - esac -} - -# func_xform libobj-or-source -func_xform () -{ - func_xform_result=${1%.*}.lo -} - -# func_arith arithmetic-term... -func_arith () -{ - func_arith_result=$(( $* )) -} - -# func_len string -# STRING may not start with a hyphen. -func_len () -{ - func_len_result=${#1} -} - -_LT_EOF - ;; - *) # Bourne compatible functions. - cat << \_LT_EOF >> "$cfgfile" - -# func_dirname file append nondir_replacement -# Compute the dirname of FILE. If nonempty, add APPEND to the result, -# otherwise set result to NONDIR_REPLACEMENT. -func_dirname () -{ - # Extract subdirectory from the argument. - func_dirname_result=`$ECHO "X${1}" | $Xsed -e "$dirname"` - if test "X$func_dirname_result" = "X${1}"; then - func_dirname_result="${3}" - else - func_dirname_result="$func_dirname_result${2}" - fi -} - -# func_basename file -func_basename () -{ - func_basename_result=`$ECHO "X${1}" | $Xsed -e "$basename"` -} - - -# func_stripname prefix suffix name -# strip PREFIX and SUFFIX off of NAME. -# PREFIX and SUFFIX must not contain globbing or regex special -# characters, hashes, percent signs, but SUFFIX may contain a leading -# dot (in which case that matches only a dot). -# func_strip_suffix prefix name -func_stripname () -{ - case ${2} in - .*) func_stripname_result=`$ECHO "X${3}" \ - | $Xsed -e "s%^${1}%%" -e "s%\\\\${2}\$%%"`;; - *) func_stripname_result=`$ECHO "X${3}" \ - | $Xsed -e "s%^${1}%%" -e "s%${2}\$%%"`;; - esac -} - -# sed scripts: -my_sed_long_opt='1s/^\(-[^=]*\)=.*/\1/;q' -my_sed_long_arg='1s/^-[^=]*=//' - -# func_opt_split -func_opt_split () -{ - func_opt_split_opt=`$ECHO "X${1}" | $Xsed -e "$my_sed_long_opt"` - func_opt_split_arg=`$ECHO "X${1}" | $Xsed -e "$my_sed_long_arg"` -} - -# func_lo2o object -func_lo2o () -{ - func_lo2o_result=`$ECHO "X${1}" | $Xsed -e "$lo2o"` -} - -# func_xform libobj-or-source -func_xform () -{ - func_xform_result=`$ECHO "X${1}" | $Xsed -e 's/\.[^.]*$/.lo/'` -} - -# func_arith arithmetic-term... -func_arith () -{ - func_arith_result=`expr "$@"` -} - -# func_len string -# STRING may not start with a hyphen. -func_len () -{ - func_len_result=`expr "$1" : ".*" 2>/dev/null || echo $max_cmd_len` -} - -_LT_EOF -esac - -case $lt_shell_append in - yes) - cat << \_LT_EOF >> "$cfgfile" - -# func_append var value -# Append VALUE to the end of shell variable VAR. -func_append () -{ - eval "$1+=\$2" -} -_LT_EOF - ;; - *) - cat << \_LT_EOF >> "$cfgfile" - -# func_append var value -# Append VALUE to the end of shell variable VAR. -func_append () -{ - eval "$1=\$$1\$2" -} - -_LT_EOF - ;; - esac - - - sed -n '/^# Generated shell functions inserted here/,$p' "$ltmain" >> "$cfgfile" \ - || (rm -f "$cfgfile"; exit 1) - - mv -f "$cfgfile" "$ofile" || + sed '$q' "$ltmain" >> "$cfgfile" \ + || (rm -f "$cfgfile"; exit 1) + + if test x"$xsi_shell" = xyes; then + sed -e '/^func_dirname ()$/,/^} # func_dirname /c\ +func_dirname ()\ +{\ +\ case ${1} in\ +\ */*) func_dirname_result="${1%/*}${2}" ;;\ +\ * ) func_dirname_result="${3}" ;;\ +\ esac\ +} # Extended-shell func_dirname implementation' "$cfgfile" > $cfgfile.tmp \ + && mv -f "$cfgfile.tmp" "$cfgfile" \ + || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") +test 0 -eq $? || _lt_function_replace_fail=: + + + sed -e '/^func_basename ()$/,/^} # func_basename /c\ +func_basename ()\ +{\ +\ func_basename_result="${1##*/}"\ +} # Extended-shell func_basename implementation' "$cfgfile" > $cfgfile.tmp \ + && mv -f "$cfgfile.tmp" "$cfgfile" \ + || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") +test 0 -eq $? || _lt_function_replace_fail=: + + + sed -e '/^func_dirname_and_basename ()$/,/^} # func_dirname_and_basename /c\ +func_dirname_and_basename ()\ +{\ +\ case ${1} in\ +\ */*) func_dirname_result="${1%/*}${2}" ;;\ +\ * ) func_dirname_result="${3}" ;;\ +\ esac\ +\ func_basename_result="${1##*/}"\ +} # Extended-shell func_dirname_and_basename implementation' "$cfgfile" > $cfgfile.tmp \ + && mv -f "$cfgfile.tmp" "$cfgfile" \ + || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") +test 0 -eq $? || _lt_function_replace_fail=: + + + sed -e '/^func_stripname ()$/,/^} # func_stripname /c\ +func_stripname ()\ +{\ +\ # pdksh 5.2.14 does not do ${X%$Y} correctly if both X and Y are\ +\ # positional parameters, so assign one to ordinary parameter first.\ +\ func_stripname_result=${3}\ +\ func_stripname_result=${func_stripname_result#"${1}"}\ +\ func_stripname_result=${func_stripname_result%"${2}"}\ +} # Extended-shell func_stripname implementation' "$cfgfile" > $cfgfile.tmp \ + && mv -f "$cfgfile.tmp" "$cfgfile" \ + || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") +test 0 -eq $? || _lt_function_replace_fail=: + + + sed -e '/^func_split_long_opt ()$/,/^} # func_split_long_opt /c\ +func_split_long_opt ()\ +{\ +\ func_split_long_opt_name=${1%%=*}\ +\ func_split_long_opt_arg=${1#*=}\ +} # Extended-shell func_split_long_opt implementation' "$cfgfile" > $cfgfile.tmp \ + && mv -f "$cfgfile.tmp" "$cfgfile" \ + || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") +test 0 -eq $? || _lt_function_replace_fail=: + + + sed -e '/^func_split_short_opt ()$/,/^} # func_split_short_opt /c\ +func_split_short_opt ()\ +{\ +\ func_split_short_opt_arg=${1#??}\ +\ func_split_short_opt_name=${1%"$func_split_short_opt_arg"}\ +} # Extended-shell func_split_short_opt implementation' "$cfgfile" > $cfgfile.tmp \ + && mv -f "$cfgfile.tmp" "$cfgfile" \ + || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") +test 0 -eq $? || _lt_function_replace_fail=: + + + sed -e '/^func_lo2o ()$/,/^} # func_lo2o /c\ +func_lo2o ()\ +{\ +\ case ${1} in\ +\ *.lo) func_lo2o_result=${1%.lo}.${objext} ;;\ +\ *) func_lo2o_result=${1} ;;\ +\ esac\ +} # Extended-shell func_lo2o implementation' "$cfgfile" > $cfgfile.tmp \ + && mv -f "$cfgfile.tmp" "$cfgfile" \ + || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") +test 0 -eq $? || _lt_function_replace_fail=: + + + sed -e '/^func_xform ()$/,/^} # func_xform /c\ +func_xform ()\ +{\ + func_xform_result=${1%.*}.lo\ +} # Extended-shell func_xform implementation' "$cfgfile" > $cfgfile.tmp \ + && mv -f "$cfgfile.tmp" "$cfgfile" \ + || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") +test 0 -eq $? || _lt_function_replace_fail=: + + + sed -e '/^func_arith ()$/,/^} # func_arith /c\ +func_arith ()\ +{\ + func_arith_result=$(( $* ))\ +} # Extended-shell func_arith implementation' "$cfgfile" > $cfgfile.tmp \ + && mv -f "$cfgfile.tmp" "$cfgfile" \ + || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") +test 0 -eq $? || _lt_function_replace_fail=: + + + sed -e '/^func_len ()$/,/^} # func_len /c\ +func_len ()\ +{\ + func_len_result=${#1}\ +} # Extended-shell func_len implementation' "$cfgfile" > $cfgfile.tmp \ + && mv -f "$cfgfile.tmp" "$cfgfile" \ + || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") +test 0 -eq $? || _lt_function_replace_fail=: + +fi + +if test x"$lt_shell_append" = xyes; then + sed -e '/^func_append ()$/,/^} # func_append /c\ +func_append ()\ +{\ + eval "${1}+=\\${2}"\ +} # Extended-shell func_append implementation' "$cfgfile" > $cfgfile.tmp \ + && mv -f "$cfgfile.tmp" "$cfgfile" \ + || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") +test 0 -eq $? || _lt_function_replace_fail=: + + + sed -e '/^func_append_quoted ()$/,/^} # func_append_quoted /c\ +func_append_quoted ()\ +{\ +\ func_quote_for_eval "${2}"\ +\ eval "${1}+=\\\\ \\$func_quote_for_eval_result"\ +} # Extended-shell func_append_quoted implementation' "$cfgfile" > $cfgfile.tmp \ + && mv -f "$cfgfile.tmp" "$cfgfile" \ + || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") +test 0 -eq $? || _lt_function_replace_fail=: + + + # Save a `func_append' function call where possible by direct use of '+=' + sed -e 's%func_append \([a-zA-Z_]\{1,\}\) "%\1+="%g' $cfgfile > $cfgfile.tmp \ + && mv -f "$cfgfile.tmp" "$cfgfile" \ + || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") + test 0 -eq $? || _lt_function_replace_fail=: +else + # Save a `func_append' function call even when '+=' is not available + sed -e 's%func_append \([a-zA-Z_]\{1,\}\) "%\1="$\1%g' $cfgfile > $cfgfile.tmp \ + && mv -f "$cfgfile.tmp" "$cfgfile" \ + || (rm -f "$cfgfile" && cp "$cfgfile.tmp" "$cfgfile" && rm -f "$cfgfile.tmp") + test 0 -eq $? || _lt_function_replace_fail=: +fi + +if test x"$_lt_function_replace_fail" = x":"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Unable to substitute extended shell functions in $ofile" >&5 +$as_echo "$as_me: WARNING: Unable to substitute extended shell functions in $ofile" >&2;} +fi + + + mv -f "$cfgfile" "$ofile" || (rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile") chmod +x "$ofile" @@ -27625,6 +28134,10 @@ _LT_EOF # The linker used to build libraries. LD=$lt_LD_CXX +# How to create reloadable object files. +reload_flag=$lt_reload_flag_CXX +reload_cmds=$lt_reload_cmds_CXX + # Commands used to build an old-style archive. old_archive_cmds=$lt_old_archive_cmds_CXX @@ -27637,12 +28150,12 @@ with_gcc=$GCC_CXX # Compiler flag to turn off builtin functions. no_builtin_flag=$lt_lt_prog_compiler_no_builtin_flag_CXX -# How to pass a linker flag through the compiler. -wl=$lt_lt_prog_compiler_wl_CXX - # Additional compiler flags for building library objects. pic_flag=$lt_lt_prog_compiler_pic_CXX +# How to pass a linker flag through the compiler. +wl=$lt_lt_prog_compiler_wl_CXX + # Compiler flag to prevent dynamic linking. link_static_flag=$lt_lt_prog_compiler_static_CXX @@ -27692,10 +28205,6 @@ no_undefined_flag=$lt_no_undefined_flag_CXX # This must work even if \$libdir does not exist hardcode_libdir_flag_spec=$lt_hardcode_libdir_flag_spec_CXX -# If ld is used when linking, flag to hardcode \$libdir into a binary -# during linking. This must work even if \$libdir does not exist. -hardcode_libdir_flag_spec_ld=$lt_hardcode_libdir_flag_spec_ld_CXX - # Whether we need a single "-rpath" flag with a separated argument. hardcode_libdir_separator=$lt_hardcode_libdir_separator_CXX @@ -27729,9 +28238,6 @@ inherit_rpath=$inherit_rpath_CXX # Whether libtool must link a program against all its dependency libraries. link_all_deplibs=$link_all_deplibs_CXX -# Fix the shell variable \$srcfile for the compiler. -fix_srcfile_path=$lt_fix_srcfile_path_CXX - # Set to "yes" if exported symbols are required. always_export_symbols=$always_export_symbols_CXX @@ -27747,6 +28253,9 @@ include_expsyms=$lt_include_expsyms_CXX # Commands necessary for linking programs (against libraries) with templates. prelink_cmds=$lt_prelink_cmds_CXX +# Commands necessary for finishing linking programs. +postlink_cmds=$lt_postlink_cmds_CXX + # Specify filename containing input files. file_list_spec=$lt_file_list_spec_CXX @@ -28394,7 +28903,6 @@ if test "x${GST_DISABLE_TRACE}" = "xno"; then enable_trace="yes"; fi if test "x${GST_DISABLE_ALLOC_TRACE}" = "xno"; then enable_alloc_trace="yes"; fi if test "x${GST_DISABLE_PLUGIN}" = "xno"; then enable_plugin="yes"; fi if test "x${GST_DISABLE_REGISTRY}" = "xno"; then enable_registry="yes"; fi -if test "x${GST_DISABLE_NET}" = "xno"; then enable_net="yes"; fi echo " @@ -28416,7 +28924,6 @@ Configuration Allocation tracing : ${enable_alloc_trace} Plugin registry : ${enable_registry} Plugin support : ${enable_plugin} - Network support : ${enable_net} Unit testing support : ${BUILD_CHECK} Debug : ${USE_DEBUG} diff --git a/configure.ac b/configure.ac index 9eb6606..2e2580a 100644 --- a/configure.ac +++ b/configure.ac @@ -3,7 +3,7 @@ AC_PREREQ(2.60) dnl initialize autoconf dnl when going to/from release please set the nano (fourth number) right ! dnl releases only do Wall, git and prerelease does Werror too -AC_INIT(GStreamer, 0.11.1, +AC_INIT(GStreamer, 0.11.90, http://bugzilla.gnome.org/enter_bug.cgi?product=GStreamer, gstreamer) AG_GST_INIT @@ -34,13 +34,27 @@ m4_ifdef([AM_SILENT_RULES],[AM_SILENT_RULES([yes])], [AM_DEFAULT_VERBOSITY=1 AC_SUBST(AM_DEFAULT_VERBOSITY)]) -dnl our libraries and install dirs use major.minor as a version -GST_MAJORMINOR=$PACKAGE_VERSION_MAJOR.$PACKAGE_VERSION_MINOR -dnl we override it here for release candidates for a new series -GST_MAJORMINOR=0.11 -AC_SUBST(GST_MAJORMINOR) -AC_DEFINE_UNQUOTED(GST_MAJORMINOR, "$GST_MAJORMINOR", - [library major.minor version]) +dnl GStreamer versioning, this is mostly informational +dnl GST_VERSION_MAJOR=$PACKAGE_VERSION_MAJOR +dnl GST_VERSION_MINOR=$PACKAGE_VERSION_MINOR +dnl GST_VERSION_MICRO=$PACKAGE_VERSION_MICRO +dnl GST_VERSION_NANO=$PACKAGE_VERSION_NANO +dnl Change this to the above for non-pre +GST_VERSION_MAJOR=1 +GST_VERSION_MINOR=0 +GST_VERSION_MICRO=0 +GST_VERSION_NANO=0 +AC_SUBST(GST_VERSION_MAJOR) +AC_SUBST(GST_VERSION_MINOR) +AC_SUBST(GST_VERSION_MICRO) +AC_SUBST(GST_VERSION_NANO) + +dnl our libraries and install dirs use GST_API_VERSION in the filename +dnl to allow side-by-side installation of different API versions +GST_API_VERSION=1.0 +AC_SUBST(GST_API_VERSION) +AC_DEFINE_UNQUOTED(GST_API_VERSION, "$GST_API_VERSION", + [GStreamer API Version]) dnl CURRENT, REVISION, AGE dnl - library source changed -> increment REVISION @@ -48,7 +62,7 @@ dnl - interfaces added/removed/changed -> increment CURRENT, REVISION = 0 dnl - interfaces added -> increment AGE dnl - interfaces removed -> AGE = 0 dnl sets GST_LT_LDFLAGS -AS_LIBTOOL(GST, 31, 0, 0) +AS_LIBTOOL(GST, 0, 0, 0) dnl FIXME: this macro doesn't actually work; dnl the generated libtool script has no support for the listed tags. @@ -70,10 +84,12 @@ dnl set up gettext dnl the version check needs to stay here because autopoint greps for it AM_GNU_GETTEXT_VERSION([0.17]) AM_GNU_GETTEXT([external]) -AG_GST_GETTEXT([gstreamer-$GST_MAJORMINOR]) +AG_GST_GETTEXT([gstreamer-$GST_API_VERSION]) dnl *** check for arguments to configure *** +AG_GST_ARG_DISABLE_FATAL_WARNINGS + dnl subsystems - can influence other decisions so needs to be high up dnl we need to AM_CONDITIONAL them here for automake 1.6.x compatibility AG_GST_CHECK_SUBSYSTEM_DISABLE(GST_DEBUG,[debugging subsystem]) @@ -104,8 +120,6 @@ else GST_REGISTRY_DOC_TYPES= fi AC_SUBST(GST_REGISTRY_DOC_TYPES) -AG_GST_CHECK_SUBSYSTEM_DISABLE(NET,[network distribution]) -AM_CONDITIONAL(GST_DISABLE_NET, test "x$GST_DISABLE_NET" = "xyes") AG_GST_CHECK_SUBSYSTEM_DISABLE(PLUGIN,[plugin]) AM_CONDITIONAL(GST_DISABLE_PLUGIN, test "x$GST_DISABLE_PLUGIN" = "xyes") @@ -244,7 +258,7 @@ AC_PATH_PROG(VALGRIND_PATH, valgrind, no) AM_CONDITIONAL(HAVE_VALGRIND, test ! "x$VALGRIND_PATH" = "xno") dnl check for gobject-introspection -GOBJECT_INTROSPECTION_CHECK([0.6.8]) +GOBJECT_INTROSPECTION_CHECK([1.31.1]) dnl check for documentation tools AG_GST_DOCBOOK_CHECK @@ -380,6 +394,8 @@ AC_CHECK_FUNCS([poll]) AC_CHECK_FUNCS([ppoll]) AC_CHECK_FUNCS([pselect]) +AC_CHECK_HEADERS([sys/poll.h]) + dnl **************************************** dnl *** GLib POLL* compatibility defines *** dnl **************************************** @@ -508,30 +524,12 @@ AC_CHECK_LIB(dl, dladdr, LIBS="$LIBS -ldl") CFLAGS="$save_cflags" -dnl *** checks for socket and nsl libraries *** -AC_CHECK_FUNC(socket,,[AC_CHECK_LIB(socket,socket)]) -AC_CHECK_FUNC(gethostbyname,,[AC_CHECK_LIB(nsl,gethostbyname)]) - -dnl check for inet_aton() -save_libs="$LIBS" -AC_CHECK_FUNC(inet_aton, , - AC_CHECK_LIB(nsl, inet_aton, , - AC_CHECK_LIB(socket, inet_aton, , - AC_CHECK_LIB(resolv, inet_aton, ,[AC_DEFINE(NO_INET_ATON, 1, [Define if you have no native inet_aton() function.])])))) -INET_ATON_LIBS=$LIBS -AC_SUBST(INET_ATON_LIBS) -LIBS="$save_libs" - dnl *** checks for dependency libraries *** dnl GLib -GLIB_REQ=2.26 - +GLIB_REQ=2.31.14 AG_GST_GLIB_CHECK([$GLIB_REQ]) -dnl Check for glib2 without extra fat, useful for the unversioned tool frontends -PKG_CHECK_MODULES(GLIB_ONLY, glib-2.0 >= $GLIB_REQ) - dnl Check for documentation xrefs GLIB_PREFIX="`$PKG_CONFIG --variable=prefix glib-2.0`" AC_SUBST(GLIB_PREFIX) @@ -610,8 +608,14 @@ AG_GST_SET_PLUGINDIR GST_PKG_DEPS="glib-2.0, gobject-2.0, gmodule-no-export-2.0, gthread-2.0" AC_SUBST(GST_PKG_DEPS) +dnl make sure it doesn't complain about unused variables if debugging is disabled +NO_WARNINGS="" +if test "x${GST_DISABLE_GST_DEBUG}" = "xyes"; then + NO_WARNINGS="-Wno-unused" +fi + dnl define an ERROR_CFLAGS Makefile variable -AG_GST_SET_ERROR_CFLAGS($GST_GIT, [-Wmissing-declarations -Wmissing-prototypes -Wredundant-decls -Wundef -Wwrite-strings -Wformat-nonliteral -Wformat-security -Wold-style-definition -Winit-self -Wmissing-include-dirs -Waddress -Waggregate-return -Wno-multichar -Wnested-externs]) +AG_GST_SET_ERROR_CFLAGS($FATAL_WARNINGS, [-Wmissing-declarations -Wmissing-prototypes -Wredundant-decls -Wundef -Wwrite-strings -Wformat-nonliteral -Wformat-security -Wold-style-definition -Winit-self -Wmissing-include-dirs -Waddress -Waggregate-return -Wno-multichar -Wnested-externs $NO_WARNINGS]) dnl define correct level for debugging messages AG_GST_SET_LEVEL_DEFAULT($GST_GIT) @@ -658,8 +662,10 @@ dnl vars common to for all internal objects (core libs, elements, applications) dnl CFLAGS: dnl - src and build dirs need to be added because every piece that gets built dnl will need the GStreamer source and generated headers -GST_ALL_CXXFLAGS="-I\$(top_srcdir)/libs -I\$(top_srcdir) -I\$(top_builddir)/libs -I\$(top_builddir) $GLIB_CFLAGS $GLIB_EXTRA_CFLAGS \$(GST_OPTION_CXXFLAGS) \$(ERROR_CXXFLAGS)" -GST_ALL_CFLAGS="-I\$(top_srcdir)/libs -I\$(top_srcdir) -I\$(top_builddir)/libs -I\$(top_builddir) $GLIB_CFLAGS $GLIB_EXTRA_CFLAGS \$(GST_OPTION_CFLAGS) \$(ERROR_CFLAGS)" +dnl LIBS: XML doesn't need to be added because we don't explicitly use symbols +dnl from LibXML except for in the core library +GST_ALL_CXXFLAGS="-I\$(top_srcdir)/libs -I\$(top_srcdir) -I\$(top_builddir)/libs -I\$(top_builddir) $GLIB_CFLAGS \$(GLIB_EXTRA_CFLAGS) $XML_CFLAGS \$(GST_OPTION_CXXFLAGS) \$(ERROR_CXXFLAGS)" +GST_ALL_CFLAGS="-I\$(top_srcdir)/libs -I\$(top_srcdir) -I\$(top_builddir)/libs -I\$(top_builddir) $GLIB_CFLAGS \$(GLIB_EXTRA_CFLAGS) $XML_CFLAGS \$(GST_OPTION_CFLAGS) \$(ERROR_CFLAGS)" dnl FIXME: check if LTLIBINTL is needed everywhere dnl I presume it is given that it contains the symbols that _() stuff maps to @@ -680,7 +686,7 @@ AC_SUBST(GST_ALL_LDFLAGS) dnl GST_LIB_LDFLAGS dnl linker flags shared by all libraries dnl LDFLAGS modifier defining exported symbols from built libraries -GST_LIB_LDFLAGS="-export-symbols-regex \^[_]*\(gst_\|Gst\|GST_\).*" +GST_LIB_LDFLAGS="-export-symbols-regex \^[_]?\(gst_\|Gst\|GST_\).*" AC_SUBST(GST_LIB_LDFLAGS) dnl GST_OBJ_* @@ -688,7 +694,7 @@ dnl default vars for all internal objects built on libgstreamer dnl includes GST_ALL_* GST_OBJ_CFLAGS="\$(GST_ALL_CFLAGS)" GST_OBJ_CXXFLAGS="\$(GST_ALL_CXXFLAGS)" -GST_OBJ_LIBS="\$(top_builddir)/gst/libgstreamer-$GST_MAJORMINOR.la \$(GST_ALL_LIBS)" +GST_OBJ_LIBS="\$(top_builddir)/gst/libgstreamer-$GST_API_VERSION.la \$(GST_ALL_LIBS)" AC_SUBST(GST_OBJ_CFLAGS) AC_SUBST(GST_OBJ_CXXFLAGS) AC_SUBST(GST_OBJ_LIBS) @@ -699,7 +705,7 @@ GST_PLUGIN_LDFLAGS="-module -avoid-version -export-symbols-regex '^[_]*gst_plugi AC_SUBST(GST_PLUGIN_LDFLAGS, "$GST_PLUGIN_LDFLAGS") dnl plugin scanner locations -AS_AC_EXPAND(GST_PLUGIN_SCANNER_INSTALLED,${libexecdir}/gstreamer-$GST_MAJORMINOR/gst-plugin-scanner) +AS_AC_EXPAND(GST_PLUGIN_SCANNER_INSTALLED,${libexecdir}/gstreamer-$GST_API_VERSION/gst-plugin-scanner) AC_DEFINE_UNQUOTED(GST_PLUGIN_SCANNER_INSTALLED, "$GST_PLUGIN_SCANNER_INSTALLED", [location of the installed gst-plugin-scanner]) AC_SUBST(GST_PLUGIN_SCANNER_INSTALLED) @@ -721,11 +727,9 @@ libs/gst/check/Makefile libs/gst/check/libcheck/Makefile libs/gst/check/libcheck/check.h libs/gst/controller/Makefile -libs/gst/dataprotocol/Makefile libs/gst/helpers/Makefile libs/gst/net/Makefile plugins/Makefile -plugins/indexers/Makefile plugins/elements/Makefile po/Makefile.in tests/Makefile @@ -769,8 +773,6 @@ pkgconfig/gstreamer-check.pc pkgconfig/gstreamer-check-uninstalled.pc pkgconfig/gstreamer-controller.pc pkgconfig/gstreamer-controller-uninstalled.pc -pkgconfig/gstreamer-dataprotocol.pc -pkgconfig/gstreamer-dataprotocol-uninstalled.pc pkgconfig/gstreamer-net.pc pkgconfig/gstreamer-net-uninstalled.pc gst-element-check.m4 @@ -785,7 +787,7 @@ sed \ -e 's/.* GST_DATADIR$/#define GST_DATADIR PREFIX "\\\\share"/' \ -e 's/.* GST_LEVEL_DEFAULT$/#define GST_LEVEL_DEFAULT GST_LEVEL_ERROR/' \ -e 's/.* GST_LICENSE$/#define GST_LICENSE "'$GST_LICENSE'"/' \ - -e 's/.* GST_MAJORMINOR$/#define GST_MAJORMINOR "'$GST_MAJORMINOR'"/' \ + -e 's/.* GST_API_VERSION$/#define GST_API_VERSION "'$GST_API_VERSION'"/' \ -e "s,.* GST_PACKAGE_NAME$,#define GST_PACKAGE_NAME \"${GST_PACKAGE_NAME}\"," \ -e 's/.* GST_PACKAGE_ORIGIN$/#define GST_PACKAGE_ORIGIN "Unknown package origin"/' \ -e "s,.* GST_PACKAGE_RELEASE_DATETIME$,#define GST_PACKAGE_RELEASE_DATETIME \"${GST_PACKAGE_RELEASE_DATETIME}\"," \ @@ -809,7 +811,7 @@ sed \ -e "s/.* PACKAGE_STRING$/#define PACKAGE_STRING \"$PACKAGE_STRING\"/" \ -e 's/.* PACKAGE_TARNAME$/#define PACKAGE_TARNAME "'$PACKAGE_TARNAME'"/' \ -e 's/.* PACKAGE_VERSION$/#define PACKAGE_VERSION "'$PACKAGE_VERSION'"/' \ - -e 's/.* PLUGINDIR$/#ifdef _DEBUG\n# define PLUGINDIR PREFIX "\\\\debug\\\\lib\\\\gstreamer-0.11"\n#else\n# define PLUGINDIR PREFIX "\\\\lib\\\\gstreamer-0.11"\n#endif/' \ + -e 's/.* PLUGINDIR$/#ifdef _DEBUG\n# define PLUGINDIR PREFIX "\\\\debug\\\\lib\\\\gstreamer-1.0"\n#else\n# define PLUGINDIR PREFIX "\\\\lib\\\\gstreamer-1.0"\n#endif/' \ -e 's/.* GST_PLUGIN_SCANNER_INSTALLED$/#define GST_PLUGIN_SCANNER_INSTALLED LIBDIR "\\\\gst-plugin-scanner"/' \ -e 's/.* VERSION$/#define VERSION "'$VERSION'"/' \ config.h.in >win32/common/config.h-new @@ -824,7 +826,6 @@ if test "x${GST_DISABLE_TRACE}" = "xno"; then enable_trace="yes"; fi if test "x${GST_DISABLE_ALLOC_TRACE}" = "xno"; then enable_alloc_trace="yes"; fi if test "x${GST_DISABLE_PLUGIN}" = "xno"; then enable_plugin="yes"; fi if test "x${GST_DISABLE_REGISTRY}" = "xno"; then enable_registry="yes"; fi -if test "x${GST_DISABLE_NET}" = "xno"; then enable_net="yes"; fi echo " @@ -846,7 +847,6 @@ Configuration Allocation tracing : ${enable_alloc_trace} Plugin registry : ${enable_registry} Plugin support : ${enable_plugin} - Network support : ${enable_net} Unit testing support : ${BUILD_CHECK} Debug : ${USE_DEBUG} diff --git a/depcomp b/depcomp index df8eea7..bd0ac08 100755 --- a/depcomp +++ b/depcomp @@ -1,10 +1,10 @@ #! /bin/sh # depcomp - compile a program generating dependencies as side-effects -scriptversion=2009-04-28.21; # UTC +scriptversion=2011-12-04.11; # UTC -# Copyright (C) 1999, 2000, 2003, 2004, 2005, 2006, 2007, 2009 Free -# Software Foundation, Inc. +# Copyright (C) 1999, 2000, 2003, 2004, 2005, 2006, 2007, 2009, 2010, +# 2011 Free Software Foundation, Inc. # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -44,7 +44,7 @@ Environment variables: object Object file output by `PROGRAMS ARGS'. DEPDIR directory where to store dependencies. depfile Dependency file to output. - tmpdepfile Temporary file to use when outputing dependencies. + tmpdepfile Temporary file to use when outputting dependencies. libtool Whether libtool is used (yes/no). Report bugs to . @@ -90,10 +90,18 @@ if test "$depmode" = msvcmsys; then # This is just like msvisualcpp but w/o cygpath translation. # Just convert the backslash-escaped backslashes to single forward # slashes to satisfy depend.m4 - cygpath_u="sed s,\\\\\\\\,/,g" + cygpath_u='sed s,\\\\,/,g' depmode=msvisualcpp fi +if test "$depmode" = msvc7msys; then + # This is just like msvc7 but w/o cygpath translation. + # Just convert the backslash-escaped backslashes to single forward + # slashes to satisfy depend.m4 + cygpath_u='sed s,\\\\,/,g' + depmode=msvc7 +fi + case "$depmode" in gcc3) ## gcc 3 implements dependency tracking that does exactly what @@ -158,10 +166,12 @@ gcc) ' < "$tmpdepfile" | ## Some versions of gcc put a space before the `:'. On the theory ## that the space means something, we add a space to the output as -## well. +## well. hp depmode also adds that space, but also prefixes the VPATH +## to the object. Take care to not repeat it in the output. ## Some versions of the HPUX 10.20 sed can't process this invocation ## correctly. Breaking it into two sed invocations is a workaround. - sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile" + sed -e 's/^\\$//' -e '/^$/d' -e "s|.*$object$||" -e '/:$/d' \ + | sed -e 's/$/ :/' >> "$depfile" rm -f "$tmpdepfile" ;; @@ -405,6 +415,52 @@ tru64) rm -f "$tmpdepfile" ;; +msvc7) + if test "$libtool" = yes; then + showIncludes=-Wc,-showIncludes + else + showIncludes=-showIncludes + fi + "$@" $showIncludes > "$tmpdepfile" + stat=$? + grep -v '^Note: including file: ' "$tmpdepfile" + if test "$stat" = 0; then : + else + rm -f "$tmpdepfile" + exit $stat + fi + rm -f "$depfile" + echo "$object : \\" > "$depfile" + # The first sed program below extracts the file names and escapes + # backslashes for cygpath. The second sed program outputs the file + # name when reading, but also accumulates all include files in the + # hold buffer in order to output them again at the end. This only + # works with sed implementations that can handle large buffers. + sed < "$tmpdepfile" -n ' +/^Note: including file: *\(.*\)/ { + s//\1/ + s/\\/\\\\/g + p +}' | $cygpath_u | sort -u | sed -n ' +s/ /\\ /g +s/\(.*\)/ \1 \\/p +s/.\(.*\) \\/\1:/ +H +$ { + s/.*/ / + G + p +}' >> "$depfile" + rm -f "$tmpdepfile" + ;; + +msvc7msys) + # This case exists only to let depend.m4 do its work. It works by + # looking at the text of this script. This case will never be run, + # since it is checked for above. + exit 1 + ;; + #nosideeffect) # This comment above is used by automake to tell side-effect # dependency tracking mechanisms from slower ones. @@ -503,7 +559,9 @@ makedepend) touch "$tmpdepfile" ${MAKEDEPEND-makedepend} -o"$obj_suffix" -f"$tmpdepfile" "$@" rm -f "$depfile" - cat < "$tmpdepfile" > "$depfile" + # makedepend may prepend the VPATH from the source file name to the object. + # No need to regex-escape $object, excess matching of '.' is harmless. + sed "s|^.*\($object *:\)|\1|" "$tmpdepfile" > "$depfile" sed '1,2d' "$tmpdepfile" | tr ' ' ' ' | \ ## Some versions of the HPUX 10.20 sed can't process this invocation diff --git a/docs/Makefile.in b/docs/Makefile.in index 5d57733..14612de 100644 --- a/docs/Makefile.in +++ b/docs/Makefile.in @@ -1,9 +1,9 @@ -# Makefile.in generated by automake 1.11.1 from Makefile.am. +# Makefile.in generated by automake 1.11.4 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, -# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation, -# Inc. +# 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software +# Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. @@ -15,6 +15,23 @@ @SET_MAKE@ VPATH = @srcdir@ +am__make_dryrun = \ + { \ + am__dry=no; \ + case $$MAKEFLAGS in \ + *\\[\ \ ]*) \ + echo 'am--echo: ; @echo "AM" OK' | $(MAKE) -f - 2>/dev/null \ + | grep '^AM OK$$' >/dev/null || am__dry=yes;; \ + *) \ + for am__flg in $$MAKEFLAGS; do \ + case $$am__flg in \ + *=*|--*) ;; \ + *n*) am__dry=yes; break;; \ + esac; \ + done;; \ + esac; \ + test $$am__dry = yes; \ + } pkgdatadir = $(datadir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ pkglibdir = $(libdir)/@PACKAGE@ @@ -78,11 +95,11 @@ mkinstalldirs = $(install_sh) -d CONFIG_HEADER = $(top_builddir)/config.h CONFIG_CLEAN_FILES = version.entities CONFIG_CLEAN_VPATH_FILES = -AM_V_GEN = $(am__v_GEN_$(V)) -am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) +AM_V_GEN = $(am__v_GEN_@AM_V@) +am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@) am__v_GEN_0 = @echo " GEN " $@; -AM_V_at = $(am__v_at_$(V)) -am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) +AM_V_at = $(am__v_at_@AM_V@) +am__v_at_ = $(am__v_at_@AM_DEFAULT_V@) am__v_at_0 = @ SOURCES = DIST_SOURCES = @@ -93,6 +110,11 @@ RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \ install-pdf-recursive install-ps-recursive install-recursive \ installcheck-recursive installdirs-recursive pdf-recursive \ ps-recursive uninstall-recursive +am__can_run_installinfo = \ + case $$AM_UPDATE_INFO_DIR in \ + n|no|NO) false;; \ + *) (install-info --version) >/dev/null 2>&1;; \ + esac RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \ distclean-recursive maintainer-clean-recursive AM_RECURSIVE_TARGETS = $(RECURSIVE_TARGETS:-recursive=) \ @@ -179,10 +201,12 @@ GCOV_CFLAGS = @GCOV_CFLAGS@ GCOV_LIBS = @GCOV_LIBS@ GETTEXT_MACRO_VERSION = @GETTEXT_MACRO_VERSION@ GETTEXT_PACKAGE = @GETTEXT_PACKAGE@ +GIO_CFLAGS = @GIO_CFLAGS@ +GIO_LDFLAGS = @GIO_LDFLAGS@ +GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ +GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ GLIB_LIBS = @GLIB_LIBS@ -GLIB_ONLY_CFLAGS = @GLIB_ONLY_CFLAGS@ -GLIB_ONLY_LIBS = @GLIB_ONLY_LIBS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GMP_LIBS = @GMP_LIBS@ @@ -195,10 +219,10 @@ GST_ALL_CFLAGS = @GST_ALL_CFLAGS@ GST_ALL_CXXFLAGS = @GST_ALL_CXXFLAGS@ GST_ALL_LDFLAGS = @GST_ALL_LDFLAGS@ GST_ALL_LIBS = @GST_ALL_LIBS@ +GST_API_VERSION = @GST_API_VERSION@ GST_CURRENT = @GST_CURRENT@ GST_DISABLE_ALLOC_TRACE_DEFINE = @GST_DISABLE_ALLOC_TRACE_DEFINE@ GST_DISABLE_GST_DEBUG_DEFINE = @GST_DISABLE_GST_DEBUG_DEFINE@ -GST_DISABLE_NET_DEFINE = @GST_DISABLE_NET_DEFINE@ GST_DISABLE_OPTION_PARSING_DEFINE = @GST_DISABLE_OPTION_PARSING_DEFINE@ GST_DISABLE_PARSE_DEFINE = @GST_DISABLE_PARSE_DEFINE@ GST_DISABLE_PLUGIN_DEFINE = @GST_DISABLE_PLUGIN_DEFINE@ @@ -212,7 +236,6 @@ GST_LIBVERSION = @GST_LIBVERSION@ GST_LIB_LDFLAGS = @GST_LIB_LDFLAGS@ GST_LICENSE = @GST_LICENSE@ GST_LT_LDFLAGS = @GST_LT_LDFLAGS@ -GST_MAJORMINOR = @GST_MAJORMINOR@ GST_OBJ_CFLAGS = @GST_OBJ_CFLAGS@ GST_OBJ_CXXFLAGS = @GST_OBJ_CXXFLAGS@ GST_OBJ_LIBS = @GST_OBJ_LIBS@ @@ -229,6 +252,10 @@ GST_PRINTF_EXTENSION_SEGMENT_FORMAT_DEFINE = @GST_PRINTF_EXTENSION_SEGMENT_FORMA GST_REGISTRY_DOC_TYPES = @GST_REGISTRY_DOC_TYPES@ GST_REVISION = @GST_REVISION@ GST_USING_PRINTF_EXTENSION_DEFINE = @GST_USING_PRINTF_EXTENSION_DEFINE@ +GST_VERSION_MAJOR = @GST_VERSION_MAJOR@ +GST_VERSION_MICRO = @GST_VERSION_MICRO@ +GST_VERSION_MINOR = @GST_VERSION_MINOR@ +GST_VERSION_NANO = @GST_VERSION_NANO@ GTKDOC_CHECK = @GTKDOC_CHECK@ HAVE_DOCBOOK2HTML = @HAVE_DOCBOOK2HTML@ HAVE_DOCBOOK2PS = @HAVE_DOCBOOK2PS@ @@ -244,7 +271,6 @@ HAVE_PS2PDF = @HAVE_PS2PDF@ HAVE_XMLLINT = @HAVE_XMLLINT@ HOST_CPU = @HOST_CPU@ HTML_DIR = @HTML_DIR@ -INET_ATON_LIBS = @INET_ATON_LIBS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ @@ -277,6 +303,7 @@ LTLIBINTL = @LTLIBINTL@ LTLIBOBJS = @LTLIBOBJS@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ +MANIFEST_TOOL = @MANIFEST_TOOL@ MKDIR_P = @MKDIR_P@ MSGFMT = @MSGFMT@ MSGFMT_015 = @MSGFMT_015@ @@ -332,6 +359,7 @@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ abs_top_srcdir = @abs_top_srcdir@ +ac_ct_AR = @ac_ct_AR@ ac_ct_CC = @ac_ct_CC@ ac_ct_CXX = @ac_ct_CXX@ ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ @@ -365,7 +393,6 @@ libdir = @libdir@ libexecdir = @libexecdir@ localedir = @localedir@ localstatedir = @localstatedir@ -lt_ECHO = @lt_ECHO@ mandir = @mandir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ @@ -608,13 +635,10 @@ distdir: $(DISTFILES) done @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \ if test "$$subdir" = .; then :; else \ - test -d "$(distdir)/$$subdir" \ - || $(MKDIR_P) "$(distdir)/$$subdir" \ - || exit 1; \ - fi; \ - done - @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \ - if test "$$subdir" = .; then :; else \ + $(am__make_dryrun) \ + || test -d "$(distdir)/$$subdir" \ + || $(MKDIR_P) "$(distdir)/$$subdir" \ + || exit 1; \ dir1=$$subdir; dir2="$(distdir)/$$subdir"; \ $(am__relativize); \ new_distdir=$$reldir; \ @@ -651,10 +675,15 @@ install-am: all-am installcheck: installcheck-recursive install-strip: - $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ - install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ - `test -z '$(STRIP)' || \ - echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install + if test -z '$(STRIP)'; then \ + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + install; \ + else \ + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \ + fi mostlyclean-generic: clean-generic: diff --git a/docs/design/Makefile.am b/docs/design/Makefile.am index 64875c9..60bd86b 100644 --- a/docs/design/Makefile.am +++ b/docs/design/Makefile.am @@ -42,6 +42,7 @@ EXTRA_DIST = \ part-stream-status.txt \ part-streams.txt \ part-synchronisation.txt \ + part-toc.txt \ part-TODO.txt \ part-trickmodes.txt diff --git a/docs/design/Makefile.in b/docs/design/Makefile.in index f383551..9e94c62 100644 --- a/docs/design/Makefile.in +++ b/docs/design/Makefile.in @@ -1,9 +1,9 @@ -# Makefile.in generated by automake 1.11.1 from Makefile.am. +# Makefile.in generated by automake 1.11.4 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, -# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation, -# Inc. +# 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software +# Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. @@ -15,6 +15,23 @@ @SET_MAKE@ VPATH = @srcdir@ +am__make_dryrun = \ + { \ + am__dry=no; \ + case $$MAKEFLAGS in \ + *\\[\ \ ]*) \ + echo 'am--echo: ; @echo "AM" OK' | $(MAKE) -f - 2>/dev/null \ + | grep '^AM OK$$' >/dev/null || am__dry=yes;; \ + *) \ + for am__flg in $$MAKEFLAGS; do \ + case $$am__flg in \ + *=*|--*) ;; \ + *n*) am__dry=yes; break;; \ + esac; \ + done;; \ + esac; \ + test $$am__dry = yes; \ + } pkgdatadir = $(datadir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ pkglibdir = $(libdir)/@PACKAGE@ @@ -77,14 +94,19 @@ mkinstalldirs = $(install_sh) -d CONFIG_HEADER = $(top_builddir)/config.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = -AM_V_GEN = $(am__v_GEN_$(V)) -am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) +AM_V_GEN = $(am__v_GEN_@AM_V@) +am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@) am__v_GEN_0 = @echo " GEN " $@; -AM_V_at = $(am__v_at_$(V)) -am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) +AM_V_at = $(am__v_at_@AM_V@) +am__v_at_ = $(am__v_at_@AM_DEFAULT_V@) am__v_at_0 = @ SOURCES = DIST_SOURCES = +am__can_run_installinfo = \ + case $$AM_UPDATE_INFO_DIR in \ + n|no|NO) false;; \ + *) (install-info --version) >/dev/null 2>&1;; \ + esac DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ACLOCAL_AMFLAGS = @ACLOCAL_AMFLAGS@ @@ -139,10 +161,12 @@ GCOV_CFLAGS = @GCOV_CFLAGS@ GCOV_LIBS = @GCOV_LIBS@ GETTEXT_MACRO_VERSION = @GETTEXT_MACRO_VERSION@ GETTEXT_PACKAGE = @GETTEXT_PACKAGE@ +GIO_CFLAGS = @GIO_CFLAGS@ +GIO_LDFLAGS = @GIO_LDFLAGS@ +GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ +GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ GLIB_LIBS = @GLIB_LIBS@ -GLIB_ONLY_CFLAGS = @GLIB_ONLY_CFLAGS@ -GLIB_ONLY_LIBS = @GLIB_ONLY_LIBS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GMP_LIBS = @GMP_LIBS@ @@ -155,10 +179,10 @@ GST_ALL_CFLAGS = @GST_ALL_CFLAGS@ GST_ALL_CXXFLAGS = @GST_ALL_CXXFLAGS@ GST_ALL_LDFLAGS = @GST_ALL_LDFLAGS@ GST_ALL_LIBS = @GST_ALL_LIBS@ +GST_API_VERSION = @GST_API_VERSION@ GST_CURRENT = @GST_CURRENT@ GST_DISABLE_ALLOC_TRACE_DEFINE = @GST_DISABLE_ALLOC_TRACE_DEFINE@ GST_DISABLE_GST_DEBUG_DEFINE = @GST_DISABLE_GST_DEBUG_DEFINE@ -GST_DISABLE_NET_DEFINE = @GST_DISABLE_NET_DEFINE@ GST_DISABLE_OPTION_PARSING_DEFINE = @GST_DISABLE_OPTION_PARSING_DEFINE@ GST_DISABLE_PARSE_DEFINE = @GST_DISABLE_PARSE_DEFINE@ GST_DISABLE_PLUGIN_DEFINE = @GST_DISABLE_PLUGIN_DEFINE@ @@ -172,7 +196,6 @@ GST_LIBVERSION = @GST_LIBVERSION@ GST_LIB_LDFLAGS = @GST_LIB_LDFLAGS@ GST_LICENSE = @GST_LICENSE@ GST_LT_LDFLAGS = @GST_LT_LDFLAGS@ -GST_MAJORMINOR = @GST_MAJORMINOR@ GST_OBJ_CFLAGS = @GST_OBJ_CFLAGS@ GST_OBJ_CXXFLAGS = @GST_OBJ_CXXFLAGS@ GST_OBJ_LIBS = @GST_OBJ_LIBS@ @@ -189,6 +212,10 @@ GST_PRINTF_EXTENSION_SEGMENT_FORMAT_DEFINE = @GST_PRINTF_EXTENSION_SEGMENT_FORMA GST_REGISTRY_DOC_TYPES = @GST_REGISTRY_DOC_TYPES@ GST_REVISION = @GST_REVISION@ GST_USING_PRINTF_EXTENSION_DEFINE = @GST_USING_PRINTF_EXTENSION_DEFINE@ +GST_VERSION_MAJOR = @GST_VERSION_MAJOR@ +GST_VERSION_MICRO = @GST_VERSION_MICRO@ +GST_VERSION_MINOR = @GST_VERSION_MINOR@ +GST_VERSION_NANO = @GST_VERSION_NANO@ GTKDOC_CHECK = @GTKDOC_CHECK@ HAVE_DOCBOOK2HTML = @HAVE_DOCBOOK2HTML@ HAVE_DOCBOOK2PS = @HAVE_DOCBOOK2PS@ @@ -204,7 +231,6 @@ HAVE_PS2PDF = @HAVE_PS2PDF@ HAVE_XMLLINT = @HAVE_XMLLINT@ HOST_CPU = @HOST_CPU@ HTML_DIR = @HTML_DIR@ -INET_ATON_LIBS = @INET_ATON_LIBS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ @@ -237,6 +263,7 @@ LTLIBINTL = @LTLIBINTL@ LTLIBOBJS = @LTLIBOBJS@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ +MANIFEST_TOOL = @MANIFEST_TOOL@ MKDIR_P = @MKDIR_P@ MSGFMT = @MSGFMT@ MSGFMT_015 = @MSGFMT_015@ @@ -292,6 +319,7 @@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ abs_top_srcdir = @abs_top_srcdir@ +ac_ct_AR = @ac_ct_AR@ ac_ct_CC = @ac_ct_CC@ ac_ct_CXX = @ac_ct_CXX@ ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ @@ -325,7 +353,6 @@ libdir = @libdir@ libexecdir = @libexecdir@ localedir = @localedir@ localstatedir = @localstatedir@ -lt_ECHO = @lt_ECHO@ mandir = @mandir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ @@ -389,6 +416,7 @@ EXTRA_DIST = \ part-stream-status.txt \ part-streams.txt \ part-synchronisation.txt \ + part-toc.txt \ part-TODO.txt \ part-trickmodes.txt @@ -483,10 +511,15 @@ install-am: all-am installcheck: installcheck-am install-strip: - $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ - install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ - `test -z '$(STRIP)' || \ - echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install + if test -z '$(STRIP)'; then \ + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + install; \ + else \ + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \ + fi mostlyclean-generic: clean-generic: diff --git a/docs/design/part-TODO.txt b/docs/design/part-TODO.txt index 9cb8f0c..e370158 100644 --- a/docs/design/part-TODO.txt +++ b/docs/design/part-TODO.txt @@ -51,7 +51,7 @@ API/ABI and another a push, the push might be busy while the block callback is done. * maybe this name is overloaded. We need to look at some more use cases before trying to fix this. - FIXED in 0.11 with BLOCKING probes. Not everything is implemented yet, though. + FIXED in 0.11 with BLOCKING probes. - rethink the way we do upstream renegotiation. Currently it's done with pad_alloc but this has many issues such as only being able to suggest 1 format @@ -61,7 +61,7 @@ API/ABI This could, for example, easily be triggered with a RENEGOTIATE event. FIXED in 0.11 with RECONFIGURE events. -- Remove the result format value in queries. +- Remove the result format value in queries. FIXED in 0.11 - Try to minimize the amount of acceptcaps calls when pushing buffers around. The element pushing the buffer usually negotiated already and decided on the diff --git a/docs/design/part-element-transform.txt b/docs/design/part-element-transform.txt index e3c11b8..2afe8c1 100644 --- a/docs/design/part-element-transform.txt +++ b/docs/design/part-element-transform.txt @@ -273,7 +273,7 @@ Allocation ~~~~~~~~~~ After the transform element is configured with caps, a bufferpool needs to be -negotiated to perform the allocation of buffers. We habe 2 cases: +negotiated to perform the allocation of buffers. We have 2 cases: - The element is operating in passthrough we don't need to allocate a buffer in the transform element. diff --git a/docs/design/part-events.txt b/docs/design/part-events.txt index 3193698..c8ffde6 100644 --- a/docs/design/part-events.txt +++ b/docs/design/part-events.txt @@ -13,6 +13,7 @@ Different types of events exist to implement various functionalities. GST_EVENT_FLUSH_START: data is to be discarded GST_EVENT_FLUSH_STOP: data is allowed again GST_EVENT_CAPS: Format information about the following buffers + GST_EVENT_STREAM_CONFIG: Stream config: stream headers and codec setup data GST_EVENT_SEGMENT: Timing information for the following buffers GST_EVENT_TAG: Stream metadata. GST_EVENT_BUFFERSIZE: Buffer size requirements @@ -34,27 +35,23 @@ Different types of events exist to implement various functionalities. src pads -------- -A gst_pad_push_event() on a srcpad will first store the event in the sticky -array before sending the event to the peer pad. If there is no peer pad, the -gst_pad_push_event() function returns NOT_LINKED. +A gst_pad_push_event() on a srcpad will first store the sticky event in the +sticky array before sending the event to the peer pad. If there is no peer pad +and the event was not stored in the sticky array, FALSE is returned. -Note that the behaviour is not influenced by a flushing pad. +Flushing pads will refuse the events and will not store the sticky events. -FLUSH_START and FLUSH_STOP events are dropped on blocked pads. sink pads --------- -A gst_pad_send_event() on a sinkpad will check the new event against the -existing event. If they are different, the new event is stored as a pending -event. If the events are the same, nothing changes. +A gst_pad_send_event() on a sinkpad will call the event function on the pad. If +the event function returns success, the sticky event is stored in the sticky +event array and the event is marked for update. -When the pad is flushing, the _send_event() function returns WRONG_STATE -immediately. +When the pad is flushing, the _send_event() function returns FALSE immediately. -The event function is then called for all pending events. If the function -returns success, the pending event is copied to the active events, else the -pending event is removed and the current active event is unchanged. +When the next data item is pushed, the pending events are pushed first. This ensures that the event function is never called for flushing pads and that the sticky array only contains events for which the event function returned @@ -64,9 +61,9 @@ success. pad link -------- -When linking pads, all the sticky events from the srcpad are copied to the -pending array on the sinkpad. The pending events will be sent to the event -function of the sinkpad on the next event or buffer. +When linking pads, the srcpad sticky events are marked for update when they are +different from the sinkpad events. The next buffer push will push the events to +the sinkpad. FLUSH_START/STOP @@ -112,8 +109,6 @@ The EOS event can only be sent on a sinkpad. It is typically emited by the source element when it has finished sending data. This event is mainly sent in the streaming thread but can also be sent from the application thread. -An EOS event sent on a srcpad returns GST_FLOW_UNEXPECTED. - The downstream element should forward the EOS event to its downstream peer elements. This way the event will eventually reach the sinks which should then post an EOS message on the bus when in PLAYING. @@ -131,7 +126,7 @@ GStreamer core will take the STREAM_LOCK. Sometimes the EOS event is generated by another element than the source, for example a demuxer element can generate an EOS event before the source element. This is not a problem, the demuxer does not send an EOS event to the upstream -element but returns GST_FLOW_UNEXPECTED, causing the source element to stop +element but returns GST_FLOW_EOS, causing the source element to stop sending data. An element that sends EOS on a pad should stop sending data on that pad. Source @@ -147,6 +142,26 @@ goes to PLAYING. A FLUSH_STOP event on an element flushes the EOS state and all pending EOS messages. +GST_EVENT_STREAM_CONFIG +~~~~~~~~~~~~~~~~~~~~~~~ + +A stream config event is sent downstream by an element to pass stream headers +or codec/stream setup data to elements downstream. + +Stream headers are buffers that are to be pre-pended to a stream to create +a valid decodable bitstream. This is useful for e.g. network elements who +will send such stream headers first when a new client connects in the middle +of a streaming session. The stream headers and the current data will then +create a valid decodable stream. Stream headers are usually also sent as +buffers at the beginning of a stream in addition to the rest of the stream +data. + +Setup data is codec config data that must be communicated outside of the +data stream and is required by the consumer / downstream element in order +to interpret the data stream correctly. Prepending it to the data stream is +usually not allowed and will not yield a valid stream. + + SEGMENT ~~~~~~~ diff --git a/docs/design/part-latency.txt b/docs/design/part-latency.txt index 7b58b10..315c756 100644 --- a/docs/design/part-latency.txt +++ b/docs/design/part-latency.txt @@ -220,6 +220,31 @@ separate async state change thread (like the one currently used for going from PAUSED->PLAYING in a non-live pipeline). +Query +~~~~~ + +The pipeline latency is queried with the LATENCY query. + + (out) "live", G_TYPE_BOOLEAN (default FALSE) + - if a live element is found upstream + + (out) "min-latency", G_TYPE_UINT64 (default 0) + - the minimum latency in the pipeline + + (out) "max-latency", G_TYPE_UINT64 (default 0) + - the maximum latency in the pipeline + + +Event +~~~~~ + +The latency in the pipeline is configured with the LATENCY event, which contains +the following fields: + + "latency", G_TYPE_UINT64 + - the configured latency in the pipeline + + Latency compensation ~~~~~~~~~~~~~~~~~~~~ diff --git a/docs/design/part-negotiation.txt b/docs/design/part-negotiation.txt index 2a5f4be..89ae38b 100644 --- a/docs/design/part-negotiation.txt +++ b/docs/design/part-negotiation.txt @@ -8,10 +8,65 @@ pipeline that have information to those parts of the pipeline that are flexible, constrained by those parts of the pipeline that are not flexible. + +Basic rules +~~~~~~~~~~~ + +The simple rules must be followed: + + 1) downstream suggests formats + 2) upstream decides on format + +There are 4 queries/events used in caps negotiation: + + 1) GST_QUERY_CAPS : get possible formats + 2) GST_QUERY_ACCEPT_CAPS : check if format is possible + 3) GST_EVENT_CAPS : configure format (downstream) + 4) GST_EVENT_RECONFIGURE : inform upstream of possibly new caps + + +Queries +------- + +A pad can ask the peer pad for its supported GstCaps. It does this with +the CAPS query. The list of supported caps can be used to choose an +appropriate GstCaps for the data transfer. + + (in) "filter", GST_TYPE_CAPS (default NULL) + - a GstCaps to filter the results against + + (out) "caps", GST_TYPE_CAPS (default NULL) + - the result caps + + +A pad can ask the peer pad if it supports a given caps. It does this with +the ACCEPT_CAPS query. + + (in) "caps", GST_TYPE_CAPS + - a GstCaps to check + + (out) "result", G_TYPE_BOOLEAN (default FALSE) + - TRUE if the caps are accepted + + +Events +~~~~~~ + +When a media format is negotiated, peer elements are notified of the GstCaps +with the CAPS event. The caps must be fixed. + + "caps", GST_TYPE_CAPS + - the negotiated GstCaps + + +Operation +~~~~~~~~~ + GStreamer's two scheduling modes, push mode and pull mode, lend themselves to different mechanisms to achieve this goal. As it is more common we describe push mode negotiation first. + Push-mode negotiation ~~~~~~~~~~~~~~~~~~~~~ @@ -31,9 +86,9 @@ The basics of negotiation are as follows: - An element should reconfigure itself to the new format received as a CAPS event before processing the following buffers. If the data type in the - caps event is not acceptable, the element should refuse the buffer by - returning an appropriate GST_FLOW_NOT_NEGOTIATED return value from the - chain function. + caps event is not acceptable, the element should refuse the event. The + element should also refuse the next buffers by returning an appropriate + GST_FLOW_NOT_NEGOTIATED return value from the chain function. - Downstream elements can request a format change of the stream by sending a RECONFIGURE event upstream. Upstream elements will renegotiate a new format @@ -43,11 +98,18 @@ The general flow for a source pad starting the negotiation. src sink | | - | accepts? | - type A |---------------->| - | yes | - |< - - - - - - - -| - | | + | querycaps? | + |---------------->| + | caps | + select caps |< - - - - - - - -| + from the | | + candidates | | + | |-. + | accepts? | | + type A |---------------->| | optional + | yes | | + |< - - - - - - - -| | + | |-' | send_event() | send CAPS |---------------->| Receive type A, reconfigure to event A | | process type A. @@ -61,9 +123,9 @@ The general flow for a source pad starting the negotiation. [element wants to create a buffer] if not format # see what we can do - ourcaps = gst_pad_get_caps (srcpad) + ourcaps = gst_pad_query_caps (srcpad) # see what the peer can do filtered against our caps - candidates = gst_pad_peer_get_caps (srcpad, ourcaps) + candidates = gst_pad_peer_query_caps (srcpad, ourcaps) foreach candidate in candidates # make sure the caps is fixed @@ -100,7 +162,7 @@ The general flow for a sink pad starting a renegotiation. mark .-|<----------------| send RECONFIGURE event renegotiate| | | '>| | - | get_caps() | + | querycaps() | renegotiate |---------------->| | suggest B | |< - - - - - - - -| @@ -121,7 +183,7 @@ videotestsrc ! xvimagesink 1) Who decides what format to use? - src pad always decides, by convention. sinkpad can suggest a format - by putting it high in the getcaps function GstCaps. + by putting it high in the caps query result GstCaps. - since the src decides, it can always choose something that it can do, so this step can only fail if the sinkpad stated it could accept something while later on it couldn't. @@ -143,11 +205,11 @@ videotestsrc ! xvimagesink - src receives the RECONFIGURE event and marks renegotiation - On the next buffer push, the source renegotiates the caps and the bufferpool. The sink will put the new new prefered format high in the list - of caps it returns from its getcaps function. + of caps it returns from its caps query. videotestsrc ! queue ! xvimagesink - - queue proxies all accept and getcaps to the other peer pad. + - queue proxies all accept and caps queries to the other peer pad. - queue proxies the bufferpool - queue proxies the RECONFIGURE event - queue stores CAPS event in the queue. This means that the queue can contain @@ -230,15 +292,15 @@ The sink determines that the upstream elements support pull based scheduling by doing a SCHEDULING query. The sink initiates the negotiation process by intersecting the results -of gst_pad_get_caps() on its sink pad and its peer src pad. This is the +of gst_pad_query_caps() on its sink pad and its peer src pad. This is the operation performed by gst_pad_get_allowed_caps(). In the simple -passthrough case, the peer pad's getcaps() function should return the +passthrough case, the peer pad's caps query should return the intersection of calling get_allowed_caps() on all of its sink pads. In this way the sink element knows the capabilities of the entire pipeline. The sink element then fixates the resulting caps, if necessary, -resulting in the flow caps. From now on, the getcaps function -of the sinkpad will only return these fixed caps meaning that upstream elements +resulting in the flow caps. From now on, the caps query of the sinkpad +will only return these fixed caps meaning that upstream elements will only be able to produce this format. If the sink element could not set caps on its sink pad, it should post @@ -255,3 +317,25 @@ function. The state will commit to PAUSED when the first buffer is received in the sink. This is needed to provide a consistent API to the applications that expect ASYNC return values from sinks but it also allows us to perform the remainder of the negotiation outside of the context of the pulling thread. + + +Patterns +~~~~~~~~ + +We can identify 3 patterns in negotiation: + + 1) Fixed : Can't choose the output format + - Caps encoded in the stream + - A video/audio decoder + - usually uses gst_pad_use_fixed_caps() + + 2) Passthrough + - Caps not modified + - can do caps transform based on element property + - videobox + + 3) Dynamic : can choose output format + - A converter element + - depends on downstream caps, needs to do a CAPS query to find + transform. + - usually prefers to use the identity transform diff --git a/docs/design/part-overview.txt b/docs/design/part-overview.txt index a51471a..ddc9757 100644 --- a/docs/design/part-overview.txt +++ b/docs/design/part-overview.txt @@ -186,8 +186,8 @@ The most common dataflow is the push model. The pull model can be used in specif circumstances by demuxer elements. The pull model can also be used by low latency audio applications. -The data passed between pads is encapsulated in Buffers. The buffer contains a -pointer to the actual data and also metadata describing the data. This metadata +The data passed between pads is encapsulated in Buffers. The buffer contains +pointers to the actual memory and also metadata describing the memory. This metadata includes: - timestamp of the data, this is the time instance at which the data was captured @@ -208,8 +208,7 @@ Before an element pushes out a buffer, it should make sure that the peer element can understand the buffer contents. It does this by querying the peer element for the supported formats and by selecting a suitable common format. The selected format is then first sent to the peer element with a CAPS event before pushing -the buffer. - +the buffer (see part-negotiation.txt). When an element pad receives a CAPS event, it has to check if it understand the media type. The element must refuse following buffers if the media type diff --git a/docs/design/part-query.txt b/docs/design/part-query.txt index 4973c21..b81773e 100644 --- a/docs/design/part-query.txt +++ b/docs/design/part-query.txt @@ -1,44 +1,12 @@ Query ----- -NOTE: this is implemented as proposed - Purpose ~~~~~~~ Queries are used to get information about the stream. A query is started on a specific pad and travels up or downstream. -Types of queries -~~~~~~~~~~~~~~~~ - - - get length of stream - - get position in stream - - get seeking capabilities - - get latency - - convert one value to another - - query supported formats - - query internal links. - -Current implementation -~~~~~~~~~~~~~~~~~~~~~~ - - The current implementation of query requires pads to implement the - following functions: - - gboolean (*GstPadConvertFunction) (GstPad *pad, - GstFormat src_format, gint64 src_value, - GstFormat *dest_format, gint64 *dest_value); - gboolean (*GstPadQueryFunction) (GstPad *pad, GstQueryType type, - GstFormat *format, gint64 *value); - GList* (*GstPadIntLinkFunction) (GstPad *pad); - const GstFormat* (*GstPadFormatsFunction) (GstPad *pad); - const GstEventMask* (*GstPadEventMaskFunction) (GstPad *pad); - const GstQueryType* (*GstPadQueryTypeFunction) (GstPad *pad); - - Most of these functions are not very extensible in particular, - the queryfunction can only return one value. - Requirements ~~~~~~~~~~~~ @@ -47,29 +15,23 @@ Requirements - one pad function to perform the query - extensible queries. -Proposition -~~~~~~~~~~~ +Implementation +~~~~~~~~~~~~~~ - - define GstQuery extending GstMiniObject and containing a GstStructure (see GstMessage) - - define standard query types (see proposed types) - - define methods to create a parse the results in the GstQuery. + - GstQuery extends GstMiniObject and contains a GstStructure (see GstMessage) + - some standard query types are defined below + - methods to create and parse the results in the GstQuery. - define pad method: - gboolean (*GstPadQueryFunction) (GstPad *pad, GstQuery *query); + gboolean (*GstPadQueryFunction) (GstPad *pad, + GstObject *parent, + GstQuery *query); pad returns result in query structure and TRUE as result or FALSE when query is not supported. -Proposed types -~~~~~~~~~~~~~~ - - - GST_QUERY_SEEKING: - - get info on how seeking can be done - - getrange, with/without offset/size - - ranges where seeking is efficient (for caching network sources) - - flags describing seeking behaviour (forward, backward, segments, - play backwards, ...) +Query types +~~~~~~~~~~~ - GST_QUERY_POSITION: @@ -81,7 +43,19 @@ Proposed types - GST_QUERY_LATENCY: - get amount of latency introduced in the pipeline. + get amount of latency introduced in the pipeline. (See part-latency.txt) + + - GST_QUERY_RATE: + + get the current playback rate of the pipeline + + - GST_QUERY_SEEKING: + + get info on how seeking can be done + - getrange, with/without offset/size + - ranges where seeking is efficient (for caching network sources) + - flags describing seeking behaviour (forward, backward, segments, + play backwards, ...) - GST_QUERY_SEGMENT: @@ -95,3 +69,32 @@ Proposed types return list of supported formats that can be used for GST_QUERY_CONVERT. + - GST_QUERY_BUFFERING: + + query available media for efficient seeking (See part-buffering.txt) + + - GST_QUERY_CUSTOM: + + a custom query, the name of the query defines the properties of the query. + + - GST_QUERY_URI: + + query the uri of the source or sink element + + - GST_QUERY_ALLOCATION: + + the buffer allocation properties (See part-bufferpool.txt) + + - GST_QUERY_SCHEDULING: + + the scheduling properties (See part-scheduling.txt) + + - GST_QUERY_ACCEPT_CAPS: + + check if caps are supported (See part-negotiation.txt) + + - GST_QUERY_CAPS: + + get the possible caps (See part-negotiation.txt) + + diff --git a/docs/design/part-scheduling.txt b/docs/design/part-scheduling.txt index e3fc9ec..a4fbdb7 100644 --- a/docs/design/part-scheduling.txt +++ b/docs/design/part-scheduling.txt @@ -60,18 +60,25 @@ A sinkpad can ask the upstream srcpad for its scheduling attributes. It does this with the SCHEDULING query. - (out) "pull-mode", G_TYPE_BOOLEAN (default FALSE) - - if the pad can operate in pull mode, if this flag is not set the pad - will operate in push mode. + (out) "modes", G_TYPE_ARRAY (default NULL) + - an array of GST_TYPE_PAD_MODE enums. Contains all the supported + scheduling modes. - (out) "random-access", G_TYPE_BOOLEAN (default FALSE) + (out) "flags", GST_TYPE_SCHEDULING_FLAGS (default 0) + + typedef enum { + GST_SCHEDULING_FLAG_SEEKABLE = (1 << 0), + GST_SCHEDULING_FLAG_SEQUENTIAL = (1 << 1) + } GstSchedulingFlags; + + _SEEKABLE: - the offset of a pull operation can be specified, if this flag is false, the offset should be -1, - - (out) "sequential", G_TYPE_BOOLEAN (default TRUE) - - suggest sequential access to the data. If random-access is specified, + + _SEQUENTIAL: + - suggest sequential access to the data. If _SEEKABLE is specified, seeks are allowed but should be avoided. This is common for network - streams. ( + streams. (out) "minsize", G_TYPE_INT (default 1) - the suggested minimum size of pull requests @@ -79,7 +86,7 @@ this with the SCHEDULING query. (out) "maxsize", G_TYPE_INT (default -1, unlimited) - the suggested maximum size of pull requests - (out) "align", G_TYPE_INT (default 1) + (out) "align", G_TYPE_INT (default 0) - the suggested alignment for the pull requests. diff --git a/docs/design/part-segments.txt b/docs/design/part-segments.txt index e05ec5b..21926ae 100644 --- a/docs/design/part-segments.txt +++ b/docs/design/part-segments.txt @@ -90,7 +90,7 @@ Use case: FLUSHING seek segment, the decoder knows it should not send the P frame. Avidemux stops sending data after pushing a frame with timestamp 5 and - returns GST_FLOW_UNEXPECTED from the chain function to make the upstream + returns GST_FLOW_EOS from the chain function to make the upstream elements perform the EOS logic. diff --git a/docs/design/part-streams.txt b/docs/design/part-streams.txt index 119921d..ebc33d2 100644 --- a/docs/design/part-streams.txt +++ b/docs/design/part-streams.txt @@ -64,7 +64,7 @@ Typical stream 3) EOS - marks the end of data, nothing is to be expected after EOS, elements - should refuse more data and return GST_FLOW_UNEXPECTED. A FLUSH_STOP + should refuse more data and return GST_FLOW_EOS. A FLUSH_STOP event clears the EOS state of an element. diff --git a/docs/design/part-toc.txt b/docs/design/part-toc.txt new file mode 100644 index 0000000..73231da --- /dev/null +++ b/docs/design/part-toc.txt @@ -0,0 +1,89 @@ +Implementing GstToc support in GStreamer elements + +1. General info about GstToc structure + +GstToc introduces a general way to handle chapters within multimedia +formats. GstToc can be represented as tree structure with arbitrary +hierarchy. Tree item can be either of two types: chapter or edition. +Chapter acts like a part of the media data, for example audio track +in CUE sheet, or part of the movie. Edition acts like some kind of +alternative way to process media content, for example DVD angles. +GstToc has one limitation on tree structure: on the same level of +hierarchy there couldn't be items of different type, i.e. you shouldn't +have editions and chapters mixed together. Here is an example of right TOC: + + ------- TOC ------- + / \ + edition1 edition2 + | | + -chapter1 -chapter3 + -chapter2 + +Here are two editions, the first contains two chapters, and the second +has only one chapter. And here is an example of invalid TOC: + + ------- TOC ------- + / \ + edition1 chapter1 + | + -chapter1 + -chapter2 + +Here you have edition1 and chapter1 mixed on the same level of hierarchy, +and such TOC will be considered broken. + +GstToc has 'entries' field of GList type which consists of children items. +Each item is of type GstTocEntry. Also GstToc has list of tags and +GstStructure called 'info'. Please, use GstToc.info and GstTocEntry.info +fields this way: create a GstStructure, put all info related to your element +there and put this structure into the 'info' field under the name of your +element. Some fields in the 'info' structure can be used for internal +purposes, so you should use it in the way described above to not to +overwrite already existent fields. + +Let's look at GstTocEntry a bit closer. One of the most important fields +is 'uid', which must be unique for each item within the TOC. This is used +to identify each item inside TOC, especially when element receives TOC +select event with UID to seek on. Field 'subentries' of type GList contains +children items of type GstTocEntry. Thus you can achieve arbitrary hierarchy +level. Field 'type' can be either GST_TOC_ENTRY_TYPE_CHAPTER or +GST_TOC_ENTRY_TYPE_EDITION which corresponds to chapter or edition type of +item respectively. Field 'pads' of type GList contains list of GStreamer +pads related to the item. It can be used for example to link a TOC with +specific pad. Field 'tags' is a list of tags related to the item. And field +'info' is similar to GstToc.info described above. + +So, a little more about managing GstToc. Use gst_toc_new() and gst_toc_free() +to create/free it. GstTocEntry can be created using gst_toc_entry_new() and +gst_toc_entry_new_with_pad(). The latter method used to create GstTocEntry +linked to particular pad. While building GstToc you can set start and stop +timestamps for each item using gst_toc_entry_set_start_stop(). +The best way to process already created GstToc is to recursively go through +the 'entries' and 'subentries' fields. + +2. Working with GstQuery + +GstQuery with GstToc can be created using gst_query_new_toc(). Use +gst_query_set_toc() to set TOC into the query and parse it with +gst_query_parse_toc(). The 'extend_uid' parameter (0 for root level) in two +last methods should be used for TOC extending: get GstTocEntry with +gst_toc_find_entry() by given UID and use it to add your own chapters/editions. +The common action on such query is to set TOC for it. + +3. Working with GstMessage + +GstMessage with GstToc can be created using gst_message_new_toc() and parsed +with gst_message_parse_toc(). The 'updated' parameter in these methods indicates +whether the TOC was just discovered (set to false) or TOC was already found and +have been updated (set to true). The common usage for such message is to post it +to pipeline in case you have discovered TOC data within your element. + +4. Working with GstEvent + +GstToc supports select event through GstEvent infrastructure. The idea is the +following: when you receive TOC select event, parse it with +gst_event_parse_toc_select() and seek stream (if it is not streamable) for +specified TOC UID (you can use gst_toc_find_entry() to find entry in TOC by UID). +To create TOC select event use gst_event_new_toc_select(). The common action on +such event is to seek to specified UID within your element. + diff --git a/docs/faq/Makefile.in b/docs/faq/Makefile.in index 2fc3aa9..601dba1 100644 --- a/docs/faq/Makefile.in +++ b/docs/faq/Makefile.in @@ -1,9 +1,9 @@ -# Makefile.in generated by automake 1.11.1 from Makefile.am. +# Makefile.in generated by automake 1.11.4 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, -# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation, -# Inc. +# 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software +# Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. @@ -38,6 +38,23 @@ # install directory trees :( VPATH = @srcdir@ +am__make_dryrun = \ + { \ + am__dry=no; \ + case $$MAKEFLAGS in \ + *\\[\ \ ]*) \ + echo 'am--echo: ; @echo "AM" OK' | $(MAKE) -f - 2>/dev/null \ + | grep '^AM OK$$' >/dev/null || am__dry=yes;; \ + *) \ + for am__flg in $$MAKEFLAGS; do \ + case $$am__flg in \ + *=*|--*) ;; \ + *n*) am__dry=yes; break;; \ + esac; \ + done;; \ + esac; \ + test $$am__dry = yes; \ + } pkgdatadir = $(datadir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ pkglibdir = $(libdir)/@PACKAGE@ @@ -102,14 +119,19 @@ mkinstalldirs = $(install_sh) -d CONFIG_HEADER = $(top_builddir)/config.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = -AM_V_GEN = $(am__v_GEN_$(V)) -am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) +AM_V_GEN = $(am__v_GEN_@AM_V@) +am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@) am__v_GEN_0 = @echo " GEN " $@; -AM_V_at = $(am__v_at_$(V)) -am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) +AM_V_at = $(am__v_at_@AM_V@) +am__v_at_ = $(am__v_at_@AM_DEFAULT_V@) am__v_at_0 = @ SOURCES = DIST_SOURCES = +am__can_run_installinfo = \ + case $$AM_UPDATE_INFO_DIR in \ + n|no|NO) false;; \ + *) (install-info --version) >/dev/null 2>&1;; \ + esac am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; am__vpath_adj = case $$p in \ $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \ @@ -131,6 +153,12 @@ am__nobase_list = $(am__nobase_strip_setup); \ am__base_list = \ sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \ sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g' +am__uninstall_files_from_dir = { \ + test -z "$$files" \ + || { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \ + || { echo " ( cd '$$dir' && rm -f" $$files ")"; \ + $(am__cd) "$$dir" && rm -f $$files; }; \ + } am__installdirs = "$(DESTDIR)$(faqdir)" DATA = $(faq_DATA) DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) @@ -187,10 +215,12 @@ GCOV_CFLAGS = @GCOV_CFLAGS@ GCOV_LIBS = @GCOV_LIBS@ GETTEXT_MACRO_VERSION = @GETTEXT_MACRO_VERSION@ GETTEXT_PACKAGE = @GETTEXT_PACKAGE@ +GIO_CFLAGS = @GIO_CFLAGS@ +GIO_LDFLAGS = @GIO_LDFLAGS@ +GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ +GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ GLIB_LIBS = @GLIB_LIBS@ -GLIB_ONLY_CFLAGS = @GLIB_ONLY_CFLAGS@ -GLIB_ONLY_LIBS = @GLIB_ONLY_LIBS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GMP_LIBS = @GMP_LIBS@ @@ -203,10 +233,10 @@ GST_ALL_CFLAGS = @GST_ALL_CFLAGS@ GST_ALL_CXXFLAGS = @GST_ALL_CXXFLAGS@ GST_ALL_LDFLAGS = @GST_ALL_LDFLAGS@ GST_ALL_LIBS = @GST_ALL_LIBS@ +GST_API_VERSION = @GST_API_VERSION@ GST_CURRENT = @GST_CURRENT@ GST_DISABLE_ALLOC_TRACE_DEFINE = @GST_DISABLE_ALLOC_TRACE_DEFINE@ GST_DISABLE_GST_DEBUG_DEFINE = @GST_DISABLE_GST_DEBUG_DEFINE@ -GST_DISABLE_NET_DEFINE = @GST_DISABLE_NET_DEFINE@ GST_DISABLE_OPTION_PARSING_DEFINE = @GST_DISABLE_OPTION_PARSING_DEFINE@ GST_DISABLE_PARSE_DEFINE = @GST_DISABLE_PARSE_DEFINE@ GST_DISABLE_PLUGIN_DEFINE = @GST_DISABLE_PLUGIN_DEFINE@ @@ -220,7 +250,6 @@ GST_LIBVERSION = @GST_LIBVERSION@ GST_LIB_LDFLAGS = @GST_LIB_LDFLAGS@ GST_LICENSE = @GST_LICENSE@ GST_LT_LDFLAGS = @GST_LT_LDFLAGS@ -GST_MAJORMINOR = @GST_MAJORMINOR@ GST_OBJ_CFLAGS = @GST_OBJ_CFLAGS@ GST_OBJ_CXXFLAGS = @GST_OBJ_CXXFLAGS@ GST_OBJ_LIBS = @GST_OBJ_LIBS@ @@ -237,6 +266,10 @@ GST_PRINTF_EXTENSION_SEGMENT_FORMAT_DEFINE = @GST_PRINTF_EXTENSION_SEGMENT_FORMA GST_REGISTRY_DOC_TYPES = @GST_REGISTRY_DOC_TYPES@ GST_REVISION = @GST_REVISION@ GST_USING_PRINTF_EXTENSION_DEFINE = @GST_USING_PRINTF_EXTENSION_DEFINE@ +GST_VERSION_MAJOR = @GST_VERSION_MAJOR@ +GST_VERSION_MICRO = @GST_VERSION_MICRO@ +GST_VERSION_MINOR = @GST_VERSION_MINOR@ +GST_VERSION_NANO = @GST_VERSION_NANO@ GTKDOC_CHECK = @GTKDOC_CHECK@ HAVE_DOCBOOK2HTML = @HAVE_DOCBOOK2HTML@ HAVE_DOCBOOK2PS = @HAVE_DOCBOOK2PS@ @@ -252,7 +285,6 @@ HAVE_PS2PDF = @HAVE_PS2PDF@ HAVE_XMLLINT = @HAVE_XMLLINT@ HOST_CPU = @HOST_CPU@ HTML_DIR = @HTML_DIR@ -INET_ATON_LIBS = @INET_ATON_LIBS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ @@ -285,6 +317,7 @@ LTLIBINTL = @LTLIBINTL@ LTLIBOBJS = @LTLIBOBJS@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ +MANIFEST_TOOL = @MANIFEST_TOOL@ MKDIR_P = @MKDIR_P@ MSGFMT = @MSGFMT@ MSGFMT_015 = @MSGFMT_015@ @@ -340,6 +373,7 @@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ abs_top_srcdir = @abs_top_srcdir@ +ac_ct_AR = @ac_ct_AR@ ac_ct_CC = @ac_ct_CC@ ac_ct_CXX = @ac_ct_CXX@ ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ @@ -373,7 +407,6 @@ libdir = @libdir@ libexecdir = @libexecdir@ localedir = @localedir@ localstatedir = @localstatedir@ -lt_ECHO = @lt_ECHO@ mandir = @mandir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ @@ -496,6 +529,7 @@ Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ esac; +$(srcdir)/../manuals.mak $(top_srcdir)/common/upload-doc.mak $(srcdir)/../htmlinstall.mak: $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh @@ -513,8 +547,11 @@ clean-libtool: -rm -rf .libs _libs install-faqDATA: $(faq_DATA) @$(NORMAL_INSTALL) - test -z "$(faqdir)" || $(MKDIR_P) "$(DESTDIR)$(faqdir)" @list='$(faq_DATA)'; test -n "$(faqdir)" || list=; \ + if test -n "$$list"; then \ + echo " $(MKDIR_P) '$(DESTDIR)$(faqdir)'"; \ + $(MKDIR_P) '$(DESTDIR)$(faqdir)' || exit 1; \ + fi; \ for p in $$list; do \ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ echo "$$d$$p"; \ @@ -528,9 +565,7 @@ uninstall-faqDATA: @$(NORMAL_UNINSTALL) @list='$(faq_DATA)'; test -n "$(faqdir)" || list=; \ files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ - test -n "$$files" || exit 0; \ - echo " ( cd '$(DESTDIR)$(faqdir)' && rm -f" $$files ")"; \ - cd "$(DESTDIR)$(faqdir)" && rm -f $$files + dir='$(DESTDIR)$(faqdir)'; $(am__uninstall_files_from_dir) tags: TAGS TAGS: @@ -586,10 +621,15 @@ install-am: all-am installcheck: installcheck-am install-strip: - $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ - install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ - `test -z '$(STRIP)' || \ - echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install + if test -z '$(STRIP)'; then \ + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + install; \ + else \ + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \ + fi mostlyclean-generic: clean-generic: diff --git a/docs/faq/developing.xml b/docs/faq/developing.xml index dafbc4c..b145989 100644 --- a/docs/faq/developing.xml +++ b/docs/faq/developing.xml @@ -19,12 +19,12 @@ If you're not familiar with pkg-config to compile and link a small one-file program, pass the --cflags and --libs arguments to pkg-config. For example: -$ libtool --mode=link gcc `pkg-config --cflags --libs gstreamer-&GST_MAJORMINOR;` -o myprog myprog.c +$ libtool --mode=link gcc `pkg-config --cflags --libs gstreamer-&GST_API_VERSION;` -o myprog myprog.c would be sufficient for a gstreamer-only program. If (for example) your app also used GTK+ 2.0, you could use -$ libtool --mode=link gcc `pkg-config --cflags --libs gstreamer-&GST_MAJORMINOR; gtk+-2.0` -o myprog myprog.c +$ libtool --mode=link gcc `pkg-config --cflags --libs gstreamer-&GST_API_VERSION; gtk+-2.0` -o myprog myprog.c Those are back-ticks (on the same key with the tilde on US keyboards), not single quotes. diff --git a/docs/faq/general.xml b/docs/faq/general.xml index c6ccb6a..e85bec0 100644 --- a/docs/faq/general.xml +++ b/docs/faq/general.xml @@ -99,7 +99,7 @@ What are the exact licensing terms for GStreamer and its plugins ? All of GStreamer, including our own plugin code, is licensed under the -GNU LGPL license. +GNU LGPL 2.1 license. Some of the libraries we use for some of the plugins are however under the GPL, which means that those plugins can not be used by a non-GPL-compatible application. diff --git a/docs/gst/Makefile.am b/docs/gst/Makefile.am index a3bf560..23eac9f 100644 --- a/docs/gst/Makefile.am +++ b/docs/gst/Makefile.am @@ -1,7 +1,7 @@ ## Process this file with automake to produce Makefile.in # The name of the module, e.g. 'glib'. -# DOC_MODULE=gstreamer-@GST_MAJORMINOR@ +# DOC_MODULE=gstreamer-@GST_API_VERSION@ DOC_MODULE=gstreamer # don't want $(DOC_MODULE)-scan.c to be built with -Werror @@ -45,7 +45,6 @@ IGNORE_HFILES= \ gst-i18n-lib.h \ gst_private.h \ gstelementdetails.h \ - gstmarshal.h \ gstmacros.h \ \ grammar.tab.h \ diff --git a/docs/gst/Makefile.in b/docs/gst/Makefile.in index 12ca83e..cc68ada 100644 --- a/docs/gst/Makefile.in +++ b/docs/gst/Makefile.in @@ -1,9 +1,9 @@ -# Makefile.in generated by automake 1.11.1 from Makefile.am. +# Makefile.in generated by automake 1.11.4 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, -# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation, -# Inc. +# 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software +# Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. @@ -34,6 +34,23 @@ ########################################################################### # thomas: except of course that we did VPATH = @srcdir@ +am__make_dryrun = \ + { \ + am__dry=no; \ + case $$MAKEFLAGS in \ + *\\[\ \ ]*) \ + echo 'am--echo: ; @echo "AM" OK' | $(MAKE) -f - 2>/dev/null \ + | grep '^AM OK$$' >/dev/null || am__dry=yes;; \ + *) \ + for am__flg in $$MAKEFLAGS; do \ + case $$am__flg in \ + *=*|--*) ;; \ + *n*) am__dry=yes; break;; \ + esac; \ + done;; \ + esac; \ + test $$am__dry = yes; \ + } pkgdatadir = $(datadir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ pkglibdir = $(libdir)/@PACKAGE@ @@ -98,14 +115,19 @@ mkinstalldirs = $(install_sh) -d CONFIG_HEADER = $(top_builddir)/config.h CONFIG_CLEAN_FILES = gstreamer.types CONFIG_CLEAN_VPATH_FILES = -AM_V_GEN = $(am__v_GEN_$(V)) -am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) +AM_V_GEN = $(am__v_GEN_@AM_V@) +am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@) am__v_GEN_0 = @echo " GEN " $@; -AM_V_at = $(am__v_at_$(V)) -am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) +AM_V_at = $(am__v_at_@AM_V@) +am__v_at_ = $(am__v_at_@AM_DEFAULT_V@) am__v_at_0 = @ SOURCES = DIST_SOURCES = +am__can_run_installinfo = \ + case $$AM_UPDATE_INFO_DIR in \ + n|no|NO) false;; \ + *) (install-info --version) >/dev/null 2>&1;; \ + esac DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ACLOCAL_AMFLAGS = @ACLOCAL_AMFLAGS@ @@ -162,10 +184,12 @@ GCOV_CFLAGS = @GCOV_CFLAGS@ GCOV_LIBS = @GCOV_LIBS@ GETTEXT_MACRO_VERSION = @GETTEXT_MACRO_VERSION@ GETTEXT_PACKAGE = @GETTEXT_PACKAGE@ +GIO_CFLAGS = @GIO_CFLAGS@ +GIO_LDFLAGS = @GIO_LDFLAGS@ +GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ +GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ GLIB_LIBS = @GLIB_LIBS@ -GLIB_ONLY_CFLAGS = @GLIB_ONLY_CFLAGS@ -GLIB_ONLY_LIBS = @GLIB_ONLY_LIBS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GMP_LIBS = @GMP_LIBS@ @@ -178,10 +202,10 @@ GST_ALL_CFLAGS = @GST_ALL_CFLAGS@ GST_ALL_CXXFLAGS = @GST_ALL_CXXFLAGS@ GST_ALL_LDFLAGS = @GST_ALL_LDFLAGS@ GST_ALL_LIBS = @GST_ALL_LIBS@ +GST_API_VERSION = @GST_API_VERSION@ GST_CURRENT = @GST_CURRENT@ GST_DISABLE_ALLOC_TRACE_DEFINE = @GST_DISABLE_ALLOC_TRACE_DEFINE@ GST_DISABLE_GST_DEBUG_DEFINE = @GST_DISABLE_GST_DEBUG_DEFINE@ -GST_DISABLE_NET_DEFINE = @GST_DISABLE_NET_DEFINE@ GST_DISABLE_OPTION_PARSING_DEFINE = @GST_DISABLE_OPTION_PARSING_DEFINE@ GST_DISABLE_PARSE_DEFINE = @GST_DISABLE_PARSE_DEFINE@ GST_DISABLE_PLUGIN_DEFINE = @GST_DISABLE_PLUGIN_DEFINE@ @@ -195,7 +219,6 @@ GST_LIBVERSION = @GST_LIBVERSION@ GST_LIB_LDFLAGS = @GST_LIB_LDFLAGS@ GST_LICENSE = @GST_LICENSE@ GST_LT_LDFLAGS = @GST_LT_LDFLAGS@ -GST_MAJORMINOR = @GST_MAJORMINOR@ GST_OBJ_CFLAGS = @GST_OBJ_CFLAGS@ GST_OBJ_CXXFLAGS = @GST_OBJ_CXXFLAGS@ GST_OBJ_LIBS = @GST_OBJ_LIBS@ @@ -212,6 +235,10 @@ GST_PRINTF_EXTENSION_SEGMENT_FORMAT_DEFINE = @GST_PRINTF_EXTENSION_SEGMENT_FORMA GST_REGISTRY_DOC_TYPES = @GST_REGISTRY_DOC_TYPES@ GST_REVISION = @GST_REVISION@ GST_USING_PRINTF_EXTENSION_DEFINE = @GST_USING_PRINTF_EXTENSION_DEFINE@ +GST_VERSION_MAJOR = @GST_VERSION_MAJOR@ +GST_VERSION_MICRO = @GST_VERSION_MICRO@ +GST_VERSION_MINOR = @GST_VERSION_MINOR@ +GST_VERSION_NANO = @GST_VERSION_NANO@ GTKDOC_CHECK = @GTKDOC_CHECK@ HAVE_DOCBOOK2HTML = @HAVE_DOCBOOK2HTML@ HAVE_DOCBOOK2PS = @HAVE_DOCBOOK2PS@ @@ -227,7 +254,6 @@ HAVE_PS2PDF = @HAVE_PS2PDF@ HAVE_XMLLINT = @HAVE_XMLLINT@ HOST_CPU = @HOST_CPU@ HTML_DIR = @HTML_DIR@ -INET_ATON_LIBS = @INET_ATON_LIBS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ @@ -260,6 +286,7 @@ LTLIBINTL = @LTLIBINTL@ LTLIBOBJS = @LTLIBOBJS@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ +MANIFEST_TOOL = @MANIFEST_TOOL@ MKDIR_P = @MKDIR_P@ MSGFMT = @MSGFMT@ MSGFMT_015 = @MSGFMT_015@ @@ -315,6 +342,7 @@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ abs_top_srcdir = @abs_top_srcdir@ +ac_ct_AR = @ac_ct_AR@ ac_ct_CC = @ac_ct_CC@ ac_ct_CXX = @ac_ct_CXX@ ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ @@ -348,7 +376,6 @@ libdir = @libdir@ libexecdir = @libexecdir@ localedir = @localedir@ localstatedir = @localstatedir@ -lt_ECHO = @lt_ECHO@ mandir = @mandir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ @@ -371,7 +398,7 @@ top_builddir = @top_builddir@ top_srcdir = @top_srcdir@ # The name of the module, e.g. 'glib'. -# DOC_MODULE=gstreamer-@GST_MAJORMINOR@ +# DOC_MODULE=gstreamer-@GST_API_VERSION@ DOC_MODULE = gstreamer BUILT_SOURCES = gstreamer.types @@ -414,7 +441,6 @@ IGNORE_HFILES = \ gst-i18n-lib.h \ gst_private.h \ gstelementdetails.h \ - gstmarshal.h \ gstmacros.h \ \ grammar.tab.h \ @@ -455,7 +481,7 @@ DOC_OVERRIDES = $(DOC_MODULE)-overrides.txt GPATH = $(srcdir) # thomas: make docs parallel installable -TARGET_DIR = $(HTML_DIR)/$(DOC_MODULE)-@GST_MAJORMINOR@ +TARGET_DIR = $(HTML_DIR)/$(DOC_MODULE)-@GST_API_VERSION@ EXTRA_DIST = \ $(content_files) \ $(extra_files) \ @@ -515,6 +541,7 @@ Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ esac; +$(top_srcdir)/common/upload-doc.mak $(top_srcdir)/common/gtk-doc.mak: $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh @@ -588,10 +615,15 @@ install-am: all-am installcheck: installcheck-am install-strip: - $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ - install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ - `test -z '$(STRIP)' || \ - echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install + if test -z '$(STRIP)'; then \ + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + install; \ + else \ + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \ + fi mostlyclean-generic: clean-generic: @@ -824,7 +856,7 @@ gst-universe.svg: gst-universe.dot @ENABLE_GTK_DOC_TRUE@ fi; \ @ENABLE_GTK_DOC_TRUE@ cd html && gtkdoc-mkhtml $$mkhtml_options $(MKHTML_OPTIONS) $(DOC_MODULE) ../$(DOC_MAIN_SGML_FILE) @ENABLE_GTK_DOC_TRUE@ @mv html/index.sgml html/index.sgml.bak -@ENABLE_GTK_DOC_TRUE@ @$(SED) "s/ href=\"$(DOC_MODULE)\// href=\"$(DOC_MODULE)-@GST_MAJORMINOR@\//g" html/index.sgml.bak >html/index.sgml +@ENABLE_GTK_DOC_TRUE@ @$(SED) "s/ href=\"$(DOC_MODULE)\// href=\"$(DOC_MODULE)-@GST_API_VERSION@\//g" html/index.sgml.bak >html/index.sgml @ENABLE_GTK_DOC_TRUE@ @rm -f html/index.sgml.bak @ENABLE_GTK_DOC_TRUE@ @rm -rf html/xml @ENABLE_GTK_DOC_TRUE@ @rm -f version.entities @@ -882,7 +914,7 @@ install-data-local: echo '-- Installing $(builddir)/html/$(DOC_MODULE).devhelp2' ; \ if test -e $(builddir)/html/$(DOC_MODULE).devhelp2; then \ $(INSTALL_DATA) $(builddir)/html/$(DOC_MODULE).devhelp2 \ - $(DESTDIR)$(TARGET_DIR)/$(DOC_MODULE)-@GST_MAJORMINOR@.devhelp2; \ + $(DESTDIR)$(TARGET_DIR)/$(DOC_MODULE)-@GST_API_VERSION@.devhelp2; \ fi; \ (which gtkdoc-rebase >/dev/null && \ gtkdoc-rebase --relative --dest-dir=$(DESTDIR) --html-dir=$(DESTDIR)$(TARGET_DIR)) || true ; \ diff --git a/docs/gst/gst-universe.svg b/docs/gst/gst-universe.svg index 9d9140d..9096ba4 100644 --- a/docs/gst/gst-universe.svg +++ b/docs/gst/gst-universe.svg @@ -4,290 +4,290 @@ - - + + pipeline - + application - -application + +application bus - -bus + +bus application->bus - - -listen on + + +listen on event - -event + +event application->event - - -send + + +send pipeline - -pipeline + +pipeline application->pipeline - - -has + + +has query - -query + +query application->query - - -send + + +send bin - -bin + +bin element - -element + +element bin->element - - -is-a + + +is-a bin->element - - -has n + + +has n message - -message + +message bus->message - - -receive + + +receive buffer - -buffer + +buffer caps - -caps + +caps buffer->caps - - -has n + + +has n structure -structure +structure caps->structure - - -has n + + +has n clock - -clock + +clock element->buffer - - -send & receive + + +send & receive element->clock - - -may provide + + +may provide element_factory - -element factory + +element factory element->element_factory - - -is created from + + +is created from element->event - - -send & receive + + +send & receive element->message - - -send + + +send pad - -pad + +pad element->pad - - -has n + + +has n pad_template - -pad template + +pad template element->pad_template - - -has n + + +has n element->query - - -answers + + +answers plugin_feature - -plugin feature + +plugin feature element_factory->plugin_feature - - -is-a + + +is-a pad->caps - - -has n + + +has n pad->pad_template - - -is created from + + +is created from pad_template->caps - - -has n + + +has n pipeline->bin - - -is-a + + +is-a pipeline->bus - - -has 1 + + +has 1 pipeline->clock - - -has 1 + + +has 1 plugin - -plugin + +plugin plugin->plugin_feature - - -has n + + +has n registry - -registry + +registry registry->plugin - - -has n + + +has n diff --git a/docs/gst/gstreamer-docs.sgml b/docs/gst/gstreamer-docs.sgml index 7f69328..1004509 100644 --- a/docs/gst/gstreamer-docs.sgml +++ b/docs/gst/gstreamer-docs.sgml @@ -8,9 +8,9 @@ ]> - GStreamer &GST_MAJORMINOR; Core Reference Manual + GStreamer &GST_API_VERSION; Core Reference Manual - for GStreamer Core &GST_MAJORMINOR; (&GST_VERSION;) + for GStreamer Core &GST_API_VERSION; (&GST_VERSION;) The latest version of this documentation can be found on-line at http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/. @@ -50,7 +50,7 @@ Windows. It is released under the GNU Library General Public License GStreamer Core Library - libgstreamer-&GST_MAJORMINOR;.so provides all the core GStreamer services, + libgstreamer-&GST_API_VERSION;.so provides all the core GStreamer services, including initialization, plugin management and types, as well as the object hierarchy that defines elements and bins, along with some more specialized elements. @@ -64,19 +64,19 @@ Windows. It is released under the GNU Library General Public License + + + - - - @@ -101,6 +101,8 @@ Windows. It is released under the GNU Library General Public License + + @@ -118,7 +120,6 @@ Windows. It is released under the GNU Library General Public License - diff --git a/docs/gst/gstreamer-sections.txt b/docs/gst/gstreamer-sections.txt index 76167b3..c66ccc1 100644 --- a/docs/gst/gstreamer-sections.txt +++ b/docs/gst/gstreamer-sections.txt @@ -36,6 +36,8 @@ GST_QUARK GstQuarkId GstPluginLoader GstPluginLoaderFuncs +GstAllocTrace +GstAllocTraceFlags
@@ -158,28 +160,25 @@ GstBusPrivate GstBuffer GstBuffer GstBufferFlags -GstBufferCopyFlags GST_BUFFER_FLAGS GST_BUFFER_FLAG_IS_SET GST_BUFFER_FLAG_SET GST_BUFFER_FLAG_UNSET -GST_META_TIMING_INFO -GstMetaTiming -GST_BUFFER_TIMESTAMP +GST_BUFFER_PTS +GST_BUFFER_DTS GST_BUFFER_DURATION GST_BUFFER_OFFSET GST_BUFFER_OFFSET_END GST_BUFFER_OFFSET_NONE GST_BUFFER_DURATION_IS_VALID -GST_BUFFER_TIMESTAMP_IS_VALID +GST_BUFFER_PTS_IS_VALID +GST_BUFFER_DTS_IS_VALID GST_BUFFER_OFFSET_IS_VALID GST_BUFFER_OFFSET_END_IS_VALID GST_BUFFER_IS_DISCONT -GST_BUFFER_TRACE_NAME gst_buffer_new -gst_buffer_new_and_alloc gst_buffer_new_allocate gst_buffer_new_wrapped gst_buffer_new_wrapped_full @@ -193,13 +192,20 @@ gst_buffer_resize gst_buffer_set_size gst_buffer_n_memory -gst_buffer_take_memory -gst_buffer_peek_memory -gst_buffer_remove_memory +gst_buffer_insert_memory +gst_buffer_replace_memory_range +gst_buffer_get_memory_range gst_buffer_remove_memory_range - -gst_buffer_join -gst_buffer_merge +gst_buffer_find_memory + +gst_buffer_prepend_memory +gst_buffer_append_memory +gst_buffer_replace_memory +gst_buffer_replace_all_memory +gst_buffer_get_memory +gst_buffer_get_all_memory +gst_buffer_remove_memory +gst_buffer_remove_all_memory gst_buffer_map gst_buffer_unmap @@ -209,6 +215,7 @@ gst_buffer_extract gst_buffer_fill gst_buffer_memset +GstBufferCopyFlags GST_BUFFER_COPY_METADATA GST_BUFFER_COPY_ALL gst_buffer_copy @@ -219,17 +226,15 @@ gst_buffer_is_writable gst_buffer_make_writable gst_buffer_replace -gst_buffer_is_span_fast -gst_buffer_span +gst_buffer_append gst_buffer_get_meta gst_buffer_add_meta gst_buffer_remove_meta gst_buffer_iterate_meta +GstBufferForeachMetaFunc +gst_buffer_foreach_meta -gst_buffer_add_meta_timing -gst_buffer_get_meta_timing -gst_meta_timing_get_info GstBufferClass GST_BUFFER @@ -242,20 +247,35 @@ GST_BUFFER_CAST gst_buffer_get_type gst_buffer_flags_get_type gst_buffer_copy_flags_get_type +GST_BUFFER_TIMESTAMP +GST_BUFFER_TIMESTAMP_IS_VALID
gstmeta GstMeta GstMeta +GstMetaFlags +GST_META_FLAGS +GST_META_FLAG_IS_SET +GST_META_FLAG_SET +GST_META_FLAG_UNSET GstMetaInfo -GST_META_TRACE_NAME GstMetaInitFunction GstMetaFreeFunction -GstMetaCopyFunction GstMetaTransformFunction +GstMetaTransformCopy +GST_META_TRANSFORM_IS_COPY +gst_meta_api_type_register +gst_meta_api_type_has_tag +GST_META_TAG_MEMORY gst_meta_register gst_meta_get_info + +GST_META_CAST + +GST_TYPE_META_FLAGS +gst_meta_flags_get_type
@@ -264,18 +284,19 @@ gst_meta_get_info GstBufferPool GstBufferPool GstBufferPoolClass -GstBufferPoolFlags GST_BUFFER_POOL_IS_FLUSHING -GstBufferPoolParams gst_buffer_pool_new -gst_buffer_pool_config_get -gst_buffer_pool_config_set +gst_buffer_pool_config_get_params +gst_buffer_pool_config_set_params +gst_buffer_pool_config_get_allocator +gst_buffer_pool_config_set_allocator +gst_buffer_pool_config_n_options gst_buffer_pool_config_add_option gst_buffer_pool_config_get_option gst_buffer_pool_config_has_option -gst_buffer_pool_config_n_options + gst_buffer_pool_get_options gst_buffer_pool_has_option @@ -285,19 +306,20 @@ gst_buffer_pool_set_config gst_buffer_pool_set_active gst_buffer_pool_is_active +GstBufferPoolAcquireFlags +GstBufferPoolAcquireParams gst_buffer_pool_acquire_buffer gst_buffer_pool_release_buffer GST_BUFFER_POOL_CLASS GST_BUFFER_POOL_CAST -GST_BUFFER_POOL_TRACE_NAME GstBufferPoolPrivate GST_BUFFER_POOL GST_IS_BUFFER_POOL GST_TYPE_BUFFER_POOL gst_buffer_pool_get_type -GST_TYPE_BUFFER_POOL_FLAGS -gst_buffer_pool_flags_get_type +GST_TYPE_BUFFER_POOL_ACQUIRE_FLAGS +gst_buffer_pool_acquire_flags_get_type GST_IS_BUFFER_POOL_CLASS GST_BUFFER_POOL_GET_CLASS @@ -308,8 +330,8 @@ GST_BUFFER_POOL_GET_CLASS GstBufferList gst_buffer_list_new -gst_buffer_list_sized_new -gst_buffer_list_len +gst_buffer_list_new_sized +gst_buffer_list_length gst_buffer_list_add gst_buffer_list_insert gst_buffer_list_remove @@ -355,6 +377,7 @@ GST_CAPS_FLAG_SET GST_CAPS_FLAG_UNSET gst_caps_new_empty +gst_caps_new_empty_simple gst_caps_new_any gst_caps_new_simple gst_caps_new_full @@ -380,23 +403,24 @@ gst_caps_is_empty gst_caps_is_fixed gst_caps_is_equal gst_caps_is_equal_fixed +gst_caps_is_strictly_equal gst_caps_is_always_compatible gst_caps_is_subset gst_caps_is_subset_structure gst_caps_can_intersect gst_caps_intersect gst_caps_intersect_full -gst_caps_union gst_caps_normalize -gst_caps_do_simplify +gst_caps_simplify gst_caps_replace +gst_caps_take gst_caps_to_string gst_caps_from_string gst_caps_subtract gst_caps_make_writable -gst_caps_ref gst_caps_truncate gst_caps_fixate +gst_caps_ref gst_caps_unref GST_CAPS @@ -411,6 +435,25 @@ gst_caps_get_type gst_caps_intersect_mode_get_type +
+gstsample +GstSample +GstSample +gst_sample_get_buffer +gst_sample_get_caps +gst_sample_get_info +gst_sample_get_segment +gst_sample_new +gst_sample_ref +gst_sample_unref + +GST_IS_SAMPLE +GST_SAMPLE +GST_TYPE_SAMPLE +gst_sample_get_type +GST_SAMPLE_CAST +
+
gstchildproxy GstChildProxy @@ -461,7 +504,6 @@ GST_TIMEVAL_TO_TIME GST_TIME_TO_TIMEVAL GST_TIMESPEC_TO_TIME GST_TIME_TO_TIMESPEC -GST_CLOCK_ENTRY_TRACE_NAME GstClockEntry GstClockCallback GstClockEntryType @@ -474,10 +516,6 @@ GST_CLOCK_ENTRY_STATUS GstClockReturn GstClockFlags GST_CLOCK_FLAGS -GST_CLOCK_BROADCAST -GST_CLOCK_COND -GST_CLOCK_TIMED_WAIT -GST_CLOCK_WAIT gst_clock_add_observation gst_clock_set_master gst_clock_get_master @@ -493,6 +531,8 @@ gst_clock_adjust_unlocked gst_clock_unadjust_unlocked gst_clock_get_calibration gst_clock_set_calibration +gst_clock_get_timeout +gst_clock_set_timeout gst_clock_id_get_time gst_clock_id_wait gst_clock_id_wait_async @@ -535,9 +575,16 @@ gst_element_factory_get_documentation_uri gst_element_factory_get_icon_name gst_element_factory_get_klass gst_element_factory_get_longname +gst_pad_get_caps_reffed +gst_pad_peer_get_caps_reffed +gst_buffer_new_and_alloc +GST_BUFFER_TIMESTAMP +GST_BUFFER_TIMESTAMP_IS_VALID +gst_adapter_prev_timestamp
+
gstconfig GST_DISABLE_GST_DEBUG @@ -558,6 +605,52 @@ GST_PADDING_INIT GST_USING_PRINTF_EXTENSION
+ +
+gstcontrolbinding +GstControlBinding +GstControlBinding +GstControlBindingClass +GstControlBindingConvert +gst_control_binding_sync_values +gst_control_binding_get_value +gst_control_binding_get_value_array +gst_control_binding_set_disabled +gst_control_binding_is_disabled + +GST_CONTROL_BINDING +GST_IS_CONTROL_BINDING +GST_CONTROL_BINDING_CLASS +GST_IS_CONTROL_BINDING_CLASS +GST_CONTROL_BINDING_GET_CLASS +GST_TYPE_CONTROL_BINDING + +gst_control_binding_get_type +
+ +
+gstcontrolsource +GstControlSource +GstValueArray +GstControlSource +GstControlSourceClass +GstControlSourceGetValue +GstControlSourceGetValueArray +GstTimedValue +gst_control_source_get_value +gst_control_source_get_value_array + +GST_CONTROL_SOURCE +GST_IS_CONTROL_SOURCE +GST_CONTROL_SOURCE_CLASS +GST_IS_CONTROL_SOURCE_CLASS +GST_CONTROL_SOURCE_GET_CLASS +GST_TYPE_CONTROL_SOURCE + +gst_control_source_get_type +
+ +
gstelement GstElement @@ -603,9 +696,10 @@ GST_ELEMENT_METADATA_LONGNAME gst_element_class_add_pad_template gst_element_class_get_pad_template gst_element_class_get_pad_template_list -gst_element_class_install_std_props gst_element_class_set_metadata +gst_element_class_set_static_metadata gst_element_class_add_metadata +gst_element_class_add_static_metadata gst_element_add_pad @@ -642,19 +736,14 @@ gst_element_get_start_time gst_element_set_bus gst_element_get_bus gst_element_get_factory -gst_element_set_index -gst_element_get_index -gst_element_is_indexable gst_element_set_name gst_element_get_name gst_element_set_parent gst_element_get_parent -gst_element_requires_clock gst_element_set_clock gst_element_get_clock -gst_element_provides_clock gst_element_provide_clock @@ -670,16 +759,11 @@ gst_element_state_change_return_get_name gst_element_sync_state_with_parent gst_element_change_state - -gst_element_found_tags -gst_element_found_tags_for_pad - gst_element_message_full gst_element_post_message -gst_element_get_query_types gst_element_query gst_element_query_convert gst_element_query_position @@ -709,7 +793,7 @@ GST_STATE_UNLOCK GST_STATE_UNLOCK_FULL GST_STATE_LOCK_FULL GST_STATE_WAIT -GST_STATE_TIMED_WAIT +GST_STATE_WAIT_UNTIL GST_STATE_SIGNAL GST_STATE_BROADCAST @@ -808,13 +892,11 @@ GST_STREAM_ERROR GST_ERROR_SYSTEM gst_error_get_message -GST_TYPE_G_ERROR GST_TYPE_CORE_ERROR GST_TYPE_LIBRARY_ERROR GST_TYPE_RESOURCE_ERROR GST_TYPE_STREAM_ERROR -gst_g_error_get_type gst_core_error_get_type gst_library_error_get_type gst_resource_error_get_type @@ -837,8 +919,6 @@ GST_EVENT_MAKE_TYPE GstEventType -GST_EVENT_TRACE_NAME - GST_EVENT_TYPE GST_EVENT_TYPE_NAME GST_EVENT_TIMESTAMP @@ -877,6 +957,11 @@ gst_event_parse_flush_stop gst_event_new_eos +gst_event_new_gap +gst_event_parse_gap + +gst_event_new_stream_start + gst_event_new_segment gst_event_parse_segment gst_event_copy_segment @@ -911,6 +996,23 @@ gst_event_new_reconfigure gst_event_new_caps gst_event_parse_caps + +GstStreamConfigFlags +gst_event_new_stream_config +gst_event_parse_stream_config + +gst_event_set_stream_config_setup_data +gst_event_parse_stream_config_setup_data + +gst_event_add_stream_config_header +gst_event_get_n_stream_config_headers +gst_event_parse_nth_stream_config_header + +gst_event_new_toc +gst_event_parse_toc + +gst_event_new_toc_select +gst_event_parse_toc_select GstEventClass GST_EVENT @@ -939,17 +1041,10 @@ gst_seek_type_get_type gst_seek_flags_get_type gst_qos_type_get_type gst_event_type_flags_get_type +GST_TYPE_STREAM_CONFIG_FLAGS +gst_stream_config_flags_get_type
- -
-gstfilter -GstFilter -GstFilterFunc -gst_filter_run -
- -
gstformat GstFormat @@ -990,24 +1085,18 @@ gst_ghost_pad_construct gst_ghost_pad_unlink_default gst_ghost_pad_link_default -gst_ghost_pad_activate_pull_default -gst_ghost_pad_activate_push_default +gst_ghost_pad_activate_mode_default -gst_ghost_pad_internal_activate_push_default -gst_ghost_pad_internal_activate_pull_default +gst_ghost_pad_internal_activate_mode_default gst_proxy_pad_get_internal -gst_proxy_pad_query_type_default gst_proxy_pad_event_default gst_proxy_pad_query_default gst_proxy_pad_iterate_internal_links_default gst_proxy_pad_chain_default gst_proxy_pad_chain_list_default gst_proxy_pad_getrange_default -gst_proxy_pad_getcaps_default -gst_proxy_pad_acceptcaps_default -gst_proxy_pad_fixatecaps_default gst_proxy_pad_unlink_default GstGhostPadClass @@ -1031,102 +1120,6 @@ gst_ghost_pad_get_type
-
-gstindex -GstIndex -GstIndex -GstIndexEntry -GstIndexGroup -GstIndexCertainty -GstIndexEntryType -GstIndexLookupMethod -GST_INDEX_NASSOCS -GST_INDEX_ASSOC_FLAGS -GST_INDEX_ASSOC_FORMAT -GST_INDEX_ASSOC_VALUE -GstIndexAssociation -GstAssocFlags -GST_INDEX_FORMAT_FORMAT -GST_INDEX_FORMAT_KEY -GST_INDEX_ID_INVALID -GST_INDEX_ID_DESCRIPTION -GstIndexFilter -GstIndexResolverMethod -GstIndexResolver -GstIndexFlags -GST_INDEX_IS_READABLE -GST_INDEX_IS_WRITABLE -gst_index_new -gst_index_commit -gst_index_get_group -gst_index_new_group -gst_index_set_group -gst_index_set_certainty -gst_index_get_certainty -gst_index_set_filter -gst_index_set_filter_full -gst_index_set_resolver -gst_index_set_resolver_full -gst_index_get_writer_id -gst_index_add_format -gst_index_add_association -gst_index_add_associationv -gst_index_add_object -gst_index_add_id -gst_index_get_assoc_entry -gst_index_get_assoc_entry_full -gst_index_entry_copy -gst_index_entry_free -gst_index_entry_assoc_map - -GstIndexClass -GST_INDEX -GST_IS_INDEX -GST_TYPE_INDEX -GST_INDEX_CLASS -GST_IS_INDEX_CLASS -GST_INDEX_GET_CLASS -GST_TYPE_INDEX_ENTRY -GST_TYPE_ASSOC_FLAGS -GST_TYPE_INDEX_CERTAINTY -GST_TYPE_INDEX_ENTRY_TYPE -GST_TYPE_INDEX_FLAGS -GST_TYPE_INDEX_LOOKUP_METHOD -GST_TYPE_INDEX_RESOLVER_METHOD - -gst_index_get_type -gst_assoc_flags_get_type -gst_index_certainty_get_type -gst_index_entry_get_type -gst_index_entry_type_get_type -gst_index_flags_get_type -gst_index_lookup_method_get_type -gst_index_resolver_method_get_type -
- - -
-gstindexfactory -GstIndexFactory -GstIndexFactory -gst_index_factory_new -gst_index_factory_destroy -gst_index_factory_find -gst_index_factory_create -gst_index_factory_make - -GstIndexFactoryClass -GST_INDEX_FACTORY -GST_IS_INDEX_FACTORY -GST_INDEX_FACTORY_CLASS -GST_IS_INDEX_FACTORY_CLASS -GST_INDEX_FACTORY_GET_CLASS -GST_TYPE_INDEX_FACTORY - -gst_index_factory_get_type -
- -
gstinfo GstInfo @@ -1211,6 +1204,8 @@ GST_DEBUG_BIN_TO_DOT_FILE_WITH_TS gst_debug_print_stack_trace GST_TIME_FORMAT GST_TIME_ARGS +gst_debug_bin_to_dot_file +gst_debug_bin_to_dot_file_with_ts GST_TYPE_DEBUG_COLOR_FLAGS GST_TYPE_DEBUG_LEVEL @@ -1277,16 +1272,27 @@ gst_iterator_result_get_type
gstmemory GstMemory -GstMemory -GstMemoryInfo -GstAllocator -GST_MEMORY_IS_WRITABLE + +gst_memory_alignment + GstMemoryFlags +GST_MEMORY_FLAGS +GST_MEMORY_FLAG_IS_SET +GST_MEMORY_FLAG_UNSET +GST_MEMORY_IS_READONLY +GST_MEMORY_IS_ZERO_PADDED +GST_MEMORY_IS_ZERO_PREFIXED + +GstMemory + GstMapFlags +GstMapInfo +GST_MAP_INFO_INIT GST_MAP_READWRITE -GstMemoryAllocFunction -GstMemoryGetSizesFunction -GstMemoryResizeFunction + +GstAllocationParams + +GstAllocatorAllocFunction GstMemoryMapFunction GstMemoryUnmapFunction GstMemoryFreeFunction @@ -1294,17 +1300,37 @@ GstMemoryCopyFunction GstMemoryShareFunction GstMemoryIsSpanFunction -gst_memory_alignment +GstMemoryInfo + +GstAllocator + +gst_allocator_new +gst_allocator_get_memory_type +gst_allocator_ref +gst_allocator_unref + +GST_ALLOCATOR_SYSMEM +gst_allocator_find +gst_allocator_register +gst_allocator_set_default + +gst_allocation_params_init +gst_allocation_params_copy +gst_allocation_params_free gst_allocator_alloc + gst_memory_new_wrapped gst_memory_ref gst_memory_unref +gst_memory_is_exclusive + gst_memory_get_sizes gst_memory_resize +gst_memory_make_mapped gst_memory_map gst_memory_unmap @@ -1312,17 +1338,18 @@ gst_memory_copy gst_memory_share gst_memory_is_span - -GST_ALLOCATOR_SYSMEM -gst_allocator_find -gst_allocator_register -gst_allocator_set_default -GST_MEMORY_TRACE_NAME +GST_TYPE_MEMORY +gst_memory_get_type +GST_MEMORY_CAST GST_TYPE_MAP_FLAGS -GST_TYPE_MEMORY_FLAGS gst_map_flags_get_type +GST_TYPE_MEMORY_FLAGS gst_memory_flags_get_type +GST_TYPE_ALLOCATION_PARAMS +gst_allocation_params_get_type +GST_TYPE_ALLOCATOR +gst_allocator_get_type
@@ -1336,7 +1363,6 @@ GST_MESSAGE_TIMESTAMP GST_MESSAGE_SEQNUM GST_MESSAGE_TYPE GST_MESSAGE_TYPE_NAME -GST_MESSAGE_TRACE_NAME gst_message_type_to_quark gst_message_type_get_name gst_message_ref @@ -1395,6 +1421,8 @@ gst_message_set_qos_stats gst_message_parse_qos gst_message_parse_qos_values gst_message_parse_qos_stats +gst_message_new_toc +gst_message_parse_toc GstStructureChangeType gst_message_new_structure_change @@ -1431,7 +1459,7 @@ gst_message_type_get_type gst_structure_change_type_get_type gst_stream_status_type_get_type gst_progress_type_get_type -GST_MESSAGE_COND +GST_MESSAGE_GET_COND GST_MESSAGE_GET_LOCK GST_MESSAGE_LOCK GST_MESSAGE_SIGNAL @@ -1521,6 +1549,20 @@ gst_object_unref gst_object_ref_sink gst_object_replace gst_object_get_path_string + +gst_object_suggest_next_sync +gst_object_sync_values +gst_object_has_active_control_bindings +gst_object_set_control_bindings_disabled +gst_object_set_control_binding_disabled +gst_object_add_control_binding +gst_object_get_control_binding +gst_object_remove_control_binding +gst_object_get_value +gst_object_get_value_array +gst_object_get_control_rate +gst_object_set_control_rate + GST_OBJECT GST_IS_OBJECT @@ -1550,12 +1592,7 @@ GST_PAD_LINK_SUCCESSFUL GstPadLinkCheck GST_PAD_LINK_CHECK_DEFAULT GstFlowReturn -GstActivateMode -GstProbeReturn -GstProbeType -GST_PROBE_TYPE_BLOCKING -GST_PROBE_TYPE_DATA -GST_PROBE_TYPE_SCHEDULING +GstPadMode gst_pad_get_name @@ -1570,16 +1607,12 @@ gst_pad_unlink gst_pad_is_linked gst_pad_can_link -gst_pad_get_caps -gst_pad_get_caps_reffed gst_pad_get_allowed_caps gst_pad_get_current_caps gst_pad_get_pad_template_caps gst_pad_set_caps gst_pad_get_peer -gst_pad_peer_get_caps -gst_pad_peer_get_caps_reffed gst_pad_use_fixed_caps gst_pad_has_current_caps @@ -1589,57 +1622,82 @@ gst_pad_sticky_events_foreach gst_pad_is_active -gst_pad_is_blocked -gst_pad_is_blocking + +GstPadProbeReturn +GstPadProbeType +GST_PAD_PROBE_TYPE_BLOCKING +GST_PAD_PROBE_TYPE_BLOCK_DOWNSTREAM +GST_PAD_PROBE_TYPE_BLOCK_UPSTREAM +GST_PAD_PROBE_TYPE_DATA_DOWNSTREAM +GST_PAD_PROBE_TYPE_DATA_UPSTREAM +GST_PAD_PROBE_TYPE_DATA_BOTH +GST_PAD_PROBE_TYPE_EVENT_BOTH +GST_PAD_PROBE_TYPE_QUERY_BOTH +GST_PAD_PROBE_TYPE_ALL_BOTH +GST_PAD_PROBE_TYPE_SCHEDULING + +GstPadProbeInfo +GST_PAD_PROBE_INFO_TYPE +GST_PAD_PROBE_INFO_ID +GST_PAD_PROBE_INFO_DATA + +GST_PAD_PROBE_INFO_BUFFER +GST_PAD_PROBE_INFO_BUFFER_LIST +GST_PAD_PROBE_INFO_EVENT +GST_PAD_PROBE_INFO_QUERY + +GST_PAD_PROBE_INFO_OFFSET +GST_PAD_PROBE_INFO_SIZE GstPadProbeCallback gst_pad_add_probe gst_pad_remove_probe +gst_pad_is_blocked +gst_pad_is_blocking + + gst_pad_get_offset gst_pad_set_offset + gst_pad_new gst_pad_new_from_template gst_pad_new_from_static_template gst_pad_set_chain_function +gst_pad_set_chain_function_full GstPadChainFunction gst_pad_set_chain_list_function +gst_pad_set_chain_list_function_full GstPadChainListFunction gst_pad_get_range gst_pad_set_getrange_function +gst_pad_set_getrange_function_full GstPadGetRangeFunction gst_pad_set_event_function +gst_pad_set_event_function_full GstPadEventFunction gst_pad_set_link_function +gst_pad_set_link_function_full GstPadLinkFunction gst_pad_set_unlink_function +gst_pad_set_unlink_function_full GstPadUnlinkFunction -gst_pad_accept_caps -gst_pad_set_acceptcaps_function -GstPadAcceptCapsFunction - -gst_pad_set_getcaps_function -GstPadGetCapsFunction -gst_pad_proxy_getcaps - -gst_pad_fixate_caps -gst_pad_set_fixatecaps_function -GstPadFixateCapsFunction - -gst_pad_peer_accept_caps +gst_pad_proxy_query_caps +gst_pad_proxy_query_accept_caps gst_pad_set_activate_function +gst_pad_set_activate_function_full GstPadActivateFunction -gst_pad_set_activatepush_function -gst_pad_set_activatepull_function +gst_pad_set_activatemode_function +gst_pad_set_activatemode_function_full GstPadActivateModeFunction gst_pad_check_reconfigure @@ -1649,28 +1707,32 @@ gst_pad_push gst_pad_push_event gst_pad_push_list gst_pad_pull_range -gst_pad_activate_pull -gst_pad_activate_push +gst_pad_activate_mode gst_pad_send_event gst_pad_event_default gst_pad_query gst_pad_peer_query + gst_pad_query_default + gst_pad_query_position gst_pad_query_duration gst_pad_query_convert -gst_pad_query_peer_position -gst_pad_query_peer_duration -gst_pad_query_peer_convert +gst_pad_query_accept_caps +gst_pad_query_caps + +gst_pad_peer_query_position +gst_pad_peer_query_duration +gst_pad_peer_query_convert +gst_pad_peer_query_accept_caps +gst_pad_peer_query_caps + gst_pad_set_query_function +gst_pad_set_query_function_full GstPadQueryFunction -gst_pad_set_query_type_function -GstPadQueryTypeFunction -gst_pad_get_query_types -gst_pad_get_query_types_default - gst_pad_set_iterate_internal_links_function +gst_pad_set_iterate_internal_links_function_full GstPadIterIntLinkFunction gst_pad_iterate_internal_links gst_pad_iterate_internal_links_default @@ -1692,10 +1754,8 @@ gst_pad_set_active GST_PAD_GET_STREAM_LOCK GST_PAD_STREAM_LOCK -GST_PAD_STREAM_LOCK_FULL GST_PAD_STREAM_TRYLOCK GST_PAD_STREAM_UNLOCK -GST_PAD_STREAM_UNLOCK_FULL GstPadClass @@ -1710,10 +1770,10 @@ GST_TYPE_PAD_FLAGS GST_TYPE_PAD_LINK_RETURN GST_TYPE_PAD_LINK_CHECK GST_TYPE_PAD_PRESENCE +GST_TYPE_PAD_MODE GST_TYPE_FLOW_RETURN -GST_TYPE_ACTIVATE_MODE -GST_TYPE_PROBE_RETURN -GST_TYPE_PROBE_TYPE +GST_TYPE_PAD_PROBE_RETURN +GST_TYPE_PAD_PROBE_TYPE gst_pad_get_type @@ -1723,9 +1783,9 @@ gst_pad_link_return_get_type gst_pad_link_check_get_type gst_pad_presence_get_type gst_flow_return_get_type -gst_activate_mode_get_type -gst_probe_return_get_type -gst_probe_type_get_type +gst_pad_mode_get_type +gst_pad_probe_return_get_type +gst_pad_probe_type_get_type GST_PAD_NAME GST_PAD_PARENT @@ -1737,8 +1797,15 @@ GST_PAD_IS_LINKED GST_PAD_IS_SRC GST_PAD_IS_SINK GST_PAD_IS_FIXED_CAPS -GST_PAD_NEEDS_EVENTS GST_PAD_NEEDS_RECONFIGURE +GST_PAD_HAS_PENDING_EVENTS +GST_PAD_IS_PROXY_ALLOCATION +GST_PAD_IS_PROXY_CAPS +GST_PAD_NEEDS_PARENT +GST_PAD_SET_PROXY_ALLOCATION +GST_PAD_UNSET_PROXY_ALLOCATION +GST_PAD_SET_PROXY_CAPS +GST_PAD_UNSET_PROXY_CAPS GST_PAD_IS_IN_GETCAPS GST_PAD_MODE_ACTIVATE @@ -1747,7 +1814,7 @@ GST_PAD_BLOCK_GET_COND GST_PAD_BLOCK_SIGNAL GST_PAD_BLOCK_WAIT GST_PAD_CAST -GST_PAD_ACTIVATE_MODE +GST_PAD_MODE GST_PAD_DO_BUFFER_SIGNALS GST_PAD_DO_EVENT_SIGNALS GST_PAD_IS_BLOCKED @@ -1757,14 +1824,9 @@ GST_PAD_SET_FLUSHING GST_PAD_TASK GST_PAD_UNSET_FLUSHING -GST_PAD_GETCAPSFUNC -GST_PAD_FIXATECAPSFUNC -GST_PAD_ACCEPTCAPSFUNC - GST_PAD_IS_ACTIVE GST_PAD_ACTIVATEFUNC -GST_PAD_ACTIVATEPULLFUNC -GST_PAD_ACTIVATEPUSHFUNC +GST_PAD_ACTIVATEMODEFUNC GST_PAD_CHAINFUNC GST_PAD_CHAINLISTFUNC @@ -1776,16 +1838,6 @@ GST_PAD_LINKFUNC GST_PAD_UNLINKFUNC GST_PAD_QUERYFUNC GST_PAD_QUERYTYPEFUNC - -GST_PAD_PREROLL_BROADCAST -GST_PAD_GET_PREROLL_COND -GST_PAD_GET_PREROLL_LOCK -GST_PAD_PREROLL_LOCK -GST_PAD_PREROLL_SIGNAL -GST_PAD_PREROLL_TIMED_WAIT -GST_PAD_PREROLL_TRYLOCK -GST_PAD_PREROLL_UNLOCK -GST_PAD_PREROLL_WAIT
@@ -1982,11 +2034,9 @@ gst_plugin_flags_get_type gstpluginfeature GstPluginFeature GstPluginFeature -GstTypeNameData GstPluginFeatureFilter GstRank -gst_plugin_feature_type_name_filter gst_plugin_feature_set_rank gst_plugin_feature_set_name gst_plugin_feature_get_rank @@ -2055,6 +2105,8 @@ gst_preset_rename_preset gst_preset_delete_preset gst_preset_set_meta gst_preset_get_meta +gst_preset_set_app_dir +gst_preset_get_app_dir GST_PRESET GST_IS_PRESET @@ -2067,17 +2119,23 @@ gst_preset_get_type gstquery GstQuery GstQuery + +GstQueryTypeFlags +GST_QUERY_TYPE_BOTH +GST_QUERY_MAKE_TYPE + GstQueryType + +GST_QUERY_TYPE GST_QUERY_TYPE_NAME -GstQueryTypeDefinition +GST_QUERY_IS_UPSTREAM +GST_QUERY_IS_DOWNSTREAM +GST_QUERY_IS_SERIALIZED + +gst_query_type_get_flags gst_query_type_get_name gst_query_type_to_quark -gst_query_type_register -gst_query_type_get_by_nick -gst_query_types_contains -gst_query_type_get_details -gst_query_type_iterate_definitions gst_query_ref gst_query_unref @@ -2120,6 +2178,17 @@ gst_query_new_segment gst_query_set_segment gst_query_parse_segment +gst_query_new_caps +gst_query_parse_caps +gst_query_set_caps_result +gst_query_parse_caps_result +gst_query_intersect_caps_result + +gst_query_new_accept_caps +gst_query_parse_accept_caps +gst_query_set_accept_caps_result +gst_query_parse_accept_caps_result + GstBufferingMode gst_query_new_buffering gst_query_set_buffering_percent @@ -2138,19 +2207,37 @@ gst_query_set_uri gst_query_new_allocation gst_query_parse_allocation -gst_query_parse_allocation_params -gst_query_parse_nth_allocation_memory -gst_query_parse_nth_allocation_meta -gst_query_set_allocation_params -gst_query_add_allocation_memory + +gst_query_add_allocation_pool +gst_query_get_n_allocation_pools +gst_query_parse_nth_allocation_pool +gst_query_set_nth_allocation_pool + +gst_query_add_allocation_param +gst_query_get_n_allocation_params +gst_query_parse_nth_allocation_param +gst_query_set_nth_allocation_param + gst_query_add_allocation_meta -gst_query_has_allocation_meta -gst_query_get_n_allocation_memories gst_query_get_n_allocation_metas +gst_query_parse_nth_allocation_meta +gst_query_remove_nth_allocation_meta +gst_query_has_allocation_meta +GstSchedulingFlags gst_query_new_scheduling gst_query_parse_scheduling gst_query_set_scheduling +gst_query_add_scheduling_mode +gst_query_get_n_scheduling_modes +gst_query_parse_nth_scheduling_mode +gst_query_has_scheduling_mode + +gst_query_new_drain + +gst_query_new_toc +gst_query_parse_toc +gst_query_set_toc GstQueryClass GST_QUERY @@ -2161,12 +2248,16 @@ GST_IS_QUERY_CLASS GST_TYPE_QUERY GST_TYPE_QUERY_TYPE GST_QUERY_GET_CLASS -GST_QUERY_TYPE +GST_TYPE_QUERY_TYPE_FLAGS +gst_query_type_flags_get_type GST_TYPE_BUFFERING_MODE +gst_buffering_mode_get_type +GST_TYPE_SCHEDULING_FLAGS +gst_scheduling_flags_get_type +GST_QUERY_NUM_SHIFT gst_query_get_type gst_query_type_get_type -gst_buffering_mode_get_type
@@ -2174,7 +2265,7 @@ gst_buffering_mode_get_type gstregistry GstRegistry GstRegistry -gst_registry_get_default +gst_registry_get gst_registry_get_feature_list gst_registry_get_feature_list_cookie gst_registry_get_feature_list_by_plugin @@ -2192,16 +2283,7 @@ gst_registry_scan_path gst_registry_lookup gst_registry_remove_feature gst_registry_add_feature - -gst_default_registry_check_feature_version -gst_default_registry_get_path_list -gst_default_registry_add_plugin -gst_default_registry_add_path -gst_default_registry_find_plugin -gst_default_registry_find_feature -gst_default_registry_get_plugin_list -gst_default_registry_get_feature_list_cookie -gst_default_registry_feature_filter +gst_registry_check_feature_version GstRegistryClass GST_REGISTRY @@ -2251,11 +2333,11 @@ gst_segment_flags_get_type GstStructure GstStructureForeachFunc GstStructureMapFunc -gst_structure_empty_new -gst_structure_id_empty_new +gst_structure_new_empty +gst_structure_new_id_empty gst_structure_new gst_structure_new_valist -gst_structure_id_new +gst_structure_new_id gst_structure_copy gst_structure_free gst_structure_get_name @@ -2402,6 +2484,7 @@ GST_TAG_ALBUM_GAIN GST_TAG_ALBUM_PEAK GST_TAG_REFERENCE_LEVEL GST_TAG_LANGUAGE_CODE +GST_TAG_LANGUAGE_NAME GST_TAG_IMAGE GST_TAG_PREVIEW_IMAGE GST_TAG_ATTACHMENT @@ -2442,15 +2525,20 @@ gst_tag_get_description gst_tag_get_flag gst_tag_is_fixed gst_tag_list_new -gst_tag_list_new_full -gst_tag_list_new_full_valist +gst_tag_list_new_empty +gst_tag_list_new_valist +gst_tag_list_new_from_string +gst_tag_list_to_string gst_is_tag_list gst_tag_list_is_empty +gst_tag_list_is_equal gst_tag_list_copy gst_tag_list_insert gst_tag_list_merge gst_tag_list_free gst_tag_list_get_tag_size +gst_tag_list_n_tags +gst_tag_list_nth_tag_name gst_tag_list_add gst_tag_list_add_value gst_tag_list_add_values @@ -2460,20 +2548,12 @@ gst_tag_list_remove_tag gst_tag_list_foreach gst_tag_list_get_value_index gst_tag_list_copy_value -gst_tag_list_get_char -gst_tag_list_get_char_index -gst_tag_list_get_uchar -gst_tag_list_get_uchar_index gst_tag_list_get_boolean gst_tag_list_get_boolean_index gst_tag_list_get_int gst_tag_list_get_int_index gst_tag_list_get_uint gst_tag_list_get_uint_index -gst_tag_list_get_long -gst_tag_list_get_long_index -gst_tag_list_get_ulong -gst_tag_list_get_ulong_index gst_tag_list_get_int64 gst_tag_list_get_int64_index gst_tag_list_get_uint64 @@ -2512,7 +2592,7 @@ gst_tag_merge_mode_get_type gsttagsetter GstTagSetter GstTagSetter -GstTagSetterIFace +GstTagSetterInterface gst_tag_setter_reset_tags gst_tag_setter_merge_tags gst_tag_setter_add_tags @@ -2526,7 +2606,7 @@ gst_tag_setter_get_tag_merge_mode GST_TAG_SETTER GST_IS_TAG_SETTER -GST_TAG_SETTER_GET_IFACE +GST_TAG_SETTER_GET_INTERFACE GST_TYPE_TAG_SETTER gst_tag_setter_get_type @@ -2570,9 +2650,8 @@ GST_TASK_SIGNAL GST_TASK_STATE GST_TASK_WAIT -gst_task_create +gst_task_new gst_task_set_lock -gst_task_set_priority gst_task_set_pool gst_task_get_pool @@ -2607,38 +2686,47 @@ gst_task_state_get_type
-gsttrace -GstTrace -GstTrace -gst_trace_new -gst_trace_destroy -gst_trace_flush -gst_trace_text_flush -gst_trace_add_entry -gst_trace_get_size -gst_trace_get_offset -gst_trace_get_remaining -gst_trace_set_default -gst_trace_read_tsc -GstAllocTraceFlags -GstAllocTrace -gst_alloc_trace_available -gst_alloc_trace_list -gst_alloc_trace_live_all -gst_alloc_trace_print_all -gst_alloc_trace_set_flags_all -gst_alloc_trace_get -gst_alloc_trace_print -gst_alloc_trace_print_live -gst_alloc_trace_set_flags -gst_alloc_trace_register -gst_alloc_trace_new -gst_alloc_trace_free +gsttoc +GstToc +GstToc +GstTocEntry +GstTocEntryType +gst_toc_entry_new +gst_toc_entry_new_with_pad +gst_toc_entry_free +gst_toc_new +gst_toc_free +gst_toc_entry_copy +gst_toc_copy +gst_toc_find_entry +gst_toc_entry_get_start_stop +gst_toc_entry_set_start_stop -GST_TYPE_ALLOC_TRACE_FLAGS -gst_alloc_trace_flags_get_type +GST_TYPE_TOC_ENTRY_TYPE -GstTraceEntry +gst_toc_entry_type_get_type +
+ + +
+gsttocsetter +GstTocSetter +GstTocSetter +GstTocSetterIFace +gst_toc_setter_get_toc +gst_toc_setter_get_toc_copy +gst_toc_setter_reset_toc +gst_toc_setter_set_toc +gst_toc_setter_get_toc_entry +gst_toc_setter_get_toc_entry_copy +gst_toc_setter_add_toc_entry + +GST_IS_TOC_SETTER +GST_TOC_SETTER +GST_TOC_SETTER_GET_IFACE +GST_TYPE_TOC_SETTER + +gst_toc_setter_get_type
@@ -2689,6 +2777,8 @@ gst_type_find_factory_get_type GstURIHandler GstURIHandlerInterface GstURIType +GstURIError +gst_uri_error_quark GST_URI_TYPE_IS_VALID gst_uri_protocol_is_valid gst_uri_protocol_is_supported @@ -2703,13 +2793,15 @@ gst_uri_handler_get_uri_type gst_uri_handler_get_protocols gst_uri_handler_get_uri gst_uri_handler_set_uri -gst_uri_handler_new_uri GST_URI_HANDLER GST_IS_URI_HANDLER GST_URI_HANDLER_GET_INTERFACE GST_TYPE_URI_HANDLER GST_TYPE_URI_TYPE +gst_uri_error_get_type +GST_TYPE_URI_ERROR +GST_URI_ERROR gst_uri_handler_get_type gst_uri_type_get_type @@ -2777,7 +2869,6 @@ gst_print_element_args gst_print_pad_caps gst_guint64_to_gdouble gst_gdouble_to_guint64 -gst_type_register_static_full gst_util_dump_mem gst_util_uint64_scale gst_util_uint64_scale_round @@ -2786,6 +2877,7 @@ gst_util_uint64_scale_int gst_util_uint64_scale_int_round gst_util_uint64_scale_int_ceil gst_util_greatest_common_divisor +gst_util_greatest_common_divisor_int64 gst_util_fraction_to_double gst_util_double_to_fraction gst_util_fraction_multiply @@ -2845,6 +2937,14 @@ GST_TYPE_INT_RANGE gst_value_set_int_range gst_value_get_int_range_min gst_value_get_int_range_max +gst_value_set_int_range_step +gst_value_get_int_range_step + + +GST_VALUE_HOLDS_BITMASK +GST_TYPE_BITMASK +gst_value_set_bitmask +gst_value_get_bitmask GST_VALUE_HOLDS_INT64_RANGE @@ -2852,6 +2952,8 @@ GST_TYPE_INT64_RANGE gst_value_set_int64_range gst_value_get_int64_range_min gst_value_get_int64_range_max +gst_value_set_int64_range_step +gst_value_get_int64_range_step GST_VALUE_HOLDS_DOUBLE_RANGE @@ -2889,12 +2991,6 @@ gst_value_get_fraction_range_min gst_value_get_fraction_range_max gst_value_set_fraction_range_full - -GST_VALUE_HOLDS_DATE -GST_TYPE_DATE -gst_value_set_date -gst_value_get_date - GST_VALUE_HOLDS_DATE_TIME @@ -2914,6 +3010,12 @@ gst_value_get_buffer gst_value_set_buffer gst_value_take_buffer + +GST_VALUE_HOLDS_SAMPLE +gst_value_get_sample +gst_value_set_sample +gst_value_take_sample + GST_VALUE_LESS_THAN GST_VALUE_EQUAL @@ -2923,9 +3025,6 @@ GST_VALUE_UNORDERED GstValueCompareFunc GstValueSerializeFunc GstValueDeserializeFunc -GstValueUnionFunc -GstValueIntersectFunc -GstValueSubtractFunc GstValueTable gst_value_is_fixed @@ -2937,13 +3036,11 @@ gst_value_compare gst_value_can_compare gst_value_union gst_value_can_union -gst_value_register_union_func gst_value_subtract gst_value_can_subtract -gst_value_register_subtract_func gst_value_intersect gst_value_can_intersect -gst_value_register_intersect_func +gst_value_is_subset gst_value_array_append_value gst_value_array_get_size gst_value_array_get_value @@ -2961,6 +3058,7 @@ gst_int_range_get_type gst_int64_range_get_type gst_value_array_get_type gst_value_list_get_type +gst_bitmask_get_type
diff --git a/docs/gst/gstreamer.types b/docs/gst/gstreamer.types index efd6e2d..d01b2dc 100644 --- a/docs/gst/gstreamer.types +++ b/docs/gst/gstreamer.types @@ -12,11 +12,11 @@ gst_bin_get_type gst_bus_get_type gst_child_proxy_get_type gst_clock_get_type +gst_control_binding_get_type +gst_control_source_get_type gst_element_factory_get_type gst_element_get_type gst_ghost_pad_get_type -gst_index_factory_get_type -gst_index_get_type gst_object_get_type gst_pad_get_type gst_pad_template_get_type diff --git a/docs/gst/gstreamer.types.in b/docs/gst/gstreamer.types.in index efd6e2d..d01b2dc 100644 --- a/docs/gst/gstreamer.types.in +++ b/docs/gst/gstreamer.types.in @@ -12,11 +12,11 @@ gst_bin_get_type gst_bus_get_type gst_child_proxy_get_type gst_clock_get_type +gst_control_binding_get_type +gst_control_source_get_type gst_element_factory_get_type gst_element_get_type gst_ghost_pad_get_type -gst_index_factory_get_type -gst_index_get_type gst_object_get_type gst_pad_get_type gst_pad_template_get_type diff --git a/docs/gst/html/GstBin.html b/docs/gst/html/GstBin.html index a7816c2..a4b5bc9 100644 --- a/docs/gst/html/GstBin.html +++ b/docs/gst/html/GstBin.html @@ -3,8 +3,8 @@
GstBin - - + + @@ -17,7 +17,7 @@ Prev Up Home -GStreamer 0.11 Core Reference Manual +GStreamer 1.0 Core Reference Manual Next @@ -157,7 +157,7 @@ element is removed from the bin.

-

Notes

+

Notes

A GstBin internally intercepts every GstMessage posted by its children and implements the following default behaviour for each of them: @@ -270,7 +270,7 @@ returned. If no sinks are in the bin, the event handler will return TRUE.

-Last reviewed on 2006-04-28 (0.10.6) +Last reviewed on 2012-03-28 (0.11.3)

@@ -311,7 +311,7 @@ the LOCK is taken. the list of children in this bin -

guint32 children_cookie;

+

guint32 children_cookie;

updated whenever children changes @@ -406,7 +406,7 @@ Creates a new bin with the given name.

Returns :

-a new GstBin. [transfer full] +a new GstBin. [transfer floating] @@ -677,7 +677,7 @@ MT safe. Caller owns returned value.
GstIterator *       gst_bin_iterate_sinks               (GstBin *bin);

Gets an iterator for all elements in the bin that have the -GST_ELEMENT_IS_SINK flag set. +GST_ELEMENT_FLAG_SINK flag set.

Each element yielded by the iterator will have its refcount increased, so @@ -744,7 +744,7 @@ MT safe. Caller owns returned value.

GstIterator *       gst_bin_iterate_sources             (GstBin *bin);

Gets an iterator for all elements in the bin that have the -GST_ELEMENT_IS_SOURCE flag set. +GST_ELEMENT_FLAG_SOURCE flag set.

Each element yielded by the iterator will have its refcount increased, so diff --git a/docs/gst/html/GstBus.html b/docs/gst/html/GstBus.html index 9ed93da..35747cb 100644 --- a/docs/gst/html/GstBus.html +++ b/docs/gst/html/GstBus.html @@ -3,8 +3,8 @@ GstBus - - + + @@ -17,7 +17,7 @@ Prev Up Home -GStreamer 0.11 Core Reference Manual +GStreamer 1.0 Core Reference Manual Next @@ -98,7 +98,7 @@ enum void gst_bus_remove_signal_watch (GstBus *bus); GstMessage * gst_bus_poll (GstBus *bus, GstMessageType events, - GstClockTimeDiff timeout); + GstClockTime timeout);

@@ -742,6 +742,7 @@ from func.

Returns :

The event source id. +Rename to: gst_bus_add_watch MT safe. @@ -943,8 +944,8 @@ responsible for calling

gst_bus_poll ()

GstMessage *        gst_bus_poll                        (GstBus *bus,
                                                          GstMessageType events,
-                                                         GstClockTimeDiff timeout);
+ GstClockTime timeout);

Poll the bus for messages. Will block while waiting for messages to come. You can specify a maximum time to poll with the timeout parameter. If @@ -1040,7 +1041,7 @@ poll for.

timeout :

-the poll timeout, as a GstClockTimeDiff, or -1 to poll +the poll timeout, as a GstClockTime, or GST_CLOCK_TIME_NONE to poll indefinitely. diff --git a/docs/gst/html/GstChildProxy.html b/docs/gst/html/GstChildProxy.html index ed85c7d..c0cb6da 100644 --- a/docs/gst/html/GstChildProxy.html +++ b/docs/gst/html/GstChildProxy.html @@ -3,10 +3,10 @@ GstChildProxy - - + + - + @@ -14,10 +14,10 @@ - + - + + + + + - + @@ -195,13 +202,15 @@ MT safe.

gst_child_proxy_get_child_by_name ()

-
GstObject *         gst_child_proxy_get_child_by_name   (GstChildProxy *parent,
+
GObject *           gst_child_proxy_get_child_by_name   (GstChildProxy *parent,
                                                          const gchar *name);

Looks up a child element by the given name.

-Implementors can use GstObject together with gst_object_get_name() +This virtual method has a default implementation that uses GstObject +together with gst_object_get_name(). If the interface is to be used with +GObjects, this methods needs to be overridden.

@@ -227,7 +236,7 @@ MT safe. [

gst_child_proxy_get_child_by_index ()

-
GstObject *         gst_child_proxy_get_child_by_index  (GstChildProxy *parent,
+
GObject *           gst_child_proxy_get_child_by_index  (GstChildProxy *parent,
                                                          guint index);

Fetches a child by its number. @@ -256,9 +265,9 @@ MT safe. [

gst_child_proxy_lookup ()

-
gboolean            gst_child_proxy_lookup              (GstObject *object,
+
gboolean            gst_child_proxy_lookup              (GObject *object,
                                                          const gchar *name,
-                                                         GstObject **target,
+                                                         GObject **target,
                                                          GParamSpec **pspec);

Looks up which object and GParamSpec would be effected by the given name. @@ -276,7 +285,7 @@ Looks up which object and target :

-
@@ -299,7 +308,7 @@ MT safe.

gst_child_proxy_get_property ()

-
void                gst_child_proxy_get_property        (GstObject *object,
+
void                gst_child_proxy_get_property        (GObject *object,
                                                          const gchar *name,
                                                          GValue *value);

@@ -328,7 +337,7 @@ You are responsible for freeing it by calling

gst_child_proxy_get_valist ()

-
void                gst_child_proxy_get_valist          (GstObject *object,
+
void                gst_child_proxy_get_valist          (GObject *object,
                                                          const gchar *first_property_name,
                                                          va_list var_args);

@@ -355,7 +364,7 @@ Gets properties of the parent object and its children.


gst_child_proxy_get ()

-
void                gst_child_proxy_get                 (GstObject *object,
+
void                gst_child_proxy_get                 (GObject *object,
                                                          const gchar *first_property_name,
                                                          ...);

@@ -382,7 +391,7 @@ Gets properties of the parent object and its children.


gst_child_proxy_set_property ()

-
void                gst_child_proxy_set_property        (GstObject *object,
+
void                gst_child_proxy_set_property        (GObject *object,
                                                          const gchar *name,
                                                          const GValue *value);

@@ -409,7 +418,7 @@ Sets a single property using the GstChildProxy mechanism.


gst_child_proxy_set_valist ()

-
void                gst_child_proxy_set_valist          (GstObject *object,
+
void                gst_child_proxy_set_valist          (GObject *object,
                                                          const gchar *first_property_name,
                                                          va_list var_args);

@@ -436,7 +445,7 @@ Sets properties of the parent object and its children.


gst_child_proxy_set ()

-
void                gst_child_proxy_set                 (GstObject *object,
+
void                gst_child_proxy_set                 (GObject *object,
                                                          const gchar *first_property_name,
                                                          ...);

@@ -463,8 +472,9 @@ Sets properties of the parent object and its children.


gst_child_proxy_child_added ()

-
void                gst_child_proxy_child_added         (GstObject *object,
-                                                         GstObject *child);
+
void                gst_child_proxy_child_added         (GObject *object,
+                                                         GObject *child,
+                                                         const gchar *name);

Emits the "child-added" signal.

@@ -479,14 +489,19 @@ Emits the "child-added" signal.
+ + + +
pointer to a GstObject that +pointer to a GObject that takes the real object to set property on. [out][allow-none][transfer full]

child :

the newly added child

name :

the name of the new child

gst_child_proxy_child_removed ()

-
void                gst_child_proxy_child_removed       (GstObject *object,
-                                                         GstObject *child);
+
void                gst_child_proxy_child_removed       (GObject *object,
+                                                         GObject *child,
+                                                         const gchar *name);

Emits the "child-removed" signal.

@@ -501,6 +516,10 @@ Emits the "child-removed" signal.

child :

the removed child + +

name :

+the name of the old child +
@@ -511,6 +530,7 @@ Emits the "child-removed" signal.

The "child-added" signal

void                user_function                      (GstChildProxy *child_proxy,
                                                         GObject       *object,
+                                                        gchar         *name,
                                                         gpointer       user_data)        : Run First

Will be emitted after the object was added to the child_proxy. @@ -528,6 +548,10 @@ Will be emitted after the object was add the GObject that was added +

name :

+the name of the new child + +

user_data :

user data set when the signal handler was connected. @@ -539,6 +563,7 @@ Will be emitted after the object was add

The "child-removed" signal

void                user_function                      (GstChildProxy *child_proxy,
                                                         GObject       *object,
+                                                        gchar         *name,
                                                         gpointer       user_data)        : Run First

Will be emitted after the object was removed from the child_proxy. @@ -556,6 +581,10 @@ Will be emitted after the object was rem the GObject that was removed +

name :

+the name of the old child + +

user_data :

user data set when the signal handler was connected. diff --git a/docs/gst/html/GstClock.html b/docs/gst/html/GstClock.html index ad84f5c..ca4dae0 100644 --- a/docs/gst/html/GstClock.html +++ b/docs/gst/html/GstClock.html @@ -3,8 +3,8 @@ GstClock - - + + @@ -17,7 +17,7 @@ Prev Up Home -GStreamer 0.11 Core Reference Manual +GStreamer 1.0 Core Reference Manual Next @@ -67,7 +67,6 @@ typedef GST_TIMESPEC_TO_TIME (ts) #define GST_TIME_TO_TIMESPEC (t, ts) -#define GST_CLOCK_ENTRY_TRACE_NAME struct GstClockEntry; gboolean (*GstClockCallback) (GstClock *clock, GstClockTime time, @@ -83,11 +82,6 @@ enum GstClockReturn; enum GstClockFlags; #define GST_CLOCK_FLAGS (clock) -#define GST_CLOCK_BROADCAST (clock) -#define GST_CLOCK_COND (clock) -#define GST_CLOCK_TIMED_WAIT (clock, - tv) -#define GST_CLOCK_WAIT (clock) gboolean gst_clock_add_observation (GstClock *clock, GstClockTime slave, GstClockTime master, @@ -126,6 +120,9 @@ enum GstClockTime external, GstClockTime rate_num, GstClockTime rate_denom); +GstClockTime gst_clock_get_timeout (GstClock *clock); +void gst_clock_set_timeout (GstClock *clock, + GstClockTime timeout); GstClockTime gst_clock_id_get_time (GstClockID id); GstClockReturn gst_clock_id_wait (GstClockID id, GstClockTimeDiff *jitter); @@ -156,8 +153,7 @@ enum

Properties

-  "stats"                    gboolean              : Read / Write
-  "timeout"                  guint64               : Read / Write
+  "timeout"                  guint64               : Read / Write
   "window-size"              gint                  : Read / Write
   "window-threshold"         gint                  : Read / Write
 
@@ -252,7 +248,7 @@ number of samples to use when calibrating and @@ -274,16 +270,16 @@ protected for subclasses, use the methods to use the

GstClockTime

-
typedef guint64 GstClockTime;
+
typedef guint64 GstClockTime;
 

A datatype to hold a time, measured in nanoseconds. @@ -357,7 +353,7 @@ A datatype to hold the handle to an outstanding sync or async clock callback.


GST_CLOCK_TIME_NONE

-
#define GST_CLOCK_TIME_NONE		((GstClockTime) -1)
+
#define GST_CLOCK_TIME_NONE             ((GstClockTime) -1)
 

Constant to define an undefined clock time. @@ -366,7 +362,7 @@ Constant to define an undefined clock time.


GST_CLOCK_TIME_IS_VALID()

-
#define GST_CLOCK_TIME_IS_VALID(time) (((GstClockTime)(time)) != GST_CLOCK_TIME_NONE)
+
#define GST_CLOCK_TIME_IS_VALID(time)   (((GstClockTime)(time)) != GST_CLOCK_TIME_NONE)
 

Tests if a given GstClockTime represents a valid defined time. @@ -387,6 +383,9 @@ Tests if a given @@ -396,6 +395,9 @@ Constant that defines one GStreamer second.

Constant that defines one GStreamer millisecond.

+

+Value: 1000000 +


@@ -405,6 +407,9 @@ Constant that defines one GStreamer millisecond.

Constant that defines one GStreamer microsecond.

+

+Value: 1000 +


@@ -414,6 +419,9 @@ Constant that defines one GStreamer microsecond.

Constant that defines one GStreamer nanosecond

+

+Value: 1 +


@@ -486,7 +494,7 @@ Convert a

GST_CLOCK_DIFF()

-
#define GST_CLOCK_DIFF(s, e)		(GstClockTimeDiff)((e) - (s))
+
#define GST_CLOCK_DIFF(s, e)            (GstClockTimeDiff)((e) - (s))
 

Calculate a difference between two clock times as a GstClockTimeDiff. @@ -509,7 +517,7 @@ The difference is calculated as e -

GST_TIMEVAL_TO_TIME()

-
#define GST_TIMEVAL_TO_TIME(tv)		(GstClockTime)((tv).tv_sec * GST_SECOND + (tv).tv_usec * GST_USECOND)
+
#define GST_TIMEVAL_TO_TIME(tv)         (GstClockTime)((tv).tv_sec * GST_SECOND + (tv).tv_usec * GST_USECOND)
 

Convert a GTimeVal to a GstClockTime. @@ -554,7 +562,7 @@ in your pipeline for 2038.


GST_TIMESPEC_TO_TIME()

-
#define GST_TIMESPEC_TO_TIME(ts) (GstClockTime)((ts).tv_sec * GST_SECOND + (ts).tv_nsec * GST_NSECOND)
+
#define GST_TIMESPEC_TO_TIME(ts)        (GstClockTime)((ts).tv_sec * GST_SECOND + (ts).tv_nsec * GST_NSECOND)
 

Convert a struct timespec (see man pselect) to a GstClockTime. @@ -590,18 +598,9 @@ Convert a


-

GST_CLOCK_ENTRY_TRACE_NAME

-
#define GST_CLOCK_ENTRY_TRACE_NAME "GstClockEntry"
-
-

-The name used for tracing clock entry allocations. -

-
-
-

struct GstClockEntry

struct GstClockEntry {
-  gint			refcount;
+  gint                  refcount;
 };
 

@@ -685,7 +684,7 @@ The type of the clock entry


GST_CLOCK_ENTRY()

-
#define GST_CLOCK_ENTRY(entry)		((GstClockEntry *)(entry))
+
#define GST_CLOCK_ENTRY(entry)          ((GstClockEntry *)(entry))
 

Cast to a clock entry @@ -701,7 +700,7 @@ Cast to a clock entry


GST_CLOCK_ENTRY_CLOCK()

-
#define GST_CLOCK_ENTRY_CLOCK(entry) ((entry)->clock)
+
#define GST_CLOCK_ENTRY_CLOCK(entry)    ((entry)->clock)
 

Get the owner clock of the entry @@ -717,7 +716,7 @@ Get the owner clock of the entry


GST_CLOCK_ENTRY_TYPE()

-
#define GST_CLOCK_ENTRY_TYPE(entry) ((entry)->type)
+
#define GST_CLOCK_ENTRY_TYPE(entry)     ((entry)->type)
 

Get the type of the clock entry @@ -733,7 +732,7 @@ Get the type of the clock entry


GST_CLOCK_ENTRY_TIME()

-
#define GST_CLOCK_ENTRY_TIME(entry) ((entry)->time)
+
#define GST_CLOCK_ENTRY_TIME(entry)     ((entry)->time)
 

Get the requested time of this entry @@ -749,7 +748,7 @@ Get the requested time of this entry


GST_CLOCK_ENTRY_INTERVAL()

-
#define GST_CLOCK_ENTRY_INTERVAL(entry) ((entry)->interval)
+
#define GST_CLOCK_ENTRY_INTERVAL(entry) ((entry)->interval)
 

Get the interval of this periodic entry @@ -765,7 +764,7 @@ Get the interval of this periodic entry


GST_CLOCK_ENTRY_STATUS()

-
#define GST_CLOCK_ENTRY_STATUS(entry) ((entry)->status)
+
#define GST_CLOCK_ENTRY_STATUS(entry)   ((entry)->status)
 

The status of the entry @@ -782,14 +781,14 @@ The status of the entry

enum GstClockReturn

typedef enum {
-  GST_CLOCK_OK		=  0,
-  GST_CLOCK_EARLY =  1,
-  GST_CLOCK_UNSCHEDULED =  2,
-  GST_CLOCK_BUSY =  3,
-  GST_CLOCK_BADTIME =  4,
-  GST_CLOCK_ERROR =  5,
-  GST_CLOCK_UNSUPPORTED =  6,
-  GST_CLOCK_DONE =  7
+  GST_CLOCK_OK          =  0,
+  GST_CLOCK_EARLY       =  1,
+  GST_CLOCK_UNSCHEDULED =  2,
+  GST_CLOCK_BUSY        =  3,
+  GST_CLOCK_BADTIME     =  4,
+  GST_CLOCK_ERROR       =  5,
+  GST_CLOCK_UNSUPPORTED =  6,
+  GST_CLOCK_DONE        =  7
 } GstClockReturn;
 

@@ -852,7 +851,7 @@ The return value of a clock operation. GST_CLOCK_FLAG_CAN_SET_RESOLUTION = (GST_OBJECT_FLAG_LAST << 4), GST_CLOCK_FLAG_CAN_SET_MASTER = (GST_OBJECT_FLAG_LAST << 5), /* padding */ - GST_CLOCK_FLAG_LAST = (GST_OBJECT_FLAG_LAST << 8) + GST_CLOCK_FLAG_LAST = (GST_OBJECT_FLAG_LAST << 8) } GstClockFlags;

@@ -917,78 +916,6 @@ Gets the -

GST_CLOCK_BROADCAST()

-
#define GST_CLOCK_BROADCAST(clock)       g_cond_broadcast(GST_CLOCK_COND(clock))
-
-

-Signal that the entries in the clock have changed. -

-
-- - - - -

clock :

the clock to broadcast
-
-
-
-

GST_CLOCK_COND()

-
#define GST_CLOCK_COND(clock)            (GST_CLOCK_CAST(clock)->entries_changed)
-
-

-Gets the GCond that gets signalled when the entries of the clock -changed. -

-
-- - - - -

clock :

the clock to query
-
-
-
-

GST_CLOCK_TIMED_WAIT()

-
#define GST_CLOCK_TIMED_WAIT(clock,tv)   g_cond_timed_wait(GST_CLOCK_COND(clock),GST_OBJECT_GET_LOCK(clock),tv)
-
-

-Wait on the clock until the entries changed or the specified timeout -occurred. -

-
-- - - - - - - - - - -

clock :

the clock to wait on

tv :

a GTimeVal to wait.
-
-
-
-

GST_CLOCK_WAIT()

-
#define GST_CLOCK_WAIT(clock)            g_cond_wait(GST_CLOCK_COND(clock),GST_OBJECT_GET_LOCK(clock))
-
-

-Wait on the clock until the entries changed. -

-
-- - - - -

clock :

the clock to wait on
-
-
-

gst_clock_add_observation ()

gboolean            gst_clock_add_observation           (GstClock *clock,
                                                          GstClockTime slave,
@@ -1549,6 +1476,52 @@ internal time
 

+

gst_clock_get_timeout ()

+
GstClockTime        gst_clock_get_timeout               (GstClock *clock);
+

+Get the amount of time that master and slave clocks are sampled. +

+
++ + + + + + + + + + +

clock :

a GstClock +

Returns :

the interval between samples.
+
+
+
+

gst_clock_set_timeout ()

+
void                gst_clock_set_timeout               (GstClock *clock,
+                                                         GstClockTime timeout);
+

+Set the amount of time, in nanoseconds, to sample master and slave +clocks +

+
++ + + + + + + + + + +

clock :

a GstClock +

timeout :

a timeout
+
+
+

gst_clock_id_get_time ()

GstClockTime        gst_clock_id_get_time               (GstClockID id);

@@ -1798,15 +1771,8 @@ MT safe.

Property Details

-

The "stats" property

-
  "stats"                    gboolean              : Read / Write
-

Enable clock stats (unimplemented).

-

Default value: FALSE

-
-
-

The "timeout" property

-
  "timeout"                  guint64               : Read / Write
+
  "timeout"                  guint64               : Read / Write

The amount of time, in nanoseconds, to sample master and slave clocks.

Default value: 100000000

diff --git a/docs/gst/html/GstControlBinding.html b/docs/gst/html/GstControlBinding.html new file mode 100644 index 0000000..3ed254c --- /dev/null +++ b/docs/gst/html/GstControlBinding.html @@ -0,0 +1,365 @@ + + + + +GstControlBinding + + + + + + + + + + + + + + + + + + + +
+
+
+ + +
+

GstControlBinding

+

GstControlBinding — attachment for control source sources

+
+
+

Synopsis

+
+#include <gst/gst.h>
+
+struct              GstControlBinding;
+struct              GstControlBindingClass;
+void                (*GstControlBindingConvert)         (GstControlBinding *self,
+                                                         gdouble src_value,
+                                                         GValue *dest_value);
+gboolean            gst_control_binding_sync_values     (GstControlBinding *self,
+                                                         GstObject *object,
+                                                         GstClockTime timestamp,
+                                                         GstClockTime last_sync);
+GValue *            gst_control_binding_get_value       (GstControlBinding *binding,
+                                                         GstClockTime timestamp);
+gboolean            gst_control_binding_get_value_array (GstControlBinding *binding,
+                                                         GstClockTime timestamp,
+                                                         GstClockTime interval,
+                                                         guint n_values,
+                                                         GValue *values);
+void                gst_control_binding_set_disabled    (GstControlBinding *self,
+                                                         gboolean disabled);
+gboolean            gst_control_binding_is_disabled     (GstControlBinding *self);
+
+
+
+

Object Hierarchy

+
+  GObject
+   +----GInitiallyUnowned
+         +----GstObject
+               +----GstControlBinding
+
+
+
+

Properties

+
+  "name"                     gchar*                : Read / Write / Construct Only
+  "object"                   GstObject*            : Read / Write / Construct Only
+
+
+
+

Description

+

+A value mapping object that attaches control sources to gobject properties. +

+
+
+

Details

+
+

struct GstControlBinding

+
struct GstControlBinding {
+  gchar *name;                  /* name of the property */
+  GParamSpec *pspec;            /* GParamSpec for this property */
+};
+
+

+The instance structure of GstControlBinding. +

+
++ + + + + + + + + + +

gchar *name;

name of the property of this binding

GParamSpec *pspec;

+
+
+
+

struct GstControlBindingClass

+
struct GstControlBindingClass {
+  GstObjectClass parent_class;
+
+  /* virtual methods */
+  gboolean (* sync_values) (GstControlBinding *self, GstObject *object, GstClockTime timestamp, GstClockTime last_sync);
+  GValue * (* get_value) (GstControlBinding *self, GstClockTime timestamp);
+  gboolean (* get_value_array) (GstControlBinding *self, GstClockTime timestamp,GstClockTime interval, guint n_values, GValue *values);
+};
+
+

+The class structure of GstControlBinding. +

+
++ + + + + + + + + + + + + + + + + + +

GstObjectClass parent_class;

Parent class

sync_values ()

get_value ()

get_value_array ()

+
+
+
+

GstControlBindingConvert ()

+
void                (*GstControlBindingConvert)         (GstControlBinding *self,
+                                                         gdouble src_value,
+                                                         GValue *dest_value);
+

+Function to map a control-value to the target GValue. +

+
++ + + + + + + + + + + + + + +

self :

the GstControlBinding instance

src_value :

the value returned by the cotnrol source

dest_value :

the target GValue
+
+
+
+

gst_control_binding_sync_values ()

+
gboolean            gst_control_binding_sync_values     (GstControlBinding *self,
+                                                         GstObject *object,
+                                                         GstClockTime timestamp,
+                                                         GstClockTime last_sync);
+

+Sets the property of the object, according to the GstControlSources that +handle them and for the given timestamp. +

+

+If this function fails, it is most likely the application developers fault. +Most probably the control sources are not setup correctly. +

+
++ + + + + + + + + + + + + + + + + + + + + + +

self :

the control binding

object :

the object that has controlled properties

timestamp :

the time that should be processed

last_sync :

the last time this was called

Returns :

+TRUE if the controller value could be applied to the object +property, FALSE otherwise
+
+
+
+

gst_control_binding_get_value ()

+
GValue *            gst_control_binding_get_value       (GstControlBinding *binding,
+                                                         GstClockTime timestamp);
+

+Gets the value for the given controlled property at the requested time. +

+
++ + + + + + + + + + + + + + +

self :

the control binding

timestamp :

the time the control-change should be read from

Returns :

the GValue of the property at the given time, or NULL if the +property isn't controlled.
+
+
+
+

gst_control_binding_get_value_array ()

+
gboolean            gst_control_binding_get_value_array (GstControlBinding *binding,
+                                                         GstClockTime timestamp,
+                                                         GstClockTime interval,
+                                                         guint n_values,
+                                                         GValue *values);
+

+Gets a number of values for the given controllered property starting at the +requested time. The array values need to hold enough space for n_values of +the same type as the objects property's type. +

+

+This function is useful if one wants to e.g. draw a graph of the control +curve or apply a control curve sample by sample. +

+
++ + + + + + + + + + + + + + + + + + + + + + + + + + +

self :

the control binding

timestamp :

the time that should be processed

interval :

the time spacing between subsequent values

n_values :

the number of values

values :

array to put control-values in

Returns :

+TRUE if the given array could be filled, FALSE otherwise
+
+
+
+

gst_control_binding_set_disabled ()

+
void                gst_control_binding_set_disabled    (GstControlBinding *self,
+                                                         gboolean disabled);
+

+This function is used to disable a control binding for some time, i.e. +gst_object_sync_values() will do nothing. +

+
++ + + + + + + + + + +

self :

the control binding

disabled :

boolean that specifies whether to disable the controller +or not.
+
+
+
+

gst_control_binding_is_disabled ()

+
gboolean            gst_control_binding_is_disabled     (GstControlBinding *self);
+

+Check if the control binding is disabled. +

+
++ + + + + + + + + + +

self :

the control binding

Returns :

+TRUE if the binding is inactive
+
+
+
+

Property Details

+
+

The "name" property

+
  "name"                     gchar*                : Read / Write / Construct Only
+

The name of the property.

+

Default value: NULL

+
+
+
+

The "object" property

+
  "object"                   GstObject*            : Read / Write / Construct Only
+

The object of the property.

+
+
+
+ + + \ No newline at end of file diff --git a/docs/gst/html/GstControlSource.html b/docs/gst/html/GstControlSource.html new file mode 100644 index 0000000..68c7982 --- /dev/null +++ b/docs/gst/html/GstControlSource.html @@ -0,0 +1,324 @@ + + + + +GstControlSource + + + + + + + + + + + + + + + + + + + +
+
+
+ + +
+

GstControlSource

+

GstControlSource — base class for control source sources

+
+
+

Synopsis

+
+#include <gst/gst.h>
+
+                    GstValueArray;
+struct              GstControlSource;
+struct              GstControlSourceClass;
+gboolean            (*GstControlSourceGetValue)         (GstControlSource *self,
+                                                         GstClockTime timestamp,
+                                                         gdouble *value);
+gboolean            (*GstControlSourceGetValueArray)    (GstControlSource *self,
+                                                         GstClockTime timestamp,
+                                                         GstClockTime interval,
+                                                         guint n_values,
+                                                         gdouble *values);
+struct              GstTimedValue;
+gboolean            gst_control_source_get_value        (GstControlSource *self,
+                                                         GstClockTime timestamp,
+                                                         gdouble *value);
+gboolean            gst_control_source_get_value_array  (GstControlSource *self,
+                                                         GstClockTime timestamp,
+                                                         GstClockTime interval,
+                                                         guint n_values,
+                                                         gdouble *values);
+
+
+
+

Object Hierarchy

+
+  GObject
+   +----GInitiallyUnowned
+         +----GstObject
+               +----GstControlSource
+
+
+
+

Description

+

+The GstControlSource is a base class for control value sources that could +be used by GstController to get timestamp-value pairs. +

+

+A GstControlSource is used by first getting an instance, binding it to a +GParamSpec (for example by using gst_controller_set_control_source()) and +then by having it used by the GstController or calling +gst_control_source_get_value() or gst_control_source_get_value_array(). +

+

+For implementing a new GstControlSource one has to implement a +GstControlSourceBind method, which will depending on the GParamSpec set up +the control source for use and sets the GstControlSourceGetValue and +GstControlSourceGetValueArray functions. These are then used by +gst_control_source_get_value() or gst_control_source_get_value_array() +to get values for specific timestamps. +

+
+
+

Details

+
+

GstValueArray

+
typedef struct _GstValueArray GstValueArray;
+
+
+
+

struct GstControlSource

+
struct GstControlSource {
+  GstControlSourceGetValue get_value;             /* Returns the value for a property at a given timestamp */
+  GstControlSourceGetValueArray get_value_array;  /* Returns values for a property in a given timespan */
+};
+
+

+The instance structure of GstControlSource. +

+
++ + + + + + + + + + +

GstControlSourceGetValue get_value;

Function for returning a value for a given timestamp

GstControlSourceGetValueArray get_value_array;

Function for returning a GstValueArray for a given timestamp
+
+
+
+

struct GstControlSourceClass

+
struct GstControlSourceClass {
+  GstObjectClass parent_class;
+};
+
+

+The class structure of GstControlSource. +

+
++ + + + +

GstObjectClass parent_class;

Parent class
+
+
+
+

GstControlSourceGetValue ()

+
gboolean            (*GstControlSourceGetValue)         (GstControlSource *self,
+                                                         GstClockTime timestamp,
+                                                         gdouble *value);
+

+Function for returning a value for a given timestamp. +

+
++ + + + + + + + + + + + + + + + + + +

self :

the GstControlSource instance

timestamp :

timestamp for which a value should be calculated

value :

a GValue which will be set to the result. It must be initialized to the correct type.

Returns :

+TRUE if the value was successfully calculated.
+
+
+
+

GstControlSourceGetValueArray ()

+
gboolean            (*GstControlSourceGetValueArray)    (GstControlSource *self,
+                                                         GstClockTime timestamp,
+                                                         GstClockTime interval,
+                                                         guint n_values,
+                                                         gdouble *values);
+

+Function for returning an array of values for starting at a given timestamp. +

+
++ + + + + + + + + + + + + + + + + + + + + + + + + + +

self :

the GstControlSource instance

timestamp :

timestamp for which a value should be calculated

interval :

the time spacing between subsequent values

n_values :

the number of values

values :

array to put control-values in

Returns :

+TRUE if the values were successfully calculated.
+
+
+
+

struct GstTimedValue

+
struct GstTimedValue {
+  GstClockTime timestamp;
+  gdouble      value;
+};
+
+

+Structure for saving a timestamp and a value. +

+
++ + + + + + + + + + +

GstClockTime timestamp;

timestamp of the value change

gdouble value;

the corresponding value
+
+
+
+

gst_control_source_get_value ()

+
gboolean            gst_control_source_get_value        (GstControlSource *self,
+                                                         GstClockTime timestamp,
+                                                         gdouble *value);
+

+Gets the value for this GstControlSource at a given timestamp. +

+
++ + + + + + + + + + + + + + + + + + +

self :

the GstControlSource object

timestamp :

the time for which the value should be returned

value :

the value

Returns :

FALSE if the value couldn't be returned, TRUE otherwise.
+
+
+
+

gst_control_source_get_value_array ()

+
gboolean            gst_control_source_get_value_array  (GstControlSource *self,
+                                                         GstClockTime timestamp,
+                                                         GstClockTime interval,
+                                                         guint n_values,
+                                                         gdouble *values);
+

+Gets an array of values for for this GstControlSource. +

+
++ + + + + + + + + + + + + + + + + + + + + + + + + + +

self :

the GstControlSource object

timestamp :

the first timestamp

interval :

the time steps

n_values :

the number of values to fetch

value_array :

array to put control-values in

Returns :

+TRUE if the given array could be filled, FALSE otherwise
+
+
+
+ + + \ No newline at end of file diff --git a/docs/gst/html/GstElement.html b/docs/gst/html/GstElement.html index 5ec2914..332a2bf 100644 --- a/docs/gst/html/GstElement.html +++ b/docs/gst/html/GstElement.html @@ -3,8 +3,8 @@ GstElement - - + + @@ -17,7 +17,7 @@ Prev Up Home -GStreamer 0.11 Core Reference Manual +GStreamer 1.0 Core Reference Manual Next @@ -100,24 +100,31 @@ enum const gchar *name); GList * gst_element_class_get_pad_template_list (GstElementClass *element_class); -void gst_element_class_install_std_props (GstElementClass *klass, - const gchar *first_name, - ...); void gst_element_class_set_metadata (GstElementClass *klass, const gchar *longname, const gchar *classification, const gchar *description, const gchar *author); +void gst_element_class_set_static_metadata + (GstElementClass *klass, + const gchar *longname, + const gchar *classification, + const gchar *description, + const gchar *author); void gst_element_class_add_metadata (GstElementClass *klass, const gchar *key, const gchar *value); +void gst_element_class_add_static_metadata + (GstElementClass *klass, + const gchar *key, + const gchar *value); gboolean gst_element_add_pad (GstElement *element, GstPad *pad); void gst_element_create_all_pads (GstElement *element); GstPad * gst_element_get_compatible_pad (GstElement *element, GstPad *pad, - const GstCaps *caps); + GstCaps *caps); GstPadTemplate * gst_element_get_compatible_pad_template (GstElement *element, GstPadTemplate *compattempl); @@ -182,10 +189,6 @@ const GstBus *bus
); GstBus * gst_element_get_bus (GstElement *element); GstElementFactory * gst_element_get_factory (GstElement *element); -void gst_element_set_index (GstElement *element, - GstIndex *index); -GstIndex * gst_element_get_index (GstElement *element); -gboolean gst_element_is_indexable (GstElement *element); #define gst_element_set_name (elem, name) #define gst_element_get_name (elem) @@ -193,11 +196,9 @@ const gst_element_get_parent (elem) -gboolean gst_element_requires_clock (GstElement *element); gboolean gst_element_set_clock (GstElement *element, GstClock *clock); GstClock * gst_element_get_clock (GstElement *element); -gboolean gst_element_provides_clock (GstElement *element); GstClock * gst_element_provide_clock (GstElement *element); GstStateChangeReturn gst_element_set_state (GstElement *element, @@ -220,12 +221,6 @@ const GstStateChangeReturn gst_element_change_state (GstElement *element, GstStateChange transition); -void gst_element_found_tags (GstElement *element, - GstTagList *list); -void gst_element_found_tags_for_pad (GstElement *element, - GstPad *pad, - GstTagList *list); - void gst_element_message_full (GstElement *element, GstMessageType type, GQuark domain, @@ -238,35 +233,34 @@ const gboolean gst_element_post_message (GstElement *element, GstMessage *message); -const GstQueryType * gst_element_get_query_types (GstElement *element); gboolean gst_element_query (GstElement *element, GstQuery *query); gboolean gst_element_query_convert (GstElement *element, GstFormat src_format, - gint64 src_val, + gint64 src_val, GstFormat dest_format, - gint64 *dest_val); + gint64 *dest_val); gboolean gst_element_query_position (GstElement *element, GstFormat format, - gint64 *cur); + gint64 *cur); gboolean gst_element_query_duration (GstElement *element, GstFormat format, - gint64 *duration); + gint64 *duration); gboolean gst_element_send_event (GstElement *element, GstEvent *event); gboolean gst_element_seek_simple (GstElement *element, GstFormat format, GstSeekFlags seek_flags, - gint64 seek_pos); + gint64 seek_pos); gboolean gst_element_seek (GstElement *element, gdouble rate, GstFormat format, GstSeekFlags flags, GstSeekType cur_type, - gint64 cur, + gint64 cur, GstSeekType stop_type, - gint64 stop); + gint64 stop);
@@ -307,7 +301,7 @@ core when using the appropriate locking. Do not use this in plug-ins or applications in order to retain ABI compatibility.

-All elements have pads (of the type GstPad). These pads link to pads on +Elements can have pads (of the type GstPad). These pads link to pads on other elements. GstBuffer flow between these linked pads. A GstElement has a GList of GstPad structures for all their input (or sink) and output (or source) pads. @@ -318,7 +312,7 @@ and gst_element_get_static_pad(). A new dynamic pad can be created using gst_element_request_pad() with a GstPadTemplate or -gst_element_get_request_pad() with the template name such as "src_%d". +gst_element_get_request_pad() with the template name such as "src_%u". An iterator of all pads can be retrieved with gst_element_iterate_pads().

@@ -342,11 +336,11 @@ of a GstClock on an element using gst_element_get_clock() and gst_element_set_clock(). Some elements can provide a clock for the pipeline if -gst_element_provides_clock() returns TRUE. With the +the GST_ELEMENT_FLAG_PROVIDE_CLOCK flag is set. With the gst_element_provide_clock() method one can retrieve the clock provided by such an element. -Not all elements require a clock to operate correctly. If -gst_element_requires_clock() returns TRUE, a clock should be set on the +Not all elements require a clock to operate correctly. If the +#GST_ELEMENT_FLAG_REQUIRE_CLOCK() flag is set, a clock should be set on the element with gst_element_set_clock().

@@ -355,7 +349,7 @@ toplevel

-Last reviewed on 2009-05-29 (0.10.24) +Last reviewed on 2012-03-28 (0.11.3)

@@ -363,10 +357,10 @@ Last reviewed on 2009-05-29 (0.10.24)

struct GstElement

struct GstElement {
-  GStaticRecMutex       state_lock;
+  GRecMutex             state_lock;
 
   /* element state */
-  GCond                *state_cond;
+  GCond                 state_cond;
   guint32               state_cookie;
   GstState              target_state;
   GstState              current_state;
@@ -399,16 +393,16 @@ GStreamer element abstract base class.
 
 
 
-

GStaticRecMutex state_lock;

+

GRecMutex state_lock;

Used to serialize execution of gst_element_set_state() -

GCond *state_cond;

+

GCond state_cond;

Used to signal completion of a state change -

guint32 state_cookie;

+

guint32 state_cookie;

Used to detect concurrent execution of gst_element_set_state() and gst_element_get_state() @@ -456,7 +450,7 @@ state will yield the running_time against the clock. the running_time of the last PAUSED state -

guint16 numpads;

+

guint16 numpads;

number of pads of the element, includes both source and sink pads. @@ -464,7 +458,7 @@ state will yield the running_time against the clock. list of pads -

guint16 numsrcpads;

+

guint16 numsrcpads;

number of source pads of the element. @@ -472,7 +466,7 @@ state will yield the running_time against the clock. list of source pads -

guint16 numsinkpads;

+

guint16 numsinkpads;

number of sink pads of the element. @@ -480,7 +474,7 @@ state will yield the running_time against the clock. list of sink pads -

guint32 pads_cookie;

+

guint32 pads_cookie;

updated whenever the a pad is added or removed @@ -525,14 +519,9 @@ state will yield the running_time against the clock. GstClock* (*provide_clock) (GstElement *element); gboolean (*set_clock) (GstElement *element, GstClock *clock); - /* index */ - GstIndex* (*get_index) (GstElement *element); - void (*set_index) (GstElement *element, GstIndex *index); - /* query functions */ gboolean (*send_event) (GstElement *element, GstEvent *event); - const GstQueryType* (*get_query_types) (GstElement *element); gboolean (*query) (GstElement *element, GstQuery *query); };
@@ -565,7 +554,7 @@ functionality. the number of padtemplates -

guint32 pad_templ_cookie;

+

guint32 pad_templ_cookie;

changed whenever the padtemplates change @@ -590,7 +579,7 @@ functionality.

state_changed ()

-called immediately after a new state was set. Since: 0.10.35. +called immediately after a new state was set.

set_bus ()

@@ -605,22 +594,10 @@ functionality. set the GstClock on the element -

get_index ()

-set a GstIndex on the element - - -

set_index ()

-get the GstIndex of an element - -

send_event ()

send a GstEvent to the element -

get_query_types ()

-get the supported GstQueryType of this element - -

query ()

perform a GstQuery on the element @@ -631,12 +608,15 @@ functionality.

enum GstElementFlags

typedef enum {
-  GST_ELEMENT_LOCKED_STATE      = (GST_OBJECT_FLAG_LAST << 0),
-  GST_ELEMENT_IS_SINK           = (GST_OBJECT_FLAG_LAST << 1),
-  GST_ELEMENT_UNPARENTING       = (GST_OBJECT_FLAG_LAST << 2),
-  GST_ELEMENT_IS_SOURCE         = (GST_OBJECT_FLAG_LAST << 3),
+  GST_ELEMENT_FLAG_UNPARENTING    = (GST_OBJECT_FLAG_LAST << 0),
+  GST_ELEMENT_FLAG_LOCKED_STATE   = (GST_OBJECT_FLAG_LAST << 1),
+  GST_ELEMENT_FLAG_SINK           = (GST_OBJECT_FLAG_LAST << 2),
+  GST_ELEMENT_FLAG_SOURCE         = (GST_OBJECT_FLAG_LAST << 3),
+  GST_ELEMENT_FLAG_PROVIDE_CLOCK  = (GST_OBJECT_FLAG_LAST << 4),
+  GST_ELEMENT_FLAG_REQUIRE_CLOCK  = (GST_OBJECT_FLAG_LAST << 5),
+  GST_ELEMENT_FLAG_INDEXABLE      = (GST_OBJECT_FLAG_LAST << 6),
   /* padding */
-  GST_ELEMENT_FLAG_LAST         = (GST_OBJECT_FLAG_LAST << 16)
+  GST_ELEMENT_FLAG_LAST           = (GST_OBJECT_FLAG_LAST << 10)
 } GstElementFlags;
 

@@ -646,24 +626,39 @@ The standard flags that an element may have. -

GST_ELEMENT_LOCKED_STATE

+

GST_ELEMENT_FLAG_UNPARENTING

+Child is being removed from the parent bin. + gst_bin_remove() on a child already being removed immediately returns FALSE + + + +

GST_ELEMENT_FLAG_LOCKED_STATE

ignore state changes from parent -

GST_ELEMENT_IS_SINK

+

GST_ELEMENT_FLAG_SINK

the element is a sink -

GST_ELEMENT_UNPARENTING

-Child is being removed from the parent bin. - gst_bin_remove() on a child already being removed immediately returns FALSE +

GST_ELEMENT_FLAG_SOURCE

+the element is a source. Since 0.10.31 -

GST_ELEMENT_IS_SOURCE

-the element is a source. Since 0.10.31 +

GST_ELEMENT_FLAG_PROVIDE_CLOCK

+the element can provide a clock + + + +

GST_ELEMENT_FLAG_REQUIRE_CLOCK

+the element requires a clock + + + +

GST_ELEMENT_FLAG_INDEXABLE

+the element can use an index @@ -833,7 +828,7 @@ and GstClock wait calls.

  • - When a sink does not have a pending buffer to play, it returns + When a sink does not have a pending buffer to play, it returns GST_STATE_CHANGE_ASYNC from this state change and completes the state change when it receives a new buffer or an GST_EVENT_EOS.

  • @@ -859,7 +854,7 @@ and

    - Chain or get_range functions return GST_FLOW_WRONG_STATE. + Chain or get_range functions return GST_FLOW_FLUSHING.

  • The element pads are deactivated so that streaming becomes impossible and @@ -1117,7 +1112,7 @@ the state, during state changes, and while finalizing.


    GST_STATE_GET_COND()

    -
    #define GST_STATE_GET_COND(elem)               (GST_ELEMENT_CAST(elem)->state_cond)
    +
    #define GST_STATE_GET_COND(elem)               (&GST_ELEMENT_CAST(elem)->state_cond)
     

    Get the conditional used to signal the completion of a state change. @@ -1346,7 +1341,7 @@ enclosed in parentheses)


    GST_ELEMENT_IS_LOCKED_STATE()

    -
    #define GST_ELEMENT_IS_LOCKED_STATE(elem)        (GST_OBJECT_FLAG_IS_SET(elem,GST_ELEMENT_LOCKED_STATE))
    +
    #define GST_ELEMENT_IS_LOCKED_STATE(elem)        (GST_OBJECT_FLAG_IS_SET(elem,GST_ELEMENT_FLAG_LOCKED_STATE))
     

    Check if the element is in the locked state and therefore will ignore state @@ -1514,39 +1509,54 @@ pad templates. [ -

    gst_element_class_install_std_props ()

    -
    void                gst_element_class_install_std_props (GstElementClass *klass,
    -                                                         const gchar *first_name,
    -                                                         ...);
    +

    gst_element_class_set_metadata ()

    +
    void                gst_element_class_set_metadata      (GstElementClass *klass,
    +                                                         const gchar *longname,
    +                                                         const gchar *classification,
    +                                                         const gchar *description,
    +                                                         const gchar *author);
    +

    +Sets the detailed information for a GstElementClass. +

    +
    +

    Note

    This function is for use in _class_init functions only.

    -Adds a list of standardized properties with types to the klass. -the id is for the property switch in your get_prop method, and -the flags determine readability / writeability.

    - + - - + + - - + + + + + + + + + +

    klass :

    the GstElementClass to add the properties to.class to set metadata for

    first_name :

    the name of the first property. -in a NULL terminated

    longname :

    The long English name of the element. E.g. "File Sink"

    ... :

    the id and flags of the first property, followed by -further 'name', 'id', 'flags' triplets and terminated by NULL.

    classification :

    String describing the type of element, as an unordered list +separated with slashes ('/'). See draft-klass.txt of the design docs +for more details and common types. E.g: "Sink/File"

    description :

    Sentence describing the purpose of the element. +E.g: "Write stream to a file"

    author :

    Name and contact details of the author(s). Use \n to separate +multiple author metadata. E.g: "Joe Bloggs <joe.blogs at foo.com>"

    -

    gst_element_class_set_metadata ()

    -
    void                gst_element_class_set_metadata      (GstElementClass *klass,
    +

    gst_element_class_set_static_metadata ()

    +
    void                gst_element_class_set_static_metadata
    +                                                        (GstElementClass *klass,
                                                              const gchar *longname,
                                                              const gchar *classification,
                                                              const gchar *description,
    @@ -1558,6 +1568,12 @@ Sets the detailed information for a NoteThis function is for use in _class_init functions only.

    +

    +Same as gst_element_class_set_metadata(), but longname, classification, +description, and author must be static strings or inlined strings, as +they will not be copied. (GStreamer plugins will be made resident once +loaded, so this function can be used even from dynamically loaded plugins.) +

    @@ -1617,6 +1633,40 @@ Set key with
    +

    gst_element_class_add_static_metadata ()

    +
    void                gst_element_class_add_static_metadata
    +                                                        (GstElementClass *klass,
    +                                                         const gchar *key,
    +                                                         const gchar *value);
    +

    +Set key with value as metadata in klass. +

    +

    +Same as gst_element_class_add_metadata(), but value must be a static string +or an inlined string, as it will not be copied. (GStreamer plugins will +be made resident once loaded, so this function can be used even from +dynamically loaded plugins.) +

    +
    ++ + + + + + + + + + + + + + +

    klass :

    class to set metadata for

    key :

    the key to set

    value :

    the value to set
    +
    +
    +

    gst_element_add_pad ()

    gboolean            gst_element_add_pad                 (GstElement *element,
                                                              GstPad *pad);
    @@ -1681,7 +1731,7 @@ subclasses of

    gst_element_get_compatible_pad ()

    GstPad *            gst_element_get_compatible_pad      (GstElement *element,
                                                              GstPad *pad,
    -                                                         const GstCaps *caps);
    + GstCaps *caps);
  • Looks for an unlinked pad to which the given pad can link. It is not guaranteed that linking the pads will work, though it should work in most @@ -1828,11 +1878,6 @@ Pad templates can be looked up using gst_element_factory_get_static_pad_templates().

    -If the caps are specified and the element implements thew new -request_new_pad_full virtual method, the element will use them to select -which pad to create. -

    -

    The pad should be released with gst_element_release_request_pad().

    @@ -2626,79 +2671,6 @@ element. no refcounting is needed. [ -

    gst_element_set_index ()

    -
    void                gst_element_set_index               (GstElement *element,
    -                                                         GstIndex *index);
    -

    -Set index on the element. The refcount of the index -will be increased, any previously set index is unreffed. -

    -

    -MT safe. -

    -
    -- - - - - - - - - - -

    element :

    a GstElement.

    index :

    a GstIndex. [transfer none] -
    -
    -
    -
    -

    gst_element_get_index ()

    -
    GstIndex *          gst_element_get_index               (GstElement *element);
    -

    -Gets the index from the element. -

    -
    -- - - - - - - - - - -

    element :

    a GstElement.

    Returns :

    a GstIndex or NULL when no index was set on the -element. unref after usage. -MT safe. [transfer full] -
    -
    -
    -
    -

    gst_element_is_indexable ()

    -
    gboolean            gst_element_is_indexable            (GstElement *element);
    -

    -Queries if the element can be indexed. -

    -
    -- - - - - - - - - - -

    element :

    a GstElement.

    Returns :

    TRUE if the element can be indexed. -MT safe.
    -
    -
    -

    gst_element_set_name()

    #define                 gst_element_set_name(elem,name) gst_object_set_name(GST_OBJECT_CAST(elem),name)
     
    @@ -2792,29 +2764,6 @@ Get the parent of an element.

    -

    gst_element_requires_clock ()

    -
    gboolean            gst_element_requires_clock          (GstElement *element);
    -

    -Query if the element requires a clock. -

    -
    -- - - - - - - - - - -

    element :

    a GstElement to query

    Returns :

    -TRUE if the element requires a clock -MT safe.
    -
    -
    -

    gst_element_set_clock ()

    gboolean            gst_element_set_clock               (GstElement *element,
                                                              GstClock *clock);
    @@ -2871,33 +2820,6 @@ MT safe. [ -

    gst_element_provides_clock ()

    -
    gboolean            gst_element_provides_clock          (GstElement *element);
    -

    -Query if the element provides a clock. A GstClock provided by an -element can be used as the global GstClock for the pipeline. -An element that can provide a clock is only required to do so in the PAUSED -state, this means when it is fully negotiated and has allocated the resources -to operate the clock. -

    -
    -- - - - - - - - - - -

    element :

    a GstElement to query

    Returns :

    -TRUE if the element provides a clock -MT safe.
    -
    -
    -

    gst_element_provide_clock ()

    GstClock *          gst_element_provide_clock           (GstElement *element);

    @@ -3291,68 +3213,6 @@ internally.


    -

    gst_element_found_tags ()

    -
    void                gst_element_found_tags              (GstElement *element,
    -                                                         GstTagList *list);
    -

    -Posts a message to the bus that new tags were found, and pushes an event -to all sourcepads. Takes ownership of the list. -

    -

    -This is a utility method for elements. Applications should use the -GstTagSetter interface. -

    -
    -- - - - - - - - - - -

    element :

    element for which we found the tags.

    list :

    list of tags. [transfer full] -
    -
    -
    -
    -

    gst_element_found_tags_for_pad ()

    -
    void                gst_element_found_tags_for_pad      (GstElement *element,
    -                                                         GstPad *pad,
    -                                                         GstTagList *list);
    -

    -Posts a message to the bus that new tags were found and pushes the -tags as event. Takes ownership of the list. -

    -

    -This is a utility method for elements. Applications should use the -GstTagSetter interface. -

    -
    -- - - - - - - - - - - - - - -

    element :

    element for which to post taglist to bus.

    pad :

    pad on which to push tag-event. [transfer none] -

    list :

    the taglist to post on the bus and create event from. [transfer full] -
    -
    -
    -

    gst_element_message_full ()

    void                gst_element_message_full            (GstElement *element,
                                                              GstMessageType type,
    @@ -3456,31 +3316,6 @@ MT safe.
     

    -

    gst_element_get_query_types ()

    -
    const GstQueryType * gst_element_get_query_types        (GstElement *element);
    -

    -Get an array of query types from the element. -If the element doesn't implement a query types function, -the query will be forwarded to the peer of a random linked sink pad. -

    -
    -- - - - - - - - - - -

    element :

    a GstElement to query

    Returns :

    An array of GstQueryType elements that should not -be freed or modified. -MT safe.
    -
    -
    -

    gst_element_query ()

    gboolean            gst_element_query                   (GstElement *element,
                                                              GstQuery *query);
    @@ -3520,9 +3355,9 @@ MT safe.

    gst_element_query_convert ()

    gboolean            gst_element_query_convert           (GstElement *element,
                                                              GstFormat src_format,
    -                                                         gint64 src_val,
    +                                                         gint64 src_val,
                                                              GstFormat dest_format,
    -                                                         gint64 *dest_val);
    + gint64 *dest_val);

    Queries an element to convert src_val in src_format to dest_format.

    @@ -3563,7 +3398,7 @@ Queries an element to convert src_val in

    gst_element_query_position ()

    gboolean            gst_element_query_position          (GstElement *element,
                                                              GstFormat format,
    -                                                         gint64 *cur);
    + gint64 *cur);

    Queries an element for the stream position. If one repeatedly calls this function one can also create and reuse it in gst_element_query(). @@ -3597,7 +3432,7 @@ position, or NULL. [

    gst_element_query_duration ()

    gboolean            gst_element_query_duration          (GstElement *element,
                                                              GstFormat format,
    -                                                         gint64 *duration);
    + gint64 *duration);

    Queries an element for the total stream duration.

    @@ -3665,7 +3500,7 @@ MT safe.
    gboolean            gst_element_seek_simple             (GstElement *element,
                                                              GstFormat format,
                                                              GstSeekFlags seek_flags,
    -                                                         gint64 seek_pos);
    + gint64 seek_pos);

    Simple API to perform a seek on the given element, meaning it just seeks to the given position relative to the start of the stream. For more complex @@ -3726,9 +3561,9 @@ executed instantly though) GstFormat format, GstSeekFlags flags, GstSeekType cur_type, - gint64 cur, + gint64 cur, GstSeekType stop_type, - gint64 stop);

    + gint64 stop);

    Sends a seek event to an element. See gst_event_new_seek() for the details of the parameters. The seek event is sent to the element using diff --git a/docs/gst/html/GstElementFactory.html b/docs/gst/html/GstElementFactory.html index 55b914a..7e2127f 100644 --- a/docs/gst/html/GstElementFactory.html +++ b/docs/gst/html/GstElementFactory.html @@ -3,8 +3,8 @@ GstElementFactory - - + + @@ -17,7 +17,7 @@ Prev Up Home -GStreamer 0.11 Core Reference Manual +GStreamer 1.0 Core Reference Manual Next @@ -54,8 +54,8 @@ const const gchar *key); guint gst_element_factory_get_num_pad_templates (GstElementFactory *factory); -gint gst_element_factory_get_uri_type (GstElementFactory *factory); -gchar ** gst_element_factory_get_uri_protocols +GstURIType gst_element_factory_get_uri_type (GstElementFactory *factory); +const gchar * const * gst_element_factory_get_uri_protocols (GstElementFactory *factory); gboolean gst_element_factory_has_interface (GstElementFactory *factory, const gchar *interfacename); @@ -139,21 +139,40 @@ The following code example shows you how to create a GstFileSrc element.

    -

    Example 6. Using an element factory

    -
    -  #include <gst/gst.h>
    +

    Example 6. Using an element factory

    +
    + + + + + + + +
    1
    +2
    +3
    +4
    +5
    +6
    +7
    +8
    +9
    +10
    +11
    +12
    #include <gst/gst.h>
     
    -  GstElement *src;
    -  GstElementFactory *srcfactory;
    +GstElement *src;
    +GstElementFactory *srcfactory;
     
    -  gst_init (&argc, &argv);
    +gst_init (&argc, &argv);
    +
    +srcfactory = gst_element_factory_find ("filesrc");
    +g_return_if_fail (srcfactory != NULL);
    +src = gst_element_factory_create (srcfactory, "src");
    +g_return_if_fail (src != NULL);
    +...
    +
    - srcfactory = gst_element_factory_find ("filesrc"); - g_return_if_fail (srcfactory != NULL); - src = gst_element_factory_create (srcfactory, "src"); - g_return_if_fail (src != NULL); - ... -


    @@ -265,6 +284,28 @@ the factory is not loaded.

    gst_element_factory_get_metadata ()

    const gchar *       gst_element_factory_get_metadata    (GstElementFactory *factory,
                                                              const gchar *key);
    +

    +Get the metadata on factory with key. +

    +
    ++ + + + + + + + + + + + + + +

    factory, :

    a GstElementFactory +

    key :

    a key

    Returns :

    the metadata with key on factory or NULL when there was no +metadata with the given key.

    @@ -292,7 +333,7 @@ Gets the number of pad_templates in this factory.

    gst_element_factory_get_uri_type ()

    -
    gint                gst_element_factory_get_uri_type    (GstElementFactory *factory);
    +
    GstURIType          gst_element_factory_get_uri_type    (GstElementFactory *factory);

    Gets the type of URIs the element supports or GST_URI_UNKNOWN if none.

    @@ -314,7 +355,7 @@ Gets the type of URIs the element supports or

    gst_element_factory_get_uri_protocols ()

    -
    gchar **            gst_element_factory_get_uri_protocols
    +
    const gchar * const * gst_element_factory_get_uri_protocols
                                                             (GstElementFactory *factory);

    Gets a NULL-terminated array of protocols this element supports or NULL if @@ -394,7 +435,7 @@ a unique name. [Returns :

    new GstElement or NULL if the element couldn't -be created. [transfer full] +be created. [transfer floating] @@ -426,7 +467,7 @@ a unique name. [Returns :

    -new GstElement or NULL if unable to create element. [transfer full] +new GstElement or NULL if unable to create element. [transfer floating] @@ -694,7 +735,7 @@ Elements matching any of the defined GST_ELEMENT_FACTORY_TYPE_MEDIA types

    Note: Do not use this if you wish to not filter against any of the defined -media types. If you wish to do this, simply don't specify any +media types. If you wish to do this, simply don't specify any GST_ELEMENT_FACTORY_TYPE_MEDIA flag.

    Since 0.10.31

    diff --git a/docs/gst/html/GstGhostPad.html b/docs/gst/html/GstGhostPad.html index e26beb1..45c2f0d 100644 --- a/docs/gst/html/GstGhostPad.html +++ b/docs/gst/html/GstGhostPad.html @@ -3,11 +3,11 @@ GstGhostPad - - + + - + @@ -17,8 +17,8 @@ Prev Up Home -GStreamer 0.11 Core Reference Manual -Next +GStreamer 1.0 Core Reference Manual +Next Top @@ -61,38 +61,36 @@ struct void gst_ghost_pad_unlink_default (GstPad *pad); GstPadLinkReturn gst_ghost_pad_link_default (GstPad *pad, GstPad *peer); -gboolean gst_ghost_pad_activate_pull_default (GstPad *pad, +gboolean gst_ghost_pad_activate_mode_default (GstPad *pad, + GstObject *parent, + GstPadMode mode, gboolean active); -gboolean gst_ghost_pad_activate_push_default (GstPad *pad, - gboolean active); -gboolean gst_ghost_pad_internal_activate_push_default - (GstPad *pad, - gboolean active); -gboolean gst_ghost_pad_internal_activate_pull_default +gboolean gst_ghost_pad_internal_activate_mode_default (GstPad *pad, + GstObject *parent, + GstPadMode mode, gboolean active); GstProxyPad * gst_proxy_pad_get_internal (GstProxyPad *pad); -const GstQueryType * gst_proxy_pad_query_type_default (GstPad *pad); gboolean gst_proxy_pad_event_default (GstPad *pad, + GstObject *parent, GstEvent *event); gboolean gst_proxy_pad_query_default (GstPad *pad, + GstObject *parent, GstQuery *query); GstIterator * gst_proxy_pad_iterate_internal_links_default - (GstPad *pad); + (GstPad *pad, + GstObject *parent); GstFlowReturn gst_proxy_pad_chain_default (GstPad *pad, + GstObject *parent, GstBuffer *buffer); GstFlowReturn gst_proxy_pad_chain_list_default (GstPad *pad, + GstObject *parent, GstBufferList *list); GstFlowReturn gst_proxy_pad_getrange_default (GstPad *pad, - guint64 offset, + GstObject *parent, + guint64 offset, guint size, GstBuffer **buffer); -GstCaps * gst_proxy_pad_getcaps_default (GstPad *pad, - GstCaps *filter); -gboolean gst_proxy_pad_acceptcaps_default (GstPad *pad, - GstCaps *caps); -void gst_proxy_pad_fixatecaps_default (GstPad *pad, - GstCaps *caps); void gst_proxy_pad_unlink_default (GstPad *pad);
    @@ -179,7 +177,7 @@ Will ref the target.

    Returns :

    -a new GstPad, or NULL in case of an error. [transfer full] +a new GstPad, or NULL in case of an error. [transfer floating] @@ -389,7 +387,7 @@ Invoke the default unlink function of a ghost pad. the GstPad to link.
    -

    Since 0.10.35

    +

    Since 0.10.36


    @@ -417,15 +415,17 @@ Invoke the default link function of a ghost pad.
    -

    Since 0.10.35

    +

    Since 0.10.36


    -

    gst_ghost_pad_activate_pull_default ()

    -
    gboolean            gst_ghost_pad_activate_pull_default (GstPad *pad,
    +

    gst_ghost_pad_activate_mode_default ()

    +
    gboolean            gst_ghost_pad_activate_mode_default (GstPad *pad,
    +                                                         GstObject *parent,
    +                                                         GstPadMode mode,
                                                              gboolean active);

    -Invoke the default activate pull function of a ghost pad. +Invoke the default activate mode function of a ghost pad.

    @@ -435,32 +435,12 @@ Invoke the default activate pull function of a ghost pad. - - + + - - - - -
    the GstPad to activate or deactivate.

    active :

    whether the pad should be active or not.

    parent :

    the parent of pad or NULL

    Returns :

    -TRUE if the operation was successful.
    -

    Since 0.10.35

    -
    -
    -
    -

    gst_ghost_pad_activate_push_default ()

    -
    gboolean            gst_ghost_pad_activate_push_default (GstPad *pad,
    -                                                         gboolean active);
    -

    -Invoke the default activate push function of a ghost pad. -

    -
    -- - - - + + @@ -473,16 +453,17 @@ Invoke the default activate push function of a ghost pad.

    pad :

    the GstPad to activate or deactivate.

    mode :

    the requested activation mode

    active :

    -

    Since 0.10.35


    -

    gst_ghost_pad_internal_activate_push_default ()

    -
    gboolean            gst_ghost_pad_internal_activate_push_default
    +

    gst_ghost_pad_internal_activate_mode_default ()

    +
    gboolean            gst_ghost_pad_internal_activate_mode_default
                                                             (GstPad *pad,
    +                                                         GstObject *parent,
    +                                                         GstPadMode mode,
                                                              gboolean active);

    -Invoke the default activate push function of a proxy pad that is +Invoke the default activate mode function of a proxy pad that is owned by a ghost pad.

    @@ -493,34 +474,12 @@ owned by a ghost pad. - - + + - - - - -
    the GstPad to activate or deactivate.

    active :

    whether the pad should be active or not.

    parent :

    the parent of pad or NULL

    Returns :

    -TRUE if the operation was successful.
    -

    Since 0.10.35

    -
    -
    -
    -

    gst_ghost_pad_internal_activate_pull_default ()

    -
    gboolean            gst_ghost_pad_internal_activate_pull_default
    -                                                        (GstPad *pad,
    -                                                         gboolean active);
    -

    -Invoke the default activate pull function of a proxy pad that is -owned by a ghost pad. -

    -
    -- - - - + + @@ -533,7 +492,6 @@ owned by a ghost pad.

    pad :

    the GstPad to activate or deactivate.

    mode :

    the requested activation mode

    active :

    -

    Since 0.10.35


    @@ -562,36 +520,13 @@ Unref target pad after usage. [Since 0.10.35

    -
    -
    -
    -

    gst_proxy_pad_query_type_default ()

    -
    const GstQueryType * gst_proxy_pad_query_type_default   (GstPad *pad);
    -

    -Invoke the default query type handler of the proxy pad. -

    -
    -- - - - - - - - - - -

    pad :

    a GstPad.

    Returns :

    a zero-terminated array -of GstQueryType. [transfer none][array zero-terminated=1] -
    -

    Since 0.10.35

    +

    Since 0.10.36


    gst_proxy_pad_event_default ()

    gboolean            gst_proxy_pad_event_default         (GstPad *pad,
    +                                                         GstObject *parent,
                                                              GstEvent *event);

    Invoke the default event of the proxy pad. @@ -604,6 +539,10 @@ Invoke the default event of the proxy pad. a GstPad to push the event to. +

    parent :

    +the parent of pad or NULL + +

    event :

    the GstEvent to send to the pad. [transfer full] @@ -614,12 +553,13 @@ Invoke the default event of the proxy pad.
    -

    Since 0.10.35

    +

    Since 0.10.36


    gst_proxy_pad_query_default ()

    gboolean            gst_proxy_pad_query_default         (GstPad *pad,
    +                                                         GstObject *parent,
                                                              GstQuery *query);

    Invoke the default query function of the proxy pad. @@ -632,6 +572,10 @@ Invoke the default query function of the proxy pad. a GstPad to invoke the default query on. +

    parent :

    +the parent of pad or NULL + +

    query :

    the GstQuery to perform. [transfer none] @@ -642,18 +586,42 @@ Invoke the default query function of the proxy pad.
    -

    Since 0.10.35

    +

    Since 0.10.36


    gst_proxy_pad_iterate_internal_links_default ()

    GstIterator *       gst_proxy_pad_iterate_internal_links_default
    -                                                        (GstPad *pad);
    + (GstPad *pad, + GstObject *parent);
    +

    +Invoke the default iterate internal links function of the proxy pad. +

    +
    ++ + + + + + + + + + + + + + +

    pad :

    the GstPad to get the internal links of.

    parent :

    the parent of pad or NULL

    Returns :

    a GstIterator of GstPad, or NULL if pad has no parent. Unref each +returned pad with gst_object_unref().
    +

    Since 0.10.36


    gst_proxy_pad_chain_default ()

    GstFlowReturn       gst_proxy_pad_chain_default         (GstPad *pad,
    +                                                         GstObject *parent,
                                                              GstBuffer *buffer);

    Invoke the default chain function of the proxy pad. @@ -666,6 +634,10 @@ Invoke the default chain function of the proxy pad. a sink GstPad, returns GST_FLOW_ERROR if not. +

    parent :

    +the parent of pad or NULL + +

    buffer :

    the GstBuffer to send, return GST_FLOW_ERROR if not. [transfer full] @@ -677,12 +649,13 @@ if not. [Since 0.10.35

    +

    Since 0.10.36


    gst_proxy_pad_chain_list_default ()

    GstFlowReturn       gst_proxy_pad_chain_list_default    (GstPad *pad,
    +                                                         GstObject *parent,
                                                              GstBufferList *list);

    Invoke the default chain list function of the proxy pad. @@ -695,6 +668,10 @@ Invoke the default chain list function of the proxy pad. a sink GstPad, returns GST_FLOW_ERROR if not. +

    parent :

    +the parent of pad or NULL + +

    list :

    the GstBufferList to send, return GST_FLOW_ERROR if not. [transfer full] @@ -706,96 +683,19 @@ if not. [Since 0.10.35

    +

    Since 0.10.36


    gst_proxy_pad_getrange_default ()

    GstFlowReturn       gst_proxy_pad_getrange_default      (GstPad *pad,
    -                                                         guint64 offset,
    +                                                         GstObject *parent,
    +                                                         guint64 offset,
                                                              guint size,
                                                              GstBuffer **buffer);

    -

    gst_proxy_pad_getcaps_default ()

    -
    GstCaps *           gst_proxy_pad_getcaps_default       (GstPad *pad,
    -                                                         GstCaps *filter);
    -

    -Invoke the default getcaps function of the proxy pad. -

    -
    -- - - - - - - - - - - - - - -

    pad :

    a GstPad to get the capabilities of.

    filter :

    a GstCaps filter.

    Returns :

    the caps of the pad with incremented ref-count. [transfer full] -
    -

    Since 0.10.35

    -
    -
    -
    -

    gst_proxy_pad_acceptcaps_default ()

    -
    gboolean            gst_proxy_pad_acceptcaps_default    (GstPad *pad,
    -                                                         GstCaps *caps);
    -

    -Invoke the default acceptcaps function of the proxy pad. -

    -
    -- - - - - - - - - - - - - - -

    pad :

    a GstPad to check

    caps :

    a GstCaps to check on the pad

    Returns :

    TRUE if the pad can accept the caps.
    -

    Since 0.10.35

    -
    -
    -
    -

    gst_proxy_pad_fixatecaps_default ()

    -
    void                gst_proxy_pad_fixatecaps_default    (GstPad *pad,
    -                                                         GstCaps *caps);
    -

    -Invoke the default fixatecaps function of the proxy pad. -

    -
    -- - - - - - - - - - -

    pad :

    a GstPad to fixate

    caps :

    the GstCaps to fixate
    -

    Since 0.10.35

    -
    -
    -

    gst_proxy_pad_unlink_default ()

    void                gst_proxy_pad_unlink_default        (GstPad *pad);

    @@ -808,7 +708,7 @@ Invoke the default unlink function of the proxy pad. a GstPad to unlink

    -

    Since 0.10.35

    +

    Since 0.10.36

    diff --git a/docs/gst/html/GstIndex.html b/docs/gst/html/GstIndex.html deleted file mode 100644 index 524d8bd..0000000 --- a/docs/gst/html/GstIndex.html +++ /dev/null @@ -1,1448 +0,0 @@ - - - - -GstIndex - - - - - - - - - - - - - - - - - - - -
    -
    -
    - - -
    -

    GstIndex

    -

    GstIndex — Generate indexes on objects

    -
    -
    -

    Synopsis

    -
    -#include <gst/gst.h>
    -
    -struct              GstIndex;
    -struct              GstIndexEntry;
    -struct              GstIndexGroup;
    -enum                GstIndexCertainty;
    -enum                GstIndexEntryType;
    -enum                GstIndexLookupMethod;
    -#define             GST_INDEX_NASSOCS                   (entry)
    -#define             GST_INDEX_ASSOC_FLAGS               (entry)
    -#define             GST_INDEX_ASSOC_FORMAT              (entry,
    -                                                         i)
    -#define             GST_INDEX_ASSOC_VALUE               (entry,
    -                                                         i)
    -struct              GstIndexAssociation;
    -enum                GstAssocFlags;
    -#define             GST_INDEX_FORMAT_FORMAT             (entry)
    -#define             GST_INDEX_FORMAT_KEY                (entry)
    -#define             GST_INDEX_ID_INVALID
    -#define             GST_INDEX_ID_DESCRIPTION            (entry)
    -gboolean            (*GstIndexFilter)                   (GstIndex *index,
    -                                                         GstIndexEntry *entry,
    -                                                         gpointer user_data);
    -enum                GstIndexResolverMethod;
    -gboolean            (*GstIndexResolver)                 (GstIndex *index,
    -                                                         GstObject *writer,
    -                                                         gchar **writer_string,
    -                                                         gpointer user_data);
    -enum                GstIndexFlags;
    -#define             GST_INDEX_IS_READABLE               (obj)
    -#define             GST_INDEX_IS_WRITABLE               (obj)
    -GstIndex *          gst_index_new                       (void);
    -void                gst_index_commit                    (GstIndex *index,
    -                                                         gint id);
    -gint                gst_index_get_group                 (GstIndex *index);
    -gint                gst_index_new_group                 (GstIndex *index);
    -gboolean            gst_index_set_group                 (GstIndex *index,
    -                                                         gint groupnum);
    -void                gst_index_set_certainty             (GstIndex *index,
    -                                                         GstIndexCertainty certainty);
    -GstIndexCertainty   gst_index_get_certainty             (GstIndex *index);
    -void                gst_index_set_filter                (GstIndex *index,
    -                                                         GstIndexFilter filter,
    -                                                         gpointer user_data);
    -void                gst_index_set_filter_full           (GstIndex *index,
    -                                                         GstIndexFilter filter,
    -                                                         gpointer user_data,
    -                                                         GDestroyNotify user_data_destroy);
    -void                gst_index_set_resolver              (GstIndex *index,
    -                                                         GstIndexResolver resolver,
    -                                                         gpointer user_data);
    -void                gst_index_set_resolver_full         (GstIndex *index,
    -                                                         GstIndexResolver resolver,
    -                                                         gpointer user_data,
    -                                                         GDestroyNotify user_data_destroy);
    -gboolean            gst_index_get_writer_id             (GstIndex *index,
    -                                                         GstObject *writer,
    -                                                         gint *id);
    -GstIndexEntry *     gst_index_add_format                (GstIndex *index,
    -                                                         gint id,
    -                                                         GstFormat format);
    -GstIndexEntry *     gst_index_add_association           (GstIndex *index,
    -                                                         gint id,
    -                                                         GstAssocFlags flags,
    -                                                         GstFormat format,
    -                                                         gint64 value,
    -                                                         ...);
    -GstIndexEntry *     gst_index_add_associationv          (GstIndex *index,
    -                                                         gint id,
    -                                                         GstAssocFlags flags,
    -                                                         gint n,
    -                                                         const GstIndexAssociation *list);
    -GstIndexEntry *     gst_index_add_object                (GstIndex *index,
    -                                                         gint id,
    -                                                         gchar *key,
    -                                                         GType type,
    -                                                         gpointer object);
    -GstIndexEntry *     gst_index_add_id                    (GstIndex *index,
    -                                                         gint id,
    -                                                         gchar *description);
    -GstIndexEntry *     gst_index_get_assoc_entry           (GstIndex *index,
    -                                                         gint id,
    -                                                         GstIndexLookupMethod method,
    -                                                         GstAssocFlags flags,
    -                                                         GstFormat format,
    -                                                         gint64 value);
    -GstIndexEntry *     gst_index_get_assoc_entry_full      (GstIndex *index,
    -                                                         gint id,
    -                                                         GstIndexLookupMethod method,
    -                                                         GstAssocFlags flags,
    -                                                         GstFormat format,
    -                                                         gint64 value,
    -                                                         GCompareDataFunc func,
    -                                                         gpointer user_data);
    -GstIndexEntry *     gst_index_entry_copy                (GstIndexEntry *entry);
    -void                gst_index_entry_free                (GstIndexEntry *entry);
    -gboolean            gst_index_entry_assoc_map           (GstIndexEntry *entry,
    -                                                         GstFormat format,
    -                                                         gint64 *value);
    -
    -
    -
    -

    Object Hierarchy

    -
    -  GObject
    -   +----GInitiallyUnowned
    -         +----GstObject
    -               +----GstIndex
    -
    -
    -
    -

    Properties

    -
    -  "resolver"                 GstIndexResolver      : Read / Write
    -
    -
    -
    -

    Signals

    -
    -  "entry-added"                                    : Run Last
    -
    -
    -
    -

    Description

    -

    -GstIndex is used to generate a stream index of one or more elements -in a pipeline. -

    -

    -Elements will overload the set_index and get_index virtual methods in -GstElement. When streaming data, the element will add index entries if it -has an index set. -

    -

    -Each element that adds to the index will do that using a writer_id. The -writer_id is obtained from gst_index_get_writer_id(). -

    -

    -The application that wants to index the stream will create a new index object -using gst_index_new() or gst_index_factory_make(). The index is assigned to a -specific element, a bin or the whole pipeline. This will cause indexable -elements to add entires to the index while playing. -

    -
    -
    -

    Details

    -
    -

    struct GstIndex

    -
    struct GstIndex;
    -

    -Opaque GstIndex structure. -

    -
    -
    -
    -

    struct GstIndexEntry

    -
    struct GstIndexEntry {
    -};
    -
    -

    -The basic element of an index. -

    -
    -
    -
    -

    struct GstIndexGroup

    -
    struct GstIndexGroup {
    -};
    -
    -

    -A group of related entries in an index. -

    -
    -
    -
    -

    enum GstIndexCertainty

    -
    typedef enum {
    -  GST_INDEX_UNKNOWN,
    -  GST_INDEX_CERTAIN,
    -  GST_INDEX_FUZZY
    -} GstIndexCertainty;
    -
    -

    -The certainty of a group in the index. -

    -
    -- - - - - - - - - - - - - - -

    GST_INDEX_UNKNOWN

    accuracy is not known -

    GST_INDEX_CERTAIN

    accuracy is perfect -

    GST_INDEX_FUZZY

    accuracy is fuzzy -
    -
    -
    -
    -

    enum GstIndexEntryType

    -
    typedef enum {
    -  GST_INDEX_ENTRY_ID,
    -  GST_INDEX_ENTRY_ASSOCIATION,
    -  GST_INDEX_ENTRY_OBJECT,
    -  GST_INDEX_ENTRY_FORMAT
    -} GstIndexEntryType;
    -
    -

    -The different types of entries in the index. -

    -
    -- - - - - - - - - - - - - - - - - - -

    GST_INDEX_ENTRY_ID

    This entry is an id that maps an index id to its owner object -

    GST_INDEX_ENTRY_ASSOCIATION

    This entry is an association between formats -

    GST_INDEX_ENTRY_OBJECT

    An object -

    GST_INDEX_ENTRY_FORMAT

    A format definition -
    -
    -
    -
    -

    enum GstIndexLookupMethod

    -
    typedef enum {
    -  GST_INDEX_LOOKUP_EXACT,
    -  GST_INDEX_LOOKUP_BEFORE,
    -  GST_INDEX_LOOKUP_AFTER
    -} GstIndexLookupMethod;
    -
    -

    -Specify the method to find an index entry in the index. -

    -
    -- - - - - - - - - - - - - - -

    GST_INDEX_LOOKUP_EXACT

    There has to be an exact indexentry with the given format/value -

    GST_INDEX_LOOKUP_BEFORE

    The exact entry or the one before it -

    GST_INDEX_LOOKUP_AFTER

    The exact entry or the one after it -
    -
    -
    -
    -

    GST_INDEX_NASSOCS()

    -
    #define GST_INDEX_NASSOCS(entry)                ((entry)->data.assoc.nassocs)
    -
    -

    -Get the number of associations in the entry. -

    -
    -- - - - -

    entry :

    The entry to query
    -
    -
    -
    -

    GST_INDEX_ASSOC_FLAGS()

    -
    #define GST_INDEX_ASSOC_FLAGS(entry)            ((entry)->data.assoc.flags)
    -
    -

    -Get the flags for this entry. -

    -
    -- - - - -

    entry :

    The entry to query
    -
    -
    -
    -

    GST_INDEX_ASSOC_FORMAT()

    -
    #define GST_INDEX_ASSOC_FORMAT(entry,i)         ((entry)->data.assoc.assocs[(i)].format)
    -
    -

    -Get the i-th format of the entry. -

    -
    -- - - - - - - - - - -

    entry :

    The entry to query

    i :

    The format index
    -
    -
    -
    -

    GST_INDEX_ASSOC_VALUE()

    -
    #define GST_INDEX_ASSOC_VALUE(entry,i)          ((entry)->data.assoc.assocs[(i)].value)
    -
    -

    -Get the i-th value of the entry. -

    -
    -- - - - - - - - - - -

    entry :

    The entry to query

    i :

    The value index
    -
    -
    -
    -

    struct GstIndexAssociation

    -
    struct GstIndexAssociation {
    -  GstFormat     format;
    -  gint64        value;
    -};
    -
    -

    -An association in an entry. -

    -
    -- - - - - - - - - - -

    GstFormat format;

    the format of the association

    gint64 value;

    the value of the association
    -
    -
    -
    -

    enum GstAssocFlags

    -
    typedef enum {
    -  GST_ASSOCIATION_FLAG_NONE       = 0,
    -  GST_ASSOCIATION_FLAG_KEY_UNIT   = (1 << 0),
    -  GST_ASSOCIATION_FLAG_DELTA_UNIT = (1 << 1),
    -
    -  /* new flags should start here */
    -  GST_ASSOCIATION_FLAG_LAST     = (1 << 8)
    -} GstAssocFlags;
    -
    -

    -Flags for an association entry. -

    -
    -- - - - - - - - - - - - - - - - - - -

    GST_ASSOCIATION_FLAG_NONE

    no extra flags -

    GST_ASSOCIATION_FLAG_KEY_UNIT

    the entry marks a key unit, a key unit is one - that marks a place where one can randomly seek to. -

    GST_ASSOCIATION_FLAG_DELTA_UNIT

    the entry marks a delta unit, a delta unit - is one that marks a place where one can relatively seek to. -

    GST_ASSOCIATION_FLAG_LAST

    extra user defined flags should start here. -
    -
    -
    -
    -

    GST_INDEX_FORMAT_FORMAT()

    -
    #define GST_INDEX_FORMAT_FORMAT(entry)          ((entry)->data.format.format)
    -
    -

    -Get the format of the format entry -

    -
    -- - - - -

    entry :

    The entry to query
    -
    -
    -
    -

    GST_INDEX_FORMAT_KEY()

    -
    #define GST_INDEX_FORMAT_KEY(entry)             ((entry)->data.format.key)
    -
    -

    -Get the key of the format entry -

    -
    -- - - - -

    entry :

    The entry to query
    -
    -
    -
    -

    GST_INDEX_ID_INVALID

    -
    #define GST_INDEX_ID_INVALID                    (-1)
    -
    -

    -Constant for an invalid index id -

    -
    -
    -
    -

    GST_INDEX_ID_DESCRIPTION()

    -
    #define GST_INDEX_ID_DESCRIPTION(entry)         ((entry)->data.id.description)
    -
    -

    -Get the description of the id entry -

    -
    -- - - - -

    entry :

    The entry to query
    -
    -
    -
    -

    GstIndexFilter ()

    -
    gboolean            (*GstIndexFilter)                   (GstIndex *index,
    -                                                         GstIndexEntry *entry,
    -                                                         gpointer user_data);
    -

    -Function to filter out entries in the index. -

    -
    -- - - - - - - - - - - - - - - - - - -

    index :

    The index being queried

    entry :

    The entry to be added.

    user_data :

    User data passed to the function.

    Returns :

    This function should return TRUE if the entry is to be added -to the index, FALSE otherwise.
    -
    -
    -
    -

    enum GstIndexResolverMethod

    -
    typedef enum {
    -  GST_INDEX_RESOLVER_CUSTOM,
    -  GST_INDEX_RESOLVER_GTYPE,
    -  GST_INDEX_RESOLVER_PATH
    -} GstIndexResolverMethod;
    -
    -

    -The method used to resolve index writers -

    -
    -- - - - - - - - - - - - - - -

    GST_INDEX_RESOLVER_CUSTOM

    Use a custom resolver -

    GST_INDEX_RESOLVER_GTYPE

    Resolve based on the GType of the object -

    GST_INDEX_RESOLVER_PATH

    Resolve on the path in graph -
    -
    -
    -
    -

    GstIndexResolver ()

    -
    gboolean            (*GstIndexResolver)                 (GstIndex *index,
    -                                                         GstObject *writer,
    -                                                         gchar **writer_string,
    -                                                         gpointer user_data);
    -

    -Function to resolve ids to writer descriptions. -

    -
    -- - - - - - - - - - - - - - - - - - - - - - -

    index :

    the index being queried.

    writer :

    The object that wants to write

    writer_string :

    A description of the writer.

    user_data :

    user_data as registered

    Returns :

    -TRUE if an id could be assigned to the writer.
    -
    -
    -
    -

    enum GstIndexFlags

    -
    typedef enum {
    -  GST_INDEX_WRITABLE    = (GST_OBJECT_FLAG_LAST << 0),
    -  GST_INDEX_READABLE    = (GST_OBJECT_FLAG_LAST << 1),
    -
    -  GST_INDEX_FLAG_LAST   = (GST_OBJECT_FLAG_LAST << 8)
    -} GstIndexFlags;
    -
    -

    -Flags for this index -

    -
    -- - - - - - - - - - - - - - -

    GST_INDEX_WRITABLE

    The index is writable -

    GST_INDEX_READABLE

    The index is readable -

    GST_INDEX_FLAG_LAST

    First flag that can be used by subclasses -
    -
    -
    -
    -

    GST_INDEX_IS_READABLE()

    -
    #define GST_INDEX_IS_READABLE(obj)    (GST_OBJECT_FLAG_IS_SET (obj, GST_INDEX_READABLE))
    -
    -

    -Check if the index can be read from -

    -
    -- - - - -

    obj :

    The index to check
    -
    -
    -
    -

    GST_INDEX_IS_WRITABLE()

    -
    #define GST_INDEX_IS_WRITABLE(obj)    (GST_OBJECT_FLAG_IS_SET (obj, GST_INDEX_WRITABLE))
    -
    -

    -Check if the index can be written to -

    -
    -- - - - -

    obj :

    The index to check
    -
    -
    -
    -

    gst_index_new ()

    -
    GstIndex *          gst_index_new                       (void);
    -

    -Create a new dummy index object. Use gst_element_set_index() to assign that -to an element or pipeline. This index is not storing anything, but will -still emit e.g. the "entry-added" signal. -

    -
    -- - - - -

    Returns :

    a new index object. [transfer full] -
    -
    -
    -
    -

    gst_index_commit ()

    -
    void                gst_index_commit                    (GstIndex *index,
    -                                                         gint id);
    -

    -Tell the index that the writer with the given id is done -with this index and is not going to write any more entries -to it. -

    -
    -- - - - - - - - - - -

    index :

    the index to commit

    id :

    the writer that commited the index
    -
    -
    -
    -

    gst_index_get_group ()

    -
    gint                gst_index_get_group                 (GstIndex *index);
    -

    -Get the id of the current group. -

    -
    -- - - - - - - - - - -

    index :

    the index to get the current group from

    Returns :

    the id of the current group.
    -
    -
    -
    -

    gst_index_new_group ()

    -
    gint                gst_index_new_group                 (GstIndex *index);
    -

    -Create a new group for the given index. It will be -set as the current group. -

    -
    -- - - - - - - - - - -

    index :

    the index to create the new group in

    Returns :

    the id of the newly created group.
    -
    -
    -
    -

    gst_index_set_group ()

    -
    gboolean            gst_index_set_group                 (GstIndex *index,
    -                                                         gint groupnum);
    -

    -Set the current groupnumber to the given argument. -

    -
    -- - - - - - - - - - - - - - -

    index :

    the index to set the new group in

    groupnum :

    the groupnumber to set

    Returns :

    TRUE if the operation succeeded, FALSE if the group -did not exist.
    -
    -
    -
    -

    gst_index_set_certainty ()

    -
    void                gst_index_set_certainty             (GstIndex *index,
    -                                                         GstIndexCertainty certainty);
    -

    -Set the certainty of the given index. -

    -
    -- - - - - - - - - - -

    index :

    the index to set the certainty on

    certainty :

    the certainty to set
    -
    -
    -
    -

    gst_index_get_certainty ()

    -
    GstIndexCertainty   gst_index_get_certainty             (GstIndex *index);
    -

    -Get the certainty of the given index. -

    -
    -- - - - - - - - - - -

    index :

    the index to get the certainty of

    Returns :

    the certainty of the index.
    -
    -
    -
    -

    gst_index_set_filter ()

    -
    void                gst_index_set_filter                (GstIndex *index,
    -                                                         GstIndexFilter filter,
    -                                                         gpointer user_data);
    -

    -Lets the app register a custom filter function so that -it can select what entries should be stored in the index. -

    -
    -- - - - - - - - - - - - - - -

    index :

    the index to register the filter on

    filter :

    the filter to register

    user_data :

    data passed to the filter function
    -
    -
    -
    -

    gst_index_set_filter_full ()

    -
    void                gst_index_set_filter_full           (GstIndex *index,
    -                                                         GstIndexFilter filter,
    -                                                         gpointer user_data,
    -                                                         GDestroyNotify user_data_destroy);
    -

    -Lets the app register a custom filter function so that -it can select what entries should be stored in the index. -

    -
    -- - - - - - - - - - - - - - - - - - -

    index :

    the index to register the filter on

    filter :

    the filter to register

    user_data :

    data passed to the filter function

    user_data_destroy :

    function to call when user_data is unset
    -
    -
    -
    -

    gst_index_set_resolver ()

    -
    void                gst_index_set_resolver              (GstIndex *index,
    -                                                         GstIndexResolver resolver,
    -                                                         gpointer user_data);
    -

    -Lets the app register a custom function to map index -ids to writer descriptions. -

    -
    -- - - - - - - - - - - - - - -

    index :

    the index to register the resolver on

    resolver :

    the resolver to register

    user_data :

    data passed to the resolver function
    -
    -
    -
    -

    gst_index_set_resolver_full ()

    -
    void                gst_index_set_resolver_full         (GstIndex *index,
    -                                                         GstIndexResolver resolver,
    -                                                         gpointer user_data,
    -                                                         GDestroyNotify user_data_destroy);
    -

    -Lets the app register a custom function to map index -ids to writer descriptions. -

    -
    -- - - - - - - - - - - - - - - - - - -

    index :

    the index to register the resolver on

    resolver :

    the resolver to register

    user_data :

    data passed to the resolver function

    user_data_destroy :

    destroy function for user_data -
    -

    Since 0.10.18

    -
    -
    -
    -

    gst_index_get_writer_id ()

    -
    gboolean            gst_index_get_writer_id             (GstIndex *index,
    -                                                         GstObject *writer,
    -                                                         gint *id);
    -

    -Before entries can be added to the index, a writer -should obtain a unique id. The methods to add new entries -to the index require this id as an argument. -

    -

    -The application can implement a custom function to map the writer object -to a string. That string will be used to register or look up an id -in the index. -

    -

    -

    -
    -

    Note

    -The caller must not hold writer's GST_OBJECT_LOCK, as the default -resolver may call functions that take the object lock as well, and -the lock is not recursive. -
    -

    -

    -
    -- - - - - - - - - - - - - - - - - - -

    index :

    the index to get a unique write id for

    writer :

    the GstObject to allocate an id for

    id :

    a pointer to a gint to hold the id

    Returns :

    TRUE if the writer would be mapped to an id.
    -
    -
    -
    -

    gst_index_add_format ()

    -
    GstIndexEntry *     gst_index_add_format                (GstIndex *index,
    -                                                         gint id,
    -                                                         GstFormat format);
    -

    -Adds a format entry into the index. This function is -used to map dynamic GstFormat ids to their original -format key. -

    -

    -Free-function: gst_index_entry_free -

    -
    -- - - - - - - - - - - - - - - - - - -

    index :

    the index to add the entry to

    id :

    the id of the index writer

    format :

    the format to add to the index

    Returns :

    a pointer to the newly added entry in the index. [transfer full] -
    -
    -
    -
    -

    gst_index_add_association ()

    -
    GstIndexEntry *     gst_index_add_association           (GstIndex *index,
    -                                                         gint id,
    -                                                         GstAssocFlags flags,
    -                                                         GstFormat format,
    -                                                         gint64 value,
    -                                                         ...);
    -

    -Associate given format/value pairs with each other. -Be sure to pass gint64 values to this functions varargs, -you might want to use a gint64 cast to be sure. -

    -
    -- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    index :

    the index to add the entry to

    id :

    the id of the index writer

    flags :

    optinal flags for this entry

    format :

    the format of the value

    value :

    the value

    ... :

    other format/value pairs or 0 to end the list

    Returns :

    a pointer to the newly added entry in the index.
    -
    -
    -
    -

    gst_index_add_associationv ()

    -
    GstIndexEntry *     gst_index_add_associationv          (GstIndex *index,
    -                                                         gint id,
    -                                                         GstAssocFlags flags,
    -                                                         gint n,
    -                                                         const GstIndexAssociation *list);
    -

    -Associate given format/value pairs with each other. -

    -
    -- - - - - - - - - - - - - - - - - - - - - - - - - - -

    index :

    the index to add the entry to

    id :

    the id of the index writer

    flags :

    optinal flags for this entry

    n :

    number of associations

    list :

    list of associations

    Returns :

    a pointer to the newly added entry in the index.
    -
    -
    -
    -

    gst_index_add_object ()

    -
    GstIndexEntry *     gst_index_add_object                (GstIndex *index,
    -                                                         gint id,
    -                                                         gchar *key,
    -                                                         GType type,
    -                                                         gpointer object);
    -

    -Add the given object to the index with the given key. -

    -

    -This function is not yet implemented. -

    -
    -- - - - - - - - - - - - - - - - - - - - - - - - - - -

    index :

    the index to add the object to

    id :

    the id of the index writer

    key :

    a key for the object

    type :

    the GType of the object

    object :

    a pointer to the object to add

    Returns :

    a pointer to the newly added entry in the index.
    -
    -
    -
    -

    gst_index_add_id ()

    -
    GstIndexEntry *     gst_index_add_id                    (GstIndex *index,
    -                                                         gint id,
    -                                                         gchar *description);
    -

    -Add an id entry into the index. -

    -
    -- - - - - - - - - - - - - - - - - - -

    index :

    the index to add the entry to

    id :

    the id of the index writer

    description :

    the description of the index writer

    Returns :

    a pointer to the newly added entry in the index.
    -
    -
    -
    -

    gst_index_get_assoc_entry ()

    -
    GstIndexEntry *     gst_index_get_assoc_entry           (GstIndex *index,
    -                                                         gint id,
    -                                                         GstIndexLookupMethod method,
    -                                                         GstAssocFlags flags,
    -                                                         GstFormat format,
    -                                                         gint64 value);
    -

    -Finds the given format/value in the index -

    -
    -- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    index :

    the index to search

    id :

    the id of the index writer

    method :

    The lookup method to use

    flags :

    Flags for the entry

    format :

    the format of the value

    value :

    the value to find

    Returns :

    the entry associated with the value or NULL if the -value was not found.
    -
    -
    -
    -

    gst_index_get_assoc_entry_full ()

    -
    GstIndexEntry *     gst_index_get_assoc_entry_full      (GstIndex *index,
    -                                                         gint id,
    -                                                         GstIndexLookupMethod method,
    -                                                         GstAssocFlags flags,
    -                                                         GstFormat format,
    -                                                         gint64 value,
    -                                                         GCompareDataFunc func,
    -                                                         gpointer user_data);
    -

    -Finds the given format/value in the index with the given -compare function and user_data. -

    -
    -- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    index :

    the index to search

    id :

    the id of the index writer

    method :

    The lookup method to use

    flags :

    Flags for the entry

    format :

    the format of the value

    value :

    the value to find

    func :

    the function used to compare entries

    user_data :

    user data passed to the compare function

    Returns :

    the entry associated with the value or NULL if the -value was not found.
    -
    -
    -
    -

    gst_index_entry_copy ()

    -
    GstIndexEntry *     gst_index_entry_copy                (GstIndexEntry *entry);
    -

    -Copies an entry and returns the result. -

    -

    -Free-function: gst_index_entry_free -

    -
    -- - - - - - - - - - -

    entry :

    the entry to copy

    Returns :

    a newly allocated GstIndexEntry. [transfer full] -
    -
    -
    -
    -

    gst_index_entry_free ()

    -
    void                gst_index_entry_free                (GstIndexEntry *entry);
    -

    -Free the memory used by the given entry. -

    -
    -- - - - -

    entry :

    the entry to free. [transfer full] -
    -
    -
    -
    -

    gst_index_entry_assoc_map ()

    -
    gboolean            gst_index_entry_assoc_map           (GstIndexEntry *entry,
    -                                                         GstFormat format,
    -                                                         gint64 *value);
    -

    -Gets alternative formats associated with the indexentry. -

    -
    -- - - - - - - - - - - - - - - - - - -

    entry :

    the index to search

    format :

    the format of the value the find

    value :

    a pointer to store the value

    Returns :

    TRUE if there was a value associated with the given -format.
    -
    -
    -
    -

    Property Details

    -
    -

    The "resolver" property

    -
      "resolver"                 GstIndexResolver      : Read / Write
    -

    Select a predefined object to string mapper.

    -

    Default value: GST_INDEX_RESOLVER_PATH

    -
    -
    -
    -

    Signal Details

    -
    -

    The "entry-added" signal

    -
    void                user_function                      (GstIndex      *gstindex,
    -                                                        GstIndexEntry *arg1,
    -                                                        gpointer       user_data)      : Run Last
    -

    -Is emitted when a new entry is added to the index. -

    -
    -- - - - - - - - - - - - - - -

    gstindex :

    the object which received the signal.

    arg1 :

    The entry added to the index.

    user_data :

    user data set when the signal handler was connected.
    -
    -
    -
    -

    See Also

    -GstIndexFactory -
    -
    - - - \ No newline at end of file diff --git a/docs/gst/html/GstIndexFactory.html b/docs/gst/html/GstIndexFactory.html deleted file mode 100644 index af41c90..0000000 --- a/docs/gst/html/GstIndexFactory.html +++ /dev/null @@ -1,206 +0,0 @@ - - - - -GstIndexFactory - - - - - - - - - - - - - - - - - - - -
    -
    -
    - - -
    -

    GstIndexFactory

    -

    GstIndexFactory — Create GstIndexes from a factory

    -
    -
    -

    Synopsis

    -
    -#include <gst/gst.h>
    -
    -struct              GstIndexFactory;
    -GstIndexFactory *   gst_index_factory_new               (const gchar *name,
    -                                                         const gchar *longdesc,
    -                                                         GType type);
    -void                gst_index_factory_destroy           (GstIndexFactory *factory);
    -GstIndexFactory *   gst_index_factory_find              (const gchar *name);
    -GstIndex *          gst_index_factory_create            (GstIndexFactory *factory);
    -GstIndex *          gst_index_factory_make              (const gchar *name);
    -
    -
    -
    -

    Object Hierarchy

    -
    -  GObject
    -   +----GInitiallyUnowned
    -         +----GstObject
    -               +----GstPluginFeature
    -                     +----GstIndexFactory
    -
    -
    -
    -

    Description

    -

    -GstIndexFactory is used to dynamically create GstIndex implementations. -

    -
    -
    -

    Details

    -
    -

    struct GstIndexFactory

    -
    struct GstIndexFactory;
    -

    -The GstIndexFactory object -

    -
    -
    -
    -

    gst_index_factory_new ()

    -
    GstIndexFactory *   gst_index_factory_new               (const gchar *name,
    -                                                         const gchar *longdesc,
    -                                                         GType type);
    -

    -Create a new indexfactory with the given parameters -

    -
    -- - - - - - - - - - - - - - - - - - -

    name :

    name of indexfactory to create

    longdesc :

    long description of indexfactory to create

    type :

    the GType of the GstIndex element of this factory

    Returns :

    a new GstIndexFactory. [transfer full] -
    -
    -
    -
    -

    gst_index_factory_destroy ()

    -
    void                gst_index_factory_destroy           (GstIndexFactory *factory);
    -

    -Removes the index from the global list. -

    -
    -- - - - -

    factory :

    factory to destroy
    -
    -
    -
    -

    gst_index_factory_find ()

    -
    GstIndexFactory *   gst_index_factory_find              (const gchar *name);
    -

    -Search for an indexfactory of the given name. -

    -
    -- - - - - - - - - - -

    name :

    name of indexfactory to find

    Returns :

    -GstIndexFactory if found, NULL otherwise. [transfer full] -
    -
    -
    -
    -

    gst_index_factory_create ()

    -
    GstIndex *          gst_index_factory_create            (GstIndexFactory *factory);
    -

    -Create a new GstIndex instance from the -given indexfactory. -

    -
    -- - - - - - - - - - -

    factory :

    the factory used to create the instance

    Returns :

    a new GstIndex instance. [transfer full] -
    -
    -
    -
    -

    gst_index_factory_make ()

    -
    GstIndex *          gst_index_factory_make              (const gchar *name);
    -

    -Create a new GstIndex instance from the -indexfactory with the given name. -

    -
    -- - - - - - - - - - -

    name :

    the name of the factory used to create the instance

    Returns :

    a new GstIndex instance. [transfer full] -
    -
    -
    -
    -

    See Also

    -GstIndex -
    -
    - - - \ No newline at end of file diff --git a/docs/gst/html/GstObject.html b/docs/gst/html/GstObject.html index 8c2f5c9..6f237bb 100644 --- a/docs/gst/html/GstObject.html +++ b/docs/gst/html/GstObject.html @@ -3,8 +3,8 @@ GstObject - - + + @@ -17,7 +17,7 @@ Prev Up Home -GStreamer 0.11 Core Reference Manual +GStreamer 1.0 Core Reference Manual Next @@ -27,8 +27,6 @@  |  Object Hierarchy  |  - Known Derived Interfaces -  |  Properties  |  Signals @@ -90,6 +88,36 @@ enum gboolean gst_object_replace (GstObject **oldobj, GstObject *newobj); gchar * gst_object_get_path_string (GstObject *object); +GstClockTime gst_object_suggest_next_sync (GstObject *object); +gboolean gst_object_sync_values (GstObject *object, + GstClockTime timestamp); +gboolean gst_object_has_active_control_bindings + (GstObject *object); +void gst_object_set_control_bindings_disabled + (GstObject *object, + gboolean disabled); +void gst_object_set_control_binding_disabled + (GstObject *object, + const gchar *property_name, + gboolean disabled); +gboolean gst_object_add_control_binding (GstObject *object, + GstControlBinding *binding); +GstControlBinding * gst_object_get_control_binding (GstObject *object, + const gchar *property_name); +gboolean gst_object_remove_control_binding (GstObject *object, + GstControlBinding *binding); +GValue * gst_object_get_value (GstObject *object, + const gchar *property_name, + GstClockTime timestamp); +gboolean gst_object_get_value_array (GstObject *object, + const gchar *property_name, + GstClockTime timestamp, + GstClockTime interval, + guint n_values, + GValue *values); +GstClockTime gst_object_get_control_rate (GstObject *object); +void gst_object_set_control_rate (GstObject *object, + GstClockTime control_rate);
    @@ -106,18 +134,13 @@ enum GstTask +----GstTaskPool +----GstClock + +----GstControlBinding + +----GstControlSource +----GstPlugin +----GstRegistry - +----GstIndex
    -

    Known Derived Interfaces

    -

    -GstObject is required by - GstChildProxy.

    -
    -

    Properties

       "name"                     gchar*                : Read / Write / Construct
    @@ -135,7 +158,7 @@ GstObject is required by
     

    GstObject provides a root for the object hierarchy tree filed in by the GStreamer library. It is currently a thin wrapper on top of -GObject. It is an abstract class that is not very usable on its own. +GInitiallyUnowned. It is an abstract class that is not very usable on its own.

    GstObject gives us basic refcounting, parenting functionality and locking. @@ -144,59 +167,77 @@ found under the same name in the base class of g_object_ref() becomes gst_object_ref()).

    -The most interesting difference between GstObject and GObject is the -"floating" reference count. A GObject is created with a reference count of -1, owned by the creator of the GObject. (The owner of a reference is the -code section that has the right to call gst_object_unref() in order to -remove that reference.) A GstObject is created with a reference count of 1 -also, but it isn't owned by anyone; Instead, the initial reference count -of a GstObject is "floating". The floating reference can be removed by -anyone at any time, by calling gst_object_sink(). gst_object_sink() does -nothing if an object is already sunk (has no floating reference). +Since GstObject dereives from GInitiallyUnowned, it also inherits the +floating reference. Be aware that functions such as gst_bin_add() and +gst_element_add_pad() take ownership of the floating reference.

    -When you add a GstElement to its parent container, the parent container will -do this: +In contrast to GObject instances, GstObject adds a name property. The functions +gst_object_set_name() and gst_object_get_name() are used to set/get the name +of the object.

    -
    -  gst_object_ref (GST_OBJECT (child_element));
    -  gst_object_sink (GST_OBJECT (child_element));
    -

    -This means that the container now owns a reference to the child element -(since it called gst_object_ref()), and the child element has no floating -reference.

    +
    +

    controlled properties

    -The purpose of the floating reference is to keep the child element alive -until you add it to a parent container, which then manages the lifetime of -the object itself: +Controlled properties offers a lightweight way to adjust gobject +properties over stream-time. It works by using time-stamped value pairs that +are queued for element-properties. At run-time the elements continously pull +values changes for the current stream-time.

    -
    -   element = gst_element_factory_make (factoryname, name);
    -   // element has one floating reference to keep it alive
    -   gst_bin_add (GST_BIN (bin), element);
    -   // element has one non-floating reference owned by the container
    -

    +What needs to be changed in a GstElement? +Very little - it is just two steps to make a plugin controllable!

    +
      +
    1. + mark gobject-properties paramspecs that make sense to be controlled, + by GST_PARAM_CONTROLLABLE. +

    2. +
    3. + when processing data (get, chain, loop function) at the beginning call + gst_object_sync_values(element,timestamp). + This will made the controller to update all gobject properties that are under + control with the current values based on timestamp. +

    4. +

    -Another effect of this is, that calling gst_object_unref() on a bin object, -will also destoy all the GstElement objects in it. The same is true for -calling gst_bin_remove().

    -Special care has to be taken for all methods that gst_object_sink() an object -since if the caller of those functions had a floating reference to the object, -the object reference is now invalid. +What needs to be done in applications? +Again its not a lot to change.

    +
      +
    1. + first put some properties under control, by calling + gst_object_control_properties (object, "prop1", "prop2",...); +

    2. +
    3. + create a GstControlSource. + csource = gst_interpolation_control_source_new(); + g_object_set (csource, "mode", GST_INTERPOLATION_MODE_LINEAR, NULL); +

    4. +
    5. + Attach the GstControlSource on the controller to a property. + gst_object_add_control_binding (object, gst_direct_control_binding_new (objetct, "prop1", csource)); +

    6. +
    7. + Set the control values + gst_timed_value_control_source_set ((GstTimedValueControlSource *)csource,0 * GST_SECOND, value1); + gst_timed_value_control_source_set ((GstTimedValueControlSource *)csource,1 * GST_SECOND, value2); +

    8. +
    9. + start your pipeline +

    10. +

    -In contrast to GObject instances, GstObject adds a name property. The functions -gst_object_set_name() and gst_object_get_name() are used to set/get the name -of the object.

    +

    -Last reviewed on 2005-11-09 (0.9.4) +

    +

    +Last reviewed on 2012-03-29 (0.11.3)

    @@ -204,7 +245,7 @@ Last reviewed on 2005-11-09 (0.9.4)

    struct GstObject

    struct GstObject {
    -  GMutex        *lock;        /* object LOCK */
    +  GMutex         lock;        /* object LOCK */
       gchar         *name;        /* object name */
       GstObject     *parent;      /* this object's parent, weak ref */
       guint32        flags;
    @@ -217,7 +258,7 @@ GStreamer base object class.
     
     
     
    -

    GMutex *lock;

    +

    GMutex lock;

    object LOCK @@ -229,7 +270,7 @@ GStreamer base object class. this object's parent, weak ref -

    guint32 flags;

    +

    guint32 flags;

    flags for this object @@ -498,7 +539,7 @@ This macro releases a lock on the object.

    GST_OBJECT_GET_LOCK()

    -
    #define GST_OBJECT_GET_LOCK(obj)               (GST_OBJECT_CAST(obj)->lock)
    +
    #define GST_OBJECT_GET_LOCK(obj)               (&GST_OBJECT_CAST(obj)->lock)
     

    Acquire a reference to the mutex of this object. @@ -924,6 +965,375 @@ in the hierarchy. [ +

    gst_object_suggest_next_sync ()

    +
    GstClockTime        gst_object_suggest_next_sync        (GstObject *object);
    +

    +Returns a suggestion for timestamps where buffers should be split +to get best controller results. +

    +
    ++ + + + + + + + + + +

    object :

    the object that has controlled properties

    Returns :

    Returns the suggested timestamp or GST_CLOCK_TIME_NONE +if no control-rate was set.
    +
    +
    +
    +

    gst_object_sync_values ()

    +
    gboolean            gst_object_sync_values              (GstObject *object,
    +                                                         GstClockTime timestamp);
    +

    +Sets the properties of the object, according to the GstControlSources that +(maybe) handle them and for the given timestamp. +

    +

    +If this function fails, it is most likely the application developers fault. +Most probably the control sources are not setup correctly. +

    +
    ++ + + + + + + + + + + + + + +

    object :

    the object that has controlled properties

    timestamp :

    the time that should be processed

    Returns :

    +TRUE if the controller values could be applied to the object +properties, FALSE otherwise
    +
    +
    +
    +

    gst_object_has_active_control_bindings ()

    +
    gboolean            gst_object_has_active_control_bindings
    +                                                        (GstObject *object);
    +

    +Check if the object has an active controlled properties. +

    +
    ++ + + + + + + + + + +

    object :

    the object that has controlled properties

    Returns :

    +TRUE if the object has active controlled properties
    +
    +
    +
    +

    gst_object_set_control_bindings_disabled ()

    +
    void                gst_object_set_control_bindings_disabled
    +                                                        (GstObject *object,
    +                                                         gboolean disabled);
    +

    +This function is used to disable all controlled properties of the object for +some time, i.e. gst_object_sync_values() will do nothing. +

    +
    ++ + + + + + + + + + +

    object :

    the object that has controlled properties

    disabled :

    boolean that specifies whether to disable the controller +or not.
    +
    +
    +
    +

    gst_object_set_control_binding_disabled ()

    +
    void                gst_object_set_control_binding_disabled
    +                                                        (GstObject *object,
    +                                                         const gchar *property_name,
    +                                                         gboolean disabled);
    +

    +This function is used to disable the GstController on a property for +some time, i.e. gst_controller_sync_values() will do nothing for the +property. +

    +
    ++ + + + + + + + + + + + + + +

    object :

    the object that has controlled properties

    property_name :

    property to disable

    disabled :

    boolean that specifies whether to disable the controller +or not.
    +
    +
    +
    +

    gst_object_add_control_binding ()

    +
    gboolean            gst_object_add_control_binding      (GstObject *object,
    +                                                         GstControlBinding *binding);
    +

    +Sets the GstControlBinding. If there already was a GstControlBinding +for this property it will be replaced. +The object will take ownership of the binding. +

    +
    ++ + + + + + + + + + + + + + +

    object :

    the controller object

    binding :

    the GstControlBinding that should be used. [transfer full] +

    Returns :

    +FALSE if the given binding has not been setup for this object or +TRUE otherwise.
    +
    +
    +
    +

    gst_object_get_control_binding ()

    +
    GstControlBinding * gst_object_get_control_binding      (GstObject *object,
    +                                                         const gchar *property_name);
    +

    +Gets the corresponding GstControlBinding for the property. This should be +unreferenced again after use. +

    +
    ++ + + + + + + + + + + + + + +

    object :

    the object

    property_name :

    name of the property

    Returns :

    the GstControlBinding for property_name or NULL if +the property is not controlled. [transfer full] +
    +
    +
    +
    +

    gst_object_remove_control_binding ()

    +
    gboolean            gst_object_remove_control_binding   (GstObject *object,
    +                                                         GstControlBinding *binding);
    +

    +Removes the corresponding GstControlBinding. If it was the +last ref of the binding, it will be disposed. +

    +
    ++ + + + + + + + + + + + + + +

    object :

    the object

    binding :

    the binding

    Returns :

    +TRUE if the binding could be removed.
    +
    +
    +
    +

    gst_object_get_value ()

    +
    GValue *            gst_object_get_value                (GstObject *object,
    +                                                         const gchar *property_name,
    +                                                         GstClockTime timestamp);
    +

    +Gets the value for the given controlled property at the requested time. +

    +
    ++ + + + + + + + + + + + + + + + + + +

    object :

    the object that has controlled properties

    property_name :

    the name of the property to get

    timestamp :

    the time the control-change should be read from

    Returns :

    the GValue of the property at the given time, or NULL if the +property isn't controlled.
    +
    +
    +
    +

    gst_object_get_value_array ()

    +
    gboolean            gst_object_get_value_array          (GstObject *object,
    +                                                         const gchar *property_name,
    +                                                         GstClockTime timestamp,
    +                                                         GstClockTime interval,
    +                                                         guint n_values,
    +                                                         GValue *values);
    +

    +Gets a number of values for the given controllered property starting at the +requested time. The array values need to hold enough space for n_values of +the same type as the objects property's type. +

    +

    +This function is useful if one wants to e.g. draw a graph of the control +curve or apply a control curve sample by sample. +

    +
    ++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    object :

    the object that has controlled properties

    property_name :

    the name of the property to get

    timestamp :

    the time that should be processed

    interval :

    the time spacing between subsequent values

    n_values :

    the number of values

    values :

    array to put control-values in

    Returns :

    +TRUE if the given array could be filled, FALSE otherwise
    +
    +
    +
    +

    gst_object_get_control_rate ()

    +
    GstClockTime        gst_object_get_control_rate         (GstObject *object);
    +

    +Obtain the control-rate for this object. Audio processing GstElement +objects will use this rate to sub-divide their processing loop and call +gst_object_sync_values() inbetween. The length of the processing segment +should be up to control-rate nanoseconds. +

    +

    +If the object is not under property control, this will return +GST_CLOCK_TIME_NONE. This allows the element to avoid the sub-dividing. +

    +

    +The control-rate is not expected to change if the element is in +GST_STATE_PAUSED or GST_STATE_PLAYING. +

    +
    ++ + + + + + + + + + +

    object :

    the object that has controlled properties

    Returns :

    the control rate in nanoseconds
    +
    +
    +
    +

    gst_object_set_control_rate ()

    +
    void                gst_object_set_control_rate         (GstObject *object,
    +                                                         GstClockTime control_rate);
    +

    +Change the control-rate for this object. Audio processing GstElement +objects will use this rate to sub-divide their processing loop and call +gst_object_sync_values() inbetween. The length of the processing segment +should be up to control-rate nanoseconds. +

    +

    +The control-rate should not change if the element is in GST_STATE_PAUSED or +GST_STATE_PLAYING. +

    +
    ++ + + + + + + + + + +

    object :

    the object that has controlled properties

    control_rate :

    the new control-rate in nanoseconds.
    +

    Property Details

    diff --git a/docs/gst/html/GstPad.html b/docs/gst/html/GstPad.html index 63afb93..1167786 100644 --- a/docs/gst/html/GstPad.html +++ b/docs/gst/html/GstPad.html @@ -3,8 +3,8 @@ GstPad - - + + @@ -17,7 +17,7 @@ Prev Up Home -GStreamer 0.11 Core Reference Manual +GStreamer 1.0 Core Reference Manual Next @@ -56,12 +56,7 @@ enum GstPadLinkCheck; #define GST_PAD_LINK_CHECK_DEFAULT enum GstFlowReturn; -enum GstActivateMode; -enum GstProbeReturn; -enum GstProbeType; -#define GST_PROBE_TYPE_BLOCKING -#define GST_PROBE_TYPE_DATA -#define GST_PROBE_TYPE_SCHEDULING +enum GstPadMode; #define gst_pad_get_name (pad) GstPadDirection gst_pad_get_direction (GstPad *pad); @@ -78,46 +73,64 @@ enum gboolean gst_pad_is_linked (GstPad *pad); gboolean gst_pad_can_link (GstPad *srcpad, GstPad *sinkpad); -GstCaps * gst_pad_get_caps (GstPad *pad, - GstCaps *filter); -#define gst_pad_get_caps_reffed (p) GstCaps * gst_pad_get_allowed_caps (GstPad *pad); GstCaps * gst_pad_get_current_caps (GstPad *pad); GstCaps * gst_pad_get_pad_template_caps (GstPad *pad); gboolean gst_pad_set_caps (GstPad *pad, GstCaps *caps); GstPad * gst_pad_get_peer (GstPad *pad); -GstCaps * gst_pad_peer_get_caps (GstPad *pad, - GstCaps *filter); -#define gst_pad_peer_get_caps_reffed (p) void gst_pad_use_fixed_caps (GstPad *pad); gboolean gst_pad_has_current_caps (GstPad *pad); GstEvent * gst_pad_get_sticky_event (GstPad *pad, - GstEventType event_type); -GstFlowReturn (*GstPadStickyEventsForeachFunction) + GstEventType event_type, + guint idx); +gboolean (*GstPadStickyEventsForeachFunction) (GstPad *pad, - GstEvent *event, + GstEvent **event, gpointer user_data); -GstFlowReturn gst_pad_sticky_events_foreach (GstPad *pad, +void gst_pad_sticky_events_foreach (GstPad *pad, GstPadStickyEventsForeachFunction foreach_func, gpointer user_data); gboolean gst_pad_is_active (GstPad *pad); -gboolean gst_pad_is_blocked (GstPad *pad); -gboolean gst_pad_is_blocking (GstPad *pad); -GstProbeReturn (*GstPadProbeCallback) (GstPad *pad, - GstProbeType type, - gpointer type_data, + +enum GstPadProbeReturn; +enum GstPadProbeType; +#define GST_PAD_PROBE_TYPE_BLOCKING +#define GST_PAD_PROBE_TYPE_BLOCK_DOWNSTREAM +#define GST_PAD_PROBE_TYPE_BLOCK_UPSTREAM +#define GST_PAD_PROBE_TYPE_DATA_DOWNSTREAM +#define GST_PAD_PROBE_TYPE_DATA_UPSTREAM +#define GST_PAD_PROBE_TYPE_DATA_BOTH +#define GST_PAD_PROBE_TYPE_EVENT_BOTH +#define GST_PAD_PROBE_TYPE_QUERY_BOTH +#define GST_PAD_PROBE_TYPE_ALL_BOTH +#define GST_PAD_PROBE_TYPE_SCHEDULING +struct GstPadProbeInfo; +#define GST_PAD_PROBE_INFO_TYPE (d) +#define GST_PAD_PROBE_INFO_ID (d) +#define GST_PAD_PROBE_INFO_DATA (d) +#define GST_PAD_PROBE_INFO_BUFFER (d) +#define GST_PAD_PROBE_INFO_BUFFER_LIST (d) +#define GST_PAD_PROBE_INFO_EVENT (d) +#define GST_PAD_PROBE_INFO_QUERY (d) +#define GST_PAD_PROBE_INFO_OFFSET (d) +#define GST_PAD_PROBE_INFO_SIZE (d) +GstPadProbeReturn (*GstPadProbeCallback) (GstPad *pad, + GstPadProbeInfo *info, gpointer user_data); gulong gst_pad_add_probe (GstPad *pad, - GstProbeType mask, + GstPadProbeType mask, GstPadProbeCallback callback, gpointer user_data, GDestroyNotify destroy_data); void gst_pad_remove_probe (GstPad *pad, gulong id); -gint64 gst_pad_get_offset (GstPad *pad); +gboolean gst_pad_is_blocked (GstPad *pad); +gboolean gst_pad_is_blocking (GstPad *pad); + +gint64 gst_pad_get_offset (GstPad *pad); void gst_pad_set_offset (GstPad *pad, - gint64 offset); + gint64 offset); GstPad * gst_pad_new (const gchar *name, GstPadDirection direction); @@ -125,63 +138,86 @@ enum const gchar *name); GstPad * gst_pad_new_from_static_template (GstStaticPadTemplate *templ, const gchar *name); -void gst_pad_set_chain_function (GstPad *pad, - GstPadChainFunction chain); +#define gst_pad_set_chain_function (p, + f) +void gst_pad_set_chain_function_full (GstPad *pad, + GstPadChainFunction chain, + gpointer user_data, + GDestroyNotify notify); GstFlowReturn (*GstPadChainFunction) (GstPad *pad, + GstObject *parent, GstBuffer *buffer); -void gst_pad_set_chain_list_function (GstPad *pad, - GstPadChainListFunction chainlist); +#define gst_pad_set_chain_list_function (p, + f) +void gst_pad_set_chain_list_function_full + (GstPad *pad, + GstPadChainListFunction chainlist, + gpointer user_data, + GDestroyNotify notify); GstFlowReturn (*GstPadChainListFunction) (GstPad *pad, + GstObject *parent, GstBufferList *list); GstFlowReturn gst_pad_get_range (GstPad *pad, - guint64 offset, + guint64 offset, guint size, GstBuffer **buffer); -void gst_pad_set_getrange_function (GstPad *pad, - GstPadGetRangeFunction get); +#define gst_pad_set_getrange_function (p, + f) +void gst_pad_set_getrange_function_full (GstPad *pad, + GstPadGetRangeFunction get, + gpointer user_data, + GDestroyNotify notify); GstFlowReturn (*GstPadGetRangeFunction) (GstPad *pad, - guint64 offset, + GstObject *parent, + guint64 offset, guint length, GstBuffer **buffer); -void gst_pad_set_event_function (GstPad *pad, - GstPadEventFunction event); +#define gst_pad_set_event_function (p, + f) +void gst_pad_set_event_function_full (GstPad *pad, + GstPadEventFunction event, + gpointer user_data, + GDestroyNotify notify); gboolean (*GstPadEventFunction) (GstPad *pad, + GstObject *parent, GstEvent *event); -void gst_pad_set_link_function (GstPad *pad, - GstPadLinkFunction link); +#define gst_pad_set_link_function (p, + f) +void gst_pad_set_link_function_full (GstPad *pad, + GstPadLinkFunction link, + gpointer user_data, + GDestroyNotify notify); GstPadLinkReturn (*GstPadLinkFunction) (GstPad *pad, GstPad *peer); -void gst_pad_set_unlink_function (GstPad *pad, - GstPadUnlinkFunction unlink); +#define gst_pad_set_unlink_function (p, + f) +void gst_pad_set_unlink_function_full (GstPad *pad, + GstPadUnlinkFunction unlink, + gpointer user_data, + GDestroyNotify notify); void (*GstPadUnlinkFunction) (GstPad *pad); -gboolean gst_pad_accept_caps (GstPad *pad, - GstCaps *caps); -void gst_pad_set_acceptcaps_function (GstPad *pad, - GstPadAcceptCapsFunction acceptcaps); -gboolean (*GstPadAcceptCapsFunction) (GstPad *pad, - GstCaps *caps); -void gst_pad_set_getcaps_function (GstPad *pad, - GstPadGetCapsFunction getcaps); -GstCaps * (*GstPadGetCapsFunction) (GstPad *pad, - GstCaps *filter); -GstCaps * gst_pad_proxy_getcaps (GstPad *pad, - GstCaps *filter); -void gst_pad_fixate_caps (GstPad *pad, - GstCaps *caps); -void gst_pad_set_fixatecaps_function (GstPad *pad, - GstPadFixateCapsFunction fixatecaps); -void (*GstPadFixateCapsFunction) (GstPad *pad, - GstCaps *caps); -gboolean gst_pad_peer_accept_caps (GstPad *pad, - GstCaps *caps); -void gst_pad_set_activate_function (GstPad *pad, - GstPadActivateFunction activate); -gboolean (*GstPadActivateFunction) (GstPad *pad); -void gst_pad_set_activatepush_function (GstPad *pad, - GstPadActivateModeFunction activatepush); -void gst_pad_set_activatepull_function (GstPad *pad, - GstPadActivateModeFunction activatepull); +gboolean gst_pad_proxy_query_caps (GstPad *pad, + GstQuery *query); +gboolean gst_pad_proxy_query_accept_caps (GstPad *pad, + GstQuery *query); +#define gst_pad_set_activate_function (p, + f) +void gst_pad_set_activate_function_full (GstPad *pad, + GstPadActivateFunction activate, + gpointer user_data, + GDestroyNotify notify); +gboolean (*GstPadActivateFunction) (GstPad *pad, + GstObject *parent); +#define gst_pad_set_activatemode_function (p, + f) +void gst_pad_set_activatemode_function_full + (GstPad *pad, + GstPadActivateModeFunction activatemode, + gpointer user_data, + GDestroyNotify notify); gboolean (*GstPadActivateModeFunction) (GstPad *pad, + GstObject *parent, + GstPadMode mode, gboolean active); gboolean gst_pad_check_reconfigure (GstPad *pad); void gst_pad_mark_reconfigure (GstPad *pad); @@ -192,61 +228,76 @@ enum GstFlowReturn gst_pad_push_list (GstPad *pad, GstBufferList *list); GstFlowReturn gst_pad_pull_range (GstPad *pad, - guint64 offset, + guint64 offset, guint size, GstBuffer **buffer); -gboolean gst_pad_activate_pull (GstPad *pad, - gboolean active); -gboolean gst_pad_activate_push (GstPad *pad, +gboolean gst_pad_activate_mode (GstPad *pad, + GstPadMode mode, gboolean active); gboolean gst_pad_send_event (GstPad *pad, GstEvent *event); gboolean gst_pad_event_default (GstPad *pad, + GstObject *parent, GstEvent *event); gboolean gst_pad_query (GstPad *pad, GstQuery *query); gboolean gst_pad_peer_query (GstPad *pad, GstQuery *query); gboolean gst_pad_query_default (GstPad *pad, + GstObject *parent, GstQuery *query); gboolean gst_pad_query_position (GstPad *pad, GstFormat format, - gint64 *cur); + gint64 *cur); gboolean gst_pad_query_duration (GstPad *pad, GstFormat format, - gint64 *duration); + gint64 *duration); gboolean gst_pad_query_convert (GstPad *pad, GstFormat src_format, - gint64 src_val, + gint64 src_val, GstFormat dest_format, - gint64 *dest_val); -gboolean gst_pad_query_peer_position (GstPad *pad, + gint64 *dest_val); +gboolean gst_pad_query_accept_caps (GstPad *pad, + GstCaps *caps); +GstCaps * gst_pad_query_caps (GstPad *pad, + GstCaps *filter); +gboolean gst_pad_peer_query_position (GstPad *pad, GstFormat format, - gint64 *cur); -gboolean gst_pad_query_peer_duration (GstPad *pad, + gint64 *cur); +gboolean gst_pad_peer_query_duration (GstPad *pad, GstFormat format, - gint64 *duration); -gboolean gst_pad_query_peer_convert (GstPad *pad, + gint64 *duration); +gboolean gst_pad_peer_query_convert (GstPad *pad, GstFormat src_format, - gint64 src_val, + gint64 src_val, GstFormat dest_format, - gint64 *dest_val); -void gst_pad_set_query_function (GstPad *pad, - GstPadQueryFunction query); + gint64 *dest_val); +gboolean gst_pad_peer_query_accept_caps (GstPad *pad, + GstCaps *caps); +GstCaps * gst_pad_peer_query_caps (GstPad *pad, + GstCaps *filter); +#define gst_pad_set_query_function (p, + f) +void gst_pad_set_query_function_full (GstPad *pad, + GstPadQueryFunction query, + gpointer user_data, + GDestroyNotify notify); gboolean (*GstPadQueryFunction) (GstPad *pad, + GstObject *parent, GstQuery *query); -void gst_pad_set_query_type_function (GstPad *pad, - GstPadQueryTypeFunction type_func); -const GstQueryType * (*GstPadQueryTypeFunction) (GstPad *pad); -const GstQueryType * gst_pad_get_query_types (GstPad *pad); -const GstQueryType * gst_pad_get_query_types_default (GstPad *pad); -void gst_pad_set_iterate_internal_links_function +#define gst_pad_set_iterate_internal_links_function(p, + f) +void gst_pad_set_iterate_internal_links_function_full (GstPad *pad, - GstPadIterIntLinkFunction iterintlink); -GstIterator * (*GstPadIterIntLinkFunction) (GstPad *pad); + GstPadIterIntLinkFunction iterintlink, + gpointer user_data, + GDestroyNotify notify); +GstIterator * (*GstPadIterIntLinkFunction) (GstPad *pad, + GstObject *parent); GstIterator * gst_pad_iterate_internal_links (GstPad *pad); GstIterator * gst_pad_iterate_internal_links_default - (GstPad *pad); + (GstPad *pad, + GstObject *parent); void gst_pad_set_element_private (GstPad *pad, gpointer priv); gpointer gst_pad_get_element_private (GstPad *pad); @@ -269,11 +320,8 @@ const gboolean active); #define GST_PAD_GET_STREAM_LOCK (pad) #define GST_PAD_STREAM_LOCK (pad) -#define GST_PAD_STREAM_LOCK_FULL (pad, - t) #define GST_PAD_STREAM_TRYLOCK (pad) #define GST_PAD_STREAM_UNLOCK (pad) -#define GST_PAD_STREAM_UNLOCK_FULL (pad)
    @@ -306,21 +354,17 @@ const GstElement is linked to other elements via "pads", which are extremely light-weight generic link points. -After two pads are retrieved from an element with gst_element_get_pad(), -the pads can be link with gst_pad_link(). (For quick links, -you can also use gst_element_link(), which will make the obvious -link for you if it's straightforward.)

    -Pads are typically created from a GstPadTemplate with -gst_pad_new_from_template(). +Pads have a GstPadDirection, source pads produce data, sink pads consume +data.

    -Pads have GstCaps attached to it to describe the media type they are -capable of dealing with. gst_pad_get_caps() and gst_pad_set_caps() are -used to manipulate the caps of the pads. -Pads created from a pad template cannot set capabilities that are -incompatible with the pad template capabilities. +Pads are typically created from a GstPadTemplate with +gst_pad_new_from_template() and are then added to a GstElement. This usually +happens when the element is created but it can also happen dynamically based +on the data that the element is processing or based on the pads that the +application requests.

    Pads without pad templates can be created with gst_pad_new(), @@ -328,23 +372,61 @@ which takes a direction and a name as an argument. If the name is NULL, then a guaranteed unique name will be assigned to it.

    +A GstElement creating a pad will typically use the various +gst_pad_set_*_function() calls to register callbacks for events, queries or +dataflow on the pads. +

    +

    gst_pad_get_parent() will retrieve the GstElement that owns the pad.

    -A GstElement creating a pad will typically use the various -gst_pad_set_*_function() calls to register callbacks for various events -on the pads. +After two pads are retrieved from an element with gst_element_get_pad(), +the pads can be linked with gst_pad_link(). (For quick links, +you can also use gst_element_link(), which will make the obvious +link for you if it's straightforward.). Pads can be unlinked again with +gst_pad_unlink(). gst_pad_get_peer() can be used to check what the pad is +linked to. +

    +

    +Before dataflow is possible on the pads, they need to be activated with +gst_pad_set_active(). +

    +

    +gst_pad_query() and gst_pad_peer_query() can be used to query various +properties of the pad and the stream. +

    +

    +To send a GstEvent on a pad, use gst_pad_send_event() and +gst_pad_push_event(). Some events will be sticky on the pad, meaning that +after they pass on the pad they can be queried later with +gst_pad_get_sticky_event() and gst_pad_sticky_events_foreach(). +gst_pad_get_current_caps() and gst_pad_has_current_caps() are convenience +functions to query the current sticky CAPS event on a pad.

    GstElements will use gst_pad_push() and gst_pad_pull_range() to push out or pull in a buffer.

    -To send a GstEvent on a pad, use gst_pad_send_event() and -gst_pad_push_event(). +The dataflow, events and queries that happen on a pad can be monitored with +probes that can be installed with gst_pad_add_probe(). gst_pad_is_blocked() +can be used to check if a block probe is installed on the pad. +gst_pad_is_blocking() checks if the blocking probe is currently blocking the +pad. gst_pad_remove_probe() is used to remove a previously installed probe +and unblock blocking probes if any. +

    +

    +Pad have an offset that can be retrieved with gst_pad_get_offset(). This +offset will be applied to the running_time of all data passing over the pad. +gst_pad_set_offset() can be used to change the offset. +

    +

    +Convenience functions exist to start, pause and stop the task on a pad with +gst_pad_start_task(), gst_pad_pause_task() and gst_pad_stop_task() +respectively.

    -Last reviewed on 2006-07-06 (0.10.9) +Last reviewed on 2012-03-29 (0.11.3)

    @@ -357,45 +439,6 @@ Last reviewed on 2006-07-06 (0.10.9) GstPadTemplate *padtemplate; GstPadDirection direction; - - /* streaming rec_lock */ - GStaticRecMutex stream_rec_lock; - GstTask *task; - - /* block cond, mutex is from the object */ - GCond *block_cond; - GHookList probes; - - /* the pad capabilities */ - GstPadGetCapsFunction getcapsfunc; - GstPadAcceptCapsFunction acceptcapsfunc; - GstPadFixateCapsFunction fixatecapsfunc; - - GstActivateMode mode; - GstPadActivateFunction activatefunc; - GstPadActivateModeFunction activatepushfunc; - GstPadActivateModeFunction activatepullfunc; - - /* pad link */ - GstPad *peer; - GstPadLinkFunction linkfunc; - GstPadUnlinkFunction unlinkfunc; - - /* data transport functions */ - GstPadChainFunction chainfunc; - GstPadChainListFunction chainlistfunc; - GstPadGetRangeFunction getrangefunc; - GstPadEventFunction eventfunc; - - /* pad offset */ - gint64 offset; - - /* generic query method */ - GstPadQueryTypeFunction querytypefunc; - GstPadQueryFunction queryfunc; - - /* internal links */ - GstPadIterIntLinkFunction iterintlinkfunc; };

    @@ -417,95 +460,6 @@ The GstPad< the direction of the pad, cannot change after creating the pad. - -

    GStaticRecMutex stream_rec_lock;

    -recursive stream lock of the pad, used to protect -the data used in streaming. - - -

    GstTask *task;

    -task for this pad if the pad is actively driving dataflow. - - -

    GCond *block_cond;

    -conditional to signal pad block - - -

    GHookList probes;

    -installed probes - - -

    GstPadGetCapsFunction getcapsfunc;

    -function to get caps of the pad - - -

    GstPadAcceptCapsFunction acceptcapsfunc;

    -function to check if pad can accept caps - - -

    GstPadFixateCapsFunction fixatecapsfunc;

    -function to fixate caps - - -

    GstActivateMode mode;

    -current activation mode of the pad - - -

    GstPadActivateFunction activatefunc;

    -pad activation function - - -

    GstPadActivateModeFunction activatepushfunc;

    -function to activate/deactivate pad in push mode - - -

    GstPadActivateModeFunction activatepullfunc;

    -function to activate/deactivate pad in pull mode - - -

    GstPad *peer;

    -the pad this pad is linked to - - -

    GstPadLinkFunction linkfunc;

    -function called when pad is linked - - -

    GstPadUnlinkFunction unlinkfunc;

    -function called when pad is unlinked - - -

    GstPadChainFunction chainfunc;

    -function to chain buffer to pad - - -

    GstPadChainListFunction chainlistfunc;

    -function to chain a list of buffers to pad - - -

    GstPadGetRangeFunction getrangefunc;

    -function to get a range of data from a pad - - -

    GstPadEventFunction eventfunc;

    -function to send an event to a pad - - -

    gint64 offset;

    -the pad offset - - -

    GstPadQueryTypeFunction querytypefunc;

    -get list of supported queries - - -

    GstPadQueryFunction queryfunc;

    -perform a query on the pad - - -

    GstPadIterIntLinkFunction iterintlinkfunc;

    -get the internal links iterator of this pad -
    @@ -546,13 +500,15 @@ The direction of a pad.

    enum GstPadFlags

    typedef enum {
    -  GST_PAD_BLOCKED          = (GST_OBJECT_FLAG_LAST << 0),
    -  GST_PAD_FLUSHING         = (GST_OBJECT_FLAG_LAST << 1),
    -  GST_PAD_IN_GETCAPS       = (GST_OBJECT_FLAG_LAST << 2),
    -  GST_PAD_BLOCKING         = (GST_OBJECT_FLAG_LAST << 4),
    -  GST_PAD_NEED_RECONFIGURE = (GST_OBJECT_FLAG_LAST << 5),
    -  GST_PAD_NEED_EVENTS      = (GST_OBJECT_FLAG_LAST << 6),
    -  GST_PAD_FIXED_CAPS       = (GST_OBJECT_FLAG_LAST << 7),
    +  GST_PAD_FLAG_BLOCKED          = (GST_OBJECT_FLAG_LAST << 0),
    +  GST_PAD_FLAG_FLUSHING         = (GST_OBJECT_FLAG_LAST << 1),
    +  GST_PAD_FLAG_BLOCKING         = (GST_OBJECT_FLAG_LAST << 2),
    +  GST_PAD_FLAG_NEED_PARENT      = (GST_OBJECT_FLAG_LAST << 3),
    +  GST_PAD_FLAG_NEED_RECONFIGURE = (GST_OBJECT_FLAG_LAST << 4),
    +  GST_PAD_FLAG_PENDING_EVENTS   = (GST_OBJECT_FLAG_LAST << 5),
    +  GST_PAD_FLAG_FIXED_CAPS       = (GST_OBJECT_FLAG_LAST << 6),
    +  GST_PAD_FLAG_PROXY_CAPS       = (GST_OBJECT_FLAG_LAST << 7),
    +  GST_PAD_FLAG_PROXY_ALLOCATION = (GST_OBJECT_FLAG_LAST << 8),
       /* padding */
       GST_PAD_FLAG_LAST        = (GST_OBJECT_FLAG_LAST << 16)
     } GstPadFlags;
    @@ -564,46 +520,60 @@ Pad state flags
     
     
     
    -

    GST_PAD_BLOCKED

    +

    GST_PAD_FLAG_BLOCKED

    is dataflow on a pad blocked -

    GST_PAD_FLUSHING

    +

    GST_PAD_FLAG_FLUSHING

    is pad refusing buffers -

    GST_PAD_IN_GETCAPS

    -GstPadGetCapsFunction() is running now +

    GST_PAD_FLAG_BLOCKING

    +is pad currently blocking on a buffer or event -

    GST_PAD_BLOCKING

    -is pad currently blocking on a buffer or event +

    GST_PAD_FLAG_NEED_PARENT

    +ensure that there is a parent object before calling + into the pad callbacks. -

    GST_PAD_NEED_RECONFIGURE

    +

    GST_PAD_FLAG_NEED_RECONFIGURE

    the pad should be reconfigured/renegotiated. The flag has to be unset manually after reconfiguration happened. - Since: 0.10.34. -

    GST_PAD_NEED_EVENTS

    +

    GST_PAD_FLAG_PENDING_EVENTS

    the pad has pending events -

    GST_PAD_FIXED_CAPS

    +

    GST_PAD_FLAG_FIXED_CAPS

    the pad is using fixed caps this means that once the - caps are set on the pad, the getcaps function only + caps are set on the pad, the caps query function only returns those caps. +

    GST_PAD_FLAG_PROXY_CAPS

    +the default event and query handler will forward + all events and queries to the internally linked pads + instead of discarding them. + + + +

    GST_PAD_FLAG_PROXY_ALLOCATION

    +the default query handler will forward + allocation queries to the internally linked pads + instead of discarding them. + + +

    GST_PAD_FLAG_LAST

    offset to define more flags @@ -755,7 +725,7 @@ for linking the pads.

    GST_PAD_LINK_CHECK_CAPS

    Check if the pads are compatible by comparing the - caps returned by gst_pad_get_caps(). + caps returned by gst_pad_query_caps(). @@ -783,13 +753,12 @@ The default checks done when linking pads (i.e. the ones used by GST_FLOW_CUSTOM_SUCCESS = 100, /* core predefined */ - GST_FLOW_RESEND = 1, GST_FLOW_OK = 0, /* expected failures */ GST_FLOW_NOT_LINKED = -1, - GST_FLOW_WRONG_STATE = -2, + GST_FLOW_FLUSHING = -2, /* error cases */ - GST_FLOW_UNEXPECTED = -3, + GST_FLOW_EOS = -3, GST_FLOW_NOT_NEGOTIATED = -4, GST_FLOW_ERROR = -5, GST_FLOW_NOT_SUPPORTED = -6, @@ -830,12 +799,6 @@ element scope and are available since 0.10.7. -

    GST_FLOW_RESEND

    -Resend buffer, possibly with new caps (not - sent yet) (unused/unimplemented). - - -

    GST_FLOW_OK

    Data passing was ok. @@ -846,13 +809,13 @@ element scope and are available since 0.10.7. -

    GST_FLOW_WRONG_STATE

    -Pad is in wrong state. +

    GST_FLOW_FLUSHING

    +Pad is flushing. -

    GST_FLOW_UNEXPECTED

    -Did not expect anything, like after EOS. +

    GST_FLOW_EOS

    +Pad is EOS. @@ -896,33 +859,33 @@ element scope and are available since 0.10.7.

    -

    enum GstActivateMode

    +

    enum GstPadMode

    typedef enum {
    -  GST_ACTIVATE_NONE,
    -  GST_ACTIVATE_PUSH,
    -  GST_ACTIVATE_PULL
    -} GstActivateMode;
    +  GST_PAD_MODE_NONE,
    +  GST_PAD_MODE_PUSH,
    +  GST_PAD_MODE_PULL
    +} GstPadMode;
     

    The status of a GstPad. After activating a pad, which usually happens when the -parent element goes from READY to PAUSED, the GstActivateMode defines if the +parent element goes from READY to PAUSED, the GstPadMode defines if the pad operates in push or pull mode.

    - + - + - + @@ -931,131 +894,6 @@ pad operates in push or pull mode.
    -

    enum GstProbeReturn

    -
    typedef enum {
    -  GST_PROBE_DROP,
    -  GST_PROBE_OK,
    -  GST_PROBE_REMOVE,
    -  GST_PROBE_PASS,
    -} GstProbeReturn;
    -
    -

    -Different return values for the GstPadProbeCallback. -

    -

    GST_ACTIVATE_NONE

    GST_PAD_MODE_NONE

    Pad will not handle dataflow

    GST_ACTIVATE_PUSH

    GST_PAD_MODE_PUSH

    Pad handles dataflow in downstream push mode

    GST_ACTIVATE_PULL

    GST_PAD_MODE_PULL

    Pad handles dataflow in upstream pull mode
    -- - - - - - - - - - - - - - - - - - -

    GST_PROBE_DROP

    drop data in data probes -

    GST_PROBE_OK

    normal probe return value -

    GST_PROBE_REMOVE

    remove probe -

    GST_PROBE_PASS

    pass the data item in the block probe and block on - the next item -
    -
    -
    -
    -

    enum GstProbeType

    -
    typedef enum {
    -  GST_PROBE_TYPE_INVALID      = 0,
    -  /* flags to control blocking */
    -  GST_PROBE_TYPE_IDLE         = (1 << 0),
    -  GST_PROBE_TYPE_BLOCK        = (1 << 1),
    -  /* flags to select datatypes */
    -  GST_PROBE_TYPE_BUFFER       = (1 << 2),
    -  GST_PROBE_TYPE_BUFFER_LIST  = (1 << 3),
    -  GST_PROBE_TYPE_EVENT        = (1 << 4),
    -  /* flags to select scheduling mode */
    -  GST_PROBE_TYPE_PUSH         = (1 << 5),
    -  GST_PROBE_TYPE_PULL         = (1 << 6),
    -} GstProbeType;
    -
    -

    -The different probing types that can occur. When either one of -GST_PROBE_TYPE_IDLE or GST_PROBE_TYPE_BLOCK is used, the probe will be a -blocking probe. -

    -
    -- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    GST_PROBE_TYPE_INVALID

    invalid probe type -

    GST_PROBE_TYPE_IDLE

    probe idle pads and block -

    GST_PROBE_TYPE_BLOCK

    probe and block pads -

    GST_PROBE_TYPE_BUFFER

    probe buffers -

    GST_PROBE_TYPE_BUFFER_LIST

    probe buffer lists -

    GST_PROBE_TYPE_EVENT

    probe events -

    GST_PROBE_TYPE_PUSH

    probe push -

    GST_PROBE_TYPE_PULL

    probe pull -
    -
    -
    -
    -

    GST_PROBE_TYPE_BLOCKING

    -
    #define GST_PROBE_TYPE_BLOCKING   (GST_PROBE_TYPE_IDLE | GST_PROBE_TYPE_BLOCK)
    -
    -
    -
    -
    -

    GST_PROBE_TYPE_DATA

    -
    #define             GST_PROBE_TYPE_DATA
    -
    -
    -
    -

    GST_PROBE_TYPE_SCHEDULING

    -
    #define GST_PROBE_TYPE_SCHEDULING (GST_PROBE_TYPE_PUSH | GST_PROBE_TYPE_PULL)
    -
    -
    -
    -

    gst_pad_get_name()

    #define gst_pad_get_name(pad) gst_object_get_name (GST_OBJECT_CAST (pad))
     
    @@ -1318,54 +1156,6 @@ linked.

    -

    gst_pad_get_caps ()

    -
    GstCaps *           gst_pad_get_caps                    (GstPad *pad,
    -                                                         GstCaps *filter);
    -

    -Gets the capabilities this pad can produce or consume. -Note that this method doesn't necessarily return the caps set by -gst_pad_set_caps() - use gst_pad_get_current_caps() for that instead. -gst_pad_get_caps returns all possible caps a pad can operate with, using -the pad's get_caps function; -this returns the pad template caps if not explicitly set. -

    -

    -When called on sinkpads filter contains the caps that -upstream could produce in the order preferred by upstream. When -called on srcpads filter contains the caps accepted by -downstream in the preffered order. filter might be NULL but -if it is not NULL the returned caps will be a subset of filter. -

    -

    -Note that this function does not return writable GstCaps, use -gst_caps_make_writable() before modifying the caps. -

    -
    -- - - - - - - - - - - - - - -

    pad :

    a GstPad to get the capabilities of.

    filter :

    suggested GstCaps.

    Returns :

    the caps of the pad with incremented ref-count.
    -
    -
    -
    -

    gst_pad_get_caps_reffed()

    -
    #define gst_pad_get_caps_reffed(p)             gst_pad_get_caps(p)
    -
    -
    -
    -

    gst_pad_get_allowed_caps ()

    GstCaps *           gst_pad_get_allowed_caps            (GstPad *pad);

    @@ -1374,7 +1164,7 @@ Gets the capabilities of the allowed media types that can flow through

    The allowed capabilities is calculated as the intersection of the results of -calling gst_pad_get_caps() on pad and its peer. The caller owns a reference +calling gst_pad_query_caps() on pad and its peer. The caller owns a reference on the resulting caps.

    @@ -1499,53 +1289,12 @@ MT safe. [ -

    gst_pad_peer_get_caps ()

    -
    GstCaps *           gst_pad_peer_get_caps               (GstPad *pad,
    -                                                         GstCaps *filter);
    +

    gst_pad_use_fixed_caps ()

    +
    void                gst_pad_use_fixed_caps              (GstPad *pad);

    -Gets the capabilities of the peer connected to this pad. Similar to -gst_pad_get_caps(). -

    -

    -When called on srcpads filter contains the caps that -upstream could produce in the order preferred by upstream. When -called on sinkpads filter contains the caps accepted by -downstream in the preffered order. filter might be NULL but -if it is not NULL the returned caps will be a subset of filter. -

    -
    -- - - - - - - - - - - - - - -

    pad :

    a GstPad to get the capabilities of.

    filter :

    a GstCaps filter.

    Returns :

    the caps of the peer pad with incremented ref-count. This function -returns NULL when there is no peer pad.
    -
    -
    -
    -

    gst_pad_peer_get_caps_reffed()

    -
    #define gst_pad_peer_get_caps_reffed(p)        gst_pad_peer_get_caps(p)
    -
    -
    -
    -
    -

    gst_pad_use_fixed_caps ()

    -
    void                gst_pad_use_fixed_caps              (GstPad *pad);
    -

    -A helper function you can use that sets the FIXED_CAPS flag -This way the default getcaps function will always return the negotiated caps -or in case the pad is not negotiated, the padtemplate caps. +A helper function you can use that sets the FIXED_CAPS flag +This way the default getcaps function will always return the negotiated caps +or in case the pad is not negotiated, the padtemplate caps.

    Use this function on a pad that, once gst_pad_set_caps() has been called @@ -1584,7 +1333,8 @@ Check if pad has caps set on it with a <

    gst_pad_get_sticky_event ()

    GstEvent *          gst_pad_get_sticky_event            (GstPad *pad,
    -                                                         GstEventType event_type);
    + GstEventType event_type, + guint idx);

    Returns a new reference of the sticky event of type event_type from the event. @@ -1601,8 +1351,13 @@ from the event. the GstEventType that should be retrieved. +

    idx :

    +the index of the event + +

    Returns :

    -a GstEvent of type event_type. Unref after usage. [transfer full] +a GstEvent of type event_type or NULL when no +event of event_type was on pad. Unref after usage. [transfer full] @@ -1611,13 +1366,23 @@ from the event.

    GstPadStickyEventsForeachFunction ()

    -
    GstFlowReturn       (*GstPadStickyEventsForeachFunction)
    +
    gboolean            (*GstPadStickyEventsForeachFunction)
                                                             (GstPad *pad,
    -                                                         GstEvent *event,
    +                                                         GstEvent **event,
                                                              gpointer user_data);

    Callback used by gst_pad_sticky_events_foreach().

    +

    +When this function returns TRUE, the next event will be +returned. When FALSE is returned, gst_pad_sticky_events_foreach() will return. +

    +

    +When event is set to NULL, the item will be removed from the list of sticky events. +When event has been made writable, the new buffer reference can be assigned +to event. This function is responsible for unreffing the old event when +removing or modifying. +

    @@ -1627,7 +1392,7 @@ Callback used by event :

    -
    + @@ -1635,7 +1400,8 @@ Callback used by Returns :

    -
    +
    the sticky GstEvent.a sticky GstEvent.

    user_data :

    GST_FLOW_OK if the iteration should continue +TRUE if the iteration should continue
    @@ -1643,13 +1409,12 @@ Callback used by

    gst_pad_sticky_events_foreach ()

    -
    GstFlowReturn       gst_pad_sticky_events_foreach       (GstPad *pad,
    +
    void                gst_pad_sticky_events_foreach       (GstPad *pad,
                                                              GstPadStickyEventsForeachFunction foreach_func,
                                                              gpointer user_data);

    -Iterates all active sticky events on pad and calls foreach_func for every -event. If foreach_func returns something else than GST_FLOW_OK the iteration -is immediately stopped. +Iterates all sticky events on pad and calls foreach_func for every +event. If foreach_func returns FALSE the iteration is immediately stopped.

    @@ -1660,7 +1425,8 @@ is immediately stopped. - @@ -1668,10 +1434,6 @@ is immediately stopped. - - - -

    foreach_func :

    the GstPadStickyEventsForeachFunction that should be called for every event. [scope call] +the GstPadStickyEventsForeachFunction that +should be called for every event. [scope call]
    the optional user data. [closure]

    Returns :

    GST_FLOW_OK if iteration was successful
    @@ -1699,63 +1461,309 @@ MT safe.

    -

    gst_pad_is_blocked ()

    -
    gboolean            gst_pad_is_blocked                  (GstPad *pad);
    +

    enum GstPadProbeReturn

    +
    typedef enum {
    +  GST_PAD_PROBE_DROP,
    +  GST_PAD_PROBE_OK,
    +  GST_PAD_PROBE_REMOVE,
    +  GST_PAD_PROBE_PASS,
    +} GstPadProbeReturn;
    +

    -Checks if the pad is blocked or not. This function returns the -last requested state of the pad. It is not certain that the pad -is actually blocking at this point (see gst_pad_is_blocking()). +Different return values for the GstPadProbeCallback.

    - - + + - - + + + + + + + + + +

    pad :

    the GstPad to query

    GST_PAD_PROBE_DROP

    drop data in data probes. For push mode this means that + the data item is not sent downstream. For pull mode, it means that the + data item is not passed upstream. In both cases, this result code + returns GST_FLOW_OK or TRUE to the caller. +

    Returns :

    TRUE if the pad is blocked. -MT safe.

    GST_PAD_PROBE_OK

    normal probe return value +

    GST_PAD_PROBE_REMOVE

    remove probe +

    GST_PAD_PROBE_PASS

    pass the data item in the block probe and block on + the next item +

    -

    gst_pad_is_blocking ()

    -
    gboolean            gst_pad_is_blocking                 (GstPad *pad);
    +

    enum GstPadProbeType

    +
    typedef enum {
    +  GST_PAD_PROBE_TYPE_INVALID          = 0,
    +  /* flags to control blocking */
    +  GST_PAD_PROBE_TYPE_IDLE             = (1 << 0),
    +  GST_PAD_PROBE_TYPE_BLOCK            = (1 << 1),
    +  /* flags to select datatypes */
    +  GST_PAD_PROBE_TYPE_BUFFER           = (1 << 4),
    +  GST_PAD_PROBE_TYPE_BUFFER_LIST      = (1 << 5),
    +  GST_PAD_PROBE_TYPE_EVENT_DOWNSTREAM = (1 << 6),
    +  GST_PAD_PROBE_TYPE_EVENT_UPSTREAM   = (1 << 7),
    +  GST_PAD_PROBE_TYPE_EVENT_FLUSH      = (1 << 8),
    +  GST_PAD_PROBE_TYPE_QUERY_DOWNSTREAM = (1 << 9),
    +  GST_PAD_PROBE_TYPE_QUERY_UPSTREAM   = (1 << 10),
    +  /* flags to select scheduling mode */
    +  GST_PAD_PROBE_TYPE_PUSH             = (1 << 12),
    +  GST_PAD_PROBE_TYPE_PULL             = (1 << 13)
    +} GstPadProbeType;
    +

    -Checks if the pad is blocking or not. This is a guaranteed state -of whether the pad is actually blocking on a GstBuffer or a GstEvent. +The different probing types that can occur. When either one of +GST_PAD_PROBE_TYPE_IDLE or GST_PAD_PROBE_TYPE_BLOCK is used, the probe will be a +blocking probe.

    - - + + - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    pad :

    the GstPad to query

    GST_PAD_PROBE_TYPE_INVALID

    invalid probe type +

    Returns :

    TRUE if the pad is blocking. -MT safe.

    GST_PAD_PROBE_TYPE_IDLE

    probe idle pads and block +

    GST_PAD_PROBE_TYPE_BLOCK

    probe and block pads +

    GST_PAD_PROBE_TYPE_BUFFER

    probe buffers +

    GST_PAD_PROBE_TYPE_BUFFER_LIST

    probe buffer lists +

    GST_PAD_PROBE_TYPE_EVENT_DOWNSTREAM

    probe downstream events +

    GST_PAD_PROBE_TYPE_EVENT_UPSTREAM

    probe upstream events +

    GST_PAD_PROBE_TYPE_EVENT_FLUSH

    probe flush events. This probe has to be + explicitly enabled and is not included in the + @GST_PAD_PROBE_TYPE_EVENT_DOWNSTREAM or + @GST_PAD_PROBE_TYPE_EVENT_UPSTREAM probe types. +

    GST_PAD_PROBE_TYPE_QUERY_DOWNSTREAM

    probe downstream queries +

    GST_PAD_PROBE_TYPE_QUERY_UPSTREAM

    probe upstream queries +

    GST_PAD_PROBE_TYPE_PUSH

    probe push +

    GST_PAD_PROBE_TYPE_PULL

    probe pull +
    -

    Since 0.10.11

    +
    +
    +
    +

    GST_PAD_PROBE_TYPE_BLOCKING

    +
    #define GST_PAD_PROBE_TYPE_BLOCKING         (GST_PAD_PROBE_TYPE_IDLE | GST_PAD_PROBE_TYPE_BLOCK)
    +
    +
    +
    +
    +

    GST_PAD_PROBE_TYPE_BLOCK_DOWNSTREAM

    +
    #define GST_PAD_PROBE_TYPE_BLOCK_DOWNSTREAM (GST_PAD_PROBE_TYPE_BLOCK | GST_PAD_PROBE_TYPE_DATA_DOWNSTREAM)
    +
    +
    +
    +
    +

    GST_PAD_PROBE_TYPE_BLOCK_UPSTREAM

    +
    #define GST_PAD_PROBE_TYPE_BLOCK_UPSTREAM   (GST_PAD_PROBE_TYPE_BLOCK | GST_PAD_PROBE_TYPE_DATA_UPSTREAM)
    +
    +
    +
    +
    +

    GST_PAD_PROBE_TYPE_DATA_DOWNSTREAM

    +
    #define             GST_PAD_PROBE_TYPE_DATA_DOWNSTREAM
    +
    +
    +
    +

    GST_PAD_PROBE_TYPE_DATA_UPSTREAM

    +
    #define GST_PAD_PROBE_TYPE_DATA_UPSTREAM    (GST_PAD_PROBE_TYPE_EVENT_UPSTREAM)
    +
    +
    +
    +
    +

    GST_PAD_PROBE_TYPE_DATA_BOTH

    +
    #define             GST_PAD_PROBE_TYPE_DATA_BOTH
    +
    +
    +
    +

    GST_PAD_PROBE_TYPE_EVENT_BOTH

    +
    #define             GST_PAD_PROBE_TYPE_EVENT_BOTH
    +
    +
    +
    +

    GST_PAD_PROBE_TYPE_QUERY_BOTH

    +
    #define             GST_PAD_PROBE_TYPE_QUERY_BOTH
    +
    +
    +
    +

    GST_PAD_PROBE_TYPE_ALL_BOTH

    +
    #define             GST_PAD_PROBE_TYPE_ALL_BOTH
    +
    +
    +
    +

    GST_PAD_PROBE_TYPE_SCHEDULING

    +
    #define GST_PAD_PROBE_TYPE_SCHEDULING       (GST_PAD_PROBE_TYPE_PUSH | GST_PAD_PROBE_TYPE_PULL)
    +
    +
    +
    +
    +

    struct GstPadProbeInfo

    +
    struct GstPadProbeInfo {
    +  GstPadProbeType type;
    +  gulong id;
    +  gpointer data;
    +  guint64 offset;
    +  guint size;
    +};
    +
    +

    +Info passed in the GstPadProbeCallback. +

    +
    ++ + + + + + + + + + + + + + + + + + + + + + +

    GstPadProbeType type;

    the current probe type

    gulong id;

    the id of the probe

    gpointer data;

    type specific data, check the type field to know the datatype. +This field can be NULL.

    guint64 offset;

    offset of pull probe, this field is valid when type contains +GST_PAD_PROBE_TYPE_PULL +

    guint size;

    size of pull probe, this field is valid when type contains +GST_PAD_PROBE_TYPE_PULL +
    +
    +
    +
    +

    GST_PAD_PROBE_INFO_TYPE()

    +
    #define GST_PAD_PROBE_INFO_TYPE(d)         ((d)->type)
    +
    +
    +
    +
    +

    GST_PAD_PROBE_INFO_ID()

    +
    #define GST_PAD_PROBE_INFO_ID(d)           ((d)->id)
    +
    +
    +
    +
    +

    GST_PAD_PROBE_INFO_DATA()

    +
    #define GST_PAD_PROBE_INFO_DATA(d)         ((d)->data)
    +
    +
    +
    +
    +

    GST_PAD_PROBE_INFO_BUFFER()

    +
    #define GST_PAD_PROBE_INFO_BUFFER(d)       GST_BUFFER_CAST(GST_PAD_PROBE_INFO_DATA(d))
    +
    +
    +
    +
    +

    GST_PAD_PROBE_INFO_BUFFER_LIST()

    +
    #define GST_PAD_PROBE_INFO_BUFFER_LIST(d)  GST_BUFFER_LIST_CAST(GST_PAD_PROBE_INFO_DATA(d))
    +
    +
    +
    +
    +

    GST_PAD_PROBE_INFO_EVENT()

    +
    #define GST_PAD_PROBE_INFO_EVENT(d)        GST_EVENT_CAST(GST_PAD_PROBE_INFO_DATA(d))
    +
    +
    +
    +
    +

    GST_PAD_PROBE_INFO_QUERY()

    +
    #define GST_PAD_PROBE_INFO_QUERY(d)        GST_QUERY_CAST(GST_PAD_PROBE_INFO_DATA(d))
    +
    +
    +
    +
    +

    GST_PAD_PROBE_INFO_OFFSET()

    +
    #define GST_PAD_PROBE_INFO_OFFSET(d)       ((d)->offset)
    +
    +
    +
    +
    +

    GST_PAD_PROBE_INFO_SIZE()

    +
    #define GST_PAD_PROBE_INFO_SIZE(d)         ((d)->size)
    +

    GstPadProbeCallback ()

    -
    GstProbeReturn      (*GstPadProbeCallback)              (GstPad *pad,
    -                                                         GstProbeType type,
    -                                                         gpointer type_data,
    +
    GstPadProbeReturn   (*GstPadProbeCallback)              (GstPad *pad,
    +                                                         GstPadProbeInfo *info,
                                                              gpointer user_data);

    Callback used by gst_pad_add_probe(). Gets called to notify about the current blocking type.

    +

    +The callback is allowed to modify the data pointer in info. +

    @@ -1764,12 +1772,8 @@ blocking type. - - - - - - + + @@ -1782,7 +1786,7 @@ blocking type.

    gst_pad_add_probe ()

    gulong              gst_pad_add_probe                   (GstPad *pad,
    -                                                         GstProbeType mask,
    +                                                         GstPadProbeType mask,
                                                              GstPadProbeCallback callback,
                                                              gpointer user_data,
                                                              GDestroyNotify destroy_data);
    @@ -1790,15 +1794,6 @@ blocking type. Be notified of different states of pads. The provided callback is called for every state that matches mask.

    -

    -

    -
    -

    Note

    - Pad probe handlers are only called for source pads in push mode - and sink pads in pull mode. -
    -

    -

    the GstPad that is blocked

    type :

    the current probe type

    type_data :

    type specific data

    info :

    GstPadProbeInfo

    user_data :

    @@ -1862,8 +1857,56 @@ MT safe.
    +

    gst_pad_is_blocked ()

    +
    gboolean            gst_pad_is_blocked                  (GstPad *pad);
    +

    +Checks if the pad is blocked or not. This function returns the +last requested state of the pad. It is not certain that the pad +is actually blocking at this point (see gst_pad_is_blocking()). +

    +
    ++ + + + + + + + + + +

    pad :

    the GstPad to query

    Returns :

    TRUE if the pad is blocked. +MT safe.
    +
    +
    +
    +

    gst_pad_is_blocking ()

    +
    gboolean            gst_pad_is_blocking                 (GstPad *pad);
    +

    +Checks if the pad is blocking or not. This is a guaranteed state +of whether the pad is actually blocking on a GstBuffer or a GstEvent. +

    +
    ++ + + + + + + + + + +

    pad :

    the GstPad to query

    Returns :

    TRUE if the pad is blocking. +MT safe.
    +

    Since 0.10.11

    +
    +
    +

    gst_pad_get_offset ()

    -
    gint64              gst_pad_get_offset                  (GstPad *pad);
    +
    gint64              gst_pad_get_offset                  (GstPad *pad);

    Get the offset applied to the running time of pad. pad has to be a source pad. @@ -1887,7 +1930,7 @@ pad.

    gst_pad_set_offset ()

    void                gst_pad_set_offset                  (GstPad *pad,
    -                                                         gint64 offset);
    + gint64 offset);

    Set the offset that will be applied to the running time of pad.

    @@ -1931,7 +1974,7 @@ This function makes a copy of the name so you can safely free the name.

    Returns :

    a new GstPad, or NULL in case of an error. -MT safe. [transfer full] +MT safe. [transfer floating] @@ -1999,9 +2042,17 @@ This function makes a copy of the name so you can safely free the name.

    -

    gst_pad_set_chain_function ()

    -
    void                gst_pad_set_chain_function          (GstPad *pad,
    -                                                         GstPadChainFunction chain);
    +

    gst_pad_set_chain_function()

    +
    #define gst_pad_set_chain_function(p,f)         gst_pad_set_chain_function_full((p),(f),NULL,NULL)
    +
    +
    +
    +
    +

    gst_pad_set_chain_function_full ()

    +
    void                gst_pad_set_chain_function_full     (GstPad *pad,
    +                                                         GstPadChainFunction chain,
    +                                                         gpointer user_data,
    +                                                         GDestroyNotify notify);

    Sets the given chain function for the pad. The chain function is called to process a GstBuffer input buffer. see GstPadChainFunction for more details. @@ -2017,6 +2068,15 @@ process a chain :

    the GstPadChainFunction to set. + +

    user_data :

    +user_data passed to notify + + + +

    notify :

    +notify called when chain will not be used anymore. +
    @@ -2024,6 +2084,7 @@ process a

    GstPadChainFunction ()

    GstFlowReturn       (*GstPadChainFunction)              (GstPad *pad,
    +                                                         GstObject *parent,
                                                              GstBuffer *buffer);

    A function that will be called on sinkpads when chaining buffers. @@ -2046,6 +2107,12 @@ error on the bus and return an appropriate GstPad that performed the chain. +

    parent :

    +the parent of pad. If the GST_PAD_FLAG_NEED_PARENT flag is set, +parent is guaranteed to be not-NULL and remain valid during the +execution of this function. + +

    buffer :

    the GstBuffer that is chained, not NULL. @@ -2059,9 +2126,18 @@ error on the bus and return an appropriate -

    gst_pad_set_chain_list_function ()

    -
    void                gst_pad_set_chain_list_function     (GstPad *pad,
    -                                                         GstPadChainListFunction chainlist);
    +

    gst_pad_set_chain_list_function()

    +
    #define gst_pad_set_chain_list_function(p,f)    gst_pad_set_chain_list_function_full((p),(f),NULL,NULL)
    +
    +
    +
    +
    +

    gst_pad_set_chain_list_function_full ()

    +
    void                gst_pad_set_chain_list_function_full
    +                                                        (GstPad *pad,
    +                                                         GstPadChainListFunction chainlist,
    +                                                         gpointer user_data,
    +                                                         GDestroyNotify notify);

    Sets the given chain list function for the pad. The chainlist function is called to process a GstBufferList input buffer list. See @@ -2078,6 +2154,15 @@ called to process a chainlist :

    the GstPadChainListFunction to set. + +

    user_data :

    +user_data passed to notify + + + +

    notify :

    +notify called when chainlist will not be used anymore. +

    Since 0.10.24

    @@ -2086,6 +2171,7 @@ called to process a

    GstPadChainListFunction ()

    GstFlowReturn       (*GstPadChainListFunction)          (GstPad *pad,
    +                                                         GstObject *parent,
                                                              GstBufferList *list);

    A function that will be called on sinkpads when chaining buffer lists. @@ -2108,6 +2194,12 @@ post an error on the bus and return an appropriate GstPad that performed the chain. +

    parent :

    +the parent of pad. If the GST_PAD_FLAG_NEED_PARENT flag is set, +parent is guaranteed to be not-NULL and remain valid during the +execution of this function. + +

    list :

    the GstBufferList that is chained, not NULL. @@ -2123,20 +2215,41 @@ post an error on the bus and return an appropriate

    gst_pad_get_range ()

    GstFlowReturn       gst_pad_get_range                   (GstPad *pad,
    -                                                         guint64 offset,
    +                                                         guint64 offset,
                                                              guint size,
                                                              GstBuffer **buffer);

    -When pad is flushing this function returns GST_FLOW_WRONG_STATE +When pad is flushing this function returns GST_FLOW_FLUSHING immediately and buffer is NULL.

    Calls the getrange function of pad, see GstPadGetRangeFunction for a description of a getrange function. If pad has no getrange function -installed (see gst_pad_set_getrange_function()) this function returns +installed (see gst_pad_set_getrange_function()) this function returns GST_FLOW_NOT_SUPPORTED.

    +If buffer points to a variable holding NULL, a valid new GstBuffer will be +placed in buffer when this function returns GST_FLOW_OK. The new buffer +must be freed with gst_buffer_unref() after usage. +

    +

    +When buffer points to a variable that points to a valid GstBuffer, the +buffer will be filled with the result data when this function returns +GST_FLOW_OK. If the provided buffer is larger than size, only +size bytes will be filled in the result buffer and its size will be updated +accordingly. +

    +

    +Note that less than size bytes can be returned in buffer when, for example, +an EOS condition is near or when buffer is not large enough to hold size +bytes. The caller should check the result buffer size to get the result size. +

    +

    +When this function returns any other result value than GST_FLOW_OK, buffer +will be unchanged. +

    +

    This is a lowlevel function. Usualy gst_pad_pull_range() is used.

    @@ -2170,9 +2283,17 @@ MT safe.
    -

    gst_pad_set_getrange_function ()

    -
    void                gst_pad_set_getrange_function       (GstPad *pad,
    -                                                         GstPadGetRangeFunction get);
    +

    gst_pad_set_getrange_function()

    +
    #define gst_pad_set_getrange_function(p,f)      gst_pad_set_getrange_function_full((p),(f),NULL,NULL)
    +
    +
    +
    +
    +

    gst_pad_set_getrange_function_full ()

    +
    void                gst_pad_set_getrange_function_full  (GstPad *pad,
    +                                                         GstPadGetRangeFunction get,
    +                                                         gpointer user_data,
    +                                                         GDestroyNotify notify);

    Sets the given getrange function for the pad. The getrange function is called to produce a new GstBuffer to start the processing pipeline. see @@ -2189,6 +2310,15 @@ called to produce a new get :

    + + + + + + + +
    the GstPadGetRangeFunction to set.

    user_data :

    user_data passed to notify +

    notify :

    notify called when get will not be used anymore.
    @@ -2196,7 +2326,8 @@ called to produce a new

    GstPadGetRangeFunction ()

    GstFlowReturn       (*GstPadGetRangeFunction)           (GstPad *pad,
    -                                                         guint64 offset,
    +                                                         GstObject *parent,
    +                                                         guint64 offset,
                                                              guint length,
                                                              GstBuffer **buffer);

    @@ -2207,8 +2338,8 @@ contents of buffer is invalid for any ot

    This function is installed on a source pad with -gst_pad_set_getrange_function() and can only be called on source pads after -they are successfully activated with gst_pad_activate_pull(). +gst_pad_set_getrange_function() and can only be called on source pads after +they are successfully activated with gst_pad_activate_pull().

    offset and length are always given in byte units. offset must normally be a value @@ -2218,7 +2349,7 @@ length (duration in bytes) can be retrieved with a offset larger or equal than the length will make the function return -GST_FLOW_UNEXPECTED, which corresponds to EOS. In this case buffer does not +GST_FLOW_EOS, which corresponds to EOS. In this case buffer does not contain a valid buffer.

    @@ -2248,6 +2379,12 @@ of offset. the src GstPad to perform the getrange on. +

    parent :

    +the parent of pad. If the GST_PAD_FLAG_NEED_PARENT flag is set, +parent is guaranteed to be not-NULL and remain valid during the +execution of this function. + +

    offset :

    the offset of the range @@ -2270,9 +2407,17 @@ return value leaves buffer undefined.
    -

    gst_pad_set_event_function ()

    -
    void                gst_pad_set_event_function          (GstPad *pad,
    -                                                         GstPadEventFunction event);
    +

    gst_pad_set_event_function()

    +
    #define gst_pad_set_event_function(p,f)         gst_pad_set_event_function_full((p),(f),NULL,NULL)
    +
    +
    +
    +
    +

    gst_pad_set_event_function_full ()

    +
    void                gst_pad_set_event_function_full     (GstPad *pad,
    +                                                         GstPadEventFunction event,
    +                                                         gpointer user_data,
    +                                                         GDestroyNotify notify);

    Sets the given event handler for the pad.

    @@ -2287,6 +2432,15 @@ Sets the given event handler for the pad.

    event :

    the GstPadEventFunction to set. + +

    user_data :

    +user_data passed to notify + + + +

    notify :

    +notify called when event will not be used anymore. +
    @@ -2294,6 +2448,7 @@ Sets the given event handler for the pad.

    GstPadEventFunction ()

    gboolean            (*GstPadEventFunction)              (GstPad *pad,
    +                                                         GstObject *parent,
                                                              GstEvent *event);

    Function signature to handle an event for the pad. @@ -2306,6 +2461,12 @@ Function signature to handle an event for the pad. the GstPad to handle the event. +

    parent :

    +the parent of pad. If the GST_PAD_FLAG_NEED_PARENT flag is set, +parent is guaranteed to be not-NULL and remain valid during the +execution of this function. + +

    event :

    the GstEvent to handle. @@ -2318,9 +2479,17 @@ Function signature to handle an event for the pad.

    -

    gst_pad_set_link_function ()

    -
    void                gst_pad_set_link_function           (GstPad *pad,
    -                                                         GstPadLinkFunction link);
    +

    gst_pad_set_link_function()

    +
    #define gst_pad_set_link_function(p,f)          gst_pad_set_link_function_full((p),(f),NULL,NULL)
    +
    +
    +
    +
    +

    gst_pad_set_link_function_full ()

    +
    void                gst_pad_set_link_function_full      (GstPad *pad,
    +                                                         GstPadLinkFunction link,
    +                                                         gpointer user_data,
    +                                                         GDestroyNotify notify);

    Sets the given link function for the pad. It will be called when the pad is linked with another pad. @@ -2348,6 +2517,15 @@ of the peer sink pad, if present.

    link :

    the GstPadLinkFunction to set. + +

    user_data :

    +user_data passed to notify + + + +

    notify :

    +notify called when link will not be used anymore. +
    @@ -2379,9 +2557,17 @@ Function signature to handle a new link on the pad.
    -

    gst_pad_set_unlink_function ()

    -
    void                gst_pad_set_unlink_function         (GstPad *pad,
    -                                                         GstPadUnlinkFunction unlink);
    +

    gst_pad_set_unlink_function()

    +
    #define gst_pad_set_unlink_function(p,f)        gst_pad_set_unlink_function_full((p),(f),NULL,NULL)
    +
    +
    +
    +
    +

    gst_pad_set_unlink_function_full ()

    +
    void                gst_pad_set_unlink_function_full    (GstPad *pad,
    +                                                         GstPadUnlinkFunction unlink,
    +                                                         gpointer user_data,
    +                                                         GDestroyNotify notify);

    Sets the given unlink function for the pad. It will be called when the pad is unlinked. @@ -2397,6 +2583,15 @@ when the pad is unlinked.

    unlink :

    the GstPadUnlinkFunction to set. + +

    user_data :

    +user_data passed to notify + + + +

    notify :

    +notify called when unlink will not be used anymore. +
    @@ -2417,179 +2612,18 @@ Function signature to handle a unlinking the pad prom its peer.
    -

    gst_pad_accept_caps ()

    -
    gboolean            gst_pad_accept_caps                 (GstPad *pad,
    -                                                         GstCaps *caps);
    -

    -Check if the given pad accepts the caps. -

    -
    -- - - - - - - - - - - - - - -

    pad :

    a GstPad to check

    caps :

    a GstCaps to check on the pad

    Returns :

    TRUE if the pad can accept the caps.
    -
    -
    -
    -

    gst_pad_set_acceptcaps_function ()

    -
    void                gst_pad_set_acceptcaps_function     (GstPad *pad,
    -                                                         GstPadAcceptCapsFunction acceptcaps);
    -

    -Sets the given acceptcaps function for the pad. The acceptcaps function -will be called to check if the pad can accept the given caps. Setting the -acceptcaps function to NULL restores the default behaviour of allowing -any caps that matches the caps from gst_pad_get_caps(). -

    -
    -- - - - - - - - - - -

    pad :

    a GstPad.

    acceptcaps :

    the GstPadAcceptCapsFunction to set.
    -
    -
    -
    -

    GstPadAcceptCapsFunction ()

    -
    gboolean            (*GstPadAcceptCapsFunction)         (GstPad *pad,
    -                                                         GstCaps *caps);
    -

    -Check if pad can accept caps. By default this function will see if caps -intersect with the result from gst_pad_get_caps() by can be overridden to -perform extra checks. -

    -
    -- - - - - - - - - - - - - - -

    pad :

    the GstPad to check

    caps :

    the GstCaps to check

    Returns :

    TRUE if the caps can be accepted by the pad.
    -
    -
    -
    -

    gst_pad_set_getcaps_function ()

    -
    void                gst_pad_set_getcaps_function        (GstPad *pad,
    -                                                         GstPadGetCapsFunction getcaps);
    -

    -Sets the given getcaps function for the pad. getcaps should return the -allowable caps for a pad in the context of the element's state, its link to -other elements, and the devices or files it has opened. These caps must be a -subset of the pad template caps. In the NULL state with no links, getcaps -should ideally return the same caps as the pad template. In rare -circumstances, an object property can affect the caps returned by getcaps, -but this is discouraged. -

    -

    -You do not need to call this function if pad's allowed caps are always the -same as the pad template caps. This can only be true if the padtemplate -has fixed simple caps. -

    -

    -For most filters, the caps returned by getcaps is directly affected by the -allowed caps on other pads. For demuxers and decoders, the caps returned by -the srcpad's getcaps function is directly related to the stream data. Again, -getcaps should return the most specific caps it reasonably can, since this -helps with autoplugging. -

    -

    -Note that the return value from getcaps is owned by the caller, so the -caller should unref the caps after usage. -

    -
    -- - - - - - - - - - -

    pad :

    a GstPad.

    getcaps :

    the GstPadGetCapsFunction to set.
    -
    -
    -
    -

    GstPadGetCapsFunction ()

    -
    GstCaps *           (*GstPadGetCapsFunction)            (GstPad *pad,
    -                                                         GstCaps *filter);
    -

    -When called on sinkpads filter contains the caps that -upstream could produce in the order preferred by upstream. When -called on srcpads filter contains the caps accepted by -downstream in the preffered order. filter might be NULL but if -it is not NULL only a subset of filter must be returned. -

    -

    -Returns a copy of the capabilities of the specified pad. By default this -function will return the pad template capabilities, but can optionally -be overridden by elements. -

    -
    -- - - - - - - - - - - - - - -

    pad :

    the GstPad to get the capabilities of.

    filter :

    filter GstCaps.

    Returns :

    a newly allocated copy GstCaps of the pad.
    -
    -
    -
    -

    gst_pad_proxy_getcaps ()

    -
    GstCaps *           gst_pad_proxy_getcaps               (GstPad *pad,
    -                                                         GstCaps *filter);
    +

    gst_pad_proxy_query_caps ()

    +
    gboolean            gst_pad_proxy_query_caps            (GstPad *pad,
    +                                                         GstQuery *query);

    -Calls gst_pad_get_allowed_caps() for every other pad belonging to the -same element as pad, and returns the intersection of the results. +Calls gst_pad_query_caps() for all internally linked pads fof pad and returns +the intersection of the results.

    -This function is useful as a default getcaps function for an element +This function is useful as a default caps query function for an element that can handle any stream format, but requires all its pads to have the same caps. Two such elements are tee and adder.

    -

    -Free-function: gst_caps_unref -

    @@ -2598,125 +2632,64 @@ Free-function: gst_caps_unref - - + + - +
    a GstPad to proxy.

    filter :

    a GstCaps filter.

    query :

    a CAPS GstQuery.

    Returns :

    the intersection of the other pads' allowed caps. [transfer full] -TRUE if query could be executed

    -

    gst_pad_fixate_caps ()

    -
    void                gst_pad_fixate_caps                 (GstPad *pad,
    -                                                         GstCaps *caps);
    +

    gst_pad_proxy_query_accept_caps ()

    +
    gboolean            gst_pad_proxy_query_accept_caps     (GstPad *pad,
    +                                                         GstQuery *query);

    -Fixate a caps on the given pad. Modifies the caps in place, so you should -make sure that the caps are actually writable (see gst_caps_make_writable()). +Calls gst_pad_accept_caps() for all internally linked pads of pad and +returns the intersection of the results.

    -
    -- - - - - - - - - - -

    pad :

    a GstPad to fixate

    caps :

    the GstCaps to fixate
    -
    -
    -
    -

    gst_pad_set_fixatecaps_function ()

    -
    void                gst_pad_set_fixatecaps_function     (GstPad *pad,
    -                                                         GstPadFixateCapsFunction fixatecaps);

    -Sets the given fixatecaps function for the pad. The fixatecaps function -will be called whenever the default values for a GstCaps needs to be -filled in. +This function is useful as a default accept caps query function for an element +that can handle any stream format, but requires caps that are acceptable for +all oposite pads.

    - - - - - + - -

    pad :

    a GstPad.

    fixatecaps :

    the GstPadFixateCapsFunction to set.a GstPad to proxy.
    -
    -
    -
    -

    GstPadFixateCapsFunction ()

    -
    void                (*GstPadFixateCapsFunction)         (GstPad *pad,
    -                                                         GstCaps *caps);
    -

    -Given possibly unfixed caps caps, let pad use its default preferred -format to make a fixed caps. caps should be writable. By default this -function will pick the first value of any ranges or lists in the caps but -elements can override this function to perform other behaviour. -

    -
    -- - - + + - - + +

    pad :

    a GstPad -

    query :

    an ACCEPT_CAPS GstQuery.

    caps :

    the GstCaps to fixate

    Returns :

    TRUE if query could be executed

    -

    gst_pad_peer_accept_caps ()

    -
    gboolean            gst_pad_peer_accept_caps            (GstPad *pad,
    -                                                         GstCaps *caps);
    -

    -Check if the peer of pad accepts caps. If pad has no peer, this function -returns TRUE. -

    -
    -- - - - - - - - - - - - - - -

    pad :

    a GstPad to check the peer of

    caps :

    a GstCaps to check on the pad

    Returns :

    TRUE if the peer of pad can accept the caps or pad has no peer.
    +

    gst_pad_set_activate_function()

    +
    #define gst_pad_set_activate_function(p,f)      gst_pad_set_activate_function_full((p),(f),NULL,NULL)
    +

    -

    gst_pad_set_activate_function ()

    -
    void                gst_pad_set_activate_function       (GstPad *pad,
    -                                                         GstPadActivateFunction activate);
    +

    gst_pad_set_activate_function_full ()

    +
    void                gst_pad_set_activate_function_full  (GstPad *pad,
    +                                                         GstPadActivateFunction activate,
    +                                                         gpointer user_data,
    +                                                         GDestroyNotify notify);

    Sets the given activate function for pad. The activate function will -dispatch to gst_pad_activate_push() or gst_pad_activate_pull() to perform +dispatch to gst_pad_activate_push() or gst_pad_activate_pull() to perform the actual activation. Only makes sense to set on sink pads.

    @@ -2733,13 +2706,23 @@ Call this function if your sink pad can start a pull-based task.

    activate :

    the GstPadActivateFunction to set. + +

    user_data :

    +user_data passed to notify + + + +

    notify :

    +notify called when activate will not be used anymore. +

    GstPadActivateFunction ()

    -
    gboolean            (*GstPadActivateFunction)           (GstPad *pad);
    +
    gboolean            (*GstPadActivateFunction)           (GstPad *pad,
    +                                                         GstObject *parent);

    This function is called when the pad is activated during the element READY to PAUSED state change. By default this function will call the @@ -2753,46 +2736,36 @@ override this function to activate the pad in pull mode if they wish.

    pad :

    a GstPad - - -

    Returns :

    -TRUE if the pad could be activated. - - -
    - -
    -
    -

    gst_pad_set_activatepush_function ()

    -
    void                gst_pad_set_activatepush_function   (GstPad *pad,
    -                                                         GstPadActivateModeFunction activatepush);
    -

    -Sets the given activate_push function for the pad. An activate_push function -prepares the element for pushing. See XXX part-activation.txt for details. -

    -
    -- + - - + + - - + +

    pad :

    a GstPad.

    parent :

    the parent of pad +

    activatepush :

    the GstPadActivateModeFunction to set.

    Returns :

    TRUE if the pad could be activated.

    -

    gst_pad_set_activatepull_function ()

    -
    void                gst_pad_set_activatepull_function   (GstPad *pad,
    -                                                         GstPadActivateModeFunction activatepull);
    +

    gst_pad_set_activatemode_function()

    +
    #define gst_pad_set_activatemode_function(p,f)  gst_pad_set_activatemode_function_full((p),(f),NULL,NULL)
    +
    +
    +
    +
    +

    gst_pad_set_activatemode_function_full ()

    +
    void                gst_pad_set_activatemode_function_full
    +                                                        (GstPad *pad,
    +                                                         GstPadActivateModeFunction activatemode,
    +                                                         gpointer user_data,
    +                                                         GDestroyNotify notify);

    -Sets the given activate_pull function for the pad. An activate_pull function -prepares the element and any upstream connections for pulling. See XXX -part-activation.txt for details. +Sets the given activate_mode function for the pad. An activate_mode function +prepares the element for data passing.

    @@ -2802,9 +2775,18 @@ part-activation.txt for details. - + + + + + + + + +
    a GstPad.

    activatepull :

    activatemode :

    the GstPadActivateModeFunction to set.

    user_data :

    user_data passed to notify +

    notify :

    notify called when activatemode will not be used anymore.
    @@ -2812,6 +2794,8 @@ part-activation.txt for details.

    GstPadActivateModeFunction ()

    gboolean            (*GstPadActivateModeFunction)       (GstPad *pad,
    +                                                         GstObject *parent,
    +                                                         GstPadMode mode,
                                                              gboolean active);

    The prototype of the push and pull activate functions. @@ -2825,6 +2809,16 @@ The prototype of the push and pull activate functions. +

    parent :

    +the parent of pad + + + +

    mode :

    +the requested activation mode of pad + + +

    active :

    activate or deactivate the pad. @@ -2840,7 +2834,7 @@ The prototype of the push and pull activate functions.

    gst_pad_check_reconfigure ()

    gboolean            gst_pad_check_reconfigure           (GstPad *pad);

    -Check and clear the GST_PAD_NEED_RECONFIGURE flag on pad and return TRUE +Check and clear the GST_PAD_FLAG_NEED_RECONFIGURE flag on pad and return TRUE if the flag was set.

    @@ -2853,7 +2847,7 @@ if the flag was set. +TRUE is the GST_PAD_FLAG_NEED_RECONFIGURE flag was set on pad.

    Returns :

    -TRUE is the GST_PAD_NEED_RECONFIGURE flag was set on pad.
    @@ -2999,11 +2993,11 @@ MT safe.

    gst_pad_pull_range ()

    GstFlowReturn       gst_pad_pull_range                  (GstPad *pad,
    -                                                         guint64 offset,
    +                                                         guint64 offset,
                                                              guint size,
                                                              GstBuffer **buffer);

    -Pulls a buffer from the peer pad. +Pulls a buffer from the peer pad or fills up a provided buffer.

    This function will first trigger the pad block signal if it was @@ -3015,6 +3009,25 @@ function returns the result of gst_pad_get_range() for a list of return values and for the semantics of the arguments of this function.

    +

    +If buffer points to a variable holding NULL, a valid new GstBuffer will be +placed in buffer when this function returns GST_FLOW_OK. The new buffer +must be freed with gst_buffer_unref() after usage. When this function +returns any other result value, buffer will still point to NULL. +

    +

    +When buffer points to a variable that points to a valid GstBuffer, the +buffer will be filled with the result data when this function returns +GST_FLOW_OK. When this function returns any other result value, +buffer will be unchanged. If the provided buffer is larger than size, only +size bytes will be filled in the result buffer and its size will be updated +accordingly. +

    +

    +Note that less than size bytes can be returned in buffer when, for example, +an EOS condition is near or when buffer is not large enough to hold size +bytes. The caller should check the result buffer size to get the result size. +

    @@ -3039,10 +3052,6 @@ GST_FLOW_ERROR if Returns :

    @@ -3050,15 +3059,13 @@ MT safe.
    -

    gst_pad_activate_pull ()

    -
    gboolean            gst_pad_activate_pull               (GstPad *pad,
    +

    gst_pad_activate_mode ()

    +
    gboolean            gst_pad_activate_mode               (GstPad *pad,
    +                                                         GstPadMode mode,
                                                              gboolean active);

    -Activates or deactivates the given pad in pull mode via dispatching to the -pad's activatepullfunc. For use from within pad activation functions only. -When called on sink pads, will first proxy the call to the peer pad, which -is expected to activate its internally linked pads from within its -activate_pull function. +Activates or deactivates the given pad in mode via dispatching to the +pad's activatemodefunc. For use from within pad activation functions only.

    If you don't know what this is, you probably don't want to call it. @@ -3071,44 +3078,16 @@ If you don't know what this is, you probably don't want to call it.

    - - - - - - - - -
    a GstFlowReturn from the peer pad. -When this function returns GST_FLOW_OK, buffer will contain a valid -GstBuffer that should be freed with gst_buffer_unref() after usage. -buffer may not be used or freed when any other return value than -GST_FLOW_OK is returned. MT safe.
    the GstPad to activate or deactivate.

    active :

    whether or not the pad should be active.

    Returns :

    TRUE if the operation was successful. -MT safe.
    -
    -
    -
    -

    gst_pad_activate_push ()

    -
    gboolean            gst_pad_activate_push               (GstPad *pad,
    -                                                         gboolean active);
    -

    -Activates or deactivates the given pad in push mode via dispatching to the -pad's activatepushfunc. For use from within pad activation functions only. -

    -

    -If you don't know what this is, you probably don't want to call it. -

    -
    -- - - - + + - + - @@ -3167,6 +3146,7 @@ This function takes owership of the provided event so you should

    gst_pad_event_default ()

    gboolean            gst_pad_event_default               (GstPad *pad,
    +                                                         GstObject *parent,
                                                              GstEvent *event);

    Invokes the default event handler for the given pad. @@ -3176,9 +3156,6 @@ The EOS event will pause the task associated with pa to all internally linked pads,

    -The CAPS event will never be forwarded. -

    -

    The the event is sent to all pads internally linked to pad. This function takes ownership of event.

    @@ -3190,6 +3167,10 @@ takes ownership of event.
    + + + + @@ -3276,6 +3257,7 @@ if pad has no peer.

    gst_pad_query_default ()

    gboolean            gst_pad_query_default               (GstPad *pad,
    +                                                         GstObject *parent,
                                                              GstQuery *query);

    Invokes the default query handler for the given pad. @@ -3292,6 +3274,10 @@ Multi-sinkpad elements should implement custom query handlers.

    + + + + @@ -3308,7 +3294,7 @@ Multi-sinkpad elements should implement custom query handlers.

    gst_pad_query_position ()

    gboolean            gst_pad_query_position              (GstPad *pad,
                                                              GstFormat format,
    -                                                         gint64 *cur);
    + gint64 *cur);

    Queries a pad for the stream position.

    @@ -3340,7 +3326,7 @@ Queries a pad for the stream position.

    gst_pad_query_duration ()

    gboolean            gst_pad_query_duration              (GstPad *pad,
                                                              GstFormat format,
    -                                                         gint64 *duration);
    + gint64 *duration);

    Queries a pad for the total stream duration.

    @@ -3373,9 +3359,9 @@ duration, or NULL. [

    gst_pad_query_convert ()

    gboolean            gst_pad_query_convert               (GstPad *pad,
                                                              GstFormat src_format,
    -                                                         gint64 src_val,
    +                                                         gint64 src_val,
                                                              GstFormat dest_format,
    -                                                         gint64 *dest_val);
    + gint64 *dest_val);

    Queries a pad to convert src_val in src_format to dest_format.

    @@ -3412,10 +3398,80 @@ Queries a pad to convert src_val in
    -

    gst_pad_query_peer_position ()

    -
    gboolean            gst_pad_query_peer_position         (GstPad *pad,
    +

    gst_pad_query_accept_caps ()

    +
    gboolean            gst_pad_query_accept_caps           (GstPad *pad,
    +                                                         GstCaps *caps);
    +

    +Check if the given pad accepts the caps. +

    +

    pad :

    the GstPad to activate or deactivate.

    mode :

    the requested activation mode

    active :

    whether the pad should be active or not.whether or not the pad should be active.

    Returns :

    -TRUE if the operation was successful. +TRUE if the operation was successful. MT safe.
    a GstPad to call the default event handler on.

    parent :

    the parent of pad or NULL

    event :

    the GstEvent to handle. [transfer full] a GstPad to call the default query handler on.

    parent :

    the parent of pad or NULL

    query :

    the GstQuery to handle. [transfer none]
    ++ + + + + + + + + + + + + + +

    pad :

    a GstPad to check

    caps :

    a GstCaps to check on the pad

    Returns :

    TRUE if the pad can accept the caps.
    +
    +
    +
    +

    gst_pad_query_caps ()

    +
    GstCaps *           gst_pad_query_caps                  (GstPad *pad,
    +                                                         GstCaps *filter);
    +

    +Gets the capabilities this pad can produce or consume. +Note that this method doesn't necessarily return the caps set by +gst_pad_set_caps() - use gst_pad_get_current_caps() for that instead. +gst_pad_query_caps returns all possible caps a pad can operate with, using +the pad's CAPS query function, If the query fails, this function will return +filter, if not NULL, otherwise ANY. +

    +

    +When called on sinkpads filter contains the caps that +upstream could produce in the order preferred by upstream. When +called on srcpads filter contains the caps accepted by +downstream in the preffered order. filter might be NULL but +if it is not NULL the returned caps will be a subset of filter. +

    +

    +Note that this function does not return writable GstCaps, use +gst_caps_make_writable() before modifying the caps. +

    +
    ++ + + + + + + + + + + + + + +

    pad :

    a GstPad to get the capabilities of.

    filter :

    suggested GstCaps, or NULL. [allow-none] +

    Returns :

    the caps of the pad with incremented ref-count. [transfer full] +
    +
    +
    +
    +

    gst_pad_peer_query_position ()

    +
    gboolean            gst_pad_peer_query_position         (GstPad *pad,
                                                              GstFormat format,
    -                                                         gint64 *cur);
    + gint64 *cur);

    Queries the peer of a given sink pad for the stream position.

    @@ -3446,10 +3502,10 @@ position, or NULL. [ -

    gst_pad_query_peer_duration ()

    -
    gboolean            gst_pad_query_peer_duration         (GstPad *pad,
    +

    gst_pad_peer_query_duration ()

    +
    gboolean            gst_pad_peer_query_duration         (GstPad *pad,
                                                              GstFormat format,
    -                                                         gint64 *duration);
    + gint64 *duration);

    Queries the peer pad of a given sink pad for the total stream duration.

    @@ -3480,12 +3536,12 @@ duration, or NULL. [ -

    gst_pad_query_peer_convert ()

    -
    gboolean            gst_pad_query_peer_convert          (GstPad *pad,
    +

    gst_pad_peer_query_convert ()

    +
    gboolean            gst_pad_peer_query_convert          (GstPad *pad,
                                                              GstFormat src_format,
    -                                                         gint64 src_val,
    +                                                         gint64 src_val,
                                                              GstFormat dest_format,
    -                                                         gint64 *dest_val);
    + gint64 *dest_val);

    Queries the peer pad of a given sink pad to convert src_val in src_format to dest_format. @@ -3524,59 +3580,82 @@ Must be a sink pad.


    -

    gst_pad_set_query_function ()

    -
    void                gst_pad_set_query_function          (GstPad *pad,
    -                                                         GstPadQueryFunction query);
    +

    gst_pad_peer_query_accept_caps ()

    +
    gboolean            gst_pad_peer_query_accept_caps      (GstPad *pad,
    +                                                         GstCaps *caps);

    -Set the given query function for the pad. +Check if the peer of pad accepts caps. If pad has no peer, this function +returns TRUE.

    - + - - + + + + + +

    pad :

    a GstPad of either direction.a GstPad to check the peer of

    query :

    the GstPadQueryFunction to set.

    caps :

    a GstCaps to check on the pad

    Returns :

    TRUE if the peer of pad can accept the caps or pad has no peer.

    -

    GstPadQueryFunction ()

    -
    gboolean            (*GstPadQueryFunction)              (GstPad *pad,
    -                                                         GstQuery *query);
    +

    gst_pad_peer_query_caps ()

    +
    GstCaps *           gst_pad_peer_query_caps             (GstPad *pad,
    +                                                         GstCaps *filter);

    -The signature of the query function. +Gets the capabilities of the peer connected to this pad. Similar to +gst_pad_query_caps(). +

    +

    +When called on srcpads filter contains the caps that +upstream could produce in the order preferred by upstream. When +called on sinkpads filter contains the caps accepted by +downstream in the preffered order. filter might be NULL but +if it is not NULL the returned caps will be a subset of filter.

    - + - - + + - +

    pad :

    the GstPad to query.a GstPad to get the capabilities of.

    query :

    the GstQuery object to execute

    filter :

    a GstCaps filter, or NULL. [allow-none] +

    Returns :

    TRUE if the query could be performed.the caps of the peer pad with incremented ref-count. This function +returns NULL when there is no peer pad.

    -

    gst_pad_set_query_type_function ()

    -
    void                gst_pad_set_query_type_function     (GstPad *pad,
    -                                                         GstPadQueryTypeFunction type_func);
    +

    gst_pad_set_query_function()

    +
    #define gst_pad_set_query_function(p,f)   gst_pad_set_query_function_full((p),(f),NULL,NULL)
    +
    +
    +
    +
    +

    gst_pad_set_query_function_full ()

    +
    void                gst_pad_set_query_function_full     (GstPad *pad,
    +                                                         GstPadQueryFunction query,
    +                                                         gpointer user_data,
    +                                                         GDestroyNotify notify);

    -Set the given query type function for the pad. +Set the given query function for the pad.

    @@ -3586,88 +3665,68 @@ Set the given query type function for the pad. - - + + - -
    a GstPad of either direction.

    type_func :

    the GstPadQueryTypeFunction to set.

    query :

    the GstPadQueryFunction to set.
    -
    -
    -
    -

    GstPadQueryTypeFunction ()

    -
    const GstQueryType * (*GstPadQueryTypeFunction)         (GstPad *pad);
    -

    -The signature of the query types function. -

    -
    -- - - + + - - + +

    pad :

    a GstPad to query

    user_data :

    user_data passed to notify +

    Returns :

    a constant array of query types

    notify :

    notify called when query will not be used anymore.

    -

    gst_pad_get_query_types ()

    -
    const GstQueryType * gst_pad_get_query_types            (GstPad *pad);
    +

    GstPadQueryFunction ()

    +
    gboolean            (*GstPadQueryFunction)              (GstPad *pad,
    +                                                         GstObject *parent,
    +                                                         GstQuery *query);

    -Get an array of supported queries that can be performed -on this pad. +The signature of the query function.

    - + - - + + - -

    pad :

    a GstPad.the GstPad to query.

    Returns :

    a zero-terminated array -of GstQueryType. [transfer none][array zero-terminated=1] -

    parent :

    the parent of pad. If the GST_PAD_FLAG_NEED_PARENT flag is set, +parent is guaranteed to be not-NULL and remain valid during the +execution of this function.
    -
    -
    -
    -

    gst_pad_get_query_types_default ()

    -
    const GstQueryType * gst_pad_get_query_types_default    (GstPad *pad);
    -

    -Invoke the default query types function on the pad. This function will get -the supported query type from the peer of an internally linked pad of pad. -

    -
    -- - - + + - +

    pad :

    a GstPad.

    query :

    the GstQuery object to execute

    Returns :

    a zero-terminated array -of GstQueryType, or NULL if none of the internally-linked pads has a -query types function. [transfer none][array zero-terminated=1] -TRUE if the query could be performed.

    -

    gst_pad_set_iterate_internal_links_function ()

    -
    void                gst_pad_set_iterate_internal_links_function
    +

    gst_pad_set_iterate_internal_links_function()

    +
    #define gst_pad_set_iterate_internal_links_function(p,f) gst_pad_set_iterate_internal_links_function_full((p),(f),NULL,NULL)
    +
    +
    +
    +
    +

    gst_pad_set_iterate_internal_links_function_full ()

    +
    void                gst_pad_set_iterate_internal_links_function_full
                                                             (GstPad *pad,
    -                                                         GstPadIterIntLinkFunction iterintlink);
    + GstPadIterIntLinkFunction iterintlink, + gpointer user_data, + GDestroyNotify notify);

    Sets the given internal link iterator function for the pad.

    @@ -3682,6 +3741,15 @@ Sets the given internal link iterator function for the pad.

    iterintlink :

    the GstPadIterIntLinkFunction to set. + +

    user_data :

    +user_data passed to notify + + + +

    notify :

    +notify called when iterintlink will not be used anymore. +

    Since 0.10.21

    @@ -3689,7 +3757,8 @@ Sets the given internal link iterator function for the pad.

    GstPadIterIntLinkFunction ()

    -
    GstIterator *       (*GstPadIterIntLinkFunction)        (GstPad *pad);
    +
    GstIterator *       (*GstPadIterIntLinkFunction)        (GstPad *pad,
    +                                                         GstObject *parent);

    The signature of the internal pad link iterator function.

    @@ -3701,6 +3770,12 @@ The signature of the internal pad link iterator function. The GstPad to query. +

    parent :

    +the parent of pad. If the GST_PAD_FLAG_NEED_PARENT flag is set, +parent is guaranteed to be not-NULL and remain valid during the +execution of this function. + +

    Returns :

    a new GstIterator that will iterate over all pads that are linked to the given pad on the inside of the parent element. @@ -3747,7 +3822,8 @@ pad does not have an iterator function configured. Use

    gst_pad_iterate_internal_links_default ()

    GstIterator *       gst_pad_iterate_internal_links_default
    -                                                        (GstPad *pad);
    + (GstPad *pad, + GstObject *parent);

    Iterate the list of pads to which the given pad is linked to inside of the parent element. @@ -3765,6 +3841,10 @@ The caller must free this iterator after use with GstPad to get the internal links of. +

    parent :

    +the parent of pad or NULL + +

    Returns :

    a GstIterator of GstPad, or NULL if pad has no parent. Unref each returned pad with gst_object_unref(). @@ -3895,7 +3975,7 @@ When forward returns TRUE, no further pa Chain a buffer to pad.

    -The function returns GST_FLOW_WRONG_STATE if the pad was flushing. +The function returns GST_FLOW_FLUSHING if the pad was flushing.

    If the buffer type is not acceptable for pad (as negotiated with a @@ -3904,7 +3984,7 @@ preceeding GST_EVENT_CAPS event), this function returns

    The function proceeds calling the chain function installed on pad (see -gst_pad_set_chain_function()) and the return value of that function is +gst_pad_set_chain_function()) and the return value of that function is returned to the caller. GST_FLOW_NOT_SUPPORTED is returned if pad has no chain function.

    @@ -3942,7 +4022,7 @@ MT safe. Chain a bufferlist to pad.

    -The function returns GST_FLOW_WRONG_STATE if the pad was flushing. +The function returns GST_FLOW_FLUSHING if the pad was flushing.

    If pad was not negotiated properly with a CAPS event, this function @@ -3950,7 +4030,7 @@ returns

    The function proceeds calling the chainlist function installed on pad (see -gst_pad_set_chain_list_function()) and the return value of that function is +gst_pad_set_chain_list_function()) and the return value of that function is returned to the caller. GST_FLOW_NOT_SUPPORTED is returned if pad has no chainlist function.

    @@ -4087,7 +4167,7 @@ function to perform the actual activation.

    If not active, checks the pad's current mode and calls -gst_pad_activate_push() or gst_pad_activate_pull(), as appropriate, with a +gst_pad_activate_push() or gst_pad_activate_pull(), as appropriate, with a FALSE argument.

    @@ -4131,7 +4211,7 @@ resources used in the data processing functions of p

    GST_PAD_STREAM_LOCK()

    -
    #define GST_PAD_STREAM_LOCK(pad)        (g_static_rec_mutex_lock(GST_PAD_GET_STREAM_LOCK(pad)))
    +
    #define GST_PAD_STREAM_LOCK(pad)        g_rec_mutex_lock(GST_PAD_GET_STREAM_LOCK(pad))
     

    Lock the stream lock of pad. @@ -4147,31 +4227,8 @@ Lock the stream lock of pad.


    -

    GST_PAD_STREAM_LOCK_FULL()

    -
    #define GST_PAD_STREAM_LOCK_FULL(pad,t) (g_static_rec_mutex_lock_full(GST_PAD_GET_STREAM_LOCK(pad), t))
    -
    -

    -Lock the stream lock of pad t times. -

    -
    -- - - - - - - - - - -

    pad :

    a GstPad -

    t :

    the number of times to recursively lock
    -
    -
    -

    GST_PAD_STREAM_TRYLOCK()

    -
    #define GST_PAD_STREAM_TRYLOCK(pad)     (g_static_rec_mutex_trylock(GST_PAD_GET_STREAM_LOCK(pad)))
    +
    #define GST_PAD_STREAM_TRYLOCK(pad)     g_rec_mutex_trylock(GST_PAD_GET_STREAM_LOCK(pad))
     

    Try to Lock the stream lock of the pad, return TRUE if the lock could be @@ -4189,7 +4246,7 @@ taken.


    GST_PAD_STREAM_UNLOCK()

    -
    #define GST_PAD_STREAM_UNLOCK(pad)      (g_static_rec_mutex_unlock(GST_PAD_GET_STREAM_LOCK(pad)))
    +
    #define GST_PAD_STREAM_UNLOCK(pad)      g_rec_mutex_unlock(GST_PAD_GET_STREAM_LOCK(pad))
     

    Unlock the stream lock of pad. @@ -4203,24 +4260,6 @@ Unlock the stream lock of pad.

    -
    -
    -

    GST_PAD_STREAM_UNLOCK_FULL()

    -
    #define GST_PAD_STREAM_UNLOCK_FULL(pad) (g_static_rec_mutex_unlock_full(GST_PAD_GET_STREAM_LOCK(pad)))
    -
    -

    -Fully unlock the recursive stream lock of pad, return the number of times -pad was locked. -

    -
    -- - - - -

    pad :

    a GstPad -
    -

    Property Details

    @@ -4301,7 +4340,7 @@ Signals that a pad has been unlinked from the peer pad.


    @@ -159,16 +183,31 @@ The following code example shows the code to create a pad from a padtemplate. The following example shows you how to add the padtemplate to an element class, this is usually done in the class_init of the class:

    -
    -  static void
    -  my_element_class_init (GstMyElementClass *klass)
    -  {
    -    GstElementClass *gstelement_class = GST_ELEMENT_CLASS (klass);
    +
    + + + + + + + +
    1
    +2
    +3
    +4
    +5
    +6
    +7
    +8
    static void
    +my_element_class_init (GstMyElementClass *klass)
    +{
    +  GstElementClass *gstelement_class = GST_ELEMENT_CLASS (klass);
    +
    +  gst_element_class_add_pad_template (gstelement_class,
    +      gst_static_pad_template_get (&my_template));
    +}
    +
    - gst_element_class_add_pad_template (gstelement_class, - gst_static_pad_template_get (&my_template)); - } -

    @@ -458,11 +497,12 @@ and with the given arguments.

    caps :

    -a GstCaps set for the template. +a GstCaps set for the template. [transfer none] +

    Returns :

    -a new GstPadTemplate. [transfer full] +a new GstPadTemplate. [transfer floating] diff --git a/docs/gst/html/GstPipeline.html b/docs/gst/html/GstPipeline.html index 60cc959..83cd819 100644 --- a/docs/gst/html/GstPipeline.html +++ b/docs/gst/html/GstPipeline.html @@ -3,8 +3,8 @@ GstPipeline - - + + @@ -17,7 +17,7 @@ Prev Up Home -GStreamer 0.11 Core Reference Manual +GStreamer 1.0 Core Reference Manual Next @@ -86,7 +86,7 @@ GstPipeline implements

    Properties

       "auto-flush-bus"           gboolean              : Read / Write
    -  "delay"                    guint64               : Read / Write
    +  "delay"                    guint64               : Read / Write
     
    @@ -95,8 +95,7 @@ GstPipeline implements A GstPipeline is a special GstBin used as the toplevel container for the filter graph. The GstPipeline will manage the selection and distribution of a global GstClock as well as provide a GstBus to the -application. It will also implement a default behaviour for managing -seek events (see gst_element_seek()). +application.

    gst_pipeline_new() is used to create a pipeline. when you are done with @@ -147,13 +146,7 @@ in the PLAYING state. This default behaviour can be changed with the gst_element_set_start_time() method.

    -When sending a flushing seek event to a GstPipeline (see -gst_element_seek()), it will make sure that the pipeline is properly -PAUSED and resumed as well as set the new running time to 0 when the -seek succeeded. -

    -

    -Last reviewed on 2009-05-29 (0.10.24) +Last reviewed on 2012-03-29 (0.11.3)

    @@ -163,7 +156,7 @@ Last reviewed on 2009-05-29 (0.10.24)
    struct GstPipeline {
       GstClock      *fixed_clock;
     
    -  GstClockTime   stream_time;	
    +  GstClockTime   stream_time;
       GstClockTime   delay;
     };
     
    @@ -238,7 +231,7 @@ Create a new pipeline with the given name.

    Returns :

    newly created GstPipeline -MT safe. [transfer full] +MT safe. [transfer floating] @@ -524,7 +517,7 @@ pipeline's bus when going from READY to NULL state. Please see

    The "delay" property

    -
      "delay"                    guint64               : Read / Write
    +
      "delay"                    guint64               : Read / Write

    The expected delay needed for elements to spin up to the PLAYING state expressed in nanoseconds. diff --git a/docs/gst/html/GstPlugin.html b/docs/gst/html/GstPlugin.html index 73b2136..498bbc8 100644 --- a/docs/gst/html/GstPlugin.html +++ b/docs/gst/html/GstPlugin.html @@ -3,8 +3,8 @@ GstPlugin - - + + @@ -17,7 +17,7 @@ Prev Up Home -GStreamer 0.11 Core Reference Manual +GStreamer 1.0 Core Reference Manual Next diff --git a/docs/gst/html/GstPluginFeature.html b/docs/gst/html/GstPluginFeature.html index e128696..98e8968 100644 --- a/docs/gst/html/GstPluginFeature.html +++ b/docs/gst/html/GstPluginFeature.html @@ -3,8 +3,8 @@ GstPluginFeature - - + + @@ -17,7 +17,7 @@ Prev Up Home -GStreamer 0.11 Core Reference Manual +GStreamer 1.0 Core Reference Manual Next @@ -43,12 +43,9 @@ #include <gst/gst.h> struct GstPluginFeature; - GstTypeNameData; gboolean (*GstPluginFeatureFilter) (GstPluginFeature *feature, gpointer user_data); enum GstRank; -gboolean gst_plugin_feature_type_name_filter (GstPluginFeature *feature, - GstTypeNameData *data); void gst_plugin_feature_set_rank (GstPluginFeature *feature, guint rank); #define gst_plugin_feature_set_name (feature, @@ -77,7 +74,6 @@ enum GstElementFactory +----GstTypeFindFactory - +----GstIndexFactory

    @@ -97,31 +93,6 @@ Opaque
    -

    GstTypeNameData

    -
    typedef struct {
    -  const gchar   *name;
    -  GType          type;
    -} GstTypeNameData;
    -
    -

    -Structure used for filtering based on name and type. -

    -
    -- - - - - - - - - - -

    const gchar *name;

    a name

    GType type;

    a GType
    -
    -
    -

    GstPluginFeatureFilter ()

    gboolean            (*GstPluginFeatureFilter)           (GstPluginFeature *feature,
                                                              gpointer user_data);
    @@ -198,34 +169,6 @@ These constants serve as a rough guidance for defining the rank of a

    -

    gst_plugin_feature_type_name_filter ()

    -
    gboolean            gst_plugin_feature_type_name_filter (GstPluginFeature *feature,
    -                                                         GstTypeNameData *data);
    -

    -Compares type and name of plugin feature. Can be used with gst_filter_run(). -

    -
    -- - - - - - - - - - - - - - -

    feature :

    the GstPluginFeature -

    data :

    the type and name to check against. [in] -

    Returns :

    TRUE if equal.
    -
    -
    -

    gst_plugin_feature_set_rank ()

    void                gst_plugin_feature_set_rank         (GstPluginFeature *feature,
                                                              guint rank);
    @@ -293,13 +236,11 @@ Gets the rank of a plugin feature.

    gst_plugin_feature_get_name()

    -
    #define                 gst_plugin_feature_get_name(feature)      gst_object_get_name(GST_OBJECT_CAST(feature))
    +
    #define                 gst_plugin_feature_get_name(feature)      GST_OBJECT_NAME(feature)
     

    -Returns a copy of the name of feature. -Caller should g_free() the return value after usage. -For a nameless plugin feature, this returns NULL, which you can safely g_free() -as well. +Returns the name of feature. +For a nameless plugin feature, this returns NULL.

    @@ -310,7 +251,7 @@ as well. - @@ -327,14 +268,27 @@ unaffected; use the return value instead.

    Normally this function is used like this:

    -
    -GstPluginFeature *loaded_feature;
    +
    +

    Returns :

    the name of feature. g_free() after usage. MT safe. [transfer full] +the name of feature. MT safe. [transfer none]
    + + + + + + +
    1
    +2
    +3
    +4
    +5
    +6
    GstPluginFeature *loaded_feature;
    +
    +loaded_feature = gst_plugin_feature_load (feature);
    +// presumably, we're no longer interested in the potentially-unloaded feature
    +gst_object_unref (feature);
    +feature = loaded_feature;
    +
    -loaded_feature = gst_plugin_feature_load (feature); -// presumably, we're no longer interested in the potentially-unloaded feature -gst_object_unref (feature); -feature = loaded_feature; -

    diff --git a/docs/gst/html/GstPreset.html b/docs/gst/html/GstPreset.html index 532c5c0..7156576 100644 --- a/docs/gst/html/GstPreset.html +++ b/docs/gst/html/GstPreset.html @@ -3,8 +3,8 @@ GstPreset - - + + @@ -17,7 +17,7 @@ - +
    Prev Up HomeGStreamer 0.11 Core Reference ManualGStreamer 1.0 Core Reference Manual Next
    @@ -63,6 +63,8 @@ struct const gchar *name, const gchar *tag, gchar **value); +gboolean gst_preset_set_app_dir (const gchar *app_dir); +const gchar * gst_preset_get_app_dir (void);
    @@ -89,6 +91,13 @@ native preset format of those wrapped plugins. One method that is useful to be overridden is gst_preset_get_property_names(). With that one can control which properties are saved and in which order.

    +

    +The default implementation supports presets located in a system directory, +application specific directory and in the users home directory. When getting +a list of presets individual presets are read and overlaid in 1) system, +2) application and 3) user order. Whenever an earlier entry is newer, the +later entries will be updated. +

    Details

    @@ -115,7 +124,7 @@ Opaque tag

    Since 0.10.20

    +
    +
    +

    gst_preset_set_app_dir ()

    +
    gboolean            gst_preset_set_app_dir              (const gchar *app_dir);
    +

    +Sets an extra directory as an absolute path that should be considered when +looking for presets. Any presets in the application dir will shadow the +system presets. +

    +
    ++ + + + + + + + + + +

    app_dir :

    the application specific preset dir

    Returns :

    +TRUE for success, FALSE if the dir already has been set
    +

    Since 0.10.36

    +
    +
    +
    +

    gst_preset_get_app_dir ()

    +
    const gchar *       gst_preset_get_app_dir              (void);
    +

    +Gets the directory for application specific presets if set by the +application. +

    +
    ++ + + + +

    Returns :

    the directory or NULL, don't free or modify the string
    +

    Since 0.10.36

    +
    @@ -130,14 +118,7 @@ One registry holds the metadata of a set of plugins.

    The GstRegistry object is a list of plugins and some functions for dealing with them. Each GstPlugin is matched 1-1 with a file on disk, and may or may -not be loaded at a given time. There may be multiple GstRegistry objects, -but the "default registry" is the only object that has any meaning to the -core. -

    -

    -The registry file is actually a cache of plugin information. This is -unlike versions prior to 0.10, where the registry file was the primary source -of plugin information, and was created by the gst-register command. +not be loaded at a given time.

    The primary source, at all times, of plugin information is each plugin file @@ -158,13 +139,13 @@ locations are checked in this order:

  • the GST_PLUGIN_SYSTEM_PATH environment variable.

  • default locations (if GST_PLUGIN_SYSTEM_PATH is not set). Those default locations are: - ~/.gstreamer-$GST_MAJORMINOR/plugins/ - and $prefix/libs/gstreamer-$GST_MAJORMINOR/. + ~/.gstreamer-$GST_API_VERSION/plugins/ + and $prefix/libs/gstreamer-$GST_API_VERSION/.

  • The registry cache file is loaded from -~/.gstreamer-$GST_MAJORMINOR/registry-$ARCH.bin or the +~/.gstreamer-$GST_API_VERSION/registry-$ARCH.bin or the file listed in the GST_REGISTRY env var. One reason to change the registry location is for testing.

    @@ -195,12 +176,15 @@ simply dropped. Implementation notes:

    -The "cache" and "default registry" are different concepts and can represent +The "cache" and "registry" are different concepts and can represent different sets of plugins. For various reasons, at init time, the cache is stored in the default registry, and plugins not relevant to the current process are marked with the GST_PLUGIN_FLAG_CACHED bit. These plugins are removed at the end of initialization.

    +

    +Last reviewed on 2012-03-29 (0.11.3) +

    Details

    @@ -213,17 +197,18 @@ Opaque -

    gst_registry_get_default ()

    -
    GstRegistry *       gst_registry_get_default            (void);
    +

    gst_registry_get ()

    +
    GstRegistry *       gst_registry_get                    (void);

    -Retrieves the default registry. The caller does not own a reference on the -registry, as it is alive as long as GStreamer is initialized. +Retrieves the singleton plugin registry. The caller does not own a +reference on the registry, as it is alive as long as GStreamer is +initialized.

    -

    Returns :

    The default GstRegistry. [transfer none] +the GstRegistry. [transfer none]
    @@ -261,7 +246,7 @@ MT safe. [

    gst_registry_get_feature_list_cookie ()

    -
    guint32             gst_registry_get_feature_list_cookie
    +
    guint32             gst_registry_get_feature_list_cookie
                                                             (GstRegistry *registry);

    Returns the registrys feature list cookie. This changes @@ -736,21 +721,26 @@ MT safe.


    -

    gst_default_registry_check_feature_version ()

    -
    gboolean            gst_default_registry_check_feature_version
    -                                                        (const gchar *feature_name,
    +

    gst_registry_check_feature_version ()

    +
    gboolean            gst_registry_check_feature_version  (GstRegistry *registry,
    +                                                         const gchar *feature_name,
                                                              guint min_major,
                                                              guint min_minor,
                                                              guint min_micro);

    -Checks whether a plugin feature by the given name exists in the -default registry and whether its version is at least the +Checks whether a plugin feature by the given name exists in +registry and whether its version is at least the version required.

    + + + + @@ -775,190 +765,14 @@ the same as the required version or newer, and -

    gst_default_registry_get_path_list

    -
    #define             gst_default_registry_get_path_list()
    -

    -Get the list of paths for the default registry. -

    -

    registry :

    a GstRegistry +

    feature_name :

    the name of the feature (e.g. "oggdemux")
    -- - - - -

    Returns :

    a GList of paths as -strings. g_list_free() after use. [transfer container][element-type char*] -
    -
    -
    -
    -

    gst_default_registry_add_plugin()

    -
    #define             gst_default_registry_add_plugin(plugin)
    -

    -Add the plugin to the default registry. -The plugin-added signal will be emitted. -

    -
    -- - - - - - - - - - -

    plugin :

    the plugin to add. [transfer full] -

    Returns :

    TRUE on success.
    -
    -
    -
    -

    gst_default_registry_add_path()

    -
    #define             gst_default_registry_add_path(path)
    -

    -Add the given path to the default registry. The syntax of the -path is specific to the registry. If the path has already been -added, do nothing. -

    -
    -- - - - -

    path :

    the path to add to the registry
    -
    -
    -
    -

    gst_default_registry_find_plugin()

    -
    #define             gst_default_registry_find_plugin(name)
    -

    -Find the plugin with the given name in the default registry. -The plugin will be reffed; caller is responsible for unreffing. -

    -
    -- - - - - - - - - - -

    name :

    the plugin name to find

    Returns :

    The plugin with the given name or NULL if the -plugin was not found. [transfer full] -
    -
    -
    -
    -

    gst_default_registry_find_feature()

    -
    #define             gst_default_registry_find_feature(name,type)
    -

    -Find the pluginfeature with the given name and type in the default registry. -

    -
    -- - - - - - - - - - - - - - -

    name :

    the pluginfeature name to find

    type :

    the pluginfeature type to find

    Returns :

    the pluginfeature with the given name and type or -NULL if the plugin was not found. [transfer full] -
    -
    -
    -
    -

    gst_default_registry_get_plugin_list

    -
    #define             gst_default_registry_get_plugin_list()
    -

    -Get a copy of all plugins registered in the default registry. -

    -
    -- - - - -

    Returns :

    a copy of the list. -Free after use. [transfer full][element-type Gst.Plugin] -
    -
    -
    -
    -

    gst_default_registry_get_feature_list_cookie

    -
    #define             gst_default_registry_get_feature_list_cookie()
    -

    -Returns the default registrys feature list cookie. This changes -every time a feature is added or removed from the registry. -

    -
    -- - - - -

    Returns :

    the feature list cookie.
    -

    Since 0.10.26

    -
    -
    -
    -

    gst_default_registry_feature_filter()

    -
    #define             gst_default_registry_feature_filter(filter,first,user_data)
    -

    -Runs a filter against all features of the plugins in the default registry -and returns a GList with the results. -If the first flag is set, only the first match is -returned (as a list with a single object). -

    -
    -- - - - - - - - - - - - - - - - - - -

    filter :

    the filter to use

    first :

    only return first match

    user_data :

    user data passed to the filter function

    Returns :

    a GList of -plugin features, gst_plugin_feature_list_free after use. [transfer full][element-type Gst.PluginFeature] -
    -

    Signal Details

    The "feature-added" signal

    -
    void                user_function                      (GstRegistry *registry,
    -                                                        gpointer     feature,
    -                                                        gpointer     user_data)      : Run Last
    +
    void                user_function                      (GstRegistry      *registry,
    +                                                        GstPluginFeature *feature,
    +                                                        gpointer          user_data)      : Run Last

    Signals that a feature has been added to the registry (possibly replacing a previously-added one by the same name) @@ -985,7 +799,7 @@ replacing a previously-added one by the same name)

    The "plugin-added" signal

    void                user_function                      (GstRegistry *registry,
    -                                                        gpointer     plugin,
    +                                                        GstPlugin   *plugin,
                                                             gpointer     user_data)      : Run Last

    Signals that a plugin has been added to the registry (possibly diff --git a/docs/gst/html/GstSystemClock.html b/docs/gst/html/GstSystemClock.html index 064ca35..be2923d 100644 --- a/docs/gst/html/GstSystemClock.html +++ b/docs/gst/html/GstSystemClock.html @@ -3,8 +3,8 @@ GstSystemClock - - + + @@ -17,7 +17,7 @@ Prev Up Home -GStreamer 0.11 Core Reference Manual +GStreamer 1.0 Core Reference Manual Next diff --git a/docs/gst/html/GstTagSetter.html b/docs/gst/html/GstTagSetter.html index 7029737..401c5ea 100644 --- a/docs/gst/html/GstTagSetter.html +++ b/docs/gst/html/GstTagSetter.html @@ -3,8 +3,8 @@ GstTagSetter - - + + @@ -17,7 +17,7 @@ Prev Up Home -GStreamer 0.11 Core Reference Manual +GStreamer 1.0 Core Reference Manual Next @@ -46,7 +46,7 @@ #include <gst/gst.h> GstTagSetter; -struct GstTagSetterIFace; +struct GstTagSetterInterface; void gst_tag_setter_reset_tags (GstTagSetter *setter); void gst_tag_setter_merge_tags (GstTagSetter *setter, const GstTagList *list, @@ -118,27 +118,53 @@ the interface. This can be done like this:

    -
    -GstTagMergeMode merge_mode;
    -const GstTagList *application_tags;
    -const GstTagList *event_tags;
    -GstTagSetter *tagsetter;
    -GstTagList *result;
    +
    + + + + + + + +
    1
    +2
    +3
    +4
    +5
    +6
    +7
    +8
    +9
    +10
    +11
    +12
    +13
    +14
    +15
    +16
    +17
    +18
    +19
    GstTagMergeMode merge_mode;
    +const GstTagList *application_tags;
    +const GstTagList *event_tags;
    +GstTagSetter *tagsetter;
    +GstTagList *result;
      
    -tagsetter = GST_TAG_SETTER (element);
    +tagsetter = GST_TAG_SETTER (element);
      
    -merge_mode = gst_tag_setter_get_tag_merge_mode (tagsetter);
    -application_tags = gst_tag_setter_get_tag_list (tagsetter);
    -event_tags = (const GstTagList *) element->event_tags;
    +merge_mode = gst_tag_setter_get_tag_merge_mode (tagsetter);
    +application_tags = gst_tag_setter_get_tag_list (tagsetter);
    +event_tags = (const GstTagList *) element->event_tags;
      
    -GST_LOG_OBJECT (tagsetter, "merging tags, merge mode = %d", merge_mode);
    -GST_LOG_OBJECT (tagsetter, "event tags: %" GST_PTR_FORMAT, event_tags);
    -GST_LOG_OBJECT (tagsetter, "set   tags: %" GST_PTR_FORMAT, application_tags);
    +GST_LOG_OBJECT (tagsetter, "merging tags, merge mode = %d", merge_mode);
    +GST_LOG_OBJECT (tagsetter, "event tags: %" GST_PTR_FORMAT, event_tags);
    +GST_LOG_OBJECT (tagsetter, "set   tags: %" GST_PTR_FORMAT, application_tags);
      
    -result = gst_tag_list_merge (application_tags, event_tags, merge_mode);
    +result = gst_tag_list_merge (application_tags, event_tags, merge_mode);
      
    -GST_LOG_OBJECT (tagsetter, "final tags: %" GST_PTR_FORMAT, result);
    -
    +GST_LOG_OBJECT (tagsetter, "final tags: %" GST_PTR_FORMAT, result);
    +
    +

    @@ -156,8 +182,8 @@ Opaque


    -

    struct GstTagSetterIFace

    -
    struct GstTagSetterIFace {
    +

    struct GstTagSetterInterface

    +
    struct GstTagSetterInterface {
       GTypeInterface g_iface;
     
       /* signals */
    @@ -166,12 +192,12 @@ Opaque 
     

    -GstTagSetterIFace interface. +GstTagSetterInterface interface.

    - +

    GTypeInterface g_iface;

    GTypeInterface g_iface;

    parent interface type.
    diff --git a/docs/gst/html/GstTask.html b/docs/gst/html/GstTask.html index f6de788..bbb36b5 100644 --- a/docs/gst/html/GstTask.html +++ b/docs/gst/html/GstTask.html @@ -3,8 +3,8 @@ GstTask - - + + @@ -17,7 +17,7 @@ Prev Up Home -GStreamer 0.11 Core Reference Manual +GStreamer 1.0 Core Reference Manual Next @@ -51,12 +51,10 @@ enum GST_TASK_SIGNAL (task) #define GST_TASK_STATE (task) #define GST_TASK_WAIT (task) -GstTask * gst_task_create (GstTaskFunction func, +GstTask * gst_task_new (GstTaskFunction func, gpointer data); void gst_task_set_lock (GstTask *task, - GStaticRecMutex *mutex); -void gst_task_set_priority (GstTask *task, - GThreadPriority priority); + GRecMutex *mutex); void gst_task_set_pool (GstTask *task, GstTaskPool *pool); GstTaskPool * gst_task_get_pool (GstTask *task); @@ -103,7 +101,7 @@ might sometimes be needed to create a GstPad.

    -Before the GstTask can be run, it needs a GStaticRecMutex that can be set with +Before the GstTask can be run, it needs a GStaticRecMutex that can be set with gst_task_set_lock().

    @@ -112,7 +110,7 @@ and <

    A GstTask will repeatedly call the GstTaskFunction with the user data -that was provided when creating the task with gst_task_create(). While calling +that was provided when creating the task with gst_task_new(). While calling the function it will acquire the provided lock. The provided lock is released when the task pauses or stops.

    @@ -123,7 +121,7 @@ stopped and the thread is stopped.

    After creating a GstTask, use gst_object_unref() to free its resources. This can -only be done it the task is not running anymore. +only be done when the task is not running anymore.

    Task functions can send a GstMessage to send out-of-band data to the @@ -131,13 +129,13 @@ application. The application can receive messages from the

    -For debugging perposes, the task will configure its object name as the thread +For debugging purposes, the task will configure its object name as the thread name on Linux. Please note that the object name should be configured before the task is started; changing the object name after the task has been started, has no effect on the thread name.

    -Last reviewed on 2010-03-15 (0.10.29) +Last reviewed on 2012-03-29 (0.11.3)

    @@ -146,9 +144,9 @@ Last reviewed on 2010-03-15 (0.10.29)

    struct GstTask

    struct GstTask {
       GstTaskState     state;
    -  GCond           *cond;
    +  GCond            cond;
     
    -  GStaticRecMutex *lock;
    +  GRecMutex       *lock;
     
       GstTaskFunction  func;
       gpointer         data;
    @@ -167,11 +165,11 @@ The GstTa
     the state of the task
     
     
    -

    GCond *cond;

    +

    GCond cond;

    used to pause/resume the task -

    GStaticRecMutex *lock;

    +

    GRecMutex *lock;

    The lock taken when iterating the task function @@ -257,7 +255,7 @@ Send a broadcast signal to all waiting task conds

    GST_TASK_GET_COND()

    -
    #define GST_TASK_GET_COND(task)         (GST_TASK_CAST(task)->cond)
    +
    #define GST_TASK_GET_COND(task)         (&GST_TASK_CAST(task)->cond)
     

    Get access to the cond of the task. @@ -336,8 +334,8 @@ Wait for the task cond to be signalled


    -

    gst_task_create ()

    -
    GstTask *           gst_task_create                     (GstTaskFunction func,
    +

    gst_task_new ()

    +
    GstTask *           gst_task_new                        (GstTaskFunction func,
                                                              gpointer data);

    Create a new Task that will repeatedly call the provided func @@ -353,7 +351,7 @@ This function will not yet create and start a thread. Use gst_task_pause() to create and start the GThread.

    -Before the task can be used, a GStaticRecMutex must be configured using the +Before the task can be used, a GStaticRecMutex must be configured using the gst_task_set_lock() function. This lock will always be acquired while func is called.

    @@ -382,7 +380,7 @@ MT safe. [

    gst_task_set_lock ()

    void                gst_task_set_lock                   (GstTask *task,
    -                                                         GStaticRecMutex *mutex);
    + GRecMutex *mutex);

    Set the mutex used by the task. The mutex will be acquired before calling the GstTaskFunction. @@ -403,44 +401,13 @@ MT safe.

    mutex :

    -The GMutex to use +The GRecMutex to use

    -

    gst_task_set_priority ()

    -
    void                gst_task_set_priority               (GstTask *task,
    -                                                         GThreadPriority priority);
    -

    -Changes the priority of task to priority. -

    -

    -Note: try not to depend on task priorities. -

    -

    -MT safe. -

    -
    -- - - - - - - - - - -

    task :

    a GstTask -

    priority :

    a new priority for task -
    -

    Since 0.10.24

    -
    -
    -

    gst_task_set_pool ()

    void                gst_task_set_pool                   (GstTask *task,
                                                              GstTaskPool *pool);
    diff --git a/docs/gst/html/GstTaskPool.html b/docs/gst/html/GstTaskPool.html index 2f0c81c..e6d3e77 100644 --- a/docs/gst/html/GstTaskPool.html +++ b/docs/gst/html/GstTaskPool.html @@ -3,11 +3,11 @@ GstTaskPool - - + + - + @@ -17,8 +17,8 @@ Prev Up Home -GStreamer 0.11 Core Reference Manual -Next +GStreamer 1.0 Core Reference Manual +Next Top diff --git a/docs/gst/html/GstTypeFindFactory.html b/docs/gst/html/GstTypeFindFactory.html index e46ac1b..8eca280 100644 --- a/docs/gst/html/GstTypeFindFactory.html +++ b/docs/gst/html/GstTypeFindFactory.html @@ -3,8 +3,8 @@ GstTypeFindFactory - - + + @@ -17,7 +17,7 @@ Prev Up Home -GStreamer 0.11 Core Reference Manual +GStreamer 1.0 Core Reference Manual Next @@ -72,48 +72,94 @@ the section

    -

    Example 14. how to write a simple typefinder

    -
    -  typedef struct {
    -    guint8 *data;
    -    guint size;
    -    guint probability;
    -    GstCaps *data;
    -  } MyTypeFind;
    -  static void
    -  my_peek (gpointer data, gint64 offset, guint size)
    -  {
    -    MyTypeFind *find = (MyTypeFind *) data;
    -    if (offset >= 0 && offset + size <= find->size) {
    -      return find->data + offset;
    -    }
    -    return NULL;
    -  }
    -  static void
    -  my_suggest (gpointer data, guint probability, GstCaps *caps)
    -  {
    -    MyTypeFind *find = (MyTypeFind *) data;
    -    if (probability > find->probability) {
    -      find->probability = probability;
    -      gst_caps_replace (&find->caps, caps);
    -    }
    -  }
    -  static GstCaps *
    -  find_type (guint8 *data, guint size)
    -  {
    -    GList *walk, *type_list;
    -    MyTypeFind find = {data, size, 0, NULL};
    -    GstTypeFind gst_find = {my_peek, my_suggest, &find, };
    -    walk = type_list = gst_type_find_factory_get_list ();
    -    while (walk) {
    -      GstTypeFindFactory *factory = GST_TYPE_FIND_FACTORY (walk->data);
    -      walk = g_list_next (walk)
    -      gst_type_find_factory_call_function (factory, &gst_find);
    -    }
    -    g_list_free (type_list);
    -    return find.caps;
    -  };
    -  
    +

    Example 13. how to write a simple typefinder

    +
    + + + + + + + +
    1
    +2
    +3
    +4
    +5
    +6
    +7
    +8
    +9
    +10
    +11
    +12
    +13
    +14
    +15
    +16
    +17
    +18
    +19
    +20
    +21
    +22
    +23
    +24
    +25
    +26
    +27
    +28
    +29
    +30
    +31
    +32
    +33
    +34
    +35
    +36
    +37
    +38
    +39
    typedef struct {
    +  guint8 *data;
    +  guint size;
    +  guint probability;
    +  GstCaps *data;
    +} MyTypeFind;
    +static void
    +my_peek (gpointer data, gint64 offset, guint size)
    +{
    +  MyTypeFind *find = (MyTypeFind *) data;
    +  if (offset >= 0 && offset + size <= find->size) {
    +    return find->data + offset;
    +  }
    +  return NULL;
    +}
    +static void
    +my_suggest (gpointer data, guint probability, GstCaps *caps)
    +{
    +  MyTypeFind *find = (MyTypeFind *) data;
    +  if (probability > find->probability) {
    +    find->probability = probability;
    +    gst_caps_replace (&find->caps, caps);
    +  }
    +}
    +static GstCaps *
    +find_type (guint8 *data, guint size)
    +{
    +  GList *walk, *type_list;
    +  MyTypeFind find = {data, size, 0, NULL};
    +  GstTypeFind gst_find = {my_peek, my_suggest, &find, };
    +  walk = type_list = gst_type_find_factory_get_list ();
    +  while (walk) {
    +    GstTypeFindFactory *factory = GST_TYPE_FIND_FACTORY (walk->data);
    +    walk = g_list_next (walk)
    +    gst_type_find_factory_call_function (factory, &gst_find);
    +  }
    +  g_list_free (type_list);
    +  return find.caps;
    +};
    +
    +


    diff --git a/docs/gst/html/annotation-glossary.html b/docs/gst/html/annotation-glossary.html index a452c0e..9df3250 100644 --- a/docs/gst/html/annotation-glossary.html +++ b/docs/gst/html/annotation-glossary.html @@ -3,9 +3,9 @@ Annotation Glossary - - - + + + @@ -16,7 +16,7 @@ Prev   Home -GStreamer 0.11 Core Reference Manual +GStreamer 1.0 Core Reference Manual   diff --git a/docs/gst/html/api-index-deprecated.html b/docs/gst/html/api-index-deprecated.html index 45fb0b7..30303d4 100644 --- a/docs/gst/html/api-index-deprecated.html +++ b/docs/gst/html/api-index-deprecated.html @@ -3,9 +3,9 @@ Index of deprecated API - - - + + + @@ -16,7 +16,7 @@ Prev   Home -GStreamer 0.11 Core Reference Manual +GStreamer 1.0 Core Reference Manual Next
    diff --git a/docs/gst/html/api-index-full.html b/docs/gst/html/api-index-full.html index c9bfa6f..41eb7bc 100644 --- a/docs/gst/html/api-index-full.html +++ b/docs/gst/html/api-index-full.html @@ -3,9 +3,9 @@ API Index - - - + + + @@ -17,7 +17,7 @@ Prev   Home -GStreamer 0.11 Core Reference Manual +GStreamer 1.0 Core Reference Manual Next @@ -67,91 +67,63 @@ API Index

    A

    -GstActivateMode, enum in GstPad +GstAllocationParams, struct in GstMemory
    -GstAllocator, struct in GstMemory -
    -
    -
    -gst_allocator_alloc, function in GstMemory -
    -
    -
    -gst_allocator_find, function in GstMemory -
    -
    -
    -gst_allocator_register, function in GstMemory -
    -
    -
    -gst_allocator_set_default, function in GstMemory -
    -
    -
    -GST_ALLOCATOR_SYSMEM, macro in GstMemory -
    -
    -
    -GstAllocTrace, struct in GstTrace +gst_allocation_params_copy, function in GstMemory
    -GstAllocTraceFlags, enum in GstTrace +gst_allocation_params_free, function in GstMemory
    -gst_alloc_trace_available, function in GstTrace +gst_allocation_params_init, function in GstMemory
    -gst_alloc_trace_free, macro in GstTrace -
    -
    -
    -gst_alloc_trace_get, function in GstTrace +GstAllocator, struct in GstMemory
    -gst_alloc_trace_list, function in GstTrace +GstAllocatorAllocFunction, user_function in GstMemory
    -gst_alloc_trace_live_all, function in GstTrace +gst_allocator_alloc, function in GstMemory
    -gst_alloc_trace_new, macro in GstTrace +gst_allocator_find, function in GstMemory
    -gst_alloc_trace_print, function in GstTrace +gst_allocator_get_memory_type, function in GstMemory
    -gst_alloc_trace_print_all, function in GstTrace +gst_allocator_new, function in GstMemory
    -gst_alloc_trace_print_live, function in GstTrace +gst_allocator_ref, function in GstMemory
    -gst_alloc_trace_register, macro in GstTrace +gst_allocator_register, function in GstMemory
    -gst_alloc_trace_set_flags, function in GstTrace +gst_allocator_set_default, function in GstMemory
    -gst_alloc_trace_set_flags_all, function in GstTrace +GST_ALLOCATOR_SYSMEM, macro in GstMemory
    -GstAssocFlags, enum in GstIndex +gst_allocator_unref, function in GstMemory
    @@ -308,6 +280,10 @@
    +GstBufferForeachMetaFunc, user_function in GstBuffer +
    +
    +
    GstBufferingMode, enum in GstQuery
    @@ -324,15 +300,15 @@
    -GstBufferPoolClass, struct in GstBufferPool +GstBufferPoolAcquireFlags, enum in GstBufferPool
    -GstBufferPoolFlags, enum in GstBufferPool +GstBufferPoolAcquireParams, struct in GstBufferPool
    -GstBufferPoolParams, struct in GstBufferPool +GstBufferPoolClass, struct in GstBufferPool
    @@ -340,7 +316,11 @@
    -gst_buffer_add_meta_timing, macro in GstBuffer +gst_buffer_append, function in GstBuffer +
    +
    +
    +gst_buffer_append_memory, macro in GstBuffer
    @@ -364,6 +344,14 @@
    +GST_BUFFER_DTS, macro in GstBuffer +
    +
    +
    +GST_BUFFER_DTS_IS_VALID, macro in GstBuffer +
    +
    +
    GST_BUFFER_DURATION, macro in GstBuffer
    @@ -380,6 +368,10 @@
    +gst_buffer_find_memory, function in GstBuffer +
    +
    +
    GST_BUFFER_FLAGS, macro in GstBuffer
    @@ -396,39 +388,47 @@
    -gst_buffer_get_meta, function in GstBuffer +gst_buffer_foreach_meta, function in GstBuffer
    -gst_buffer_get_meta_timing, macro in GstBuffer +gst_buffer_get_all_memory, macro in GstBuffer
    -gst_buffer_get_size, macro in GstBuffer +gst_buffer_get_memory, macro in GstBuffer
    -gst_buffer_get_sizes, function in GstBuffer +gst_buffer_get_memory_range, function in GstBuffer
    -GST_BUFFER_IS_DISCONT, macro in GstBuffer +gst_buffer_get_meta, function in GstBuffer
    -gst_buffer_is_span_fast, function in GstBuffer +gst_buffer_get_size, macro in GstBuffer
    -gst_buffer_is_writable, macro in GstBuffer +gst_buffer_get_sizes, macro in GstBuffer
    -gst_buffer_iterate_meta, function in GstBuffer +gst_buffer_insert_memory, function in GstBuffer +
    +
    +
    +GST_BUFFER_IS_DISCONT, macro in GstBuffer +
    +
    +
    +gst_buffer_is_writable, macro in GstBuffer
    -gst_buffer_join, function in GstBuffer +gst_buffer_iterate_meta, function in GstBuffer
    @@ -456,7 +456,7 @@
    -gst_buffer_list_len, function in GstBufferList +gst_buffer_list_length, function in GstBufferList
    @@ -468,15 +468,15 @@
    -gst_buffer_list_ref, function in GstBufferList +gst_buffer_list_new_sized, function in GstBufferList
    -gst_buffer_list_remove, function in GstBufferList +gst_buffer_list_ref, function in GstBufferList
    -gst_buffer_list_sized_new, function in GstBufferList +gst_buffer_list_remove, function in GstBufferList
    @@ -488,7 +488,7 @@
    -gst_buffer_map, function in GstBuffer +gst_buffer_map, macro in GstBuffer
    @@ -500,10 +500,6 @@
    -gst_buffer_merge, function in GstBuffer -
    -
    -
    gst_buffer_new, function in GstBuffer
    @@ -512,10 +508,6 @@
    -gst_buffer_new_and_alloc, macro in GstBuffer -
    -
    -
    gst_buffer_new_wrapped, function in GstBuffer
    @@ -548,10 +540,6 @@
    -gst_buffer_peek_memory, function in GstBuffer -
    -
    -
    gst_buffer_pool_acquire_buffer, function in GstBufferPool
    @@ -560,7 +548,7 @@
    -gst_buffer_pool_config_get, function in GstBufferPool +gst_buffer_pool_config_get_allocator, function in GstBufferPool
    @@ -568,6 +556,10 @@
    +gst_buffer_pool_config_get_params, function in GstBufferPool +
    +
    +
    gst_buffer_pool_config_has_option, function in GstBufferPool
    @@ -576,7 +568,11 @@
    -gst_buffer_pool_config_set, function in GstBufferPool +gst_buffer_pool_config_set_allocator, function in GstBufferPool +
    +
    +
    +gst_buffer_pool_config_set_params, function in GstBufferPool
    @@ -616,51 +612,59 @@
    -gst_buffer_ref, function in GstBuffer +gst_buffer_prepend_memory, macro in GstBuffer
    -gst_buffer_remove_memory, macro in GstBuffer +GST_BUFFER_PTS, macro in GstBuffer
    -gst_buffer_remove_memory_range, function in GstBuffer +GST_BUFFER_PTS_IS_VALID, macro in GstBuffer
    -gst_buffer_remove_meta, function in GstBuffer +gst_buffer_ref, function in GstBuffer
    -gst_buffer_replace, macro in GstBuffer +gst_buffer_remove_all_memory, macro in GstBuffer
    -gst_buffer_resize, function in GstBuffer +gst_buffer_remove_memory, macro in GstBuffer
    -gst_buffer_set_size, macro in GstBuffer +gst_buffer_remove_memory_range, function in GstBuffer +
    +
    +
    +gst_buffer_remove_meta, function in GstBuffer +
    +
    +
    +gst_buffer_replace, function in GstBuffer
    -gst_buffer_span, function in GstBuffer +gst_buffer_replace_all_memory, macro in GstBuffer
    -gst_buffer_take_memory, function in GstBuffer +gst_buffer_replace_memory, macro in GstBuffer
    -GST_BUFFER_TIMESTAMP, macro in GstBuffer +gst_buffer_replace_memory_range, function in GstBuffer
    -GST_BUFFER_TIMESTAMP_IS_VALID, macro in GstBuffer +gst_buffer_resize, macro in GstBuffer
    -GST_BUFFER_TRACE_NAME, macro in GstBuffer +gst_buffer_set_size, macro in GstBuffer
    @@ -833,10 +837,6 @@
    -gst_caps_do_simplify, function in GstCaps -
    -
    -
    gst_caps_fixate, function in GstCaps
    @@ -905,6 +905,10 @@
    +gst_caps_is_strictly_equal, function in GstCaps +
    +
    +
    gst_caps_is_subset, function in GstCaps
    @@ -937,6 +941,10 @@
    +gst_caps_new_empty_simple, function in GstCaps +
    +
    +
    gst_caps_new_full, function in GstCaps
    @@ -973,7 +981,7 @@
    -gst_caps_replace, macro in GstCaps +gst_caps_replace, function in GstCaps
    @@ -989,6 +997,10 @@
    +gst_caps_simplify, function in GstCaps +
    +
    +
    gst_caps_steal_structure, function in GstCaps
    @@ -997,15 +1009,15 @@
    -gst_caps_to_string, function in GstCaps +gst_caps_take, function in GstCaps
    -gst_caps_truncate, function in GstCaps +gst_caps_to_string, function in GstCaps
    -gst_caps_union, function in GstCaps +gst_caps_truncate, function in GstCaps
    @@ -1153,10 +1165,6 @@
    -GstClock:stats, object property in GstClock -
    -
    -
    GstClock:timeout, object property in GstClock
    @@ -1217,14 +1225,6 @@
    -GST_CLOCK_BROADCAST, macro in GstClock -
    -
    -
    -GST_CLOCK_COND, macro in GstClock -
    -
    -
    GST_CLOCK_DIFF, macro in GstClock
    @@ -1249,10 +1249,6 @@
    -GST_CLOCK_ENTRY_TRACE_NAME, macro in GstClock -
    -
    -
    GST_CLOCK_ENTRY_TYPE, macro in GstClock
    @@ -1281,6 +1277,10 @@
    +gst_clock_get_timeout, function in GstClock +
    +
    +
    gst_clock_id_compare_func, function in GstClock
    @@ -1337,11 +1337,11 @@
    -gst_clock_single_shot_id_reinit, function in GstClock +gst_clock_set_timeout, function in GstClock
    -GST_CLOCK_TIMED_WAIT, macro in GstClock +gst_clock_single_shot_id_reinit, function in GstClock
    @@ -1357,7 +1357,67 @@
    -GST_CLOCK_WAIT, macro in GstClock +GstControlBinding, struct in GstControlBinding +
    +
    +
    +GstControlBinding:name, object property in GstControlBinding +
    +
    +
    +GstControlBinding:object, object property in GstControlBinding +
    +
    +
    +GstControlBindingClass, struct in GstControlBinding +
    +
    +
    +GstControlBindingConvert, user_function in GstControlBinding +
    +
    +
    +GstControlSource, struct in GstControlSource +
    +
    +
    +GstControlSourceClass, struct in GstControlSource +
    +
    +
    +GstControlSourceGetValue, user_function in GstControlSource +
    +
    +
    +GstControlSourceGetValueArray, user_function in GstControlSource +
    +
    +
    +gst_control_binding_get_value, function in GstControlBinding +
    +
    +
    +gst_control_binding_get_value_array, function in GstControlBinding +
    +
    +
    +gst_control_binding_is_disabled, function in GstControlBinding +
    +
    +
    +gst_control_binding_set_disabled, function in GstControlBinding +
    +
    +
    +gst_control_binding_sync_values, function in GstControlBinding +
    +
    +
    +gst_control_source_get_value, function in GstControlSource +
    +
    +
    +gst_control_source_get_value_array, function in GstControlSource
    @@ -1462,6 +1522,10 @@
    +gst_debug_bin_to_dot_file, function in GstInfo +
    +
    +
    GST_DEBUG_BIN_TO_DOT_FILE, macro in GstInfo
    @@ -1470,6 +1534,10 @@
    +gst_debug_bin_to_dot_file_with_ts, function in GstInfo +
    +
    +
    GST_DEBUG_CATEGORY, macro in GstInfo
    @@ -1614,42 +1682,6 @@
    -gst_default_registry_add_path, macro in GstRegistry -
    -
    -
    -gst_default_registry_add_plugin, macro in GstRegistry -
    -
    -
    -gst_default_registry_check_feature_version, function in GstRegistry -
    -
    -
    -gst_default_registry_feature_filter, macro in GstRegistry -
    -
    -
    -gst_default_registry_find_feature, macro in GstRegistry -
    -
    -
    -gst_default_registry_find_plugin, macro in GstRegistry -
    -
    -
    -gst_default_registry_get_feature_list_cookie, macro in GstRegistry -
    -
    -
    -gst_default_registry_get_path_list, macro in GstRegistry -
    -
    -
    -gst_default_registry_get_plugin_list, macro in GstRegistry -
    -
    -
    GST_DEFINE_MINI_OBJECT_TYPE, macro in GstMiniObject
    @@ -1739,6 +1771,10 @@
    +gst_element_class_add_static_metadata, function in GstElement +
    +
    +
    gst_element_class_get_metadata, function in GstElement
    @@ -1751,11 +1787,11 @@
    -gst_element_class_install_std_props, function in GstElement +gst_element_class_set_metadata, function in GstElement
    -gst_element_class_set_metadata, function in GstElement +gst_element_class_set_static_metadata, function in GstElement
    @@ -1931,14 +1967,6 @@
    -gst_element_found_tags, function in GstElement -
    -
    -
    -gst_element_found_tags_for_pad, function in GstElement -
    -
    -
    gst_element_get_base_time, function in GstElement
    @@ -1963,10 +1991,6 @@
    -gst_element_get_index, function in GstElement -
    -
    -
    gst_element_get_name, macro in GstElement
    @@ -1975,10 +1999,6 @@
    -gst_element_get_query_types, function in GstElement -
    -
    -
    gst_element_get_request_pad, function in GstElement
    @@ -1999,10 +2019,6 @@
    -gst_element_is_indexable, function in GstElement -
    -
    -
    GST_ELEMENT_IS_LOCKED_STATE, macro in GstElement
    @@ -2103,10 +2119,6 @@
    -gst_element_provides_clock, function in GstElement -
    -
    -
    gst_element_provide_clock, function in GstElement
    @@ -2143,10 +2155,6 @@
    -gst_element_requires_clock, function in GstElement -
    -
    -
    gst_element_seek, function in GstElement
    @@ -2171,10 +2179,6 @@
    -gst_element_set_index, function in GstElement -
    -
    -
    gst_element_set_locked_state, function in GstElement
    @@ -2255,6 +2259,10 @@
    +gst_event_add_stream_config_header, function in GstEvent +
    +
    +
    gst_event_copy, function in GstEvent
    @@ -2263,6 +2271,10 @@
    +gst_event_get_n_stream_config_headers, function in GstEvent +
    +
    +
    gst_event_get_seqnum, function in GstEvent
    @@ -2327,6 +2339,10 @@
    +gst_event_new_gap, function in GstEvent +
    +
    +
    gst_event_new_latency, function in GstEvent
    @@ -2359,23 +2375,47 @@
    -gst_event_new_tag, function in GstEvent +gst_event_new_stream_config, function in GstEvent
    -gst_event_parse_buffer_size, function in GstEvent +gst_event_new_stream_start, function in GstEvent
    -gst_event_parse_caps, function in GstEvent +gst_event_new_tag, function in GstEvent
    -gst_event_parse_flush_stop, function in GstEvent +gst_event_new_toc, function in GstEvent
    -gst_event_parse_latency, function in GstEvent +gst_event_new_toc_select, function in GstEvent +
    +
    +
    +gst_event_parse_buffer_size, function in GstEvent +
    +
    +
    +gst_event_parse_caps, function in GstEvent +
    +
    +
    +gst_event_parse_flush_stop, function in GstEvent +
    +
    +
    +gst_event_parse_gap, function in GstEvent +
    +
    +
    +gst_event_parse_latency, function in GstEvent +
    +
    +
    +gst_event_parse_nth_stream_config_header, function in GstEvent
    @@ -2399,15 +2439,31 @@
    +gst_event_parse_stream_config, function in GstEvent +
    +
    +
    +gst_event_parse_stream_config_setup_data, function in GstEvent +
    +
    +
    gst_event_parse_tag, function in GstEvent
    +gst_event_parse_toc, function in GstEvent +
    +
    +
    +gst_event_parse_toc_select, function in GstEvent +
    +
    +
    gst_event_ref, function in GstEvent
    -gst_event_replace, macro in GstEvent +gst_event_replace, function in GstEvent
    @@ -2419,19 +2475,19 @@
    -gst_event_steal, macro in GstEvent +gst_event_set_stream_config_setup_data, function in GstEvent
    -gst_event_take, macro in GstEvent +gst_event_steal, function in GstEvent
    -GST_EVENT_TIMESTAMP, macro in GstEvent +gst_event_take, function in GstEvent
    -GST_EVENT_TRACE_NAME, macro in GstEvent +GST_EVENT_TIMESTAMP, macro in GstEvent
    @@ -2472,14 +2528,6 @@
    -GstFilterFunc, user_function in GstFilter -
    -
    -
    -gst_filter_run, function in GstFilter -
    -
    -
    GST_FIXME, macro in GstInfo
    @@ -2605,11 +2653,7 @@
    -gst_ghost_pad_activate_pull_default, function in GstGhostPad -
    -
    -
    -gst_ghost_pad_activate_push_default, function in GstGhostPad +gst_ghost_pad_activate_mode_default, function in GstGhostPad
    @@ -2621,11 +2665,7 @@
    -gst_ghost_pad_internal_activate_pull_default, function in GstGhostPad -
    -
    -
    -gst_ghost_pad_internal_activate_push_default, function in GstGhostPad +gst_ghost_pad_internal_activate_mode_default, function in GstGhostPad
    @@ -2662,210 +2702,6 @@

    I

    -GstIndex, struct in GstIndex -
    -
    -
    -GstIndex::entry-added, object signal in GstIndex -
    -
    -
    -GstIndex:resolver, object property in GstIndex -
    -
    -
    -GstIndexAssociation, struct in GstIndex -
    -
    -
    -GstIndexCertainty, enum in GstIndex -
    -
    -
    -GstIndexEntry, struct in GstIndex -
    -
    -
    -GstIndexEntryType, enum in GstIndex -
    -
    -
    -GstIndexFactory, struct in GstIndexFactory -
    -
    -
    -GstIndexFilter, user_function in GstIndex -
    -
    -
    -GstIndexFlags, enum in GstIndex -
    -
    -
    -GstIndexGroup, struct in GstIndex -
    -
    -
    -GstIndexLookupMethod, enum in GstIndex -
    -
    -
    -GstIndexResolver, user_function in GstIndex -
    -
    -
    -GstIndexResolverMethod, enum in GstIndex -
    -
    -
    -gst_index_add_association, function in GstIndex -
    -
    -
    -gst_index_add_associationv, function in GstIndex -
    -
    -
    -gst_index_add_format, function in GstIndex -
    -
    -
    -gst_index_add_id, function in GstIndex -
    -
    -
    -gst_index_add_object, function in GstIndex -
    -
    -
    -GST_INDEX_ASSOC_FLAGS, macro in GstIndex -
    -
    -
    -GST_INDEX_ASSOC_FORMAT, macro in GstIndex -
    -
    -
    -GST_INDEX_ASSOC_VALUE, macro in GstIndex -
    -
    -
    -gst_index_commit, function in GstIndex -
    -
    -
    -gst_index_entry_assoc_map, function in GstIndex -
    -
    -
    -gst_index_entry_copy, function in GstIndex -
    -
    -
    -gst_index_entry_free, function in GstIndex -
    -
    -
    -gst_index_factory_create, function in GstIndexFactory -
    -
    -
    -gst_index_factory_destroy, function in GstIndexFactory -
    -
    -
    -gst_index_factory_find, function in GstIndexFactory -
    -
    -
    -gst_index_factory_make, function in GstIndexFactory -
    -
    -
    -gst_index_factory_new, function in GstIndexFactory -
    -
    -
    -GST_INDEX_FORMAT_FORMAT, macro in GstIndex -
    -
    -
    -GST_INDEX_FORMAT_KEY, macro in GstIndex -
    -
    -
    -gst_index_get_assoc_entry, function in GstIndex -
    -
    -
    -gst_index_get_assoc_entry_full, function in GstIndex -
    -
    -
    -gst_index_get_certainty, function in GstIndex -
    -
    -
    -gst_index_get_group, function in GstIndex -
    -
    -
    -gst_index_get_writer_id, function in GstIndex -
    -
    -
    -GST_INDEX_ID_DESCRIPTION, macro in GstIndex -
    -
    -
    -GST_INDEX_ID_INVALID, macro in GstIndex -
    -
    -
    -GST_INDEX_IS_READABLE, macro in GstIndex -
    -
    -
    -GST_INDEX_IS_WRITABLE, macro in GstIndex -
    -
    -
    -GST_INDEX_NASSOCS, macro in GstIndex -
    -
    -
    -gst_index_new, function in GstIndex -
    -
    -
    -gst_index_new_group, function in GstIndex -
    -
    -
    -gst_index_set_certainty, function in GstIndex -
    -
    -
    -gst_index_set_filter, function in GstIndex -
    -
    -
    -gst_index_set_filter_full, function in GstIndex -
    -
    -
    -gst_index_set_group, function in GstIndex -
    -
    -
    -gst_index_set_resolver, function in GstIndex -
    -
    -
    -gst_index_set_resolver_full, function in GstIndex -
    -
    -
    GST_INFO, macro in GstInfo
    @@ -3036,6 +2872,14 @@
    +GstMapInfo, struct in GstMemory +
    +
    +
    +GST_MAP_INFO_INIT, macro in GstMemory +
    +
    +
    GST_MAP_READWRITE, macro in GstMemory
    @@ -3052,10 +2896,6 @@
    -GstMemoryAllocFunction, user_function in GstMemory -
    -
    -
    GstMemoryCopyFunction, user_function in GstMemory
    @@ -3068,10 +2908,6 @@
    -GstMemoryGetSizesFunction, user_function in GstMemory -
    -
    -
    GstMemoryInfo, struct in GstMemory
    @@ -3084,23 +2920,27 @@
    -GstMemoryResizeFunction, user_function in GstMemory +GstMemoryShareFunction, user_function in GstMemory
    -GstMemoryShareFunction, user_function in GstMemory +GstMemoryUnmapFunction, user_function in GstMemory
    -GstMemoryUnmapFunction, user_function in GstMemory +gst_memory_copy, function in GstMemory
    -gst_memory_alignment, variable in GstMemory +GST_MEMORY_FLAGS, macro in GstMemory
    -gst_memory_copy, function in GstMemory +GST_MEMORY_FLAG_IS_SET, macro in GstMemory +
    +
    +
    +GST_MEMORY_FLAG_UNSET, macro in GstMemory
    @@ -3108,11 +2948,27 @@
    +gst_memory_is_exclusive, function in GstMemory +
    +
    +
    +GST_MEMORY_IS_READONLY, macro in GstMemory +
    +
    +
    gst_memory_is_span, function in GstMemory
    -GST_MEMORY_IS_WRITABLE, macro in GstMemory +GST_MEMORY_IS_ZERO_PADDED, macro in GstMemory +
    +
    +
    +GST_MEMORY_IS_ZERO_PREFIXED, macro in GstMemory +
    +
    +
    +gst_memory_make_mapped, function in GstMemory
    @@ -3284,6 +3140,10 @@
    +gst_message_new_toc, function in GstMessage +
    +
    +
    gst_message_new_warning, function in GstMessage
    @@ -3376,6 +3236,10 @@
    +gst_message_parse_toc, function in GstMessage +
    +
    +
    gst_message_parse_warning, function in GstMessage
    @@ -3384,7 +3248,7 @@
    -gst_message_replace, macro in GstMessage +gst_message_replace, function in GstMessage
    @@ -3424,10 +3288,6 @@
    -GST_MESSAGE_TRACE_NAME, macro in GstMessage -
    -
    -
    GST_MESSAGE_TYPE, macro in GstMessage
    @@ -3452,7 +3312,7 @@
    -GstMetaCopyFunction, user_function in GstMeta +GstMetaFlags, enum in GstMeta
    @@ -3468,7 +3328,7 @@
    -GstMetaTiming, struct in GstBuffer +GstMetaTransformCopy, struct in GstMeta
    @@ -3476,23 +3336,43 @@
    -gst_meta_get_info, function in GstMeta +gst_meta_api_type_has_tag, function in GstMeta
    -gst_meta_register, function in GstMeta +gst_meta_api_type_register, function in GstMeta
    -gst_meta_timing_get_info, function in GstBuffer +GST_META_FLAGS, macro in GstMeta
    -GST_META_TIMING_INFO, macro in GstBuffer +GST_META_FLAG_IS_SET, macro in GstMeta
    -GST_META_TRACE_NAME, macro in GstMeta +GST_META_FLAG_SET, macro in GstMeta +
    +
    +
    +GST_META_FLAG_UNSET, macro in GstMeta +
    +
    +
    +gst_meta_get_info, function in GstMeta +
    +
    +
    +gst_meta_register, function in GstMeta +
    +
    +
    +GST_META_TAG_MEMORY, macro in GstMeta +
    +
    +
    +GST_META_TRANSFORM_IS_COPY, macro in GstMeta
    @@ -3630,6 +3510,10 @@
    +gst_object_add_control_binding, function in GstObject +
    +
    +
    gst_object_check_uniqueness, function in GstObject
    @@ -3658,6 +3542,14 @@
    +gst_object_get_control_binding, function in GstObject +
    +
    +
    +gst_object_get_control_rate, function in GstObject +
    +
    +
    GST_OBJECT_GET_LOCK, macro in GstObject
    @@ -3674,6 +3566,18 @@
    +gst_object_get_value, function in GstObject +
    +
    +
    +gst_object_get_value_array, function in GstObject +
    +
    +
    +gst_object_has_active_control_bindings, function in GstObject +
    +
    +
    gst_object_has_ancestor, function in GstObject
    @@ -3706,10 +3610,26 @@
    +gst_object_remove_control_binding, function in GstObject +
    +
    +
    gst_object_replace, function in GstObject
    +gst_object_set_control_bindings_disabled, function in GstObject +
    +
    +
    +gst_object_set_control_binding_disabled, function in GstObject +
    +
    +
    +gst_object_set_control_rate, function in GstObject +
    +
    +
    gst_object_set_name, function in GstObject
    @@ -3718,6 +3638,14 @@
    +gst_object_suggest_next_sync, function in GstObject +
    +
    +
    +gst_object_sync_values, function in GstObject +
    +
    +
    GST_OBJECT_TRYLOCK, macro in GstObject
    @@ -3759,10 +3687,6 @@
    -GstPadAcceptCapsFunction, user_function in GstPad -
    -
    -
    GstPadActivateFunction, user_function in GstPad
    @@ -3787,10 +3711,6 @@
    -GstPadFixateCapsFunction, user_function in GstPad -
    -
    -
    GstPadFlags, enum in GstPad
    @@ -3799,10 +3719,6 @@
    -GstPadGetCapsFunction, user_function in GstPad -
    -
    -
    GstPadGetRangeFunction, user_function in GstPad
    @@ -3823,6 +3739,10 @@
    +GstPadMode, enum in GstPad +
    +
    +
    GstPadPresence, enum in GstPadTemplate
    @@ -3831,11 +3751,19 @@
    -GstPadQueryFunction, user_function in GstPad +GstPadProbeInfo, struct in GstPad
    -GstPadQueryTypeFunction, user_function in GstPad +GstPadProbeReturn, enum in GstPad +
    +
    +
    +GstPadProbeType, enum in GstPad +
    +
    +
    +GstPadQueryFunction, user_function in GstPad
    @@ -3875,15 +3803,7 @@
    -gst_pad_accept_caps, function in GstPad -
    -
    -
    -gst_pad_activate_pull, function in GstPad -
    -
    -
    -gst_pad_activate_push, function in GstPad +gst_pad_activate_mode, function in GstPad
    @@ -3911,10 +3831,6 @@
    -gst_pad_fixate_caps, function in GstPad -
    -
    -
    gst_pad_forward, function in GstPad
    @@ -3923,14 +3839,6 @@
    -gst_pad_get_caps, function in GstPad -
    -
    -
    -gst_pad_get_caps_reffed, macro in GstPad -
    -
    -
    gst_pad_get_current_caps, function in GstPad
    @@ -3971,14 +3879,6 @@
    -gst_pad_get_query_types, function in GstPad -
    -
    -
    -gst_pad_get_query_types_default, function in GstPad -
    -
    -
    gst_pad_get_range, function in GstPad
    @@ -4059,23 +3959,111 @@
    -gst_pad_peer_accept_caps, function in GstPad +gst_pad_peer_query, function in GstPad
    -gst_pad_peer_get_caps, function in GstPad +gst_pad_peer_query_accept_caps, function in GstPad
    -gst_pad_peer_get_caps_reffed, macro in GstPad +gst_pad_peer_query_caps, function in GstPad
    -gst_pad_peer_query, function in GstPad +gst_pad_peer_query_convert, function in GstPad +
    +
    +
    +gst_pad_peer_query_duration, function in GstPad +
    +
    +
    +gst_pad_peer_query_position, function in GstPad +
    +
    +
    +GST_PAD_PROBE_INFO_BUFFER, macro in GstPad +
    +
    +
    +GST_PAD_PROBE_INFO_BUFFER_LIST, macro in GstPad +
    +
    +
    +GST_PAD_PROBE_INFO_DATA, macro in GstPad +
    +
    +
    +GST_PAD_PROBE_INFO_EVENT, macro in GstPad +
    +
    +
    +GST_PAD_PROBE_INFO_ID, macro in GstPad +
    +
    +
    +GST_PAD_PROBE_INFO_OFFSET, macro in GstPad +
    +
    +
    +GST_PAD_PROBE_INFO_QUERY, macro in GstPad +
    +
    +
    +GST_PAD_PROBE_INFO_SIZE, macro in GstPad +
    +
    +
    +GST_PAD_PROBE_INFO_TYPE, macro in GstPad +
    +
    +
    +GST_PAD_PROBE_TYPE_ALL_BOTH, macro in GstPad +
    +
    +
    +GST_PAD_PROBE_TYPE_BLOCKING, macro in GstPad +
    +
    +
    +GST_PAD_PROBE_TYPE_BLOCK_DOWNSTREAM, macro in GstPad +
    +
    +
    +GST_PAD_PROBE_TYPE_BLOCK_UPSTREAM, macro in GstPad +
    +
    +
    +GST_PAD_PROBE_TYPE_DATA_BOTH, macro in GstPad +
    +
    +
    +GST_PAD_PROBE_TYPE_DATA_DOWNSTREAM, macro in GstPad +
    +
    +
    +GST_PAD_PROBE_TYPE_DATA_UPSTREAM, macro in GstPad +
    +
    +
    +GST_PAD_PROBE_TYPE_EVENT_BOTH, macro in GstPad +
    +
    +
    +GST_PAD_PROBE_TYPE_QUERY_BOTH, macro in GstPad +
    +
    +
    +GST_PAD_PROBE_TYPE_SCHEDULING, macro in GstPad
    -gst_pad_proxy_getcaps, function in GstPad +gst_pad_proxy_query_accept_caps, function in GstPad +
    +
    +
    +gst_pad_proxy_query_caps, function in GstPad
    @@ -4099,27 +4087,23 @@
    -gst_pad_query_convert, function in GstPad -
    -
    -
    -gst_pad_query_default, function in GstPad +gst_pad_query_accept_caps, function in GstPad
    -gst_pad_query_duration, function in GstPad +gst_pad_query_caps, function in GstPad
    -gst_pad_query_peer_convert, function in GstPad +gst_pad_query_convert, function in GstPad
    -gst_pad_query_peer_duration, function in GstPad +gst_pad_query_default, function in GstPad
    -gst_pad_query_peer_position, function in GstPad +gst_pad_query_duration, function in GstPad
    @@ -4135,19 +4119,19 @@
    -gst_pad_set_acceptcaps_function, function in GstPad +gst_pad_set_activatemode_function, macro in GstPad
    -gst_pad_set_activatepull_function, function in GstPad +gst_pad_set_activatemode_function_full, function in GstPad
    -gst_pad_set_activatepush_function, function in GstPad +gst_pad_set_activate_function, macro in GstPad
    -gst_pad_set_activate_function, function in GstPad +gst_pad_set_activate_function_full, function in GstPad
    @@ -4159,11 +4143,19 @@
    -gst_pad_set_chain_function, function in GstPad +gst_pad_set_chain_function, macro in GstPad
    -gst_pad_set_chain_list_function, function in GstPad +gst_pad_set_chain_function_full, function in GstPad +
    +
    +
    +gst_pad_set_chain_list_function, macro in GstPad +
    +
    +
    +gst_pad_set_chain_list_function_full, function in GstPad
    @@ -4171,27 +4163,35 @@
    -gst_pad_set_event_function, function in GstPad +gst_pad_set_event_function, macro in GstPad +
    +
    +
    +gst_pad_set_event_function_full, function in GstPad +
    +
    +
    +gst_pad_set_getrange_function, macro in GstPad
    -gst_pad_set_fixatecaps_function, function in GstPad +gst_pad_set_getrange_function_full, function in GstPad
    -gst_pad_set_getcaps_function, function in GstPad +gst_pad_set_iterate_internal_links_function, macro in GstPad
    -gst_pad_set_getrange_function, function in GstPad +gst_pad_set_iterate_internal_links_function_full, function in GstPad
    -gst_pad_set_iterate_internal_links_function, function in GstPad +gst_pad_set_link_function, macro in GstPad
    -gst_pad_set_link_function, function in GstPad +gst_pad_set_link_function_full, function in GstPad
    @@ -4199,15 +4199,19 @@
    -gst_pad_set_query_function, function in GstPad +gst_pad_set_query_function, macro in GstPad
    -gst_pad_set_query_type_function, function in GstPad +gst_pad_set_query_function_full, function in GstPad
    -gst_pad_set_unlink_function, function in GstPad +gst_pad_set_unlink_function, macro in GstPad +
    +
    +
    +gst_pad_set_unlink_function_full, function in GstPad
    @@ -4227,10 +4231,6 @@
    -GST_PAD_STREAM_LOCK_FULL, macro in GstPad -
    -
    -
    GST_PAD_STREAM_TRYLOCK, macro in GstPad
    @@ -4239,10 +4239,6 @@
    -GST_PAD_STREAM_UNLOCK_FULL, macro in GstPad -
    -
    -
    GST_PAD_TEMPLATE_CAPS, macro in GstPadTemplate
    @@ -4519,10 +4515,6 @@
    -gst_plugin_feature_type_name_filter, function in GstPluginFeature -
    -
    -
    gst_plugin_get_cache_data, function in GstPlugin
    @@ -4703,6 +4695,10 @@
    +gst_preset_get_app_dir, function in GstPreset +
    +
    +
    gst_preset_get_meta, function in GstPreset
    @@ -4727,6 +4723,10 @@
    +gst_preset_set_app_dir, function in GstPreset +
    +
    +
    gst_preset_set_meta, function in GstPreset
    @@ -4739,132 +4739,132 @@
    -GstProbeReturn, enum in GstPad +GstProgressType, enum in GstMessage
    -GstProbeType, enum in GstPad +GstProxyPad, struct in GstGhostPad
    -GST_PROBE_TYPE_BLOCKING, macro in GstPad +gst_proxy_pad_chain_default, function in GstGhostPad
    -GST_PROBE_TYPE_DATA, macro in GstPad +gst_proxy_pad_chain_list_default, function in GstGhostPad
    -GST_PROBE_TYPE_SCHEDULING, macro in GstPad +gst_proxy_pad_event_default, function in GstGhostPad
    -GstProgressType, enum in GstMessage +gst_proxy_pad_getrange_default, function in GstGhostPad
    -GstProxyPad, struct in GstGhostPad +gst_proxy_pad_get_internal, function in GstGhostPad
    -gst_proxy_pad_acceptcaps_default, function in GstGhostPad +gst_proxy_pad_iterate_internal_links_default, function in GstGhostPad
    -gst_proxy_pad_chain_default, function in GstGhostPad +gst_proxy_pad_query_default, function in GstGhostPad
    -gst_proxy_pad_chain_list_default, function in GstGhostPad +gst_proxy_pad_unlink_default, function in GstGhostPad
    +

    Q

    -gst_proxy_pad_event_default, function in GstGhostPad +GstQOSType, enum in GstEvent
    -gst_proxy_pad_fixatecaps_default, function in GstGhostPad +GstQuery, struct in GstQuery
    -gst_proxy_pad_getcaps_default, function in GstGhostPad +GstQueryType, enum in GstQuery
    -gst_proxy_pad_getrange_default, function in GstGhostPad +GstQueryTypeFlags, enum in GstQuery
    -gst_proxy_pad_get_internal, function in GstGhostPad +gst_query_add_allocation_meta, function in GstQuery
    -gst_proxy_pad_iterate_internal_links_default, function in GstGhostPad +gst_query_add_allocation_param, function in GstQuery
    -gst_proxy_pad_query_default, function in GstGhostPad +gst_query_add_allocation_pool, function in GstQuery
    -gst_proxy_pad_query_type_default, function in GstGhostPad +gst_query_add_buffering_range, function in GstQuery
    -gst_proxy_pad_unlink_default, function in GstGhostPad +gst_query_add_scheduling_mode, function in GstQuery
    -

    Q

    -GstQOSType, enum in GstEvent +gst_query_copy, function in GstQuery
    -GstQuery, struct in GstQuery +gst_query_get_n_allocation_metas, function in GstQuery
    -GstQueryType, enum in GstQuery +gst_query_get_n_allocation_params, function in GstQuery
    -GstQueryTypeDefinition, struct in GstQuery +gst_query_get_n_allocation_pools, function in GstQuery
    -gst_query_add_allocation_memory, function in GstQuery +gst_query_get_n_buffering_ranges, function in GstQuery
    -gst_query_add_allocation_meta, function in GstQuery +gst_query_get_n_scheduling_modes, function in GstQuery
    -gst_query_add_buffering_range, function in GstQuery +gst_query_get_structure, function in GstQuery
    -gst_query_copy, function in GstQuery +gst_query_has_allocation_meta, function in GstQuery
    -gst_query_get_n_allocation_memories, function in GstQuery +gst_query_has_scheduling_mode, function in GstQuery
    -gst_query_get_n_allocation_metas, function in GstQuery +gst_query_intersect_caps_result, function in GstQuery
    -gst_query_get_n_buffering_ranges, function in GstQuery +GST_QUERY_IS_DOWNSTREAM, macro in GstQuery
    -gst_query_get_structure, function in GstQuery +GST_QUERY_IS_SERIALIZED, macro in GstQuery
    -gst_query_has_allocation_meta, function in GstQuery +GST_QUERY_IS_UPSTREAM, macro in GstQuery
    @@ -4872,15 +4872,27 @@
    +GST_QUERY_MAKE_TYPE, macro in GstQuery +
    +
    +
    gst_query_make_writable, macro in GstQuery
    +gst_query_new_accept_caps, function in GstQuery +
    +
    +
    gst_query_new_allocation, function in GstQuery
    -gst_query_new_buffering, function in GstQuery +gst_query_new_buffering, function in GstQuery +
    +
    +
    +gst_query_new_caps, function in GstQuery
    @@ -4892,6 +4904,10 @@
    +gst_query_new_drain, function in GstQuery +
    +
    +
    gst_query_new_duration, function in GstQuery
    @@ -4920,15 +4936,23 @@
    +gst_query_new_toc, function in GstQuery +
    +
    +
    gst_query_new_uri, function in GstQuery
    -gst_query_parse_allocation, function in GstQuery +gst_query_parse_accept_caps, function in GstQuery +
    +
    +
    +gst_query_parse_accept_caps_result, function in GstQuery
    -gst_query_parse_allocation_params, function in GstQuery +gst_query_parse_allocation, function in GstQuery
    @@ -4944,6 +4968,14 @@
    +gst_query_parse_caps, function in GstQuery +
    +
    +
    +gst_query_parse_caps_result, function in GstQuery +
    +
    +
    gst_query_parse_convert, function in GstQuery
    @@ -4956,11 +4988,15 @@
    -gst_query_parse_nth_allocation_memory, function in GstQuery +gst_query_parse_nth_allocation_meta, function in GstQuery +
    +
    +
    +gst_query_parse_nth_allocation_param, function in GstQuery
    -gst_query_parse_nth_allocation_meta, function in GstQuery +gst_query_parse_nth_allocation_pool, function in GstQuery
    @@ -4972,6 +5008,10 @@
    +gst_query_parse_nth_scheduling_mode, function in GstQuery +
    +
    +
    gst_query_parse_n_formats, function in GstQuery
    @@ -4992,6 +5032,10 @@
    +gst_query_parse_toc, function in GstQuery +
    +
    +
    gst_query_parse_uri, function in GstQuery
    @@ -5000,11 +5044,15 @@
    -gst_query_replace, macro in GstQuery +gst_query_remove_nth_allocation_meta, function in GstQuery +
    +
    +
    +gst_query_replace, function in GstQuery
    -gst_query_set_allocation_params, function in GstQuery +gst_query_set_accept_caps_result, function in GstQuery
    @@ -5020,6 +5068,10 @@
    +gst_query_set_caps_result, function in GstQuery +
    +
    +
    gst_query_set_convert, function in GstQuery
    @@ -5040,6 +5092,14 @@
    +gst_query_set_nth_allocation_param, function in GstQuery +
    +
    +
    +gst_query_set_nth_allocation_pool, function in GstQuery +
    +
    +
    gst_query_set_position, function in GstQuery
    @@ -5056,27 +5116,27 @@
    -gst_query_set_uri, function in GstQuery +gst_query_set_toc, function in GstQuery
    -gst_query_types_contains, function in GstQuery +gst_query_set_uri, function in GstQuery
    -gst_query_type_get_by_nick, function in GstQuery +GST_QUERY_TYPE, macro in GstQuery
    -gst_query_type_get_details, function in GstQuery +GST_QUERY_TYPE_BOTH, macro in GstQuery
    -gst_query_type_get_name, function in GstQuery +gst_query_type_get_flags, function in GstQuery
    -gst_query_type_iterate_definitions, function in GstQuery +gst_query_type_get_name, function in GstQuery
    @@ -5084,10 +5144,6 @@
    -gst_query_type_register, function in GstQuery -
    -
    -
    gst_query_type_to_quark, function in GstQuery
    @@ -5181,6 +5237,10 @@
    +gst_registry_check_feature_version, function in GstRegistry +
    +
    +
    gst_registry_feature_filter, function in GstRegistry
    @@ -5201,7 +5261,7 @@
    -gst_registry_get_default, function in GstRegistry +gst_registry_get, function in GstRegistry
    @@ -5306,6 +5366,42 @@

    S

    +GstSample, struct in GstSample +
    +
    +
    +gst_sample_get_buffer, function in GstSample +
    +
    +
    +gst_sample_get_caps, function in GstSample +
    +
    +
    +gst_sample_get_info, function in GstSample +
    +
    +
    +gst_sample_get_segment, function in GstSample +
    +
    +
    +gst_sample_new, function in GstSample +
    +
    +
    +gst_sample_ref, function in GstSample +
    +
    +
    +gst_sample_unref, function in GstSample +
    +
    +
    +GstSchedulingFlags, enum in GstQuery +
    +
    +
    GstSearchMode, enum in GstUtils
    @@ -5478,6 +5574,10 @@
    +GstStreamConfigFlags, enum in GstEvent +
    +
    +
    GstStreamError, enum in GstGError
    @@ -5514,10 +5614,6 @@
    -gst_structure_empty_new, function in GstStructure -
    -
    -
    gst_structure_fixate, function in GstStructure
    @@ -5634,10 +5730,6 @@
    -gst_structure_id_empty_new, function in GstStructure -
    -
    -
    gst_structure_id_get, function in GstStructure
    @@ -5658,10 +5750,6 @@
    -gst_structure_id_new, function in GstStructure -
    -
    -
    gst_structure_id_set, function in GstStructure
    @@ -5698,6 +5786,18 @@
    +gst_structure_new_empty, function in GstStructure +
    +
    +
    +gst_structure_new_id, function in GstStructure +
    +
    +
    +gst_structure_new_id_empty, function in GstStructure +
    +
    +
    gst_structure_new_valist, function in GstStructure
    @@ -5783,7 +5883,7 @@
    -GstTagList, typedef in GstTagList +GstTagList, struct in GstTagList
    @@ -5799,7 +5899,7 @@
    -GstTagSetterIFace, struct in GstTagSetter +GstTagSetterInterface, struct in GstTagSetter
    @@ -6039,6 +6139,10 @@
    +GST_TAG_LANGUAGE_NAME, macro in GstTagList +
    +
    +
    GST_TAG_LICENSE, macro in GstTagList
    @@ -6099,14 +6203,6 @@
    -gst_tag_list_get_char, function in GstTagList -
    -
    -
    -gst_tag_list_get_char_index, function in GstTagList -
    -
    -
    gst_tag_list_get_date, function in GstTagList
    @@ -6155,14 +6251,6 @@
    -gst_tag_list_get_long, function in GstTagList -
    -
    -
    -gst_tag_list_get_long_index, function in GstTagList -
    -
    -
    gst_tag_list_get_pointer, function in GstTagList
    @@ -6183,63 +6271,63 @@
    -gst_tag_list_get_uchar, function in GstTagList +gst_tag_list_get_uint, function in GstTagList
    -gst_tag_list_get_uchar_index, function in GstTagList +gst_tag_list_get_uint64, function in GstTagList
    -gst_tag_list_get_uint, function in GstTagList +gst_tag_list_get_uint64_index, function in GstTagList
    -gst_tag_list_get_uint64, function in GstTagList +gst_tag_list_get_uint_index, function in GstTagList
    -gst_tag_list_get_uint64_index, function in GstTagList +gst_tag_list_get_value_index, function in GstTagList
    -gst_tag_list_get_uint_index, function in GstTagList +gst_tag_list_insert, function in GstTagList
    -gst_tag_list_get_ulong, function in GstTagList +gst_tag_list_is_empty, function in GstTagList
    -gst_tag_list_get_ulong_index, function in GstTagList +gst_tag_list_is_equal, function in GstTagList
    -gst_tag_list_get_value_index, function in GstTagList +gst_tag_list_merge, function in GstTagList
    -gst_tag_list_insert, function in GstTagList +gst_tag_list_new, function in GstTagList
    -gst_tag_list_is_empty, function in GstTagList +gst_tag_list_new_empty, function in GstTagList
    -gst_tag_list_merge, function in GstTagList +gst_tag_list_new_from_string, function in GstTagList
    -gst_tag_list_new, function in GstTagList +gst_tag_list_new_valist, function in GstTagList
    -gst_tag_list_new_full, function in GstTagList +gst_tag_list_nth_tag_name, function in GstTagList
    -gst_tag_list_new_full_valist, function in GstTagList +gst_tag_list_n_tags, function in GstTagList
    @@ -6251,6 +6339,10 @@
    +gst_tag_list_to_string, function in GstTagList +
    +
    +
    GST_TAG_LOCATION, macro in GstTagList
    @@ -6435,10 +6527,6 @@
    -gst_task_create, function in GstTask -
    -
    -
    GST_TASK_GET_COND, macro in GstTask
    @@ -6459,6 +6547,10 @@
    +gst_task_new, function in GstTask +
    +
    +
    gst_task_pause, function in GstTask
    @@ -6491,10 +6583,6 @@
    -gst_task_set_priority, function in GstTask -
    -
    -
    gst_task_set_state, function in GstTask
    @@ -6523,6 +6611,10 @@
    +GstTimedValue, struct in GstControlSource +
    +
    +
    GST_TIMESPEC_TO_TIME, macro in GstClock
    @@ -6563,55 +6655,99 @@
    -GST_TRACE, macro in GstInfo +GstToc, struct in GstToc
    -GstTrace, struct in GstTrace +GstTocEntry, struct in GstToc
    -gst_trace_add_entry, macro in GstTrace +GstTocEntryType, enum in GstToc
    -gst_trace_destroy, function in GstTrace +GstTocSetter, struct in GstTocSetter
    -gst_trace_flush, function in GstTrace +GstTocSetterIFace, struct in GstTocSetter
    -gst_trace_get_offset, macro in GstTrace +gst_toc_copy, function in GstToc
    -gst_trace_get_remaining, macro in GstTrace +gst_toc_entry_copy, function in GstToc
    -gst_trace_get_size, macro in GstTrace +gst_toc_entry_free, function in GstToc
    -gst_trace_new, function in GstTrace +gst_toc_entry_get_start_stop, function in GstToc
    -GST_TRACE_OBJECT, macro in GstInfo +gst_toc_entry_new, function in GstToc +
    +
    +
    +gst_toc_entry_new_with_pad, function in GstToc +
    +
    +
    +gst_toc_entry_set_start_stop, function in GstToc +
    +
    +
    +gst_toc_find_entry, function in GstToc +
    +
    +
    +gst_toc_free, function in GstToc +
    +
    +
    +gst_toc_new, function in GstToc +
    +
    +
    +gst_toc_setter_add_toc_entry, function in GstTocSetter +
    +
    +
    +gst_toc_setter_get_toc, function in GstTocSetter +
    +
    +
    +gst_toc_setter_get_toc_copy, function in GstTocSetter +
    +
    +
    +gst_toc_setter_get_toc_entry, function in GstTocSetter +
    +
    +
    +gst_toc_setter_get_toc_entry_copy, function in GstTocSetter
    -gst_trace_read_tsc, function in GstTrace +gst_toc_setter_reset_toc, function in GstTocSetter
    -gst_trace_set_default, function in GstTrace +gst_toc_setter_set_toc, function in GstTocSetter +
    +
    +
    +GST_TRACE, macro in GstInfo
    -gst_trace_text_flush, function in GstTrace +GST_TRACE_OBJECT, macro in GstInfo
    @@ -6631,15 +6767,11 @@
    -GstTypeNameData, struct in GstPluginFeature -
    -
    -
    GST_TYPE_ARRAY, macro in GstValue
    -GST_TYPE_DATE, macro in GstValue +GST_TYPE_BITMASK, macro in GstValue
    @@ -6706,21 +6838,17 @@ GST_TYPE_LIST, macro in GstValue
    -
    -gst_type_register_static_full, function in GstUtils -
    -

    U

    gst_update_registry, function in Gst
    -GstURIHandler, struct in GstUriHandler +GstURIError, enum in GstUriHandler
    -GstURIHandler::new-uri, object signal in GstUriHandler +GstURIHandler, struct in GstUriHandler
    @@ -6736,6 +6864,10 @@
    +gst_uri_error_quark, function in GstUriHandler +
    +
    +
    gst_uri_get_location, function in GstUriHandler
    @@ -6756,10 +6888,6 @@
    -gst_uri_handler_new_uri, function in GstUriHandler -
    -
    -
    gst_uri_handler_set_uri, function in GstUriHandler
    @@ -6824,6 +6952,10 @@
    +gst_util_greatest_common_divisor_int64, function in GstUtils +
    +
    +
    gst_util_seqnum_compare, function in GstUtils
    @@ -6865,15 +6997,15 @@

    V

    -GstValueCompareFunc, user_function in GstValue +GstValueArray, struct in GstControlSource
    -GstValueDeserializeFunc, user_function in GstValue +GstValueCompareFunc, user_function in GstValue
    -GstValueIntersectFunc, user_function in GstValue +GstValueDeserializeFunc, user_function in GstValue
    @@ -6881,18 +7013,10 @@
    -GstValueSubtractFunc, user_function in GstValue -
    -
    -
    GstValueTable, struct in GstValue
    -GstValueUnionFunc, user_function in GstValue -
    -
    -
    gst_value_array_append_value, function in GstValue
    @@ -6949,15 +7073,15 @@
    -gst_value_get_buffer, macro in GstValue +gst_value_get_bitmask, function in GstValue
    -gst_value_get_caps, function in GstValue +gst_value_get_buffer, macro in GstValue
    -gst_value_get_date, function in GstValue +gst_value_get_caps, function in GstValue
    @@ -6993,6 +7117,10 @@
    +gst_value_get_int64_range_step, function in GstValue +
    +
    +
    gst_value_get_int_range_max, function in GstValue
    @@ -7001,6 +7129,14 @@
    +gst_value_get_int_range_step, function in GstValue +
    +
    +
    +gst_value_get_sample, macro in GstValue +
    +
    +
    gst_value_get_structure, function in GstValue
    @@ -7013,15 +7149,15 @@
    -GST_VALUE_HOLDS_BUFFER, macro in GstValue +GST_VALUE_HOLDS_BITMASK, macro in GstValue
    -GST_VALUE_HOLDS_CAPS, macro in GstValue +GST_VALUE_HOLDS_BUFFER, macro in GstValue
    -GST_VALUE_HOLDS_DATE, macro in GstValue +GST_VALUE_HOLDS_CAPS, macro in GstValue
    @@ -7053,6 +7189,10 @@
    +GST_VALUE_HOLDS_SAMPLE, macro in GstValue +
    +
    +
    GST_VALUE_HOLDS_STRUCTURE, macro in GstValue
    @@ -7069,6 +7209,10 @@
    +gst_value_is_subset, function in GstValue +
    +
    +
    GST_VALUE_LESS_THAN, macro in GstValue
    @@ -7101,55 +7245,55 @@
    -gst_value_register_intersect_func, function in GstValue +gst_value_serialize, function in GstValue
    -gst_value_register_subtract_func, function in GstValue +gst_value_set_bitmask, function in GstValue
    -gst_value_register_union_func, function in GstValue +gst_value_set_buffer, macro in GstValue
    -gst_value_serialize, function in GstValue +gst_value_set_caps, function in GstValue
    -gst_value_set_buffer, macro in GstValue +gst_value_set_double_range, function in GstValue
    -gst_value_set_caps, function in GstValue +gst_value_set_fraction, function in GstValue
    -gst_value_set_date, function in GstValue +gst_value_set_fraction_range, function in GstValue
    -gst_value_set_double_range, function in GstValue +gst_value_set_fraction_range_full, function in GstValue
    -gst_value_set_fraction, function in GstValue +gst_value_set_int64_range, function in GstValue
    -gst_value_set_fraction_range, function in GstValue +gst_value_set_int64_range_step, function in GstValue
    -gst_value_set_fraction_range_full, function in GstValue +gst_value_set_int_range, function in GstValue
    -gst_value_set_int64_range, function in GstValue +gst_value_set_int_range_step, function in GstValue
    -gst_value_set_int_range, function in GstValue +gst_value_set_sample, macro in GstValue
    @@ -7165,6 +7309,10 @@
    +gst_value_take_sample, macro in GstValue +
    +
    +
    gst_value_union, function in GstValue
    diff --git a/docs/gst/html/gst-building.html b/docs/gst/html/gst-building.html index a231bf6..87d0467 100644 --- a/docs/gst/html/gst-building.html +++ b/docs/gst/html/gst-building.html @@ -3,8 +3,8 @@ Building GStreamer and GStreamer Applications - - + + @@ -16,7 +16,7 @@ Prev Up Home -GStreamer 0.11 Core Reference Manual +GStreamer 1.0 Core Reference Manual Next
    @@ -31,7 +31,7 @@ How to build the GStreamer framework and applications using it.
    -

    Building GStreamer on UNIX

    +

    Building GStreamer on UNIX

    On UNIX, GStreamer uses the standard GNU build system, using autoconf for package @@ -92,7 +92,7 @@ How to build the GStreamer framework and applications using it.

    -

    Building GStreamer Applications

    +

    Building GStreamer Applications

    Applications and libraries can use pkg-config to get all the needed compiler and linker flags to build against GStreamer. Please note that diff --git a/docs/gst/html/gst-running.html b/docs/gst/html/gst-running.html index 73f5a05..2ad5d33 100644 --- a/docs/gst/html/gst-running.html +++ b/docs/gst/html/gst-running.html @@ -3,8 +3,8 @@ Running GStreamer Applications - - + + @@ -16,7 +16,7 @@ Prev Up Home -GStreamer 0.11 Core Reference Manual +GStreamer 1.0 Core Reference Manual Next

    @@ -31,9 +31,9 @@ How to run and debug your GStreamer application
    -

    Running and debugging GStreamer Applications

    +

    Running and debugging GStreamer Applications

    -

    Environment variables

    +

    Environment variables

    GStreamer inspects a few of environment variables in addition to standard variables like LANG, PATH or HOME. @@ -48,12 +48,12 @@ with

  • plug-ins in the user's home directory. These are stored in a directory called plugins inside the -.gstreamer-0.11 directory in the user's +.gstreamer-1.0 directory in the user's home directory.

  • plug-ins installed system-wide. On this system, they are stored in -/usr/local/lib/gstreamer-0.11. +/usr/local/lib/gstreamer-1.0.

  • diff --git a/docs/gst/html/gstreamer-Gst.html b/docs/gst/html/gstreamer-Gst.html index b734f90..a284203 100644 --- a/docs/gst/html/gstreamer-Gst.html +++ b/docs/gst/html/gstreamer-Gst.html @@ -3,8 +3,8 @@ Gst - - + + @@ -17,7 +17,7 @@ Prev Up Home -GStreamer 0.11 Core Reference Manual +GStreamer 1.0 Core Reference Manual Next @@ -83,16 +83,30 @@ options, as shown in the following example.

    -

    Example 1. Initializing the gstreamer library

    -
    -int
    -main (int argc, char *argv[])
    -{
    -  // initialize the GStreamer library
    -  gst_init (&argc, &argv);
    -  ...
    -}
    -
    +

    Example 1. Initializing the gstreamer library

    +
    + + + + + + + +
    1
    +2
    +3
    +4
    +5
    +6
    +7
    int
    +main (int argc, char *argv[])
    +{
    +  // initialize the GStreamer library
    +  gst_init (&argc, &argv);
    +  ...
    +}
    +
    +


    @@ -105,32 +119,62 @@ You can also use GOption to initialize your own parameters as shown in the next code fragment:

    -

    Example 2. Initializing own parameters when initializing gstreamer

    -
    -static gboolean stats = FALSE;
    -...
    -int
    -main (int argc, char *argv[])
    -{
    - GOptionEntry options[] = {
    -  {"tags", 't', 0, G_OPTION_ARG_NONE, &tags,
    -      N_("Output tags (also known as metadata)"), NULL},
    -  {NULL}
    - };
    - // must initialise the threading system before using any other GLib funtion
    - if (!g_thread_supported ())
    -   g_thread_init (NULL);
    - ctx = g_option_context_new ("[ADDITIONAL ARGUMENTS]");
    - g_option_context_add_main_entries (ctx, options, GETTEXT_PACKAGE);
    - g_option_context_add_group (ctx, gst_init_get_option_group ());
    - if (!g_option_context_parse (ctx, &argc, &argv, &err)) {
    -   g_print ("Error initializing: %s\n", GST_STR_NULL (err->message));
    -   exit (1);
    - }
    - g_option_context_free (ctx);
    -...
    -}
    -
    +

    Example 2. Initializing own parameters when initializing gstreamer

    +
    + + + + + + + +
    1
    +2
    +3
    +4
    +5
    +6
    +7
    +8
    +9
    +10
    +11
    +12
    +13
    +14
    +15
    +16
    +17
    +18
    +19
    +20
    +21
    +22
    +23
    static gboolean stats = FALSE;
    +...
    +int
    +main (int argc, char *argv[])
    +{
    + GOptionEntry options[] = {
    +  {"tags", 't', 0, G_OPTION_ARG_NONE, &tags,
    +      N_("Output tags (also known as metadata)"), NULL},
    +  {NULL}
    + };
    + // must initialise the threading system before using any other GLib funtion
    + if (!g_thread_supported ())
    +   g_thread_init (NULL);
    + ctx = g_option_context_new ("[ADDITIONAL ARGUMENTS]");
    + g_option_context_add_main_entries (ctx, options, GETTEXT_PACKAGE);
    + g_option_context_add_group (ctx, gst_init_get_option_group ());
    + if (!g_option_context_parse (ctx, &argc, &argv, &err)) {
    +   g_print ("Error initializing: %s\n", GST_STR_NULL (err->message));
    +   exit (1);
    + }
    + g_option_context_free (ctx);
    +...
    +}
    +
    +


    @@ -169,7 +213,7 @@ for how to disable automatic registry updates.

    This function should be called before calling any other GLib functions. If this is not an option, your program must initialise the GLib thread system -using g_thread_init() before any other GLib functions are called. +using g_thread_init() before any other GLib functions are called.

    @@ -223,7 +267,7 @@ use This function should be called before calling any other GLib functions. If this is not an option, your program must initialise the GLib thread system -using g_thread_init() before any other GLib functions are called. +using g_thread_init() before any other GLib functions are called.

    diff --git a/docs/gst/html/gstreamer-GstAtomicQueue.html b/docs/gst/html/gstreamer-GstAtomicQueue.html index b141a3c..ea14541 100644 --- a/docs/gst/html/gstreamer-GstAtomicQueue.html +++ b/docs/gst/html/gstreamer-GstAtomicQueue.html @@ -3,8 +3,8 @@ GstAtomicQueue - - + + @@ -17,7 +17,7 @@ - + - + - - + + + + + + @@ -309,7 +351,7 @@ timestamp is not known or relevant. when the duration is not known or relevant. - + - + @@ -338,9 +380,8 @@ format as offset. GST_BUFFER_FLAG_GAP = (GST_MINI_OBJECT_FLAG_LAST << 7), GST_BUFFER_FLAG_DROPPABLE = (GST_MINI_OBJECT_FLAG_LAST << 8), GST_BUFFER_FLAG_DELTA_UNIT = (GST_MINI_OBJECT_FLAG_LAST << 9), - GST_BUFFER_FLAG_IN_CAPS = (GST_MINI_OBJECT_FLAG_LAST << 10), - GST_BUFFER_FLAG_LAST = (GST_MINI_OBJECT_FLAG_LAST << 20) + GST_BUFFER_FLAG_LAST = (GST_MINI_OBJECT_FLAG_LAST << 16) } GstBufferFlags;

    @@ -372,7 +413,7 @@ A set of buffer flags used to describe properties of a GST_BUFFER_FLAG_RESYNC

    - @@ -391,7 +432,8 @@ A set of buffer flags used to describe properties of a GST_BUFFER_FLAG_HEADER

    @@ -414,11 +456,6 @@ A set of buffer flags used to describe properties of a GST_BUFFER_FLAG_IN_CAPS

    - - -

    gst_buffer_memcmp ()

    gint                gst_buffer_memcmp                   (GstBuffer *buffer,
    -                                                         gsize offset,
    +                                                         gsize offset,
                                                              gconstpointer mem,
    -                                                         gsize size);
    + gsize size);

    Compare size bytes starting from offset in buffer with the memory in mem.

    @@ -1421,10 +1358,10 @@ Compare size bytes starting from

    gst_buffer_extract ()

    -
    gsize               gst_buffer_extract                  (GstBuffer *buffer,
    -                                                         gsize offset,
    +
    gsize               gst_buffer_extract                  (GstBuffer *buffer,
    +                                                         gsize offset,
                                                              gpointer dest,
    -                                                         gsize size);
    + gsize size);

    Copy size bytes starting from offset in buffer to dest.

    @@ -1458,10 +1395,10 @@ when buffer did not contain enough data.

    gst_buffer_fill ()

    -
    gsize               gst_buffer_fill                     (GstBuffer *buffer,
    -                                                         gsize offset,
    +
    gsize               gst_buffer_fill                     (GstBuffer *buffer,
    +                                                         gsize offset,
                                                              gconstpointer src,
    -                                                         gsize size);
    + gsize size);

    Copy size bytes from src to buffer at offset.

    @@ -1495,10 +1432,10 @@ when buffer did not contain enough data.

    gst_buffer_memset ()

    -
    gsize               gst_buffer_memset                   (GstBuffer *buffer,
    -                                                         gsize offset,
    -                                                         guint8 val,
    -                                                         gsize size);
    +
    gsize               gst_buffer_memset                   (GstBuffer *buffer,
    +                                                         gsize offset,
    +                                                         guint8 val,
    +                                                         gsize size);

    Fill buf with size bytes with val starting from offset.

    @@ -1532,10 +1469,65 @@ when buffer did not contain enough data.

    -

    GST_BUFFER_COPY_METADATA

    -
    #define GST_BUFFER_COPY_METADATA       (GST_BUFFER_COPY_FLAGS | GST_BUFFER_COPY_TIMESTAMPS)
    +

    enum GstBufferCopyFlags

    +
    typedef enum {
    +  GST_BUFFER_COPY_NONE           = 0,
    +  GST_BUFFER_COPY_FLAGS          = (1 << 0),
    +  GST_BUFFER_COPY_TIMESTAMPS     = (1 << 1),
    +  GST_BUFFER_COPY_META           = (1 << 2),
    +  GST_BUFFER_COPY_MEMORY         = (1 << 3),
    +  GST_BUFFER_COPY_MERGE          = (1 << 4)
    +} GstBufferCopyFlags;
     

    +A set of flags that can be provided to the gst_buffer_copy_into() +function to specify which items should be copied. +

    +
    Prev Up HomeGStreamer 0.11 Core Reference ManualGStreamer 1.0 Core Reference Manual Next
    diff --git a/docs/gst/html/gstreamer-GstBuffer.html b/docs/gst/html/gstreamer-GstBuffer.html index 77299de..293c073 100644 --- a/docs/gst/html/gstreamer-GstBuffer.html +++ b/docs/gst/html/gstreamer-GstBuffer.html @@ -3,8 +3,8 @@ GstBuffer - - + + @@ -17,7 +17,7 @@ Prev Up HomeGStreamer 0.11 Core Reference ManualGStreamer 1.0 Core Reference Manual Next
    @@ -31,7 +31,7 @@

    GstBuffer

    -

    GstBuffer — Data-passing buffer type, supporting sub-buffers.

    +

    GstBuffer — Data-passing buffer type

    @@ -42,7 +42,6 @@ struct GstBuffer; enum GstBufferFlags; -enum GstBufferCopyFlags; #define GST_BUFFER_FLAGS (buf) #define GST_BUFFER_FLAG_IS_SET (buf, flag) @@ -50,104 +49,119 @@ enum GST_BUFFER_FLAG_UNSET (buf, flag) -#define GST_META_TIMING_INFO -struct GstMetaTiming; -#define GST_BUFFER_TIMESTAMP (buf) +#define GST_BUFFER_PTS (buf) +#define GST_BUFFER_DTS (buf) #define GST_BUFFER_DURATION (buf) #define GST_BUFFER_OFFSET (buf) #define GST_BUFFER_OFFSET_END (buf) #define GST_BUFFER_OFFSET_NONE #define GST_BUFFER_DURATION_IS_VALID (buffer) -#define GST_BUFFER_TIMESTAMP_IS_VALID (buffer) +#define GST_BUFFER_PTS_IS_VALID (buffer) +#define GST_BUFFER_DTS_IS_VALID (buffer) #define GST_BUFFER_OFFSET_IS_VALID (buffer) #define GST_BUFFER_OFFSET_END_IS_VALID (buffer) #define GST_BUFFER_IS_DISCONT (buffer) -#define GST_BUFFER_TRACE_NAME GstBuffer * gst_buffer_new (void); -#define gst_buffer_new_and_alloc (s) -GstBuffer * gst_buffer_new_allocate (const GstAllocator *allocator, - gsize size, - gsize align); +GstBuffer * gst_buffer_new_allocate (GstAllocator *allocator, + gsize size, + GstAllocationParams *params); GstBuffer * gst_buffer_new_wrapped (gpointer data, - gsize size); -GstBuffer * gst_buffer_new_wrapped_full (gpointer data, - GFreeFunc free_func, - gsize offset, - gsize size); + gsize size); +GstBuffer * gst_buffer_new_wrapped_full (GstMemoryFlags flags, + gpointer data, + gsize maxsize, + gsize offset, + gsize size, + gpointer user_data, + GDestroyNotify notify); GstBuffer * gst_buffer_ref (GstBuffer *buf); void gst_buffer_unref (GstBuffer *buf); -gsize gst_buffer_get_sizes (GstBuffer *buffer, - gsize *offset, - gsize *maxsize); +#define gst_buffer_get_sizes (b, + of, + ms) #define gst_buffer_get_size (b) -void gst_buffer_resize (GstBuffer *buffer, - gssize offset, - gsize size); +#define gst_buffer_resize (b, + of, + s) #define gst_buffer_set_size (b, s) guint gst_buffer_n_memory (GstBuffer *buffer); -void gst_buffer_take_memory (GstBuffer *buffer, +void gst_buffer_insert_memory (GstBuffer *buffer, gint idx, GstMemory *mem); -GstMemory * gst_buffer_peek_memory (GstBuffer *buffer, +void gst_buffer_replace_memory_range (GstBuffer *buffer, guint idx, - GstMapFlags flags); -#define gst_buffer_remove_memory (b, - i) + gint length, + GstMemory *mem); +GstMemory * gst_buffer_get_memory_range (GstBuffer *buffer, + guint idx, + gint length); void gst_buffer_remove_memory_range (GstBuffer *buffer, guint idx, - guint length); -GstBuffer * gst_buffer_join (GstBuffer *buf1, - GstBuffer *buf2); -GstBuffer * gst_buffer_merge (GstBuffer *buf1, - GstBuffer *buf2); -gpointer gst_buffer_map (GstBuffer *buffer, - gsize *size, - gsize *maxsize, - GstMapFlags flags); -gboolean gst_buffer_unmap (GstBuffer *buffer, - gpointer data, - gsize size); + gint length); +gboolean gst_buffer_find_memory (GstBuffer *buffer, + gsize offset, + gsize size, + guint *idx, + guint *length, + gsize *skip); +#define gst_buffer_prepend_memory (b, + m) +#define gst_buffer_append_memory (b, + m) +#define gst_buffer_replace_memory (b, + i, + m) +#define gst_buffer_replace_all_memory (b, + m) +#define gst_buffer_get_memory (b, + i) +#define gst_buffer_get_all_memory (b) +#define gst_buffer_remove_memory (b, + i) +#define gst_buffer_remove_all_memory (b) +#define gst_buffer_map (b, + i, + f) +void gst_buffer_unmap (GstBuffer *buffer, + GstMapInfo *info); gint gst_buffer_memcmp (GstBuffer *buffer, - gsize offset, + gsize offset, gconstpointer mem, - gsize size); -gsize gst_buffer_extract (GstBuffer *buffer, - gsize offset, + gsize size); +gsize gst_buffer_extract (GstBuffer *buffer, + gsize offset, gpointer dest, - gsize size); -gsize gst_buffer_fill (GstBuffer *buffer, - gsize offset, + gsize size); +gsize gst_buffer_fill (GstBuffer *buffer, + gsize offset, gconstpointer src, - gsize size); -gsize gst_buffer_memset (GstBuffer *buffer, - gsize offset, - guint8 val, - gsize size); + gsize size); +gsize gst_buffer_memset (GstBuffer *buffer, + gsize offset, + guint8 val, + gsize size); +enum GstBufferCopyFlags; #define GST_BUFFER_COPY_METADATA #define GST_BUFFER_COPY_ALL GstBuffer * gst_buffer_copy (const GstBuffer *buf); void gst_buffer_copy_into (GstBuffer *dest, GstBuffer *src, GstBufferCopyFlags flags, - gsize offset, - gsize size); + gsize offset, + gsize size); GstBuffer * gst_buffer_copy_region (GstBuffer *parent, GstBufferCopyFlags flags, - gsize offset, - gsize size); + gsize offset, + gsize size); #define gst_buffer_is_writable (buf) #define gst_buffer_make_writable (buf) -#define gst_buffer_replace (obuf, - nbuf) -gboolean gst_buffer_is_span_fast (GstBuffer *buf1, +gboolean gst_buffer_replace (GstBuffer **obuf, + GstBuffer *nbuf); +GstBuffer * gst_buffer_append (GstBuffer *buf1, GstBuffer *buf2); -GstBuffer * gst_buffer_span (GstBuffer *buf1, - gsize offset, - GstBuffer *buf2, - gsize size); GstMeta * gst_buffer_get_meta (GstBuffer *buffer, - const GstMetaInfo *info); + GType api); GstMeta * gst_buffer_add_meta (GstBuffer *buffer, const GstMetaInfo *info, gpointer params); @@ -155,86 +169,101 @@ struct GstMeta *meta); GstMeta * gst_buffer_iterate_meta (GstBuffer *buffer, gpointer *state); -#define gst_buffer_add_meta_timing (b) -#define gst_buffer_get_meta_timing (b) -const GstMetaInfo * gst_meta_timing_get_info (void); +gboolean (*GstBufferForeachMetaFunc) (GstBuffer *buffer, + GstMeta **meta, + gpointer user_data); +void gst_buffer_foreach_meta (GstBuffer *buffer, + GstBufferForeachMetaFunc func, + gpointer user_data);

    Description

    -Buffers are the basic unit of data transfer in GStreamer. The GstBuffer -type provides all the state necessary to define the regions of memory as -part of a stream. Region copies are also supported, allowing a smaller -region of a buffer to become its own buffer, with mechanisms in place to -ensure that neither memory space goes away prematurely. +Buffers are the basic unit of data transfer in GStreamer. They contain the +timing and offset along with other arbitrary metadata that is associated +with the GstMemory blocks that the buffer contains.

    Buffers are usually created with gst_buffer_new(). After a buffer has been -created one will typically allocate memory for it and set the size of the -buffer data. The following example creates a buffer that can hold a given -video frame with a given width, height and bits per plane. +created one will typically allocate memory for it and add it to the buffer. +The following example creates a buffer that can hold a given video frame +with a given width, height and bits per plane.

    -

    Example 3. Creating a buffer for a video frame

    -
    -  GstBuffer *buffer;
    -  gint size, width, height, bpp;
    -  ...
    -  size = width * height * bpp;
    -  buffer = gst_buffer_new ();
    -  GST_BUFFER_SIZE (buffer) = size;
    -  GST_BUFFER_MALLOCDATA (buffer) = g_malloc (size);
    -  GST_BUFFER_DATA (buffer) = GST_BUFFER_MALLOCDATA (buffer);
    -  ...
    -  
    +

    Example 3. Creating a buffer for a video frame

    +
    + + + + + + + +
    1
    +2
    +3
    +4
    +5
    +6
    +7
    +8
    +9
    GstBuffer *buffer;
    +GstMemory *memory;
    +gint size, width, height, bpp;
    +...
    +size = width * height * bpp;
    +buffer = gst_buffer_new ();
    +memory = gst_allocator_alloc (NULL, size, NULL);
    +gst_buffer_insert_memory (buffer, -1, memory);
    +...
    +
    +


    -Alternatively, use gst_buffer_new_and_alloc() +Alternatively, use gst_buffer_new_allocate() to create a buffer with preallocated data of a given size.

    -The data pointed to by the buffer can be retrieved with the GST_BUFFER_DATA() -macro. The size of the data can be found with GST_BUFFER_SIZE(). For buffers -of size 0, the data pointer is undefined (usually NULL) and should never be used. -

    -

    -If an element knows what pad you will push the buffer out on, it should use -gst_pad_alloc_buffer() instead to create a buffer. This allows downstream -elements to provide special buffers to write in, like hardware buffers. +Buffers can contain a list of GstMemory objects. You can retrieve how many +memory objects with gst_buffer_n_memory() and you can get a pointer +to memory with gst_buffer_peek_memory()

    -A buffer has a pointer to a GstCaps describing the media type of the data -in the buffer. Attach caps to the buffer with gst_buffer_set_caps(); this -is typically done before pushing out a buffer using gst_pad_push() so that -the downstream element knows the type of the buffer. -

    -

    -A buffer will usually have a timestamp, and a duration, but neither of these +A buffer will usually have timestamps, and a duration, but neither of these are guaranteed (they may be set to GST_CLOCK_TIME_NONE). Whenever a -meaningful value can be given for these, they should be set. The timestamp +meaningful value can be given for these, they should be set. The timestamps and duration are measured in nanoseconds (they are GstClockTime values).

    +The buffer DTS refers to the timestamp when the buffer should be decoded and +is usually monotonically increasing. The buffer PTS refers to the timestamp when +the buffer content should be presented to the user and is not always +monotonically increasing. +

    +

    A buffer can also have one or both of a start and an end offset. These are media-type specific. For video buffers, the start offset will generally be the frame number. For audio buffers, it will be the number of samples produced so far. For compressed data, it could be the byte offset in a source or destination file. Likewise, the end offset will be the offset of the end of the buffer. These can only be meaningfully interpreted if you -know the media type of the buffer (the GstCaps set on it). Either or both +know the media type of the buffer (the preceeding CAPS event). Either or both can be set to GST_BUFFER_OFFSET_NONE.

    gst_buffer_ref() is used to increase the refcount of a buffer. This must be done when you want to keep a handle to the buffer after pushing it to the -next element. +next element. The buffer refcount determines the writability of the buffer, a +buffer is only writable when the refcount is exactly 1, i.e. when the caller +has the only reference to the buffer.

    To efficiently create a smaller buffer out of an existing one, you can -use gst_buffer_copy_region(). +use gst_buffer_copy_region(). This method tries to share the memory objects +between the two buffers.

    If a plug-in wants to modify the buffer data or metadata in-place, it should @@ -249,8 +278,12 @@ Several flags of the buffer can be set and unset with the

    Buffers can be efficiently merged into a larger buffer with -gst_buffer_span(), which avoids memory copies when the gst_buffer_is_span_fast() -function returns TRUE. +gst_buffer_append(). Copying of memory will only be done when absolutely +needed. +

    +

    +Arbitrary extra metadata can be set on a buffer with gst_buffer_add_meta(). +Metadata can be retrieved with gst_buffer_get_meta(). See also GstMeta

    An element should either unref the buffer or push it out on a src pad @@ -258,11 +291,12 @@ using

    Buffers are usually freed by unreffing them with gst_buffer_unref(). When -the refcount drops to 0, any data pointed to by the buffer is unreffed as -well. +the refcount drops to 0, any memory and metadata pointed to by the buffer is +unreffed as well. Buffers allocated from a GstBufferPool will be returned to +the pool when the refcount drops to 0.

    -Last reviewed on March 30, 2011 (0.11.0) +Last reviewed on 2012-03-28 (0.11.3)

    @@ -275,7 +309,8 @@ Last reviewed on March 30, 2011 (0.11.0) GstBufferPool *pool; /* timestamp */ - GstClockTime timestamp; + GstClockTime pts; + GstClockTime dts; GstClockTime duration; /* media specific offset */ @@ -299,9 +334,16 @@ variables.
    pointer to the pool owner of the buffer

    GstClockTime timestamp;

    timestamp of the buffer, can be GST_CLOCK_TIME_NONE when the -timestamp is not known or relevant.

    GstClockTime pts;

    presentation timestamp of the buffer, can be GST_CLOCK_TIME_NONE when the +pts is not known or relevant. The pts contains the timestamp when the +media should be presented to the user.

    GstClockTime dts;

    decoding timestamp of the buffer, can be GST_CLOCK_TIME_NONE when the +dts is not known or relevant. The dts contains the timestamp when the +media should be processed.

    GstClockTime duration;

    guint64 offset;

    guint64 offset;

    a media specific offset for the buffer data. For video frames, this is the frame number of this buffer. For audio samples, this is the offset of the first sample in this buffer. @@ -317,7 +359,7 @@ For file data or compressed data this is the byte offset of the first byte in this buffer.

    guint64 offset_end;

    guint64 offset_end;

    the last offset contained in this buffer. It has the same format as offset.
    the buffer timestamp might have a discontinuity +the buffer timestamps might have a discontinuity and this buffer is a good point to resynchronize.
    the buffer contains header information that is - needed to decode the following data + needed to decode the following data. The buffer + is also part of the headers of the STREAM_CONFIG event.
    the buffer has been added as a field in a GstCaps. -

    GST_BUFFER_FLAG_LAST

    additional media specific flags can be added starting from this flag. @@ -429,55 +466,6 @@ A set of buffer flags used to describe properties of a -

    enum GstBufferCopyFlags

    -
    typedef enum {
    -  GST_BUFFER_COPY_NONE           = 0,
    -  GST_BUFFER_COPY_FLAGS          = (1 << 0),
    -  GST_BUFFER_COPY_TIMESTAMPS     = (1 << 1),
    -  GST_BUFFER_COPY_MEMORY         = (1 << 2),
    -  GST_BUFFER_COPY_MERGE          = (1 << 3)
    -} GstBufferCopyFlags;
    -
    -

    -A set of flags that can be provided to the gst_buffer_copy_into() -function to specify which items should be copied. -

    -
    -- - - - - - - - - - - - - - - - - - - - - - -

    GST_BUFFER_COPY_NONE

    copy nothing -

    GST_BUFFER_COPY_FLAGS

    flag indicating that buffer flags should be copied -

    GST_BUFFER_COPY_TIMESTAMPS

    flag indicating that buffer timestamp, duration, -offset and offset_end should be copied -

    GST_BUFFER_COPY_MEMORY

    flag indicating that buffer memory should be copied -and appended to already existing memory -

    GST_BUFFER_COPY_MERGE

    flag indicating that buffer memory should be -merged -
    - -
    -

    GST_BUFFER_FLAGS()

    #define GST_BUFFER_FLAGS(buf)                   GST_MINI_OBJECT_FLAGS(buf)
     
    @@ -560,59 +548,33 @@ Clears a buffer flag.

    -

    GST_META_TIMING_INFO

    -
    #define GST_META_TIMING_INFO (gst_meta_timing_get_info())
    -
    -
    -
    -
    -

    struct GstMetaTiming

    -
    struct GstMetaTiming {
    -  GstMeta        meta;        /* common meta header */
    -
    -  GstClockTime   dts;         /* decoding timestamp */
    -  GstClockTime   pts;         /* presentation timestamp */
    -  GstClockTime   duration;    /* duration of the data */
    -  GstClockTime   clock_rate;  /* clock rate for the above values */
    -};
    +

    GST_BUFFER_PTS()

    +
    #define GST_BUFFER_PTS(buf)                     (GST_BUFFER_CAST(buf)->pts)
     

    -Extra timing metadata +The presentation timestamp (pts) in nanoseconds (as a GstClockTime) +of the data in the buffer. This is the timestamp when the media should be +presented to the user. +Value will be GST_CLOCK_TIME_NONE if the pts is unknown.

    - - - - - - - - - - - - - - - - - - - - - - + + + +

    GstMeta meta;

    parent metadata

    GstClockTime dts;

    the decoding timestamp

    GstClockTime pts;

    the presentation timestamp

    GstClockTime duration;

    the duration

    GstClockTime clock_rate;

    the clock rate of the dts, pts and duration values

    buf :

    a GstBuffer.:

    -

    GST_BUFFER_TIMESTAMP()

    -
    #define GST_BUFFER_TIMESTAMP(buf)               (GST_BUFFER_CAST(buf)->timestamp)
    +

    GST_BUFFER_DTS()

    +
    #define GST_BUFFER_DTS(buf)                     (GST_BUFFER_CAST(buf)->dts)
     

    -The timestamp in nanoseconds (as a GstClockTime) of the data in the buffer. -Value will be GST_CLOCK_TIME_NONE if the timestamp is unknown. +The decoding timestamp (dts) in nanoseconds (as a GstClockTime) +of the data in the buffer. This is the timestamp when the media should be +decoded or processed otherwise. +Value will be GST_CLOCK_TIME_NONE if the dts is unknown.

    @@ -699,11 +661,28 @@ Tests if the duration is known.
    -

    GST_BUFFER_TIMESTAMP_IS_VALID()

    -
    #define GST_BUFFER_TIMESTAMP_IS_VALID(buffer)   (GST_CLOCK_TIME_IS_VALID (GST_BUFFER_TIMESTAMP (buffer)))
    +

    GST_BUFFER_PTS_IS_VALID()

    +
    #define GST_BUFFER_PTS_IS_VALID(buffer)   (GST_CLOCK_TIME_IS_VALID (GST_BUFFER_PTS (buffer)))
    +
    +

    +Tests if the pts is known. +

    +
    ++ + + + +

    buffer :

    a GstBuffer +
    +
    +
    +
    +

    GST_BUFFER_DTS_IS_VALID()

    +
    #define GST_BUFFER_DTS_IS_VALID(buffer)   (GST_CLOCK_TIME_IS_VALID (GST_BUFFER_DTS (buffer)))
     

    -Tests if the timestamp is known. +Tests if the dts is known.

    @@ -768,15 +747,6 @@ Tests if the buffer marks a discontinuity in the stream.
    -

    GST_BUFFER_TRACE_NAME

    -
    #define GST_BUFFER_TRACE_NAME           "GstBuffer"
    -
    -

    -The name used for tracing memory allocations. -

    -
    -
    -

    gst_buffer_new ()

    GstBuffer *         gst_buffer_new                      (void);

    @@ -796,28 +766,19 @@ MT safe.


    -

    gst_buffer_new_and_alloc()

    -
    #define gst_buffer_new_and_alloc(s)            gst_buffer_new_allocate(NULL, s, 0)
    -
    -
    -
    -

    gst_buffer_new_allocate ()

    -
    GstBuffer *         gst_buffer_new_allocate             (const GstAllocator *allocator,
    -                                                         gsize size,
    -                                                         gsize align);
    +
    GstBuffer *         gst_buffer_new_allocate             (GstAllocator *allocator,
    +                                                         gsize size,
    +                                                         GstAllocationParams *params);

    Tries to create a newly allocated buffer with data of the given size and -alignment from allocator. If the requested amount of memory can't be +extra parameters from allocator. If the requested amount of memory can't be allocated, NULL will be returned. The allocated buffer memory is not cleared.

    When allocator is NULL, the default memory allocator will be used.

    -Allocator buffer memory will be aligned to multiples of (align + 1) bytes. -

    -

    Note that when size == 0, the buffer will not have memory associated with it.

    @@ -828,15 +789,18 @@ MT safe.

    - + - - + + @@ -851,9 +815,10 @@ be allocated. [

    gst_buffer_new_wrapped ()

    GstBuffer *         gst_buffer_new_wrapped              (gpointer data,
    -                                                         gsize size);
    + gsize size);

    -Creates a new buffer that wraps the given data. +Creates a new buffer that wraps the given data. The memory will be freed +with g_free and will be marked writable.

    MT safe. @@ -881,38 +846,57 @@ MT safe.


    gst_buffer_new_wrapped_full ()

    -
    GstBuffer *         gst_buffer_new_wrapped_full         (gpointer data,
    -                                                         GFreeFunc free_func,
    -                                                         gsize offset,
    -                                                         gsize size);
    +
    GstBuffer *         gst_buffer_new_wrapped_full         (GstMemoryFlags flags,
    +                                                         gpointer data,
    +                                                         gsize maxsize,
    +                                                         gsize offset,
    +                                                         gsize size,
    +                                                         gpointer user_data,
    +                                                         GDestroyNotify notify);

    -Creates a new buffer that wraps the given data. Valid data is set -to start at offset and up to size. If no free_func is provided, -buffer memory is marked READONLY. +Allocate a new buffer that wraps the given memory. data must point to +maxsize of memory, the wrapped buffer will have the region from offset and +size visible.

    -MT safe. +When the buffer is destroyed, notify will be called with user_data. +

    +

    +The prefix/padding must be filled with 0 if flags contains +GST_MEMORY_FLAG_ZERO_PREFIXED and GST_MEMORY_FLAG_ZERO_PADDED respectively.

    allocator :

    the GstAllocator to usethe GstAllocator to use, or NULL to use the +default allocator. [transfer none][allow-none] +

    size :

    the size in bytes of the new buffer's data.

    align :

    the alignment of the buffer memory

    params :

    optional parameters. [transfer none][allow-none] +

    Returns :

    + + + + - - + - + - + + + + + + + + + @@ -959,8 +943,7 @@ of memcpy operations in a pipeline.
    void                gst_buffer_unref                    (GstBuffer *buf);

    Decreases the refcount of the buffer. If the refcount reaches 0, the buffer -will be freed. If GST_BUFFER_MALLOCDATA() is non-NULL, this pointer will -also be freed at this time. +with the associated metadata and memory will be freed.

    flags :

    GstMemoryFlags

    data :

    data to wrap

    free_func :

    function to free data +

    maxsize :

    allocated size of data

    offset :

    offset in data of valid dataoffset in data +

    size :

    size of valid data in data starting at offset -size of valid data

    user_data :

    user_data

    notify :

    called with user_data when the memory is freed

    Returns :

    @@ -973,46 +956,14 @@ also be freed at this time.
    -

    gst_buffer_get_sizes ()

    -
    gsize               gst_buffer_get_sizes                (GstBuffer *buffer,
    -                                                         gsize *offset,
    -                                                         gsize *maxsize);
    -

    -Get the total size of all memory blocks in buffer. -

    -

    -When not NULL, offset will contain the offset of the data in the first -memory block in buffer and maxsize will contain the sum of the size -and offset and the amount of extra padding on the last memory block. -offset and maxsize can be used to resize the buffer with -gst_buffer_resize(). -

    -
    -- - - - - - - - - - - - - - - - - - -

    buffer :

    a GstBuffer.

    offset :

    a pointer to the offset

    maxsize :

    a pointer to the maxsize

    Returns :

    the total size of the memory in buffer.
    +

    gst_buffer_get_sizes()

    +
    #define     gst_buffer_get_sizes(b,of,ms)  gst_buffer_get_sizes_range ((b), 0, -1, (of), (ms))
    +

    gst_buffer_get_size()

    -
    #define     gst_buffer_get_size(b)         gst_buffer_get_sizes ((b), NULL, NULL)
    +
    #define     gst_buffer_get_size(b)         gst_buffer_get_sizes_range ((b), 0, -1, NULL, NULL)
     

    Get the size of b. @@ -1027,35 +978,14 @@ Get the size of b.


    -

    gst_buffer_resize ()

    -
    void                gst_buffer_resize                   (GstBuffer *buffer,
    -                                                         gssize offset,
    -                                                         gsize size);
    -

    -Set the total size of the buffer -

    -
    -- - - - - - - - - - - - - - -

    buffer :

    a GstBuffer.

    offset :

    the offset adjustement

    size :

    the new size
    +

    gst_buffer_resize()

    +
    #define     gst_buffer_resize(b,of,s)      gst_buffer_resize_range ((b), 0, -1, (of), (s))
    +

    gst_buffer_set_size()

    -
    #define     gst_buffer_set_size(b,s)       gst_buffer_resize ((b), 0, (s))
    +
    #define     gst_buffer_set_size(b,s)       gst_buffer_resize_range ((b), 0, -1, 0, (s))
     

    Set the size of b to s. This will remove or trim the memory blocks @@ -1099,12 +1029,12 @@ Get the amount of memory blocks that this buffer has.


    -

    gst_buffer_take_memory ()

    -
    void                gst_buffer_take_memory              (GstBuffer *buffer,
    +

    gst_buffer_insert_memory ()

    +
    void                gst_buffer_insert_memory            (GstBuffer *buffer,
                                                              gint idx,
                                                              GstMemory *mem);

    -Add the memory block mem to buffer at idx. This function takes ownership +Insert the memory block mem to buffer at idx. This function takes ownership of mem and thus doesn't increase its refcount.

    @@ -1128,19 +1058,20 @@ of mem and thus doesn't increase its ref
    -

    gst_buffer_peek_memory ()

    -
    GstMemory *         gst_buffer_peek_memory              (GstBuffer *buffer,
    +

    gst_buffer_replace_memory_range ()

    +
    void                gst_buffer_replace_memory_range     (GstBuffer *buffer,
                                                              guint idx,
    -                                                         GstMapFlags flags);
    + gint length, + GstMemory *mem);
    +

    +Replaces length memory blocks in buffer starting at idx with mem. +

    -Get the memory block in buffer at idx for memory access in flags. -This function does not return a refcount to the memory block. The memory -block stays valid for as long as the caller has a valid reference to buffer. +If length is -1, all memory starting from idx will be removed and +replaced with mem.

    -buffer should be writable when flags contains GST_MAP_WRITE. If the memory -at idx is not writable, a new writable copy will be installed in buffer and -returned. +buffer should be writable.

    @@ -1154,35 +1085,51 @@ returned. - - + + - - + +
    an index

    flags :

    GstMapFlags

    length :

    a length should not be 0

    Returns :

    a GstMemory at idx.

    mem :

    a GstMemory. [transfer full] +

    -

    gst_buffer_remove_memory()

    -
    #define     gst_buffer_remove_memory(b,i)  gst_buffer_remove_memory_range ((b), (i), 1)
    -
    +

    gst_buffer_get_memory_range ()

    +
    GstMemory *         gst_buffer_get_memory_range         (GstBuffer *buffer,
    +                                                         guint idx,
    +                                                         gint length);

    -Remove the memory block in b at i. +Get length memory blocks in buffer starting at idx. The memory blocks will +be merged into one large GstMemory. +

    +

    +If length is -1, all memory starting from idx is merged.

    - + - + + + + + + + + +

    b :

    buffer :

    a GstBuffer.

    i :

    idx :

    an index

    length :

    a length

    Returns :

    a GstMemory that contains the merged data of length +blocks starting at idx. Use gst_memory_unref() after usage. [transfer full] +
    @@ -1191,9 +1138,9 @@ Remove the memory block in b at

    gst_buffer_remove_memory_range ()

    void                gst_buffer_remove_memory_range      (GstBuffer *buffer,
                                                              guint idx,
    -                                                         guint length);
    + gint length);

    -Remove len memory blocks in buffer starting from idx. +Remove length memory blocks in buffer starting from idx.

    length can be -1, in which case all memory starting from idx is removed. @@ -1218,143 +1165,143 @@ Remove len memory blocks in -

    gst_buffer_join ()

    -
    GstBuffer *         gst_buffer_join                     (GstBuffer *buf1,
    -                                                         GstBuffer *buf2);
    +

    gst_buffer_find_memory ()

    +
    gboolean            gst_buffer_find_memory              (GstBuffer *buffer,
    +                                                         gsize offset,
    +                                                         gsize size,
    +                                                         guint *idx,
    +                                                         guint *length,
    +                                                         gsize *skip);

    -Create a new buffer that is the concatenation of the two source -buffers, and unrefs the original source buffers. +Find the memory blocks that span size bytes starting from offset +in buffer.

    -If the buffers point to contiguous areas of memory, the buffer -is created without copying the data. +When this function returns TRUE, idx will contain the index of the first +memory bock where the byte for offset can be found and length contains the +number of memory blocks containing the size remaining bytes. skip contains +the number of bytes to skip in the memory bock at idx to get to the byte +for offset.

    -This is a convenience function for C programmers. See also -gst_buffer_merge(), which does the same thing without -unreffing the input parameters. Language bindings without -explicit reference counting should not wrap this function. +size can be -1 to get all the memory blocks after idx.

    - - + + - - + + - - + + + + + - -

    buf1 :

    the first source GstBuffer.

    buffer :

    a GstBuffer.

    buf2 :

    the second source GstBuffer.

    offset :

    an offset

    Returns :

    the new GstBuffer which is the concatenation of -the source buffers. [transfer full] +

    size :

    a size

    idx :

    pointer to index. [out]
    - -
    -
    -

    gst_buffer_merge ()

    -
    GstBuffer *         gst_buffer_merge                    (GstBuffer *buf1,
    -                                                         GstBuffer *buf2);
    -

    -Create a new buffer that is the concatenation of the two source -buffers. The original source buffers will not be modified or -unref'd. Make sure you unref the source buffers if they are not used -anymore afterwards. -

    -

    -If the buffers point to contiguous areas of memory, the buffer -is created without copying the data. -

    -

    -Free-function: gst_buffer_unref -

    -
    -- - - + - - + - +

    buf1 :

    the first source GstBuffer to merge. [transfer none] +

    length :

    pointer to length. [out]

    buf2 :

    the second source GstBuffer to merge. [transfer none] +

    skip :

    pointer to skip. [out]

    Returns :

    the new GstBuffer which is the concatenation -of the source buffers. [transfer full] - +TRUE when size bytes starting from offset could be found in +buffer and idx, length and skip will be filled.

    -

    gst_buffer_map ()

    -
    gpointer            gst_buffer_map                      (GstBuffer *buffer,
    -                                                         gsize *size,
    -                                                         gsize *maxsize,
    -                                                         GstMapFlags flags);
    -

    -This function return a pointer to the memory in buffer. flags describe the -desired access of the memory. When flags is GST_MAP_WRITE, buffer should -be writable (as returned from gst_buffer_is_writable()). -

    -

    -size and maxsize will contain the current valid number of bytes in the -returned memory area and the total maximum mount of bytes available in the -returned memory area respectively. -

    -

    -When buffer is writable but the memory isn't, a writable copy will -automatically be created and returned. The readonly copy of the buffer memory -will then also be replaced with this writable copy. -

    +

    gst_buffer_prepend_memory()

    +
    #define     gst_buffer_prepend_memory(b,m)     gst_buffer_insert_memory ((b), 0, (m))
    +
    +
    +
    +
    +

    gst_buffer_append_memory()

    +
    #define     gst_buffer_append_memory(b,m)      gst_buffer_insert_memory ((b), -1, (m))
    +
    +
    +
    +
    +

    gst_buffer_replace_memory()

    +
    #define     gst_buffer_replace_memory(b,i,m)   gst_buffer_replace_memory_range ((b), (i), 1, (m))
    +
    +
    +
    +
    +

    gst_buffer_replace_all_memory()

    +
    #define     gst_buffer_replace_all_memory(b,m) gst_buffer_replace_memory ((b), 0, -1, (m))
    +
    +
    +
    +
    +

    gst_buffer_get_memory()

    +
    #define     gst_buffer_get_memory(b,i)         gst_buffer_get_memory_range ((b), (i), 1)
    +
    +
    +
    +
    +

    gst_buffer_get_all_memory()

    +
    #define     gst_buffer_get_all_memory(b)       gst_buffer_get_memory_range ((b), 0, -1)
    +
    +
    +
    +
    +

    gst_buffer_remove_memory()

    +
    #define     gst_buffer_remove_memory(b,i)      gst_buffer_remove_memory_range ((b), (i), 1)
    +

    -When the buffer contains multiple memory blocks, the returned pointer will be -a concatenation of the memory blocks. +Remove the memory block in b at i.

    - + - - - - - - - - - - - - - - + +

    buffer :

    b :

    a GstBuffer.

    size :

    a location for the size

    maxsize :

    a location for the max size

    flags :

    flags for the mapping

    Returns :

    a pointer to the memory for the buffer.

    i :

    an index

    +

    gst_buffer_remove_all_memory()

    +
    #define     gst_buffer_remove_all_memory(b)    gst_buffer_remove_memory_range ((b), 0, -1)
    +
    +
    +
    +
    +

    gst_buffer_map()

    +
    #define     gst_buffer_map(b,i,f)          gst_buffer_map_range ((b), 0, -1, (i), (f))
    +
    +
    +
    +

    gst_buffer_unmap ()

    -
    gboolean            gst_buffer_unmap                    (GstBuffer *buffer,
    -                                                         gpointer data,
    -                                                         gsize size);
    +
    void                gst_buffer_unmap                    (GstBuffer *buffer,
    +                                                         GstMapInfo *info);

    -Release the memory previously mapped with gst_buffer_map(). +Release the memory previously mapped with gst_buffer_map().

    @@ -1364,20 +1311,10 @@ Release the memory previously mapped with GstBuffer. - - - - - - + - - - -

    data :

    the previously mapped data

    size :

    the size of data +

    info :

    a GstMapInfo

    Returns :

    -TRUE on success. FALSE can be returned when the new size is larger -than the maxsize of the memory.
    @@ -1385,9 +1322,9 @@ than the maxsize of the memory.
    ++ + + + + + + + + + + + + + + + + + + + + + + + + + +

    GST_BUFFER_COPY_NONE

    copy nothing +

    GST_BUFFER_COPY_FLAGS

    flag indicating that buffer flags should be copied +

    GST_BUFFER_COPY_TIMESTAMPS

    flag indicating that buffer pts, dts, +duration, offset and offset_end should be copied +

    GST_BUFFER_COPY_META

    flag indicating that buffer meta should be +copied +

    GST_BUFFER_COPY_MEMORY

    flag indicating that buffer memory should be copied +and appended to already existing memory +

    GST_BUFFER_COPY_MERGE

    flag indicating that buffer memory should be +merged +
    +
    +
    +
    +

    GST_BUFFER_COPY_METADATA

    +
    #define             GST_BUFFER_COPY_METADATA
    +

    Combination of all possible metadata fields that can be copied with gst_buffer_copy_into().

    @@ -1579,12 +1571,16 @@ copy of the data the source buffer contains.
    void                gst_buffer_copy_into                (GstBuffer *dest,
                                                              GstBuffer *src,
                                                              GstBufferCopyFlags flags,
    -                                                         gsize offset,
    -                                                         gsize size);
    + gsize offset, + gsize size);

    Copies the information from src into dest.

    +If dest already contains memory and flags contains GST_BUFFER_COPY_MEMORY, +the memory from src will be appended to dest. +

    +

    flags indicate which fields will be copied.

    @@ -1620,8 +1616,8 @@ Copies the information from src into

    gst_buffer_copy_region ()

    GstBuffer *         gst_buffer_copy_region              (GstBuffer *parent,
                                                              GstBufferCopyFlags flags,
    -                                                         gsize offset,
    -                                                         gsize size);
    + gsize offset, + gsize size);

    Creates a sub-buffer from parent at offset and size. This sub-buffer uses the actual memory space of the parent buffer. @@ -1714,8 +1710,9 @@ same as buf. [<


    -

    gst_buffer_replace()

    -
    #define             gst_buffer_replace(obuf,nbuf)
    +

    gst_buffer_replace ()

    +
    gboolean            gst_buffer_replace                  (GstBuffer **obuf,
    +                                                         GstBuffer *nbuf);

    Modifies a pointer to a GstBuffer to point to a different GstBuffer. The modification is done atomically (so this is useful for ensuring thread safety @@ -1740,87 +1737,39 @@ replaced. [obuf. [transfer none][allow-none] - -

    -
    -
    -
    -

    gst_buffer_is_span_fast ()

    -
    gboolean            gst_buffer_is_span_fast             (GstBuffer *buf1,
    -                                                         GstBuffer *buf2);
    -

    -Determines whether a gst_buffer_span() can be done without copying -the contents, that is, whether the data areas are contiguous sub-buffers of -the same buffer. -

    -

    -MT safe. -

    -
    -- - - - - - - - - - +

    buf1 :

    the first GstBuffer.

    buf2 :

    the second GstBuffer.

    Returns :

    TRUE if the buffers are contiguous, -FALSE if a copy would be required.TRUE when obuf was different from nbuf.

    -

    gst_buffer_span ()

    -
    GstBuffer *         gst_buffer_span                     (GstBuffer *buf1,
    -                                                         gsize offset,
    -                                                         GstBuffer *buf2,
    -                                                         gsize size);
    -

    -Creates a new buffer that consists of part of buf1 and buf2. -Logically, buf1 and buf2 are concatenated into a single larger -buffer, and a new buffer is created at the given offset inside -this space, with a given length. -

    -

    -If the two source buffers are children of the same larger buffer, -and are contiguous, the new buffer will be a child of the shared -parent, and thus no copying is necessary. you can use -gst_buffer_is_span_fast() to determine if a memcpy will be needed. -

    +

    gst_buffer_append ()

    +
    GstBuffer *         gst_buffer_append                   (GstBuffer *buf1,
    +                                                         GstBuffer *buf2);

    -MT safe. +Append all the memory from buf2 to buf1. The result buffer will contain a +concatenation of the memory of buf1 and buf2.

    - - - - - + - - - - - + - @@ -1830,14 +1779,11 @@ buffers, or NULL if the arguments are invalid. [

    gst_buffer_get_meta ()

    GstMeta *           gst_buffer_get_meta                 (GstBuffer *buffer,
    -                                                         const GstMetaInfo *info);
    + GType api);

    -Get the metadata for the api in info on buffer. When there is no such +Get the metadata for api on buffer. When there is no such metadata, NULL is returned.

    -

    -Note that the result metadata might not be of the implementation info. -

    buf1 :

    the first source GstBuffer to merge.

    offset :

    the offset in the first buffer from where the new -buffer should start.the first source GstBuffer to append. [transfer full] +

    buf2 :

    the second source GstBuffer to merge.

    size :

    the total size of the new buffer.the second source GstBuffer to append. [transfer full] +

    Returns :

    the new GstBuffer that spans the two source -buffers, or NULL if the arguments are invalid. [transfer full] +the new GstBuffer that contains the memory +of the two source buffers. [transfer full]
    @@ -1847,13 +1793,12 @@ Note that the result metadata might not be of the implementation info :

    -
    + + - +
    a GstMetaInfo -

    api :

    the GType of an API

    Returns :

    the metadata for the api in info on buffer.the metadata for api on buffer.
    @@ -1887,7 +1832,8 @@ Add metadata for info to Returns :

    -the metadata for the api in info on buffer. +the metadata for the api in info on buffer. [transfer none] +
    @@ -1955,25 +1901,89 @@ to -

    gst_buffer_add_meta_timing()

    -
    #define gst_buffer_add_meta_timing(b)  ((GstMetaTiming*)gst_buffer_add_meta((b),GST_META_TIMING_INFO,NULL))
    -
    -
    -
    -
    -

    gst_buffer_get_meta_timing()

    -
    #define gst_buffer_get_meta_timing(b)  ((GstMetaTiming*)gst_buffer_get_meta((b),GST_META_TIMING_INFO))
    -
    +

    GstBufferForeachMetaFunc ()

    +
    gboolean            (*GstBufferForeachMetaFunc)         (GstBuffer *buffer,
    +                                                         GstMeta **meta,
    +                                                         gpointer user_data);
    +

    +A function that will be called from gst_buffer_foreach_meta(). The meta +field will point to a the reference of the meta. +

    +

    +buffer should not be modified from this callback. +

    +

    +When this function returns TRUE, the next meta will be +returned. When FALSE is returned, gst_buffer_foreach_meta() will return. +

    +

    +When meta is set to NULL, the item will be removed from the buffer. +

    +
    ++ + + + + + + + + + + + + + + + + + +

    buffer :

    a GstBuffer +

    meta :

    a pointer to a GstMeta +

    user_data :

    user data passed to gst_buffer_foreach_meta() +

    Returns :

    +FALSE when gst_buffer_foreach_meta() should stop

    -

    gst_meta_timing_get_info ()

    -
    const GstMetaInfo * gst_meta_timing_get_info            (void);
    +

    gst_buffer_foreach_meta ()

    +
    void                gst_buffer_foreach_meta             (GstBuffer *buffer,
    +                                                         GstBufferForeachMetaFunc func,
    +                                                         gpointer user_data);
    +

    +Call func with user_data for each meta in buffer. +

    +

    +func can modify the passed meta pointer or its contents. The return value +of func define if this function returns or if the remaining metadata items +in the buffer should be skipped. +

    +
    ++ + + + + + + + + + + + + + +

    buffer :

    a GstBuffer +

    func :

    a GstBufferForeachMetaFunc to call. [scope call] +

    user_data :

    user data passed to func. [closure] +

    Details

    @@ -111,8 +119,8 @@ after usage. [ -

    gst_buffer_list_sized_new ()

    -
    GstBufferList *     gst_buffer_list_sized_new           (guint size);
    +

    gst_buffer_list_new_sized ()

    +
    GstBufferList *     gst_buffer_list_new_sized           (guint size);

    Creates a new, empty GstBufferList. The caller is responsible for unreffing the returned GstBufferList. The list will have size space preallocated so @@ -140,8 +148,8 @@ after usage. [ -

    gst_buffer_list_len ()

    -
    guint               gst_buffer_list_len                 (GstBufferList *list);
    +

    gst_buffer_list_length ()

    +
    guint               gst_buffer_list_length              (GstBufferList *list);

    Returns the number of buffers in list.

    @@ -206,6 +214,28 @@ A -1 value for idx will append the buffe
    void                gst_buffer_list_remove              (GstBufferList *list,
                                                              guint idx,
                                                              guint length);
    +

    +Remove length buffers starting from idx in list. The following buffers are +moved to close the gap. +

    +
    ++ + + + + + + + + + + + + + +

    list :

    a GstBufferList +

    idx :

    the index

    length :

    the amount to remove

    @@ -384,8 +414,8 @@ Call func with

    func can modify the passed buffer pointer or its contents. The return value -of func define if this function returns or if the remaining buffers in a -group should be skipped. +of func define if this function returns or if the remaining buffers in +the list should be skipped.

    diff --git a/docs/gst/html/gstreamer-GstBufferPool.html b/docs/gst/html/gstreamer-GstBufferPool.html index 8ca07d7..cc82cc7 100644 --- a/docs/gst/html/gstreamer-GstBufferPool.html +++ b/docs/gst/html/gstreamer-GstBufferPool.html @@ -3,8 +3,8 @@ GstBufferPool - - + + @@ -17,7 +17,7 @@ - + +buffers from the configured memory allocator and with the configured +parameters. All metadata that is present on the allocated buffer will +be marked as GST_META_FLAG_POOLED and will not be removed from the +buffer in reset_buffer. +The default implementation will clear the flags, timestamps and +will remove the metadata without the GST_META_FLAG_POOLED flag. @@ -191,53 +249,6 @@ blocking acquire_buffer calls.
    -

    enum GstBufferPoolFlags

    -
    typedef enum {
    -  GST_BUFFER_POOL_FLAG_NONE     = 0,
    -  GST_BUFFER_POOL_FLAG_KEY_UNIT = (1 << 0),
    -  GST_BUFFER_POOL_FLAG_DONTWAIT = (1 << 1),
    -  GST_BUFFER_POOL_FLAG_DISCONT  = (1 << 2),
    -  GST_BUFFER_POOL_FLAG_LAST     = (1 << 16),
    -} GstBufferPoolFlags;
    -
    -

    -Additional flags to control the allocation of a buffer -

    -
    Prev Up HomeGStreamer 0.11 Core Reference ManualGStreamer 1.0 Core Reference Manual Next
    @@ -42,31 +42,33 @@ GstBufferPool; struct GstBufferPoolClass; -enum GstBufferPoolFlags; #define GST_BUFFER_POOL_IS_FLUSHING (pool) - GstBufferPoolParams; GstBufferPool * gst_buffer_pool_new (void); -gboolean gst_buffer_pool_config_get (GstStructure *config, - const GstCaps **caps, +gboolean gst_buffer_pool_config_get_params (GstStructure *config, + GstCaps **caps, guint *size, guint *min_buffers, - guint *max_buffers, - guint *prefix, - guint *align); -void gst_buffer_pool_config_set (GstStructure *config, - const GstCaps *caps, + guint *max_buffers); +void gst_buffer_pool_config_set_params (GstStructure *config, + GstCaps *caps, guint size, guint min_buffers, - guint max_buffers, - guint prefix, - guint align); + guint max_buffers); +gboolean gst_buffer_pool_config_get_allocator + (GstStructure *config, + GstAllocator **allocator, + GstAllocationParams *params); +void gst_buffer_pool_config_set_allocator + (GstStructure *config, + GstAllocator *allocator, + const GstAllocationParams *params); +guint gst_buffer_pool_config_n_options (GstStructure *config); void gst_buffer_pool_config_add_option (GstStructure *config, const gchar *option); const gchar * gst_buffer_pool_config_get_option (GstStructure *config, guint index); gboolean gst_buffer_pool_config_has_option (GstStructure *config, const gchar *option); -guint gst_buffer_pool_config_n_options (GstStructure *config); const gchar ** gst_buffer_pool_get_options (GstBufferPool *pool); gboolean gst_buffer_pool_has_option (GstBufferPool *pool, const gchar *option); @@ -76,15 +78,68 @@ const gboolean gst_buffer_pool_set_active (GstBufferPool *pool, gboolean active); gboolean gst_buffer_pool_is_active (GstBufferPool *pool); +enum GstBufferPoolAcquireFlags; + GstBufferPoolAcquireParams; GstFlowReturn gst_buffer_pool_acquire_buffer (GstBufferPool *pool, GstBuffer **buffer, - GstBufferPoolParams *params); + GstBufferPoolAcquireParams *params); void gst_buffer_pool_release_buffer (GstBufferPool *pool, GstBuffer *buffer);

    Description

    +

    +a GstBufferPool is an object that can be used to pre-allocate and recycle +buffers of the same size and with the same properties. +

    +

    +A GstBufferPool is created with gst_buffer_pool_new(). +

    +

    +After the buffer is created, it needs to be configured. +gst_buffer_pool_get_config() get the current configuration structure from the +pool. With gst_buffer_pool_config_set_params() and +gst_buffer_pool_config_set_allocator() the bufferpool parameters and allocator +can be configured. Other properties can be configured in the pool depending +on the pool implementation. +

    +

    +A bufferpool can have extra options that can be enabled with +gst_buffer_pool_config_add_option(). The available options can be retrieved +with gst_buffer_pool_get_options(). Some options allow for additional +configuration properties to be set. +

    +

    +After the configuration structure has been configured, +gst_buffer_pool_set_config() updates the configuration in the pool. This can +fail when the configuration structure is not accepted. +

    +

    +After the a pool has been configured, it can be activated with +gst_buffer_pool_set_active(). This will preallocate the configured resources +in the pool. +

    +

    +When the pool is active, gst_buffer_pool_acquire_buffer() can be used to +retrieve a buffer from the pool. +

    +

    +Buffer allocated from a bufferpool will automatically be returned to the pool +with gst_buffer_pool_release_buffer() when their refcount drops to 0. +

    +

    +The bufferpool can be deactivated again with gst_buffer_pool_set_active(). +All further gst_buffer_pool_acquire_buffer() calls will return an error. When +all buffers are returned to the pool they will be freed. +

    +

    +Use gst_object_unref() to release the reference to a bufferpool. If the +refcount of the pool reaches 0, the pool will be freed. +

    +

    +Last reviewed on 2012-03-28 (0.11.3) +

    Details

    @@ -120,11 +175,11 @@ variables. gboolean (*stop) (GstBufferPool *pool); GstFlowReturn (*acquire_buffer) (GstBufferPool *pool, GstBuffer **buffer, - GstBufferPoolParams *params); + GstBufferPoolAcquireParams *params); GstFlowReturn (*alloc_buffer) (GstBufferPool *pool, GstBuffer **buffer, - GstBufferPoolParams *params); + GstBufferPoolAcquireParams *params); void (*reset_buffer) (GstBufferPool *pool, GstBuffer *buffer, - GstBufferPoolParams *params); + GstBufferPoolAcquireParams *params); void (*release_buffer) (GstBufferPool *pool, GstBuffer *buffer); void (*free_buffer) (GstBufferPool *pool, GstBuffer *buffer); }; @@ -168,13 +223,16 @@ be released when there are no buffers available.

    alloc_buffer ()

    allocate a buffer. the default implementation allocates -buffers from the default memory allocator and with the configured -size, prefix and alignment.

    reset_buffer ()

    reset the buffer to its state when it was freshly allocated. -The default implementation will clear the flags and timestamps.

    release_buffer ()

    -- - - - - - - - - - - - - - - - - - - - - - -

    GST_BUFFER_POOL_FLAG_NONE

    no flags -

    GST_BUFFER_POOL_FLAG_KEY_UNIT

    buffer is keyframe -

    GST_BUFFER_POOL_FLAG_DONTWAIT

    don't wait for buffer. This makes the -acquire_buffer method return GST_FLOW_UNEXPECTED. -

    GST_BUFFER_POOL_FLAG_DISCONT

    buffer is discont -

    GST_BUFFER_POOL_FLAG_LAST

    last flag, subclasses can use private flags - starting from this value. -
    -
    -
    -

    GST_BUFFER_POOL_IS_FLUSHING()

    #define GST_BUFFER_POOL_IS_FLUSHING(pool)  (g_atomic_int_get (&pool->flushing))
     
    @@ -255,48 +266,6 @@ state of the pool in the acquire function.

    -

    GstBufferPoolParams

    -
    typedef struct {
    -  GstFormat          format;
    -  gint64             start;
    -  gint64             stop;
    -  GstBufferPoolFlags flags;
    -} GstBufferPoolParams;
    -
    -

    -Parameters passed to the gst_buffer_pool_acquire_buffer() function to control the -allocation of the buffer. -

    -

    -The default implementation ignores the start and stop members but other -implementations can use this extra information to decide what buffer to -return. -

    -
    -- - - - - - - - - - - - - - - - - - -

    GstFormat format;

    the format of start and stop -

    gint64 start;

    the start position

    gint64 stop;

    the stop position

    GstBufferPoolFlags flags;

    additional flags
    -
    -
    -

    gst_buffer_pool_new ()

    GstBufferPool *     gst_buffer_pool_new                 (void);

    @@ -306,20 +275,19 @@ Creates a new

    Returns :

    -a new GstBufferPool instance +a new GstBufferPool instance. [transfer full] +

    -

    gst_buffer_pool_config_get ()

    -
    gboolean            gst_buffer_pool_config_get          (GstStructure *config,
    -                                                         const GstCaps **caps,
    +

    gst_buffer_pool_config_get_params ()

    +
    gboolean            gst_buffer_pool_config_get_params   (GstStructure *config,
    +                                                         GstCaps **caps,
                                                              guint *size,
                                                              guint *min_buffers,
    -                                                         guint *max_buffers,
    -                                                         guint *prefix,
    -                                                         guint *align);
    + guint *max_buffers);

    Get the configuration values from config.

    @@ -328,45 +296,45 @@ Get the configuration values from config

    config :

    -a GstBufferPool configuration +a GstBufferPool configuration. [transfer none] +

    caps :

    -the caps of buffers +the caps of buffers. [out][transfer none][allow-none] +

    size :

    -the size of each buffer, not including prefix +the size of each buffer, not including prefix and padding. [out][allow-none] +

    min_buffers :

    -the minimum amount of buffers to allocate. +the minimum amount of buffers to allocate. [out][allow-none] +

    max_buffers :

    -the maximum amount of buffers to allocate or 0 for unlimited. - - -

    prefix :

    -prefix each buffer with this many bytes +the maximum amount of buffers to allocate or 0 for unlimited. [out][allow-none] + -

    align :

    -alignment of the buffer data. +

    Returns :

    + +TRUE if all parameters could be fetched.

    -

    gst_buffer_pool_config_set ()

    -
    void                gst_buffer_pool_config_set          (GstStructure *config,
    -                                                         const GstCaps *caps,
    +

    gst_buffer_pool_config_set_params ()

    +
    void                gst_buffer_pool_config_set_params   (GstStructure *config,
    +                                                         GstCaps *caps,
                                                              guint size,
                                                              guint min_buffers,
    -                                                         guint max_buffers,
    -                                                         guint prefix,
    -                                                         guint align);
    + guint max_buffers);

    Configure config with the given parameters.

    @@ -383,7 +351,7 @@ Configure config with the given paramete

    size :

    -the size of each buffer, not including prefix +the size of each buffer, not including prefix and padding

    min_buffers :

    @@ -393,13 +361,99 @@ Configure config with the given paramete

    max_buffers :

    the maximum amount of buffers to allocate or 0 for unlimited. + +
    + +
    +
    +

    gst_buffer_pool_config_get_allocator ()

    +
    gboolean            gst_buffer_pool_config_get_allocator
    +                                                        (GstStructure *config,
    +                                                         GstAllocator **allocator,
    +                                                         GstAllocationParams *params);
    +

    +Get the allocator and params from config. +

    +
    ++ + + + + + + + + + + + + + +

    config :

    a GstBufferPool configuration. [transfer none] +

    allocator :

    a GstAllocator. [transfer none] +

    params :

    GstAllocationParams
    +
    +
    +
    +

    gst_buffer_pool_config_set_allocator ()

    +
    void                gst_buffer_pool_config_set_allocator
    +                                                        (GstStructure *config,
    +                                                         GstAllocator *allocator,
    +                                                         const GstAllocationParams *params);
    +

    +Set the allocator and params on config. +

    +

    +One of allocator and params can be NULL, but not both. When allocator +is NULL, the default allocator of the pool will use the values in param +to perform its allocation. When param is NULL, the pool will use the +provided allocator with its default GstAllocationParams. +

    +

    +A call to gst_buffer_pool_set_config() can update the allocator and params +with the values that it is able to do. Some pools are, for example, not able +to operate with different allocators or cannot allocate with the values +specified in params. Use gst_buffer_pool_get_config() to get the currently +used values. +

    +
    ++ + + + + + + + + + + + + + +

    config :

    a GstBufferPool configuration

    allocator :

    a GstAllocator +

    params :

    GstAllocationParams
    +
    +
    +
    +

    gst_buffer_pool_config_n_options ()

    +
    guint               gst_buffer_pool_config_n_options    (GstStructure *config);
    +

    +Retrieve the number of values currently stored in the +options array of the config structure. +

    +
    ++ - - + + - - + +

    prefix :

    prefix each buffer with this many bytes

    config :

    a GstBufferPool configuration

    align :

    alignment of the buffer data.

    Returns :

    the options array size as a guint.
    @@ -485,28 +539,6 @@ Check if config contains -

    gst_buffer_pool_config_n_options ()

    -
    guint               gst_buffer_pool_config_n_options    (GstStructure *config);
    -

    -Retrieve the number of values currently stored in the -options array of the config structure. -

    -
    -- - - - - - - - - - -

    config :

    a GstBufferPool configuration

    Returns :

    the options array size as a guint.
    -
    -
    -

    gst_buffer_pool_get_options ()

    const gchar **      gst_buffer_pool_get_options         (GstBufferPool *pool);

    @@ -524,7 +556,8 @@ Get a NULL terminated array of string with supported bufferpool options for

    Returns :

    -a NULL terminated array of strings. +a NULL terminated array of strings. [array zero-terminated=1][transfer none] +
    @@ -576,7 +609,8 @@ or it must be freed after usage.

    Returns :

    a copy of the current configuration of pool. use -gst_structure_free() after usage or gst_buffer_pool_set_config(). +gst_structure_free() after usage or gst_buffer_pool_set_config(). [transfer full] + @@ -594,7 +628,7 @@ nothing and return FALSE.

    config is a GstStructure that contains the configuration parameters for the pool. A default and mandatory set of parameters can be configured with -gst_buffer_pool_config_set(). This function takes ownership of config. +gst_buffer_pool_config_set(). This function takes ownership of config.

    @@ -606,7 +640,7 @@ the pool. A default and mandatory set of parameters can be configured with - @@ -623,7 +657,7 @@ the pool. A default and mandatory set of parameters can be configured with gboolean active);

    Control the active state of pool. When the pool is active, new calls to -gst_buffer_pool_acquire_buffer() will return with GST_FLOW_WRONG_STATE. +gst_buffer_pool_acquire_buffer() will return with GST_FLOW_FLUSHING.

    Activating the bufferpool will preallocate all resources in the pool based on @@ -681,10 +715,99 @@ Check if pool is active. A pool can be a


    +

    enum GstBufferPoolAcquireFlags

    +
    typedef enum {
    +  GST_BUFFER_POOL_ACQUIRE_FLAG_NONE     = 0,
    +  GST_BUFFER_POOL_ACQUIRE_FLAG_KEY_UNIT = (1 << 0),
    +  GST_BUFFER_POOL_ACQUIRE_FLAG_DONTWAIT = (1 << 1),
    +  GST_BUFFER_POOL_ACQUIRE_FLAG_DISCONT  = (1 << 2),
    +  GST_BUFFER_POOL_ACQUIRE_FLAG_LAST     = (1 << 16),
    +} GstBufferPoolAcquireFlags;
    +
    +

    +Additional flags to control the allocation of a buffer +

    +

    config :

    a GstStructure +a GstStructure. [transfer full]
    ++ + + + + + + + + + + + + + + + + + + + + + +

    GST_BUFFER_POOL_ACQUIRE_FLAG_NONE

    no flags +

    GST_BUFFER_POOL_ACQUIRE_FLAG_KEY_UNIT

    buffer is keyframe +

    GST_BUFFER_POOL_ACQUIRE_FLAG_DONTWAIT

    don't wait for buffer. This makes the +acquire_buffer method return GST_FLOW_EOS. +

    GST_BUFFER_POOL_ACQUIRE_FLAG_DISCONT

    buffer is discont +

    GST_BUFFER_POOL_ACQUIRE_FLAG_LAST

    last flag, subclasses can use private flags + starting from this value. +
    + +
    +
    +

    GstBufferPoolAcquireParams

    +
    typedef struct {
    +  GstFormat                 format;
    +  gint64                    start;
    +  gint64                    stop;
    +  GstBufferPoolAcquireFlags flags;
    +} GstBufferPoolAcquireParams;
    +
    +

    +Parameters passed to the gst_buffer_pool_acquire_buffer() function to control the +allocation of the buffer. +

    +

    +The default implementation ignores the start and stop members but other +implementations can use this extra information to decide what buffer to +return. +

    +
    ++ + + + + + + + + + + + + + + + + + +

    GstFormat format;

    the format of start and stop +

    gint64 start;

    the start position

    gint64 stop;

    the stop position

    GstBufferPoolAcquireFlags flags;

    additional flags
    +
    +
    +

    gst_buffer_pool_acquire_buffer ()

    GstFlowReturn       gst_buffer_pool_acquire_buffer      (GstBufferPool *pool,
                                                              GstBuffer **buffer,
    -                                                         GstBufferPoolParams *params);
    + GstBufferPoolAcquireParams *params);

    Acquire a buffer from pool. buffer should point to a memory location that can hold a pointer to the new buffer. @@ -702,16 +825,16 @@ can hold a pointer to the new buffer.

    buffer :

    -a location for a GstBuffer +a location for a GstBuffer. [out]

    params :

    -parameters. +(transfer none) (allow-none) parameters.

    Returns :

    -a GstFlowReturn such as GST_FLOW_WRONG_STATE when the pool is +a GstFlowReturn such as GST_FLOW_FLUSHING when the pool is inactive. @@ -740,7 +863,7 @@ disappears.

    buffer :

    -a GstBuffer +a GstBuffer. [transfer full] diff --git a/docs/gst/html/gstreamer-GstCaps.html b/docs/gst/html/gstreamer-GstCaps.html index 18a3f14..6c790f5 100644 --- a/docs/gst/html/gstreamer-GstCaps.html +++ b/docs/gst/html/gstreamer-GstCaps.html @@ -3,11 +3,11 @@ GstCaps - - + + - + @@ -17,8 +17,8 @@ Prev Up Home -GStreamer 0.11 Core Reference Manual -Next +GStreamer 1.0 Core Reference Manual +Next Top @@ -60,6 +60,7 @@ enum GST_CAPS_FLAG_UNSET (caps, flag) GstCaps * gst_caps_new_empty (void); +GstCaps * gst_caps_new_empty_simple (const char *media_type); GstCaps * gst_caps_new_any (void); GstCaps * gst_caps_new_simple (const char *media_type, const char *fieldname, @@ -76,7 +77,7 @@ enum void gst_static_caps_cleanup (GstStaticCaps *static_caps); void gst_caps_append (GstCaps *caps1, GstCaps *caps2); -void gst_caps_merge (GstCaps *caps1, +GstCaps * gst_caps_merge (GstCaps *caps1, GstCaps *caps2); void gst_caps_append_structure (GstCaps *caps, GstStructure *structure); @@ -84,7 +85,7 @@ enum guint idx
    ); GstStructure * gst_caps_steal_structure (GstCaps *caps, guint index); -void gst_caps_merge_structure (GstCaps *caps, +GstCaps * gst_caps_merge_structure (GstCaps *caps, GstStructure *structure); guint gst_caps_get_size (const GstCaps *caps); GstStructure * gst_caps_get_structure (const GstCaps *caps, @@ -105,6 +106,8 @@ enum const GstCaps *caps2
    ); gboolean gst_caps_is_equal_fixed (const GstCaps *caps1, const GstCaps *caps2); +gboolean gst_caps_is_strictly_equal (const GstCaps *caps1, + const GstCaps *caps2); gboolean gst_caps_is_always_compatible (const GstCaps *caps1, const GstCaps *caps2); gboolean gst_caps_is_subset (const GstCaps *subset, @@ -113,32 +116,32 @@ enum const GstStructure *structure
    ); gboolean gst_caps_can_intersect (const GstCaps *caps1, const GstCaps *caps2); -GstCaps * gst_caps_intersect (const GstCaps *caps1, - const GstCaps *caps2); -GstCaps * gst_caps_intersect_full (const GstCaps *caps1, - const GstCaps *caps2, +GstCaps * gst_caps_intersect (GstCaps *caps1, + GstCaps *caps2); +GstCaps * gst_caps_intersect_full (GstCaps *caps1, + GstCaps *caps2, GstCapsIntersectMode mode); -GstCaps * gst_caps_union (const GstCaps *caps1, - const GstCaps *caps2); -GstCaps * gst_caps_normalize (const GstCaps *caps); -gboolean gst_caps_do_simplify (GstCaps *caps); -#define gst_caps_replace (ocaps, - ncaps) +GstCaps * gst_caps_normalize (GstCaps *caps); +GstCaps * gst_caps_simplify (GstCaps *caps); +gboolean gst_caps_replace (GstCaps **old_caps, + GstCaps *new_caps); +gboolean gst_caps_take (GstCaps **old_caps, + GstCaps *new_caps); gchar * gst_caps_to_string (const GstCaps *caps); GstCaps * gst_caps_from_string (const gchar *string); -GstCaps * gst_caps_subtract (const GstCaps *minuend, - const GstCaps *subtrahend); +GstCaps * gst_caps_subtract (GstCaps *minuend, + GstCaps *subtrahend); #define gst_caps_make_writable (caps) +GstCaps * gst_caps_truncate (GstCaps *caps); +GstCaps * gst_caps_fixate (GstCaps *caps); GstCaps * gst_caps_ref (GstCaps *caps); -void gst_caps_truncate (GstCaps *caps); -void gst_caps_fixate (GstCaps *caps); void gst_caps_unref (GstCaps *caps);

    Description

    -Caps (capabilities) are lighweight refcounted objects describing media types. +Caps (capabilities) are lightweight refcounted objects describing media types. They are composed of an array of GstStructure.

    @@ -147,46 +150,56 @@ given pad can handle. They are also stored in the GstElement.

    -Caps are exposed on the element pads using the gst_pad_get_caps() pad +Caps are exposed on the element pads using the gst_pad_get_caps() pad function. This function describes the possible types that the pad can handle or produce at runtime.

    -Caps are also attached to buffers to describe to content of the data -pointed to by the buffer with gst_buffer_set_caps(). Caps attached to -a GstBuffer allow for format negotiation upstream and downstream. -

    -

    A GstCaps can be constructed with the following code fragment:

    -

    Example 4. Creating caps

    -
    - GstCaps *caps;
    - caps = gst_caps_new_simple ("video/x-raw",
    -      "format", G_TYPE_STRING, "I420"),
    -      "framerate", GST_TYPE_FRACTION, 25, 1,
    -      "pixel-aspect-ratio", GST_TYPE_FRACTION, 1, 1,
    -      "width", G_TYPE_INT, 320,
    -      "height", G_TYPE_INT, 240,
    -      NULL);
    - 
    +

    Example 4. Creating caps

    +
    + + + + + + + +
    1
    +2
    +3
    +4
    +5
    +6
    +7
    +8
    GstCaps *caps;
    +caps = gst_caps_new_simple ("video/x-raw",
    +     "format", G_TYPE_STRING, "I420",
    +     "framerate", GST_TYPE_FRACTION, 25, 1,
    +     "pixel-aspect-ratio", GST_TYPE_FRACTION, 1, 1,
    +     "width", G_TYPE_INT, 320,
    +     "height", G_TYPE_INT, 240,
    +     NULL);
    +
    +


    A GstCaps is fixed when it has no properties with ranges or lists. Use -gst_caps_is_fixed() to test for fixed caps. Only fixed caps can be -set on a GstPad or GstBuffer. +gst_caps_is_fixed() to test for fixed caps. Fixed caps can be used in a +caps event to notify downstream elements of the current media type.

    Various methods exist to work with the media types such as subtracting or intersecting.

    -Last reviewed on 2007-02-13 (0.10.10) +Last reviewed on 2011-03-28 (0.11.3)

    @@ -212,7 +225,7 @@ Object describing media types.

    struct GstStaticCaps

    struct GstStaticCaps {
    -  GstCaps caps;
    +  GstCaps *caps;
       const char *string;
     };
     
    @@ -225,7 +238,7 @@ instantiate a -

    GstCaps caps;

    +

    GstCaps *caps;

    the cached GstCaps @@ -251,13 +264,25 @@ Modes of caps intersection GST_CAPS_INTERSECT_ZIG_ZAG tries to preserve overall order of both caps by iterating on the caps' structures as the following matrix shows:

    -
    -         caps1
    -      +-------------
    -      | 1  2  4  7
    -caps2 | 3  5  8 10
    -      | 6  9 11 12
    -
    +
    + + + + + + + +
    1
    +2
    +3
    +4
    +5
    caps1
    +      +-------------
    +      | 1  2  4  7
    +caps2 | 3  5  8 10
    +      | 6  9 11 12
    +
    +

    Used when there is no explicit precedence of one caps over the other. e.g. tee's sink pad getcaps function, it will probe its src pad peers' for their @@ -290,7 +315,7 @@ would be [A, B], maintaining the first caps priority on the intersection.

    enum GstCapsFlags

    typedef enum {
    -  GST_CAPS_FLAGS_ANY = (GST_MINI_OBJECT_FLAG_LAST << 0)
    +  GST_CAPS_FLAG_ANY = (GST_MINI_OBJECT_FLAG_LAST << 0)
     } GstCapsFlags;
     

    @@ -299,7 +324,7 @@ Extra flags for a caps.

    - + @@ -309,21 +334,23 @@ Extra flags for a caps.

    GST_CAPS_ANY

    -
    #define GST_CAPS_ANY              gst_caps_new_any()
    +
    #define GST_CAPS_ANY              _gst_caps_any
     

    Means that the element/pad can output 'anything'. Useful for elements -that output unknown media, such as filesrc. +that output unknown media, such as filesrc. This macro returns a singleton and +should not be unreffed.


    GST_CAPS_NONE

    -
    #define GST_CAPS_NONE             gst_caps_new_empty()
    +
    #define GST_CAPS_NONE             _gst_caps_none
     

    The opposite of GST_CAPS_ANY: it means that the pad/element outputs an -undefined media type that can not be detected. +undefined media type that can not be detected. This macro returns a singleton +and should not be unreffed.


    @@ -502,6 +529,7 @@ Clears a caps flag.

    Creates a new GstCaps that is empty. That is, the returned GstCaps contains no media formats. +The GstCaps is guaranteed to be writable. Caller is responsible for unreffing the returned caps.

    GST_CAPS_FLAGS_ANY

    GST_CAPS_FLAG_ANY

    Caps has no specific content, but can contain anything.
    @@ -515,6 +543,30 @@ Caller is responsible for unreffing the returned caps.
    +

    gst_caps_new_empty_simple ()

    +
    GstCaps *           gst_caps_new_empty_simple           (const char *media_type);
    +

    +Creates a new GstCaps that contains one GstStructure with name +media_type. +Caller is responsible for unreffing the returned caps. +

    +
    ++ + + + + + + + + + +

    media_type :

    the media type of the structure

    Returns :

    the new GstCaps. [transfer full] +
    +
    +
    +

    gst_caps_new_any ()

    GstCaps *           gst_caps_new_any                    (void);

    @@ -729,13 +781,13 @@ use

    gst_static_caps_cleanup ()

    void                gst_static_caps_cleanup             (GstStaticCaps *static_caps);

    -Clean up the caps contained in static_caps when the refcount is 0. +Clean up the cached caps contained in static_caps.

    - +

    static_caps :

    the GstStaticCaps to convertthe GstStaticCaps to clean
    @@ -767,12 +819,12 @@ freed. If either caps is ANY, the resulting caps will be ANY.

    gst_caps_merge ()

    -
    void                gst_caps_merge                      (GstCaps *caps1,
    +
    GstCaps *           gst_caps_merge                      (GstCaps *caps1,
                                                              GstCaps *caps2);

    Appends the structures contained in caps2 to caps1 if they are not yet expressed by caps1. The structures in caps2 are not copied -- they are -transferred to caps1, and then caps2 is freed. +transferred to a writable copy of caps1, and then caps2 is freed. If either caps is ANY, the resulting caps will be ANY.

    @@ -780,13 +832,19 @@ If either caps is ANY, the resulting caps will be ANY. - + + + + +

    caps1 :

    the GstCaps that will take the new entriesthe GstCaps that will take the new entries. [transfer full] +

    caps2 :

    the GstCaps to merge in. [transfer full]

    Returns :

    the merged caps. [transfer full] +

    Since 0.10.10

    @@ -844,7 +902,7 @@ contained in caps.
    GstStructure *      gst_caps_steal_structure            (GstCaps *caps,
                                                              guint index);

    -Retrieves the stucture with the given index from the list of structures +Retrieves the structure with the given index from the list of structures contained in caps. The caller becomes the owner of the returned structure.

    @@ -871,24 +929,29 @@ to index. [

    gst_caps_merge_structure ()

    -
    void                gst_caps_merge_structure            (GstCaps *caps,
    +
    GstCaps *           gst_caps_merge_structure            (GstCaps *caps,
                                                              GstStructure *structure);

    -Appends structure to caps if its not already expressed by caps. The -structure is not copied; caps becomes the owner of structure. +Appends structure to caps if its not already expressed by caps.

    - + + + + +

    caps :

    the GstCaps that will the new structurethe GstCaps to merge into. [transfer full] +

    structure :

    the GstStructure to merge. [transfer full]

    Returns :

    the merged caps. [transfer full] +
    @@ -1188,6 +1251,38 @@ Tests if two +

    gst_caps_is_strictly_equal ()

    +
    gboolean            gst_caps_is_strictly_equal          (const GstCaps *caps1,
    +                                                         const GstCaps *caps2);
    +

    +Checks if the given caps are exactly the same set of caps. +

    +

    +This function deals correctly with passing NULL for any of the caps. +

    +
    ++ + + + + + + + + + + + + + +

    caps1 :

    a GstCaps +

    caps2 :

    another GstCaps +

    Returns :

    TRUE if both caps are strictly equal.
    +

    Since 0.10.36

    +
    +
    +

    gst_caps_is_always_compatible ()

    gboolean            gst_caps_is_always_compatible       (const GstCaps *caps1,
                                                              const GstCaps *caps2);
    @@ -1279,7 +1374,7 @@ for more information.
    -

    Since 0.10.35

    +

    Since 0.10.36


    @@ -1313,8 +1408,8 @@ be empty

    gst_caps_intersect ()

    -
    GstCaps *           gst_caps_intersect                  (const GstCaps *caps1,
    -                                                         const GstCaps *caps2);
    +
    GstCaps *           gst_caps_intersect                  (GstCaps *caps1,
    +                                                         GstCaps *caps2);

    Creates a new GstCaps that contains all the formats that are common to both caps1 and caps2. Defaults to GST_CAPS_INTERSECT_ZIG_ZAG mode. @@ -1341,8 +1436,8 @@ to both caps1 and


    gst_caps_intersect_full ()

    -
    GstCaps *           gst_caps_intersect_full             (const GstCaps *caps1,
    -                                                         const GstCaps *caps2,
    +
    GstCaps *           gst_caps_intersect_full             (GstCaps *caps1,
    +                                                         GstCaps *caps2,
                                                              GstCapsIntersectMode mode);

    Creates a new GstCaps that contains all the formats that are common @@ -1375,51 +1470,27 @@ used.


    -

    gst_caps_union ()

    -
    GstCaps *           gst_caps_union                      (const GstCaps *caps1,
    -                                                         const GstCaps *caps2);
    -

    -Creates a new GstCaps that contains all the formats that are in -either caps1 and caps2. -

    -
    -- - - - - - - - - - - - - - -

    caps1 :

    a GstCaps to union

    caps2 :

    a GstCaps to union

    Returns :

    the new GstCaps -
    -
    -
    -

    gst_caps_normalize ()

    -
    GstCaps *           gst_caps_normalize                  (const GstCaps *caps);
    +
    GstCaps *           gst_caps_normalize                  (GstCaps *caps);

    -Creates a new GstCaps that represents the same set of formats as +Returns a GstCaps that represents the same set of formats as caps, but contains no lists. Each list is expanded into separate GstStructures.

    +

    +This function takes ownership of caps. +

    - + - @@ -1427,32 +1498,37 @@ Creates a new -

    gst_caps_do_simplify ()

    -
    gboolean            gst_caps_do_simplify                (GstCaps *caps);
    +

    gst_caps_simplify ()

    +
    GstCaps *           gst_caps_simplify                   (GstCaps *caps);

    -Modifies the given caps inplace into a representation that represents the +Converts the given caps into a representation that represents the same set of formats, but in a simpler form. Component structures that are identical are merged. Component structures that have values that can be merged are also merged.

    +

    +This method does not preserve the original order of caps. +

    caps :

    a GstCaps to normalizea GstCaps to normalize. [transfer full] +

    Returns :

    the new GstCaps +the normalized GstCaps. [transfer full]
    - + - +

    caps :

    a GstCaps to simplifya GstCaps to simplify. [transfer full] +

    Returns :

    TRUE, if the caps could be simplifiedThe simplified caps.

    -

    gst_caps_replace()

    -
    #define             gst_caps_replace(ocaps,ncaps)
    +

    gst_caps_replace ()

    +
    gboolean            gst_caps_replace                    (GstCaps **old_caps,
    +                                                         GstCaps *new_caps);

    Modifies a pointer to a GstCaps to point to a different GstCaps. The modification is done atomically (so this is useful for ensuring thread safety @@ -1466,17 +1542,55 @@ Either ncaps or the -

    ocaps :

    +

    old_caps :

    pointer to a pointer to a
    GstCaps to be replaced. [inout][transfer full] -

    ncaps :

    +

    new_caps :

    pointer to a GstCaps that will replace the caps pointed to by ocaps. [transfer none][allow-none] + +

    Returns :

    +TRUE if new_caps was different from old_caps + + + +
    +
    +
    +
    +

    gst_caps_take ()

    +
    gboolean            gst_caps_take                       (GstCaps **old_caps,
    +                                                         GstCaps *new_caps);
    +

    +Modifies a pointer to a GstCaps to point to a different GstCaps. This +function is similar to gst_caps_replace() except that it takes ownership +of new_caps. +

    +
    ++ + + + + + + + + + + + +

    old_caps :

    pointer to a pointer to a GstCaps to be +replaced. [inout][transfer full] +

    new_caps :

    pointer to a GstCaps that will +replace the caps pointed to by ocaps. [transfer full][allow-none] +

    Returns :

    TRUE if new_caps was different from old_caps +
    @@ -1491,11 +1605,19 @@ can be converted back to a For debugging purposes its easier to do something like this:

    -
    -GST_LOG ("caps are %" GST_PTR_FORMAT, caps);
    -
    +
    + + + + + + + +
    1
    GST_LOG ("caps are %" GST_PTR_FORMAT, caps);
    +
    +

    -This prints the caps in human readble form. +This prints the caps in human readable form.

    @@ -1539,8 +1661,8 @@ Converts caps from a string representati

    gst_caps_subtract ()

    -
    GstCaps *           gst_caps_subtract                   (const GstCaps *minuend,
    -                                                         const GstCaps *subtrahend);
    +
    GstCaps *           gst_caps_subtract                   (GstCaps *minuend,
    +                                                         GstCaps *subtrahend);

    Subtracts the subtrahend from the minuend.

    @@ -1608,64 +1730,80 @@ same as caps. [

    -

    gst_caps_ref ()

    -
    GstCaps *           gst_caps_ref                        (GstCaps *caps);
    +

    gst_caps_truncate ()

    +
    GstCaps *           gst_caps_truncate                   (GstCaps *caps);

    -Add a reference to a GstCaps object. -

    -

    -From this point on, until the caller calls gst_caps_unref() or -gst_caps_make_writable(), it is guaranteed that the caps object will not -change. This means its structures won't change, etc. To use a GstCaps -object, you must always have a refcount on it -- either the one made -implicitly by e.g. gst_caps_new_simple(), or via taking one explicitly with -this function. +Discard all but the first structure from caps. Useful when +fixating.

    - + - +

    caps :

    the GstCaps to referencethe GstCaps to truncate. [transfer full] +

    Returns :

    the same GstCaps object.truncated caps. [transfer full] +

    -

    gst_caps_truncate ()

    -
    void                gst_caps_truncate                   (GstCaps *caps);
    +

    gst_caps_fixate ()

    +
    GstCaps *           gst_caps_fixate                     (GstCaps *caps);

    -Destructively discard all but the first structure from caps. Useful when -fixating. caps must be writable. +Modifies the given caps into a representation with only fixed +values. First the caps will be truncated and then the first structure will be +fixated with gst_structure_fixate().

    - + + - - + + + + + + +

    caps :

    the GstCaps to truncate
    a GstCaps to fixate. [transfer full] +

    Returns :

    the fixated caps. [transfer full] +

    -

    gst_caps_fixate ()

    -
    void                gst_caps_fixate                     (GstCaps *caps);
    +

    gst_caps_ref ()

    +
    GstCaps *           gst_caps_ref                        (GstCaps *caps);

    -Modifies the given caps inplace into a representation with only fixed -values. First the caps will be truncated and then the first structure will be -fixated with gst_structure_fixate(). caps should be writable. +Add a reference to a GstCaps object. +

    +

    +From this point on, until the caller calls gst_caps_unref() or +gst_caps_make_writable(), it is guaranteed that the caps object will not +change. This means its structures won't change, etc. To use a GstCaps +object, you must always have a refcount on it -- either the one made +implicitly by e.g. gst_caps_new_simple(), or via taking one explicitly with +this function.

    - + + - - + + + + + + +

    caps :

    a GstCaps to fixate
    the GstCaps to reference

    Returns :

    the same GstCaps object.

    @@ -1687,7 +1825,7 @@ structures' values when the refcount reaches 0. @@ -301,7 +360,7 @@ The same thing as

    GST_EVENT_MAKE_TYPE()

    -
    #define             GST_EVENT_MAKE_TYPE(num,idx,flags)
    +
    #define             GST_EVENT_MAKE_TYPE(num,flags)

    when making custom event types, use this macro with the num and the given flags @@ -314,10 +373,6 @@ the given flags the event number to create -

    idx :

    -the index in the sticky array - -

    flags :

    the event flags @@ -328,32 +383,43 @@ the given flags

    enum GstEventType

    typedef enum {
    -  GST_EVENT_UNKNOWN               = GST_EVENT_MAKE_TYPE (0, 0, 0),
    +  GST_EVENT_UNKNOWN               = GST_EVENT_MAKE_TYPE (0, 0),
    +
       /* bidirectional events */
    -  GST_EVENT_FLUSH_START           = GST_EVENT_MAKE_TYPE (1, 0, FLAG(BOTH)),
    -  GST_EVENT_FLUSH_STOP            = GST_EVENT_MAKE_TYPE (2, 0, FLAG(BOTH) | FLAG(SERIALIZED)),
    +  GST_EVENT_FLUSH_START           = GST_EVENT_MAKE_TYPE (10, FLAG(BOTH)),
    +  GST_EVENT_FLUSH_STOP            = GST_EVENT_MAKE_TYPE (20, FLAG(BOTH) | FLAG(SERIALIZED)),
    +
       /* downstream serialized events */
    -  GST_EVENT_CAPS                  = GST_EVENT_MAKE_TYPE (5, 1, FLAG(DOWNSTREAM) | FLAG(SERIALIZED) | FLAG(STICKY)),
    -  GST_EVENT_SEGMENT               = GST_EVENT_MAKE_TYPE (6, 2, FLAG(DOWNSTREAM) | FLAG(SERIALIZED) | FLAG(STICKY)),
    -  GST_EVENT_TAG                   = GST_EVENT_MAKE_TYPE (7, 3, FLAG(DOWNSTREAM) | FLAG(SERIALIZED) | FLAG(STICKY)),
    -  GST_EVENT_BUFFERSIZE            = GST_EVENT_MAKE_TYPE (8, 4, FLAG(DOWNSTREAM) | FLAG(SERIALIZED) | FLAG(STICKY)),
    -  GST_EVENT_SINK_MESSAGE          = GST_EVENT_MAKE_TYPE (9, 5, FLAG(DOWNSTREAM) | FLAG(SERIALIZED) | FLAG(STICKY)),
    -  GST_EVENT_EOS                   = GST_EVENT_MAKE_TYPE (10, 6, FLAG(DOWNSTREAM) | FLAG(SERIALIZED) | FLAG(STICKY)),
    +  GST_EVENT_STREAM_START          = GST_EVENT_MAKE_TYPE (40, FLAG(DOWNSTREAM) | FLAG(SERIALIZED) | FLAG(STICKY)),
    +  GST_EVENT_CAPS                  = GST_EVENT_MAKE_TYPE (50, FLAG(DOWNSTREAM) | FLAG(SERIALIZED) | FLAG(STICKY)),
    +  GST_EVENT_STREAM_CONFIG         = GST_EVENT_MAKE_TYPE (60, FLAG(DOWNSTREAM) | FLAG(SERIALIZED) | FLAG(STICKY)),
    +  GST_EVENT_SEGMENT               = GST_EVENT_MAKE_TYPE (70, FLAG(DOWNSTREAM) | FLAG(SERIALIZED) | FLAG(STICKY)),
    +  GST_EVENT_TAG                   = GST_EVENT_MAKE_TYPE (80, FLAG(DOWNSTREAM) | FLAG(SERIALIZED) | FLAG(STICKY) | FLAG(STICKY_MULTI)),
    +  GST_EVENT_BUFFERSIZE            = GST_EVENT_MAKE_TYPE (90, FLAG(DOWNSTREAM) | FLAG(SERIALIZED) | FLAG(STICKY)),
    +  GST_EVENT_SINK_MESSAGE          = GST_EVENT_MAKE_TYPE (100, FLAG(DOWNSTREAM) | FLAG(SERIALIZED) | FLAG(STICKY) | FLAG(STICKY_MULTI)),
    +  GST_EVENT_EOS                   = GST_EVENT_MAKE_TYPE (110, FLAG(DOWNSTREAM) | FLAG(SERIALIZED) | FLAG(STICKY)),
    +  GST_EVENT_TOC                   = GST_EVENT_MAKE_TYPE (120, FLAG(DOWNSTREAM) | FLAG(SERIALIZED) | FLAG(STICKY) | FLAG(STICKY_MULTI)),
    +
    +  /* non-sticky downstream serialized */
    +  GST_EVENT_SEGMENT_DONE          = GST_EVENT_MAKE_TYPE (150, FLAG(DOWNSTREAM) | FLAG(SERIALIZED)),
    +  GST_EVENT_GAP                   = GST_EVENT_MAKE_TYPE (160, FLAG(DOWNSTREAM) | FLAG(SERIALIZED)),
     
       /* upstream events */
    -  GST_EVENT_QOS                   = GST_EVENT_MAKE_TYPE (15, 0, FLAG(UPSTREAM)),
    -  GST_EVENT_SEEK                  = GST_EVENT_MAKE_TYPE (16, 0, FLAG(UPSTREAM)),
    -  GST_EVENT_NAVIGATION            = GST_EVENT_MAKE_TYPE (17, 0, FLAG(UPSTREAM)),
    -  GST_EVENT_LATENCY               = GST_EVENT_MAKE_TYPE (18, 0, FLAG(UPSTREAM)),
    -  GST_EVENT_STEP                  = GST_EVENT_MAKE_TYPE (19, 0, FLAG(UPSTREAM)),
    -  GST_EVENT_RECONFIGURE           = GST_EVENT_MAKE_TYPE (20, 0, FLAG(UPSTREAM)),
    +  GST_EVENT_QOS                   = GST_EVENT_MAKE_TYPE (190, FLAG(UPSTREAM)),
    +  GST_EVENT_SEEK                  = GST_EVENT_MAKE_TYPE (200, FLAG(UPSTREAM)),
    +  GST_EVENT_NAVIGATION            = GST_EVENT_MAKE_TYPE (210, FLAG(UPSTREAM)),
    +  GST_EVENT_LATENCY               = GST_EVENT_MAKE_TYPE (220, FLAG(UPSTREAM)),
    +  GST_EVENT_STEP                  = GST_EVENT_MAKE_TYPE (230, FLAG(UPSTREAM)),
    +  GST_EVENT_RECONFIGURE           = GST_EVENT_MAKE_TYPE (240, FLAG(UPSTREAM)),
    +  GST_EVENT_TOC_SELECT            = GST_EVENT_MAKE_TYPE (250, FLAG(UPSTREAM)),
     
       /* custom events start here */
    -  GST_EVENT_CUSTOM_UPSTREAM       = GST_EVENT_MAKE_TYPE (32, 0, FLAG(UPSTREAM)),
    -  GST_EVENT_CUSTOM_DOWNSTREAM     = GST_EVENT_MAKE_TYPE (32, 0, FLAG(DOWNSTREAM) | FLAG(SERIALIZED)),
    -  GST_EVENT_CUSTOM_DOWNSTREAM_OOB = GST_EVENT_MAKE_TYPE (32, 0, FLAG(DOWNSTREAM)),
    -  GST_EVENT_CUSTOM_BOTH           = GST_EVENT_MAKE_TYPE (32, 0, FLAG(BOTH) | FLAG(SERIALIZED)),
    -  GST_EVENT_CUSTOM_BOTH_OOB       = GST_EVENT_MAKE_TYPE (32, 0, FLAG(BOTH))
    +  GST_EVENT_CUSTOM_UPSTREAM          = GST_EVENT_MAKE_TYPE (270, FLAG(UPSTREAM)),
    +  GST_EVENT_CUSTOM_DOWNSTREAM        = GST_EVENT_MAKE_TYPE (280, FLAG(DOWNSTREAM) | FLAG(SERIALIZED)),
    +  GST_EVENT_CUSTOM_DOWNSTREAM_OOB    = GST_EVENT_MAKE_TYPE (290, FLAG(DOWNSTREAM)),
    +  GST_EVENT_CUSTOM_DOWNSTREAM_STICKY = GST_EVENT_MAKE_TYPE (300, FLAG(DOWNSTREAM) | FLAG(SERIALIZED) | FLAG(STICKY) | FLAG(STICKY_MULTI)),
    +  GST_EVENT_CUSTOM_BOTH              = GST_EVENT_MAKE_TYPE (310, FLAG(BOTH) | FLAG(SERIALIZED)),
    +  GST_EVENT_CUSTOM_BOTH_OOB          = GST_EVENT_MAKE_TYPE (320, FLAG(BOTH))
     } GstEventType;
     

    @@ -387,12 +453,25 @@ Specific custom events are distinguished by the name of the structure. +

    GST_EVENT_STREAM_START

    +Event to mark the start of a new stream. Sent before any + other serialized event and only sent at the start of a new stream, + not after flushing seeks. + + +

    GST_EVENT_CAPS

    GstCaps event. Notify the pad of a new media type. +

    GST_EVENT_STREAM_CONFIG

    +contains configuration information for the stream, + for example stream-headers and codec-data. + + +

    GST_EVENT_SEGMENT

    A new media segment follows in the dataflow. The segment events contains information for clipping buffers and @@ -426,6 +505,22 @@ Specific custom events are distinguished by the name of the structure. +

    GST_EVENT_TOC

    +An event which indicates that a new table of contents (TOC) + was found or updated. Since: 0.10.37 + + + +

    GST_EVENT_SEGMENT_DONE

    +(unimplemented) Marks the end of a segment playback. + + + +

    GST_EVENT_GAP

    +(unimplemented) Marks a gap in the datastream. + + +

    GST_EVENT_QOS

    A quality message. Used to indicate to upstream elements that the downstream elements should adjust their processing @@ -464,6 +559,12 @@ Specific custom events are distinguished by the name of the structure. +

    GST_EVENT_TOC_SELECT

    +A request for a new playback position based on TOC + entry's UID. Since 0.10.37 + + +

    GST_EVENT_CUSTOM_UPSTREAM

    Upstream custom event @@ -480,6 +581,11 @@ Specific custom events are distinguished by the name of the structure. +

    GST_EVENT_CUSTOM_DOWNSTREAM_STICKY

    +Custom sticky downstream event. + + +

    GST_EVENT_CUSTOM_BOTH

    Custom upstream or downstream event. In-band when travelling downstream. @@ -495,15 +601,6 @@ Specific custom events are distinguished by the name of the structure.

    -

    GST_EVENT_TRACE_NAME

    -
    #define GST_EVENT_TRACE_NAME    "GstEvent"
    -
    -

    -The name used for memory allocation tracing -

    -
    -
    -

    GST_EVENT_TYPE()

    #define GST_EVENT_TYPE(event)           (GST_EVENT_CAST(event)->type)
     
    @@ -736,8 +833,9 @@ Decrease the refcount of an event, freeing it if the refcount reaches 0.

    -

    gst_event_replace()

    -
    #define             gst_event_replace(old_event,new_event)
    +

    gst_event_replace ()

    +
    gboolean            gst_event_replace                   (GstEvent **old_event,
    +                                                         GstEvent *new_event);

    Modifies a pointer to a GstEvent to point to a different GstEvent. The modification is done atomically (so this is useful for ensuring thread safety @@ -794,8 +892,8 @@ Copy the event using the event specific copy function.


    -

    gst_event_steal()

    -
    #define             gst_event_steal(old_event)
    +

    gst_event_steal ()

    +
    GstEvent *          gst_event_steal                     (GstEvent **old_event);

    Atomically replace the GstEvent pointed to by old_event with NULL and return the original event. @@ -819,11 +917,12 @@ to be stolen. [ -

    gst_event_take()

    -
    #define             gst_event_take(old_event,new_event)
    +

    gst_event_take ()

    +
    gboolean            gst_event_take                      (GstEvent **old_event,
    +                                                         GstEvent *new_event);

    Modifies a pointer to a GstEvent to point to a different GstEvent. This -function is similar to gst_event_replace() except that it takes ownership of +function is similar to gst_event_replace() except that it takes ownership of new_event.

    @@ -1018,7 +1117,7 @@ check the name of a custom event.


    gst_event_get_seqnum ()

    -
    guint32             gst_event_get_seqnum                (GstEvent *event);
    +
    guint32             gst_event_get_seqnum                (GstEvent *event);

    Retrieve the sequence number of a event.

    @@ -1055,7 +1154,7 @@ MT safe.

    gst_event_set_seqnum ()

    void                gst_event_set_seqnum                (GstEvent *event,
    -                                                         guint32 seqnum);
    + guint32 seqnum);

    Set the sequence number of a event.

    @@ -1092,9 +1191,9 @@ upstream and downstream and travels out-of-bounds with the dataflow.

    It marks pads as being flushing and will make them return -GST_FLOW_WRONG_STATE when used for data flow with gst_pad_push(), -gst_pad_chain(), gst_pad_alloc_buffer(), gst_pad_get_range() and -gst_pad_pull_range(). Any event (except a GST_EVENT_FLUSH_STOP) received +GST_FLOW_FLUSHING when used for data flow with gst_pad_push(), +gst_pad_chain(), gst_pad_get_range() and gst_pad_pull_range(). +Any event (except a GST_EVENT_FLUSH_STOP) received on a flushing pad will return FALSE immediately.

    @@ -1177,7 +1276,7 @@ Parse the FLUSH_STOP event and retrieve the reset_ti

    Create a new EOS event. The eos event can only travel downstream synchronized with the buffer flow. Elements that receive the EOS -event on a pad can return GST_FLOW_UNEXPECTED as a GstFlowReturn +event on a pad can return GST_FLOW_EOS as a GstFlowReturn when data after the EOS event arrives.

    @@ -1203,8 +1302,97 @@ The EOS event itself will not cause any state transitions of the pipeline.


    +

    gst_event_new_gap ()

    +
    GstEvent *          gst_event_new_gap                   (GstClockTime timestamp,
    +                                                         GstClockTime duration);
    +

    +Create a new GAP event. A gap event can be thought of as conceptually +equivalent to a buffer to signal that there is no data for a certain +amount of time. This is useful to signal a gap to downstream elements +which may wait for data, such as muxers or mixers or overlays, especially +for sparse streams such as subtitle streams. +

    +
    ++ + + + + + + + + + + + + + +

    timestamp :

    the start time (pts) of the gap

    duration :

    the duration of the gap

    Returns :

    the new GAP event. [transfer full] +
    +
    +
    +
    +

    gst_event_parse_gap ()

    +
    void                gst_event_parse_gap                 (GstEvent *event,
    +                                                         GstClockTime *timestamp,
    +                                                         GstClockTime *duration);
    +

    +Extract timestamp and duration from a new GAP event. +

    +
    ++ + + + + + + + + + + + + + +

    event :

    a GstEvent of type GST_EVENT_GAP +

    timestamp :

    location where to store the +start time (pts) of the gap, or NULL. [out][allow-none] +

    duration :

    location where to store the duration of +the gap, or NULL. [out][allow-none] +
    +
    +
    +
    +

    gst_event_new_stream_start ()

    +
    GstEvent *          gst_event_new_stream_start          (void);
    +

    +Create a new STREAM_START event. The stream start event can only +travel downstream synchronized with the buffer flow. It is expected +to be the first event that is sent for a new stream. +

    +

    +Source elements, demuxers and other elements that create new streams +are supposed to send this event as the first event of a new stream. It +should not be send after a flushing seek or in similar situations +and is used to mark the beginning of a new logical stream. Elements +combining multiple streams must ensure that this event is only forwarded +downstream once and not for every single input stream. +

    +
    ++ + + + +

    Returns :

    the new STREAM_START event. [transfer full] +
    +
    +
    +

    gst_event_new_segment ()

    -
    GstEvent *          gst_event_new_segment               (GstSegment *segment);
    +
    GstEvent *          gst_event_new_segment               (const GstSegment *segment);

    Create a new SEGMENT event for segment. The segment event can only travel downstream synchronized with the buffer flow and contains timing information @@ -1249,7 +1437,7 @@ After a newsegment event, the buffer stream time is calculated with:

    segment :

    -a GstSegment +a GstSegment. [transfer none] @@ -1363,8 +1551,8 @@ want to modify it or store it for later use.

    gst_event_new_buffer_size ()

    GstEvent *          gst_event_new_buffer_size           (GstFormat format,
    -                                                         gint64 minsize,
    -                                                         gint64 maxsize,
    +                                                         gint64 minsize,
    +                                                         gint64 maxsize,
                                                              gboolean async);

    Create a new buffersize event. The event is sent downstream and notifies @@ -1405,8 +1593,8 @@ When the async flag is set, a thread bou

    gst_event_parse_buffer_size ()

    void                gst_event_parse_buffer_size         (GstEvent *event,
                                                              GstFormat *format,
    -                                                         gint64 *minsize,
    -                                                         gint64 *maxsize,
    +                                                         gint64 *minsize,
    +                                                         gint64 *maxsize,
                                                              gboolean *async);

    Get the format, minsize, maxsize and async-flag in the buffersize event. @@ -1614,9 +1802,8 @@ Get the type, proportion, diff and timestamp in the qos event. See

    typedef enum {
       /* one of these */
       GST_SEEK_TYPE_NONE            = 0,
    -  GST_SEEK_TYPE_CUR             = 1,
    -  GST_SEEK_TYPE_SET             = 2,
    -  GST_SEEK_TYPE_END             = 3
    +  GST_SEEK_TYPE_SET             = 1,
    +  GST_SEEK_TYPE_END             = 2
     } GstSeekType;
     

    @@ -1632,14 +1819,6 @@ The different types of seek events. When constructing a seek event with -

    GST_SEEK_TYPE_CUR

    -change relative to currently configured segment. This - can't be used to seek relative to the current playback position - do a - position query, calculate the desired position and then do an absolute - position seek instead if that's what you want to do. - - -

    GST_SEEK_TYPE_SET

    absolute position is requested @@ -1743,9 +1922,9 @@ elements that handle them. GstFormat format, GstSeekFlags flags, GstSeekType start_type, - gint64 start, + gint64 start, GstSeekType stop_type, - gint64 stop); + gint64 stop);

    Allocate a new seek event with the given parameters.

    @@ -1833,9 +2012,9 @@ this, PAUSE the pipeline, query the current playback position with GstFormat *format, GstSeekFlags *flags, GstSeekType *start_type, - gint64 *start, + gint64 *start, GstSeekType *stop_type, - gint64 *stop); + gint64 *stop);

    Parses a seek event and stores the results in the given result locations.

    @@ -1965,7 +2144,7 @@ Get the latency in the latency event.

    gst_event_new_step ()

    GstEvent *          gst_event_new_step                  (GstFormat format,
    -                                                         guint64 amount,
    +                                                         guint64 amount,
                                                              gdouble rate,
                                                              gboolean flush,
                                                              gboolean intermediate);
    @@ -1975,8 +2154,9 @@ to skip amount (expressed in flush flag will clear any pending data in the pipeline before starting @@ -2024,7 +2204,7 @@ part of a larger step operation.

    gst_event_parse_step ()

    void                gst_event_parse_step                (GstEvent *event,
                                                              GstFormat *format,
    -                                                         guint64 *amount,
    +                                                         guint64 *amount,
                                                              gdouble *rate,
                                                              gboolean *flush,
                                                              gboolean *intermediate);
    @@ -2152,7 +2332,7 @@ that will follow after the event.

    caps :

    -a GstCaps +a GstCaps. [transfer none] @@ -2187,6 +2367,332 @@ valid.
    +
    +
    +

    enum GstStreamConfigFlags

    +
    typedef enum {
    +  GST_STREAM_CONFIG_FLAG_NONE = 0
    +} GstStreamConfigFlags;
    +
    +

    +GstStreamConfigFlags are flags passed with the stream config event, see +gst_event_new_stream_config(). +

    +
    ++ + + + +

    GST_STREAM_CONFIG_FLAG_NONE

    no flags set +
    +
    +
    +
    +

    gst_event_new_stream_config ()

    +
    GstEvent *          gst_event_new_stream_config         (GstStreamConfigFlags flags);
    +

    +Create a new STREAM CONFIG event. The stream config event travels +downstream synchronized with the buffer flow and contains stream +configuration information for the stream, such as stream-headers +or setup-data. It is optional and should be sent after the CAPS +event. +

    +
    ++ + + + + + + + + + +

    flags :

    the stream config flags

    Returns :

    the new STREAM CONFIG event. [transfer full] +
    +
    +
    +
    +

    gst_event_parse_stream_config ()

    +
    void                gst_event_parse_stream_config       (GstEvent *event,
    +                                                         GstStreamConfigFlags *flags);
    +

    +Get the stream config flags from event. +

    +
    ++ + + + + + + + + + +

    event :

    The event to parse

    flags :

    a pointer to a variable to store the stream config flags. [out] +
    +
    +
    +
    +

    gst_event_set_stream_config_setup_data ()

    +
    void                gst_event_set_stream_config_setup_data
    +                                                        (GstEvent *event,
    +                                                         GstBuffer *buf);
    +

    +Set setup data on the stream info event to signal out of bound setup data +to downstream elements. Unlike stream headers, setup data contains data +that is required to interpret the data stream, but is not valid as-is +inside the data stream and thus can't just be prepended to or inserted +into the data stream. +

    +
    ++ + + + + + + + + + +

    event :

    a stream config event

    buf :

    a GstBuffer with setup data
    +
    +
    +
    +

    gst_event_parse_stream_config_setup_data ()

    +
    gboolean            gst_event_parse_stream_config_setup_data
    +                                                        (GstEvent *event,
    +                                                         GstBuffer **buf);
    +

    +Extracts the setup data buffer from the stream info event. Will store +NULL in buf if the event contains no setup data. The buffer returned +will remain valid as long as event remains valid. The caller should +acquire a reference to to buf if needed. +

    +
    ++ + + + + + + + + + + + + + +

    event :

    a stream config event

    buf :

    location where to store the GstBuffer with setup data. [out][transfer none] +

    Returns :

    TRUE if event contained setup data and buf has been set, +otherwise FALSE.
    +
    +
    +
    +

    gst_event_add_stream_config_header ()

    +
    void                gst_event_add_stream_config_header  (GstEvent *event,
    +                                                         GstBuffer *buf);
    +

    +Adds a stream header to the stream info event to signal stream headers to +to downstream elements such as multifilesink, tcpserversink etc. Stream +headers can be and should usually be prepended to the data stream at any +point in the stream (which requires a streamable format), e.g. to a new +client connecting, or when starting a new file segment. stream header +buffers will all be used together in the order they were added to the +stream config event. Stream headers are sent as buffers at the beginning +of the data flow in addition to the stream config event. Elements that +care about stream headers need to make sure that they don't insert or +interpret these header buffers twice if they interpret them. +

    +
    ++ + + + + + + + + + +

    event :

    a stream config event

    buf :

    a GstBuffer with stream header data
    +
    +
    +
    +

    gst_event_get_n_stream_config_headers ()

    +
    guint               gst_event_get_n_stream_config_headers
    +                                                        (GstEvent *event);
    +

    +Extract the number of stream header buffers. +

    +
    ++ + + + + + + + + + +

    event :

    a stream config event

    Returns :

    the number of stream header buffers attached to the stream info +event.
    +
    +
    +
    +

    gst_event_parse_nth_stream_config_header ()

    +
    gboolean            gst_event_parse_nth_stream_config_header
    +                                                        (GstEvent *event,
    +                                                         guint index,
    +                                                         GstBuffer **buf);
    +

    +Retrieves the n-th stream header buffer attached to the stream config +event and stores it in buf. Will store NULL in buf if there is no such +stream header. +

    +
    ++ + + + + + + + + + + + + + + + + + +

    event :

    a stream config event

    index :

    number of the stream header to retrieve

    buf :

    location where to store the n-th stream +header GstBuffer. [out][transfer none] +

    Returns :

    TRUE if event contained a stream header at index and buf has +been set, otherwise FALSE.
    +
    +
    +
    +

    gst_event_new_toc ()

    +
    GstEvent *          gst_event_new_toc                   (GstToc *toc,
    +                                                         gboolean updated);
    +

    +Generate a TOC event from the given toc. The purpose of the TOC event is to +inform elements that some kind of the TOC was found. +

    +
    ++ + + + + + + + + + + + + + +

    toc :

    +GstToc structure.

    updated :

    whether toc was updated or not.

    Returns :

    a new GstEvent.
    +

    Since 0.10.37

    +
    +
    +
    +

    gst_event_parse_toc ()

    +
    void                gst_event_parse_toc                 (GstEvent *event,
    +                                                         GstToc **toc,
    +                                                         gboolean *updated);
    +

    +Parse a TOC event and store the results in the given toc and updated locations. +

    +
    ++ + + + + + + + + + + + + + +

    event :

    a TOC event.

    toc :

    pointer to GstToc structure. [out] +

    updated :

    pointer to store TOC updated flag. [out] +
    +

    Since 0.10.37

    +
    +
    +
    +

    gst_event_new_toc_select ()

    +
    GstEvent *          gst_event_new_toc_select            (const gchar *uid);
    +

    +Generate a TOC select event with the given uid. The purpose of the +TOC select event is to start playback based on the TOC's entry with the +given uid. +

    +
    ++ + + + + + + + + + +

    uid :

    UID in the TOC to start playback from.

    Returns :

    a new GstEvent.
    +

    Since 0.10.37

    +
    +
    +
    +

    gst_event_parse_toc_select ()

    +
    void                gst_event_parse_toc_select          (GstEvent *event,
    +                                                         gchar **uid);
    +

    +Parse a TOC select event and store the results in the given uid location. +

    +
    ++ + + + + + + + + + +

    event :

    a TOC select event.

    uid :

    storage for the selection UID. [out] +
    +

    Since 0.10.37

    +

    See Also

    diff --git a/docs/gst/html/gstreamer-GstFilter.html b/docs/gst/html/gstreamer-GstFilter.html deleted file mode 100644 index e03df27..0000000 --- a/docs/gst/html/gstreamer-GstFilter.html +++ /dev/null @@ -1,158 +0,0 @@ - - - - -GstFilter - - - - - - - - - - - - - - - - - - - -
    -
    -
    - - -
    -

    GstFilter

    -

    GstFilter — A utility function to filter GLists.

    -
    -
    -

    Synopsis

    -
    -#include <gst/gst.h>
    -
    -gboolean            (*GstFilterFunc)                    (gpointer obj,
    -                                                         gpointer user_data);
    -GList *             gst_filter_run                      (const GList *list,
    -                                                         GstFilterFunc func,
    -                                                         gboolean first,
    -                                                         gpointer user_data);
    -
    -
    -
    -

    Description

    -

    -

    -
    -

    Example 9. Filtering a list

    -
    -    GList *node;
    -    GstObject *result = NULL;
    -    
    -    node = gst_filter_run (list, (GstFilterFunc) my_filter, TRUE, NULL);
    -    if (node) {
    -      result = GST_OBJECT (node->data);
    -      gst_object_ref (result);
    -      g_list_free (node);
    -    }
    -  
    -
    -


    -

    -
    -
    -

    Details

    -
    -

    GstFilterFunc ()

    -
    gboolean            (*GstFilterFunc)                    (gpointer obj,
    -                                                         gpointer user_data);
    -

    -Function prototype for a filter callback that can be use in gst_filter_run(). -The function should apply its filtering to obj. Additional data passed to -gst_filter_run() are in data. -

    -
    -- - - - - - - - - - - - - - -

    obj :

    the object

    user_data :

    filter data

    Returns :

    -TRUE for success.
    -
    -
    -
    -

    gst_filter_run ()

    -
    GList *             gst_filter_run                      (const GList *list,
    -                                                         GstFilterFunc func,
    -                                                         gboolean first,
    -                                                         gpointer user_data);
    -

    -Iterates over the elements in list, calling func with the -list item data for each item. If func returns TRUE, data is -prepended to the list of results returned. If first is true, -the search is halted after the first result is found. -

    -

    -Since gst_filter_run() knows nothing about the type of data, no -reference will be taken (if data refers to an object) and no copy of -data wil be made in any other way when prepending data to the list of -results. -

    -
    -- - - - - - - - - - - - - - - - - - - - - - -

    list :

    a linked list

    func :

    the function to execute for each item. [scope call] -

    first :

    flag to stop execution after a successful item

    user_data :

    user data. [closure] -

    Returns :

    the list of results. Free with g_list_free() -when no longer needed (the data contained in the list is a flat copy -and does need to be unreferenced or freed). [transfer container] -
    -
    -
    -
    - - - \ No newline at end of file diff --git a/docs/gst/html/gstreamer-GstFormat.html b/docs/gst/html/gstreamer-GstFormat.html index 3c10658..f763b9c 100644 --- a/docs/gst/html/gstreamer-GstFormat.html +++ b/docs/gst/html/gstreamer-GstFormat.html @@ -3,10 +3,10 @@ GstFormat - - + + - + @@ -14,10 +14,10 @@ - + - + - + - - + + + + + + - - - -
    +
    +
    +

    gst_debug_bin_to_dot_file ()

    +
    void                gst_debug_bin_to_dot_file           (GstBin *bin,
    +                                                         GstDebugGraphDetails details,
    +                                                         const gchar *file_name);
    +
    +
    +
    +

    gst_debug_bin_to_dot_file_with_ts ()

    +
    void                gst_debug_bin_to_dot_file_with_ts   (GstBin *bin,
    +                                                         GstDebugGraphDetails details,
    +                                                         const gchar *file_name);
    +

    See Also

    diff --git a/docs/gst/html/gstreamer-GstIterator.html b/docs/gst/html/gstreamer-GstIterator.html index 829d63b..ef661c6 100644 --- a/docs/gst/html/gstreamer-GstIterator.html +++ b/docs/gst/html/gstreamer-GstIterator.html @@ -3,10 +3,10 @@ GstIterator - - + + - + @@ -14,10 +14,10 @@ - + - + - + + + + +

    -

    GST_MAP_READWRITE

    -
    #define GST_MAP_READWRITE      (GST_MAP_READ | GST_MAP_WRITE)
    +

    GstMapInfo

    +
    typedef struct {
    +  GstMemory *memory;
    +  GstMapFlags flags;
    +  guint8 *data;
    +  gsize size;
    +  gsize maxsize;
    +} GstMapInfo;
     

    -Map for readwrite access -

    -
    -
    -
    -

    GstMemoryAllocFunction ()

    -
    GstMemory *         (*GstMemoryAllocFunction)           (const GstAllocator *allocator,
    -                                                         gsize maxsize,
    -                                                         gsize align,
    -                                                         gpointer user_data);
    -

    -Allocate a new GstMemory from allocator that can hold at least maxsize bytes -and is aligned to (align + 1) bytes. -

    -

    -user_data is the data that was used when registering allocator. +A structure containing the result of a map operation such as +gst_memory_map(). It contains the data and size.

    - - + + - - + + - - + + - - + + - - + @@ -404,65 +479,100 @@ and is aligned to (align + 1) bytes.
    -

    GstMemoryGetSizesFunction ()

    -
    gsize               (*GstMemoryGetSizesFunction)        (GstMemory *mem,
    -                                                         gsize *offset,
    -                                                         gsize *maxsize);
    +

    GST_MAP_INFO_INIT

    +
    #define GST_MAP_INFO_INIT { NULL, 0, NULL, 0, 0, }
    +
    +

    +Initializer for GstMapInfo +

    +
    +
    +
    +

    GST_MAP_READWRITE

    +
    #define GST_MAP_READWRITE      (GST_MAP_READ | GST_MAP_WRITE)
    +
    +

    +Map for readwrite access +

    +
    +
    +
    +

    struct GstAllocationParams

    +
    struct GstAllocationParams {
    +  GstMemoryFlags flags;
    +  gsize          align;
    +  gsize          prefix;
    +  gsize          padding;
    +};
    +

    -Retrieve the size, offset and maxsize of mem. +Parameters to control the allocation of memory

    allocator :

    a GstAllocator -

    GstMemory *memory;

    a pointer to the mapped memory

    maxsize :

    the maxsize

    GstMapFlags flags;

    flags used when mapping the memory

    align :

    the alignment

    guint8 *data;

    a pointer to the mapped data

    user_data :

    user data

    gsize size;

    the valid size in data +

    Returns :

    a newly allocated GstMemory. Free with gst_memory_unref() +

    gsize maxsize;

    the maximum bytes in data
    - - + + - - + + - - + + - - + +

    mem :

    a GstMemory -

    GstMemoryFlags flags;

    flags to control allocation

    offset :

    result pointer for offset

    gsize align;

    the desired alignment of the memory

    maxsize :

    result pointer for maxsize

    gsize prefix;

    the disired prefix

    Returns :

    the size of mem, the offset and the maximum allocated size in maxsize.

    gsize padding;

    the desired padding

    -

    GstMemoryResizeFunction ()

    -
    void                (*GstMemoryResizeFunction)          (GstMemory *mem,
    -                                                         gssize offset,
    -                                                         gsize size);
    +

    GstAllocatorAllocFunction ()

    +
    GstMemory *         (*GstAllocatorAllocFunction)        (GstAllocator *allocator,
    +                                                         gsize size,
    +                                                         GstAllocationParams *params,
    +                                                         gpointer user_data);

    -Adjust the size and offset of mem. offset bytes will be adjusted from the -current first byte in mem as retrieved with gst_memory_map() and the new -size will be set to size. +Allocate a new GstMemory from allocator that can hold at least size +bytes (+ padding) and is aligned to (align + 1) bytes.

    -size can be set to -1, which will only adjust the offset. +The offset and size of the memory should be set and the prefix/padding must +be filled with 0 if params flags contains GST_MEMORY_FLAG_ZERO_PREFIXED and +GST_MEMORY_FLAG_ZERO_PADDED respectively. +

    +

    +user_data is the data that was used when creating allocator.

    - - + - - + + - - + + + + + + + + + +

    mem :

    a GstMemory +

    allocator :

    a GstAllocator

    offset :

    the offset adjustement

    size :

    the size

    size :

    the new size

    params :

    allocator params

    user_data :

    user data

    Returns :

    a newly allocated GstMemory. Free with gst_memory_unref() +
    @@ -471,14 +581,12 @@ size will be set to size.

    GstMemoryMapFunction ()

    gpointer            (*GstMemoryMapFunction)             (GstMemory *mem,
    -                                                         gsize *size,
    -                                                         gsize *maxsize,
    +                                                         gsize maxsize,
                                                              GstMapFlags flags);

    Get the memory of mem that can be accessed according to the mode specified -in flags. size and maxsize will respectively contain the current amount of -valid bytes in the returned memory and the maximum allocated memory. -size and maxsize can optionally be set to NULL. +in flags. The function should return a pointer that contains at least +maxsize bytes.

    @@ -489,12 +597,8 @@ valid bytes in the returned memory and the maximum allocated memory. - - - - - + @@ -502,8 +606,8 @@ valid bytes in the returned memory and the maximum allocated memory. - +

    size :

    pointer for the size

    maxsize :

    pointer for the maxsizesize to map

    flags :

    Returns :

    a pointer to memory. size bytes are currently used from the -returned pointer and maxsize bytes can potentially be used.a pointer to memory of which at least maxsize bytes can be +accessed according to the access pattern in flags.
    @@ -511,13 +615,9 @@ returned pointer and maxsize bytes can p

    GstMemoryUnmapFunction ()

    -
    gboolean            (*GstMemoryUnmapFunction)           (GstMemory *mem,
    -                                                         gpointer data,
    -                                                         gsize size);
    +
    void                (*GstMemoryUnmapFunction)           (GstMemory *mem);

    -Return the pointer previously retrieved with gst_memory_map() and adjust the -size of the memory with size. size can optionally be set to -1 to not -modify the size. +Return the pointer previously retrieved with gst_memory_map().

    @@ -528,14 +628,6 @@ modify the size. - - - - - - - - @@ -564,8 +656,8 @@ refcount of the mem has reached 0.

    GstMemoryCopyFunction ()

    GstMemory *         (*GstMemoryCopyFunction)            (GstMemory *mem,
    -                                                         gssize offset,
    -                                                         gsize size);
    + gssize offset, + gssize size);

    Copy size bytes from mem starting at offset and return them wrapped in a new GstMemory object. @@ -585,7 +677,7 @@ If size is set to -1, all bytes starting

    - + @@ -599,8 +691,8 @@ If size is set to -1, all bytes starting

    GstMemoryShareFunction ()

    GstMemory *         (*GstMemoryShareFunction)           (GstMemory *mem,
    -                                                         gssize offset,
    -                                                         gsize size);
    + gssize offset, + gssize size);

    Share size bytes from mem starting at offset and return them wrapped in a new GstMemory object. If size is set to -1, all bytes starting at offset are @@ -620,7 +712,7 @@ shared. This function does not make a copy of the bytes in

    - + @@ -634,7 +726,7 @@ shared. This function does not make a copy of the bytes in

    GstMemoryIsSpanFunction ()

    gboolean            (*GstMemoryIsSpanFunction)          (GstMemory *mem1,
                                                              GstMemory *mem2,
    -                                                         gsize *offset);
    + gsize *offset);

    Check if mem1 and mem2 occupy contiguous memory and return the offset of mem1 in the parent buffer in offset. @@ -666,46 +758,357 @@ Check if mem1 and


    -

    gst_memory_alignment

    -
    extern gsize gst_memory_alignment;
    +

    struct GstMemoryInfo

    +
    struct GstMemoryInfo {
    +  const gchar              *mem_type;
    +
    +  GstAllocatorAllocFunction alloc;
    +
    +  GstMemoryMapFunction      mem_map;
    +  GstMemoryUnmapFunction    mem_unmap;
    +  GstMemoryFreeFunction     mem_free;
    +
    +  GstMemoryCopyFunction     mem_copy;
    +  GstMemoryShareFunction    mem_share;
    +  GstMemoryIsSpanFunction   mem_is_span;
    +};
     
    -
    -
    -
    -

    gst_allocator_alloc ()

    -
    GstMemory *         gst_allocator_alloc                 (const GstAllocator *allocator,
    -                                                         gsize maxsize,
    -                                                         gsize align);
    -

    -Use allocator to allocate a new memory block with memory that is at least -maxsize big and has the given alignment. -

    -When allocator is NULL, the default allocator will be used. +The GstMemoryInfo is used to register new memory allocators and contain +the implementations for various memory operations.

    +

    data :

    the data pointer

    size :

    the new size

    Returns :

    TRUE on success.

    size :

    a sizea size or -1

    Returns :

    size :

    a sizea size or -1

    Returns :

    ++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    const gchar *mem_type;

    the memory type this allocator provides

    GstAllocatorAllocFunction alloc;

    the implementation of the GstAllocatorAllocFunction

    GstMemoryMapFunction mem_map;

    the implementation of the GstMemoryMapFunction

    GstMemoryUnmapFunction mem_unmap;

    the implementation of the GstMemoryUnmapFunction

    GstMemoryFreeFunction mem_free;

    the implementation of the GstMemoryFreeFunction

    GstMemoryCopyFunction mem_copy;

    the implementation of the GstMemoryCopyFunction

    GstMemoryShareFunction mem_share;

    the implementation of the GstMemoryShareFunction

    GstMemoryIsSpanFunction mem_is_span;

    the implementation of the GstMemoryIsSpanFunction
    +
    +
    +
    +

    GstAllocator

    +
    typedef struct _GstAllocator GstAllocator;
    +

    +An opaque type returned from gst_allocator_new() or gst_allocator_find() +that can be used to allocator memory. +

    +
    +
    +
    +

    gst_allocator_new ()

    +
    GstAllocator *      gst_allocator_new                   (const GstMemoryInfo *info,
    +                                                         gpointer user_data,
    +                                                         GDestroyNotify notify);

    -align is given as a bitmask so that align + 1 equals the amount of bytes to -align to. For example, to align to 8 bytes, use an alignment of 7. +Create a new memory allocator with info and user_data. +

    +

    +All functions in info are mandatory exept the copy and is_span +functions, which will have a default implementation when left NULL. +

    +

    +The user_data will be passed to all calls of the alloc function. notify +will be called with user_data when the allocator is freed. +

    +
    ++ + + + + + + + + + + + + + + + + + +

    info :

    a GstMemoryInfo +

    user_data :

    user data

    notify :

    a GDestroyNotify for user_data +

    Returns :

    a new GstAllocator.
    +
    +
    +
    +

    gst_allocator_get_memory_type ()

    +
    const gchar *       gst_allocator_get_memory_type       (GstAllocator *allocator);
    +

    +Get the memory type allocated by this allocator

    - + - - + + +

    allocator :

    a GstAllocator to usea GstAllocator +

    maxsize :

    allocated size of data +

    Returns :

    the memory type provided by allocator
    +
    +
    +
    +

    gst_allocator_ref ()

    +
    GstAllocator *      gst_allocator_ref                   (GstAllocator *allocator);
    +

    +Increases the refcount of allocator. +

    +
    ++ - - + + - + + + +

    align :

    alignment for the data

    allocator :

    a GstAllocator +

    Returns :

    a new GstMemory. +allocator with increased refcount
    +
    +
    +
    +

    gst_allocator_unref ()

    +
    void                gst_allocator_unref                 (GstAllocator *allocator);
    +

    +Decreases the refcount of allocator. When the refcount reaches 0, the notify +function of allocator will be called and the allocator will be freed. +

    +
    ++ + + + +

    allocator :

    a GstAllocator +
    +
    +
    +
    +

    GST_ALLOCATOR_SYSMEM

    +
    #define GST_ALLOCATOR_SYSMEM   "SystemMemory"
    +
    +

    +The allocator name for the default system memory allocator +

    +
    +
    +
    +

    gst_allocator_find ()

    +
    GstAllocator *      gst_allocator_find                  (const gchar *name);
    +

    +Find a previously registered allocator with name. When name is NULL, the +default allocator will be returned. +

    +
    ++ + + + + + + + + + +

    name :

    the name of the allocator

    Returns :

    a GstAllocator or NULL when the allocator with name was not +registered. Use gst_allocator_unref() to release the allocator after usage. [transfer full] +
    +
    +
    +
    +

    gst_allocator_register ()

    +
    void                gst_allocator_register              (const gchar *name,
    +                                                         GstAllocator *allocator);
    +

    +Registers the memory allocator with name. This function takes ownership of +allocator. +

    +
    ++ + + + + + + + + + +

    name :

    the name of the allocator

    allocator :

    +GstAllocator. [transfer full] +
    +
    +
    +
    +

    gst_allocator_set_default ()

    +
    void                gst_allocator_set_default           (GstAllocator *allocator);
    +

    +Set the default allocator. This function takes ownership of allocator. +

    +
    ++ + + + +

    allocator :

    a GstAllocator. [transfer full] +
    +
    +
    +
    +

    gst_allocation_params_init ()

    +
    void                gst_allocation_params_init          (GstAllocationParams *params);
    +

    +Initialize params to its default values +

    +
    ++ + + + +

    params :

    a GstAllocationParams +
    +
    +
    +
    +

    gst_allocation_params_copy ()

    +
    GstAllocationParams * gst_allocation_params_copy        (const GstAllocationParams *params);
    +

    +Create a copy of params. +

    +

    +Free-function: gst_allocation_params_free +

    +
    ++ + + + + + + + + + +

    params :

    a GstAllocationParams. [transfer none] +

    Returns :

    a new #GstAllocationParams, free with +gst_allocation_params_free(). [transfer full] +
    +
    +
    +
    +

    gst_allocation_params_free ()

    +
    void                gst_allocation_params_free          (GstAllocationParams *params);
    +

    +Free params +

    +
    ++ + + + +

    params :

    a GstAllocationParams. [in][transfer full] +
    +
    +
    +
    +

    gst_allocator_alloc ()

    +
    GstMemory *         gst_allocator_alloc                 (GstAllocator *allocator,
    +                                                         gsize size,
    +                                                         GstAllocationParams *params);
    +

    +Use allocator to allocate a new memory block with memory that is at least +size big. +

    +

    +The optional params can specify the prefix and padding for the memory. If +NULL is passed, no flags, no extra prefix/padding and a default alignment is +used. +

    +

    +The prefix/padding will be filled with 0 if flags contains +GST_MEMORY_FLAG_ZERO_PREFIXED and GST_MEMORY_FLAG_ZERO_PADDED respectively. +

    +

    +When allocator is NULL, the default allocator will be used. +

    +

    +The alignment in params is given as a bitmask so that align + 1 equals +the amount of bytes to align to. For example, to align to 8 bytes, +use an alignment of 7. +

    +
    ++ + + + + + + + + + + + + + + +

    allocator :

    a GstAllocator to use. [transfer none][allow-none] +

    size :

    size of the visible memory area

    params :

    optional parameters. [transfer none][allow-none] +

    Returns :

    a new GstMemory. [transfer full] +
    @@ -715,13 +1118,18 @@ align to. For example, to align to 8 bytes, use an alignment of 7.

    gst_memory_new_wrapped ()

    GstMemory *         gst_memory_new_wrapped              (GstMemoryFlags flags,
                                                              gpointer data,
    -                                                         GFreeFunc free_func,
    -                                                         gsize maxsize,
    -                                                         gsize offset,
    -                                                         gsize size);
    + gsize maxsize, + gsize offset, + gsize size, + gpointer user_data, + GDestroyNotify notify);

    Allocate a new memory block that wraps the given data.

    +

    +The prefix/padding must be filled with 0 if flags contains +GST_MEMORY_FLAG_ZERO_PREFIXED and GST_MEMORY_FLAG_ZERO_PADDED respectively. +

    @@ -734,11 +1142,6 @@ Allocate a new memory block that wraps the given dat - - - - @@ -753,6 +1156,14 @@ Allocate a new memory block that wraps the given dat + + + + + + + + @@ -801,10 +1212,27 @@ function of mem will be called.
    +

    gst_memory_is_exclusive ()

    +
    gboolean            gst_memory_is_exclusive             (GstMemory *mem);
    +

    +Check if the current ref to mem is exclusive, this means that no other +references exist other than mem. +

    +
    data to wrap

    free_func :

    function to free data -

    maxsize :

    allocated size of data size of valid data

    user_data :

    user_data

    notify :

    called with user_data when the memory is freed

    Returns :

    a new GstMemory.
    ++ + + + +

    mem :

    a GstMemory +
    +
    +
    +

    gst_memory_get_sizes ()

    -
    gsize               gst_memory_get_sizes                (GstMemory *mem,
    -                                                         gsize *offset,
    -                                                         gsize *maxsize);
    +
    gsize               gst_memory_get_sizes                (GstMemory *mem,
    +                                                         gsize *offset,
    +                                                         gsize *maxsize);

    Get the current size, offset and maxsize of mem.

    @@ -836,12 +1264,16 @@ Get the current size,

    gst_memory_resize ()

    void                gst_memory_resize                   (GstMemory *mem,
    -                                                         gssize offset,
    -                                                         gsize size);
    + gssize offset, + gsize size);

    Resize the memory region. mem should be writable and offset + size should be less than the maxsize of mem.

    +

    +GST_MEMORY_FLAG_ZERO_PREFIXED and GST_MEMORY_FLAG_ZERO_PADDED will be +cleared when offset or padding is increased respectively. +

    @@ -863,33 +1295,31 @@ less than the maxsize of mem.
    -

    gst_memory_map ()

    -
    gpointer            gst_memory_map                      (GstMemory *mem,
    -                                                         gsize *size,
    -                                                         gsize *maxsize,
    +

    gst_memory_make_mapped ()

    +
    GstMemory *         gst_memory_make_mapped              (GstMemory *mem,
    +                                                         GstMapInfo *info,
                                                              GstMapFlags flags);

    -Get a pointer to the memory of mem that can be accessed according to flags. +Create a GstMemory object that is mapped with flags. If mem is mappable +with flags, this function returns the mapped mem directly. Otherwise a +mapped copy of mem is returned.

    -size and maxsize will contain the size of the memory and the maximum -allocated memory of mem respectively. They can be set to NULL. +This function takes ownership of old mem and returns a reference to a new +GstMemory.

    - - - - - - - + + @@ -897,21 +1327,39 @@ allocated memory of mem respectively. Th - +

    mem :

    a GstMemory +a GstMemory. [transfer full]

    size :

    pointer for size

    maxsize :

    pointer for maxsize

    info :

    pointer for info. [out] +

    flags :

    Returns :

    a pointer to the memory of mem.a GstMemory object mapped with flags or NULL when +a mapping is not possible. [transfer full] +

    -

    gst_memory_unmap ()

    -
    gboolean            gst_memory_unmap                    (GstMemory *mem,
    -                                                         gpointer data,
    -                                                         gsize size);
    +

    gst_memory_map ()

    +
    gboolean            gst_memory_map                      (GstMemory *mem,
    +                                                         GstMapInfo *info,
    +                                                         GstMapFlags flags);

    -Release the memory pointer obtained with gst_memory_map() and set the size of -the memory to size. size can be set to -1 when the size should not be -updated. +Fill info with the pointer and sizes of the memory in mem that can be +accessed according to flags. +

    +

    +This function can return FALSE for various reasons: +

    +
      +
    • the memory backed by mem is not accessible with the given flags.

    • +
    • the memory was already mapped with a different mapping.

    • +
    +

    +

    +

    +info and its contents remain valid for as long as mem is valid and +until gst_memory_unmap() is called. +

    +

    +For each gst_memory_map() call, a corresponding gst_memory_unmap() call +should be done.

    @@ -922,17 +1370,42 @@ updated. - - + + - - + + - + + + +

    data :

    data to unmap

    info :

    pointer for info. [out] +

    size :

    new size of mem -

    flags :

    mapping flags

    Returns :

    TRUE when the memory was release successfully. +TRUE if the map operation was successful.
    +
    +
    +
    +

    gst_memory_unmap ()

    +
    void                gst_memory_unmap                    (GstMemory *mem,
    +                                                         GstMapInfo *info);
    +

    +Release the memory obtained with gst_memory_map() +

    +
    ++ + + + + + + +

    mem :

    a GstMemory +

    info :

    a GstMapInfo +
    @@ -941,8 +1414,8 @@ updated.

    gst_memory_copy ()

    GstMemory *         gst_memory_copy                     (GstMemory *mem,
    -                                                         gssize offset,
    -                                                         gsize size);
    + gssize offset, + gssize size);

    Return a copy of size bytes from mem starting from offset. This copy is guaranteed to be writable. size can be set to -1 to return a copy all bytes @@ -962,7 +1435,7 @@ from offset.

    size :

    -size to copy +size to copy or -1 to copy all bytes from offset

    Returns :

    @@ -975,13 +1448,13 @@ from offset.

    gst_memory_share ()

    GstMemory *         gst_memory_share                    (GstMemory *mem,
    -                                                         gssize offset,
    -                                                         gsize size);
    + gssize offset, + gssize size);

    -Return a shared copy of size bytes from mem starting from offset. No memory -copy is performed and the memory region is simply shared. The result is -guaranteed to be not-writable. size can be set to -1 to return a share all bytes -from offset. +Return a shared copy of size bytes from mem starting from offset. No +memory copy is performed and the memory region is simply shared. The result +is guaranteed to be not-writable. size can be set to -1 to return a share +all bytes from offset.

    @@ -997,7 +1470,7 @@ from offset. - + @@ -1011,7 +1484,7 @@ from offset.

    gst_memory_is_span ()

    gboolean            gst_memory_is_span                  (GstMemory *mem1,
                                                              GstMemory *mem2,
    -                                                         gsize *offset);
    + gsize *offset);

    Check if mem1 and mem2 share the memory with a common parent memory object and that the memory is contiguous. @@ -1046,89 +1519,6 @@ the returned offset.

    size :

    size to sharesize to share or -1 to share bytes from offset

    Returns :

    -
    -
    -

    GST_ALLOCATOR_SYSMEM

    -
    #define GST_ALLOCATOR_SYSMEM   "SystemMemory"
    -
    -

    -The allocator name for the default system memory allocator -

    -
    -
    -
    -

    gst_allocator_find ()

    -
    const GstAllocator * gst_allocator_find                 (const gchar *name);
    -

    -Find a previously registered allocator with name. When name is NULL, the -default allocator will be returned. -

    -
    -- - - - - - - - - - -

    name :

    the name of the allocator

    Returns :

    a GstAllocator or NULL when the allocator with name was not -registered.
    -
    -
    -
    -

    gst_allocator_register ()

    -
    const GstAllocator * gst_allocator_register             (const gchar *name,
    -                                                         const GstMemoryInfo *info);
    -

    -Registers the memory allocator with name and implementation functions -info. -

    -

    -All functions in info are mandatory exept the copy and is_span -functions, which will have a default implementation when left NULL. -

    -

    -The user_data field in info will be passed to all calls of the alloc -function. -

    -
    -- - - - - - - - - - - - - - -

    name :

    the name of the allocator

    info :

    GstMemoryInfo

    Returns :

    a new GstAllocator.
    -
    -
    -
    -

    gst_allocator_set_default ()

    -
    void                gst_allocator_set_default           (const GstAllocator *allocator);
    -

    -Set the default allocator. -

    -
    -- - - - -

    allocator :

    a GstAllocator -
    -

    See Also

    diff --git a/docs/gst/html/gstreamer-GstMessage.html b/docs/gst/html/gstreamer-GstMessage.html index ae66e1c..1c656bb 100644 --- a/docs/gst/html/gstreamer-GstMessage.html +++ b/docs/gst/html/gstreamer-GstMessage.html @@ -3,8 +3,8 @@ GstMessage - - + + @@ -17,7 +17,7 @@ Prev Up Home -GStreamer 0.11 Core Reference Manual +GStreamer 1.0 Core Reference Manual Next @@ -49,7 +49,6 @@ enum GST_MESSAGE_SEQNUM (message) #define GST_MESSAGE_TYPE (message) #define GST_MESSAGE_TYPE_NAME (message) -#define GST_MESSAGE_TRACE_NAME GQuark gst_message_type_to_quark (GstMessageType type); const gchar * gst_message_type_get_name (GstMessageType type); GstMessage * gst_message_ref (GstMessage *msg); @@ -57,14 +56,14 @@ const GstMessage * gst_message_copy (const GstMessage *msg); const GstStructure * gst_message_get_structure (GstMessage *message); #define gst_message_make_writable (msg) -guint32 gst_message_get_seqnum (GstMessage *message); +guint32 gst_message_get_seqnum (GstMessage *message); void gst_message_set_seqnum (GstMessage *message, - guint32 seqnum); + guint32 seqnum); gboolean gst_message_has_name (GstMessage *message, const gchar *name); #define gst_message_is_writable (msg) -#define gst_message_replace (old_message, - new_message) +gboolean gst_message_replace (GstMessage **old_message, + GstMessage *new_message); GstMessage * gst_message_new_eos (GstObject *src); GstMessage * gst_message_new_error (GstObject *src, GError *error, @@ -96,12 +95,12 @@ const GstBufferingMode mode
    , gint avg_in, gint avg_out, - gint64 buffering_left); + gint64 buffering_left); void gst_message_parse_buffering_stats (GstMessage *message, GstBufferingMode *mode, gint *avg_in, gint *avg_out, - gint64 *buffering_left); + gint64 *buffering_left); GstMessage * gst_message_new_state_changed (GstObject *src, GstState oldstate, GstState newstate, @@ -113,19 +112,19 @@ const GstMessage * gst_message_new_state_dirty (GstObject *src); GstMessage * gst_message_new_step_done (GstObject *src, GstFormat format, - guint64 amount, + guint64 amount, gdouble rate, gboolean flush, gboolean intermediate, - guint64 duration, + guint64 duration, gboolean eos); void gst_message_parse_step_done (GstMessage *message, GstFormat *format, - guint64 *amount, + guint64 *amount, gdouble *rate, gboolean *flush, gboolean *intermediate, - guint64 *duration, + guint64 *duration, gboolean *eos); GstMessage * gst_message_new_clock_provide (GstObject *src, GstClock *clock, @@ -150,22 +149,22 @@ const GstStructure *structure
    ); GstMessage * gst_message_new_segment_start (GstObject *src, GstFormat format, - gint64 position); + gint64 position); void gst_message_parse_segment_start (GstMessage *message, GstFormat *format, - gint64 *position); + gint64 *position); GstMessage * gst_message_new_segment_done (GstObject *src, GstFormat format, - gint64 position); + gint64 position); void gst_message_parse_segment_done (GstMessage *message, GstFormat *format, - gint64 *position); + gint64 *position); GstMessage * gst_message_new_duration (GstObject *src, GstFormat format, - gint64 duration); + gint64 duration); void gst_message_parse_duration (GstMessage *message, GstFormat *format, - gint64 *duration); + gint64 *duration); GstMessage * gst_message_new_latency (GstObject *src); GstMessage * gst_message_new_async_start (GstObject *src); GstMessage * gst_message_new_async_done (GstObject *src, @@ -175,45 +174,51 @@ const GstMessage * gst_message_new_step_start (GstObject *src, gboolean active, GstFormat format, - guint64 amount, + guint64 amount, gdouble rate, gboolean flush, gboolean intermediate); void gst_message_parse_step_start (GstMessage *message, gboolean *active, GstFormat *format, - guint64 *amount, + guint64 *amount, gdouble *rate, gboolean *flush, gboolean *intermediate); GstMessage * gst_message_new_qos (GstObject *src, gboolean live, - guint64 running_time, - guint64 stream_time, - guint64 timestamp, - guint64 duration); + guint64 running_time, + guint64 stream_time, + guint64 timestamp, + guint64 duration); void gst_message_set_qos_values (GstMessage *message, - gint64 jitter, + gint64 jitter, gdouble proportion, gint quality); void gst_message_set_qos_stats (GstMessage *message, GstFormat format, - guint64 processed, - guint64 dropped); + guint64 processed, + guint64 dropped); void gst_message_parse_qos (GstMessage *message, gboolean *live, - guint64 *running_time, - guint64 *stream_time, - guint64 *timestamp, - guint64 *duration); + guint64 *running_time, + guint64 *stream_time, + guint64 *timestamp, + guint64 *duration); void gst_message_parse_qos_values (GstMessage *message, - gint64 *jitter, + gint64 *jitter, gdouble *proportion, gint *quality); void gst_message_parse_qos_stats (GstMessage *message, GstFormat *format, - guint64 *processed, - guint64 *dropped); + guint64 *processed, + guint64 *dropped); +GstMessage * gst_message_new_toc (GstObject *src, + GstToc *toc, + gboolean updated); +void gst_message_parse_toc (GstMessage *message, + GstToc **toc, + gboolean *updated); enum GstStructureChangeType; GstMessage * gst_message_new_structure_change (GstObject *src, GstStructureChangeType type, @@ -268,10 +273,18 @@ The basic use pattern of posting a message on a -

    Example 11. Posting a GstMessage

    -
    -   gst_bus_post (bus, gst_message_new_eos());
    -  
    +

    Example 10. Posting a GstMessage

    +
    + + + + + + + +
    1
    gst_bus_post (bus, gst_message_new_eos());
    +
    +


    @@ -288,12 +301,12 @@ Last reviewed on 2005-11-09 (0.9.4)

    struct GstMessage

    struct GstMessage {
    -  GstMiniObject mini_object;
    +  GstMiniObject   mini_object;
     
    -  GstMessageType type;
    -  guint64 timestamp;
    -  GstObject *src;
    -  guint32 seqnum;
    +  GstMessageType  type;
    +  guint64         timestamp;
    +  GstObject      *src;
    +  guint32         seqnum;
     };
     

    @@ -311,7 +324,7 @@ A GstMessageType of the message -

    guint64 timestamp;

    +

    guint64 timestamp;

    the timestamp of the message @@ -319,7 +332,7 @@ A guint32 seqnum;

    +

    guint32 seqnum;

    the sequence number of the message @@ -356,6 +369,7 @@ A GST_MESSAGE_TOC

    +A new table of contents (TOC) was found or previously found TOC +was updated. Since: 0.10.37 + + +

    GST_MESSAGE_ANY

    mask for all of the above messages. @@ -648,15 +668,6 @@ Get a constant string representation of the -

    GST_MESSAGE_TRACE_NAME

    -
    #define GST_MESSAGE_TRACE_NAME  "GstMessage"
    -
    -

    -The name used for memory allocation tracing -

    -
    -
    -

    gst_message_type_to_quark ()

    GQuark              gst_message_type_to_quark           (GstMessageType type);

    @@ -812,7 +823,7 @@ MT safe. [

    gst_message_get_seqnum ()

    -
    guint32             gst_message_get_seqnum              (GstMessage *message);
    +
    guint32             gst_message_get_seqnum              (GstMessage *message);

    Retrieve the sequence number of a message.

    @@ -849,7 +860,7 @@ MT safe.

    gst_message_set_seqnum ()

    void                gst_message_set_seqnum              (GstMessage *message,
    -                                                         guint32 seqnum);
    + guint32 seqnum);

    Set the sequence number of a message.

    @@ -925,8 +936,9 @@ modify the seqnum and timestamp fields.

    -

    gst_message_replace()

    -
    #define             gst_message_replace(old_message,new_message)
    +

    gst_message_replace ()

    +
    gboolean            gst_message_replace                 (GstMessage **old_message,
    +                                                         GstMessage *new_message);

    Modifies a pointer to a GstMessage to point to a different GstMessage. The modification is done atomically (so this is useful for ensuring thread safety @@ -951,6 +963,11 @@ to be replaced. [old_message. [allow-none][transfer none] + +

    Returns :

    +TRUE if new_message was different from old_message + +
    @@ -1031,25 +1048,49 @@ in the output arguments are copies; the caller must free them when done.

    Typical usage of this function might be:

    -
    -  ...
    -  switch (GST_MESSAGE_TYPE (msg)) {
    -    case GST_MESSAGE_ERROR: {
    -      GError *err = NULL;
    -      gchar *dbg_info = NULL;
    -      
    -      gst_message_parse_error (msg, &err, &dbg_info);
    -      g_printerr ("ERROR from element %s: %s\n",
    -          GST_OBJECT_NAME (msg->src), err->message);
    -      g_printerr ("Debugging info: %s\n", (dbg_info) ? dbg_info : "none");
    -      g_error_free (err);
    -      g_free (dbg_info);
    -      break;
    -    }
    -    ...
    -  }
    -  ...
    -
    +
    + + + + + + + +
    1
    +2
    +3
    +4
    +5
    +6
    +7
    +8
    +9
    +10
    +11
    +12
    +13
    +14
    +15
    +16
    +17
    ...
    +switch (GST_MESSAGE_TYPE (msg)) {
    +  case GST_MESSAGE_ERROR: {
    +    GError *err = NULL;
    +    gchar *dbg_info = NULL;
    +    
    +    gst_message_parse_error (msg, &err, &dbg_info);
    +    g_printerr ("ERROR from element %s: %s\n",
    +        GST_OBJECT_NAME (msg->src), err->message);
    +    g_printerr ("Debugging info: %s\n", (dbg_info) ? dbg_info : "none");
    +    g_error_free (err);
    +    g_free (dbg_info);
    +    break;
    +  }
    +  ...
    +}
    +...
    +
    +

    @@ -1263,22 +1304,43 @@ output argument is a copy; the caller must free it when done.

    Typical usage of this function might be:

    -
    -  ...
    -  switch (GST_MESSAGE_TYPE (msg)) {
    -    case GST_MESSAGE_TAG: {
    -      GstTagList *tags = NULL;
    -      
    -      gst_message_parse_tag (msg, &tags);
    -      g_print ("Got tags from element %s\n", GST_OBJECT_NAME (msg->src));
    -      handle_tags (tags);
    -      gst_tag_list_free (tags);
    -      break;
    -    }
    -    ...
    -  }
    -  ...
    -
    +
    + + + + + + + +
    1
    +2
    +3
    +4
    +5
    +6
    +7
    +8
    +9
    +10
    +11
    +12
    +13
    +14
    ...
    +switch (GST_MESSAGE_TYPE (msg)) {
    +  case GST_MESSAGE_TAG: {
    +    GstTagList *tags = NULL;
    +    
    +    gst_message_parse_tag (msg, &tags);
    +    g_print ("Got tags from element %s\n", GST_OBJECT_NAME (msg->src));
    +    handle_tags (tags);
    +    gst_tag_list_free (tags);
    +    break;
    +  }
    +  ...
    +}
    +...
    +
    +

    @@ -1376,7 +1438,7 @@ MT safe. GstBufferingMode mode, gint avg_in, gint avg_out, - gint64 buffering_left); + gint64 buffering_left);

    Configures the buffering stats values in message.

    @@ -1414,7 +1476,7 @@ Configures the buffering stats values in messageGstBufferingMode *mode, gint *avg_in, gint *avg_out, - gint64 *buffering_left); + gint64 *buffering_left);

    Extracts the buffering stats values from message.

    @@ -1503,23 +1565,45 @@ Extracts the old and new states from the GstMessage.

    Typical usage of this function might be:

    -
    -  ...
    -  switch (GST_MESSAGE_TYPE (msg)) {
    -    case GST_MESSAGE_STATE_CHANGED: {
    -      GstState old_state, new_state;
    -      
    -      gst_message_parse_state_changed (msg, &old_state, &new_state, NULL);
    -      g_print ("Element %s changed state from %s to %s.\n",
    -          GST_OBJECT_NAME (msg->src),
    -          gst_element_state_get_name (old_state),
    -          gst_element_state_get_name (new_state));
    -      break;
    -    }
    -    ...
    -  }
    -  ...
    -
    +
    + + + + + + + +
    1
    +2
    +3
    +4
    +5
    +6
    +7
    +8
    +9
    +10
    +11
    +12
    +13
    +14
    +15
    ...
    +switch (GST_MESSAGE_TYPE (msg)) {
    +  case GST_MESSAGE_STATE_CHANGED: {
    +    GstState old_state, new_state;
    +    
    +    gst_message_parse_state_changed (msg, &old_state, &new_state, NULL);
    +    g_print ("Element %s changed state from %s to %s.\n",
    +        GST_OBJECT_NAME (msg->src),
    +        gst_element_state_get_name (old_state),
    +        gst_element_state_get_name (new_state));
    +    break;
    +  }
    +  ...
    +}
    +...
    +
    +

    @@ -1581,11 +1665,11 @@ MT safe. [

    gst_message_new_step_done ()

    GstMessage *        gst_message_new_step_done           (GstObject *src,
                                                              GstFormat format,
    -                                                         guint64 amount,
    +                                                         guint64 amount,
                                                              gdouble rate,
                                                              gboolean flush,
                                                              gboolean intermediate,
    -                                                         guint64 duration,
    +                                                         guint64 duration,
                                                              gboolean eos);

    This message is posted by elements when they complete a part, when intermediate set @@ -1646,11 +1730,11 @@ MT safe. [

    gst_message_parse_step_done ()

    void                gst_message_parse_step_done         (GstMessage *message,
                                                              GstFormat *format,
    -                                                         guint64 *amount,
    +                                                         guint64 *amount,
                                                              gdouble *rate,
                                                              gboolean *flush,
                                                              gboolean *intermediate,
    -                                                         guint64 *duration,
    +                                                         guint64 *duration,
                                                              gboolean *eos);

    Extract the values the step_done message. @@ -2009,7 +2093,7 @@ MT safe. [

    gst_message_new_segment_start ()

    GstMessage *        gst_message_new_segment_start       (GstObject *src,
                                                              GstFormat format,
    -                                                         gint64 position);
    + gint64 position);

    Create a new segment message. This message is posted by elements that start playback of a segment as a result of a segment seek. This message @@ -2046,7 +2130,7 @@ MT safe. [

    gst_message_parse_segment_start ()

    void                gst_message_parse_segment_start     (GstMessage *message,
                                                              GstFormat *format,
    -                                                         gint64 *position);
    + gint64 *position);

    Extracts the position and format from the segment start message.

    @@ -2078,7 +2162,7 @@ MT safe.

    gst_message_new_segment_done ()

    GstMessage *        gst_message_new_segment_done        (GstObject *src,
                                                              GstFormat format,
    -                                                         gint64 position);
    + gint64 position);

    Create a new segment done message. This message is posted by elements that finish playback of a segment as a result of a segment seek. This message @@ -2115,7 +2199,7 @@ MT safe. [

    gst_message_parse_segment_done ()

    void                gst_message_parse_segment_done      (GstMessage *message,
                                                              GstFormat *format,
    -                                                         gint64 *position);
    + gint64 *position);

    Extracts the position and format from the segment start message.

    @@ -2147,7 +2231,7 @@ MT safe.

    gst_message_new_duration ()

    GstMessage *        gst_message_new_duration            (GstObject *src,
                                                              GstFormat format,
    -                                                         gint64 duration);
    + gint64 duration);

    Create a new duration message. This message is posted by elements that know the duration of a stream in a specific format. This message @@ -2187,7 +2271,7 @@ MT safe. [

    gst_message_parse_duration ()

    void                gst_message_parse_duration          (GstMessage *message,
                                                              GstFormat *format,
    -                                                         gint64 *duration);
    + gint64 *duration);

    Extracts the duration and format from the duration message. The duration might be GST_CLOCK_TIME_NONE, which indicates that the duration has @@ -2330,7 +2414,7 @@ MT safe.

    GstMessage *        gst_message_new_step_start          (GstObject *src,
                                                              gboolean active,
                                                              GstFormat format,
    -                                                         guint64 amount,
    +                                                         guint64 amount,
                                                              gdouble rate,
                                                              gboolean flush,
                                                              gboolean intermediate);
    @@ -2396,7 +2480,7 @@ MT safe. [void gst_message_parse_step_start (GstMessage *message, gboolean *active, GstFormat *format, - guint64 *amount, + guint64 *amount, gdouble *rate, gboolean *flush, gboolean *intermediate); @@ -2452,10 +2536,10 @@ MT safe.

    gst_message_new_qos ()

    GstMessage *        gst_message_new_qos                 (GstObject *src,
                                                              gboolean live,
    -                                                         guint64 running_time,
    -                                                         guint64 stream_time,
    -                                                         guint64 timestamp,
    -                                                         guint64 duration);
    + guint64 running_time, + guint64 stream_time, + guint64 timestamp, + guint64 duration);

    A QOS message is posted on the bus whenever an element decides to drop a buffer because of QoS reasons or whenever it changes its processing strategy @@ -2514,7 +2598,7 @@ MT safe. [

    gst_message_set_qos_values ()

    void                gst_message_set_qos_values          (GstMessage *message,
    -                                                         gint64 jitter,
    +                                                         gint64 jitter,
                                                              gdouble proportion,
                                                              gint quality);

    @@ -2553,8 +2637,8 @@ quality level of the element. The default maximum quality is 1000000.

    gst_message_set_qos_stats ()

    void                gst_message_set_qos_stats           (GstMessage *message,
                                                              GstFormat format,
    -                                                         guint64 processed,
    -                                                         guint64 dropped);
    + guint64 processed, + guint64 dropped);

    Set the QoS stats representing the history of the current continuous pipeline playback period. @@ -2598,10 +2682,10 @@ or a flushing operation.

    gst_message_parse_qos ()

    void                gst_message_parse_qos               (GstMessage *message,
                                                              gboolean *live,
    -                                                         guint64 *running_time,
    -                                                         guint64 *stream_time,
    -                                                         guint64 *timestamp,
    -                                                         guint64 *duration);
    + guint64 *running_time, + guint64 *stream_time, + guint64 *timestamp, + guint64 *duration);

    Extract the timestamps and live status from the QoS message.

    @@ -2657,7 +2741,7 @@ generated the message. [

    gst_message_parse_qos_values ()

    void                gst_message_parse_qos_values        (GstMessage *message,
    -                                                         gint64 *jitter,
    +                                                         gint64 *jitter,
                                                              gdouble *proportion,
                                                              gint *quality);

    @@ -2701,8 +2785,8 @@ maximum quality is 1000000. [

    gst_message_parse_qos_stats ()

    void                gst_message_parse_qos_stats         (GstMessage *message,
                                                              GstFormat *format,
    -                                                         guint64 *processed,
    -                                                         guint64 *dropped);
    + guint64 *processed, + guint64 *dropped);

    Extract the QoS stats representing the history of the current continuous pipeline playback period. @@ -2747,6 +2831,76 @@ state change to READY or a flushing operation. [


    +

    gst_message_new_toc ()

    +
    GstMessage *        gst_message_new_toc                 (GstObject *src,
    +                                                         GstToc *toc,
    +                                                         gboolean updated);
    +

    +Create a new TOC message. The message is posted by elements +that discovered or updated a TOC. +

    +
    ++ + + + + + + + + + + + + + + + + + +

    src :

    the object originating the message.

    toc :

    +GstToc structure for the message.

    updated :

    whether TOC was updated or not.

    Returns :

    a new TOC message. +MT safe.
    +

    Since 0.10.37

    +
    +
    +
    +

    gst_message_parse_toc ()

    +
    void                gst_message_parse_toc               (GstMessage *message,
    +                                                         GstToc **toc,
    +                                                         gboolean *updated);
    +

    +Extract the TOC from the GstMessage. The TOC returned in the +output argument is a copy; the caller must free it with +gst_toc_free() when done. +

    +

    +MT safe. +

    +
    ++ + + + + + + + + + + + + + +

    message :

    a valid GstMessage of type GST_MESSAGE_TOC.

    toc :

    return location for the TOC. [out] +

    updated :

    return location for the updated flag. [out] +
    +

    Since 0.10.37

    +
    +
    +

    enum GstStructureChangeType

    typedef enum {
       GST_STRUCTURE_CHANGE_TYPE_PAD_LINK   = 0,
    diff --git a/docs/gst/html/gstreamer-GstMeta.html b/docs/gst/html/gstreamer-GstMeta.html
    index 0ce4128..15edc03 100644
    --- a/docs/gst/html/gstreamer-GstMeta.html
    +++ b/docs/gst/html/gstreamer-GstMeta.html
    @@ -3,8 +3,8 @@
     
     
     GstMeta
    -
    -
    +
    +
     
     
     
    @@ -17,7 +17,7 @@
     Prev
     Up
     Home
    -GStreamer 0.11 Core Reference Manual
    +GStreamer 1.0 Core Reference Manual
     Next
     
     
    @@ -41,28 +41,37 @@
     #include <gst/gst.h>
     
     struct              GstMeta;
    +enum                GstMetaFlags;
    +#define             GST_META_FLAGS                      (meta)
    +#define             GST_META_FLAG_IS_SET                (meta,
    +                                                         flag)
    +#define             GST_META_FLAG_SET                   (meta,
    +                                                         flag)
    +#define             GST_META_FLAG_UNSET                 (meta,
    +                                                         flag)
     struct              GstMetaInfo;
    -#define             GST_META_TRACE_NAME
     gboolean            (*GstMetaInitFunction)              (GstMeta *meta,
                                                              gpointer params,
                                                              GstBuffer *buffer);
     void                (*GstMetaFreeFunction)              (GstMeta *meta,
                                                              GstBuffer *buffer);
    -void                (*GstMetaCopyFunction)              (GstBuffer *dest,
    -                                                         GstMeta *meta,
    -                                                         GstBuffer *buffer,
    -                                                         gsize offset,
    -                                                         gsize size);
    -void                (*GstMetaTransformFunction)         (GstBuffer *transbuf,
    +gboolean            (*GstMetaTransformFunction)         (GstBuffer *transbuf,
                                                              GstMeta *meta,
                                                              GstBuffer *buffer,
    +                                                         GQuark type,
                                                              gpointer data);
    -const GstMetaInfo * gst_meta_register                   (const gchar *api,
    +                    GstMetaTransformCopy;
    +#define             GST_META_TRANSFORM_IS_COPY          (type)
    +GType               gst_meta_api_type_register          (const gchar *api,
    +                                                         const gchar **tags);
    +gboolean            gst_meta_api_type_has_tag           (GType api,
    +                                                         GQuark tag);
    +#define             GST_META_TAG_MEMORY
    +const GstMetaInfo * gst_meta_register                   (GType api,
                                                              const gchar *impl,
    -                                                         gsize size,
    +                                                         gsize size,
                                                              GstMetaInitFunction init_func,
                                                              GstMetaFreeFunction free_func,
    -                                                         GstMetaCopyFunction copy_func,
                                                              GstMetaTransformFunction transform_func);
     const GstMetaInfo * gst_meta_get_info                   (const gchar *impl);
     
    @@ -70,7 +79,32 @@ const

    Description

    -Last reviewed on December 17th, 2009 (0.10.26) +The GstMeta structure should be included as the first member of a GstBuffer +metadata structure. The structure defines the API of the metadata and should +be accessible to all elements using the metadata. +

    +

    +A metadata API is registered with gst_meta_api_type_register() which takes a +name for the metadata API and some tags associated with the metadata. +With gst_meta_api_type_has_tag() one can check if a certain metadata API +contains a given tag. +

    +

    +Multiple implementations of a metadata API can be registered. +To implement a metadata API, gst_meta_register() should be used. This +function takes all parameters needed to create, free and transform metadata +along with the size of the metadata. The function returns a GstMetaInfo +structure that contains the information for the implementation of the API. +

    +

    +A specific implementation can be retrieved by name with gst_meta_get_info(). +

    +

    +See GstBuffer for how the metadata can be added, retrieved and removed from +buffers. +

    +

    +Last reviewed on 2012-03-28 (0.11.3)

    Description

    -GstQuery functions are used to register new query types to the gstreamer -core and use them. Queries can be performed on pads (gst_pad_query()) and elements (gst_element_query()). Please note that some queries might need a running pipeline to work. @@ -246,27 +287,47 @@ The following example shows how to query the duration of a pipeline:

    -

    Example 13. Query duration on a pipeline

    -
    - GstQuery *query;
    - gboolean res;
    - query = gst_query_new_duration (GST_FORMAT_TIME);
    - res = gst_element_query (pipeline, query);
    - if (res) {
    -   gint64 duration;
    -   gst_query_parse_duration (query, NULL, &duration);
    -   g_print ("duration = %"GST_TIME_FORMAT, GST_TIME_ARGS (duration));
    - }
    - else {
    -   g_print ("duration query failed...");
    - }
    - gst_query_unref (query);
    - 
    +

    Example 12. Query duration on a pipeline

    +
    + + + + + + + +
    1
    +2
    +3
    +4
    +5
    +6
    +7
    +8
    +9
    +10
    +11
    +12
    +13
    GstQuery *query;
    +gboolean res;
    +query = gst_query_new_duration (GST_FORMAT_TIME);
    +res = gst_element_query (pipeline, query);
    +if (res) {
    +  gint64 duration;
    +  gst_query_parse_duration (query, NULL, &duration);
    +  g_print ("duration = %"GST_TIME_FORMAT, GST_TIME_ARGS (duration));
    +}
    +else {
    +  g_print ("duration query failed...");
    +}
    +gst_query_unref (query);
    +
    +


    -Last reviewed on 2006-02-14 (0.10.4) +Last reviewed on 2012-03-29 (0.11.3)

    @@ -299,23 +360,93 @@ The +

    enum GstQueryTypeFlags

    +
    typedef enum {
    +  GST_QUERY_TYPE_UPSTREAM       = 1 << 0,
    +  GST_QUERY_TYPE_DOWNSTREAM     = 1 << 1,
    +  GST_QUERY_TYPE_SERIALIZED     = 1 << 2
    +} GstQueryTypeFlags;
    +
    +

    +GstQueryTypeFlags indicate the aspects of the different GstQueryType +values. You can get the type flags of a GstQueryType with the +gst_query_type_get_flags() function. +

    +
    ++ + + + + + + + + + + + + + +

    GST_QUERY_TYPE_UPSTREAM

    Set if the query can travel upstream. +

    GST_QUERY_TYPE_DOWNSTREAM

    Set if the query can travel downstream. +

    GST_QUERY_TYPE_SERIALIZED

    Set if the query should be serialized with data + flow. +
    +
    +
    +
    +

    GST_QUERY_TYPE_BOTH

    +
    #define             GST_QUERY_TYPE_BOTH
    +

    +The same thing as GST_QUERY_TYPE_UPSTREAM | GST_QUERY_TYPE_DOWNSTREAM. +

    +
    +
    +
    +

    GST_QUERY_MAKE_TYPE()

    +
    #define             GST_QUERY_MAKE_TYPE(num,flags)
    +

    +when making custom query types, use this macro with the num and +the given flags +

    +
    ++ + + + + + + + + + +

    num :

    the query number to create

    flags :

    the query flags
    +
    +
    +

    enum GstQueryType

    typedef enum {
    -  GST_QUERY_NONE = 0,
    -  GST_QUERY_POSITION,
    -  GST_QUERY_DURATION,
    -  GST_QUERY_LATENCY,
    -  GST_QUERY_JITTER,     /* not in draft-query, necessary? */
    -  GST_QUERY_RATE,
    -  GST_QUERY_SEEKING,
    -  GST_QUERY_SEGMENT,
    -  GST_QUERY_CONVERT,
    -  GST_QUERY_FORMATS,
    -  GST_QUERY_BUFFERING,
    -  GST_QUERY_CUSTOM,
    -  GST_QUERY_URI,
    -  GST_QUERY_ALLOCATION,
    -  GST_QUERY_SCHEDULING
    +  GST_QUERY_UNKNOWN      = GST_QUERY_MAKE_TYPE (0, 0),
    +  GST_QUERY_POSITION     = GST_QUERY_MAKE_TYPE (10, FLAG(BOTH)),
    +  GST_QUERY_DURATION     = GST_QUERY_MAKE_TYPE (20, FLAG(BOTH)),
    +  GST_QUERY_LATENCY      = GST_QUERY_MAKE_TYPE (30, FLAG(BOTH)),
    +  GST_QUERY_JITTER       = GST_QUERY_MAKE_TYPE (40, FLAG(BOTH)),
    +  GST_QUERY_RATE         = GST_QUERY_MAKE_TYPE (50, FLAG(BOTH)),
    +  GST_QUERY_SEEKING      = GST_QUERY_MAKE_TYPE (60, FLAG(BOTH)),
    +  GST_QUERY_SEGMENT      = GST_QUERY_MAKE_TYPE (70, FLAG(BOTH)),
    +  GST_QUERY_CONVERT      = GST_QUERY_MAKE_TYPE (80, FLAG(BOTH)),
    +  GST_QUERY_FORMATS      = GST_QUERY_MAKE_TYPE (90, FLAG(BOTH)),
    +  GST_QUERY_BUFFERING    = GST_QUERY_MAKE_TYPE (110, FLAG(BOTH)),
    +  GST_QUERY_CUSTOM       = GST_QUERY_MAKE_TYPE (120, FLAG(BOTH)),
    +  GST_QUERY_URI          = GST_QUERY_MAKE_TYPE (130, FLAG(BOTH)),
    +  GST_QUERY_ALLOCATION   = GST_QUERY_MAKE_TYPE (140, FLAG(DOWNSTREAM) | FLAG(SERIALIZED)),
    +  GST_QUERY_SCHEDULING   = GST_QUERY_MAKE_TYPE (150, FLAG(UPSTREAM)),
    +  GST_QUERY_ACCEPT_CAPS  = GST_QUERY_MAKE_TYPE (160, FLAG(BOTH)),
    +  GST_QUERY_CAPS         = GST_QUERY_MAKE_TYPE (170, FLAG(BOTH)),
    +  GST_QUERY_DRAIN        = GST_QUERY_MAKE_TYPE (180, FLAG(DOWNSTREAM) | FLAG(SERIALIZED)),
    +  GST_QUERY_TOC          = GST_QUERY_MAKE_TYPE (190, FLAG(BOTH))
     } GstQueryType;
     

    @@ -325,8 +456,8 @@ Standard predefined Query types -

    GST_QUERY_NONE

    -invalid query type +

    GST_QUERY_UNKNOWN

    +unknown query type @@ -401,16 +532,37 @@ Standard predefined Query types the scheduling properties + +

    GST_QUERY_ACCEPT_CAPS

    +the accept caps query + + + +

    GST_QUERY_CAPS

    +the caps query + + + +

    GST_QUERY_DRAIN

    +wait till all serialized data is consumed downstream + + + +

    GST_QUERY_TOC

    +query the full table of contents (TOC) with the marker +for an entry which can be used to extend received TOC. Since 0.10.37. + +
    @@ -78,6 +112,7 @@ Last reviewed on December 17th, 2009 (0.10.26)

    struct GstMeta

    struct GstMeta {
    +  GstMetaFlags       flags;
       const GstMetaInfo *info;
     };
     
    @@ -87,24 +122,152 @@ as the first member of their structure.

    - + + + + + + + + +

    GstMetaFlags flags;

    extra flags for the metadata

    const GstMetaInfo *info;

    pointer to the GstMetaInfo
    +
    +
    +
    +

    enum GstMetaFlags

    +
    typedef enum {
    +  GST_META_FLAG_NONE        = 0,
    +  GST_META_FLAG_READONLY    = (1 << 0),
    +  GST_META_FLAG_POOLED      = (1 << 1),
    +
    +  GST_META_FLAG_LAST        = (1 << 16)
    +} GstMetaFlags;
    +
    +

    +Extra metadata flags. +

    +
    ++ + + + + + + + + + + + + + + + + + +

    GST_META_FLAG_NONE

    no flags +

    GST_META_FLAG_READONLY

    metadata should not be modified +

    GST_META_FLAG_POOLED

    metadata is managed by a bufferpool and should not + be removed +

    GST_META_FLAG_LAST

    additional flags can be added starting from this flag. +
    +
    +
    +
    +

    GST_META_FLAGS()

    +
    #define GST_META_FLAGS(meta)  (GST_META_CAST (meta)->flags)
    +
    +

    +A flags word containing GstMetaFlags flags set on meta +

    +
    ++ + +

    meta :

    a GstMeta.

    +

    GST_META_FLAG_IS_SET()

    +
    #define GST_META_FLAG_IS_SET(meta,flag)        !!(GST_META_FLAGS (meta) & (flag))
    +
    +

    +Gives the status of a specific flag on a metadata. +

    +
    ++ + + + + + + + + + +

    meta :

    a GstMeta.

    flag :

    the GstMetaFlags to check.
    +
    +
    +
    +

    GST_META_FLAG_SET()

    +
    #define GST_META_FLAG_SET(meta,flag)           (GST_META_FLAGS (meta) |= (flag))
    +
    +

    +Sets a metadata flag on a metadata. +

    +
    ++ + + + + + + + + + +

    meta :

    a GstMeta.

    flag :

    the GstMetaFlags to set.
    +
    +
    +
    +

    GST_META_FLAG_UNSET()

    +
    #define GST_META_FLAG_UNSET(meta,flag)         (GST_META_FLAGS (meta) &= ~(flag))
    +
    +

    +Clears a metadata flag. +

    +
    ++ + + + + + + + + + +

    meta :

    a GstMeta.

    flag :

    the GstMetaFlags to clear.
    +
    +
    +

    struct GstMetaInfo

    struct GstMetaInfo {
    -  GQuark                     api;
    +  GType                      api;
       GType                      type;
       gsize                      size;
     
       GstMetaInitFunction        init_func;
       GstMetaFreeFunction        free_func;
    -  GstMetaCopyFunction        copy_func;
       GstMetaTransformFunction   transform_func;
     };
     
    @@ -116,7 +279,7 @@ structure. -

    GQuark api;

    +

    GType api;

    tag indentifying the metadata structure and api @@ -124,7 +287,7 @@ structure. type indentifying the implementor of the api -

    gsize size;

    +

    gsize size;

    size of the metadata @@ -136,10 +299,6 @@ structure. function for freeing the metadata -

    GstMetaCopyFunction copy_func;

    -function for copying the metadata - -

    GstMetaTransformFunction transform_func;

    function for transforming the metadata @@ -148,15 +307,6 @@ structure.

    -

    GST_META_TRACE_NAME

    -
    #define GST_META_TRACE_NAME           "GstMeta"
    -
    -

    -The name used for tracing memory allocations. -

    -
    -
    -

    GstMetaInitFunction ()

    gboolean            (*GstMetaInitFunction)              (GstMeta *meta,
                                                              gpointer params,
    @@ -210,28 +360,21 @@ Function called when meta is freed in 
     
    -

    GstMetaCopyFunction ()

    -
    void                (*GstMetaCopyFunction)              (GstBuffer *dest,
    -                                                         GstMeta *meta,
    -                                                         GstBuffer *buffer,
    -                                                         gsize offset,
    -                                                         gsize size);
    -
    -
    -

    GstMetaTransformFunction ()

    -
    void                (*GstMetaTransformFunction)         (GstBuffer *transbuf,
    +
    gboolean            (*GstMetaTransformFunction)         (GstBuffer *transbuf,
                                                              GstMeta *meta,
                                                              GstBuffer *buffer,
    +                                                         GQuark type,
                                                              gpointer data);

    Function called for each meta in buffer as a result of performing a -transformation on transbuf. Additional type specific transform data -is passed to the function. +transformation on transbuf. Additional type specific transform data +is passed to the function as data.

    -Implementations should check the type of the transform data and parse -additional type specific field that should be used to perform the transform. +Implementations should check the type of the transform and parse +additional type specific fields in data that should be used to update +the metadata on transbuf.

    @@ -252,29 +395,194 @@ additional type specific field that should be used to perform the transform. + + + + + + + + + +

    type :

    the transform type

    data :

    transform specific data.

    Returns :

    +TRUE if the transform could be performed
    +
    +
    +
    +

    GstMetaTransformCopy

    +
    typedef struct {
    +  gboolean region;
    +  gsize offset;
    +  gsize size;
    +} GstMetaTransformCopy;
    +
    +

    +Extra data passed to a "gst-copy" transform GstMetaTransformFunction. +

    +
    ++ + + + + + + + + + + + + + +

    gboolean region;

    +TRUE if only region is copied

    gsize offset;

    the offset to copy, 0 if region is FALSE, otherwise > 0

    gsize size;

    the size to copy, -1 or the buffer size when region is FALSE +
    +
    +
    +
    +

    GST_META_TRANSFORM_IS_COPY()

    +
    #define GST_META_TRANSFORM_IS_COPY(type) ((type) == _gst_meta_transform_copy)
    +
    +

    +Check if the transform type is a copy transform +

    +
    ++ + + + +

    type :

    a transform type
    +
    +
    +
    +

    gst_meta_api_type_register ()

    +
    GType               gst_meta_api_type_register          (const gchar *api,
    +                                                         const gchar **tags);
    +

    +Register and return a GType for the api and associate it with +tags. +

    +
    ++ + + + + + + + + + + + + + +

    api :

    an API to register

    tags :

    tags for api +

    Returns :

    a unique GType for api.
    +
    +
    +
    +

    gst_meta_api_type_has_tag ()

    +
    gboolean            gst_meta_api_type_has_tag           (GType api,
    +                                                         GQuark tag);
    +

    +Check if api was registered with tag. +

    +
    ++ + + + + + + + + + + + +

    api :

    an API

    tag :

    the tag to check

    Returns :

    +TRUE if api was registered with tag.

    +

    GST_META_TAG_MEMORY

    +
    #define GST_META_TAG_MEMORY (_gst_meta_tag_memory)
    +
    +

    +Metadata tagged with this tag depends on the particular memory +or buffer that it is on. +

    +
    +
    +

    gst_meta_register ()

    -
    const GstMetaInfo * gst_meta_register                   (const gchar *api,
    +
    const GstMetaInfo * gst_meta_register                   (GType api,
                                                              const gchar *impl,
    -                                                         gsize size,
    +                                                         gsize size,
                                                              GstMetaInitFunction init_func,
                                                              GstMetaFreeFunction free_func,
    -                                                         GstMetaCopyFunction copy_func,
                                                              GstMetaTransformFunction transform_func);
    +

    +Register a new GstMeta implementation. +

    +

    +The same info can be retrieved later with gst_meta_get_info() by using +impl as the key. +

    +
    ++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    api :

    the type of the GstMeta API

    impl :

    the name of the GstMeta implementation

    size :

    the size of the GstMeta structure

    init_func :

    a GstMetaInitFunction +

    free_func :

    a GstMetaFreeFunction +

    transform_func :

    a GstMetaTransformFunction +

    Returns :

    a GstMetaInfo that can be used to access metadata. [transfer none] +

    gst_meta_get_info ()

    const GstMetaInfo * gst_meta_get_info                   (const gchar *impl);

    -Lookup a previously registered meta info structure by its implementor name +Lookup a previously registered meta info structure by its implementation name impl.

    @@ -286,8 +594,9 @@ Lookup a previously registered meta info structure by its implementor name - +

    Returns :

    a GstMetaInfo with impl or NULL when no such metainfo -exists.a GstMetaInfo with impl, or NULL when no such +metainfo exists. [transfer none] +
    diff --git a/docs/gst/html/gstreamer-GstMiniObject.html b/docs/gst/html/gstreamer-GstMiniObject.html index be59c7f..3903994 100644 --- a/docs/gst/html/gstreamer-GstMiniObject.html +++ b/docs/gst/html/gstreamer-GstMiniObject.html @@ -3,8 +3,8 @@ GstMiniObject - - + + @@ -17,7 +17,7 @@ Prev Up Home -GStreamer 0.11 Core Reference Manual +GStreamer 1.0 Core Reference Manual Next @@ -62,7 +62,7 @@ enum void gst_mini_object_init (GstMiniObject *mini_object, GType type, - gsize size); + gsize size); GstMiniObject * gst_mini_object_copy (const GstMiniObject *mini_object); gboolean gst_mini_object_is_writable (const GstMiniObject *mini_object); GstMiniObject * gst_mini_object_make_writable (GstMiniObject *mini_object); @@ -84,13 +84,30 @@ enum

    Description

    -GstMiniObject is a baseclass like GObject, but has been stripped down of -features to be fast and small. -It offers sub-classing and ref-counting in the same way as GObject does. -It has no properties and no signal-support though. +GstMiniObject is a simple structure that can be used to implement refcounted +types.

    -Last reviewed on 2005-11-23 (0.9.5) +Subclasses will include GstMiniObject as the first member in their structure +and then call gst_mini_object_init() to initialize the GstMiniObject fields. +

    +

    +gst_mini_object_ref() and gst_mini_object_unref() increment and decrement the +refcount respectively. When the refcount of a mini-object reaches 0, the +dispose function is called first and when this returns TRUE, the free +function of the miniobject is called. +

    +

    +A copy can be made with gst_mini_object_copy(). +

    +

    +gst_mini_object_is_writable() will return TRUE when the refcount of the +object is exactly 1, meaning the current caller has the only reference to the +object. gst_mini_object_make_writable() will return a writable version of the +object, which might be a new copy when the refcount was not 1. +

    +

    +Last reviewed on 2012-03-28 (0.11.3)

    @@ -132,7 +149,7 @@ Get Value Func: g_value_get_boxed extra flags. -

    gsize size;

    +

    gsize size;

    the size of the structure @@ -265,6 +282,16 @@ its adress as hash-index or the like.

    GST_MINI_OBJECT_TYPE()

    #define GST_MINI_OBJECT_TYPE(obj)  (GST_MINI_OBJECT_CAST(obj)->type)
     
    +

    +This macro returns the type of the mini-object. +

    +
    ++ + + + +

    obj :

    MiniObject to return type for.

    @@ -403,13 +430,29 @@ Get the allocated size of obj.

    GST_DEFINE_MINI_OBJECT_TYPE()

    #define             GST_DEFINE_MINI_OBJECT_TYPE(TypeName,type_name)
    +

    +Define a new mini-object type with the given name +

    +
    ++ + + + + + + + + + +

    TypeName :

    name of the new type in CamelCase

    type_name :

    name of the new type

    gst_mini_object_init ()

    void                gst_mini_object_init                (GstMiniObject *mini_object,
                                                              GType type,
    -                                                         gsize size);
    + gsize size);

    Initializes a mini-object with the desired type and size.

    @@ -471,9 +514,8 @@ MT safe
    gboolean            gst_mini_object_is_writable         (const GstMiniObject *mini_object);

    Checks if a mini-object is writable. A mini-object is writable -if the reference count is one and the GST_MINI_OBJECT_FLAG_READONLY -flag is not set. Modification of a mini-object should only be -done after verifying that it is writable. +if the reference count is one. Modification of a mini-object should +only be done after verifying that it is writable.

    MT safe diff --git a/docs/gst/html/gstreamer-GstParamSpec.html b/docs/gst/html/gstreamer-GstParamSpec.html index 699a166..3716355 100644 --- a/docs/gst/html/gstreamer-GstParamSpec.html +++ b/docs/gst/html/gstreamer-GstParamSpec.html @@ -3,8 +3,8 @@ GstParamSpec - - + + @@ -17,7 +17,7 @@ Prev Up Home -GStreamer 0.11 Core Reference Manual +GStreamer 1.0 Core Reference Manual Next @@ -129,7 +129,7 @@ they can be changed when the element is in the READY or lower state.

    struct GstParamSpecFraction

    struct GstParamSpecFraction {
       GParamSpec    parent_instance;
    -  
    +
       gint          min_num, min_den;
       gint          max_num, max_den;
       gint          def_num, def_den;
    @@ -237,7 +237,8 @@ instance_init function.
     
     
     

    Returns :

    -a newly created parameter specification +a newly created parameter specification. [transfer full] +
    diff --git a/docs/gst/html/gstreamer-GstParse.html b/docs/gst/html/gstreamer-GstParse.html index 31374ed..15b4a03 100644 --- a/docs/gst/html/gstreamer-GstParse.html +++ b/docs/gst/html/gstreamer-GstParse.html @@ -3,8 +3,8 @@ GstParse - - + + @@ -17,7 +17,7 @@ Prev Up Home -GStreamer 0.11 Core Reference Manual +GStreamer 1.0 Core Reference Manual Next @@ -231,7 +231,7 @@ can try to play the pipeline.

    Returns :

    a new element on success, NULL on failure. If more than one toplevel element is specified by the pipeline_description, -all elements are put into a GstPipeline, which than is returned. [transfer full] +all elements are put into a GstPipeline, which than is returned. [transfer floating] @@ -396,7 +396,7 @@ for unlinked source or sink pads within the bin

    Returns :

    -a newly-created bin, or NULL if an error occurred. [transfer full] +a newly-created bin, or NULL if an error occurred. [transfer floating] diff --git a/docs/gst/html/gstreamer-GstPoll.html b/docs/gst/html/gstreamer-GstPoll.html index 3cdb187..1201175 100644 --- a/docs/gst/html/gstreamer-GstPoll.html +++ b/docs/gst/html/gstreamer-GstPoll.html @@ -3,8 +3,8 @@ GstPoll - - + + @@ -17,7 +17,7 @@ Prev Up Home -GStreamer 0.11 Core Reference Manual +GStreamer 1.0 Core Reference Manual Next @@ -87,19 +87,19 @@ A GstPoll keeps track of file descriptors much like fd_set (used with select()) or a struct pollfd array (used with poll()). Once created with gst_poll_new(), the set can be used to wait for file descriptors to be -readable and/or writeable. It is possible to make this wait be controlled +readable and/or writable. It is possible to make this wait be controlled by specifying TRUE for the controllable flag when creating the set (or later calling gst_poll_set_controllable()).

    New file descriptors are added to the set using gst_poll_add_fd(), and removed using gst_poll_remove_fd(). Controlling which file descriptors -should be waited for to become readable and/or writeable are done using +should be waited for to become readable and/or writable are done using gst_poll_fd_ctl_read() and gst_poll_fd_ctl_write().

    Use gst_poll_wait() to wait for the file descriptors to actually become -readable and/or writeable, or to timeout if no file descriptor is available +readable and/or writable, or to timeout if no file descriptor is available in time. The wait can be controlled by calling gst_poll_restart() and gst_poll_set_flushing().

    diff --git a/docs/gst/html/gstreamer-GstQuery.html b/docs/gst/html/gstreamer-GstQuery.html index 5d06b4f..9d9b816 100644 --- a/docs/gst/html/gstreamer-GstQuery.html +++ b/docs/gst/html/gstreamer-GstQuery.html @@ -3,8 +3,8 @@ GstQuery - - + + @@ -17,7 +17,7 @@ Prev Up Home -GStreamer 0.11 Core Reference Manual +GStreamer 1.0 Core Reference Manual Next @@ -31,8 +31,8 @@

    GstQuery

    -

    GstQuery — Dynamically register new query types. Provide functions - to create queries, and to set and parse values in them.

    +

    GstQuery — Provide functions to create queries, and to set and parse + values in them.

    @@ -42,57 +42,57 @@ #include <gst/gst.h> struct GstQuery; +enum GstQueryTypeFlags; +#define GST_QUERY_TYPE_BOTH +#define GST_QUERY_MAKE_TYPE (num, + flags) enum GstQueryType; +#define GST_QUERY_TYPE (query) #define GST_QUERY_TYPE_NAME (query) -struct GstQueryTypeDefinition; -const gchar * gst_query_type_get_name (GstQueryType query); -GQuark gst_query_type_to_quark (GstQueryType query); -GstQueryType gst_query_type_register (const gchar *nick, - const gchar *description); -GstQueryType gst_query_type_get_by_nick (const gchar *nick); -gboolean gst_query_types_contains (const GstQueryType *types, - GstQueryType type); -const GstQueryTypeDefinition * gst_query_type_get_details - (GstQueryType type); -GstIterator * gst_query_type_iterate_definitions (void); +#define GST_QUERY_IS_UPSTREAM (ev) +#define GST_QUERY_IS_DOWNSTREAM (ev) +#define GST_QUERY_IS_SERIALIZED (ev) +GstQueryTypeFlags gst_query_type_get_flags (GstQueryType type); +const gchar * gst_query_type_get_name (GstQueryType type); +GQuark gst_query_type_to_quark (GstQueryType type); GstQuery * gst_query_ref (GstQuery *q); void gst_query_unref (GstQuery *q); GstQuery * gst_query_copy (const GstQuery *q); #define gst_query_make_writable (q) #define gst_query_is_writable (q) -#define gst_query_replace (old_query, - new_query) +gboolean gst_query_replace (GstQuery **old_query, + GstQuery *new_query); GstStructure * gst_query_writable_structure (GstQuery *query); GstQuery * gst_query_new_custom (GstQueryType type, GstStructure *structure); const GstStructure * gst_query_get_structure (GstQuery *query); GstQuery * gst_query_new_convert (GstFormat src_format, - gint64 value, + gint64 value, GstFormat dest_format); void gst_query_set_convert (GstQuery *query, GstFormat src_format, - gint64 src_value, + gint64 src_value, GstFormat dest_format, - gint64 dest_value); + gint64 dest_value); void gst_query_parse_convert (GstQuery *query, GstFormat *src_format, - gint64 *src_value, + gint64 *src_value, GstFormat *dest_format, - gint64 *dest_value); + gint64 *dest_value); GstQuery * gst_query_new_position (GstFormat format); void gst_query_set_position (GstQuery *query, GstFormat format, - gint64 cur); + gint64 cur); void gst_query_parse_position (GstQuery *query, GstFormat *format, - gint64 *cur); + gint64 *cur); GstQuery * gst_query_new_duration (GstFormat format); void gst_query_set_duration (GstQuery *query, GstFormat format, - gint64 duration); + gint64 duration); void gst_query_parse_duration (GstQuery *query, GstFormat *format, - gint64 *duration); + gint64 *duration); GstQuery * gst_query_new_latency (void); void gst_query_parse_latency (GstQuery *query, gboolean *live, @@ -106,13 +106,13 @@ const void gst_query_set_seeking (GstQuery *query, GstFormat format, gboolean seekable, - gint64 segment_start, - gint64 segment_end); + gint64 segment_start, + gint64 segment_end); void gst_query_parse_seeking (GstQuery *query, GstFormat *format, gboolean *seekable, - gint64 *segment_start, - gint64 *segment_end); + gint64 *segment_start, + gint64 *segment_end); GstQuery * gst_query_new_formats (void); void gst_query_set_formats (GstQuery *query, gint n_formats, @@ -129,13 +129,30 @@ const void gst_query_set_segment (GstQuery *query, gdouble rate, GstFormat format, - gint64 start_value, - gint64 stop_value); + gint64 start_value, + gint64 stop_value); void gst_query_parse_segment (GstQuery *query, gdouble *rate, GstFormat *format, - gint64 *start_value, - gint64 *stop_value); + gint64 *start_value, + gint64 *stop_value); +GstQuery * gst_query_new_caps (GstCaps *filter); +void gst_query_parse_caps (GstQuery *query, + GstCaps **filter); +void gst_query_set_caps_result (GstQuery *query, + GstCaps *caps); +void gst_query_parse_caps_result (GstQuery *query, + GstCaps **caps); +void gst_query_intersect_caps_result (GstQuery *query, + GstCaps *filter, + GstCapsIntersectMode mode); +GstQuery * gst_query_new_accept_caps (GstCaps *caps); +void gst_query_parse_accept_caps (GstQuery *query, + GstCaps **caps); +void gst_query_set_accept_caps_result (GstQuery *query, + gboolean result); +void gst_query_parse_accept_caps_result (GstQuery *query, + gboolean *result); enum GstBufferingMode; GstQuery * gst_query_new_buffering (GstFormat format); void gst_query_set_buffering_percent (GstQuery *query, @@ -148,30 +165,30 @@ enum GstBufferingMode mode
    , gint avg_in, gint avg_out, - gint64 buffering_left); + gint64 buffering_left); void gst_query_parse_buffering_stats (GstQuery *query, GstBufferingMode *mode, gint *avg_in, gint *avg_out, - gint64 *buffering_left); + gint64 *buffering_left); void gst_query_set_buffering_range (GstQuery *query, GstFormat format, - gint64 start, - gint64 stop, - gint64 estimated_total); + gint64 start, + gint64 stop, + gint64 estimated_total); void gst_query_parse_buffering_range (GstQuery *query, GstFormat *format, - gint64 *start, - gint64 *stop, - gint64 *estimated_total); + gint64 *start, + gint64 *stop, + gint64 *estimated_total); gboolean gst_query_add_buffering_range (GstQuery *query, - gint64 start, - gint64 stop); + gint64 start, + gint64 stop); guint gst_query_get_n_buffering_ranges (GstQuery *query); gboolean gst_query_parse_nth_buffering_range (GstQuery *query, guint index, - gint64 *start, - gint64 *stop); + gint64 *start, + gint64 *stop); GstQuery * gst_query_new_uri (void); void gst_query_parse_uri (GstQuery *query, gchar **uri); @@ -182,55 +199,79 @@ enum void gst_query_parse_allocation (GstQuery *query, GstCaps **caps, gboolean *need_pool); -void gst_query_parse_allocation_params (GstQuery *query, +void gst_query_add_allocation_pool (GstQuery *query, + GstBufferPool *pool, + guint size, + guint min_buffers, + guint max_buffers); +guint gst_query_get_n_allocation_pools (GstQuery *query); +void gst_query_parse_nth_allocation_pool (GstQuery *query, + guint index, + GstBufferPool **pool, guint *size, guint *min_buffers, - guint *max_buffers, - guint *prefix, - guint *alignment, - GstBufferPool **pool); -const gchar * gst_query_parse_nth_allocation_memory - (GstQuery *query, - guint index); -const gchar * gst_query_parse_nth_allocation_meta (GstQuery *query, - guint index); -void gst_query_set_allocation_params (GstQuery *query, + guint *max_buffers); +void gst_query_set_nth_allocation_pool (GstQuery *query, + guint index, + GstBufferPool *pool, guint size, guint min_buffers, - guint max_buffers, - guint prefix, - guint alignment, - GstBufferPool *pool); -void gst_query_add_allocation_memory (GstQuery *query, - const gchar *alloc); + guint max_buffers); +void gst_query_add_allocation_param (GstQuery *query, + GstAllocator *allocator, + const GstAllocationParams *params); +guint gst_query_get_n_allocation_params (GstQuery *query); +void gst_query_parse_nth_allocation_param + (GstQuery *query, + guint index, + GstAllocator **allocator, + GstAllocationParams *params); +void gst_query_set_nth_allocation_param (GstQuery *query, + guint index, + GstAllocator *allocator, + const GstAllocationParams *params); void gst_query_add_allocation_meta (GstQuery *query, - const gchar *api); -gboolean gst_query_has_allocation_meta (GstQuery *query, - const gchar *api); -guint gst_query_get_n_allocation_memories (GstQuery *query); + GType api); guint gst_query_get_n_allocation_metas (GstQuery *query); +GType gst_query_parse_nth_allocation_meta (GstQuery *query, + guint index); +void gst_query_remove_nth_allocation_meta + (GstQuery *query, + guint index); +gboolean gst_query_has_allocation_meta (GstQuery *query, + GType api); +enum GstSchedulingFlags; GstQuery * gst_query_new_scheduling (void); void gst_query_parse_scheduling (GstQuery *query, - gboolean *pull_mode, - gboolean *random_access, - gboolean *sequential, + GstSchedulingFlags *flags, gint *minsize, gint *maxsize, gint *align); void gst_query_set_scheduling (GstQuery *query, - gboolean pull_mode, - gboolean random_access, - gboolean sequential, + GstSchedulingFlags flags, gint minsize, gint maxsize, gint align); +void gst_query_add_scheduling_mode (GstQuery *query, + GstPadMode mode); +guint gst_query_get_n_scheduling_modes (GstQuery *query); +GstPadMode gst_query_parse_nth_scheduling_mode (GstQuery *query, + guint index); +gboolean gst_query_has_scheduling_mode (GstQuery *query, + GstPadMode mode); +GstQuery * gst_query_new_drain (void); +GstQuery * gst_query_new_toc (void); +void gst_query_parse_toc (GstQuery *query, + GstToc **toc, + gchar **extend_uid); +void gst_query_set_toc (GstQuery *query, + GstToc *toc, + const gchar *extend_uid);

    -

    GST_QUERY_TYPE_NAME()

    -
    #define GST_QUERY_TYPE_NAME(query) (gst_query_type_get_name(GST_QUERY_TYPE(query)))
    +

    GST_QUERY_TYPE()

    +
    #define GST_QUERY_TYPE(query)  (((GstQuery*)(query))->type)
     

    -Get a constant string representation of the GstQueryType of the query. +Get the GstQueryType of the query.

    @@ -419,206 +571,138 @@ Get a constant string representation of the Since 0.10.4


    -

    struct GstQueryTypeDefinition

    -
    struct GstQueryTypeDefinition {
    -  GstQueryType   value;
    -  const gchar   *nick;
    -  const gchar   *description;
    -  GQuark         quark;
    -};
    +

    GST_QUERY_TYPE_NAME()

    +
    #define GST_QUERY_TYPE_NAME(query) (gst_query_type_get_name(GST_QUERY_TYPE(query)))
     

    -A Query Type definition +Get a constant string representation of the GstQueryType of the query.

    - - - - - - - - - - - - - - - - - - + + + +

    GstQueryType value;

    the unique id of the Query type

    const gchar *nick;

    a short nick

    const gchar *description;

    a longer description of the query type

    GQuark quark;

    the quark for the nick

    query :

    the query to query
    +

    Since 0.10.4


    -

    gst_query_type_get_name ()

    -
    const gchar *       gst_query_type_get_name             (GstQueryType query);
    +

    GST_QUERY_IS_UPSTREAM()

    +
    #define GST_QUERY_IS_UPSTREAM(ev)       !!(GST_QUERY_TYPE (ev) & GST_QUERY_TYPE_UPSTREAM)
    +

    -Get a printable name for the given query type. Do not modify or free. +Check if an query can travel upstream.

    - - - - - - - - - - + + + +

    query :

    the query type

    Returns :

    a reference to the static name of the query.

    ev :

    the query to query

    -

    gst_query_type_to_quark ()

    -
    GQuark              gst_query_type_to_quark             (GstQueryType query);
    +

    GST_QUERY_IS_DOWNSTREAM()

    +
    #define GST_QUERY_IS_DOWNSTREAM(ev)     !!(GST_QUERY_TYPE (ev) & GST_QUERY_TYPE_DOWNSTREAM)
    +

    -Get the unique quark for the given query type. +Check if an query can travel downstream.

    - - - - - - - - - - + + + +

    query :

    the query type

    Returns :

    the quark associated with the query type

    ev :

    the query to query

    -

    gst_query_type_register ()

    -
    GstQueryType        gst_query_type_register             (const gchar *nick,
    -                                                         const gchar *description);
    +

    GST_QUERY_IS_SERIALIZED()

    +
    #define GST_QUERY_IS_SERIALIZED(ev)     !!(GST_QUERY_TYPE (ev) & GST_QUERY_TYPE_SERIALIZED)
    +

    -Create a new GstQueryType based on the nick or return an -already registered query with that nick +Check if an query is serialized with the data stream.

    - - - - - - - - - - - - - - + + + +

    nick :

    The nick of the new query

    description :

    The description of the new query

    Returns :

    A new GstQueryType or an already registered query -with the same nick.

    ev :

    the query to query

    -

    gst_query_type_get_by_nick ()

    -
    GstQueryType        gst_query_type_get_by_nick          (const gchar *nick);
    +

    gst_query_type_get_flags ()

    +
    GstQueryTypeFlags   gst_query_type_get_flags            (GstQueryType type);

    -Get the query type registered with nick. +Gets the GstQueryTypeFlags associated with type.

    - - + + - +

    nick :

    The nick of the query

    type :

    a GstQueryType +

    Returns :

    The query registered with nick or GST_QUERY_NONE -if the query was not registered.a GstQueryTypeFlags.

    -

    gst_query_types_contains ()

    -
    gboolean            gst_query_types_contains            (const GstQueryType *types,
    -                                                         GstQueryType type);
    +

    gst_query_type_get_name ()

    +
    const gchar *       gst_query_type_get_name             (GstQueryType type);

    -See if the given GstQueryType is inside the types query types array. +Get a printable name for the given query type. Do not modify or free.

    - - - - - + - +

    types :

    The query array to search

    type :

    the GstQueryType to findthe query type

    Returns :

    TRUE if the type is found inside the arraya reference to the static name of the query.

    -

    gst_query_type_get_details ()

    -
    const GstQueryTypeDefinition * gst_query_type_get_details
    -                                                        (GstQueryType type);
    +

    gst_query_type_to_quark ()

    +
    GQuark              gst_query_type_to_quark             (GstQueryType type);

    -Get details about the given GstQueryType. +Get the unique quark for the given query type.

    - + - +

    type :

    a GstQueryType -the query type

    Returns :

    The GstQueryTypeDefinition for type or NULL on failure.the quark associated with the query type

    -

    gst_query_type_iterate_definitions ()

    -
    GstIterator *       gst_query_type_iterate_definitions  (void);
    -

    -Get a GstIterator of all the registered query types. The definitions -iterated over are read only. -

    -

    -Free-function: gst_iterator_free -

    -
    -- - - - -

    Returns :

    a GstIterator of GstQueryTypeDefinition. [transfer full] -
    -
    -
    -

    gst_query_ref ()

    GstQuery *          gst_query_ref                       (GstQuery *q);

    @@ -722,8 +806,9 @@ Tests if you can safely write data into a query's structure.


    -

    gst_query_replace()

    -
    #define             gst_query_replace(old_query,new_query)
    +

    gst_query_replace ()

    +
    gboolean            gst_query_replace                   (GstQuery **old_query,
    +                                                         GstQuery *new_query);

    Modifies a pointer to a GstQuery to point to a different GstQuery. The modification is done atomically (so this is useful for ensuring thread safety @@ -748,6 +833,11 @@ to be replaced. [old_query. [allow-none][transfer none] + +

    Returns :

    +TRUE if new_query was different from old_query + +
    @@ -756,7 +846,8 @@ replace the query pointed to by old_query

    gst_query_writable_structure ()

    GstStructure *      gst_query_writable_structure        (GstQuery *query);

    -Get the structure of a query. +Get the structure of a query. This method should be called with a writable +query so that the returned structure is guranteed to be writable.

    @@ -836,7 +927,7 @@ is unreffed. [

    gst_query_new_convert ()

    GstQuery *          gst_query_new_convert               (GstFormat src_format,
    -                                                         gint64 value,
    +                                                         gint64 value,
                                                              GstFormat dest_format);

    Constructs a new convert query object. Use gst_query_unref() @@ -875,9 +966,9 @@ Free-function: gst_query_unref

    gst_query_set_convert ()

    void                gst_query_set_convert               (GstQuery *query,
                                                              GstFormat src_format,
    -                                                         gint64 src_value,
    +                                                         gint64 src_value,
                                                              GstFormat dest_format,
    -                                                         gint64 dest_value);
    + gint64 dest_value);

    Answer a convert query by setting the requested values.

    @@ -915,9 +1006,9 @@ Answer a convert query by setting the requested values.

    gst_query_parse_convert ()

    void                gst_query_parse_convert             (GstQuery *query,
                                                              GstFormat *src_format,
    -                                                         gint64 *src_value,
    +                                                         gint64 *src_value,
                                                              GstFormat *dest_format,
    -                                                         gint64 *dest_value);
    + gint64 *dest_value);

    Parse a convert query answer. Any of src_format, src_value, dest_format, and dest_value may be NULL, in which case that value is omitted. @@ -988,7 +1079,7 @@ Free-function: gst_query_unref

    gst_query_set_position ()

    void                gst_query_set_position              (GstQuery *query,
                                                              GstFormat format,
    -                                                         gint64 cur);
    + gint64 cur);

    Answer a position query by setting the requested value in the given format.

    @@ -1016,7 +1107,7 @@ Answer a position query by setting the requested value in the given format.

    gst_query_parse_position ()

    void                gst_query_parse_position            (GstQuery *query,
                                                              GstFormat *format,
    -                                                         gint64 *cur);
    + gint64 *cur);

    Parse a position query, writing the format into format, and the position into cur, if the respective parameters are non-NULL. @@ -1075,7 +1166,7 @@ Free-function: gst_query_unref

    gst_query_set_duration ()

    void                gst_query_set_duration              (GstQuery *query,
                                                              GstFormat format,
    -                                                         gint64 duration);
    + gint64 duration);

    Answer a duration query by setting the requested value in the given format.

    @@ -1103,7 +1194,7 @@ Answer a duration query by setting the requested value in the given format.

    gst_query_parse_duration ()

    void                gst_query_parse_duration            (GstQuery *query,
                                                              GstFormat *format,
    -                                                         gint64 *duration);
    + gint64 *duration);

    Parse a duration query answer. Write the format of the duration into format, and the value into duration, if the respective variables are non-NULL. @@ -1214,11 +1305,11 @@ Answer a latency query by setting the requested values in the given format.

    - + - +

    min_latency :

    the minimal latency of the live elementthe minimal latency of the upstream elements

    max_latency :

    the maximal latency of the live elementthe maximal latency of the upstream elements
    @@ -1256,8 +1347,8 @@ Free-function: gst_query_unref
    void                gst_query_set_seeking               (GstQuery *query,
                                                              GstFormat format,
                                                              gboolean seekable,
    -                                                         gint64 segment_start,
    -                                                         gint64 segment_end);
    + gint64 segment_start, + gint64 segment_end);

    Set the seeking query result fields in query.

    @@ -1294,8 +1385,8 @@ Set the seeking query result fields in query<
    void                gst_query_parse_seeking             (GstQuery *query,
                                                              GstFormat *format,
                                                              gboolean *seekable,
    -                                                         gint64 *segment_start,
    -                                                         gint64 *segment_end);
    + gint64 *segment_start, + gint64 *segment_end);

    Parse a seeking query, writing the format into format, and other results into the passed parameters, if the respective parameters @@ -1433,7 +1524,7 @@ Parse the number of formats in the formats query

    n_formats :

    -the number of formats in this query. [out] +the number of formats in this query. [out][allow-none] @@ -1466,7 +1557,7 @@ set to GST_FORMAT_UNDEFINED.

    format :

    -a pointer to store the nth format. [out] +a pointer to store the nth format. [out][allow-none] @@ -1505,8 +1596,8 @@ Free-function: gst_query_unref
    void                gst_query_set_segment               (GstQuery *query,
                                                              gdouble rate,
                                                              GstFormat format,
    -                                                         gint64 start_value,
    -                                                         gint64 stop_value);
    + gint64 start_value, + gint64 stop_value);

    Answer a segment query by setting the requested values. The normal playback segment of a pipeline is 0 to duration at the default rate of @@ -1554,8 +1645,8 @@ negative rates, playback will actually happen from s

    void                gst_query_parse_segment             (GstQuery *query,
                                                              gdouble *rate,
                                                              GstFormat *format,
    -                                                         gint64 *start_value,
    -                                                         gint64 *stop_value);
    + gint64 *start_value, + gint64 *stop_value);

    Parse a segment query answer. Any of rate, format, start_value, and stop_value may be NULL, which will cause this value to be omitted. @@ -1597,50 +1688,25 @@ or NULL. [ -

    enum GstBufferingMode

    -
    typedef enum {
    -  GST_BUFFERING_STREAM,
    -  GST_BUFFERING_DOWNLOAD,
    -  GST_BUFFERING_TIMESHIFT,
    -  GST_BUFFERING_LIVE
    -} GstBufferingMode;
    -
    +

    gst_query_new_caps ()

    +
    GstQuery *          gst_query_new_caps                  (GstCaps *filter);

    -The different types of buffering methods. +Constructs a new query object for querying the caps.

    -
    -- - - - - - - - - - - - - - - - - - -

    GST_BUFFERING_STREAM

    a small amount of data is buffered -

    GST_BUFFERING_DOWNLOAD

    the stream is being downloaded -

    GST_BUFFERING_TIMESHIFT

    the stream is being downloaded in a ringbuffer -

    GST_BUFFERING_LIVE

    the stream is a live stream -
    -
    -
    -
    -

    gst_query_new_buffering ()

    -
    GstQuery *          gst_query_new_buffering             (GstFormat format);

    -Constructs a new query object for querying the buffering status of -a stream. +The CAPS query should return the* allowable caps for a pad in the context +of the element's state, its link to other elements, and the devices or files +it has opened. These caps must be a subset of the pad template caps. In the +NULL state with no links, the CAPS query should ideally return the same caps +as the pad template. In rare circumstances, an object property can affect +the caps returned by the CAPS query, but this is discouraged. +

    +

    +For most filters, the caps returned by CAPS query is directly affected by the +allowed caps on other pads. For demuxers and decoders, the caps returned by +the srcpad's getcaps function is directly related to the stream data. Again, +the CAPS query should return the most specific caps it reasonably can, since this +helps with autoplugging.

    Free-function: gst_query_unref @@ -1649,8 +1715,8 @@ Free-function: gst_query_unref -

    format :

    -the default GstFormat for the new query +

    filter :

    +a filter

    Returns :

    @@ -1659,85 +1725,290 @@ Free-function: gst_query_unref
    -

    Since 0.10.20


    -

    gst_query_set_buffering_percent ()

    -
    void                gst_query_set_buffering_percent     (GstQuery *query,
    -                                                         gboolean busy,
    -                                                         gint percent);
    +

    gst_query_parse_caps ()

    +
    void                gst_query_parse_caps                (GstQuery *query,
    +                                                         GstCaps **filter);

    -Set the percentage of buffered data. This is a value between 0 and 100. -The busy indicator is TRUE when the buffering is in progress. +Get the filter from the caps query. The caps remains valid as long as +query remains valid.

    - - - - - + - - + +

    query :

    A valid GstQuery of type GST_QUERY_BUFFERING.

    busy :

    if buffering is busyThe query to parse

    percent :

    a buffering percent

    filter :

    A pointer to the caps filter. [out] +
    -

    Since 0.10.20


    -

    gst_query_parse_buffering_percent ()

    -
    void                gst_query_parse_buffering_percent   (GstQuery *query,
    -                                                         gboolean *busy,
    -                                                         gint *percent);
    +

    gst_query_set_caps_result ()

    +
    void                gst_query_set_caps_result           (GstQuery *query,
    +                                                         GstCaps *caps);

    -Get the percentage of buffered data. This is a value between 0 and 100. -The busy indicator is TRUE when the buffering is in progress. +Set the caps result in query.

    - + - - - - - - +

    query :

    A valid GstQuery of type GST_QUERY_BUFFERING.The query to use

    busy :

    if buffering is busy, or NULL. [out][allow-none] -

    percent :

    a buffering percent, or NULL. [out][allow-none] +

    caps :

    A pointer to the caps. [in]
    -

    Since 0.10.20


    -

    gst_query_set_buffering_stats ()

    -
    void                gst_query_set_buffering_stats       (GstQuery *query,
    -                                                         GstBufferingMode mode,
    -                                                         gint avg_in,
    -                                                         gint avg_out,
    -                                                         gint64 buffering_left);
    +

    gst_query_parse_caps_result ()

    +
    void                gst_query_parse_caps_result         (GstQuery *query,
    +                                                         GstCaps **caps);

    -Configures the buffering stats values in query. +Get the caps result from query. The caps remains valid as long as +query remains valid.

    - + + + + + + + +

    query :

    A valid GstQuery of type GST_QUERY_BUFFERING.The query to parse

    caps :

    A pointer to the caps. [out] +
    +
    +
    +
    +

    gst_query_intersect_caps_result ()

    +
    void                gst_query_intersect_caps_result     (GstQuery *query,
    +                                                         GstCaps *filter,
    +                                                         GstCapsIntersectMode mode);
    +
    +
    +
    +

    gst_query_new_accept_caps ()

    +
    GstQuery *          gst_query_new_accept_caps           (GstCaps *caps);
    +

    +Constructs a new query object for querying if caps are accepted. +

    +

    +Free-function: gst_query_unref +

    +
    ++ + + + + + + + + + +

    caps :

    a fixed GstCaps +

    Returns :

    a new GstQuery. [transfer full] +
    +
    +
    +
    +

    gst_query_parse_accept_caps ()

    +
    void                gst_query_parse_accept_caps         (GstQuery *query,
    +                                                         GstCaps **caps);
    +

    +Get the caps from query. The caps remains valid as long as query remains +valid. +

    +
    ++ + + + + + + + + + +

    query :

    The query to parse

    caps :

    A pointer to the caps. [out] +
    +
    +
    +
    +

    gst_query_set_accept_caps_result ()

    +
    void                gst_query_set_accept_caps_result    (GstQuery *query,
    +                                                         gboolean result);
    +
    +
    +
    +

    gst_query_parse_accept_caps_result ()

    +
    void                gst_query_parse_accept_caps_result  (GstQuery *query,
    +                                                         gboolean *result);
    +
    +
    +
    +

    enum GstBufferingMode

    +
    typedef enum {
    +  GST_BUFFERING_STREAM,
    +  GST_BUFFERING_DOWNLOAD,
    +  GST_BUFFERING_TIMESHIFT,
    +  GST_BUFFERING_LIVE
    +} GstBufferingMode;
    +
    +

    +The different types of buffering methods. +

    +
    ++ + + + + + + + + + + + + + + + + + +

    GST_BUFFERING_STREAM

    a small amount of data is buffered +

    GST_BUFFERING_DOWNLOAD

    the stream is being downloaded +

    GST_BUFFERING_TIMESHIFT

    the stream is being downloaded in a ringbuffer +

    GST_BUFFERING_LIVE

    the stream is a live stream +
    +
    +
    +
    +

    gst_query_new_buffering ()

    +
    GstQuery *          gst_query_new_buffering             (GstFormat format);
    +

    +Constructs a new query object for querying the buffering status of +a stream. +

    +

    +Free-function: gst_query_unref +

    +
    ++ + + + + + + + + + +

    format :

    the default GstFormat for the new query

    Returns :

    a new GstQuery. [transfer full] +
    +

    Since 0.10.20

    +
    +
    +
    +

    gst_query_set_buffering_percent ()

    +
    void                gst_query_set_buffering_percent     (GstQuery *query,
    +                                                         gboolean busy,
    +                                                         gint percent);
    +

    +Set the percentage of buffered data. This is a value between 0 and 100. +The busy indicator is TRUE when the buffering is in progress. +

    +
    ++ + + + + + + + + + + + + + +

    query :

    A valid GstQuery of type GST_QUERY_BUFFERING.

    busy :

    if buffering is busy

    percent :

    a buffering percent
    +

    Since 0.10.20

    +
    +
    +
    +

    gst_query_parse_buffering_percent ()

    +
    void                gst_query_parse_buffering_percent   (GstQuery *query,
    +                                                         gboolean *busy,
    +                                                         gint *percent);
    +

    +Get the percentage of buffered data. This is a value between 0 and 100. +The busy indicator is TRUE when the buffering is in progress. +

    +
    ++ + + + + + + + + + + + + + +

    query :

    A valid GstQuery of type GST_QUERY_BUFFERING.

    busy :

    if buffering is busy, or NULL. [out][allow-none] +

    percent :

    a buffering percent, or NULL. [out][allow-none] +
    +

    Since 0.10.20

    +
    +
    +
    +

    gst_query_set_buffering_stats ()

    +
    void                gst_query_set_buffering_stats       (GstQuery *query,
    +                                                         GstBufferingMode mode,
    +                                                         gint avg_in,
    +                                                         gint avg_out,
    +                                                         gint64 buffering_left);
    +

    +Configures the buffering stats values in query. +

    +
    ++ + + + @@ -1766,7 +2037,7 @@ Configures the buffering stats values in queryGstBufferingMode *mode, gint *avg_in, gint *avg_out, - gint64 *buffering_left); + gint64 *buffering_left);

    Extracts the buffering stats values from query.

    @@ -1806,9 +2077,9 @@ Extracts the buffering stats values from query

    gst_query_set_buffering_range ()

    void                gst_query_set_buffering_range       (GstQuery *query,
                                                              GstFormat format,
    -                                                         gint64 start,
    -                                                         gint64 stop,
    -                                                         gint64 estimated_total);
    + gint64 start, + gint64 stop, + gint64 estimated_total);

    Set the available query result fields in query.

    @@ -1845,9 +2116,9 @@ Set the available query result fields in query

    gst_query_parse_buffering_range ()

    void                gst_query_parse_buffering_range     (GstQuery *query,
                                                              GstFormat *format,
    -                                                         gint64 *start,
    -                                                         gint64 *stop,
    -                                                         gint64 *estimated_total);
    + gint64 *start, + gint64 *stop, + gint64 *estimated_total);

    Parse an available query, writing the format into format, and other results into the passed parameters, if the respective parameters @@ -1891,8 +2162,8 @@ time, or NULL. [

    gst_query_add_buffering_range ()

    gboolean            gst_query_add_buffering_range       (GstQuery *query,
    -                                                         gint64 start,
    -                                                         gint64 stop);
    + gint64 start, + gint64 stop);

    Set the buffering-ranges array field in query. The current last start position of the array should be inferior to start. @@ -1950,8 +2221,8 @@ buffered-ranges array of the query's structure.

    gst_query_parse_nth_buffering_range ()

    gboolean            gst_query_parse_nth_buffering_range (GstQuery *query,
                                                              guint index,
    -                                                         gint64 *start,
    -                                                         gint64 *stop);
    + gint64 *start, + gint64 *stop);

    Parse an available query and get the start and stop values stored at the index of the buffered ranges array. @@ -2095,19 +2366,42 @@ Free-function: gst_query_unref

    void                gst_query_parse_allocation          (GstQuery *query,
                                                              GstCaps **caps,
                                                              gboolean *need_pool);
    +

    +Parse an allocation query, writing the requested caps in caps and +whether a pool is needed in need_pool, if the respective parameters +are non-NULL. +

    +

    query :

    A valid GstQuery of type GST_QUERY_BUFFERING.

    mode :

    ++ + + + + + + + + + + + + + +

    query :

    a GstQuery +

    caps :

    The GstCaps. [out][transfer none][allow-none] +

    need_pool :

    Whether a GstBufferPool is needed. [out][allow-none] +

    -

    gst_query_parse_allocation_params ()

    -
    void                gst_query_parse_allocation_params   (GstQuery *query,
    -                                                         guint *size,
    -                                                         guint *min_buffers,
    -                                                         guint *max_buffers,
    -                                                         guint *prefix,
    -                                                         guint *alignment,
    -                                                         GstBufferPool **pool);
    +

    gst_query_add_allocation_pool ()

    +
    void                gst_query_add_allocation_pool       (GstQuery *query,
    +                                                         GstBufferPool *pool,
    +                                                         guint size,
    +                                                         guint min_buffers,
    +                                                         guint max_buffers);

    -Get the allocation parameters in query. +Set the pool parameters in query.

    @@ -2117,6 +2411,11 @@ Get the allocation parameters in query. + + + + @@ -2128,31 +2427,16 @@ Get the allocation parameters in query. - - - - - - - - - - - -
    A valid GstQuery of type GST_QUERY_ALLOCATION.

    pool :

    the GstBufferPool +

    size :

    the size

    max_buffers :

    the max buffers

    prefix :

    the prefix

    alignment :

    the alignment

    pool :

    the GstBufferPool -

    -

    gst_query_parse_nth_allocation_memory ()

    -
    const gchar *       gst_query_parse_nth_allocation_memory
    -                                                        (GstQuery *query,
    -                                                         guint index);
    +

    gst_query_get_n_allocation_pools ()

    +
    guint               gst_query_get_n_allocation_pools    (GstQuery *query);

    -Parse an available query and get the alloctor -at index of the allocator array. +Retrieve the number of values currently stored in the +pool array of the query's structure.

    @@ -2163,65 +2447,87 @@ at index of the allocator array. - - - - - +

    index :

    position in the allocator array to read

    Returns :

    the name of the allocator at index.the pool array size as a guint.

    -

    gst_query_parse_nth_allocation_meta ()

    -
    const gchar *       gst_query_parse_nth_allocation_meta (GstQuery *query,
    -                                                         guint index);
    +

    gst_query_parse_nth_allocation_pool ()

    +
    void                gst_query_parse_nth_allocation_pool (GstQuery *query,
    +                                                         guint index,
    +                                                         GstBufferPool **pool,
    +                                                         guint *size,
    +                                                         guint *min_buffers,
    +                                                         guint *max_buffers);

    -Parse an available query and get the metadata API -at index of the metadata API array. +Get the pool parameters in query.

    - + - + - - + + + + + + + + + + + + + +

    query :

    a GST_QUERY_ALLOCATION type query GstQuery -A valid GstQuery of type GST_QUERY_ALLOCATION.

    index :

    position in the metadata API array to readindex to parse

    Returns :

    a gchar of the metadata API at index.

    pool :

    the GstBufferPool. [out][allow-none][transfer none] +

    size :

    the size. [out][allow-none] +

    min_buffers :

    the min buffers. [out][allow-none] +

    max_buffers :

    the max buffers. [out][allow-none] +

    -

    gst_query_set_allocation_params ()

    -
    void                gst_query_set_allocation_params     (GstQuery *query,
    +

    gst_query_set_nth_allocation_pool ()

    +
    void                gst_query_set_nth_allocation_pool   (GstQuery *query,
    +                                                         guint index,
    +                                                         GstBufferPool *pool,
                                                              guint size,
                                                              guint min_buffers,
    -                                                         guint max_buffers,
    -                                                         guint prefix,
    -                                                         guint alignment,
    -                                                         GstBufferPool *pool);
    + guint max_buffers);

    -Set the allocation parameters in query. +Set the pool parameters in query.

    + + + + + + + + @@ -2233,17 +2539,33 @@ Set the allocation parameters in query. + +

    index :

    index to modify

    query :

    A valid GstQuery of type GST_QUERY_ALLOCATION.

    pool :

    the GstBufferPool +

    size :

    the size

    max_buffers :

    the max buffers
    +
    +
    +
    +

    gst_query_add_allocation_param ()

    +
    void                gst_query_add_allocation_param      (GstQuery *query,
    +                                                         GstAllocator *allocator,
    +                                                         const GstAllocationParams *params);
    +

    +Add allocator and its params as a supported memory allocator. +

    +
    ++ - - + + - - + + - - + @@ -2251,11 +2573,15 @@ Set the allocation parameters in query.
    -

    gst_query_add_allocation_memory ()

    -
    void                gst_query_add_allocation_memory     (GstQuery *query,
    -                                                         const gchar *alloc);
    +

    gst_query_get_n_allocation_params ()

    +
    guint               gst_query_get_n_allocation_params   (GstQuery *query);

    -Add alloc as a supported memory allocator. +Retrieve the number of values currently stored in the +allocator params array of the query's structure. +

    +

    +If no memory allocator is specified, the downstream element can handle +the default memory allocator.

    prefix :

    the prefix

    query :

    a GST_QUERY_ALLOCATION type query GstQuery +

    alignment :

    the alignment

    allocator :

    the memory allocator

    pool :

    the GstBufferPool +

    params :

    a GstAllocationParams
    @@ -2266,8 +2592,79 @@ Add alloc as a supported memory allocato - - + + + + +

    alloc :

    the memory allocator

    Returns :

    the allocator array size as a guint.
    +
    +
    +
    +

    gst_query_parse_nth_allocation_param ()

    +
    void                gst_query_parse_nth_allocation_param
    +                                                        (GstQuery *query,
    +                                                         guint index,
    +                                                         GstAllocator **allocator,
    +                                                         GstAllocationParams *params);
    +

    +Parse an available query and get the alloctor and its params +at index of the allocator array. +

    +
    ++ + + + + + + + + + + + + + + + + + +

    query :

    a GST_QUERY_ALLOCATION type query GstQuery +

    index :

    position in the allocator array to read

    allocator :

    variable to hold the result. [transfer none] +

    params :

    parameters for the allocator
    +
    +
    +
    +

    gst_query_set_nth_allocation_param ()

    +
    void                gst_query_set_nth_allocation_param  (GstQuery *query,
    +                                                         guint index,
    +                                                         GstAllocator *allocator,
    +                                                         const GstAllocationParams *params);
    +

    +Parse an available query and get the alloctor and its params +at index of the allocator array. +

    +
    ++ + + + + + + + + + + + + + + +

    query :

    a GST_QUERY_ALLOCATION type query GstQuery +

    index :

    position in the allocator array to set

    allocator :

    new allocator to set. [transfer full] +

    params :

    parameters for the allocator
    @@ -2276,7 +2673,7 @@ Add alloc as a supported memory allocato

    gst_query_add_allocation_meta ()

    void                gst_query_add_allocation_meta       (GstQuery *query,
    -                                                         const gchar *api);
    + GType api);

    Add api as aone of the supported metadata API to query.

    @@ -2297,11 +2694,11 @@ Add api as aone of the supported metadat

    -

    gst_query_has_allocation_meta ()

    -
    gboolean            gst_query_has_allocation_meta       (GstQuery *query,
    -                                                         const gchar *api);
    +

    gst_query_get_n_allocation_metas ()

    +
    guint               gst_query_get_n_allocation_metas    (GstQuery *query);

    -Check if query has metadata api set. +Retrieve the number of values currently stored in the +meta API array of the query's structure.

    @@ -2312,27 +2709,48 @@ Check if query has metadata api :

    -
    - - - +
    the metadata API

    Returns :

    TRUE when api is in the list of metadata.the metadata API array size as a guint.

    -

    gst_query_get_n_allocation_memories ()

    -
    guint               gst_query_get_n_allocation_memories (GstQuery *query);
    +

    gst_query_parse_nth_allocation_meta ()

    +
    GType               gst_query_parse_nth_allocation_meta (GstQuery *query,
    +                                                         guint index);

    -Retrieve the number of values currently stored in the -allocator array of the query's structure. +Parse an available query and get the metadata API +at index of the metadata API array.

    +
    ++ + + + + + + + + + + + + + +

    query :

    a GST_QUERY_ALLOCATION type query GstQuery +

    index :

    position in the metadata API array to read

    Returns :

    a GType of the metadata API at index.
    +
    +
    +
    +

    gst_query_remove_nth_allocation_meta ()

    +
    void                gst_query_remove_nth_allocation_meta
    +                                                        (GstQuery *query,
    +                                                         guint index);

    -If no memory allocator is specified, the downstream element can handle -the default memory allocator. +Remove the metadata API at index of the metadata API array.

    @@ -2343,19 +2761,19 @@ the default memory allocator. - - + +

    Returns :

    the allocator array size as a guint.

    index :

    position in the metadata API array to remove

    -

    gst_query_get_n_allocation_metas ()

    -
    guint               gst_query_get_n_allocation_metas    (GstQuery *query);
    +

    gst_query_has_allocation_meta ()

    +
    gboolean            gst_query_has_allocation_meta       (GstQuery *query,
    +                                                         GType api);

    -Retrieve the number of values currently stored in the -meta API array of the query's structure. +Check if query has metadata api set.

    @@ -2366,8 +2784,39 @@ meta API array of the query's structure. + + + + - + + + +

    api :

    the metadata API

    Returns :

    the metadata API array size as a guint.TRUE when api is in the list of metadata.
    +
    +
    +
    +

    enum GstSchedulingFlags

    +
    typedef enum {
    +  GST_SCHEDULING_FLAG_SEEKABLE      = (1 << 0),
    +  GST_SCHEDULING_FLAG_SEQUENTIAL    = (1 << 1)
    +} GstSchedulingFlags;
    +
    +

    +The different scheduling flags. +

    +
    ++ + + + + + + +

    GST_SCHEDULING_FLAG_SEEKABLE

    if seeking is possible +

    GST_SCHEDULING_FLAG_SEQUENTIAL

    if sequential access is recommended +
    @@ -2395,9 +2844,7 @@ Free-function: gst_query_unref

    gst_query_parse_scheduling ()

    void                gst_query_parse_scheduling          (GstQuery *query,
    -                                                         gboolean *pull_mode,
    -                                                         gboolean *random_access,
    -                                                         gboolean *sequential,
    +                                                         GstSchedulingFlags *flags,
                                                              gint *minsize,
                                                              gint *maxsize,
                                                              gint *align);
    @@ -2412,28 +2859,25 @@ Set the scheduling properties. A valid GstQuery of type GST_QUERY_SCHEDULING. -

    pull_mode :

    -if pull mode scheduling is supported - - -

    random_access :

    -if random access is possible - - -

    sequential :

    -if sequential access is recommended +

    flags :

    + +GstSchedulingFlags. [out][allow-none] +

    minsize :

    -the suggested minimum size of pull requests +the suggested minimum size of pull requests. [out][allow-none] +

    maxsize :

    -the suggested maximum size of pull requests: +the suggested maximum size of pull requests:. [out][allow-none] +

    align :

    -the suggested alignment of pull requests +the suggested alignment of pull requests. [out][allow-none] +
    @@ -2442,9 +2886,7 @@ Set the scheduling properties.

    gst_query_set_scheduling ()

    void                gst_query_set_scheduling            (GstQuery *query,
    -                                                         gboolean pull_mode,
    -                                                         gboolean random_access,
    -                                                         gboolean sequential,
    +                                                         GstSchedulingFlags flags,
                                                              gint minsize,
                                                              gint maxsize,
                                                              gint align);
    @@ -2459,16 +2901,8 @@ Set the scheduling properties. A valid GstQuery of type GST_QUERY_SCHEDULING. -

    pull_mode :

    -if pull mode scheduling is supported - - -

    random_access :

    -if random access is possible - - -

    sequential :

    -if sequential access is recommended +

    flags :

    +GstSchedulingFlags

    minsize :

    @@ -2476,7 +2910,7 @@ Set the scheduling properties.

    maxsize :

    -the suggested maximum size of pull requests: +the suggested maximum size of pull requests

    align :

    @@ -2485,6 +2919,206 @@ Set the scheduling properties.
    +
    +
    +

    gst_query_add_scheduling_mode ()

    +
    void                gst_query_add_scheduling_mode       (GstQuery *query,
    +                                                         GstPadMode mode);
    +

    +Add mode as aone of the supported scheduling modes to query. +

    +
    ++ + + + + + + + + + +

    query :

    a GST_QUERY_SCHEDULING type query GstQuery +

    mode :

    a GstPadMode +
    +
    +
    +
    +

    gst_query_get_n_scheduling_modes ()

    +
    guint               gst_query_get_n_scheduling_modes    (GstQuery *query);
    +

    +Retrieve the number of values currently stored in the +scheduling mode array of the query's structure. +

    +
    ++ + + + + + + + + + +

    query :

    a GST_QUERY_SCHEDULING type query GstQuery +

    Returns :

    the scheduling mode array size as a guint.
    +
    +
    +
    +

    gst_query_parse_nth_scheduling_mode ()

    +
    GstPadMode          gst_query_parse_nth_scheduling_mode (GstQuery *query,
    +                                                         guint index);
    +

    +Parse an available query and get the scheduling mode +at index of the scheduling modes array. +

    +
    ++ + + + + + + + + + + + + + +

    query :

    a GST_QUERY_SCHEDULING type query GstQuery +

    index :

    position in the scheduling modes array to read

    Returns :

    a GstPadMode of the scheduling mode at index.
    +
    +
    +
    +

    gst_query_has_scheduling_mode ()

    +
    gboolean            gst_query_has_scheduling_mode       (GstQuery *query,
    +                                                         GstPadMode mode);
    +

    +Check if query has scheduling mode set. +

    +
    ++ + + + + + + + + + + + + + +

    query :

    a GST_QUERY_SCHEDULING type query GstQuery +

    mode :

    the scheduling mode

    Returns :

    TRUE when mode is in the list of scheduling modes.
    +
    +
    +
    +

    gst_query_new_drain ()

    +
    GstQuery *          gst_query_new_drain                 (void);
    +

    +Constructs a new query object for querying the drain state. +

    +

    +Free-function: gst_query_unref +

    +
    ++ + + + +

    Returns :

    a new GstQuery. [transfer full] +
    +
    +
    +
    +

    gst_query_new_toc ()

    +
    GstQuery *          gst_query_new_toc                   (void);
    +

    +Constructs a new query TOC query object. Use gst_query_unref() +when done with it. A TOC query is used to query the full TOC with +the UID marker for TOC extending (to insert some new entries). +

    +
    ++ + + + +

    Returns :

    A GstQuery.
    +
    +
    +
    +

    gst_query_parse_toc ()

    +
    void                gst_query_parse_toc                 (GstQuery *query,
    +                                                         GstToc **toc,
    +                                                         gchar **extend_uid);
    +

    +Parse a TOC query, writing the TOC into toc as a newly +allocated GstToc and extend UID into extend_uid, if the respective parameters +are non-NULL. Use extend_uid value to insert new entries into the TOC (extend_uid will +act as root entry for newly inserted entries). +Free toc with gst_toc_free() and extend_uid with g_free() after usage. +

    +
    ++ + + + + + + + + + + + + + +

    query :

    a GstQuery.

    toc :

    the storage for the received TOC (may be NULL). [out] +

    extend_uid :

    the storage for the received extend UID marker (may be NULL), +0 means root TOC level. [out] +
    +
    +
    +
    +

    gst_query_set_toc ()

    +
    void                gst_query_set_toc                   (GstQuery *query,
    +                                                         GstToc *toc,
    +                                                         const gchar *extend_uid);
    +

    +Answer a TOC query by setting appropriate GstToc structure. +

    +
    ++ + + + + + + + + + + + + + +

    query :

    a GstQuery with query type GST_QUERY_TOC.

    toc :

    the GstToc to set.

    extend_uid :

    UID which can be used for TOC extending (may be NULL), +0 means root TOC level.
    +

    See Also

    diff --git a/docs/gst/html/gstreamer-GstSample.html b/docs/gst/html/gstreamer-GstSample.html new file mode 100644 index 0000000..3621b46 --- /dev/null +++ b/docs/gst/html/gstreamer-GstSample.html @@ -0,0 +1,270 @@ + + + + +GstSample + + + + + + + + + + + + + + + + + + + +
    +
    +
    + + +
    +

    GstSample

    +

    GstSample — A media sample

    +
    +
    +

    Synopsis

    +
    +#include <gst/gst.h>
    +
    +                    GstSample;
    +GstBuffer *         gst_sample_get_buffer               (GstSample *sample);
    +GstCaps *           gst_sample_get_caps                 (GstSample *sample);
    +const GstStructure * gst_sample_get_info                (GstSample *sample);
    +GstSegment *        gst_sample_get_segment              (GstSample *sample);
    +GstSample *         gst_sample_new                      (GstBuffer *buffer,
    +                                                         GstCaps *caps,
    +                                                         const GstSegment *segment,
    +                                                         GstStructure *info);
    +GstSample *         gst_sample_ref                      (GstSample *sample);
    +void                gst_sample_unref                    (GstSample *sample);
    +
    +
    +
    +

    Description

    +

    +A GstSample is a small object containing data, a type, timing and +extra arbitrary information. +

    +

    +Last reviewed on 2012-03-29 (0.11.3) +

    +
    +
    +

    Details

    +
    +

    GstSample

    +
    typedef struct _GstSample GstSample;
    +

    +The opaque structure of a GstSample. A sample contains a typed memory +block and the associated timing information. It is mainly used to +exchange buffers with and application. +

    +
    +
    +
    +

    gst_sample_get_buffer ()

    +
    GstBuffer *         gst_sample_get_buffer               (GstSample *sample);
    +

    +Get the buffer associated with sample +

    +
    ++ + + + + + + + + + +

    sample :

    a GstSample +

    Returns :

    the buffer of sample or NULL when there +is no buffer. The buffer remains valid as long as sample is valid. [transfer none] +
    +
    +
    +
    +

    gst_sample_get_caps ()

    +
    GstCaps *           gst_sample_get_caps                 (GstSample *sample);
    +

    +Get the caps associated with sample +

    +
    ++ + + + + + + + + + +

    sample :

    a GstSample +

    Returns :

    the caps of sample or NULL when there +is no caps. The caps remain valid as long as sample is valid. [transfer none] +
    +
    +
    +
    +

    gst_sample_get_info ()

    +
    const GstStructure * gst_sample_get_info                (GstSample *sample);
    +

    +Get extra information associated with sample. +

    +
    ++ + + + + + + + + + +

    sample :

    a GstSample +

    Returns :

    the extra info of sample. +The info remains valid as long as sample is valid. [transfer none] +
    +
    +
    +
    +

    gst_sample_get_segment ()

    +
    GstSegment *        gst_sample_get_segment              (GstSample *sample);
    +

    +Get the segment associated with sample +

    +
    ++ + + + + + + + + + +

    sample :

    a GstSample +

    Returns :

    the segment of sample. +The segment remains valid as long as sample is valid. [transfer none] +
    +
    +
    +
    +

    gst_sample_new ()

    +
    GstSample *         gst_sample_new                      (GstBuffer *buffer,
    +                                                         GstCaps *caps,
    +                                                         const GstSegment *segment,
    +                                                         GstStructure *info);
    +

    +Create a new GstSample with the provided details. +

    +

    +Free-function: gst_sample_unref +

    +
    ++ + + + + + + + + + + + + + + + + + + + + + +

    buffer :

    a GstBuffer +

    caps :

    a GstCaps +

    segment :

    a GstSegment +

    info :

    a GstStructure +

    Returns :

    the new GstSample. gst_sample_unref() +after usage. [transfer full] +
    +

    Since 0.10.24

    +
    +
    +
    +

    gst_sample_ref ()

    +
    GstSample *         gst_sample_ref                      (GstSample *sample);
    +

    +Increases the refcount of the given sample by one. +

    +
    ++ + + + + + + + + + +

    sample :

    a GstSample +

    Returns :

    +sample. [transfer full] +
    +
    +
    +
    +

    gst_sample_unref ()

    +
    void                gst_sample_unref                    (GstSample *sample);
    +

    +Decreases the refcount of the sample. If the refcount reaches 0, the +sample will be freed. +

    +
    ++ + + + +

    sample :

    a GstSample. [transfer full] +
    +
    +
    +
    +

    See Also

    +GstBuffer, GstCaps, GstSegment +
    +
    + + + \ No newline at end of file diff --git a/docs/gst/html/gstreamer-GstSegment.html b/docs/gst/html/gstreamer-GstSegment.html index 06174e4..972a797 100644 --- a/docs/gst/html/gstreamer-GstSegment.html +++ b/docs/gst/html/gstreamer-GstSegment.html @@ -3,8 +3,8 @@ GstSegment - - + + @@ -17,7 +17,7 @@ Prev Up Home -GStreamer 0.11 Core Reference Manual +GStreamer 1.0 Core Reference Manual Next @@ -45,10 +45,10 @@ struct GstSegmentFlags; gboolean gst_segment_clip (const GstSegment *segment, GstFormat format, - guint64 start, - guint64 stop, - guint64 *clip_start, - guint64 *clip_stop); + guint64 start, + guint64 stop, + guint64 *clip_start, + guint64 *clip_stop); void gst_segment_init (GstSegment *segment, GstFormat format); GstSegment * gst_segment_new (void); @@ -59,22 +59,22 @@ enum GstFormat format
    , GstSeekFlags flags, GstSeekType start_type, - guint64 start, + guint64 start, GstSeekType stop_type, - guint64 stop, + guint64 stop, gboolean *update); -guint64 gst_segment_to_running_time (const GstSegment *segment, +guint64 gst_segment_to_running_time (const GstSegment *segment, GstFormat format, - guint64 position); -guint64 gst_segment_to_stream_time (const GstSegment *segment, + guint64 position); +guint64 gst_segment_to_stream_time (const GstSegment *segment, GstFormat format, - guint64 position); -guint64 gst_segment_to_position (const GstSegment *segment, + guint64 position); +guint64 gst_segment_to_position (const GstSegment *segment, GstFormat format, - guint64 running_time); + guint64 running_time); gboolean gst_segment_set_running_time (GstSegment *segment, GstFormat format, - guint64 running_time); + guint64 running_time); void gst_segment_copy_into (const GstSegment *src, GstSegment *dest); @@ -116,26 +116,26 @@ normally be left to their default 0 value. The stop position is left to -1 unles explicitly configured to a different value after a seek event.

    -The current position in the segment should be set with the gst_segment_set_last_stop(). -The public last_stop field contains the last set stop position in the segment. +The current position in the segment should be set by changing the position +member in the structure.

    For elements that perform seeks, the current segment should be updated with the -gst_segment_set_seek() and the values from the seek event. This method will update -all the segment fields. The last_stop field will contain the new playback position. +gst_segment_do_seek() and the values from the seek event. This method will update +all the segment fields. The position field will contain the new playback position. If the cur_type was different from GST_SEEK_TYPE_NONE, playback continues from -the last_stop position, possibly with updated flags or rate. +the position position, possibly with updated flags or rate.

    -For elements that want to use GstSegment to track the playback region, use -gst_segment_set_newsegment() to update the segment fields with the information from -the newsegment event. The gst_segment_clip() method can be used to check and clip +For elements that want to use GstSegment to track the playback region, +update the segment fields with the information from the newsegment event. +The gst_segment_clip() method can be used to check and clip the media data to the segment boundaries.

    For elements that want to synchronize to the pipeline clock, gst_segment_to_running_time() can be used to convert a timestamp to a value that can be used to synchronize -to the clock. This function takes into account all accumulated segments as well as +to the clock. This function takes into account the base as well as any rate or applied_rate conversions.

    @@ -144,7 +144,7 @@ For elements that need to perform operations on media data in stream_time, info to stream time (which is always between 0 and the duration of the stream).

    -Last reviewed on 2007-05-17 (0.10.13) +Last reviewed on 2012-03-29 (0.11.3)

    @@ -191,27 +191,27 @@ interest in a media file. the format of the segment values -

    guint64 base;

    +

    guint64 base;

    the base time of the segment -

    guint64 start;

    +

    guint64 start;

    the start of the segment -

    guint64 stop;

    +

    guint64 stop;

    the stop of the segment -

    guint64 time;

    +

    guint64 time;

    the stream time of the segment -

    guint64 position;

    +

    guint64 position;

    the position in the segment -

    guint64 duration;

    +

    guint64 duration;

    the duration of the segment @@ -257,10 +257,10 @@ values of the seek flags.

    gst_segment_clip ()

    gboolean            gst_segment_clip                    (const GstSegment *segment,
                                                              GstFormat format,
    -                                                         guint64 start,
    -                                                         guint64 stop,
    -                                                         guint64 *clip_start,
    -                                                         guint64 *clip_stop);
    + guint64 start, + guint64 stop, + guint64 *clip_start, + guint64 *clip_stop);

    Clip the given start and stop values to the segment boundaries given in segment. start and stop are compared and clipped to segment @@ -415,9 +415,9 @@ Free the allocated segment segment. GstFormat format, GstSeekFlags flags, GstSeekType start_type, - guint64 start, + guint64 start, GstSeekType stop_type, - guint64 stop, + guint64 stop, gboolean *update);

    Update the segment structure with the field values of a seek event (see @@ -503,9 +503,9 @@ has been changed but not the playback position.


    gst_segment_to_running_time ()

    -
    guint64             gst_segment_to_running_time         (const GstSegment *segment,
    +
    guint64             gst_segment_to_running_time         (const GstSegment *segment,
                                                              GstFormat format,
    -                                                         guint64 position);
    + guint64 position);

    Translate position to the total running time using the currently configured and previously accumulated segments. Position is a value between segment @@ -546,9 +546,9 @@ was given.


    gst_segment_to_stream_time ()

    -
    guint64             gst_segment_to_stream_time          (const GstSegment *segment,
    +
    guint64             gst_segment_to_stream_time          (const GstSegment *segment,
                                                              GstFormat format,
    -                                                         guint64 position);
    + guint64 position);

    Translate position to stream time using the currently configured segment. The position value must be between segment start and @@ -588,9 +588,9 @@ was given.


    gst_segment_to_position ()

    -
    guint64             gst_segment_to_position             (const GstSegment *segment,
    +
    guint64             gst_segment_to_position             (const GstSegment *segment,
                                                              GstFormat format,
    -                                                         guint64 running_time);
    + guint64 running_time);

    Convert running_time into a position in the segment so that gst_segment_to_running_time() with that position returns running_time. @@ -624,7 +624,7 @@ Convert running_time into a position in

    gst_segment_set_running_time ()

    gboolean            gst_segment_set_running_time        (GstSegment *segment,
                                                              GstFormat format,
    -                                                         guint64 running_time);
    + guint64 running_time);

    Adjust the start/stop and base values of segment such that the next valid buffer will be one with running_time. @@ -659,6 +659,24 @@ returned, running_time is -1 or not in <

    gst_segment_copy_into ()

    void                gst_segment_copy_into               (const GstSegment *src,
                                                              GstSegment *dest);
    +

    +Copy the contents of src into dest. +

    +
    ++ + + + + + + + + + +

    src :

    a GstSegment. [transfer none] +

    dest :

    a GstSegment. [transfer none] +
    diff --git a/docs/gst/html/gstreamer-GstStructure.html b/docs/gst/html/gstreamer-GstStructure.html index 9c12b5b..9cbf2a0 100644 --- a/docs/gst/html/gstreamer-GstStructure.html +++ b/docs/gst/html/gstreamer-GstStructure.html @@ -3,8 +3,8 @@ GstStructure - - + + @@ -17,7 +17,7 @@ Prev Up Home -GStreamer 0.11 Core Reference Manual +GStreamer 1.0 Core Reference Manual Next @@ -47,15 +47,15 @@ struct gboolean (*GstStructureMapFunc) (GQuark field_id, GValue *value, gpointer user_data); -GstStructure * gst_structure_empty_new (const gchar *name); -GstStructure * gst_structure_id_empty_new (GQuark quark); +GstStructure * gst_structure_new_empty (const gchar *name); +GstStructure * gst_structure_new_id_empty (GQuark quark); GstStructure * gst_structure_new (const gchar *name, const gchar *firstfield, ...); GstStructure * gst_structure_new_valist (const gchar *name, const gchar *firstfield, va_list varargs); -GstStructure * gst_structure_id_new (GQuark name_quark, +GstStructure * gst_structure_new_id (GQuark name_quark, GQuark field_quark, ...); GstStructure * gst_structure_copy (const GstStructure *structure); @@ -212,17 +212,18 @@ as GQuarks and the values can be of any GType.

    In addition to the key/value pairs, a GstStructure also has a name. The name -starts with a letter and can be folled by letters, numbers and any of "/-_.:". +starts with a letter and can be filled by letters, numbers and any of "/-_.:".

    GstStructure is used by various GStreamer subsystems to store information in a flexible and extensible way. A GstStructure does not have a refcount -because it usually is part of a higher level object such as GstCaps. It -provides a means to enforce mutability using the refcount of the parent -with the gst_structure_set_parent_refcount() method. +because it usually is part of a higher level object such as GstCaps, +GstMessage, GstEvent, GstQuery. It provides a means to enforce mutability +using the refcount of the parent with the gst_structure_set_parent_refcount() +method.

    -A GstStructure can be created with gst_structure_empty_new() or +A GstStructure can be created with gst_structure_new_empty() or gst_structure_new(), which both take a name and an optional set of key/value pairs along with the types of the values.

    @@ -243,7 +244,7 @@ Strings in structures must be ASCII or UTF-8 encoded. Other encodings are not allowed. Strings must not be empty either, but may be NULL.

    -Last reviewed on 2009-06-08 (0.10.23) +Last reviewed on 2012-03-29 (0.11.3)

    @@ -333,8 +334,8 @@ the map operation should stop with FALSE.

    -

    gst_structure_empty_new ()

    -
    GstStructure *      gst_structure_empty_new             (const gchar *name);
    +

    gst_structure_new_empty ()

    +
    GstStructure *      gst_structure_new_empty             (const gchar *name);

    Creates a new, empty GstStructure with the given name.

    @@ -361,8 +362,8 @@ Free-function: gst_structure_free

    -

    gst_structure_id_empty_new ()

    -
    GstStructure *      gst_structure_id_empty_new          (GQuark quark);
    +

    gst_structure_new_id_empty ()

    +
    GstStructure *      gst_structure_new_id_empty          (GQuark quark);

    Creates a new, empty GstStructure with the given name as a GQuark.

    @@ -464,15 +465,15 @@ Free-function: gst_structure_free

    -

    gst_structure_id_new ()

    -
    GstStructure *      gst_structure_id_new                (GQuark name_quark,
    +

    gst_structure_new_id ()

    +
    GstStructure *      gst_structure_new_id                (GQuark name_quark,
                                                              GQuark field_quark,
                                                              ...);

    Creates a new GstStructure with the given name as a GQuark, followed by fieldname quark, GType, argument(s) "triplets" in the same format as gst_structure_id_set(). Basically a convenience wrapper around -gst_structure_id_empty_new() and gst_structure_id_set(). +gst_structure_new_id_empty() and gst_structure_id_set().

    The last variable argument must be NULL (or 0). @@ -662,9 +663,9 @@ more efficient since it saves the string-to-quark lookup in the global quark hashtable.

    -For refcounted (mini)objects you will acquire your own reference which +For refcounted (mini)objects you will receive a new reference which you must release with a suitable _unref() when no longer needed. For -strings and boxed types you will acquire a copy which you will need to +strings and boxed types you will receive a copy which you will need to release with either g_free() or the suitable function for the boxed type.

    @@ -831,9 +832,9 @@ Variable arguments should be in the form field name, field type The last variable argument should be NULL.

    -For refcounted (mini)objects you will acquire your own reference which +For refcounted (mini)objects you will receive a new reference which you must release with a suitable _unref() when no longer needed. For -strings and boxed types you will acquire a copy which you will need to +strings and boxed types you will receive a copy which you will need to release with either g_free() or the suitable function for the boxed type.

    @@ -1374,7 +1375,7 @@ Tests if the two
    -

    Since 0.10.35

    +

    Since 0.10.36


    @@ -1407,7 +1408,7 @@ structure name and for all fields that are existing in
    -

    Since 0.10.35

    +

    Since 0.10.36


    @@ -1438,7 +1439,7 @@ would not be empty.
    -

    Since 0.10.35

    +

    Since 0.10.36


    @@ -1468,7 +1469,7 @@ Interesects struct1 and Since 0.10.35

    +

    Since 0.10.36


    @@ -2033,9 +2034,17 @@ Converts structure to a human-readable s

    For debugging purposes its easier to do something like this:

    -
    -GST_LOG ("structure is %" GST_PTR_FORMAT, structure);
    -
    +
    + + + + + + + +
    1
    GST_LOG ("structure is %" GST_PTR_FORMAT, structure);
    +
    +

    This prints the structure in human readble form.

    @@ -2080,7 +2089,7 @@ Free-function: gst_structure_free

    end :

    -pointer to store the end of the string in. [out][allow-none] +pointer to store the end of the string in. [out][allow-none][transfer none] diff --git a/docs/gst/html/gstreamer-GstTagList.html b/docs/gst/html/gstreamer-GstTagList.html index e328efe..8ac2ad6 100644 --- a/docs/gst/html/gstreamer-GstTagList.html +++ b/docs/gst/html/gstreamer-GstTagList.html @@ -3,8 +3,8 @@ GstTagList - - + + @@ -17,7 +17,7 @@
    Prev Up Home -GStreamer 0.11 Core Reference Manual +GStreamer 1.0 Core Reference Manual Next @@ -40,7 +40,7 @@
     #include <gst/gst.h>
     
    -typedef             GstTagList;
    +                    GstTagList;
     enum                GstTagMergeMode;
     enum                GstTagFlag;
     void                (*GstTagForeachFunc)                (const GstTagList *list,
    @@ -98,6 +98,7 @@ enum                GST_TAG_ALBUM_PEAK
     #define             GST_TAG_REFERENCE_LEVEL
     #define             GST_TAG_LANGUAGE_CODE
    +#define             GST_TAG_LANGUAGE_NAME
     #define             GST_TAG_IMAGE
     #define             GST_TAG_PREVIEW_IMAGE
     #define             GST_TAG_ATTACHMENT
    @@ -143,12 +144,16 @@ const gchar *       gst_tag_get_description             (const gchar *tag);
     GstTagFlag          gst_tag_get_flag                    (const gchar *tag);
     gboolean            gst_tag_is_fixed                    (const gchar *tag);
    -GstTagList *        gst_tag_list_new                    (void);
    -GstTagList *        gst_tag_list_new_full               (const gchar *tag,
    +GstTagList *        gst_tag_list_new                    (const gchar *tag,
                                                              ...);
    -GstTagList *        gst_tag_list_new_full_valist        (va_list var_args);
    +GstTagList *        gst_tag_list_new_empty              (void);
    +GstTagList *        gst_tag_list_new_valist             (va_list var_args);
    +GstTagList *        gst_tag_list_new_from_string        (const gchar *str);
    +gchar *             gst_tag_list_to_string              (const GstTagList *list);
     gboolean            gst_is_tag_list                     (gconstpointer p);
     gboolean            gst_tag_list_is_empty               (const GstTagList *list);
    +gboolean            gst_tag_list_is_equal               (const GstTagList *list1,
    +                                                         const GstTagList *list2);
     GstTagList *        gst_tag_list_copy                   (const GstTagList *list);
     void                gst_tag_list_insert                 (GstTagList *into,
                                                              const GstTagList *from,
    @@ -159,6 +164,9 @@ const void                gst_tag_list_free                   (GstTagList *list);
     guint               gst_tag_list_get_tag_size           (const GstTagList *list,
                                                              const gchar *tag);
    +gint                gst_tag_list_n_tags                 (const GstTagList *list);
    +const gchar *       gst_tag_list_nth_tag_name           (const GstTagList *list,
    +                                                         guint index);
     void                gst_tag_list_add                    (GstTagList *list,
                                                              GstTagMergeMode mode,
                                                              const gchar *tag,
    @@ -190,20 +198,6 @@ const gboolean            gst_tag_list_copy_value             (GValue *dest,
                                                              const GstTagList *list,
                                                              const gchar *tag);
    -gboolean            gst_tag_list_get_char               (const GstTagList *list,
    -                                                         const gchar *tag,
    -                                                         gchar *value);
    -gboolean            gst_tag_list_get_char_index         (const GstTagList *list,
    -                                                         const gchar *tag,
    -                                                         guint index,
    -                                                         gchar *value);
    -gboolean            gst_tag_list_get_uchar              (const GstTagList *list,
    -                                                         const gchar *tag,
    -                                                         guchar *value);
    -gboolean            gst_tag_list_get_uchar_index        (const GstTagList *list,
    -                                                         const gchar *tag,
    -                                                         guint index,
    -                                                         guchar *value);
     gboolean            gst_tag_list_get_boolean            (const GstTagList *list,
                                                              const gchar *tag,
                                                              gboolean *value);
    @@ -225,34 +219,20 @@ const const gchar *tag,
                                                              guint index,
                                                              guint *value);
    -gboolean            gst_tag_list_get_long               (const GstTagList *list,
    -                                                         const gchar *tag,
    -                                                         glong *value);
    -gboolean            gst_tag_list_get_long_index         (const GstTagList *list,
    -                                                         const gchar *tag,
    -                                                         guint index,
    -                                                         glong *value);
    -gboolean            gst_tag_list_get_ulong              (const GstTagList *list,
    -                                                         const gchar *tag,
    -                                                         gulong *value);
    -gboolean            gst_tag_list_get_ulong_index        (const GstTagList *list,
    -                                                         const gchar *tag,
    -                                                         guint index,
    -                                                         gulong *value);
     gboolean            gst_tag_list_get_int64              (const GstTagList *list,
                                                              const gchar *tag,
    -                                                         gint64 *value);
    +                                                         gint64 *value);
     gboolean            gst_tag_list_get_int64_index        (const GstTagList *list,
                                                              const gchar *tag,
                                                              guint index,
    -                                                         gint64 *value);
    +                                                         gint64 *value);
     gboolean            gst_tag_list_get_uint64             (const GstTagList *list,
                                                              const gchar *tag,
    -                                                         guint64 *value);
    +                                                         guint64 *value);
     gboolean            gst_tag_list_get_uint64_index       (const GstTagList *list,
                                                              const gchar *tag,
                                                              guint index,
    -                                                         guint64 *value);
    +                                                         guint64 *value);
     gboolean            gst_tag_list_get_float              (const GstTagList *list,
                                                              const gchar *tag,
                                                              gfloat *value);
    @@ -324,8 +304,7 @@ Last reviewed on 2009-06-09 (0.10.23)
     

    Details

    GstTagList

    -
    typedef GstStructure GstTagList;
    -
    +
    typedef struct _GstTagList GstTagList;

    Opaque GstTagList data structure.

    @@ -357,7 +336,7 @@ In the table below this is shown for the cases that a tag exists in the list

    -

    Table 1. merge mode

    +

    Table 1. merge mode

    @@ -608,7 +587,7 @@ The artist name as it should be displayed, e.g. 'Jimi Hendrix' or

    GST_TAG_ARTIST_SORTNAME

    -
    #define GST_TAG_ARTIST_SORTNAME        "musicbrainz-sortname"
    +
    #define GST_TAG_ARTIST_SORTNAME        "artist-sortname"
     

    person(s) responsible for the recording, as used for sorting (string) @@ -1066,8 +1045,27 @@ reference level of track and album gain values (double)

    #define GST_TAG_LANGUAGE_CODE          "language-code"
     

    -Language code (ISO-639-1) (string) of the content +ISO-639-2 or ISO-639-1 code for the language the content is in (string)

    +

    +There is utility API in libgsttag in gst-plugins-base to obtain a translated +language name from the language code: gst_tag_get_language_name() +

    +
    +
    +
    +

    GST_TAG_LANGUAGE_NAME

    +
    #define GST_TAG_LANGUAGE_NAME          "language-name"
    +
    +

    +Name of the language the content is in (string) +

    +

    +Free-form name of the language the content is in, if a language code +is not available. This tag should not be set in addition to a language +code. It is undefined what language or locale the language name is in. +

    +

    Since 0.10.37


    @@ -1075,7 +1073,7 @@ Language code (ISO-639-1) (string) of the content
    #define GST_TAG_IMAGE                  "image"
     

    -image (buffer) (buffer caps should specify the content type and preferably +image (sample) (sample caps should specify the content type and preferably also set "image-type" field as GstTagImageType)

    Since 0.10.6

    @@ -1087,7 +1085,7 @@ also set "image-type" field as Since 0.10.7

    @@ -1097,7 +1095,7 @@ image that is meant for preview purposes, e.g. small icon-sized version
    #define GST_TAG_ATTACHMENT             "attachment"
     

    -generic file attachment (buffer) (buffer caps should specify the content +generic file attachment (sample) (sample caps should specify the content type and if possible set "filename" to the file name of the attachment)

    @@ -1665,26 +1663,7 @@ Unfixed tags can contain lists of values.

    gst_tag_list_new ()

    -
    GstTagList *        gst_tag_list_new                    (void);
    -

    -Creates a new empty GstTagList. -

    -

    -Free-function: gst_tag_list_free -

    -
    -- - - - -

    Returns :

    An empty tag list. [transfer full] -
    -
    -
    -
    -

    gst_tag_list_new_full ()

    -
    GstTagList *        gst_tag_list_new_full               (const gchar *tag,
    +
    GstTagList *        gst_tag_list_new                    (const gchar *tag,
                                                              ...);

    Creates a new taglist and appends the values for the given tags. It expects @@ -1721,10 +1700,29 @@ when no longer needed. [ -

    gst_tag_list_new_full_valist ()

    -
    GstTagList *        gst_tag_list_new_full_valist        (va_list var_args);
    +

    gst_tag_list_new_empty ()

    +
    GstTagList *        gst_tag_list_new_empty              (void);
    +

    +Creates a new empty GstTagList. +

    -Just like gst_tag_list_new_full(), only that it takes a va_list argument. +Free-function: gst_tag_list_free +

    +
    ++ + + + +

    Returns :

    An empty tag list. [transfer full] +
    +
    +
    +
    +

    gst_tag_list_new_valist ()

    +
    GstTagList *        gst_tag_list_new_valist             (va_list var_args);
    +

    +Just like gst_tag_list_new(), only that it takes a va_list argument. Useful mostly for language bindings.

    @@ -1749,6 +1747,53 @@ when no longer needed. [ +

    gst_tag_list_new_from_string ()

    +
    GstTagList *        gst_tag_list_new_from_string        (const gchar *str);
    +

    +Deserializes a tag list. +

    +
    ++ + + + + + + + + + +

    str :

    a string created with gst_tag_list_to_string() +

    Returns :

    a new GstTagList, or NULL in case of an error.
    +

    Since 0.10.36

    +
    +
    +
    +

    gst_tag_list_to_string ()

    +
    gchar *             gst_tag_list_to_string              (const GstTagList *list);
    +

    +Serializes a tag list to a string. +

    +
    ++ + + + + + + + + + +

    list :

    a GstTagList +

    Returns :

    a newly-allocated string, or NULL in case of an error. The +string must be freed with g_free() when no longer needed.
    +

    Since 0.10.36

    +
    +
    +

    gst_is_tag_list ()

    gboolean            gst_is_tag_list                     (gconstpointer p);

    @@ -1792,6 +1837,33 @@ Checks if the given taglist is empty.


    +

    gst_tag_list_is_equal ()

    +
    gboolean            gst_tag_list_is_equal               (const GstTagList *list1,
    +                                                         const GstTagList *list2);
    +

    +Checks if the two given taglists are equal. +

    +
    ++ + + + + + + + + + + + + + +

    list1 :

    a GstTagList.

    list2 :

    a GstTagList.

    Returns :

    TRUE if the taglists are equal, otherwise FALSE
    +

    Since 0.10.36

    +
    +
    +

    gst_tag_list_copy ()

    GstTagList *        gst_tag_list_copy                   (const GstTagList *list);

    @@ -1922,6 +1994,53 @@ Checks how many value are stored in this tag list for the given tag.


    +

    gst_tag_list_n_tags ()

    +
    gint                gst_tag_list_n_tags                 (const GstTagList *list);
    +

    +Get the number of tags in list. +

    +
    ++ + + + + + + + + + +

    list :

    A GstTagList.

    Returns :

    The number of tags in list.
    +
    +
    +
    +

    gst_tag_list_nth_tag_name ()

    +
    const gchar *       gst_tag_list_nth_tag_name           (const GstTagList *list,
    +                                                         guint index);
    +

    +Get the name of the tag in list at index. +

    +
    ++ + + + + + + + + + + + + + +

    list :

    A GstTagList.

    index :

    the index

    Returns :

    The name of the tag at index.
    +
    +
    +

    gst_tag_list_add ()

    void                gst_tag_list_add                    (GstTagList *list,
                                                              GstTagMergeMode mode,
    @@ -2206,152 +2325,6 @@ given list.
     

    -

    gst_tag_list_get_char ()

    -
    gboolean            gst_tag_list_get_char               (const GstTagList *list,
    -                                                         const gchar *tag,
    -                                                         gchar *value);
    -

    -Copies the contents for the given tag into the value, merging multiple values -into one if multiple values are associated with the tag. -

    -
    -- - - - - - - - - - - - - - - - - - -

    list :

    a GstTagList to get the tag from

    tag :

    tag to read out

    value :

    location for the result. [out] -

    Returns :

    TRUE, if a value was copied, FALSE if the tag didn't exist in the -given list.
    -
    -
    -
    -

    gst_tag_list_get_char_index ()

    -
    gboolean            gst_tag_list_get_char_index         (const GstTagList *list,
    -                                                         const gchar *tag,
    -                                                         guint index,
    -                                                         gchar *value);
    -

    -Gets the value that is at the given index for the given tag in the given -list. -

    -
    -- - - - - - - - - - - - - - - - - - - - - - -

    list :

    a GstTagList to get the tag from

    tag :

    tag to read out

    index :

    number of entry to read out

    value :

    location for the result. [out] -

    Returns :

    TRUE, if a value was copied, FALSE if the tag didn't exist in the -given list.
    -
    -
    -
    -

    gst_tag_list_get_uchar ()

    -
    gboolean            gst_tag_list_get_uchar              (const GstTagList *list,
    -                                                         const gchar *tag,
    -                                                         guchar *value);
    -

    -Copies the contents for the given tag into the value, merging multiple values -into one if multiple values are associated with the tag. -

    -
    -- - - - - - - - - - - - - - - - - - -

    list :

    a GstTagList to get the tag from

    tag :

    tag to read out

    value :

    location for the result. [out] -

    Returns :

    TRUE, if a value was copied, FALSE if the tag didn't exist in the -given list.
    -
    -
    -
    -

    gst_tag_list_get_uchar_index ()

    -
    gboolean            gst_tag_list_get_uchar_index        (const GstTagList *list,
    -                                                         const gchar *tag,
    -                                                         guint index,
    -                                                         guchar *value);
    -

    -Gets the value that is at the given index for the given tag in the given -list. -

    -
    -- - - - - - - - - - - - - - - - - - - - - - -

    list :

    a GstTagList to get the tag from

    tag :

    tag to read out

    index :

    number of entry to read out

    value :

    location for the result. [out] -

    Returns :

    TRUE, if a value was copied, FALSE if the tag didn't exist in the -given list.
    -
    -
    -

    gst_tag_list_get_boolean ()

    gboolean            gst_tag_list_get_boolean            (const GstTagList *list,
                                                              const gchar *tag,
    @@ -2571,183 +2544,10 @@ given list.
     

    -

    gst_tag_list_get_long ()

    -
    gboolean            gst_tag_list_get_long               (const GstTagList *list,
    -                                                         const gchar *tag,
    -                                                         glong *value);
    -

    -Copies the contents for the given tag into the value, merging multiple values -into one if multiple values are associated with the tag. -

    -
    -- - - - - - - - - - - - - - - - - - -

    list :

    a GstTagList to get the tag from

    tag :

    tag to read out

    value :

    location for the result. [out] -

    Returns :

    TRUE, if a value was copied, FALSE if the tag didn't exist in the -given list.
    -
    -
    -
    -

    gst_tag_list_get_long_index ()

    -
    gboolean            gst_tag_list_get_long_index         (const GstTagList *list,
    -                                                         const gchar *tag,
    -                                                         guint index,
    -                                                         glong *value);
    -

    -Gets the value that is at the given index for the given tag in the given -list. -

    -
    -- - - - - - - - - - - - - - - - - - - - - - -

    list :

    a GstTagList to get the tag from

    tag :

    tag to read out

    index :

    number of entry to read out

    value :

    location for the result. [out] -

    Returns :

    TRUE, if a value was copied, FALSE if the tag didn't exist in the -given list.
    -
    -
    -
    -

    gst_tag_list_get_ulong ()

    -
    gboolean            gst_tag_list_get_ulong              (const GstTagList *list,
    -                                                         const gchar *tag,
    -                                                         gulong *value);
    -

    -Copies the contents for the given tag into the value, merging multiple values -into one if multiple values are associated with the tag. -

    -
    -- - - - - - - - - - - - - - - - - - -

    list :

    a GstTagList to get the tag from

    tag :

    tag to read out

    value :

    location for the result. [out] -

    Returns :

    TRUE, if a value was copied, FALSE if the tag didn't exist in the -given list.
    -
    -
    -
    -

    gst_tag_list_get_ulong_index ()

    -
    gboolean            gst_tag_list_get_ulong_index        (const GstTagList *list,
    -                                                         const gchar *tag,
    -                                                         guint index,
    -                                                         gulong *value);
    -

    -Gets the value that is at the given index for the given tag in the given -list. -

    -
    -- - - - - - - - - - - - - - - - - - - - - - -

    list :

    a GstTagList to get the tag from

    tag :

    tag to read out

    index :

    number of entry to read out

    value :

    location for the result. [out] -

    Returns :

    TRUE, if a value was copied, FALSE if the tag didn't exist in the -given list.
    -
    -
    -

    gst_tag_list_get_int64 ()

    gboolean            gst_tag_list_get_int64              (const GstTagList *list,
                                                              const gchar *tag,
    -                                                         gint64 *value);
    -

    -Copies the contents for the given tag into the value, merging multiple values -into one if multiple values are associated with the tag. -

    -
    -- - - - - - - - - - - - - - - - - - -

    list :

    a GstTagList to get the tag from

    tag :

    tag to read out

    value :

    location for the result. [out] -

    Returns :

    TRUE, if a value was copied, FALSE if the tag didn't exist in the -given list.
    + gint64 *value);

    @@ -2755,7 +2555,7 @@ given list.
    gboolean            gst_tag_list_get_int64_index        (const GstTagList *list,
                                                              const gchar *tag,
                                                              guint index,
    -                                                         gint64 *value);
    + gint64 *value);

    Gets the value that is at the given index for the given tag in the given list. @@ -2793,7 +2593,7 @@ given list.

    gst_tag_list_get_uint64 ()

    gboolean            gst_tag_list_get_uint64             (const GstTagList *list,
                                                              const gchar *tag,
    -                                                         guint64 *value);
    + guint64 *value);

    Copies the contents for the given tag into the value, merging multiple values into one if multiple values are associated with the tag. @@ -2828,7 +2628,7 @@ given list.

    gboolean            gst_tag_list_get_uint64_index       (const GstTagList *list,
                                                              const gchar *tag,
                                                              guint index,
    -                                                         guint64 *value);
    + guint64 *value);

    Gets the value that is at the given index for the given tag in the given list. diff --git a/docs/gst/html/gstreamer-GstToc.html b/docs/gst/html/gstreamer-GstToc.html new file mode 100644 index 0000000..716c27c --- /dev/null +++ b/docs/gst/html/gstreamer-GstToc.html @@ -0,0 +1,481 @@ + + + + +GstToc + + + + + + + + + + + + + + + + + + + +

    +
    +
    + + +
    +

    GstToc

    +

    GstToc — Generic table of contents support

    +
    +
    +

    Synopsis

    +
    +#include <gst/gst.h>
    +
    +struct              GstToc;
    +struct              GstTocEntry;
    +enum                GstTocEntryType;
    +GstTocEntry *       gst_toc_entry_new                   (GstTocEntryType type,
    +                                                         const gchar *uid);
    +GstTocEntry *       gst_toc_entry_new_with_pad          (GstTocEntryType type,
    +                                                         const gchar *uid,
    +                                                         gpointer pad);
    +void                gst_toc_entry_free                  (GstTocEntry *entry);
    +GstToc *            gst_toc_new                         (void);
    +void                gst_toc_free                        (GstToc *toc);
    +GstTocEntry *       gst_toc_entry_copy                  (const GstTocEntry *entry);
    +GstToc *            gst_toc_copy                        (const GstToc *toc);
    +GstTocEntry *       gst_toc_find_entry                  (const GstToc *toc,
    +                                                         const gchar *uid);
    +gboolean            gst_toc_entry_get_start_stop        (const GstTocEntry *entry,
    +                                                         gint64 *start,
    +                                                         gint64 *stop);
    +void                gst_toc_entry_set_start_stop        (GstTocEntry *entry,
    +                                                         gint64 start,
    +                                                         gint64 stop);
    +
    +
    +
    +

    Description

    +

    +GstToc functions are used to create/free GstToc and GstTocEntry structures. +Also they are used to convert GstToc into GstStructure and vice versa. +

    +

    +GstToc lets you to inform other elements in pipeline or application that playing +source has some kind of table of contents (TOC). These may be chapters, editions, +angles or other types. For example: DVD chapters, Matroska chapters or cue sheet +TOC. Such TOC will be useful for applications to display instead of just a +playlist. +

    +

    +Using TOC is very easy. Firstly, create GstToc structure which represents root +contents of the source. You can also attach TOC-specific tags to it. Then fill +it with GstTocEntry entries by appending them to GstToc.entries GstTocEntry.subentries +lists. You should use GST_TOC_ENTRY_TYPE_CHAPTER for generic TOC entry and +GST_TOC_ENTRY_TYPE_EDITION for the entries which are considered to be alternatives +(like DVD angles, Matroska editions and so on). +

    +

    +Note that root level of the TOC can contain only either editions or chapters. You +should not mix them together at the same level. Otherwise you will get serialization +/deserialization errors. Make sure that no one of the entries has negative start and + stop values. +

    +

    +Please, use GstToc.info and GstTocEntry.info fields in that way: create a GstStructure, +put all info related to your element there and put this structure into the info field under +the name of your element. Some fields in the info structure can be used for internal purposes, +so you should use it in the way described above to not to overwrite already existent fields. +

    +

    +Use gst_event_new_toc() to create a new TOC GstEvent, and gst_event_parse_toc() to +parse received TOC event. Use gst_event_new_toc_select() to create a new TOC select GstEvent, +and gst_event_parse_toc_select() to parse received TOC select event. The same rule for +the GstMessage: gst_message_new_toc() to create new TOC GstMessage, and +gst_message_parse_toc() to parse received TOC message. Also you can create a new TOC query +with gst_query_new_toc(), set it with gst_query_set_toc() and parse it with +gst_query_parse_toc(). +

    +
    +
    +

    Details

    +
    +

    struct GstToc

    +
    struct GstToc {
    +  GList *entries;
    +  GstTagList *tags;
    +  GstStructure *info;
    +};
    +
    +

    +Definition of TOC structure. +

    +
    ++ + + + + + + + + + + + + + +

    GList *entries;

    list of GstTocEntry entries of the TOC.

    GstTagList *tags;

    tags related to the whole TOC.

    GstStructure *info;

    extra information related to the TOC.
    +
    +
    +
    +

    struct GstTocEntry

    +
    struct GstTocEntry {
    +  gchar *uid;
    +  GstTocEntryType type;
    +  GList *subentries;
    +  GList *pads;
    +  GstTagList *tags;
    +  GstStructure *info;
    +};
    +
    +

    +Definition of TOC entry structure. +

    +
    ++ + + + + + + + + + + + + + + + + + + + + + + + + + +

    gchar *uid;

    unique (for a whole TOC) id of the entry. This value should be persistent and +should not be changed while updating TOC. uid should be handled as "opaque" value +without meaning (e.g. applications should not assume the /editionX/chapterY/chapter/Z structure, +other demuxers could do something else), it should help to track updates of certain entries.

    GstTocEntryType type;

    +GstTocEntryType of this entry.

    GList *subentries;

    list of GstTocEntry children.

    GList *pads;

    list of GstPad objects, related to this GstTocEntry.

    GstTagList *tags;

    tags related to this entry.

    GstStructure *info;

    extra information related to this entry.
    +
    +
    +
    +

    enum GstTocEntryType

    +
    typedef enum {
    +  GST_TOC_ENTRY_TYPE_CHAPTER     = 0,
    +  GST_TOC_ENTRY_TYPE_EDITION     = 1
    +} GstTocEntryType;
    +
    +

    +The different types of TOC entry. +

    +
    ++ + + + + + + + + + +

    GST_TOC_ENTRY_TYPE_CHAPTER

    a chapter type entry. +

    GST_TOC_ENTRY_TYPE_EDITION

    an edition entry (angle or alternative in other terms). +
    +
    +
    +
    +

    gst_toc_entry_new ()

    +
    GstTocEntry *       gst_toc_entry_new                   (GstTocEntryType type,
    +                                                         const gchar *uid);
    +

    +Create new GstTocEntry structure. +

    +
    ++ + + + + + + + + + + + + + +

    type :

    entry type.

    uid :

    unique ID (UID) in the whole TOC.

    Returns :

    newly allocated GstTocEntry structure, free it with gst_toc_entry_free().
    +

    Since 0.10.37

    +
    +
    +
    +

    gst_toc_entry_new_with_pad ()

    +
    GstTocEntry *       gst_toc_entry_new_with_pad          (GstTocEntryType type,
    +                                                         const gchar *uid,
    +                                                         gpointer pad);
    +

    +Create new GstTocEntry structure with GstPad related. +

    +
    ++ + + + + + + + + + + + + + + + + + +

    type :

    entry type.

    uid :

    unique ID (UID) in the whole TOC.

    pad :

    +GstPad related to this entry.

    Returns :

    newly allocated GstTocEntry structure, free it with gst_toc_entry_free() +when done.
    +

    Since 0.10.37

    +
    +
    +
    +

    gst_toc_entry_free ()

    +
    void                gst_toc_entry_free                  (GstTocEntry *entry);
    +

    +Free unused GstTocEntry structure. Note that GstTocEntry.uid will +be freed with g_free() and all GstPad objects in the GstTocEntry.pads +list will be unrefed with gst_object_unref(). +

    +
    ++ + + + +

    entry :

    +GstTocEntry structure to free.
    +

    Since 0.10.37

    +
    +
    +
    +

    gst_toc_new ()

    +
    GstToc *            gst_toc_new                         (void);
    +

    +Create new GstToc structure. +

    +
    ++ + + + +

    Returns :

    newly allocated GstToc structure, free it with gst_toc_free().
    +

    Since 0.10.37

    +
    +
    +
    +

    gst_toc_free ()

    +
    void                gst_toc_free                        (GstToc *toc);
    +

    +Free unused GstToc structure. +

    +
    ++ + + + +

    toc :

    +GstToc structure to free.
    +

    Since 0.10.37

    +
    +
    +
    +

    gst_toc_entry_copy ()

    +
    GstTocEntry *       gst_toc_entry_copy                  (const GstTocEntry *entry);
    +

    +Copy GstTocEntry with all subentries (deep copy). +

    +
    ++ + + + + + + + + + +

    entry :

    +GstTocEntry to copy.

    Returns :

    newly allocated GstTocEntry in case of success, NULL otherwise; +free it when done with gst_toc_entry_free().
    +

    Since 0.10.37

    +
    +
    +
    +

    gst_toc_copy ()

    +
    GstToc *            gst_toc_copy                        (const GstToc *toc);
    +

    +Copy GstToc with all subentries (deep copy). +

    +
    ++ + + + + + + + + + +

    toc :

    +GstToc to copy.

    Returns :

    newly allocated GstToc in case of success, NULL otherwise; +free it when done with gst_toc_free().
    +

    Since 0.10.37

    +
    +
    +
    +

    gst_toc_find_entry ()

    +
    GstTocEntry *       gst_toc_find_entry                  (const GstToc *toc,
    +                                                         const gchar *uid);
    +

    +Find GstTocEntry with given uid in the toc. +

    +
    ++ + + + + + + + + + + + + + +

    toc :

    +GstToc to search in.

    uid :

    UID to find GstTocEntry with.

    Returns :

    +GstTocEntry with specified uid from the toc, or NULL if not found.
    +

    Since 0.10.37

    +
    +
    +
    +

    gst_toc_entry_get_start_stop ()

    +
    gboolean            gst_toc_entry_get_start_stop        (const GstTocEntry *entry,
    +                                                         gint64 *start,
    +                                                         gint64 *stop);
    +

    +Get start and stop values from the entry and write them into appropriate storages. +

    +
    ++ + + + + + + + + + + + + + + + + + +

    entry :

    +GstTocEntry to get values from.

    start :

    the storage for the start value, leave NULL if not need. [out] +

    stop :

    the storage for the stop value, leave NULL if not need. [out] +

    Returns :

    TRUE if all non-NULL storage pointers were filled with appropriate values, +FALSE otherwise.
    +

    Since 0.10.37

    +
    +
    +
    +

    gst_toc_entry_set_start_stop ()

    +
    void                gst_toc_entry_set_start_stop        (GstTocEntry *entry,
    +                                                         gint64 start,
    +                                                         gint64 stop);
    +

    +Set start and stop values for the entry. +

    +
    ++ + + + + + + + + + + + + + +

    entry :

    +GstTocEntry to set values.

    start :

    start value to set.

    stop :

    stop value to set.
    +

    Since 0.10.37

    +
    +
    + +
    + + + \ No newline at end of file diff --git a/docs/gst/html/gstreamer-GstTocSetter.html b/docs/gst/html/gstreamer-GstTocSetter.html new file mode 100644 index 0000000..c9aec50 --- /dev/null +++ b/docs/gst/html/gstreamer-GstTocSetter.html @@ -0,0 +1,308 @@ + + + + +GstTocSetter + + + + + + + + + + + + + + + + + + + +
    +
    +
    + + +
    +

    GstTocSetter

    +

    GstTocSetter — Element interface that allows setting and retrieval + of the TOC

    +
    +
    +

    Synopsis

    +
    +#include <gst/gst.h>
    +
    +                    GstTocSetter;
    +struct              GstTocSetterIFace;
    +const GstToc *      gst_toc_setter_get_toc              (GstTocSetter *setter);
    +GstToc *            gst_toc_setter_get_toc_copy         (GstTocSetter *setter);
    +void                gst_toc_setter_reset_toc            (GstTocSetter *setter);
    +void                gst_toc_setter_set_toc              (GstTocSetter *setter,
    +                                                         const GstToc *toc);
    +const GstTocEntry * gst_toc_setter_get_toc_entry        (GstTocSetter *setter,
    +                                                         const gchar *uid);
    +GstTocEntry *       gst_toc_setter_get_toc_entry_copy   (GstTocSetter *setter,
    +                                                         const gchar *uid);
    +gboolean            gst_toc_setter_add_toc_entry        (GstTocSetter *setter,
    +                                                         const gchar *parent_uid,
    +                                                         const GstTocEntry *entry);
    +
    +
    +
    +

    Description

    +

    +Element interface that allows setting of the TOC. +

    +

    +Elements that support some kind of chapters or editions (or tracks like in +the FLAC cue sheet) will implement this interface. +

    +

    +If you just want to retrieve the TOC in your application then all you +need to do is watch for TOC messages on your pipeline's bus (or you can +perform TOC query). This interface is only for setting TOC data, not for +extracting it. To set TOC from the application, find proper tocsetter element +and set TOC using gst_toc_setter_set_toc(). +

    +

    +Elements implementing the GstTocSetter interface can extend existing TOC +by getting extend UID for that (you can use gst_toc_find_entry() to retrieve it) +with any TOC entries received from downstream. +

    +
    +
    +

    Details

    +
    +

    GstTocSetter

    +
    typedef struct _GstTocSetter GstTocSetter;
    +

    +Opaque GstTocSetter data structure. +

    +
    +
    +
    +

    struct GstTocSetterIFace

    +
    struct GstTocSetterIFace {
    +  GTypeInterface g_iface;
    +
    +  /* signals */
    +
    +  /* virtual table */
    +};
    +
    +

    +GstTocSetterIFace interface. +

    +
    ++ + + + +

    GTypeInterface g_iface;

    parent interface type.
    +
    +
    +
    +

    gst_toc_setter_get_toc ()

    +
    const GstToc *      gst_toc_setter_get_toc              (GstTocSetter *setter);
    +

    +Return current TOC the setter uses. The TOC should not be +modified or freed. +

    +

    +This function is not thread-safe. Use gst_toc_setter_get_toc_copy() instead. +

    +
    ++ + + + + + + + + + +

    setter :

    a GstTocSetter.

    Returns :

    a current snapshot of the TOC used in the setter +or NULL if none is used.
    +

    Since 0.10.37

    +
    +
    +
    +

    gst_toc_setter_get_toc_copy ()

    +
    GstToc *            gst_toc_setter_get_toc_copy         (GstTocSetter *setter);
    +

    +Return current TOC the setter uses. The difference between this +function and gst_toc_setter_get_toc() is that this function returns deep +copy of the TOC, so you can modify it in any way. This function is thread-safe. +Free it when done with gst_toc_free(). +

    +
    ++ + + + + + + + + + +

    setter :

    a GstTocSetter.

    Returns :

    a copy of the current snapshot of the TOC used in the setter +or NULL if none is used.
    +

    Since 0.10.37

    +
    +
    +
    +

    gst_toc_setter_reset_toc ()

    +
    void                gst_toc_setter_reset_toc            (GstTocSetter *setter);
    +

    +Reset the internal TOC. Elements should call this from within the +state-change handler. +

    +
    ++ + + + +

    setter :

    a GstTocSetter.
    +

    Since 0.10.37

    +
    +
    +
    +

    gst_toc_setter_set_toc ()

    +
    void                gst_toc_setter_set_toc              (GstTocSetter *setter,
    +                                                         const GstToc *toc);
    +

    +Set the given TOC on the setter. Previously setted TOC will be +freed before setting a new one. +

    +
    ++ + + + + + + + + + +

    setter :

    a GstTocSetter.

    toc :

    a GstToc to set.
    +

    Since 0.10.37

    +
    +
    +
    +

    gst_toc_setter_get_toc_entry ()

    +
    const GstTocEntry * gst_toc_setter_get_toc_entry        (GstTocSetter *setter,
    +                                                         const gchar *uid);
    +

    +Return GstTocEntry (if any) with given uid. Returned entry should +not be modified or freed. +

    +

    +This function is not thread-safe. Use gst_toc_setter_get_toc_entry_copy() instead. +

    +
    ++ + + + + + + + + + + + + + +

    setter :

    a GstTocSetter.

    uid :

    UID to find entry with.

    Returns :

    a TOC entry with given uid from the TOC in the setter +or NULL if none entry with such uid was found.
    +

    Since 0.10.37

    +
    +
    +
    +

    gst_toc_setter_get_toc_entry_copy ()

    +
    GstTocEntry *       gst_toc_setter_get_toc_entry_copy   (GstTocSetter *setter,
    +                                                         const gchar *uid);
    +

    +Return GstTocEntry (if any) with given uid. It perform a deep copying, +so you can modify returned value. Free it when done with gst_toc_entry_free(). +This function is thread-safe. +

    +
    ++ + + + + + + + + + + + + + +

    setter :

    a GstTocSetter.

    uid :

    UID to find entry with.

    Returns :

    a TOC entry with given uid from the TOC in the setter +or NULL if none entry with such uid was found.
    +

    Since 0.10.37

    +
    +
    +
    +

    gst_toc_setter_add_toc_entry ()

    +
    gboolean            gst_toc_setter_add_toc_entry        (GstTocSetter *setter,
    +                                                         const gchar *parent_uid,
    +                                                         const GstTocEntry *entry);
    +

    +Try to find entry with given parent_uid and append an entry to that GstTocEntry. +

    +
    ++ + + + + + + + + + + + + + + + + + +

    setter :

    a GstTocSetter.

    parent_uid :

    UID of the parent entry to append given entry. Use 0 for the TOC root level.

    entry :

    +GstTocEntry to append.

    Returns :

    TRUE if entry with parent_uid was found, FALSE otherwise.
    +

    Since 0.10.37

    +
    +
    +
    + + + \ No newline at end of file diff --git a/docs/gst/html/gstreamer-GstTrace.html b/docs/gst/html/gstreamer-GstTrace.html deleted file mode 100644 index 20720b4..0000000 --- a/docs/gst/html/gstreamer-GstTrace.html +++ /dev/null @@ -1,582 +0,0 @@ - - - - -GstTrace - - - - - - - - - - - - - - - - - - - -
    -
    -
    - - -
    -

    GstTrace

    -

    GstTrace — Tracing functionality

    -
    -
    -

    Synopsis

    -
    -#include <gst/gst.h>
    -
    -struct              GstTrace;
    -GstTrace *          gst_trace_new                       (const gchar *filename,
    -                                                         gint size);
    -void                gst_trace_destroy                   (GstTrace *trace);
    -void                gst_trace_flush                     (GstTrace *trace);
    -void                gst_trace_text_flush                (GstTrace *trace);
    -#define             gst_trace_add_entry                 (trace,
    -                                                         seq,
    -                                                         data,
    -                                                         msg)
    -#define             gst_trace_get_size                  (trace)
    -#define             gst_trace_get_offset                (trace)
    -#define             gst_trace_get_remaining             (trace)
    -void                gst_trace_set_default               (GstTrace *trace);
    -void                gst_trace_read_tsc                  (gint64 *dst);
    -enum                GstAllocTraceFlags;
    -struct              GstAllocTrace;
    -gboolean            gst_alloc_trace_available           (void);
    -const GList *       gst_alloc_trace_list                (void);
    -int                 gst_alloc_trace_live_all            (void);
    -void                gst_alloc_trace_print_all           (void);
    -void                gst_alloc_trace_set_flags_all       (GstAllocTraceFlags flags);
    -GstAllocTrace *     gst_alloc_trace_get                 (const gchar *name);
    -void                gst_alloc_trace_print               (const GstAllocTrace *trace);
    -void                gst_alloc_trace_print_live          (void);
    -void                gst_alloc_trace_set_flags           (GstAllocTrace *trace,
    -                                                         GstAllocTraceFlags flags);
    -#define             gst_alloc_trace_register            (name)
    -#define             gst_alloc_trace_new                 (trace,
    -                                                         mem)
    -#define             gst_alloc_trace_free                (trace,
    -                                                         mem)
    -
    -
    -
    -

    Description

    -

    -Traces allows to track object allocation. They provide a instance counter per -GType. The counter is incremented for each object allocated and decremented -it when it's freed. -

    -

    -

    -
    -

    Example 15. Tracing object instances

    -
    -    // trace un-freed object instances
    -    gst_alloc_trace_set_flags_all (GST_ALLOC_TRACE_LIVE);
    -    if (!gst_alloc_trace_available ()) {
    -      g_warning ("Trace not available (recompile with trace enabled).");
    -    }
    -    gst_alloc_trace_print_live ();
    -    // do something here
    -    gst_alloc_trace_print_live ();
    -  
    -
    -


    -

    -

    -Last reviewed on 2005-11-21 (0.9.5) -

    -
    -
    -

    Details

    -
    -

    struct GstTrace

    -
    struct GstTrace {
    -};
    -
    -

    -Opaque GstTrace structure. -

    -
    -
    -
    -

    gst_trace_new ()

    -
    GstTrace *          gst_trace_new                       (const gchar *filename,
    -                                                         gint size);
    -

    -Create a ringbuffer of size in the file with filename to -store trace results in. -

    -

    -Free-function: gst_trace_destroy -

    -
    -- - - - - - - - - - - - - - -

    filename :

    a filename

    size :

    the max size of the file

    Returns :

    a new GstTrace. [transfer full] -
    -
    -
    -
    -

    gst_trace_destroy ()

    -
    void                gst_trace_destroy                   (GstTrace *trace);
    -

    -Flush an close the previously allocated trace. -

    -
    -- - - - -

    trace :

    the GstTrace to destroy. [in][transfer full] -
    -
    -
    -
    -

    gst_trace_flush ()

    -
    void                gst_trace_flush                     (GstTrace *trace);
    -

    -Flush any pending trace entries in trace to the trace file. -trace can be NULL in which case the default GstTrace will be -flushed. -

    -
    -- - - - -

    trace :

    the GstTrace to flush.
    -
    -
    -
    -

    gst_trace_text_flush ()

    -
    void                gst_trace_text_flush                (GstTrace *trace);
    -

    -Flush any pending trace entries in trace to the trace file, -formatted as a text line with timestamp and sequence numbers. -trace can be NULL in which case the default GstTrace will be -flushed. -

    -
    -- - - - -

    trace :

    the GstTrace to flush.
    -
    -
    -
    -

    gst_trace_add_entry()

    -
    #define             gst_trace_add_entry(trace,seq,data,msg)
    -

    -Add an entry to trace with sequence number seq, data and msg. -If trace is NULL, the entry will be added to the default GstTrace. -

    -
    -- - - - - - - - - - - - - - - - - - -

    trace :

    a GstTrace -

    seq :

    a sequence number

    data :

    the data to trace

    msg :

    the trace message
    -
    -
    -
    -

    gst_trace_get_size()

    -
    #define 	gst_trace_get_size(trace) 	((trace)->bufsize)
    -
    -

    -Retrieve the buffer size of trace. -

    -
    -- - - - -

    trace :

    a GstTrace -
    -
    -
    -
    -

    gst_trace_get_offset()

    -
    #define 	gst_trace_get_offset(trace) 	((trace)->bufoffset)
    -
    -

    -Retrieve the current buffer offset of trace. -

    -
    -- - - - -

    trace :

    a GstTrace -
    -
    -
    -
    -

    gst_trace_get_remaining()

    -
    #define 	gst_trace_get_remaining(trace) 	((trace)->bufsize - (trace)->bufoffset)
    -
    -

    -Retrieve the remaining size in the trace buffer. -

    -
    -- - - - -

    trace :

    a GstTrace -
    -
    -
    -
    -

    gst_trace_set_default ()

    -
    void                gst_trace_set_default               (GstTrace *trace);
    -

    -Set the default GstTrace to trace. -

    -
    -- - - - -

    trace :

    the GstTrace to set as the default.
    -
    -
    -
    -

    gst_trace_read_tsc ()

    -
    void                gst_trace_read_tsc                  (gint64 *dst);
    -

    -Read a platform independent timer value that can be used in -benchmarks. -

    -
    -- - - - -

    dst :

    (out) pointer to hold the result.
    -
    -
    -
    -

    enum GstAllocTraceFlags

    -
    typedef enum {
    -  GST_ALLOC_TRACE_NONE      = 0,
    -  GST_ALLOC_TRACE_LIVE      = (1 << 0),
    -  GST_ALLOC_TRACE_MEM_LIVE = (1 << 1)
    -} GstAllocTraceFlags;
    -
    -

    -Flags indicating which tracing feature to enable. -

    -
    -- - - - - - - - - - - - - - -

    GST_ALLOC_TRACE_NONE

    No tracing specified or desired. Since 0.10.36. -

    GST_ALLOC_TRACE_LIVE

    Trace number of non-freed memory. -

    GST_ALLOC_TRACE_MEM_LIVE

    Trace pointers of unfreed memory. -
    -
    -
    -
    -

    struct GstAllocTrace

    -
    struct GstAllocTrace {
    -  gchar		*name;
    -  gint		 flags;
    -
    -  gint		 live;
    -  GSList *mem_live;
    -};
    -
    -

    -The main tracing object -

    -
    -- - - - - - - - - - - - - - - - - - -

    gchar *name;

    The name of the tracing object

    gint flags;

    Flags for this object

    gint live;

    counter for live memory

    GSList *mem_live;

    list with pointers to unfreed memory
    -
    -
    -
    -

    gst_alloc_trace_available ()

    -
    gboolean            gst_alloc_trace_available           (void);
    -

    -Check if alloc tracing was compiled into the core -

    -
    -- - - - -

    Returns :

    TRUE if the core was compiled with alloc -tracing enabled.
    -
    -
    -
    -

    gst_alloc_trace_list ()

    -
    const GList *       gst_alloc_trace_list                (void);
    -

    -Get a list of all registered alloc trace objects. -

    -
    -- - - - -

    Returns :

    a GList of GstAllocTrace objects.
    -
    -
    -
    -

    gst_alloc_trace_live_all ()

    -
    int                 gst_alloc_trace_live_all            (void);
    -

    -Get the total number of live registered alloc trace objects. -

    -
    -- - - - -

    Returns :

    the total number of live registered alloc trace objects.
    -
    -
    -
    -

    gst_alloc_trace_print_all ()

    -
    void                gst_alloc_trace_print_all           (void);
    -

    -Print the status of all registered alloc trace objects. -

    -
    -
    -
    -

    gst_alloc_trace_set_flags_all ()

    -
    void                gst_alloc_trace_set_flags_all       (GstAllocTraceFlags flags);
    -

    -Enable the specified options on all registered alloc trace -objects. -

    -
    -- - - - -

    flags :

    the options to enable
    -
    -
    -
    -

    gst_alloc_trace_get ()

    -
    GstAllocTrace *     gst_alloc_trace_get                 (const gchar *name);
    -

    -Get the named alloc trace object. -

    -
    -- - - - - - - - - - -

    name :

    the name of the alloc trace object

    Returns :

    a GstAllocTrace with the given name or NULL when -no alloc tracer was registered with that name.
    -
    -
    -
    -

    gst_alloc_trace_print ()

    -
    void                gst_alloc_trace_print               (const GstAllocTrace *trace);
    -

    -Print the status of the given GstAllocTrace. -

    -
    -- - - - -

    trace :

    the GstAllocTrace to print
    -
    -
    -
    -

    gst_alloc_trace_print_live ()

    -
    void                gst_alloc_trace_print_live          (void);
    -

    -Print the status of all registered alloc trace objects, ignoring those -without live objects. -

    -
    -
    -
    -

    gst_alloc_trace_set_flags ()

    -
    void                gst_alloc_trace_set_flags           (GstAllocTrace *trace,
    -                                                         GstAllocTraceFlags flags);
    -

    -Enable the given features on the given GstAllocTrace object. -

    -
    -- - - - - - - - - - -

    trace :

    the GstAllocTrace

    flags :

    flags to set
    -
    -
    -
    -

    gst_alloc_trace_register()

    -
    #define gst_alloc_trace_register(name) _gst_alloc_trace_register (name);
    -
    -

    -Register a new alloc tracer with the given name -

    -
    -- - - - -

    name :

    The name of the tracer object
    -
    -
    -
    -

    gst_alloc_trace_new()

    -
    #define             gst_alloc_trace_new(trace, mem)
    -

    -Use the tracer to trace a new memory allocation -

    -
    -- - - - - - - - - - -

    trace :

    The tracer to use

    mem :

    The memory allocated
    -
    -
    -
    -

    gst_alloc_trace_free()

    -
    #define             gst_alloc_trace_free(trace, mem)
    -

    -Trace a memory free operation -

    -
    -- - - - - - - - - - -

    trace :

    The tracer to use

    mem :

    The memory that is freed
    -
    -
    -
    - - - \ No newline at end of file diff --git a/docs/gst/html/gstreamer-GstTypeFind.html b/docs/gst/html/gstreamer-GstTypeFind.html index 01e856f..432ec7d 100644 --- a/docs/gst/html/gstreamer-GstTypeFind.html +++ b/docs/gst/html/gstreamer-GstTypeFind.html @@ -3,10 +3,10 @@ GstTypeFind - - + + - + @@ -14,10 +14,10 @@ - + - +

    gst_type_find_get_length ()

    -
    guint64             gst_type_find_get_length            (GstTypeFind *find);
    +
    guint64             gst_type_find_get_length            (GstTypeFind *find);

    Get the length of the data stream.

    @@ -344,8 +344,8 @@ Get the length of the data stream. const gchar *name, guint rank, GstTypeFindFunction func, - gchar **extensions, - const GstCaps *possible_caps, + const gchar *extensions, + GstCaps *possible_caps, gpointer data, GDestroyNotify data_notify);

    @@ -375,7 +375,8 @@ passing NULL only works in GStreamer 0.10.16 and later)

    - diff --git a/docs/gst/html/gstreamer-GstUriHandler.html b/docs/gst/html/gstreamer-GstUriHandler.html index a480073..2348701 100644 --- a/docs/gst/html/gstreamer-GstUriHandler.html +++ b/docs/gst/html/gstreamer-GstUriHandler.html @@ -3,8 +3,8 @@ GstUriHandler - - + + @@ -17,7 +17,7 @@ - +
    @@ -80,15 +79,9 @@ const -

    Signals

    -
    -  "new-uri"                                        : Run Last
    -
    -
    -

    Description

    -The URIHandler is an interface that is implemented by Source and Sink +The URIHandler is an interface that is implemented by Source and Sink GstElement to simplify then handling of URI.

    @@ -116,16 +109,18 @@ Opaque

    struct GstURIHandlerInterface

    struct GstURIHandlerInterface {
    -  GTypeInterface parent;
    +  GTypeInterface parent;
     
    +  /* vtable */
       /* querying capabilities */
    -  GstURIType		(* get_type)		(GType type);
    -  gchar **		(* get_protocols) (GType type);
    +  GstURIType             (* get_type)           (GType type);
    +  const gchar * const *  (* get_protocols)      (GType type);
     
       /* using the interface */
    -  const gchar *		(* get_uri)		(GstURIHandler * handler);
    -  gboolean		(* set_uri)		(GstURIHandler * handler,
    -						 const gchar *	 uri);
    +  gchar *                (* get_uri)            (GstURIHandler * handler);
    +  gboolean               (* set_uri)            (GstURIHandler * handler,
    +                                                 const gchar   * uri,
    +                                                 GError       ** error);
     };
     

    @@ -192,6 +187,52 @@ The different types of URI direction.


    +

    enum GstURIError

    +
    typedef enum {
    +  GST_URI_ERROR_BAD_PROTOCOL,
    +  GST_URI_ERROR_BAD_URI,
    +  GST_URI_ERROR_BAD_STATE,
    +  GST_URI_ERROR_BAD_REFERENCE
    +} GstURIError;
    +
    +

    +Different URI-related errors that can occur. +

    +
    ++ + + + + + + + + + + + + + + + + + +

    GST_URI_ERROR_BAD_PROTOCOL

    The protocol is not supported +

    GST_URI_ERROR_BAD_URI

    There was a problem with the URI +

    GST_URI_ERROR_BAD_STATE

    Could not set or change the URI because the + URI handler was in a state where that is not possible or not permitted +

    GST_URI_ERROR_BAD_REFERENCE

    There was a problem with the entity that + the URI references +
    +
    +
    +
    +

    gst_uri_error_quark ()

    +
    GQuark              gst_uri_error_quark                 (void);
    +
    +
    +

    GST_URI_TYPE_IS_VALID()

    #define GST_URI_TYPE_IS_VALID(type) ((type) == GST_URI_SRC || (type) == GST_URI_SINK)
     
    @@ -459,7 +500,7 @@ Creates an element for handling the given URI.

    gst_uri_handler_get_uri_type ()

    -
    guint               gst_uri_handler_get_uri_type        (GstURIHandler *handler);
    +
    GstURIType          gst_uri_handler_get_uri_type        (GstURIHandler *handler);

    Gets the type of the given URI handler

    @@ -481,7 +522,7 @@ Returns

    gst_uri_handler_get_protocols ()

    -
    gchar **            gst_uri_handler_get_protocols       (GstURIHandler *handler);
    +
    const gchar * const * gst_uri_handler_get_protocols     (GstURIHandler *handler);

    Gets the list of protocols supported by handler. This list may not be modified. @@ -506,7 +547,7 @@ properly, or the handler doesn't support


    gst_uri_handler_get_uri ()

    -
    const gchar *       gst_uri_handler_get_uri             (GstURIHandler *handler);
    +
    gchar *             gst_uri_handler_get_uri             (GstURIHandler *handler);

    Gets the currently handled URI.

    @@ -522,7 +563,7 @@ Gets the currently handled URI.

    Returns :

    the URI currently handled by the handler. Returns NULL if there are no URI currently handled. The -returned string must not be modified or freed. [transfer none] +returned string must be freed with g_free() when no longer needed. [transfer full] @@ -532,7 +573,8 @@ returned string must not be modified or freed. [

    gst_uri_handler_set_uri ()

    gboolean            gst_uri_handler_set_uri             (GstURIHandler *handler,
    -                                                         const gchar *uri);
    + const gchar *uri, + GError **error);

    Tries to set the URI of the given handler.

    @@ -549,62 +591,14 @@ Tries to set the URI of the given handler. URI to set -

    Returns :

    -TRUE if the URI was set successfully, else FALSE. - - -
    -
    -
    -
    -

    gst_uri_handler_new_uri ()

    -
    void                gst_uri_handler_new_uri             (GstURIHandler *handler,
    -                                                         const gchar *uri);
    -

    -Emits the new-uri signal for a given handler, when that handler has a new URI. -This function should only be called by URI handlers themselves. -

    -
    -- - - - - - - - - - -

    handler :

    A GstURIHandler -

    uri :

    new URI or NULL if it was unset
    -
    -
    -
    -

    Signal Details

    -
    -

    The "new-uri" signal

    -
    void                user_function                      (GstURIHandler *handler,
    -                                                        gchar         *uri,
    -                                                        gpointer       user_data)      : Run Last
    -

    -The URI of the given handler has changed. -

    -
    -- - - - - - - - + - - + +

    handler :

    The GstURIHandler which emitted the signal

    uri :

    The new URI, or NULL if the URI was removed. [transfer none] +

    error :

    address where to store a GError in case of +an error, or NULL. [allow-none]

    user_data :

    user data set when the signal handler was connected.

    Returns :

    TRUE if the URI was set successfully, else FALSE.
    diff --git a/docs/gst/html/gstreamer-GstUtils.html b/docs/gst/html/gstreamer-GstUtils.html index 1303bfc..d6dc072 100644 --- a/docs/gst/html/gstreamer-GstUtils.html +++ b/docs/gst/html/gstreamer-GstUtils.html @@ -3,8 +3,8 @@ GstUtils - - + + @@ -17,7 +17,7 @@ Prev Up Home -GStreamer 0.11 Core Reference Manual +GStreamer 1.0 Core Reference Manual Next @@ -56,10 +56,10 @@ #define GST_READ_UINT32_BE (data) #define GST_READ_UINT64_LE (data) #define GST_READ_UINT64_BE (data) -gfloat GST_READ_FLOAT_LE (const guint8 *data); -gfloat GST_READ_FLOAT_BE (const guint8 *data); -gdouble GST_READ_DOUBLE_LE (const guint8 *data); -gdouble GST_READ_DOUBLE_BE (const guint8 *data); +gfloat GST_READ_FLOAT_LE (const guint8 *data); +gfloat GST_READ_FLOAT_BE (const guint8 *data); +gdouble GST_READ_DOUBLE_LE (const guint8 *data); +gdouble GST_READ_DOUBLE_BE (const guint8 *data); #define GST_WRITE_UINT8 (data, num) #define GST_WRITE_UINT16_LE (data, @@ -78,13 +78,13 @@ num) #define GST_WRITE_UINT64_BE (data, num) -void GST_WRITE_FLOAT_LE (guint8 *data, +void GST_WRITE_FLOAT_LE (guint8 *data, gfloat num); -void GST_WRITE_FLOAT_BE (guint8 *data, +void GST_WRITE_FLOAT_BE (guint8 *data, gfloat num); -void GST_WRITE_DOUBLE_LE (guint8 *data, +void GST_WRITE_DOUBLE_LE (guint8 *data, gdouble num); -void GST_WRITE_DOUBLE_BE (guint8 *data, +void GST_WRITE_DOUBLE_BE (guint8 *data, gdouble num); #define GST_ROUND_UP_2 (num) #define GST_ROUND_UP_4 (num) @@ -118,41 +118,31 @@ const GstPad *pad
    ); #define gst_guint64_to_gdouble (value) #define gst_gdouble_to_guint64 (value) -GType gst_type_register_static_full (GType parent_type, - const gchar *type_name, - guint class_size, - GBaseInitFunc base_init, - GBaseFinalizeFunc base_finalize, - GClassInitFunc class_init, - GClassFinalizeFunc class_finalize, - gconstpointer class_data, - guint instance_size, - guint16 n_preallocs, - GInstanceInitFunc instance_init, - const GTypeValueTable *value_table, - GTypeFlags flags); void gst_util_dump_mem (const guchar *mem, guint size); -guint64 gst_util_uint64_scale (guint64 val, - guint64 num, - guint64 denom); -guint64 gst_util_uint64_scale_round (guint64 val, - guint64 num, - guint64 denom); -guint64 gst_util_uint64_scale_ceil (guint64 val, - guint64 num, - guint64 denom); -guint64 gst_util_uint64_scale_int (guint64 val, +guint64 gst_util_uint64_scale (guint64 val, + guint64 num, + guint64 denom); +guint64 gst_util_uint64_scale_round (guint64 val, + guint64 num, + guint64 denom); +guint64 gst_util_uint64_scale_ceil (guint64 val, + guint64 num, + guint64 denom); +guint64 gst_util_uint64_scale_int (guint64 val, gint num, gint denom); -guint64 gst_util_uint64_scale_int_round (guint64 val, +guint64 gst_util_uint64_scale_int_round (guint64 val, gint num, gint denom); -guint64 gst_util_uint64_scale_int_ceil (guint64 val, +guint64 gst_util_uint64_scale_int_ceil (guint64 val, gint num, gint denom); gint gst_util_greatest_common_divisor (gint a, gint b); +gint64 gst_util_greatest_common_divisor_int64 + (gint64 a, + gint64 b); void gst_util_fraction_to_double (gint src_n, gint src_d, gdouble *dest); @@ -175,9 +165,9 @@ const gint a_d
    , gint b_n, gint b_d); -guint32 gst_util_seqnum_next (void); -gint32 gst_util_seqnum_compare (guint32 s1, - guint32 s2); +guint32 gst_util_seqnum_next (void); +gint32 gst_util_seqnum_compare (guint32 s1, + guint32 s2); void gst_util_set_object_arg (GObject *object, const gchar *name, const gchar *value); @@ -187,7 +177,7 @@ const GstSearchMode; gpointer gst_util_array_binary_search (gpointer array, guint num_elements, - gsize element_size, + gsize element_size, GCompareDataFunc search_func, GstSearchMode mode, gconstpointer search_data, @@ -259,7 +249,7 @@ evaluates to def_return.

    GST_READ_UINT8()

    -
    #define GST_READ_UINT8(data)		(_GST_GET (data, 0,  8,  0))
    +
    #define GST_READ_UINT8(data)            (_GST_GET (data, 0,  8,  0))
     

    Read an 8 bit unsigned integer value from the memory buffer. @@ -397,7 +387,7 @@ Read a 64 bit unsigned integer value in big endian format from the memory buffer


    GST_READ_FLOAT_LE ()

    -
    gfloat              GST_READ_FLOAT_LE                   (const guint8 *data);
    +
    gfloat              GST_READ_FLOAT_LE                   (const guint8 *data);

    Read a 32 bit float value in little endian format from the memory buffer.

    @@ -420,7 +410,7 @@ Read a 32 bit float value in little endian format from the memory buffer.

    GST_READ_FLOAT_BE ()

    -
    gfloat              GST_READ_FLOAT_BE                   (const guint8 *data);
    +
    gfloat              GST_READ_FLOAT_BE                   (const guint8 *data);

    Read a 32 bit float value in big endian format from the memory buffer.

    @@ -443,7 +433,7 @@ Read a 32 bit float value in big endian format from the memory buffer.

    GST_READ_DOUBLE_LE ()

    -
    gdouble             GST_READ_DOUBLE_LE                  (const guint8 *data);
    +
    gdouble             GST_READ_DOUBLE_LE                  (const guint8 *data);

    Read a 64 bit double value in little endian format from the memory buffer.

    @@ -466,7 +456,7 @@ Read a 64 bit double value in little endian format from the memory buffer.

    GST_READ_DOUBLE_BE ()

    -
    gdouble             GST_READ_DOUBLE_BE                  (const guint8 *data);
    +
    gdouble             GST_READ_DOUBLE_BE                  (const guint8 *data);

    Read a 64 bit double value in big endian format from the memory buffer.

    @@ -680,7 +670,7 @@ Store a 64 bit unsigned integer value in big endian format into the memory buffe

    GST_WRITE_FLOAT_LE ()

    -
    void                GST_WRITE_FLOAT_LE                  (guint8 *data,
    +
    void                GST_WRITE_FLOAT_LE                  (guint8 *data,
                                                              gfloat num);

    Store a 32 bit float value in little endian format into the memory buffer. @@ -703,7 +693,7 @@ Store a 32 bit float value in little endian format into the memory buffer.


    GST_WRITE_FLOAT_BE ()

    -
    void                GST_WRITE_FLOAT_BE                  (guint8 *data,
    +
    void                GST_WRITE_FLOAT_BE                  (guint8 *data,
                                                              gfloat num);

    Store a 32 bit float value in big endian format into the memory buffer. @@ -726,7 +716,7 @@ Store a 32 bit float value in big endian format into the memory buffer.


    GST_WRITE_DOUBLE_LE ()

    -
    void                GST_WRITE_DOUBLE_LE                 (guint8 *data,
    +
    void                GST_WRITE_DOUBLE_LE                 (guint8 *data,
                                                              gdouble num);

    Store a 64 bit double value in little endian format into the memory buffer. @@ -749,7 +739,7 @@ Store a 64 bit double value in little endian format into the memory buffer.


    GST_WRITE_DOUBLE_BE ()

    -
    void                GST_WRITE_DOUBLE_BE                 (guint8 *data,
    +
    void                GST_WRITE_DOUBLE_BE                 (guint8 *data,
                                                              gdouble num);

    Store a 64 bit double value in big endian format into the memory buffer. @@ -1271,7 +1261,7 @@ Convert value to a gdouble.

    value :

    -the guint64 value to convert +the guint64 value to convert

    Returns :

    @@ -1299,114 +1289,13 @@ Convert value to a guint64.

    Returns :

    -value converted to a guint64. +value converted to a guint64.

    -

    gst_type_register_static_full ()

    -
    GType               gst_type_register_static_full       (GType parent_type,
    -                                                         const gchar *type_name,
    -                                                         guint class_size,
    -                                                         GBaseInitFunc base_init,
    -                                                         GBaseFinalizeFunc base_finalize,
    -                                                         GClassInitFunc class_init,
    -                                                         GClassFinalizeFunc class_finalize,
    -                                                         gconstpointer class_data,
    -                                                         guint instance_size,
    -                                                         guint16 n_preallocs,
    -                                                         GInstanceInitFunc instance_init,
    -                                                         const GTypeValueTable *value_table,
    -                                                         GTypeFlags flags);
    -

    -Helper function which constructs a GTypeInfo structure and registers a -GType, but which generates less linker overhead than a static const -GTypeInfo structure. For further details of the parameters, please see -GTypeInfo in the GLib documentation. -

    -

    -Registers type_name as the name of a new static type derived from -parent_type. The value of flags determines the nature (e.g. abstract or -not) of the type. It works by filling a GTypeInfo struct and calling -g_type_register_static(). -

    -
    -- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    parent_type :

    The GType of the parent type the newly registered type will -derive from

    type_name :

    NULL-terminated string used as the name of the new type

    class_size :

    Size of the class structure.

    base_init :

    Location of the base initialization function (optional).

    base_finalize :

    Location of the base finalization function (optional).

    class_init :

    Location of the class initialization function for class types -Location of the default vtable initialization function for interface -types. (optional)

    class_finalize :

    Location of the class finalization function for class types. -Location of the default vtable finalization function for interface types. -(optional)

    class_data :

    User-supplied data passed to the class init/finalize functions.

    instance_size :

    Size of the instance (object) structure (required for -instantiatable types only).

    n_preallocs :

    The number of pre-allocated (cached) instances to reserve -memory for (0 indicates no caching). Ignored on recent GLib's.

    instance_init :

    Location of the instance initialization function (optional, -for instantiatable types only).

    value_table :

    A GTypeValueTable function table for generic handling of -GValues of this type (usually only useful for fundamental types).

    flags :

    -GTypeFlags for this GType. E.g: G_TYPE_FLAG_ABSTRACT

    Returns :

    A GType for the newly-registered type.
    -

    Since 0.10.14

    -
    -
    -

    gst_util_dump_mem ()

    void                gst_util_dump_mem                   (const guchar *mem,
                                                              guint size);
    @@ -1430,9 +1319,9 @@ Dumps the memory block into a hex representation. Useful for debugging.

    gst_util_uint64_scale ()

    -
    guint64             gst_util_uint64_scale               (guint64 val,
    -                                                         guint64 num,
    -                                                         guint64 denom);
    +
    guint64             gst_util_uint64_scale               (guint64 val,
    +                                                         guint64 num,
    +                                                         guint64 denom);

    Scale val by the rational number num / denom, avoiding overflows and underflows and without loss of precision. @@ -1472,9 +1361,9 @@ representable as an integer it is truncated. See also


    gst_util_uint64_scale_round ()

    -
    guint64             gst_util_uint64_scale_round         (guint64 val,
    -                                                         guint64 num,
    -                                                         guint64 denom);
    +
    guint64             gst_util_uint64_scale_round         (guint64 val,
    +                                                         guint64 num,
    +                                                         guint64 denom);

    Scale val by the rational number num / denom, avoiding overflows and underflows and without loss of precision. @@ -1514,9 +1403,9 @@ representable as an integer, it is rounded to the nearest integer


    gst_util_uint64_scale_ceil ()

    -
    guint64             gst_util_uint64_scale_ceil          (guint64 val,
    -                                                         guint64 num,
    -                                                         guint64 denom);
    +
    guint64             gst_util_uint64_scale_ceil          (guint64 val,
    +                                                         guint64 num,
    +                                                         guint64 denom);

    Scale val by the rational number num / denom, avoiding overflows and underflows and without loss of precision. @@ -1556,7 +1445,7 @@ representable as an integer, it is rounded up. See also


    gst_util_uint64_scale_int ()

    -
    guint64             gst_util_uint64_scale_int           (guint64 val,
    +
    guint64             gst_util_uint64_scale_int           (guint64 val,
                                                              gint num,
                                                              gint denom);

    @@ -1595,7 +1484,7 @@ representable as an integer, it is truncated. See also


    gst_util_uint64_scale_int_round ()

    -
    guint64             gst_util_uint64_scale_int_round     (guint64 val,
    +
    guint64             gst_util_uint64_scale_int_round     (guint64 val,
                                                              gint num,
                                                              gint denom);

    @@ -1634,7 +1523,7 @@ representable as an integer, it is rounded to the nearest integer


    gst_util_uint64_scale_int_ceil ()

    -
    guint64             gst_util_uint64_scale_int_ceil      (guint64 val,
    +
    guint64             gst_util_uint64_scale_int_ceil      (guint64 val,
                                                              gint num,
                                                              gint denom);

    @@ -1703,6 +1592,38 @@ and b.


    +

    gst_util_greatest_common_divisor_int64 ()

    +
    gint64              gst_util_greatest_common_divisor_int64
    +                                                        (gint64 a,
    +                                                         gint64 b);
    +

    +Calculates the greatest common divisor of a +and b. +

    +
    ++ + + + + + + + + + + + + + +

    a :

    First value as gint64 +

    b :

    Second value as gint64 +

    Returns :

    Greatest common divisor of a and b +
    +

    Since 0.11.0

    +
    +
    +

    gst_util_fraction_to_double ()

    void                gst_util_fraction_to_double         (gint src_n,
                                                              gint src_d,
    @@ -1907,7 +1828,7 @@ Compares the fractions a_n/
     

    gst_util_seqnum_next ()

    -
    guint32             gst_util_seqnum_next                (void);
    +
    guint32             gst_util_seqnum_next                (void);

    Return a constantly incrementing sequence number.

    @@ -1931,8 +1852,8 @@ you handle wraparound correctly.

    gst_util_seqnum_compare ()

    -
    gint32              gst_util_seqnum_compare             (guint32 s1,
    -                                                         guint32 s2);
    +
    gint32              gst_util_seqnum_compare             (guint32 s1,
    +                                                         guint32 s2);

    Compare two sequence numbers, handling wraparound.

    @@ -2075,7 +1996,7 @@ The different search modes.

    gst_util_array_binary_search ()

    gpointer            gst_util_array_binary_search        (gpointer array,
                                                              guint num_elements,
    -                                                         gsize element_size,
    +                                                         gsize element_size,
                                                              GCompareDataFunc search_func,
                                                              GstSearchMode mode,
                                                              gconstpointer search_data,
    diff --git a/docs/gst/html/gstreamer-GstValue.html b/docs/gst/html/gstreamer-GstValue.html
    index da7a121..f2dbe62 100644
    --- a/docs/gst/html/gstreamer-GstValue.html
    +++ b/docs/gst/html/gstreamer-GstValue.html
    @@ -3,8 +3,8 @@
     
     
     GstValue
    -
    -
    +
    +
     
     
     
    @@ -17,7 +17,7 @@
     Prev
     Up
     Home
    -GStreamer 0.11 Core Reference Manual
    +GStreamer 1.0 Core Reference Manual
     Next
     
     
    @@ -56,14 +56,30 @@ to GStreamer

    gint end); gint gst_value_get_int_range_min (const GValue *value); gint gst_value_get_int_range_max (const GValue *value); +void gst_value_set_int_range_step (GValue *value, + gint start, + gint end, + gint step); +gint gst_value_get_int_range_step (const GValue *value); + +#define GST_VALUE_HOLDS_BITMASK (x) +#define GST_TYPE_BITMASK +void gst_value_set_bitmask (GValue *value, + guint64 bitmask); +guint64 gst_value_get_bitmask (const GValue *value); #define GST_VALUE_HOLDS_INT64_RANGE (x) #define GST_TYPE_INT64_RANGE void gst_value_set_int64_range (GValue *value, - gint64 start, - gint64 end); -gint64 gst_value_get_int64_range_min (const GValue *value); -gint64 gst_value_get_int64_range_max (const GValue *value); + gint64 start, + gint64 end); +gint64 gst_value_get_int64_range_min (const GValue *value); +gint64 gst_value_get_int64_range_max (const GValue *value); +void gst_value_set_int64_range_step (GValue *value, + gint64 start, + gint64 end, + gint64 step); +gint64 gst_value_get_int64_range_step (const GValue *value); #define GST_VALUE_HOLDS_DOUBLE_RANGE (x) #define GST_TYPE_DOUBLE_RANGE @@ -118,12 +134,6 @@ const gint numerator_end
    , gint denominator_end); -#define GST_VALUE_HOLDS_DATE (x) -#define GST_TYPE_DATE -void gst_value_set_date (GValue *value, - const GDate *date); -const GDate * gst_value_get_date (const GValue *value); - #define GST_VALUE_HOLDS_DATE_TIME (x) #define GST_VALUE_HOLDS_CAPS (x) @@ -143,6 +153,13 @@ const gst_value_take_buffer (v, b) +#define GST_VALUE_HOLDS_SAMPLE (x) +#define gst_value_get_sample (v) +#define gst_value_set_sample (v, + b) +#define gst_value_take_sample (v, + b) + #define GST_VALUE_LESS_THAN #define GST_VALUE_EQUAL #define GST_VALUE_GREATER_THAN @@ -152,15 +169,6 @@ const gchar * (*GstValueSerializeFunc) (const GValue *value1); gboolean (*GstValueDeserializeFunc) (GValue *dest, const gchar *s); -gboolean (*GstValueUnionFunc) (GValue *dest, - const GValue *value1, - const GValue *value2); -gboolean (*GstValueIntersectFunc) (GValue *dest, - const GValue *value1, - const GValue *value2); -gboolean (*GstValueSubtractFunc) (GValue *dest, - const GValue *minuend, - const GValue *subtrahend); struct GstValueTable; gboolean gst_value_is_fixed (const GValue *value); void gst_value_register (const GstValueTable *table); @@ -178,25 +186,18 @@ struct const GValue *value2); gboolean gst_value_can_union (const GValue *value1, const GValue *value2); -void gst_value_register_union_func (GType type1, - GType type2, - GstValueUnionFunc func); gboolean gst_value_subtract (GValue *dest, const GValue *minuend, const GValue *subtrahend); gboolean gst_value_can_subtract (const GValue *minuend, const GValue *subtrahend); -void gst_value_register_subtract_func (GType minuend_type, - GType subtrahend_type, - GstValueSubtractFunc func); gboolean gst_value_intersect (GValue *dest, const GValue *value1, const GValue *value2); gboolean gst_value_can_intersect (const GValue *value1, const GValue *value2); -void gst_value_register_intersect_func (GType type1, - GType type2, - GstValueIntersectFunc func); +gboolean gst_value_is_subset (const GValue *value1, + const GValue *value2); void gst_value_array_append_value (GValue *value, const GValue *append_value); guint gst_value_array_get_size (const GValue *value); @@ -228,12 +229,20 @@ Last reviewed on 2008-03-11 (0.10.18)
    #define GST_MAKE_FOURCC(a,b,c,d)        ((guint32)((a)|(b)<<8|(c)<<16|(d)<<24))
     

    -Transform four characters into a guint32 fourcc value with host +Transform four characters into a guint32 fourcc value with host endianness.

    -
    -guint32 fourcc = GST_MAKE_FOURCC ('M', 'J', 'P', 'G');
    -
    +
    + + + + + + + +
    1
    guint32 fourcc = GST_MAKE_FOURCC ('M', 'J', 'P', 'G');
    +
    +

    @@ -264,14 +273,22 @@ guint32 fourcc = GST_MAKE_FOURCC ('M', 'J', 'P', 'G');
    #define GST_STR_FOURCC(f)               ((guint32)(((f)[0])|((f)[1]<<8)|((f)[2]<<16)|((f)[3]<<24)))
     

    -Transform an input string into a guint32 fourcc value with host +Transform an input string into a guint32 fourcc value with host endianness. Caller is responsible for ensuring the input string consists of at least four characters.

    -
    -guint32 fourcc = GST_STR_FOURCC ("MJPG");
    -
    +
    +
    + + + + + + +
    1
    guint32 fourcc = GST_STR_FOURCC ("MJPG");
    +
    +

    @@ -289,11 +306,19 @@ guint32 fourcc = GST_STR_FOURCC ("MJPG");

    Can be used together with GST_FOURCC_ARGS to properly output a -guint32 fourcc value in a printf()-style text message. -

    -
    -printf ("fourcc: %" GST_FOURCC_FORMAT "\n", GST_FOURCC_ARGS (fcc));
    -
    +guint32 fourcc value in a printf()-style text message. +

    +
    +
    + + + + + + +
    1
    printf ("fourcc: %" GST_FOURCC_FORMAT "\n", GST_FOURCC_ARGS (fcc));
    +
    +

    @@ -303,13 +328,13 @@ printf ("fourcc: %" GST_FOURCC_FORMAT "\n", GST_FOURCC_ARGS (fcc));
    #define             GST_FOURCC_ARGS(fourcc)

    Can be used together with GST_FOURCC_FORMAT to properly output a -guint32 fourcc value in a printf()-style text message. +guint32 fourcc value in a printf()-style text message.

    - +

    fourcc :

    a guint32 fourcc value to outputa guint32 fourcc value to output
    @@ -416,6 +441,136 @@ Gets the maximum of the range specified by value
    +

    gst_value_set_int_range_step ()

    +
    void                gst_value_set_int_range_step        (GValue *value,
    +                                                         gint start,
    +                                                         gint end,
    +                                                         gint step);
    +

    +Sets value to the range specified by start, end and step. +

    +
    ++ + + + + + + + + + + + + + + + + + +

    value :

    a GValue initialized to GST_TYPE_INT_RANGE

    start :

    the start of the range

    end :

    the end of the range

    step :

    the step of the range
    +
    +
    +
    +

    gst_value_get_int_range_step ()

    +
    gint                gst_value_get_int_range_step        (const GValue *value);
    +

    +Gets the step of the range specified by value. +

    +
    ++ + + + + + + + + + +

    value :

    a GValue initialized to GST_TYPE_INT_RANGE

    Returns :

    the step of the range
    +
    +
    +
    +

    GST_VALUE_HOLDS_BITMASK()

    +
    #define GST_VALUE_HOLDS_BITMASK(x)      (G_VALUE_HOLDS((x), gst_bitmask_get_type ()))
    +
    +

    +Checks if the given GValue contains a GST_TYPE_BITMASK value. +

    +
    ++ + + + +

    x :

    the GValue to check
    +
    +
    +
    +

    GST_TYPE_BITMASK

    +
    #define GST_TYPE_BITMASK                 gst_bitmask_get_type ()
    +
    +

    +a GValue type that represents a 64-bit bitmask. +

    +
    ++ + + + +

    Returns :

    the GType of GstBitmask (which is not explicitly typed)
    +
    +
    +
    +

    gst_value_set_bitmask ()

    +
    void                gst_value_set_bitmask               (GValue *value,
    +                                                         guint64 bitmask);
    +

    +Sets value to the bitmask specified by bitmask. +

    +
    ++ + + + + + + + + + +

    value :

    a GValue initialized to GST_TYPE_FRACTION +

    bitmask :

    the bitmask
    +
    +
    +
    +

    gst_value_get_bitmask ()

    +
    guint64             gst_value_get_bitmask               (const GValue *value);
    +

    +Gets the bitmask specified by value. +

    +
    ++ + + + + + + + + + +

    value :

    a GValue initialized to GST_TYPE_FRACTION +

    Returns :

    the bitmask.
    +
    +
    +

    GST_VALUE_HOLDS_INT64_RANGE()

    #define GST_VALUE_HOLDS_INT64_RANGE(x)    (G_VALUE_HOLDS((x), gst_int64_range_get_type ()))
     
    @@ -437,7 +592,7 @@ Checks if the given #define GST_TYPE_INT64_RANGE gst_int64_range_get_type ()

    -a GValue type that represents an gint64 range +a GValue type that represents an gint64 range

    @@ -452,8 +607,8 @@ a

    gst_value_set_int64_range ()

    void                gst_value_set_int64_range           (GValue *value,
    -                                                         gint64 start,
    -                                                         gint64 end);
    + gint64 start, + gint64 end);

    Sets value to the range specified by start and end.

    @@ -479,7 +634,7 @@ Sets value to the range specified by

    gst_value_get_int64_range_min ()

    -
    gint64              gst_value_get_int64_range_min       (const GValue *value);
    +
    gint64              gst_value_get_int64_range_min       (const GValue *value);

    Gets the minimum of the range specified by value.

    @@ -501,7 +656,7 @@ Gets the minimum of the range specified by value

    gst_value_get_int64_range_max ()

    -
    gint64              gst_value_get_int64_range_max       (const GValue *value);
    +
    gint64              gst_value_get_int64_range_max       (const GValue *value);

    Gets the maximum of the range specified by value.

    @@ -522,6 +677,61 @@ Gets the maximum of the range specified by value
    +

    gst_value_set_int64_range_step ()

    +
    void                gst_value_set_int64_range_step      (GValue *value,
    +                                                         gint64 start,
    +                                                         gint64 end,
    +                                                         gint64 step);
    +

    +Sets value to the range specified by start, end and step. +

    +
    ++ + + + + + + + + + + + + + + + + + +

    value :

    a GValue initialized to GST_TYPE_INT64_RANGE

    start :

    the start of the range

    end :

    the end of the range

    step :

    the step of the range
    +

    Since 0.11.0

    +
    +
    +
    +

    gst_value_get_int64_range_step ()

    +
    gint64              gst_value_get_int64_range_step      (const GValue *value);
    +

    +Gets the step of the range specified by value. +

    +
    ++ + + + + + + + + + +

    value :

    a GValue initialized to GST_TYPE_INT64_RANGE

    Returns :

    the step of the range
    +

    Since 0.11.0

    +
    +
    +

    GST_VALUE_HOLDS_DOUBLE_RANGE()

    #define GST_VALUE_HOLDS_DOUBLE_RANGE(x) (G_VALUE_HOLDS((x), gst_double_range_get_type ()))
     
    @@ -624,7 +834,7 @@ Gets the maximum of the range specified by value

    GST_VALUE_HOLDS_LIST()

    -
    #define GST_VALUE_HOLDS_LIST(x)		(G_VALUE_HOLDS((x), gst_value_list_get_type ()))
    +
    #define GST_VALUE_HOLDS_LIST(x)         (G_VALUE_HOLDS((x), gst_value_list_get_type ()))
     

    Checks if the given GValue contains a GST_TYPE_LIST value. @@ -660,7 +870,7 @@ meaningful on their own.


    GST_VALUE_HOLDS_ARRAY()

    -
    #define GST_VALUE_HOLDS_ARRAY(x) (G_VALUE_HOLDS((x), gst_value_array_get_type ()))
    +
    #define GST_VALUE_HOLDS_ARRAY(x)        (G_VALUE_HOLDS((x), gst_value_array_get_type ()))
     

    Checks if the given GValue contains a GST_TYPE_ARRAY value. @@ -676,7 +886,7 @@ Checks if the given

    GST_TYPE_ARRAY

    -
    #define GST_TYPE_ARRAY			 gst_value_array_get_type ()
    +
    #define GST_TYPE_ARRAY                   gst_value_array_get_type ()
     

    a GValue type that represents an ordered list of GValue values. This is @@ -863,7 +1073,7 @@ has the index index.


    GST_VALUE_HOLDS_FRACTION()

    -
    #define GST_VALUE_HOLDS_FRACTION(x) (G_VALUE_HOLDS((x), gst_fraction_get_type ()))
    +
    #define GST_VALUE_HOLDS_FRACTION(x)     (G_VALUE_HOLDS((x), gst_fraction_get_type ()))
     

    Checks if the given GValue contains a GST_TYPE_FRACTION value. @@ -1177,83 +1387,6 @@ and numerator_end/


    -

    GST_VALUE_HOLDS_DATE()

    -
    #define GST_VALUE_HOLDS_DATE(x)         (G_VALUE_HOLDS((x), gst_date_get_type ()))
    -
    -

    -Checks if the given GValue contains a GST_TYPE_DATE value. -

    -
    -- - - - -

    x :

    the GValue to check
    -
    -
    -
    -

    GST_TYPE_DATE

    -
    #define GST_TYPE_DATE                    gst_date_get_type ()
    -
    -

    -a boxed GValue type for GDate that represents a date. -

    -
    -- - - - -

    Returns :

    the GType of GstDate
    -
    -
    -
    -

    gst_value_set_date ()

    -
    void                gst_value_set_date                  (GValue *value,
    -                                                         const GDate *date);
    -

    -Sets the contents of value to correspond to date. The actual -GDate structure is copied before it is used. -

    -
    -- - - - - - - - - - -

    value :

    a GValue initialized to GST_TYPE_DATE

    date :

    the date to set the value to
    -
    -
    -
    -

    gst_value_get_date ()

    -
    const GDate *       gst_value_get_date                  (const GValue *value);
    -

    -Gets the contents of value. -

    -
    -- - - - - - - - - - -

    value :

    a GValue initialized to GST_TYPE_DATE

    Returns :

    the contents of value. [transfer none] -
    -
    -
    -

    GST_VALUE_HOLDS_DATE_TIME()

    #define GST_VALUE_HOLDS_DATE_TIME(x)    (G_VALUE_HOLDS((x), gst_date_time_get_type ()))
     
    @@ -1272,7 +1405,7 @@ Checks if the given

    GST_VALUE_HOLDS_CAPS()

    -
    #define GST_VALUE_HOLDS_CAPS(x)		(G_VALUE_HOLDS((x), GST_TYPE_CAPS))
    +
    #define GST_VALUE_HOLDS_CAPS(x)         (G_VALUE_HOLDS((x), GST_TYPE_CAPS))
     

    Checks if the given GValue contains a GST_TYPE_CAPS value. @@ -1336,7 +1469,7 @@ before getting rid of the value.


    GST_VALUE_HOLDS_STRUCTURE()

    -
    #define GST_VALUE_HOLDS_STRUCTURE(x)		(G_VALUE_HOLDS((x), GST_TYPE_STRUCTURE))
    +
    #define GST_VALUE_HOLDS_STRUCTURE(x)            (G_VALUE_HOLDS((x), GST_TYPE_STRUCTURE))
     

    Checks if the given GValue contains a GST_TYPE_STRUCTURE value. @@ -1485,6 +1618,93 @@ Sets b as the value of +

    GST_VALUE_HOLDS_SAMPLE()

    +
    #define GST_VALUE_HOLDS_SAMPLE(x)       (G_VALUE_HOLDS((x), GST_TYPE_SAMPLE))
    +
    +

    +Checks if the given GValue contains a GST_TYPE_SAMPLE value. +

    +
    ++ + + + +

    x :

    the GValue to check
    +
    +
    +
    +

    gst_value_get_sample()

    +
    #define         gst_value_get_sample(v)         GST_SAMPLE_CAST (g_value_get_boxed(v))
    +
    +

    +Receives a GstSample as the value of v. Does not return a reference to +the sample, so the pointer is only valid for as long as the caller owns +a reference to v. +

    +
    ++ + + + + + + + + + +

    v :

    a GValue to query

    Returns :

    sample. [transfer none] +
    +
    +
    +
    +

    gst_value_set_sample()

    +
    #define         gst_value_set_sample(v,b)       g_value_set_boxed((v),(b))
    +
    +

    +Sets b as the value of v. Caller retains reference to sample. +

    +
    ++ + + + + + + + + + +

    v :

    a GValue to receive the data

    b :

    a GstSample to assign to the GstValue. [transfer none] +
    +
    +
    +
    +

    gst_value_take_sample()

    +
    #define         gst_value_take_sample(v,b)      g_value_take_boxed(v,(b))
    +
    +

    +Sets b as the value of v. Caller gives away reference to sample. +

    +
    ++ + + + + + + + + + +

    v :

    a GValue to receive the data

    b :

    a GstSample to assign to the GstValue. [transfer full] +
    +
    +
    +

    GST_VALUE_LESS_THAN

    #define GST_VALUE_LESS_THAN              (-1)
     
    @@ -1606,110 +1826,6 @@ Used by
    -

    GstValueUnionFunc ()

    -
    gboolean            (*GstValueUnionFunc)                (GValue *dest,
    -                                                         const GValue *value1,
    -                                                         const GValue *value2);
    -

    -Used by gst_value_union() to perform unification for a specific GValue -type. Register a new implementation with gst_value_register_union_func(). -

    -
    -- - - - - - - - - - - - - - - - - - -

    dest :

    a GValue for the result

    value1 :

    a GValue operand

    value2 :

    a GValue operand

    Returns :

    -TRUE if a union was successful
    -
    -
    -
    -

    GstValueIntersectFunc ()

    -
    gboolean            (*GstValueIntersectFunc)            (GValue *dest,
    -                                                         const GValue *value1,
    -                                                         const GValue *value2);
    -

    -Used by gst_value_intersect() to perform intersection for a specific GValue -type. If the intersection is non-empty, the result is -placed in dest and TRUE is returned. If the intersection is -empty, dest is unmodified and FALSE is returned. -Register a new implementation with gst_value_register_intersect_func(). -

    -
    -- - - - - - - - - - - - - - - - - - -

    dest :

    a GValue for the result. [out caller-allocates] -

    value1 :

    a GValue operand

    value2 :

    a GValue operand

    Returns :

    -TRUE if the values can intersect
    -
    -
    -
    -

    GstValueSubtractFunc ()

    -
    gboolean            (*GstValueSubtractFunc)             (GValue *dest,
    -                                                         const GValue *minuend,
    -                                                         const GValue *subtrahend);
    -

    -Used by gst_value_subtract() to perform subtraction for a specific GValue -type. Register a new implementation with gst_value_register_subtract_func(). -

    -
    -- - - - - - - - - - - - - - - - - - -

    dest :

    a GValue for the result. [out caller-allocates] -

    minuend :

    a GValue operand

    subtrahend :

    a GValue operand

    Returns :

    -TRUE if the subtraction is not empty
    -
    -
    -

    struct GstValueTable

    struct GstValueTable {
       GType type;
    @@ -1950,8 +2066,7 @@ Creates a GValue corresponding to the union of value
     
     
     

    Returns :

    -always returns TRUE - +TRUE if the union suceeded.
    @@ -1991,39 +2106,6 @@ be unioned.

    -

    gst_value_register_union_func ()

    -
    void                gst_value_register_union_func       (GType type1,
    -                                                         GType type2,
    -                                                         GstValueUnionFunc func);
    -

    -Registers a union function that can create a union between GValue items -of the type type1 and type2. -

    -

    -Union functions should be registered at startup before any pipelines are -started, as gst_value_register_union_func() is not thread-safe and cannot -be used at the same time as gst_value_union() or gst_value_can_union(). -

    -
    -- - - - - - - - - - - - - - -

    type1 :

    a type to union

    type2 :

    another type to union

    func :

    a function that implements creating a union between the two types
    -
    -
    -

    gst_value_subtract ()

    gboolean            gst_value_subtract                  (GValue *dest,
                                                              const GValue *minuend,
    @@ -2038,7 +2120,8 @@ Note that this means subtraction as in sets, not as in mathematics.
     
     

    dest :

    the destination value for the result if the -subtraction is not empty. [out caller-allocates] +subtraction is not empty. May be NULL, in which case the resulting set +will not be computed, which can give a fair speedup. [out caller-allocates] @@ -2085,39 +2168,6 @@ Checks if it's possible to subtract subtrahend
    -

    gst_value_register_subtract_func ()

    -
    void                gst_value_register_subtract_func    (GType minuend_type,
    -                                                         GType subtrahend_type,
    -                                                         GstValueSubtractFunc func);
    -

    -Registers func as a function capable of subtracting the values of -subtrahend_type from values of minuend_type. -

    -

    -Subtract functions should be registered at startup before any pipelines are -started, as gst_value_register_subtract_func() is not thread-safe and -cannot be used at the same time as gst_value_subtract(). -

    -
    -- - - - - - - - - - - - - - -

    minuend_type :

    type of the minuend

    subtrahend_type :

    type of the subtrahend

    func :

    function to use
    -
    -
    -

    gst_value_intersect ()

    gboolean            gst_value_intersect                 (GValue *dest,
                                                              const GValue *value1,
    @@ -2125,8 +2175,8 @@ cannot be used at the same time as dest.  If the intersection is non-empty, dest is
    -not modified.
    +is placed in dest, unless NULL.  If the intersection is non-empty,
    +dest is not modified.
     

    @@ -2134,7 +2184,7 @@ not modified. @@ -2161,7 +2211,7 @@ intersection value. [gst_value_register_intersect_func()) to calculate the intersection. +gst_value_register_intersect_func()) to calculate the intersection.

    dest :

    a uninitialized GValue that will hold the calculated -intersection value. [out caller-allocates] +intersection value. May be NULL if the resulting set if not needed. [out caller-allocates][transfer full]
    @@ -2183,34 +2233,27 @@ type, or if there is a method (registered by
    -

    gst_value_register_intersect_func ()

    -
    void                gst_value_register_intersect_func   (GType type1,
    -                                                         GType type2,
    -                                                         GstValueIntersectFunc func);
    +

    gst_value_is_subset ()

    +
    gboolean            gst_value_is_subset                 (const GValue *value1,
    +                                                         const GValue *value2);

    -Registers a function that is called to calculate the intersection -of the values having the types type1 and type2. +Check that value1 is a subset of value2.

    -Intersect functions should be registered at startup before any pipelines are -started, as gst_value_register_intersect_func() is not thread-safe and -cannot be used at the same time as gst_value_intersect() or -gst_value_can_intersect(). +Return: TRUE is value1 is a subset of value2

    - - - - - - + + - - + +

    type1 :

    the first type to intersect

    type2 :

    the second type to intersect

    value1 :

    a GValue +

    func :

    the intersection function

    value2 :

    a GValue +
    diff --git a/docs/gst/html/gstreamer-GstVersion.html b/docs/gst/html/gstreamer-GstVersion.html index a3c1c16..351c2b8 100644 --- a/docs/gst/html/gstreamer-GstVersion.html +++ b/docs/gst/html/gstreamer-GstVersion.html @@ -3,8 +3,8 @@ GstVersion - - + + @@ -17,7 +17,7 @@ Prev Up Home -GStreamer 0.11 Core Reference Manual +GStreamer 1.0 Core Reference Manual Next @@ -70,7 +70,7 @@ The version macros get defined by including "gst/gst.h".

    Details

    GST_VERSION_MAJOR

    -
    #define GST_VERSION_MAJOR (0)
    +
    #define GST_VERSION_MAJOR (1)
     

    The major version of GStreamer at compile time: @@ -79,7 +79,7 @@ The major version of GStreamer at compile time:


    GST_VERSION_MINOR

    -
    #define GST_VERSION_MINOR (11)
    +
    #define GST_VERSION_MINOR (0)
     

    The minor version of GStreamer at compile time: @@ -88,7 +88,7 @@ The minor version of GStreamer at compile time:


    GST_VERSION_MICRO

    -
    #define GST_VERSION_MICRO (1)
    +
    #define GST_VERSION_MICRO (0)
     

    The micro version of GStreamer at compile time: diff --git a/docs/gst/html/gstreamer-gstconfig.html b/docs/gst/html/gstreamer-gstconfig.html index ceb00ce..fda86e4 100644 --- a/docs/gst/html/gstreamer-gstconfig.html +++ b/docs/gst/html/gstreamer-gstconfig.html @@ -3,11 +3,11 @@ gstconfig - - + + - + @@ -17,8 +17,8 @@ Prev Up Home -GStreamer 0.11 Core Reference Manual -Next +GStreamer 1.0 Core Reference Manual +Next Top @@ -69,11 +69,21 @@ If a subsystem is disabled in GStreamer, a value is defined in

    Example 5. Doing subsystem specific things

    -
    -#ifndef GST_DISABLE_GST_DEBUG
    -// do stuff specific to the debugging subsystem
    -#endif // GST_DISABLE_GST_DEBUG
    -
    +
    + + + + + + + +
    1
    +2
    +3
    #ifndef GST_DISABLE_GST_DEBUG
    +// do stuff specific to the debugging subsystem
    +#endif // GST_DISABLE_GST_DEBUG
    +
    +


    diff --git a/docs/gst/html/gstreamer-hierarchy.html b/docs/gst/html/gstreamer-hierarchy.html index 13bd0a1..620c502 100644 --- a/docs/gst/html/gstreamer-hierarchy.html +++ b/docs/gst/html/gstreamer-hierarchy.html @@ -3,20 +3,20 @@ Object Hierarchy - - - - + + + + - + - +
    @@ -33,7 +33,6 @@ GstPluginFeature GstElementFactory GstTypeFindFactory - GstIndexFactory GstElement GstBin GstPipeline @@ -42,9 +41,10 @@ GstTaskPool GstClock GstSystemClock + GstControlBinding + GstControlSource GstPlugin GstRegistry - GstIndex GInterface GstChildProxy GstURIHandler diff --git a/docs/gst/html/gstreamer-support.html b/docs/gst/html/gstreamer-support.html index 217d98f..2994b72 100644 --- a/docs/gst/html/gstreamer-support.html +++ b/docs/gst/html/gstreamer-support.html @@ -3,9 +3,9 @@ GStreamer Core Support - - - + + + @@ -16,20 +16,15 @@ Prev   Home -GStreamer 0.11 Core Reference Manual +GStreamer 1.0 Core Reference Manual Next

    GStreamer Core Support

    -
    -
    +
    GstInfo — Debugging and logging facilities -
    -
    -GstTrace — Tracing functionality -
    -
    +

    Theses modules support the gstreamer core and plugin development. Application developers will rarely need to know about it. diff --git a/docs/gst/html/gstreamer.devhelp2 b/docs/gst/html/gstreamer.devhelp2 index f38a326..08b9a19 100644 --- a/docs/gst/html/gstreamer.devhelp2 +++ b/docs/gst/html/gstreamer.devhelp2 @@ -1,6 +1,6 @@ - + @@ -15,19 +15,19 @@ + + + - - - @@ -52,6 +52,8 @@ + + @@ -61,7 +63,6 @@ - @@ -69,7 +70,7 @@ - + @@ -90,7 +91,7 @@ - + @@ -120,48 +121,53 @@ - - - - + + - + + - - - + - + - - - + + + - - - + + + + + + + + + + + @@ -169,20 +175,18 @@ - - - + + - - - + + - - + + @@ -196,22 +200,24 @@ - - - - + + + + + - + + @@ -260,6 +266,7 @@ + @@ -285,24 +292,33 @@ + - + - - - + + + - + + + + + + + + + @@ -339,7 +355,6 @@ - @@ -352,10 +367,6 @@ - - - - @@ -371,6 +382,8 @@ + + @@ -379,7 +392,6 @@ - @@ -389,6 +401,24 @@ + + + + + + + + + + + + + + + + + + @@ -443,9 +473,10 @@ - + + @@ -476,17 +507,12 @@ - - - - - @@ -499,11 +525,8 @@ - - - @@ -571,7 +594,6 @@ - @@ -585,10 +607,10 @@ - + - - + + @@ -601,6 +623,9 @@ + + + @@ -625,8 +650,18 @@ - - + + + + + + + + + + + + @@ -647,76 +682,18 @@ - - - - - - - - - - - - - + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + @@ -743,38 +720,52 @@ - - - - + + + + + + + + + - - - + + - + + + + + + + + + + + + + + + - - - - @@ -783,7 +774,6 @@ - @@ -795,7 +785,7 @@ - + @@ -841,6 +831,8 @@ + + @@ -855,12 +847,20 @@ + + + + + - - + + + + + @@ -889,6 +889,7 @@ + @@ -918,6 +919,18 @@ + + + + + + + + + + + + @@ -930,12 +943,7 @@ - - - - - - + @@ -946,58 +954,75 @@ - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + - + + - + + - + + - + + - + + - + + - - - - - - - - - - - + + + + - - + + @@ -1005,8 +1030,7 @@ - - + @@ -1015,16 +1039,18 @@ - - - - + + + + + + + + + - - - - - + + @@ -1040,10 +1066,8 @@ - - @@ -1137,10 +1161,8 @@ - - @@ -1184,23 +1206,27 @@ + + + + + + - + + + + - - - - - - + @@ -1227,6 +1253,15 @@ + + + + + + + + + @@ -1243,20 +1278,33 @@ - - - - - + + + + + + + + - - + + + + + + + + + + + + - + @@ -1274,15 +1322,7 @@ - - - - - - - - - + @@ -1301,11 +1341,11 @@ - - + + - + @@ -1335,10 +1375,10 @@ - - - - + + + + @@ -1367,7 +1407,7 @@ - + @@ -1422,6 +1462,7 @@ + @@ -1460,16 +1501,21 @@ - - - + + + + + + + + @@ -1479,20 +1525,12 @@ - - - - - - - - @@ -1513,7 +1551,7 @@ - + @@ -1533,9 +1571,8 @@ - + - @@ -1555,6 +1592,28 @@ + + + + + + + + + + + + + + + + + + + + + + @@ -1571,6 +1630,8 @@ + + @@ -1585,8 +1646,6 @@ - - @@ -1643,7 +1702,6 @@ - @@ -1652,6 +1710,7 @@ + @@ -1673,11 +1732,19 @@ + + + + + + + + @@ -1706,10 +1773,6 @@ - - - - @@ -1721,6 +1784,10 @@ + + + + @@ -1728,9 +1795,6 @@ - - - @@ -1741,13 +1805,11 @@ - - - + @@ -1839,31 +1901,8 @@ - - - - - - - - - - - - - - - - - - - - - - - - - + + @@ -1875,18 +1914,18 @@ - + - - - - - + + + + + @@ -1894,7 +1933,7 @@ - + @@ -1912,10 +1951,13 @@ - - - - + + + + + + + @@ -1987,31 +2029,38 @@ + + + + + + + + - @@ -2020,32 +2069,13 @@ + - - - - - - - - - - - - - - - - - - - - @@ -2055,9 +2085,12 @@ + + + @@ -2085,6 +2118,7 @@ + @@ -2100,18 +2134,24 @@ + + + + - - - - - - - + + + + + + + + + @@ -2127,32 +2167,35 @@ - - - + + - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + @@ -2181,7 +2224,10 @@ - + + + + @@ -2196,10 +2242,16 @@ + + + + + + @@ -2221,6 +2273,8 @@ + + @@ -2230,16 +2284,20 @@ + + + + + - @@ -2266,8 +2324,5 @@ - - - diff --git a/docs/gst/html/gstreamer.html b/docs/gst/html/gstreamer.html index 9a60d08..e25f192 100644 --- a/docs/gst/html/gstreamer.html +++ b/docs/gst/html/gstreamer.html @@ -3,10 +3,10 @@ GStreamer Overview - - - - + + + + @@ -16,7 +16,7 @@ Prev   Home -GStreamer 0.11 Core Reference Manual +GStreamer 1.0 Core Reference Manual Next

    diff --git a/docs/gst/html/index.html b/docs/gst/html/index.html index db94fa4..de32534 100644 --- a/docs/gst/html/index.html +++ b/docs/gst/html/index.html @@ -2,9 +2,9 @@ -GStreamer 0.11 Core Reference Manual - - +GStreamer 1.0 Core Reference Manual + + @@ -13,9 +13,9 @@
    -
    +

    - for GStreamer Core 0.11 (0.11.1) + for GStreamer Core 1.0 (0.11.89.1) The latest version of this documentation can be found on-line at http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/.

    @@ -49,7 +49,7 @@ How to run and debug your GStreamer application GstBin — Base class and element that can contain other elements
    -GstBuffer — Data-passing buffer type, supporting sub-buffers. +GstBuffer — Data-passing buffer type
    GstBufferList — Lists of buffers for data-passing @@ -64,6 +64,9 @@ How to run and debug your GStreamer application GstCaps — Structure describing sets of media formats
    +GstSample — A media sample +
    +
    GstChildProxy — Interface for multi child elements.
    @@ -73,6 +76,12 @@ How to run and debug your GStreamer application gstconfig — Build configuration options
    +GstControlBinding — attachment for control source sources +
    +
    +GstControlSource — base class for control source sources +
    +
    GstDateTime — A date, time and timezone structure
    @@ -89,21 +98,12 @@ How to run and debug your GStreamer application a pipeline
    -GstFilter — A utility function to filter GLists. -
    -
    GstFormat — Dynamically register new data formats
    GstGhostPad — Pseudo link pads
    -GstIndex — Generate indexes on objects -
    -
    -GstIndexFactory — Create GstIndexes from a factory -
    -
    GstIterator — Object to retrieve multiple elements in a threadsafe way.
    @@ -155,8 +155,8 @@ to GStreamer GstPreset — helper interface for element presets
    -GstQuery — Dynamically register new query types. Provide functions - to create queries, and to set and parse values in them. +GstQuery — Provide functions to create queries, and to set and parse + values in them.
    GstRegistry — Abstract base class for management of GstPlugin objects @@ -185,6 +185,13 @@ to GStreamer GstTaskPool — Pool of GStreamer streaming threads
    +GstToc — Generic table of contents support +
    +
    +GstTocSetter — Element interface that allows setting and retrieval + of the TOC +
    +
    GstTypeFind — Stream type detection
    @@ -205,14 +212,9 @@ to GStreamer
    GStreamer Core Support
    -
    -
    +
    GstInfo — Debugging and logging facilities -
    -
    -GstTrace — Tracing functionality -
    -
    +
    Object Hierarchy
    API Index
    Index of deprecated API
    diff --git a/docs/gst/html/index.sgml b/docs/gst/html/index.sgml index 410d769..7799899 100644 --- a/docs/gst/html/index.sgml +++ b/docs/gst/html/index.sgml @@ -1,2526 +1,2578 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/gst/html/libgstreamer.html b/docs/gst/html/libgstreamer.html index ad20def..a10b468 100644 --- a/docs/gst/html/libgstreamer.html +++ b/docs/gst/html/libgstreamer.html @@ -3,9 +3,9 @@ GStreamer Core Library - - - + + + @@ -16,7 +16,7 @@ Prev   Home -GStreamer 0.11 Core Reference Manual +GStreamer 1.0 Core Reference Manual Next
    @@ -34,7 +34,7 @@ GstBin — Base class and element that can contain other elements
    -GstBuffer — Data-passing buffer type, supporting sub-buffers. +GstBuffer — Data-passing buffer type
    GstBufferList — Lists of buffers for data-passing @@ -49,6 +49,9 @@ GstCaps — Structure describing sets of media formats
    +GstSample — A media sample +
    +
    GstChildProxy — Interface for multi child elements.
    @@ -58,6 +61,12 @@ gstconfig — Build configuration options
    +GstControlBinding — attachment for control source sources +
    +
    +GstControlSource — base class for control source sources +
    +
    GstDateTime — A date, time and timezone structure
    @@ -74,21 +83,12 @@ a pipeline
    -GstFilter — A utility function to filter GLists. -
    -
    GstFormat — Dynamically register new data formats
    GstGhostPad — Pseudo link pads
    -GstIndex — Generate indexes on objects -
    -
    -GstIndexFactory — Create GstIndexes from a factory -
    -
    GstIterator — Object to retrieve multiple elements in a threadsafe way.
    @@ -140,8 +140,8 @@ to GStreamer GstPreset — helper interface for element presets
    -GstQuery — Dynamically register new query types. Provide functions - to create queries, and to set and parse values in them. +GstQuery — Provide functions to create queries, and to set and parse + values in them.
    GstRegistry — Abstract base class for management of GstPlugin objects @@ -170,6 +170,13 @@ to GStreamer GstTaskPool — Pool of GStreamer streaming threads
    +GstToc — Generic table of contents support +
    +
    +GstTocSetter — Element interface that allows setting and retrieval + of the TOC +
    +
    GstTypeFind — Stream type detection
    @@ -190,7 +197,7 @@ to GStreamer

    - libgstreamer-0.11.so provides all the core GStreamer services, + libgstreamer-1.0.so provides all the core GStreamer services, including initialization, plugin management and types, as well as the object hierarchy that defines elements and bins, along with some more specialized elements. diff --git a/docs/gst/running.xml b/docs/gst/running.xml index 3800437..c84b0f6 100644 --- a/docs/gst/running.xml +++ b/docs/gst/running.xml @@ -43,7 +43,7 @@ with plug-ins in the user's home directory. These are stored in a directory called plugins inside the -.gstreamer-&GST_MAJORMINOR; directory in the user's +.gstreamer-&GST_API_VERSION; directory in the user's home directory. diff --git a/docs/libs/Makefile.am b/docs/libs/Makefile.am index 0f96f96..60d7318 100644 --- a/docs/libs/Makefile.am +++ b/docs/libs/Makefile.am @@ -1,7 +1,7 @@ ## Process this file with automake to produce Makefile.in # The name of the module, e.g. 'glib'. -#DOC_MODULE=gstreamer-libs-@GST_MAJORMINOR@ +#DOC_MODULE=gstreamer-libs-@GST_API_VERSION@ DOC_MODULE=gstreamer-libs # don't want $(DOC_MODULE)-scan.c to be built with -Werror @@ -43,7 +43,6 @@ SCANOBJ_OPTIONS=--type-init-func="g_type_init();gst_init(&argc,&argv)" IGNORE_HFILES = \ gstinterpolationcontrolsourceprivate.h \ gstlfocontrolsourceprivate.h \ - gstcontrollerprivate.h \ gstgetbits_inl.h \ dp-private.h @@ -60,9 +59,9 @@ extra_files = # contains GtkObjects/GObjects and you want to document signals and properties. GTKDOC_CFLAGS = -I$(top_builddir) -I$(top_builddir)/libs $(GST_OBJ_CFLAGS) GTKDOC_LIBS = \ - $(top_builddir)/libs/gst/controller/libgstcontroller-@GST_MAJORMINOR@.la \ - $(top_builddir)/libs/gst/base/libgstbase-@GST_MAJORMINOR@.la \ - $(top_builddir)/libs/gst/net/libgstnet-@GST_MAJORMINOR@.la \ + $(top_builddir)/libs/gst/controller/libgstcontroller-@GST_API_VERSION@.la \ + $(top_builddir)/libs/gst/base/libgstbase-@GST_API_VERSION@.la \ + $(top_builddir)/libs/gst/net/libgstnet-@GST_API_VERSION@.la \ $(GST_OBJ_LIBS) GTKDOC_CC=$(LIBTOOL) --tag=CC --mode=compile $(CC) diff --git a/docs/libs/Makefile.in b/docs/libs/Makefile.in index 2493ab6..86eaf68 100644 --- a/docs/libs/Makefile.in +++ b/docs/libs/Makefile.in @@ -1,9 +1,9 @@ -# Makefile.in generated by automake 1.11.1 from Makefile.am. +# Makefile.in generated by automake 1.11.4 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, -# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation, -# Inc. +# 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software +# Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. @@ -34,6 +34,23 @@ ########################################################################### # thomas: except of course that we did VPATH = @srcdir@ +am__make_dryrun = \ + { \ + am__dry=no; \ + case $$MAKEFLAGS in \ + *\\[\ \ ]*) \ + echo 'am--echo: ; @echo "AM" OK' | $(MAKE) -f - 2>/dev/null \ + | grep '^AM OK$$' >/dev/null || am__dry=yes;; \ + *) \ + for am__flg in $$MAKEFLAGS; do \ + case $$am__flg in \ + *=*|--*) ;; \ + *n*) am__dry=yes; break;; \ + esac; \ + done;; \ + esac; \ + test $$am__dry = yes; \ + } pkgdatadir = $(datadir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ pkglibdir = $(libdir)/@PACKAGE@ @@ -98,14 +115,19 @@ mkinstalldirs = $(install_sh) -d CONFIG_HEADER = $(top_builddir)/config.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = -AM_V_GEN = $(am__v_GEN_$(V)) -am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) +AM_V_GEN = $(am__v_GEN_@AM_V@) +am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@) am__v_GEN_0 = @echo " GEN " $@; -AM_V_at = $(am__v_at_$(V)) -am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) +AM_V_at = $(am__v_at_@AM_V@) +am__v_at_ = $(am__v_at_@AM_DEFAULT_V@) am__v_at_0 = @ SOURCES = DIST_SOURCES = +am__can_run_installinfo = \ + case $$AM_UPDATE_INFO_DIR in \ + n|no|NO) false;; \ + *) (install-info --version) >/dev/null 2>&1;; \ + esac DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ACLOCAL_AMFLAGS = @ACLOCAL_AMFLAGS@ @@ -162,10 +184,12 @@ GCOV_CFLAGS = @GCOV_CFLAGS@ GCOV_LIBS = @GCOV_LIBS@ GETTEXT_MACRO_VERSION = @GETTEXT_MACRO_VERSION@ GETTEXT_PACKAGE = @GETTEXT_PACKAGE@ +GIO_CFLAGS = @GIO_CFLAGS@ +GIO_LDFLAGS = @GIO_LDFLAGS@ +GIO_LIBS = @GIO_LIBS@ GLIB_CFLAGS = @GLIB_CFLAGS@ +GLIB_EXTRA_CFLAGS = @GLIB_EXTRA_CFLAGS@ GLIB_LIBS = @GLIB_LIBS@ -GLIB_ONLY_CFLAGS = @GLIB_ONLY_CFLAGS@ -GLIB_ONLY_LIBS = @GLIB_ONLY_LIBS@ GLIB_PREFIX = @GLIB_PREFIX@ GLIB_REQ = @GLIB_REQ@ GMP_LIBS = @GMP_LIBS@ @@ -178,10 +202,10 @@ GST_ALL_CFLAGS = @GST_ALL_CFLAGS@ GST_ALL_CXXFLAGS = @GST_ALL_CXXFLAGS@ GST_ALL_LDFLAGS = @GST_ALL_LDFLAGS@ GST_ALL_LIBS = @GST_ALL_LIBS@ +GST_API_VERSION = @GST_API_VERSION@ GST_CURRENT = @GST_CURRENT@ GST_DISABLE_ALLOC_TRACE_DEFINE = @GST_DISABLE_ALLOC_TRACE_DEFINE@ GST_DISABLE_GST_DEBUG_DEFINE = @GST_DISABLE_GST_DEBUG_DEFINE@ -GST_DISABLE_NET_DEFINE = @GST_DISABLE_NET_DEFINE@ GST_DISABLE_OPTION_PARSING_DEFINE = @GST_DISABLE_OPTION_PARSING_DEFINE@ GST_DISABLE_PARSE_DEFINE = @GST_DISABLE_PARSE_DEFINE@ GST_DISABLE_PLUGIN_DEFINE = @GST_DISABLE_PLUGIN_DEFINE@ @@ -195,7 +219,6 @@ GST_LIBVERSION = @GST_LIBVERSION@ GST_LIB_LDFLAGS = @GST_LIB_LDFLAGS@ GST_LICENSE = @GST_LICENSE@ GST_LT_LDFLAGS = @GST_LT_LDFLAGS@ -GST_MAJORMINOR = @GST_MAJORMINOR@ GST_OBJ_CFLAGS = @GST_OBJ_CFLAGS@ GST_OBJ_CXXFLAGS = @GST_OBJ_CXXFLAGS@ GST_OBJ_LIBS = @GST_OBJ_LIBS@ @@ -212,6 +235,10 @@ GST_PRINTF_EXTENSION_SEGMENT_FORMAT_DEFINE = @GST_PRINTF_EXTENSION_SEGMENT_FORMA GST_REGISTRY_DOC_TYPES = @GST_REGISTRY_DOC_TYPES@ GST_REVISION = @GST_REVISION@ GST_USING_PRINTF_EXTENSION_DEFINE = @GST_USING_PRINTF_EXTENSION_DEFINE@ +GST_VERSION_MAJOR = @GST_VERSION_MAJOR@ +GST_VERSION_MICRO = @GST_VERSION_MICRO@ +GST_VERSION_MINOR = @GST_VERSION_MINOR@ +GST_VERSION_NANO = @GST_VERSION_NANO@ GTKDOC_CHECK = @GTKDOC_CHECK@ HAVE_DOCBOOK2HTML = @HAVE_DOCBOOK2HTML@ HAVE_DOCBOOK2PS = @HAVE_DOCBOOK2PS@ @@ -227,7 +254,6 @@ HAVE_PS2PDF = @HAVE_PS2PDF@ HAVE_XMLLINT = @HAVE_XMLLINT@ HOST_CPU = @HOST_CPU@ HTML_DIR = @HTML_DIR@ -INET_ATON_LIBS = @INET_ATON_LIBS@ INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ @@ -260,6 +286,7 @@ LTLIBINTL = @LTLIBINTL@ LTLIBOBJS = @LTLIBOBJS@ MAINT = @MAINT@ MAKEINFO = @MAKEINFO@ +MANIFEST_TOOL = @MANIFEST_TOOL@ MKDIR_P = @MKDIR_P@ MSGFMT = @MSGFMT@ MSGFMT_015 = @MSGFMT_015@ @@ -315,6 +342,7 @@ abs_builddir = @abs_builddir@ abs_srcdir = @abs_srcdir@ abs_top_builddir = @abs_top_builddir@ abs_top_srcdir = @abs_top_srcdir@ +ac_ct_AR = @ac_ct_AR@ ac_ct_CC = @ac_ct_CC@ ac_ct_CXX = @ac_ct_CXX@ ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ @@ -348,7 +376,6 @@ libdir = @libdir@ libexecdir = @libexecdir@ localedir = @localedir@ localstatedir = @localstatedir@ -lt_ECHO = @lt_ECHO@ mandir = @mandir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ @@ -371,7 +398,7 @@ top_builddir = @top_builddir@ top_srcdir = @top_srcdir@ # The name of the module, e.g. 'glib'. -#DOC_MODULE=gstreamer-libs-@GST_MAJORMINOR@ +#DOC_MODULE=gstreamer-libs-@GST_API_VERSION@ DOC_MODULE = gstreamer-libs # for upload-doc.mak @@ -414,7 +441,6 @@ SCANOBJ_OPTIONS = --type-init-func="g_type_init();gst_init(&argc,&argv)" IGNORE_HFILES = \ gstinterpolationcontrolsourceprivate.h \ gstlfocontrolsourceprivate.h \ - gstcontrollerprivate.h \ gstgetbits_inl.h \ dp-private.h @@ -432,9 +458,9 @@ extra_files = # contains GtkObjects/GObjects and you want to document signals and properties. GTKDOC_CFLAGS = -I$(top_builddir) -I$(top_builddir)/libs $(GST_OBJ_CFLAGS) GTKDOC_LIBS = \ - $(top_builddir)/libs/gst/controller/libgstcontroller-@GST_MAJORMINOR@.la \ - $(top_builddir)/libs/gst/base/libgstbase-@GST_MAJORMINOR@.la \ - $(top_builddir)/libs/gst/net/libgstnet-@GST_MAJORMINOR@.la \ + $(top_builddir)/libs/gst/controller/libgstcontroller-@GST_API_VERSION@.la \ + $(top_builddir)/libs/gst/base/libgstbase-@GST_API_VERSION@.la \ + $(top_builddir)/libs/gst/net/libgstnet-@GST_API_VERSION@.la \ $(GST_OBJ_LIBS) GTKDOC_CC = $(LIBTOOL) --tag=CC --mode=compile $(CC) @@ -456,7 +482,7 @@ DOC_OVERRIDES = $(DOC_MODULE)-overrides.txt GPATH = $(srcdir) # thomas: make docs parallel installable -TARGET_DIR = $(HTML_DIR)/$(DOC_MODULE)-@GST_MAJORMINOR@ +TARGET_DIR = $(HTML_DIR)/$(DOC_MODULE)-@GST_API_VERSION@ EXTRA_DIST = \ $(content_files) \ $(extra_files) \ @@ -512,6 +538,7 @@ Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ esac; +$(top_srcdir)/common/upload-doc.mak $(top_srcdir)/common/gtk-doc.mak: $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh @@ -581,10 +608,15 @@ install-am: all-am installcheck: installcheck-am install-strip: - $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ - install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ - `test -z '$(STRIP)' || \ - echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install + if test -z '$(STRIP)'; then \ + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + install; \ + else \ + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \ + fi mostlyclean-generic: clean-generic: @@ -813,7 +845,7 @@ upload: $(FORMATS) @ENABLE_GTK_DOC_TRUE@ fi; \ @ENABLE_GTK_DOC_TRUE@ cd html && gtkdoc-mkhtml $$mkhtml_options $(MKHTML_OPTIONS) $(DOC_MODULE) ../$(DOC_MAIN_SGML_FILE) @ENABLE_GTK_DOC_TRUE@ @mv html/index.sgml html/index.sgml.bak -@ENABLE_GTK_DOC_TRUE@ @$(SED) "s/ href=\"$(DOC_MODULE)\// href=\"$(DOC_MODULE)-@GST_MAJORMINOR@\//g" html/index.sgml.bak >html/index.sgml +@ENABLE_GTK_DOC_TRUE@ @$(SED) "s/ href=\"$(DOC_MODULE)\// href=\"$(DOC_MODULE)-@GST_API_VERSION@\//g" html/index.sgml.bak >html/index.sgml @ENABLE_GTK_DOC_TRUE@ @rm -f html/index.sgml.bak @ENABLE_GTK_DOC_TRUE@ @rm -rf html/xml @ENABLE_GTK_DOC_TRUE@ @rm -f version.entities @@ -871,7 +903,7 @@ install-data-local: echo '-- Installing $(builddir)/html/$(DOC_MODULE).devhelp2' ; \ if test -e $(builddir)/html/$(DOC_MODULE).devhelp2; then \ $(INSTALL_DATA) $(builddir)/html/$(DOC_MODULE).devhelp2 \ - $(DESTDIR)$(TARGET_DIR)/$(DOC_MODULE)-@GST_MAJORMINOR@.devhelp2; \ + $(DESTDIR)$(TARGET_DIR)/$(DOC_MODULE)-@GST_API_VERSION@.devhelp2; \ fi; \ (which gtkdoc-rebase >/dev/null && \ gtkdoc-rebase --relative --dest-dir=$(DESTDIR) --html-dir=$(DESTDIR)$(TARGET_DIR)) || true ; \ diff --git a/docs/libs/gstreamer-libs-docs.sgml b/docs/libs/gstreamer-libs-docs.sgml index 8f84966..1d98145 100644 --- a/docs/libs/gstreamer-libs-docs.sgml +++ b/docs/libs/gstreamer-libs-docs.sgml @@ -8,9 +8,9 @@ ]> - GStreamer &GST_MAJORMINOR; Library Reference Manual + GStreamer &GST_API_VERSION; Library Reference Manual - for GStreamer Library &GST_MAJORMINOR; (&GST_VERSION;) + for GStreamer Library &GST_API_VERSION; (&GST_VERSION;) The latest version of this documentation can be found on-line at http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer-libs/html/. @@ -29,7 +29,7 @@ GStreamer Base and Utillity Classes - libgstbase-&GST_MAJORMINOR;.so provides some base classes to be extended + libgstbase-&GST_API_VERSION;.so provides some base classes to be extended by elements and utillity classes that are most useful for plugin developers. @@ -43,34 +43,27 @@ - + - GStreamer Dynamic Parameter Control - libgstcontroller-&GST_MAJORMINOR;.so provides functionality to animate + libgstcontroller-&GST_API_VERSION;.so provides functionality to animate element properties over time. - - + - - - - - GStreamer Data Protocol - + GStreamer Network Classes - libgstnet-&GST_MAJORMINOR;.so provides network elements and objects. + libgstnet-&GST_API_VERSION;.so provides network elements and objects. @@ -81,7 +74,7 @@ GStreamer Check Unit Testing - libgstcheck-&GST_MAJORMINOR;.so provides functionality for writing + libgstcheck-&GST_API_VERSION;.so provides functionality for writing unit tests that use the check framework. diff --git a/docs/libs/gstreamer-libs-sections.txt b/docs/libs/gstreamer-libs-sections.txt index 1e9e968..ee74cc1 100644 --- a/docs/libs/gstreamer-libs-sections.txt +++ b/docs/libs/gstreamer-libs-sections.txt @@ -13,100 +13,33 @@ # # -

    -gstdataprotocol -gst/dataprotocol/dataprotocol.h -GstDPHeaderFlag -GstDPPayloadType - -GST_DP_HEADER_LENGTH -GstDPVersion -GST_DP_VERSION_MAJOR -GST_DP_VERSION_MINOR - -gst_dp_init - -GstDPHeaderFromBufferFunction -GstDPPacketFromCapsFunction -GstDPPacketFromEventFunction -GstDPPacketizer -gst_dp_packetizer_new -gst_dp_packetizer_free - -gst_dp_crc - -gst_dp_header_payload_length -gst_dp_header_payload_type - -gst_dp_buffer_from_header -gst_dp_caps_from_packet -gst_dp_event_from_packet - -gst_dp_validate_header -gst_dp_validate_payload -gst_dp_validate_packet - -GST_TYPE_DP_VERSION -gst_dp_version_get_type -
    - -
    -gstcontroller -GstController -gst/controller/gstcontroller.h -GstController -gst_controller_init -gst_controller_new -gst_controller_new_list -gst_controller_new_valist -gst_controller_remove_properties -gst_controller_remove_properties_list -gst_controller_remove_properties_valist -gst_controller_set_disabled -gst_controller_set_property_disabled -gst_controller_suggest_next_sync -gst_controller_sync_values -gst_controller_get_control_source -gst_controller_set_control_source -gst_controller_get -gst_controller_get_value_arrays -gst_controller_get_value_array - -GstControllerClass -GstControllerPrivate -GST_CONTROLLER -GST_IS_CONTROLLER -GST_CONTROLLER_CLASS -GST_IS_CONTROLLER_CLASS -GST_CONTROLLER_GET_CLASS -GST_TYPE_CONTROLLER - -gst_controller_get_type -
    +# control source classes
    -gstcontrolsource -GstControlSource -libs/controller/gstcontrolsource.h -GstControlSource -GstControlSourceClass -GstControlSourceBind -GstControlSourceGetValue -GstControlSourceGetValueArray -GstTimedValue -GstValueArray -gst_control_source_bind -gst_control_source_get_value -gst_control_source_get_value_array +gsttimedvaluecontrolsource +GstTimedValueControlSource +libs/controller/gsttimedvaluecontrolsource.h +GstTimedValueControlSource +gst_timed_value_control_source_find_control_point_iter +gst_timed_value_control_source_set +gst_timed_value_control_source_set_from_list +gst_timed_value_control_source_get_all +gst_timed_value_control_source_unset +gst_timed_value_control_source_unset_all +gst_timed_value_control_source_get_count +gst_timed_value_control_source_get_base_value_type +gst_timed_value_control_invalidate_cache -GST_CONTROL_SOURCE -GST_IS_CONTROL_SOURCE -GST_CONTROL_SOURCE_CLASS -GST_IS_CONTROL_SOURCE_CLASS -GST_CONTROL_SOURCE_GET_CLASS -GST_TYPE_CONTROL_SOURCE +GstTimedValueControlSourceClass +GstTimedValueControlSourcePrivate +GST_TIMED_VALUE_CONTROL_SOURCE +GST_IS_TIMED_VALUE_CONTROL_SOURCE +GST_TIMED_VALUE_CONTROL_SOURCE_CLASS +GST_IS_TIMED_VALUE_CONTROL_SOURCE_CLASS +GST_TIMED_VALUE_CONTROL_SOURCE_GET_CLASS +GST_TYPE_TIMED_VALUE_CONTROL_SOURCE -gst_control_source_get_type +gst_timed_value_control_source_get_type
    @@ -114,15 +47,8 @@ gst_control_source_get_type GstInterpolationControlSource libs/controller/gstinterpolationcontrolsource.h GstInterpolationControlSource -GstInterpolateMode +GstInterpolationMode gst_interpolation_control_source_new -gst_interpolation_control_source_set -gst_interpolation_control_source_set_from_list -gst_interpolation_control_source_set_interpolation_mode -gst_interpolation_control_source_get_all -gst_interpolation_control_source_unset -gst_interpolation_control_source_unset_all -gst_interpolation_control_source_get_count GstInterpolationControlSourceClass GstInterpolationControlSourcePrivate @@ -132,8 +58,10 @@ GST_INTERPOLATION_CONTROL_SOURCE_CLASS GST_IS_INTERPOLATION_CONTROL_SOURCE_CLASS GST_INTERPOLATION_CONTROL_SOURCE_GET_CLASS GST_TYPE_INTERPOLATION_CONTROL_SOURCE +GST_TYPE_INTERPOLATION_MODE gst_interpolation_control_source_get_type +gst_interpolation_mode_get_type
    @@ -159,23 +87,22 @@ gst_lfo_waveform_get_type
    -gstcontrollergobject -GstControllerGObject -libs/controller/gstcontroller.h -gst_object_control_properties -gst_object_uncontrol_properties -gst_object_get_controller -gst_object_set_controller -gst_object_suggest_next_sync -gst_object_sync_values -gst_object_get_control_source -gst_object_set_control_source -gst_object_get_value_arrays -gst_object_get_value_array -gst_object_get_control_rate -gst_object_set_control_rate +gsttriggercontrolsource +GstTriggerControlSource +libs/controller/gsttriggercontrolsource.h +GstTriggerControlSource +gst_trigger_control_source_new +GstTriggerControlSourceClass +GstTriggerControlSourcePrivate +GST_TRIGGER_CONTROL_SOURCE +GST_IS_TRIGGER_CONTROL_SOURCE +GST_TRIGGER_CONTROL_SOURCE_CLASS +GST_IS_TRIGGER_CONTROL_SOURCE_CLASS +GST_TRIGGER_CONTROL_SOURCE_GET_CLASS +GST_TYPE_TRIGGER_CONTROL_SOURCE +gst_trigger_control_source_get_type
    # base classes @@ -197,7 +124,8 @@ gst_adapter_available_fast gst_adapter_take gst_adapter_take_buffer gst_adapter_take_list -gst_adapter_prev_timestamp +gst_adapter_prev_pts +gst_adapter_prev_dts gst_adapter_masked_scan_uint32 gst_adapter_masked_scan_uint32_peek @@ -323,7 +251,7 @@ gst_base_sink_set_render_delay gst_base_sink_get_render_delay gst_base_sink_set_last_buffer_enabled gst_base_sink_is_last_buffer_enabled -gst_base_sink_get_last_buffer +gst_base_sink_get_last_sample gst_base_sink_set_blocksize gst_base_sink_get_blocksize gst_base_sink_get_throttle_time @@ -379,9 +307,6 @@ GST_BASE_TRANSFORM_SRC_PAD GST_BASE_TRANSFORM_FLOW_DROPPED -GST_BASE_TRANSFORM_LOCK -GST_BASE_TRANSFORM_UNLOCK - GST_BASE_TRANSFORM GST_IS_BASE_TRANSFORM @@ -690,53 +615,71 @@ GST_BYTE_WRITER
    -gstcollectpads -GstCollectPads -gst/base/gstcollectpads.h -GstCollectData -GstCollectPads -GstCollectPadsFunction -GstCollectPadsClipFunction -GstCollectDataDestroyNotify -gst_collect_pads_new -gst_collect_pads_set_function -gst_collect_pads_set_clip_function -gst_collect_pads_add_pad -gst_collect_pads_add_pad_full -gst_collect_pads_remove_pad -gst_collect_pads_is_active -gst_collect_pads_collect -gst_collect_pads_collect_range -gst_collect_pads_start -gst_collect_pads_stop -gst_collect_pads_set_flushing -gst_collect_pads_peek -gst_collect_pads_pop -gst_collect_pads_available -gst_collect_pads_read_buffer -gst_collect_pads_take_buffer -gst_collect_pads_flush +gstcollectpads2 +GstCollectPads2 +gst/base/gstcollectpads2.h +GstCollectPads2 +GstCollectData2 + +GstCollectData2DestroyNotify +GstCollectPads2BufferFunction +GstCollectPads2CompareFunction +GstCollectPads2EventFunction +GstCollectPads2ClipFunction +GstCollectPads2Function +GstCollectPads2StateFlags + +GST_COLLECT_PADS2_STATE +GST_COLLECT_PADS2_STATE_IS_SET +GST_COLLECT_PADS2_STATE_SET +GST_COLLECT_PADS2_STATE_UNSET + +GST_COLLECT_PADS2_GET_STREAM_LOCK +GST_COLLECT_PADS2_STREAM_LOCK +GST_COLLECT_PADS2_STREAM_UNLOCK + +gst_collect_pads2_new + +gst_collect_pads2_add_pad +gst_collect_pads2_add_pad_full +gst_collect_pads2_remove_pad + +gst_collect_pads2_start +gst_collect_pads2_stop + +gst_collect_pads2_available +gst_collect_pads2_is_active + +gst_collect_pads2_collect +gst_collect_pads2_collect_range + +gst_collect_pads2_flush +gst_collect_pads2_peek +gst_collect_pads2_pop + +gst_collect_pads2_read +gst_collect_pads2_read_buffer +gst_collect_pads2_take_buffer + +gst_collect_pads2_set_buffer_function +gst_collect_pads2_set_compare_function +gst_collect_pads2_set_event_function +gst_collect_pads2_set_clip_function +gst_collect_pads2_set_flushing +gst_collect_pads2_set_function +gst_collect_pads2_set_waiting -GstCollectPadsClass -GstCollectPadsPrivate -GST_COLLECT_PADS -GST_IS_COLLECT_PADS -GST_TYPE_COLLECT_PADS -GST_COLLECT_PADS_CLASS -GST_IS_COLLECT_PADS_CLASS -GST_COLLECT_PADS_GET_CLASS +GstCollectPads2Class +GST_COLLECT_PADS2 +GST_COLLECT_PADS2_CLASS +GST_TYPE_COLLECT_PADS2 +GST_IS_COLLECT_PADS2 +GST_IS_COLLECT_PADS2_CLASS +GST_COLLECT_PADS2_GET_CLASS +gst_collect_pads2_get_type -gst_collect_pads_get_type -GST_COLLECT_PADS_GET_PAD_LOCK -GST_COLLECT_PADS_PAD_LOCK -GST_COLLECT_PADS_PAD_UNLOCK -GST_COLLECT_PADS_BROADCAST -GST_COLLECT_PADS_GET_COND -GST_COLLECT_PADS_SIGNAL -GST_COLLECT_PADS_WAIT
    -
    gstpushsrc GstPushSrc @@ -768,38 +711,6 @@ gst_type_find_helper_get_range_ext
    -
    -gstdataqueue -GstDataQueue -gst/base/gstdataqueue.h -GstDataQueue -GstDataQueueSize -GstDataQueueCheckFullFunction -GstDataQueueItem -GstDataQueueEmptyCallback -GstDataQueueFullCallback -gst_data_queue_new -gst_data_queue_new_full -gst_data_queue_push -gst_data_queue_pop -gst_data_queue_flush -gst_data_queue_set_flushing -gst_data_queue_drop_head -gst_data_queue_is_full -gst_data_queue_is_empty -gst_data_queue_get_level -gst_data_queue_limits_changed - -GstDataQueueClass -GST_DATA_QUEUE -GST_IS_DATA_QUEUE -GST_TYPE_DATA_QUEUE -GST_DATA_QUEUE_CLASS -GST_IS_DATA_QUEUE_CLASS - -gst_data_queue_get_type -
    - # net
    diff --git a/docs/libs/gstreamer-libs.types b/docs/libs/gstreamer-libs.types index a41e584..cfb552a 100644 --- a/docs/libs/gstreamer-libs.types +++ b/docs/libs/gstreamer-libs.types @@ -6,27 +6,27 @@ #include #include #include -#include +#include #include gst_adapter_get_type gst_base_src_get_type gst_base_sink_get_type gst_base_transform_get_type -gst_collect_pads_get_type +gst_collect_pads2_get_type gst_push_src_get_type % controller -#include -#include +#include #include #include +#include -gst_controller_get_type -gst_control_source_get_type +gst_timed_value_control_source_get_type gst_interpolation_control_source_get_type gst_lfo_control_source_get_type +gst_trigger_control_source_get_type % net diff --git a/docs/libs/html/GstAdapter.html b/docs/libs/html/GstAdapter.html index 0538d61..e45d044 100644 --- a/docs/libs/html/GstAdapter.html +++ b/docs/libs/html/GstAdapter.html @@ -3,8 +3,8 @@ GstAdapter - - + + @@ -17,7 +17,7 @@ Prev Up Home -GStreamer 0.11 Library Reference Manual +GStreamer 1.0 Library Reference Manual Next @@ -46,38 +46,39 @@ struct GstAdapter * gst_adapter_new (void); void gst_adapter_clear (GstAdapter *adapter); void gst_adapter_push (GstAdapter *adapter, - GstBuffer *buf); -const guint8 * gst_adapter_map (GstAdapter *adapter, - gsize size); -void gst_adapter_unmap (GstAdapter *adapter, - gsize flush); + GstBuffer *buf); +gconstpointer gst_adapter_map (GstAdapter *adapter, + gsize size); +void gst_adapter_unmap (GstAdapter *adapter); void gst_adapter_copy (GstAdapter *adapter, - guint8 *dest, - gsize offset, - gsize size); + gpointer dest, + gsize offset, + gsize size); void gst_adapter_flush (GstAdapter *adapter, - gsize flush); -gsize gst_adapter_available (GstAdapter *adapter); -gsize gst_adapter_available_fast (GstAdapter *adapter); -guint8 * gst_adapter_take (GstAdapter *adapter, - gsize nbytes); -GstBuffer * gst_adapter_take_buffer (GstAdapter *adapter, - gsize nbytes); + gsize flush); +gsize gst_adapter_available (GstAdapter *adapter); +gsize gst_adapter_available_fast (GstAdapter *adapter); +gpointer gst_adapter_take (GstAdapter *adapter, + gsize nbytes); +GstBuffer * gst_adapter_take_buffer (GstAdapter *adapter, + gsize nbytes); GList * gst_adapter_take_list (GstAdapter *adapter, - gsize nbytes); -GstClockTime gst_adapter_prev_timestamp (GstAdapter *adapter, - guint64 *distance); -gsize gst_adapter_masked_scan_uint32 (GstAdapter *adapter, - guint32 mask, - guint32 pattern, - gsize offset, - gsize size); -gsize gst_adapter_masked_scan_uint32_peek (GstAdapter *adapter, - guint32 mask, - guint32 pattern, - gsize offset, - gsize size, - guint32 *value); + gsize nbytes); +GstClockTime gst_adapter_prev_pts (GstAdapter *adapter, + guint64 *distance); +GstClockTime gst_adapter_prev_dts (GstAdapter *adapter, + guint64 *distance); +gsize gst_adapter_masked_scan_uint32 (GstAdapter *adapter, + guint32 mask, + guint32 pattern, + gsize offset, + gsize size); +gsize gst_adapter_masked_scan_uint32_peek (GstAdapter *adapter, + guint32 mask, + guint32 pattern, + gsize offset, + gsize size, + guint32 *value);
    @@ -116,32 +117,65 @@ potentially more convenient for some use cases. For example, a sink pad's chain function that needs to pass data to a library in 512-byte chunks could be implemented like this:

    -
    -static GstFlowReturn
    -sink_pad_chain (GstPad *pad, GstBuffer *buffer)
    -{
    -  MyElement *this;
    -  GstAdapter *adapter;
    -  GstFlowReturn ret = GST_FLOW_OK;
    +
    + + + + + + + +
    1
    +2
    +3
    +4
    +5
    +6
    +7
    +8
    +9
    +10
    +11
    +12
    +13
    +14
    +15
    +16
    +17
    +18
    +19
    +20
    +21
    +22
    +23
    +24
    +25
    static GstFlowReturn
    +sink_pad_chain (GstPad *pad, GstBuffer *buffer)
    +{
    +  MyElement *this;
    +  GstAdapter *adapter;
    +  GstFlowReturn ret = GST_FLOW_OK;
     
    -  // will give the element an extra ref; remember to drop it
    -  this = MY_ELEMENT (gst_pad_get_parent (pad));
    -  adapter = this->adapter;
    +  // will give the element an extra ref; remember to drop it
    +  this = MY_ELEMENT (gst_pad_get_parent (pad));
    +  adapter = this->adapter;
     
    -  // put buffer into adapter
    -  gst_adapter_push (adapter, buffer);
    -  // while we can read out 512 bytes, process them
    -  while (gst_adapter_available (adapter) >= 512 && ret == GST_FLOW_OK) {
    -    const guint8 *data = gst_adapter_map (adapter, 512);
    -    // use flowreturn as an error value
    -    ret = my_library_foo (data);
    -    gst_adapter_unmap (adapter, 512);
    -  }
    +  // put buffer into adapter
    +  gst_adapter_push (adapter, buffer);
    +  // while we can read out 512 bytes, process them
    +  while (gst_adapter_available (adapter) >= 512 && ret == GST_FLOW_OK) {
    +    const guint8 *data = gst_adapter_map (adapter, 512);
    +    // use flowreturn as an error value
    +    ret = my_library_foo (data);
    +    gst_adapter_unmap (adapter);
    +    gst_adapter_flush (adapter, 512);
    +  }
    +
    +  gst_object_unref (this);
    +  return ret;
    +}
    +
    - gst_object_unref (this); - return ret; -} -

    @@ -152,7 +186,7 @@ is the libvisual element. An element using GstAdapter in its sink pad chain function should ensure that when the FLUSH_STOP event is received, that any queued data is cleared using gst_adapter_clear(). Data should also be cleared or processed on EOS and -when changing state from GST_STATE_PAUSED to GST_STATE_READY. +when changing state from GST_STATE_PAUSED to GST_STATE_READY.

    Also check the GST_BUFFER_FLAG_DISCONT flag on the buffer. Some elements might @@ -161,7 +195,7 @@ need to clear the adapter after a discontinuity.

    Since 0.10.24, the adapter will keep track of the timestamps of the buffers that were pushed. The last seen timestamp before the current position -can be queried with gst_adapter_prev_timestamp(). This function can +can be queried with gst_adapter_prev_timestamp(). This function can optionally return the amount of bytes between the start of the buffer that carried the timestamp and the current adapter position. The distance is useful when dealing with, for example, raw audio samples because it allows @@ -185,7 +219,7 @@ serialized via the pad's STREAM_LOCK.

    Note that gst_adapter_push() takes ownership of the buffer passed. Use -gst_buffer_ref() before pushing it into the adapter if you still want to +gst_buffer_ref() before pushing it into the adapter if you still want to access the buffer later. The adapter will never modify the data in the buffer pushed in it.

    @@ -238,7 +272,7 @@ Removes all buffers from adapter.

    gst_adapter_push ()

    void                gst_adapter_push                    (GstAdapter *adapter,
    -                                                         GstBuffer *buf);
    + GstBuffer *buf);

    Adds the data from buf to the data stored inside adapter and takes ownership of the buffer. @@ -253,7 +287,7 @@ ownership of the buffer.

    buf :

    -a GstBuffer to add to queue in the adapter. [transfer full] +a GstBuffer to add to queue in the adapter. [transfer full] @@ -262,20 +296,20 @@ ownership of the buffer.

    gst_adapter_map ()

    -
    const guint8 *      gst_adapter_map                     (GstAdapter *adapter,
    -                                                         gsize size);
    +
    gconstpointer       gst_adapter_map                     (GstAdapter *adapter,
    +                                                         gsize size);

    Gets the first size bytes stored in the adapter. The returned pointer is valid until the next function is called on the adapter.

    -Note that setting the returned pointer as the data of a GstBuffer is +Note that setting the returned pointer as the data of a GstBuffer is incorrect for general-purpose plugins. The reason is that if a downstream element stores the buffer so that it has access to it outside of the bounds of its chain function, the buffer will have an invalid data pointer after your element flushes the bytes. In that case you should use gst_adapter_take(), which returns a freshly-allocated buffer that you can set -as GstBuffer malloc_data or the potentially more performant +as GstBuffer malloc_data or the potentially more performant gst_adapter_take_buffer().

    @@ -305,34 +339,26 @@ Returns

    gst_adapter_unmap ()

    -
    void                gst_adapter_unmap                   (GstAdapter *adapter,
    -                                                         gsize flush);
    +
    void                gst_adapter_unmap                   (GstAdapter *adapter);

    -Releases the memory obtained with the last gst_adapter_map() and flushes -size bytes from the adapter. +Releases the memory obtained with the last gst_adapter_map().

    - - + - - - - - - +

    adapter :

    a GstAdapter

    flush :

    the amount of bytes to flush

    gst_adapter_copy ()

    void                gst_adapter_copy                    (GstAdapter *adapter,
    -                                                         guint8 *dest,
    -                                                         gsize offset,
    -                                                         gsize size);
    + gpointer dest, + gsize offset, + gsize size);

    Copies size bytes of data starting at offset out of the buffers contained in GstAdapter into an array dest provided by the caller. @@ -371,7 +397,7 @@ available before calling this function.

    gst_adapter_flush ()

    void                gst_adapter_flush                   (GstAdapter *adapter,
    -                                                         gsize flush);
    + gsize flush);

    Flushes the first flush bytes in the adapter. The caller must ensure that at least this many bytes are available. @@ -397,7 +423,7 @@ See also:

    gst_adapter_available ()

    -
    gsize               gst_adapter_available               (GstAdapter *adapter);
    +
    gsize               gst_adapter_available               (GstAdapter *adapter);

    Gets the maximum amount of bytes available, that is it returns the maximum value that can be supplied to gst_adapter_map() without that function @@ -422,7 +448,7 @@ returning NULL.


    gst_adapter_available_fast ()

    -
    gsize               gst_adapter_available_fast          (GstAdapter *adapter);
    +
    gsize               gst_adapter_available_fast          (GstAdapter *adapter);

    Gets the maximum number of bytes that are immediately available without requiring any expensive operations (like copying the data into a @@ -447,8 +473,8 @@ operations


    gst_adapter_take ()

    -
    guint8 *            gst_adapter_take                    (GstAdapter *adapter,
    -                                                         gsize nbytes);
    +
    gpointer            gst_adapter_take                    (GstAdapter *adapter,
    +                                                         gsize nbytes);

    Returns a freshly allocated buffer containing the first nbytes bytes of the adapter. The returned bytes will be flushed from the adapter. @@ -483,17 +509,17 @@ Free-function: g_free


    gst_adapter_take_buffer ()

    -
    GstBuffer *         gst_adapter_take_buffer             (GstAdapter *adapter,
    -                                                         gsize nbytes);
    +
    GstBuffer *         gst_adapter_take_buffer             (GstAdapter *adapter,
    +                                                         gsize nbytes);

    -Returns a GstBuffer containing the first nbytes bytes of the +Returns a GstBuffer containing the first nbytes bytes of the adapter. The returned bytes will be flushed from the adapter. This function is potentially more performant than gst_adapter_take() since it can reuse the memory in pushed buffers by subbuffering or merging.

    -Caller owns returned value. gst_buffer_unref() after usage. +Caller owns returned value. gst_buffer_unref() after usage.

    Free-function: gst_buffer_unref @@ -512,7 +538,7 @@ Free-function: gst_buffer_unref

    Returns :

    -a GstBuffer containing the first nbytes of +a GstBuffer containing the first nbytes of the adapter, or NULL if nbytes bytes are not available. [transfer full] @@ -524,7 +550,7 @@ the adapter, or

    gst_adapter_take_list ()

    GList *             gst_adapter_take_list               (GstAdapter *adapter,
    -                                                         gsize nbytes);
    + gsize nbytes);

    Returns a GList of buffers containing the first nbytes bytes of the adapter. The returned bytes will be flushed from the adapter. @@ -532,7 +558,7 @@ When the caller can deal with individual buffers, this function is more performant because no memory should be copied.

    -Caller owns returned list and contained buffers. gst_buffer_unref() each +Caller owns returned list and contained buffers. gst_buffer_unref() each buffer in the list before freeing the list after usage.

    @@ -560,18 +586,18 @@ are not available. [ -

    gst_adapter_prev_timestamp ()

    -
    GstClockTime        gst_adapter_prev_timestamp          (GstAdapter *adapter,
    -                                                         guint64 *distance);
    +

    gst_adapter_prev_pts ()

    +
    GstClockTime        gst_adapter_prev_pts                (GstAdapter *adapter,
    +                                                         guint64 *distance);

    -Get the timestamp that was before the current byte in the adapter. When -distance is given, the amount of bytes between the timestamp and the current +Get the pts that was before the current byte in the adapter. When +distance is given, the amount of bytes between the pts and the current position is returned.

    -The timestamp is reset to GST_CLOCK_TIME_NONE and the distance is set to 0 when +The pts is reset to GST_CLOCK_TIME_NONE and the distance is set to 0 when the adapter is first created or when it is cleared. This also means that before -the first byte with a timestamp is removed from the adapter, the timestamp +the first byte with a pts is removed from the adapter, the pts and distance returned are GST_CLOCK_TIME_NONE and 0 respectively.

    @@ -589,20 +615,55 @@ and distance returned are GST_CLOCK_TIME_NONE and 0 respectively. - + + + +

    Returns :

    The previously seen timestamp.The previously seen pts.
    +
    +
    +
    +

    gst_adapter_prev_dts ()

    +
    GstClockTime        gst_adapter_prev_dts                (GstAdapter *adapter,
    +                                                         guint64 *distance);
    +

    +Get the dts that was before the current byte in the adapter. When +distance is given, the amount of bytes between the dts and the current +position is returned. +

    +

    +The dts is reset to GST_CLOCK_TIME_NONE and the distance is set to 0 when +the adapter is first created or when it is cleared. This also means that before +the first byte with a dts is removed from the adapter, the dts +and distance returned are GST_CLOCK_TIME_NONE and 0 respectively. +

    +
    ++ + + + + + + + + + + +

    adapter :

    a GstAdapter +

    distance :

    pointer to location for distance, or NULL. [out][allow-none] +

    Returns :

    The previously seen dts.
    -

    Since 0.10.24


    gst_adapter_masked_scan_uint32 ()

    -
    gsize               gst_adapter_masked_scan_uint32      (GstAdapter *adapter,
    -                                                         guint32 mask,
    -                                                         guint32 pattern,
    -                                                         gsize offset,
    -                                                         gsize size);
    +
    gsize               gst_adapter_masked_scan_uint32      (GstAdapter *adapter,
    +                                                         guint32 mask,
    +                                                         guint32 pattern,
    +                                                         gsize offset,
    +                                                         gsize size);

    Scan for pattern pattern with applied mask mask in the adapter data, starting from offset offset. @@ -676,12 +737,12 @@ gst_adapter_masked_scan_uint32 (adapter, 0xffff0000, 0x02030000, 0, 4);


    gst_adapter_masked_scan_uint32_peek ()

    -
    gsize               gst_adapter_masked_scan_uint32_peek (GstAdapter *adapter,
    -                                                         guint32 mask,
    -                                                         guint32 pattern,
    -                                                         gsize offset,
    -                                                         gsize size,
    -                                                         guint32 *value);
    +
    gsize               gst_adapter_masked_scan_uint32_peek (GstAdapter *adapter,
    +                                                         guint32 mask,
    +                                                         guint32 pattern,
    +                                                         gsize offset,
    +                                                         gsize size,
    +                                                         guint32 *value);

    Scan for pattern pattern with applied mask mask in the adapter data, starting from offset offset. If a match is found, the value that matched diff --git a/docs/libs/html/GstBaseSink.html b/docs/libs/html/GstBaseSink.html index b95172f..c4049c7 100644 --- a/docs/libs/html/GstBaseSink.html +++ b/docs/libs/html/GstBaseSink.html @@ -3,8 +3,8 @@ GstBaseSink - - + + @@ -17,7 +17,7 @@ Prev Up Home -GStreamer 0.11 Library Reference Manual +GStreamer 1.0 Library Reference Manual Next @@ -49,24 +49,24 @@ struct gboolean gst_base_sink_query_latency (GstBaseSink *sink, gboolean *live, gboolean *upstream_live, - GstClockTime *min_latency, - GstClockTime *max_latency); -GstClockTime gst_base_sink_get_latency (GstBaseSink *sink); -GstFlowReturn gst_base_sink_do_preroll (GstBaseSink *sink, - GstMiniObject *obj); -GstFlowReturn gst_base_sink_wait_preroll (GstBaseSink *sink); -GstClockReturn gst_base_sink_wait_clock (GstBaseSink *sink, - GstClockTime time, - GstClockTimeDiff *jitter); -GstFlowReturn gst_base_sink_wait_eos (GstBaseSink *sink, - GstClockTime time, - GstClockTimeDiff *jitter); + GstClockTime *min_latency, + GstClockTime *max_latency); +GstClockTime gst_base_sink_get_latency (GstBaseSink *sink); +GstFlowReturn gst_base_sink_do_preroll (GstBaseSink *sink, + GstMiniObject *obj); +GstFlowReturn gst_base_sink_wait_preroll (GstBaseSink *sink); +GstClockReturn gst_base_sink_wait_clock (GstBaseSink *sink, + GstClockTime time, + GstClockTimeDiff *jitter); +GstFlowReturn gst_base_sink_wait_eos (GstBaseSink *sink, + GstClockTime time, + GstClockTimeDiff *jitter); void gst_base_sink_set_sync (GstBaseSink *sink, gboolean sync); gboolean gst_base_sink_get_sync (GstBaseSink *sink); void gst_base_sink_set_max_lateness (GstBaseSink *sink, - gint64 max_lateness); -gint64 gst_base_sink_get_max_lateness (GstBaseSink *sink); + gint64 max_lateness); +gint64 gst_base_sink_get_max_lateness (GstBaseSink *sink); void gst_base_sink_set_qos_enabled (GstBaseSink *sink, gboolean enabled); gboolean gst_base_sink_is_qos_enabled (GstBaseSink *sink); @@ -74,31 +74,24 @@ struct gboolean enabled); gboolean gst_base_sink_is_async_enabled (GstBaseSink *sink); void gst_base_sink_set_ts_offset (GstBaseSink *sink, - GstClockTimeDiff offset); -GstClockTimeDiff gst_base_sink_get_ts_offset (GstBaseSink *sink); + GstClockTimeDiff offset); +GstClockTimeDiff gst_base_sink_get_ts_offset (GstBaseSink *sink); void gst_base_sink_set_render_delay (GstBaseSink *sink, - GstClockTime delay); -GstClockTime gst_base_sink_get_render_delay (GstBaseSink *sink); -void gst_base_sink_set_last_buffer_enabled - (GstBaseSink *sink, - gboolean enabled); -gboolean gst_base_sink_is_last_buffer_enabled - (GstBaseSink *sink); -GstBuffer * gst_base_sink_get_last_buffer (GstBaseSink *sink); + GstClockTime delay); +GstClockTime gst_base_sink_get_render_delay (GstBaseSink *sink); +GstSample * gst_base_sink_get_last_sample (GstBaseSink *sink); void gst_base_sink_set_blocksize (GstBaseSink *sink, guint blocksize); guint gst_base_sink_get_blocksize (GstBaseSink *sink); -guint64 gst_base_sink_get_throttle_time (GstBaseSink *sink); +guint64 gst_base_sink_get_throttle_time (GstBaseSink *sink); void gst_base_sink_set_throttle_time (GstBaseSink *sink, - guint64 throttle); + guint64 throttle); #define GST_BASE_SINK_PAD (obj) #define GST_BASE_SINK_GET_PREROLL_COND (pad) #define GST_BASE_SINK_GET_PREROLL_LOCK (pad) #define GST_BASE_SINK_PREROLL_BROADCAST (pad) #define GST_BASE_SINK_PREROLL_LOCK (pad) #define GST_BASE_SINK_PREROLL_SIGNAL (pad) -#define GST_BASE_SINK_PREROLL_TIMED_WAIT (pad, - timeval) #define GST_BASE_SINK_PREROLL_TRYLOCK (pad) #define GST_BASE_SINK_PREROLL_UNLOCK (pad) #define GST_BASE_SINK_PREROLL_WAIT (pad) @@ -109,8 +102,8 @@ struct GObject +----GInitiallyUnowned - +----GstObject - +----GstElement + +----GstObject + +----GstElement +----GstBaseSink

    @@ -119,28 +112,28 @@ struct "async" gboolean : Read / Write "blocksize" guint : Read / Write - "enable-last-buffer" gboolean : Read / Write - "last-buffer" GstBuffer* : Read - "max-lateness" gint64 : Read / Write + "enable-last-sample" gboolean : Read / Write + "last-sample" GstSample* : Read + "max-lateness" gint64 : Read / Write "qos" gboolean : Read / Write - "render-delay" guint64 : Read / Write + "render-delay" guint64 : Read / Write "sync" gboolean : Read / Write - "throttle-time" guint64 : Read / Write - "ts-offset" gint64 : Read / Write + "throttle-time" guint64 : Read / Write + "ts-offset" gint64 : Read / Write

    Description

    GstBaseSink is the base class for sink elements in GStreamer, such as -xvimagesink or filesink. It is a layer on top of GstElement that provides a +xvimagesink or filesink. It is a layer on top of GstElement that provides a simplified interface to plugin writers. GstBaseSink handles many details for you, for example: preroll, clock synchronization, state changes, activation in push or pull mode, and queries.

    In most cases, when writing sink elements, there is no need to implement -class methods from GstElement or to set functions on pads, because the +class methods from GstElement or to set functions on pads, because the GstBaseSink infrastructure should be sufficient.

    @@ -148,25 +141,44 @@ class methods from GstBaseSink) should install a pad template in its class_init function, like so:

    -
    -static void
    -my_element_class_init (GstMyElementClass *klass)
    -{
    -  GstElementClass *gstelement_class = GST_ELEMENT_CLASS (klass);
    +
    + + + + + + + +
    1
    +2
    +3
    +4
    +5
    +6
    +7
    +8
    +9
    +10
    +11
    +12
    static void
    +my_element_class_init (GstMyElementClass *klass)
    +{
    +  GstElementClass *gstelement_class = GST_ELEMENT_CLASS (klass);
    +
    +  // sinktemplate should be a GstStaticPadTemplate with direction
    +  // GST_PAD_SINK and name "sink"
    +  gst_element_class_add_pad_template (gstelement_class,
    +      gst_static_pad_template_get (&sinktemplate));
    +  // see GstElementDetails
    +  gst_element_class_set_details (gstelement_class, &details);
    +}
    +
    - // sinktemplate should be a GstStaticPadTemplate with direction - // GST_PAD_SINK and name "sink" - gst_element_class_add_pad_template (gstelement_class, - gst_static_pad_template_get (&sinktemplate)); - // see GstElementDetails - gst_element_class_set_details (gstelement_class, &details); -} -

    GstBaseSink will handle the prerolling correctly. This means that it will -return GST_STATE_CHANGE_ASYNC from a state change to PAUSED until the first +return GST_STATE_CHANGE_ASYNC from a state change to PAUSED until the first buffer arrives in this element. The base class will call the GstBaseSinkClass.preroll() vmethod with this preroll buffer and will then commit the state change to the next asynchronously pending state. @@ -174,7 +186,7 @@ commit the state change to the next asynchronously pending state.

    When the element is set to PLAYING, GstBaseSink will synchronise on the clock using the times returned from GstBaseSinkClass.get_times(). If this -function returns GST_CLOCK_TIME_NONE for the start time, no synchronisation +function returns GST_CLOCK_TIME_NONE for the start time, no synchronisation will be done. Synchronisation can be disabled entirely by setting the object "sync" property to FALSE.

    @@ -206,7 +218,7 @@ clipping themselves when needed.

    GstBaseSink will by default report the current playback position in -GST_FORMAT_TIME based on the current clock time and segment information. +GST_FORMAT_TIME based on the current clock time and segment information. If no clock has been set on the element, the query will be forwarded upstream.

    @@ -286,7 +298,7 @@ The opaque -

    GstElementClass parent_class;

    +

    GstElementClass parent_class;

    Element parent class @@ -343,8 +358,7 @@ output/present buffers.

    fixate ()

    -Only useful in pull mode, this vmethod will be called in response to -gst_pad_fixate_caps() being called on the sink pad. Implement if you have +Only useful in pull mode. Implement if you have ideas about what should be the default values for the caps you support. @@ -384,13 +398,18 @@ any state they set during unlock(), such as cleari

    query ()

    -perform a GstQuery on the element. Since: 0.10.36 +perform a GstQuery on the element. Since: 0.10.36

    event ()

    Override this to handle events arriving on the sink pad +

    wait_eos ()

    +Override this to implement custom logic to wait for the EOS time. +subclasses should always first chain up to the default implementation. + +

    preroll ()

    Called to present the preroll buffer if desired @@ -413,8 +432,8 @@ buffers. Since: 0.10.24
    gboolean            gst_base_sink_query_latency         (GstBaseSink *sink,
                                                              gboolean *live,
                                                              gboolean *upstream_live,
    -                                                         GstClockTime *min_latency,
    -                                                         GstClockTime *max_latency);
    + GstClockTime *min_latency, + GstClockTime *max_latency);

    Query the sink for the latency parameters. The latency will be queried from the upstream elements. live will be TRUE if sink is configured to @@ -467,7 +486,7 @@ This function is mostly used by subclasses.


    gst_base_sink_get_latency ()

    -
    GstClockTime        gst_base_sink_get_latency           (GstBaseSink *sink);
    +
    GstClockTime        gst_base_sink_get_latency           (GstBaseSink *sink);

    Get the currently configured latency.

    @@ -489,8 +508,8 @@ Get the currently configured latency.

    gst_base_sink_do_preroll ()

    -
    GstFlowReturn       gst_base_sink_do_preroll            (GstBaseSink *sink,
    -                                                         GstMiniObject *obj);
    +
    GstFlowReturn       gst_base_sink_do_preroll            (GstBaseSink *sink,
    +                                                         GstMiniObject *obj);

    If the sink spawns its own thread for pulling buffers from upstream it should call this method after it has pulled a buffer. If the element needed @@ -515,7 +534,7 @@ This function should be called with the PREROLL_LOCK held.

    Returns :

    -GST_FLOW_OK if the preroll completed and processing can +GST_FLOW_OK if the preroll completed and processing can continue. Any other return value should be returned from the render vmethod. @@ -525,7 +544,7 @@ continue. Any other return value should be returned from the render vmethod.

    gst_base_sink_wait_preroll ()

    -
    GstFlowReturn       gst_base_sink_wait_preroll          (GstBaseSink *sink);
    +
    GstFlowReturn       gst_base_sink_wait_preroll          (GstBaseSink *sink);

    If the GstBaseSinkClass.render() method performs its own synchronisation against the clock it must unblock when going from PLAYING to the PAUSED state @@ -533,9 +552,9 @@ and call this method before continuing to render the remaining data.

    This function will block until a state change to PLAYING happens (in which -case this function returns GST_FLOW_OK) or the processing must be stopped due +case this function returns GST_FLOW_OK) or the processing must be stopped due to a state change to READY or a FLUSH event (in which case this function -returns GST_FLOW_WRONG_STATE). +returns GST_FLOW_FLUSHING).

    This function should only be called with the PREROLL_LOCK held, like in the @@ -551,7 +570,7 @@ render function.

    Returns :

    -GST_FLOW_OK if the preroll completed and processing can +GST_FLOW_OK if the preroll completed and processing can continue. Any other return value should be returned from the render vmethod. @@ -561,17 +580,17 @@ continue. Any other return value should be returned from the render vmethod.

    gst_base_sink_wait_clock ()

    -
    GstClockReturn      gst_base_sink_wait_clock            (GstBaseSink *sink,
    -                                                         GstClockTime time,
    -                                                         GstClockTimeDiff *jitter);
    +
    GstClockReturn      gst_base_sink_wait_clock            (GstBaseSink *sink,
    +                                                         GstClockTime time,
    +                                                         GstClockTimeDiff *jitter);

    This function will block until time is reached. It is usually called by subclasses that use their own internal synchronisation.

    -If time is not valid, no sycnhronisation is done and GST_CLOCK_BADTIME is +If time is not valid, no sycnhronisation is done and GST_CLOCK_BADTIME is returned. Likewise, if synchronisation is disabled in the element or there -is no clock, no synchronisation is done and GST_CLOCK_BADTIME is returned. +is no clock, no synchronisation is done and GST_CLOCK_BADTIME is returned.

    This function should only be called with the PREROLL_LOCK held, like when @@ -602,7 +621,7 @@ sink.

    Returns :

    -GstClockReturn +GstClockReturn
    @@ -611,9 +630,9 @@ sink.

    gst_base_sink_wait_eos ()

    -
    GstFlowReturn       gst_base_sink_wait_eos              (GstBaseSink *sink,
    -                                                         GstClockTime time,
    -                                                         GstClockTimeDiff *jitter);
    +
    GstFlowReturn       gst_base_sink_wait_eos              (GstBaseSink *sink,
    +                                                         GstClockTime time,
    +                                                         GstClockTimeDiff *jitter);

    This function will block until time is reached. It is usually called by subclasses that use their own internal synchronisation but want to let the @@ -645,7 +664,7 @@ and will be adjusted with any latency and offset configured in the sink.

    Returns :

    -GstFlowReturn +GstFlowReturn
    @@ -705,7 +724,7 @@ clock.

    gst_base_sink_set_max_lateness ()

    void                gst_base_sink_set_max_lateness      (GstBaseSink *sink,
    -                                                         gint64 max_lateness);
    + gint64 max_lateness);

    Sets the new max lateness value to max_lateness. This value is used to decide if a buffer should be dropped or not based on the @@ -730,7 +749,7 @@ an unlimited time.


    gst_base_sink_get_max_lateness ()

    -
    gint64              gst_base_sink_get_max_lateness      (GstBaseSink *sink);
    +
    gint64              gst_base_sink_get_max_lateness      (GstBaseSink *sink);

    Gets the max lateness value. See gst_base_sink_set_max_lateness for more details. @@ -852,7 +871,7 @@ changes.

    gst_base_sink_set_ts_offset ()

    void                gst_base_sink_set_ts_offset         (GstBaseSink *sink,
    -                                                         GstClockTimeDiff offset);
    + GstClockTimeDiff offset);

    Adjust the synchronisation of sink with offset. A negative value will render buffers earlier than their timestamp. A positive value will delay @@ -877,7 +896,7 @@ buffers.


    gst_base_sink_get_ts_offset ()

    -
    GstClockTimeDiff    gst_base_sink_get_ts_offset         (GstBaseSink *sink);
    +
    GstClockTimeDiff    gst_base_sink_get_ts_offset         (GstBaseSink *sink);

    Get the synchronisation offset of sink.

    @@ -900,7 +919,7 @@ Get the synchronisation offset of sink.

    gst_base_sink_set_render_delay ()

    void                gst_base_sink_set_render_delay      (GstBaseSink *sink,
    -                                                         GstClockTime delay);
    + GstClockTime delay);

    Set the render delay in sink to delay. The render delay is the time between actual rendering of a buffer and its synchronisation time. Some @@ -933,7 +952,7 @@ This function is usually called by subclasses.


    gst_base_sink_get_render_delay ()

    -
    GstClockTime        gst_base_sink_get_render_delay      (GstBaseSink *sink);
    +
    GstClockTime        gst_base_sink_get_render_delay      (GstBaseSink *sink);

    Get the render delay of sink. see gst_base_sink_set_render_delay() for more information about the render delay. @@ -956,66 +975,17 @@ information about the render delay.


    -

    gst_base_sink_set_last_buffer_enabled ()

    -
    void                gst_base_sink_set_last_buffer_enabled
    -                                                        (GstBaseSink *sink,
    -                                                         gboolean enabled);
    +

    gst_base_sink_get_last_sample ()

    +
    GstSample *         gst_base_sink_get_last_sample       (GstBaseSink *sink);

    -Configures sink to store the last received buffer in the last-buffer -property. -

    -
    -- - - - - - - - - - -

    sink :

    the sink

    enabled :

    the new enable-last-buffer value.
    -

    Since 0.10.30

    -
    -
    -
    -

    gst_base_sink_is_last_buffer_enabled ()

    -
    gboolean            gst_base_sink_is_last_buffer_enabled
    -                                                        (GstBaseSink *sink);
    -

    -Checks if sink is currently configured to store the last received buffer in -the last-buffer property. -

    -
    -- - - - - - - - - - -

    sink :

    the sink

    Returns :

    TRUE if the sink is configured to store the last received buffer.
    -

    Since 0.10.30

    -
    -
    -
    -

    gst_base_sink_get_last_buffer ()

    -
    GstBuffer *         gst_base_sink_get_last_buffer       (GstBaseSink *sink);
    -

    -Get the last buffer that arrived in the sink and was used for preroll or for +Get the last sample that arrived in the sink and was used for preroll or for rendering. This property can be used to generate thumbnails.

    -The GstCaps on the buffer can be used to determine the type of the buffer. +The GstCaps on the sample can be used to determine the type of the buffer.

    -Free-function: gst_buffer_unref +Free-function: gst_sample_unref

    @@ -1026,7 +996,7 @@ Free-function: gst_buffer_unref - @@ -1087,7 +1057,7 @@ mode.

    gst_base_sink_get_throttle_time ()

    -
    guint64             gst_base_sink_get_throttle_time     (GstBaseSink *sink);
    +
    guint64             gst_base_sink_get_throttle_time     (GstBaseSink *sink);

    Get the time that will be inserted between frames to control the maximum buffers per second. @@ -1112,7 +1082,7 @@ maximum buffers per second.

    gst_base_sink_set_throttle_time ()

    void                gst_base_sink_set_throttle_time     (GstBaseSink *sink,
    -                                                         guint64 throttle);
    + guint64 throttle);

    Set the time that will be inserted between rendered buffers. This can be used to control the maximum buffers per second that the sink @@ -1140,7 +1110,7 @@ will render.

    #define GST_BASE_SINK_PAD(obj)          (GST_BASE_SINK_CAST (obj)->sinkpad)
     

    -Gives the pointer to the GstPad object of the element. +Gives the pointer to the GstPad object of the element.

    Returns :

    a GstBuffer. gst_buffer_unref() after usage. +a GstSample. gst_sample_unref() after usage. This function returns NULL when no buffer has arrived in the sink yet or when the sink is not in PAUSED or PLAYING. [transfer full]
    @@ -1153,13 +1123,13 @@ Gives the pointer to the

    GST_BASE_SINK_GET_PREROLL_COND()

    -
    #define GST_BASE_SINK_GET_PREROLL_COND(pad)   (GST_BASE_SINK_CAST(pad)->preroll_cond)
    +
    #define GST_BASE_SINK_GET_PREROLL_COND(pad)   (&GST_BASE_SINK_CAST(pad)->preroll_cond)
     

    GST_BASE_SINK_GET_PREROLL_LOCK()

    -
    #define GST_BASE_SINK_GET_PREROLL_LOCK(pad)   (GST_BASE_SINK_CAST(pad)->preroll_lock)
    +
    #define GST_BASE_SINK_GET_PREROLL_LOCK(pad)   (&GST_BASE_SINK_CAST(pad)->preroll_lock)
     

    @@ -1182,11 +1152,6 @@ Gives the pointer to the -

    GST_BASE_SINK_PREROLL_TIMED_WAIT()

    -
    #define             GST_BASE_SINK_PREROLL_TIMED_WAIT(pad, timeval)
    - -
    -

    GST_BASE_SINK_PREROLL_TRYLOCK()

    #define GST_BASE_SINK_PREROLL_TRYLOCK(pad)    (g_mutex_trylock(GST_BASE_SINK_GET_PREROLL_LOCK(pad)))
     
    @@ -1229,11 +1194,11 @@ The amount of bytes to pull when operating in pull mode.

    -

    The "enable-last-buffer" property

    -
      "enable-last-buffer"       gboolean              : Read / Write
    +

    The "enable-last-sample" property

    +
      "enable-last-sample"       gboolean              : Read / Write

    -Enable the last-buffer property. If FALSE, basesink doesn't keep a -reference to the last buffer arrived and the last-buffer property is always +Enable the last-sample property. If FALSE, basesink doesn't keep a +reference to the last buffer arrived and the last-sample property is always set to NULL. This can be useful if you need buffers to be released as soon as possible, eg. if you're using a buffer pool.

    @@ -1242,8 +1207,8 @@ as possible, eg. if you're using a buffer pool.

    -

    The "last-buffer" property

    -
      "last-buffer"              GstBuffer*            : Read
    +

    The "last-sample" property

    +
      "last-sample"              GstSample*            : Read

    The last buffer that arrived in the sink and was used for preroll or for rendering. This property can be used to generate thumbnails. This property @@ -1254,7 +1219,7 @@ can be NULL when the sink has not yet received a bufer.


    The "max-lateness" property

    -
      "max-lateness"             gint64                : Read / Write
    +
      "max-lateness"             gint64                : Read / Write

    Maximum number of nanoseconds that a buffer can be late before it is dropped (-1 unlimited).

    Allowed values: >= -1

    Default value: -1

    @@ -1269,7 +1234,7 @@ can be NULL when the sink has not yet received a bufer.

    The "render-delay" property

    -
      "render-delay"             guint64               : Read / Write
    +
      "render-delay"             guint64               : Read / Write

    The additional delay between synchronisation and actual rendering of the media. This property will add additional latency to the device in order to @@ -1288,7 +1253,7 @@ make other sinks compensate for the delay.


    The "throttle-time" property

    -
      "throttle-time"            guint64               : Read / Write
    +
      "throttle-time"            guint64               : Read / Write

    The time to insert between buffers. This property can be used to control the maximum amount of buffers per second to render. Setting this property @@ -1300,7 +1265,7 @@ to a value bigger than 0 will make the sink create THROTTLE QoS events.


    The "ts-offset" property

    -
      "ts-offset"                gint64                : Read / Write
    +
      "ts-offset"                gint64                : Read / Write

    Controls the final synchronisation, a negative value will render the buffer earlier while a positive value delays playback. This property can be diff --git a/docs/libs/html/GstBaseSrc.html b/docs/libs/html/GstBaseSrc.html index cbe0e58..1cabaf4 100644 --- a/docs/libs/html/GstBaseSrc.html +++ b/docs/libs/html/GstBaseSrc.html @@ -3,8 +3,8 @@ GstBaseSrc - - + + @@ -17,7 +17,7 @@

    - + - + @@ -359,7 +377,9 @@ setting a fixate function on the source pad. +to produce data. Implementation should call gst_base_src_start_complete() +when the operation completes, either from the current thread or any other +thread that finishes the start operation asynchronously. @@ -396,8 +416,8 @@ Since: 0.10.13 @@ -419,7 +439,7 @@ any state they set during unlock(), such as cleari When the subclass returns GST_FLOW_OK, it MUST return a buffer of the requested size unless fewer bytes are available because an EOS condition is near. No buffer should be returned when the return value is different -from GST_FLOW_OK. A return value of GST_FLOW_UNEXPECTED signifies that the +from GST_FLOW_OK. A return value of GST_FLOW_EOS signifies that the end of stream is reached. The default implementation will call alloc and then call fill. @@ -440,19 +460,25 @@ passed buffer is guaranteed to hold the requested amount of bytes.

    enum GstBaseSrcFlags

    typedef enum {
    -  GST_BASE_SRC_STARTED           = (GST_ELEMENT_FLAG_LAST << 0),
    +  GST_BASE_SRC_FLAG_STARTING     = (GST_ELEMENT_FLAG_LAST << 0),
    +  GST_BASE_SRC_FLAG_STARTED      = (GST_ELEMENT_FLAG_LAST << 1),
       /* padding */
    -  GST_BASE_SRC_FLAG_LAST         = (GST_ELEMENT_FLAG_LAST << 2)
    +  GST_BASE_SRC_FLAG_LAST         = (GST_ELEMENT_FLAG_LAST << 6)
     } GstBaseSrcFlags;
     

    -The GstElement flags that a basesrc element may have. +The GstElement flags that a basesrc element may have.

    Prev Up HomeGStreamer 0.11 Library Reference ManualGStreamer 1.0 Library Reference Manual Next
    @@ -47,16 +47,16 @@ struct GstBaseSrc; struct GstBaseSrcClass; enum GstBaseSrcFlags; -GstFlowReturn gst_base_src_wait_playing (GstBaseSrc *src); +GstFlowReturn gst_base_src_wait_playing (GstBaseSrc *src); gboolean gst_base_src_is_live (GstBaseSrc *src); void gst_base_src_set_live (GstBaseSrc *src, gboolean live); void gst_base_src_set_format (GstBaseSrc *src, - GstFormat format); + GstFormat format); gboolean gst_base_src_query_latency (GstBaseSrc *src, gboolean *live, - GstClockTime *min_latency, - GstClockTime *max_latency); + GstClockTime *min_latency, + GstClockTime *max_latency); guint gst_base_src_get_blocksize (GstBaseSrc *src); void gst_base_src_set_blocksize (GstBaseSrc *src, guint blocksize); @@ -66,11 +66,11 @@ enum void gst_base_src_set_dynamic_size (GstBaseSrc *src, gboolean dynamic); gboolean gst_base_src_new_seamless_segment (GstBaseSrc *src, - gint64 start, - gint64 stop, - gint64 position); + gint64 start, + gint64 stop, + gint64 position); gboolean gst_base_src_set_caps (GstBaseSrc *src, - GstCaps *caps); + GstCaps *caps); #define GST_BASE_SRC_PAD (obj) @@ -79,8 +79,8 @@ enum GObject +----GInitiallyUnowned - +----GstObject - +----GstElement + +----GstObject + +----GstElement +----GstBaseSrc +----GstPushSrc @@ -108,17 +108,17 @@ types of sources are supported:

    -The source can be configured to operate in any GstFormat with the +The source can be configured to operate in any GstFormat with the gst_base_src_set_format() method. The currently set format determines -the format of the internal GstSegment and any GST_EVENT_NEWSEGMENT -events. The default format for GstBaseSrc is GST_FORMAT_BYTES. +the format of the internal GstSegment and any GST_EVENT_NEWSEGMENT +events. The default format for GstBaseSrc is GST_FORMAT_BYTES.

    GstBaseSrc always supports push mode scheduling. If the following conditions are met, it also supports pull mode scheduling:

    @@ -127,7 +127,7 @@ conditions are met, it also supports pull mode scheduling: If all the conditions are met for operating in pull mode, GstBaseSrc is automatically seekable in push mode as well. The following conditions must be met to make the element seekable in push mode when the format is not -GST_FORMAT_BYTES: +GST_FORMAT_BYTES:

    • @@ -164,7 +164,7 @@ A live source does not produce data in the PAUSED state. This means that the GstBaseSrcClass.create() method will not be called in PAUSED but only in PLAYING. To signal the pipeline that the element will not produce data, the return value from the READY to PAUSED state will be -GST_STATE_CHANGE_NO_PREROLL. +GST_STATE_CHANGE_NO_PREROLL.

      A typical live source will timestamp the buffers it creates with the @@ -200,25 +200,43 @@ There is only support in GstBaseSrc) should install a pad template in its class_init function, like so:

      -
      -static void
      -my_element_class_init (GstMyElementClass *klass)
      -{
      -  GstElementClass *gstelement_class = GST_ELEMENT_CLASS (klass);
      -  // srctemplate should be a GstStaticPadTemplate with direction
      -  // GST_PAD_SRC and name "src"
      -  gst_element_class_add_pad_template (gstelement_class,
      -      gst_static_pad_template_get (&srctemplate));
      -  // see GstElementDetails
      -  gst_element_class_set_details (gstelement_class, &details);
      -}
      -
      +
      + + + + + + + +
      1
      +2
      +3
      +4
      +5
      +6
      +7
      +8
      +9
      +10
      +11
      static void
      +my_element_class_init (GstMyElementClass *klass)
      +{
      +  GstElementClass *gstelement_class = GST_ELEMENT_CLASS (klass);
      +  // srctemplate should be a GstStaticPadTemplate with direction
      +  // GST_PAD_SRC and name "src"
      +  gst_element_class_add_pad_template (gstelement_class,
      +      gst_static_pad_template_get (&srctemplate));
      +  // see GstElementDetails
      +  gst_element_class_set_details (gstelement_class, &details);
      +}
      +
      +

      -

      Controlled shutdown of live sources in applications

      +

      Controlled shutdown of live sources in applications

      Applications that record from a live source may want to stop recording in a controlled way, so that the recording is stopped, but the data @@ -232,8 +250,8 @@ been processed and the pipeline can safely be stopped.

      Since GStreamer 0.10.16 an application may send an EOS event to a source element to make it perform the EOS logic (send EOS event downstream or post a -GST_MESSAGE_SEGMENT_DONE on the bus). This can typically be done -with the gst_element_send_event() function on the element or its parent bin. +GST_MESSAGE_SEGMENT_DONE on the bus). This can typically be done +with the gst_element_send_event() function on the element or its parent bin.

      After the EOS has been sent to the element, the application should wait for @@ -269,7 +287,7 @@ The opaque

    GstElementClass parent_class;

    GstElementClass parent_class;

    Element parent class

    start ()

    Start processing. Subclasses should open resources and prepare -to produce data.

    stop ()

    unlock ()

    Unlock any pending access to the resource. Subclasses should unblock any blocked function ASAP. In particular, any create() function in -progress should be unblocked and should return GST_FLOW_WRONG_STATE. Any -future create() function call should also return GST_FLOW_WRONG_STATE +progress should be unblocked and should return GST_FLOW_FLUSHING. Any +future create() function call should also return GST_FLOW_FLUSHING until the unlock_stop() function has been called.
    - + + + + + @@ -467,7 +493,7 @@ The GstElement

    gst_base_src_wait_playing ()

    -
    GstFlowReturn       gst_base_src_wait_playing           (GstBaseSrc *src);
    +
    GstFlowReturn       gst_base_src_wait_playing           (GstBaseSrc *src);

    If the GstBaseSrcClass.create() method performs its own synchronisation against the clock it must unblock when going from PLAYING to the PAUSED state @@ -475,9 +501,9 @@ and call this method before continuing to produce the remaining data.

    This function will block until a state change to PLAYING happens (in which -case this function returns GST_FLOW_OK) or the processing must be stopped due +case this function returns GST_FLOW_OK) or the processing must be stopped due to a state change to READY or a FLUSH event (in which case this function -returns GST_FLOW_WRONG_STATE). +returns GST_FLOW_FLUSHING).

    GST_BASE_SRC_STARTED

    GST_BASE_SRC_FLAG_STARTING

    has source is starting +

    GST_BASE_SRC_FLAG_STARTED

    has source been started
    @@ -489,7 +515,7 @@ returns @@ -552,7 +578,7 @@ be GST_STATE_CHANGE_NO_PREROLL.

    gst_base_src_set_format ()

    void                gst_base_src_set_format             (GstBaseSrc *src,
    -                                                         GstFormat format);
    + GstFormat format);

    Sets the default format of the source. This will be the format used for sending NEW_SEGMENT events and for performing seeks. @@ -562,7 +588,7 @@ If a format of GST_FORMAT_BYTES is set, the element will be able to operate in pull mode if the GstBaseSrcClass.is_seekable() returns TRUE.

    -This function must only be called in states < GST_STATE_PAUSED. +This function must only be called in states < GST_STATE_PAUSED.

    Returns :

    -GST_FLOW_OK if src is PLAYING and processing can +GST_FLOW_OK if src is PLAYING and processing can continue. Any other return value should be returned from the create vmethod.
    @@ -584,8 +610,8 @@ This function must only be called in states <

    gst_base_src_query_latency ()

    gboolean            gst_base_src_query_latency          (GstBaseSrc *src,
                                                              gboolean *live,
    -                                                         GstClockTime *min_latency,
    -                                                         GstClockTime *max_latency);
    + GstClockTime *min_latency, + GstClockTime *max_latency);

    Query the source for the latency parameters. live will be TRUE when src is configured as a live source. min_latency will be set to the difference @@ -742,15 +768,15 @@ read.

    -

    Since 0.10.35

    +

    Since 0.10.36


    gst_base_src_new_seamless_segment ()

    gboolean            gst_base_src_new_seamless_segment   (GstBaseSrc *src,
    -                                                         gint64 start,
    -                                                         gint64 stop,
    -                                                         gint64 position);
    + gint64 start, + gint64 stop, + gint64 position);

    Prepare a new seamless segment for emission downstream. This function must only be called by derived sub-classes, and only from the create() function, @@ -792,7 +818,7 @@ configured with

    gst_base_src_set_caps ()

    gboolean            gst_base_src_set_caps               (GstBaseSrc *src,
    -                                                         GstCaps *caps);
    + GstCaps *caps);

    Set new caps on the basesrc source pad.

    @@ -806,7 +832,7 @@ Set new caps on the basesrc source pad.

    caps :

    -a GstCaps +a GstCaps @@ -823,7 +849,7 @@ Set new caps on the basesrc source pad.
    #define GST_BASE_SRC_PAD(obj)                 (GST_BASE_SRC_CAST (obj)->srcpad)
     

    -Gives the pointer to the GstPad object of the element. +Gives the pointer to the GstPad object of the element.

    diff --git a/docs/libs/html/GstBaseTransform.html b/docs/libs/html/GstBaseTransform.html index 674142b..1634f86 100644 --- a/docs/libs/html/GstBaseTransform.html +++ b/docs/libs/html/GstBaseTransform.html @@ -3,8 +3,8 @@ GstBaseTransform - - + + @@ -17,7 +17,7 @@ - + - + - + + + + + @@ -403,7 +413,9 @@ element ? +caps, fixate the caps on the other pad. The function takes +ownership of othercaps and returns a fixated version of +othercaps. othercaps is not guaranteed to be writable. @@ -424,18 +436,32 @@ should must chain up to the parent if they didn't handle the query - - - - +implementation will remove all memory dependent metadata. +If there is ia filter_meta method implementation, it will +be called for all metadata API in the downstream query, +otherwise the metadata API is removed. + + + + + + + + @@ -494,6 +520,13 @@ The default implementation will copy the flags, timestamps and offsets of the buffer. + + + +gboolean gap_aware);

    If gap_aware is FALSE (the default), output buffers will have the -GST_BUFFER_FLAG_GAP flag unset. +GST_BUFFER_FLAG_GAP flag unset.

    If set to TRUE, the element must handle output buffers with this flag set @@ -748,56 +781,6 @@ MT safe.


    -

    gst_base_transform_suggest ()

    -
    void                gst_base_transform_suggest          (GstBaseTransform *trans,
    -                                                         GstCaps *caps,
    -                                                         gsize size);
    -

    -Instructs trans to suggest new caps upstream. A copy of caps will be -taken. -

    -
    Prev Up HomeGStreamer 0.11 Library Reference ManualGStreamer 1.0 Library Reference Manual Next
    @@ -57,21 +57,15 @@ struct gboolean enabled); void gst_base_transform_update_qos (GstBaseTransform *trans, gdouble proportion, - GstClockTimeDiff diff, - GstClockTime timestamp); + GstClockTimeDiff diff, + GstClockTime timestamp); void gst_base_transform_set_gap_aware (GstBaseTransform *trans, gboolean gap_aware); -void gst_base_transform_suggest (GstBaseTransform *trans, - GstCaps *caps, - gsize size); -void gst_base_transform_reconfigure (GstBaseTransform *trans); #define GST_BASE_TRANSFORM_SINK_NAME #define GST_BASE_TRANSFORM_SRC_NAME #define GST_BASE_TRANSFORM_SINK_PAD (obj) #define GST_BASE_TRANSFORM_SRC_PAD (obj) #define GST_BASE_TRANSFORM_FLOW_DROPPED -#define GST_BASE_TRANSFORM_LOCK (obj) -#define GST_BASE_TRANSFORM_UNLOCK (obj)
    @@ -79,8 +73,8 @@ struct GObject +----GInitiallyUnowned - +----GstObject - +----GstElement + +----GstObject + +----GstElement +----GstBaseTransform
    @@ -117,7 +111,7 @@ It provides for:

    -

    Use Cases

    +

    Use Cases

      @@ -257,7 +251,7 @@ It provides for:


      -

      Sub-class settable flags on GstBaseTransform

      +

      Sub-class settable flags on GstBaseTransform

    GstElementClass parent_class;

    GstElementClass parent_class;

    Element parent class

    gboolean passthrough_on_same_caps;

    If set to TRUE, passthrough mode will be -automatically enabled if the caps are the same.If set to TRUE, passthrough mode will be +automatically enabled if the caps are the same. +Set to FALSE by default.

    gboolean transform_ip_on_passthrough;

    If set to TRUE, transform_ip will be called in +passthrough mode. The passed buffer might not be +writable. When FALSE, neither transform nor +transform_ip will be called in passthrough mode. +Set to TRUE by default.

    transform_caps ()

    fixate_caps ()

    Optional. Given the pad in this direction and the given -caps, fixate the caps on the other pad.

    accept_caps ()

    propose_allocation ()

    Propose buffer allocation parameters for upstream elements. -This function is only called when not operating in -passthrough mode. The default implementation is NULL.

    decide_allocation ()

    Setup the allocation parameters for allocating output buffers. The passed in query contains the result of the downstream allocation query. This function is only called when not operating in passthrough mode. The default -implementation is NULL.

    filter_meta ()

    Return TRUE if the metadata API should be proposed in the +upstream allocation query. The default implementation is NULL +and will cause all metadata to be removed.

    propose_allocation ()

    Propose buffer allocation parameters for upstream elements. +This function must be implemented if the element reads or +writes the buffer content. The query that was passed to +the decide_allocation is passed in this method (or NULL +when the element is in passthrough mode). The default +implementation will pass the query downstream when in +passthrough mode and will copy all the filtered metadata +API in non-passthrough mode.

    transform_size ()

    transform_meta ()

    Optional. Transform the metadata on the input buffer to the +output buffer. By default this method is NULL and no +metadata is copied. subclasses can implement this method and +return TRUE if the metadata is to be copied.

    before_transform ()

    Optional. Since 0.10.22 This method is called right before the base class will @@ -678,8 +711,8 @@ MT safe.

    gst_base_transform_update_qos ()

    void                gst_base_transform_update_qos       (GstBaseTransform *trans,
                                                              gdouble proportion,
    -                                                         GstClockTimeDiff diff,
    -                                                         GstClockTime timestamp);
    + GstClockTimeDiff diff, + GstClockTime timestamp);

    Set the QoS parameters in the transform. This function is called internally when a QOS event is received but subclasses can provide custom information @@ -720,7 +753,7 @@ running_time.

    -- - - - - - - - - - - - - - -

    trans :

    a GstBaseTransform -

    caps :

    caps to suggest. [transfer none] -

    size :

    buffer size to suggest
    -

    Since 0.10.21

    -
    -
    -
    -

    gst_base_transform_reconfigure ()

    -
    void                gst_base_transform_reconfigure      (GstBaseTransform *trans);
    -

    -Instructs trans to renegotiate a new downstream transform on the next -buffer. This function is typically called after properties on the transform -were set that influence the output format. -

    -
    -- - - - -

    trans :

    a GstBaseTransform -
    -

    Since 0.10.21

    -
    -
    -

    GST_BASE_TRANSFORM_SINK_NAME

    #define GST_BASE_TRANSFORM_SINK_NAME "sink"
     
    @@ -820,7 +803,7 @@ The name of the templates for the source pad.
    #define GST_BASE_TRANSFORM_SINK_PAD(obj) (GST_BASE_TRANSFORM_CAST (obj)->sinkpad)
     

    -Gives the pointer to the sink GstPad object of the element. +Gives the pointer to the sink GstPad object of the element.

    @@ -837,7 +820,7 @@ Gives the pointer to the sink #define GST_BASE_TRANSFORM_SRC_PAD(obj) (GST_BASE_TRANSFORM_CAST (obj)->srcpad)

    -Gives the pointer to the source GstPad object of the element. +Gives the pointer to the source GstPad object of the element.

    @@ -854,45 +837,11 @@ Gives the pointer to the source #define GST_BASE_TRANSFORM_FLOW_DROPPED GST_FLOW_CUSTOM_SUCCESS

    -A GstFlowReturn that can be returned from transform and transform_ip to +A GstFlowReturn that can be returned from transform and transform_ip to indicate that no output buffer was generated.

    Since 0.10.13

    -
    -
    -

    GST_BASE_TRANSFORM_LOCK()

    -
    #define GST_BASE_TRANSFORM_LOCK(obj)   g_mutex_lock (GST_BASE_TRANSFORM_CAST (obj)->transform_lock)
    -
    -

    -Obtain a lock to protect the transform function from concurrent access. -

    -
    -- - - - -

    obj :

    base transform instance
    -

    Since 0.10.13

    -
    -
    -
    -

    GST_BASE_TRANSFORM_UNLOCK()

    -
    #define GST_BASE_TRANSFORM_UNLOCK(obj) g_mutex_unlock (GST_BASE_TRANSFORM_CAST (obj)->transform_lock)
    -
    -

    -Release the lock that protects the transform function from concurrent access. -

    -
    -- - - - -

    obj :

    base transform instance
    -

    Since 0.10.13

    -

    Property Details

    diff --git a/docs/libs/html/GstCollectPads.html b/docs/libs/html/GstCollectPads.html deleted file mode 100644 index ba368de..0000000 --- a/docs/libs/html/GstCollectPads.html +++ /dev/null @@ -1,952 +0,0 @@ - - - - -GstCollectPads - - - - - - - - - - - - - - - - - - - -
    -
    -
    - - -
    -

    GstCollectPads

    -

    GstCollectPads — manages a set of pads that operate in collect mode

    -
    -
    -

    Synopsis

    -
    -#include <gst/base/gstcollectpads.h>
    -
    -struct              GstCollectData;
    -struct              GstCollectPads;
    -GstFlowReturn       (*GstCollectPadsFunction)           (GstCollectPads *pads,
    -                                                         gpointer user_data);
    -GstBuffer *         (*GstCollectPadsClipFunction)       (GstCollectPads *pads,
    -                                                         GstCollectData *data,
    -                                                         GstBuffer *buffer,
    -                                                         gpointer user_data);
    -void                (*GstCollectDataDestroyNotify)      (GstCollectData *data);
    -GstCollectPads *    gst_collect_pads_new                (void);
    -void                gst_collect_pads_set_function       (GstCollectPads *pads,
    -                                                         GstCollectPadsFunction func,
    -                                                         gpointer user_data);
    -void                gst_collect_pads_set_clip_function  (GstCollectPads *pads,
    -                                                         GstCollectPadsClipFunction clipfunc,
    -                                                         gpointer user_data);
    -GstCollectData *    gst_collect_pads_add_pad            (GstCollectPads *pads,
    -                                                         GstPad *pad,
    -                                                         guint size);
    -GstCollectData *    gst_collect_pads_add_pad_full       (GstCollectPads *pads,
    -                                                         GstPad *pad,
    -                                                         guint size,
    -                                                         GstCollectDataDestroyNotify destroy_notify);
    -gboolean            gst_collect_pads_remove_pad         (GstCollectPads *pads,
    -                                                         GstPad *pad);
    -gboolean            gst_collect_pads_is_active          (GstCollectPads *pads,
    -                                                         GstPad *pad);
    -GstFlowReturn       gst_collect_pads_collect            (GstCollectPads *pads);
    -GstFlowReturn       gst_collect_pads_collect_range      (GstCollectPads *pads,
    -                                                         guint64 offset,
    -                                                         guint length);
    -void                gst_collect_pads_start              (GstCollectPads *pads);
    -void                gst_collect_pads_stop               (GstCollectPads *pads);
    -void                gst_collect_pads_set_flushing       (GstCollectPads *pads,
    -                                                         gboolean flushing);
    -GstBuffer *         gst_collect_pads_peek               (GstCollectPads *pads,
    -                                                         GstCollectData *data);
    -GstBuffer *         gst_collect_pads_pop                (GstCollectPads *pads,
    -                                                         GstCollectData *data);
    -guint               gst_collect_pads_available          (GstCollectPads *pads);
    -GstBuffer *         gst_collect_pads_read_buffer        (GstCollectPads *pads,
    -                                                         GstCollectData *data,
    -                                                         guint size);
    -GstBuffer *         gst_collect_pads_take_buffer        (GstCollectPads *pads,
    -                                                         GstCollectData *data,
    -                                                         guint size);
    -guint               gst_collect_pads_flush              (GstCollectPads *pads,
    -                                                         GstCollectData *data,
    -                                                         guint size);
    -
    -
    -
    -

    Object Hierarchy

    -
    -  GObject
    -   +----GInitiallyUnowned
    -         +----GstObject
    -               +----GstCollectPads
    -
    -
    -
    -

    Description

    -

    -Manages a set of pads that operate in collect mode. This means that control -is given to the manager of this object when all pads have data. -

    -
    -

    -

    -

    -Last reviewed on 2006-05-10 (0.10.6) -

    -
    -
    -

    Details

    -
    -

    struct GstCollectData

    -
    struct GstCollectData {
    -  /* with LOCK of @collect */
    -  GstCollectPads        *collect;
    -  GstPad                *pad;
    -  GstBuffer             *buffer;
    -  guint                  pos;
    -  GstSegment             segment;
    -};
    -
    -

    -Structure used by the collect_pads. -

    -
    -- - - - - - - - - - - - - - - - - - - - - - -

    GstCollectPads *collect;

    owner GstCollectPads -

    GstPad *pad;

    -GstPad managed by this data

    GstBuffer *buffer;

    currently queued buffer.

    guint pos;

    position in the buffer

    GstSegment segment;

    last segment received.
    -
    -
    -
    -

    struct GstCollectPads

    -
    struct GstCollectPads {
    -  GSList        *data;                  /* list of CollectData items */
    -};
    -
    -

    -Collectpads object. -Note that data is only reliable for iterating the list of GstCollectData -when inside the GstCollectPadsFunction callback. -

    -
    -- - - - -

    GSList *data;

    -GList of GstCollectData managed by this GstCollectPads.
    -
    -
    -
    -

    GstCollectPadsFunction ()

    -
    GstFlowReturn       (*GstCollectPadsFunction)           (GstCollectPads *pads,
    -                                                         gpointer user_data);
    -

    -A function that will be called when all pads have received data. -

    -
    -- - - - - - - - - - - - - - -

    pads :

    the GstCollectPads that triggered the callback

    user_data :

    user data passed to gst_collect_pads_set_function() -

    Returns :

    -GST_FLOW_OK for success
    -
    -
    -
    -

    GstCollectPadsClipFunction ()

    -
    GstBuffer *         (*GstCollectPadsClipFunction)       (GstCollectPads *pads,
    -                                                         GstCollectData *data,
    -                                                         GstBuffer *buffer,
    -                                                         gpointer user_data);
    -

    -A function that will be called when buffer is received on the pad managed -by data in the collecpad object pads. -

    -

    -The function should use the segment of data and the negotiated media type on -the pad to perform clipping of buffer. -

    -

    -This function takes ownership of buffer. -

    -
    -- - - - - - - - - - - - - - - - - - - - - - -

    pads :

    a GstCollectPads -

    data :

    a GstCollectData -

    buffer :

    a GstBuffer -

    user_data :

    user data

    Returns :

    a GstBuffer that contains the clipped data of buffer or NULL when -the buffer has been clipped completely.
    -

    Since 0.10.26

    -
    -
    -
    -

    GstCollectDataDestroyNotify ()

    -
    void                (*GstCollectDataDestroyNotify)      (GstCollectData *data);
    -

    -A function that will be called when the GstCollectData will be freed. -It is passed the pointer to the structure and should free any custom -memory and resources allocated for it. -

    -
    -- - - - -

    data :

    the GstCollectData that will be freed
    -

    Since 0.10.12

    -
    -
    -
    -

    gst_collect_pads_new ()

    -
    GstCollectPads *    gst_collect_pads_new                (void);
    -

    -Create a new instance of GstCollectPads. -

    -

    -MT safe. -

    -
    -- - - - -

    Returns :

    a new GstCollectPads, or NULL in case of an error. [transfer full] -
    -
    -
    -
    -

    gst_collect_pads_set_function ()

    -
    void                gst_collect_pads_set_function       (GstCollectPads *pads,
    -                                                         GstCollectPadsFunction func,
    -                                                         gpointer user_data);
    -

    -Set the callback function and user data that will be called when -all the pads added to the collection have buffers queued. -

    -

    -MT safe. -

    -
    -- - - - - - - - - - - - - - -

    pads :

    the collectspads to use

    func :

    the function to set

    user_data :

    user data passed to the function. [closure] -
    -
    -
    -
    -

    gst_collect_pads_set_clip_function ()

    -
    void                gst_collect_pads_set_clip_function  (GstCollectPads *pads,
    -                                                         GstCollectPadsClipFunction clipfunc,
    -                                                         gpointer user_data);
    -

    -Install a clipping function that is called right after a buffer is received -on a pad managed by pads. See GstCollectPadsClipFunction for more info. -

    -
    -- - - - - - - - - - - - - - -

    pads :

    the collectspads to use

    clipfunc :

    clip function to install

    user_data :

    user data to pass to clip_func. [closure] -
    -

    Since 0.10.26

    -
    -
    -
    -

    gst_collect_pads_add_pad ()

    -
    GstCollectData *    gst_collect_pads_add_pad            (GstCollectPads *pads,
    -                                                         GstPad *pad,
    -                                                         guint size);
    -

    -Add a pad to the collection of collect pads. The pad has to be -a sinkpad. The refcount of the pad is incremented. Use -gst_collect_pads_remove_pad() to remove the pad from the collection -again. -

    -

    -This function will override the chain and event functions of the pad -along with the element_private data, which is used to store private -information for the collectpads. -

    -

    -You specify a size for the returned GstCollectData structure -so that you can use it to store additional information. -

    -

    -The pad will be automatically activated in push mode when pads is -started. -

    -

    -This function calls gst_collect_pads_add_pad_full() passing a value of NULL -for destroy_notify. -

    -

    -MT safe. -

    -
    -- - - - - - - - - - - - - - - - - - -

    pads :

    the collectspads to use

    pad :

    the pad to add. [transfer none] -

    size :

    the size of the returned GstCollectData structure

    Returns :

    a new GstCollectData to identify the new pad. Or NULL -if wrong parameters are supplied.
    -
    -
    -
    -

    gst_collect_pads_add_pad_full ()

    -
    GstCollectData *    gst_collect_pads_add_pad_full       (GstCollectPads *pads,
    -                                                         GstPad *pad,
    -                                                         guint size,
    -                                                         GstCollectDataDestroyNotify destroy_notify);
    -

    -Add a pad to the collection of collect pads. The pad has to be -a sinkpad. The refcount of the pad is incremented. Use -gst_collect_pads_remove_pad() to remove the pad from the collection -again. -

    -

    -You specify a size for the returned GstCollectData structure -so that you can use it to store additional information. -

    -

    -You can also specify a GstCollectDataDestroyNotify that will be called -just before the GstCollectData structure is freed. It is passed the -pointer to the structure and should free any custom memory and resources -allocated for it. -

    -

    -The pad will be automatically activated in push mode when pads is -started. -

    -

    -MT safe. -

    -
    -- - - - - - - - - - - - - - - - - - - - - - -

    pads :

    the collectspads to use

    pad :

    the pad to add. [transfer none] -

    size :

    the size of the returned GstCollectData structure

    destroy_notify :

    function to be called before the returned GstCollectData -structure is freed

    Returns :

    a new GstCollectData to identify the new pad. Or NULL -if wrong parameters are supplied.
    -

    Since 0.10.12

    -
    -
    -
    -

    gst_collect_pads_remove_pad ()

    -
    gboolean            gst_collect_pads_remove_pad         (GstCollectPads *pads,
    -                                                         GstPad *pad);
    -

    -Remove a pad from the collection of collect pads. This function will also -free the GstCollectData and all the resources that were allocated with -gst_collect_pads_add_pad(). -

    -

    -The pad will be deactivated automatically when pads is stopped. -

    -

    -MT safe. -

    -
    -- - - - - - - - - - - - - - -

    pads :

    the collectspads to use

    pad :

    the pad to remove. [transfer none] -

    Returns :

    -TRUE if the pad could be removed.
    -
    -
    -
    -

    gst_collect_pads_is_active ()

    -
    gboolean            gst_collect_pads_is_active          (GstCollectPads *pads,
    -                                                         GstPad *pad);
    -

    -Check if a pad is active. -

    -

    -This function is currently not implemented. -

    -

    -MT safe. -

    -
    -- - - - - - - - - - - - - - -

    pads :

    the collectspads to use. [transfer none] -

    pad :

    the pad to check

    Returns :

    -TRUE if the pad is active.
    -
    -
    -
    -

    gst_collect_pads_collect ()

    -
    GstFlowReturn       gst_collect_pads_collect            (GstCollectPads *pads);
    -

    -Collect data on all pads. This function is usually called -from a GstTask function in an element. -

    -

    -This function is currently not implemented. -

    -

    -MT safe. -

    -
    -- - - - - - - - - - -

    pads :

    the collectspads to use

    Returns :

    -GstFlowReturn of the operation.
    -
    -
    -
    -

    gst_collect_pads_collect_range ()

    -
    GstFlowReturn       gst_collect_pads_collect_range      (GstCollectPads *pads,
    -                                                         guint64 offset,
    -                                                         guint length);
    -

    -Collect data with offset and length on all pads. This function -is typically called in the getrange function of an element. -

    -

    -This function is currently not implemented. -

    -

    -MT safe. -

    -
    -- - - - - - - - - - - - - - - - - - -

    pads :

    the collectspads to use

    offset :

    the offset to collect

    length :

    the length to collect

    Returns :

    -GstFlowReturn of the operation.
    -
    -
    -
    -

    gst_collect_pads_start ()

    -
    void                gst_collect_pads_start              (GstCollectPads *pads);
    -

    -Starts the processing of data in the collect_pads. -

    -

    -MT safe. -

    -
    -- - - - -

    pads :

    the collectspads to use
    -
    -
    -
    -

    gst_collect_pads_stop ()

    -
    void                gst_collect_pads_stop               (GstCollectPads *pads);
    -

    -Stops the processing of data in the collect_pads. this function -will also unblock any blocking operations. -

    -

    -MT safe. -

    -
    -- - - - -

    pads :

    the collectspads to use
    -
    -
    -
    -

    gst_collect_pads_set_flushing ()

    -
    void                gst_collect_pads_set_flushing       (GstCollectPads *pads,
    -                                                         gboolean flushing);
    -

    -Change the flushing state of all the pads in the collection. No pad -is able to accept anymore data when flushing is TRUE. Calling this -function with flushing FALSE makes pads accept data again. -

    -

    -MT safe. -

    -
    -- - - - - - - - - - -

    pads :

    the collectspads to use

    flushing :

    desired state of the pads
    -

    Since 0.10.7.

    -
    -
    -
    -

    gst_collect_pads_peek ()

    -
    GstBuffer *         gst_collect_pads_peek               (GstCollectPads *pads,
    -                                                         GstCollectData *data);
    -

    -Peek at the buffer currently queued in data. This function -should be called with the pads LOCK held, such as in the callback -handler. -

    -

    -MT safe. -

    -
    -- - - - - - - - - - - - - - -

    pads :

    the collectspads to peek

    data :

    the data to use

    Returns :

    The buffer in data or NULL if no buffer is queued. -should unref the buffer after usage. [transfer full] -
    -
    -
    -
    -

    gst_collect_pads_pop ()

    -
    GstBuffer *         gst_collect_pads_pop                (GstCollectPads *pads,
    -                                                         GstCollectData *data);
    -

    -Pop the buffer currently queued in data. This function -should be called with the pads LOCK held, such as in the callback -handler. -

    -

    -Free-function: gst_buffer_unref -

    -

    -MT safe. -

    -
    -- - - - - - - - - - - - - - -

    pads :

    the collectspads to pop

    data :

    the data to use

    Returns :

    The buffer in data or NULL if no buffer was -queued. You should unref the buffer after usage. [transfer full] -
    -
    -
    -
    -

    gst_collect_pads_available ()

    -
    guint               gst_collect_pads_available          (GstCollectPads *pads);
    -

    -Query how much bytes can be read from each queued buffer. This means -that the result of this call is the maximum number of bytes that can -be read from each of the pads. -

    -

    -This function should be called with pads LOCK held, such as -in the callback. -

    -

    -MT safe. -

    -
    -- - - - - - - - - - -

    pads :

    the collectspads to query

    Returns :

    The maximum number of bytes queued on all pads. This function -returns 0 if a pad has no queued buffer.
    -
    -
    -
    -

    gst_collect_pads_read_buffer ()

    -
    GstBuffer *         gst_collect_pads_read_buffer        (GstCollectPads *pads,
    -                                                         GstCollectData *data,
    -                                                         guint size);
    -

    -Get a buffer of size bytes from the given pad data. -

    -

    -This function should be called with pads LOCK held, such as in the callback. -

    -

    -Free-function: gst_buffer_unref -

    -
    -- - - - - - - - - - - - - - - - - - -

    pads :

    the collectspads to query

    data :

    the data to use

    size :

    the number of bytes to read

    Returns :

    a GstBuffer. The size of the buffer can be less -that requested. A return of NULL signals that the pad is end-of-stream. -Unref the buffer with gst_buffer_unref() after use. -MT safe. [transfer full] -
    -

    Since 0.10.18

    -
    -
    -
    -

    gst_collect_pads_take_buffer ()

    -
    GstBuffer *         gst_collect_pads_take_buffer        (GstCollectPads *pads,
    -                                                         GstCollectData *data,
    -                                                         guint size);
    -

    -Get a buffer of size bytes from the given pad data. Flushes the amount -of read bytes. -

    -

    -This function should be called with pads LOCK held, such as in the callback. -

    -

    -Free-function: gst_buffer_unref -

    -

    -MT safe. -

    -
    -- - - - - - - - - - - - - - - - - - -

    pads :

    the collectspads to query

    data :

    the data to use

    size :

    the number of bytes to read

    Returns :

    a GstBuffer. The size of the buffer can be less -that requested. A return of NULL signals that the pad is end-of-stream. -Unref the buffer after use. [transfer full] -
    -

    Since 0.10.18

    -
    -
    -
    -

    gst_collect_pads_flush ()

    -
    guint               gst_collect_pads_flush              (GstCollectPads *pads,
    -                                                         GstCollectData *data,
    -                                                         guint size);
    -

    -Flush size bytes from the pad data. -

    -

    -This function should be called with pads LOCK held, such as -in the callback. -

    -

    -MT safe. -

    -
    -- - - - - - - - - - - - - - - - - - -

    pads :

    the collectspads to query

    data :

    the data to use

    size :

    the number of bytes to flush

    Returns :

    The number of bytes flushed. This can be less than size and -is 0 if the pad was end-of-stream.
    -
    -
    -
    - - - \ No newline at end of file diff --git a/docs/libs/html/GstCollectPads2.html b/docs/libs/html/GstCollectPads2.html new file mode 100644 index 0000000..aa8960a --- /dev/null +++ b/docs/libs/html/GstCollectPads2.html @@ -0,0 +1,1500 @@ + + + + +GstCollectPads2 + + + + + + + + + + + + + + + + + + + +
    +
    +
    + + +
    +

    GstCollectPads2

    +

    GstCollectPads2 — manages a set of pads that operate in collect mode

    +
    +
    +

    Synopsis

    +
    +#include <gst/base/gstcollectpads2.h>
    +
    +struct              GstCollectPads2;
    +struct              GstCollectData2;
    +void                (*GstCollectData2DestroyNotify)     (GstCollectData2 *data);
    +GstFlowReturn       (*GstCollectPads2BufferFunction)    (GstCollectPads2 *pads,
    +                                                         GstCollectData2 *data,
    +                                                         GstBuffer *buffer,
    +                                                         gpointer user_data);
    +gint                (*GstCollectPads2CompareFunction)   (GstCollectPads2 *pads,
    +                                                         GstCollectData2 *data1,
    +                                                         GstClockTime timestamp1,
    +                                                         GstCollectData2 *data2,
    +                                                         GstClockTime timestamp2,
    +                                                         gpointer user_data);
    +gboolean            (*GstCollectPads2EventFunction)     (GstCollectPads2 *pads,
    +                                                         GstCollectData2 *pad,
    +                                                         GstEvent *event,
    +                                                         gpointer user_data);
    +GstFlowReturn       (*GstCollectPads2ClipFunction)      (GstCollectPads2 *pads,
    +                                                         GstCollectData2 *data,
    +                                                         GstBuffer *inbuffer,
    +                                                         GstBuffer **outbuffer,
    +                                                         gpointer user_data);
    +GstFlowReturn       (*GstCollectPads2Function)          (GstCollectPads2 *pads,
    +                                                         gpointer user_data);
    +enum                GstCollectPads2StateFlags;
    +#define             GST_COLLECT_PADS2_STATE             (data)
    +#define             GST_COLLECT_PADS2_STATE_IS_SET      (data,
    +                                                         flag)
    +#define             GST_COLLECT_PADS2_STATE_SET         (data,
    +                                                         flag)
    +#define             GST_COLLECT_PADS2_STATE_UNSET       (data,
    +                                                         flag)
    +#define             GST_COLLECT_PADS2_GET_STREAM_LOCK   (pads)
    +#define             GST_COLLECT_PADS2_STREAM_LOCK       (pads)
    +#define             GST_COLLECT_PADS2_STREAM_UNLOCK     (pads)
    +GstCollectPads2 *   gst_collect_pads2_new               (void);
    +GstCollectData2 *   gst_collect_pads2_add_pad           (GstCollectPads2 *pads,
    +                                                         GstPad *pad,
    +                                                         guint size);
    +GstCollectData2 *   gst_collect_pads2_add_pad_full      (GstCollectPads2 *pads,
    +                                                         GstPad *pad,
    +                                                         guint size,
    +                                                         GstCollectData2DestroyNotify destroy_notify,
    +                                                         gboolean lock);
    +gboolean            gst_collect_pads2_remove_pad        (GstCollectPads2 *pads,
    +                                                         GstPad *pad);
    +void                gst_collect_pads2_start             (GstCollectPads2 *pads);
    +void                gst_collect_pads2_stop              (GstCollectPads2 *pads);
    +guint               gst_collect_pads2_available         (GstCollectPads2 *pads);
    +gboolean            gst_collect_pads2_is_active         (GstCollectPads2 *pads,
    +                                                         GstPad *pad);
    +GstFlowReturn       gst_collect_pads2_collect           (GstCollectPads2 *pads);
    +GstFlowReturn       gst_collect_pads2_collect_range     (GstCollectPads2 *pads,
    +                                                         guint64 offset,
    +                                                         guint length);
    +guint               gst_collect_pads2_flush             (GstCollectPads2 *pads,
    +                                                         GstCollectData2 *data,
    +                                                         guint size);
    +GstBuffer *         gst_collect_pads2_peek              (GstCollectPads2 *pads,
    +                                                         GstCollectData2 *data);
    +GstBuffer *         gst_collect_pads2_pop               (GstCollectPads2 *pads,
    +                                                         GstCollectData2 *data);
    +GstBuffer *         gst_collect_pads2_read_buffer       (GstCollectPads2 *pads,
    +                                                         GstCollectData2 *data,
    +                                                         guint size);
    +GstBuffer *         gst_collect_pads2_take_buffer       (GstCollectPads2 *pads,
    +                                                         GstCollectData2 *data,
    +                                                         guint size);
    +void                gst_collect_pads2_set_buffer_function
    +                                                        (GstCollectPads2 *pads,
    +                                                         GstCollectPads2BufferFunction func,
    +                                                         gpointer user_data);
    +void                gst_collect_pads2_set_compare_function
    +                                                        (GstCollectPads2 *pads,
    +                                                         GstCollectPads2CompareFunction func,
    +                                                         gpointer user_data);
    +void                gst_collect_pads2_set_event_function
    +                                                        (GstCollectPads2 *pads,
    +                                                         GstCollectPads2EventFunction func,
    +                                                         gpointer user_data);
    +void                gst_collect_pads2_set_clip_function (GstCollectPads2 *pads,
    +                                                         GstCollectPads2ClipFunction clipfunc,
    +                                                         gpointer user_data);
    +void                gst_collect_pads2_set_flushing      (GstCollectPads2 *pads,
    +                                                         gboolean flushing);
    +void                gst_collect_pads2_set_function      (GstCollectPads2 *pads,
    +                                                         GstCollectPads2Function func,
    +                                                         gpointer user_data);
    +void                gst_collect_pads2_set_waiting       (GstCollectPads2 *pads,
    +                                                         GstCollectData2 *data,
    +                                                         gboolean waiting);
    +
    +
    +
    +

    Object Hierarchy

    +
    +  GObject
    +   +----GInitiallyUnowned
    +         +----GstObject
    +               +----GstCollectPads2
    +
    +
    +
    +

    Description

    +

    +Manages a set of pads that operate in collect mode. This means that control +is given to the manager of this object when all pads have data. +

    +
    +

    +

    +

    +Last reviewed on 2011-10-28 (0.10.36) +

    +
    +
    +

    Details

    +
    +

    struct GstCollectPads2

    +
    struct GstCollectPads2 {
    +  GSList        *data;                  /* list of CollectData items */
    +};
    +
    +

    +Collectpads object. +

    +
    ++ + + + +

    GSList *data;

    +GList of GstCollectData2 managed by this GstCollectPads2.
    +

    Since 0.10.36

    +
    +
    +
    +

    struct GstCollectData2

    +
    struct GstCollectData2 {
    +  /* with STREAM_LOCK of @collect */
    +  GstCollectPads2       *collect;
    +  GstPad                *pad;
    +  GstBuffer             *buffer;
    +  guint                  pos;
    +  GstSegment             segment;
    +};
    +
    +

    +Structure used by the collect_pads2. +

    +
    ++ + + + + + + + + + + + + + + + + + + + + + +

    GstCollectPads2 *collect;

    owner GstCollectPads2 +

    GstPad *pad;

    +GstPad managed by this data

    GstBuffer *buffer;

    currently queued buffer.

    guint pos;

    position in the buffer

    GstSegment segment;

    last segment received.
    +

    Since 0.10.36

    +
    +
    +
    +

    GstCollectData2DestroyNotify ()

    +
    void                (*GstCollectData2DestroyNotify)     (GstCollectData2 *data);
    +

    +A function that will be called when the GstCollectData2 will be freed. +It is passed the pointer to the structure and should free any custom +memory and resources allocated for it. +

    +
    ++ + + + +

    data :

    the GstCollectData2 that will be freed
    +

    Since 0.10.36

    +
    +
    +
    +

    GstCollectPads2BufferFunction ()

    +
    GstFlowReturn       (*GstCollectPads2BufferFunction)    (GstCollectPads2 *pads,
    +                                                         GstCollectData2 *data,
    +                                                         GstBuffer *buffer,
    +                                                         gpointer user_data);
    +

    +A function that will be called when a (considered oldest) buffer can be muxed. +If all pads have reached EOS, this function is called with NULL buffer +and NULL data. +

    +
    ++ + + + + + + + + + + + + + + + + + + + + + +

    pads :

    the GstCollectPads2 that trigered the callback

    data :

    the GstCollectData2 of pad that has received the buffer

    buffer :

    the GstBuffer +

    user_data :

    user data passed to gst_collect_pads2_set_buffer_function() +

    Returns :

    +GST_FLOW_OK for success
    +

    Since 0.10.36

    +
    +
    +
    +

    GstCollectPads2CompareFunction ()

    +
    gint                (*GstCollectPads2CompareFunction)   (GstCollectPads2 *pads,
    +                                                         GstCollectData2 *data1,
    +                                                         GstClockTime timestamp1,
    +                                                         GstCollectData2 *data2,
    +                                                         GstClockTime timestamp2,
    +                                                         gpointer user_data);
    +

    +A function for comparing two timestamps of buffers or newsegments collected on one pad. +

    +
    ++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    pads :

    the GstCollectPads that is comparing the timestamps

    data1 :

    the first GstCollectData2 +

    timestamp1 :

    the first timestamp

    data2 :

    the second GstCollectData2 +

    timestamp2 :

    the second timestamp

    user_data :

    user data passed to gst_collect_pads2_set_compare_function() +

    Returns :

    Integer less than zero when first timestamp is deemed older than the second one. +Zero if the timestamps are deemed equally old. +Integer greate than zero when second timestamp is deemed older than the first one.
    +

    Since 0.10.36

    +
    +
    +
    +

    GstCollectPads2EventFunction ()

    +
    gboolean            (*GstCollectPads2EventFunction)     (GstCollectPads2 *pads,
    +                                                         GstCollectData2 *pad,
    +                                                         GstEvent *event,
    +                                                         gpointer user_data);
    +

    +A function that will be called while processing an event. It takes +ownership of the event and is responsible for forwarding +events downstream (with gst_pad_event_default()) or dropping events. +

    +

    +The STREAM_START, CAPS, STREAM_CONFIG, SEGMENT and EOS events should +usually be dropped by this function. +

    +
    ++ + + + + + + + + + + + + + + + + + + + + + +

    pads :

    the GstCollectPads2 that trigered the callback

    pad :

    the GstPad that received an event

    event :

    the GstEvent received

    user_data :

    user data passed to gst_collect_pads2_set_event_function() +

    Returns :

    +TRUE if the pad could handle the event
    +

    Since 0.10.36

    +
    +
    +
    +

    GstCollectPads2ClipFunction ()

    +
    GstFlowReturn       (*GstCollectPads2ClipFunction)      (GstCollectPads2 *pads,
    +                                                         GstCollectData2 *data,
    +                                                         GstBuffer *inbuffer,
    +                                                         GstBuffer **outbuffer,
    +                                                         gpointer user_data);
    +

    +A function that will be called when inbuffer is received on the pad managed +by data in the collecpad object pads. +

    +

    +The function should use the segment of data and the negotiated media type on +the pad to perform clipping of inbuffer. +

    +

    +This function takes ownership of inbuffer and should output a buffer in +outbuffer or return NULL in outbuffer if the buffer should be dropped. +

    +
    ++ + + + + + + + + + + + + + + + + + + + + + + + + + +

    pads :

    a GstCollectPads2 +

    data :

    a GstCollectData2 +

    inbuffer :

    the input GstBuffer +

    outbuffer :

    the output GstBuffer +

    user_data :

    user data

    Returns :

    a GstFlowReturn that corresponds to the result of clipping.
    +

    Since 0.10.36

    +
    +
    +
    +

    GstCollectPads2Function ()

    +
    GstFlowReturn       (*GstCollectPads2Function)          (GstCollectPads2 *pads,
    +                                                         gpointer user_data);
    +

    +A function that will be called when all pads have received data. +

    +
    ++ + + + + + + + + + + + + + +

    pads :

    the GstCollectPads2 that trigered the callback

    user_data :

    user data passed to gst_collect_pads2_set_function() +

    Returns :

    +GST_FLOW_OK for success
    +

    Since 0.10.36

    +
    +
    +
    +

    enum GstCollectPads2StateFlags

    +
    typedef enum {
    +  GST_COLLECT_PADS2_STATE_EOS = 1 << 0,
    +  GST_COLLECT_PADS2_STATE_FLUSHING = 1 << 1,
    +  GST_COLLECT_PADS2_STATE_NEW_SEGMENT = 1 << 2,
    +  GST_COLLECT_PADS2_STATE_WAITING = 1 << 3,
    +  GST_COLLECT_PADS2_STATE_LOCKED = 1 << 4
    +} GstCollectPads2StateFlags;
    +
    +
    ++ + + + + + + + + + + + + + + + + + + + + + +

    GST_COLLECT_PADS2_STATE_EOS

    Set if collectdata's pad is EOS. +

    GST_COLLECT_PADS2_STATE_FLUSHING

    Set if collectdata's pad is flushing. +

    GST_COLLECT_PADS2_STATE_NEW_SEGMENT

    Set if collectdata's pad received a + new_segment event. +

    GST_COLLECT_PADS2_STATE_WAITING

    Set if collectdata's pad must be waited + for when collecting. +

    GST_COLLECT_PADS2_STATE_LOCKED

    Set collectdata's pad WAITING state must + not be changed. +GstCollectPads2StateFlags indicate private state of a collectdata('s pad). +
    +

    Since 0.10.36

    +
    +
    +
    +

    GST_COLLECT_PADS2_STATE()

    +
    #define GST_COLLECT_PADS2_STATE(data)                 (((GstCollectData2 *) data)->state)
    +
    +

    +A flags word containing GstCollectPads2StateFlags flags set +on this collected pad. +

    +
    ++ + + + +

    data :

    a GstCollectData2.
    +

    Since 0.10.36

    +
    +
    +
    +

    GST_COLLECT_PADS2_STATE_IS_SET()

    +
    #define GST_COLLECT_PADS2_STATE_IS_SET(data,flag)     !!(GST_COLLECT_PADS2_STATE (data) & flag)
    +
    +

    +Gives the status of a specific flag on a collected pad. +

    +
    ++ + + + + + + + + + +

    data :

    a GstCollectData2.

    flag :

    the GstCollectPads2StateFlags to check.
    +

    Since 0.10.36

    +
    +
    +
    +

    GST_COLLECT_PADS2_STATE_SET()

    +
    #define GST_COLLECT_PADS2_STATE_SET(data,flag)        (GST_COLLECT_PADS2_STATE (data) |= flag)
    +
    +

    +Sets a state flag on a collected pad. +

    +
    ++ + + + + + + + + + +

    data :

    a GstCollectData2.

    flag :

    the GstCollectPads2StateFlags to set.
    +

    Since 0.10.36

    +
    +
    +
    +

    GST_COLLECT_PADS2_STATE_UNSET()

    +
    #define GST_COLLECT_PADS2_STATE_UNSET(data,flag)      (GST_COLLECT_PADS2_STATE (data) &= ~(flag))
    +
    +

    +Clears a state flag on a collected pad. +

    +
    ++ + + + + + + + + + +

    data :

    a GstCollectData2.

    flag :

    the GstCollectPads2StateFlags to clear.
    +

    Since 0.10.36

    +
    +
    +
    +

    GST_COLLECT_PADS2_GET_STREAM_LOCK()

    +
    #define GST_COLLECT_PADS2_GET_STREAM_LOCK(pads) (&((GstCollectPads2 *)pads)->stream_lock)
    +
    +

    +Get the stream lock of pads. The stream lock is used to coordinate and +serialize execution among the various streams being collected, and in +protecting the resources used to accomplish this. +

    +
    ++ + + + +

    pads :

    a GstCollectPads2 +
    +

    Since 0.10.36

    +
    +
    +
    +

    GST_COLLECT_PADS2_STREAM_LOCK()

    +
    #define GST_COLLECT_PADS2_STREAM_LOCK(pads)     g_rec_mutex_lock(GST_COLLECT_PADS2_GET_STREAM_LOCK (pads))
    +
    +

    +Lock the stream lock of pads. +

    +
    ++ + + + +

    pads :

    a GstCollectPads2 +
    +

    Since 0.10.36

    +
    +
    +
    +

    GST_COLLECT_PADS2_STREAM_UNLOCK()

    +
    #define GST_COLLECT_PADS2_STREAM_UNLOCK(pads)   g_rec_mutex_unlock(GST_COLLECT_PADS2_GET_STREAM_LOCK (pads))
    +
    +

    +Unlock the stream lock of pads. +

    +
    ++ + + + +

    pads :

    a GstCollectPads2 +
    +

    Since 0.10.36

    +
    +
    +
    +

    gst_collect_pads2_new ()

    +
    GstCollectPads2 *   gst_collect_pads2_new               (void);
    +

    +Create a new instance of GstCollectsPads. +

    +

    +MT safe. +

    +
    ++ + + + +

    Returns :

    a new GstCollectPads2, or NULL in case of an error. [transfer full] +
    +

    Since 0.10.36

    +
    +
    +
    +

    gst_collect_pads2_add_pad ()

    +
    GstCollectData2 *   gst_collect_pads2_add_pad           (GstCollectPads2 *pads,
    +                                                         GstPad *pad,
    +                                                         guint size);
    +

    +Add a pad to the collection of collect pads. The pad has to be +a sinkpad. The refcount of the pad is incremented. Use +gst_collect_pads2_remove_pad() to remove the pad from the collection +again. +

    +

    +You specify a size for the returned GstCollectData2 structure +so that you can use it to store additional information. +

    +

    +The pad will be automatically activated in push mode when pads is +started. +

    +

    +This function calls gst_collect_pads2_add_pad_full() passing a value of NULL +for destroy_notify and TRUE for locked. +

    +

    +MT safe. +

    +
    ++ + + + + + + + + + + + + + + + + + +

    pads :

    the collectspads to use

    pad :

    the pad to add. [transfer none] +

    size :

    the size of the returned GstCollectData2 structure

    Returns :

    a new GstCollectData2 to identify the new pad. Or NULL +if wrong parameters are supplied.
    +

    Since 0.10.36

    +
    +
    +
    +

    gst_collect_pads2_add_pad_full ()

    +
    GstCollectData2 *   gst_collect_pads2_add_pad_full      (GstCollectPads2 *pads,
    +                                                         GstPad *pad,
    +                                                         guint size,
    +                                                         GstCollectData2DestroyNotify destroy_notify,
    +                                                         gboolean lock);
    +

    +Add a pad to the collection of collect pads. The pad has to be +a sinkpad. The refcount of the pad is incremented. Use +gst_collect_pads2_remove_pad() to remove the pad from the collection +again. +

    +

    +You specify a size for the returned GstCollectData2 structure +so that you can use it to store additional information. +

    +

    +You can also specify a GstCollectData2DestroyNotify that will be called +just before the GstCollectData2 structure is freed. It is passed the +pointer to the structure and should free any custom memory and resources +allocated for it. +

    +

    +Keeping a pad locked in waiting state is only relevant when using +the default collection algorithm (providing the oldest buffer). +It ensures a buffer must be available on this pad for a collection +to take place. This is of typical use to a muxer element where +non-subtitle streams should always be in waiting state, +e.g. to assure that caps information is available on all these streams +when initial headers have to be written. +

    +

    +The pad will be automatically activated in push mode when pads is +started. +

    +

    +MT safe. +

    +
    ++ + + + + + + + + + + + + + + + + + + + + + + + + + +

    pads :

    the collectspads to use

    pad :

    the pad to add. [transfer none] +

    size :

    the size of the returned GstCollectData2 structure

    destroy_notify :

    function to be called before the returned GstCollectData2 +structure is freed

    lock :

    whether to lock this pad in usual waiting state

    Returns :

    a new GstCollectData2 to identify the new pad. Or NULL +if wrong parameters are supplied.
    +

    Since 0.10.36

    +
    +
    +
    +

    gst_collect_pads2_remove_pad ()

    +
    gboolean            gst_collect_pads2_remove_pad        (GstCollectPads2 *pads,
    +                                                         GstPad *pad);
    +

    +Remove a pad from the collection of collect pads. This function will also +free the GstCollectData2 and all the resources that were allocated with +gst_collect_pads2_add_pad(). +

    +

    +The pad will be deactivated automatically when pads is stopped. +

    +

    +MT safe. +

    +
    ++ + + + + + + + + + + + + + +

    pads :

    the collectspads to use

    pad :

    the pad to remove. [transfer none] +

    Returns :

    +TRUE if the pad could be removed.
    +

    Since 0.10.36

    +
    +
    +
    +

    gst_collect_pads2_start ()

    +
    void                gst_collect_pads2_start             (GstCollectPads2 *pads);
    +

    +Starts the processing of data in the collect_pads2. +

    +

    +MT safe. +

    +
    ++ + + + +

    pads :

    the collectspads to use
    +

    Since 0.10.36

    +
    +
    +
    +

    gst_collect_pads2_stop ()

    +
    void                gst_collect_pads2_stop              (GstCollectPads2 *pads);
    +

    +Stops the processing of data in the collect_pads2. this function +will also unblock any blocking operations. +

    +

    +MT safe. +

    +
    ++ + + + +

    pads :

    the collectspads to use
    +

    Since 0.10.36

    +
    +
    +
    +

    gst_collect_pads2_available ()

    +
    guint               gst_collect_pads2_available         (GstCollectPads2 *pads);
    +

    +Query how much bytes can be read from each queued buffer. This means +that the result of this call is the maximum number of bytes that can +be read from each of the pads. +

    +

    +This function should be called with pads STREAM_LOCK held, such as +in the callback. +

    +

    +MT safe. +

    +
    ++ + + + + + + + + + +

    pads :

    the collectspads to query

    Returns :

    The maximum number of bytes queued on all pads. This function +returns 0 if a pad has no queued buffer.
    +

    Since 0.10.36

    +
    +
    +
    +

    gst_collect_pads2_is_active ()

    +
    gboolean            gst_collect_pads2_is_active         (GstCollectPads2 *pads,
    +                                                         GstPad *pad);
    +

    +Check if a pad is active. +

    +

    +This function is currently not implemented. +

    +

    +MT safe. +

    +
    ++ + + + + + + + + + + + + + +

    pads :

    the collectspads to use

    pad :

    the pad to check

    Returns :

    +TRUE if the pad is active.
    +

    Since 0.10.36

    +
    +
    +
    +

    gst_collect_pads2_collect ()

    +
    GstFlowReturn       gst_collect_pads2_collect           (GstCollectPads2 *pads);
    +

    +Collect data on all pads. This function is usually called +from a GstTask function in an element. +

    +

    +This function is currently not implemented. +

    +

    +MT safe. +

    +
    ++ + + + + + + + + + +

    pads :

    the collectspads to use

    Returns :

    +GstFlowReturn of the operation.
    +

    Since 0.10.36

    +
    +
    +
    +

    gst_collect_pads2_collect_range ()

    +
    GstFlowReturn       gst_collect_pads2_collect_range     (GstCollectPads2 *pads,
    +                                                         guint64 offset,
    +                                                         guint length);
    +

    +Collect data with offset and length on all pads. This function +is typically called in the getrange function of an element. +

    +

    +This function is currently not implemented. +

    +

    +MT safe. +

    +
    ++ + + + + + + + + + + + + + + + + + +

    pads :

    the collectspads to use

    offset :

    the offset to collect

    length :

    the length to collect

    Returns :

    +GstFlowReturn of the operation.
    +

    Since 0.10.36

    +
    +
    +
    +

    gst_collect_pads2_flush ()

    +
    guint               gst_collect_pads2_flush             (GstCollectPads2 *pads,
    +                                                         GstCollectData2 *data,
    +                                                         guint size);
    +

    +Flush size bytes from the pad data. +

    +

    +This function should be called with pads STREAM_LOCK held, such as +in the callback. +

    +

    +MT safe. +

    +
    ++ + + + + + + + + + + + + + + + + + +

    pads :

    the collectspads to query

    data :

    the data to use

    size :

    the number of bytes to flush

    Returns :

    The number of bytes flushed This can be less than size and +is 0 if the pad was end-of-stream.
    +

    Since 0.10.36

    +
    +
    +
    +

    gst_collect_pads2_peek ()

    +
    GstBuffer *         gst_collect_pads2_peek              (GstCollectPads2 *pads,
    +                                                         GstCollectData2 *data);
    +

    +Peek at the buffer currently queued in data. This function +should be called with the pads STREAM_LOCK held, such as in the callback +handler. +

    +

    +MT safe. +

    +
    ++ + + + + + + + + + + + + + +

    pads :

    the collectspads to peek

    data :

    the data to use

    Returns :

    The buffer in data or NULL if no buffer is queued. +should unref the buffer after usage.
    +

    Since 0.10.36

    +
    +
    +
    +

    gst_collect_pads2_pop ()

    +
    GstBuffer *         gst_collect_pads2_pop               (GstCollectPads2 *pads,
    +                                                         GstCollectData2 *data);
    +

    +Pop the buffer currently queued in data. This function +should be called with the pads STREAM_LOCK held, such as in the callback +handler. +

    +

    +MT safe. +

    +
    ++ + + + + + + + + + + + + + +

    pads :

    the collectspads to pop

    data :

    the data to use

    Returns :

    The buffer in data or NULL if no buffer was +queued. You should unref the buffer after usage. [transfer full] +
    +

    Since 0.10.36

    +
    +
    +
    +

    gst_collect_pads2_read_buffer ()

    +
    GstBuffer *         gst_collect_pads2_read_buffer       (GstCollectPads2 *pads,
    +                                                         GstCollectData2 *data,
    +                                                         guint size);
    +

    +Get a subbuffer of size bytes from the given pad data. +

    +

    +This function should be called with pads STREAM_LOCK held, such as in the +callback. +

    +

    +MT safe. +

    +
    ++ + + + + + + + + + + + + + + + + + +

    pads :

    the collectspads to query

    data :

    the data to use

    size :

    the number of bytes to read

    Returns :

    A sub buffer. The size of the buffer can be less that requested. +A return of NULL signals that the pad is end-of-stream. +Unref the buffer after use. [transfer full] +
    +

    Since 0.10.36

    +
    +
    +
    +

    gst_collect_pads2_take_buffer ()

    +
    GstBuffer *         gst_collect_pads2_take_buffer       (GstCollectPads2 *pads,
    +                                                         GstCollectData2 *data,
    +                                                         guint size);
    +

    +Get a subbuffer of size bytes from the given pad data. Flushes the amount +of read bytes. +

    +

    +This function should be called with pads STREAM_LOCK held, such as in the +callback. +

    +

    +MT safe. +

    +
    ++ + + + + + + + + + + + + + + + + + +

    pads :

    the collectspads to query

    data :

    the data to use

    size :

    the number of bytes to read

    Returns :

    A sub buffer. The size of the buffer can be less that requested. +A return of NULL signals that the pad is end-of-stream. +Unref the buffer after use.
    +

    Since 0.10.36

    +
    +
    +
    +

    gst_collect_pads2_set_buffer_function ()

    +
    void                gst_collect_pads2_set_buffer_function
    +                                                        (GstCollectPads2 *pads,
    +                                                         GstCollectPads2BufferFunction func,
    +                                                         gpointer user_data);
    +

    +Set the callback function and user data that will be called with +the oldest buffer when all pads have been collected. +

    +

    +MT safe. +

    +
    ++ + + + + + + + + + + + + + +

    pads :

    the collectpads to use

    func :

    the function to set

    user_data :

    user data passed to the function. [closure] +
    +

    Since 0.10.36

    +
    +
    +
    +

    gst_collect_pads2_set_compare_function ()

    +
    void                gst_collect_pads2_set_compare_function
    +                                                        (GstCollectPads2 *pads,
    +                                                         GstCollectPads2CompareFunction func,
    +                                                         gpointer user_data);
    +

    +Set the timestamp comparison function. +

    +

    +MT safe. +

    +
    ++ + + + + + + + + + + + + + +

    pads :

    the pads to use

    func :

    the function to set

    user_data :

    user data passed to the function. [closure] +
    +

    Since 0.10.36

    +
    +
    +
    +

    gst_collect_pads2_set_event_function ()

    +
    void                gst_collect_pads2_set_event_function
    +                                                        (GstCollectPads2 *pads,
    +                                                         GstCollectPads2EventFunction func,
    +                                                         gpointer user_data);
    +

    +Set the event callback function and user data that will be called after +collectpads has processed and event originating from one of the collected +pads. If the event being processed is a serialized one, this callback is +called with pads STREAM_LOCK held, otherwise not. As this lock should be +held when calling a number of CollectPads functions, it should be acquired +if so (unusually) needed. +

    +

    +MT safe. +

    +
    ++ + + + + + + + + + + + + + +

    pads :

    the collectspads to use

    func :

    the function to set

    user_data :

    user data passed to the function
    +

    Since 0.10.36

    +
    +
    +
    +

    gst_collect_pads2_set_clip_function ()

    +
    void                gst_collect_pads2_set_clip_function (GstCollectPads2 *pads,
    +                                                         GstCollectPads2ClipFunction clipfunc,
    +                                                         gpointer user_data);
    +

    +Install a clipping function that is called right after a buffer is received +on a pad managed by pads. See GstCollectPad2ClipFunction for more info. +

    +
    ++ + + + + + + + + + + + + + +

    pads :

    the collectspads to use

    clipfunc :

    clip function to install

    user_data :

    user data to pass to clip_func +
    +

    Since 0.10.36

    +
    +
    +
    +

    gst_collect_pads2_set_flushing ()

    +
    void                gst_collect_pads2_set_flushing      (GstCollectPads2 *pads,
    +                                                         gboolean flushing);
    +

    +Change the flushing state of all the pads in the collection. No pad +is able to accept anymore data when flushing is TRUE. Calling this +function with flushing FALSE makes pads accept data again. +Caller must ensure that downstream streaming (thread) is not blocked, +e.g. by sending a FLUSH_START downstream. +

    +

    +MT safe. +

    +
    ++ + + + + + + + + + +

    pads :

    the collectspads to use

    flushing :

    desired state of the pads
    +

    Since 0.10.36

    +
    +
    +
    +

    gst_collect_pads2_set_function ()

    +
    void                gst_collect_pads2_set_function      (GstCollectPads2 *pads,
    +                                                         GstCollectPads2Function func,
    +                                                         gpointer user_data);
    +

    +CollectPads provides a default collection algorithm that will determine +the oldest buffer available on all of its pads, and then delegate +to a configured callback. +However, if circumstances are more complicated and/or more control +is desired, this sets a callback that will be invoked instead when +all the pads added to the collection have buffers queued. +Evidently, this callback is not compatible with +gst_collect_pads2_set_buffer_function() callback. +If this callback is set, the former will be unset. +

    +

    +MT safe. +

    +
    ++ + + + + + + + + + + + + + +

    pads :

    the collectspads to use

    func :

    the function to set

    user_data :

    user data passed to the function
    +

    Since 0.10.36

    +
    +
    +
    +

    gst_collect_pads2_set_waiting ()

    +
    void                gst_collect_pads2_set_waiting       (GstCollectPads2 *pads,
    +                                                         GstCollectData2 *data,
    +                                                         gboolean waiting);
    +

    +Sets a pad to waiting or non-waiting mode, if at least this pad +has not been created with locked waiting state, +in which case nothing happens. +

    +

    +This function should be called with pads STREAM_LOCK held, such as +in the callback. +

    +

    +MT safe. +

    +
    ++ + + + + + + + + + + + + + +

    pads :

    the collectspads

    data :

    the data to use

    waiting :

    boolean indicating whether this pad should operate +in waiting or non-waiting mode
    +

    Since 0.10.36

    +
    +
    +
    + + + \ No newline at end of file diff --git a/docs/libs/html/GstControlSource.html b/docs/libs/html/GstControlSource.html deleted file mode 100644 index cf258ee..0000000 --- a/docs/libs/html/GstControlSource.html +++ /dev/null @@ -1,407 +0,0 @@ - - - - -GstControlSource - - - - - - - - - - - - - - - - - - - -
    -
    -
    - - -
    -

    GstControlSource

    -

    GstControlSource — base class for control source sources

    -
    -
    -

    Synopsis

    -
    -#include <libs/controller/gstcontrolsource.h>
    -
    -struct              GstControlSource;
    -struct              GstControlSourceClass;
    -gboolean            (*GstControlSourceBind)             (GstControlSource *self,
    -                                                         GParamSpec *pspec);
    -gboolean            (*GstControlSourceGetValue)         (GstControlSource *self,
    -                                                         GstClockTime timestamp,
    -                                                         GValue *value);
    -gboolean            (*GstControlSourceGetValueArray)    (GstControlSource *self,
    -                                                         GstClockTime timestamp,
    -                                                         GstValueArray *value_array);
    -struct              GstTimedValue;
    -struct              GstValueArray;
    -gboolean            gst_control_source_bind             (GstControlSource *self,
    -                                                         GParamSpec *pspec);
    -gboolean            gst_control_source_get_value        (GstControlSource *self,
    -                                                         GstClockTime timestamp,
    -                                                         GValue *value);
    -gboolean            gst_control_source_get_value_array  (GstControlSource *self,
    -                                                         GstClockTime timestamp,
    -                                                         GstValueArray *value_array);
    -
    -
    -
    -

    Object Hierarchy

    -
    -  GObject
    -   +----GstControlSource
    -         +----GstInterpolationControlSource
    -         +----GstLFOControlSource
    -
    -
    -
    -

    Description

    -

    -The GstControlSource is a base class for control value sources that could -be used by GstController to get timestamp-value pairs. -

    -

    -A GstControlSource is used by first getting an instance, binding it to a -GParamSpec (for example by using gst_controller_set_control_source()) and -then by having it used by the GstController or calling -gst_control_source_get_value() or gst_control_source_get_value_array(). -

    -

    -For implementing a new GstControlSource one has to implement a -GstControlSourceBind method, which will depending on the GParamSpec set up -the control source for use and sets the GstControlSourceGetValue and -GstControlSourceGetValueArray functions. These are then used by -gst_control_source_get_value() or gst_control_source_get_value_array() -to get values for specific timestamps. -

    -
    -
    -

    Details

    -
    -

    struct GstControlSource

    -
    struct GstControlSource {
    -  GstControlSourceGetValue get_value;             /* Returns the value for a property at a given timestamp */
    -  GstControlSourceGetValueArray get_value_array;  /* Returns values for a property in a given timespan */
    -};
    -
    -

    -The instance structure of GstControlSource. -

    -
    -- - - - - - - - - - -

    GstControlSourceGetValue get_value;

    Function for returning a value for a given timestamp

    GstControlSourceGetValueArray get_value_array;

    Function for returning a GstValueArray for a given timestamp
    -
    -
    -
    -

    struct GstControlSourceClass

    -
    struct GstControlSourceClass {
    -  GObjectClass parent_class;
    -  
    -  GstControlSourceBind bind;  /* Binds the GstControlSource to a specific GParamSpec */
    -};
    -
    -

    -The class structure of GstControlSource. -

    -
    -- - - - - - - - - - -

    GObjectClass parent_class;

    Parent class

    GstControlSourceBind bind;

    Class method for binding the GstControlSource to a specific GParamSpec
    -
    -
    -
    -

    GstControlSourceBind ()

    -
    gboolean            (*GstControlSourceBind)             (GstControlSource *self,
    -                                                         GParamSpec *pspec);
    -

    -Function for binding a GstControlSource to a GParamSpec. -

    -
    -- - - - - - - - - - - - - - -

    self :

    the GstControlSource instance

    pspec :

    -GParamSpec that should be bound to

    Returns :

    -TRUE if the property could be bound to the GstControlSource, FALSE otherwise.
    -
    -
    -
    -

    GstControlSourceGetValue ()

    -
    gboolean            (*GstControlSourceGetValue)         (GstControlSource *self,
    -                                                         GstClockTime timestamp,
    -                                                         GValue *value);
    -

    -Function for returning a value for a given timestamp. -

    -
    -- - - - - - - - - - - - - - - - - - -

    self :

    the GstControlSource instance

    timestamp :

    timestamp for which a value should be calculated

    value :

    a GValue which will be set to the result. It must be initialized to the correct type.

    Returns :

    -TRUE if the value was successfully calculated.
    -
    -
    -
    -

    GstControlSourceGetValueArray ()

    -
    gboolean            (*GstControlSourceGetValueArray)    (GstControlSource *self,
    -                                                         GstClockTime timestamp,
    -                                                         GstValueArray *value_array);
    -

    -Function for returning a GstValueArray for a given timestamp. -

    -
    -- - - - - - - - - - - - - - - - - - -

    self :

    the GstControlSource instance

    timestamp :

    timestamp for which a value should be calculated

    value_array :

    array to put control-values in

    Returns :

    -TRUE if the values were successfully calculated.
    -
    -
    -
    -

    struct GstTimedValue

    -
    struct GstTimedValue {
    -  GstClockTime timestamp;
    -  GValue value;
    -};
    -
    -

    -Structure for saving a timestamp and a value. -

    -
    -- - - - - - - - - - -

    GstClockTime timestamp;

    timestamp of the value change

    GValue value;

    the corresponding value
    -
    -
    -
    -

    struct GstValueArray

    -
    struct GstValueArray {
    -  const gchar *property_name;
    -  gint nbsamples;
    -  GstClockTime sample_interval;
    -  gpointer *values;
    -};
    -
    -

    -Structure to receive multiple values at once. -

    -
    -- - - - - - - - - - - - - - - - - - -

    const gchar *property_name;

    the name of the property this array belongs to

    gint nbsamples;

    number of samples requested

    GstClockTime sample_interval;

    interval between each sample

    gpointer *values;

    pointer to the array
    -
    -
    -
    -

    gst_control_source_bind ()

    -
    gboolean            gst_control_source_bind             (GstControlSource *self,
    -                                                         GParamSpec *pspec);
    -

    -Binds a GstControlSource to a specific property. This must be called only once for a -GstControlSource. -

    -
    -- - - - - - - - - - - - - - -

    self :

    the GstControlSource object

    pspec :

    -GParamSpec for the property for which this GstControlSource should generate values.

    Returns :

    -TRUE if the GstControlSource was bound correctly, FALSE otherwise.
    -
    -
    -
    -

    gst_control_source_get_value ()

    -
    gboolean            gst_control_source_get_value        (GstControlSource *self,
    -                                                         GstClockTime timestamp,
    -                                                         GValue *value);
    -

    -Gets the value for this GstControlSource at a given timestamp. -

    -
    -- - - - - - - - - - - - - - - - - - -

    self :

    the GstControlSource object

    timestamp :

    the time for which the value should be returned

    value :

    the value

    Returns :

    FALSE if the value couldn't be returned, TRUE otherwise.
    -
    -
    -
    -

    gst_control_source_get_value_array ()

    -
    gboolean            gst_control_source_get_value_array  (GstControlSource *self,
    -                                                         GstClockTime timestamp,
    -                                                         GstValueArray *value_array);
    -

    -Gets an array of values for one element property. -

    -

    -All fields of value_array must be filled correctly. Especially the -value_array->values array must be big enough to keep the requested amount -of values. -

    -

    -The type of the values in the array is the same as the property's type. -

    -
    -- - - - - - - - - - - - - - - - - - -

    self :

    the GstControlSource object

    timestamp :

    the time that should be processed

    value_array :

    array to put control-values in

    Returns :

    -TRUE if the given array could be filled, FALSE otherwise
    -
    -
    -
    - - - \ No newline at end of file diff --git a/docs/libs/html/GstController.html b/docs/libs/html/GstController.html deleted file mode 100644 index 94ef42b..0000000 --- a/docs/libs/html/GstController.html +++ /dev/null @@ -1,681 +0,0 @@ - - - - -GstController - - - - - - - - - - - - - - - - - - - -
    -
    -
    - - -
    -

    GstController

    -

    GstController — dynamic parameter control subsystem

    -
    -
    -

    Synopsis

    -
    -#include <gst/controller/gstcontroller.h>
    -
    -struct              GstController;
    -gboolean            gst_controller_init                 (int *argc,
    -                                                         char ***argv);
    -GstController *     gst_controller_new                  (GObject *object,
    -                                                         ...);
    -GstController *     gst_controller_new_list             (GObject *object,
    -                                                         GList *list);
    -GstController *     gst_controller_new_valist           (GObject *object,
    -                                                         va_list var_args);
    -gboolean            gst_controller_remove_properties    (GstController *self,
    -                                                         ...);
    -gboolean            gst_controller_remove_properties_list
    -                                                        (GstController *self,
    -                                                         GList *list);
    -gboolean            gst_controller_remove_properties_valist
    -                                                        (GstController *self,
    -                                                         va_list var_args);
    -void                gst_controller_set_disabled         (GstController *self,
    -                                                         gboolean disabled);
    -void                gst_controller_set_property_disabled
    -                                                        (GstController *self,
    -                                                         const gchar *property_name,
    -                                                         gboolean disabled);
    -GstClockTime        gst_controller_suggest_next_sync    (GstController *self);
    -gboolean            gst_controller_sync_values          (GstController *self,
    -                                                         GstClockTime timestamp);
    -GstControlSource *  gst_controller_get_control_source   (GstController *self,
    -                                                         const gchar *property_name);
    -gboolean            gst_controller_set_control_source   (GstController *self,
    -                                                         const gchar *property_name,
    -                                                         GstControlSource *csource);
    -GValue *            gst_controller_get                  (GstController *self,
    -                                                         const gchar *property_name,
    -                                                         GstClockTime timestamp);
    -gboolean            gst_controller_get_value_arrays     (GstController *self,
    -                                                         GstClockTime timestamp,
    -                                                         GSList *value_arrays);
    -gboolean            gst_controller_get_value_array      (GstController *self,
    -                                                         GstClockTime timestamp,
    -                                                         GstValueArray *value_array);
    -
    -
    -
    -

    Object Hierarchy

    -
    -  GObject
    -   +----GstController
    -
    -
    -
    -

    Properties

    -
    -  "control-rate"             guint64               : Read / Write
    -
    -
    -
    -

    Description

    -

    -The controller subsystem offers a lightweight way to adjust gobject -properties over stream-time. It works by using time-stamped value pairs that -are queued for element-properties. At run-time the elements continously pull -values changes for the current stream-time. -

    -

    -What needs to be changed in a GstElement? -Very little - it is just two steps to make a plugin controllable! -

    -
      -
    1. - mark gobject-properties paramspecs that make sense to be controlled, - by GST_PARAM_CONTROLLABLE. -

    2. -
    3. - when processing data (get, chain, loop function) at the beginning call - gst_object_sync_values(element,timestamp). - This will made the controller to update all gobject properties that are under - control with the current values based on timestamp. -

    4. -
    -

    -

    -

    -What needs to be done in applications? -Again its not a lot to change. -

    -
      -
    1. - first put some properties under control, by calling - controller = gst_object_control_properties (object, "prop1", "prop2",...); -

    2. -
    3. - Get a GstControlSource for the property and set it up. - csource = gst_interpolation_control_source_new(); - gst_interpolation_control_source_set_interpolation_mode(csource, mode); - gst_interpolation_control_source_set (csource,0 * GST_SECOND, value1); - gst_interpolation_control_source_set (csource,1 * GST_SECOND, value2); -

    4. -
    5. - Set the GstControlSource in the controller. - gst_controller_set_control_source (controller, "prop1", csource); -

    6. -
    7. - start your pipeline -

    8. -
    -

    -

    -
    -
    -

    Details

    -
    -

    struct GstController

    -
    struct GstController;
    -

    -The instance structure of GstController -

    -
    -
    -
    -

    gst_controller_init ()

    -
    gboolean            gst_controller_init                 (int *argc,
    -                                                         char ***argv);
    -

    -Initializes the use of the controller library. Suggested to be called right -after gst_init(). -

    -
    -- - - - - - - - - - - - - - -

    argc :

    pointer to the commandline argument count

    argv :

    pointer to the commandline argument values

    Returns :

    the TRUE for success.
    -
    -
    -
    -

    gst_controller_new ()

    -
    GstController *     gst_controller_new                  (GObject *object,
    -                                                         ...);
    -

    -Creates a new GstController for the given object's properties -

    -
    -- - - - - - - - - - - - - - -

    object :

    the object of which some properties should be controlled

    ... :

    -NULL terminated list of property names that should be controlled

    Returns :

    the new controller.
    -
    -
    -
    -

    gst_controller_new_list ()

    -
    GstController *     gst_controller_new_list             (GObject *object,
    -                                                         GList *list);
    -

    -Creates a new GstController for the given object's properties -

    -
    -- - - - - - - - - - - - - - -

    object :

    the object of which some properties should be controlled

    list :

    list of property names that should be controlled

    Returns :

    the new controller.
    -
    -
    -
    -

    gst_controller_new_valist ()

    -
    GstController *     gst_controller_new_valist           (GObject *object,
    -                                                         va_list var_args);
    -

    -Creates a new GstController for the given object's properties -

    -
    -- - - - - - - - - - - - - - -

    object :

    the object of which some properties should be controlled

    var_args :

    -NULL terminated list of property names that should be controlled

    Returns :

    the new controller.
    -
    -
    -
    -

    gst_controller_remove_properties ()

    -
    gboolean            gst_controller_remove_properties    (GstController *self,
    -                                                         ...);
    -

    -Removes the given object properties from the controller -

    -
    -- - - - - - - - - - - - - - -

    self :

    the controller object from which some properties should be removed

    ... :

    -NULL terminated list of property names that should be removed

    Returns :

    -FALSE if one of the given property isn't handled by the controller, TRUE otherwise
    -
    -
    -
    -

    gst_controller_remove_properties_list ()

    -
    gboolean            gst_controller_remove_properties_list
    -                                                        (GstController *self,
    -                                                         GList *list);
    -

    -Removes the given object properties from the controller -

    -
    -- - - - - - - - - - - - - - -

    self :

    the controller object from which some properties should be removed

    list :

    -GList of property names that should be removed

    Returns :

    -FALSE if one of the given property isn't handled by the controller, TRUE otherwise
    -
    -
    -
    -

    gst_controller_remove_properties_valist ()

    -
    gboolean            gst_controller_remove_properties_valist
    -                                                        (GstController *self,
    -                                                         va_list var_args);
    -

    -Removes the given object properties from the controller -

    -
    -- - - - - - - - - - - - - - -

    self :

    the controller object from which some properties should be removed

    var_args :

    -NULL terminated list of property names that should be removed

    Returns :

    -FALSE if one of the given property isn't handled by the controller, TRUE otherwise
    -
    -
    -
    -

    gst_controller_set_disabled ()

    -
    void                gst_controller_set_disabled         (GstController *self,
    -                                                         gboolean disabled);
    -

    -This function is used to disable all properties of the GstController -for some time, i.e. gst_controller_sync_values() will do nothing. -

    -
    -- - - - - - - - - - -

    self :

    the GstController which should be disabled

    disabled :

    boolean that specifies whether to disable the controller -or not.
    -

    Since 0.10.14

    -
    -
    -
    -

    gst_controller_set_property_disabled ()

    -
    void                gst_controller_set_property_disabled
    -                                                        (GstController *self,
    -                                                         const gchar *property_name,
    -                                                         gboolean disabled);
    -

    -This function is used to disable the GstController on a property for -some time, i.e. gst_controller_sync_values() will do nothing for the -property. -

    -
    -- - - - - - - - - - - - - - -

    self :

    the GstController which should be disabled

    property_name :

    property to disable

    disabled :

    boolean that specifies whether to disable the controller -or not.
    -

    Since 0.10.14

    -
    -
    -
    -

    gst_controller_suggest_next_sync ()

    -
    GstClockTime        gst_controller_suggest_next_sync    (GstController *self);
    -

    -Returns a suggestion for timestamps where buffers should be split -to get best controller results. -

    -
    -- - - - - - - - - - -

    self :

    the controller that handles the values

    Returns :

    Returns the suggested timestamp or GST_CLOCK_TIME_NONE -if no control-rate was set.
    -

    Since 0.10.13

    -
    -
    -
    -

    gst_controller_sync_values ()

    -
    gboolean            gst_controller_sync_values          (GstController *self,
    -                                                         GstClockTime timestamp);
    -

    -Sets the properties of the element, according to the controller that (maybe) -handles them and for the given timestamp. -

    -

    -If this function fails, it is most likely the application developers fault. -Most probably the control sources are not setup correctly. -

    -
    -- - - - - - - - - - - - - - -

    self :

    the controller that handles the values

    timestamp :

    the time that should be processed

    Returns :

    -TRUE if the controller values could be applied to the object -properties, FALSE otherwise
    -
    -
    -
    -

    gst_controller_get_control_source ()

    -
    GstControlSource *  gst_controller_get_control_source   (GstController *self,
    -                                                         const gchar *property_name);
    -

    -Gets the corresponding GstControlSource for the property. This should be unreferenced -again after use. -

    -
    -- - - - - - - - - - - - - - -

    self :

    the controller object

    property_name :

    name of the property for which the GstControlSource should be get

    Returns :

    the GstControlSource for property_name or NULL if the property is not -controlled by this controller or no GstControlSource was assigned yet.
    -

    Since 0.10.14

    -
    -
    -
    -

    gst_controller_set_control_source ()

    -
    gboolean            gst_controller_set_control_source   (GstController *self,
    -                                                         const gchar *property_name,
    -                                                         GstControlSource *csource);
    -

    -Sets the GstControlSource for property_name. If there already was a GstControlSource -for this property it will be unreferenced. -

    -
    -- - - - - - - - - - - - - - - - - - -

    self :

    the controller object

    property_name :

    name of the property for which the GstControlSource should be set

    csource :

    the GstControlSource that should be used for the property

    Returns :

    -FALSE if the given property isn't handled by the controller or the new GstControlSource -couldn't be bound to the property, TRUE if everything worked as expected.
    -

    Since 0.10.14

    -
    -
    -
    -

    gst_controller_get ()

    -
    GValue *            gst_controller_get                  (GstController *self,
    -                                                         const gchar *property_name,
    -                                                         GstClockTime timestamp);
    -

    -Gets the value for the given controller-handled property at the requested -time. -

    -
    -- - - - - - - - - - - - - - - - - - -

    self :

    the controller object which handles the properties

    property_name :

    the name of the property to get

    timestamp :

    the time the control-change should be read from

    Returns :

    the GValue of the property at the given time, or NULL if the -property isn't handled by the controller
    -
    -
    -
    -

    gst_controller_get_value_arrays ()

    -
    gboolean            gst_controller_get_value_arrays     (GstController *self,
    -                                                         GstClockTime timestamp,
    -                                                         GSList *value_arrays);
    -

    -Function to be able to get an array of values for one or more given element -properties. -

    -

    -All fields of the GstValueArray in the list must be filled correctly. -Especially the GstValueArray->values arrays must be big enough to keep -the requested amount of values. -

    -

    -The types of the values in the array are the same as the property's type. -

    -

    -

    -
    -

    Note

    -

    This doesn't modify the controlled GObject properties!

    -
    -

    -

    -
    -- - - - - - - - - - - - - - - - - - -

    self :

    the controller that handles the values

    timestamp :

    the time that should be processed

    value_arrays :

    list to return the control-values in

    Returns :

    -TRUE if the given array(s) could be filled, FALSE otherwise
    -
    -
    -
    -

    gst_controller_get_value_array ()

    -
    gboolean            gst_controller_get_value_array      (GstController *self,
    -                                                         GstClockTime timestamp,
    -                                                         GstValueArray *value_array);
    -

    -Function to be able to get an array of values for one element property. -

    -

    -All fields of value_array must be filled correctly. Especially the -value_array->values array must be big enough to keep the requested amount -of values (as indicated by the nbsamples field). -

    -

    -The type of the values in the array is the same as the property's type. -

    -

    -

    -
    -

    Note

    -

    This doesn't modify the controlled GObject property!

    -
    -

    -

    -
    -- - - - - - - - - - - - - - - - - - -

    self :

    the controller that handles the values

    timestamp :

    the time that should be processed

    value_array :

    array to put control-values in

    Returns :

    -TRUE if the given array could be filled, FALSE otherwise
    -
    -
    -
    -

    Property Details

    -
    -

    The "control-rate" property

    -
      "control-rate"             guint64               : Read / Write
    -

    Controlled properties will be updated at least every control-rate nanoseconds.

    -

    Allowed values: [1,4294967295]

    -

    Default value: 100000000

    -
    -
    -
    - - - \ No newline at end of file diff --git a/docs/libs/html/GstInterpolationControlSource.html b/docs/libs/html/GstInterpolationControlSource.html index d5b6a6e..b8244c9 100644 --- a/docs/libs/html/GstInterpolationControlSource.html +++ b/docs/libs/html/GstInterpolationControlSource.html @@ -3,10 +3,10 @@ GstInterpolationControlSource - - + + - + @@ -14,10 +14,10 @@ - + - +

    Object Hierarchy

       GObject
    -   +----GstControlSource
    -         +----GstInterpolationControlSource
    +   +----GInitiallyUnowned
    +         +----GstObject
    +               +----GstControlSource
    +                     +----GstTimedValueControlSource
    +                           +----GstInterpolationControlSource
    +
    +
    +
    +

    Properties

    +
    +  "mode"                     GstInterpolationMode  : Read / Write
     

    Description

    -GstInterpolationControlSource is a GstControlSource, that interpolates values between user-given +GstInterpolationControlSource is a GstControlSource, that interpolates values between user-given control points. It supports several interpolation modes and property types.

    To use GstInterpolationControlSource get a new instance by calling -gst_interpolation_control_source_new(), bind it to a GParamSpec, select a interpolation mode with -gst_interpolation_control_source_set_interpolation_mode() and set some control points by calling -gst_interpolation_control_source_set(). +gst_interpolation_control_source_new(), bind it to a GParamSpec and set some +control points by calling gst_timed_value_control_source_set().

    All functions are MT-safe. @@ -97,20 +88,17 @@ All functions are MT-safe.

    struct GstInterpolationControlSource

    struct GstInterpolationControlSource;

    -The instance structure of GstControlSource. +The instance structure of GstControlSource.


    -

    enum GstInterpolateMode

    +

    enum GstInterpolationMode

    typedef enum {
    -  GST_INTERPOLATE_NONE,
    -  GST_INTERPOLATE_TRIGGER,
    -  GST_INTERPOLATE_LINEAR,
    -  GST_INTERPOLATE_QUADRATIC,
    -  GST_INTERPOLATE_CUBIC,
    -  GST_INTERPOLATE_USER
    -} GstInterpolateMode;
    +  GST_INTERPOLATION_MODE_NONE,
    +  GST_INTERPOLATION_MODE_LINEAR,
    +  GST_INTERPOLATION_MODE_CUBIC
    +} GstInterpolationMode;
     

    The various interpolation modes available. @@ -119,43 +107,27 @@ The various interpolation modes available. -

    GST_INTERPOLATE_NONE

    +

    GST_INTERPOLATION_MODE_NONE

    steps-like interpolation, default -

    GST_INTERPOLATE_TRIGGER

    -returns the default value of the property, -except for times with specific values - - - -

    GST_INTERPOLATE_LINEAR

    +

    GST_INTERPOLATION_MODE_LINEAR

    linear interpolation -

    GST_INTERPOLATE_QUADRATIC

    -square interpolation (deprecated, maps to cubic) - - - -

    GST_INTERPOLATE_CUBIC

    +

    GST_INTERPOLATION_MODE_CUBIC

    cubic interpolation - -

    GST_INTERPOLATE_USER

    -user-provided interpolation (not yet available) - -

    gst_interpolation_control_source_new ()

    -
    GstInterpolationControlSource * gst_interpolation_control_source_new
    +
    GstControlSource *  gst_interpolation_control_source_new
                                                             (void);

    This returns a new, unbound GstInterpolationControlSource. @@ -164,194 +136,19 @@ This returns a new, unbound

    Returns :

    -a new, unbound GstInterpolationControlSource. +a new, unbound GstInterpolationControlSource. [transfer full] +
    -
    -
    -

    gst_interpolation_control_source_set ()

    -
    gboolean            gst_interpolation_control_source_set
    -                                                        (GstInterpolationControlSource *self,
    -                                                         GstClockTime timestamp,
    -                                                         const GValue *value);
    -

    -Set the value of given controller-handled property at a certain time. -

    -
    -- - - - - - - - - - - - - - - - - - -

    self :

    the GstInterpolationControlSource object

    timestamp :

    the time the control-change is scheduled for

    value :

    the control-value

    Returns :

    FALSE if the values couldn't be set, TRUE otherwise.
    -
    -
    -
    -

    gst_interpolation_control_source_set_from_list ()

    -
    gboolean            gst_interpolation_control_source_set_from_list
    -                                                        (GstInterpolationControlSource *self,
    -                                                         const GSList *timedvalues);
    -

    -Sets multiple timed values at once. -

    -
    -- - - - - - - - - - - - - - -

    self :

    the GstInterpolationControlSource object

    timedvalues :

    a list with GstTimedValue items

    Returns :

    FALSE if the values couldn't be set, TRUE otherwise.
    -
    -
    -
    -

    gst_interpolation_control_source_set_interpolation_mode ()

    -
    gboolean            gst_interpolation_control_source_set_interpolation_mode
    -                                                        (GstInterpolationControlSource *self,
    -                                                         GstInterpolateMode mode);
    -

    -Sets the given interpolation mode. -

    -

    -

    -
    -

    Note

    -

    User interpolation is not yet available and quadratic interpolation -is deprecated and maps to cubic interpolation.

    -
    -

    -

    -
    -- - - - - - - - - - - - - - -

    self :

    the GstInterpolationControlSource object

    mode :

    interpolation mode

    Returns :

    -TRUE if the interpolation mode could be set, FALSE otherwise
    -
    -
    -
    -

    gst_interpolation_control_source_get_all ()

    -
    GList *             gst_interpolation_control_source_get_all
    -                                                        (GstInterpolationControlSource *self);
    -

    -Returns a read-only copy of the list of GstTimedValue for the given property. -Free the list after done with it. -

    -
    -- - - - - - - - - - -

    self :

    the GstInterpolationControlSource to get the list from

    Returns :

    a copy of the list, or NULL if the property isn't handled by the controller
    -
    -
    -
    -

    gst_interpolation_control_source_unset ()

    -
    gboolean            gst_interpolation_control_source_unset
    -                                                        (GstInterpolationControlSource *self,
    -                                                         GstClockTime timestamp);
    -

    -Used to remove the value of given controller-handled property at a certain -time. -

    -
    -- - - - - - - - - - - - - - -

    self :

    the GstInterpolationControlSource object

    timestamp :

    the time the control-change should be removed from

    Returns :

    FALSE if the value couldn't be unset (i.e. not found, TRUE otherwise.
    -
    -
    -
    -

    gst_interpolation_control_source_unset_all ()

    -
    void                gst_interpolation_control_source_unset_all
    -                                                        (GstInterpolationControlSource *self);
    -

    -Used to remove all time-stamped values of given controller-handled property -

    -
    -- - - - -

    self :

    the GstInterpolationControlSource object
    -
    +
    +

    Property Details

    -

    gst_interpolation_control_source_get_count ()

    -
    gint                gst_interpolation_control_source_get_count
    -                                                        (GstInterpolationControlSource *self);
    -

    -Returns the number of control points that are set. -

    -
    -- - - - - - - - - - -

    self :

    the GstInterpolationControlSource to get the number of values from

    Returns :

    the number of control points that are set.
    +

    The "mode" property

    +
      "mode"                     GstInterpolationMode  : Read / Write
    +

    Interpolation mode.

    +

    Default value: GST_INTERPOLATION_MODE_NONE

    diff --git a/docs/libs/html/GstLFOControlSource.html b/docs/libs/html/GstLFOControlSource.html index c4c963d..bf44a2d 100644 --- a/docs/libs/html/GstLFOControlSource.html +++ b/docs/libs/html/GstLFOControlSource.html @@ -3,11 +3,11 @@ GstLFOControlSource - - + + - + @@ -17,8 +17,8 @@ Prev Up Home -GStreamer 0.11 Library Reference Manual -Next +GStreamer 1.0 Library Reference Manual +Next Top @@ -46,31 +46,33 @@ struct GstLFOControlSource; enum GstLFOWaveform; -GstLFOControlSource * gst_lfo_control_source_new (void); +GstControlSource * gst_lfo_control_source_new (void);

    Object Hierarchy

       GObject
    -   +----GstControlSource
    -         +----GstLFOControlSource
    +   +----GInitiallyUnowned
    +         +----GstObject
    +               +----GstControlSource
    +                     +----GstLFOControlSource
     

    Properties

    -  "amplitude"                GValue*               : Read / Write
    +  "amplitude"                gdouble               : Read / Write
       "frequency"                gdouble               : Read / Write
    -  "offset"                   GValue*               : Read / Write
    -  "timeshift"                guint64               : Read / Write
    +  "offset"                   gdouble               : Read / Write
    +  "timeshift"                guint64               : Read / Write
       "waveform"                 GstLFOWaveform        : Read / Write
     

    Description

    -GstLFOControlSource is a GstControlSource, that provides several periodic waveforms +GstLFOControlSource is a GstControlSource, that provides several periodic waveforms as control values. It supports all fundamental, numeric GValue types as property.

    @@ -88,7 +90,7 @@ All functions are MT-safe.

    struct GstLFOControlSource

    struct GstLFOControlSource;

    -The instance structure of GstControlSource. +The instance structure of GstControlSource.


    @@ -139,7 +141,7 @@ The various waveform modes available.

    gst_lfo_control_source_new ()

    -
    GstLFOControlSource * gst_lfo_control_source_new        (void);
    +
    GstControlSource *  gst_lfo_control_source_new          (void);

    This returns a new, unbound GstLFOControlSource.

    @@ -147,7 +149,8 @@ This returns a new, unbound

    Returns :

    -a new, unbound
    GstLFOControlSource. +a new, unbound GstLFOControlSource. [transfer full] +
    @@ -156,14 +159,12 @@ This returns a new, unbound

    Property Details

    The "amplitude" property

    -
      "amplitude"                GValue*               : Read / Write
    +
      "amplitude"                gdouble               : Read / Write

    Specifies the amplitude for the waveform of this GstLFOControlSource.

    -

    -It should be given as a GValue with a type that can be transformed -to the type of the bound property. -

    +

    Allowed values: [0,1]

    +

    Default value: 1


    @@ -180,19 +181,17 @@ so that the period is longer than one nanosecond.

    The "offset" property

    -
      "offset"                   GValue*               : Read / Write
    +
      "offset"                   gdouble               : Read / Write

    -Specifies the offset for the waveform of this GstLFOControlSource. -

    -

    -It should be given as a GValue with a type that can be transformed -to the type of the bound property. +Specifies the value offset for the waveform of this GstLFOControlSource.

    +

    Allowed values: [0,1]

    +

    Default value: 1


    The "timeshift" property

    -
      "timeshift"                guint64               : Read / Write
    +
      "timeshift"                guint64               : Read / Write

    Specifies the timeshift to the right that should be used for the waveform of this GstLFOControlSource in nanoseconds. diff --git a/docs/libs/html/GstNetClientClock.html b/docs/libs/html/GstNetClientClock.html index 891757a..0055651 100644 --- a/docs/libs/html/GstNetClientClock.html +++ b/docs/libs/html/GstNetClientClock.html @@ -3,8 +3,8 @@ GstNetClientClock - - + + @@ -17,7 +17,7 @@ Prev Up Home -GStreamer 0.11 Library Reference Manual +GStreamer 1.0 Library Reference Manual Next @@ -46,10 +46,10 @@ #include <gst/net/gstnet.h> struct GstNetClientClock; -GstClock * gst_net_client_clock_new (gchar *name, +GstClock * gst_net_client_clock_new (gchar *name, const gchar *remote_address, gint remote_port, - GstClockTime base_time); + GstClockTime base_time);

    @@ -57,9 +57,9 @@ struct GObject +----GInitiallyUnowned - +----GstObject - +----GstClock - +----GstSystemClock + +----GstObject + +----GstClock + +----GstSystemClock +----GstNetClientClock
    @@ -73,7 +73,7 @@ struct

    Description

    -This object implements a custom GstClock that synchronizes its time +This object implements a custom GstClock that synchronizes its time to a remote time provider such as GstNetTimeProvider.

    @@ -86,12 +86,12 @@ This clock will poll the time provider and will update its calibration parameters based on the local and remote observations.

    -Various parameters of the clock can be configured with the parent GstClock +Various parameters of the clock can be configured with the parent GstClock "timeout", "window-size" and "window-threshold" object properties.

    -A GstNetClientClock is typically set on a GstPipeline with -gst_pipeline_use_clock(). +A GstNetClientClock is typically set on a GstPipeline with +gst_pipeline_use_clock().

    Last reviewed on 2005-11-23 (0.9.5) @@ -109,10 +109,10 @@ Opaque <


    gst_net_client_clock_new ()

    -
    GstClock *          gst_net_client_clock_new            (gchar *name,
    +
    GstClock *          gst_net_client_clock_new            (gchar *name,
                                                              const gchar *remote_address,
                                                              gint remote_port,
    -                                                         GstClockTime base_time);
    + GstClockTime base_time);

    Create a new GstNetClientClock that will report the time provided by the GstNetTimeProvider on remote_address and @@ -139,7 +139,7 @@ provided by the Returns :

    -a new GstClock that receives a time from the remote +a new GstClock that receives a time from the remote clock. @@ -151,7 +151,7 @@ clock.

    The "address" property

      "address"                  gchar*                : Read / Write
    -

    The address of the machine providing a time server, as a dotted quad (x.x.x.x).

    +

    The IP address of the machine providing a time server.

    Default value: "127.0.0.1"


    @@ -165,7 +165,7 @@ clock.
    @@ -65,25 +65,25 @@ struct "active" gboolean : Read / Write "address" gchar* : Read / Write - "clock" GstClock* : Read / Write + "clock" GstClock* : Read / Write "port" gint : Read / Write

    Description

    -This object exposes the time of a GstClock on the network. +This object exposes the time of a GstClock on the network.

    A GstNetTimeProvider is created with gst_net_time_provider_new() which -takes a GstClock, an address and a port number as arguments. +takes a GstClock, an address and a port number as arguments.

    After creating the object, a client clock such as GstNetClientClock can query the exposed clock over the network for its values.

    -The GstNetTimeProvider typically wraps the clock used by a GstPipeline. +The GstNetTimeProvider typically wraps the clock used by a GstPipeline.

    Last reviewed on 2005-11-23 (0.9.5) @@ -101,7 +101,7 @@ Opaque

    gst_net_time_provider_new ()

    -
    GstNetTimeProvider * gst_net_time_provider_new          (GstClock *clock,
    +
    GstNetTimeProvider * gst_net_time_provider_new          (GstClock *clock,
                                                              const gchar *address,
                                                              gint port);

    @@ -112,7 +112,7 @@ Allows network clients to get the current time of cl

    clock :

    -a GstClock to export over the network +a GstClock to export over the network

    address :

    @@ -149,7 +149,7 @@ to bind to all addresses

    The "clock" property

    -
      "clock"                    GstClock*             : Read / Write
    +
      "clock"                    GstClock*             : Read / Write

    The clock to export over the network.


    @@ -163,7 +163,7 @@ to bind to all addresses
    @@ -893,13 +947,12 @@ allocated on the stack.

    gst_base_parse_push_frame ()

    -
    GstFlowReturn       gst_base_parse_push_frame           (GstBaseParse *parse,
    +
    GstFlowReturn       gst_base_parse_push_frame           (GstBaseParse *parse,
                                                              GstBaseParseFrame *frame);

    -Pushes the frame downstream, sends any pending events and -does some timestamp and segment handling. Takes ownership -of frame and will clear it (if it was initialised with -gst_base_parse_frame_init()) or free it. +Pushes the frame's buffer downstream, sends any pending events and +does some timestamp and segment handling. Takes ownership of +frame's buffer, though caller retains ownership of frame.

    This must be called with sinkpad STREAM_LOCK held. @@ -914,12 +967,12 @@ This must be called with sinkpad STREAM_LOCK held.

    frame :

    -a GstBaseParseFrame. [transfer full] +a GstBaseParseFrame. [transfer none]

    Returns :

    -GstFlowReturn +GstFlowReturn
    @@ -961,25 +1014,14 @@ the parser is now processing the frames at the end of the stream)
    #define GST_BASE_PARSE_FLOW_DROPPED     GST_FLOW_CUSTOM_SUCCESS
     

    -A GstFlowReturn that can be returned from parse_frame to -indicate that no output buffer was generated, or from pre_push_buffer to +A GstFlowReturn that can be returned from parse_frame to +indicate that no output buffer was generated, or from pre_push_frame to to forego pushing buffer.

    Since 0.10.33


    -

    GST_BASE_PARSE_FLOW_QUEUED

    -
    #define GST_BASE_PARSE_FLOW_QUEUED      GST_FLOW_CUSTOM_SUCCESS_1
    -
    -

    -A GstFlowReturn that can be returned from parse frame to indicate that -the buffer will be queued to be pushed when the next OK -

    -

    Since 0.10.33

    -
    -
    -

    GST_BASE_PARSE_LOST_SYNC()

    #define GST_BASE_PARSE_LOST_SYNC(parse) (!!(GST_BASE_PARSE_CAST(parse)->flags & GST_BASE_PARSE_FLAG_LOST_SYNC))
     
    @@ -1001,7 +1043,7 @@ Obtains current sync status.
    #define GST_BASE_PARSE_SINK_PAD(obj)    (GST_BASE_PARSE_CAST (obj)->sinkpad)
     

    -Gives the pointer to the sink GstPad object of the element. +Gives the pointer to the sink GstPad object of the element.

    @@ -1018,7 +1060,7 @@ Gives the pointer to the sink #define GST_BASE_PARSE_SRC_PAD(obj) (GST_BASE_PARSE_CAST (obj)->srcpad)

    -Gives the pointer to the source GstPad object of the element. +Gives the pointer to the source GstPad object of the element.

    diff --git a/docs/libs/html/gstreamer-libs-GstBitReader.html b/docs/libs/html/gstreamer-libs-GstBitReader.html index 3e65bbf..2f82f7e 100644 --- a/docs/libs/html/gstreamer-libs-GstBitReader.html +++ b/docs/libs/html/gstreamer-libs-GstBitReader.html @@ -3,8 +3,8 @@ GstBitReader - - + + @@ -17,7 +17,7 @@ - + - + @@ -185,7 +185,7 @@ be assigned to a variable. In that case you have to use

    gst_bit_reader_new ()

    -
    GstBitReader *      gst_bit_reader_new                  (const guint8 *data,
    +
    GstBitReader *      gst_bit_reader_new                  (const guint8 *data,
                                                              guint size);

    Create a new GstBitReader instance, which will read from data. @@ -235,7 +235,7 @@ Frees a

    gst_bit_reader_init ()

    void                gst_bit_reader_init                 (GstBitReader *reader,
    -                                                         const guint8 *data,
    +                                                         const guint8 *data,
                                                              guint size);

    Initializes a GstBitReader instance to read from data. This function @@ -411,7 +411,7 @@ Skips until the next byte.

    gst_bit_reader_get_bits_uint16 ()

    gboolean            gst_bit_reader_get_bits_uint16      (GstBitReader *reader,
    -                                                         guint16 *val,
    +                                                         guint16 *val,
                                                              guint nbits);

    Read nbits bits into val and update the current position. @@ -425,7 +425,7 @@ Read nbits bits into val :

    -
    @@ -445,7 +445,7 @@ Read nbits bits into

    gst_bit_reader_get_bits_uint32 ()

    gboolean            gst_bit_reader_get_bits_uint32      (GstBitReader *reader,
    -                                                         guint32 *val,
    +                                                         guint32 *val,
                                                              guint nbits);

    Read nbits bits into val and update the current position. @@ -459,7 +459,7 @@ Read nbits bits into val :

    -
    @@ -479,7 +479,7 @@ Read nbits bits into

    gst_bit_reader_get_bits_uint64 ()

    gboolean            gst_bit_reader_get_bits_uint64      (GstBitReader *reader,
    -                                                         guint64 *val,
    +                                                         guint64 *val,
                                                              guint nbits);

    Read nbits bits into val and update the current position. @@ -493,7 +493,7 @@ Read nbits bits into val :

    -
    @@ -513,7 +513,7 @@ Read nbits bits into

    gst_bit_reader_get_bits_uint8 ()

    gboolean            gst_bit_reader_get_bits_uint8       (GstBitReader *reader,
    -                                                         guint8 *val,
    +                                                         guint8 *val,
                                                              guint nbits);

    Read nbits bits into val and update the current position. @@ -527,7 +527,7 @@ Read nbits bits into val :

    -
    @@ -547,7 +547,7 @@ Read nbits bits into

    gst_bit_reader_peek_bits_uint16 ()

    gboolean            gst_bit_reader_peek_bits_uint16     (const GstBitReader *reader,
    -                                                         guint16 *val,
    +                                                         guint16 *val,
                                                              guint nbits);

    Read nbits bits into val but keep the current position. @@ -561,7 +561,7 @@ Read nbits bits into val :

    -
    @@ -581,7 +581,7 @@ Read nbits bits into

    gst_bit_reader_peek_bits_uint32 ()

    gboolean            gst_bit_reader_peek_bits_uint32     (const GstBitReader *reader,
    -                                                         guint32 *val,
    +                                                         guint32 *val,
                                                              guint nbits);

    Read nbits bits into val but keep the current position. @@ -595,7 +595,7 @@ Read nbits bits into val :

    -
    @@ -615,7 +615,7 @@ Read nbits bits into

    gst_bit_reader_peek_bits_uint64 ()

    gboolean            gst_bit_reader_peek_bits_uint64     (const GstBitReader *reader,
    -                                                         guint64 *val,
    +                                                         guint64 *val,
                                                              guint nbits);

    Read nbits bits into val but keep the current position. @@ -629,7 +629,7 @@ Read nbits bits into val :

    -
    @@ -649,7 +649,7 @@ Read nbits bits into

    gst_bit_reader_peek_bits_uint8 ()

    gboolean            gst_bit_reader_peek_bits_uint8      (const GstBitReader *reader,
    -                                                         guint8 *val,
    +                                                         guint8 *val,
                                                              guint nbits);

    Read nbits bits into val but keep the current position. @@ -663,7 +663,7 @@ Read nbits bits into val :

    -
    @@ -724,7 +724,7 @@ available in the bit reader.

    gst_bit_reader_get_bits_uint16_unchecked ()

    -
    guint16             gst_bit_reader_get_bits_uint16_unchecked
    +
    guint16             gst_bit_reader_get_bits_uint16_unchecked
                                                             (GstBitReader *reader,
                                                              guint nbits);

    @@ -753,7 +753,7 @@ checking if there are enough bits available in the bit reader.


    gst_bit_reader_get_bits_uint32_unchecked ()

    -
    guint32             gst_bit_reader_get_bits_uint32_unchecked
    +
    guint32             gst_bit_reader_get_bits_uint32_unchecked
                                                             (GstBitReader *reader,
                                                              guint nbits);

    @@ -782,7 +782,7 @@ checking if there are enough bits available in the bit reader.


    gst_bit_reader_get_bits_uint64_unchecked ()

    -
    guint64             gst_bit_reader_get_bits_uint64_unchecked
    +
    guint64             gst_bit_reader_get_bits_uint64_unchecked
                                                             (GstBitReader *reader,
                                                              guint nbits);

    @@ -811,7 +811,7 @@ checking if there are enough bits available in the bit reader.


    gst_bit_reader_get_bits_uint8_unchecked ()

    -
    guint8              gst_bit_reader_get_bits_uint8_unchecked
    +
    guint8              gst_bit_reader_get_bits_uint8_unchecked
                                                             (GstBitReader *reader,
                                                              guint nbits);

    @@ -840,7 +840,7 @@ checking if there are enough bits available in the bit reader.


    gst_bit_reader_peek_bits_uint16_unchecked ()

    -
    guint16             gst_bit_reader_peek_bits_uint16_unchecked
    +
    guint16             gst_bit_reader_peek_bits_uint16_unchecked
                                                             (const GstBitReader *reader,
                                                              guint nbits);

    @@ -869,7 +869,7 @@ checking if there are enough bits available in the bit reader


    gst_bit_reader_peek_bits_uint32_unchecked ()

    -
    guint32             gst_bit_reader_peek_bits_uint32_unchecked
    +
    guint32             gst_bit_reader_peek_bits_uint32_unchecked
                                                             (const GstBitReader *reader,
                                                              guint nbits);

    @@ -898,14 +898,14 @@ checking if there are enough bits available in the bit reader


    gst_bit_reader_peek_bits_uint64_unchecked ()

    -
    guint64             gst_bit_reader_peek_bits_uint64_unchecked
    +
    guint64             gst_bit_reader_peek_bits_uint64_unchecked
                                                             (const GstBitReader *reader,
                                                              guint nbits);

    gst_bit_reader_peek_bits_uint8_unchecked ()

    -
    guint8              gst_bit_reader_peek_bits_uint8_unchecked
    +
    guint8              gst_bit_reader_peek_bits_uint8_unchecked
                                                             (const GstBitReader *reader,
                                                              guint nbits);

    diff --git a/docs/libs/html/gstreamer-libs-GstBufferStraw.html b/docs/libs/html/gstreamer-libs-GstBufferStraw.html index f855867..b1a2ff0 100644 --- a/docs/libs/html/gstreamer-libs-GstBufferStraw.html +++ b/docs/libs/html/gstreamer-libs-GstBufferStraw.html @@ -3,8 +3,8 @@ GstBufferStraw - - + + @@ -17,7 +17,7 @@

    - + - +
    Prev Up HomeGStreamer 0.11 Library Reference ManualGStreamer 1.0 Library Reference Manual Next
    @@ -43,11 +43,11 @@ GstBitReader; #define GST_BIT_READER_INIT (data, size) -GstBitReader * gst_bit_reader_new (const guint8 *data, +GstBitReader * gst_bit_reader_new (const guint8 *data, guint size); void gst_bit_reader_free (GstBitReader *reader); void gst_bit_reader_init (GstBitReader *reader, - const guint8 *data, + const guint8 *data, guint size); guint gst_bit_reader_get_pos (const GstBitReader *reader); guint gst_bit_reader_get_remaining (const GstBitReader *reader); @@ -58,55 +58,55 @@ guint nbits); gboolean gst_bit_reader_skip_to_byte (GstBitReader *reader); gboolean gst_bit_reader_get_bits_uint16 (GstBitReader *reader, - guint16 *val, + guint16 *val, guint nbits); gboolean gst_bit_reader_get_bits_uint32 (GstBitReader *reader, - guint32 *val, + guint32 *val, guint nbits); gboolean gst_bit_reader_get_bits_uint64 (GstBitReader *reader, - guint64 *val, + guint64 *val, guint nbits); gboolean gst_bit_reader_get_bits_uint8 (GstBitReader *reader, - guint8 *val, + guint8 *val, guint nbits); gboolean gst_bit_reader_peek_bits_uint16 (const GstBitReader *reader, - guint16 *val, + guint16 *val, guint nbits); gboolean gst_bit_reader_peek_bits_uint32 (const GstBitReader *reader, - guint32 *val, + guint32 *val, guint nbits); gboolean gst_bit_reader_peek_bits_uint64 (const GstBitReader *reader, - guint64 *val, + guint64 *val, guint nbits); gboolean gst_bit_reader_peek_bits_uint8 (const GstBitReader *reader, - guint8 *val, + guint8 *val, guint nbits); void gst_bit_reader_skip_unchecked (GstBitReader *reader, guint nbits); void gst_bit_reader_skip_to_byte_unchecked (GstBitReader *reader); -guint16 gst_bit_reader_get_bits_uint16_unchecked +guint16 gst_bit_reader_get_bits_uint16_unchecked (GstBitReader *reader, guint nbits); -guint32 gst_bit_reader_get_bits_uint32_unchecked +guint32 gst_bit_reader_get_bits_uint32_unchecked (GstBitReader *reader, guint nbits); -guint64 gst_bit_reader_get_bits_uint64_unchecked +guint64 gst_bit_reader_get_bits_uint64_unchecked (GstBitReader *reader, guint nbits); -guint8 gst_bit_reader_get_bits_uint8_unchecked +guint8 gst_bit_reader_get_bits_uint8_unchecked (GstBitReader *reader, guint nbits); -guint16 gst_bit_reader_peek_bits_uint16_unchecked +guint16 gst_bit_reader_peek_bits_uint16_unchecked (const GstBitReader *reader, guint nbits); -guint32 gst_bit_reader_peek_bits_uint32_unchecked +guint32 gst_bit_reader_peek_bits_uint32_unchecked (const GstBitReader *reader, guint nbits); -guint64 gst_bit_reader_peek_bits_uint64_unchecked +guint64 gst_bit_reader_peek_bits_uint64_unchecked (const GstBitReader *reader, guint nbits); -guint8 gst_bit_reader_peek_bits_uint8_unchecked +guint8 gst_bit_reader_peek_bits_uint8_unchecked (const GstBitReader *reader, guint nbits); @@ -138,7 +138,7 @@ A bit reader instance.

    const guint8 *data;

    const guint8 *data;

    Data from which the bit reader will read
    Pointer to a guint16 to store the result. [out] +Pointer to a guint16 to store the result. [out]
    Pointer to a guint32 to store the result. [out] +Pointer to a guint32 to store the result. [out]
    Pointer to a guint64 to store the result. [out] +Pointer to a guint64 to store the result. [out]
    Pointer to a guint8 to store the result. [out] +Pointer to a guint8 to store the result. [out]
    Pointer to a guint16 to store the result. [out] +Pointer to a guint16 to store the result. [out]
    Pointer to a guint32 to store the result. [out] +Pointer to a guint32 to store the result. [out]
    Pointer to a guint64 to store the result. [out] +Pointer to a guint64 to store the result. [out]
    Pointer to a guint8 to store the result. [out] +Pointer to a guint8 to store the result. [out]
    Prev Up HomeGStreamer 0.11 Library Reference ManualGStreamer 1.0 Library Reference Manual Next
    @@ -40,12 +40,12 @@
     #include <gst/check/gstbufferstraw.h>
     
    -void                gst_buffer_straw_start_pipeline     (GstElement *bin,
    -                                                         GstPad *pad);
    -GstBuffer *         gst_buffer_straw_get_buffer         (GstElement *bin,
    -                                                         GstPad *pad);
    -void                gst_buffer_straw_stop_pipeline      (GstElement *bin,
    -                                                         GstPad *pad);
    +void                gst_buffer_straw_start_pipeline     (GstElement *bin,
    +                                                         GstPad *pad);
    +GstBuffer *         gst_buffer_straw_get_buffer         (GstElement *bin,
    +                                                         GstPad *pad);
    +void                gst_buffer_straw_stop_pipeline      (GstElement *bin,
    +                                                         GstPad *pad);
     
    @@ -59,8 +59,8 @@ inside the 'check' directories of various GStreamer packages.

    Details

    gst_buffer_straw_start_pipeline ()

    -
    void                gst_buffer_straw_start_pipeline     (GstElement *bin,
    -                                                         GstPad *pad);
    +
    void                gst_buffer_straw_start_pipeline     (GstElement *bin,
    +                                                         GstPad *pad);

    Sets up a pipeline for buffer sucking. This will allow you to call gst_buffer_straw_get_buffer() to access buffers as they pass over pad. @@ -68,7 +68,7 @@ Sets up a pipeline for buffer sucking. This will allow you to call

    This function is normally used in unit tests that want to verify that a particular element is outputting correct buffers. For example, you would make -a pipeline via gst_parse_launch(), pull out the pad you want to monitor, then +a pipeline via gst_parse_launch(), pull out the pad you want to monitor, then call gst_buffer_straw_get_buffer() to get the buffers that pass through pad. The pipeline will block until you have sucked off the buffers.

    @@ -99,8 +99,8 @@ from libcheck, so you cannot use it outside unit tests.

    gst_buffer_straw_get_buffer ()

    -
    GstBuffer *         gst_buffer_straw_get_buffer         (GstElement *bin,
    -                                                         GstPad *pad);
    +
    GstBuffer *         gst_buffer_straw_get_buffer         (GstElement *bin,
    +                                                         GstPad *pad);

    Get one buffer from pad. Implemented via buffer probes. This function will block until the pipeline passes a buffer over pad, so for robust behavior @@ -126,7 +126,7 @@ You must have previously called Returns :

    the captured GstBuffer.the captured GstBuffer.
    @@ -134,10 +134,10 @@ You must have previously called

    gst_buffer_straw_stop_pipeline ()

    -
    void                gst_buffer_straw_stop_pipeline      (GstElement *bin,
    -                                                         GstPad *pad);
    +
    void                gst_buffer_straw_stop_pipeline      (GstElement *bin,
    +                                                         GstPad *pad);

    -Set bin to GST_STATE_NULL and release resource allocated in +Set bin to GST_STATE_NULL and release resource allocated in gst_buffer_straw_start_pipeline().

    diff --git a/docs/libs/html/gstreamer-libs-GstByteReader.html b/docs/libs/html/gstreamer-libs-GstByteReader.html index 372c195..45bc65d 100644 --- a/docs/libs/html/gstreamer-libs-GstByteReader.html +++ b/docs/libs/html/gstreamer-libs-GstByteReader.html @@ -3,8 +3,8 @@ GstByteReader - - + + @@ -17,7 +17,7 @@ Prev Up Home -GStreamer 0.11 Library Reference Manual +GStreamer 1.0 Library Reference Manual Next @@ -44,11 +44,11 @@ GstByteReader; #define GST_BYTE_READER_INIT (data, size) -GstByteReader * gst_byte_reader_new (const guint8 *data, +GstByteReader * gst_byte_reader_new (const guint8 *data, guint size); void gst_byte_reader_free (GstByteReader *reader); void gst_byte_reader_init (GstByteReader *reader, - const guint8 *data, + const guint8 *data, guint size); guint gst_byte_reader_get_pos (const GstByteReader *reader); guint gst_byte_reader_get_remaining (const GstByteReader *reader); @@ -58,77 +58,77 @@ gboolean gst_byte_reader_skip (GstByteReader *reader, guint nbytes); gboolean gst_byte_reader_get_int8 (GstByteReader *reader, - gint8 *val); + gint8 *val); gboolean gst_byte_reader_get_int16_be (GstByteReader *reader, - gint16 *val); + gint16 *val); gboolean gst_byte_reader_get_int16_le (GstByteReader *reader, - gint16 *val); + gint16 *val); gboolean gst_byte_reader_get_int24_be (GstByteReader *reader, - gint32 *val); + gint32 *val); gboolean gst_byte_reader_get_int24_le (GstByteReader *reader, - gint32 *val); + gint32 *val); gboolean gst_byte_reader_get_int32_be (GstByteReader *reader, - gint32 *val); + gint32 *val); gboolean gst_byte_reader_get_int32_le (GstByteReader *reader, - gint32 *val); + gint32 *val); gboolean gst_byte_reader_get_int64_be (GstByteReader *reader, - gint64 *val); + gint64 *val); gboolean gst_byte_reader_get_int64_le (GstByteReader *reader, - gint64 *val); + gint64 *val); gboolean gst_byte_reader_get_uint8 (GstByteReader *reader, - guint8 *val); + guint8 *val); gboolean gst_byte_reader_get_uint16_be (GstByteReader *reader, - guint16 *val); + guint16 *val); gboolean gst_byte_reader_get_uint16_le (GstByteReader *reader, - guint16 *val); + guint16 *val); gboolean gst_byte_reader_get_uint24_be (GstByteReader *reader, - guint32 *val); + guint32 *val); gboolean gst_byte_reader_get_uint24_le (GstByteReader *reader, - guint32 *val); + guint32 *val); gboolean gst_byte_reader_get_uint32_be (GstByteReader *reader, - guint32 *val); + guint32 *val); gboolean gst_byte_reader_get_uint32_le (GstByteReader *reader, - guint32 *val); + guint32 *val); gboolean gst_byte_reader_get_uint64_be (GstByteReader *reader, - guint64 *val); + guint64 *val); gboolean gst_byte_reader_get_uint64_le (GstByteReader *reader, - guint64 *val); + guint64 *val); gboolean gst_byte_reader_peek_int8 (const GstByteReader *reader, - gint8 *val); + gint8 *val); gboolean gst_byte_reader_peek_int16_be (const GstByteReader *reader, - gint16 *val); + gint16 *val); gboolean gst_byte_reader_peek_int16_le (const GstByteReader *reader, - gint16 *val); + gint16 *val); gboolean gst_byte_reader_peek_int24_be (const GstByteReader *reader, - gint32 *val); + gint32 *val); gboolean gst_byte_reader_peek_int24_le (const GstByteReader *reader, - gint32 *val); + gint32 *val); gboolean gst_byte_reader_peek_int32_be (const GstByteReader *reader, - gint32 *val); + gint32 *val); gboolean gst_byte_reader_peek_int32_le (const GstByteReader *reader, - gint32 *val); + gint32 *val); gboolean gst_byte_reader_peek_int64_be (const GstByteReader *reader, - gint64 *val); + gint64 *val); gboolean gst_byte_reader_peek_int64_le (const GstByteReader *reader, - gint64 *val); + gint64 *val); gboolean gst_byte_reader_peek_uint8 (const GstByteReader *reader, - guint8 *val); + guint8 *val); gboolean gst_byte_reader_peek_uint16_be (const GstByteReader *reader, - guint16 *val); + guint16 *val); gboolean gst_byte_reader_peek_uint16_le (const GstByteReader *reader, - guint16 *val); + guint16 *val); gboolean gst_byte_reader_peek_uint24_be (const GstByteReader *reader, - guint32 *val); + guint32 *val); gboolean gst_byte_reader_peek_uint24_le (const GstByteReader *reader, - guint32 *val); + guint32 *val); gboolean gst_byte_reader_peek_uint32_be (const GstByteReader *reader, - guint32 *val); + guint32 *val); gboolean gst_byte_reader_peek_uint32_le (const GstByteReader *reader, - guint32 *val); + guint32 *val); gboolean gst_byte_reader_peek_uint64_be (const GstByteReader *reader, - guint64 *val); + guint64 *val); gboolean gst_byte_reader_peek_uint64_le (const GstByteReader *reader, - guint64 *val); + guint64 *val); gboolean gst_byte_reader_get_float32_le (GstByteReader *reader, gfloat *val); gboolean gst_byte_reader_get_float32_be (GstByteReader *reader, @@ -147,16 +147,16 @@ gdouble *val); gboolean gst_byte_reader_get_data (GstByteReader *reader, guint size, - const guint8 **val); + const guint8 **val); gboolean gst_byte_reader_dup_data (GstByteReader *reader, guint size, - guint8 **val); + guint8 **val); gboolean gst_byte_reader_peek_data (const GstByteReader *reader, guint size, - const guint8 **val); + const guint8 **val); guint gst_byte_reader_masked_scan_uint32 (const GstByteReader *reader, - guint32 mask, - guint32 pattern, + guint32 mask, + guint32 pattern, guint offset, guint size); #define gst_byte_reader_get_string (reader, @@ -172,83 +172,83 @@ gboolean gst_byte_reader_dup_string_utf8 (GstByteReader *reader, gchar **str); gboolean gst_byte_reader_dup_string_utf16 (GstByteReader *reader, - guint16 **str); + guint16 **str); gboolean gst_byte_reader_dup_string_utf32 (GstByteReader *reader, - guint32 **str); + guint32 **str); #define gst_byte_reader_skip_string (reader) gboolean gst_byte_reader_skip_string_utf8 (GstByteReader *reader); gboolean gst_byte_reader_skip_string_utf16 (GstByteReader *reader); gboolean gst_byte_reader_skip_string_utf32 (GstByteReader *reader); void gst_byte_reader_skip_unchecked (GstByteReader *reader, guint nbytes); -gint8 gst_byte_reader_get_int8_unchecked (GstByteReader *reader); -gint16 gst_byte_reader_get_int16_be_unchecked +gint8 gst_byte_reader_get_int8_unchecked (GstByteReader *reader); +gint16 gst_byte_reader_get_int16_be_unchecked (GstByteReader *reader); -gint16 gst_byte_reader_get_int16_le_unchecked +gint16 gst_byte_reader_get_int16_le_unchecked (GstByteReader *reader); -gint32 gst_byte_reader_get_int24_be_unchecked +gint32 gst_byte_reader_get_int24_be_unchecked (GstByteReader *reader); -gint32 gst_byte_reader_get_int24_le_unchecked +gint32 gst_byte_reader_get_int24_le_unchecked (GstByteReader *reader); -gint32 gst_byte_reader_get_int32_be_unchecked +gint32 gst_byte_reader_get_int32_be_unchecked (GstByteReader *reader); -gint32 gst_byte_reader_get_int32_le_unchecked +gint32 gst_byte_reader_get_int32_le_unchecked (GstByteReader *reader); -gint64 gst_byte_reader_get_int64_be_unchecked +gint64 gst_byte_reader_get_int64_be_unchecked (GstByteReader *reader); -gint64 gst_byte_reader_get_int64_le_unchecked +gint64 gst_byte_reader_get_int64_le_unchecked (GstByteReader *reader); -guint8 gst_byte_reader_get_uint8_unchecked (GstByteReader *reader); -guint16 gst_byte_reader_get_uint16_be_unchecked +guint8 gst_byte_reader_get_uint8_unchecked (GstByteReader *reader); +guint16 gst_byte_reader_get_uint16_be_unchecked (GstByteReader *reader); -guint16 gst_byte_reader_get_uint16_le_unchecked +guint16 gst_byte_reader_get_uint16_le_unchecked (GstByteReader *reader); -guint32 gst_byte_reader_get_uint24_be_unchecked +guint32 gst_byte_reader_get_uint24_be_unchecked (GstByteReader *reader); -guint32 gst_byte_reader_get_uint24_le_unchecked +guint32 gst_byte_reader_get_uint24_le_unchecked (GstByteReader *reader); -guint32 gst_byte_reader_get_uint32_be_unchecked +guint32 gst_byte_reader_get_uint32_be_unchecked (GstByteReader *reader); -guint32 gst_byte_reader_get_uint32_le_unchecked +guint32 gst_byte_reader_get_uint32_le_unchecked (GstByteReader *reader); -guint64 gst_byte_reader_get_uint64_be_unchecked +guint64 gst_byte_reader_get_uint64_be_unchecked (GstByteReader *reader); -guint64 gst_byte_reader_get_uint64_le_unchecked +guint64 gst_byte_reader_get_uint64_le_unchecked (GstByteReader *reader); -gint8 gst_byte_reader_peek_int8_unchecked (GstByteReader *reader); -gint16 gst_byte_reader_peek_int16_be_unchecked +gint8 gst_byte_reader_peek_int8_unchecked (GstByteReader *reader); +gint16 gst_byte_reader_peek_int16_be_unchecked (GstByteReader *reader); -gint16 gst_byte_reader_peek_int16_le_unchecked +gint16 gst_byte_reader_peek_int16_le_unchecked (GstByteReader *reader); -gint32 gst_byte_reader_peek_int24_be_unchecked +gint32 gst_byte_reader_peek_int24_be_unchecked (GstByteReader *reader); -gint32 gst_byte_reader_peek_int24_le_unchecked +gint32 gst_byte_reader_peek_int24_le_unchecked (GstByteReader *reader); -gint32 gst_byte_reader_peek_int32_be_unchecked +gint32 gst_byte_reader_peek_int32_be_unchecked (GstByteReader *reader); -gint32 gst_byte_reader_peek_int32_le_unchecked +gint32 gst_byte_reader_peek_int32_le_unchecked (GstByteReader *reader); -gint64 gst_byte_reader_peek_int64_be_unchecked +gint64 gst_byte_reader_peek_int64_be_unchecked (GstByteReader *reader); -gint64 gst_byte_reader_peek_int64_le_unchecked +gint64 gst_byte_reader_peek_int64_le_unchecked (GstByteReader *reader); -guint8 gst_byte_reader_peek_uint8_unchecked +guint8 gst_byte_reader_peek_uint8_unchecked (GstByteReader *reader); -guint16 gst_byte_reader_peek_uint16_be_unchecked +guint16 gst_byte_reader_peek_uint16_be_unchecked (GstByteReader *reader); -guint16 gst_byte_reader_peek_uint16_le_unchecked +guint16 gst_byte_reader_peek_uint16_le_unchecked (GstByteReader *reader); -guint32 gst_byte_reader_peek_uint24_be_unchecked +guint32 gst_byte_reader_peek_uint24_be_unchecked (GstByteReader *reader); -guint32 gst_byte_reader_peek_uint24_le_unchecked +guint32 gst_byte_reader_peek_uint24_le_unchecked (GstByteReader *reader); -guint32 gst_byte_reader_peek_uint32_be_unchecked +guint32 gst_byte_reader_peek_uint32_be_unchecked (GstByteReader *reader); -guint32 gst_byte_reader_peek_uint32_le_unchecked +guint32 gst_byte_reader_peek_uint32_le_unchecked (GstByteReader *reader); -guint64 gst_byte_reader_peek_uint64_be_unchecked +guint64 gst_byte_reader_peek_uint64_be_unchecked (GstByteReader *reader); -guint64 gst_byte_reader_peek_uint64_le_unchecked +guint64 gst_byte_reader_peek_uint64_le_unchecked (GstByteReader *reader); gfloat gst_byte_reader_get_float32_le_unchecked (GstByteReader *reader); @@ -266,11 +266,11 @@ (GstByteReader *reader); gdouble gst_byte_reader_peek_float64_be_unchecked (GstByteReader *reader); -guint8 * gst_byte_reader_dup_data_unchecked (GstByteReader *reader, +guint8 * gst_byte_reader_dup_data_unchecked (GstByteReader *reader, guint size); -const guint8 * gst_byte_reader_get_data_unchecked (GstByteReader *reader, +const guint8 * gst_byte_reader_get_data_unchecked (GstByteReader *reader, guint size); -const guint8 * gst_byte_reader_peek_data_unchecked (const GstByteReader *reader); +const guint8 * gst_byte_reader_peek_data_unchecked (GstByteReader *reader);

    @@ -302,7 +302,7 @@ A byte reader instance. -

    const guint8 *data;

    +

    const guint8 *data;

    Data from which the bit reader will read @@ -345,7 +345,7 @@ be assigned to a variable. In that case you have to use

    gst_byte_reader_new ()

    -
    GstByteReader *     gst_byte_reader_new                 (const guint8 *data,
    +
    GstByteReader *     gst_byte_reader_new                 (const guint8 *data,
                                                              guint size);

    Create a new GstByteReader instance, which will read from data. @@ -397,7 +397,7 @@ Frees a

    gst_byte_reader_init ()

    void                gst_byte_reader_init                (GstByteReader *reader,
    -                                                         const guint8 *data,
    +                                                         const guint8 *data,
                                                              guint size);

    Initializes a GstByteReader instance to read from data. This function @@ -551,7 +551,7 @@ Skips nbytes bytes of the

    gst_byte_reader_get_int8 ()

    gboolean            gst_byte_reader_get_int8            (GstByteReader *reader,
    -                                                         gint8 *val);
    + gint8 *val);

    Read a signed 8 bit integer into val and update the current position.

    @@ -564,7 +564,7 @@ Read a signed 8 bit integer into val and

    val :

    -Pointer to a gint8 to store the result. [out] +Pointer to a gint8 to store the result. [out] @@ -580,7 +580,7 @@ Read a signed 8 bit integer into val and

    gst_byte_reader_get_int16_be ()

    gboolean            gst_byte_reader_get_int16_be        (GstByteReader *reader,
    -                                                         gint16 *val);
    + gint16 *val);

    Read a signed 16 bit big endian integer into val and update the current position. @@ -594,7 +594,7 @@ and update the current position.

    val :

    -Pointer to a gint16 to store the result. [out] +Pointer to a gint16 to store the result. [out] @@ -610,7 +610,7 @@ and update the current position.

    gst_byte_reader_get_int16_le ()

    gboolean            gst_byte_reader_get_int16_le        (GstByteReader *reader,
    -                                                         gint16 *val);
    + gint16 *val);

    Read a signed 16 bit little endian integer into val and update the current position. @@ -624,7 +624,7 @@ and update the current position.

    val :

    -Pointer to a gint16 to store the result. [out] +Pointer to a gint16 to store the result. [out] @@ -640,7 +640,7 @@ and update the current position.

    gst_byte_reader_get_int24_be ()

    gboolean            gst_byte_reader_get_int24_be        (GstByteReader *reader,
    -                                                         gint32 *val);
    + gint32 *val);

    Read a signed 24 bit big endian integer into val and update the current position. @@ -654,7 +654,7 @@ and update the current position.

    val :

    -Pointer to a gint32 to store the result. [out] +Pointer to a gint32 to store the result. [out] @@ -670,7 +670,7 @@ and update the current position.

    gst_byte_reader_get_int24_le ()

    gboolean            gst_byte_reader_get_int24_le        (GstByteReader *reader,
    -                                                         gint32 *val);
    + gint32 *val);

    Read a signed 24 bit little endian integer into val and update the current position. @@ -684,7 +684,7 @@ and update the current position.

    val :

    -Pointer to a gint32 to store the result. [out] +Pointer to a gint32 to store the result. [out] @@ -700,7 +700,7 @@ and update the current position.

    gst_byte_reader_get_int32_be ()

    gboolean            gst_byte_reader_get_int32_be        (GstByteReader *reader,
    -                                                         gint32 *val);
    + gint32 *val);

    Read a signed 32 bit big endian integer into val and update the current position. @@ -714,7 +714,7 @@ and update the current position.

    val :

    -Pointer to a gint32 to store the result. [out] +Pointer to a gint32 to store the result. [out] @@ -730,7 +730,7 @@ and update the current position.

    gst_byte_reader_get_int32_le ()

    gboolean            gst_byte_reader_get_int32_le        (GstByteReader *reader,
    -                                                         gint32 *val);
    + gint32 *val);

    Read a signed 32 bit little endian integer into val and update the current position. @@ -744,7 +744,7 @@ and update the current position.

    val :

    -Pointer to a gint32 to store the result. [out] +Pointer to a gint32 to store the result. [out] @@ -760,7 +760,7 @@ and update the current position.

    gst_byte_reader_get_int64_be ()

    gboolean            gst_byte_reader_get_int64_be        (GstByteReader *reader,
    -                                                         gint64 *val);
    + gint64 *val);

    Read a signed 64 bit big endian integer into val and update the current position. @@ -774,7 +774,7 @@ and update the current position.

    val :

    -Pointer to a gint64 to store the result. [out] +Pointer to a gint64 to store the result. [out] @@ -790,7 +790,7 @@ and update the current position.

    gst_byte_reader_get_int64_le ()

    gboolean            gst_byte_reader_get_int64_le        (GstByteReader *reader,
    -                                                         gint64 *val);
    + gint64 *val);

    Read a signed 64 bit little endian integer into val and update the current position. @@ -804,7 +804,7 @@ and update the current position.

    val :

    -Pointer to a gint64 to store the result. [out] +Pointer to a gint64 to store the result. [out] @@ -820,7 +820,7 @@ and update the current position.

    gst_byte_reader_get_uint8 ()

    gboolean            gst_byte_reader_get_uint8           (GstByteReader *reader,
    -                                                         guint8 *val);
    + guint8 *val);

    Read an unsigned 8 bit integer into val and update the current position.

    @@ -833,7 +833,7 @@ Read an unsigned 8 bit integer into val

    val :

    -Pointer to a guint8 to store the result. [out] +Pointer to a guint8 to store the result. [out] @@ -849,7 +849,7 @@ Read an unsigned 8 bit integer into val

    gst_byte_reader_get_uint16_be ()

    gboolean            gst_byte_reader_get_uint16_be       (GstByteReader *reader,
    -                                                         guint16 *val);
    + guint16 *val);

    Read an unsigned 16 bit big endian integer into val and update the current position. @@ -863,7 +863,7 @@ and update the current position.

    val :

    -Pointer to a guint16 to store the result. [out] +Pointer to a guint16 to store the result. [out] @@ -879,7 +879,7 @@ and update the current position.

    gst_byte_reader_get_uint16_le ()

    gboolean            gst_byte_reader_get_uint16_le       (GstByteReader *reader,
    -                                                         guint16 *val);
    + guint16 *val);

    Read an unsigned 16 bit little endian integer into val and update the current position. @@ -893,7 +893,7 @@ and update the current position.

    val :

    -Pointer to a guint16 to store the result. [out] +Pointer to a guint16 to store the result. [out] @@ -909,7 +909,7 @@ and update the current position.

    gst_byte_reader_get_uint24_be ()

    gboolean            gst_byte_reader_get_uint24_be       (GstByteReader *reader,
    -                                                         guint32 *val);
    + guint32 *val);

    Read an unsigned 24 bit big endian integer into val and update the current position. @@ -923,7 +923,7 @@ and update the current position.

    val :

    -Pointer to a guint32 to store the result. [out] +Pointer to a guint32 to store the result. [out] @@ -939,7 +939,7 @@ and update the current position.

    gst_byte_reader_get_uint24_le ()

    gboolean            gst_byte_reader_get_uint24_le       (GstByteReader *reader,
    -                                                         guint32 *val);
    + guint32 *val);

    Read an unsigned 24 bit little endian integer into val and update the current position. @@ -953,7 +953,7 @@ and update the current position.

    val :

    -Pointer to a guint32 to store the result. [out] +Pointer to a guint32 to store the result. [out] @@ -969,7 +969,7 @@ and update the current position.

    gst_byte_reader_get_uint32_be ()

    gboolean            gst_byte_reader_get_uint32_be       (GstByteReader *reader,
    -                                                         guint32 *val);
    + guint32 *val);

    Read an unsigned 32 bit big endian integer into val and update the current position. @@ -983,7 +983,7 @@ and update the current position.

    val :

    -Pointer to a guint32 to store the result. [out] +Pointer to a guint32 to store the result. [out] @@ -999,7 +999,7 @@ and update the current position.

    gst_byte_reader_get_uint32_le ()

    gboolean            gst_byte_reader_get_uint32_le       (GstByteReader *reader,
    -                                                         guint32 *val);
    + guint32 *val);

    Read an unsigned 32 bit little endian integer into val and update the current position. @@ -1013,7 +1013,7 @@ and update the current position.

    val :

    -Pointer to a guint32 to store the result. [out] +Pointer to a guint32 to store the result. [out] @@ -1029,7 +1029,7 @@ and update the current position.

    gst_byte_reader_get_uint64_be ()

    gboolean            gst_byte_reader_get_uint64_be       (GstByteReader *reader,
    -                                                         guint64 *val);
    + guint64 *val);

    Read an unsigned 64 bit big endian integer into val and update the current position. @@ -1043,7 +1043,7 @@ and update the current position.

    val :

    -Pointer to a guint64 to store the result. [out] +Pointer to a guint64 to store the result. [out] @@ -1059,7 +1059,7 @@ and update the current position.

    gst_byte_reader_get_uint64_le ()

    gboolean            gst_byte_reader_get_uint64_le       (GstByteReader *reader,
    -                                                         guint64 *val);
    + guint64 *val);

    Read an unsigned 64 bit little endian integer into val and update the current position. @@ -1073,7 +1073,7 @@ and update the current position.

    val :

    -Pointer to a guint64 to store the result. [out] +Pointer to a guint64 to store the result. [out] @@ -1089,7 +1089,7 @@ and update the current position.

    gst_byte_reader_peek_int8 ()

    gboolean            gst_byte_reader_peek_int8           (const GstByteReader *reader,
    -                                                         gint8 *val);
    + gint8 *val);

    Read a signed 8 bit integer into val but keep the current position.

    @@ -1102,7 +1102,7 @@ Read a signed 8 bit integer into val but

    val :

    -Pointer to a gint8 to store the result. [out] +Pointer to a gint8 to store the result. [out] @@ -1118,7 +1118,7 @@ Read a signed 8 bit integer into val but

    gst_byte_reader_peek_int16_be ()

    gboolean            gst_byte_reader_peek_int16_be       (const GstByteReader *reader,
    -                                                         gint16 *val);
    + gint16 *val);

    Read a signed 16 bit big endian integer into val but keep the current position. @@ -1132,7 +1132,7 @@ but keep the current position.

    val :

    -Pointer to a gint16 to store the result. [out] +Pointer to a gint16 to store the result. [out] @@ -1148,7 +1148,7 @@ but keep the current position.

    gst_byte_reader_peek_int16_le ()

    gboolean            gst_byte_reader_peek_int16_le       (const GstByteReader *reader,
    -                                                         gint16 *val);
    + gint16 *val);

    Read a signed 16 bit little endian integer into val but keep the current position. @@ -1162,7 +1162,7 @@ but keep the current position.

    val :

    -Pointer to a gint16 to store the result. [out] +Pointer to a gint16 to store the result. [out] @@ -1178,7 +1178,7 @@ but keep the current position.

    gst_byte_reader_peek_int24_be ()

    gboolean            gst_byte_reader_peek_int24_be       (const GstByteReader *reader,
    -                                                         gint32 *val);
    + gint32 *val);

    Read a signed 24 bit big endian integer into val but keep the current position. @@ -1192,7 +1192,7 @@ but keep the current position.

    val :

    -Pointer to a gint32 to store the result. [out] +Pointer to a gint32 to store the result. [out] @@ -1208,7 +1208,7 @@ but keep the current position.

    gst_byte_reader_peek_int24_le ()

    gboolean            gst_byte_reader_peek_int24_le       (const GstByteReader *reader,
    -                                                         gint32 *val);
    + gint32 *val);

    Read a signed 24 bit little endian integer into val but keep the current position. @@ -1222,7 +1222,7 @@ but keep the current position.

    val :

    -Pointer to a gint32 to store the result. [out] +Pointer to a gint32 to store the result. [out] @@ -1238,7 +1238,7 @@ but keep the current position.

    gst_byte_reader_peek_int32_be ()

    gboolean            gst_byte_reader_peek_int32_be       (const GstByteReader *reader,
    -                                                         gint32 *val);
    + gint32 *val);

    Read a signed 32 bit big endian integer into val but keep the current position. @@ -1252,7 +1252,7 @@ but keep the current position.

    val :

    -Pointer to a gint32 to store the result. [out] +Pointer to a gint32 to store the result. [out] @@ -1268,7 +1268,7 @@ but keep the current position.

    gst_byte_reader_peek_int32_le ()

    gboolean            gst_byte_reader_peek_int32_le       (const GstByteReader *reader,
    -                                                         gint32 *val);
    + gint32 *val);

    Read a signed 32 bit little endian integer into val but keep the current position. @@ -1282,7 +1282,7 @@ but keep the current position.

    val :

    -Pointer to a gint32 to store the result. [out] +Pointer to a gint32 to store the result. [out] @@ -1298,7 +1298,7 @@ but keep the current position.

    gst_byte_reader_peek_int64_be ()

    gboolean            gst_byte_reader_peek_int64_be       (const GstByteReader *reader,
    -                                                         gint64 *val);
    + gint64 *val);

    Read a signed 64 bit big endian integer into val but keep the current position. @@ -1312,7 +1312,7 @@ but keep the current position.

    val :

    -Pointer to a gint64 to store the result. [out] +Pointer to a gint64 to store the result. [out] @@ -1328,7 +1328,7 @@ but keep the current position.

    gst_byte_reader_peek_int64_le ()

    gboolean            gst_byte_reader_peek_int64_le       (const GstByteReader *reader,
    -                                                         gint64 *val);
    + gint64 *val);

    Read a signed 64 bit little endian integer into val but keep the current position. @@ -1342,7 +1342,7 @@ but keep the current position.

    val :

    -Pointer to a gint64 to store the result. [out] +Pointer to a gint64 to store the result. [out] @@ -1358,7 +1358,7 @@ but keep the current position.

    gst_byte_reader_peek_uint8 ()

    gboolean            gst_byte_reader_peek_uint8          (const GstByteReader *reader,
    -                                                         guint8 *val);
    + guint8 *val);

    Read an unsigned 8 bit integer into val but keep the current position.

    @@ -1371,7 +1371,7 @@ Read an unsigned 8 bit integer into val

    val :

    -Pointer to a guint8 to store the result. [out] +Pointer to a guint8 to store the result. [out] @@ -1387,7 +1387,7 @@ Read an unsigned 8 bit integer into val

    gst_byte_reader_peek_uint16_be ()

    gboolean            gst_byte_reader_peek_uint16_be      (const GstByteReader *reader,
    -                                                         guint16 *val);
    + guint16 *val);

    Read an unsigned 16 bit big endian integer into val but keep the current position. @@ -1401,7 +1401,7 @@ but keep the current position.

    val :

    -Pointer to a guint16 to store the result. [out] +Pointer to a guint16 to store the result. [out] @@ -1417,7 +1417,7 @@ but keep the current position.

    gst_byte_reader_peek_uint16_le ()

    gboolean            gst_byte_reader_peek_uint16_le      (const GstByteReader *reader,
    -                                                         guint16 *val);
    + guint16 *val);

    Read an unsigned 16 bit little endian integer into val but keep the current position. @@ -1431,7 +1431,7 @@ but keep the current position.

    val :

    -Pointer to a guint16 to store the result. [out] +Pointer to a guint16 to store the result. [out] @@ -1447,7 +1447,7 @@ but keep the current position.

    gst_byte_reader_peek_uint24_be ()

    gboolean            gst_byte_reader_peek_uint24_be      (const GstByteReader *reader,
    -                                                         guint32 *val);
    + guint32 *val);

    Read an unsigned 24 bit big endian integer into val but keep the current position. @@ -1461,7 +1461,7 @@ but keep the current position.

    val :

    -Pointer to a guint32 to store the result. [out] +Pointer to a guint32 to store the result. [out] @@ -1477,7 +1477,7 @@ but keep the current position.

    gst_byte_reader_peek_uint24_le ()

    gboolean            gst_byte_reader_peek_uint24_le      (const GstByteReader *reader,
    -                                                         guint32 *val);
    + guint32 *val);

    Read an unsigned 24 bit little endian integer into val but keep the current position. @@ -1491,7 +1491,7 @@ but keep the current position.

    val :

    -Pointer to a guint32 to store the result. [out] +Pointer to a guint32 to store the result. [out] @@ -1507,7 +1507,7 @@ but keep the current position.

    gst_byte_reader_peek_uint32_be ()

    gboolean            gst_byte_reader_peek_uint32_be      (const GstByteReader *reader,
    -                                                         guint32 *val);
    + guint32 *val);

    Read an unsigned 32 bit big endian integer into val but keep the current position. @@ -1521,7 +1521,7 @@ but keep the current position.

    val :

    -Pointer to a guint32 to store the result. [out] +Pointer to a guint32 to store the result. [out] @@ -1537,7 +1537,7 @@ but keep the current position.

    gst_byte_reader_peek_uint32_le ()

    gboolean            gst_byte_reader_peek_uint32_le      (const GstByteReader *reader,
    -                                                         guint32 *val);
    + guint32 *val);

    Read an unsigned 32 bit little endian integer into val but keep the current position. @@ -1551,7 +1551,7 @@ but keep the current position.

    val :

    -Pointer to a guint32 to store the result. [out] +Pointer to a guint32 to store the result. [out] @@ -1567,7 +1567,7 @@ but keep the current position.

    gst_byte_reader_peek_uint64_be ()

    gboolean            gst_byte_reader_peek_uint64_be      (const GstByteReader *reader,
    -                                                         guint64 *val);
    + guint64 *val);

    Read an unsigned 64 bit big endian integer into val but keep the current position. @@ -1581,7 +1581,7 @@ but keep the current position.

    val :

    -Pointer to a guint64 to store the result. [out] +Pointer to a guint64 to store the result. [out] @@ -1597,7 +1597,7 @@ but keep the current position.

    gst_byte_reader_peek_uint64_le ()

    gboolean            gst_byte_reader_peek_uint64_le      (const GstByteReader *reader,
    -                                                         guint64 *val);
    + guint64 *val);

    Read an unsigned 64 bit little endian integer into val but keep the current position. @@ -1611,7 +1611,7 @@ but keep the current position.

    val :

    -Pointer to a guint64 to store the result. [out] +Pointer to a guint64 to store the result. [out] @@ -1868,7 +1868,7 @@ but keep the current position.

    gst_byte_reader_get_data ()

    gboolean            gst_byte_reader_get_data            (GstByteReader *reader,
                                                              guint size,
    -                                                         const guint8 **val);
    + const guint8 **val);

    Returns a constant pointer to the current data position if at least size bytes are left and @@ -1888,7 +1888,7 @@ updates the current position.

    val :

    address of a -guint8 pointer variable in which to store the result. [out][transfer none][array length=size] +guint8 pointer variable in which to store the result. [out][transfer none][array length=size] @@ -1905,7 +1905,7 @@ updates the current position.

    gst_byte_reader_dup_data ()

    gboolean            gst_byte_reader_dup_data            (GstByteReader *reader,
                                                              guint size,
    -                                                         guint8 **val);
    + guint8 **val);

    Free-function: g_free

    @@ -1928,7 +1928,7 @@ updates the current position. Free with val :

    address of a -
    guint8 pointer variable in which to store the result. [out][transfer full][array length=size] +guint8 pointer variable in which to store the result. [out][transfer full][array length=size] @@ -1945,7 +1945,7 @@ updates the current position. Free with

    gst_byte_reader_peek_data ()

    gboolean            gst_byte_reader_peek_data           (const GstByteReader *reader,
                                                              guint size,
    -                                                         const guint8 **val);
    + const guint8 **val);

    Returns a constant pointer to the current data position if at least size bytes are left and @@ -1965,7 +1965,7 @@ keeps the current position.

    val :

    address of a -guint8 pointer variable in which to store the result. [out][transfer none][array length=size] +guint8 pointer variable in which to store the result. [out][transfer none][array length=size] @@ -1981,8 +1981,8 @@ keeps the current position.

    gst_byte_reader_masked_scan_uint32 ()

    guint               gst_byte_reader_masked_scan_uint32  (const GstByteReader *reader,
    -                                                         guint32 mask,
    -                                                         guint32 pattern,
    +                                                         guint32 mask,
    +                                                         guint32 pattern,
                                                              guint offset,
                                                              guint size);

    @@ -2222,7 +2222,7 @@ string put into str must be freed with <

    gst_byte_reader_dup_string_utf16 ()

    gboolean            gst_byte_reader_dup_string_utf16    (GstByteReader *reader,
    -                                                         guint16 **str);
    + guint16 **str);

    Free-function: g_free

    @@ -2253,7 +2253,7 @@ byte alignment of the UTF-16 string.

    str :

    address of a -guint16 pointer varieble in which to store the result. [out][transfer full][array zero-terminated=1] +guint16 pointer varieble in which to store the result. [out][transfer full][array zero-terminated=1] @@ -2270,7 +2270,7 @@ string put into str must be freed with <

    gst_byte_reader_dup_string_utf32 ()

    gboolean            gst_byte_reader_dup_string_utf32    (GstByteReader *reader,
    -                                                         guint32 **str);
    + guint32 **str);

    Free-function: g_free

    @@ -2301,7 +2301,7 @@ byte alignment of the UTF-32 string.

    str :

    address of a -guint32 pointer varieble in which to store the result. [out][transfer full][array zero-terminated=1] +guint32 pointer varieble in which to store the result. [out][transfer full][array zero-terminated=1] @@ -2459,7 +2459,7 @@ there are enough bytes available in the byte reader.

    gst_byte_reader_get_int8_unchecked ()

    -
    gint8               gst_byte_reader_get_int8_unchecked  (GstByteReader *reader);
    +
    gint8               gst_byte_reader_get_int8_unchecked  (GstByteReader *reader);

    Read an signed 8 bit integer without checking if there are enough bytes available in the byte reader and update the current position. @@ -2482,7 +2482,7 @@ available in the byte reader and update the current position.


    gst_byte_reader_get_int16_be_unchecked ()

    -
    gint16              gst_byte_reader_get_int16_be_unchecked
    +
    gint16              gst_byte_reader_get_int16_be_unchecked
                                                             (GstByteReader *reader);

    Read a signed 16 bit integer in big endian format without checking @@ -2507,7 +2507,7 @@ current position.


    gst_byte_reader_get_int16_le_unchecked ()

    -
    gint16              gst_byte_reader_get_int16_le_unchecked
    +
    gint16              gst_byte_reader_get_int16_le_unchecked
                                                             (GstByteReader *reader);

    Read a signed 16 bit integer in little endian format without checking @@ -2532,7 +2532,7 @@ current position.


    gst_byte_reader_get_int24_be_unchecked ()

    -
    gint32              gst_byte_reader_get_int24_be_unchecked
    +
    gint32              gst_byte_reader_get_int24_be_unchecked
                                                             (GstByteReader *reader);

    Read a signed 24 bit integer in big endian format without checking @@ -2557,7 +2557,7 @@ current position.


    gst_byte_reader_get_int24_le_unchecked ()

    -
    gint32              gst_byte_reader_get_int24_le_unchecked
    +
    gint32              gst_byte_reader_get_int24_le_unchecked
                                                             (GstByteReader *reader);

    Read a signed 24 bit integer in little endian format without checking @@ -2582,7 +2582,7 @@ current position.


    gst_byte_reader_get_int32_be_unchecked ()

    -
    gint32              gst_byte_reader_get_int32_be_unchecked
    +
    gint32              gst_byte_reader_get_int32_be_unchecked
                                                             (GstByteReader *reader);

    Read a signed 32 bit integer in big endian format without checking @@ -2607,7 +2607,7 @@ current position.


    gst_byte_reader_get_int32_le_unchecked ()

    -
    gint32              gst_byte_reader_get_int32_le_unchecked
    +
    gint32              gst_byte_reader_get_int32_le_unchecked
                                                             (GstByteReader *reader);

    Read a signed 32 bit integer in little endian format without checking @@ -2632,7 +2632,7 @@ current position.


    gst_byte_reader_get_int64_be_unchecked ()

    -
    gint64              gst_byte_reader_get_int64_be_unchecked
    +
    gint64              gst_byte_reader_get_int64_be_unchecked
                                                             (GstByteReader *reader);

    Read a signed 64 bit integer in big endian format without checking @@ -2657,7 +2657,7 @@ current position.


    gst_byte_reader_get_int64_le_unchecked ()

    -
    gint64              gst_byte_reader_get_int64_le_unchecked
    +
    gint64              gst_byte_reader_get_int64_le_unchecked
                                                             (GstByteReader *reader);

    Read a signed 64 bit integer in little endian format without checking @@ -2682,7 +2682,7 @@ current position.


    gst_byte_reader_get_uint8_unchecked ()

    -
    guint8              gst_byte_reader_get_uint8_unchecked (GstByteReader *reader);
    +
    guint8              gst_byte_reader_get_uint8_unchecked (GstByteReader *reader);

    Read an unsigned 8 bit integer without checking if there are enough bytes available in the byte reader and update the current position. @@ -2705,7 +2705,7 @@ available in the byte reader and update the current position.


    gst_byte_reader_get_uint16_be_unchecked ()

    -
    guint16             gst_byte_reader_get_uint16_be_unchecked
    +
    guint16             gst_byte_reader_get_uint16_be_unchecked
                                                             (GstByteReader *reader);

    Read an unsigned 16 bit integer in big endian format without checking @@ -2730,7 +2730,7 @@ current position.


    gst_byte_reader_get_uint16_le_unchecked ()

    -
    guint16             gst_byte_reader_get_uint16_le_unchecked
    +
    guint16             gst_byte_reader_get_uint16_le_unchecked
                                                             (GstByteReader *reader);

    Read an unsigned 16 bit integer in little endian format without checking @@ -2755,7 +2755,7 @@ current position.


    gst_byte_reader_get_uint24_be_unchecked ()

    -
    guint32             gst_byte_reader_get_uint24_be_unchecked
    +
    guint32             gst_byte_reader_get_uint24_be_unchecked
                                                             (GstByteReader *reader);

    Read an unsigned 24 bit integer in big endian format without checking @@ -2780,7 +2780,7 @@ current position.


    gst_byte_reader_get_uint24_le_unchecked ()

    -
    guint32             gst_byte_reader_get_uint24_le_unchecked
    +
    guint32             gst_byte_reader_get_uint24_le_unchecked
                                                             (GstByteReader *reader);

    Read an unsigned 24 bit integer in little endian format without checking @@ -2805,7 +2805,7 @@ current position.


    gst_byte_reader_get_uint32_be_unchecked ()

    -
    guint32             gst_byte_reader_get_uint32_be_unchecked
    +
    guint32             gst_byte_reader_get_uint32_be_unchecked
                                                             (GstByteReader *reader);

    Read an unsigned 32 bit integer in big endian format without checking @@ -2830,7 +2830,7 @@ current position.


    gst_byte_reader_get_uint32_le_unchecked ()

    -
    guint32             gst_byte_reader_get_uint32_le_unchecked
    +
    guint32             gst_byte_reader_get_uint32_le_unchecked
                                                             (GstByteReader *reader);

    Read an unsigned 32 bit integer in little endian format without checking @@ -2855,7 +2855,7 @@ current position.


    gst_byte_reader_get_uint64_be_unchecked ()

    -
    guint64             gst_byte_reader_get_uint64_be_unchecked
    +
    guint64             gst_byte_reader_get_uint64_be_unchecked
                                                             (GstByteReader *reader);

    Read an unsigned 64 bit integer in big endian format without checking @@ -2880,7 +2880,7 @@ current position.


    gst_byte_reader_get_uint64_le_unchecked ()

    -
    guint64             gst_byte_reader_get_uint64_le_unchecked
    +
    guint64             gst_byte_reader_get_uint64_le_unchecked
                                                             (GstByteReader *reader);

    Read an unsigned 64 bit integer in little endian format without checking @@ -2905,7 +2905,7 @@ current position.


    gst_byte_reader_peek_int8_unchecked ()

    -
    gint8               gst_byte_reader_peek_int8_unchecked (GstByteReader *reader);
    +
    gint8               gst_byte_reader_peek_int8_unchecked (GstByteReader *reader);

    Read an signed 8 bit integer without checking if there are enough bytes available in the byte reader, but do not advance the current read position. @@ -2928,7 +2928,7 @@ available in the byte reader, but do not advance the current read position.


    gst_byte_reader_peek_int16_be_unchecked ()

    -
    gint16              gst_byte_reader_peek_int16_be_unchecked
    +
    gint16              gst_byte_reader_peek_int16_be_unchecked
                                                             (GstByteReader *reader);

    Read a signed 16 bit integer in big endian format without checking @@ -2953,7 +2953,7 @@ the current position.


    gst_byte_reader_peek_int16_le_unchecked ()

    -
    gint16              gst_byte_reader_peek_int16_le_unchecked
    +
    gint16              gst_byte_reader_peek_int16_le_unchecked
                                                             (GstByteReader *reader);

    Read a signed 16 bit integer in little endian format without checking @@ -2978,7 +2978,7 @@ the current position.


    gst_byte_reader_peek_int24_be_unchecked ()

    -
    gint32              gst_byte_reader_peek_int24_be_unchecked
    +
    gint32              gst_byte_reader_peek_int24_be_unchecked
                                                             (GstByteReader *reader);

    Read a signed 24 bit integer in big endian format without checking @@ -3003,7 +3003,7 @@ the current position.


    gst_byte_reader_peek_int24_le_unchecked ()

    -
    gint32              gst_byte_reader_peek_int24_le_unchecked
    +
    gint32              gst_byte_reader_peek_int24_le_unchecked
                                                             (GstByteReader *reader);

    Read a signed 24 bit integer in little endian format without checking @@ -3028,7 +3028,7 @@ the current position.


    gst_byte_reader_peek_int32_be_unchecked ()

    -
    gint32              gst_byte_reader_peek_int32_be_unchecked
    +
    gint32              gst_byte_reader_peek_int32_be_unchecked
                                                             (GstByteReader *reader);

    Read a signed 32 bit integer in big endian format without checking @@ -3053,7 +3053,7 @@ the current position.


    gst_byte_reader_peek_int32_le_unchecked ()

    -
    gint32              gst_byte_reader_peek_int32_le_unchecked
    +
    gint32              gst_byte_reader_peek_int32_le_unchecked
                                                             (GstByteReader *reader);

    Read a signed 32 bit integer in little endian format without checking @@ -3078,7 +3078,7 @@ the current position.


    gst_byte_reader_peek_int64_be_unchecked ()

    -
    gint64              gst_byte_reader_peek_int64_be_unchecked
    +
    gint64              gst_byte_reader_peek_int64_be_unchecked
                                                             (GstByteReader *reader);

    Read a signed 64 bit integer in big endian format without checking @@ -3103,7 +3103,7 @@ the current position.


    gst_byte_reader_peek_int64_le_unchecked ()

    -
    gint64              gst_byte_reader_peek_int64_le_unchecked
    +
    gint64              gst_byte_reader_peek_int64_le_unchecked
                                                             (GstByteReader *reader);

    Read a signed 64 bit integer in little endian format without checking @@ -3128,7 +3128,7 @@ the current position.


    gst_byte_reader_peek_uint8_unchecked ()

    -
    guint8              gst_byte_reader_peek_uint8_unchecked
    +
    guint8              gst_byte_reader_peek_uint8_unchecked
                                                             (GstByteReader *reader);

    Read an unsigned 8 bit integer without checking if there are enough bytes @@ -3152,7 +3152,7 @@ available in the byte reader, but do not advance the current read position.


    gst_byte_reader_peek_uint16_be_unchecked ()

    -
    guint16             gst_byte_reader_peek_uint16_be_unchecked
    +
    guint16             gst_byte_reader_peek_uint16_be_unchecked
                                                             (GstByteReader *reader);

    Read an unsigned 16 bit integer in big endian format without checking @@ -3177,7 +3177,7 @@ the current position.


    gst_byte_reader_peek_uint16_le_unchecked ()

    -
    guint16             gst_byte_reader_peek_uint16_le_unchecked
    +
    guint16             gst_byte_reader_peek_uint16_le_unchecked
                                                             (GstByteReader *reader);

    Read an unsigned 16 bit integer in little endian format without checking @@ -3202,7 +3202,7 @@ the current position.


    gst_byte_reader_peek_uint24_be_unchecked ()

    -
    guint32             gst_byte_reader_peek_uint24_be_unchecked
    +
    guint32             gst_byte_reader_peek_uint24_be_unchecked
                                                             (GstByteReader *reader);

    Read an unsigned 24 bit integer in big endian format without checking @@ -3227,7 +3227,7 @@ the current position.


    gst_byte_reader_peek_uint24_le_unchecked ()

    -
    guint32             gst_byte_reader_peek_uint24_le_unchecked
    +
    guint32             gst_byte_reader_peek_uint24_le_unchecked
                                                             (GstByteReader *reader);

    Read an unsigned 24 bit integer in little endian format without checking @@ -3252,7 +3252,7 @@ the current position.


    gst_byte_reader_peek_uint32_be_unchecked ()

    -
    guint32             gst_byte_reader_peek_uint32_be_unchecked
    +
    guint32             gst_byte_reader_peek_uint32_be_unchecked
                                                             (GstByteReader *reader);

    Read an unsigned 32 bit integer in big endian format without checking @@ -3277,7 +3277,7 @@ the current position.


    gst_byte_reader_peek_uint32_le_unchecked ()

    -
    guint32             gst_byte_reader_peek_uint32_le_unchecked
    +
    guint32             gst_byte_reader_peek_uint32_le_unchecked
                                                             (GstByteReader *reader);

    Read an unsigned 32 bit integer in little endian format without checking @@ -3302,7 +3302,7 @@ the current position.


    gst_byte_reader_peek_uint64_be_unchecked ()

    -
    guint64             gst_byte_reader_peek_uint64_be_unchecked
    +
    guint64             gst_byte_reader_peek_uint64_be_unchecked
                                                             (GstByteReader *reader);

    Read an unsigned 64 bit integer in big endian format without checking @@ -3327,7 +3327,7 @@ the current position.


    gst_byte_reader_peek_uint64_le_unchecked ()

    -
    guint64             gst_byte_reader_peek_uint64_le_unchecked
    +
    guint64             gst_byte_reader_peek_uint64_le_unchecked
                                                             (GstByteReader *reader);

    Read an unsigned 64 bit integer in little endian format without checking @@ -3544,7 +3544,7 @@ data available, but keep the current position.


    gst_byte_reader_dup_data_unchecked ()

    -
    guint8 *            gst_byte_reader_dup_data_unchecked  (GstByteReader *reader,
    +
    guint8 *            gst_byte_reader_dup_data_unchecked  (GstByteReader *reader,
                                                              guint size);

    Returns a newly-allocated copy of the data at the current data position @@ -3578,7 +3578,7 @@ data size bytes in size. Free with

    gst_byte_reader_get_data_unchecked ()

    -
    const guint8 *      gst_byte_reader_get_data_unchecked  (GstByteReader *reader,
    +
    const guint8 *      gst_byte_reader_get_data_unchecked  (GstByteReader *reader,
                                                              guint size);

    Returns a constant pointer to the current data position without checking @@ -3609,7 +3609,7 @@ current data position. [

    gst_byte_reader_peek_data_unchecked ()

    -
    const guint8 *      gst_byte_reader_peek_data_unchecked (const GstByteReader *reader);
    +
    const guint8 *      gst_byte_reader_peek_data_unchecked (GstByteReader *reader);
    diff --git a/docs/libs/html/gstreamer-libs-GstByteWriter.html b/docs/libs/html/gstreamer-libs-GstByteWriter.html index 10c659b..961e487 100644 --- a/docs/libs/html/gstreamer-libs-GstByteWriter.html +++ b/docs/libs/html/gstreamer-libs-GstByteWriter.html @@ -3,11 +3,11 @@ GstByteWriter - - + + - + @@ -17,8 +17,8 @@ - - + + - @@ -475,7 +475,7 @@ after usage. [

    gst_byte_writer_free_and_get_data ()

    -
    guint8 *            gst_byte_writer_free_and_get_data   (GstByteWriter *writer);
    +
    guint8 *            gst_byte_writer_free_and_get_data   (GstByteWriter *writer);

    Frees writer and all memory allocated by it except the current data, which is returned. @@ -522,7 +522,7 @@ owned by writer.


    gst_byte_writer_reset_and_get_data ()

    -
    guint8 *            gst_byte_writer_reset_and_get_data  (GstByteWriter *writer);
    +
    guint8 *            gst_byte_writer_reset_and_get_data  (GstByteWriter *writer);

    Resets writer and returns the current data.

    @@ -549,7 +549,7 @@ Free-function: g_free

    gst_byte_writer_reset_and_get_buffer ()

    -
    GstBuffer *         gst_byte_writer_reset_and_get_buffer
    +
    GstBuffer *         gst_byte_writer_reset_and_get_buffer
                                                             (GstByteWriter *writer);

    Resets writer and returns the current data as buffer. @@ -567,7 +567,7 @@ Free-function: gst_buffer_unref

    - @@ -703,7 +703,7 @@ available and reallocates if necessary.

    gst_byte_writer_put_int8 ()

    gboolean            gst_byte_writer_put_int8            (GstByteWriter *writer,
    -                                                         gint8 val);
    + gint8 val);

    Writes a signed 8 bit integer to writer.

    @@ -732,7 +732,7 @@ Writes a signed 8 bit integer to writer.

    gst_byte_writer_put_int16_be ()

    gboolean            gst_byte_writer_put_int16_be        (GstByteWriter *writer,
    -                                                         gint16 val);
    + gint16 val);

    Writes a signed big endian 16 bit integer to writer.

    @@ -761,7 +761,7 @@ Writes a signed big endian 16 bit integer to writer<

    gst_byte_writer_put_int16_le ()

    gboolean            gst_byte_writer_put_int16_le        (GstByteWriter *writer,
    -                                                         gint16 val);
    + gint16 val);

    Writes a signed little endian 16 bit integer to writer.

    @@ -790,7 +790,7 @@ Writes a signed little endian 16 bit integer to writ

    gst_byte_writer_put_int24_be ()

    gboolean            gst_byte_writer_put_int24_be        (GstByteWriter *writer,
    -                                                         gint32 val);
    + gint32 val);

    Writes a signed big endian 24 bit integer to writer.

    @@ -819,7 +819,7 @@ Writes a signed big endian 24 bit integer to writer<

    gst_byte_writer_put_int24_le ()

    gboolean            gst_byte_writer_put_int24_le        (GstByteWriter *writer,
    -                                                         gint32 val);
    + gint32 val);

    Writes a signed little endian 24 bit integer to writer.

    @@ -848,7 +848,7 @@ Writes a signed little endian 24 bit integer to writ

    gst_byte_writer_put_int32_be ()

    gboolean            gst_byte_writer_put_int32_be        (GstByteWriter *writer,
    -                                                         gint32 val);
    + gint32 val);

    Writes a signed big endian 32 bit integer to writer.

    @@ -877,7 +877,7 @@ Writes a signed big endian 32 bit integer to writer<

    gst_byte_writer_put_int32_le ()

    gboolean            gst_byte_writer_put_int32_le        (GstByteWriter *writer,
    -                                                         gint32 val);
    + gint32 val);

    Writes a signed little endian 32 bit integer to writer.

    @@ -906,7 +906,7 @@ Writes a signed little endian 32 bit integer to writ

    gst_byte_writer_put_int64_be ()

    gboolean            gst_byte_writer_put_int64_be        (GstByteWriter *writer,
    -                                                         gint64 val);
    + gint64 val);

    Writes a signed big endian 64 bit integer to writer.

    @@ -935,7 +935,7 @@ Writes a signed big endian 64 bit integer to writer<

    gst_byte_writer_put_int64_le ()

    gboolean            gst_byte_writer_put_int64_le        (GstByteWriter *writer,
    -                                                         gint64 val);
    + gint64 val);

    Writes a signed little endian 64 bit integer to writer.

    @@ -964,7 +964,7 @@ Writes a signed little endian 64 bit integer to writ

    gst_byte_writer_put_uint8 ()

    gboolean            gst_byte_writer_put_uint8           (GstByteWriter *writer,
    -                                                         guint8 val);
    + guint8 val);

    Writes a unsigned 8 bit integer to writer.

    @@ -993,7 +993,7 @@ Writes a unsigned 8 bit integer to writer

    gst_byte_writer_put_uint16_be ()

    gboolean            gst_byte_writer_put_uint16_be       (GstByteWriter *writer,
    -                                                         guint16 val);
    + guint16 val);

    Writes a unsigned big endian 16 bit integer to writer.

    @@ -1022,7 +1022,7 @@ Writes a unsigned big endian 16 bit integer to write

    gst_byte_writer_put_uint16_le ()

    gboolean            gst_byte_writer_put_uint16_le       (GstByteWriter *writer,
    -                                                         guint16 val);
    + guint16 val);

    Writes a unsigned little endian 16 bit integer to writer.

    @@ -1051,7 +1051,7 @@ Writes a unsigned little endian 16 bit integer to wr

    gst_byte_writer_put_uint24_be ()

    gboolean            gst_byte_writer_put_uint24_be       (GstByteWriter *writer,
    -                                                         guint32 val);
    + guint32 val);

    Writes a unsigned big endian 24 bit integer to writer.

    @@ -1080,7 +1080,7 @@ Writes a unsigned big endian 24 bit integer to write

    gst_byte_writer_put_uint24_le ()

    gboolean            gst_byte_writer_put_uint24_le       (GstByteWriter *writer,
    -                                                         guint32 val);
    + guint32 val);

    Writes a unsigned little endian 24 bit integer to writer.

    @@ -1109,7 +1109,7 @@ Writes a unsigned little endian 24 bit integer to wr

    gst_byte_writer_put_uint32_be ()

    gboolean            gst_byte_writer_put_uint32_be       (GstByteWriter *writer,
    -                                                         guint32 val);
    + guint32 val);

    Writes a unsigned big endian 32 bit integer to writer.

    @@ -1138,7 +1138,7 @@ Writes a unsigned big endian 32 bit integer to write

    gst_byte_writer_put_uint32_le ()

    gboolean            gst_byte_writer_put_uint32_le       (GstByteWriter *writer,
    -                                                         guint32 val);
    + guint32 val);

    Writes a unsigned little endian 32 bit integer to writer.

    @@ -1167,7 +1167,7 @@ Writes a unsigned little endian 32 bit integer to wr

    gst_byte_writer_put_uint64_be ()

    gboolean            gst_byte_writer_put_uint64_be       (GstByteWriter *writer,
    -                                                         guint64 val);
    + guint64 val);

    Writes a unsigned big endian 64 bit integer to writer.

    @@ -1196,7 +1196,7 @@ Writes a unsigned big endian 64 bit integer to write

    gst_byte_writer_put_uint64_le ()

    gboolean            gst_byte_writer_put_uint64_le       (GstByteWriter *writer,
    -                                                         guint64 val);
    + guint64 val);

    Writes a unsigned little endian 64 bit integer to writer.

    @@ -1372,7 +1372,7 @@ ISO-8859-1).

    gst_byte_writer_put_string_utf16 ()

    gboolean            gst_byte_writer_put_string_utf16    (GstByteWriter *writer,
    -                                                         const guint16 *data);
    + const guint16 *data);

    Writes a NUL-terminated UTF16 string to writer (including the terminator).

    @@ -1402,7 +1402,7 @@ Writes a NUL-terminated UTF16 string to writer

    gst_byte_writer_put_string_utf32 ()

    gboolean            gst_byte_writer_put_string_utf32    (GstByteWriter *writer,
    -                                                         const guint32 *data);
    + const guint32 *data);

    Writes a NUL-terminated UTF32 string to writer (including the terminator).

    @@ -1463,7 +1463,7 @@ write. [

    gst_byte_writer_put_data ()

    gboolean            gst_byte_writer_put_data            (GstByteWriter *writer,
    -                                                         const guint8 *data,
    +                                                         const guint8 *data,
                                                              guint size);

    Writes size bytes of data to writer. @@ -1498,7 +1498,7 @@ Writes size bytes of

    gst_byte_writer_fill ()

    gboolean            gst_byte_writer_fill                (GstByteWriter *writer,
    -                                                         guint8 value,
    +                                                         guint8 value,
                                                              guint size);

    Writes size bytes containing value to writer. @@ -1532,14 +1532,14 @@ Writes size bytes containing

    gst_byte_writer_put_int8_unchecked ()

    void                gst_byte_writer_put_int8_unchecked  (GstByteWriter *writer,
    -                                                         gint8 val);
    + gint8 val);

    gst_byte_writer_put_int16_be_unchecked ()

    void                gst_byte_writer_put_int16_be_unchecked
                                                             (GstByteWriter *writer,
    -                                                         gint16 val);
    + gint16 val);

    Writes a signed big endian 16 bit integer to writer without checking if there is enough free space available in the byte writer. @@ -1565,7 +1565,7 @@ checking if there is enough free space available in the byte writer.

    gst_byte_writer_put_int16_le_unchecked ()

    void                gst_byte_writer_put_int16_le_unchecked
                                                             (GstByteWriter *writer,
    -                                                         gint16 val);
    + gint16 val);

    Writes a signed little endian 16 bit integer to writer without checking if there is enough free space available in the byte writer. @@ -1591,7 +1591,7 @@ checking if there is enough free space available in the byte writer.

    gst_byte_writer_put_int24_be_unchecked ()

    void                gst_byte_writer_put_int24_be_unchecked
                                                             (GstByteWriter *writer,
    -                                                         gint32 val);
    + gint32 val);

    Writes a signed big endian 24 bit integer to writer without checking if there is enough free space available in the byte writer. @@ -1617,7 +1617,7 @@ checking if there is enough free space available in the byte writer.

    gst_byte_writer_put_int24_le_unchecked ()

    void                gst_byte_writer_put_int24_le_unchecked
                                                             (GstByteWriter *writer,
    -                                                         gint32 val);
    + gint32 val);

    Writes a signed little endian 24 bit integer to writer without checking if there is enough free space available in the byte writer. @@ -1643,7 +1643,7 @@ checking if there is enough free space available in the byte writer.

    gst_byte_writer_put_int32_be_unchecked ()

    void                gst_byte_writer_put_int32_be_unchecked
                                                             (GstByteWriter *writer,
    -                                                         gint32 val);
    + gint32 val);

    Writes a signed big endian 32 bit integer to writer without checking if there is enough free space available in the byte writer. @@ -1669,7 +1669,7 @@ checking if there is enough free space available in the byte writer.

    gst_byte_writer_put_int32_le_unchecked ()

    void                gst_byte_writer_put_int32_le_unchecked
                                                             (GstByteWriter *writer,
    -                                                         gint32 val);
    + gint32 val);

    Writes a signed little endian 32 bit integer to writer without checking if there is enough free space available in the byte writer. @@ -1695,7 +1695,7 @@ checking if there is enough free space available in the byte writer.

    gst_byte_writer_put_int64_be_unchecked ()

    void                gst_byte_writer_put_int64_be_unchecked
                                                             (GstByteWriter *writer,
    -                                                         gint64 val);
    + gint64 val);

    Writes a signed big endian 64 bit integer to writer without checking if there is enough free space available in the byte writer. @@ -1721,7 +1721,7 @@ checking if there is enough free space available in the byte writer.

    gst_byte_writer_put_int64_le_unchecked ()

    void                gst_byte_writer_put_int64_le_unchecked
                                                             (GstByteWriter *writer,
    -                                                         gint64 val);
    + gint64 val);

    Writes a signed little endian 64 bit integer to writer without checking if there is enough free space available in the byte writer. @@ -1746,7 +1746,7 @@ checking if there is enough free space available in the byte writer.

    gst_byte_writer_put_uint8_unchecked ()

    void                gst_byte_writer_put_uint8_unchecked (GstByteWriter *writer,
    -                                                         guint8 val);
    + guint8 val);

    Writes a unsigned 8 bit integer to writer without checking if there is enough free space available in the byte writer. @@ -1772,7 +1772,7 @@ is enough free space available in the byte writer.

    gst_byte_writer_put_uint16_be_unchecked ()

    void                gst_byte_writer_put_uint16_be_unchecked
                                                             (GstByteWriter *writer,
    -                                                         guint16 val);
    + guint16 val);

    Writes a unsigned big endian 16 bit integer to writer without checking if there is enough free space available in the byte writer. @@ -1798,7 +1798,7 @@ checking if there is enough free space available in the byte writer.

    gst_byte_writer_put_uint16_le_unchecked ()

    void                gst_byte_writer_put_uint16_le_unchecked
                                                             (GstByteWriter *writer,
    -                                                         guint16 val);
    + guint16 val);

    Writes a unsigned little endian 16 bit integer to writer without checking if there is enough free space available in the byte writer. @@ -1824,7 +1824,7 @@ checking if there is enough free space available in the byte writer.

    gst_byte_writer_put_uint24_be_unchecked ()

    void                gst_byte_writer_put_uint24_be_unchecked
                                                             (GstByteWriter *writer,
    -                                                         guint32 val);
    + guint32 val);

    Writes a unsigned big endian 24 bit integer to writer without checking if there is enough free space available in the byte writer. @@ -1850,7 +1850,7 @@ checking if there is enough free space available in the byte writer.

    gst_byte_writer_put_uint24_le_unchecked ()

    void                gst_byte_writer_put_uint24_le_unchecked
                                                             (GstByteWriter *writer,
    -                                                         guint32 val);
    + guint32 val);

    Writes a unsigned little endian 24 bit integer to writer without checking if there is enough free space available in the byte writer. @@ -1876,7 +1876,7 @@ checking if there is enough free space available in the byte writer.

    gst_byte_writer_put_uint32_be_unchecked ()

    void                gst_byte_writer_put_uint32_be_unchecked
                                                             (GstByteWriter *writer,
    -                                                         guint32 val);
    + guint32 val);

    Writes a unsigned big endian 32 bit integer to writer without checking if there is enough free space available in the byte writer. @@ -1902,7 +1902,7 @@ checking if there is enough free space available in the byte writer.

    gst_byte_writer_put_uint32_le_unchecked ()

    void                gst_byte_writer_put_uint32_le_unchecked
                                                             (GstByteWriter *writer,
    -                                                         guint32 val);
    + guint32 val);

    Writes a unsigned little endian 32 bit integer to writer without checking if there is enough free space available in the byte writer. @@ -1928,7 +1928,7 @@ checking if there is enough free space available in the byte writer.

    gst_byte_writer_put_uint64_be_unchecked ()

    void                gst_byte_writer_put_uint64_be_unchecked
                                                             (GstByteWriter *writer,
    -                                                         guint64 val);
    + guint64 val);

    Writes a unsigned big endian 64 bit integer to writer without checking if there is enough free space available in the byte writer. @@ -1954,7 +1954,7 @@ checking if there is enough free space available in the byte writer.

    gst_byte_writer_put_uint64_le_unchecked ()

    void                gst_byte_writer_put_uint64_le_unchecked
                                                             (GstByteWriter *writer,
    -                                                         guint64 val);
    + guint64 val);

    Writes a unsigned little endian 64 bit integer to writer without checking if there is enough free space available in the byte writer. @@ -2083,7 +2083,7 @@ checking if there is enough free space available in the byte writer.

    gst_byte_writer_put_data_unchecked ()

    void                gst_byte_writer_put_data_unchecked  (GstByteWriter *writer,
    -                                                         const guint8 *data,
    +                                                         const guint8 *data,
                                                              guint size);

    Writes size bytes of data to writer without @@ -2114,7 +2114,7 @@ checking if there is enough free space available in the byte writer.

    gst_byte_writer_fill_unchecked ()

    void                gst_byte_writer_fill_unchecked      (GstByteWriter *writer,
    -                                                         guint8 value,
    +                                                         guint8 value,
                                                              guint size);

    Writes size bytes containing value to writer without diff --git a/docs/libs/html/gstreamer-libs-GstCheck.html b/docs/libs/html/gstreamer-libs-GstCheck.html index 272bbfc..4a1b6cd 100644 --- a/docs/libs/html/gstreamer-libs-GstCheck.html +++ b/docs/libs/html/gstreamer-libs-GstCheck.html @@ -3,8 +3,8 @@ GstCheck - - + + @@ -17,7 +17,7 @@

    - + - + - +
    Prev Up HomeGStreamer 0.11 Library Reference ManualNextGStreamer 1.0 Library Reference ManualNext
    Top @@ -43,25 +43,25 @@ GstByteWriter; GstByteWriter * gst_byte_writer_new (void); -GstByteWriter * gst_byte_writer_new_with_data (guint8 *data, +GstByteWriter * gst_byte_writer_new_with_data (guint8 *data, guint size, gboolean initialized); GstByteWriter * gst_byte_writer_new_with_size (guint size, gboolean fixed); void gst_byte_writer_init (GstByteWriter *writer); void gst_byte_writer_init_with_data (GstByteWriter *writer, - guint8 *data, + guint8 *data, guint size, gboolean initialized); void gst_byte_writer_init_with_size (GstByteWriter *writer, guint size, gboolean fixed); void gst_byte_writer_free (GstByteWriter *writer); -GstBuffer * gst_byte_writer_free_and_get_buffer (GstByteWriter *writer); -guint8 * gst_byte_writer_free_and_get_data (GstByteWriter *writer); +GstBuffer * gst_byte_writer_free_and_get_buffer (GstByteWriter *writer); +guint8 * gst_byte_writer_free_and_get_data (GstByteWriter *writer); void gst_byte_writer_reset (GstByteWriter *writer); -guint8 * gst_byte_writer_reset_and_get_data (GstByteWriter *writer); -GstBuffer * gst_byte_writer_reset_and_get_buffer +guint8 * gst_byte_writer_reset_and_get_data (GstByteWriter *writer); +GstBuffer * gst_byte_writer_reset_and_get_buffer (GstByteWriter *writer); guint gst_byte_writer_get_pos (const GstByteWriter *writer); gboolean gst_byte_writer_set_pos (GstByteWriter *writer, @@ -71,41 +71,41 @@ gboolean gst_byte_writer_ensure_free_space (GstByteWriter *writer, guint size); gboolean gst_byte_writer_put_int8 (GstByteWriter *writer, - gint8 val); + gint8 val); gboolean gst_byte_writer_put_int16_be (GstByteWriter *writer, - gint16 val); + gint16 val); gboolean gst_byte_writer_put_int16_le (GstByteWriter *writer, - gint16 val); + gint16 val); gboolean gst_byte_writer_put_int24_be (GstByteWriter *writer, - gint32 val); + gint32 val); gboolean gst_byte_writer_put_int24_le (GstByteWriter *writer, - gint32 val); + gint32 val); gboolean gst_byte_writer_put_int32_be (GstByteWriter *writer, - gint32 val); + gint32 val); gboolean gst_byte_writer_put_int32_le (GstByteWriter *writer, - gint32 val); + gint32 val); gboolean gst_byte_writer_put_int64_be (GstByteWriter *writer, - gint64 val); + gint64 val); gboolean gst_byte_writer_put_int64_le (GstByteWriter *writer, - gint64 val); + gint64 val); gboolean gst_byte_writer_put_uint8 (GstByteWriter *writer, - guint8 val); + guint8 val); gboolean gst_byte_writer_put_uint16_be (GstByteWriter *writer, - guint16 val); + guint16 val); gboolean gst_byte_writer_put_uint16_le (GstByteWriter *writer, - guint16 val); + guint16 val); gboolean gst_byte_writer_put_uint24_be (GstByteWriter *writer, - guint32 val); + guint32 val); gboolean gst_byte_writer_put_uint24_le (GstByteWriter *writer, - guint32 val); + guint32 val); gboolean gst_byte_writer_put_uint32_be (GstByteWriter *writer, - guint32 val); + guint32 val); gboolean gst_byte_writer_put_uint32_le (GstByteWriter *writer, - guint32 val); + guint32 val); gboolean gst_byte_writer_put_uint64_be (GstByteWriter *writer, - guint64 val); + guint64 val); gboolean gst_byte_writer_put_uint64_le (GstByteWriter *writer, - guint64 val); + guint64 val); gboolean gst_byte_writer_put_float32_be (GstByteWriter *writer, gfloat val); gboolean gst_byte_writer_put_float32_le (GstByteWriter *writer, @@ -117,69 +117,69 @@ #define gst_byte_writer_put_string (writer, data) gboolean gst_byte_writer_put_string_utf16 (GstByteWriter *writer, - const guint16 *data); + const guint16 *data); gboolean gst_byte_writer_put_string_utf32 (GstByteWriter *writer, - const guint32 *data); + const guint32 *data); gboolean gst_byte_writer_put_string_utf8 (GstByteWriter *writer, const gchar *data); gboolean gst_byte_writer_put_data (GstByteWriter *writer, - const guint8 *data, + const guint8 *data, guint size); gboolean gst_byte_writer_fill (GstByteWriter *writer, - guint8 value, + guint8 value, guint size); void gst_byte_writer_put_int8_unchecked (GstByteWriter *writer, - gint8 val); + gint8 val); void gst_byte_writer_put_int16_be_unchecked (GstByteWriter *writer, - gint16 val); + gint16 val); void gst_byte_writer_put_int16_le_unchecked (GstByteWriter *writer, - gint16 val); + gint16 val); void gst_byte_writer_put_int24_be_unchecked (GstByteWriter *writer, - gint32 val); + gint32 val); void gst_byte_writer_put_int24_le_unchecked (GstByteWriter *writer, - gint32 val); + gint32 val); void gst_byte_writer_put_int32_be_unchecked (GstByteWriter *writer, - gint32 val); + gint32 val); void gst_byte_writer_put_int32_le_unchecked (GstByteWriter *writer, - gint32 val); + gint32 val); void gst_byte_writer_put_int64_be_unchecked (GstByteWriter *writer, - gint64 val); + gint64 val); void gst_byte_writer_put_int64_le_unchecked (GstByteWriter *writer, - gint64 val); + gint64 val); void gst_byte_writer_put_uint8_unchecked (GstByteWriter *writer, - guint8 val); + guint8 val); void gst_byte_writer_put_uint16_be_unchecked (GstByteWriter *writer, - guint16 val); + guint16 val); void gst_byte_writer_put_uint16_le_unchecked (GstByteWriter *writer, - guint16 val); + guint16 val); void gst_byte_writer_put_uint24_be_unchecked (GstByteWriter *writer, - guint32 val); + guint32 val); void gst_byte_writer_put_uint24_le_unchecked (GstByteWriter *writer, - guint32 val); + guint32 val); void gst_byte_writer_put_uint32_be_unchecked (GstByteWriter *writer, - guint32 val); + guint32 val); void gst_byte_writer_put_uint32_le_unchecked (GstByteWriter *writer, - guint32 val); + guint32 val); void gst_byte_writer_put_uint64_be_unchecked (GstByteWriter *writer, - guint64 val); + guint64 val); void gst_byte_writer_put_uint64_le_unchecked (GstByteWriter *writer, - guint64 val); + guint64 val); void gst_byte_writer_put_float32_be_unchecked (GstByteWriter *writer, gfloat val); @@ -193,10 +193,10 @@ (GstByteWriter *writer, gdouble val); void gst_byte_writer_put_data_unchecked (GstByteWriter *writer, - const guint8 *data, + const guint8 *data, guint size); void gst_byte_writer_fill_unchecked (GstByteWriter *writer, - guint8 value, + guint8 value, guint size); @@ -273,7 +273,7 @@ Free-function: gst_byte_writer_free

    gst_byte_writer_new_with_data ()

    -
    GstByteWriter *     gst_byte_writer_new_with_data       (guint8 *data,
    +
    GstByteWriter *     gst_byte_writer_new_with_data       (guint8 *data,
                                                              guint size,
                                                              gboolean initialized);

    @@ -361,7 +361,7 @@ Initializes writer to an empty instance

    gst_byte_writer_init_with_data ()

    void                gst_byte_writer_init_with_data      (GstByteWriter *writer,
    -                                                         guint8 *data,
    +                                                         guint8 *data,
                                                              guint size,
                                                              gboolean initialized);

    @@ -445,10 +445,10 @@ Frees writer and all memory allocated by


    gst_byte_writer_free_and_get_buffer ()

    -
    GstBuffer *         gst_byte_writer_free_and_get_buffer (GstByteWriter *writer);
    +
    GstBuffer *         gst_byte_writer_free_and_get_buffer (GstByteWriter *writer);

    Frees writer and all memory allocated by it except -the current data, which is returned as GstBuffer. +the current data, which is returned as GstBuffer.

    Free-function: gst_buffer_unref @@ -464,7 +464,7 @@ Free-function: gst_buffer_unref

    Returns :

    the current data as buffer. gst_buffer_unref() +the current data as buffer. gst_buffer_unref() after usage. [transfer full]

    Returns :

    the current data as buffer. gst_buffer_unref() +the current data as buffer. gst_buffer_unref() after usage. [transfer full]
    Prev Up HomeGStreamer 0.11 Library Reference ManualGStreamer 1.0 Library Reference Manual Next
    @@ -50,7 +50,7 @@ value) #define ASSERT_CRITICAL (code) #define ASSERT_WARNING (code) -#define ASSERT_MINI_OBJECT_REFCOUNT (caps, +#define ASSERT_MINI_OBJECT_REFCOUNT (miniobj, name, value) #define ASSERT_OBJECT_REFCOUNT (object, @@ -91,41 +91,43 @@ c) void gst_check_init (int *argc, char **argv[]); -void gst_check_message_error (GstMessage *message, - GstMessageType type, +void gst_check_message_error (GstMessage *message, + GstMessageType type, GQuark domain, gint code); -GstElement * gst_check_setup_element (const gchar *factory); -GstPad * gst_check_setup_sink_pad (GstElement *element, - GstStaticPadTemplate *tmpl, - GstCaps *caps); -GstPad * gst_check_setup_src_pad (GstElement *element, - GstStaticPadTemplate *tmpl, - GstCaps *caps); -GstPad * gst_check_setup_sink_pad_by_name (GstElement *element, - GstStaticPadTemplate *tmpl, +GstElement * gst_check_setup_element (const gchar *factory); +GstPad * gst_check_setup_sink_pad (GstElement *element, + GstStaticPadTemplate *tmpl); +GstPad * gst_check_setup_src_pad (GstElement *element, + GstStaticPadTemplate *tmpl); +GstPad * gst_check_setup_sink_pad_by_name (GstElement *element, + GstStaticPadTemplate *tmpl, const gchar *name); -GstPad * gst_check_setup_src_pad_by_name (GstElement *element, - GstStaticPadTemplate *tmpl, +GstPad * gst_check_setup_src_pad_by_name (GstElement *element, + GstStaticPadTemplate *tmpl, const gchar *name); -void gst_check_teardown_pad_by_name (GstElement *element, +void gst_check_teardown_pad_by_name (GstElement *element, const gchar *name); -void gst_check_teardown_element (GstElement *element); -void gst_check_teardown_sink_pad (GstElement *element); -void gst_check_teardown_src_pad (GstElement *element); +void gst_check_teardown_element (GstElement *element); +void gst_check_teardown_sink_pad (GstElement *element); +void gst_check_teardown_src_pad (GstElement *element); void gst_check_drop_buffers (void); -void gst_check_buffer_data (GstBuffer *buffer, +void gst_check_buffer_data (GstBuffer *buffer, gconstpointer data, - gsize size); -void gst_check_caps_equal (GstCaps *caps1, - GstCaps *caps2); + gsize size); +void gst_check_caps_equal (GstCaps *caps1, + GstCaps *caps2); void gst_check_element_push_buffer_list (const gchar *element_name, GList *buffer_in, + GstCaps *caps_in, GList *buffer_out, - GstFlowReturn last_flow_return); + GstCaps *caps_out, + GstFlowReturn last_flow_return); void gst_check_element_push_buffer (const gchar *element_name, - GstBuffer *buffer_in, - GstBuffer *buffer_out); + GstBuffer *buffer_in, + GstCaps *caps_in, + GstBuffer *buffer_out, + GstCaps *caps_out); gint gst_check_run_suite (Suite *suite, const gchar *name, const gchar *fname); @@ -185,7 +187,7 @@ wrapper for checks END_TEST

    ASSERT_MINI_OBJECT_REFCOUNT()

    -
    #define             ASSERT_MINI_OBJECT_REFCOUNT(caps, name, value)
    +
    #define             ASSERT_MINI_OBJECT_REFCOUNT(miniobj, name, value)

    @@ -286,11 +288,11 @@ macro is for use in unit tests.

    a :

    a guint64 value or expressiona guint64 value or expression

    b :

    a guint64 value or expressiona guint64 value or expression
    @@ -309,11 +311,11 @@ macro is for use in unit tests.

    a :

    -a gint64 value or expression +a gint64 value or expression

    b :

    -a gint64 value or expression +a gint64 value or expression
    @@ -411,11 +413,11 @@ macro is for use in unit tests.

    a :

    -a guint64 value or expression +a guint64 value or expression

    b :

    -a guint64 value or expression +a guint64 value or expression
    @@ -435,11 +437,11 @@ macro is for use in unit tests.

    a :

    -a gint64 value or expression +a gint64 value or expression

    b :

    -a gint64 value or expression +a gint64 value or expression
    @@ -459,64 +461,62 @@ macro is for use in unit tests.

    gst_check_message_error ()

    -
    void                gst_check_message_error             (GstMessage *message,
    -                                                         GstMessageType type,
    +
    void                gst_check_message_error             (GstMessage *message,
    +                                                         GstMessageType type,
                                                              GQuark domain,
                                                              gint code);

    gst_check_setup_element ()

    -
    GstElement *        gst_check_setup_element             (const gchar *factory);
    +
    GstElement *        gst_check_setup_element             (const gchar *factory);

    gst_check_setup_sink_pad ()

    -
    GstPad *            gst_check_setup_sink_pad            (GstElement *element,
    -                                                         GstStaticPadTemplate *tmpl,
    -                                                         GstCaps *caps);
    +
    GstPad *            gst_check_setup_sink_pad            (GstElement *element,
    +                                                         GstStaticPadTemplate *tmpl);

    gst_check_setup_src_pad ()

    -
    GstPad *            gst_check_setup_src_pad             (GstElement *element,
    -                                                         GstStaticPadTemplate *tmpl,
    -                                                         GstCaps *caps);
    +
    GstPad *            gst_check_setup_src_pad             (GstElement *element,
    +                                                         GstStaticPadTemplate *tmpl);

    gst_check_setup_sink_pad_by_name ()

    -
    GstPad *            gst_check_setup_sink_pad_by_name    (GstElement *element,
    -                                                         GstStaticPadTemplate *tmpl,
    +
    GstPad *            gst_check_setup_sink_pad_by_name    (GstElement *element,
    +                                                         GstStaticPadTemplate *tmpl,
                                                              const gchar *name);

    gst_check_setup_src_pad_by_name ()

    -
    GstPad *            gst_check_setup_src_pad_by_name     (GstElement *element,
    -                                                         GstStaticPadTemplate *tmpl,
    +
    GstPad *            gst_check_setup_src_pad_by_name     (GstElement *element,
    +                                                         GstStaticPadTemplate *tmpl,
                                                              const gchar *name);

    gst_check_teardown_pad_by_name ()

    -
    void                gst_check_teardown_pad_by_name      (GstElement *element,
    +
    void                gst_check_teardown_pad_by_name      (GstElement *element,
                                                              const gchar *name);

    gst_check_teardown_element ()

    -
    void                gst_check_teardown_element          (GstElement *element);
    +
    void                gst_check_teardown_element          (GstElement *element);

    gst_check_teardown_sink_pad ()

    -
    void                gst_check_teardown_sink_pad         (GstElement *element);
    +
    void                gst_check_teardown_sink_pad         (GstElement *element);

    gst_check_teardown_src_pad ()

    -
    void                gst_check_teardown_src_pad          (GstElement *element);
    +
    void                gst_check_teardown_src_pad          (GstElement *element);

    @@ -531,9 +531,9 @@ emptying the list.

    gst_check_buffer_data ()

    -
    void                gst_check_buffer_data               (GstBuffer *buffer,
    +
    void                gst_check_buffer_data               (GstBuffer *buffer,
                                                              gconstpointer data,
    -                                                         gsize size);
    + gsize size);

    Compare the buffer contents with data and size.

    @@ -558,8 +558,8 @@ Compare the buffer contents with data an

    gst_check_caps_equal ()

    -
    void                gst_check_caps_equal                (GstCaps *caps1,
    -                                                         GstCaps *caps2);
    +
    void                gst_check_caps_equal                (GstCaps *caps1,
    +                                                         GstCaps *caps2);

    Compare two caps with gst_caps_is_equal and fail unless they are equal. @@ -584,8 +584,10 @@ equal.

    gst_check_element_push_buffer_list ()

    void                gst_check_element_push_buffer_list  (const gchar *element_name,
                                                              GList *buffer_in,
    +                                                         GstCaps *caps_in,
                                                              GList *buffer_out,
    -                                                         GstFlowReturn last_flow_return);
    + GstCaps *caps_out, + GstFlowReturn last_flow_return);

    Create an element with the factory with the name and push the buffers in buffer_in to this element. The element should create the buffers equal to @@ -605,11 +607,15 @@ invalid buffer, when the final buffer is expected to fail, for example.

    buffer_in :

    -a list of buffers that needs to be puched to the element +a list of buffers that needs to be +puched to the element. [element-type GstBuffer][transfer full] +

    buffer_out :

    -a list of buffers that we expect from the element +a list of buffers that we expect from +the element. [element-type GstBuffer][transfer full] +

    last_flow_return :

    @@ -623,8 +629,10 @@ invalid buffer, when the final buffer is expected to fail, for example.

    gst_check_element_push_buffer ()

    void                gst_check_element_push_buffer       (const gchar *element_name,
    -                                                         GstBuffer *buffer_in,
    -                                                         GstBuffer *buffer_out);
    + GstBuffer *buffer_in, + GstCaps *caps_in, + GstBuffer *buffer_out, + GstCaps *caps_out);

    Create an element with the factory with the name and push the buffer_in to this element. The element should create one buffer diff --git a/docs/libs/html/gstreamer-libs-GstControllerGObject.html b/docs/libs/html/gstreamer-libs-GstControllerGObject.html deleted file mode 100644 index 12d5af4..0000000 --- a/docs/libs/html/gstreamer-libs-GstControllerGObject.html +++ /dev/null @@ -1,464 +0,0 @@ - - - - -GstControllerGObject - - - - - - - - - - - - - - - - - - - -

    -
    -
    - - -
    -

    GstControllerGObject

    -

    GstControllerGObject — GObject convenience methods for using dynamic properties

    -
    -
    -

    Synopsis

    -
    -#include <libs/controller/gstcontroller.h>
    -
    -GstController *     gst_object_control_properties       (GObject *object,
    -                                                         ...);
    -gboolean            gst_object_uncontrol_properties     (GObject *object,
    -                                                         ...);
    -GstController *     gst_object_get_controller           (GObject *object);
    -gboolean            gst_object_set_controller           (GObject *object,
    -                                                         GstController *controller);
    -GstClockTime        gst_object_suggest_next_sync        (GObject *object);
    -gboolean            gst_object_sync_values              (GObject *object,
    -                                                         GstClockTime timestamp);
    -GstControlSource *  gst_object_get_control_source       (GObject *object,
    -                                                         const gchar *property_name);
    -gboolean            gst_object_set_control_source       (GObject *object,
    -                                                         const gchar *property_name,
    -                                                         GstControlSource *csource);
    -gboolean            gst_object_get_value_arrays         (GObject *object,
    -                                                         GstClockTime timestamp,
    -                                                         GSList *value_arrays);
    -gboolean            gst_object_get_value_array          (GObject *object,
    -                                                         GstClockTime timestamp,
    -                                                         GstValueArray *value_array);
    -GstClockTime        gst_object_get_control_rate         (GObject *object);
    -void                gst_object_set_control_rate         (GObject *object,
    -                                                         GstClockTime control_rate);
    -
    -
    -
    -

    Description

    -

    -These methods allow to use some GstController functionality directly from -the GObject class. -

    -
    -
    -

    Details

    -
    -

    gst_object_control_properties ()

    -
    GstController *     gst_object_control_properties       (GObject *object,
    -                                                         ...);
    -

    -Convenience function for GObject -

    -

    -Creates a GstController that allows you to dynamically control one, or more, GObject properties. -If the given GObject already has a GstController, it adds the given properties to the existing -controller and returns that controller. -

    -
    -- - - - - - - - - - - - - - -

    object :

    the object of which some properties should be controlled

    ... :

    -NULL terminated list of property names that should be controlled

    Returns :

    The GstController with which the user can control the given properties dynamically or NULL if -one or more of the given properties aren't available, or cannot be controlled, for the given element.
    -

    Since 0.9

    -
    -
    -
    -

    gst_object_uncontrol_properties ()

    -
    gboolean            gst_object_uncontrol_properties     (GObject *object,
    -                                                         ...);
    -

    -Convenience function for GObject -

    -

    -Removes the given element's properties from it's controller -

    -
    -- - - - - - - - - - - - - - -

    object :

    the object of which some properties should not be controlled anymore

    ... :

    -NULL terminated list of property names that should be controlled

    Returns :

    -FALSE if one of the given property names isn't handled by the -controller, TRUE otherwise
    -

    Since 0.9

    -
    -
    -
    -

    gst_object_get_controller ()

    -
    GstController *     gst_object_get_controller           (GObject *object);
    -

    -Gets the controller for the given GObject -

    -
    -- - - - - - - - - - -

    object :

    the object that has controlled properties

    Returns :

    the controller handling some of the given element's properties, NULL if no controller
    -

    Since 0.9

    -
    -
    -
    -

    gst_object_set_controller ()

    -
    gboolean            gst_object_set_controller           (GObject *object,
    -                                                         GstController *controller);
    -

    -Sets the controller on the given GObject -

    -
    -- - - - - - - - - - - - - - -

    object :

    the object that should get the controller

    controller :

    the controller object to plug in

    Returns :

    -FALSE if the GObject already has an controller, TRUE otherwise
    -

    Since 0.9

    -
    -
    -
    -

    gst_object_suggest_next_sync ()

    -
    GstClockTime        gst_object_suggest_next_sync        (GObject *object);
    -

    -Convenience function for GObject -

    -
    -- - - - - - - - - - -

    object :

    the object that has controlled properties

    Returns :

    same thing as gst_controller_suggest_next_sync() -
    -

    Since 0.10.13

    -
    -
    -
    -

    gst_object_sync_values ()

    -
    gboolean            gst_object_sync_values              (GObject *object,
    -                                                         GstClockTime timestamp);
    -

    -Convenience function for GObject -

    -
    -- - - - - - - - - - - - - - -

    object :

    the object that has controlled properties

    timestamp :

    the time that should be processed

    Returns :

    same thing as gst_controller_sync_values() -
    -

    Since 0.9

    -
    -
    -
    -

    gst_object_get_control_source ()

    -
    GstControlSource *  gst_object_get_control_source       (GObject *object,
    -                                                         const gchar *property_name);
    -

    -Gets the corresponding GstControlSource for the property. This should be unreferenced -again after use. -

    -
    -- - - - - - - - - - - - - - -

    object :

    the object

    property_name :

    name of the property for which the GstControlSource should be get

    Returns :

    the GstControlSource for property_name or NULL if the property is not -controlled by this controller or no GstControlSource was assigned yet.
    -

    Since 0.10.14

    -
    -
    -
    -

    gst_object_set_control_source ()

    -
    gboolean            gst_object_set_control_source       (GObject *object,
    -                                                         const gchar *property_name,
    -                                                         GstControlSource *csource);
    -

    -Sets the GstControlSource for property_name. If there already was a GstControlSource -for this property it will be unreferenced. -

    -
    -- - - - - - - - - - - - - - - - - - -

    object :

    the controller object

    property_name :

    name of the property for which the GstControlSource should be set

    csource :

    the GstControlSource that should be used for the property

    Returns :

    -FALSE if the given property isn't handled by the controller or the new GstControlSource -couldn't be bound to the property, TRUE if everything worked as expected.
    -

    Since 0.10.14

    -
    -
    -
    -

    gst_object_get_value_arrays ()

    -
    gboolean            gst_object_get_value_arrays         (GObject *object,
    -                                                         GstClockTime timestamp,
    -                                                         GSList *value_arrays);
    -

    -Function to be able to get an array of values for one or more given element -properties. -

    -

    -If the GstValueArray->values array in list nodes is NULL, it will be created -by the function. -The type of the values in the array are the same as the property's type. -

    -

    -The g_object_* functions are just convenience functions for GObject -

    -
    -- - - - - - - - - - - - - - - - - - -

    object :

    the object that has controlled properties

    timestamp :

    the time that should be processed

    value_arrays :

    list to return the control-values in

    Returns :

    -TRUE if the given array(s) could be filled, FALSE otherwise
    -

    Since 0.9

    -
    -
    -
    -

    gst_object_get_value_array ()

    -
    gboolean            gst_object_get_value_array          (GObject *object,
    -                                                         GstClockTime timestamp,
    -                                                         GstValueArray *value_array);
    -

    -Function to be able to get an array of values for one element properties -

    -

    -If the GstValueArray->values array is NULL, it will be created by the function. -The type of the values in the array are the same as the property's type. -

    -

    -The g_object_* functions are just convenience functions for GObject -

    -
    -- - - - - - - - - - - - - - - - - - -

    object :

    the object that has controlled properties

    timestamp :

    the time that should be processed

    value_array :

    array to put control-values in

    Returns :

    -TRUE if the given array(s) could be filled, FALSE otherwise
    -

    Since 0.9

    -
    -
    -
    -

    gst_object_get_control_rate ()

    -
    GstClockTime        gst_object_get_control_rate         (GObject *object);
    -

    -Obtain the control-rate for this object. Audio processing GstElement -objects will use this rate to sub-divide their processing loop and call -gst_object_sync_values() inbetween. The length of the processing segment -should be up to control-rate nanoseconds. -

    -

    -If the object is not under property control, this will return -GST_CLOCK_TIME_NONE. This allows the element to avoid the sub-dividing. -

    -

    -The control-rate is not expected to change if the element is in -GST_STATE_PAUSED or GST_STATE_PLAYING. -

    -
    -- - - - - - - - - - -

    object :

    the object that has controlled properties

    Returns :

    the control rate in nanoseconds
    -

    Since 0.10.10

    -
    -
    -
    -

    gst_object_set_control_rate ()

    -
    void                gst_object_set_control_rate         (GObject *object,
    -                                                         GstClockTime control_rate);
    -

    -Change the control-rate for this object. Audio processing GstElement -objects will use this rate to sub-divide their processing loop and call -gst_object_sync_values() inbetween. The length of the processing segment -should be up to control-rate nanoseconds. -

    -

    -The control-rate should not change if the element is in GST_STATE_PAUSED or -GST_STATE_PLAYING. -

    -
    -- - - - - - - - - - -

    object :

    the object that has controlled properties

    control_rate :

    the new control-rate in nanoseconds.
    -

    Since 0.10.10

    -
    -
    -
    -

    See Also

    -GstController -
    -
    - - - \ No newline at end of file diff --git a/docs/libs/html/gstreamer-libs-GstDataQueue.html b/docs/libs/html/gstreamer-libs-GstDataQueue.html deleted file mode 100644 index d79ee2c..0000000 --- a/docs/libs/html/gstreamer-libs-GstDataQueue.html +++ /dev/null @@ -1,544 +0,0 @@ - - - - -GstDataQueue - - - - - - - - - - - - - - - - - - - -
    -
    -
    - - -
    -

    GstDataQueue

    -

    GstDataQueue — Threadsafe queueing object

    -
    - -
    -

    Description

    -

    -GstDataQueue is an object that handles threadsafe queueing of objects. It -also provides size-related functionality. This object should be used for -any GstElement that wishes to provide some sort of queueing functionality. -

    -
    -
    -

    Details

    -
    -

    struct GstDataQueue

    -
    struct GstDataQueue {
    -  GObject object;
    -};
    -
    -

    -Opaque GstDataQueue structure. -

    -
    -- - - - -

    GObject object;

    the parent structure
    -

    Since 0.10.11

    -
    -
    -
    -

    struct GstDataQueueSize

    -
    struct GstDataQueueSize {
    -  guint visible;
    -  guint bytes;
    -  guint64 time;
    -};
    -
    -

    -Structure describing the size of a queue. -

    -
    -- - - - - - - - - - - - - - -

    guint visible;

    number of buffers

    guint bytes;

    number of bytes

    guint64 time;

    amount of time
    -

    Since 0.10.11

    -
    -
    -
    -

    GstDataQueueCheckFullFunction ()

    -
    gboolean            (*GstDataQueueCheckFullFunction)    (GstDataQueue *queue,
    -                                                         guint visible,
    -                                                         guint bytes,
    -                                                         guint64 time,
    -                                                         gpointer checkdata);
    -

    -The prototype of the function used to inform the queue that it should be -considered as full. -

    -
    -- - - - - - - - - - - - - - - - - - - - - - - - - - -

    queue :

    a GstDataQueue.

    visible :

    The number of visible items currently in the queue.

    bytes :

    The amount of bytes currently in the queue.

    time :

    The accumulated duration of the items currently in the queue.

    checkdata :

    The gpointer registered when the GstDataQueue was created.

    Returns :

    -TRUE if the queue should be considered full.
    -

    Since 0.10.11

    -
    -
    -
    -

    struct GstDataQueueItem

    -
    struct GstDataQueueItem {
    -  GstMiniObject *object;
    -  guint size;
    -  guint64 duration;
    -  gboolean visible;
    -
    -  /* user supplied destroy function */
    -  GDestroyNotify destroy;
    -};
    -
    -

    -Structure used by GstDataQueue. You can supply a different structure, as -long as the top of the structure is identical to this structure. -

    -
    -- - - - - - - - - - - - - - - - - - - - - - -

    GstMiniObject *object;

    the GstMiniObject to queue.

    guint size;

    the size in bytes of the miniobject.

    guint64 duration;

    the duration in GstClockTime of the miniobject. Can not be -GST_CLOCK_TIME_NONE.

    gboolean visible;

    -TRUE if object should be considered as a visible object.

    GDestroyNotify destroy;

    The GDestroyNotify function to use to free the GstDataQueueItem. -This function should also drop the reference to object the owner of the -GstDataQueueItem is assumed to hold.
    -

    Since 0.10.11

    -
    -
    -
    -

    GstDataQueueEmptyCallback ()

    -
    void                (*GstDataQueueEmptyCallback)        (GstDataQueue *queue,
    -                                                         gpointer checkdata);
    -
    -
    -
    -

    GstDataQueueFullCallback ()

    -
    void                (*GstDataQueueFullCallback)         (GstDataQueue *queue,
    -                                                         gpointer checkdata);
    -
    -
    -
    -

    gst_data_queue_new ()

    -
    GstDataQueue *      gst_data_queue_new                  (GstDataQueueCheckFullFunction checkfull,
    -                                                         gpointer checkdata);
    -
    -- - - - - - - - - - - - - - -

    checkfull :

    the callback used to tell if the element considers the queue full -or not.

    checkdata :

    a gpointer that will be given in the checkfull callback.

    Returns :

    a new GstDataQueue.
    -
    -
    -
    -

    gst_data_queue_new_full ()

    -
    GstDataQueue *      gst_data_queue_new_full             (GstDataQueueCheckFullFunction checkfull,
    -                                                         GstDataQueueFullCallback fullcallback,
    -                                                         GstDataQueueEmptyCallback emptycallback,
    -                                                         gpointer checkdata);
    -

    -Creates a new GstDataQueue. The difference with gst_data_queue_new is that it will -not emit the 'full' and 'empty' signals, but instead calling directly fullcallback -or emptycallback. -

    -
    -- - - - - - - - - - - - - - - - - - - - - - -

    checkfull :

    the callback used to tell if the element considers the queue full -or not.

    fullcallback :

    the callback which will be called when the queue is considered full.

    emptycallback :

    the callback which will be called when the queue is considered empty.

    checkdata :

    a gpointer that will be given in the checkfull callback.

    Returns :

    a new GstDataQueue.
    -

    Since 0.10.26

    -
    -
    -
    -

    gst_data_queue_push ()

    -
    gboolean            gst_data_queue_push                 (GstDataQueue *queue,
    -                                                         GstDataQueueItem *item);
    -

    -Pushes a GstDataQueueItem (or a structure that begins with the same fields) -on the queue. If the queue is full, the call will block until space is -available, OR the queue is set to flushing state. -MT safe. -

    -

    -Note that this function has slightly different semantics than gst_pad_push() -and gst_pad_push_event(): this function only takes ownership of item and -the GstMiniObject contained in item if the push was successful. If FALSE -is returned, the caller is responsible for freeing item and its contents. -

    -
    -- - - - - - - - - - - - - - -

    queue :

    a GstDataQueue.

    item :

    a GstDataQueueItem.

    Returns :

    -TRUE if the item was successfully pushed on the queue.
    -

    Since 0.10.11

    -
    -
    -
    -

    gst_data_queue_pop ()

    -
    gboolean            gst_data_queue_pop                  (GstDataQueue *queue,
    -                                                         GstDataQueueItem **item);
    -

    -Retrieves the first item available on the queue. If the queue is currently -empty, the call will block until at least one item is available, OR the -queue is set to the flushing state. -MT safe. -

    -
    -- - - - - - - - - - - - - - -

    queue :

    a GstDataQueue.

    item :

    pointer to store the returned GstDataQueueItem.

    Returns :

    -TRUE if an item was successfully retrieved from the queue.
    -

    Since 0.10.11

    -
    -
    -
    -

    gst_data_queue_flush ()

    -
    void                gst_data_queue_flush                (GstDataQueue *queue);
    -

    -Flushes all the contents of the queue. Any call to gst_data_queue_push and -gst_data_queue_pop will be released. -MT safe. -

    -
    -- - - - -

    queue :

    a GstDataQueue.
    -

    Since 0.10.11

    -
    -
    -
    -

    gst_data_queue_set_flushing ()

    -
    void                gst_data_queue_set_flushing         (GstDataQueue *queue,
    -                                                         gboolean flushing);
    -

    -Sets the queue to flushing state if flushing is TRUE. If set to flushing -state, any incoming data on the queue will be discarded. Any call currently -blocking on gst_data_queue_push or gst_data_queue_pop will return straight -away with a return value of FALSE. While the queue is in flushing state, -all calls to those two functions will return FALSE. -

    -

    -MT Safe. -

    -
    -- - - - - - - - - - -

    queue :

    a GstDataQueue.

    flushing :

    a gboolean stating if the queue will be flushing or not.
    -

    Since 0.10.11

    -
    -
    -
    -

    gst_data_queue_drop_head ()

    -
    gboolean            gst_data_queue_drop_head            (GstDataQueue *queue,
    -                                                         GType type);
    -

    -Pop and unref the head-most GstMiniObject with the given GType. -

    -
    -- - - - - - - - - - - - - - -

    queue :

    The GstDataQueue to drop an item from.

    type :

    The GType of the item to drop.

    Returns :

    TRUE if an element was removed.
    -

    Since 0.10.11

    -
    -
    -
    -

    gst_data_queue_is_full ()

    -
    gboolean            gst_data_queue_is_full              (GstDataQueue *queue);
    -

    -Queries if queue is full. This check will be done using the -GstDataQueueCheckFullFunction registered with queue. -MT safe. -

    -
    -- - - - - - - - - - -

    queue :

    a GstDataQueue.

    Returns :

    -TRUE if queue is full.
    -

    Since 0.10.11

    -
    -
    -
    -

    gst_data_queue_is_empty ()

    -
    gboolean            gst_data_queue_is_empty             (GstDataQueue *queue);
    -

    -Queries if there are any items in the queue. -MT safe. -

    -
    -- - - - - - - - - - -

    queue :

    a GstDataQueue.

    Returns :

    -TRUE if queue is empty.
    -

    Since 0.10.11

    -
    -
    -
    -

    gst_data_queue_get_level ()

    -
    void                gst_data_queue_get_level            (GstDataQueue *queue,
    -                                                         GstDataQueueSize *level);
    -

    -Get the current level of the queue. -

    -
    -- - - - - - - - - - -

    queue :

    The GstDataQueue -

    level :

    the location to store the result
    -

    Since 0.10.11

    -
    -
    -
    -

    gst_data_queue_limits_changed ()

    -
    void                gst_data_queue_limits_changed       (GstDataQueue *queue);
    -

    -Inform the queue that the limits for the fullness check have changed and that -any blocking gst_data_queue_push() should be unblocked to recheck the limts. -

    -
    -- - - - -

    queue :

    The GstDataQueue -
    -

    Since 0.10.11

    -
    -
    -
    - - - \ No newline at end of file diff --git a/docs/libs/html/gstreamer-libs-GstNetTimePacket.html b/docs/libs/html/gstreamer-libs-GstNetTimePacket.html index e6f0c2e..53f1ee6 100644 --- a/docs/libs/html/gstreamer-libs-GstNetTimePacket.html +++ b/docs/libs/html/gstreamer-libs-GstNetTimePacket.html @@ -3,8 +3,8 @@ GstNetTimePacket - - + + @@ -17,7 +17,7 @@ Prev Up Home -GStreamer 0.11 Library Reference Manual +GStreamer 1.0 Library Reference Manual Next @@ -43,15 +43,15 @@ struct GstNetTimePacket; #define GST_NET_TIME_PACKET_SIZE -GstNetTimePacket * gst_net_time_packet_new (const guint8 *buffer); -GstNetTimePacket * gst_net_time_packet_receive (gint fd, - struct sockaddr *addr, - socklen_t *len); -gint gst_net_time_packet_send (const GstNetTimePacket *packet, - gint fd, - struct sockaddr *addr, - socklen_t len); -guint8 * gst_net_time_packet_serialize (const GstNetTimePacket *packet); +GstNetTimePacket * gst_net_time_packet_new (const guint8 *buffer); +GstNetTimePacket * gst_net_time_packet_receive (GSocket *socket, + GSocketAddress **src_address, + GError **error); +gboolean gst_net_time_packet_send (const GstNetTimePacket *packet, + GSocket *socket, + GSocketAddress *dest_address, + GError **error); +guint8 * gst_net_time_packet_serialize (const GstNetTimePacket *packet);
    @@ -80,11 +80,11 @@ Content of a -

    GstClockTime local_time;

    +

    GstClockTime local_time;

    the local time when this packet was sent -

    GstClockTime remote_time;

    +

    GstClockTime remote_time;

    the remote time observation @@ -102,7 +102,7 @@ The size of the packets sent between network clocks.

    gst_net_time_packet_new ()

    -
    GstNetTimePacket *  gst_net_time_packet_new             (const guint8 *buffer);
    +
    GstNetTimePacket *  gst_net_time_packet_new             (const guint8 *buffer);

    Creates a new GstNetTimePacket from a buffer received over the network. The caller is responsible for ensuring that buffer is at least @@ -110,7 +110,7 @@ caller is responsible for ensuring that buffer

    If buffer is NULL, the local and remote times will be set to -GST_CLOCK_TIME_NONE. +GST_CLOCK_TIME_NONE.

    MT safe. Caller owns return value (g_free to free). @@ -132,36 +132,34 @@ MT safe. Caller owns return value (g_free to free).


    gst_net_time_packet_receive ()

    -
    GstNetTimePacket *  gst_net_time_packet_receive         (gint fd,
    -                                                         struct sockaddr *addr,
    -                                                         socklen_t *len);
    +
    GstNetTimePacket *  gst_net_time_packet_receive         (GSocket *socket,
    +                                                         GSocketAddress **src_address,
    +                                                         GError **error);

    -Receives a GstNetTimePacket over a socket. Handles interrupted system calls, -but otherwise returns NULL on error. See recvfrom(2) for more information on -how to interpret sockaddr. -

    -

    -MT safe. Caller owns return value (g_free to free). +Receives a GstNetTimePacket over a socket. Handles interrupted system +calls, but otherwise returns NULL on error.

    - - + + - - + + - - + + - +

    fd :

    a file descriptor created by socket(2)

    socket :

    socket to receive the time packet on

    addr :

    a pointer to a sockaddr to hold the address of the sender

    src_addr :

    address of variable to return sender address. [out] +

    len :

    a pointer to the size of the data pointed to by addr -

    err :

    return address for a GError, or NULL

    Returns :

    The new GstNetTimePacket.a new GstNetTimePacket, or NULL on error. Free +with g_free() when done. [transfer full] +
    @@ -169,13 +167,12 @@ MT safe. Caller owns return value (g_free to free).

    gst_net_time_packet_send ()

    -
    gint                gst_net_time_packet_send            (const GstNetTimePacket *packet,
    -                                                         gint fd,
    -                                                         struct sockaddr *addr,
    -                                                         socklen_t len);
    +
    gboolean            gst_net_time_packet_send            (const GstNetTimePacket *packet,
    +                                                         GSocket *socket,
    +                                                         GSocketAddress *dest_address,
    +                                                         GError **error);

    -Sends a GstNetTimePacket over a socket. Essentially a thin wrapper around -sendto(2) and gst_net_time_packet_serialize(). +Sends a GstNetTimePacket over a socket.

    MT safe. @@ -185,25 +182,23 @@ MT safe.

    packet :

    -the GstNetTimePacket - +the GstNetTimePacket to send -

    fd :

    -a file descriptor created by socket(2) +

    socket :

    +socket to send the time packet on -

    addr :

    -a pointer to a sockaddr to hold the address of the sender +

    dest_addr :

    +address to send the time packet to -

    len :

    -the size of the data pointed to by addr - +

    err :

    +return address for a GError, or NULL

    Returns :

    -The return value of sendto(2). +TRUE if successful, FALSE in case an error occured.
    @@ -211,7 +206,7 @@ MT safe.

    gst_net_time_packet_serialize ()

    -
    guint8 *            gst_net_time_packet_serialize       (const GstNetTimePacket *packet);
    +
    guint8 *            gst_net_time_packet_serialize       (const GstNetTimePacket *packet);

    Serialized a GstNetTimePacket into a newly-allocated sequence of GST_NET_TIME_PACKET_SIZE bytes, in network byte order. The value returned is @@ -239,7 +234,7 @@ MT safe. Caller owns return value (g_free to free).

    @@ -66,20 +66,17 @@ Opaque consistency checker handle.

    gst_consistency_checker_new ()

    -
    GstStreamConsistency * gst_consistency_checker_new      (GstPad *pad);
    +
    GstStreamConsistency * gst_consistency_checker_new      (GstPad *pad);

    Sets up a data probe on the given pad which will raise assertions if the data flow is inconsistent.

    -

    -Currently only works for source pads. -

    - + @@ -110,7 +107,7 @@ Reset the stream checker's internal variables.

    gst_consistency_checker_free ()

    void                gst_consistency_checker_free        (GstStreamConsistency *consist);

    -Frees the allocated data and probe associated with consist. +Frees the allocated data and probes associated with consist.

    pad :

    The GstPad on which the dataflow will be checked.The GstPad on which the dataflow will be checked.

    Returns :

    diff --git a/docs/libs/html/gstreamer-libs-GstTypeFindHelper.html b/docs/libs/html/gstreamer-libs-GstTypeFindHelper.html index 3dc6dd6..1afd585 100644 --- a/docs/libs/html/gstreamer-libs-GstTypeFindHelper.html +++ b/docs/libs/html/gstreamer-libs-GstTypeFindHelper.html @@ -3,22 +3,22 @@ GstTypeFindHelper - - + + - - + +
    - + - - + + - @@ -102,8 +100,8 @@ Free-function: gst_caps_unref - @@ -112,17 +110,17 @@ Returns

    gst_type_find_helper_for_buffer ()

    -
    GstCaps *           gst_type_find_helper_for_buffer     (GstObject *obj,
    -                                                         GstBuffer *buf,
    -                                                         GstTypeFindProbability *prob);
    +
    GstCaps *           gst_type_find_helper_for_buffer     (GstObject *obj,
    +                                                         GstBuffer *buf,
    +                                                         GstTypeFindProbability *prob);

    -Tries to find what type of data is contained in the given GstBuffer, the +Tries to find what type of data is contained in the given GstBuffer, the assumption being that the buffer represents the beginning of the stream or file.

    All available typefinders will be called on the data in order of rank. If -a typefinding function returns a probability of GST_TYPE_FIND_MAXIMUM, +a typefinding function returns a probability of GST_TYPE_FIND_MAXIMUM, typefinding is stopped immediately and the found caps will be returned right away. Otherwise, all available typefind functions will the tried, and the caps with the highest probability will be returned, or NULL if @@ -140,7 +138,7 @@ Free-function: gst_caps_unref

    - @@ -151,9 +149,9 @@ caps, or Returns :

    -
    @@ -162,10 +160,10 @@ with

    gst_type_find_helper_for_extension ()

    -
    GstCaps *           gst_type_find_helper_for_extension  (GstObject *obj,
    +
    GstCaps *           gst_type_find_helper_for_extension  (GstObject *obj,
                                                              const gchar *extension);

    -Tries to find the best GstCaps associated with extension. +Tries to find the best GstCaps associated with extension.

    All available typefinders will be checked against the extension in order @@ -189,9 +187,9 @@ Free-function: gst_caps_unref

    - @@ -201,10 +199,10 @@ returned with

    gst_type_find_helper_for_data ()

    -
    GstCaps *           gst_type_find_helper_for_data       (GstObject *obj,
    -                                                         const guint8 *data,
    -                                                         gsize size,
    -                                                         GstTypeFindProbability *prob);
    +
    GstCaps *           gst_type_find_helper_for_data       (GstObject *obj,
    +                                                         const guint8 *data,
    +                                                         gsize size,
    +                                                         GstTypeFindProbability *prob);

    Tries to find what type of data is contained in the given data, the assumption being that the data represents the beginning of the stream or @@ -212,7 +210,7 @@ file.

    All available typefinders will be called on the data in order of rank. If -a typefinding function returns a probability of GST_TYPE_FIND_MAXIMUM, +a typefinding function returns a probability of GST_TYPE_FIND_MAXIMUM, typefinding is stopped immediately and the found caps will be returned right away. Otherwise, all available typefind functions will the tried, and the caps with the highest probability will be returned, or NULL if @@ -246,9 +244,9 @@ caps, or Returns :

    -
    @@ -257,11 +255,12 @@ with

    GstTypeFindHelperGetRangeFunction ()

    -
    GstFlowReturn       (*GstTypeFindHelperGetRangeFunction)
    -                                                        (GstObject *obj,
    -                                                         guint64 offset,
    +
    GstFlowReturn       (*GstTypeFindHelperGetRangeFunction)
    +                                                        (GstObject *obj,
    +                                                         GstObject *parent,
    +                                                         guint64 offset,
                                                              guint length,
    -                                                         GstBuffer **buffer);
    + GstBuffer **buffer);

    This function will be called by gst_type_find_helper_get_range() when typefinding functions request to peek at the data of a stream at certain @@ -270,14 +269,18 @@ stored in buffer. The contents of

    -This function is supposed to behave exactly like a GstPadGetRangeFunction. +This function is supposed to behave exactly like a GstPadGetRangeFunction.

    - + + + + + @@ -301,64 +304,12 @@ This function is supposed to behave exactly like a

    gst_type_find_helper_get_range ()

    -
    GstCaps *           gst_type_find_helper_get_range      (GstObject *obj,
    +
    GstCaps *           gst_type_find_helper_get_range      (GstObject *obj,
    +                                                         GstObject *parent,
                                                              GstTypeFindHelperGetRangeFunction func,
    -                                                         guint64 size,
    -                                                         GstTypeFindProbability *prob);
    -

    -Utility function to do pull-based typefinding. Unlike gst_type_find_helper() -however, this function will use the specified function func to obtain the -data needed by the typefind functions, rather than operating on a given -source pad. This is useful mostly for elements like tag demuxers which -strip off data at the beginning and/or end of a file and want to typefind -the stripped data stream before adding their own source pad (the specified -callback can then call the upstream peer pad with offsets adjusted for the -tag size, for example). -

    -

    -Free-function: gst_caps_unref -

    -

    obj :

    a GstObject that will handle the getrange requesta GstObject that will handle the getrange request

    parent :

    the parent of obj or NULL

    offset :

    -- - - - - - - - - - - - - - - - - - - - - - -

    obj :

    A GstObject that will be passed as first argument to func -

    func :

    A generic GstTypeFindHelperGetRangeFunction that will -be used to access data at random offsets when doing the typefinding. [scope call] -

    size :

    The length in bytes

    prob :

    location to store the probability of the found -caps, or NULL. [out][allow-none] -

    Returns :

    the GstCaps corresponding to the data stream. -Returns NULL if no GstCaps matches the data stream. [transfer full] -
    -
    -
    -
    -

    gst_type_find_helper_get_range_ext ()

    -
    GstCaps *           gst_type_find_helper_get_range_ext  (GstObject *obj,
    -                                                         GstTypeFindHelperGetRangeFunction func,
    -                                                         guint64 size,
    +                                                         guint64 size,
                                                              const gchar *extension,
    -                                                         GstTypeFindProbability *prob);
    + GstTypeFindProbability *prob);

    Utility function to do pull-based typefinding. Unlike gst_type_find_helper() however, this function will use the specified function func to obtain the @@ -382,10 +333,14 @@ Free-function: gst_caps_unref

    obj :

    -A GstObject that will be passed as first argument to func +A GstObject that will be passed as first argument to func +

    parent :

    +the parent of obj or NULL + +

    func :

    A generic GstTypeFindHelperGetRangeFunction that will be used to access data at random offsets when doing the typefinding. [scope call] @@ -407,8 +362,8 @@ caps, or Returns :

    -the
    GstCaps corresponding to the data stream. -Returns NULL if no GstCaps matches the data stream. [transfer full] +the GstCaps corresponding to the data stream. +Returns NULL if no GstCaps matches the data stream. [transfer full] diff --git a/docs/libs/html/gstreamer-libs-gstdataprotocol.html b/docs/libs/html/gstreamer-libs-gstdataprotocol.html deleted file mode 100644 index d8236c7..0000000 --- a/docs/libs/html/gstreamer-libs-gstdataprotocol.html +++ /dev/null @@ -1,671 +0,0 @@ - - - - -gstdataprotocol - - - - - - - - - - - - - - - - - - - -
    -
    -
    - - -
    -

    gstdataprotocol

    -

    gstdataprotocol — Serialization of caps, buffers and events.

    -
    -
    -

    Synopsis

    -
    -#include <gst/dataprotocol/dataprotocol.h>
    -
    -enum                GstDPHeaderFlag;
    -enum                GstDPPayloadType;
    -#define             GST_DP_HEADER_LENGTH
    -enum                GstDPVersion;
    -#define             GST_DP_VERSION_MAJOR
    -#define             GST_DP_VERSION_MINOR
    -void                gst_dp_init                         (void);
    -gboolean            (*GstDPHeaderFromBufferFunction)    (const GstBuffer *buffer,
    -                                                         GstDPHeaderFlag flags,
    -                                                         guint *length,
    -                                                         guint8 **header);
    -gboolean            (*GstDPPacketFromCapsFunction)      (const GstCaps *caps,
    -                                                         GstDPHeaderFlag flags,
    -                                                         guint *length,
    -                                                         guint8 **header,
    -                                                         guint8 **payload);
    -gboolean            (*GstDPPacketFromEventFunction)     (const GstEvent *event,
    -                                                         GstDPHeaderFlag flags,
    -                                                         guint *length,
    -                                                         guint8 **header,
    -                                                         guint8 **payload);
    -                    GstDPPacketizer;
    -GstDPPacketizer *   gst_dp_packetizer_new               (GstDPVersion version);
    -void                gst_dp_packetizer_free              (GstDPPacketizer *packetizer);
    -guint16             gst_dp_crc                          (const guint8 *buffer,
    -                                                         guint length);
    -guint32             gst_dp_header_payload_length        (const guint8 *header);
    -GstDPPayloadType    gst_dp_header_payload_type          (const guint8 *header);
    -GstBuffer *         gst_dp_buffer_from_header           (guint header_length,
    -                                                         const guint8 *header);
    -GstCaps *           gst_dp_caps_from_packet             (guint header_length,
    -                                                         const guint8 *header,
    -                                                         const guint8 *payload);
    -GstEvent *          gst_dp_event_from_packet            (guint header_length,
    -                                                         const guint8 *header,
    -                                                         const guint8 *payload);
    -gboolean            gst_dp_validate_header              (guint header_length,
    -                                                         const guint8 *header);
    -gboolean            gst_dp_validate_payload             (guint header_length,
    -                                                         const guint8 *header,
    -                                                         const guint8 *payload);
    -gboolean            gst_dp_validate_packet              (guint header_length,
    -                                                         const guint8 *header,
    -                                                         const guint8 *payload);
    -
    -
    -
    -

    Description

    -

    -This helper library provides serialization of GstBuffer, GstCaps and -GstEvent structures. -

    -

    -This serialization is useful when GStreamer needs to interface with -the outside world to transport data between distinct GStreamer pipelines. -The connections with the outside world generally don't have mechanisms -to transport properties of these structures. -

    -

    -For example, transporting buffers across named pipes or network connections -doesn't maintain the buffer size and separation. -

    -

    -This data protocol assumes a reliable connection-oriented transport, such as -TCP, a pipe, or a file. The protocol does not serialize the caps for -each buffer; instead, it transport the caps only when they change in the -stream. This implies that there will always be a caps packet before any -buffer packets. -

    -

    -The versioning of the protocol is independent of GStreamer's version. -The major number gets incremented, and the minor reset, for incompatible -changes. The minor number gets incremented for compatible changes that -allow clients who do not completely understand the newer protocol version -to still decode what they do understand. -

    -

    -Version 0.2 serializes only a small subset of all events, with a custom -payload for each type. Also, all GDP streams start with the initial caps -packet. -

    -

    -Version 1.0 serializes all events by taking the string representation of -the event as the payload. In addition, GDP streams can now start with -events as well, as required by the new data stream model in GStreamer 0.10. -

    -

    -Converting buffers, caps and events to GDP buffers is done using a -GstDPPacketizer object and invoking its packetizer functions. -For backwards-compatibility reasons, the old 0.2 methods are still -available but deprecated. -

    -

    -For reference, this image shows the byte layout of the GDP header: -

    -

    - -

    -
    -
    -

    Details

    -
    -

    enum GstDPHeaderFlag

    -
    typedef enum {
    -  GST_DP_HEADER_FLAG_NONE        = 0,
    -  GST_DP_HEADER_FLAG_CRC_HEADER  = (1 << 0),
    -  GST_DP_HEADER_FLAG_CRC_PAYLOAD = (1 << 1),
    -  GST_DP_HEADER_FLAG_CRC         = (1 << 1) | (1 << 0),
    -} GstDPHeaderFlag;
    -
    -

    -header flags for the dataprotocol. -

    -
    -- - - - - - - - - - - - - - - - - - -

    GST_DP_HEADER_FLAG_NONE

    No flag present. -

    GST_DP_HEADER_FLAG_CRC_HEADER

    a header CRC field is present. -

    GST_DP_HEADER_FLAG_CRC_PAYLOAD

    a payload CRC field is present. -

    GST_DP_HEADER_FLAG_CRC

    a CRC for header and payload is present. -
    -
    -
    -
    -

    enum GstDPPayloadType

    -
    typedef enum {
    -  GST_DP_PAYLOAD_NONE            = 0,
    -  GST_DP_PAYLOAD_BUFFER,
    -  GST_DP_PAYLOAD_CAPS,
    -  GST_DP_PAYLOAD_EVENT_NONE      = 64,
    -} GstDPPayloadType;
    -
    -

    -The GDP payload types. a GstEvent payload type is encoded with the -event type number starting from GST_DP_PAYLOAD_EVENT_NONE. -

    -
    -- - - - - - - - - - - - - - - - - - -

    GST_DP_PAYLOAD_NONE

    Invalid payload type. -

    GST_DP_PAYLOAD_BUFFER

    -GstBuffer payload packet. -

    GST_DP_PAYLOAD_CAPS

    -GstCaps payload packet. -

    GST_DP_PAYLOAD_EVENT_NONE

    First value of GstEvent payload packets. -
    -
    -
    -
    -

    GST_DP_HEADER_LENGTH

    -
    #define GST_DP_HEADER_LENGTH 62
    -
    -

    -The header size in bytes. -

    -
    -
    -
    -

    enum GstDPVersion

    -
    typedef enum {
    -  GST_DP_VERSION_0_2 = 1,
    -  GST_DP_VERSION_1_0,
    -} GstDPVersion;
    -
    -

    -The version of the GDP protocol being used. -

    -
    -- - - - - - - - - - -

    GST_DP_VERSION_0_2

    protocol version 0.2 -

    GST_DP_VERSION_1_0

    protocol version 1.0 -
    -
    -
    -
    -

    GST_DP_VERSION_MAJOR

    -
    #define GST_DP_VERSION_MAJOR 0
    -
    -

    -The major version number of the GStreamer Data Protocol. -

    -
    -
    -
    -

    GST_DP_VERSION_MINOR

    -
    #define GST_DP_VERSION_MINOR 2
    -
    -

    -The minor version number of the GStreamer Data Protocol. -

    -
    -
    -
    -

    gst_dp_init ()

    -
    void                gst_dp_init                         (void);
    -

    -Initialize GStreamer Data Protocol library. -

    -

    -Should be called before using these functions from source linking -to this source file. -

    -
    -
    -
    -

    GstDPHeaderFromBufferFunction ()

    -
    gboolean            (*GstDPHeaderFromBufferFunction)    (const GstBuffer *buffer,
    -                                                         GstDPHeaderFlag flags,
    -                                                         guint *length,
    -                                                         guint8 **header);
    -
    -
    -
    -

    GstDPPacketFromCapsFunction ()

    -
    gboolean            (*GstDPPacketFromCapsFunction)      (const GstCaps *caps,
    -                                                         GstDPHeaderFlag flags,
    -                                                         guint *length,
    -                                                         guint8 **header,
    -                                                         guint8 **payload);
    -
    -
    -
    -

    GstDPPacketFromEventFunction ()

    -
    gboolean            (*GstDPPacketFromEventFunction)     (const GstEvent *event,
    -                                                         GstDPHeaderFlag flags,
    -                                                         guint *length,
    -                                                         guint8 **header,
    -                                                         guint8 **payload);
    -
    -
    -
    -

    GstDPPacketizer

    -
    typedef struct {
    -  GstDPVersion version;
    -
    -  GstDPHeaderFromBufferFunction header_from_buffer;
    -  GstDPPacketFromCapsFunction packet_from_caps;
    -  GstDPPacketFromEventFunction packet_from_event;
    -} GstDPPacketizer;
    -
    -

    -Data protocol packetizer handle. -

    -
    -- - - - - - - - - - - - - - - - - - -

    GstDPVersion version;

    the GstDPVersion of the protocol to be used

    GstDPHeaderFromBufferFunction header_from_buffer;

    buffer serializer function

    GstDPPacketFromCapsFunction packet_from_caps;

    caps serializer function

    GstDPPacketFromEventFunction packet_from_event;

    event serializer function
    -
    -
    -
    -

    gst_dp_packetizer_new ()

    -
    GstDPPacketizer *   gst_dp_packetizer_new               (GstDPVersion version);
    -

    -Creates a new packetizer. -

    -
    -- - - - - - - - - - -

    version :

    the GstDPVersion of the protocol to packetize for.

    Returns :

    a newly allocated GstDPPacketizer -
    -
    -
    -
    -

    gst_dp_packetizer_free ()

    -
    void                gst_dp_packetizer_free              (GstDPPacketizer *packetizer);
    -

    -Free the given packetizer. -

    -
    -- - - - -

    packetizer :

    the GstDPPacketizer to free.
    -
    -
    -
    -

    gst_dp_crc ()

    -
    guint16             gst_dp_crc                          (const guint8 *buffer,
    -                                                         guint length);
    -

    -Calculate a CRC for the given buffer over the given number of bytes. -This is only provided for verification purposes; typical GDP users -will not need this function. -

    -
    -- - - - - - - - - - - - - - -

    buffer :

    array of bytes

    length :

    the length of buffer -

    Returns :

    a two-byte CRC checksum.
    -
    -
    -
    -

    gst_dp_header_payload_length ()

    -
    guint32             gst_dp_header_payload_length        (const guint8 *header);
    -

    -Get the length of the payload described by header. -

    -
    -- - - - - - - - - - -

    header :

    the byte header of the packet array

    Returns :

    the length of the payload this header describes.
    -
    -
    -
    -

    gst_dp_header_payload_type ()

    -
    GstDPPayloadType    gst_dp_header_payload_type          (const guint8 *header);
    -

    -Get the type of the payload described by header. -

    -
    -- - - - - - - - - - -

    header :

    the byte header of the packet array

    Returns :

    the GstDPPayloadType the payload this header describes.
    -
    -
    -
    -

    gst_dp_buffer_from_header ()

    -
    GstBuffer *         gst_dp_buffer_from_header           (guint header_length,
    -                                                         const guint8 *header);
    -

    -Creates a newly allocated GstBuffer from the given header. -The buffer data needs to be copied into it before validating. -

    -

    -Use this function if you want to pre-allocate a buffer based on the -packet header to read the packet payload in to. -

    -

    -This function does not check the header passed to it, use -gst_dp_validate_header() first if the header data is unchecked. -

    -
    -- - - - - - - - - - - - - - -

    header_length :

    the length of the packet header

    header :

    the byte array of the packet header

    Returns :

    A GstBuffer if the buffer was successfully created, or NULL.
    -
    -
    -
    -

    gst_dp_caps_from_packet ()

    -
    GstCaps *           gst_dp_caps_from_packet             (guint header_length,
    -                                                         const guint8 *header,
    -                                                         const guint8 *payload);
    -

    -Creates a newly allocated GstCaps from the given packet. -

    -

    -This function does not check the arguments passed to it, use -gst_dp_validate_packet() first if the header and payload data are -unchecked. -

    -
    -- - - - - - - - - - - - - - - - - - -

    header_length :

    the length of the packet header

    header :

    the byte array of the packet header

    payload :

    the byte array of the packet payload

    Returns :

    A GstCaps containing the caps represented in the packet, -or NULL if the packet could not be converted.
    -
    -
    -
    -

    gst_dp_event_from_packet ()

    -
    GstEvent *          gst_dp_event_from_packet            (guint header_length,
    -                                                         const guint8 *header,
    -                                                         const guint8 *payload);
    -

    -Creates a newly allocated GstEvent from the given packet. -

    -

    -This function does not check the arguments passed to it, use -gst_dp_validate_packet() first if the header and payload data are -unchecked. -

    -
    -- - - - - - - - - - - - - - - - - - -

    header_length :

    the length of the packet header

    header :

    the byte array of the packet header

    payload :

    the byte array of the packet payload

    Returns :

    A GstEvent if the event was successfully created, -or NULL if an event could not be read from the payload.
    -
    -
    -
    -

    gst_dp_validate_header ()

    -
    gboolean            gst_dp_validate_header              (guint header_length,
    -                                                         const guint8 *header);
    -

    -Validates the given packet header by checking the CRC checksum. -

    -
    -- - - - - - - - - - - - - - -

    header_length :

    the length of the packet header

    header :

    the byte array of the packet header

    Returns :

    -TRUE if the CRC matches, or no CRC checksum is present.
    -
    -
    -
    -

    gst_dp_validate_payload ()

    -
    gboolean            gst_dp_validate_payload             (guint header_length,
    -                                                         const guint8 *header,
    -                                                         const guint8 *payload);
    -

    -Validates the given packet payload using the given packet header -by checking the CRC checksum. -

    -
    -- - - - - - - - - - - - - - - - - - -

    header_length :

    the length of the packet header

    header :

    the byte array of the packet header

    payload :

    the byte array of the packet payload

    Returns :

    -TRUE if the CRC matches, or no CRC checksum is present.
    -
    -
    -
    -

    gst_dp_validate_packet ()

    -
    gboolean            gst_dp_validate_packet              (guint header_length,
    -                                                         const guint8 *header,
    -                                                         const guint8 *payload);
    -

    -Validates the given packet by checking version information and checksums. -

    -
    -- - - - - - - - - - - - - - - - - - -

    header_length :

    the length of the packet header

    header :

    the byte array of the packet header

    payload :

    the byte array of the packet payload

    Returns :

    -TRUE if the packet validates.
    -
    -
    -
    -

    See Also

    -GstCaps, GstEvent, GstBuffer -
    -
    - - - \ No newline at end of file diff --git a/docs/libs/html/gstreamer-libs.devhelp2 b/docs/libs/html/gstreamer-libs.devhelp2 index f546d5c..fc20d81 100644 --- a/docs/libs/html/gstreamer-libs.devhelp2 +++ b/docs/libs/html/gstreamer-libs.devhelp2 @@ -1,6 +1,6 @@ - + @@ -13,19 +13,14 @@ - + - - - + - - - - + @@ -53,7 +48,7 @@ - + @@ -66,11 +61,10 @@ - - + @@ -83,7 +77,7 @@ - + @@ -111,9 +105,7 @@ - - - + @@ -124,22 +116,21 @@ - - - + + - - + + @@ -150,15 +141,11 @@ - - - - @@ -174,7 +161,8 @@ - + + @@ -394,91 +382,63 @@ - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + - + - - - - - - - + @@ -487,40 +447,9 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + @@ -584,30 +513,26 @@ + - + + + + - - - - - - + + + + + + + + - - - - - - - - - - diff --git a/docs/libs/html/gstreamer-libs.html b/docs/libs/html/gstreamer-libs.html index 10a2e1b..c78c045 100644 --- a/docs/libs/html/gstreamer-libs.html +++ b/docs/libs/html/gstreamer-libs.html @@ -3,10 +3,10 @@ Part I. GStreamer Libraries - - - - + + + + @@ -16,7 +16,7 @@ Prev   Home -GStreamer 0.11 Library Reference Manual +GStreamer 1.0 Library Reference Manual Next
    @@ -57,22 +57,16 @@ types to a memory buffer and allows reading
    -GstCollectPads — manages a set of pads that operate in collect mode +GstCollectPads2 — manages a set of pads that operate in collect mode
    GstTypeFindHelper — Utility functions for typefinding
    -
    -GstDataQueue — Threadsafe queueing object -
    GStreamer Dynamic Parameter Control
    -GstController — dynamic parameter control subsystem -
    -
    -GstControlSource — base class for control source sources +GstTimedValueControlSource — timed value control source base class
    GstInterpolationControlSource — interpolation control source @@ -81,13 +75,9 @@ GstLFOControlSource — LFO control source
    -GstControllerGObjectGObject convenience methods for using dynamic properties +GstTriggerControlSource — interpolation control source
    -
    GStreamer Data Protocol
    -
    -gstdataprotocol — Serialization of caps, buffers and events. -
    GStreamer Network Classes
    diff --git a/docs/libs/html/gstreamer-net.html b/docs/libs/html/gstreamer-net.html index 8e54615..bddefc7 100644 --- a/docs/libs/html/gstreamer-net.html +++ b/docs/libs/html/gstreamer-net.html @@ -3,20 +3,20 @@ GStreamer Network Classes - - + + - + - + - +
    @@ -37,7 +37,7 @@

    - libgstnet-0.11.so provides network elements and objects. + libgstnet-1.0.so provides network elements and objects.

    Properties

    -  "caps"                     GstCaps*              : Read / Write
    +  "caps"                     GstCaps*              : Read / Write
     
    @@ -70,17 +70,25 @@ data format.

    -

    Example launch line

    -
    -gst-launch videotestsrc ! video/x-raw-gray ! ffmpegcolorspace ! autovideosink
    -
    Limits acceptable video from videotestsrc to be grayscale. +

    Example launch line

    +
    + + + + + + + +
    1
    gst-launch videotestsrc ! video/x-raw-gray ! ffmpegcolorspace ! autovideosink
    +
    + Limits acceptable video from videotestsrc to be grayscale.

    Synopsis

    -

    Element Information

    +

    Element Information

    @@ -103,7 +111,7 @@ gst-launch videotestsrc ! video/x-raw-gray ! ffmpegcolorspace ! autovideosink
    -

    Element Pads

    +

    Element Pads

    @@ -165,7 +173,7 @@ The opaque

    Property Details

    The "caps" property

    -
      "caps"                     GstCaps*              : Read / Write
    +
      "caps"                     GstCaps*              : Read / Write

    Restrict the possible allowed capabilities (NULL means ANY). Setting this property takes a reference to the supplied GstCaps object.

    diff --git a/docs/plugins/html/gstreamer-plugins-fakesink.html b/docs/plugins/html/gstreamer-plugins-fakesink.html index 7995394..b0f063e 100644 --- a/docs/plugins/html/gstreamer-plugins-fakesink.html +++ b/docs/plugins/html/gstreamer-plugins-fakesink.html @@ -3,8 +3,8 @@ fakesink - - + + @@ -17,7 +17,7 @@ - +
    Prev Up HomeGStreamer Core Plugins 0.11 Plugins Reference ManualGStreamer Core Plugins 1.0 Plugins Reference Manual Next
    @@ -52,9 +52,9 @@ enum GObject +----GInitiallyUnowned - +----GstObject - +----GstElement - +----GstBaseSink + +----GstObject + +----GstElement + +----GstBaseSink +----GstFakeSink @@ -86,17 +86,25 @@ Dummy sink that swallows everything.

    -

    Example launch line

    -
    -gst-launch audiotestsrc num-buffers=1000 ! fakesink sync=false
    -
    Render 1000 audio buffers (of default size) as fast as possible. +

    Example launch line

    +
    + + + + + + + +
    1
    gst-launch audiotestsrc num-buffers=1000 ! fakesink sync=false
    +
    + Render 1000 audio buffers (of default size) as fast as possible.

    Synopsis

    -

    Element Information

    +

    Element Information

    @@ -119,7 +127,7 @@ gst-launch audiotestsrc num-buffers=1000 ! fakesink sync=false
    -

    Element Pads

    +

    Element Pads

    @@ -254,7 +262,7 @@ Possible state change errors for the state-error property.

    The "silent" property

      "silent"                   gboolean              : Read / Write

    Don't produce last_message events.

    -

    Default value: FALSE

    +

    Default value: TRUE


    @@ -268,7 +276,7 @@ Possible state change errors for the state-error property.

    The "num-buffers" property

      "num-buffers"              gint                  : Read / Write

    Number of buffers to accept going EOS.

    -

    Allowed values: >= -1

    +

    Allowed values: >= G_MAXULONG

    Default value: -1

    @@ -277,8 +285,8 @@ Possible state change errors for the state-error property.

    The "handoff" signal

    void                user_function                      (GstFakeSink *fakesink,
    -                                                        GstBuffer   *buffer,
    -                                                        GstPad      *pad,
    +                                                        GstBuffer   *buffer,
    +                                                        GstPad      *pad,
                                                             gpointer     user_data)      : Run Last

    This signal gets emitted before unreffing the buffer. @@ -309,8 +317,8 @@ This signal gets emitted before unreffing the buffer.

    The "preroll-handoff" signal

    void                user_function                      (GstFakeSink *fakesink,
    -                                                        GstBuffer   *buffer,
    -                                                        GstPad      *pad,
    +                                                        GstBuffer   *buffer,
    +                                                        GstPad      *pad,
                                                             gpointer     user_data)      : Run Last

    This signal gets emitted before unreffing the buffer. diff --git a/docs/plugins/html/gstreamer-plugins-fakesrc.html b/docs/plugins/html/gstreamer-plugins-fakesrc.html index dfb0c64..56e3682 100644 --- a/docs/plugins/html/gstreamer-plugins-fakesrc.html +++ b/docs/plugins/html/gstreamer-plugins-fakesrc.html @@ -3,8 +3,8 @@ fakesrc - - + + @@ -17,7 +17,7 @@

    - +
    Prev Up HomeGStreamer Core Plugins 0.11 Plugins Reference ManualGStreamer Core Plugins 1.0 Plugins Reference Manual Next
    @@ -55,9 +55,9 @@ enum GObject +----GInitiallyUnowned - +----GstObject - +----GstElement - +----GstBaseSrc + +----GstObject + +----GstElement + +----GstBaseSrc +----GstFakeSrc @@ -80,7 +80,7 @@ enum sizemin" gint : Read / Write "sizetype" GstFakeSrcSizeType : Read / Write "sync" gboolean : Read / Write - "format" GstFormat : Read / Write + "format" GstFormat : Read / Write
    @@ -102,10 +102,18 @@ basic GStreamer core functionality is:

    -

    Example launch line

    -
    -gst-launch -v fakesrc num-buffers=5 ! fakesink
    -
    This pipeline will push 5 empty buffers to the fakesink element and then +

    Example launch line

    +
    + + + + + + + +
    1
    gst-launch -v fakesrc num-buffers=5 ! fakesink
    +
    + This pipeline will push 5 empty buffers to the fakesink element and then sends an EOS.

    @@ -116,7 +124,7 @@ Last reviewed on 2008-06-20 (0.10.21)

    Synopsis

    -

    Element Information

    +

    Element Information

    @@ -139,7 +147,7 @@ Last reviewed on 2008-06-20 (0.10.21)
    -

    Element Pads

    +

    Element Pads

    @@ -429,7 +437,7 @@ The different size of the allocated buffers.

    The "silent" property

      "silent"                   gboolean              : Read / Write

    Don't produce last_message events.

    -

    Default value: FALSE

    +

    Default value: TRUE


    @@ -464,7 +472,7 @@ The different size of the allocated buffers.

    The "format" property

    -
      "format"                   GstFormat             : Read / Write
    +
      "format"                   GstFormat             : Read / Write

    Set the format of the newsegment events to produce.

    @@ -477,8 +485,8 @@ Set the format of the newsegment events to produce.

    The "handoff" signal

    void                user_function                      (GstFakeSrc *fakesrc,
    -                                                        GstBuffer  *buffer,
    -                                                        GstPad     *pad,
    +                                                        GstBuffer  *buffer,
    +                                                        GstPad     *pad,
                                                             gpointer    user_data)      : Run Last

    This signal gets emitted before sending the buffer. diff --git a/docs/plugins/html/gstreamer-plugins-fdsink.html b/docs/plugins/html/gstreamer-plugins-fdsink.html index 365a0ba..adf6091 100644 --- a/docs/plugins/html/gstreamer-plugins-fdsink.html +++ b/docs/plugins/html/gstreamer-plugins-fdsink.html @@ -3,8 +3,8 @@ fdsink - - + + @@ -17,7 +17,7 @@

    - +
    Prev Up HomeGStreamer Core Plugins 0.11 Plugins Reference ManualGStreamer Core Plugins 1.0 Plugins Reference Manual Next
    @@ -51,9 +51,9 @@
       GObject
        +----GInitiallyUnowned
    -         +----GstObject
    -               +----GstElement
    -                     +----GstBaseSink
    +         +----GstObject
    +               +----GstElement
    +                     +----GstBaseSink
                                +----GstFdSink
     
    @@ -61,7 +61,7 @@

    Implemented Interfaces

    GstFdSink implements - GstURIHandler.

    + GstURIHandler.

    Properties

    @@ -77,7 +77,7 @@ Write data to a unix file descriptor.

    This element will synchronize on the clock before writing the data on the socket. For file descriptors where this does not make sense (files, ...) the -"sync" property can be used to disable synchronisation. +"sync" property can be used to disable synchronisation.

    Last reviewed on 2006-04-28 (0.10.6) @@ -85,7 +85,7 @@ Last reviewed on 2006-04-28 (0.10.6)

    Synopsis

    -

    Element Information

    +

    Element Information

    @@ -108,7 +108,7 @@ Last reviewed on 2006-04-28 (0.10.6)
    -

    Element Pads

    +

    Element Pads

    diff --git a/docs/plugins/html/gstreamer-plugins-fdsrc.html b/docs/plugins/html/gstreamer-plugins-fdsrc.html index bd00da9..d6012cf 100644 --- a/docs/plugins/html/gstreamer-plugins-fdsrc.html +++ b/docs/plugins/html/gstreamer-plugins-fdsrc.html @@ -3,8 +3,8 @@ fdsrc - - + + @@ -17,7 +17,7 @@ - +
    Prev Up HomeGStreamer Core Plugins 0.11 Plugins Reference ManualGStreamer Core Plugins 1.0 Plugins Reference Manual Next
    @@ -51,10 +51,10 @@
       GObject
        +----GInitiallyUnowned
    -         +----GstObject
    -               +----GstElement
    -                     +----GstBaseSrc
    -                           +----GstPushSrc
    +         +----GstObject
    +               +----GstElement
    +                     +----GstBaseSrc
    +                           +----GstPushSrc
                                      +----GstFdSrc
     
    @@ -62,13 +62,13 @@

    Implemented Interfaces

    GstFdSrc implements - GstURIHandler.

    + GstURIHandler.

    Properties

       "fd"                       gint                  : Read / Write
    -  "timeout"                  guint64               : Read / Write
    +  "timeout"                  guint64               : Read / Write
     
    @@ -88,7 +88,7 @@ if no data was recieved in the given timeout. The message's structure contains one field:

    • - guint64 + guint64 "timeout": the timeout in microseconds that expired when waiting for data.

    @@ -97,10 +97,18 @@ The message's structure contains one field:

    -

    Example launch line

    -
    -echo "Hello GStreamer" | gst-launch -v fdsrc ! fakesink dump=true
    -
    A simple pipeline to read from the standard input and dump the data +

    Example launch line

    +
    + + + + + + + +
    1
    echo "Hello GStreamer" | gst-launch -v fdsrc ! fakesink dump=true
    +
    + A simple pipeline to read from the standard input and dump the data with a fakesink as hex ascii block.

    @@ -111,7 +119,7 @@ Last reviewed on 2008-06-20 (0.10.21)

    Synopsis

    -

    Element Information

    +

    Element Information

    @@ -134,7 +142,7 @@ Last reviewed on 2008-06-20 (0.10.21)
    -

    Element Pads

    +

    Element Pads

    @@ -183,7 +191,7 @@ Opaque

    The "timeout" property

    -
      "timeout"                  guint64               : Read / Write
    +
      "timeout"                  guint64               : Read / Write

    Post a message after timeout microseconds

    diff --git a/docs/plugins/html/gstreamer-plugins-filesink.html b/docs/plugins/html/gstreamer-plugins-filesink.html index 8295cf7..46af2c0 100644 --- a/docs/plugins/html/gstreamer-plugins-filesink.html +++ b/docs/plugins/html/gstreamer-plugins-filesink.html @@ -3,8 +3,8 @@ filesink - - + + @@ -17,7 +17,7 @@
    - +
    Prev Up HomeGStreamer Core Plugins 0.11 Plugins Reference ManualGStreamer Core Plugins 1.0 Plugins Reference Manual Next
    @@ -51,9 +51,9 @@
       GObject
        +----GInitiallyUnowned
    -         +----GstObject
    -               +----GstElement
    -                     +----GstBaseSink
    +         +----GstObject
    +               +----GstElement
    +                     +----GstBaseSink
                                +----GstFileSink
     
    @@ -61,7 +61,7 @@

    Implemented Interfaces

    GstFileSink implements - GstURIHandler.

    + GstURIHandler.

    Properties

    @@ -80,17 +80,25 @@ Write incoming data to a file in the local file system.

    -

    Example launch line

    -
    -gst-launch v4l2src num-buffers=1 ! jpegenc ! filesink location=capture1.jpeg
    -
    Capture one frame from a v4l2 camera and save as jpeg image. +

    Example launch line

    +
    + + + + + + + +
    1
    gst-launch v4l2src num-buffers=1 ! jpegenc ! filesink location=capture1.jpeg
    +
    + Capture one frame from a v4l2 camera and save as jpeg image.

    Synopsis

    -

    Element Information

    +

    Element Information

    @@ -113,7 +121,7 @@ gst-launch v4l2src num-buffers=1 ! jpegenc ! filesink location=capture1.jpeg
    -

    Element Pads

    +

    Element Pads

    diff --git a/docs/plugins/html/gstreamer-plugins-filesrc.html b/docs/plugins/html/gstreamer-plugins-filesrc.html index aaf5155..6876e43 100644 --- a/docs/plugins/html/gstreamer-plugins-filesrc.html +++ b/docs/plugins/html/gstreamer-plugins-filesrc.html @@ -3,8 +3,8 @@ filesrc - - + + @@ -17,7 +17,7 @@ - +
    Prev Up HomeGStreamer Core Plugins 0.11 Plugins Reference ManualGStreamer Core Plugins 1.0 Plugins Reference Manual Next
    @@ -51,9 +51,9 @@
       GObject
        +----GInitiallyUnowned
    -         +----GstObject
    -               +----GstElement
    -                     +----GstBaseSrc
    +         +----GstObject
    +               +----GstElement
    +                     +----GstBaseSrc
                                +----GstFileSrc
     
    @@ -61,7 +61,7 @@

    Implemented Interfaces

    GstFileSrc implements - GstURIHandler.

    + GstURIHandler.

    Properties

    @@ -82,17 +82,25 @@ Read data from a file in the local file system.

    -

    Example launch line

    -
    -gst-launch filesrc location=song.ogg ! decodebin2 ! autoaudiosink
    -
    Play a song.ogg from local dir. +

    Example launch line

    +
    + + + + + + + +
    1
    gst-launch filesrc location=song.ogg ! decodebin2 ! autoaudiosink
    +
    + Play a song.ogg from local dir.

    Synopsis

    -

    Element Information

    +

    Element Information

    @@ -115,7 +123,7 @@ gst-launch filesrc location=song.ogg ! decodebin2 ! autoaudiosink
    -

    Element Pads

    +

    Element Pads

    diff --git a/docs/plugins/html/gstreamer-plugins-funnel.html b/docs/plugins/html/gstreamer-plugins-funnel.html index 31628ea..ddf9c88 100644 --- a/docs/plugins/html/gstreamer-plugins-funnel.html +++ b/docs/plugins/html/gstreamer-plugins-funnel.html @@ -3,8 +3,8 @@ funnel - - + + @@ -17,7 +17,7 @@ - +
    Prev Up HomeGStreamer Core Plugins 0.11 Plugins Reference ManualGStreamer Core Plugins 1.0 Plugins Reference Manual Next
    @@ -47,8 +47,8 @@
       GObject
        +----GInitiallyUnowned
    -         +----GstObject
    -               +----GstElement
    +         +----GstObject
    +               +----GstElement
                          +----GstFunnel
     
    @@ -59,7 +59,7 @@ Takes packets from various input sinks into one output source.

    funnel always outputs a single, open ended segment from -0 with in GST_FORMAT_TIME and outputs the buffers of the +0 with in GST_FORMAT_TIME and outputs the buffers of the different sinkpads with timestamps that are set to the running time for that stream. funnel does not synchronize the different input streams but simply forwards all buffers @@ -68,7 +68,7 @@ immediately when they arrive.

    Synopsis

    -

    Element Information

    +

    Element Information

    @@ -91,13 +91,13 @@ immediately when they arrive.
    -

    Element Pads

    +

    Element Pads

    - + diff --git a/docs/plugins/html/gstreamer-plugins-identity.html b/docs/plugins/html/gstreamer-plugins-identity.html index 8a6baf9..3b148c4 100644 --- a/docs/plugins/html/gstreamer-plugins-identity.html +++ b/docs/plugins/html/gstreamer-plugins-identity.html @@ -3,8 +3,8 @@ identity - - + + @@ -17,7 +17,7 @@ - +

    name

    sink%dsink_%u

    direction

    Prev Up HomeGStreamer Core Plugins 0.11 Plugins Reference ManualGStreamer Core Plugins 1.0 Plugins Reference Manual Next
    @@ -51,9 +51,9 @@
       GObject
        +----GInitiallyUnowned
    -         +----GstObject
    -               +----GstElement
    -                     +----GstBaseTransform
    +         +----GstObject
    +               +----GstElement
    +                     +----GstBaseTransform
                                +----GstIdentity
     
    @@ -90,7 +90,7 @@ useful diagnostic functions, such as offset and timestamp checking.

    Synopsis

    -

    Element Information

    +

    Element Information

    @@ -113,7 +113,7 @@ useful diagnostic functions, such as offset and timestamp checking.
    -

    Element Pads

    +

    Element Pads

    @@ -221,7 +221,7 @@ Opaque

    The "silent" property

      "silent"                   gboolean              : Read / Write

    silent.

    -

    Default value: FALSE

    +

    Default value: TRUE


    @@ -275,7 +275,7 @@ When set to

    The "handoff" signal

    void                user_function                      (GstIdentity *identity,
    -                                                        GstBuffer   *buffer,
    +                                                        GstBuffer   *buffer,
                                                             gpointer     user_data)      : Run Last

    This signal gets emitted before passing the buffer downstream. diff --git a/docs/plugins/html/gstreamer-plugins-input-selector.html b/docs/plugins/html/gstreamer-plugins-input-selector.html index 7b87b79..f9341db 100644 --- a/docs/plugins/html/gstreamer-plugins-input-selector.html +++ b/docs/plugins/html/gstreamer-plugins-input-selector.html @@ -3,8 +3,8 @@ input-selector - - + + @@ -17,7 +17,7 @@

    - +
    Prev Up HomeGStreamer Core Plugins 0.11 Plugins Reference ManualGStreamer Core Plugins 1.0 Plugins Reference Manual Next
    @@ -51,15 +51,15 @@
       GObject
        +----GInitiallyUnowned
    -         +----GstObject
    -               +----GstElement
    +         +----GstObject
    +               +----GstElement
                          +----GstInputSelector
     

    Properties

    -  "active-pad"               GstPad*               : Read / Write
    +  "active-pad"               GstPad*               : Read / Write
       "n-pads"                   guint                 : Read
       "select-all"               gboolean              : Read / Write
       "sync-streams"             gboolean              : Read / Write
    @@ -85,17 +85,17 @@ properties, which users may find useful, namely:
     

    • -"running-time": Running time of stream on pad (gint64) +"running-time": Running time of stream on pad (gint64)
    • -"tags": The currently active tags on the pad (GstTagList, boxed type) +"tags": The currently active tags on the pad (GstTagList, boxed type)
    • "active": If the pad is currently active (gboolean)
    • -"always-ok" : Make an inactive pads return GST_FLOW_OK instead of -GST_FLOW_NOT_LINKED +"always-ok" : Make an inactive pads return GST_FLOW_OK instead of +GST_FLOW_NOT_LINKED

    @@ -103,7 +103,7 @@ properties, which users may find useful, namely:

    Synopsis

    -

    Element Information

    +

    Element Information

    @@ -126,13 +126,13 @@ properties, which users may find useful, namely:
    -

    Element Pads

    +

    Element Pads

    - + @@ -187,7 +187,7 @@ properties, which users may find useful, namely:

    Property Details

    The "active-pad" property

    -
      "active-pad"               GstPad*               : Read / Write
    +
      "active-pad"               GstPad*               : Read / Write

    The currently active sink pad.


    @@ -214,15 +214,15 @@ running time of the active stream. This makes sure that no buffers are dropped by input-selector that might be needed when switching the active pad.

    -

    Default value: FALSE

    -

    Since 0.10.35

    +

    Default value: TRUE

    +

    Since 0.10.36

    Signal Details

    The "block" signal

    -
    gint64              user_function                      (GstInputSelector *inputselector,
    +
    gint64              user_function                      (GstInputSelector *inputselector,
                                                             gpointer          user_data)          : Action

    Block all sink pads in preparation for a switch. Returns the stop time of @@ -248,9 +248,9 @@ active pad or the current active pad never received data.

    The "switch" signal

    void                user_function                      (GstInputSelector *gstinputselector,
    -                                                        GstPad           *arg1,
    -                                                        gint64            arg2,
    -                                                        gint64            arg3,
    +                                                        GstPad           *arg1,
    +                                                        gint64            arg2,
    +                                                        gint64            arg3,
                                                             gpointer          user_data)             : Run Last

    diff --git a/docs/plugins/html/gstreamer-plugins-multiqueue.html b/docs/plugins/html/gstreamer-plugins-multiqueue.html index 482bfa2..19bf440 100644 --- a/docs/plugins/html/gstreamer-plugins-multiqueue.html +++ b/docs/plugins/html/gstreamer-plugins-multiqueue.html @@ -3,8 +3,8 @@ multiqueue - - + + @@ -17,7 +17,7 @@
    - + - +

    name

    sink%dsink_%u

    direction

    Prev Up HomeGStreamer Core Plugins 0.11 Plugins Reference ManualGStreamer Core Plugins 1.0 Plugins Reference Manual Next
    @@ -51,8 +51,8 @@
       GObject
        +----GInitiallyUnowned
    -         +----GstObject
    -               +----GstElement
    +         +----GstObject
    +               +----GstElement
                          +----GstMultiQueue
     
    @@ -61,10 +61,10 @@
       "extra-size-buffers"       guint                 : Read / Write
       "extra-size-bytes"         guint                 : Read / Write
    -  "extra-size-time"          guint64               : Read / Write
    +  "extra-size-time"          guint64               : Read / Write
       "max-size-buffers"         guint                 : Read / Write
       "max-size-bytes"           guint                 : Read / Write
    -  "max-size-time"            guint64               : Read / Write
    +  "max-size-time"            guint64               : Read / Write
       "high-percent"             gint                  : Read / Write
       "low-percent"              gint                  : Read / Write
       "use-buffering"            gboolean              : Read / Write
    @@ -83,7 +83,7 @@
     

    -

    +

    Multiqueue is similar to a normal GstQueue with the following additional features:

    @@ -97,7 +97,7 @@ features: 'sometimes' src pads (src%d).

    - When requesting a given sinkpad with gst_element_get_request_pad(), + When requesting a given sinkpad with gst_element_get_request_pad(), the associated srcpad for that stream will be created. Example: requesting sink1 will generate src1.

    @@ -173,7 +173,7 @@ Last reviewed on 2008-01-25 (0.10.17)

    Synopsis

    -

    Element Information

    +

    Element Information

    @@ -196,13 +196,13 @@ Last reviewed on 2008-01-25 (0.10.17)
    -

    Element Pads

    +

    Element Pads

    - + @@ -223,7 +223,7 @@ Last reviewed on 2008-01-25 (0.10.17) - + @@ -272,7 +272,7 @@ Opaque

    The "extra-size-time" property

    -
      "extra-size-time"          guint64               : Read / Write
    +
      "extra-size-time"          guint64               : Read / Write

    Amount of time the queues can grow if one of them is empty (in ns, 0=disable) (NOT IMPLEMENTED).

    Default value: 3000000000

    @@ -293,7 +293,7 @@ Opaque

    The "max-size-time" property

    -
      "max-size-time"            guint64               : Read / Write
    +
      "max-size-time"            guint64               : Read / Write

    Max. amount of data in the queue (in ns, 0=disable).

    Default value: 2000000000

    @@ -342,7 +342,7 @@ streams by keeping the order in which buffers and events arrived compared to active and linked streams.

    Default value: FALSE

    -

    Since 0.10.35

    +

    Since 0.10.36

    diff --git a/docs/plugins/html/gstreamer-plugins-output-selector.html b/docs/plugins/html/gstreamer-plugins-output-selector.html index 6750a68..0dde3af 100644 --- a/docs/plugins/html/gstreamer-plugins-output-selector.html +++ b/docs/plugins/html/gstreamer-plugins-output-selector.html @@ -3,8 +3,8 @@ output-selector - - + + @@ -17,7 +17,7 @@
    - +

    name

    sink%dsink_%u

    direction

    name

    src%dsrc_%u

    direction

    Prev Up HomeGStreamer Core Plugins 0.11 Plugins Reference ManualGStreamer Core Plugins 1.0 Plugins Reference Manual Next
    @@ -49,15 +49,15 @@
       GObject
        +----GInitiallyUnowned
    -         +----GstObject
    -               +----GstElement
    +         +----GstObject
    +               +----GstElement
                          +----GstOutputSelector
     

    Properties

    -  "active-pad"               GstPad*               : Read / Write
    +  "active-pad"               GstPad*               : Read / Write
       "resend-latest"            gboolean              : Read / Write
       "pad-negotiation-mode"     GstOutputSelectorPadNegotiationMode  : Read / Write
     
    @@ -70,7 +70,7 @@ Direct input stream to one out of N output pads.

    Synopsis

    -

    Element Information

    +

    Element Information

    @@ -93,7 +93,7 @@ Direct input stream to one out of N output pads.
    -

    Element Pads

    +

    Element Pads

    @@ -120,7 +120,7 @@ Direct input stream to one out of N output pads. - + @@ -154,7 +154,7 @@ Direct input stream to one out of N output pads.

    Property Details

    The "active-pad" property

    -
      "active-pad"               GstPad*               : Read / Write
    +
      "active-pad"               GstPad*               : Read / Write

    Currently active src pad.


    diff --git a/docs/plugins/html/gstreamer-plugins-plugin-coreelements.html b/docs/plugins/html/gstreamer-plugins-plugin-coreelements.html index d02671e..5cfa8fc 100644 --- a/docs/plugins/html/gstreamer-plugins-plugin-coreelements.html +++ b/docs/plugins/html/gstreamer-plugins-plugin-coreelements.html @@ -3,11 +3,10 @@ coreelements - - + + - @@ -16,8 +15,8 @@ - - + +

    name

    src%dsrc_%u

    direction

    Prev Up HomeGStreamer Core Plugins 0.11 Plugins Reference ManualNextGStreamer Core Plugins 1.0 Plugins Reference Manual 
    @@ -29,7 +28,7 @@
    -

    Plugin Information

    +

    Plugin Information

    @@ -39,7 +38,7 @@ - + @@ -47,7 +46,7 @@ - + @@ -57,7 +56,7 @@

    version

    0.10.35.10.11.90

    run-time license

    package

    GStreamer gitGStreamer source release

    origin

    -

    Elements

    +

    Elements

    diff --git a/docs/plugins/html/gstreamer-plugins-plugin-coreindexers.html b/docs/plugins/html/gstreamer-plugins-plugin-coreindexers.html deleted file mode 100644 index 128218a..0000000 --- a/docs/plugins/html/gstreamer-plugins-plugin-coreindexers.html +++ /dev/null @@ -1,70 +0,0 @@ - - - - -coreindexers - - - - - - - - -
    - - - - - - -
    -
    -
    - - -
    -

    coreindexers

    -

    coreindexers — GStreamer core indexers

    -
    -
    -

    Plugin Information

    -
    -- - - - - - - - - - - - - - - - - - - - - - -

    filename

    libgstcoreindexers.so

    version

    0.10.35.1

    run-time license

    LGPL

    package

    GStreamer git

    origin

    Unknown package origin
    -
    -
    -

    Elements

    -
    -- -
    -
    -
    - - - \ No newline at end of file diff --git a/docs/plugins/html/gstreamer-plugins-queue.html b/docs/plugins/html/gstreamer-plugins-queue.html index 8332fdf..7ba787d 100644 --- a/docs/plugins/html/gstreamer-plugins-queue.html +++ b/docs/plugins/html/gstreamer-plugins-queue.html @@ -3,8 +3,8 @@ queue - - + + @@ -17,7 +17,7 @@
    Prev Up HomeGStreamer Core Plugins 0.11 Plugins Reference ManualGStreamer Core Plugins 1.0 Plugins Reference Manual Next
    @@ -52,8 +52,8 @@ enum GObject +----GInitiallyUnowned - +----GstObject - +----GstElement + +----GstObject + +----GstElement +----GstQueue @@ -62,14 +62,14 @@ enum "current-level-buffers" guint : Read "current-level-bytes" guint : Read - "current-level-time" guint64 : Read + "current-level-time" guint64 : Read "leaky" GstQueueLeaky : Read / Write "max-size-buffers" guint : Read / Write "max-size-bytes" guint : Read / Write - "max-size-time" guint64 : Read / Write + "max-size-time" guint64 : Read / Write "min-threshold-buffers" guint : Read / Write "min-threshold-bytes" guint : Read / Write - "min-threshold-time" guint64 : Read / Write + "min-threshold-time" guint64 : Read / Write "silent" gboolean : Read / Write @@ -122,7 +122,7 @@ up. Both signals are emitted from the context of the streaming thread.

    Synopsis

    -

    Element Information

    +

    Element Information

    @@ -145,7 +145,7 @@ up. Both signals are emitted from the context of the streaming thread.
    -

    Element Pads

    +

    Element Pads

    @@ -254,7 +254,7 @@ Buffer dropping scheme to avoid the queue to block when full.

    The "current-level-time" property

    -
      "current-level-time"       guint64               : Read
    +
      "current-level-time"       guint64               : Read

    Current amount of data in the queue (in ns).

    Default value: 0

    @@ -282,7 +282,7 @@ Buffer dropping scheme to avoid the queue to block when full.

    The "max-size-time" property

    -
      "max-size-time"            guint64               : Read / Write
    +
      "max-size-time"            guint64               : Read / Write

    Max. amount of data in the queue (in ns, 0=disable).

    Default value: 1000000000

    @@ -303,7 +303,7 @@ Buffer dropping scheme to avoid the queue to block when full.

    The "min-threshold-time" property

    -
      "min-threshold-time"       guint64               : Read / Write
    +
      "min-threshold-time"       guint64               : Read / Write

    Min. amount of data in the queue to allow reading (in ns, 0=disable).

    Default value: 0

    diff --git a/docs/plugins/html/gstreamer-plugins-queue2.html b/docs/plugins/html/gstreamer-plugins-queue2.html index b5a3ab4..04daa5d 100644 --- a/docs/plugins/html/gstreamer-plugins-queue2.html +++ b/docs/plugins/html/gstreamer-plugins-queue2.html @@ -3,8 +3,8 @@ queue2 - - + + @@ -17,7 +17,7 @@ - +
    Prev Up HomeGStreamer Core Plugins 0.11 Plugins Reference ManualGStreamer Core Plugins 1.0 Plugins Reference Manual Next
    @@ -49,8 +49,8 @@
       GObject
        +----GInitiallyUnowned
    -         +----GstObject
    -               +----GstElement
    +         +----GstObject
    +               +----GstElement
                          +----GstQueue2
     
    @@ -59,18 +59,18 @@
       "current-level-buffers"    guint                 : Read
       "current-level-bytes"      guint                 : Read
    -  "current-level-time"       guint64               : Read
    +  "current-level-time"       guint64               : Read
       "high-percent"             gint                  : Read / Write
       "low-percent"              gint                  : Read / Write
       "max-size-buffers"         guint                 : Read / Write
       "max-size-bytes"           guint                 : Read / Write
    -  "max-size-time"            guint64               : Read / Write
    +  "max-size-time"            guint64               : Read / Write
       "temp-location"            gchar*                : Read / Write
       "temp-template"            gchar*                : Read / Write
       "use-buffering"            gboolean              : Read / Write
       "use-rate-estimate"        gboolean              : Read / Write
       "temp-remove"              gboolean              : Read / Write
    -  "ring-buffer-max-size"     guint64               : Read / Write
    +  "ring-buffer-max-size"     guint64               : Read / Write
     
    @@ -112,7 +112,7 @@ Last reviewed on 2009-07-10 (0.10.24)

    Synopsis

    -

    Element Information

    +

    Element Information

    @@ -135,7 +135,7 @@ Last reviewed on 2009-07-10 (0.10.24)
    -

    Element Pads

    +

    Element Pads

    @@ -210,7 +210,7 @@ Last reviewed on 2009-07-10 (0.10.24)

    The "current-level-time" property

    -
      "current-level-time"       guint64               : Read
    +
      "current-level-time"       guint64               : Read

    Current amount of data in the queue (in ns).

    Default value: 0

    @@ -247,7 +247,7 @@ Last reviewed on 2009-07-10 (0.10.24)

    The "max-size-time" property

    -
      "max-size-time"            guint64               : Read / Write
    +
      "max-size-time"            guint64               : Read / Write

    Max. amount of data in the queue (in ns, 0=disable).

    Default value: 2000000000

    @@ -292,7 +292,7 @@ When temp-template is set, remove the temporary file when going to READY.

    The "ring-buffer-max-size" property

    -
      "ring-buffer-max-size"     guint64               : Read / Write
    +
      "ring-buffer-max-size"     guint64               : Read / Write

    The maximum size of the ring buffer in bytes. If set to 0, the ring buffer is disabled. Default 0. diff --git a/docs/plugins/html/gstreamer-plugins-tee.html b/docs/plugins/html/gstreamer-plugins-tee.html index f91160d..3970009 100644 --- a/docs/plugins/html/gstreamer-plugins-tee.html +++ b/docs/plugins/html/gstreamer-plugins-tee.html @@ -3,8 +3,8 @@ tee - - + + @@ -17,7 +17,7 @@

    - +
    Prev Up HomeGStreamer Core Plugins 0.11 Plugins Reference ManualGStreamer Core Plugins 1.0 Plugins Reference Manual Next
    @@ -50,8 +50,8 @@ enum GObject +----GInitiallyUnowned - +----GstObject - +----GstElement + +----GstObject + +----GstElement +----GstTee @@ -64,7 +64,7 @@ enum num-src-pads" gint : Read "silent" gboolean : Read / Write / Construct "pull-mode" GstTeePullMode : Read / Write / Construct - "alloc-pad" GstPad* : Read / Write + "alloc-pad" GstPad* : Read / Write
    @@ -83,10 +83,18 @@ branch would stall the other branches.

    -

    Example launch line

    -
    -gst-launch filesrc location=song.ogg ! decodebin2 ! tee name=t ! queue ! autoaudiosink t. ! queue ! audioconvert ! goom ! ffmpegcolorspace ! autovideosink
    -
    Play a song.ogg from local dir and render visualisations using the goom +

    Example launch line

    +
    + + + + + + + +
    1
    gst-launch filesrc location=song.ogg ! decodebin2 ! tee name=t ! queue ! autoaudiosink t. ! queue ! audioconvert ! goom ! ffmpegcolorspace ! autovideosink
    +
    + Play a song.ogg from local dir and render visualisations using the goom element.

    @@ -94,7 +102,7 @@ element.

    Synopsis

    -

    Element Information

    +

    Element Information

    @@ -117,7 +125,7 @@ element.
    -

    Element Pads

    +

    Element Pads

    @@ -144,7 +152,7 @@ element. - + @@ -250,7 +258,7 @@ disables pull mode.

    The "alloc-pad" property

    -
      "alloc-pad"                GstPad*               : Read / Write
    +
      "alloc-pad"                GstPad*               : Read / Write

    The pad used for gst_pad_alloc_buffer.

    diff --git a/docs/plugins/html/gstreamer-plugins-typefind.html b/docs/plugins/html/gstreamer-plugins-typefind.html index 584da8f..d09597c 100644 --- a/docs/plugins/html/gstreamer-plugins-typefind.html +++ b/docs/plugins/html/gstreamer-plugins-typefind.html @@ -3,8 +3,8 @@ typefind - - + + @@ -17,7 +17,7 @@ - +

    name

    src%dsrc_%u

    direction

    Prev Up HomeGStreamer Core Plugins 0.11 Plugins Reference ManualGStreamer Core Plugins 1.0 Plugins Reference Manual Next
    @@ -51,18 +51,18 @@
       GObject
        +----GInitiallyUnowned
    -         +----GstObject
    -               +----GstElement
    +         +----GstObject
    +               +----GstElement
                          +----GstTypeFindElement
     

    Properties

    -  "caps"                     GstCaps*              : Read
    +  "caps"                     GstCaps*              : Read
       "maximum"                  guint                 : Read / Write
       "minimum"                  guint                 : Read / Write
    -  "force-caps"               GstCaps*              : Read / Write
    +  "force-caps"               GstCaps*              : Read / Write
     
    @@ -85,12 +85,12 @@ emitted, either from the streaming thread or the application thread state change function).

    -Plugins can register custom typefinders by using GstTypeFindFactory. +Plugins can register custom typefinders by using GstTypeFindFactory.

    Synopsis

    -

    Element Information

    +

    Element Information

    @@ -113,7 +113,7 @@ Plugins can register custom typefinders by using -

    Element Pads

    +

    Element Pads

    @@ -175,7 +175,7 @@ Opaque

    Property Details

    The "caps" property

    -
      "caps"                     GstCaps*              : Read
    +
      "caps"                     GstCaps*              : Read

    detected capabilities in stream.


    @@ -197,7 +197,7 @@ Opaque

    The "force-caps" property

    -
      "force-caps"               GstCaps*              : Read / Write
    +
      "force-caps"               GstCaps*              : Read / Write

    force caps without doing a typefind.

    @@ -207,7 +207,7 @@ Opaque

    The "have-type" signal

    void                user_function                      (GstTypeFindElement *typefind,
                                                             guint               probability,
    -                                                        GstCaps            *caps,
    +                                                        GstCaps            *caps,
                                                             gpointer            user_data)        : Run First

    This signal gets emitted when the type and its probability has diff --git a/docs/plugins/html/gstreamer-plugins-valve.html b/docs/plugins/html/gstreamer-plugins-valve.html index 68b0f01..4a3d761 100644 --- a/docs/plugins/html/gstreamer-plugins-valve.html +++ b/docs/plugins/html/gstreamer-plugins-valve.html @@ -3,8 +3,8 @@ valve - - + + @@ -17,7 +17,7 @@

    - +
    Prev Up HomeGStreamer Core Plugins 0.11 Plugins Reference ManualGStreamer Core Plugins 1.0 Plugins Reference Manual Next
    @@ -49,8 +49,8 @@
       GObject
        +----GInitiallyUnowned
    -         +----GstObject
    -               +----GstElement
    +         +----GstObject
    +               +----GstElement
                          +----GstValve
     
    @@ -68,7 +68,7 @@ property is set to "drop" property is FALSE -is ignored. So downstream element can be set to GST_STATE_NULL and removed, +is ignored. So downstream element can be set to GST_STATE_NULL and removed, without using pad blocking.

    @@ -81,7 +81,7 @@ Documentation last reviewed on 2010-12-30 (0.10.31)

    Synopsis

    -

    Element Information

    +

    Element Information

    @@ -104,7 +104,7 @@ Documentation last reviewed on 2010-12-30 (0.10.31)
    -

    Element Pads

    +

    Element Pads

    diff --git a/docs/plugins/html/gstreamer-plugins.devhelp2 b/docs/plugins/html/gstreamer-plugins.devhelp2 index 2b0722b..37a88ca 100644 --- a/docs/plugins/html/gstreamer-plugins.devhelp2 +++ b/docs/plugins/html/gstreamer-plugins.devhelp2 @@ -1,6 +1,6 @@ - + @@ -23,18 +23,17 @@ - - - - + + + - - - + + + @@ -58,9 +57,9 @@ - - - + + + @@ -73,19 +72,19 @@ - - + + - - - + + + - - - + + + @@ -93,19 +92,19 @@ - - - + + + - - + + - - + + @@ -121,8 +120,8 @@ - - + + @@ -130,9 +129,9 @@ - - - + + + @@ -146,14 +145,14 @@ - - + + - - + + @@ -171,8 +170,8 @@ - - + + @@ -188,9 +187,9 @@ - - - + + + @@ -200,16 +199,16 @@ - - + + - - + + diff --git a/docs/plugins/html/index.html b/docs/plugins/html/index.html index c663070..87dd257 100644 --- a/docs/plugins/html/index.html +++ b/docs/plugins/html/index.html @@ -2,9 +2,9 @@ -GStreamer Core Plugins 0.11 Plugins Reference Manual - - +GStreamer Core Plugins 1.0 Plugins Reference Manual + + @@ -13,9 +13,9 @@
    -
    +

    - for GStreamer Core Plugins 0.11 (0.11.1) + for GStreamer Core Plugins 1.0 (0.11.90) The latest version of this documentation can be found on-line at http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer-plugins/html/.

    @@ -78,14 +78,9 @@
    gstreamer Plugins
    -
    -
    +
    coreelementsstandard GStreamer elements -
    -
    -coreindexersGStreamer core indexers -
    -
    +