Thiago Santos
e1c1405396
qtmux: Adds moov recovery feature
...
Adds a new property to qtmux that sets a path to a file to write
and update data about the moov atom (that is not writen till the
end of the file). If the pipeline/app crashes during execution it
might be possible to recover the movie using the qtmoovrecover element.
qtmoovrecover is an element that is also a pipeline. It is not
meant to be used with other elements (it has no pads). It is merely
a tool/utilitary to recover unfinished qtmux files.
Fixes #601576
2010-02-02 14:03:38 -03:00
Stefan Kost
b9f8f5d281
jpegparse: improve parsing
...
Handle more app maker. Print app marker names to debug log. Remember last_marker
when parsing to avoid reparsing from the very begin.
2010-02-02 17:19:31 +02:00
Julien Moutte
6f1ee59df6
mpegtsmux: generate SPS/PPS header once and fix overflow
...
Some H264 packets can be as small as 5 bytes for repeated frames.
In such a situation the output buffer size was not big enough (5*2) to fit the
SPS/PPS header and the start codes. This corrupts the ES stream.
We now generate the SPS/PPS only once which is much more optimal and we now
know the size of the header to calculate the output buffer size more safely.
2010-02-02 12:23:24 +01:00
Michael Smith
80b3d80a58
qtmux: for fixed-sample size streams (PCM audio, etc) don't allocate an enormous
...
buffer that we then won't use at all.
2010-02-01 16:24:39 -08:00
Michael Smith
4b28a46bc7
qtmux: handle muxing adpcm correctly.
2010-02-01 16:23:48 -08:00
Michael Smith
e1fe7f357f
qtmux: Set the mdia hdlr name field to what quicktime uses. Fix writing it
...
since it's not null-terminated. Improves compatibility with some hardware
players.
2010-02-01 16:23:47 -08:00
Michael Smith
5753f8a3aa
qtmux: endianness in gstreamer is an int, not boolean.
2010-02-01 16:23:47 -08:00
Michael Smith
c2b1bebc02
mpeg4videoparse: parse more forms of codec_data
2010-02-01 16:23:47 -08:00
Stefan Kost
f3122f2b30
jpegparse: provide a getcaps function for src pad and improve setcaps
...
Previously jpegparse was failing in decodebin as the caps we were setting where not
setting all caps fields. We need the own getcaps function to report what we actualy
accept.
2010-02-01 17:46:29 +02:00
Stefan Kost
ab7e974dab
jpegparse: extract comment and post as metadata
2010-02-01 17:16:16 +02:00
Stefan Kost
e1dd998bd0
jpegformat: code cleanups
...
Move the jpeg marker defines to a header (to be used for jifmux). Rewrite some
comments. Use gst_element_class_set_details_simple(). Add more logging.
2010-02-01 17:15:38 +02:00
Stefan Kost
8bd0f42017
jpegformat: move plugin part to speparate file, so that we can add the jifmux
2010-01-29 12:25:08 +02:00
Arnout Vandecappelle
bb5331e272
jpegparse: new jpeg parser element. FIxes #583098
...
Parse JPEG images, extracts its metadata, set caps and
packetize an image per buffer.
2010-01-29 11:41:15 +02:00
Stefan Kost
b0533bfdff
camerabin: don't log NULL caps, also downgrade to DEBUG as it is very verbose
...
This debug log entry was also not ment to be used in the failure case.
2010-01-28 14:57:50 +02:00
Tim-Philipp Müller
2cc409861c
dataurisrc: add start function so we can error out properly if no uri is set
...
Also save a set URI after it has been parsed successfully, so that _get_uri()
actually works.
2010-01-28 00:08:16 +00:00
Tim-Philipp Müller
766c52766e
dataurisrc: don't post error message when setting the URI failed
...
There's a gboolean return for that, and the messages don't really
add anything useful.
2010-01-28 00:08:16 +00:00
Tim-Philipp Müller
61c6c38bd0
dataurisrc: must release the object lock before using GST_ELEMENT_ERROR
2010-01-28 00:08:16 +00:00
Mark Nauwelaerts
a42e890470
qtmux: streamline moov data memory storage
...
In particular, use arrays rather than (double) linked lists.
2010-01-27 12:56:18 +01:00
Mark Nauwelaerts
87eb6333da
audioparsers: rename baseparse GType name to avoid possible conflicts
2010-01-27 12:45:57 +01:00
Mark Nauwelaerts
df4c4cc703
h264parse: use correct h264_parse prefix in function name
2010-01-27 12:41:57 +01:00
Thiago Santos
f815c46f5b
qtmux: g_free is NULL safe
2010-01-26 13:44:04 -03:00
Thiago Santos
2dded0fceb
rtpasfpay: Fix packet length semantics
...
Following the ed4d08189ea6e19a50e029e60da52d3583c39fbb
commit, this one fixes rtpasfpay to use packet length
as the payloaded data length, but also accepting it
as the full packet size for compatibility with
other implementations due to the lack of clarity of the
spec in this part.
2010-01-25 19:32:15 -03:00
Håkon Skjelten
0a90963fcf
asfmux: Compatibility with WMSP in WMP
...
Makes the asfmux content compatible with WMSP and does
some hacks to make it playable in WMP, it doesn't accept
data objects with 0 size indicating that we don't know
its size, though the spec says it should be possible.
Fixes #607555
2010-01-25 19:32:15 -03:00
Stefan Kost
be12317653
camerabin: ref element before removing from the bin to resurrect
...
This function is not supposed to dispose the element in the case of failure
as the caller is using the elements name in the error message. Also add
some more input parameter checks in the form of g_return_val_if_fail
2010-01-25 23:04:38 +02:00
Sebastian Dröge
c51c3ad21c
Revert "inputselector: Protect g_object_notify() with the object's mutex"
...
This reverts commit 7e067615ff
, it's causing
deadlocks with playbin2.
2010-01-25 12:21:34 +01:00
Sebastian Dröge
00e5076b3a
dataurisrc: Remove role attribute from links
2010-01-25 12:12:32 +01:00
Sebastian Dröge
828af08490
dataurisrc: Add docs and integrate into build system
...
Fixes again bug #596885 .
2010-01-25 11:56:33 +01:00
Sebastian Dröge
926decbecb
dataurisrc: Add data: URI source element
...
This is slightly based on the WebKit data: URI source
but supports more parts of RFC 2397.
Fixes bug #596885 .
2010-01-25 11:15:16 +01:00
Sebastian Dröge
b56436e793
dataurisrc: Add directory for data: URI source
2010-01-25 11:15:16 +01:00
Stefan Kost
b96d57b870
mxf: add a return to fix the build when turning assert off
2010-01-25 11:49:46 +02:00
Stefan Kost
76daceadca
Revert "mxf: add a return to fix the build when turning assert off"
...
This reverts commit 68ca62b369
.
2010-01-25 11:48:29 +02:00
Stefan Kost
68ca62b369
mxf: add a return to fix the build when turning assert off
2010-01-25 09:54:27 +02:00
Kipp Cannon
7e067615ff
inputselector: Protect g_object_notify() with the object's mutex
...
This works around the thread unsafety of g_object_notify()
Fixes bug #607513 .
2010-01-24 20:53:56 +01:00
Tim-Philipp Müller
e9732ef902
pnm: use same media type as other elements
...
gdkpixbuf and our new typefinder in -base use image/x-portable-*.
2010-01-22 02:25:44 +00:00
Tim-Philipp Müller
b2ce6fe6d5
pnm: make element details a bit more descriptive
2010-01-22 02:25:44 +00:00
Tim-Philipp Müller
4de86d4d12
pnm: add copyright notice
2010-01-22 02:25:44 +00:00
Tim-Philipp Müller
232a1dc6d0
pnm: move typefinding into -base
2010-01-22 02:25:44 +00:00
Sebastian Dröge
454b1931bc
mxf: Correctly initialize memory
2010-01-21 15:58:59 +01:00
Benjamin Otte
89d9aaee48
[cleanup] Various style and cleanups
...
Various fixes for gtk-doc warnings and making functions without
arguments take void as parameter.
2010-01-20 13:30:48 +01:00
Sebastian Dröge
b263ae123c
cdxaparse: Fix buffer leak
...
Fixes bug #607285 .
2010-01-18 10:58:39 +01:00
Sebastian Dröge
b95eda9c9a
frei0r: Make sure that property names always start with a letter
...
Otherwise GLib throws assertions
2010-01-16 17:02:52 +01:00
Sebastian Dröge
e476ff9883
shapewipe: Replace floating point arithmetic in the inner processing loops by integer arithmetic
2010-01-16 16:52:11 +01:00
Julien Moutte
f33344ab0c
mpeg4videoparse: don't set an invalid framerate.
...
When fixed_vop_rate is not set we can not set a framerate based on
vop_time_increment_resolution as it would most likely be wrong.
Don't set any framerate on the caps in that case.
2010-01-15 21:34:02 +01:00
Thiago Santos
774b7b33cc
qtmux: Actually use new caps info on renegotiation
...
Following the previous qtmux commit, this patch tries
to use the new info added to the caps to fill the 'trak'
atom's fields and children atoms. This way qtmux will
use the late added 'codec_data' when h264parse adds
it in the following pipeline:
videotestsrc num-buffers=200 ! x264enc byte-stream=true ! \
h264parse output-format=0 ! qtmux ! \
filesink location=test.mov
2010-01-14 19:09:44 -03:00
Thiago Santos
0b4c0890a5
qtmux: Do caps renegotiation when it only adds fields
...
Qtmux can accept caps renegotiation if the new caps is a
superset of the old one, meaning upstream added new info to
the caps. This patch still doesn't make qtmux update any
atoms info from the new info, but at least it doesn't
reject the new caps anymore.
A pipeline that reproduces this use case is:
videotestsrc num-buffers=200 ! x264enc byte-stream=true ! \
h264parse output-format=0 ! qtmux ! \
filesink location=test.mov
2010-01-14 19:09:44 -03:00
Mark Nauwelaerts
dbc1f9f2d6
qtmux: provide request pads under wider conditions
...
Fixes #606859 .
2010-01-13 19:30:45 +01:00
Thiago Santos
5a605b883b
qtmux: Only accept avc-sample h264
...
qtmux and mp4mux should only accept h264 in avc-sample
format
2010-01-13 10:35:57 -03:00
Thiago Santos
eba1357244
h264parse: Add stream-format to caps
...
Adds the new stream-format field to h264parse caps
Fixes #606662
2010-01-13 10:35:57 -03:00
Thiago Santos
ba06eddb40
h264parse: Correctly rewrite all nal prefixes
...
When converting to byte-stream do not forget to rewrite
all nal prefixes instead of only the first one.
2010-01-12 18:18:39 -03:00
Thiago Santos
6e1f2cf392
mpegtsmux: Fix mistake on previous commit
...
Use the correct variables and variable format in the warning
message
2010-01-12 15:21:29 -03:00
Edward Hervey
58b9479423
flacparse: Initialize variables.
...
Fixes build on $#@*( macosx
2010-01-12 18:55:53 +01:00
Thiago Santos
e6ab078785
h264parse: remove codec_data if output is bytestream
...
codec_data should be removed from the src pad caps if the
output is in bytestream format
Fixes #606657
2010-01-12 09:58:48 -03:00
Thiago Santos
ddeb6e17fd
mpegtsmux: Do not crash on misinterpreted h264
...
Avoid crashing when bytestream h264 is interpreted as avc format
h264
Fixes #606657
2010-01-12 09:37:34 -03:00
b3f0b029f3
win32: Include config.h before anything else. Fix mpegdemux LIBADD
...
Because config.h defines __MSVCRT_VERSION__, which should be defined
before inclusion of any system header.
Also fixes mpegdemux Makefile.am LIBADD typo.
Fixes #606665
2010-01-12 12:31:56 +01:00
Руслан Ижбулатов
d61abce8e4
librfb: port rfbsrc to MinGW
...
Fixes #606677
2010-01-12 00:29:57 +00:00
Thiago Santos
08d13fd191
aacparse: Also add stream-format to template caps
...
Do not forget to add stream-format to template caps
off aacparse
2010-01-11 13:42:49 -03:00
Thiago Santos
a428ad82c7
Rename aac's stream-format 'none' to 'raw'
...
Renames aac's stream-format from previous commits from none to
raw
2010-01-11 13:42:48 -03:00
Thiago Santos
7cfe3643db
aacparse: Add stream-format to output caps
...
Adds stream-format field to output caps
2010-01-11 11:01:10 -03:00
Thiago Santos
5b8b363310
qtmux: Only accept stream-format='none' aac
...
Only accept raw aac streams (stream-format=none) to avoid
generating invalid files.
Fixes #604925
2010-01-11 11:01:10 -03:00
Tim-Philipp Müller
ee65cabbb3
vmnc: use existing macros to avoid alignment issues
2010-01-11 01:01:46 +00:00
Tim-Philipp Müller
904a4e0f48
rfbsrc: use existing macros to avoid alignment issues
2010-01-11 00:58:12 +00:00
Tim-Philipp Müller
64c6ee0b4e
asfmux: fix alignment and endianness issue
2010-01-11 00:24:59 +00:00
Linqiang Pu
d68c2d4ab9
mpegdemux: fix allignment issue
...
Use GST_READ_UINT32_BE instead of GUINT32_FROM_BE to
fix int allignment issues on ARM
Fixes #606371
2010-01-10 10:09:55 -03:00
Marc-André Lureau
67e5d76d08
mpegtsmux: only video can have non-delta-unit
2010-01-08 16:06:38 +00:00
Thomas Vander Stichele
5fab65aafb
mpegtsmux: mark delta-unit on outgoing buffers
...
Signed-off-by: Marc-André Lureau <mlureau@flumotion.com>
2010-01-08 13:07:53 +01:00
Mark Nauwelaerts
4067cd13c2
h264parse: optimize src caps updating
2010-01-07 19:00:14 +01:00
Mark Nauwelaerts
51aaa30fab
h264parse: fix framerate calculation
...
... and also remove a superfluous duplicate debug statement.
2010-01-07 19:00:00 +01:00
Mark Nauwelaerts
997ec65cdf
h264parse: fix regression in output buffer timestamping
...
Specifically, properly mark a buffer (NALU or AU) to start a frame or not.
2010-01-07 18:59:58 +01:00
Michael Smith
e2da34e6b6
mpeg4videoparse: avoid crash if vos < 5 bytes.
2010-01-06 11:20:41 -08:00
Tim-Philipp Müller
ec0c87486f
fpsdisplaysink: fix typo in property description
2010-01-06 01:57:13 +00:00
Tim-Philipp Müller
b32305d015
mpegtsdemux: fix language extraction
...
The descriptor contains ISO 639-2 language codes, but we want
two-letter ISO 639-1 codes in GST_TAG_LANGUAGE.
2010-01-06 01:57:01 +00:00
Mark Nauwelaerts
e63fc68628
audioparsers: documentation fixes
2010-01-05 17:50:40 +01:00
Mark Nauwelaerts
51a28ed325
ac3parse: add documentation
2010-01-05 17:50:36 +01:00
Mark Nauwelaerts
d517e1c034
flacparse: add documentation
2010-01-05 17:46:31 +01:00
Mark Nauwelaerts
59855f35a7
flacparse: perform additional frame checks when resyncing
2010-01-05 17:46:15 +01:00
Mark Nauwelaerts
9009899176
flacparse: fix (multiple channel) frame parsing
2010-01-05 17:46:01 +01:00
Mark Nauwelaerts
79acb0b4cc
flacparse: declare unparsed input and parsed output
2010-01-05 17:45:56 +01:00
Mark Nauwelaerts
660cdc4679
ac3parse: fix scanning for next syncword
2010-01-05 17:45:54 +01:00
Mark Nauwelaerts
3f5b4ee67f
baseparse: adjust seek handling and newsegment sending
...
Perform sanity check on type of seek, and only perform one that is
appropriately supported. Adjust downstream newsegment event
to first buffer timestamp that is sent downstream.
2010-01-05 17:45:48 +01:00
Mark Nauwelaerts
a885f80fd3
baseparse: minor refactor cleanup
...
Also add some debug logging.
2010-01-05 17:45:45 +01:00
Mark Nauwelaerts
ebe8c69cc2
flacparse: locate next sync code more efficiently
2010-01-05 17:45:42 +01:00
Mark Nauwelaerts
e6f840690d
flacparse: baseparse takes care of handling leftover pieces
2010-01-05 17:45:32 +01:00
Mark Nauwelaerts
90c86c600b
baseparse: implement leftover draining in pull mode
2010-01-05 17:45:29 +01:00
Mark Nauwelaerts
c4db8697d7
flacparse: set _OFFSET and _OFFSET_END on outgoing buffers
2010-01-05 17:40:07 +01:00
Mark Nauwelaerts
8c67702b84
audioparsers: move 'flacparse' into it
2010-01-05 17:40:02 +01:00
Mark Nauwelaerts
a3f7b8527e
baseparse: provide default conversion using bps if no fps available
...
Also store estimated duration as such, rather than pretending otherwise
(e.g. set by subclass).
2010-01-05 17:39:59 +01:00
Arnaud Patard
24965dc415
mpegtsdemux: Handle eac3 in PMT
...
When the stream type is set to private data, gst-mpegtsdemux is trying to find
audio descriptors in PMT and look for AC3 (tag 0x6a) but doesn't look for EAC3
(tag 0x7a). Handle this case too.
Fixes bug #605904 .
2010-01-04 10:15:29 +01:00
Alessandro Decina
52f5f42da0
h264parse: fix caps handling in _update_src_caps.
2009-12-30 21:50:32 +01:00
Stefan Kost
80aa8e70ec
qtmux: also add .h file changes to unbreak the build
2009-12-28 11:34:35 +02:00
Stefan Kost
48111e3f18
qtmux: use correct names from template for request pads
...
The pads where names pad0, pad1, ...
2009-12-27 23:51:50 +02:00
Stefan Kost
be0d7470cf
qtmux: move errors _new_pad to the end
2009-12-27 23:32:58 +02:00
Thiago Santos
f822f65f34
qtmux: Accept non-paired uint tags
...
Adds support for unpaired unsigned interger tags
2009-12-21 13:58:30 -03:00
Thiago Santos
80a192b825
qtmux: Adds new tags
...
Maps more tags that are already posted by qtdemux
Fixes #599759
2009-12-21 12:05:37 -03:00
Mark Nauwelaerts
a61183fe29
baseparse: check for remaining data when draining in push mode
2009-12-18 13:32:07 +01:00
Mark Nauwelaerts
d51d8ca35c
baseparse: fix pull mode cache size comparison
2009-12-18 13:32:00 +01:00
Edward Hervey
83c7b38a10
ac3parse: Fix unitialized variable.
2009-12-18 13:01:17 +01:00
Thiago Santos
87bfdef683
fpsdisplaysink: Internal sink improvements
...
Does some general improvements with the internal sink handling.
1) Do not remove and re-add the ghostpad when changing
internal sink
2) Only instantiate the default sink when changing from NULL
to READY if there is no other available
3) Avoid changing the internal sink if not on NULL state
Fixes #598682
2009-12-17 20:39:24 -03:00
Thiago Santos
a4f30d5f3d
fpsdisplaysink: Minor fixes
...
Downgrade a warning message to debug. Remove an
already fixed FIXME and add a note about (not-)using
fpsdisplaysink in autovideosink. Change the created
ghostpad to use the name "sink" as it is advertised in
the pad template.
2009-12-17 20:26:30 -03:00
Christian Schaller
86c2660d8d
Update spec file and fix ac3parser header listing in Makefile.am
2009-12-17 14:46:01 +00:00
Thiago Santos
d2dce72c60
fpsdisplaysink: fix setting sync on child bin
...
Use GST_IS_BIN instead of G_OBJECT_TYPE to check if the
internal sink is a bin. Using the later won't work when
the sink is not a bin directly (but inherits from one, like
autovideosink).
Fixes #604280
2009-12-16 18:36:15 -03:00