Release 0.10.18
Highlights:
- x264enc: allow changing bitrate and quantizers dynamically at runtime
- x264enc: proxy downstream caps restrictions upstream via get_caps()
- lamemp3enc: proxy downstream rate/channels restrictions upstream via get_caps()
- mad: allow build without libid3tag (which isn't really needed anyway)
- many other fixes and improvements
Highlights:
- x264enc: allow changing bitrate and quantizers dynamically at runtime
- x264enc: proxy downstream caps restrictions upstream via get_caps()
- lamemp3enc: proxy downstream rate/channels restrictions upstream via get_caps()
- mad: allow build without libid3tag (which isn't really needed anyway)
- many other fixes and improvements
x264enc: Copy the template caps, it's not allowed to increase the refcount of const caps
x264enc: do not leak peer pad reference
x264enc: No need to copy, reffing is enough
x264enc: get_caps function should return a copy of the caps
0.10.17.4 pre-release
0.10.17.3 pre-release
tests: add suppression for lame unit test
tests: add generic index-setting test
mpeg2dec: don't deadlock when setting an index
0.10.17.2 pre-release
11 years agorademux: fix two 'variable may be used uninitialized' warnings caused by -DG_DISABLE_...
rademux: fix two 'variable may be used uninitialized' warnings caused by -DG_DISABLE_ASSERT
mpegstream: fix unused-but-set-variable warnings with gcc 4.6
dvdread, sidplay, x264enc: fix unused-but-set-variable warnings with gcc 4.6
asfdemux: fix unused-but-set-variable warnings with gcc 4.6
x264enc: Implement getcaps function
This allows to set width/height/etc restrictions downstream.
This allows to set width/height/etc restrictions downstream.
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
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
android: remove the android/ folder
x264enc: Allow changing the bitrate and quantitizers dynamically
https://bugzilla.gnome.org/show_bug.cgi?id=621663
https://bugzilla.gnome.org/show_bug.cgi?id=621663
x264enc: Set max bitrate in quality mode
https://bugzilla.gnome.org/show_bug.cgi?id=621663
https://bugzilla.gnome.org/show_bug.cgi?id=621663
x264enc: Make it clear that constant quantizer is for debugging only
https://bugzilla.gnome.org/show_bug.cgi?id=621663
https://bugzilla.gnome.org/show_bug.cgi?id=621663
configure.ac: redundant use of AC_MSG_RESULT()
cleaned the redundant use of AC_MSG_RESULT() in configure.ac
cleaned the redundant use of AC_MSG_RESULT() in configure.ac
autogen: wingo signed comment
dvdsubdec: Rearrange buffer allocation and pushing code a bit
This makes the code easier to read, doesn't store every buffer
in the instance until the next buffer is to be drawn and
fixes an unitialized variable compiler warning.
This makes the code easier to read, doesn't store every buffer
in the instance until the next buffer is to be drawn and
fixes an unitialized variable compiler warning.
dvdsubdec: Output only a single buffer per subpicture and set the correct duration
Fixes bug #619136.
Fixes bug #619136.
dvdsubdec: Implement clipping if the video size is smaller than the subpicture size
Fixes bug #644704.
Fixes bug #644704.
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.
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.
dvddemux: small code cleanup
Don't duplicate the 'if' check. Makes the 2nd condition easier to read also
and avoid empty 'if' when logging is disabled.
Don't duplicate the 'if' check. Makes the 2nd condition easier to read also
and avoid empty 'if' when logging is disabled.
configure.ac: export plugin description more platform independent
Fixes #642504.
Fixes #642504.
mpeg2dec: do not fail fatally when unlinked
... as _NOT_LINKED was neither tested as fatal before nor complained about.
... as _NOT_LINKED was neither tested as fatal before nor complained about.
index: remove conditional index support
Index support cannot be disabled since commit
4bfb1fe70c6f0d5e29c17a8eeffb02f7fd083f11
in core, which removed the configure flags to disable index.
Index support cannot be disabled since commit
4bfb1fe70c6f0d5e29c17a8eeffb02f7fd083f11
in core, which removed the configure flags to disable index.
formatting: trim trailing whitespace
index: use delta frame flags instead of 0 or none
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
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
amrwbdec: avoid stalling on invalid frame
Skip 1 byte indicating invalid frame type index rather than stalling
on it indefinitely until EOS.
Fixes #639715.
Skip 1 byte indicating invalid frame type index rather than stalling
on it indefinitely until EOS.
Fixes #639715.
tests: add unit test for lamemp3enc negotiation issue
https://bugzilla.gnome.org/show_bug.cgi?id=641151
https://bugzilla.gnome.org/show_bug.cgi?id=641151
12 years agolamemp3enc: implement sinkpad get_caps() function to proxy rate and channels restrict...
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
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
asfpacket: Avoid using broken duration extension
Quite a few (broken?) files have a packet duration of 1ms, which is
most definitely wrong for either audio or video packets.
We therefore avoid using that value and instead use other metrics to
determine the buffer duration (like using the extended stream properties
average frame duration if present and valid).
Quite a few (broken?) files have a packet duration of 1ms, which is
most definitely wrong for either audio or video packets.
We therefore avoid using that value and instead use other metrics to
determine the buffer duration (like using the extended stream properties
average frame duration if present and valid).
win32: fix DEFAULT_AUDIOSINK, should be direct*sound*sink
https://bugzilla.gnome.org/show_bug.cgi?id=640705
https://bugzilla.gnome.org/show_bug.cgi?id=640705
xingmux: Use FALSE instead of 0 as return value for a function returning gboolean
Fixes bug #639291.
Fixes bug #639291.
mpegstream: increase allowable gap between streams
The new delay is three times as much as the old one, and just happens
to let me properly decode my "Princess Mononoke" DVD, on which dvdreadsrc
was chocking before at 5:11.
While there, merge the constants used in two places into a define.
https://bugzilla.gnome.org/show_bug.cgi?id=539708
The new delay is three times as much as the old one, and just happens
to let me properly decode my "Princess Mononoke" DVD, on which dvdreadsrc
was chocking before at 5:11.
While there, merge the constants used in two places into a define.
https://bugzilla.gnome.org/show_bug.cgi?id=539708
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
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
Back to development
Release 0.10.17
0.10.16.4 pre-release
mpeg2dec: Use the proper component value for height
0.10.16.3 pre-release
asfdemux: Handle new type of DRM'd asf files.
These are produced by the new MS PlayReady system.
https://bugzilla.gnome.org/show_bug.cgi?id=639226
These are produced by the new MS PlayReady system.
https://bugzilla.gnome.org/show_bug.cgi?id=639226
tests: never disable g_assert() and cast checks for the unit tests
The unit tests are riddled with g_assert() and friends, make sure we
don't disable assert and cast checks for the unit tests even if
this has been specified for the rest of the code base, e.g. via
--disable-glib-asserts
The unit tests are riddled with g_assert() and friends, make sure we
don't disable assert and cast checks for the unit tests even if
this has been specified for the rest of the code base, e.g. via
--disable-glib-asserts
0.10.16.2 pre-release
docs: update docs
po: update translations
configure: use $LIBM instead of hardcoding -lm
rmdemux: Initialize return variable.
In the unlikely event that height is 0 (which is invalid) we would end up
never setting the flow return.
In the unlikely event that height is 0 (which is invalid) we would end up
never setting the flow return.
realmedia: Fix unitialized variables on macosx
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
Make x264enc drop video-codec and codec tags and replace
encoder/encoder-version with x264 and its build number
Fixes #621465
mpeg2dec: use gst_pad_alloc_buffer() when cropping buffers
mpeg2dec: minor formatting clean-up
mpeg2dec: refactor cropping code to use libgstvideo functions
https://bugzilla.gnome.org/show_bug.cgi?id=571146
https://bugzilla.gnome.org/show_bug.cgi?id=571146
mpeg2dec: use GstVideoFormat instead of custom enum
mpeg2dec: fix LIBADD order in Makefile.am
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
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
x264enc: also accept YV12 input
x264enc: add a note to the docs about encoder latency and queues
https://bugzilla.gnome.org/show_bug.cgi?id=636107
https://bugzilla.gnome.org/show_bug.cgi?id=636107
realmedia: do not use the pad buffer allocation functions in demuxers
Doing so can block, see https://bugzilla.gnome.org/show_bug.cgi?id=637822
https://bugzilla.gnome.org/show_bug.cgi?id=637932
Doing so can block, see https://bugzilla.gnome.org/show_bug.cgi?id=637822
https://bugzilla.gnome.org/show_bug.cgi?id=637932
mad: If gst_pad_alloc_buffer() returns a buffer with the wrong size allocate a new one
Fixes bug #635461.
Fixes bug #635461.
rmdemux: set GST_BUFFER_FLAG_DELTA_UNIT properly
Signed-off-by: Rob Clark <rob@ti.com>
Signed-off-by: Rob Clark <rob@ti.com>
x264: uses pkg-config to locate libx264
check: don't use deprecated method
Add build system for Android
realmedia: Remove dead assignments
mad: Remove dead assignments
dvdreadsrc: remove bogus comment
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
We would output all angles interleaved instead of just
the selected angle.
https://bugzilla.gnome.org/show_bug.cgi?id=539254
realmedia: fix LIBS order in Makefile
po: update for new translatable strings
mpeg2dec: convert the position to stream time before answering to a position query
realmedia: Get codec name from pbutils instead of harcoding them
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
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
mpeg2dec: Use gst_pad_peer_query() instead of getting the peer pad manually
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.
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.
various: canonicalize property names
various (ext): add a missing G_PARAM_STATIC_STRINGS flags
various (gst): add a missing G_PARAM_STATIC_STRINGS flags