Commit graph

1365 commits

Author SHA1 Message Date
Tim-Philipp Müller
3f5ff831fc mad: remove .c.orig file 2012-04-10 00:48:47 +01:00
Tim-Philipp Müller
08d20e4da8 Use new gst_element_class_set_static_metadata() 2012-04-10 00:47:44 +01:00
Sebastian Dröge
29a893b494 gst: Update for GST_PLUGIN_DEFINE() API changes 2012-04-05 17:40:12 +02:00
Sebastian Dröge
9e5a55a70f gst: Update versioning 2012-04-04 14:38:53 +02:00
Wim Taymans
ec170a27eb mpeg2dec: fix cropping
fix cropping in mpeg2dec
2012-04-02 15:21:36 +02:00
Wim Taymans
f503ef97f7 mpeg2dec: add crop metadata when buffer is still writable 2012-04-01 20:19:36 +02:00
Sebastian Dröge
90b1e8ac71 ext: Update for audio decoder API changes 2012-03-30 11:54:17 +02:00
Wim Taymans
6d371c89c1 x264enc: remove deprecated properties 2012-03-21 13:18:11 +01:00
Tim-Philipp Müller
ef64b43ac8 Merge remote-tracking branch 'origin/master' into 0.11
So 0.11 folks also get amr include fixes.

Conflicts:
	ext/a52dec/gsta52dec.c
	ext/mad/gstmad.c
2012-03-20 12:08:23 +00:00
Wim Taymans
fdfea36e93 update for bufferpool changes 2012-03-15 22:11:41 +01:00
Wim Taymans
5aba4d40c1 update for allocation query changes 2012-03-15 20:38:50 +01:00
Wim Taymans
7cd283ebc6 update for memory api changes 2012-03-15 13:38:16 +01:00
Wim Taymans
11c077bfd1 take padding into account 2012-03-14 19:52:52 +01:00
Mark Nauwelaerts
6d44ed77a4 mad: simplify parsing code
Also fixes #671455 (expected at least).
2012-03-13 18:28:49 +01:00
Wim Taymans
3270eadf8d fix for caps _normalize changes 2012-03-12 12:23:43 +01:00
Wim Taymans
c65625be9e fix for caps api changes 2012-03-11 19:07:19 +01:00
Mark Nauwelaerts
110a993cc9 a52dec: use base class tag handling helper
... so as to ensure these to be handled and sent at proper time.
2012-03-06 16:20:10 +01:00
Sebastian Dröge
6e9a534223 dvdreadsrc: Use variable type with correct signedness 2012-03-06 14:28:15 +01:00
Edward Hervey
4a4d652dd4 mpeg2dec: Copy planes in one go when possible 2012-03-05 13:01:52 +01:00
Tim-Philipp Müller
425e6e395f amrnb, amrwbdec: fix build with opencore-amr >= 0.1.3
In previous versions, the opencore-amr include sub-directory
would be specified in the include path in the CFLAGS, but this
is no longer the case in newer versions, so we need to add those
to our include directives.

Based on patch by: Christian Morales Vega

https://bugzilla.gnome.org/show_bug.cgi?id=671123
2012-03-03 17:21:28 +00:00
Wim Taymans
9f4b02389e update for metadata API changes 2012-02-29 17:26:42 +01:00
Alessandro Decina
16406b18d7 amrwbdec, lame, mad: link to libgstbase 2012-02-27 06:35:01 +01:00
Alessandro Decina
b09945ab27 x264enc: fix compiler warning 2012-02-27 06:33:48 +01:00
Tim-Philipp Müller
42d53650fa Merge commit '02f5d72a0519bcbe8f6958fab6dd998fc8ccda6b' into 0.11
Conflicts:
	ext/mad/gstmad.c
2012-02-27 00:34:09 +00:00
Wim Taymans
829301f1e4 x264: convert g_print to LOG 2012-02-22 02:17:55 +01:00
Wim Taymans
ca1c36a8b4 x264enc: handle pts and dts 2012-02-22 02:07:29 +01:00
Mark Nauwelaerts
838493c9a7 mad: handle libmad freeform parsing quirk 2012-02-21 18:54:52 +01:00
Mark Nauwelaerts
5dead1c400 mad: fixup unhacking last frame coaxing
... so as to not only replace the data pointer but also available size.
2012-02-21 18:54:42 +01:00
Wim Taymans
ed4b967d16 Merge branch 'master' into 0.11
Conflicts:
	ext/mad/gstmad.c
2012-02-17 09:16:32 +01:00
Mark Nauwelaerts
2e35999f68 mad: unhack last frame coaxing
... so as to maximally use available base class API and interfere least
as possible with its internal state.
2012-02-16 14:49:04 +01:00
Wim Taymans
7de44ab61b mad: fix compilation 2012-02-15 13:45:00 +01:00
Wim Taymans
d6b150a1f1 mad: chain up to default event handler 2012-02-15 13:40:13 +01:00
Matej Knopp
0f9e7c3863 x264enc: unmap video frame after encoding
Fixes major memory leak.

https://bugzilla.gnome.org/show_bug.cgi?id=669863
2012-02-11 13:33:24 +00:00
Wim Taymans
05a446b3c4 x264enc: fix after merge 2012-02-10 17:02:38 +01:00
Wim Taymans
49f4bc87d9 Merge branch 'master' into 0.11
Conflicts:
	ext/x264/gstx264enc.c
2012-02-10 17:00:33 +01:00
Wim Taymans
be075f643e sidplay: don't use ulong properties 2012-02-09 18:10:48 +01:00
Wim Taymans
bfb8a04d4f sidplay: fix negotiation 2012-02-09 16:14:55 +01:00
Robert Swain
ed561dcdb1 x264enc: Add baseline profile to caps
libx264 does not yet support the features that create the difference
between baseline and constrained baseline profile. Hence it currently
supports both though it can only technically encode constrained
baseline.
2012-02-09 11:55:07 +01:00
Wim Taymans
f731208bcd GST_FLOW_WRONG_STATE -> GST_FLOW_FLUSHING 2012-02-08 16:38:09 +01:00
Sebastian Dröge
2af62366da twolame: Use new audio encoder/decoder base class API for srcpad caps 2012-02-01 16:27:49 +01:00
Sebastian Dröge
ba521ebba0 lame: Use new audio encoder/decoder base class API for srcpad caps 2012-02-01 16:27:49 +01:00
Sebastian Dröge
72d930b75c mad: Use new audio encoder/decoder base class API for srcpad caps 2012-02-01 16:27:49 +01:00
Sebastian Dröge
acde15adc3 a52dec: Use new audio encoder/decoder base class API for srcpad caps 2012-02-01 16:27:49 +01:00
Sebastian Dröge
77c41a22f0 amrwbdec: Use new audio encoder/decoder base class API for srcpad caps 2012-02-01 16:27:49 +01:00
Sebastian Dröge
20b889a588 amrnb: Use new audio encoder/decoder base class API for srcpad caps 2012-02-01 16:27:49 +01:00
Vincent Penquerc'h
73330c2ab8 mad: ensure we do not confuse the base class with our buffer guard
mad expects extra bytes at the end of a buffer (see discussion in
http://www.mars.org/mailman/public/mad-dev/2001-May/000262.html),
and since we inject these without the base class' knowledge, we
need to hide the bodies better.

This fixes an assert at EOS when decoding an mp3 manually without
an intervening mpegaudioparse.
2012-01-31 15:52:38 +00:00
Alessandro Decina
4322fd0752 x264enc: implement force-key-unit API 2012-01-26 19:44:05 +01:00
Wim Taymans
cc1e26147d amr: port to 0.11 again 2012-01-25 13:58:54 +01:00
Sebastian Dröge
74de5954af Merge branch 'master' into 0.11
Conflicts:
	ext/a52dec/gsta52dec.c
2012-01-25 13:03:33 +01:00
Wim Taymans
56a07a14b5 port to new memory API 2012-01-25 11:57:07 +01:00
Vincent Penquerc'h
1651493ae0 a52dec: fix read buffer overflow upon syncing
The wrong size was being decremented, leading to a runaway
read loop.
2012-01-19 15:27:22 +00:00
Mark Nauwelaerts
7b51343363 amrwbdec: _parse should not return OK if not enough data yet 2012-01-17 11:57:26 +01:00
Mark Nauwelaerts
1d71315dc9 amrnbdec: _parse should not return OK if not enough data yet 2012-01-17 11:57:21 +01:00
Vincent Penquerc'h
683f5eeae7 dvdreadsrc: fix off by one in cell calculation for the last chapter 2012-01-13 15:03:50 +00:00
Vincent Penquerc'h
69541031da x264enc: remove useless and semantically (though not practically) wrong code
The object will be freed, so it's pointless to set the pointers
to NULL anyway.
2012-01-13 13:48:23 +00:00
Vincent Penquerc'h
e842b58405 x264enc: remove leaking "optimization" 2012-01-13 13:48:23 +00:00
Mark Nauwelaerts
2e7b2d8bdf a52dec: plug buffer leak 2012-01-12 13:26:31 +01:00
Mark Nauwelaerts
8cd2408f09 a52dec: plug buffer leak 2012-01-12 13:20:26 +01:00
Mark Nauwelaerts
9d139c30b7 amrnbenc: _map and _unmap the appropriate input and output buffers 2012-01-11 12:31:11 +01:00
Sebastian Dröge
69acbc53e9 a52dec: Fix some merge mistakes 2012-01-10 15:25:12 +01:00
Sebastian Dröge
31063f0098 Merge branch 'master' into 0.11
Conflicts:
	ext/a52dec/gsta52dec.c
	ext/a52dec/gsta52dec.h
	ext/lame/gstlame.c
	ext/lame/gstlame.h
	ext/lame/gstlamemp3enc.c
	ext/mad/gstmad.c
	ext/mad/gstmad.h
	gst/mpegaudioparse/gstmpegaudioparse.c
	gst/mpegstream/gstdvddemux.c
	gst/realmedia/rdtdepay.c
	po/es.po
	po/lv.po
	po/sr.po
2012-01-10 15:17:11 +01:00
Sebastian Dröge
9c646f59ac mad: Correctly unmap the buffer with the original data pointer 2012-01-09 15:24:53 +01:00
Sebastian Dröge
a120944340 mad: Make sure to set caps on the srcpad if none are set yet 2012-01-09 15:15:28 +01:00
Tim-Philipp Müller
f9149656e4 mad: fix LIBS order in Makefile.am 2012-01-08 14:24:11 +00:00
Tim-Philipp Müller
fc3ed25935 mad: remove left-over id3tag.h include
We don't use libid3tag any more.
2012-01-07 21:04:01 +00:00
Sebastian Dröge
882aaf0de2 a52dec: Update for the new raw audio caps 2012-01-05 10:37:04 +01:00
Sebastian Dröge
a1f24f72a7 mad: Update for the new raw audio caps 2012-01-05 10:37:04 +01:00
Sebastian Dröge
f3fa53b299 lamemp3enc: Update for the new raw audio caps 2012-01-05 10:37:04 +01:00
Sebastian Dröge
52481b34f5 twolamemp2enc: Update for the new raw audio caps 2012-01-05 10:37:04 +01:00
Sebastian Dröge
f7e7a959d8 amrwbdec: Add the new layout field to the raw audio caps 2012-01-05 10:37:04 +01:00
Sebastian Dröge
3eae4839f2 amrnb: Add the new layout field to the raw audio caps 2012-01-05 10:37:04 +01:00
Tim-Philipp Müller
55dae81983 lame: fix LIBADD order in Makefile.am 2012-01-04 18:42:34 +00:00
Wim Taymans
f9d64ff495 GST_FLOW_UNEXPECTED -> GST_FLOW_EOS 2012-01-03 15:27:42 +01:00
Tim-Philipp Müller
596647664f mpeg2dec: remove all seeking-related code
A parser or demuxer upstream should handle this Same for
queries.
2011-12-30 18:23:13 +00:00
Tim-Philipp Müller
51794ce082 mpeg2dec: update for GstIndex removal 2011-12-30 17:49:01 +00:00
Tim-Philipp Müller
add96c2567 cdio: update for probe vfunc removal in GstAudioCdSrc 2011-12-30 17:46:06 +00:00
Tim-Philipp Müller
769e84cfe8 lame: fix printf format in debug statements
https://bugzilla.gnome.org/show_bug.cgi?id=666926
2011-12-27 22:54:34 +00:00
Mark Nauwelaerts
d08945bccf lame: ensure parsed output
... by doing some basic parsing of encoded lame data.
2011-12-26 18:29:00 +01:00
Mark Nauwelaerts
e8cb13fea1 lame: cleanup unused instance struct fields 2011-12-26 18:28:58 +01:00
Mark Nauwelaerts
e21ba604a4 lamemp3enc: ensure parsed output
... by doing some basic parsing of encoded lame data.

Fixes #652150.
2011-12-26 18:28:28 +01:00
Mark Nauwelaerts
ee31252201 lamemp3enc: do not leak merged tags 2011-12-26 18:28:12 +01:00
Vincent Penquerc'h
30e29b6fdb mad: helpfully bodge the last buffer to let mad decode the last frame
If http://www.mars.org/mailman/public/mad-dev/2001-May/000262.html is
to be believed, the last buffer must be followed by a number of 0 bytes
in order for the last frame to be decoded (at least in some cases).
Doing so seems to work here, fixing a missing 1152 samples when using
mp3parse before mad (not using mp3parse would yield the correct amount
of samples, if there's extra non-MP3 data after (eg, tag data)).
2011-12-22 15:23:54 +00:00
Mark Nauwelaerts
20dcefd5c0 dvdreadsrc: map subtitle language tag to stream indicated in PGC data 2011-12-21 22:09:04 +01:00
Mark Nauwelaerts
692f6b5d95 dvdreadsrc: minor safety tweak to sector seeking 2011-12-21 22:07:23 +01:00
Julien Isorce
24fca6cde5 a52dec: check that a52_init returns a valid a52 state 2011-12-20 12:45:52 +01:00
Wim Taymans
aed83a1954 mpeg2dec: update for new interlaced flags 2011-12-19 18:20:56 +01:00
Mark Nauwelaerts
d55d4054bd a52dec: port to audiodecoder 2011-12-14 17:37:50 +01:00
Mark Nauwelaerts
260824b278 mad: port to audiodecoder 2011-12-14 17:37:47 +01:00
Sebastian Dröge
220b88fcc1 a52dec: Don't claim to support upstream renegotiation
and use fixed caps on the srcpad. To correctly support
upstream renegotiation a52dec would need to check if the
caps of the downstream allocated buffer are the requested
caps or if the size is different.

Fixes bug #665989.
2011-12-13 14:54:18 +01:00
Julien Isorce
cdf8d0f6b2 a52dec: Check that the a52_state is correctly initialized 2011-12-13 14:52:26 +01:00
Wim Taymans
d701123063 fix for basesrc changes 2011-12-06 14:00:18 +01:00
Руслан Ижбулатов
895b88760f dvdreadsrc: Fix format string compiler warning
Fixes bug #665101.
2011-11-29 08:49:23 +01:00
Wim Taymans
4548e811ea Update for indexable change 2011-11-28 18:26:34 +01:00
Vincent Penquerc'h
213ce049ad various: fix pad template ref leaks
https://bugzilla.gnome.org/show_bug.cgi?id=662664
2011-11-28 13:10:01 +00:00
Tim-Philipp Müller
875c41011e ext: fix more printf format warnings in debug messages 2011-11-23 23:29:03 +00:00
Wim Taymans
2679b9432a add parent to pad functions 2011-11-17 15:25:58 +01:00
Wim Taymans
ee240c1ac0 add parent to query function 2011-11-16 17:28:56 +01:00
Wim Taymans
7f70d16daf _peer_get_caps() -> _peer_query_caps() 2011-11-15 17:23:39 +01:00
Wim Taymans
1754aa707a update for _get_caps() -> _query_caps() 2011-11-15 16:52:55 +01:00
Wim Taymans
2aac4ddabf change getcaps to query 2011-11-15 16:34:39 +01:00
Tim-Philipp Müller
607ce96e33 mad: re-instate accidentally dropped rank 2011-11-14 00:55:16 +00:00
Tim-Philipp Müller
074330bf16 Update for GstURIHandler get_protocols() changes 2011-11-13 23:47:46 +00:00
Tim-Philipp Müller
4db445cf84 dvdreadsrc, pnmsrc: update for GstURIHandler changes 2011-11-13 19:01:31 +00:00
Tim-Philipp Müller
b581c0f96d mad: re-port to 0.11
This time using the base class. Still something
wrong with the parsing though, when there's no
parser or demuxer upstream (which of course
shouldn't happen in a normal playback scenario).
2011-11-13 15:10:32 +00:00
Tim-Philipp Müller
0cc15510e5 mad: update for GstBaseAudioDecoder -> GstAudioDecoder rename 2011-11-13 00:29:20 +00:00
Mark Nauwelaerts
ced55bf549 mad: replace with 0.10 version ported to GstAudioDecoder
Taken from commit 6e7e3657396454fe95fbd89170281865d4d1cec3
of Mark's baseaudio branch.

Would probably be too risky to drop this into 0.10 given
all the things mad is doing.
2011-11-13 00:23:03 +00:00
Tim-Philipp Müller
b699e199f2 cdio: port cdiocddasrc to 0.11 2011-11-12 21:06:29 +00:00
Tim-Philipp Müller
82ae672bad lamemp3enc: cosmetic error message change
LET'S TRY TO KEEP CAPITALS TO A MINIMUM.
2011-11-11 01:27:47 +00:00
Tim-Philipp Müller
f6d7531c66 twolame: rename to twolamemp2enc 2011-11-11 01:21:33 +00:00
Tim-Philipp Müller
13d1003c9e twolame: port to 0.11 2011-11-11 00:51:34 +00:00
Wim Taymans
f49f9bd1a8 update for removed fixate function 2011-11-10 11:04:06 +01:00
Wim Taymans
6a7345c98d remove query types 2011-11-09 11:58:03 +01:00
Edward Hervey
444df1a2cc mpeg2dec: Add basic cropping support 2011-11-04 10:48:17 +01:00
Wim Taymans
e59ba7ca05 tags: update for tag API removal 2011-11-02 12:09:45 +01:00
Wim Taymans
fed7cbc8d2 update for meta api change 2011-11-02 09:09:26 +01:00
Tim-Philipp Müller
0f2f834285 amrnb: fix up raw audio caps for 0.11 2011-10-30 15:05:07 +00:00
Tim-Philipp Müller
2a755f15af lame: remove lame element, it's been superseded by lamemp3enc 2011-10-30 13:47:26 +00:00
Tim-Philipp Müller
1905e95cea ext, gst: update for taglist API changes 2011-10-30 11:51:58 +00:00
Wim Taymans
6e4acbec6b Merge branch 'master' into 0.11
Conflicts:
	ext/sidplay/gstsiddec.cc
2011-10-28 15:21:27 +02:00
Stefan Sauer
1b93f1d8a2 siddec: use BOILERPLATE macro and cleanup FIXMEs 2011-10-28 12:50:20 +02:00
Wim Taymans
6b709f4656 dvdread: port to 0.11 2011-10-10 12:38:02 +02:00
Wim Taymans
f99001a05d Merge branch 'master' into 0.11
Conflicts:
	ext/amrwbdec/Makefile.am
	ext/amrwbdec/amrwbdec.c
2011-10-05 13:32:33 +02:00
Mark Nauwelaerts
851e34bfb5 amrwbdec: port to audiodecoder 2011-10-05 12:06:53 +02:00
Mark Nauwelaerts
b95673d88d amrnbdec: fixup build 2011-10-05 12:06:51 +02:00
Mark Nauwelaerts
bf3e10992b amrnbdec: remove leftover extraneous _unref 2011-10-05 12:06:48 +02:00
Wim Taymans
76a13cbcdc Merge branch 'master' into 0.11
Conflicts:
	ext/amrnb/amrnbdec.c
2011-10-04 17:50:33 +02:00
Wim Taymans
f9863d1274 amrnb: port to 0.11 2011-10-04 17:35:40 +02:00
Wim Taymans
fa2da0c2cb ported amrwbdec to 0.11 2011-10-04 17:12:35 +02:00
Mark Nauwelaerts
fa2d16b905 amrnbdec: port to audiodecoder 2011-10-03 17:24:28 +02:00
Wim Taymans
d255e3db39 Merge branch 'master' into 0.11 2011-09-30 17:45:31 +02:00
Wim Taymans
62d5386b06 mpeg2dec: minimal port to 0.11 2011-09-30 17:38:07 +02:00
Vincent Penquerc'h
2cb398d20d mpeg2dec: post QoS messages when dropping a frame due to QoS
https://bugzilla.gnome.org/show_bug.cgi?id=658241
2011-09-30 14:10:31 +01:00
Wim Taymans
f068674a4d lame: fix raw audio caps too 2011-09-27 18:19:50 +02:00
Wim Taymans
ee98ebc46a lame: port to 0.11 2011-09-27 18:15:00 +02:00
Wim Taymans
036963bc89 Merge branch 'master' into 0.11 2011-09-27 17:54:02 +02:00
Wim Taymans
29e0834191 x264enc: port to 0.11 2011-09-27 17:51:31 +02:00
Mark Nauwelaerts
dc3013f925 amrnbenc: port to audioencoder 2011-09-27 17:03:30 +02:00
Wim Taymans
854f4d846b Merge branch 'master' into 0.11
Conflicts:
	ext/mad/gstmad.c
2011-09-26 19:07:23 +02:00
Wim Taymans
5737f8cc82 port a52dec to 0.11 2011-09-26 19:03:13 +02:00
Sebastian Dröge
62497d4ba8 twolame: Simple fix for GstAudioEncoder API change 2011-09-26 16:29:12 +02:00
Sebastian Dröge
eb6d67b2d4 twolame: Fix variable 'gstelement_class' set but not used compiler warning 2011-09-26 16:28:08 +02:00
Sebastian Dröge
5c390646ec lame: Don't get the parent class again, GST_BOILERPLATE does this already 2011-09-26 16:08:20 +02:00
Sebastian Dröge
7032f94e72 lame: Fix variable 'gstelement_class' set but not used compiler warning 2011-09-26 16:07:54 +02:00
Mark Nauwelaerts
0431d015f4 twolame: improve output framing and timestamping
... which simply comes down to requesting one frame of input data at a time,
since the encoder nicely turns this into 1 encoded frame.
2011-09-26 15:17:12 +02:00
Mark Nauwelaerts
cd118451ed twolame: port to audioencoder 2011-09-26 15:17:08 +02:00
Mark Nauwelaerts
a1694e6f60 lame: use some more boilerplate 2011-09-26 15:17:06 +02:00
Mark Nauwelaerts
e33c98bc24 lame: port to audioencoder 2011-09-26 15:17:04 +02:00
Mark Nauwelaerts
7961d3f2e3 lamemp3enc: use some more boilerplate 2011-09-26 15:17:02 +02:00
Mark Nauwelaerts
19c6d5e45b lamemp3enc: really report bitrate rather kbitrate 2011-09-26 15:16:59 +02:00
Mark Nauwelaerts
2bfec2cccc lamemp3enc: port to audioencoder 2011-09-26 15:16:57 +02:00
Vincent Penquerc'h
40274ad92f dvdreadsrc: take into account first sector of the current title
This fixes seeking on titles which do not start on a new file.

https://bugzilla.gnome.org/show_bug.cgi?id=659252
2011-09-19 09:53:26 +02:00
Vincent Penquerc'h
59ed3b7bf2 dvdreadsrc: fix sector seeking
It was overly complicated, and did not take into account the offset
needed for titles which do not start on a new file.

https://bugzilla.gnome.org/show_bug.cgi?id=659252
2011-09-19 09:53:07 +02:00
Vincent Penquerc'h
20464efc8e dvdreadsrc: fix sector search for packed titles
Some DVD titles are packed in a single set, and we need to use
the correct table to map times to sectors.

https://bugzilla.gnome.org/show_bug.cgi?id=659252
2011-09-19 09:52:35 +02:00
Tim-Philipp Müller
56bd24365a mad: remove id3tag dependency used by in practice unreachable legacy code
The mad mp3 decoder element shouldn't parse tags at all really, but we
have so far kept this code around for backwards-compatibility reasons
for people building manual pipelines for some reason. However, as it
turns out that code has never actually worked in 0.10 in practice,
since it only gets executed if mad_frame_decode() returns LOSTSYNC,
which doesn't actually seem to happen any more though because of the
preceding mad_header_decode(), which will discover and report the
sync loss if it runs into a tag and make mad_frame_decode() try to
resync right away.

Discovered this while trying to make it use gst_tag_list_from_id3v2_tag().
2011-09-13 19:40:12 +01:00
Wim Taymans
39b0b4e27f Merge branch 'master' into 0.11 2011-08-25 12:54:42 +02:00
Vincent Penquerc'h
a09bad4d98 mpeg2dec: fix spurious failure to decode some files
Parsing can return with an 'invalid' state, but this is not
actually fatal. For one, the mpeg2dec command line tool that
comes with the libmpeg2 library blithely ignores this condition
and merrily goes on. So we do this same, logging the error,
and going on with parsing. This makes something work that did
not use to work, and brings happiness to the world.

https://bugzilla.gnome.org/show_bug.cgi?id=429476
2011-08-23 10:04:48 +02:00
Wim Taymans
957043ad0a port to new audio caps 2011-08-19 18:07:58 +02:00
Wim Taymans
8ab84f0f8a Merge branch 'master' into 0.11
Conflicts:
	common
	gst/asfdemux/gstrtpasfdepay.c
2011-08-03 18:58:09 +02:00
Edward Hervey
2efbca2aa6 mad: Fix for changes in GstQuery API 2011-08-02 12:48:52 +02:00
Thiago Santos
19f1c38d4e x264enc: Properly set the stream format in setcaps
Do not forget to set the selected format to the options string
when getting it from caps

https://bugzilla.gnome.org/show_bug.cgi?id=655223
2011-07-30 19:06:54 -03:00
Stefan Sauer
3f8a245796 x264enc: fix the build for older x264enc
b_fake_interlaced was introduced in x264 commit 1b48874d06 = X264_BUILD 96.
2011-07-19 15:10:49 +02:00
Olivier Crête
3cb99f46b7 x264enc: Read stream-format from the right place
Read the stream-format from "stream-format" and not from profile, also rename
the "bytestream" variable to "stream_format" so it's easier to understand.
2011-07-18 20:41:20 -04:00
Thiago Santos
7aafba6f82 x264enc: Select stream-format based on caps
Makes x264 select its stream-format based on what's available
on caps, the user selected option will be chosen as a fallback
when both options are available.

https://bugzilla.gnome.org/show_bug.cgi?id=644233
2011-07-13 14:04:53 -04:00
Olivier Crête
ac47d20fae x264: Allow renegotiation but prefer current caps 2011-07-13 14:02:26 -04:00
Olivier Crête
e27dda7c62 x264: Use profile and level from caps
Enforces the profile and level from the downstream caps, also
sets them on the fixated caps

https://bugzilla.gnome.org/show_bug.cgi?id=644233
2011-07-12 16:51:50 -04:00
Brian Gitonga Marete
48f899257d x264enc: fix subme property annotation - subme maximum is 10, not 6.
Although the element accepts subme values > 6, the annotation which is
visible through gst-inspect (for example) erroneously indicates 6 as the
maximum. Fix this by indicating 10 (which is the x264 max) as the maximum.

https://bugzilla.gnome.org/show_bug.cgi?id=653473
2011-06-27 13:08:30 +01:00
Wim Taymans
9b9a423188 siddec: port siddec to 0.11 2011-06-08 18:18:17 +02:00
Wim Taymans
13c252b2a8 Merge branch 'master' into 0.11
Conflicts:
	configure.ac
2011-06-02 18:46:11 +02:00
Wim Taymans
62758d8ff1 mad: port to new API
Port to new segment API.
Eat Caps events.
No need to set caps on buffers.
2011-06-02 18:43:28 +02:00
Stefan Kost
d229a538dc mad: use signed when caluculating the delta
Avoids a <0 check for an unsigned variable.
2011-05-20 13:31:14 +03:00
Sebastian Dröge
b0e7e27365 lamemp3enc: Post CODEC and BITRATE tags
Also filter any CODEC/AUDIO_CODEC tags from incoming
tag events.

Fixes bug #391543.
2011-05-18 15:17:20 +02:00
Sebastian Dröge
1e0d2d67b4 mad: Post bitrate tag whenever the bitrate changes
Also send the layer/mode/emphasis/bitrate tags as an event too.
2011-05-14 12:05:56 +02:00
Sebastian Dröge
27b0ee204c x264enc: Copy the template caps, it's not allowed to increase the refcount of const caps 2011-05-04 12:39:17 +02:00
Mark Nauwelaerts
0bc0a31c96 x264enc: do not leak peer pad reference 2011-05-04 12:30:39 +02:00
Sjoerd Simons
0d362e5572 x264enc: No need to copy, reffing is enough 2011-05-03 15:27:43 +01:00
Sjoerd Simons
cd5fc6ed8d x264enc: get_caps function should return a copy of the caps 2011-05-03 15:24:15 +01:00
Wim Taymans
fedbdec0ed mad: remove buffer_alloc 2011-04-29 15:43:47 +02:00
Wim Taymans
edb17b4601 mad: port to 0.11 2011-04-19 19:24:23 +02:00
Tim-Philipp Müller
7bccbfdd48 mpeg2dec: don't deadlock when setting an index 2011-04-19 17:11:14 +01:00
Tim-Philipp Müller
4d3311566c dvdread, sidplay, x264enc: fix unused-but-set-variable warnings with gcc 4.6 2011-04-14 15:03:56 +01:00
Sebastian Dröge
e8d00e7334 x264enc: Implement getcaps function
This allows to set width/height/etc restrictions downstream.
2011-04-13 20:32:50 +02:00
Thibault Saunier
1e6a607e01 android: make it ready for androgenizer
To build gstreamer for android we are now using androgenizer which
generates the needed Android.mk files.

Androgenizer can be found here: http://git.collabora.co.uk/?p=user/derek/androgenizer.git
2011-04-11 07:31:13 +02:00
Olivier Crête
62e35a6b40 x264enc: Allow changing the bitrate and quantitizers dynamically
https://bugzilla.gnome.org/show_bug.cgi?id=621663
2011-03-29 20:08:40 -04:00
Olivier Crête
a4df8f9031 x264enc: Set max bitrate in quality mode
https://bugzilla.gnome.org/show_bug.cgi?id=621663
2011-03-29 20:08:40 -04:00
Olivier Crête
1370f3f161 x264enc: Make it clear that constant quantizer is for debugging only
https://bugzilla.gnome.org/show_bug.cgi?id=621663
2011-03-29 20:08:40 -04:00
Tim-Philipp Müller
65565c8a1e mad: build the mad plugin even if libid3tag is not available
ID3 tags are usually handled by id3demux, and should be handled
by id3demux. Tag handling in mad based on libid3tag is very basic
and mostly unnecessary really, so just build this plugin without
ID3 tag support if libid3tag is not available.
2011-03-11 18:37:10 +00:00
Mark Nauwelaerts
9ccdcda5e6 mpeg2dec: do not fail fatally when unlinked
... as _NOT_LINKED was neither tested as fatal before nor complained about.
2011-02-21 13:16:05 +01:00
Stefan Kost
b3c04da6c3 index: remove conditional index support
Index support cannot be disabled since commit
4bfb1fe70c
in core, which removed the configure flags to disable index.
2011-02-21 11:05:31 +02:00
Stefan Kost
2b9048ede9 formatting: trim trailing whitespace 2011-02-17 18:06:51 +02:00
Stefan Kost
9424c553b9 index: use delta frame flags instead of 0 or none 2011-02-17 18:05:58 +02:00
Sjoerd Simons
0d20df6d2b x264enc: Don't register flags with a value of 0
Flags with a value of 0 aren't meaningful and will cause
g_value_transform to go into an endless loop when trying to
convert the flags to a string
2011-02-14 17:52:12 +00:00
Mark Nauwelaerts
dbdf976105 amrwbdec: avoid stalling on invalid frame
Skip 1 byte indicating invalid frame type index rather than stalling
on it indefinitely until EOS.

Fixes #639715.
2011-02-07 20:02:08 +01:00
Tim-Philipp Müller
7417ad6d5f lamemp3enc: implement sinkpad get_caps() function to proxy rate and channels restrictions from downstream
The element downstream of mp3enc might only accept certain sample rates or channels,
make sure we relay any restrictions that do exist to upstream when it does a
get_caps() on the sink pad. That way upstream elements like audioresample or
audioconvert can pick a sample rate / channel configuration that will be accepted,
instead of just negotiating to the highest, which might then be rejected.

https://bugzilla.gnome.org/show_bug.cgi?id=641151
2011-02-03 18:27:05 +00:00
Miguel Angel Cabrera Moya
ead8d56f5f x264enc: make tag event writable before modifying tag list in place
To modify an event tag is necessary to be sure that x264enc
has its own copy.

Also fix indentation.

https://bugzilla.gnome.org/show_bug.cgi?id=640272
2011-01-24 13:07:08 +00:00
Edward Hervey
72389b1941 mpeg2dec: Use the proper component value for height 2011-01-14 17:37:09 +01:00
Thiago Santos
7b97c2de6a x264enc: Handle codec/encoder tags
Make x264enc drop video-codec and codec tags and replace
encoder/encoder-version with x264 and its build number

Fixes #621465
2011-01-04 10:37:26 -03:00
Tim-Philipp Müller
9a2de96836 mpeg2dec: use gst_pad_alloc_buffer() when cropping buffers 2010-12-29 22:17:50 +00:00
Tim-Philipp Müller
a3eaf04778 mpeg2dec: minor formatting clean-up 2010-12-29 22:10:58 +00:00
Tim-Philipp Müller
40a470c785 mpeg2dec: refactor cropping code to use libgstvideo functions
https://bugzilla.gnome.org/show_bug.cgi?id=571146
2010-12-29 22:09:47 +00:00
Tim-Philipp Müller
fd68911826 mpeg2dec: use GstVideoFormat instead of custom enum 2010-12-29 20:19:34 +00:00
Tim-Philipp Müller
0f41e3bca0 mpeg2dec: fix LIBADD order in Makefile.am 2010-12-29 20:15:03 +00:00
Tristan Matthews
71567bb0f9 x264: vbv-buf-capacity should have a minimum of 0
x264 will clip this value internally, and users should be allowed to
specify a lower value than 300 ms.

https://bugzilla.gnome.org/show_bug.cgi?id=635291
2010-12-29 18:32:57 +00:00
Tim-Philipp Müller
09bffa4be1 x264enc: also accept YV12 input 2010-12-27 11:38:24 +00:00
Mark Nauwelaerts
9f27fc1eec x264enc: add a note to the docs about encoder latency and queues
https://bugzilla.gnome.org/show_bug.cgi?id=636107
2010-12-26 22:11:52 +00:00
Sebastian Dröge
3dae13383d mad: If gst_pad_alloc_buffer() returns a buffer with the wrong size allocate a new one
Fixes bug #635461.
2010-12-16 10:32:37 +01:00
Edward Hervey
2a84e4332a mad: Remove dead assignments 2010-11-25 19:51:40 +01:00
Tim-Philipp Müller
d0ecf5ea69 dvdreadsrc: remove bogus comment 2010-11-13 12:38:45 +00:00
Thomas Green
c29b56fae9 dvdreadsrc: fix handling of multi-angle streams
We would output all angles interleaved instead of just
the selected angle.

https://bugzilla.gnome.org/show_bug.cgi?id=539254
2010-11-13 12:34:37 +00:00
Guillaume Emont
ff60a26cf8 mpeg2dec: convert the position to stream time before answering to a position query 2010-10-25 13:55:39 +01:00
Robert Swain
6f2db739ae x264enc: Work around a rate control issue in libx264
When variable framerate is disabled in libx264 (which occurs when using
the zerolatency tuning), libx264 ignores timestamps but still uses the
timebase leading to messed up rate control with our nanosecond timebase.

We work around this issue by setting the timebase to the reciprocal of
the framerate and we validate that the framerate is suitable.

This has been fixed upstream in libx264 but there are non-fixed versions
in the wild so this workaround is still needed.

Fixes bug #632861
2010-10-22 15:55:34 +02:00
Sebastian Dröge
0fa75d404b mpeg2dec: Use gst_pad_peer_query() instead of getting the peer pad manually 2010-10-19 16:31:23 +02:00
Guillaume Emont
7fb7129a83 mpeg2dec: fix position query by trusting upstream
Position queries are badly handled for DVDs (probably due to the division in
chapters): the time returned was the time since the start of chapter.

Now ask upstream for position queries, fall back to the old code if upstream
cannot answer the query.
2010-10-19 16:31:23 +02:00
Stefan Kost
26cd4ee3a0 various: canonicalize property names 2010-10-19 12:24:13 +03:00
Stefan Kost
3bb4b5069e various (ext): add a missing G_PARAM_STATIC_STRINGS flags 2010-10-19 10:06:33 +03:00
Mark Nauwelaerts
7bba22772e mad: support reverse playback 2010-10-04 10:33:28 +02:00
Tim-Philipp Müller
7192b9f6b3 dvdreadsrc: improve error messages on read errors
Provide proper i18n-ed error messages when a read error happens,
and point out that the error could be happening because the
DVD is scrambled.

https://bugzilla.gnome.org/show_bug.cgi?id=613633
2010-09-26 19:32:46 +01:00
Tim-Philipp Müller
c33e70af70 siddec: don't use GST_FLOW_IS_FATAL
GST_FLOW_IS_FATAL has been deprecated in core git.
2010-09-06 23:51:23 +01:00
Sebastian Dröge
31010493ea mpeg2dec: Don't use GST_FLOW_IS_FATAL()
And don't post error messages if allocating a buffer resulted
in WRONG_STATE or UNEXPECTED.
2010-09-04 14:57:51 +02:00
Robert Swain
f45ff93586 x264enc: Fix b-pyramid libx264 API boolean arg for non-boolean issue
In X264_BUILD >= 78, b-pyramid became a non-boolean so passing a boolean
argument to the option string value causes an error. For < 78 we pass the
boolean value, for >= 78 we use the x264_b_pyramid_names[] array which will
result in passing 'none' for false and 'strict' for true. Other modes can be
set through the option-string property for now.

https://bugzilla.gnome.org/show_bug.cgi?id=626577
2010-08-11 16:47:12 +01:00
Tim-Philipp Müller
5225f5cc16 x264: fix printf format warning in debug message 2010-08-09 00:31:15 +01:00
Robert Swain
a441e5b6ef x264enc: Fix flushing of delayed frames
x264_encoder_encode() should be called with a NULL picture until at least
x264_encoder_delayed_frames() returns 0. This fixes what appeared to be a
regression in make check due to the recent change in defaults which enabled
b-frames and b-pyramid, both of which I believe increase the number of delayed
frames when encoding.
2010-07-30 09:59:08 +02:00
Robert Swain
60d647dcf5 x264enc: Improve x264enc defaults
- medium x264 speed/quality preset
- threads defaults to 0 which automatically uses 1.5x number of cpu cores

Addresses part of bug #607798
2010-07-26 14:29:02 +02:00
Robert Swain
30fff25b68 x264enc: Fix property description typos 2010-07-25 13:39:44 +02:00
Robert Swain
3554c95548 x264enc: Add some more debug info 2010-07-25 13:39:44 +02:00
Robert Swain
b27ce43ab8 x264enc: Add speed-preset and [psy-]tuning properties
Use of a rate control method (pass, bitrate, quantizer, etc properties), a
preset and possibly a profile and/or tuning are now the recommended way to
configure x264 through x264enc.

If a preset/tuning are specified then these will define the default values and
the property defaults will be ignored. After this the option-string property is
applied, followed by the user-set properties, fast first pass restrictions and
finally the profile restrictions.

Addresses part of bug #607798
2010-07-25 13:39:44 +02:00
Robert Swain
f269e0679f x264enc: Refactor code in preparation for presets/tunings
- Make defaults append the appropriate default value to a string. This is
  needed to differentiate between something user-set and the actual prop
  default.
- Add an internal option string to which _set_property () cases append for the
  majority of properties.
- Use gst_x264_enc_parse_options () to clean up application of settings. This
  will make order of application with respect to the presets and tunings quite
  simple.

Addresses part of bug #607798
2010-07-25 13:37:47 +02:00
Robert Swain
ac6b656ed3 x264enc: Update available me types
Use the x264_motion_est_names[] array to populate the enum of ME types. This is
now self-maintaining.
2010-07-25 13:37:47 +02:00
Robert Swain
d6f766d10f x264enc: Use new libx264 API to affect fast first pass
Uses new x264 API to apply reduced complexity values to the parameters to
increase encoding speed in the first pass of a multi-pass encode. This does
not impact on final quality.

Addresses part of bug #607798
2010-07-25 13:37:47 +02:00
Robert Swain
76cc4dbc07 x264enc: Add profile property
In X264_BUILD >= 86 there is a new API for applying restrictions to an H.264
Profile. This makes it easier to achieve Baseline Profile for example.

Addresses part of bug #607798
2010-07-25 13:37:45 +02:00
Robert Swain
f2be62695c x264enc: Add option-string property
Adds support for an x264 format option-string to specify advanced parameters

Addresses part of bug #607798
2010-07-23 09:35:48 +02:00
Tim-Philipp Müller
d462cdee4d mad: use right automake variable, should be ID3TAG_{LIBS,CFLAGS} not ID3_{LIBS,CFLAGS}
Spotted by syntr0py.
2010-07-22 13:26:21 +01:00
Mark Nauwelaerts
bd6d9402e0 x264enc: only set timebase on versions where it exists 2010-07-20 19:44:51 +02:00
David Hoyt
35f0e23a46 x264enc: set appropriate time base
Fixes #624786.
2010-07-20 16:44:46 +02:00
Mark Nauwelaerts
49f1373f1b x264enc: add new h264 caps attribute alignment
See #606662.
2010-06-22 11:42:18 +02:00
Mark Nauwelaerts
27025d0ebd x264enc: conditionally expose enhanced upstream capabilities
API: GstX264Enc:sliced-threads
API: GstX264Enc:sync-lookahead
API: GstX264Enc:intra-refresh
API: GstX264Enc:mb-tree
API: GstX264Enc:rc-lookahead

See #607798.
2010-06-18 18:47:49 +02:00
Sebastian Dröge
e0cd55c805 a52dec: Call orc_init() before trying to get target flags 2010-06-14 15:33:14 +02:00
Sebastian Dröge
21d90d5539 a52dec: Remove debug printf... 2010-06-14 14:34:56 +02:00
Sebastian Dröge
359260bd5b a52dec: Use orc for CPU feature detection and don't check for liboil 2010-06-14 14:34:25 +02:00
Olivier Crête
2339add6d5 x264enc: Only set i_weighted_pred on versions where it exists 2010-06-01 13:44:06 -04:00
Tristan Matthews
c60638ab56 lamemp3enc: implement latency query
The encoder's latency is deduced from the framesize. Fixes #618896.
2010-06-01 11:28:55 +02:00
Olivier Crête
d6df52f99a x264enc: disable I weighted pred
If it is enabled, then it will be main profile instead of baseline.
This ensures maximum compatibility of the output stream until the
encoder configuration interface gets an overhaul with explicit
output profile selection.

Fixes #619776.
2010-05-28 12:15:42 +01:00
Olivier Crête
7f685c4a21 x264enc: Re-send the received upstream event as-is downstream
https://bugzilla.gnome.org/show_bug.cgi?id=606689
2010-05-10 15:07:29 +02:00
Edward Hervey
580c01095a amrnbenc: Set rank to GST_RANK_SECONDARY 2010-05-07 15:33:28 +02:00
Руслан Ижбулатов
ba089d504b amr: Use correct includes (as pkg-config suggests)
Fixes #617078
2010-04-28 14:19:57 +01:00
Stefan Kost
9bc9c477d7 amrwbdec: move define to source to avoid hiding it from the docs 2010-04-27 11:39:11 +03:00
Stefan Kost
67b4b24739 docs: remove short_desc, it is taken from element details 2010-04-27 11:38:28 +03:00
Mark Nauwelaerts
d17388afa9 x264enc: adaptive x264 header NAL layout handling
Fixes #615410.
2010-04-19 10:39:34 +02:00
Edward Hervey
2c94b415d4 mpeg2dec: copy over all buffer flags when copying buffers.
Avoids losing the tff/rff video buffer flags
2010-04-14 09:30:55 +02:00
Mark Nauwelaerts
61643c7d89 x264enc: fix up avcC header construction
Fix off-by-one introduced by commit 35dd89951d
for BUILD_X264 < 76.

Also fixes #610089.
2010-04-13 16:55:58 +02:00
Mark Nauwelaerts
5fd1796fda x264enc: parameterize libx264 provided NAL layout in codec-data creation 2010-04-13 14:21:43 +02:00