Commit graph

4420 commits

Author SHA1 Message Date
Thibault Saunier
336710d355 tsbase: Fix parsing of PSI table IDs
(Ported from mpegtsdemux d8fd874f52)
2012-02-24 19:08:40 -03:00
Thibault Saunier
f977d7e743 tsdemux: Avoid unlinkely leaks and segfault 2012-02-24 15:28:35 -03:00
Edward Hervey
b6d98aea5f tsdemux: Use new clock skew estimation for outgoing timestamps
Only used in live mode
2012-02-24 17:53:52 +01:00
Edward Hervey
e6ff2f7b83 tsdemux: Various code cleanup and dead code removal 2012-02-24 17:52:33 +01:00
Edward Hervey
4bc7cd04c1 mpegtspacketizer: Fix issues with skew code
* Always try to get a timestamp for the algorithm
* Remove dead variable
* Return proper default value
2012-02-24 17:47:38 +01:00
Thibault Saunier
6a8d2c45f6 mpegtspacketizer: Estimate clock skew and retimestamps buffers more precisly
Apply the EPTLA algotithm to estimate clock skew.
Reusing code from  -good/gst/rtpmanager/rtpjitterbuffer.c
2012-02-24 10:57:09 +01:00
Thibault Saunier
48a699812b tsdemux: Clean up AAC caps mess 2012-02-24 10:57:05 +01:00
Thibault Saunier
dc8b6c678d tsdemux: Reindent gstmpegdesc.h 2012-02-24 10:57:02 +01:00
Thibault Saunier
67fd590e9a tsdemux: Support more DTS/AC3 descriptors 2012-02-24 10:56:58 +01:00
Edward Hervey
6ef0ae4ffe tsdemux: Remove useless finalize() 2012-02-24 10:56:14 +01:00
Mark Nauwelaerts
4c9ac0886a h264parse: consider nal_length_size when constructing codec_data
Fixes #670699.
2012-02-23 21:18:31 +01:00
Edward Hervey
8b73baeced tsdemux: Use incoming timestamps in live mode 2012-02-23 16:39:48 +01:00
Edward Hervey
8f433e1677 tsdemux: Report latency (700ms) 2012-02-23 16:39:48 +01:00
Edward Hervey
c492b00b69 mpegtsbase: Query whether upstream is live or not 2012-02-23 16:39:48 +01:00
David Schleef
342a04c9d2 colorspace: Fix v210 writing out of bounds 2012-02-20 20:11:13 -08:00
David Schleef
e0db2faa12 colorspace: clamp intermediates when dithering 2012-02-19 00:16:31 -08:00
Thibault Saunier
8cb0e87f56 mpegtsdemux: Not apply various time the same PMT to a program when repetead
Sometimes their are several times the same PMT applying to a same program in a stream,
tsdemux was totally baffled when this was happening, we now keep the one we
already applied so it works properly.
2012-02-17 12:19:20 -03:00
Thibault Saunier
adc947e127 tsdemux: fix glib deprecation 2012-02-17 12:19:20 -03:00
Thiago Santos
39bad1d6ca wrappercamerabinsrc: Put source to null when resetting caps
It seems that v4l2src isn't happy when switching formats on ready
state, it works when putting it to NULL. Keep this workaround in
wrappercamerabinsrc while v4l2src isn't fixed.

Fixes #849832
2012-02-16 22:51:21 -03:00
Thiago Santos
2ce709cf4a wrappercamerabinsrc: Put source in NULL when it fails changing state
When source is being reset to change caps, check the return of
the state syncing function to avoid leaving the source in an
unconsistent state.
2012-02-16 01:30:23 -03:00
Tim-Philipp Müller
b3592ebda8 mve: don't return a boolean for a GstFlowReturn
fixes playback.
2012-02-16 00:30:05 +00:00
Thibault Saunier
1182dd0c1b tsdemux: Avoid throwing FLOW_ERROR on last PCR processing error
In the case of scanning last pcr, errors are not critical, so we keep
the stream flowing.
2012-02-15 15:48:44 -03:00
Thibault Saunier
cda0d3aed8 tsdemux: Add AAC latm support 2012-02-15 15:48:44 -03:00
Thibault Saunier
6094ec27b1 tsdemux: Minor refactoring/code cleaning
... add some debugging symbols in the mean time.
2012-02-15 15:48:44 -03:00
Mark Nauwelaerts
5cce89b048 h264parse: use proper NALU offset for config data insertion
... which has to be the position of the start code, which is almost always
but need not be 4 bytes.
2012-02-15 14:29:45 +01:00
Jan Schmidt
debf4984df mpegtsmux: Trivial bug fix. Don't copy data from an uninited buffer. 2012-02-13 23:05:35 +11:00
Mark Nauwelaerts
1cbd755a2c h264parse: unobfuscate frame parsing code 2012-02-10 14:52:03 +01:00
Thiago Santos
3b549c4dbd camerabin: prevent captures from being lost when switching resolutions
When switching capture caps, camerabin1 resets its state to ready
to force a new caps to be negotiated. This causes ongoing captures
to be aborted.

This commit adds a condition to wait for captures to finish before
going to ready state.
2012-02-06 10:48:32 -03:00
Thiago Santos
9bd40e92ce camerabin: Improve debug message about processing counter
Mention on the logs how many capture operations might have been
lost
2012-02-06 10:48:32 -03:00
Vincent Penquerc'h
ddff93320d rotate: angle is in radians already, do not scale it
Other plugins use radians, and the angle documentation says radians.

https://bugzilla.gnome.org/show_bug.cgi?id=669365
2012-02-04 22:07:54 +00:00
Vincent Penquerc'h
e84bbcbeab rotate: fix description string to match what the element does
https://bugzilla.gnome.org/show_bug.cgi?id=669365
2012-02-04 22:07:54 +00:00
Vincent Penquerc'h
2eef9828d6 mpegtsdemux: do not emit no-more-pads
Doing so may fix some things, but breaks others (new streams being
added in the future).

https://bugzilla.gnome.org/show_bug.cgi?id=665814
2012-02-03 17:37:16 +00:00
Mark Nauwelaerts
c36bb8b73d h264parse: decrease passthrough negotiation preference
Also ensure parsing fixed caps when negotiating rather than failing to
handle non-fixed list cases.

See #668471.
2012-02-03 11:27:32 +01:00
Tim-Philipp Müller
f8f4620451 build: fix CFLAGS order and LIBS order
_BAD_CFLAGS should always come first, then GST_PLUGINS_BASE_CFLAGS,
then GST_BASE_CFLAGS then GST_CFLAGS. Same for libs: first plugins
base libs, then GST_BASE_LIB then GST_LIBS.
2012-02-03 00:50:33 +00:00
Vincent Penquerc'h
0d1c9624ea mpegpsmux: include specific AAC stream-format in template caps
This elements seems to support raw and adts AAC.

https://bugzilla.gnome.org/show_bug.cgi?id=665394
2012-02-02 12:37:02 +00:00
Vincent Penquerc'h
2dec0950cf tsdemux: add explicit supported AAC stream-format in template caps
https://bugzilla.gnome.org/show_bug.cgi?id=665394
2012-02-02 12:37:02 +00:00
Vincent Penquerc'h
27f21d31ac mpegtsmux: specify in template caps we only take raw/adts AAC format
This appears to be what this element supports.

https://bugzilla.gnome.org/show_bug.cgi?id=665394
2012-02-02 12:37:02 +00:00
Vincent Penquerc'h
5c8ca4e1d0 mpegdemux: include specific AAC stream-format types in template caps
https://bugzilla.gnome.org/show_bug.cgi?id=665394
2012-02-02 12:37:01 +00:00
Mark Nauwelaerts
da89903f81 h264parse: disable optimized packetized processing for reverse playback
... as baseparse then provides whole chunks of data (as it should) at once
to be parsed, and so the assumptions used to optimize are no longer valid.

Fixes #667560.
2012-02-01 13:53:17 +01:00
Mark Nauwelaerts
283f97cb79 h264parse: also mind SEI position for config data insertion
Fixes #668627.
2012-02-01 13:53:15 +01:00
Mark Nauwelaerts
136f42974d h264parse: unbreak optimized packetized NALU collection processing
... in that it was so optimized it did not consider grouping NALU into AU
altogether.

Fixes #668627.
2012-02-01 13:53:13 +01:00
Rob Clark
521e8b199b videoparsers: set interlaced field in caps for mpeg2
https://bugzilla.gnome.org/show_bug.cgi?id=667218
2012-01-31 11:51:37 +00:00
Alessandro Decina
f547336fdc mpegtsmux: update after collectpads2 changes 2012-01-31 08:44:04 +01:00
Vincent Penquerc'h
8147669971 plenty: fixup glib deprecations 2012-01-27 15:47:07 +00:00
Thiago Santos
f4d6e03b9b camerabin: Add viewfinder colorspace conversion to default flags
This make the default settings more likely to work. If needed, one
can optimize by disabling conversions with the flags.
2012-01-27 07:37:56 -03:00
Thiago Santos
5edd64eec6 camerabin2: Removing solved TODO and fixing a typo 2012-01-27 07:37:55 -03:00
Alessandro Decina
8fb0beaf00 mpegpsdemux: limit the amount of scanning done on duration queries
Limit the amount of data scanned when looking for PTSes in duration queries as a
failsafe for kinda broken, potentially large files with sparse or no PTSes.
2012-01-25 13:06:46 +01:00
Alessandro Decina
0961e2f494 mpegpsdemux: don't scan for the last PTS if the first wasn't found 2012-01-25 13:06:45 +01:00
Vincent Penquerc'h
cf74b0bc76 mpegtsdemux: fix frequent deadlock demuxing MPEG TS
A previous patch to add streams early to fix playback of
low bitrate streams causes frequent deadlock of a nature
I'm at loss how to fix.
I'm not certain whether it's a bug in decodebin2, or in
that mpegtsdemux patch.
Since it causes a major regression, let it be disabled for now.
2012-01-23 17:47:45 +00:00
Mark Nauwelaerts
d8fdd3485b mpegtsdemux: break out when stream identified 2012-01-23 14:22:18 +01:00
Mark Nauwelaerts
b00ed32c5a mpegtsdemux: avoid NULL manipulation if invalid input 2012-01-23 14:22:18 +01:00
Mark Nauwelaerts
f1810502a7 mpegdemux: avoid NULL manipulation if invalid input 2012-01-23 14:22:18 +01:00
Mark Nauwelaerts
552f991ba0 mpegdemux: avoid some unlikely leaks 2012-01-23 14:22:17 +01:00
Mark Nauwelaerts
c63be1402a mpegvideoparse: prevent some fall-through cases 2012-01-23 14:22:17 +01:00
Mark Nauwelaerts
ccee94e30d mve: use signed loop variable
... when using it in i >= 0.
2012-01-23 14:22:12 +01:00
Mark Nauwelaerts
6b71ccb552 mve: ensure best target found 2012-01-23 14:13:47 +01:00
Mark Nauwelaerts
c004a1e462 festival: enhance some error case handling 2012-01-23 14:13:45 +01:00
Mark Nauwelaerts
ae02c7820b nuvdemux: check directly for valid buffer
... rather than doing so indirectly in (incomplete) semantic way.
2012-01-23 14:13:43 +01:00
David Schleef
4b11ced2eb Revert "!colorspace: fix odd size problems"
This reverts commit e2e6fdcb6b.
Untested commit was accidentally pushed.
2012-01-22 16:59:37 -08:00
David Schleef
de562a194f Revert "colorspace: Fix out-of-bound errors for v210"
This reverts commit 3b8b87cb6c.
Untested commit was accidentally pushed.
2012-01-22 16:58:59 -08:00
David Schleef
96f7c5374f inter: Fix compilation
Fix up previously botched rebase.
2012-01-22 16:55:46 -08:00
David Schleef
3b8b87cb6c colorspace: Fix out-of-bound errors for v210 2012-01-22 15:52:15 -08:00
David Schleef
e2e6fdcb6b !colorspace: fix odd size problems 2012-01-22 15:52:15 -08:00
David Schleef
4eb4602746 inter: Add channel property 2012-01-22 15:52:15 -08:00
David Schleef
70684f4d1b colorspace: Add jpeg color-matrix conversion 2012-01-22 15:49:44 -08:00
David Schleef
f02ee5b403 inter: Add subtitle inter elements 2012-01-22 15:49:44 -08:00
Tim-Philipp Müller
27354f065d mpegpsdemux: handle corner-case of short read in pull_buffer better
It's extremely unlikely, but there are corner cases where a short
read might happen, so handle that, just in case.
2012-01-19 15:56:12 +00:00
Mark Nauwelaerts
dbc8bbd755 adpcmdec: port to audiodecoder 2012-01-17 21:37:48 +01:00
Mark Nauwelaerts
1a73bf0b79 adpcmenc: port to audioencoder 2012-01-17 21:37:45 +01:00
Vincent Penquerc'h
6b4038fed3 debugspy: fix string leak 2012-01-16 17:30:22 +00:00
Vincent Penquerc'h
31cb57fbb7 mpegdemux: fix missing finalize chaining to parent
This code does not seem to trigger on my test streams, so it's
a bit of a blind fix, but seems safe enough to push.
2012-01-16 17:10:30 +00:00
Reynaldo H. Verdejo Pinochet
26a1ca09aa Android, Fix wrong dinamic linking attempt
gstcodecparsers is built as an static library.

This change fixes building with the Android buildsystem.
2012-01-13 15:57:33 -03:00
Vincent Penquerc'h
6cad606ead sirenenc: fix base class call mixup in finalize 2012-01-13 12:08:28 +00:00
Vincent Penquerc'h
76a481c726 patchdetect: remove (leaking) dead code 2012-01-12 17:11:14 +00:00
Vincent Penquerc'h
a940c6a84d inter: remove (leaking) dead code 2012-01-12 16:48:38 +00:00
Vincent Penquerc'h
72eb8209a5 hlsdemux: fix queue leak 2012-01-12 15:58:36 +00:00
Vincent Penquerc'h
083d21ce3d dccpclientsink: fix string leak 2012-01-12 15:43:51 +00:00
Vincent Penquerc'h
2b81720a22 y4mdec: fix event leak 2012-01-12 15:19:01 +00:00
Vincent Penquerc'h
6cf84a0348 interlace: fix caps leaks 2012-01-10 13:25:27 +00:00
Vincent Penquerc'h
5ea1601dd9 interlace: fix ref leak 2012-01-10 13:25:27 +00:00
Edward Hervey
fcf511aa8f tsdemux: Don't provide bogus values in non-TIME push-mode
Only take the upstream segment values in GST_FORMAT_TIME
2012-01-10 11:45:25 +01:00
Edward Hervey
24408bce96 tsdemux: Handle rollover in PTS and DTS
Also hands back-rollover which can happen with PTS
2012-01-10 11:45:22 +01:00
Vincent Penquerc'h
2dc41db862 h264parse: use the framerate that was copied a few lines above 2012-01-09 11:03:24 +00:00
Vincent Penquerc'h
e81ecb250a mpegvideoparse: add a couple consts on string literal arrays 2012-01-09 10:58:56 +00:00
David Biomech360
36c496b8f1 coloreffects: added support for a visual magnifier color filter to be used in gnome-video-effects
https://bugzilla.gnome.org/show_bug.cgi?id=666542
2012-01-06 11:24:45 +00:00
Vincent Penquerc'h
4f27b2b4fe h264parse: fix test and set not using the same input
This fixes H.264 output not having a set framerate, and
confusing some of the elements downstream (such as interlace).
2012-01-06 10:54:11 +00:00
Vincent Penquerc'h
1c25aab906 interlace: avoid dividing by zero on unkbown framerate
If the framerate is unknown, we cannot generate meaningful
buffer timestamps/durations, so set them to _NONE instead of
calculating something wrong and dividing by 0.
2012-01-06 10:54:11 +00:00
Mark Nauwelaerts
c4abaf1428 h264parse: fix and tweak frame timestamping
... to run with properly init'ed variables, and to only perform interpolation
in safe cases.
2012-01-04 11:16:18 +01:00
Mark Nauwelaerts
9d0c7d054e h264parse: prefer negotiating pass-through 2012-01-03 22:10:20 +01:00
Mark Nauwelaerts
dcd2ee421a h264parse: mark byte-stream AU frame with inserted codec NALs as keyframe 2012-01-03 22:08:07 +01:00
Mark Nauwelaerts
75b8ddb6cf h264parse: properly determine skip amount when no NAL start found yet 2012-01-03 20:27:07 +01:00
Mark Nauwelaerts
c54144cc16 h264parse: some more proper parse state reset 2012-01-03 20:26:51 +01:00
Thiago Santos
e4d3d2dcd1 camerabin2: clarify some message logs
Be explicit on which encodebin we're switching profiles on the
log messages
2011-12-30 00:02:19 -03:00
Thiago Santos
9de92cf9dc camerabin2: fix gvalue leak 2011-12-27 16:40:38 -03:00
Thiago Santos
399ec70a08 camerabin2: secure event ref when sending event to parent class
camerabin2 needs to hold an extra ref on send_event before sending
it to the parent class as it will need to use it after the parent
handles it.
2011-12-27 16:40:38 -03:00
Thiago Santos
36fbb8eea4 basecamerabinsrc: remove redundant functions
gst_bin_get_by_interface should be enough for applications.
Haven't seen anyone using those other than wrappercamerabinsrc.
2011-12-22 16:17:56 -03:00
Thiago Santos
d9e13c4268 camerabin2: remove unused helper function
This drop_eos_probe function is not used anymore, remove it
2011-12-22 16:13:59 -03:00
Thiago Santos
0ce5021058 camerabin2: Fix A/V sync for captures
Audio src was pushing newsegments starting from 0, even when its buffers
were not starting with 0 as their timestamps. Add a buffer probe that
checks the ts of the first buffer and uses that to push a newsegment,
just like we do for video on wrappercamerabinsrc.
2011-12-20 15:05:27 -03:00
Thiago Santos
88e3d82201 wrappercamerabinsrc: Push newsegments on video capture start
Pushing newsegments to inform muxers about the start time of the
video buffer timestamps.
2011-12-20 14:46:26 -03:00
Vincent Penquerc'h
b23e6bfa70 mpegtsdemux: only warn when we see a PID with unknown type
This is quite frequent, and we will just ignore that stream,
so an error is not warranted.
2011-12-19 13:18:51 +00:00