Commit graph

888 commits

Author SHA1 Message Date
Jan Schmidt
5e176f4b0c Moved 'x264enc' from -bad to -ugly 2009-06-05 19:25:54 +01:00
Wim Taymans
0823e9fa14 [MOVED FROM BAD 28/28] x264enc: add multipass-cache-file property
Fixes #583627
2009-06-05 18:48:27 +01:00
Christian Schaller
fe54a7562a [MOVED FROM BAD 27/28] Remove wrong stuff from preset file 2009-06-05 18:48:27 +01:00
Christian Schaller
2920f8527a [MOVED FROM BAD 26/28] Add a more representative example preset file for x264 2009-06-05 18:48:27 +01:00
Christian Schaller
bc8f9f9a8b [MOVED FROM BAD 25/28] Add ranks to various muxers and encoders in -bad 2009-06-05 18:48:26 +01:00
Stefan Kost
811ddb9cdc [MOVED FROM BAD 24/28] x264enc: add preset support
Add preset iface and a (dummy) preset file as a starting point.
2009-06-05 18:48:26 +01:00
Mark Nauwelaerts
cd86b39a94 [MOVED FROM BAD 23/28] x264enc: add some documentation on profile 2009-06-05 18:48:26 +01:00
Janin Kolenc
5a45501fc9 [MOVED FROM BAD 22/28] x264enc: add force keyframe event handling
Use the GstForceKeyUnit event to force a keyframe.
Fixes #578112.
2009-06-05 18:48:26 +01:00
Mark Nauwelaerts
ec8359fe54 [MOVED FROM BAD 21/28] ext/x264/gstx264enc.c: Use hyphen in property name, perform safety buffer size check prior to mem access, and some mo...
Original commit message from CVS:
* ext/x264/gstx264enc.c: (gst_x264_enc_class_init),
(gst_x264_enc_header_buf), (gst_x264_enc_encode_frame):
Use hyphen in property name, perform safety buffer size check
prior to mem access, and some more parentheses in macro.
2009-06-05 18:48:25 +01:00
Alessandro Decina
3b41060f6d [MOVED FROM BAD 20/28] ext/apexsink/Makefile.am: Link against -lgcrpyto for RSA_new and RSA_free.
Original commit message from CVS:
* ext/apexsink/Makefile.am:
Link against -lgcrpyto for RSA_new and RSA_free.
* ext/faac/gstfaac.c:
* ext/x264/gstx264enc.c:
Fix compiler warnings.
2009-06-05 18:48:25 +01:00
Mark Nauwelaerts
4ce646744c [MOVED FROM BAD 19/28] ext/x264/gstx264enc.c: Construct source caps in more conventional (and correct) manner.
Original commit message from CVS:
* ext/x264/gstx264enc.c: (gst_x264_enc_set_src_caps):
Construct source caps in more conventional (and correct) manner.
2009-06-05 18:48:25 +01:00
Stefan Kost
fb6ce222c2 [MOVED FROM BAD 18/28] Don't install static libs for plugins. Fixes #550851 for -bad.
Original commit message from CVS:
* ext/alsaspdif/Makefile.am:
* ext/amrwb/Makefile.am:
* ext/apexsink/Makefile.am:
* ext/arts/Makefile.am:
* ext/artsd/Makefile.am:
* ext/audiofile/Makefile.am:
* ext/audioresample/Makefile.am:
* ext/bz2/Makefile.am:
* ext/cdaudio/Makefile.am:
* ext/celt/Makefile.am:
* ext/dc1394/Makefile.am:
* ext/dirac/Makefile.am:
* ext/directfb/Makefile.am:
* ext/divx/Makefile.am:
* ext/dts/Makefile.am:
* ext/faac/Makefile.am:
* ext/faad/Makefile.am:
* ext/gsm/Makefile.am:
* ext/hermes/Makefile.am:
* ext/ivorbis/Makefile.am:
* ext/jack/Makefile.am:
* ext/jp2k/Makefile.am:
* ext/ladspa/Makefile.am:
* ext/lcs/Makefile.am:
* ext/libfame/Makefile.am:
* ext/libmms/Makefile.am:
* ext/metadata/Makefile.am:
* ext/mpeg2enc/Makefile.am:
* ext/mplex/Makefile.am:
* ext/musepack/Makefile.am:
* ext/musicbrainz/Makefile.am:
* ext/mythtv/Makefile.am:
* ext/nas/Makefile.am:
* ext/neon/Makefile.am:
* ext/ofa/Makefile.am:
* ext/polyp/Makefile.am:
* ext/resindvd/Makefile.am:
* ext/sdl/Makefile.am:
* ext/shout/Makefile.am:
* ext/snapshot/Makefile.am:
* ext/sndfile/Makefile.am:
* ext/soundtouch/Makefile.am:
* ext/spc/Makefile.am:
* ext/swfdec/Makefile.am:
* ext/tarkin/Makefile.am:
* ext/theora/Makefile.am:
* ext/timidity/Makefile.am:
* ext/twolame/Makefile.am:
* ext/x264/Makefile.am:
* ext/xine/Makefile.am:
* ext/xvid/Makefile.am:
* gst-libs/gst/app/Makefile.am:
* gst-libs/gst/dshow/Makefile.am:
* gst/aiffparse/Makefile.am:
* gst/app/Makefile.am:
* gst/audiobuffer/Makefile.am:
* gst/bayer/Makefile.am:
* gst/cdxaparse/Makefile.am:
* gst/chart/Makefile.am:
* gst/colorspace/Makefile.am:
* gst/dccp/Makefile.am:
* gst/deinterlace/Makefile.am:
* gst/deinterlace2/Makefile.am:
* gst/dvdspu/Makefile.am:
* gst/festival/Makefile.am:
* gst/filter/Makefile.am:
* gst/flacparse/Makefile.am:
* gst/flv/Makefile.am:
* gst/games/Makefile.am:
* gst/h264parse/Makefile.am:
* gst/librfb/Makefile.am:
* gst/mixmatrix/Makefile.am:
* gst/modplug/Makefile.am:
* gst/mpeg1sys/Makefile.am:
* gst/mpeg4videoparse/Makefile.am:
* gst/mpegdemux/Makefile.am:
* gst/mpegtsmux/Makefile.am:
* gst/mpegvideoparse/Makefile.am:
* gst/mve/Makefile.am:
* gst/nsf/Makefile.am:
* gst/nuvdemux/Makefile.am:
* gst/overlay/Makefile.am:
* gst/passthrough/Makefile.am:
* gst/pcapparse/Makefile.am:
* gst/playondemand/Makefile.am:
* gst/rawparse/Makefile.am:
* gst/real/Makefile.am:
* gst/rtjpeg/Makefile.am:
* gst/rtpmanager/Makefile.am:
* gst/scaletempo/Makefile.am:
* gst/sdp/Makefile.am:
* gst/selector/Makefile.am:
* gst/smooth/Makefile.am:
* gst/smoothwave/Makefile.am:
* gst/speed/Makefile.am:
* gst/speexresample/Makefile.am:
* gst/stereo/Makefile.am:
* gst/subenc/Makefile.am:
* gst/tta/Makefile.am:
* gst/vbidec/Makefile.am:
* gst/videodrop/Makefile.am:
* gst/videosignal/Makefile.am:
* gst/virtualdub/Makefile.am:
* gst/vmnc/Makefile.am:
* gst/y4m/Makefile.am:
* sys/acmenc/Makefile.am:
* sys/cdrom/Makefile.am:
* sys/dshowdecwrapper/Makefile.am:
* sys/dshowsrcwrapper/Makefile.am:
* sys/dvb/Makefile.am:
* sys/dxr3/Makefile.am:
* sys/fbdev/Makefile.am:
* sys/oss4/Makefile.am:
* sys/qcam/Makefile.am:
* sys/qtwrapper/Makefile.am:
* sys/vcd/Makefile.am:
* sys/wininet/Makefile.am:
* win32/common/config.h:
Don't install static libs for plugins. Fixes #550851 for -bad.
2009-06-05 18:48:25 +01:00
Mark Nauwelaerts
6c0833d099 [MOVED FROM BAD 17/28] ext/x264/gstx264enc.c: Adapt to slightly modified x264 API. Fixes #555238.
Original commit message from CVS:
* ext/x264/gstx264enc.c: (gst_x264_enc_init_encoder):
Adapt to slightly modified x264 API.  Fixes #555238.
2009-06-05 18:48:24 +01:00
Mark Nauwelaerts
8609794cb8 [MOVED FROM BAD 16/28] ext/x264/gstx264enc.*: Do not deal with duplicated input (timestamps). If needed, a generic element can do so.
Original commit message from CVS:
* ext/x264/gstx264enc.c: (gst_x264_enc_reset),
(gst_x264_enc_chain), (gst_x264_enc_encode_frame):
* ext/x264/gstx264enc.h:
Do not deal with duplicated input (timestamps).  If needed,
a generic element can do so.
Do not manipulate input timestamps on the way out,
since that shifts the timeline and A/V sync.
2009-06-05 18:48:24 +01:00
Mark Nauwelaerts
4e93235dcc [MOVED FROM BAD 15/28] docs/plugins/gst-plugins-bad-plugins.args: Integrate new properties into documentation.
Original commit message from CVS:
* docs/plugins/gst-plugins-bad-plugins.args:
Integrate new properties into documentation.
* ext/x264/gstx264enc.c: (gst_x264_enc_class_init),
(gst_x264_enc_init), (gst_x264_enc_init_encoder),
(gst_x264_enc_set_property), (gst_x264_enc_get_property):
Fix up API prior to eventual plugin move.
API: GstX264Enc:pass (provides more options, and changed to enum)
2009-06-05 18:48:24 +01:00
Mark Nauwelaerts
533dfb30c8 [MOVED FROM BAD 14/28] Add documentation and unit test for x264enc.
Original commit message from CVS:
* docs/plugins/Makefile.am:
* docs/plugins/gst-plugins-bad-plugins-docs.sgml:
* docs/plugins/gst-plugins-bad-plugins-sections.txt:
* ext/x264/gstx264enc.c:
* tests/check/Makefile.am:
* tests/check/elements/x264enc.c: (setup_x264enc),
(cleanup_x264enc), (GST_START_TEST), (x264enc_suite), (main):
Add documentation and unit test for x264enc.
2009-06-05 18:48:24 +01:00
Mark Nauwelaerts
d22b361df8 [MOVED FROM BAD 13/28] ext/x264/gstx264enc.c: Allocate some buffers in more adaptive and economical fashion.
Original commit message from CVS:
* ext/x264/gstx264enc.c: (gst_x264_enc_init),
(gst_x264_enc_header_buf), (gst_x264_enc_encode_frame):
Allocate some buffers in more adaptive and economical fashion.
2009-06-05 18:48:23 +01:00
Mark Nauwelaerts
a2ff3c6fde [MOVED FROM BAD 12/28] configure.ac: Check for sufficiently up-to-date x264 API.
Original commit message from CVS:
* configure.ac:
Check for sufficiently up-to-date x264 API.
* ext/x264/gstx264enc.c: (gst_x264_enc_pass_get_type),
(gst_x264_enc_base_init), (gst_x264_enc_class_init),
(gst_x264_enc_init), (gst_x264_enc_init_encoder),
(gst_x264_enc_set_property), (gst_x264_enc_get_property):
* ext/x264/gstx264enc.h:
Expose some more parameters of the x264 encoder as properties.
2009-06-05 18:48:23 +01:00
Mark Nauwelaerts
1b4c1fead0 [MOVED FROM BAD 11/28] ext/x264/gstx264enc.c: Coding style and layout; re-order some functions in more typical and natural flow.
Original commit message from CVS:
* ext/x264/gstx264enc.c: (gst_x264_enc_log_callback),
(gst_x264_enc_finalize), (gst_x264_enc_header_buf),
(gst_x264_enc_set_src_caps), (gst_x264_enc_sink_set_caps),
(gst_x264_enc_flush_frames):
Coding style and layout; re-order some functions in more
typical and natural flow.
2009-06-05 18:48:23 +01:00
Mark Nauwelaerts
c29de55ef2 [MOVED FROM BAD 10/28] ext/x264/: Use GQueue in stead of custom queue code.
Original commit message from CVS:
* ext/x264/Makefile.am:
* ext/x264/gstx264enc.c: (gst_x264_enc_set_src_caps),
(gst_x264_enc_sink_set_caps), (gst_x264_enc_init),
(gst_x264_enc_reset), (gst_x264_enc_finalize),
(gst_x264_enc_flush_frames), (gst_x264_enc_sink_event),
(gst_x264_enc_chain), (gst_x264_enc_encode_frame),
(gst_x264_enc_change_state), (gst_x264_enc_set_property):
* ext/x264/gstx264enc.h:
Use GQueue in stead of custom queue code.
Factorize flushing out encoder delayed frames.
Factorize initialization and state change reset.
2009-06-05 18:48:23 +01:00
Mark Nauwelaerts
a0ff7b6ca8 [MOVED FROM BAD 09/28] Use configure-generated _stdint.h.
Original commit message from CVS:
* ext/x264/gstx264enc.h:
* sys/fbdev/gstfbdevsink.c:
Use configure-generated _stdint.h.
2009-06-05 18:48:22 +01:00
Mark Nauwelaerts
88253ac70c [MOVED FROM BAD 08/28] ext/x264/: Use video format library and GST_WRITE_*_BE macros where applicable.
Original commit message from CVS:
* ext/x264/Makefile.am:
* ext/x264/gstx264enc.c: (gst_x264_enc_header_buf),
(gst_x264_enc_sink_set_caps), (gst_x264_enc_base_init),
(gst_x264_enc_class_init), (gst_x264_enc_log_callback),
(gst_x264_enc_init), (gst_x264_enc_init_encoder),
(gst_x264_enc_finalize), (gst_x264_enc_chain),
(gst_x264_enc_encode_frame), (plugin_init):
* ext/x264/gstx264enc.h:
Use video format library and GST_WRITE_*_BE macros where applicable.
Use finalize in stead of dispose.
Set up debug category and log callback.
2009-06-05 18:48:22 +01:00
Tim-Philipp Müller
9527af6c16 [MOVED FROM BAD 07/28] ext/x264/gstx264enc.c: Try harder not to crash when we get an EOS event but haven't set up the encoder yet (as may ha...
Original commit message from CVS:
* ext/x264/gstx264enc.c: (gst_x264_enc_header_buf),
(gst_x264_enc_sink_event), (gst_x264_enc_chain),
(gst_x264_enc_encode_frame):
Try harder not to crash when we get an EOS event but haven't set
up the encoder yet (as may happen when upstream errors out with
not-negotiated, for example). Also, always push the EOS event
downstream.
2009-06-05 18:48:22 +01:00
Wim Taymans
f5e3152262 [MOVED FROM BAD 06/28] ext/x264/gstx264enc.c: Fix caps memleak.
Original commit message from CVS:
* ext/x264/gstx264enc.c: (gst_x264_enc_set_src_caps):
Fix caps memleak.
2009-06-05 18:48:22 +01:00
Tim-Philipp Müller
64c7b47d97 [MOVED FROM BAD 05/28] ext/x264/gstx264enc.c: Fix build against the libx264 version that ships with debian stable.
Original commit message from CVS:
* ext/x264/gstx264enc.c:
Fix build against the libx264 version that ships with debian stable.
2009-06-05 18:48:22 +01:00
Stefan Kost
781d7efeff [MOVED FROM BAD 04/28] Massive leak fixing, plus code cleanups.
Original commit message from CVS:
* ext/audioresample/gstaudioresample.c:
* ext/x264/gstx264enc.c:
* gst/dvdspu/gstdvdspu.c:
* gst/dvdspu/gstdvdspu.h:
* gst/festival/gstfestival.c:
* gst/h264parse/gsth264parse.c:
* gst/mpegtsparse/mpegtspacketizer.c:
* gst/mpegtsparse/mpegtsparse.c:
* gst/multifile/gstmultifilesink.c:
* gst/multifile/gstmultifilesrc.c:
* gst/nuvdemux/gstnuvdemux.c:
* sys/dshowsrcwrapper/gstdshowaudiosrc.c:
* sys/dshowsrcwrapper/gstdshowvideosrc.c:
* sys/vcd/vcdsrc.c:
Massive leak fixing, plus code cleanups.
2009-06-05 18:48:21 +01:00
Stefan Kost
c25257e1b3 [MOVED FROM BAD 03/28] Add stdlib include (free, atoi, exit).
Original commit message from CVS:
* examples/app/appsrc_ex.c:
* examples/switch/switcher.c:
* ext/neon/gstneonhttpsrc.c:
* ext/timidity/gstwildmidi.c:
* ext/x264/gstx264enc.c:
* gst/mve/mveaudioenc.c: (mve_compress_audio):
* gst/rtpmanager/gstrtpclient.c:
* gst/rtpmanager/gstrtpjitterbuffer.c:
* gst/spectrum/demo-audiotest.c:
* gst/spectrum/demo-osssrc.c:
* sys/dvb/gstdvbsrc.c:
Add stdlib include (free, atoi, exit).
2009-06-05 18:48:21 +01:00
Stefan Kost
c4789e7c4a [MOVED FROM BAD 02/28] ext/x264/gstx264enc.c (gst_x264_enc_init_encoder): This needs a version check.
Original commit message from CVS:
* ext/x264/gstx264enc.c (gst_x264_enc_init_encoder):
This needs a version check.
* gst/bayer/Makefile.am:
Fix the build.
2009-06-05 18:48:21 +01:00
Michal Benes
bef885c84c [MOVED FROM BAD 01/28] Add libx264-based h264 encoder plugin (#421110). Probably doesn't handle 'odd' widths and heights correctly yet.
Original commit message from CVS:
Patch by: Michal Benes <michal.benes at itonis tv>
Patch by: Josef Zlomek <josef.zlomek at itonis tv>
* configure.ac:
* ext/Makefile.am:
* ext/x264/Makefile.am:
* ext/x264/gstx264enc.c: (gst_x264_enc_me_get_type),
(gst_x264_enc_analyse_get_type),
(gst_x264_enc_timestamp_queue_init),
(gst_x264_enc_timestamp_queue_free),
(gst_x264_enc_timestamp_queue_put),
(gst_x264_enc_timestamp_queue_get), (gst_x264_enc_header_buf),
(gst_x264_enc_set_src_caps), (gst_x264_enc_sink_set_caps),
(gst_x264_enc_base_init), (gst_x264_enc_class_init),
(gst_x264_enc_init), (gst_x264_enc_init_encoder),
(gst_x264_enc_close_encoder), (gst_x264_enc_dispose),
(gst_x264_enc_sink_event), (gst_x264_enc_chain),
(gst_x264_enc_encode_frame), (gst_x264_enc_change_state),
(gst_x264_enc_set_property), (gst_x264_enc_get_property),
(plugin_init):
* ext/x264/gstx264enc.h:
Add libx264-based h264 encoder plugin (#421110). Probably doesn't
handle 'odd' widths and heights correctly yet.
2009-06-05 18:48:21 +01:00
Jan Schmidt
dc7f71fb53 a52dec: Reconcile code with dtsdec
Perform some cleanups based on the dtsdec code such as using the boilerplate
macro and static pad template functions.

Add some documentation. Don't register a change in flags until we synch on
another frame successfully.
2009-05-20 11:25:01 +01:00
Sebastian Dröge
c286272792 lamemp3enc: Improve debugging a bit 2009-05-14 12:32:54 +02:00
Edward Hervey
83bf3a9f37 mpeg2dec: Revert ranking switch with ffdec_mpeg2video. Fixes #574461 2009-05-13 19:32:16 +02:00
Tim-Philipp Müller
0594c5633d lamemp3enc: add Since tag to gtk-doc chunk 2009-05-13 02:00:08 +01:00
Wim Taymans
fc1db23b84 mpeg2dec: work around old mpeg2dec versions
The repeat first field flag was introduced in 0.5.0 so conditionally disable its
detection and just assume no rff is used. This fixes the compilation.

Fixes #582375
2009-05-12 20:34:20 +02:00
Wim Taymans
707d2fceae mpeg2dec: link to gstvideo
Fix compilation by adding the right include directories and linking to the video
library.
2009-05-12 20:24:02 +02:00
Edward Hervey
8905e8c81e mpeg2dec: Implement interlaced support.
Expand the debugging statements to show more picture information.
2009-05-12 11:44:52 +02:00
Sebastian Dröge
40c87181c5 mpeg2dec: Lower rank to MARGINAL to make ffdec_mpeg2video the default
ffdec_mpeg2video is much faster, fixes bug #574461.
2009-05-12 11:19:00 +02:00
Sebastian Dröge
87fbf6f4ff lamemp3enc: Don't write a Xing header 2009-05-10 16:53:07 +02:00
Edward Hervey
58b34b3553 mpeg2dec: use 64bit safe scaling functions.
Got this to fail when seeking in a 14GB file (the value in bytes is
bigger than 2**32).
2009-05-09 15:30:07 +02:00
Christian Schaller
39018c8547 Switch twolame to primary rank 2009-05-08 14:24:47 +01:00
Christian Schaller
b8a116982b Add ranks to mp3 encoders 2009-05-07 17:59:52 +01:00
Sebastian Dröge
50dd597ff1 lamemp3enc: Fixup the bitrate only for CBR
Additionally clarify some property descriptions.
2009-05-07 10:10:58 +02:00
Alessandro Decina
bfbddbed8b lame: fix format string in debug statement 2009-05-06 21:47:17 +02:00
Edward Hervey
88db06cb65 mad: Add duration of incoming/outgoing buffers in debug statements 2009-05-06 13:17:35 +02:00
Tim-Philipp Müller
95ddda57e2 lame: fix compilation with LAME versions < 3.98
lame_set_VBR_quality(), which takes a floating point value for the
quality, has been added only in v3.98. Use lame_set_VBR_q(), which
takes quality as an integer, for older LAME versions.

Fixes #581341.
2009-05-05 16:38:19 +01:00
Sebastian Dröge
54d7c0d563 lamemp3enc: Add a note to the encoding-engine-quality property
that says, that this does not affect the bitrate at all.
2009-05-04 12:51:29 +02:00
Sebastian Dröge
3511ecbf5d lame: Implement preset interface 2009-05-04 12:48:43 +02:00
Sebastian Dröge
d7709085b9 twolame: Implement preset interface 2009-05-04 12:47:03 +02:00
Sebastian Dröge
1dcdac7629 lamemp3enc: Remove fast-vbr property and rename vbr-quality to quality 2009-05-04 11:18:15 +02:00
Sebastian Dröge
699f1707c3 lame/lamemp3enc: Fix memory leak on FLUSH_STOP 2009-05-04 11:18:15 +02:00