Sebastian Dröge
bf08ca7020
Merge branch 'master' into 0.11
2011-05-26 13:54:09 +02:00
Stefan Kost
41b60ca83a
theoraenc: remove bogus <0 check for unsigned var
...
bytes_written is a gsize which is unsigned and thus never < 0.
2011-05-25 15:26:13 +03:00
Stefan Kost
af29082e94
theoraenc: fix variable type for bytes_consumed
...
th_encode_ctl() returns an int. Using a gsize result in bogus <0 checks.
2011-05-25 15:26:13 +03:00
Wim Taymans
3b35a83688
theoradec: handle reconfigure events
...
Handle the caps with the caps event.
Handle the reconfigure event and renegotiate the bufferpool when needed.
2011-05-24 10:46:48 +02:00
Sebastian Dröge
884213b8b8
base: Update for SEGMENT event parse API changes
2011-05-18 17:23:18 +02:00
Sebastian Dröge
318ed07598
Revert "-base_port to new query API"
...
This reverts commit c9f4e0676b
.
2011-05-17 11:25:31 +02:00
Sebastian Dröge
c276eec54e
theora: Update for negotiation related API changes
2011-05-16 15:35:41 +02:00
Wim Taymans
94dfe80f71
-base: port to new SEGMENT API
2011-05-16 13:48:11 +02:00
Wim Taymans
c9f4e0676b
-base_port to new query API
2011-05-10 18:39:07 +02:00
Wim Taymans
bdb4676455
qos: _qos_full -> _qos
2011-05-09 18:53:03 +02:00
Wim Taymans
816f4e791d
segment: fix for new core API
...
Fix for gst_*_segment_full rename.
2011-05-09 18:16:46 +02:00
Wim Taymans
5acab64178
theora/vorbis: use default pad handler
...
Use the default pad event handler because we are not supposed to pass on CAPS
events.
2011-05-09 15:37:09 +02:00
Wim Taymans
ec57868488
-base: don't use buffer caps
...
Port to newest 0.11 core API, remove GST_PAD_CAPS and GST_BUFFER_CAPS.
2011-05-09 13:05:12 +02:00
Wim Taymans
abcbef287d
plugins: fix for allocation query API change
2011-05-02 11:11:33 +02:00
Wim Taymans
d6f8fb62c5
theoradec: use bufferpool
2011-04-29 16:52:23 +02:00
Wim Taymans
86a4771f8e
remove buffer_alloc
2011-04-29 13:28:17 +02:00
Sebastian Dröge
353186aec8
ext: Use G_DEFINE_TYPE instead of GST_BOILERPLATE
2011-04-19 14:22:42 +02:00
Wim Taymans
4007076b55
Merge branch 'master' into 0.11
...
Conflicts:
ext/theora/gsttheoraenc.c
2011-04-06 16:33:56 +02:00
Mark Nauwelaerts
9cf76f114f
theoraenc: refactor multipass file writing
2011-04-06 12:26:11 +02:00
Wim Taymans
248ab2d064
Fix for latest API changes
2011-03-30 16:50:45 +02:00
Wim Taymans
eba165191f
theora: port to new memory API
2011-03-27 20:15:46 +02:00
Wim Taymans
f379a5dacb
plugins: more porting to new memory API
2011-03-27 18:30:24 +02:00
David Schleef
9745a41ea3
theoraenc: move debug category init earlier
2011-02-17 18:29:56 -08:00
David Schleef
f499810bdc
theoraenc: Set speed level while running
2011-02-17 18:29:56 -08:00
Ralph Giles
d467eb708a
Set the theoraenc speed-level property from libtheora's defaults.
...
The speed-level property, which allows callers to trade of encoding
quality for speed in the libtheora api, has a version-dependent
maximum and default values. Instead of hardcoding the acceptable
range for the theoraenc element's presentation of this setting,
we query the library directly at class initialization time and
set the maximum and default values from that. If the query fails,
we fall back to the previous default setting.
To keep the values reported by gst-inspect (which I'm told use
the spec values from the class) with those available on an\
instantiated element, we remove to setting of enc->speed_level
from the initializer and instead pass G_PARAM_CONSTRUCT to
the property spec flags, asking g_object to set this property
when theoraenc objects are constructed.
NB in theory the maximum speed-level could depend on the actual
video caps. If later versions of libtheoraenc do this, a second
call will need to be made from theora_enc_reset to update the
property, since this function is mostly useful for realtime
adjustment of performance while the pipeline is running.
2011-02-17 18:29:56 -08:00
Sjoerd Simons
46f3e7c6fd
theoraenc: Don't reset the video quality setting the bitrate
...
libtheora has two encoding modes, CBR, where it tries to hit a target
bitrate and VBR where it tries to achieve a target quality.
Internally if the target bitrate is set to anything other then 0 the
encoding-mode is CBR.
This means that the gstreamer element can leave the video_quality
setting alone as long as the user is tweaking the bitrate. Which has the
nice side-effect that if the user explicitely sets the bitrate to 0
(which is actually the default), the quality value doesn't get reset and
one ends up encoding VBR at quality-level 0...
2011-02-14 16:03:56 +01:00
Tim-Philipp Müller
9805bdfcc8
theoraenc: clean up property descriptions
...
Remove "This property requires libtheora version >= 1.1" qualifiers
from property descriptions. They aren't needed any longer now that
we require libtheora >= 1.1.
2011-02-01 16:08:13 +00:00
Stefan Kost
83c14483ed
various: add a missing G_PARAM_STATIC_STRINGS flag to object properties
2010-10-13 16:13:31 +03:00
Tim-Philipp Müller
a044b62cf5
theoradec: expose telemetry properties only if libtheora was compiled with --enable-telemetry
...
Since this is just a debugging feature and libtheora will usually not be
compiled with that option enabled, we should maybe just hide these properties,
since they won't work anyway, and avoid confusing warnings.
Also rename properties to make them less cryptic.
https://bugzilla.gnome.org/show_bug.cgi?id=628488
2010-10-10 18:20:46 +01:00
Alexey Fisher
ab52e15e3d
theoradec: add properties to enable debugging telemetry overlay
...
The theora decoder can overlay debugging information on the output
video. This functionality is only available if libtheora has been
compiled with --enable-telemetry. For more details see:
http://people.xiph.org/~xiphmont/demo/theora/demo2.html
Based on original patch by Michael Smith <msmith at xiph org>
https://bugzilla.gnome.org/show_bug.cgi?id=628488
2010-10-10 18:20:46 +01:00
Wim Taymans
88cf7a2156
parse: Don't error on discont
...
We don't need to error out when we detect a discontinuity.
2010-10-04 17:27:00 +02:00
Wim Taymans
3d26fc3d8f
theoraparse: set caps on streamheader too
2010-10-04 17:09:39 +02:00
David Schleef
71f89ac092
theoraenc: ptalarbvorm speed level goes to 3
2010-09-24 21:30:44 -07:00
Olivier Crête
91f89f490c
theoraenc: Make the bitrate/quality dynamically modifiable
...
https://bugzilla.gnome.org/show_bug.cgi?id=630303
2010-09-22 11:41:13 -04:00
Sebastian Dröge
c95d0034af
theoraenc: Implement two pass encoding
...
Fixes bug #621349 .
2010-07-16 17:40:12 +02:00
Sebastian Dröge
5318e71b4d
configure: Require libtheora >= 1.1
...
It's more than a year old at the time of the next -base release,
has many encoder and decoder improvements and gets us rid of a lot
of #ifdefs
2010-07-16 17:39:22 +02:00
Sebastian Dröge
ecea88e0d2
theora: Use PROP_ instead of ARG_ for property enum values
2010-07-16 17:39:22 +02:00
David Schleef
681721466d
theoraenc: 0-length packets are delta units
2010-03-29 20:54:46 -07:00
Wim Taymans
9c8c93806d
theoradec: add QoS messages to the decoder
...
Post QoS messages when we drop a frame because of QoS.
2010-03-19 15:37:04 +01:00
Benjamin Otte
3bd4aa26ff
Add -Wwrite-strings to configure
...
Fixes for the code included
2010-03-16 17:41:51 +01:00
Benjamin Otte
5e21fa5e0e
gst_element_class_set_details => gst_element_class_set_details_simple
...
Also change my email from the old university one to the current one.
2010-03-16 17:41:50 +01:00
David Schleef
ed438e5539
theoradec: add chroma-site to caps
2010-03-15 01:34:09 -07:00
David Schleef
085d7e20bd
theoradec: add color-matrix to caps
2010-03-14 19:10:16 -07:00
Benjamin Otte
3a7d632a59
Add -Wredundant-decls to warning flags
...
... and fix all the warnings that flag throws.
2010-03-11 15:38:18 +01:00
Benjamin Otte
43b1683421
Add -Wmissing-declarations -Wmissing-prototypes to warning flags
...
Includes all the fixes necessary to make stuff compile again.
2010-03-11 13:50:31 +01:00
Benjamin Otte
1ad8d6ee03
theora: Fix SIGFPE when using 0/1 framerate
...
libtheora crashes with a 0 framerate, so let's forbid it.
https://bugzilla.redhat.com/show_bug.cgi?id=571289
2010-03-08 22:28:27 +01:00
David Schleef
5685e0a4b7
theoradec: Fix chroma copying for 4:2:2
...
Fix mixup of height/width, causing only half the chroma lines to
be copied when outputting buffers. Fixes : #610329 .
2010-02-17 21:30:29 -08:00
Benjamin M. Schwartz
a09d9fdece
theoradec: PARs of 0:x, x:0 and 0:0 are all allowed and map to 1:1
...
Fixes #609252 .
2010-02-08 11:21:35 +01:00
Sebastian Dröge
82f3adaa9b
theora: Rename source files to have the same name as the headers
2010-01-14 10:10:23 +01:00
David Schleef
b3c15a340a
theoraenc: Add encoder controls for libtheora 1.1
...
Added drop-frames, cap-overflow, cap-underflow, and rate-buffer.
2009-12-20 17:34:46 -08:00