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
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