Jan Schmidt
6b45854967
resindvd, dvdspu: Use new still-frame API from gst-plugins-base
...
Replace the current custom DVD still-frame events with new event
creation/parsing API from libgstvideo.
2009-11-18 03:10:32 +00:00
Jan Schmidt
2b25e97bef
Revert "aiff: Disable aiff muxer for this release."
...
This reverts commit 7426be70ff
.
Re-enable the aiff muxer now that gst-plugins-bad 0.10.17 is out
and we can rely on gst-plugins-base from git.
2009-11-18 03:10:31 +00:00
Thiago Sousa Santos
48a2bbd6ad
asfmux: handle streams with different start times
...
Prevents losing sync when remuxing streams with different
start times. The smallest start time is selected as
the base time and all timestamps are subtracted
from it to get the actual time to be used when
muxing and building indexes
Fixes #586848
2009-11-17 23:04:54 -03:00
Thiago Sousa Santos
d70afdccd1
qtmux: do not leak a string
...
Frees a string after use. Also does some code organization
2009-11-17 23:04:54 -03:00
Thiago Sousa Santos
b53243fed3
qtmux: do not add size to the pointer variable
...
Do not wrongly add the result of the function to the
pointer to the buffer size. Instead, check the result
to see if the serialization was ok.
Based on a patch by: "Carsten Kroll <car@ximidi.com>"
Fixes #602106
2009-11-17 23:04:53 -03:00
Thiago Santos
1d155a6357
qtmux: handle 'late' streams
...
When muxing streams, some can start later than others. qtmux
now handle this by adding an empty edts entry with the
duration of the 'lateness' to the stream's trak.
It tolerates a stream to be up to 0.1s late.
Fixes #586848
2009-11-17 23:04:53 -03:00
Thiago Santos
1f7626f2f5
qtmux: adds the EDTS and ELTS atoms to atoms.c
...
These atoms will be useful for signaling streams
that start later in the file. As well for adding
edit lists if needed sometime later.
2009-11-17 23:04:53 -03:00
Michael Smith
dde31f09bd
adpcmdec: decode adpcm without explicit length, as found in qt.
2009-11-17 18:00:27 -08:00
Jan Schmidt
181786f8bf
dvdspu: Forward the still frame event downstream
...
Forward still-frame events downstream so elements like deinterlace
can use them.
2009-11-18 01:58:34 +00:00
Jan Schmidt
7426be70ff
aiff: Disable aiff muxer for this release.
...
The aiff muxer relies on GstByteWriter API added after 0.10.25. Disable
it for this release.
Revert this commit after gst-plugins-bad 0.10.17
2009-11-09 19:08:49 +00:00
Jan Schmidt
f4201f9e30
asfmux: Uncomment --disable-static flag
...
For some reason that libtool flags line that prevents building
the static lib was commented out. Reported by Mart Raudsepp on IRC.
2009-11-09 14:11:30 +00:00
Sebastian Dröge
d64c99e138
inputselector: Remove useless variables and fix a uninitialized variable compiler warnings
...
Merged from gst-plugins-base, dfd51aa82a
.
2009-11-09 11:49:47 +01:00
Sebastian Dröge
9a627f1106
inputselector: Make sure that running_time->timestamp calculation never becomes negative
...
Merged from gst-plugins-base, f365385458
.
2009-11-09 11:49:47 +01:00
Sebastian Dröge
729c62263f
inputselector: Use the start time (i.e. timestamp) as the last stop
...
Using the end time makes it impossible to replace buffers, which is
a big problem for subtitles that could have very long durations.
Merged from gst-plugins-base, 27034be461
.
2009-11-09 11:49:47 +01:00
Sebastian Dröge
9a62107e94
inputselector: Improve debugging
...
Merged from gst-plugins-base.
2009-11-09 11:49:47 +01:00
Thiago Santos
fb9d7630e1
qtmux: Adding some ifs for protection
...
Adding somes ifs to protect against warning conditions
that might happen when upstream element is not sane
Fixes #600895
2009-11-06 00:46:12 -03:00
Thiago Santos
892555955a
scaletempo: properly update new segments
...
Scaletempo was missing an update of 'stop' in
new segment parameters when pushing it downstream,
which caused files to end earlier when rate < 1.
Fixes #599903
Based on patch by: Bastian Hecht <hechtb@gmail.com>
2009-11-05 21:41:01 -03:00
Olivier Crête
d1db40df6e
dtmfdetect: Add DTMF tone detector
...
It looks at raw audio data and emits messages when DTMF is detected.
The dtmf detector is the same Goertzel implementation used in FreeSwitch
and Asterisk. It is in the public domain.
2009-11-05 10:39:37 -05:00
Wim Taymans
5c30f3f954
Revert "inputselector: use get_caps_reffed()"
...
This reverts commit 49ec4f796a
.
We can't use this new function yet.
2009-11-05 13:53:46 +01:00
Wim Taymans
49ec4f796a
inputselector: use get_caps_reffed()
2009-11-05 13:29:55 +01:00
Olivier Crête
64eb516283
dtmfsrc: Reject empty caps
2009-11-04 22:44:26 -05:00
Olivier Crête
7089b452dd
dtmfsrc: Use log level for repeated debug messages
2009-11-04 22:44:26 -05:00
Olivier Crête
da0d9810af
dtmfsrc: Allow for any samplerate
2009-11-04 20:05:17 -05:00
Jan Schmidt
f46c247757
autoconvert: Fix previous commit: ensure we take a ref on the features
2009-11-04 23:32:07 +00:00
Jan Schmidt
7d53c39237
resindvd,autoconvert: Avoid depending on 0.10.26 API
...
Wait until after the next release to bump the core requirement.
Until then, don't use gst_plugin_feature_list_copy and
gst_pad_peer_get_caps_refed.
2009-11-04 23:17:33 +00:00
Edward Hervey
ba460f587a
mpegdemux: Fix pointer-differences printout
...
There is unfortunately no G_*_FORMAT conversion specifier for differences of
pointers in glib, and we can't rely either on all platforms being 64bit.
So let's just cast the difference to a gint and be done with it.
2009-11-04 17:45:34 +01:00
Stefan Kost
e1e9be6dbe
inputselector: also add inline to the proto to fix the build
2009-11-04 00:21:19 +02:00
Edward Hervey
aaba1b1d26
gst: Remove dead assignments and resulting unused variables
...
Merged from gst-plugins-base, 8cd1b5209b
.
2009-11-03 18:14:12 +01:00
Sebastian Dröge
8ebd2e1be7
inputselector: Use the same iterate internal links function as in gst-plugins-base
2009-11-03 18:12:21 +01:00
Tim-Philipp Müller
d20e30f348
Remove GST_DEBUG_FUNCPTR where they're pointless
...
There's not much point in using GST_DEBUG_FUNCPTR with GObject
virtual functions such as get_property, set_propery, finalize and
dispose, since they'll never be used by anyone anyway. Saves a
few bytes and possibly a sixteenth of a polar bear.
Merged from gst-plugins-base, 6f4c1ac583
.
2009-11-03 18:11:13 +01:00
David Schleef
4cabe3c6c6
Remove Ronald Bultje from Authors field
...
Replaced with "GStreamer maintainers
<gstreamer-devel@lists.sourceforge.net>" or just removed,
depending on the number of other authors.
Merged from gst-plugins-base, 0e9bc5125a
.
2009-11-03 18:09:55 +01:00
Wim Taymans
795a604ae0
inputselector: set output caps before pushing
...
Set the output caps on the srcpad before pushing the buffer because else core
will do a rather expensive check to see if we can actually accept those caps on
the srcpad.
Merged from gst-plugins-base, bdfb4b46d7
.
2009-11-03 18:08:05 +01:00
Wim Taymans
dab1a44541
inputselector: install an acceptcaps function
...
Install a custom acceptcaps function instead of using the default expensive
check. We accept whatever downstream accepts so we pass along the acceptcaps
call to the downstream peer.
Merged from gst-plugins-base, 5b72f2adf9
.
2009-11-03 18:06:11 +01:00
Jan Schmidt
570a0bb65c
resindvd: Take a copy of the passed plugin features
...
Clarify the ownership of the internal plugin feature list by making
a copy of any passed list. Avoids crashes when freeing a passed list,
or leaks caused by not freeing any internally built list.
2009-11-02 11:33:19 +00:00
Jan Schmidt
454539a10e
dvdspu: Fix PGS window parsing
...
Fix a problem introduced in the last PGS parsing patch by skipping
the window count byte after reading it.
2009-11-02 02:48:18 +01:00
René Stadler
e5dd78e0ca
aiff: fix aiffparse debug category variable name
...
Fixes missing symbol when compiling with debugging, since this is now in sync
with the plugin_init in aiff.c.
2009-11-01 20:44:44 +02:00
René Stadler
a5f72046af
aiff: init plugin debug category
...
Fixes assertion (or unused variable warning with DISABLE_NLS).
2009-11-01 20:41:03 +02:00
Tim-Philipp Müller
decd2acece
aiff: add aiff elements to docs
2009-10-31 19:55:26 +00:00
Tim-Philipp Müller
57cce4754c
aiff: gratuitious clean-ups: canonicalise function names, structs and defines
2009-10-31 19:37:08 +00:00
Tim-Philipp Müller
d65d288844
aiff: enable new aiff muxer
...
Fixes #598763 even more.
2009-10-31 17:51:19 +00:00
Robert Swain
20f4a1afd9
aiff: add basic AIFF muxer
...
Fixes #598763 .
2009-10-31 17:49:36 +00:00
Tim-Philipp Müller
8246f755cf
aiff: remove unused includes and fix flags order in Makefile.am
...
Also remove GST_PLUGINS_BASE_LIBS from LIBADD since we don't
need to link against any of the -base libs (we just use a define
from the gstaudio headers).
2009-10-31 17:25:15 +00:00
Tim-Philipp Müller
8a1b22836f
aiff: rename 'aiffparse' plugin to 'aiff'
2009-10-31 17:22:25 +00:00
Olivier Crête
8d90ad76c9
rtpmux: Don't ignore requested pad name
2009-10-30 19:08:14 +00:00
Jan Schmidt
91499fd9a7
mpegtsdemux: Don't send new-segment with start time == -1
...
When sending new-segment to a stream, ensure that there is either a valid
PCR, or else wait until there's a PTS on the stream (dropping packets if
needed) in order to avoid generating an invlaid new-segments event.
https://bugzilla.gnome.org/show_bug.cgi?id=595161
2009-10-29 10:53:10 +00:00
Michael Smith
29fe6205ca
id3mux: glib doesn't reliably null-terminate wide-character encodings in
...
g_convert, so write the null-terminator separately and explicitly.
2009-10-27 14:32:30 -07:00
Thiago Santos
c3aaf2a391
asfmux: fix tag writing bug
...
g_convert seems to add a single null terminating byte to
the end of the string, even when the output is UTF16, we
force the second 0 byte when copying to the output buffer.
This issue was causing random crashes because it was
assumed that the string resulting from g_convert had
2 extra bytes, but it has only one.
2009-10-27 16:39:56 -03:00
Jan Schmidt
32ebb79f0b
autoconvert: Support installing identity as the initial child
...
Add the 'initial-identity' property, which inserts identity for
at startup for event passing, and replaces it with a new child
when the first buffer (and caps) actually arrives.
https://bugzilla.gnome.org/show_bug.cgi?id=599469
2009-10-27 12:23:24 +00:00
Jan Schmidt
55a3f6a08c
autoconvert: Cache incoming new segment events and push to children.
...
Cache incoming new-segment info.
When installing a child element, inform it of the current segment info.
https://bugzilla.gnome.org/show_bug.cgi?id=599469
2009-10-27 12:23:24 +00:00
Jan Schmidt
ee8b143e95
autoconvert: Add some debug in factory caps intersection
2009-10-27 12:23:23 +00:00
Jan Schmidt
77e017143e
autoconvert: Simple fixes.
...
Free the plugin feature list on dispose.
Output a debug message when downstream returns a fatal flow result
Fix awkward wording in a debug warning.
2009-10-27 12:23:23 +00:00
Jan Schmidt
de829eb7d0
autoconvert: Gratuitously move GST_OBJECT_LOCK into a macro
...
Create GST_AUTOCONVERT_LOCK/UNLOCK macros that (for now) just call
GST_OBJECT_LOCK.
2009-10-27 12:23:22 +00:00
Thiago Santos
1069712438
mpegvideoparse: check width/height range
...
Checks if the width/height that are to be set on src pad caps
are within valid range of [16,4096]
2009-10-26 09:04:49 -03:00
Thiago Santos
8db2821791
gppmux: Add support for 3gr6
...
Keep track of the chunk durations to be able to add 3gr6
brand if it is a faststart file and the longest chunk is
smaller than a sec. Implemented according to 3gpp
TS 26.244 v6.4.0 (2005-09)
Fixes #584361
2009-10-26 08:59:46 -03:00
Thiago Santos
2e9e240285
qtmux: Only push ftyp later (in faststart mode)
...
In faststart mode, there is no need to send the ftyp
right at the beginning of the stream. Waiting and sending it
only later (when the moov atom is ready to be sent) provides
us with more information about the stream and we can better
select the compatible brands.
2009-10-26 08:59:45 -03:00
Thiago Santos
5d63c26b08
qtmux: Improve error message
...
Improve error message when we can't get or estimate the
timestamp/duration of a buffer
2009-10-26 08:59:45 -03:00
Wim Taymans
ca6e2f1fa3
camerabin: fix build
2009-10-24 16:31:26 -04:00
Stefan Kost
8c0203ec36
camerabin: remove abbreviations from the property names. Fixes #573370 (partialy)
...
Also rename their use in tests and examples.
2009-10-24 15:14:26 +03:00
Stefan Kost
e1dccb6fd7
build: use gst-glib-gen.mak to fix the glib build rules.
...
The build rules in glib-gen.mak were using pattern rules in a non save way.
2009-10-24 15:14:26 +03:00
Stefan Kost
b890ecd83c
camerabin: code cleanups
...
Align element initialisation. This should be re-thought, g_object_new zeros things already.
Harmonize the element getters for the src/sinks to return what we actualy use.
2009-10-24 15:14:26 +03:00
Tommi Myöhänen
fe70981023
camerabin: implement video preview creation
...
Completes preview creation mechanism to be able to provide a preview
image for video clips too.
2009-10-24 15:14:25 +03:00
Stefan Kost
52e314ef81
camerabin: set camerabin default sources/sinks like in playbin2. Fixes #574434
...
This uses same approach like in playbin, namely checking for user defined
element, auto{audio,video}{sink,src} and finally DEFAULT_{AUDIO,VIDEO}{SRC,SINK}
defines from config.h.
2009-10-24 15:14:25 +03:00
Tim-Philipp Müller
79fe732785
mpegpsmux: some minor build fixes
...
CLFAGS -> CFLAGS, and fix order of variables while we're at it.
2009-10-22 11:55:41 +01:00
Jan Schmidt
251afdee91
autoconvert: Take the object lock fewer times
...
When starting up and creating the list of element factories, only
take the object lock twice instead of 3 times.
2009-10-22 11:41:08 +01:00
Jan Schmidt
997f180b85
autoconvert: Don't hold the object lock when pushing
...
When pushing out cached events, don't hold the object lock. Avoids
deadlocks starting up DVD playback.
2009-10-22 11:41:07 +01:00
Michael Smith
2caac8d175
id3tag: actually write image to APIC tag.
2009-10-16 14:37:02 -07:00
Jan Schmidt
0fcf8001b1
autoconvert: Use gst_pad_peer_accept_caps instead of gst_pad_set_caps.
...
gst_pad_set_caps on the internal source pad always succeeds, because
caps propagate to the peer with buffers, not immediately. Using
gst_pad_peer_accept_caps properly checks whether the actual
sub-element can accept caps when they change.
https://bugzilla.gnome.org/show_bug.cgi?id=575568
2009-10-16 11:09:15 +01:00
Josep Torra
66b1cc9346
speed: fix warnings in macosx snow leopard
2009-10-11 13:13:56 +02:00
Josep Torra
fc0677a5a1
mpegvideoparse: fix warning in macosx snow leopard
2009-10-11 13:07:19 +02:00
Josep Torra
3fedf9e9a5
mpegdemux: fix warnings in macosx snow leopard
2009-10-11 12:56:29 +02:00
Josep Torra
093006d432
dtmf: fix warnings in macosx snow leopard
2009-10-11 11:35:23 +02:00
Josep Torra
dac26cb18f
amrparse: fix warnings in macosx snow leopard
2009-10-11 11:27:08 +02:00
Josep Torra
e1a98f3454
aacparse: fix warnings in macosx snow leopard
2009-10-11 11:22:11 +02:00
Sebastian Dröge
3b32d37dd4
assrender/dvdspu: Increase ranks to PRIMARY
2009-10-09 13:18:31 +02:00
Sebastian Dröge
f50de89720
dvdspu: Include SubPicture in the classification
2009-10-09 09:21:06 +02:00
Stefan Kost
b7b8b7f407
build: fprintf, sprintf, sscanf need stdio.h
2009-10-07 15:26:12 +03:00
Sebastian Pölsterl
bf3cf014ab
mpegtsparse: Ignore emphasis on/off bytes, and do fallback string encoding.
...
For fallback, try ISO 8859-9 encoding if ISO 6637 failed.
Add more debug calls.
2009-10-06 17:46:36 +01:00
Michael Smith
196acecc04
id3mux: Write UTF-16 byte order marker correctly.
2009-10-05 11:15:41 -07:00
Stefan Kost
2390d3a31c
build: add missing stdlib include to fix the build
2009-10-02 19:12:32 +03:00
Alessandro Decina
8917a706da
Fix a compiler warning.
2009-10-02 12:07:32 +02:00
Lasse Laukkanen
a0a4032ce8
camerabin: fix deadlock when error occurs at video recording startup
2009-10-01 18:06:55 +03:00
Tommi Myöhänen
0d48f73532
camerabin: handle preview-caps only in image mode and only when they change
...
This prevents camerabin to create preview pipeline every time when
application re-sets the same caps again.
2009-10-01 18:06:55 +03:00
Tommi Myöhänen
99f1f4510a
camerabin: don't send multiple EOS events to video pipeline
2009-10-01 18:06:54 +03:00
Tommi Myöhänen
eb648817a4
camerabin: fix scene mode setting
...
Camerabin caches photography settings, but it didn't take into account
that scene mode setting may change other settings as well. So, config
needs to be read back from device after scene mode is set.
2009-10-01 18:06:54 +03:00
Tommi Myöhänen
dc267be4f7
camerabin: allow mode parameter setting in NULL state
2009-10-01 18:06:54 +03:00
Tommi Myöhänen
dacdd5d6c9
camerabin: allow capture resolution to be set in NULL state
2009-10-01 18:06:54 +03:00
Tommi Myöhänen
0f2be803b4
camerabin: fix image queue parameter setting
...
Camerabin incorrectly used G_GUINT64_CONSTANT macro for setting
"max-size-buffers" and "max-size-bytes" properties in image queue,
even when they aren't 64bit integers.
2009-10-01 18:06:53 +03:00
Tommi Myöhänen
3f90a4acfa
camerabin: fix warning with g_object_get and join separate g_object_sets into one
2009-10-01 18:06:53 +03:00
Tommi Myöhänen
b2fc088c84
camerabin: reset active-pad in output-selector after READY state
...
Camerabin sets itself to READY state during resolution change. This
operation makes output-selector to forget its currently active pad,
so it must be set again after state change.
2009-10-01 18:06:53 +03:00
Lasse Laukkanen
7b62e11412
camerabin: don't reset capsfilters or zoom if error occurs
...
If an error occurs, application should set pipeline to NULL, and updating
zoom can actually block message handling if video device driver has failed
and video src element supports zooming using photography interface and S_CROP.
2009-10-01 18:06:53 +03:00
René Stadler
350a805b67
videomeasure: link with libm
2009-10-01 17:40:28 +03:00
Руслан Ижбулатов
05e059c624
Take offset gaps into account.
...
Prevents measurecollector from crashing when frame numbers are not consecutive.
Fixes bug #596285 .
2009-09-30 18:51:55 +02:00
Marc-André Lureau
1adfafbe2c
qtmux: fix flags_as_uint to flags[]
2009-09-30 16:53:20 +02:00
Jan Schmidt
25837289c4
dvdspu: Improve PGS parsing
...
Improve (slightly) the interpretation of PGS set-window blocks
to avoid printing warnings about unused bytes when there are multiple
window definitions.
2009-09-28 10:32:02 +01:00
Jan Schmidt
f248986ba4
dvdspu: Fix rendering and add guards
...
Fix the rendering when we hit the right hand side of the display
area, by resetting to the correct X coordinate, and add some more
guards against bad PGS data.
2009-09-28 10:32:02 +01:00
René Stadler
c45cc31c7d
videosignal: change pattern data type to uint64, add property and message field
...
Keeps the old uint typed value support for compatibility.
2009-09-26 19:11:09 +03:00
René Stadler
b24d581c78
videosignal: allow pattern-count property to be 0
2009-09-26 19:11:09 +03:00
René Stadler
36ae3ad844
videosignal: add support for packed YUV formats
2009-09-26 19:11:09 +03:00
René Stadler
d171d713f3
videosignal: add support for all planar YUV formats, using gstvideo
2009-09-26 19:11:09 +03:00
René Stadler
5b87b537be
videosignal: add bound checks
2009-09-26 19:11:09 +03:00
René Stadler
53defab4b2
videosignal: remove unused macros
2009-09-26 19:11:09 +03:00
Mark Nauwelaerts
c36e5950ba
baseparse: sync baseparse change
2009-09-25 17:04:02 +02:00
Mark Nauwelaerts
6c9a9d3304
aacparse: forego (bogus) parsing of already parsed (raw) input
2009-09-25 17:04:00 +02:00
Sebastian Dröge
338f58e573
inputselector: Use new single iterator for the internally linked pads
...
This fixes a deadlock and removes some useless code.
2009-09-25 11:08:02 +02:00
Alessandro Decina
a17393fd34
Fix warnings with gcc 4.0.1.
2009-09-23 12:34:47 +02:00
Lutz Mueller
a744f8136b
pnm: Handle ASCII encoded PNM data that is split over multiple buffers
...
Also:
- unref buffers after gst_buffer_span
- fix scanning of header if header data is split over several buffers
Fixes bug #595700 .
2009-09-22 08:13:08 +02:00
Edward Hervey
4ceb3c5678
mpegtsparse: Specify that psi table is static const.
...
This avoids re-allocating it every single time we go into it.
Roughly 10% performance boost in overall tsparse processing time.
2009-09-21 12:13:03 +02:00
Zaheer Abbas Merali
bf34bdd3ab
Revert "mpegtsparse: use fixed size array rather than dynamically allocating"
...
This reverts commit ae75b6f366
.
2009-09-20 17:53:24 +01:00
Zaheer Abbas Merali
ae75b6f366
mpegtsparse: use fixed size array rather than dynamically allocating
2009-09-20 15:32:14 +01:00
Zaheer Abbas Merali
f9c4b3cce9
mpegtsparse: replace streams hashtable with an array of streams
2009-09-20 15:23:44 +01:00
Zaheer Abbas Merali
309eaafb04
mpegtsparse: unref caps on dispose, reset packet size on _reset
2009-09-20 14:12:59 +01:00
Zaheer Abbas Merali
ec100c87c7
mpegtsparse: make sure packetsize is set on caps of buffers
2009-09-20 13:25:53 +01:00
Zaheer Abbas Merali
bdf11016fa
mpegtsparse: detect packetsize and don't just assume 188 bytes.
2009-09-20 13:25:34 +01:00
Edward Hervey
314e2dabd5
mpegtsparse: Don't use GstIterator, do change detection ourselves.
...
Using a GstIterator is slow because we have to create/destroy that
iterator every single time.
We just do the threadsafe cookie check and list iteration ourselves.
2009-09-19 12:49:47 +02:00
Edward Hervey
c224da54e4
mpegtsparse: Avoid type-checking casts in tight loops
2009-09-19 12:45:39 +02:00
Edward Hervey
8b981fba5c
mpegtspacketizer: Make next_packet() return an enum.
...
This avoids calling an extra gst_adapter_available() in a tight loop.
2009-09-19 12:45:39 +02:00
Edward Hervey
bdc513b31e
mpegtsparse: More branch prediction macros
2009-09-19 12:45:39 +02:00
Edward Hervey
879e00b969
mpegtspacketizer: Spread branch prediction macros
2009-09-19 12:45:39 +02:00
Edward Hervey
fcc4f8388c
mpegtsparse/mpegtspacketizer: Register and use GQuark for structures.
2009-09-19 12:41:34 +02:00
Edward Hervey
d88af539f9
mpegtspacketizer: Initialize debugging in _get_type
...
There's no need for an extra function since all debuggin will require
a MpegTSPacketizer which means that the GType will be created, therefore
move the debug category initialization there.
2009-09-19 12:41:27 +02:00
Edward Hervey
56b71d6a48
mpegtspacketizer: memset structure instead of individually setting fields to 0
2009-09-19 12:32:21 +02:00
Edward Hervey
69aab98702
mpegtspacketizer: Remove g_return_if_fail
...
It's overkill for code only used by one element.
2009-09-19 12:32:17 +02:00
Edward Hervey
0ac7e16066
mpegtspacketizer/parse: Don't use gst_structure_to_string() for debugging.
...
There's GST_PTR_FORMAT for that, and too bad for the systems that don't have
support for that. It just costs too much cpu.
2009-09-19 12:32:10 +02:00
Edward Hervey
0daedae52f
gst: Remove dead mpegtsparse directory.
...
This was seriously confusing. Also, the code is in gst/mpegdemux/
2009-09-19 12:31:52 +02:00
David Schleef
8c856cfb5a
videomeasure: fix line endings
2009-09-18 19:11:19 -07:00
David Schleef
923a7e5256
videomeasure: fix distcheck
2009-09-18 19:11:19 -07:00
David Schleef
2506c3567c
mpegtsdemux: Set DISCONT on buffers
2009-09-17 17:03:40 -07:00
Lutz Mueller
a4e438d193
pnm: Add ASCII decoding support
...
...and make the ASCII output of the encoder a bit more pretty.
Fixes bug #595409 .
2009-09-17 09:39:10 +02:00
Lutz Mueller
f270259cc8
pnm: Support ASCII format for encoding and handle unsupported formats better in the decoder
...
Fixes bug #595215 .
2009-09-16 08:23:37 +02:00
Jan Schmidt
50d08ce732
mpegdemux: Handle base_time when sending segment updates.
...
Don't send bogus new segment update events when the stream doesn't
start at 0. Fixes broken seeking in some files.
Fixes : #594812
2009-09-15 23:36:24 +01:00
Zaheer Abbas Merali
cb9ff89929
mpegtsdemux, mpegtsparse: max section length is 4093 not 1021.
2009-09-15 14:35:15 +01:00
Zaheer Abbas Merali
712ee57190
mpegtsdemux: add pad for DVB Subtitling pads
2009-09-15 14:35:15 +01:00
Sebastian Dröge
5b5ff07c28
pnm: Use correct rowstride for 8 bit grayscale too
2009-09-13 19:39:59 +02:00
Sebastian Dröge
f09b1adf70
pnm: Correctly convert from/to GStreamer rowstride
2009-09-13 19:33:57 +02:00
Sebastian Dröge
751843ff86
pnm: Fix caps
...
8 bit grayscale caps have no endianness field and the caps name
of GST_VIDEO_CAPS_RGB is still "video/x-raw-rgb" and not GST_VIDEO_CAPS_RGB.
2009-09-13 19:17:15 +02:00
Lutz Mueller
7f3e6f4965
pnm: Lots of bugfixes
...
(1) Fix examples.
(2) Add support for gray images.
(3) Remove "use_fixed_caps" which doesn't seem to be useful.
(4) Do proper negotiation in the encoder.
(5) Fix memleak in the setcaps function in the encoder.
(6) Keep a link to the src pad in the encoder now that we need it more often.
Partially fixes bug #164870 .
2009-09-13 19:14:49 +02:00
Christian Schaller
1a54ae8ce7
Fix factory information for h264parse, add missing Video
2009-09-12 18:57:05 +01:00
Michael Smith
4066a87156
aiffparse: Fix an off-by-8 bug in parsing the AIFF data size.
...
This led to overreading by 8 bytes, giving an audible glitch at the end of
a file (except when the file didn't have a trailing chunk of some sort).
2009-09-11 14:40:20 -07:00
Edward Hervey
92ec711733
mpegtsdemux: Use GST_TIME_FORMAT in debug statement.
2009-09-11 15:19:17 +02:00
Edward Hervey
ddcd0e60b1
mpegtsdemux: Reset stream->last_time when flushing.
...
This fixes naive seeking a tiny bit (by basically hinting at _data_cb
that it shouldn't expect the incoming buffers to be the ones just after
the previous ones).
Without this, seeking by more than 10mins forward would just end up in an
endless loop.
2009-09-11 15:18:58 +02:00
Edward Hervey
7057f285cc
mpegtsdemux: Sprinkle branch prediction macros.
2009-09-11 15:16:17 +02:00
Michael Smith
af6ea56cce
id3tag: When writing id3v2.3, do not use UTF-8.
...
UTF-8 is only permitted in v2.4. So instead use ISO-8859-1 for ascii-only
strings, and UTF16 otherwise. Also, do not null terminate strings in text
frames, except where required. These two allow windows media player to play
(and correctly read tags) files created by id3mux.
2009-09-10 12:14:28 -07:00
Michael Smith
29c3542dd5
adpcmdec: complete ima adpcm support.
2009-09-10 12:14:28 -07:00
Michael Smith
e90934dab3
adpcmdec: checkpoint for incomplete IMA ADPCM support.
2009-09-10 12:14:28 -07:00
Sebastian Dröge
2a7ee0716f
videomeasure: Fix format strings and include correct i18n header
2009-09-10 12:03:49 +02:00
Sebastian Dröge
bdbd944c52
videomeasure: Fix indention, line endings and use LRN's real name
2009-09-10 12:03:48 +02:00
Руслан Ижбулатов
e9297ba3eb
videomeasure: Initial version of videomeasure plugin
...
This plugin contains elements for calculating metrics of video streams, intended for objective video codec comparison.
At the moment only SSIM metric is implemented (why would you need anything else anyway?).
Also contains a helper videomeasure_collector element that collects measurement events and outputs them into a file (to be used with gst-launch).
Other metrics may be implemented in the future along with a base class for all measurers.
Fixes bug #594321 .
2009-09-10 12:03:32 +02:00
Sebastian Dröge
58a5e422b6
pnmdec: Partially fix negotiation issues and refcount leaks
2009-09-10 08:53:46 +02:00
Sebastian Dröge
cfb04acde5
pnmenc: Fix negotiation issues and refcount leaks
2009-09-10 08:48:12 +02:00
Sebastian Dröge
77e989f498
pnm: Fix typefinder caps
2009-09-10 08:29:06 +02:00
Lutz Mueller
59b6d933da
pnm: Add PNM encoder and decoder elements
...
Fixes bug #164870 .
2009-09-10 08:23:22 +02:00
Havard Graff
f0f80f81d9
outputselector: make GST_FORMAT_TIME the default segment format
2009-09-08 17:53:34 +02:00
Sebastian Dröge
15796d66bb
mpegtsdemux: Fix usage of __always_inline__ attribute
...
This attribute can't be used for function declarations because
it needs the function body. Instead of a forward declaration of
functions, move the function itself above it's first use.
Fixes bug #594489 and compilation with gcc 4.3 and earlier.
2009-09-08 15:20:14 +02:00
Mark Nauwelaerts
5658b2912b
mpeg4videoparse: fix aspect-ratio parsing in VO
2009-09-07 19:10:18 +02:00
Mark Nauwelaerts
5b1ed7d42c
mpeg4videoparse: also consider user_data pieces when parsing VO(S)
2009-09-07 19:10:02 +02:00
Wim Taymans
6e9904fa8a
siren: fix setting caps on the output pad
...
Also set the caps on the output pad when the input buffers don't have caps.
2009-09-04 17:32:34 +02:00
Josep Torra
7fa795a725
mpegpsdemux: in seeking use a factor for SCR interpolation
...
Fixes seeking on clips where PTS are unalignded with SCR.
2009-09-04 12:56:03 +02:00
Wim Taymans
d557572e66
sirendec: rewrite sirendec
...
Add setcaps and event functions.
Add state change functions to clean variables.
Use adapter.
Add timestamps and duration on outgoing buffers.
Add DISCONT handling.
2009-09-04 12:43:49 +02:00
Wim Taymans
ef999c5df7
sirenenc: cleanups
2009-09-04 12:43:48 +02:00
Josep Torra
b60d71482f
mpegtsdemux: set specific caps for lpcm in private stream
...
In the clips that I've found those streams, the lpcm header is
different than the DVD case.
Then the decoder need to know this in order to be able parse it.
2009-09-04 12:35:31 +02:00
Josep Torra
659e90f8f6
mpegtsdemux: added autodetect of packet size and removed m2ts mode property
2009-09-04 12:30:18 +02:00
Josep Torra
c67dc212bf
mpegtsdemux: some more handling of VC1 and EAC3
...
If the PMT have the register descriptor HDMV assume EAC3
For VC1 make the code more aligned to RP227.
2009-09-04 12:02:18 +02:00
Vincent Penquerc'h
bf4c1f3541
Try to fit subtitles within the video frame when they're too large
2009-09-04 09:13:34 +02:00
Olivier Crête
a333fef08c
pcapparse: Set the GStreamer timestamp according to the pcap timestamps
2009-09-03 13:39:36 -04:00
Wim Taymans
00f395e82f
sirenenc: fix events and caps
...
Add an event function that clears the adapter.
Add a setcaps function to configure caps on the srcpad. Remove the instance
variable for the caps.
2009-09-03 19:04:33 +02:00
Wim Taymans
823f06f039
sirenenc: fix timestamping
...
Handle DISCONT and reset adapter.
code cleanups.
Put timestamps and discont flags on output buffers.
Fix error handling.
Remove bogus object locks, it's all protected by the STREAM_LOCK.
2009-09-03 18:45:31 +02:00
Sebastian Dröge
77fa16cf44
mpegtsdemux: If stream type is AC3 and no EAC3 descriptor is found assume AC3
2009-09-03 15:46:27 +02:00
Josep Torra
1e865242a7
mpegtsdemux: Implement EAC3 handling according some ATSC specs.
...
Fixes bug #594030 .
2009-09-03 15:46:27 +02:00
Tim-Philipp Müller
3bb2efeea0
xdgmime: move xdg typefinder to the other typefinders in -base
...
Remove the xdgmime plugin which now barely contains any code at all
and move the functionality into gst-plugins-base next to the other
typefinders.
2009-09-03 00:28:16 +01:00
Tim-Philipp Müller
95d894fd96
mpegsmux, mpegpsmux: fix unused variable warning with the debugging system in core disabled
2009-09-02 13:37:47 +01:00
Sebastian Dröge
3f35ef4584
mpegtsdemux: Stream type 0x81 is normal AC3, not EAC3
...
Not sure what the stream type for EAC3 is though.
Fixes bug #593059 .
2009-09-01 12:56:12 +02:00
Tim-Philipp Müller
10d67eda7a
GstAdapter is not a GstObject and should be freed with g_object_unref()
2009-08-31 13:14:02 +01:00
Tim-Philipp Müller
d94d572e16
mpegtsmux: use an old-fashioned array instead of GPtrArray for mux->programs
...
Using GPtrArray for a fixed-sized array is a bit pointless and makes
for ugly code.
2009-08-31 13:00:04 +01:00
Sebastian Dröge
f3e2864f4c
mpegpsmux: Add missing files to fix compilation
...
Fixes bug #593625 .
2009-08-31 10:48:35 +02:00
Lin YANG
e453e599af
mpegtsmux: Minor fixes
2009-08-31 09:19:23 +02:00
Lin YANG
3ca8288c5b
mpegtsmux: mux->programs: use GPrtArray instead of GArray
2009-08-31 09:19:17 +02:00
Lin YANG
5b0b69a858
mpegtsmux: mpegtsmux_collected(): calculate PCR for programs
2009-08-31 09:19:12 +02:00
Lin YANG
b67ed24676
mpegtsmux: mpegtsmux_create_streams(): create multi streams
2009-08-31 09:19:00 +02:00
Lin YANG
451275714c
mpegtsmux: MpetTsPadData: add prog_id and ref to its program
2009-08-31 09:18:53 +02:00
Lin YANG
ee31988c7a
mpegtsmux: Extend mux->program to a GArray programs
2009-08-31 09:18:48 +02:00
Lin YANG
9f90dfee3e
mpegtsmux: Add new property prog-map to the muxer
2009-08-31 09:18:40 +02:00
Sebastian Dröge
baced65049
h264parse: Free the PPS buffers too
2009-08-31 09:15:09 +02:00
Lin YANG
d520e426b0
h264parse: compute timestamp
2009-08-31 09:15:09 +02:00
Lin YANG
9c08ece157
h264parse: recognize more types of NAL
...
Also recognizes NALs carrying VCL (i.e. visible pictures). We
typically only compute timestamps for such NALs
2009-08-31 09:15:09 +02:00
Lin YANG
550f60111c
h264parse: parser init & finalize
2009-08-31 09:15:08 +02:00
Lin YANG
d0273eec2c
h264parse: decode slice header
2009-08-31 09:15:08 +02:00
Lin YANG
62ac493c5c
h264parse: decode SEI
2009-08-31 09:15:08 +02:00
Lin YANG
dc696c4ffb
h264parse: decode SEI: picture timing info
2009-08-31 09:15:08 +02:00
Lin YANG
d061c0a0d1
h264parse: decode SEI: buffering period
2009-08-31 09:15:07 +02:00
Lin YANG
ba5a75d551
h264parse: decode PPS
2009-08-31 09:15:07 +02:00
Lin YANG
2531e5f584
h264parse: decode SPS
2009-08-31 09:15:07 +02:00
Lin YANG
90dfda0f46
h264parse: SPS: decode vui params
2009-08-31 09:15:07 +02:00
Lin YANG
2d50657635
h264parse: SPS: decode hrd params
2009-08-31 09:15:06 +02:00
Lin YANG
e55fb077e6
h264parse: Start slice header parsing work
2009-08-31 09:15:06 +02:00
Lin YANG
e1cfd384d6
h264parse: Start SEI parsing work
2009-08-31 09:15:06 +02:00
Lin YANG
397abd5741
h264parse: Start PPS parsing work
2009-08-31 09:15:05 +02:00
Lin YANG
196b8240e2
h264parse: Start SPS parsing work
2009-08-31 09:15:05 +02:00
Lin Yang
adb4130e65
mpegpsmux: Add MPEG PS muxer
2009-08-31 09:14:32 +02:00
Sebastian Dröge
53128c5b4f
mxf: Unconditionally use GLib 2.16 API
2009-08-31 08:14:11 +02:00
Sebastian Dröge
182e751b5d
xdgmime: Always use GLib instead of xdgmime
...
Now that we depend on GLib 2.16 we can as well use it's
internal copy of the xdgmime instead of our own.
2009-08-31 08:14:10 +02:00
Sebastian Dröge
b7534074e2
id3tag: Unconditionally use GLib 2.16 API
2009-08-31 08:14:10 +02:00
Sebastian Dröge
ca55cda9b9
inputselector: Use iterate internal links instead of deprecated get internal links
2009-08-31 08:14:10 +02:00
Руслан Ижбулатов
09b2abf87b
resindvd, rawparse: fix LDFLAGS for gst-plugins-base libs
...
Fixes #593063 .
2009-08-25 23:55:41 +01:00
Thiago Santos
c83615fca9
asfmux: Do not mess up GstCollectData list
...
asfmux was messing up with the GstCollectData list of its
GstCollectPads when sorting the list inplace. This patch makes
it copy the list before sorting it, leaving the GstCollectPads
list as is. Fixes #591610
2009-08-12 19:17:37 -03:00
Olivier Crête
402aad7e87
dtmfsrc: Empty event queue on finalize
2009-08-12 17:08:01 -04:00
Olivier Crête
329b7b9849
dtmf: Use GSlice for internal event structures
2009-08-12 17:08:01 -04:00
Tim-Philipp Müller
a2ea288a02
rtpdtmfsrc: Cleanup events on finalize
...
Problem found by Laurent Glayal
Fixes bug #591440
2009-08-12 17:08:01 -04:00
Tim-Philipp Müller
0d697e8b58
rtpdtmfsrc: Cleanup events on finalize
...
Problem found by Laurent Glayal
Fixes bug #591440
2009-08-12 17:08:01 -04:00
Tim-Philipp Müller
a6912096cd
Move rtpmanager from -bad to -good.
2009-08-11 09:30:31 +01:00
Tim-Philipp Müller
1691621faf
Remove execute flags from source files
2009-08-10 22:16:37 +01:00
Sebastian Dröge
cb1f2f2294
autoconvert: Cache events and send them downstream once an element was selected
2009-08-09 15:20:48 +02:00
Sebastian Dröge
abe33a5526
autoconvert: Small cleanups
2009-08-09 14:55:26 +02:00
Sebastian Dröge
6115e0cb0e
mpegtsdemux: Don't answer the SEEKING query if we don't know the answer yet
...
A bitrate!=-1 is required for seeking but the bitrate is only calculated
after the second PCR was read.
Fixes bug #590446 .
2009-08-08 22:14:53 +02:00
Sebastian Dröge
282479b443
videoparse: Only provide very fundamental caps in the pad template
...
We can't easily know which caps will can be used because we rely on
libgstvideo's support for video formats.
2009-08-08 10:30:11 +02:00
Sebastian Dröge
5c11f80c04
rawparse: Small cleanups and implement SEEKING query
2009-08-08 10:27:52 +02:00
Sebastian Dröge
60a5d37683
audioparse: Small cleanups
2009-08-08 09:08:16 +02:00
Sebastian Dröge
8433f7a9c6
videoparse: Use libgstvideo for everything instead of our own calculations
...
Also make RGB usage easier by providing xRGB, RGBx, etc. formats
instead of requiring to set red_mask and friends.
2009-08-08 09:08:16 +02:00
Josep Torra
9861908926
mpegtsdemux: fix a memory leak
2009-08-07 19:12:26 +02:00
Josep Torra
1a9b54b781
mpegtsdemux: added VC1, EAC3 and LPCM related to blueray/hdmv
2009-08-07 19:00:23 +02:00
Josep Torra
da95f4a873
mpegpsdemux: added caps for AAC and fixed playback of a clip with LPCM
2009-08-07 18:35:42 +02:00
Josep Torra
3c22fb611b
mpegpsdemux: improved demuxer performance
...
Increased performance doing pull_range in blocks of 32Kb instead of 4Kb.
Caching the value of gst_adapter_available instead of calling it 3 times.
Added some comments with the header descriptions.
Peek enough data to avoid a corner case where could be readed data outside
the buffer.
Speed up some more inlining some functions and keeping another stream pointer
list to be used as iterator.
Sprinkle branch prediction macros accross the code.
Handling the seeking with flush in pull mode in the proper way.
2009-08-07 18:17:28 +02:00
Mark Nauwelaerts
222322e7f3
baseparse: prevent infinite loop when draining
2009-08-07 13:09:24 +02:00
Mark Nauwelaerts
1f2a0d3b3d
baseparse: fix minor memory leak
2009-08-07 13:09:20 +02:00
Mark Nauwelaerts
1f9525d821
flacparse: sync baseparse (some more)
2009-08-07 13:09:15 +02:00
ric
15b29bb834
rtpsource: avoid buffer leak on bad seqnum
...
Fixes #590797
2009-08-06 19:27:20 +02:00
Sebastian Dröge
3f6e84ec61
mpeg[pt]sdemux: Fix SEEKING query
...
Send the BYTES based query downstream, not the orignal one.
2009-08-05 09:36:00 +02:00
Jan Urbanski
5a596e67da
qtmux: Don't require endianness field for 8 bit raw audio
...
Fixes bug #590360 .
2009-08-04 12:58:35 +02:00
Tim-Philipp Müller
2e7b6e44db
flacparse: remove internal bitreader and bytereader now that these are in libgstbase
2009-07-31 16:36:54 +01:00
Tommi Myöhänen
b658293925
outputselector: check for pending srcpad in _get_property()
...
If there is a pending srcpad, return it instead of active srcpad
in gst_output_selector_get_property() function.
2009-07-31 14:07:31 +03:00
Tommi Myöhänen
89788ddc1f
camerabin: Set camerasrc to READY state instead of PAUSED when acquiring allowed caps
2009-07-31 14:07:24 +03:00
Thiago Santos
88e399aac2
rtpasfpay: set padding field to 0 on rtp asf packets
...
The ASF RTP spec demands that packets have their padding removed
and the padding size field set to 0 for packets when puting them
inside the RTP packets
2009-07-31 00:19:19 -03:00
Thiago Santos
7583bf6813
asfmux: Set video stream seekable property to true
...
Video stream always have indexes, so they are all seekable
2009-07-30 10:33:05 -03:00
Thiago Santos
c271548aab
asfmux: Removing useless TODOs
...
After testing in windows and linux, this audio correction field
made no difference so far. All example files I got only had
zeroes in this field
2009-07-30 10:33:05 -03:00
Thiago Santos
80196e1bb8
asfmux: Fixes video stream properties object
...
Fixes stream properties object creation for video content
2009-07-30 10:33:04 -03:00
Thiago Santos
d86de48fa1
asfmux: accept pad requests a little longer
...
asfmux now start rejecting pad requests after it pushes the first
buffer, before this, it was rejecting after going to paused
2009-07-30 10:33:04 -03:00
Thiago Santos
7dd441f8f5
asfmux: adds support to vc-1 streams
2009-07-30 10:33:03 -03:00
Olivier Crête
0672f2d9b2
rtpmux: Remove empty finalize
2009-07-29 17:24:59 -04:00
Thiago Santos
fb624bd416
asfmux: Forcing pad names to be video_%02d and audio_%02d like
2009-07-28 21:37:04 -03:00
Wim Taymans
9232e2278c
rtpsource: allow for NULL caps on buffers
...
Add the NULL caps check where it matters and also cover another case of
potential NULL caps.
Fixes #590030
2009-07-28 18:18:20 +02:00
Olivier Crête
03348629ce
rtpsource: Incoming buffers do not always have caps
2009-07-28 18:16:12 +02:00
Tommi Myöhänen
2d9bdb933d
camerabin: photo iface setter functions return TRUE when used in NULL state
...
We cache the values and apply then when possible.
2009-07-28 09:53:22 +03:00
Tommi Myöhänen
01a7532900
camerabin: do not put video pipeline into READY when start recording camerabin: remember probe IDs and disconnect them when destroying pipelines
2009-07-28 09:53:22 +03:00
Wim Taymans
ffe90f81a4
rtpsession: avoid doing lip-sync in BYE
...
When we get a BYE packet, don't do lip-sync with the SR inside because some
senders have trouble constructing valid SR packets after BYE.
2009-07-27 15:49:54 +02:00
Wim Taymans
9b1bdac9cc
rtpbin: don't do lip-sync after a BYE
...
After a BYE packet from a source, stop forwarding the SR packets for lip-sync
to rtpbin. Some senders don't update their SR packets correctly after sending a
BYE and then we break lip-sync. We prefer to let the jitterbuffers drain with
the current lip-sync instead.
2009-07-27 13:17:20 +02:00
Wim Taymans
7bd35cb8c7
rtpbin: only reconsider once for BYE
...
When iterating the sources of a BYE packet, don't signal a reconsideration for
each of them but signal after we handled all sources.
2009-07-27 12:43:02 +02:00
Thiago Santos
2641cd9d94
asfmux: Adds new plugin asfmux
...
Adds the brand new asfmux plugin, containing 3 elements:
asfmux, rtpasfpay and asfparse. This plugin was developed
as a GSoC 2009 project, with David Schleef as the mentor and
Thiago Santos as the student.
2009-07-24 14:52:28 -03:00
Sebastian Dröge
da7263b51f
mpegdemux: Remove some backward compatibility code
...
Also we always require liboil so use it unconditionally.
2009-07-23 09:58:38 +02:00
Sebastian Dröge
d8b285d7fd
mpegdemux: Implement query type function for the src pads
2009-07-23 09:53:29 +02:00
Olivier Crête
2abe07f963
rtpsession: Free conflicting addresses on finalize
2009-07-22 14:19:57 -04:00
Olivier Crête
d555d570e6
rtpmux: Free the pad private data on pad release
...
Free the pad private data on pad release instead of using a weak ref,
which is not thread safe. Also, lock the content of the pad private using the element's
object lock.
2009-07-22 14:19:57 -04:00