Jan Schmidt
c977aa2c01
videodecoder: Rename queued list to output_queued for clarity.
...
Use g_list_free_full instead of g_list_foreach + g_list_free
2012-06-20 01:32:05 +10:00
Jan Schmidt
487e5348e0
videodecoder: Small cleanups
...
Remove extra deref using a local var, and add/change some doc comments
and debug statements
2012-06-20 01:32:05 +10:00
Jan Schmidt
2d770ac406
videodecoder: Rename gst_video_decoder_have_frame_2 function
...
Rename gst_video_decoder_have_frame_2 to
gst_video_decoder_decode_frame and pass the frame to process
directly, rather than using the current_frame pointer as a holding
pen.
Move the negative rate handling out of the function to where it
is needed, and remove the process flag.
2012-06-20 01:32:05 +10:00
Jan Schmidt
ca09aaabc7
videodecoder: Extend docs and add comments
...
Update the documentation block for the base class, and add a comment
block about the reverse-playback logic and implementation.
2012-06-20 01:32:03 +10:00
Sebastian Dröge
bdb4f7c101
videofilter: Don't duplicate code to create a new buffer pool if none is in the query
2012-06-19 13:57:00 +01:00
Sebastian Dröge
cb6b835d11
videoencoder: Ensure buffers don't disappear early
...
The frames are the owners of the buffers
2012-06-19 09:34:49 +01:00
Edward Hervey
4b946e8cee
videodecoder: Ensure buffers don't disappear early
...
The frames are the owners of the buffers. In cases where a decoder
would keep around reference frames, we need to ensure they don't
disappear early.
To handle this, we pass downstream a complete sub-buffer of the output
buffer, ensuring that the buffer will only be released when downstream
is done with it *AND* the frame is no longer used.
Conflicts:
gst-libs/gst/video/gstvideodecoder.c
2012-06-19 09:33:03 +01:00
Sebastian Dröge
4119246081
videoencoder,videodecoder: Return new references from _get_frame()
2012-06-19 09:26:36 +01:00
Wim Taymans
c003efcc63
audiobasesink: fix for basesink API change
2012-06-18 11:40:36 +02:00
Sebastian Dröge
1e635f682f
videodecoder: Add GstVideoDecoder::propose_allocation() vfunc
2012-06-15 16:38:16 +02:00
Jan Schmidt
f865729e95
videodecoder: Fix initial timestamp in ogg, and a warning.
...
Don't replace the initial frame's timestamp with a bogus
one calculated from the (incorrect for Ogg) frame number just
because the 'sync time' hasn't changed.
Also, don't output a bogus warning about the output_frame being
NULL when it's being dropped/skipped due to QoS.
2012-06-13 01:58:05 +10:00
Jan Schmidt
d9740bf9ba
audio decoder: Add some debug output for bad caps from children
2012-06-12 23:52:35 +10:00
Vincent Penquerc'h
f8b8711081
audiodecoder: push queued events only when we have a first buffer
...
https://bugzilla.gnome.org/show_bug.cgi?id=675812
2012-06-11 11:29:13 +01:00
Wim Taymans
9d6967fe9a
Add generated orc files
2012-06-08 17:57:43 +02:00
Wim Taymans
12ac9f0aa2
Also build the orc generated code
2012-06-08 17:57:43 +02:00
Wim Taymans
3f8c5ea036
audio: add orc enabled pack and unpack functions
2012-06-08 17:57:43 +02:00
Wim Taymans
8e393d898a
audio: add flag to mark possible unpack formats
...
Make a new flag to mark formats that can be used in pack and unpack functions.
Mark S32NE and F64NE as those unpack formats
2012-06-08 17:57:43 +02:00
Vincent Penquerc'h
8b10be67e4
videodecoder: use GST_CLOCK_TIME_IS_VALID where appropriate
2012-06-08 13:59:53 +01:00
Wim Taymans
c2112cb402
video: mark unpack formats with a flag
...
Add a new _UNPACK flag and use it to mark potential unpack formats.
2012-06-08 11:50:57 +02:00
Sebastian Dröge
462c4cc3d8
audio: Remove unused, generated marshallers
2012-06-08 11:28:56 +02:00
Wim Taymans
3da0b71876
audio: split audio header into logical parts
2012-06-08 10:10:08 +02:00
Vincent Penquerc'h
d7ee6a9c57
videodecoder: do not do timestamp arithmetic from an invalid timestamp
...
This fixes untimestampped buffers from being rejected by the segment clipper.
https://bugzilla.gnome.org/show_bug.cgi?id=676022
2012-06-07 16:59:09 +01:00
Vincent Penquerc'h
fd35793c38
video: fix memory leak
2012-06-07 11:23:21 +01:00
Wim Taymans
90b3f525e9
rtspconnection: handle cancellation correctly
2012-06-06 16:41:03 +02:00
Wim Taymans
baa2fac2f8
audiopayload: disable broken bufferlist handling
...
The bufferlist handling is broken so make sure it is never enabled.
2012-06-06 16:40:24 +02:00
David Svensson Fors
0b0dde7ce1
rtsp: don't leak address and socket
...
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=677466
2012-06-06 14:53:43 +02:00
Wim Taymans
a2172bdb4b
update for tag event change
2012-06-06 13:05:47 +02:00
Wim Taymans
bc221fba78
video: add pack_lines variable
...
Use a separate variable to describe the amount of lines that will be used in
packing instead of abusing the h_sub variable. Some formats might have no
subsampling but need to operate on multipe lines.
2012-06-06 11:38:00 +02:00
Wim Taymans
a96acd3dbe
video: add macro for component depth
2012-06-06 11:18:56 +02:00
Edward Hervey
eee5cec41e
pbutils: Add descriptor for E-AC3 and PGS subtitles
2012-06-06 10:33:56 +02:00
Wim Taymans
ecdfb96f17
video: move methods into separate files
...
Move different video functionalities into different files
2012-06-05 12:47:22 +02:00
Wim Taymans
887d442da4
video: don't add unknown colorimetry
2012-06-04 18:24:03 +02:00
Wim Taymans
d923f9fe70
videodecoder: only copy known colorimetry values
...
Avoid overriding the default colorimetry values.
2012-06-04 18:17:42 +02:00
Wim Taymans
831519364c
video: add unknown colorimetry parameters as well..
2012-06-04 18:08:11 +02:00
Wim Taymans
379eb410c8
video: use unknown colorimetry for unknown formats
...
Use the default RGB colorimetry into only on RGB formats and use an unknown set
of defaults for the unknown format.
2012-06-04 18:00:42 +02:00
Wim Taymans
24f0ac588f
video: (de)serialize colorimetry on caps
2012-06-04 16:17:32 +02:00
Wim Taymans
8f88f015f0
video: don't add empty colorimetry to caps
...
Don't use extra default colorimetry entries in the table to construct an output
colorimetry shortcut because they don't have a name.
2012-06-04 16:17:32 +02:00
Wim Taymans
c76f44bebb
video: fix default colorspace settings
...
HD content is defined as height > 576
2012-06-04 16:17:32 +02:00
Wim Taymans
b718dc26b5
video: add generic film primaries
2012-06-04 16:17:31 +02:00
Sebastian Dröge
86b36c3463
videoencoder: Don't unref frame twice if not in the list
2012-06-04 10:46:13 +02:00
Matej Knopp
e316ff5435
videodecoder: Do not unref frame if not in the list
2012-06-04 10:43:56 +02:00
Sebastian Dröge
2667d4bb82
Revert "audiodecoder: Error out earlier in a few places if something goes wrong"
...
This reverts commit eb68a2d5a7
.
This sometimes errors out too early now, needs some more thoughts.
2012-06-04 10:01:42 +02:00
Sebastian Dröge
f609b3a627
audiodecoder: Return setcaps return value instead of always TRUE
2012-06-04 09:56:30 +02:00
Sebastian Dröge
eb68a2d5a7
audiodecoder: Error out earlier in a few places if something goes wrong
2012-06-02 17:16:13 +02:00
Wim Taymans
1c9f9654bb
video: set default colorimetry info
...
Set default colorimetry info when not otherwise specified in caps.
2012-06-01 12:09:44 +02:00
Tim-Philipp Müller
38df7e2d27
video: update disted orc backup files for recent changes
2012-06-01 10:02:02 +01:00
Wim Taymans
7f134c1441
video: fix paletted format
...
RGB8_PALETTED -> RGB8P
Fix the definition of paletted formats, store the palette in the second
plane.
Make sure we copy the palette correctly in gst_video_frame_copy()
Don't do alignment on the palette in videopool
2012-05-31 13:44:43 +02:00
Sebastian Dröge
8f92acdc86
video: And fix the build of the ORC sources
2012-05-30 13:07:57 +02:00
Sebastian Dröge
b354613556
video: Fix generation of orc sources
2012-05-30 13:06:11 +02:00
Wim Taymans
cdf55c7c7a
video-blend: prepare for 0.11 porting
...
Remove obsolete code.
Remove the BlendInfo structure, we can do this better with GstVideoFrame
Use GstVideoFrame in the API
Prefix functions with gst_
2012-05-30 09:25:12 +02:00
Wim Taymans
a45bca53a1
video: add support for premultiplied alpha
2012-05-30 09:21:46 +02:00
Wim Taymans
69787d6f0c
video: move enum difinition
...
c++ doesn't seem to like the typedef
2012-05-29 17:52:06 +02:00
Wim Taymans
fda981045a
video: Remove duplicate formats
...
Remove Y800 and Y16 wich are the same as GRAY8 and GRAY16_LE
Add const to the GstVideoFormatInfo when used in argument
Add GRAY8 and GRAY16 pack/unpack functions
2012-05-29 17:52:06 +02:00
Wim Taymans
2d078e42a8
video: rename orc function names
2012-05-29 17:52:06 +02:00
Wim Taymans
abe4b0b235
video: fill in the pack/unpack functions
...
Add support for supporting chroma subsampling correctly in the pack
function.
Fill in the pack and unpack functions for most formats.
Add some missing pack/unpack functions to the orc file.
2012-05-29 17:52:06 +02:00
Wim Taymans
67587918f3
video-blend: remove unused defines
2012-05-29 17:52:06 +02:00
Wim Taymans
c66da2c74b
audio: add flags for the pack/unpack functions
...
Add a flag argument to the pack and unpack function so that we can expand it
later when needed. We could for example prefer a High Quality pack/unpack
operation later.
2012-05-29 09:54:43 +02:00
Wim Taymans
2ba36a69bf
video: add flags for the pack/unpack functions
...
Add a flag argument to the pack and unpack function so that we can expand it
later when needed. We could for example prefer a High Quality pack/unpack
operation later.
2012-05-29 09:53:15 +02:00
Wim Taymans
3925b20e25
video: add padding
2012-05-29 09:52:40 +02:00
Wim Taymans
467f8d360a
video: fix v216 format description
...
Fix the offsets of v216 video
Add the complex flag to some formats
2012-05-28 16:14:30 +02:00
Wim Taymans
413cd6dc2e
videopool: take pixel stride into account
...
When we need to add borders, take the pixel stride into account to move to the
right horizintal offset.
2012-05-28 12:59:40 +02:00
Tim-Philipp Müller
af7dc60479
tag: don't use GstStructure API on tag lists
2012-05-26 19:56:30 +01:00
Wim Taymans
59d8d73aa2
video: add 10 bits I420 format
...
Add 10 bits I420 format definitions
Move encoded format as second entry in the array so that it doesn't end up in a
weird place when we add formats.
See https://bugzilla.gnome.org/show_bug.cgi?id=665034
2012-05-25 17:01:19 +02:00
Arun Raghavan
9c29cd70ee
audio: Fix DTS IEC61937 payloading
...
DTS type I-III specify the burst length in bits. Only type IV (which we
do not currently support) needs it to be specified in bytes. Thanks to
Julien Moutte for pointing this out.
2012-05-25 12:38:32 +02:00
Raimo Järvi
d42a197c04
video: Fix printf format warnings on mingw-w64
...
https://bugzilla.gnome.org/show_bug.cgi?id=676442
2012-05-24 10:57:21 +02:00
Sreerenj Balachandran
38a2fe673e
videodecoder: improve doc
2012-05-23 10:16:25 +02:00
Sreerenj Balachandran
a19ae16b5a
videoutils: improve doc
2012-05-23 10:16:25 +02:00
Sebastian Dröge
fc537ad667
discoverer: Put back accidentially deleted line
2012-05-21 10:08:33 +02:00
Anton Belka
42cb4bdf67
discoverer: Add TOC support to discoverer and add -c/--toc parameters to gst-discoverer utility
2012-05-21 08:52:05 +02:00
Wim Taymans
b0cc0a31e2
rtsp: unref sockets in _close
...
When closing the connection, unref the currently used sockets. This should close
them when not in use. We need to do this because else we cannot reconnect
anymore after a close, the connect function requires that the sockets are NULL.
2012-05-18 09:47:26 +02:00
Wim Taymans
2cd15bbef8
rtsp: clear the GError for pending connect
...
Clear the GError after g_socket_connect tells us that the connection is pending.
If we don't do this, glib complains when we try to reuse the non-NULL GError
variable a little below.
2012-05-18 09:47:26 +02:00
Tim-Philipp Müller
892cefe651
appsrc: simplify get_property for "caps" property
2012-05-17 22:11:27 +01:00
Tim-Philipp Müller
e110d8b6f4
appsrc: remove filter argument from gst_app_src_get_caps()
...
Was presumably added by mistaken in the grand _get_caps()
conversion. Doesn't really make sense for a property accessor.
2012-05-17 22:04:24 +01:00
Sebastian Dröge
ed6d46e156
video: Rename gst_video_codec_frame_set_hook() to gst_video_codec_frame_set_user_data()
...
And also add a getter and allow to set NULL user_data but still call
the passed destroy notify.
2012-05-16 14:06:12 +02:00
Tim-Philipp Müller
c1bc70300d
docs: fix up video decoder/encoder docs a bit
...
Makes gtk-doc happy.
2012-05-16 12:40:07 +01:00
Tim-Philipp Müller
0e216d1f4c
typefinding, ogg: don't bother with annodex media types
...
They're hardly used, and probably more confusing than anything
else, and it's not clear that anyone would really need to be
able to tell them apart at the media type level.
2012-05-13 18:49:31 +01:00
Vivia Nikolaidou
34d6031974
discoverer: Ported fix for bug #673504 to 0.11
2012-05-11 16:44:15 +02:00
Vivia Nikolaidou
4d9d707e32
discoverer: Wait until an update/filler newsegment event or buffer for subtitle streams
...
This makes sure that we wait until we received all tags for the
subtitle streams and have all information that is collected by
the discoverer.
Fixes bug #673504 .
2012-05-11 16:44:15 +02:00
Nicolas Dufresne
c2f52f8154
video: Key unit event properties are optional
...
https://bugzilla.gnome.org/show_bug.cgi?id=675758
2012-05-10 16:08:58 +02:00
Sebastian Rasmussen
b7b123964b
gst-libs: make pkg-config get path to pkg-config dirs from configure
...
When --with-pkg-config-path is supplied to configure this path is now
explicitly propagated to pkg-config.
https://bugzilla.gnome.org/show_bug.cgi?id=673377
2012-05-05 23:26:20 +01:00
Sebastian Dröge
ecd061e48c
videodecoder: Also change gst_video_decoder_get_oldest_frame() to return a new reference
2012-05-01 16:59:10 +02:00
Edward Hervey
4d7cd2e638
videoencoder: _get_oldest_frame: return a reference
2012-05-01 16:59:06 +02:00
Edward Hervey
67a4c0c7b2
videoencoder: Add a reference to frame passed to subclass
...
We have one reference owned by the internal frame list and one reference
passed to the subclass.
2012-05-01 16:59:00 +02:00
Edward Hervey
8217575af1
videodecoder: Add a reference to frame passed to subclass
...
We have one reference owned by the internal frame list and one reference
passed to the subclass.
2012-05-01 16:58:55 +02:00
Wim Taymans
34bfcb2af9
videodecoder: don't leak events
...
When need to push out all the previously received events, concatenate all the
events from the previous frames (instead of leaking the old ones)
Improve debugging a little
Conflicts:
gst-libs/gst/video/gstvideodecoder.c
2012-05-01 16:58:48 +02:00
Wim Taymans
8fde7850c0
videodecoder: don't leak frames
...
Frames receive a refcount when added to the frames list so release that refcount
in gst_video_decoder_do_finish_frame(). Also release the ref on the frame
because gst_video_decoder_do_finish_frame() takes ownership of the passed frame.
2012-05-01 15:03:40 +02:00
Wim Taymans
e8c7f57a0a
videodecoder: avoid double unlock
2012-05-01 15:03:21 +02:00
Sebastian Dröge
52dfa13522
videofilter: Use a GstVideoBufferPool if none was provided
2012-05-01 13:33:20 +02:00
Sebastian Dröge
cb04d8e003
videodecoder: Do bufferpool configuration inside the default decide_allocation() implementation
...
This allows subclasses to override it, as is necessary for e.g. the
video-crop meta. It is now necessary that after decide_allocation()
there is always a allocator and a configured buffer pool inside the
query.
2012-05-01 13:33:20 +02:00
Tim-Philipp Müller
9c09fbda52
tag: improve gobject-introspection annotations
2012-04-29 17:16:38 +01:00
Tim-Philipp Müller
885df9cace
pbutils: update descriptions for new webm/matroska media types
2012-04-28 15:51:08 +01:00
Sebastian Dröge
f9facc6a4a
video: Remove interlaced handling from the video base classes
...
This must be handled by the subclasses in 0.11 because interlacing
is much more complex now and can't be handled in a generic way.
2012-04-25 18:21:03 +02:00
Wim Taymans
ae42b25c07
video: improve docs and design of multiview interlaced
...
Put fields of interlaced frames after eachother.
Improve the docs of the video interlaced enums.
2012-04-25 15:27:04 +02:00
Wim Taymans
07d34f576a
video: add fields interlacing enum
...
Add an enum and docs for the fields interlace mode.
Improve the video caps docs for the fields interlace mode.
2012-04-25 14:57:40 +02:00
Wim Taymans
777d044357
videodec: remove some FIXMEs
2012-04-25 14:57:40 +02:00
Sebastian Dröge
bcef106f73
video: Fix latency query handling if the element's own max_latency is GST_CLOCK_TIME_NONE
2012-04-25 13:53:29 +02:00
Sebastian Dröge
71900c4342
video: Only use the interlacing buffer flags if the caps specify interlaced video
2012-04-25 13:46:00 +02:00
Sebastian Dröge
47e169b0b5
videoencoder: Proxy the interlaced buffer flags to the GstVideoCodecFrame
2012-04-25 13:44:30 +02:00
Sebastian Dröge
76f47979c1
videoencoder: Don't propose video-meta by default
2012-04-25 13:19:11 +02:00
Sebastian Dröge
7c165187af
videodecoder: Change configure_buffer_pool() vfunc to decide_allocation() with same semantics as in basetransform
2012-04-25 13:19:11 +02:00
Sebastian Dröge
3de8d58c4e
videoencoder: Add support for subclasses to propose allocation parameters
2012-04-24 22:42:59 +02:00
Sebastian Dröge
1483997207
videodecoder: Add support for subclasses to configure the buffer pool
2012-04-24 22:35:29 +02:00
Sebastian Dröge
a8c40a658c
video: Some porting bugfixes
2012-04-24 21:32:08 +02:00
Sebastian Dröge
b945c01549
videodecoder: Add minimal support for buffer pools
2012-04-24 20:04:48 +02:00
Sebastian Dröge
63563e3d5e
videodecoder: Require to chain up to the parent classes event functions
2012-04-24 19:51:30 +02:00
Sebastian Dröge
13b88908ce
videoencoder: Require to chain up to the parent's sink event functions
2012-04-24 19:47:22 +02:00
Sebastian Dröge
f7bc9cc5ba
video: Initial port of video base classes and related things to 0.11
2012-04-24 19:35:24 +02:00
Sebastian Dröge
3ab5be1cff
video: Remove custom marshallers
2012-04-24 18:16:27 +02:00
Sebastian Dröge
a0e3a9e32d
Merge remote-tracking branch 'origin/0.10'
...
Video base classes and theora plugin still needs to be ported again
Conflicts:
docs/libs/gst-plugins-base-libs-docs.sgml
docs/libs/gst-plugins-base-libs-sections.txt
docs/libs/gst-plugins-base-libs.types
ext/theora/gsttheoradec.c
ext/theora/gsttheoradec.h
ext/theora/gsttheoraenc.c
ext/theora/gsttheoraenc.h
gst-libs/gst/video/Makefile.am
gst-libs/gst/video/video.c
gst-libs/gst/video/video.h
gst/playback/gsturidecodebin.c
tests/check/libs/video.c
tests/check/pipelines/theoraenc.c
win32/common/libgstvideo.def
2012-04-24 18:14:31 +02:00
Edward Hervey
4f1e7eec40
video: Fix gst_video_info_to_caps
...
And use the 0.10 caps style
2012-04-24 17:03:40 +02:00
Edward Hervey
a744c98985
videodecoder: Detect buffers inputted with DTS
...
Some container formats (like AVI) set DTS on the buffers instead of
PTS.
We detect this by:
* detecting if input timestamps are non-increasing
* detecting if the order the frames come out is the same as the order
they were inputted (meaning the implementation is reordering frames).
If the decoder reorders frames, but input buffer timestamps were not
reordered, that means the buffers has DTS and not PTS as their timestamp.
If this is the case, we use set the PTS of the outgoing frames in the
same order as they were given to the decoder.
This fixes the issue for any decoder using this base class (yay).
2012-04-24 17:03:40 +02:00
Edward Hervey
f6cfd763e4
video: Base classes for video decoders and encoders
2012-04-24 17:03:40 +02:00
Edward Hervey
a22545134d
video: Add gst_video_info_is_equal
2012-04-24 10:44:44 +02:00
Edward Hervey
0a7d047b1f
video: Add GST_VIDEO_FORMAT_ENCODED
2012-04-24 10:44:44 +02:00
Edward Hervey
8f00d76c97
video: Backport GstVideoInfo/GstVideoFormatInfo from 0.11
2012-04-24 10:44:44 +02:00
Wim Taymans
04a2610444
video: improve frame_flags
...
Rename the frame_flags to flags. Because they are flags on the frame object it
does not need the redundant frame_ prefix.
Change the order of the metadata constructor so that the flags come before the
format and dimension arguments.
2012-04-19 14:14:35 +02:00
Sebastian Dröge
c84108de3c
video: Update for libgstvideo API changes
2012-04-19 12:30:57 +02:00
Sebastian Dröge
91ffe7dd5e
video: Clean up interlaced flags and enums
...
There's a new GstVideoFrameFlags enum now that contains the frame
specific flags only. GstVideoFlags does not contain the TFF/TFF/ONEFIELD
flags anymore because these are strictly frame specific.
Also add fallback to parse these fields from the GstBufferFlags in
gst_video_frame_map() if there's no GstVideoMeta attached to the buffer.
2012-04-19 12:30:57 +02:00
Alessandro Decina
131bf5fb47
appsrc: reset is_eos flag after a succesful seek from _create
2012-04-19 06:18:41 +02:00
Alessandro Decina
f0b17b774f
appsrc: reset is_eos flag after a succesful seek from _create
2012-04-19 05:51:56 +02:00
Tim-Philipp Müller
5a3304c702
pbutils: update for ogg media type changes
2012-04-15 23:04:07 +01:00
Wim Taymans
66615a8a6a
videofilter: shortcut transform_ip when not set
...
We can ask the base class to not call our transform_ip method when the subclass
didn't provide an in-place transform function.
2012-04-14 11:26:28 +02:00
Víctor Manuel Jáquez Leal
3f3dceb675
videopool: fix mem leak
...
When setting its config, the pool increase the ref count of the allocator, but
at finalize the ref count is also increased rather than decreased.
This one-liner patch changes the gst_allocator_ref() for gst_allocator_unref()
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=674011
2012-04-14 10:36:02 +02:00
Sebastian Dröge
69b18ab09d
gst-libs: Remove interfaces libs and mixer/tuner interfaces
...
The navigation interface is now in the video library.
2012-04-13 13:14:13 +02:00
Alban Browaeys
6c8abf24cf
libs: Link against internal tag library
2012-04-11 09:58:49 +02:00
Sebastian Dröge
8091546694
audio: Remove obsolete FIXME 0.11
2012-04-11 09:57:35 +02:00
Alban Browaeys
8e8c18233a
pbutils: Link against internal gst video
...
Link pbutils and encoding tests against internal version of libgstvideo.
2012-04-11 09:56:17 +02:00
Alessandro Decina
ebf80977c4
audiodecoder: don't discard timestamps when consecutive input buffers have the same ts
...
Avoid pushing out buffers with the same timestamp only if the out buffers are
decoded from the same input buffer. Instead keep the timestamps when upstream
pushes consecutive buffers with the same ts.
2012-04-05 10:19:46 +02:00
Alessandro Decina
38803239c0
audiodecoder: don't discard timestamps when consecutive input buffers have the same ts
...
Avoid pushing out buffers with the same timestamp only if the out buffers are
decoded from the same input buffer. Instead keep the timestamps when upstream
pushes consecutive buffers with the same ts.
2012-04-04 20:52:50 +02:00
Mark Nauwelaerts
6eeca397fc
audioencoder: plug a definite and rare leak
2012-04-04 19:57:35 +02:00
Mark Nauwelaerts
43b0c5d258
encoding-profile: release additional obtained caps reference
2012-04-04 19:50:07 +02:00
Sebastian Dröge
65307dd132
gst: Update versioning
2012-04-04 14:55:15 +02:00
Wim Taymans
296e1bf3dd
rtpbuffer: removed old memory
...
Ensure writability of rtp buffer and remove old memory first
Fix some docs
2012-04-04 09:34:00 +02:00
Mark Nauwelaerts
91aa1eb7dd
audio{de,en}coder: fixup documentation
2012-04-02 14:23:33 +02:00
Wim Taymans
ac9a8781ba
video: fix macros
2012-04-02 12:25:30 +02:00
Wim Taymans
6e9d28eef6
rtp: fix initializer
2012-04-02 11:05:38 +02:00
Wim Taymans
92f46c07fe
rtpbuffer: keep more state
...
Prepare for the future, make it possible to map multiple buffer regions, like
the header and the payload.
2012-04-02 10:31:18 +02:00
Wim Taymans
9ef519d99a
Improve buffer allocation of wrapped memory
2012-04-01 18:11:23 +02:00
Wim Taymans
1d60bd12e5
videometa: use new buffer methods when mapping memory
...
Use _find_memory and _map_range to simplify, improve and optimize the
memory mapping of video frames.
2012-04-01 18:04:10 +02:00
Wim Taymans
6f8347de9f
videofilter: don't map writable in passthrough
...
In passthrough mode we shouldn't map the buffer in write mode because the buffer
might not be writable.
2012-04-01 18:01:15 +02:00
Sebastian Dröge
b701534204
audioencoder: Fix handling of offset/offset-end for Ogg codecs
...
Fixes the vorbisenc unit test.
2012-03-31 12:55:15 +02:00
Wim Taymans
345dc31f20
update for buffer api change
2012-03-30 18:15:30 +02:00
Sebastian Dröge
a103fa85a9
audio{en,de}coder: Track input and output segments separately
...
They can go out of sync for some time if processing of buffers
on the old segment happens after the segment was received.
2012-03-30 13:21:09 +02:00
Sebastian Dröge
9cd9f00799
audioencoder: Add gst_audio_encoder_set_headers() to the docs
2012-03-30 12:57:02 +02:00
Sebastian Dröge
78bcb67ea5
audioencoder: Add function to set in-stream headers
...
API: gst_audio_encoder_set_headers()
This makes the hack in vorbisenc and probably others in ::pre_push()
unnecessary.
2012-03-30 12:47:28 +02:00
Sebastian Dröge
f791ec1f10
audioencoder: Rename ::event() to ::sink_event() and add ::src_event()
2012-03-30 12:23:13 +02:00
Sebastian Dröge
d8cb235fe4
audiodecoder: Rename ::event() to ::sink_event() and add ::src_event()
2012-03-30 12:23:13 +02:00
Edward Hervey
dccfbef7f9
exiftag: Check return value of byte write methods
2012-03-30 12:13:40 +02:00
Edward Hervey
32c617c867
video: Fix 'comparison of unsigned enum expression < 0 is always false' compiler warning
2012-03-30 12:05:51 +02:00
Sebastian Dröge
40a4f2f8aa
audiodecoder: Rename _byte_time() to _estimate_rate()
...
Which is telling more about what this actually does and is more
consistent with the video base classes.
2012-03-30 11:51:47 +02:00
Mark Nauwelaerts
6039266c43
rtpbasepayload: plug caps leak
2012-03-29 17:15:43 +02:00
Sebastian Dröge
9e13d70b2c
Merge remote-tracking branch 'origin/0.10'
...
Conflicts:
gst-libs/gst/video/video-overlay-composition.c
tests/check/libs/video.c
2012-03-29 15:00:22 +02:00
Mark Nauwelaerts
435c340d15
appsink: optionally obtain current caps from negotiated pad caps
2012-03-28 16:45:03 +02:00
Mark Nauwelaerts
2ddc6bb63d
audiodecoder: handle downstream seeking query
...
... or not, in line with how segment events are treated.
2012-03-28 16:41:01 +02:00
Wim Taymans
69298c5534
update for buffer changes
2012-03-28 12:53:01 +02:00
Mark Nauwelaerts
fd24621464
tagmux: more discrete segment event dropping
2012-03-27 18:16:53 +02:00
Wim Taymans
18fe3ed9fa
videopool: avoid caps copy
...
Now that the caps from the bufferpool are not returned as const we
can take a ref instead of doing a copy.
2012-03-27 15:44:59 +02:00
Wim Taymans
77a4f5865b
audioencoder: avoid caps copy
2012-03-27 15:44:43 +02:00
Wim Taymans
c6f55538e3
video: keep the buffer reffed in the videoframe
...
This would also ensure that the buffer is not writable while mapped.
2012-03-27 15:01:01 +02:00
Wim Taymans
bee3d7b683
update for get_param changes
...
Remove the const from the GstCaps.
Fix some GstStructure leaks.
2012-03-27 12:44:02 +02:00
Mark Nauwelaerts
6c260d732c
video: remove bogus define
2012-03-26 18:13:13 +02:00
Sebastian Dröge
b47350b6e9
pbutils: Add some more subtitle format descriptions
2012-03-26 13:52:41 +02:00
Tim-Philipp Müller
3242f55861
test: fix leak in video overlay composition unit test
...
gst_buffer_set_qdata() will leak the structure passed to it
when called incorrectly (e.g. on a non-metadata-writable buffer).
This is expected, but we must avoid doing that in valgrind.
2012-03-25 13:35:23 +01:00
Tim-Philipp Müller
35a17ac152
video: overlay-composition: blending micro-optimisation
2012-03-25 11:33:04 +01:00
Tim-Philipp Müller
79953f27a8
video: overlay-composition: try to avoid floating point maths in inner loop
...
Try to avoid floating point maths for each pixel to be blended in
inner loop, and try to avoid the multiplication entirely for the
most common case of the global alpha being 1. Could probably be
refactored a bit more.
2012-03-25 11:31:31 +01:00
Tim-Philipp Müller
32679e1826
video: overlay-composition: some minor clean-ups
...
extract_alpha and apply_global alpha always return TRUE really,
so just do away with the return value. Convert a g_return_if_fail()
into a g_assert(), since this is only to check internal consistency
and not a guard for public API. Add some locking.
https://bugzilla.gnome.org/show_bug.cgi?id=668483
2012-03-25 11:27:24 +01:00
Holger Kaelberer
76c0881549
video: overlay-composition: add support for global alpha multiplicator
...
https://bugzilla.gnome.org/show_bug.cgi?id=668483
2012-03-25 11:27:24 +01:00
Tim-Philipp Müller
f17b8cbbc3
riff: map ISBJ tag to GST_TAG_ALBUM_ARTIST
...
http://www.bass.radio42.com/help/html/7e1a8908-88bd-d54b-77d7-f0d08466284c.htm
2012-03-24 00:18:17 +00:00
Wim Taymans
32bd12dba9
Merge branch 'master' into 0.11
...
Conflicts:
.gitignore
common
configure.ac
ext/vorbis/gstvorbisdeclib.h
gst-libs/gst/audio/gstaudioencoder.c
gst-libs/gst/riff/riff-read.c
gst/playback/gstplaysink.c
gst/playback/gstplaysinkconvertbin.c
tests/check/libs/video.c
2012-03-22 11:35:13 +01:00
Wim Taymans
a619d3a8b0
update for memory api changes
2012-03-20 13:20:36 +01:00
Tim-Philipp Müller
dfb244fb50
pbutils: make encoding profile classes opaque
...
Don't typedef them to GObjectClass directly, but hide behind
private structs. Fixes issues with gobject-introspection
and GstEncodingProfileClass.
https://bugzilla.gnome.org/show_bug.cgi?id=668542
2012-03-20 10:51:53 +00:00
Mark Nauwelaerts
d455b29db4
video: fix assertion comparison mishap
2012-03-20 11:22:29 +01:00
Mark Nauwelaerts
278b0f093b
audio: include audio enumtypes
2012-03-19 16:18:56 +01:00
Wim Taymans
e620dbc57d
video: add function to copy one video plane
2012-03-19 12:26:11 +01:00
Tim-Philipp Müller
fe0e2d65e1
riff: map IPRD ("product") tag to GST_TAG_ALBUM
...
http://www.bass.radio42.com/help/html/7e1a8908-88bd-d54b-77d7-f0d08466284c.htm
https://bugzilla.gnome.org/show_bug.cgi?id=670286
2012-03-18 22:56:58 +00:00
Wim Taymans
dfb8e7cb2c
don't pass random pointers to pull_range
2012-03-16 21:46:47 +01:00
Wim Taymans
1e884df1df
update for bufferpool changes
2012-03-15 22:10:58 +01:00
Wim Taymans
7c0e2b5b1e
update for allocation query changes
2012-03-15 20:36:51 +01:00
Wim Taymans
02dc419aae
update for bufferpool api change
2012-03-15 14:06:24 +01:00
Wim Taymans
df5253b22c
update for memory api changes
2012-03-15 13:32:08 +01:00
Wim Taymans
28034226c6
update for memory api changes
2012-03-14 21:35:45 +01:00
Wim Taymans
39d78762b9
take padding into account
2012-03-14 19:56:51 +01:00
Tim-Philipp Müller
2c4b379470
video: overlay-composition: fix alpha premultiply and unpremultiply
...
Fix component offsets for little endian systems.
https://bugzilla.gnome.org/show_bug.cgi?id=668483
2012-03-14 18:04:38 +00:00
Holger Kaelberer
027f5bb471
video: overlay-composition: fix rectangle caching after alpha (un)premultiplying
...
If we are asked to (un)premultiply,we need to create the new rectangle
with the right flags, so we can find it properly on subsequent cache
lookups (also because it's wrong otherwise).
https://bugzilla.gnome.org/show_bug.cgi?id=668483
2012-03-14 18:04:38 +00:00
Holger Kaelberer
7a21d1eb32
video: overlay-composition: fix crash when doing premultiplied<->unpremultiplied alpha conversion
...
We need to copy the pixels before messing with them, not least
because the buffer creation code below assumes it's ok to take
ownership.
Fixes crash caused by double-free.
https://bugzilla.gnome.org/show_bug.cgi?id=668483
2012-03-14 18:04:38 +00:00
Holger Kaelberer
6b7f25a2f0
video: overlay-composition: check the right flags when searching for a cached rectangle
...
Compare the flags of the *cached* rectangle to the desired flags when
checking for a suitable rectangle in the cache.
https://bugzilla.gnome.org/show_bug.cgi?id=668483
2012-03-14 18:04:37 +00:00
Wim Taymans
781f9474ea
videometa: also copy map/unmap functions
2012-03-13 20:17:55 +01:00
Wim Taymans
37e940df83
rtpbasepay: add support for DTS and PTS
2012-03-13 18:15:04 +01:00
Wim Taymans
4e1ed6f649
audio: fix debug line
2012-03-13 12:39:52 +01:00
Wim Taymans
25137962ad
fix for caps API changes
2012-03-11 19:04:41 +01:00
Tim-Philipp Müller
b2d066f49c
riff: extract track number and album artist tags from INFO chunks
...
https://bugzilla.gnome.org/show_bug.cgi?id=670286
2012-03-09 20:57:02 +00:00
Tim-Philipp Müller
5cb1cd2d54
riff: when reading tags from INFO chunk, accept lower-case IDs as well
2012-03-09 20:53:27 +00:00
Wim Taymans
7296ef7c63
audiobasesink: add some G_LIKELY
2012-03-09 17:15:38 +01:00
Wim Taymans
94869bff38
audio: avoid buffer copy when nothing is clipped
...
when nothing is clipped, return the input buffer instead of creating and
returning an identical copy.
2012-03-09 16:17:54 +01:00
Sebastian Dröge
7ff608889a
audio{en,de}coder: Add optional open/close vfuncs
...
This can be used to do something in NULL->READY, like checking
if a hardware codec is actually available and to error out early.
2012-03-09 10:56:07 +01:00
Tim-Philipp Müller
29c266ccff
Merge remote-tracking branch 'origin/master' into 0.11
...
Conflicts:
common
docs/libs/gst-plugins-base-libs.types
ext/pango/gsttextoverlay.c
ext/vorbis/gstvorbisdec.c
gst/playback/gstplaysink.c
gst/playback/gstplaysinkconvertbin.c
sys/ximage/ximagesink.c
sys/xvimage/xvimagesink.c
2012-03-08 20:31:34 +00:00
Wim Taymans
8ebd13ee5e
videopool: only do alignment when videometa is enabled
...
We require the videometa activated before we can implement the alignment of
buffers. Users of the bufferpool should do this manually based on the results of
the allocation query.
2012-03-08 13:03:22 +01:00
Mark Nauwelaerts
8a3f818dce
audiodecoder: add some tag handling convenience help
2012-03-06 16:17:37 +01:00
Mark Nauwelaerts
5a0fff76f3
audiodecoder: add baseclass _CAST macro
2012-03-06 16:17:33 +01:00
Wim Taymans
4da57f08a1
videometa: make video metatransform
...
Make more generic video meta transform data that can be used for many video
transformations later.
2012-03-06 12:52:01 +01:00