Commit graph

940 commits

Author SHA1 Message Date
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
Tim-Philipp Müller
d198cb485d build: build plugins in parallel where possible, if make -jN is used 2010-03-30 01:18:50 +01:00
Sebastian Dröge
c88c88de0d build: Add all kinds of compiler warning flags and fix the resulting warnings 2010-03-24 11:27:40 +01:00
Tim-Philipp Müller
c8e931574e build: fix up Makefile.am
Mostly just add $(GST_BASE_CFLAGS) where they're missing and fix
the order a bit here and there (see docs/random/moving-plugins).
2010-03-19 00:12:38 +00:00
Benjamin Otte
9850bd814f gst_element_class_set_details => gst_element_class_set_details_simple 2010-03-18 15:53:14 +01:00
Sebastian Dröge
43b366ce52 x264enc: Put pixel-aspect-ratio from input into the src pad caps
Fixes bug #612995.
2010-03-16 15:05:06 +01:00
Thiago Santos
96ee17e7b6 x264enc: Replace 'avc-sample' with 'avc' in caps
In the element and in its tests

Fixes #606662
2010-03-01 17:48:18 -03:00
Vittorio Palmisano
35dd89951d x264enc: fix up avcC header construction and playback by flash players
Fix off-by-one bug when constructing the avcC header chunk: we
wrote wrong profile info into the header. The first byte in the
SPS NAL we get from x264 is the nal type, not the profile_idc.

Also add some debug logging.

Fixes #610089.
2010-02-16 13:33:10 +00:00
Mark Nauwelaerts
8a1414694d x264enc: make use of Access Unit delimiters configurable
API: GstX264Enc:aud
2010-01-29 19:47:03 +01:00
Thiago Santos
c77dfa7b9f x264enc: Add stream-format to output caps
Adds stream-format to output caps of x264enc that
informs if the stream is in bytestream of avc format.

Fixes #606662
2010-01-13 10:17:44 -03:00
Tim-Philipp Müller
cd95215ba9 amrwbdec: give decoder a rank so decodebin/playbin will use it 2009-12-18 16:05:09 +00:00
Thiago Santos
82ab87032d lame: Avoid crash when seeking before negotiating
lame's 'lgv' variable is only initialized when the caps
is negotiated, whenever a seek happens before that, it would
attempt to call a function on an empty pointer, causing the crash.

Fixes #603515
2009-12-02 11:34:34 -03:00
Olivier Crête
b7f37f9afb x264enc: Make upstream GstForceKeyUnit thread-safe
Also send the GstForceKeyUnit event downstream when an upstream on is received,
allowing muxers or payloaders to take appropriate actions.

https://bugzilla.gnome.org/show_bug.cgi?id=602556
2009-11-20 22:15:22 -05:00
Jan Schmidt
0cdfa3dcd2 a52dec: Fix debug statement: Pass pos variable instead of time() function 2009-11-04 15:52:09 +00:00
Robert Swain
0a36965808 x264enc: Adapt to slightly modified x264 API
Fixes #599095.
2009-10-26 21:52:36 +01:00
Jan Schmidt
3e81d5f2c8 a52dec: Fix reference leak on all input buffers in 'dvd mode'
https://bugzilla.gnome.org/show_bug.cgi?id=598272
2009-10-13 14:28:48 +01:00
Jan Schmidt
020cf2c0f9 a52dec: Add some debugging for new segment events 2009-10-12 11:26:30 +01:00
Josep Torra
d94bcc1b71 mpeg2dec: fix warning in macosx snow leopard 2009-10-11 16:18:37 +02:00
Stefan Kost
30a4d82edd mad: add missing include to fix the build 2009-10-07 14:05:08 +03:00
Mark Nauwelaerts
8ef48af93b x264enc: conditionally adjust to new upstream API
Fixes #596517.
2009-10-01 19:01:27 +02:00
Sebastian Dröge
54e8a94782 mpeg2dec: Fix GstIndex handling, incl. refcounting and NULL indizes 2009-09-01 12:22:39 +02:00
David Schleef
9fe257d16c 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.
2009-08-24 14:00:23 -07:00
Sebastian Dröge
f5f10797ff a52dec: Only add the MM_ACCEL_DJBFFT flag if it's defined
It's not defined for older liba52 versions.
2009-08-23 13:35:46 +02:00
Mart Raudsepp
ebfe6c0746 a52dec: Allow liba52 to use djbfft based IMDCT transform
liba52 in a52dec-0.7.4 does not have any MMX, MMXEXT or 3DNOW based
IMDCT transform acceleration. It does however have a software based
acceleration using the djbfft library (D.J. Bernstein's library for
fourier transforms - Extremely fast library for floating-point
convolution). So allow liba52 to use it through the MM_ACCEL_DJBFFT
flag.
The liba52 copy in MPlayer sources does have SSE, 3dnowext, 3dnow
and AltiVec implementations, but those are checked for first, and
djbfft is chosen only if none of those is available - good in the
case of some distributions including a port of the MPlayer changes
in their system a52dec library.

The down and upmix code in liba52 doesn't seem to be disturbed by
this additional MM_ACCEL flag and will still use MMX, SSE or 3DNOW
versions if passed from oil_cpu_get_flags (SSE currently is not).

Fixes bug #592787.
2009-08-23 13:34:32 +02:00
Iago Toral
79d4b18044 amr: Add AMR-WB decoder and AMR-NB encoder and decoder
These are based on the OpenCore codecs.

Fixes bug #584890.
2009-07-27 20:14:28 +02:00
Tim-Philipp Müller
f5d046a0b0 dvdnav: remove dvdnav plugin
Remove dvdnav plugin, it has no future. resindvd is the plugin to
use for dvd playback. Note that dvdnav was never really enabled
in -ugly, you had to edit configure.ac to get it built.
2009-07-22 11:10:38 +01:00