Commit graph

1823 commits

Author SHA1 Message Date
Wim Taymans
24226284b8 baseaudio: avoid taking extra ref on sink/src
Don't take an extra ref on the sink and source because that creates a reference
cycle. Instead, use the invalidate method of the clock when the sink and source
are freed. This way, we don't call into the time function anymore after the
objects are disposed.
2010-09-07 18:12:38 +02:00
Wim Taymans
c7972692d3 audioclock: add a function to invalidate the clock
Add a function to invalidate the time function of a clock. Useful for when the
function becomes invalid.
2010-09-07 18:12:38 +02:00
Thiago Santos
d54ba93945 tag: exif: Adds mappings for new image ppi tags
Adds mappings for GST_TAG_IMAGE_HORIZONTAL/VERTICAL_PPI into
our exif lib

Tests included.

Fixes #626570
2010-09-07 10:07:29 -03:00
Thiago Santos
7d4bdbf5ce tags: Add GST_TAG_IMAGE_HORIZONTAL/VERTICAL_PPI tags
Adds new tags for representing the intended PPI of images/videos

API: GST_TAG_IMAGE_HORIZONTAL_PPI
API: GST_TAG_IMAGE_VERTICAL_PPI

Fixes #626570
2010-09-07 08:59:46 -03:00
Tim-Philipp Müller
b550eabdac rtp: improve basertpdepayload's error message when no input caps were set
This is pretty much an FAQ, so try to make the error message a bit
more helpful. Also, don't tell people to file a bug in bugzilla
about this (which is what happens if the default error message for
CORE_NEGOTIATION is used).
2010-09-06 18:19:44 +01:00
Wim Taymans
9fd1c48267 rtppayload: notify of first timestamp/seqnum
Notify of the first timestamp/seqnum pushed out by the payloader.

Fixes #612264
2010-09-06 13:15:41 +02:00
Leo Singer
fecb764e2f exiftag: Fix compiler warnings with old gcc versions
Old gcc complains about possibly uninitialized variables which
are always initialized before usage in reality. Fixes bug #628747.
2010-09-04 09:06:08 +02:00
Thijs Vermeir
3a04b08437 riff: add support for 2vuy
It is the apple alternative for Microsofts UYVY.
(http://ntta.szm.com/Tutors/FourCC.htm)
Only use the UYVY for the caps to enable support in other
gstreamer elements.

https://bugzilla.gnome.org/show_bug.cgi?id=627924
2010-08-25 19:12:21 +02:00
Thiago Santos
aa3abae744 configure: Add check for log2
Adds check for log2 and only use it in exif library if it is
available.
2010-08-25 11:19:31 -03:00
Sebastian Dröge
4915090e01 tag: Link to $(LIBM) for pow(), log2() and friends 2010-08-25 15:32:41 +02:00
Thiago Santos
5045c17751 tag: exif: Move some tags to their correct IFDs
Put some tags in their correct IFDs
2010-08-25 08:41:52 -03:00
Thiago Santos
0ea550b0cf tag: exif: Always write FlashPixVersion tag
FlashPixVersion is mandatory and constant. Write it always.
2010-08-25 08:39:38 -03:00
Thiago Santos
9c5f791a34 tag: exif: Adds flash tags mapping
Adds a mapping for GST_TAG_CAPTURING_FLASH_FIRED/_MODE to
the exif Flash tag.

Tests included.
2010-08-25 08:36:59 -03:00
Thiago Santos
ac361dcc3a tag: exif: More photography mappings
Adds mappings from:
GST_TAG_CAPTURING_EXPOSURE_PROGRAM -> ExposureProgram
GST_TAG_CAPTURING_EXPOSURE_MODE -> ExposureMode
GST_TAG_CAPTURING_SCENE_CAPTURE_TYPE -> SceneCaptureType
GST_TAG_CAPTURING_GAIN_ADJUSTMENT -> GainControl
GST_TAG_CAPTURING_WHITE_BALANCE -> WhiteBalance
GST_TAG_CAPTURING_CONTRAST -> Constrast
GST_TAG_CAPTURING_SATURATION -> Saturation

Also renames gst_tag_image_orientation_from_exif_value and
gst_tag_image_orientation_to_exif_value to remove the 'gst'
prefix and not including in the win32 defs.

Tests included.
2010-08-25 08:32:19 -03:00
Thiago Santos
cc8bd8bcec tag: exif: Add macros for the exif ids
Use macros for exif ids to avoid having those numbers spread
all over the code.
2010-08-24 22:27:04 -03:00
Thiago Santos
10d680b74d tag: exif: Adds photography tags mappings
Adds the following mappings for the exif helper:
* GST_TAG_CAPTURING_DIGITAL_ZOOM_RATIO -> DigitalZoomRatio
* GST_TAG_CAPTURING_FOCAL_LENGTH -> FocalLength
* GST_TAG_CAPTURING_SHUTTER_SPEED -> ExposureTime, ShutterSpeedValue
* GST_TAG_CAPTURING_FOCAL_RATIO -> FNumber, ApertureValue
* GST_TAG_CAPTURING_ISO_SPEED -> ISOSpeed, PhotographicSensitivity

Tests included.
2010-08-24 22:24:36 -03:00
Thiago Santos
57013ae63e tag: exif: Adds mapping for GST_TAG_APPLICATION_DATA
Adds mapping for GST_TAG_APPLICATION_DATA to the exif
'maker-note' tag.
2010-08-24 22:20:48 -03:00
Thiago Santos
421e1e05ff tag: Adds GST_TAG_CAPTURE_FLASH_FIRED/_MODE
Adds a new tag for informing if flash was used while
capturing an image and the flash mode selected by the
user during this capture

API: GST_TAG_CAPTURING_FLASH_FIRED
API: GST_TAG_CAPTURING_FLASH_MODE

https://bugzilla.gnome.org/show_bug.cgi?id=626651
2010-08-24 22:20:40 -03:00
Thiago Santos
5596c965fd tag: More photography related tags
API: GST_TAG_CAPTURING_EXPOSURE_PROGRAM
API: GST_TAG_CAPTURING_EXPOSURE_MODE
API: GST_TAG_CAPTURING_SCENE_CAPTURE_TYPE
API: GST_TAG_CAPTURING_GAIN_ADJUSTMENT
API: GST_TAG_CAPTURING_WHITE_BALANCE
API: GST_TAG_CAPTURING_CONTRAST
API: GST_TAG_CAPTURING_SATURATION

Fixes #626651
2010-08-24 22:16:37 -03:00
Thiago Santos
19cef39023 tag: Adds some basic photography tags
Adds the following basic photography tags.

API: GST_TAG_CAPTURING_SHUTTER_SPEED
API: GST_TAG_CAPTURING_FOCAL_RATIO
API: GST_TAG_CAPTURING_FOCAL_LENGTH
API: GST_TAG_CAPTURING_DIGITAL_ZOOM_RATIO
API: GST_TAG_CAPTURING_ISO_SPEED

Fixes #626651
2010-08-24 22:05:20 -03:00
Sebastian Dröge
c30ad57e86 video: Fix component width for NV12/NV21
Both have width/2 as component width for the chroma planes.
2010-08-24 10:03:04 +02:00
American Dynamics
1f19649695 basertpdepay: don't clear the discont flag too early
Set the discont flag when we receive a DISCONT buffer and only clear the discont
state when we pushed out a DISCONT buffer.

Fixes #626869
2010-08-18 12:43:48 +02:00
Tim-Philipp Müller
c3a519494b docs: fix typo in appsink docs so function gets cross-referenced properly 2010-08-14 19:12:37 +01:00
Tim-Philipp Müller
e776699036 build: use new AG_GST_PKG_CONFIG_PATH m4 macro from common
Sets up a GST_PKG_CONFIG_PATH variable for use in Makefile.am
(avoids trailing ':' in PKG_CONFIG_PATH used).
2010-08-14 19:12:37 +01:00
Tim-Philipp Müller
b61b83376a introspection: set PKG_CONFIG_PATH so that our in-tree libs come first when calling scanner
When calling gobject-introspection scanner, make sure our own
freshly-built libs within the source tree (well, build dir) come
first in the PKG_CONFIG_PATH. May or may not help to make sure
that it doesn't pick up older external plugins-base libs (or
.gir files) from outside the source tree / build directory as
dependencies of the introspected lib instead of using the
stuff we just built in a sibling directory.

https://bugzilla.gnome.org/show_bug.cgi?id=623698
2010-08-14 19:11:48 +01:00
Stefan Kost
5ba7ca1642 appsrc: fix the classification.
Change "Src" into "Source" (we use that elsewhere). I did not keept "Src" as it
is quite unlikely that someone plugs appsrc by searching the registry by classification.
2010-08-12 18:16:20 +03:00
Thiago Santos
adcb6e642d tags: exif: Fix bug in inner ifd parsing
Do not use the result of inner ifd's parsing to increment
the current tag index. The reasons are:

1) The function returns a boolean.
2) The inner ifd's tags are in a separate table, so they shouldn't
interfere with its parent ifd table parsing.
2010-08-11 08:55:59 -03:00
Thiago Santos
c45bf80a0c tag: exif: Put ExifVersion in the correct IFD
ExifVersion is from the 'exif' ifd, not the 0th ifd.
2010-08-11 08:55:59 -03:00
Thiago Santos
5c5a200025 tag: exif: Refactor functions declaration
Use some macros to declare serialization/deserialization
functions prototypes.
2010-08-11 08:55:54 -03:00
Thiago Santos
f0d10d6375 tag: exif: Add another DateTime mapping
datetimes can also be represented by the 0x132 tag. Map it, too.
2010-08-11 08:51:28 -03:00
Thiago Santos
1547c2b9ce tag: exif: Fix bug on image-orientation parsing
Do not skip one extra tag when parsing image-orientation tags.
2010-08-10 11:30:04 -03:00
Sebastian Dröge
53f8149c90 exiftag: Compare with G_MAXUINT16 instead of -1
Fixes a compiler warning on the OS X buildbot.
2010-08-10 11:53:19 +02:00
Thiago Santos
61e11b0fc4 xmp: exif: Adds GST_TAG_APPLICATION_NAME mappings
adds xmp and exif helper library mappings for GST_TAG_APPLICATION_NAME
tag.
2010-08-09 18:04:08 -03:00
Thiago Santos
43e1f0474f tag: exif: Write ExifVersion tag
Write ExifVersion tag unconditionally when creating exif
buffers. Might help other applications parsing of this data.
2010-08-09 18:03:46 -03:00
Thiago Santos
4a42d3b0ce tags: exif: Fix inner tags offset rewriting
Fixes a bug that made exif helper lib fail to rewrite inner ifd tags
offsets when there were more than 1 inner ifd.
2010-08-09 17:51:35 -03:00
Sebastian Dröge
b296c96169 baseaudiosink/baseaudiosrc: Post CLOCK-LOST/CLOCK-PROVIDE when going to/from READY
Otherwise the clocks are redistributed every time the pipeline
goes to PAUSED, which is quite expensive.
2010-08-04 15:19:42 +02:00
Thiago Santos
f7ee816355 tag: xmp: Make xmp lib aware for the different tag types
Makes the xmp helper lib aware that the tags can be simple,
sequences or bags (there is still struct and alt, but those
aren't handled yet). Adding this info makes serialization
and deserialization more consistent.
2010-08-04 09:56:39 -03:00
Thiago Santos
b9573cc75d xmp: Add a new layer of indirection (GstXmpSchema)
Instead of storing all tags in a single hashtable, store them
grouped by schema in a GstXmpSchema, and add those to the toplevel
hashtable.
2010-08-04 09:56:39 -03:00
Thiago Santos
2760c96dfc tag: xmp: Make bag tags deserialization work correctly
If we find a bag of tags of type string in the xmp packet, we
should concat them, this is not the ideal approach, but at
least works for now as we don't know what type of tag it
is (simple, structure, seq, alt or bag)
2010-08-04 09:56:39 -03:00
Wim Taymans
f9404c0b27 ringbuffer: improve debugging 2010-08-04 10:33:32 +02:00
Wim Taymans
2304ff9095 ringbuffer: whitespace fixes 2010-08-04 10:33:32 +02:00
Thiago Santos
0c51c8209b tag: xmp: removing useless locking
Everything in the xmp helper lib is initiallized once and on a thread
safe way, and after that there are only reads going on, no more
writing. Based on that, drop the locking.
2010-08-01 06:53:28 -03:00
Tim-Philipp Müller
db5d418282 tag: initialize datetime variable in xmp tag parsing code
Fixes (correct) compiler warning on the OSX build bot.
2010-07-26 18:23:33 +02:00
Tim-Philipp Müller
5a0c2517ee pbutils: add compile time and runtime version checks for gst-plugins-base
So people can check what version of the gst-plugins-base libs they're
building against or linked against.

API: GST_PLUGINS_BASE_VERSION_MAJOR
API: GST_PLUGINS_BASE_VERSION_MINOR
API: GST_PLUGINS_BASE_VERSION_MICRO
API: GST_PLUGINS_BASE_VERSION_NANO
API: GST_CHECK_PLUGINS_BASE_VERSION
API: gst_plugins_base_version()
API: gst_plugins_base_version_string()
2010-07-26 17:25:15 +02:00
Thiago Santos
93f97277da tag: exif: Map GST_TAG_DATE_TIME
Adds mapping to the exif helper library for GST_TAG_DATE_TIME.
Tests included.

https://bugzilla.gnome.org/show_bug.cgi?id=594504
2010-07-26 12:00:31 -03:00
Thiago Santos
5e51a77df4 tag: xmp: Maps GST_TAG_DATE_TIME
Adds mapping for GST_TAG_DATE_TIME.
Tests included.

https://bugzilla.gnome.org/show_bug.cgi?id=594504
2010-07-26 12:00:30 -03:00
Sebastian Dröge
ed271ff809 baseaudiosink: Post clock-provide and clock-lost messages when going from/to PLAYING 2010-07-16 17:40:45 +02:00
Sebastian Dröge
e84c7f02b4 baseaudiosrc: Post clock-provide and clock-lost messages when going from/to PLAYING 2010-07-16 17:40:45 +02:00
Sebastian Dröge
f1ac770f1b baseaudiosink: Use new gst_audio_clock_new_full() 2010-07-16 17:40:45 +02:00
Sebastian Dröge
32b0b0aef9 baseaudiosrc: Use new gst_audio_clock_new_full() 2010-07-16 17:40:45 +02:00
Sebastian Dröge
8989ad93d9 audioclock: API: Add gst_audio_clock_new_full() with a GDestroyNotify for the user_data
Elements usually use their own instance as instance data but the
clock can have a longer lifetime than their elements and the clock
doesn't own a reference of the element.

Fixes bug #623807.
2010-07-16 17:40:17 +02:00
Tim-Philipp Müller
524c977c18 riff: add FLV4 fourcc and map it to video/x-vp6-flash
Fixes #623176.
2010-06-30 21:20:37 +01:00
Olivier Crête
2f8dc27e29 netbuffer: declare with G_DEFINE_TYPE for type safety
Fixes #623233.
2010-06-30 21:10:10 +01:00
Wim Taymans
2ced0a3d5d ringbuffer: check for ringbuffer state first
Check for the state of the ringbuffer before doing the checks of the other
buffer properties, when we're not started, we don't care about those values.
2010-06-25 17:21:57 +02:00
Thiago Santos
dbdfb71673 tag: Fix printf format string
Use %s for strings, not %d.
2010-06-24 08:42:50 -03:00
Thiago Santos
c774cdcff0 tag: xmp: Adds GST_TAG_IMAGE_ORIENTATION mapping
Adds GST_TAG_IMAGE_ORIENTATION mapping to xmp helper lib.
Tests included.
2010-06-23 12:03:47 -03:00
Thiago Santos
e327be5a96 tag: exif: Adds mapping for GST_TAG_IMAGE_ORIENTATION
Adds GST_TAG_IMAGE_ORIENTATION to the exif helper lib mapped tags.
Tests included.
2010-06-23 12:03:47 -03:00
Thiago Santos
a08c2ec760 tag: Use gst_tag_list_peek_string_index in vorbistag
Use _peek_string_index instead of _get_string_index to avoid
a string copy
2010-06-18 14:17:30 -03:00
Thiago Santos
4219a5ae5c tag: xmp: Init char variable for gps coordinates
Initialize char variable for gps coordinates deserialization to 0
to identify when it couldn't be parsed/found and error out.

Fixes #621509
2010-06-14 15:05:16 -03:00
Edward Hervey
3879c57b01 video: Fix unitialized variable.
yay macosx compilers :(
2010-06-14 14:13:16 +02:00
Sebastian Dröge
611d87ce7a appsrc: Return FALSE from the seek handler if no seek callback was set 2010-06-14 11:03:50 +02:00
Sebastian Dröge
506be85356 video: Re-add (but deprecated) GST_VIDEO_{RED,GREEN,BLUE}_MASK_1[56] 2010-06-13 08:20:13 +02:00
Martin Bisson
b8f330dea6 video.{c,h}: Fix an endianness bug fix.
This commit makes sure the endianness is ok for RGB/BGR 15/16 formats.
2010-06-12 13:51:27 +02:00
Martin Bisson
f5a690f860 video.{c,h}: Add support for RGB and BGR with 15 and 16 bits. 2010-06-12 13:51:27 +02:00
Edward Hervey
5e1cef7a5d gstexiftag: Fix unitialized variables
I hate thee macosx
2010-06-11 15:25:35 +02:00
Edward Hervey
f12a4e6ed6 gstexiftag: Fix debug statements 2010-06-11 08:47:27 +02:00
Edward Hervey
42dd1471f8 exiftag: Fix unitialized variable 2010-06-11 08:47:17 +02:00
Stefan Kost
a0b5bb5113 docs: fix gtk-doc warnings
Variable names in function prototypes in the headers should match the doc-
comment.
2010-06-10 20:36:32 +03:00
Edward Hervey
1d21ce0da2 riff: Add support for VP6F (On2 VP6 Flash variant) 2010-06-09 22:35:52 +02:00
Thiago Santos
ccfb6e3c02 tag: exif: Refactor byte-order handling
Only check for valid byte-order values when creating the
exif readers and writers
2010-06-09 16:28:43 -03:00
Thiago Santos
491d025530 tag: exif: Adds new geo-location tag mappings
Adds mappings for:
GST_TAG_GEO_LOCATION_CAPTURE_DIRECTION
GST_TAG_GEO_LOCATION_MOVEMENT_DIRECTION
GST_TAG_GEO_LOCATION_MOVEMENT_SPEED
GST_TAG_GEO_LOCATION_ELEVATION

Does some refactoring in the code to reduce number of parameters
passed to functions

Tests included.
2010-06-09 16:26:43 -03:00
Thiago Santos
6b6a4e85ad tag: Adds basic exif tags support
Adds exif helper lib functions to parse exif buffers from/to
taglists. Exif is tipically used in jpeg images, but it can
also be embedded into TIFF, AVI and WAV formats.

Adds a couple function to handle exif in tiff header structures, that is how
exif is embedded in jpeg and (obviously) in tiff.

API: gst_tag_list_to_exif_buffer
API: gst_tag_list_to_exif_buffer_with_tiff_header
API: gst_tag_list_from_exif_buffer
API: gst_tag_list_from_exif_buffer_with_tiff_header

Fixes #614872
2010-06-09 16:26:36 -03:00
Sebastian Dröge
80cc85d218 video: Return TRUE in gst_video_format_is_gray() for Y800 and Y16 2010-06-08 11:01:44 +02:00
Martin Bisson
b0d15133d7 video: Add support for Y800 and Y16
Fixes bug #620441.
2010-06-07 08:17:55 +02:00
Wim Taymans
f562c8b290 appsrc: fix documentation string 2010-06-05 11:28:17 +02:00
Sebastian Dröge
a5c35621c3 Revert "baseaudiosink: Allocate and free the clock in NULL->READY and reverse"
This reverts commit cea2644ed8.

Many audio sink assume that they can create a clock in
the instance init function and it will be there forever
and not be cleared by the state change functions.
2010-06-03 13:44:40 +02:00
Sebastian Dröge
cea2644ed8 baseaudiosink: Allocate and free the clock in NULL->READY and reverse 2010-06-03 10:23:22 +02:00
Sebastian Dröge
61a65cda11 configure: Remove (now) useless check for cbrt 2010-05-28 08:27:29 +02:00
David Schleef
3edafbd0e5 interfaces: Use pow() instead of cbrt() for MSVC 2010-05-27 12:55:43 -07:00
Sebastian Dröge
fdfb70e262 fft: Merge kissfft 1.2.8
This reduces memory footprint for the FFT and adds
OpenMP support (but we don't use it).
2010-05-24 11:27:36 +02:00
Tim-Philipp Müller
5e022fa0a4 pbutils: add basic descriptions for new WebM and VP8 types 2010-05-20 15:14:30 +01:00
Sebastian Dröge
0a4eaa7f60 riff: Add support for On2 VP8 2010-05-19 19:23:07 +02:00
Sebastian Dröge
f43216b9d7 appsrc: Always take the object lock when accessing the caps
Fixes bug #618625.
2010-05-14 17:24:14 +02:00
Wim Taymans
9696af170f riff: relax width and height constraints
Increase the acceptable video sizes from [16,4096] to [1, MAX].

See #618392
2010-05-13 12:06:41 +02:00
Sebastian Dröge
30b67cda5d video: Use simple fraction multiplication functions instead of going through GValues 2010-05-13 11:16:02 +02:00
Olivier Crête
0a24137100 basertpaudiopayload: Add extra frame for non-complete frame lengths
Some payloaders like rtpg729pay can add a shorter frame at the end of a
RTP packet. We need to count it like a full frame for timestamps.

https://bugzilla.gnome.org/show_bug.cgi?id=618324
2010-05-13 11:03:12 +02:00
Olivier Crête
8a2b81a576 basertpaudiopayload: Set duration on buffers
Set the duration of the buffers from their size
2010-05-13 10:54:08 +02:00
Wim Taymans
1fdfed5cc1 sdpmessage: add new TIAS bandwidth modifier
Add TIAS modifier as specified in RFC 3890.
Do some whitespace fixes.
2010-05-07 17:17:54 +02:00
Stefan Kost
18f07f03d1 docs: be more firendly to gtk-doc limitted parsing capabilities 2010-05-06 11:34:53 +03:00
Stefan Kost
639e1ab2b5 docs: fix wrong doc markup 2010-05-06 09:42:02 +03:00
Tim-Philipp Müller
7fee2c0fe7 rtsp: weekday and month names in RTSP date string should be in C locale
Create date string using C locale weekday and month names.

Fixes #617636.
2010-05-05 13:04:25 +01:00
Thiago Santos
e879fc9ca3 tag: xmp: Adds new geo-location mappings
Adds GST_TAG_GEO_LOCATION_MOVEMENT_SPEED,
GST_TAG_GEO_LOCATION_MOVEMENT_DIRECTION and
GST_TAG_GEO_LOCATION_CAPTURE_DIRECTION to xmp
mappings.

Tests included.
2010-05-03 14:14:25 -03:00
Thiago Santos
a20aa39fa3 tag: xmp: Adds xmp mappings for device tags
Adds xmp mappings for GST_TAG_DEVICE_MANUFACTURER and
GST_TAG_DEVICE_MODEL. Also adds tests for it.
2010-05-03 14:14:03 -03:00
Tim-Philipp Müller
00f7fbe750 rtsp: deprecate remaining base64 function now that we depend on GLib 2.20
API: deprecate gst_rtsp_base64_decode_ip(), use g_base64_decode_inplace() instead
2010-04-30 20:01:55 +01:00
Mark Nauwelaerts
ed71d802fc basertpdepayload: ensure writable metadata 2010-04-30 19:38:40 +02:00
Sebastian Dröge
25c1a331be video: API: Add GST_VIDEO_FORMAT_v308 for packed 4:4:4 YUV 2010-04-29 18:21:21 +02:00
Tim-Philipp Müller
e9431554fa 0.10.28.2 pre-release 2010-04-14 15:35:06 +01:00
Olivier Crête
66cc2faba7 audiopayload: use ptime-multiple
Based on patch by Olivier Crête <olivier.crete@collabora.co.uk>

Fixes #613248
2010-04-09 16:17:31 +02:00
Wim Taymans
1fa171d396 audiopayload: add property to control packet duration
Add a property to specify that the amount of data in a packet should be a
multiple of ptime-multiple.

See #613248
2010-04-09 16:17:31 +02:00
Thiago Santos
818e869d70 appsrc: Be sure that metadata is writable before setting caps
Call gst_buffer_make_metadata_writable before attempting
to set caps on the buffer.
2010-04-08 07:40:29 -03:00