Commit graph

3384 commits

Author SHA1 Message Date
Sebastian Dröge
46ceaf957a dicetv: Use guint8 instead of char (which can be signed or unsigned) 2009-06-15 21:13:35 +02:00
Sebastian Dröge
aaf8c8769d shagadelictv: Use guint8/gint8 instead of char (which can be signed or unsigned) 2009-06-15 21:13:35 +02:00
Sebastian Dröge
1f65192185 shagadelictv: Clean up element and free all memory in finalize 2009-06-15 21:13:34 +02:00
Sebastian Dröge
f3dc59d010 revtv: Clean up revtv element 2009-06-15 21:13:34 +02:00
Sebastian Dröge
006caab053 quarktv: Simplify some code 2009-06-15 21:13:34 +02:00
Sebastian Dröge
438295acae quarktv: Use the input data if a NULL buffer is chosen instead of the value 0 2009-06-15 21:13:34 +02:00
Sebastian Dröge
426ff3bd93 quarktv: Fix setting the planes property of quarktv
Setting it to a value<16 would cause crashes before because
current_plane was set to the old number of planes-1. Also
fix calculations for non-2^n planes values.
2009-06-15 21:13:33 +02:00
Sebastian Dröge
c116c301af quarktv: Clean up the quarktv element 2009-06-15 21:13:33 +02:00
Sebastian Dröge
b3bb4fa7ef effectv: Make elements list constant 2009-06-15 21:13:33 +02:00
Sebastian Dröge
012f71afb5 edgetv: Clean up edgetv element and fix memory leak 2009-06-15 21:13:33 +02:00
Sebastian Dröge
0cbdfcbc22 dicetv: Clean up dicetv element and fix some smaller issues
This fixes a memory leak (the dice map) and a crash when
setting the square-bits property before caps are set.
2009-06-15 21:13:33 +02:00
Sebastian Dröge
d1ad31b9b3 agingtv: Actually use GstController for syncing the properties to timestamps 2009-06-15 21:13:32 +02:00
Sebastian Dröge
45ef8efc6b agingtv: Export some more agingtv properties via GObject properties 2009-06-15 21:13:32 +02:00
Sebastian Dröge
f8424d0166 agingtv: General cleanup and updating of copyright
Also make the scratch-lines property exported via a GObject
property and initialize/reset the internal state correctly.
2009-06-15 21:13:32 +02:00
Sebastian Dröge
865f11192c agingtv: Store and update state inside the instance struct
This makes the coloraging effect and pits effect visible.
2009-06-15 21:13:32 +02:00
Olivier Crête
4c782db81d rtpsirenpay: Remove deprecated symbol
Patch by: Luis Menina
2009-06-13 21:02:45 -04:00
Patrick Radizi
a95c049f76 rtspsrc: Add RTP blocksize functionality
Add property to make the client suggest a blocksize to the server.
Fixes #585549
2009-06-12 16:06:28 +02:00
Wim Taymans
6f3c1728f3 rtp: update README, fix some typos, mention gstrtpbin 2009-06-11 22:30:06 +02:00
Jan Schmidt
6d32642887 docs: Quieten a couple more docs warnings 2009-06-11 11:39:25 +01:00
Jan Schmidt
42c9f83b5f docs: Remove gtk-doc comment marker
These comment blocks aren't gtk-doc comments and cause annoying noise in
the docs build.
2009-06-11 11:27:26 +01:00
Sebastian Dröge
ceea8dc15f deinterlace: Implement upstream negotation 2009-06-11 10:06:04 +02:00
Sebastian Dröge
cd33adbd96 deinterlace: Improve debugging and clean up some code 2009-06-11 10:06:04 +02:00
Sebastian Dröge
101123a75d deinterlace: Clip buffers to the current segment if possible 2009-06-11 10:06:04 +02:00
Sebastian Dröge
4710a91cbf deinterlace: Clean up includes and clean up order of instance struct fields 2009-06-11 10:06:03 +02:00
Olivier Crête
645b9449a5 rtph263pay: Default to doing A, B and C modes, not only A 2009-06-10 16:09:56 -04:00
Sebastian Dröge
f297e37b5e deinterlace: Fix QoS calculations
The diff is a signed integer, not an unsigned one of course.

In modes other than GST_DEINTERLACE_ALL every frame has twice the
duration of the field duration.
2009-06-10 09:57:31 +02:00
Olivier Crête
dc61a71e5d rtpsirenpay: Put the bitrate in the RTP caps
The MS code seems to require the bitrate to interoperate and
draft-ietf-avt-rtp-g7221-00 also has it.
2009-06-09 14:13:31 -04:00
Sebastian Dröge
d0a5c0f3e3 deinterlace: Implement basic QoS
This change is based on Tim's QoS implementation
for jpegdec.
2009-06-09 19:56:53 +02:00
Sebastian Dröge
049722b680 deinterlace: Directly proxy events/queries to the peer pads
This removes some overhead introduced by the default handlers
that need to iterate over the other pads.
2009-06-09 19:56:53 +02:00
Edward Hervey
5e0a2296e0 avidemux: debug_memdump() unknown tags. Refactor junk parsing code.
This makes life slightly easier when debugging avi files.
2009-06-09 10:41:49 +02:00
Edward Hervey
6eec2a060d rtp: Don't forget to dist the headers for the CELT (de)payloaders. 2009-06-08 08:21:43 +02:00
Wim Taymans
9050fb26e9 Revert "Revert "qtdemux: fill timestamp table completely""
This reverts commit 9f022c8a85.

Sorry, I was thinking about the wrong module.
2009-06-07 20:54:06 +02:00
Wim Taymans
9f022c8a85 Revert "qtdemux: fill timestamp table completely"
This reverts commit 790b050fc5.
I forgot we were frozen.
2009-06-07 20:49:50 +02:00
Wim Taymans
790b050fc5 qtdemux: fill timestamp table completely
When there are less timestamps that there are samples, fill up the sample table
with the last know timestamp. This situation can happen when the last sample
does not decode and doesn't need a timestamp. We however calculate the total
track length using the last sample timestamp so we need to have something
sensible in there.

Fixes #585056
2009-06-07 20:46:45 +02:00
Wim Taymans
fb25aced92 wavparse: handle LIST INFO of 0 size
Handle LIST INFO chunks of 0 size instead of causing errors.

Fixes #584981
2009-06-07 13:37:04 +02:00
Wim Taymans
7a0c94121f Revert "wavparse: Remove dead assignments, move variable to where it's needed."
Reverts commit 44256a78f8 and use the result in
error reporting so that we can see what's going on.
2009-06-07 13:34:37 +02:00
Wim Taymans
ace2a84447 celtdepay: add CELT depayloader 2009-06-05 18:57:30 +02:00
Wim Taymans
ec554a7f02 rtpceltpay: add CELT RTP payloader 2009-06-05 18:57:30 +02:00
Sebastian Dröge
29111fa1f8 deinterlace: First try to handle DVD still frames correctly
This helps a bit with bug #582740 but still doesn't make it work.
2009-06-04 20:35:35 +02:00
Wim Taymans
b9ddf22340 rtspsrc: set the right state on rtpbin
We need to set the state of gstrtpbin to the same state as our source elements.
This fixes fallback to TCP again.
2009-06-04 15:19:05 +02:00
Wim Taymans
e7987ed06b vrawpay: trim output buffers
Remove the leftover unused bytes in the output buffer.
Fixes #584613
2009-06-02 19:33:28 +02:00
Wim Taymans
dabddb8126 vrawdepay: fix parsing of sampling field
commit a12d9a80f2 broke the parsing of the
sampling.
2009-06-02 19:33:28 +02:00
Brian Cameron
09fbeee42d deinterlace: Fix spurious colons in asm code
Fixes #584174.

Signed-off-by: David Schleef <ds@schleef.org>
2009-06-01 12:01:28 -07:00
Tim-Philipp Müller
4d07c78f0b avidemux: skip JUNK chunks in data section in streaming mode
Skip JUNK tags in streaming mode as well instead of EOSing
prematurely. Fixes #564100.
2009-06-01 00:42:55 +01:00
Sebastian Dröge
d46e459f22 videomixer: Don't use // comments 2009-05-28 14:01:17 +02:00
Sebastian Dröge
a5c30ae502 videomixer: Fix background blitting when a color mode is selected with BGRA 2009-05-28 13:58:48 +02:00
Sebastian Dröge
83fc39ccff videomixer: Some cleanup and fix the calculation of the frame size in bytes 2009-05-28 13:54:14 +02:00
Sebastian Dröge
699b696db8 videomixer: Fix I420 blending to actually do something
For this we a) implement the checkers filling and b)
actually blend the src/dest by using the src alpha value
from the pad.
2009-05-28 13:35:52 +02:00
Sebastian Dröge
ad1f79fd81 videomixer: Fix ARGB blending to actually work 2009-05-28 13:14:13 +02:00
Sebastian Dröge
f66906e891 videomixer: Blend BGRA ourselves instead of using Cairo 2009-05-28 13:04:51 +02:00
Alex Ugarte
82abbeaf4f videomixer: Add support for blending BGRA and AYUV
Fixes bug #577017.
2009-05-28 12:55:16 +02:00
Ghislain 'Aus' Lacroix
9507cdc84c equalizer: Use floating point arithmetic internally for the int16 mode
By using int32 arithmetic we will introduce distortions as the
IIR filter is very sensitive to rounding errors. Fixes bug #580214.
2009-05-28 12:39:46 +02:00
Wim Taymans
e13e3c6249 rtpmp4vpay: don't look for headers in some cases
In some streams (starting with 00000100) don't look for the headers but push
data as it is.
Fixes #582153
2009-05-25 10:59:17 +02:00
Patrick Radizi
301fc8a712 rtspsrc: fix memory leak of messages
Free messages correctly.
Fixes #577318
2009-05-25 10:57:59 +02:00
Wim Taymans
047618849a rtspsrc: make fakesrc silent
Make the fakesrc that is responsible for sending dummy packets silent.
2009-05-24 19:32:17 +02:00
Wim Taymans
5d3168e558 rtspsrc: don't send teardown before setup
Don't send a TEARDOWN request when we did not manage to successfully setup a
stream.
2009-05-24 16:33:42 +02:00
Sebastian Dröge
afbe123e33 matroskademux: Populate a GstIndex that is set on matroskademux 2009-05-22 19:41:59 +02:00
Sebastian Dröge
cf60de4875 flvmux: Get the max duration from upstream if there's no duration tag 2009-05-22 19:41:58 +02:00
Sebastian Dröge
22d95bfc09 flvmux: Write an index table to the end of the file 2009-05-22 19:41:58 +02:00
Jan Schmidt
66149475bd matroskademux: Recognise PGS subpicture streams - the bluray format.
Recognise and apply appropriate caps to PGS (Presentation Graphic Stream)
subpicture streams.
2009-05-21 21:23:49 +01:00
Wim Taymans
a6424471f1 qtdemux: parse in24 boxes to get endianness
in24 samples are normally big-endian but an enda box can change this to
little-endian. Recurse into the in24 box and find the enda box so that we get
the endianness right.

Fixes #582515
2009-05-21 22:05:11 +02:00
Wim Taymans
10ce6c6f6d multipartdemux: add proper padtemplate 2009-05-21 22:05:10 +02:00
Wim Taymans
c50edb8145 multipartdemux: add more mime types
Add mime-type for Panasonic g726 and add more required caps properties for other
G726 mime-types.
Make mime-types case insensitive.
See #582169
2009-05-21 22:05:10 +02:00
Wim Taymans
54afebf426 multipartdemux: add flow aggregation 2009-05-21 22:05:10 +02:00
Arnout Vandecappelle
a5252aec08 multipartdemux: allow content to be empty.
gst_adapter_take_buffer doesn't allow buffer to be empty.
Simply skip any part where the content is empty.  Don't
create a pad for it either.
See #582169
2009-05-21 22:05:10 +02:00
Wim Taymans
d7fd42999e rtp: fix channel positions for mono 2009-05-21 22:05:09 +02:00
Wim Taymans
ee5382d799 [MOVED FROM BAD] y4menc: change my email
change my email to something more current
See #580783
2009-05-15 23:35:09 +01:00
Wim Taymans
695ce19ef4 [MOVED FROM BAD] y4menc: don't strip timestamps
Fixes #582483
2009-05-15 23:35:08 +01:00
Stefan Kost
248fefbe48 [MOVED FROM BAD] 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-05-15 23:35:08 +01:00
Mark Nauwelaerts
522f875d31 [MOVED FROM BAD] Add documentation for YUV4MPEG2 encoder element.
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:
* gst/y4m/gsty4mencode.c:
Add documentation for YUV4MPEG2 encoder element.
2009-05-15 23:35:08 +01:00
Tim-Philipp Müller
3110dafee8 [MOVED FROM BAD] Plug some leaks; try to make build bot happy again.
Original commit message from CVS:
* gst/y4m/gsty4mencode.c: (gst_y4m_encode_init),
(gst_y4m_encode_setcaps):
* tests/check/elements/y4menc.c: (GST_START_TEST):
Plug some leaks; try to make build bot happy again.
2009-05-15 23:35:08 +01:00
Mark Nauwelaerts
6104e2480d [MOVED FROM BAD] configure.ac: Enable cdaudio and y4m.
Original commit message from CVS:
Patch by: Mark Nauwelaerts <manauw at skynet be>
* configure.ac:
Enable cdaudio and y4m.
* gst/y4m/Makefile.am:
* gst/y4m/gsty4mencode.c: (gst_y4m_encode_base_init),
(gst_y4m_encode_class_init), (gst_y4m_encode_init),
(gst_y4m_encode_reset), (gst_y4m_encode_setcaps),
(gst_y4m_encode_get_stream_header),
(gst_y4m_encode_get_frame_header), (gst_y4m_encode_chain),
(gst_y4m_encode_set_property), (gst_y4m_encode_get_property),
(gst_y4m_encode_change_state), (plugin_init):
* gst/y4m/gsty4mencode.h:
Port of y4mencode to 0.10.
2009-05-15 23:35:08 +01:00
Stefan Kost
2123ca7806 [MOVED FROM BAD] Define GstElementDetails as const and also static (when defined as global)
Original commit message from CVS:
* ext/amrwb/gstamrwbdec.c:
* ext/amrwb/gstamrwbenc.c:
* ext/amrwb/gstamrwbparse.c:
* ext/arts/gst_arts.c:
* ext/artsd/gstartsdsink.c:
* ext/audiofile/gstafparse.c:
* ext/audiofile/gstafsink.c:
* ext/audiofile/gstafsrc.c:
* ext/audioresample/gstaudioresample.c:
* ext/bz2/gstbz2dec.c:
* ext/bz2/gstbz2enc.c:
* ext/cdaudio/gstcdaudio.c:
* ext/directfb/dfbvideosink.c:
* ext/divx/gstdivxdec.c:
* ext/divx/gstdivxenc.c:
* ext/dts/gstdtsdec.c: (gst_dtsdec_base_init):
* ext/faac/gstfaac.c: (gst_faac_base_init):
* ext/faad/gstfaad.c:
* ext/gsm/gstgsmdec.c:
* ext/gsm/gstgsmenc.c:
* ext/hermes/gsthermescolorspace.c:
* ext/ivorbis/vorbisfile.c:
* ext/lcs/gstcolorspace.c:
* ext/libfame/gstlibfame.c:
* ext/libmms/gstmms.c: (gst_mms_base_init):
* ext/musepack/gstmusepackdec.c: (gst_musepackdec_base_init):
* ext/musicbrainz/gsttrm.c: (gst_musicbrainz_base_init):
* ext/nas/nassink.c: (gst_nassink_base_init):
* ext/neon/gstneonhttpsrc.c:
* ext/sdl/sdlaudiosink.c:
* ext/sdl/sdlvideosink.c:
* ext/shout/gstshout.c:
* ext/snapshot/gstsnapshot.c:
* ext/sndfile/gstsf.c:
* ext/swfdec/gstswfdec.c:
* ext/tarkin/gsttarkindec.c:
* ext/tarkin/gsttarkinenc.c:
* ext/theora/theoradec.c:
* ext/wavpack/gstwavpackdec.c: (gst_wavpack_dec_base_init):
* ext/wavpack/gstwavpackparse.c: (gst_wavpack_parse_base_init):
* ext/xvid/gstxviddec.c:
* ext/xvid/gstxvidenc.c:
* gst/cdxaparse/gstcdxaparse.c: (gst_cdxa_parse_base_init):
* gst/cdxaparse/gstcdxastrip.c: (gst_cdxastrip_base_init):
* gst/chart/gstchart.c:
* gst/colorspace/gstcolorspace.c:
* gst/deinterlace/gstdeinterlace.c:
* gst/equalizer/gstiirequalizer.c: (gst_iir_equalizer_base_init):
* gst/festival/gstfestival.c:
* gst/filter/gstbpwsinc.c:
* gst/filter/gstiir.c:
* gst/filter/gstlpwsinc.c:
* gst/freeze/gstfreeze.c:
* gst/games/gstpuzzle.c: (gst_puzzle_base_init):
* gst/librfb/gstrfbsrc.c:
* gst/mixmatrix/mixmatrix.c:
* gst/mpeg1sys/gstmpeg1systemencode.c:
* gst/mpeg1videoparse/gstmp1videoparse.c:
* gst/mpeg2sub/gstmpeg2subt.c:
* gst/mpegaudioparse/gstmpegaudioparse.c:
* gst/multifilesink/gstmultifilesink.c:
* gst/overlay/gstoverlay.c:
* gst/passthrough/gstpassthrough.c:
* gst/playondemand/gstplayondemand.c:
* gst/qtdemux/qtdemux.c:
* gst/rtjpeg/gstrtjpegdec.c:
* gst/rtjpeg/gstrtjpegenc.c:
* gst/smooth/gstsmooth.c:
* gst/smoothwave/gstsmoothwave.c:
* gst/spectrum/gstspectrum.c:
* gst/speed/gstspeed.c:
* gst/stereo/gststereo.c:
* gst/switch/gstswitch.c:
* gst/tta/gstttadec.c: (gst_tta_dec_base_init):
* gst/tta/gstttaparse.c: (gst_tta_parse_base_init):
* gst/vbidec/gstvbidec.c:
* gst/videocrop/gstvideocrop.c:
* gst/videodrop/gstvideodrop.c:
* gst/virtualdub/gstxsharpen.c:
* gst/xingheader/gstxingmux.c: (gst_xing_mux_base_init):
* gst/y4m/gsty4mencode.c:
* sys/cdrom/gstcdplayer.c:
* sys/directdraw/gstdirectdrawsink.c:
* sys/directsound/gstdirectsoundsink.c:
* sys/glsink/glimagesink.c:
* sys/qcam/gstqcamsrc.c:
* sys/v4l2/gstv4l2src.c:
* sys/vcd/vcdsrc.c: (gst_vcdsrc_base_init):
* sys/ximagesrc/ximagesrc.c:
Define GstElementDetails as const and also static (when defined as
global)
2009-05-15 23:35:08 +01:00
Stefan Kost
bc0f1486ba [MOVED FROM BAD] Fix #337365 (g_type_class_ref <-> g_type_class_peek_parent)
Original commit message from CVS:
* ext/amrwb/gstamrwbdec.c: (gst_amrwbdec_class_init):
* ext/amrwb/gstamrwbenc.c: (gst_amrwbenc_class_init):
* ext/amrwb/gstamrwbparse.c: (gst_amrwbparse_class_init):
* ext/arts/gst_arts.c: (gst_arts_class_init):
* ext/artsd/gstartsdsink.c: (gst_artsdsink_class_init):
* ext/audiofile/gstafsink.c: (gst_afsink_class_init):
* ext/audiofile/gstafsrc.c: (gst_afsrc_class_init):
* ext/audioresample/gstaudioresample.c:
* ext/cdaudio/gstcdaudio.c: (gst_cdaudio_class_init):
* ext/directfb/dfbvideosink.c: (gst_dfbvideosink_class_init):
* ext/divx/gstdivxdec.c: (gst_divxdec_class_init):
* ext/hermes/gsthermescolorspace.c:
(gst_hermes_colorspace_class_init):
* ext/ivorbis/vorbisfile.c: (gst_ivorbisfile_class_init):
* ext/jack/gstjack.c: (gst_jack_class_init):
* ext/jack/gstjackbin.c: (gst_jack_bin_class_init):
* ext/lcs/gstcolorspace.c: (gst_colorspace_class_init):
* ext/libfame/gstlibfame.c: (gst_fameenc_class_init):
* ext/musicbrainz/gsttrm.c: (gst_musicbrainz_class_init):
* ext/nas/nassink.c: (gst_nassink_class_init):
* ext/shout/gstshout.c: (gst_icecastsend_class_init):
* ext/snapshot/gstsnapshot.c: (gst_snapshot_class_init):
* ext/sndfile/gstsf.c: (gst_sf_class_init):
* ext/swfdec/gstswfdec.c: (gst_swfdecbuffer_class_init),
(gst_swfdec_class_init):
* ext/tarkin/gsttarkindec.c: (gst_tarkindec_class_init):
* ext/tarkin/gsttarkinenc.c: (gst_tarkinenc_class_init):
* gst/cdxaparse/gstcdxastrip.c: (gst_cdxastrip_class_init):
* gst/chart/gstchart.c: (gst_chart_class_init):
* gst/colorspace/gstcolorspace.c: (gst_colorspace_class_init):
* gst/deinterlace/gstdeinterlace.c: (gst_deinterlace_class_init):
* gst/festival/gstfestival.c: (gst_festival_class_init):
* gst/filter/gstbpwsinc.c: (gst_bpwsinc_class_init):
* gst/filter/gstiir.c: (gst_iir_class_init):
* gst/filter/gstlpwsinc.c: (gst_lpwsinc_class_init):
* gst/librfb/gstrfbsrc.c: (gst_rfbsrc_class_init):
* gst/mixmatrix/mixmatrix.c: (gst_mixmatrix_class_init):
* gst/mpeg1sys/gstmpeg1systemencode.c:
(gst_system_encode_class_init):
* gst/mpeg1videoparse/gstmp1videoparse.c:
(gst_mp1videoparse_class_init):
* gst/mpeg2sub/gstmpeg2subt.c: (gst_mpeg2subt_class_init):
* gst/mpegaudioparse/gstmpegaudioparse.c:
(gst_mp3parse_class_init):
* gst/overlay/gstoverlay.c: (gst_overlay_class_init):
* gst/passthrough/gstpassthrough.c: (passthrough_class_init):
* gst/playondemand/gstplayondemand.c: (play_on_demand_class_init):
* gst/rtjpeg/gstrtjpegdec.c: (gst_rtjpegdec_class_init):
* gst/rtjpeg/gstrtjpegenc.c: (gst_rtjpegenc_class_init):
* gst/smooth/gstsmooth.c: (gst_smooth_class_init):
* gst/smoothwave/gstsmoothwave.c: (gst_smoothwave_class_init):
* gst/spectrum/gstspectrum.c: (gst_spectrum_class_init):
* gst/stereo/gststereo.c: (gst_stereo_class_init):
* gst/switch/gstswitch.c: (gst_switch_class_init):
* gst/tta/gstttadec.c: (gst_tta_dec_class_init):
* gst/tta/gstttaparse.c: (gst_tta_parse_class_init):
* gst/vbidec/gstvbidec.c: (gst_vbidec_class_init):
* gst/videocrop/gstvideocrop.c: (gst_video_crop_class_init):
* gst/virtualdub/gstxsharpen.c: (gst_xsharpen_class_init):
* gst/y4m/gsty4mencode.c: (gst_y4mencode_class_init):
* sys/cdrom/gstcdplayer.c: (cdplayer_class_init):
* sys/directsound/gstdirectsoundsink.c:
(gst_directsoundsink_class_init):
* sys/dxr3/dxr3audiosink.c: (dxr3audiosink_class_init):
* sys/dxr3/dxr3spusink.c: (dxr3spusink_class_init):
* sys/dxr3/dxr3videosink.c: (dxr3videosink_class_init):
* sys/qcam/gstqcamsrc.c: (gst_qcamsrc_class_init):
* sys/v4l2/gstv4l2colorbalance.c:
(gst_v4l2_color_balance_channel_class_init):
* sys/v4l2/gstv4l2tuner.c: (gst_v4l2_tuner_channel_class_init),
(gst_v4l2_tuner_norm_class_init):
* sys/ximagesrc/ximagesrc.c: (gst_ximagesrc_class_init):
Fix #337365 (g_type_class_ref <-> g_type_class_peek_parent)
2009-05-15 23:35:08 +01:00
Stefan Kost
bf0215c0d0 [MOVED FROM BAD] gst/: Fix more broken GObject macros
Original commit message from CVS:
* gst/colorspace/gstcolorspace.h:
* gst/deinterlace/gstdeinterlace.h:
* gst/passthrough/gstpassthrough.h:
* gst/y4m/gsty4mencode.h:
Fix more broken GObject macros
2009-05-15 23:35:07 +01:00
j@bootlab.org
1a1ce07c21 [MOVED FROM BAD] Unify the long descriptions in the plugin details (#337263).
Original commit message from CVS:
Patch by: j^  <j at bootlab dot org>
* ext/amrwb/gstamrwbdec.c:
* ext/amrwb/gstamrwbenc.c:
* ext/amrwb/gstamrwbparse.c:
* ext/arts/gst_arts.c:
* ext/artsd/gstartsdsink.c:
* ext/audiofile/gstafparse.c:
* ext/audiofile/gstafsink.c:
* ext/audiofile/gstafsrc.c:
* ext/cdaudio/gstcdaudio.c:
* ext/directfb/dfbvideosink.c:
* ext/divx/gstdivxdec.c:
* ext/divx/gstdivxenc.c:
* ext/dts/gstdtsdec.c: (gst_dtsdec_base_init):
* ext/faac/gstfaac.c: (gst_faac_base_init):
* ext/faad/gstfaad.c:
* ext/gsm/gstgsmdec.c:
* ext/gsm/gstgsmenc.c:
* ext/hermes/gsthermescolorspace.c:
* ext/ivorbis/vorbisfile.c:
* ext/lcs/gstcolorspace.c:
* ext/libfame/gstlibfame.c:
* ext/libmms/gstmms.c: (gst_mms_base_init):
* ext/musicbrainz/gsttrm.c: (gst_musicbrainz_base_init):
* ext/nas/nassink.c: (gst_nassink_base_init):
* ext/neon/gstneonhttpsrc.c:
* ext/polyp/polypsink.c: (gst_polypsink_base_init):
* ext/sdl/sdlaudiosink.c:
* ext/sdl/sdlvideosink.c:
* ext/shout/gstshout.c:
* ext/snapshot/gstsnapshot.c:
* ext/sndfile/gstsf.c:
* ext/tarkin/gsttarkindec.c:
* ext/tarkin/gsttarkinenc.c:
* ext/theora/theoradec.c:
* ext/wavpack/gstwavpackdec.c: (gst_wavpack_dec_base_init):
* ext/wavpack/gstwavpackparse.c: (gst_wavpack_parse_base_init):
* ext/xvid/gstxviddec.c:
* ext/xvid/gstxvidenc.c:
* gst/cdxaparse/gstcdxaparse.c: (gst_cdxa_parse_base_init):
* gst/cdxaparse/gstcdxastrip.c: (gst_cdxastrip_base_init):
* gst/chart/gstchart.c:
* gst/equalizer/gstiirequalizer.c: (gst_iir_equalizer_base_init):
* gst/festival/gstfestival.c:
* gst/filter/gstiir.c:
* gst/filter/gstlpwsinc.c:
* gst/freeze/gstfreeze.c:
* gst/games/gstpuzzle.c: (gst_puzzle_base_init):
* gst/mixmatrix/mixmatrix.c:
* gst/mpeg1sys/gstmpeg1systemencode.c:
* gst/mpeg1videoparse/gstmp1videoparse.c:
* gst/mpeg2sub/gstmpeg2subt.c:
* gst/mpegaudioparse/gstmpegaudioparse.c:
* gst/multifilesink/gstmultifilesink.c:
* gst/overlay/gstoverlay.c:
* gst/passthrough/gstpassthrough.c:
* gst/playondemand/gstplayondemand.c:
* gst/qtdemux/qtdemux.c:
* gst/rtjpeg/gstrtjpegdec.c:
* gst/rtjpeg/gstrtjpegenc.c:
* gst/smooth/gstsmooth.c:
* gst/tta/gstttadec.c: (gst_tta_dec_base_init):
* gst/tta/gstttaparse.c: (gst_tta_parse_base_init):
* gst/videocrop/gstvideocrop.c:
* gst/videodrop/gstvideodrop.c:
* gst/virtualdub/gstxsharpen.c:
* gst/xingheader/gstxingmux.c: (gst_xing_mux_base_init):
* gst/y4m/gsty4mencode.c:
Unify the long descriptions in the plugin details (#337263).
2009-05-15 23:35:07 +01:00
Thomas Vander Stichele
1844742e14 [MOVED FROM BAD] rework build; add translations for v4l2
Original commit message from CVS:
rework build; add translations for v4l2
2009-05-15 23:35:07 +01:00
Jan Schmidt
22ec948d15 [MOVED FROM BAD] Fix up all the state change functions.
Original commit message from CVS:
Fix up all the state change functions.
2009-05-15 23:35:07 +01:00
Andy Wingo
5f12ced080 [MOVED FROM BAD] Way, way, way too many files: Remove crack comment from the 2000 era.
Original commit message from CVS:
2005-07-05  Andy Wingo  <wingo@pobox.com>

* Way, way, way too many files:
Remove crack comment from the 2000 era.
2009-05-15 23:35:07 +01:00
Stéphane Loeuillet
1c1fb2e31a [MOVED FROM BAD] I'm a bad boy. using /1001. to force C to do float division and not integer division (as it did in my last commit)
Original commit message from CVS:
* ext/dv/gstdvdec.c:
* gst/subparse/gstsubparse.c: (parse_mdvdsub):
* gst/y4m/gsty4mencode.c: (gst_y4mencode_sinkconnect):
I'm a bad boy. using /1001. to force C to do float division
and not integer division (as it did in my last commit)
Thanks to David I. Lehn for pointing this mistake.
2009-05-15 23:35:07 +01:00
Stéphane Loeuillet
e706ed61e4 [MOVED FROM BAD] replace framerate aproximations by their real value (24000/1001, 30000/1001, 60000/1001)
Original commit message from CVS:
* ext/dv/gstdvdec.c:
* ext/libfame/gstlibfame.c:
* gst/subparse/gstsubparse.c: (parse_mdvdsub):
* gst/y4m/gsty4mencode.c: (gst_y4mencode_sinkconnect):
replace framerate aproximations by their real value
(24000/1001, 30000/1001, 60000/1001)
Finish fixing bug #164049
2009-05-15 23:35:07 +01:00
Steve Lhomme
af491d646c [MOVED FROM BAD] more working plugins
Original commit message from CVS:
more working plugins
2009-05-15 23:35:06 +01:00
Steve Lhomme
1d459af44d [MOVED FROM BAD] rename GStreamer-0.8.lib to libgstreamer.lib
Original commit message from CVS:
rename GStreamer-0.8.lib to libgstreamer.lib
2009-05-15 23:35:06 +01:00
Steve Lhomme
5b80d9c7f7 [MOVED FROM BAD] avoid problems with math.h, fix release dependancy
Original commit message from CVS:
avoid problems with math.h, fix release dependancy
2009-05-15 23:35:06 +01:00
Steve Lhomme
114470c7d1 [MOVED FROM BAD] more plugins supported under windows
Original commit message from CVS:
more plugins supported under windows
2009-05-15 23:35:06 +01:00
Jan Schmidt
caac59573c [MOVED FROM BAD] a52dec: Use a debug category, Output timestamps correctly
Original commit message from CVS:
a52dec:   Use a debug category, Output timestamps correctly
Emit tag info, Handle events, tell liba52dec about cpu
capabilities so it can use MMX etc.
dvdec:    Fix a crasher accessing invalid memory
dvdnavsrc:Some support for byte-format seeking.
Small fixes for still frames and menu button overlays
mpeg2dec: Use a debug category. Adjust the report level of several items to
LOG. Call mpeg2_custom_fbuf to mark our buffers as 'custom buffers'
so it doesn't lose the GstBuffer pointer
navseek:  Add the navseek debug element for seeking back and forth in a
video stream using arrow keys.
mpeg2subt:Pretty much a complete rewrite. Now a loopbased element. May still
require work to properly synchronise subtitle buffers.
mpegdemux:
dvddemux: Don't attempt to create subbuffers of size 0
Reduce a couple of error outputs to warnings.
y4mencode:Output the y4m frame header correctly
2009-05-15 23:35:06 +01:00
Thomas Vander Stichele
1beae4829c [MOVED FROM BAD] don't mix tabs and spaces
Original commit message from CVS:
don't mix tabs and spaces
2009-05-15 23:35:06 +01:00
Johan Dahlin
c3aed629b3 [MOVED FROM BAD] *.h: Revert indenting
Original commit message from CVS:
* *.h: Revert indenting
2009-05-15 23:35:06 +01:00
Thomas Vander Stichele
2a39c9a83d [MOVED FROM BAD] gst-indent
Original commit message from CVS:
gst-indent
2009-05-15 23:35:05 +01:00
Benjamin Otte
14d51ebf15 [MOVED FROM BAD] gst-libs/gst/video/video.h: Fix caps template names to be understandable.
Original commit message from CVS:
2004-01-12  Benjamin Otte  <in7y118@public.uni-hamburg.de>

* gst-libs/gst/video/video.h:
Fix caps template names to be understandable.
Prefix everything with GST_VIDEO.
* ext/aalib/gstaasink.c:
* ext/divx/gstdivxdec.c:
* ext/divx/gstdivxenc.c:
* ext/gdk_pixbuf/gstgdkpixbuf.c:
* ext/hermes/gstcolorspace.c: (gst_colorspace_base_init):
* ext/jpeg/gstjpegdec.c: (raw_caps_factory):
* ext/jpeg/gstjpegenc.c: (raw_caps_factory):
* ext/libcaca/gstcacasink.c:
* ext/libpng/gstpngenc.c: (raw_caps_factory):
* ext/snapshot/gstsnapshot.c:
* ext/swfdec/gstswfdec.c:
* ext/xvid/gstxviddec.c:
* ext/xvid/gstxvidenc.c:
* gst/chart/gstchart.c:
* gst/deinterlace/gstdeinterlace.c:
* gst/effectv/gsteffectv.c:
* gst/flx/gstflxdec.c: (gst_flxdec_loop):
* gst/goom/gstgoom.c:
* gst/median/gstmedian.c:
* gst/monoscope/gstmonoscope.c: (gst_monoscope_init),
(gst_monoscope_srcconnect), (gst_monoscope_chain):
* gst/overlay/gstoverlay.c:
* gst/smooth/gstsmooth.c:
* gst/smpte/gstsmpte.c:
* gst/synaesthesia/gstsynaesthesia.c:
* gst/videocrop/gstvideocrop.c:
* gst/videodrop/gstvideodrop.c:
* gst/y4m/gsty4mencode.c:
* sys/qcam/gstqcamsrc.c:
* sys/v4l/gstv4lsrc.c: (gst_v4lsrc_palette_to_caps):
Make them work with new video.h file.
* sys/ximage/ximagesink.c: (gst_ximagesink_chain),
(gst_ximagesink_buffer_free), (gst_ximagesink_buffer_alloc):
* sys/xvimage/xvimagesink.c: (gst_xvimagesink_chain),
(gst_xvimagesink_buffer_free), (gst_xvimagesink_buffer_alloc):
Make it work with new buffer allocation system.
2009-05-15 23:35:05 +01:00
David Schleef
cdbd6a095a [MOVED FROM BAD] Merge CAPS branch
Original commit message from CVS:
Merge CAPS branch
2009-05-15 23:35:05 +01:00
Andy Wingo
5d8667c892 [MOVED FROM BAD] remove copyright field from plugins
Original commit message from CVS:
remove copyright field from plugins
2009-05-15 23:35:05 +01:00
Leif Johnson
e7542a5d6b [MOVED FROM BAD] + checking in plugin category changes
Original commit message from CVS:
+ checking in plugin category changes
2009-05-15 23:35:05 +01:00
Ronald S. Bultje
be73d84bd7 [MOVED FROM BAD] Remove all config.h includes from header files, add it to each source file and remove duplicate config.h includes fro...
Original commit message from CVS:
Remove all config.h includes from header files, add it to each source file and remove duplicate config.h includes from several source files
2009-05-15 23:35:05 +01:00
Benjamin Otte
721123c9f5 [MOVED FROM BAD] fix to new plugin system
Original commit message from CVS:
fix to new plugin system
2009-05-15 23:35:04 +01:00
Andy Wingo
2af5aa9cb1 [MOVED FROM BAD] /GstBuffer/GstData/ in the API where you can pass events. Fix the plugins to deal with that. Fixes #113488.
Original commit message from CVS:
/GstBuffer/GstData/ in the API where you can pass events. Fix the plugins to deal with that. Fixes #113488.
2009-05-15 23:35:04 +01:00
David Schleef
e4d8f0acd3 [MOVED FROM BAD] Remove redundant plugindir definition
Original commit message from CVS:
Remove redundant plugindir definition
2009-05-15 23:35:04 +01:00
Ronald S. Bultje
d487e15bb2 [MOVED FROM BAD] New mimetypes gone into effect today - this commit changes all old mimetypes over to the new mimetypes spec as descri...
Original commit message from CVS:
New mimetypes gone into effect today - this commit changes all old mimetypes over to the new mimetypes spec as described in the previous commit's document. Note: some plugins will break, some pipelines will break, expect HEAD to be broken or at least not 100% working for a few days, but don't forget to report bugs
2009-05-15 23:35:04 +01:00
Benjamin Otte
7a93c988fc [MOVED FROM BAD] compatibility fix for new GST_DEBUG stuff.
Original commit message from CVS:
compatibility fix for new GST_DEBUG stuff.
Includes fixes for missing includes for config.h and unistd.h

I only ensured for plugins I can build that they work, so if some of them are still broken, you gotta fix them yourselves unfortunately.
2009-05-15 23:35:04 +01:00
Thomas Vander Stichele
9d408bef9e [MOVED FROM BAD] PadConnect -> PadLink
Original commit message from CVS:
PadConnect -> PadLink
2009-05-15 23:35:04 +01:00
Thomas Vander Stichele
8fdd48d996 [MOVED FROM BAD] another batch of connect->link fixes please let me know about issues and please refrain of making them yourself, so t...
Original commit message from CVS:
another batch of connect->link fixes
please let me know about issues
and please refrain of making them yourself, so that I don't spend double
the time resolving conflicts
2009-05-15 23:35:04 +01:00
Thomas Vander Stichele
a22a0d423d [MOVED FROM BAD] parallel install fixes
Original commit message from CVS:
parallel install fixes
2009-05-15 23:35:04 +01:00
Christian Schaller
ad46cc2cb3 [MOVED FROM BAD] plugins part of license field patch
Original commit message from CVS:
plugins part of license field patch
2009-05-15 23:35:03 +01:00
Thomas Vander Stichele
713372d3b0 [MOVED FROM BAD] cosmetic change
Original commit message from CVS:
cosmetic change
2009-05-15 23:35:03 +01:00
Thomas Vander Stichele
2df30d532c [MOVED FROM BAD] various name fixes and sundry
Original commit message from CVS:
various name fixes and sundry
2009-05-15 23:35:03 +01:00
Andy Wingo
9c5643a2bd [MOVED FROM BAD] a hack to work around intltool's brokenness a current check for mpeg2dec details->klass reorganizations an element br...
Original commit message from CVS:
* a hack to work around intltool's brokenness
* a current check for mpeg2dec
* details->klass reorganizations
* an element browser that uses details->klass
* separated cdxa parse out from the avi directory
2009-05-15 23:35:03 +01:00
Andy Wingo
2bf59e140b [MOVED FROM BAD] GstPadTemplate <-> gst_pad_template <-> GST_PAD_TEMPLATE same with *factory and typefind.
Original commit message from CVS:
GstPadTemplate <-> gst_pad_template <-> GST_PAD_TEMPLATE

same with *factory and typefind.

also, some -Werror fixes.
2009-05-15 23:35:03 +01:00
Wim Taymans
e85ccbb36e [MOVED FROM BAD] Changed to the new props API
Original commit message from CVS:
Changed to the new props API
Other small tuff.
2009-05-15 23:35:03 +01:00
Andy Wingo
c1c956067f [MOVED FROM BAD] s/Gnome-Streamer/GStreamer/
Original commit message from CVS:
s/Gnome-Streamer/GStreamer/
2009-05-15 23:35:03 +01:00
Andy Wingo
10fb874e6d [MOVED FROM BAD] removal of //-style comments don't link plugins to core libs -- the versioning is done internally to the plugins with...
Original commit message from CVS:
* removal of //-style comments
* don't link plugins to core libs -- the versioning is done internally to the plugins with the plugin_info struct,
and symbol resolution is lazy, so we can always know if a plugin can be loaded by the plugin_info data. in theory.
2009-05-15 23:35:02 +01:00
Andy Wingo
a3763e5372 [MOVED FROM BAD] s/@GST_PLUGIN_LDFLAGS@/$(GST_PLUGIN_LDFLAGS)/ @-substitued variables variables are defined as make variables automagi...
Original commit message from CVS:
s/@GST_PLUGIN_LDFLAGS@/$(GST_PLUGIN_LDFLAGS)/

@-substitued variables variables are defined as make variables automagically,
and this gives the user the freedom to say make GST_PLUGIN_LDFLAGS=-myflag
2009-05-15 23:35:02 +01:00
Wrobell
ec6f70fa78 [MOVED FROM BAD] - plugins are built without versioning info
Original commit message from CVS:
- plugins are built without versioning info
2009-05-15 23:35:02 +01:00
Wim Taymans
c30b346245 [MOVED FROM BAD] Bring the plugins in sync with the new core capsnego system.
Original commit message from CVS:
Bring the plugins in sync with the new core capsnego system.
Added some features, enhancements...
2009-05-15 23:35:02 +01:00
David I. Lehn
888656c5b2 [MOVED FROM BAD] s/filter/plugin/ link plugins to GST_LIBS rearrange rules to a common format
Original commit message from CVS:
* s/filter/plugin/
* link plugins to GST_LIBS
* rearrange rules to a common format
2009-05-15 23:35:02 +01:00
Thomas Vander Stichele
fcfa27bfdf [MOVED FROM BAD] more fixes
Original commit message from CVS:
more fixes
2009-05-15 23:35:02 +01:00
Thomas Vander Stichele
56bff3790d [MOVED FROM BAD] BBB asked me to rename lav to y4m can someone who knows the plugin do this in the source as well ?
Original commit message from CVS:
BBB asked me to rename lav to y4m
can someone who knows the plugin do this in the source as well ?
2009-05-15 23:35:02 +01:00
Sebastian Dröge
ad9b02b881 deinterlace: If the upstream max latency is unbound return unbound max latency
Fixes bug #582661.
2009-05-15 15:14:52 +02:00
James Andrewartha
2410cd7a00 Fix compiler warnings
Fixes bug #582715.
2009-05-15 15:14:52 +02:00
Sebastian Dröge
43445935e8 Moved 'deinterlace2' from -bad to -good
And rename it to deinterlace.
2009-05-13 10:48:45 +02:00
Sebastian Dröge
77c15d10a0 [MOVED FROM BAD 56/56] deinterlace2: Add a disabled mode for passthrough operation
Also allow to change the mode in PAUSED and PLAYING by updating
the caps if necessary.
2009-05-13 10:34:05 +02:00
Sebastian Dröge
81dbc18eec [MOVED FROM BAD 55/56] deinterlace2: Add documentation and integrate into the build system 2009-05-13 10:34:05 +02:00
Sebastian Dröge
51689aaf23 [MOVED FROM BAD 54/56] deinterlace2: Make it possible to select interlacing autodetection or to enfore deinterlacing
For this add a "mode" property that defaults to "interlaced" for now as
most decoders/demuxers don't properly set the "interlaced" field on the
caps yet.

If this property is set to "auto" the element will work in passthrough
mode unless the caps contain the "interlaced" field.
2009-05-13 10:34:04 +02:00
Sebastian Dröge
769e39411d [MOVED FROM BAD 53/56] deinterlace2: Use GST_(DEBUG|WARNING|ERROR)_OBJECT instead of the non-OBJECT ones 2009-05-13 10:34:04 +02:00
Sebastian Dröge
1cd86e3aa6 [MOVED FROM BAD 52/56] deinterlace2: Reset history if DISCONT is set on the incoming buffer 2009-05-13 10:34:04 +02:00
Sebastian Dröge
1419d1cdda [MOVED FROM BAD 51/56] deinterlace2: Fix timestamps for buffers with RFF flag set 2009-05-13 10:34:04 +02:00
Sebastian Dröge
b9659ac68b [MOVED FROM BAD 50/56] deinterlace2: Rename line_length to row_stride and remove output_stride 2009-05-13 10:34:04 +02:00
Sebastian Dröge
3354937f05 [MOVED FROM BAD 49/56] deinterlace2: Implement support for RFF and ONEFIELD buffer flags 2009-05-13 10:34:03 +02:00
Sebastian Dröge
8020c8758b [MOVED FROM BAD 48/56] deinterlace2: Move output buffer from the instance struct to a function parameter 2009-05-13 10:34:03 +02:00
Sebastian Dröge
d28f09abf7 [MOVED FROM BAD 47/56] deinterlace2: Add initial support for automatic detection of the field order 2009-05-13 10:34:03 +02:00
Sebastian Dröge
1a7323d2d4 [MOVED FROM BAD 46/56] deinterlace2: Add support for YVYU colorspace
This is the same as YUY2 with just Cr and Cb swapped. As
we don't make a difference between them when deinterlacing
this works.
2009-05-13 10:34:03 +02:00
Wim Taymans
12933d6a65 [MOVED FROM BAD 45/56] gst/deinterlace2/gstdeinterlace2.c: Bring properties into this century.
Original commit message from CVS:
* gst/deinterlace2/gstdeinterlace2.c:
(gst_deinterlace2_class_init), (gst_deinterlace2_init),
(gst_deinterlace2_set_property), (gst_deinterlace2_get_property):
Bring properties into this century.
2009-05-13 10:34:02 +02:00
Stefan Kost
cc4d2668b1 [MOVED FROM BAD 44/56] 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-05-13 10:34:02 +02:00
Sebastian Dröge
bc8c8515f8 [MOVED FROM BAD 43/56] gst/deinterlace2/tvtime/tomsmocomp.c: Fix unused variable compiler warning when not building
Original commit message from CVS:
* gst/deinterlace2/tvtime/tomsmocomp.c:
(gst_deinterlace_method_tomsmocomp_class_init):
Fix unused variable compiler warning when not building
X86 assembly.
2009-05-13 10:34:02 +02:00
Jan Schmidt
9f5220d44e [MOVED FROM BAD 42/56] gst/dccp/: Fix compilation on Solaris by including filio.h as needed.
Original commit message from CVS:
* gst/dccp/gstdccp.c:
* gst/dccp/gstdccpclientsrc.c:
Fix compilation on Solaris by including filio.h as needed.
* gst/deinterlace2/tvtime/tomsmocomp/TomsMoCompAll.inc:
* gst/deinterlace2/tvtime/tomsmocomp/TomsMoCompAll2.inc:
Fix compilation with Forte - apparently it hates concatenating a
macro argument that starts with an underscore??
2009-05-13 10:34:02 +02:00
Sebastian Dröge
4b0fab491c [MOVED FROM BAD 41/56] gst/deinterlace2/tvtime/tomsmocomp/: Unroll the loop to handle two bytes at once. This should give a small speedup an...
Original commit message from CVS:
* gst/deinterlace2/tvtime/tomsmocomp/SearchLoopBottom.inc:
* gst/deinterlace2/tvtime/tomsmocomp/SearchLoopTop.inc:
* gst/deinterlace2/tvtime/tomsmocomp/StrangeBob.inc:
* gst/deinterlace2/tvtime/tomsmocomp/WierdBob.inc:
Unroll the loop to handle two bytes at once. This should give
a small speedup and makes it possible to handle chroma and luma
different which is needed later.
2009-05-13 10:34:02 +02:00
Sebastian Dröge
01b5f8ed56 [MOVED FROM BAD 40/56] gst/deinterlace2/: First part of the C implementation of the tomsmocomp deinterlacing algorithm. This only supports s...
Original commit message from CVS:
* gst/deinterlace2/gstdeinterlace2.c:
(gst_deinterlace_method_class_init):
* gst/deinterlace2/gstdeinterlace2.h:
* gst/deinterlace2/tvtime/tomsmocomp.c:
(gst_deinterlace_method_tomsmocomp_class_init):
* gst/deinterlace2/tvtime/tomsmocomp/SearchLoopBottom.inc:
* gst/deinterlace2/tvtime/tomsmocomp/SearchLoopTop.inc:
* gst/deinterlace2/tvtime/tomsmocomp/StrangeBob.inc:
* gst/deinterlace2/tvtime/tomsmocomp/TomsMoCompAll.inc:
* gst/deinterlace2/tvtime/tomsmocomp/TomsMoCompAll2.inc:
* gst/deinterlace2/tvtime/tomsmocomp/WierdBob.inc:
* gst/deinterlace2/tvtime/tomsmocomp/tomsmocompmacros.h:
First part of the C implementation of the tomsmocomp deinterlacing
algorithm. This only supports search-effort=0 currently, is painfully
slow and needs some cleanup later when all search-effort settings
are implemented in C.
2009-05-13 10:34:02 +02:00
Sebastian Dröge
50e0bcebdb [MOVED FROM BAD 39/56] gst/deinterlace2/: Use oil_memcpy() instead of memcpy() as it's faster for the sizes that are usually used here.
Original commit message from CVS:
* gst/deinterlace2/gstdeinterlace2.c:
(gst_deinterlace_simple_method_interpolate_scanline),
(gst_deinterlace_simple_method_copy_scanline),
(gst_deinterlace_simple_method_deinterlace_frame):
* gst/deinterlace2/tvtime/greedy.c: (deinterlace_frame_di_greedy):
* gst/deinterlace2/tvtime/greedyh.c:
(deinterlace_frame_di_greedyh):
* gst/deinterlace2/tvtime/scalerbob.c:
(deinterlace_scanline_scaler_bob):
* gst/deinterlace2/tvtime/tomsmocomp.c: (Fieldcopy):
* gst/deinterlace2/tvtime/weave.c: (deinterlace_scanline_weave),
(copy_scanline):
* gst/deinterlace2/tvtime/weavebff.c: (deinterlace_scanline_weave),
(copy_scanline):
* gst/deinterlace2/tvtime/weavetff.c: (deinterlace_scanline_weave),
(copy_scanline):
Use oil_memcpy() instead of memcpy() as it's faster for the sizes that
are usually used here.
2009-05-13 10:34:01 +02:00
Sebastian Dröge
71185cf5c3 [MOVED FROM BAD 38/56] gst/deinterlace2/: Add the remaining tvtime deinterlacing methods and fix the deinterlace_frame() implementation of G...
Original commit message from CVS:
* gst/deinterlace2/Makefile.am:
* gst/deinterlace2/gstdeinterlace2.c:
(gst_deinterlace_simple_method_deinterlace_frame),
(gst_deinterlace2_methods_get_type), (gst_deinterlace2_set_method):
* gst/deinterlace2/gstdeinterlace2.h:
* gst/deinterlace2/tvtime/linear.c:
(deinterlace_scanline_linear_c), (deinterlace_scanline_linear_mmx),
(deinterlace_scanline_linear_mmxext),
(gst_deinterlace_method_linear_class_init),
(gst_deinterlace_method_linear_init):
* gst/deinterlace2/tvtime/linearblend.c:
(deinterlace_scanline_linear_blend_c),
(deinterlace_scanline_linear_blend2_c),
(deinterlace_scanline_linear_blend_mmx),
(deinterlace_scanline_linear_blend2_mmx),
(gst_deinterlace_method_linear_blend_class_init),
(gst_deinterlace_method_linear_blend_init):
* gst/deinterlace2/tvtime/plugins.h:
* gst/deinterlace2/tvtime/scalerbob.c:
(deinterlace_scanline_scaler_bob),
(gst_deinterlace_method_scaler_bob_class_init),
(gst_deinterlace_method_scaler_bob_init):
* gst/deinterlace2/tvtime/weave.c: (deinterlace_scanline_weave),
(copy_scanline), (gst_deinterlace_method_weave_class_init),
(gst_deinterlace_method_weave_init):
* gst/deinterlace2/tvtime/weavebff.c: (deinterlace_scanline_weave),
(copy_scanline), (gst_deinterlace_method_weave_bff_class_init),
(gst_deinterlace_method_weave_bff_init):
* gst/deinterlace2/tvtime/weavetff.c: (deinterlace_scanline_weave),
(copy_scanline), (gst_deinterlace_method_weave_tff_class_init),
(gst_deinterlace_method_weave_tff_init):
Add the remaining tvtime deinterlacing methods and fix the
deinterlace_frame() implementation of GstDeinterlaceSimpleMethod.
2009-05-13 10:34:01 +02:00
Sebastian Dröge
fe3f7b7409 [MOVED FROM BAD 37/56] gst/deinterlace2/tvtime/vfir.c: Implement the VFIR deinterlacing method as simple method.
Original commit message from CVS:
* gst/deinterlace2/tvtime/vfir.c: (deinterlace_line_c),
(deinterlace_line_mmx), (gst_deinterlace_method_vfir_class_init):
Implement the VFIR deinterlacing method as simple method.
2009-05-13 10:34:01 +02:00
Sebastian Dröge
2403fa4e4c [MOVED FROM BAD 36/56] gst/deinterlace2/gstdeinterlace2.*: Add a GstDeinterlaceSimpleMethod subclass of GstDeinterlaceMethod that can be use...
Original commit message from CVS:
* gst/deinterlace2/gstdeinterlace2.c:
(gst_deinterlace_simple_method_interpolate_scanline),
(gst_deinterlace_simple_method_copy_scanline),
(gst_deinterlace_simple_method_deinterlace_frame),
(gst_deinterlace_simple_method_class_init),
(gst_deinterlace_simple_method_init):
* gst/deinterlace2/gstdeinterlace2.h:
Add a GstDeinterlaceSimpleMethod subclass of GstDeinterlaceMethod that
can be used by simple deinterlacing methods. They only have to provide
a function for interpolating a scanline or copying a scanline.
2009-05-13 10:34:01 +02:00
Sebastian Dröge
720506a499 [MOVED FROM BAD 35/56] gst/deinterlace2/gstdeinterlace2.c: Respect the latency of the deinterlacing algorithm for the timestamps of every bu...
Original commit message from CVS:
* gst/deinterlace2/gstdeinterlace2.c: (gst_deinterlace2_chain):
Respect the latency of the deinterlacing algorithm for the timestamps
of every buffer.
2009-05-13 10:34:01 +02:00
Sebastian Dröge
fba3f4d3f2 [MOVED FROM BAD 34/56] gst/deinterlace2/tvtime/: Add the MMX registers to the clobbered registers only if __MMX__ is defined.
Original commit message from CVS:
* gst/deinterlace2/tvtime/greedyh.asm:
* gst/deinterlace2/tvtime/tomsmocomp/SearchLoopBottom.inc:
Add the MMX registers to the clobbered registers only if __MMX__ is
defined.
2009-05-13 10:34:00 +02:00
Sebastian Dröge
95d12cbca9 [MOVED FROM BAD 33/56] gst/deinterlace2/: Enable tomsmocomp again as the C port will be ready for the next release.
Original commit message from CVS:
* gst/deinterlace2/Makefile.am:
* gst/deinterlace2/gstdeinterlace2.c:
(gst_deinterlace2_methods_get_type), (gst_deinterlace2_set_method),
(gst_deinterlace2_class_init):
Enable tomsmocomp again as the C port will be ready for the next
release.
2009-05-13 10:34:00 +02:00
Sebastian Dröge
060ba0ede1 [MOVED FROM BAD 32/56] gst/deinterlace2/gstdeinterlace2.c: Don't use proxy_getcaps() but implement our own getcaps() function that doubles/h...
Original commit message from CVS:
* gst/deinterlace2/gstdeinterlace2.c: (gst_deinterlace2_init),
(gst_greatest_common_divisor), (gst_fraction_double),
(gst_deinterlace2_getcaps), (gst_deinterlace2_setcaps):
Don't use proxy_getcaps() but implement our own getcaps() function
that doubles/halfs the framerate if all fields should be sent out.
2009-05-13 10:34:00 +02:00
Sebastian Dröge
fdd3d27274 [MOVED FROM BAD 31/56] Disable the tomsmocomp algorithm for this release as it's buggy and has no C implementation yet.
Original commit message from CVS:
* configure.ac:
* gst/deinterlace2/Makefile.am:
* gst/deinterlace2/gstdeinterlace2.c:
(gst_deinterlace2_methods_get_type), (gst_deinterlace2_set_method),
(gst_deinterlace2_class_init), (gst_deinterlace2_init):
* gst/deinterlace2/gstdeinterlace2.h:
* gst/deinterlace2/tvtime/greedy.c:
(gst_deinterlace_method_greedy_l_class_init):
* gst/deinterlace2/tvtime/greedyh.c:
(gst_deinterlace_method_greedy_h_class_init):
* gst/deinterlace2/tvtime/vfir.c:
(gst_deinterlace_method_vfir_class_init):
Disable the tomsmocomp algorithm for this release as it's buggy
and has no C implementation yet.
Build the deinterlace2 plugin on all architectures but still mark it
as experimental.
Build the x86 inline assembly only if GCC inline assembly is supported
and only on x86 or amd64. Fixes bug #543286.
2009-05-13 10:34:00 +02:00
Edward Hervey
74aedd0723 [MOVED FROM BAD 30/56] gst/deinterlace2/tvtime/: Fix build on x86_64
Original commit message from CVS:
* gst/deinterlace2/tvtime/greedy.c:
(gst_deinterlace_method_greedy_l_class_init):
* gst/deinterlace2/tvtime/greedyh.c:
(gst_deinterlace_method_greedy_h_class_init):
* gst/deinterlace2/tvtime/vfir.c:
(gst_deinterlace_method_vfir_class_init):
Fix build on x86_64
2009-05-13 10:34:00 +02:00
Sebastian Dröge
239face769 [MOVED FROM BAD 29/56] gst/deinterlace2/tvtime/greedyh.asm: Always use the C implementation if width is not a multiple of 4. The assembly op...
Original commit message from CVS:
* gst/deinterlace2/tvtime/greedyh.asm:
Always use the C implementation if width is not a multiple of 4. The
assembly optimized version only handle this and calling the C
implementation for the remaining part doesn't work because it needs
previous calculations.
2009-05-13 10:34:00 +02:00
Sebastian Dröge
868975cfac [MOVED FROM BAD 28/56] gst/deinterlace2/tvtime/: Some cleanup, use 3DNOW instead of TDNOW in macros.
Original commit message from CVS:
* gst/deinterlace2/tvtime/greedyh.asm:
* gst/deinterlace2/tvtime/greedyh.c:
* gst/deinterlace2/tvtime/greedyhmacros.h:
Some cleanup, use 3DNOW instead of TDNOW in macros.
* gst/deinterlace2/tvtime/tomsmocomp.c:
(gst_deinterlace_method_tomsmocomp_class_init):
* gst/deinterlace2/tvtime/tomsmocomp/TomsMoCompAll.inc:
* gst/deinterlace2/tvtime/tomsmocomp/tomsmocompmacros.h:
The SSE method in fact only needs MMXEXT, declare it as such.
2009-05-13 10:34:00 +02:00
Sebastian Dröge
311a1d2cd3 [MOVED FROM BAD 27/56] Don't use declarations after statements in the remaining code.
Original commit message from CVS:
* ext/spc/gstspc.c: (spc_setup):
* gst/deinterlace2/tvtime/tomsmocomp/SearchLoopTop.inc:
Don't use declarations after statements in the remaining code.
2009-05-13 10:33:59 +02:00
Sebastian Dröge
e6c4d268fa [MOVED FROM BAD 26/56] gst/deinterlace2/tvtime/tomsmocomp/TomsMoCompAll2.inc: Mark internal processing functions as static inline for quite ...
Original commit message from CVS:
* gst/deinterlace2/tvtime/tomsmocomp/TomsMoCompAll2.inc:
Mark internal processing functions as static inline for quite some
speedup as they're used only once and need to get many local variables
passed as parameter.
2009-05-13 10:33:59 +02:00
Sebastian Dröge
0b3fb30381 [MOVED FROM BAD 25/56] gst/deinterlace2/gstdeinterlace2.*: Call the current instance "self" instead of "object".
Original commit message from CVS:
* gst/deinterlace2/gstdeinterlace2.c:
(gst_deinterlace_method_deinterlace_frame),
(gst_deinterlace2_set_method), (gst_deinterlace2_init),
(gst_deinterlace2_reset_history), (gst_deinterlace2_reset),
(gst_deinterlace2_set_property), (gst_deinterlace2_get_property),
(gst_deinterlace2_pop_history), (gst_deinterlace2_head_history),
(gst_deinterlace2_push_history), (gst_deinterlace2_chain),
(gst_deinterlace2_setcaps), (gst_deinterlace2_sink_event),
(gst_deinterlace2_change_state), (gst_deinterlace2_src_event),
(gst_deinterlace2_src_query):
* gst/deinterlace2/gstdeinterlace2.h:
Call the current instance "self" instead of "object".
2009-05-13 10:33:59 +02:00
Sebastian Dröge
0b9cd418b3 [MOVED FROM BAD 24/56] gst/deinterlace2/gstdeinterlace2.*: Include latency of the method in the returned latency.
Original commit message from CVS:
* gst/deinterlace2/gstdeinterlace2.c:
(gst_deinterlace_method_get_latency),
(gst_deinterlace2_set_method), (gst_deinterlace2_class_init),
(gst_deinterlace2_push_history), (gst_deinterlace2_chain),
(gst_deinterlace2_setcaps), (gst_deinterlace2_src_query):
* gst/deinterlace2/gstdeinterlace2.h:
Include latency of the method in the returned latency.
Fix outputting of all fields, i.e. doubling of the framerate.
2009-05-13 10:33:59 +02:00
Sebastian Dröge
fb7f06ad04 [MOVED FROM BAD 23/56] gst/deinterlace2/: Use a GstObject subtype for the deinterlacing methods and export the different settings for each d...
Original commit message from CVS:
* gst/deinterlace2/Makefile.am:
* gst/deinterlace2/gstdeinterlace2.c:
(gst_deinterlace_method_class_init), (gst_deinterlace_method_init),
(gst_deinterlace_method_deinterlace_frame),
(gst_deinterlace_method_get_fields_required),
(gst_deinterlace2_methods_get_type), (_do_init),
(gst_deinterlace2_set_method), (gst_deinterlace2_class_init),
(gst_deinterlace2_child_proxy_get_child_by_index),
(gst_deinterlace2_child_proxy_get_children_count),
(gst_deinterlace2_child_proxy_interface_init),
(gst_deinterlace2_init), (gst_deinterlace2_finalize),
(gst_deinterlace2_chain), (gst_deinterlace2_src_query):
* gst/deinterlace2/gstdeinterlace2.h:
* gst/deinterlace2/tvtime/greedy.c:
(deinterlace_greedy_packed422_scanline_c),
(deinterlace_greedy_packed422_scanline_mmx),
(deinterlace_greedy_packed422_scanline_mmxext),
(deinterlace_frame_di_greedy),
(gst_deinterlace_method_greedy_l_set_property),
(gst_deinterlace_method_greedy_l_get_property),
(gst_deinterlace_method_greedy_l_class_init),
(gst_deinterlace_method_greedy_l_init):
* gst/deinterlace2/tvtime/greedyh.asm:
* gst/deinterlace2/tvtime/greedyh.c: (greedyDScaler_C),
(deinterlace_frame_di_greedyh),
(gst_deinterlace_method_greedy_h_set_property),
(gst_deinterlace_method_greedy_h_get_property),
(gst_deinterlace_method_greedy_h_class_init),
(gst_deinterlace_method_greedy_h_init):
* gst/deinterlace2/tvtime/greedyh.h:
* gst/deinterlace2/tvtime/plugins.h:
* gst/deinterlace2/tvtime/tomsmocomp.c:
(gst_deinterlace_method_tomsmocomp_set_property),
(gst_deinterlace_method_tomsmocomp_get_property),
(gst_deinterlace_method_tomsmocomp_class_init),
(gst_deinterlace_method_tomsmocomp_init):
* gst/deinterlace2/tvtime/tomsmocomp.h:
* gst/deinterlace2/tvtime/tomsmocomp/TomsMoCompAll.inc:
* gst/deinterlace2/tvtime/vfir.c: (deinterlace_frame_vfir),
(gst_deinterlace_method_vfir_class_init),
(gst_deinterlace_method_vfir_init):
Use a GstObject subtype for the deinterlacing methods and export
the different settings for each deinterlacing method via GObject
properties.
Implement GstChildProxy interface to allow access to the used
deinterlacing method and to allow adjusting the different settings.
Move global variables of the tomsmocomp deinterlacing method into
function local variables to make it possible to use this deinterlacing
method from different instances.
2009-05-13 10:33:59 +02:00
Sebastian Dröge
e5231e5641 [MOVED FROM BAD 22/56] gst/deinterlace2/tvtime/greedyh.asm: Support widths that are not a multiply of 4 when using the assembly optimized gr...
Original commit message from CVS:
* gst/deinterlace2/tvtime/greedyh.asm:
Support widths that are not a multiply of 4 when using the assembly
optimized greedyh implementations.
2009-05-13 10:33:58 +02:00
Sebastian Dröge
fe02b1242c [MOVED FROM BAD 21/56] gst/deinterlace2/tvtime/greedyh.c: Only build the assembly optimized implementations on x86.
Original commit message from CVS:
* gst/deinterlace2/tvtime/greedyh.c:
(deinterlace_frame_di_greedyh):
Only build the assembly optimized implementations on x86.
2009-05-13 10:33:58 +02:00
Sebastian Dröge
edf1f9b4a3 [MOVED FROM BAD 20/56] gst/deinterlace2/: Remove useless file and mark everything possible as static.
Original commit message from CVS:
* gst/deinterlace2/Makefile.am:
* gst/deinterlace2/tvtime/tomsmocomp.c: (tomsmocomp_init),
(tomsmocomp_filter_mmx), (tomsmocomp_filter_3dnow),
(tomsmocomp_filter_sse), (deinterlace_frame_di_tomsmocomp):
* gst/deinterlace2/tvtime/tomsmocomp.h:
Remove useless file and mark everything possible as static.
* gst/deinterlace2/tvtime/greedy.c:
* gst/deinterlace2/tvtime/greedyh.c:
Use "_stdint.h" instead of <stdint.h>.
2009-05-13 10:33:58 +02:00
Sebastian Dröge
b65e20f305 [MOVED FROM BAD 19/56] gst/deinterlace2/: Get rid of speedy.[ch] as we don't use most of it's code anyway and it doesn't seem to be relicens...
Original commit message from CVS:
* gst/deinterlace2/Makefile.am:
* gst/deinterlace2/gstdeinterlace2.c: (gst_deinterlace2_init):
* gst/deinterlace2/tvtime/greedy.c: (deinterlace_frame_di_greedy):
* gst/deinterlace2/tvtime/greedyh.c:
(deinterlace_frame_di_greedyh):
* gst/deinterlace2/tvtime/speedtools.h:
* gst/deinterlace2/tvtime/speedy.c:
* gst/deinterlace2/tvtime/speedy.h:
* gst/deinterlace2/tvtime/tomsmocomp.c: (Fieldcopy):
* gst/deinterlace2/tvtime/tomsmocomp/TomsMoCompAll.inc:
* gst/deinterlace2/tvtime/vfir.c: (deinterlace_frame_vfir):
Get rid of speedy.[ch] as we don't use most of it's code anyway
and it doesn't seem to be relicensed to LGPL. Use memcpy() instead
of the speedy memcpy everywhere instead.
* gst/deinterlace2/gstdeinterlace2.h:
Remove many unused declarations.
2009-05-13 10:33:58 +02:00
Sebastian Dröge
8f588978a0 [MOVED FROM BAD 18/56] gst/deinterlace2/gstdeinterlace2.c: Divide latency be 2 to convert from fields to frames.
Original commit message from CVS:
* gst/deinterlace2/gstdeinterlace2.c: (gst_deinterlace2_src_query):
Divide latency be 2 to convert from fields to frames.
2009-05-13 10:33:58 +02:00
Sebastian Dröge
ee8327b925 [MOVED FROM BAD 17/56] gst/deinterlace2/tvtime/greedy.c: Don't use scanlines function from gstdeinterlace2 as it's not appropiate for this m...
Original commit message from CVS:
* gst/deinterlace2/tvtime/greedy.c:
(deinterlace_greedy_packed422_scanline_c),
(deinterlace_greedy_packed422_scanline_mmx),
(deinterlace_greedy_packed422_scanline_mmxext),
(deinterlace_frame_di_greedy):
Don't use scanlines function from gstdeinterlace2 as it's
not appropiate for this method. Instead implement deinterlace_frame
function by taking the one from greedyh.
* gst/deinterlace2/tvtime/greedyh.c: (greedyDScaler_C):
Small fix for the C implementation.
* gst/deinterlace2/tvtime/vfir.c: (deinterlace_frame_vfir):
Don't use the scanlines function from gstdeinterlace2 as it's only
used for this method and will be removed. Instead implement
deinterlace_frame function and make it a bit more efficient.
* gst/deinterlace2/gstdeinterlace2.c:
(gst_deinterlace2_class_init), (gst_deinterlace2_set_method),
(gst_deinterlace2_push_history), (gst_deinterlace2_chain),
(gst_deinterlace2_setcaps), (gst_deinterlace2_sink_event),
(gst_deinterlace2_change_state), (gst_deinterlace2_src_event),
(gst_deinterlace2_src_query):
Fix coding style and remove scanlines function as it's unused now.
2009-05-13 10:33:58 +02:00
Sebastian Dröge
57dd0e85d1 [MOVED FROM BAD 16/56] gst/deinterlace2/tvtime/: Add a C implementation for the greedyh deinterlacing method, clean up the code a bit and ma...
Original commit message from CVS:
* gst/deinterlace2/tvtime/greedyh.asm:
* gst/deinterlace2/tvtime/greedyh.c: (greedyDScaler_C),
(deinterlace_frame_di_greedyh), (dscaler_greedyh_get_method):
* gst/deinterlace2/tvtime/greedyhmacros.h:
Add a C implementation for the greedyh deinterlacing method, clean
up the code a bit and mark the SSE version as MMXEXT as it doesn't
require any SSE instructions.
2009-05-13 10:33:58 +02:00
Sebastian Dröge
07f408a3ea [MOVED FROM BAD 15/56] gst/deinterlace2/gstdeinterlace2.c: If we're outputting all fields the framerate has to be doubled.
Original commit message from CVS:
* gst/deinterlace2/gstdeinterlace2.c:
(gst_deinterlace2_set_property), (gst_deinterlace2_chain),
(gst_deinterlace2_setcaps):
If we're outputting all fields the framerate has to be doubled.
Set duration on the outgoing buffers.
2009-05-13 10:33:57 +02:00
Edward Hervey
75bb2fcba8 [MOVED FROM BAD 14/56] gst/deinterlace2/tvtime/tomsmocomp/tomsmocompmacros.h: Remove unneeded macros that break build on macosx.
Original commit message from CVS:
* gst/deinterlace2/tvtime/tomsmocomp/tomsmocompmacros.h:
Remove unneeded macros that break build on macosx.
2009-05-13 10:33:57 +02:00
Sebastian Dröge
229f6a379b [MOVED FROM BAD 13/56] gst/deinterlace2/tvtime/greedy.c: Optimize MMX/MMXEXT implementations a bit by requiring two less memory accesses and...
Original commit message from CVS:
* gst/deinterlace2/tvtime/greedy.c:
(deinterlace_greedy_packed422_scanline_mmx),
(deinterlace_greedy_packed422_scanline_mmxext):
Optimize MMX/MMXEXT implementations a bit by requiring two less
memory accesses and fix the workaround for the missing right shift
on bytes to unset the highest bit of every byte.
2009-05-13 10:33:57 +02:00
Sebastian Dröge
72f7b15739 [MOVED FROM BAD 12/56] gst/deinterlace2/tvtime/greedy.c: Remove sfence instruction as it's not needed and actually is an SSE instruction.
Original commit message from CVS:
* gst/deinterlace2/tvtime/greedy.c:
(deinterlace_greedy_packed422_scanline_mmxext):
Remove sfence instruction as it's not needed and actually is an SSE
instruction.
2009-05-13 10:33:57 +02:00
Sebastian Dröge
df1798ddf9 [MOVED FROM BAD 11/56] gst/deinterlace2/tvtime/greedy.c: Add plain MMX implementation for the greedyl method.
Original commit message from CVS:
* gst/deinterlace2/tvtime/greedy.c:
(deinterlace_greedy_packed422_scanline_mmx),
(deinterlace_greedy_packed422_scanline):
Add plain MMX implementation for the greedyl method.
2009-05-13 10:33:57 +02:00
Sebastian Dröge
bd35b53558 [MOVED FROM BAD 10/56] gst/deinterlace2/Makefile.am: Move the assembly includes to noinst_HEADERS where they belong.
Original commit message from CVS:
* gst/deinterlace2/Makefile.am:
Move the assembly includes to noinst_HEADERS where they belong.
* gst/deinterlace2/tvtime/vfir.c: (deinterlace_line_c),
(deinterlace_line_mmx):
Fix C and MMX implementations a bit more.
2009-05-13 10:33:56 +02:00
Sebastian Dröge
1916a3b075 [MOVED FROM BAD 09/56] gst/deinterlace2/tvtime/greedy.c: Fix the C implementation to produce correct results and optimize the
Original commit message from CVS:
* gst/deinterlace2/tvtime/greedy.c:
(deinterlace_greedy_packed422_scanline_c),
(deinterlace_greedy_packed422_scanline_mmxext),
(deinterlace_greedy_packed422_scanline):
Fix the C implementation to produce correct results and optimize the
MMXEXT implementation.
Handle odd widths and don't read over array boundaries in the MMXEXT
implementation.
* gst/deinterlace2/tvtime/vfir.c: (deinterlace_line_c),
(deinterlace_line_mmx), (deinterlace_scanline_vfir):
Fix a small rounding bug in the MMX implementation, the MMX
implementation doesn't actually need MMXEXT instructions so don't mark
it as such.
Handle odd widths in both implementations.
2009-05-13 10:33:56 +02:00
Sebastian Dröge
98eddc859f [MOVED FROM BAD 08/56] gst/deinterlace2/tvtime/greedy.c: Implement a C version of the greedy low motion algorithm and mark the assembly opti...
Original commit message from CVS:
* gst/deinterlace2/tvtime/greedy.c:
(deinterlace_greedy_packed422_scanline_sse),
(deinterlace_greedy_packed422_scanline_c),
(deinterlace_greedy_packed422_scanline):
Implement a C version of the greedy low motion algorithm and mark the
assembly optimized version as SSE as it uses SSE instructions
additional to MMX instructions.
2009-05-13 10:33:56 +02:00
Sebastian Dröge
6cc147c5d9 [MOVED FROM BAD 07/56] gst/deinterlace2/tvtime/vfir.c: Make it possible to use the vfir method on X86 CPUs without MMXEXT too but use the MM...
Original commit message from CVS:
* gst/deinterlace2/tvtime/vfir.c: (deinterlace_line_mmxext),
(deinterlace_line_c), (deinterlace_scanline_vfir):
Make it possible to use the vfir method on X86 CPUs without MMXEXT too
but use the MMXEXT optimized code whenever possible.
2009-05-13 10:33:56 +02:00
Sebastian Dröge
e094cde977 [MOVED FROM BAD 06/56] gst/deinterlace2/gstdeinterlace2.*: Reset element state on PAUSED->READY properly, don't leak any buffers when finali...
Original commit message from CVS:
* gst/deinterlace2/gstdeinterlace2.c:
(gst_deinterlace2_class_init), (gst_deinterlace2_init),
(gst_deinterlace2_reset_history), (gst_deinterlace2_reset),
(gst_deinterlace2_finalize), (gst_deinterlace2_chain),
(gst_deinterlace2_sink_event), (gst_deinterlace2_change_state),
(gst_deinterlace2_src_query):
* gst/deinterlace2/gstdeinterlace2.h:
Reset element state on PAUSED->READY properly, don't leak any buffers
when finalizing, allocate buffers with gst_pad_alloc_buffer() and
properly return flow returns from gst_pad_push() instead of ignoring them.
2009-05-13 10:33:56 +02:00
Sebastian Dröge
478f17052f [MOVED FROM BAD 05/56] gst/deinterlace2/tvtime/tomsmocomp/tomsmocompmacros.h: Add missing header.
Original commit message from CVS:
* gst/deinterlace2/tvtime/tomsmocomp/tomsmocompmacros.h:
Add missing header.
2009-05-13 10:33:55 +02:00
Sebastian Dröge
8a90334f9e [MOVED FROM BAD 04/56] Fix compilation on generic x86/amd64 and include deinterlace2 in the build system. Because of several bugs it's still...
Original commit message from CVS:
* configure.ac:
* gst/deinterlace2/Makefile.am:
* gst/deinterlace2/tvtime/greedyh.asm:
* gst/deinterlace2/tvtime/tomsmocomp/SearchLoopBottom.inc:
Fix compilation on generic x86/amd64 and include deinterlace2 in the
build system. Because of several bugs it's still enabled only
by --enable-experimental.
2009-05-13 10:33:55 +02:00
Stefan Kost
9082a429fb [MOVED FROM BAD 03/56] Fix gtk-doc warnings. Also don't misuse api-doc comments for normal comments.
Original commit message from CVS:
* docs/plugins/gst-plugins-bad-plugins-sections.txt:
* examples/app/appsrc-ra.c:
* examples/app/appsrc-seekable.c:
* examples/app/appsrc-stream.c:
* examples/app/appsrc-stream2.c:
* ext/directfb/dfbvideosink.h:
* ext/metadata/gstbasemetadata.c:
* ext/metadata/gstbasemetadata.h:
* ext/metadata/metadata.c:
* ext/metadata/metadataexif.c:
* ext/theora/theoradec.h:
* gst/deinterlace2/gstdeinterlace2.h:
* gst/deinterlace2/tvtime/speedy.c:
* gst/deinterlace2/tvtime/speedy.h:
* gst/deinterlace2/tvtime/vfir.c:
Fix gtk-doc warnings. Also don't misuse api-doc comments for normal
comments.
2009-05-13 10:33:55 +02:00
Martin Eikermann
5799a93389 [MOVED FROM BAD 02/56] gst/deinterlace2/: Add a deinterlacer plugin based on the tvtime/DScaler deinterlacer, which was relicensed to LGPL f...
Original commit message from CVS:
Based on a patch by: Martin Eikermann <meiker at upb dot de>
* gst/deinterlace2/Makefile.am:
* gst/deinterlace2/gstdeinterlace2.c:
(gst_deinterlace2_method_get_type),
(gst_deinterlace2_fields_get_type),
(gst_deinterlace2_field_layout_get_type),
(gst_deinterlace2_base_init), (gst_deinterlace2_class_init),
(gst_deinterlace2_init), (gst_deinterlace2_set_method),
(gst_deinterlace2_set_property), (gst_deinterlace2_get_property),
(gst_deinterlace2_finalize), (gst_deinterlace2_pop_history),
(gst_deinterlace2_head_history), (gst_deinterlace2_push_history),
(gst_deinterlace2_deinterlace_scanlines), (gst_deinterlace2_chain),
(gst_deinterlace2_setcaps), (gst_deinterlace2_sink_event),
(gst_deinterlace2_change_state), (gst_deinterlace2_src_event),
(gst_deinterlace2_src_query), (gst_deinterlace2_src_query_types),
(plugin_init):
* gst/deinterlace2/gstdeinterlace2.h:
* gst/deinterlace2/tvtime/greedy.c: (copy_scanline),
(deinterlace_greedy_packed422_scanline_mmxext),
(dscaler_greedyl_get_method):
* gst/deinterlace2/tvtime/greedyh.asm:
* gst/deinterlace2/tvtime/greedyh.c:
(deinterlace_frame_di_greedyh), (dscaler_greedyh_get_method),
(greedyh_init), (greedyh_filter_mmx), (greedyh_filter_3dnow),
(greedyh_filter_sse):
* gst/deinterlace2/tvtime/greedyh.h:
* gst/deinterlace2/tvtime/greedyhmacros.h:
* gst/deinterlace2/tvtime/mmx.h:
* gst/deinterlace2/tvtime/plugins.h:
* gst/deinterlace2/tvtime/speedtools.h:
* gst/deinterlace2/tvtime/speedy.c: (multiply_alpha), (clip255),
(comb_factor_packed422_scanline_mmx),
(diff_factor_packed422_scanline_c),
(diff_factor_packed422_scanline_mmx),
(diff_packed422_block8x8_mmx), (diff_packed422_block8x8_c),
(packed444_to_packed422_scanline_c),
(packed422_to_packed444_scanline_c),
(packed422_to_packed444_rec601_scanline_c),
(vfilter_chroma_121_packed422_scanline_mmx),
(vfilter_chroma_121_packed422_scanline_c),
(vfilter_chroma_332_packed422_scanline_mmx),
(vfilter_chroma_332_packed422_scanline_c),
(kill_chroma_packed422_inplace_scanline_mmx),
(kill_chroma_packed422_inplace_scanline_c),
(invert_colour_packed422_inplace_scanline_mmx),
(invert_colour_packed422_inplace_scanline_c),
(mirror_packed422_inplace_scanline_c),
(interpolate_packed422_scanline_c),
(convert_uyvy_to_yuyv_scanline_mmx),
(convert_uyvy_to_yuyv_scanline_c),
(interpolate_packed422_scanline_mmx),
(interpolate_packed422_scanline_mmxext),
(blit_colour_packed422_scanline_c),
(blit_colour_packed422_scanline_mmx),
(blit_colour_packed422_scanline_mmxext),
(blit_colour_packed4444_scanline_c),
(blit_colour_packed4444_scanline_mmx),
(blit_colour_packed4444_scanline_mmxext), (small_memcpy),
(speedy_memcpy_c), (speedy_memcpy_mmx), (speedy_memcpy_mmxext),
(blit_packed422_scanline_c), (blit_packed422_scanline_mmx),
(blit_packed422_scanline_mmxext),
(composite_colour4444_alpha_to_packed422_scanline_c),
(composite_colour4444_alpha_to_packed422_scanline_mmxext),
(composite_packed4444_alpha_to_packed422_scanline_c),
(composite_packed4444_alpha_to_packed422_scanline_mmxext),
(composite_packed4444_to_packed422_scanline_c),
(composite_packed4444_to_packed422_scanline_mmxext),
(composite_alphamask_to_packed4444_scanline_c),
(composite_alphamask_to_packed4444_scanline_mmxext),
(composite_alphamask_alpha_to_packed4444_scanline_c),
(premultiply_packed4444_scanline_c),
(premultiply_packed4444_scanline_mmxext),
(blend_packed422_scanline_c), (blend_packed422_scanline_mmxext),
(quarter_blit_vertical_packed422_scanline_mmxext),
(quarter_blit_vertical_packed422_scanline_c),
(subpix_blit_vertical_packed422_scanline_c),
(a8_subpix_blit_scanline_c), (myround), (init_RGB_to_YCbCr_tables),
(init_YCbCr_to_RGB_tables), (rgb24_to_packed444_rec601_scanline_c),
(rgba32_to_packed4444_rec601_scanline_c),
(packed444_to_rgb24_rec601_scanline_c),
(packed444_to_nonpremultiplied_packed4444_scanline_c),
(aspect_adjust_packed4444_scanline_c), (setup_speedy_calls),
(speedy_get_accel):
* gst/deinterlace2/tvtime/speedy.h:
* gst/deinterlace2/tvtime/sse.h:
* gst/deinterlace2/tvtime/tomsmocomp.c: (Fieldcopy),
(deinterlace_frame_di_tomsmocomp), (dscaler_tomsmocomp_get_method),
(tomsmocomp_init), (tomsmocomp_filter_mmx),
(tomsmocomp_filter_3dnow), (tomsmocomp_filter_sse):
* gst/deinterlace2/tvtime/tomsmocomp.h:
* gst/deinterlace2/tvtime/tomsmocomp/SearchLoop0A.inc:
* gst/deinterlace2/tvtime/tomsmocomp/SearchLoopBottom.inc:
* gst/deinterlace2/tvtime/tomsmocomp/SearchLoopEdgeA.inc:
* gst/deinterlace2/tvtime/tomsmocomp/SearchLoopEdgeA8.inc:
* gst/deinterlace2/tvtime/tomsmocomp/SearchLoopOddA.inc:
* gst/deinterlace2/tvtime/tomsmocomp/SearchLoopOddA2.inc:
* gst/deinterlace2/tvtime/tomsmocomp/SearchLoopOddA6.inc:
* gst/deinterlace2/tvtime/tomsmocomp/SearchLoopOddAH.inc:
* gst/deinterlace2/tvtime/tomsmocomp/SearchLoopOddAH2.inc:
* gst/deinterlace2/tvtime/tomsmocomp/SearchLoopTop.inc:
* gst/deinterlace2/tvtime/tomsmocomp/SearchLoopVA.inc:
* gst/deinterlace2/tvtime/tomsmocomp/SearchLoopVAH.inc:
* gst/deinterlace2/tvtime/tomsmocomp/StrangeBob.inc:
* gst/deinterlace2/tvtime/tomsmocomp/TomsMoCompAll.inc:
* gst/deinterlace2/tvtime/tomsmocomp/TomsMoCompAll2.inc:
* gst/deinterlace2/tvtime/tomsmocomp/WierdBob.inc:
* gst/deinterlace2/tvtime/vfir.c: (deinterlace_line),
(deinterlace_scanline_vfir), (copy_scanline),
(dscaler_vfir_get_method):
* gst/deinterlace2/tvtime/x86-64_macros.inc:
Add a deinterlacer plugin based on the tvtime/DScaler deinterlacer,
which was relicensed to LGPL for GStreamer and in theory provides
better and faster results than the simple deinterlace element.
Fixes bug #163578.
Ported to GStreamer 0.10 but still not enabled or included in the
build system by default because of bad artefacts caused by a bug
somewhere and as it can be only build on x86/amd64 ATM and requires
special CFLAGS. Will be fixed soon.
2009-05-13 10:33:55 +02:00
Martin Eikermann
0518c150c9 [MOVED FROM BAD 01/56] gst/deinterlace2/: Add a deinterlacer plugin based on the tvtime/DScaler deinterlacer, which was relicensed to LGPL f...
Original commit message from CVS:
Based on a patch by: Martin Eikermann <meiker at upb dot de>
* gst/deinterlace2/Makefile.am:
* gst/deinterlace2/gstdeinterlace2.c:
(gst_deinterlace2_method_get_type),
(gst_deinterlace2_fields_get_type),
(gst_deinterlace2_field_layout_get_type),
(gst_deinterlace2_base_init), (gst_deinterlace2_class_init),
(gst_deinterlace2_init), (gst_deinterlace2_set_method),
(gst_deinterlace2_set_property), (gst_deinterlace2_get_property),
(gst_deinterlace2_finalize), (gst_deinterlace2_pop_history),
(gst_deinterlace2_head_history), (gst_deinterlace2_push_history),
(gst_deinterlace2_deinterlace_scanlines), (gst_deinterlace2_chain),
(gst_deinterlace2_setcaps), (gst_deinterlace2_sink_event),
(gst_deinterlace2_change_state), (gst_deinterlace2_src_event),
(gst_deinterlace2_src_query), (gst_deinterlace2_src_query_types),
(plugin_init):
* gst/deinterlace2/gstdeinterlace2.h:
* gst/deinterlace2/tvtime/greedy.c: (copy_scanline),
(deinterlace_greedy_packed422_scanline_mmxext),
(dscaler_greedyl_get_method):
* gst/deinterlace2/tvtime/greedyh.asm:
* gst/deinterlace2/tvtime/greedyh.c:
(deinterlace_frame_di_greedyh), (dscaler_greedyh_get_method),
(greedyh_init), (greedyh_filter_mmx), (greedyh_filter_3dnow),
(greedyh_filter_sse):
* gst/deinterlace2/tvtime/greedyh.h:
* gst/deinterlace2/tvtime/greedyhmacros.h:
* gst/deinterlace2/tvtime/mmx.h:
* gst/deinterlace2/tvtime/plugins.h:
* gst/deinterlace2/tvtime/speedtools.h:
* gst/deinterlace2/tvtime/speedy.c: (multiply_alpha), (clip255),
(comb_factor_packed422_scanline_mmx),
(diff_factor_packed422_scanline_c),
(diff_factor_packed422_scanline_mmx),
(diff_packed422_block8x8_mmx), (diff_packed422_block8x8_c),
(packed444_to_packed422_scanline_c),
(packed422_to_packed444_scanline_c),
(packed422_to_packed444_rec601_scanline_c),
(vfilter_chroma_121_packed422_scanline_mmx),
(vfilter_chroma_121_packed422_scanline_c),
(vfilter_chroma_332_packed422_scanline_mmx),
(vfilter_chroma_332_packed422_scanline_c),
(kill_chroma_packed422_inplace_scanline_mmx),
(kill_chroma_packed422_inplace_scanline_c),
(invert_colour_packed422_inplace_scanline_mmx),
(invert_colour_packed422_inplace_scanline_c),
(mirror_packed422_inplace_scanline_c),
(interpolate_packed422_scanline_c),
(convert_uyvy_to_yuyv_scanline_mmx),
(convert_uyvy_to_yuyv_scanline_c),
(interpolate_packed422_scanline_mmx),
(interpolate_packed422_scanline_mmxext),
(blit_colour_packed422_scanline_c),
(blit_colour_packed422_scanline_mmx),
(blit_colour_packed422_scanline_mmxext),
(blit_colour_packed4444_scanline_c),
(blit_colour_packed4444_scanline_mmx),
(blit_colour_packed4444_scanline_mmxext), (small_memcpy),
(speedy_memcpy_c), (speedy_memcpy_mmx), (speedy_memcpy_mmxext),
(blit_packed422_scanline_c), (blit_packed422_scanline_mmx),
(blit_packed422_scanline_mmxext),
(composite_colour4444_alpha_to_packed422_scanline_c),
(composite_colour4444_alpha_to_packed422_scanline_mmxext),
(composite_packed4444_alpha_to_packed422_scanline_c),
(composite_packed4444_alpha_to_packed422_scanline_mmxext),
(composite_packed4444_to_packed422_scanline_c),
(composite_packed4444_to_packed422_scanline_mmxext),
(composite_alphamask_to_packed4444_scanline_c),
(composite_alphamask_to_packed4444_scanline_mmxext),
(composite_alphamask_alpha_to_packed4444_scanline_c),
(premultiply_packed4444_scanline_c),
(premultiply_packed4444_scanline_mmxext),
(blend_packed422_scanline_c), (blend_packed422_scanline_mmxext),
(quarter_blit_vertical_packed422_scanline_mmxext),
(quarter_blit_vertical_packed422_scanline_c),
(subpix_blit_vertical_packed422_scanline_c),
(a8_subpix_blit_scanline_c), (myround), (init_RGB_to_YCbCr_tables),
(init_YCbCr_to_RGB_tables), (rgb24_to_packed444_rec601_scanline_c),
(rgba32_to_packed4444_rec601_scanline_c),
(packed444_to_rgb24_rec601_scanline_c),
(packed444_to_nonpremultiplied_packed4444_scanline_c),
(aspect_adjust_packed4444_scanline_c), (setup_speedy_calls),
(speedy_get_accel):
* gst/deinterlace2/tvtime/speedy.h:
* gst/deinterlace2/tvtime/sse.h:
* gst/deinterlace2/tvtime/tomsmocomp.c: (Fieldcopy),
(deinterlace_frame_di_tomsmocomp), (dscaler_tomsmocomp_get_method),
(tomsmocomp_init), (tomsmocomp_filter_mmx),
(tomsmocomp_filter_3dnow), (tomsmocomp_filter_sse):
* gst/deinterlace2/tvtime/tomsmocomp.h:
* gst/deinterlace2/tvtime/tomsmocomp/SearchLoop0A.inc:
* gst/deinterlace2/tvtime/tomsmocomp/SearchLoopBottom.inc:
* gst/deinterlace2/tvtime/tomsmocomp/SearchLoopEdgeA.inc:
* gst/deinterlace2/tvtime/tomsmocomp/SearchLoopEdgeA8.inc:
* gst/deinterlace2/tvtime/tomsmocomp/SearchLoopOddA.inc:
* gst/deinterlace2/tvtime/tomsmocomp/SearchLoopOddA2.inc:
* gst/deinterlace2/tvtime/tomsmocomp/SearchLoopOddA6.inc:
* gst/deinterlace2/tvtime/tomsmocomp/SearchLoopOddAH.inc:
* gst/deinterlace2/tvtime/tomsmocomp/SearchLoopOddAH2.inc:
* gst/deinterlace2/tvtime/tomsmocomp/SearchLoopTop.inc:
* gst/deinterlace2/tvtime/tomsmocomp/SearchLoopVA.inc:
* gst/deinterlace2/tvtime/tomsmocomp/SearchLoopVAH.inc:
* gst/deinterlace2/tvtime/tomsmocomp/StrangeBob.inc:
* gst/deinterlace2/tvtime/tomsmocomp/TomsMoCompAll.inc:
* gst/deinterlace2/tvtime/tomsmocomp/TomsMoCompAll2.inc:
* gst/deinterlace2/tvtime/tomsmocomp/WierdBob.inc:
* gst/deinterlace2/tvtime/vfir.c: (deinterlace_line),
(deinterlace_scanline_vfir), (copy_scanline),
(dscaler_vfir_get_method):
* gst/deinterlace2/tvtime/x86-64_macros.inc:
Add a deinterlacer plugin based on the tvtime/DScaler deinterlacer,
which was relicensed to LGPL for GStreamer and in theory provides
better and faster results than the simple deinterlace element.
Fixes bug #163578.
Ported to GStreamer 0.10 but still not enabled or included in the
build system by default because of bad artefacts caused by a bug
somewhere and as it can be only build on x86/amd64 ATM and requires
special CFLAGS. Will be fixed soon.
2009-05-13 10:33:54 +02:00
Sebastian Dröge
e93f784ee1 avidemux: Fix pointer arithmetic
This fixes a seeking regression, bug #134522.
2009-05-13 10:16:54 +02:00
Christian Schaller
121443eba7 [MOVED FROM BAD 57/57] Add ranks to various muxers and encoders in -bad 2009-05-12 21:21:03 +02:00
Tristan Matthews
95f52ab0d1 [MOVED FROM BAD 56/57] flvmux: init variable to NULL to fix compiler warning
Fixes #580786.
2009-05-12 21:21:02 +02:00
Sebastian Dröge
189838532b [MOVED FROM BAD 55/57] flv: Set/require the framed/parsed fields of the audio/mpeg caps to TRUE 2009-05-12 21:21:02 +02:00
Sebastian Dröge
609239d574 [MOVED FROM BAD 54/57] flv: Always write at least the minimal tags and write the PAR as tags 2009-05-12 21:21:02 +02:00
Sebastian Dröge
7ce9a89050 [MOVED FROM BAD 53/57] flv: Add support for muxing some tags 2009-05-12 21:21:02 +02:00
Sebastian Dröge
170294e976 [MOVED FROM BAD 52/57] flv: Add support for title tag 2009-05-12 21:21:02 +02:00
Sebastian Dröge
32c2364ff2 [MOVED FROM BAD 51/57] flv: Fix parsing of tags and add new mappings
We shouldn't register a new GstTag for every unknown tag
we find as this might lead to conflicts and also those
tags are essentially unknown.

Add mappings for some known tags and also convert string
dates to GDate, as found in many FLV files.
2009-05-12 21:21:02 +02:00
Sebastian Dröge
046311d3ea [MOVED FROM BAD 50/57] flv: Add documentation to flvmux and flvdemux
Partially fixes bug #573737.
2009-05-12 21:21:01 +02:00
Jan Urbanski
6d82cda0ff [MOVED FROM BAD 49/57] Add support for ECMA arrays in script tags. Fixes bug #567965.
Add support for ECMA arrays in script tags. This fixes
seeking on some files that have the seek table stored
inside an ECMA array instead of the normal array.
2009-05-12 21:21:01 +02:00
Sebastian Dröge
351a29c1df [MOVED FROM BAD 48/57] gst/flv/gstflvparse.c: Check if strings are valid UTF8 before using them.
Original commit message from CVS:
* gst/flv/gstflvparse.c: (FLV_GET_STRING):
Check if strings are valid UTF8 before using them.
2009-05-12 21:21:01 +02:00
Julien Moutte
d759265a51 [MOVED FROM BAD 47/57] gst/flv/gstflvdemux.c: Fix non key unit seeking by always going to the previous keyframe. Mark the discont flag when ...
Original commit message from CVS:
2008-11-24  Julien Moutte  <julien@fluendo.com>

* gst/flv/gstflvdemux.c: (gst_flv_demux_find_offset),
(gst_flv_demux_handle_seek_push),
(gst_flv_demux_handle_seek_pull):
Fix non key unit seeking by always going to the previous
keyframe. Mark
the discont flag when we've moved in the file.
* gst/flv/gstflvparse.c: (gst_flv_parse_audio_negotiate): MP3
streams
are parsed already, makes autoplugged pipelines shorter.
2009-05-12 21:21:00 +02:00
Stefan Kost
17d96d0427 [MOVED FROM BAD 46/57] 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-05-12 21:21:00 +02:00
Sebastian Dröge
ee53e44fd1 [MOVED FROM BAD 45/57] gst/flv/gstflvdemux.c: Implement position query in time format.
Original commit message from CVS:
* gst/flv/gstflvdemux.c: (gst_flv_demux_query):
Implement position query in time format.
2009-05-12 21:21:00 +02:00
Sebastian Dröge
b7f0ba61e4 [MOVED FROM BAD 44/57] gst/flv/: Put the GstSegment directly into the instance struct instead of allocating and free'ing it again.
Original commit message from CVS:
* gst/flv/gstflvdemux.c: (gst_flv_demux_cleanup),
(gst_flv_demux_loop), (gst_flv_demux_handle_seek_push),
(gst_flv_demux_handle_seek_pull), (gst_flv_demux_sink_event),
(gst_flv_demux_dispose), (gst_flv_demux_init):
* gst/flv/gstflvdemux.h:
* gst/flv/gstflvparse.c: (gst_flv_parse_tag_audio),
(gst_flv_parse_tag_video), (gst_flv_parse_tag_timestamp):
Put the GstSegment directly into the instance struct instead of
allocating and free'ing it again.
Push tags already if only one pad was added, no need to wait for
the second one.
When generating our index set has_video and has_audio if we find
video or audio in case the FLV header has incorrect data.
2009-05-12 21:21:00 +02:00
Sebastian Dröge
029dfc56d4 [MOVED FROM BAD 43/57] gst/flv/: Don't memcpy() all data we want to push downstream, instead just create subbuffers and push them downstream.
Original commit message from CVS:
* gst/flv/gstflvdemux.c: (gst_flv_demux_chain),
(gst_flv_demux_pull_tag), (gst_flv_demux_pull_header),
(gst_flv_demux_create_index):
* gst/flv/gstflvparse.c: (gst_flv_parse_tag_script),
(gst_flv_parse_tag_audio), (gst_flv_parse_tag_video),
(gst_flv_parse_tag_timestamp), (gst_flv_parse_tag_type),
(gst_flv_parse_header):
* gst/flv/gstflvparse.h:
Don't memcpy() all data we want to push downstream, instead just
create subbuffers and push them downstream.
Fix some minor memory leaks.
2009-05-12 21:20:59 +02:00
Sebastian Dröge
a023bf6f92 [MOVED FROM BAD 42/57] gst/flv/Makefile.am: Fix (non-critical) syntax error and add all required CFLAGS and LIBS.
Original commit message from CVS:
* gst/flv/Makefile.am:
Fix (non-critical) syntax error and add all required CFLAGS and LIBS.
* gst/flv/gstflvparse.c: (FLV_GET_STRING),
(gst_flv_parse_metadata_item), (gst_flv_parse_tag_script),
(gst_flv_parse_tag_audio), (gst_flv_parse_tag_video),
(gst_flv_parse_tag_timestamp), (gst_flv_parse_tag_type):
Rewrite the script tag parsing to make sure we don't try to read
more data than we have. Also use GST_READ_UINT24_BE directly and
fix some minor memory leaks.
This should make all crashes on fuzzed FLV files disappear.
2009-05-12 21:20:59 +02:00
Sebastian Dröge
ab136d52eb [MOVED FROM BAD 41/57] gst/flv/gstflvparse.c: Properly check everywhere that we have enough data to parse and don't read outside the allocat...
Original commit message from CVS:
* gst/flv/gstflvparse.c: (FLV_GET_STRING),
(gst_flv_parse_tag_audio), (gst_flv_parse_tag_video),
(gst_flv_parse_tag_type), (gst_flv_parse_header):
Properly check everywhere that we have enough data to parse and
don't read outside the allocated memory region.
2009-05-12 21:20:59 +02:00
Sebastian Dröge
4aa480725c [MOVED FROM BAD 40/57] gst/flv/gstflvparse.c: If the caps change during playback and negotiation fails error out instead of trying to continue.
Original commit message from CVS:
* gst/flv/gstflvparse.c: (gst_flv_parse_tag_audio),
(gst_flv_parse_tag_video):
If the caps change during playback and negotiation fails error out
instead of trying to continue.
2009-05-12 21:20:58 +02:00
Sebastian Dröge
d1e3e827f3 [MOVED FROM BAD 39/57] gst/flv/: Add support for Speex audio and allow buffers without valid timestamp in the muxer.
Original commit message from CVS:
* gst/flv/gstflvmux.c: (gst_flv_mux_audio_pad_setcaps),
(gst_flv_mux_request_new_pad), (gst_flv_mux_write_buffer),
(gst_flv_mux_collected):
* gst/flv/gstflvmux.h:
* gst/flv/gstflvparse.c: (gst_flv_parse_audio_negotiate):
Add support for Speex audio and allow buffers without valid
timestamp in the muxer.
2009-05-12 21:20:58 +02:00
Sebastian Dröge
5b0cab9700 [MOVED FROM BAD 38/57] gst/flv/gstflvdemux.c: Don't post an error message on the bus if sending EOS downstream didn't work. Fixes bug #550454.
Original commit message from CVS:
* gst/flv/gstflvdemux.c: (gst_flv_demux_loop),
(gst_flv_demux_find_offset), (gst_flv_demux_handle_seek_push),
(gst_flv_demux_handle_seek_pull):
Don't post an error message on the bus if sending EOS downstream
didn't work. Fixes bug #550454.
Fix seek event handling to look at the flags of the seek event
instead of assuming some random flags, don't send segment-start
messages when operating in push mode and push seek events upstream
if we couldn't handle them.
2009-05-12 21:20:58 +02:00
Sebastian Dröge
c61d041aca [MOVED FROM BAD 37/57] gst/flv/gstflvdemux.c: Error out early if pulling a tag failed.
Original commit message from CVS:
* gst/flv/gstflvdemux.c: (gst_flv_demux_pull_tag):
Error out early if pulling a tag failed.
2009-05-12 21:20:58 +02:00
Sebastian Dröge
f945537a8a [MOVED FROM BAD 36/57] gst/flv/: In pull mode we create our own index before doing anything else and don't use the index provided by some fi...
Original commit message from CVS:
* gst/flv/gstflvdemux.c: (gst_flv_demux_create_index),
(gst_flv_demux_loop):
* gst/flv/gstflvparse.c: (gst_flv_parse_tag_script),
(gst_flv_parse_tag_audio), (gst_flv_parse_tag_video),
(gst_flv_parse_tag_timestamp):
* gst/flv/gstflvparse.h:
In pull mode we create our own index before doing anything else
and don't use the index provided by some files (which are more than
often incorrect and cause failed seeks).
For push mode we still use the index provided by the file and extend it
while doing the playback.
2009-05-12 21:20:58 +02:00
Sebastian Dröge
78c8ad8cf2 [MOVED FROM BAD 35/57] gst/flv/gstflvdemux.c: Instead of using gst_pad_event_default() use a small gst_pad_push_event() wrapper that only do...
Original commit message from CVS:
* gst/flv/gstflvdemux.c: (gst_flv_demux_push_src_event),
(gst_flv_demux_loop), (gst_flv_demux_handle_seek_pull),
(gst_flv_demux_sink_event):
Instead of using gst_pad_event_default() use a small
gst_pad_push_event() wrapper that only does what we want and is much
more simple.
2009-05-12 21:20:57 +02:00
Sebastian Dröge
5dd573262d [MOVED FROM BAD 34/57] gst/flv/gstflvdemux.*: If our index was created by the element and not provided from the outside we should destroy it...
Original commit message from CVS:
* gst/flv/gstflvdemux.c: (gst_flv_demux_change_state),
(gst_flv_demux_set_index), (gst_flv_demux_init):
* gst/flv/gstflvdemux.h:
If our index was created by the element and not provided from the
outside we should destroy it when starting a new stream to get
all old entries removed.
2009-05-12 21:20:57 +02:00
Sebastian Dröge
1b235bb8b0 [MOVED FROM BAD 33/57] gst/flv/gstflvdemux.c: Improve debugging a bit when pulling a buffer from upstream fails.
Original commit message from CVS:
* gst/flv/gstflvdemux.c: (gst_flv_demux_pull_range):
Improve debugging a bit when pulling a buffer from upstream fails.
2009-05-12 21:20:57 +02:00
Sebastian Dröge
f55a5aa024 [MOVED FROM BAD 32/57] gst/flv/: Close the currently playing segment from the streaming thread instead of the thread where the seek event is...
Original commit message from CVS:
* gst/flv/gstflvdemux.c: (gst_flv_demux_cleanup),
(gst_flv_demux_handle_seek_pull), (gst_flv_demux_dispose):
* gst/flv/gstflvdemux.h:
* gst/flv/gstflvparse.c: (gst_flv_parse_tag_audio),
(gst_flv_parse_tag_video):
Close the currently playing segment from the streaming thread
instead of the thread where the seek event is handled.
2009-05-12 21:20:57 +02:00
Sebastian Dröge
6c61c0b78d [MOVED FROM BAD 31/57] gst/flv/gstflvmux.c: Don't set video_codec to the value that actually should go into audio codec, otherwise we create...
Original commit message from CVS:
* gst/flv/gstflvmux.c: (gst_flv_mux_audio_pad_setcaps),
(gst_flv_mux_write_buffer):
Don't set video_codec to the value that actually should go
into audio codec, otherwise we create invalid files.
Fixes bug #556564.
2009-05-12 21:20:56 +02:00
Sebastian Dröge
9611ec851d [MOVED FROM BAD 30/57] gst/flv/gstflvdemux.c: Fix regression of handling flow returns in pull mode.
Original commit message from CVS:
* gst/flv/gstflvdemux.c: (gst_flv_demux_pull_tag),
(gst_flv_demux_pull_header):
Fix regression of handling flow returns in pull mode.
Fixes bug #556003.
2009-05-12 21:20:56 +02:00
Sebastian Dröge
9a8884f7ca [MOVED FROM BAD 29/57] gst/flv/gstflvparse.c: Use gst_pad_alloc_buffer_and_set_caps() to make sure we get a buffer with caps that we can wor...
Original commit message from CVS:
* gst/flv/gstflvparse.c: (gst_flv_parse_tag_audio),
(gst_flv_parse_tag_video):
Use gst_pad_alloc_buffer_and_set_caps() to make sure we get
a buffer with caps that we can work with (i.e. the pad's caps).
Add non-keyframe video frames to the index too but without the
keyframe flag.
Add audio frames to the index only if we have no video stream.
2009-05-12 21:20:56 +02:00
Sebastian Dröge
549f97ea7b [MOVED FROM BAD 28/57] gst/flv/gstflvparse.c: Create pads from the pad templates, use fixed caps on them and only activate them after the ca...
Original commit message from CVS:
* gst/flv/gstflvparse.c: (gst_flv_parse_tag_audio),
(gst_flv_parse_tag_video):
Create pads from the pad templates, use fixed caps on them
and only activate them after the caps are set.
2009-05-12 21:20:56 +02:00
Sebastian Dröge
023e5ba09a [MOVED FROM BAD 27/57] gst/flv/: Get an approximate duration of the file by looking at the timestamp of the last tag in pull mode. If we get...
Original commit message from CVS:
* gst/flv/gstflvdemux.c: (gst_flv_demux_loop):
* gst/flv/gstflvparse.c: (gst_flv_parse_tag_timestamp):
* gst/flv/gstflvparse.h:
Get an approximate duration of the file by looking at the timestamp
of the last tag in pull mode. If we get (maybe better) duration from
metadata later we'll use that instead.
2009-05-12 21:20:55 +02:00
Sebastian Dröge
7f924cec59 [MOVED FROM BAD 26/57] gst/flv/gstflvdemux.c: Refactor _pull_range() logic with checks into a seperate function to make things a bit more re...
Original commit message from CVS:
* gst/flv/gstflvdemux.c: (gst_flv_demux_pull_range),
(gst_flv_demux_pull_tag), (gst_flv_demux_pull_header):
Refactor _pull_range() logic with checks into a seperate function
to make things a bit more readable.
2009-05-12 21:20:55 +02:00
Sebastian Dröge
fe312ae650 [MOVED FROM BAD 25/57] gst/flv/gstflvdemux.c: Use gst_element_class_set_details_simple().
Original commit message from CVS:
* gst/flv/gstflvdemux.c: (gst_flv_demux_chain),
(gst_flv_demux_base_init):
Use gst_element_class_set_details_simple().
If we get GST_FLOW_NOT_LINKED in the parse loop but at least
one of the pads is linked continue the loop.
2009-05-12 21:20:55 +02:00
Sebastian Dröge
fa59b574ba [MOVED FROM BAD 24/57] gst/flv/gstflvparse.c: Correct caps for video codec id 5: It's On2 VP6 with alpha channel which needs a different dec...
Original commit message from CVS:
* gst/flv/gstflvparse.c: (gst_flv_parse_audio_negotiate),
(gst_flv_parse_tag_audio), (gst_flv_parse_video_negotiate):
Correct caps for video codec id 5: It's On2 VP6 with alpha channel
which needs a different decoder and has different caps.
Add support for audio codec id 14, which is MP3 with 8kHz sampling
rate.
Fix endianness and signedness for raw audio codec ids.
Add support for alaw and mulaw audio.
2009-05-12 21:20:55 +02:00
Sebastian Dröge
1905b18a65 [MOVED FROM BAD 23/57] gst/flv/gstflvdemux.c: Go out of the parse loop as soon as we get an error instead of parsing until the GstAdapter is...
Original commit message from CVS:
* gst/flv/gstflvdemux.c: (gst_flv_demux_chain):
Go out of the parse loop as soon as we get an error instead
of parsing until the GstAdapter is empty.
Add some explanations about the header and tag size.
Don't print synchronizing message if everything is fine.
2009-05-12 21:20:54 +02:00
Sebastian Dröge
fc2adbb9a8 [MOVED FROM BAD 22/57] gst/flv/: Add first version of a FLV muxer. The only missing feature is writing of stream metadata.
Original commit message from CVS:
* gst/flv/Makefile.am:
* gst/flv/gstflvdemux.c: (plugin_init):
* gst/flv/gstflvmux.c: (gst_flv_mux_base_init),
(gst_flv_mux_class_init), (gst_flv_mux_init),
(gst_flv_mux_finalize), (gst_flv_mux_reset),
(gst_flv_mux_handle_src_event), (gst_flv_mux_handle_sink_event),
(gst_flv_mux_video_pad_setcaps), (gst_flv_mux_audio_pad_setcaps),
(gst_flv_mux_request_new_pad), (gst_flv_mux_release_pad),
(gst_flv_mux_write_header), (gst_flv_mux_write_buffer),
(gst_flv_mux_collected), (gst_flv_mux_change_state):
* gst/flv/gstflvmux.h:
Add first version of a FLV muxer. The only missing feature is writing
of stream metadata.
2009-05-12 21:20:54 +02:00
Julien Moutte
f58f138c55 [MOVED FROM BAD 21/57] gst/flv/: Introduce demuxing support for AAC and
Original commit message from CVS:
2008-06-14  Julien Moutte  <julien@fluendo.com>

* gst/flv/gstflvdemux.c: (gst_flv_demux_cleanup),
(gst_flv_demux_dispose):
* gst/flv/gstflvdemux.h:
* gst/flv/gstflvparse.c: (gst_flv_parse_audio_negotiate),
(gst_flv_parse_tag_audio), (gst_flv_parse_video_negotiate),
(gst_flv_parse_tag_video): Introduce demuxing support for AAC
and
H.264/AVC inside FLV.
* sys/dshowdecwrapper/gstdshowaudiodec.c:
(gst_dshowaudiodec_init),
(gst_dshowaudiodec_chain), (gst_dshowaudiodec_push_buffer),
(gst_dshowaudiodec_sink_event), (gst_dshowaudiodec_setup_graph):
* sys/dshowdecwrapper/gstdshowaudiodec.h:
* sys/dshowdecwrapper/gstdshowvideodec.c:
(gst_dshowvideodec_init),
(gst_dshowvideodec_sink_event), (gst_dshowvideodec_chain),
(gst_dshowvideodec_push_buffer),
(gst_dshowvideodec_src_getcaps):
* sys/dshowdecwrapper/gstdshowvideodec.h: Lot of random fixes
to improve stability (ref counting, safety checks...)
2009-05-12 21:20:54 +02:00
Wim Taymans
00be5791fe [MOVED FROM BAD 20/57] gst/flv/gstflvdemux.c: Forward unknown queries upstream instead of returning FALSE on them.
Original commit message from CVS:
* gst/flv/gstflvdemux.c: (gst_flv_demux_query):
Forward unknown queries upstream instead of returning FALSE on them.
2009-05-12 21:20:54 +02:00
Tim-Philipp Müller
7104ffa7dc [MOVED FROM BAD 19/57] gst/flv/gstflvparse.c: Handle NULL returns from FLV_GET_STRING() more gracefully. Fixes crash caused by a strlen on a...
Original commit message from CVS:
* gst/flv/gstflvparse.c: (gst_flv_parse_metadata_item),
(gst_flv_parse_tag_script):
Handle NULL returns from FLV_GET_STRING() more gracefully. Fixes
crash caused by a strlen on a NULL string (#527622).
2009-05-12 21:20:53 +02:00
Tim-Philipp Müller
71e48aa5d7 [MOVED FROM BAD 18/57] gst/flv/gstflvparse.c: Don't strdup (and thus leak) codec name strings when passing them to gst_tag_list_add().
Original commit message from CVS:
* gst/flv/gstflvparse.c: (gst_flv_parse_tag_audio),
(gst_flv_parse_tag_video):
Don't strdup (and thus leak) codec name strings when passing
them to gst_tag_list_add().
2009-05-12 21:20:53 +02:00
Edward Hervey
98afcdf05d [MOVED FROM BAD 17/57] gst/flv/gstflvparse.c: Fix list of supported and known codecs.
Original commit message from CVS:
* gst/flv/gstflvparse.c: (gst_flv_parse_tag_audio),
(gst_flv_parse_tag_video):
Fix list of supported and known codecs.
Emit tag with the codec name so it gets properly reported in totem and
other applications.
2009-05-12 21:20:53 +02:00
Edward Hervey
0ece771e85 [MOVED FROM BAD 16/57] gst/flv/gstflvparse.c: Output segment with proper 'stop' value, makes flvdemux 100% compatible with gnonlin.
Original commit message from CVS:
* gst/flv/gstflvparse.c: (gst_flv_parse_tag_audio),
(gst_flv_parse_tag_video):
Output segment with proper 'stop' value, makes flvdemux 100% compatible
with gnonlin.
2009-05-12 21:20:53 +02:00
Edward Hervey
9aef7a25e3 [MOVED FROM BAD 15/57] gst/flv/gstflvparse.c: Add mapping for Nellymoser ASAO audio codec.
Original commit message from CVS:
* gst/flv/gstflvparse.c:
Add mapping for Nellymoser ASAO audio codec.
(gst_flv_parse_tag_audio), (gst_flv_parse_tag_video): Make sure we
actually have data to read at the end of the tag. This avoids trying
to allocate negative buffers.
2009-05-12 21:20:52 +02:00
Julien Moutte
2c69886497 [MOVED FROM BAD 14/57] gst/flv/gstflvparse.c: Don't emit no-more-pads for single pad scenarios as the header is definitely not reliable. We ...
Original commit message from CVS:
2007-10-22  Julien MOUTTE  <julien@moutte.net>

* gst/flv/gstflvparse.c: (gst_flv_parse_tag_audio),
(gst_flv_parse_tag_video), (gst_flv_parse_tag_type): Don't
emit no-more-pads for single pad scenarios as the header
is definitely not reliable. We emit them for 2 pads scenarios
though to speed up media discovery.
2009-05-12 21:20:52 +02:00
Julien Moutte
79c20be6bd [MOVED FROM BAD 13/57] gst/flv/gstflvparse.c: I got it wrong again, audio rate was not detected correctly in all cases.
Original commit message from CVS:
2007-09-27  Julien MOUTTE  <julien@moutte.net>

* gst/flv/gstflvparse.c: (gst_flv_parse_tag_audio),
(gst_flv_parse_tag_video): I got it wrong again, audio rate
was not detected correctly in all cases.
2009-05-12 21:20:52 +02:00
Julien Moutte
df2c2e1d96 [MOVED FROM BAD 12/57] gst/flv/gstflvparse.c: codec_data is needed for every tag not just the first one. (Fix a stupid bug i introduced with...
Original commit message from CVS:
2007-09-26  Julien MOUTTE  <julien@moutte.net>

* gst/flv/gstflvparse.c: (gst_flv_parse_tag_audio),
(gst_flv_parse_tag_video): codec_data is needed for every tag
not just the first one. (Fix a stupid bug i introduced without
testing)
2009-05-12 21:20:52 +02:00
Julien Moutte
995a9dcae4 [MOVED FROM BAD 11/57] gst/flv/gstflvparse.c: Fix bit masks operations to be sure we detect the codec_tags and sample rates correctly.
Original commit message from CVS:
2007-09-26  Julien MOUTTE  <julien@moutte.net>

* gst/flv/gstflvparse.c: (gst_flv_parse_tag_audio),
(gst_flv_parse_tag_video): Fix bit masks operations to be
sure we detect the codec_tags and sample rates correctly.
Fix raw audio caps generation.
2009-05-12 21:20:51 +02:00
Peter Kjellerstedt
ab63c48e82 [MOVED FROM BAD 10/57] gst/: Printf format fixes (#476128).
Original commit message from CVS:
Patch by: Peter Kjellerstedt  <pkj at axis com>
* gst-libs/gst/app/gstappsink.c:
* gst/flv/gstflvdemux.c:
* gst/flv/gstflvparse.c:
* gst/interleave/deinterleave.c:
* gst/switch/gstswitch.c:
Printf format fixes (#476128).
2009-05-12 21:20:51 +02:00
Julien Moutte
5a5bbae173 [MOVED FROM BAD 09/57] gst/flv/gstflvdemux.c: Make sure we initialize the seek result.
Original commit message from CVS:
2007-08-27  Julien MOUTTE  <julien@moutte.net>

* gst/flv/gstflvdemux.c: (gst_flv_demux_handle_seek_pull):
Make sure we initialize the seek result.
2009-05-12 21:20:51 +02:00
Julien Moutte
e457c4fe2a [MOVED FROM BAD 08/57] gst/flv/gstflvdemux.c: Remove some useless ifdef.
Original commit message from CVS:
2007-08-24  Julien MOUTTE  <julien@moutte.net>

* gst/flv/gstflvdemux.c: (gst_flv_demux_flush),
(gst_flv_demux_chain), (gst_flv_demux_pull_tag),
(gst_flv_demux_find_offset), (gst_flv_demux_handle_seek_push),
(gst_flv_demux_handle_seek_pull), (gst_flv_demux_sink_event),
(gst_flv_demux_src_event): Remove some useless ifdef.
2009-05-12 21:20:51 +02:00
Julien Moutte
00746d9037 [MOVED FROM BAD 07/57] gst/flv/gstflvdemux.c: Implement seeking in push mode.
Original commit message from CVS:
2007-08-24  Julien MOUTTE  <julien@moutte.net>

* gst/flv/gstflvdemux.c: (gst_flv_demux_flush),
(gst_flv_demux_cleanup), (gst_flv_demux_chain),
(gst_flv_demux_pull_tag), (gst_flv_demux_find_offset),
(gst_flv_demux_handle_seek_push),
(gst_flv_demux_handle_seek_pull),
(gst_flv_demux_sink_event), (gst_flv_demux_src_event): Implement
seeking in push mode.
* gst/flv/gstflvdemux.h:
2009-05-12 21:20:51 +02:00
Julien Moutte
5d7f2cf4fa [MOVED FROM BAD 06/57] gst/flv/: Handle pixel aspect ratio through metadata tags like ASF does. Fluendo muxer supports this and
Original commit message from CVS:
2007-08-22  Julien MOUTTE  <julien@moutte.net>

* gst/flv/gstflvdemux.c: (gst_flv_demux_cleanup),
(gst_flv_demux_pull_tag):
* gst/flv/gstflvdemux.h:
* gst/flv/gstflvparse.c: (gst_flv_parse_metadata_item),
(gst_flv_parse_tag_script), (gst_flv_parse_tag_audio),
(gst_flv_parse_tag_video): Handle pixel aspect ratio through
metadata tags like ASF does. Fluendo muxer supports this and
Flash players can support it as well this way.
2009-05-12 21:20:50 +02:00
Julien Moutte
8f0627ea08 [MOVED FROM BAD 05/57] gst/flv/: Make sure we don't try filling up the index if no times object was parsed. Fix the way we decide to push ta...
Original commit message from CVS:
2007-08-22  Julien MOUTTE  <julien@moutte.net>

* gst/flv/gstflvdemux.c: (gst_flv_demux_pull_tag):
* gst/flv/gstflvparse.c: (gst_flv_parse_metadata_item),
(gst_flv_parse_tag_script), (gst_flv_parse_tag_audio),
(gst_flv_parse_tag_video): Make sure we don't try filling up the
index if no times object was parsed. Fix the way we decide to
push
tags and emit no-more-pads. Fix some printf typing in debugging.
2009-05-12 21:20:50 +02:00
Wim Taymans
d83e2e9292 [MOVED FROM BAD 04/57] gst/flv/gstflvdemux.c: Fix locking and refcounting on the index.
Original commit message from CVS:
* gst/flv/gstflvdemux.c: (gst_flv_demux_set_index),
(gst_flv_demux_get_index):
Fix locking and refcounting on the index.
2009-05-12 21:20:50 +02:00
Julien Moutte
c3228fbb67 [MOVED FROM BAD 03/57] gst/flv/gstflvdemux.c: First method for seeking in pull mode using the index built step by step or coming from metadata.
Original commit message from CVS:
2007-08-14  Julien MOUTTE  <julien@moutte.net>

* gst/flv/gstflvdemux.c: (gst_flv_demux_cleanup),
(gst_flv_demux_adapter_flush), (gst_flv_demux_chain),
(gst_flv_demux_pull_tag), (gst_flv_demux_do_seek),
(gst_flv_demux_handle_seek), (gst_flv_demux_sink_event),
(gst_flv_demux_src_event), (gst_flv_demux_query),
(gst_flv_demux_change_state), (gst_flv_demux_set_index),
(gst_flv_demux_get_index), (gst_flv_demux_dispose),
(gst_flv_demux_class_init): First method for seeking in pull
mode using the index built step by step or coming from metadata.
* gst/flv/gstflvdemux.h:
* gst/flv/gstflvparse.c: (FLV_GET_STRING),
(gst_flv_parse_metadata_item), (gst_flv_parse_tag_script),
(gst_flv_parse_tag_audio), (gst_flv_parse_tag_video): Parse
more metadata types and keyframes index.
2009-05-12 21:20:50 +02:00
Julien Moutte
11e27e7856 [MOVED FROM BAD 02/57] gst/flv/: Handle not linked pads, try to make it reusable, more safety checks.
Original commit message from CVS:
2007-07-25  Julien MOUTTE  <julien@moutte.net>

(gst_flv_demux_chain), (gst_flv_demux_pull_tag),
(gst_flv_demux_change_state), (gst_flv_demux_dispose),
(gst_flv_demux_init):
* gst/flv/gstflvdemux.h:
* gst/flv/gstflvparse.c: (FLV_GET_STRING),
(gst_flv_parse_metadata_item), (gst_flv_parse_tag_script),
(gst_flv_parse_tag_audio), (gst_flv_parse_tag_video),
(gst_flv_parse_header):
* gst/flv/gstflvparse.h: Handle not linked pads, try to make it
reusable, more safety checks.
2009-05-12 21:20:49 +02:00
Julien Moutte
7a0d2df294 [MOVED FROM BAD 01/57] Adds a first draft of an FLV demuxer.
Original commit message from CVS:
2007-07-19  Julien MOUTTE  <julien@moutte.net>

* configure.ac:
* gst/flv/Makefile.am:
* gst/flv/gstflvdemux.c: (gst_flv_demux_flush),
(gst_flv_demux_cleanup), (gst_flv_demux_chain),
(gst_flv_demux_pull_tag), (gst_flv_demux_pull_header),
(gst_flv_demux_seek_to_prev_keyframe), (gst_flv_demux_loop),
(gst_flv_demux_sink_activate),
(gst_flv_demux_sink_activate_push),
(gst_flv_demux_sink_activate_pull), (gst_flv_demux_sink_event),
(gst_flv_demux_change_state), (gst_flv_demux_dispose),
(gst_flv_demux_base_init), (gst_flv_demux_class_init),
(gst_flv_demux_init), (plugin_init):
* gst/flv/gstflvdemux.h:
* gst/flv/gstflvparse.c: (FLV_GET_BEUI24), (FLV_GET_STRING),
(gst_flv_demux_query_types), (gst_flv_demux_query),
(gst_flv_parse_metadata_item), (gst_flv_parse_tag_script),
(gst_flv_parse_tag_audio), (gst_flv_parse_tag_video),
(gst_flv_parse_tag_type), (gst_flv_parse_header):
* gst/flv/gstflvparse.h: Adds a first draft of an FLV demuxer.
It does not do seeking yet, it supports pull and push mode so
YES
you can use it to play youtube videos directly from an HTTP uri.
Not so much testing done yet but it parses metadata, reply to
duration queries, etc...
2009-05-12 21:20:49 +02:00
Sebastian Dröge
d94a71a4c5 rtp: Link to -lm
Fixes bug #582281.
2009-05-12 13:00:46 +02:00
Tristan Matthews
39da7e523d avidemux: initialize variable to 0
Fixes #582218.
2009-05-11 21:02:27 +02:00
Sebastian Dröge
a1fe742e80 matroskademux: Only search for the index entry once 2009-05-11 18:21:13 +02:00
Sebastian Dröge
4cb39bc723 matroskademux: Use the first index entry if it's after the seek position 2009-05-11 18:18:36 +02:00
Sebastian Dröge
a62ed3b153 avidemux: Use the first entry for a given stream if the first entry is after the seek position 2009-05-11 18:15:22 +02:00
Sebastian Dröge
97fa58f397 avidemux: Use binary search for finding the requested index entry when seeking 2009-05-11 16:50:48 +02:00
Sebastian Dröge
e4909b37eb matroskademux: Improve/optimize seeking
First of all a keyframe seek should be done to the
keyframe right before the requested position and not
to the keyframe that is nearest to the requested position.

Use per track index arrays and use our new binary search function
from core to speed up the search.
2009-05-11 15:36:46 +02:00
David Schleef
f01adcbc0f matroska: fix printf format to agree with argument 2009-05-09 10:50:45 -07:00
Wim Taymans
a9e496d92f rtj2kdepay: add basic JPEG 2000 depayloader 2009-05-08 11:35:02 +02:00
Wim Taymans
5ec808cf7e rtpj2kpay: set marker bit correctly 2009-05-08 11:32:03 +02:00
Wim Taymans
a4dfd61a77 rtpj2kpay: add a simple JPEG 2000 payloader 2009-05-08 10:38:42 +02:00
Wim Taymans
ee1f1ae5d5 rtpjpegpay: we only need to swap bits on LE 2009-05-08 10:31:12 +02:00
Christian Schaller
bdf1698f35 Add RANKS for various encoders and muxers 2009-05-07 18:10:08 +01:00
Wim Taymans
bdbdb41e93 matroskademux: add some debugging 2009-05-07 17:10:43 +02:00
Wim Taymans
e4b59136fa matroskademux: parse xiph headers length correctly
See #580980
2009-05-07 17:10:43 +02:00
Gabriel Bouvigne
3e0f1b84a4 rganalysis: Add ability to post level messages
Fixes bug #581568.
2009-05-07 16:25:41 +02:00
Wim Taymans
e2a483f0f9 rtpjpegpay: refuse some unsupported jpeg formats 2009-05-06 23:56:44 +02:00
Wim Taymans
4ef9eee8b4 rtptheorapay: fix description 2009-05-06 18:06:49 +02:00
Wim Taymans
d87871f5f7 rtpjpegpay: rewrite quant table handling
Rewrite the quant table parsing to also handle multiple tables in one JPEG HDQ
segment.
Handle more jpeg types by keeping track of the tables used per component and
putting the used ones in the quant headers.
2009-05-06 16:11:49 +02:00
Wim Taymans
b7c5847dbd rtpjpegpay: handle input with 1 quant table
Also handle input with just one quant table, simply duplicate the quant table.
Handle invalid SOF correctly and some small cleanups.
Fixes #578257
2009-05-06 12:56:58 +02:00
Marco Ballesio
8e7273076d qtdemux: fix byte order swapping in 3GPP classification entity tag
Fixes #580746.
2009-05-06 00:16:37 +03:00
Arnout Vandecappelle
439ca2c795 multipartdemux: avoid reading from inavlid memory
Read the timestamp of the incomming buffer before we push it in the adapter and
flush it out again as the buffer might be unreffed then and we read from invalid
memory.
Fixes #581444.
2009-05-05 17:07:13 +02:00
Arnout Vandecappelle
3f2144c5ee multipartdemux: don't leak dynamic pads
Free the dynamic pads data in finalize.
Fixes #581432
2009-05-05 17:03:29 +02:00
Wim Taymans
0f1033c59f rtpjpegpay: correctly set the type header
Don't require width/height on the caps. Use the SOF header to find width/height
and fall back to the caps if there is no SOF. Also use the SOF info to find the
subsampling and quantization tables used. This allows us to set the right type
value in the JPEG rtp header.

Deprecate the quality property, it's unused now and it was used wrongly before.

Always send full quant tables for now until we have some code to detect default
ones.

Fixes #580880
2009-05-05 16:32:17 +02:00
Wim Taymans
7c59f39bfe rtpjpegdepay: use width/height from payload
Use the width and the height from the payload headers and set them on the
output caps for added awesomeness.

Fix quant parsing, we need to check the type in the lower 6 bits.

Add first bits of caching quantization tables.
2009-05-05 16:28:44 +02:00
Wim Taymans
732704c007 rtspsrc: Fix find_stream_by_* functions
Fix various version of find_stream_by_* by not trying to convert an int to a
pointer and vice versa, for portability reasons.

Fixes #581333
2009-05-04 18:55:12 +02:00
Chris Winter
752cfb16fe rtspsrc: fix dummy nat packet logic
Fix a typo in the dummy NAT packet sending code.

Fixes #581329
2009-05-04 18:32:05 +02:00
Mark Nauwelaerts
959a9b494b rtspsrc: avoid errors after server eof
Server eof (e.g. connection closed) is announced as connection closed,
so better record state and act accordingly to prevent (read/write)
errors during subsequent teardown/cleanup sequences.  #Fixes 580851.(c).
2009-05-04 17:01:35 +02:00
Mark Nauwelaerts
734548a34f rtspsrc: also set base_time on src after flush
timestamps following flush/seek should be consistent between
UDP and TCP interleaved case.  Fixes #580851.(b).
2009-05-04 17:01:28 +02:00
Mark Nauwelaerts
20c7be5741 rtspsrc: sanity checks on range info
A max range that overflows should not be trusted,
nor should a max range that equals the min range.
Fixes #580851.(a).
2009-05-04 17:01:20 +02:00
Wim Taymans
56656dd03d rtspsrc: use SKIP flag to use SCALE headers
We can use the SKIP seek flag to instruct the server to send data faster then
normal but with the same bandwidth.
Fixes #537609
2009-05-04 16:18:23 +02:00
Wim Taymans
70d1b6e1ae qtdemux: use binary search for index
Use the new binary search method for finding the right index entry faster.
2009-05-04 12:35:19 +02:00
Wim Taymans
9ea2c113ba videobox: draw the complete U and V planes
Round up the scaled U and V width and height so that we always draw the correct
amount of pixels to fill the complete image.

Fixes #569611
2009-05-04 11:26:56 +02:00
Wim Taymans
1619c09e3e qtdemux: add some more micro optimisations 2009-05-01 19:35:11 +02:00
Wim Taymans
ab0d1bc942 qtdemux: micro optimize qtdemux a little
Sprinkle some G_LIKELY around.

Avoid traversing and dumping the tree when debugging is not activated.
2009-04-30 18:41:44 +02:00
Wim Taymans
b5d84439fd qtdemux: add support for subtitle pictures
Add support for subtitle pictures.
Fixes #568278.
2009-04-30 14:22:27 +02:00
Wim Taymans
de0a2575fc rtspsrc: release state lock before stopping task
We need to release the state lock before trying to wait for the task to end
because the task might also take the lock.

Fixes #577671
2009-04-29 18:09:07 +02:00
Hans de Goede
6cfa856381 qtdemux: handle ac-3 audio
fix demuxing of m4v streams with ac-3 audio
Fixes #580554
2009-04-29 12:19:27 +02:00
Wim Taymans
b3782442ae udpsrc: fix getaddrinfo error reporting
getaddrinfo errors should be reported with gai_strerror instead of errno as
spotted by MikeS.
2009-04-27 18:00:17 +02:00
Wim Taymans
f33501ad4b g726pay: fix compilation 2009-04-27 10:08:55 +02:00
Wim Taymans
84c3d1a2c8 g726pay: add RFC compliant packetizing
Shuffle the input bits according to RFC 3551 for G726 payloads.
Add option to force the previous behaviour.

Fixes #567140
2009-04-27 10:08:55 +02:00
Wim Taymans
e213debe8e g726depay: add debug category
Add a debugging category, add some comments and remove _peek_parent().
2009-04-27 10:08:55 +02:00
Tim-Philipp Müller
a85d7b7059 id3demux: parse unsynchronised tags properly
We didn't handle unsynchronization at all up to now, which might have
caused frames to not be extracted - esp. frames after an APIC picture
frame. Fixes #577468.
2009-04-24 01:58:23 +01:00
Tim-Philipp Müller
19117a39fe id3demux: pass the right size value for size of all frames to the parser
Frame data size is tag size adjusted for size of the tag header and
footer, not tag size including header and footer.
2009-04-24 01:05:40 +01:00
Patrick Radizi
5b86c66e8a rtspsrc: fix some more pad leaks
Fix some pad leaks.
See #577318.
2009-04-22 15:27:24 +02:00
Michael Smith
922c9f529a qtdemux: override caps based on data from ESDS atoms in mpeg4.
If the codec is actually something else (e.g. mjpeg) change the caps to
match when parsing the ESDS atom.
Also, for AAC, override rate and channels with correct values read from
ESDS, since the rate/channels values elsewhere are often wrong.
2009-04-21 14:04:07 -07:00
Jan Schmidt
a097571c0a udp: Fix a simple typo in the previous commit
Use #ifdef instead of #if, to fix the build
2009-04-20 17:26:11 +01:00
Andy Wingo
07dcbacd60 only use struct ip_mreqn if it is detected
* configure.ac: Make an explicit check for struct ip_mreqn.

* gst/udp/gstudpnetutils.c: Use HAVE_IP_MREQN instead of the ad-hoc checks.
2009-04-20 15:54:31 +02:00
Mark Nauwelaerts
cfcf76df11 Fix push mode buffering sanity check to actually fit the description. 2009-04-20 13:49:03 +02:00
Edward Hervey
1183015954 rtph263pay: And let's not forget to remove the unused variable. 2009-04-18 19:11:06 +02:00
Edward Hervey
1554c6637f rtph263pay: Remove dead assignments, the variables are never read after. 2009-04-18 18:51:30 +02:00
Edward Hervey
3efcf936e1 rtpmp4vpay: Remove dead assignment. The value is never read after. 2009-04-18 18:51:29 +02:00
Edward Hervey
4c60f9ef29 rtspsrc: Remove dead assignment.
t is being overwritten after, before it's used.
2009-04-18 18:51:29 +02:00
Edward Hervey
84b6d07c75 rtpamrdepay: Remove unneeded variable, the value is only read once. 2009-04-18 18:51:29 +02:00
Edward Hervey
f6b774fbcc rtpamrpay: Remove unneeded variable, the value is only read once. 2009-04-18 18:51:29 +02:00
Edward Hervey
f6458e2c4c goom/filters: Remove dead assignment. Value overwritten just after. 2009-04-18 18:51:29 +02:00
Edward Hervey
bf9c2067cf rtpvorbispay: Remove dead assignment. Value never read after. 2009-04-18 18:51:29 +02:00
Edward Hervey
58a7c2ad8d rtptheorapay: Remove dead assignment. Value never read after. 2009-04-18 18:51:29 +02:00
Edward Hervey
8cf696a1f1 rtptheoradepay: Remove unused variable, it's never being read. 2009-04-18 18:51:29 +02:00
Edward Hervey
45c6690e26 rtspsrc: Remove dead assignment. 'res' isn't read after. 2009-04-18 18:51:29 +02:00
Edward Hervey
817d7a30c3 rtspsrc: Remove unused variable. 'res' is never read. 2009-04-18 18:51:29 +02:00
Edward Hervey
08a090c89c rtspsrc: Remove dead variable. 'stream' is never read after. 2009-04-18 18:51:29 +02:00
Edward Hervey
971fbb246b videbox: Remove dead assignments.
These variables are never read after this point.
2009-04-18 18:51:28 +02:00
Edward Hervey
c185a8db9d goom: ff and iff are only used in a '#ifdef DRAW_MOTIF' block. 2009-04-18 18:51:28 +02:00
Edward Hervey
5c52506d07 wavparse: Remove dead assignment.
res isn't read after this.
2009-04-18 18:51:28 +02:00
Edward Hervey
44256a78f8 wavparse: Remove dead assignments, move variable to where it's needed.
The header_read_error label will return GST_FLOW_ERROR
2009-04-18 18:51:28 +02:00
Edward Hervey
a12d9a80f2 rtpvrawdepay: Remove dead assignment.
The value of 'str' will never be used in these cases.
2009-04-18 18:51:28 +02:00
Edward Hervey
b28c6ca0fb matroskademux: Remove useless variable.
iret was never read outside of that loop, and is always being exited if
iret was != GST_FLOW_OK anyway.
2009-04-18 18:51:28 +02:00
Edward Hervey
1086c63827 avidemux: Move 'res' to where it's actually being used.
res was never used outside of that block except for a dead assignment.
2009-04-18 18:51:28 +02:00
Edward Hervey
a299e86cfc audiofx: Remove unused variable.
rz is never used in these methods.
2009-04-18 18:51:28 +02:00
Edward Hervey
0cb5b42d54 Remove trivial unused variables detected by CLang static analyzer. 2009-04-18 18:51:28 +02:00
Edward Hervey
cdb03bdc2b Remove blank {set|get}_property/change_state/finalize methods. 2009-04-18 18:51:27 +02:00
Edward Hervey
4a9e80720a Remove unused variables in _class_init
Detected by LLVM's CLang static analyzer
2009-04-18 18:51:27 +02:00
Josep Torra
dfb375daa1 rtspsrc: mark discont on the streams as was said the debug line
After a seek mark all streams with discont as it was said in the debug line.
Fixes that buffers after a seek are generated without a valid timestamp.
2009-04-18 14:32:40 +02:00
Josep Torra
ec2d6053a0 rtspsrc: map GST_RTSP_EEOF to EOS on server requests
Permit properly handle the EOS condition when server report it in a request.
2009-04-18 08:50:46 +02:00
Edward Hervey
f9d7640bc9 rtptheoradepay: Fix build on macosx.
Use G_GSIZE_FORMAT instead of u.
2009-04-18 08:39:57 +02:00
James Andrewartha
ac48c2d211 rtph263pay: fix compilation on big-endian
Some semicolons were missing from the big-endian structs in gstrtph263pay.h.
A GST_DEBUG call was missing a format specifier.

Fixes #579069
2009-04-15 19:26:22 +02:00
Marco Ballesio
94d5d24cf0 qtdemux: implement 3GPP (TS 26.244 V8.0.0) Asset metadata handling, Fixes #132193
Implements 3gpp iso metadata tags which are different from mov udta atoms.
2009-04-15 20:14:19 +03:00
Peter Kjellerstedt
af7f3a50dd debugutils: Use G_BEGIN_DECLS/G_END_DECLS.
Use G_BEGIN_DECLS/G_END_DECLS to avoid gst-indent messing up the
indentation due to extern "C" { }.
2009-04-15 15:51:24 +02:00
Stefan Kost
7be792fa13 debug: rename debug to debugutils to avoid clash with --disable-debug. Fixes #562168 2009-04-15 16:13:34 +03:00
Stefan Kost
99fcc86ee4 debug: indent before renaming 2009-04-15 16:13:34 +03:00
Wim Taymans
787124dad6 g726depay: add property for aal2 force 2009-04-15 14:07:57 +02:00
Wim Taymans
0802ba8730 g726depay: implement RFC3551 packing
We implemented the AAL2 packing, add the encoding-name for those to the caps and
a property to force AAL2 decoding (always TRUE for now).
Implement RFC3551 unpacking for regular G726.
See #567140.
2009-04-15 13:56:17 +02:00
Wim Taymans
c34d5aa016 rtph263pay: fix build 2009-04-15 00:22:43 +02:00
Youness Alaoui
17d9cb3319 h263pay: various fixes
Re-enable mode A support and a property to control it.
Fix memory leak of GstRtpH263PayBoundry objects.
Fix marker.
Fixes #509311
2009-04-14 18:52:48 +02:00
Janin Kolenc
de2c489526 h263pay: Fix the payloader
Fix the H263 payloader to be more RFC 2190 compliant.
See #509311
2009-04-14 18:44:51 +02:00
Wim Taymans
cb344828a4 avidemux: don't push EOS in streaming mode
In streaming mode, avidemux is not supposed to send an EOS event downstream but
it is supposed to return UNEXPECTED from the chain function instead so that
upstream can do the right EOS handling.
2009-04-14 17:27:05 +02:00
Sebastian Dröge
108774781d Add initial support for muxing/demuxing Speex audio
Note: This is not in the Matroska spec yet
Fixes bug #578310.
2009-04-13 14:03:03 +02:00
LRN
3e7aede3ea avidemux: add convert query, fix duration query
Fix the duration query so that it also works with formats other than
TIME, such as DEFAULT to get the number of frames.

Add a convert function.

Fixes #578052.
2009-04-10 00:26:44 +02:00
Stefan Kost
1095e624ec wavparse: don't leak pad-template
gst_element_class_add_pad_template() does not take ownership.
2009-04-07 22:36:39 +03:00
Zaheer Merali
988a4c6532 Fix grammar. 2009-04-03 09:57:15 +01:00
Wim Taymans
b6bf3ba7d3 rtspsrc: allow http:// on the proxy setting
Allow and ignore http:// at the start of the proxy setting, like
souphttpsrc.
Fixes #573173
2009-04-02 22:41:01 +02:00
Wim Taymans
40f6ed8875 rtspsrc: don't leak the udpsrc pad
Fix memory leak in rtspsrc because we didn't unref the udpsrc pad.
See #577318
2009-04-02 21:08:48 +02:00
Michael Smith
85d7fb0599 rtptheorapay: fix length encoding in packed headers.
As for vorbis payloader; this by inspection had the same bug.
2009-04-01 17:31:18 -07:00
Michael Smith
5f9d9e2243 rtpvorbispay: in packed headers, properly flag multibyte lengths.
In the sequence of header lengths, for headers >127 bytes, we use
multiple bytes to encode the length. Bytes other than the last must have
the top (flag) bit set.
2009-04-01 17:23:33 -07:00
Tim-Philipp Müller
cb15d09c4a rtspsrc: don't emit ugly warnings with older rtpjitterbuffer versions
The on-npt-stop signals was added only recently to rtpjitterbuffer in
-bad, so check if the signal exists before g_signal_connect()ing to
it, to avoid warnings.
2009-04-01 12:29:33 +01:00
Wim Taymans
b037369d5b rtspsrc: add proxy support 2009-03-31 19:08:37 +02:00
Stefan Kost
605ded5292 matroska: don't leak serialized values when writing tags 2009-03-31 17:16:04 +03:00
Stefan Kost
5ac6b84475 matroska: don't alter passed data and especialy don't leak.
If we need different size, Make a copy, work with that and free it.
2009-03-31 17:06:50 +03:00
Stefan Kost
fa8e2d9bfe goom: the structure is not fully initialized, but the copied.
Set to fully to 0 to avoid creep of uninitialized values.
2009-03-31 16:42:15 +03:00
Stefan Kost
ef7bcf7bd1 matroska: init endianess as such and signedness as boolean. 2009-03-31 16:25:58 +03:00
Stefan Kost
0889ac1092 qtdemux: don't use ininitialized var in debug log statement
Also make the log statement useful by printing the human readable format name.
2009-03-31 16:22:42 +03:00
Stefan Kost
f4f6d9799c qtdemux: don't leak atom data in case of a wrong fourcc 2009-03-31 12:01:21 +03:00
Stefan Kost
9b8f1cbaa2 matroska: don't leak read data in demuxer 2009-03-31 11:57:36 +03:00
Stefan Kost
ba2c101963 udp: don't use protocol in debug message after freeing 2009-03-31 11:50:41 +03:00
Tim-Philipp Müller
6e5f789fa0 rtpmp4adepay: output should be framed already 2009-03-30 14:13:29 +01:00
Wim Taymans
fd18185d44 rtspsrc: link to the on_npt_stop signal to EOS
Connect to the on_npt_stop signal of the session manager to schedule the EOS
actions.
2009-03-27 17:49:15 +01:00
Mark Nauwelaerts
3360f449c0 qtdemux: some stream synchronization to aid seeking in unbalanced clips
Some clips (trailers) may have (length-wise) unbalanced streams,
which stalls the pipeline if seeking into that region.
Additional stream synchronization can handle this, as well as
sparse (subtitle) streams (at some later time ?)
2009-03-26 14:39:06 +01:00
Mark Nauwelaerts
a5502c9b37 qtdemux: additional safety and sanity checks (push based mode) 2009-03-26 14:38:02 +01:00
Wim Taymans
07329bc083 videomixer: some more indent fixes 2009-03-26 10:18:31 +01:00
Wim Taymans
62d118678a videomixer: fix gst-indent screwup 2009-03-26 10:17:48 +01:00
Tim-Philipp Müller
37634c2afb rtspsrc: better error message when the RTSP extension for Real streams is missing
Try to post a decent error message when it looks like we're failing
because the Real RTSP extension plugin is missing. Also add i18n
bits for rtspsrc so our error messages get translated.
2009-03-25 17:54:35 +00:00
Tim-Philipp Müller
2199592039 i18n: make sure gettext gives us UTF-8 at all times 2009-03-25 15:42:15 +00:00
Tim-Philipp Müller
4bcd50ccbd rtpmp4apay,rtpmp4depay: fix buffer leaks in AAC payloader and depayloader 2009-03-25 10:36:49 +00:00
Tim-Philipp Müller
297bbfbebc rtpmp4apay: warn if input is unframed 2009-03-25 10:36:49 +00:00
Mark Nauwelaerts
cfb39dbb1b qtdemux: handle FLUSH_STOP event
Clean up some state (most notably pad flow returns) to resume
proper streaming following flushing seek.
2009-03-24 15:48:26 +01:00
Alessandro Decina
b0c5c7f19b avidemux: don't post an error if EOS can't be pushed downstream.
This aligns avidemux with other demuxers and fixes a bug using avidemux
with a recent gnonlin.
2009-03-24 12:42:13 +01:00
Mark Nauwelaerts
cc1a869a2c qtdemux: support seeking in push based mode 2009-03-20 17:59:38 +01:00
Mark Nauwelaerts
d5120cda4b qtdemux: align push based behaviour more with pull based
Cater for DELTA_UNIT flag on buffers, keep track of current
position, remove and warn about edit lists if any (as those
as are de facto discarded anyway), add some debug statements
and indent fixes.
2009-03-20 17:59:35 +01:00
Mark Nauwelaerts
21fc435c71 qtdemux: fix mem leaks and prevent excessive buffering in push based mode 2009-03-20 17:59:32 +01:00
Tim-Philipp Müller
fa3d457882 rtpmp4adepay: don't append an extra 0 byte to the codec data
The audioMuxVersion structure is packed in such a way that the codec
data does not start byte-aligned, which means there's an extra bit of
padding at the end. We don't want that bit in the codec data, since
some decoders seem get confused when they're fed with an extra codec
data byte (also it's just not right of course).
2009-03-20 01:06:14 +00:00
Wim Taymans
f18dabdd57 rtph264depay: fix base64 decoding
We can't pass -1 to _decode_step, that functions returns 0 right away instead of
decoding up to the string end.
2009-03-19 13:25:57 +01:00
David Adam
710ff959e3 udp: Fix build if on Solaris
This patch checks for Solaris and uses ip_mreq instead of ip_mreqn if on this
platform.
Fixes #575937.
2009-03-19 13:24:02 +01:00
Sebastian Dröge
77e2637590 rtp: Use GLib functions for encoding/decoding base64 2009-03-18 14:50:17 +01:00
Wim Taymans
8cf0e9ff87 rtspsrc: add some debug for the timestamps
When timestamping in TCP mode, log the first timestamp we put on the buffers.
2009-03-16 19:17:24 +01:00
Wim Taymans
0c4f3d4afb udpsrc: convert _ in properties to -
--
2009-03-13 18:32:47 +01:00
Edgar E. Iglesias
469aced581 udpsrc: Add network interface selection
Add network interface selection when joining multicast groups.
Useful when using the udpsrc on multihomed hosts.
Fixes #575234.

API: GstUDPSrc::multicast-iface
2009-03-13 18:28:59 +01:00
Wim Taymans
7782c9f890 rtspsrc: don't send PAUSE when not connected
don't send a PAUSE request when we are no longer connected.
2009-03-12 20:39:35 +01:00
Wim Taymans
515d623dcc rtspsrc: fix timeout check
---
2009-03-11 18:00:02 +01:00
Stefan Kost
a58498929c makefile: fix typo in no-static plugins rule 2009-03-10 21:35:16 +02:00
Edward Hervey
72a9b89b50 gstrtpvorbisdepay: Fix build on macosx 2009-03-10 10:16:27 +01:00
Wim Taymans
06efeff5d9 vorbisdepay: fix some leaks
And leak the codebooks.
Use glib base64 decoders.
Use subbuffers to avoid a memcpy of the headers.
2009-03-09 18:07:20 +01:00
Wim Taymans
af7aaef37a qtdemux: sanitize tag names
Sanitize the tag names before turning them into a structure name. We can only
add alphanumeric values as the structure name.
2009-03-09 15:20:05 +01:00
Wim Taymans
636cd65ebf rtspsrc: fix range parsing
Fix parsing of the range headers.
2009-03-05 14:09:03 +01:00
Olivier Crête
e4b8c514cc Move siren rtp pay/depay from gst-plugins-farsight 2009-03-04 13:24:34 -05:00
Wim Taymans
5a5ba49c9b rtspsrc: fix memory leak in close
Close the connection even when we fail to send the teardown message.
Use the connection url (which is a copy of the src url).
2009-03-04 16:31:57 +01:00
Wim Taymans
dfb2d1b7d7 rtspsrc: fix do-rtcp property description
---
2009-03-04 12:29:50 +01:00
Wim Taymans
8b6c8b934a rtpmp4vpay: Add support for more formats
Hack around short header mpeg4 video files and put the short header as the
config string.
Fixes #572551.
2009-03-02 17:18:55 +01:00
Wim Taymans
81f25317e6 rtspsrc: add support for http tunneling
Add support for http tunneling and a new rtsph:// uri for it.
See #573173.
2009-03-02 16:09:23 +01:00
Tim-Philipp Müller
7087da96dc alawdec, mulawdec: demote some debug messages from ERROR to WARNING or DEBUG
Non-ok flow returns may happen for a variety of perfectly legitimate and expected reasons
(temporarily not linked, seeking, pipeline shutdown), so we really shouldn't spew ERROR
debug messages to stderr in those cases. Fixes #570781. (Seems like someone already took
care of some of these.)
2009-02-28 19:26:35 +00:00
René Stadler
157531d91e rgvolume: Improve log message for peak values >1.0 by clamping explicitly. 2009-02-28 15:26:00 +02:00
Sebastian Dröge
d189fe7f26 Merge branch 'master' of ssh://git.freedesktop.org/git/gstreamer/gst-plugins-good 2009-02-27 20:28:27 +01:00
LRN
5d9c947f92 udp: Don't set errno to EAFNOSUPPORT unconditionally
Fixes bug #573342.
2009-02-27 20:24:53 +01:00
Michael Smith
b50452fc37 rgvolume: ignore out-of-range peak values
If the peak value is > 1 (and thus nonsensical) ignore it. Prevents
rgvolume reducing volume to effectively silent on files with bogus peak
values.
2009-02-27 11:18:40 -08:00
Mark Nauwelaerts
3310a540e3 wavparse: Fix SEEK event handling in push mode, and SEEKABLY query handling
Standard pull mode loop based SEEK handling fails in push mode,
so convert the SEEK event appropriately and dispatch to upstream.
Also cater for NEWSEGMENT event handling, and properly inform
downstream and application of SEEKABLE capabilities, depending
on scheduling mode and upstream.
2009-02-27 14:52:31 +01:00
Edward Hervey
1846e0af0f matroskademux: Remove gst_util_dump_mem() calls. 2009-02-27 11:04:08 +01:00
Julien Moutte
ec5229d75f avidemux: fix SEEK event handling in push mode
When in push mode we should not try to handle the SEEK event as there's
no code to handle it properly. Propagate upstream.
2009-02-26 19:10:41 +01:00
Patrick Radizi
51200cad41 rtspsrc: add the .h file change too
Add the .h file change for the new property.
2009-02-26 19:05:06 +01:00
Patrick Radizi
c7dd6a4902 rtspsrc: add property to disable RTCP
Some old servers don't like us doing RTCP and thus we need a property to disable
it. See #573173.
2009-02-26 19:03:52 +01:00
Jan Smout
474d9d7a9b udp: fix gst_udp_set_loop_ttl() again
Fix the gst_udp_set_loop_ttl() function that was commented out in a
previous commit. See #573115.
2009-02-26 13:19:31 +01:00
Wim Taymans
af2e8f8470 rtpvrawdepay: fail on interlaced video
Fail on interlaced video until we support it.
2009-02-26 13:06:17 +01:00
Wim Taymans
62d5787bcd rtpvrawpay: fail on interlaced video
Detect and fail when trying to payload interlaced video.
2009-02-26 13:00:58 +01:00
Wim Taymans
40bc040064 udpsrc: fix compilation
Fix compilation on systems MSG_ERRQUEUE and IP_RECVERR.
2009-02-25 14:01:26 +01:00
Peter Kjellerstedt
7c56695160 udpsrc: Make sure the sockaddr length used for recvfrom() is big enough.
Previously the sockaddr length used for recvfrom() was calculated as
sizeof (struct sockaddr). However, this is too little to hold an IPv6
address, so the full size of the gst_sockaddr union should be used
instead.
2009-02-25 12:52:37 +01:00
Peter Kjellerstedt
6e5e9edabf udpsrc: Unify the use of union gst_sockaddr. 2009-02-25 12:52:37 +01:00
Wim Taymans
1fec709792 avidemux: avoid crashing on subtitles
Avoid a crash in avi with subtitles by only dereferencing the video description
when we actually are dealing with video in the _invert function.
2009-02-25 12:05:22 +01:00
Jan Schmidt
8588ebd22a udp: Fix strict-aliasing warnings from gcc 4.4.0
Fix strict aliasing warnings by defining a union on the different
sockaddr structs that we need.
2009-02-24 18:19:57 +00:00
Tim-Philipp Müller
b4115aa83e rtp: Fix compiler warning in h264 payloader
Fix an undefined behaviour warning from gcc 4.4.0

Patch By: Tim-Philipp Müller <tim.muller@collabora.co.uk>
Fixes: #570995
Signed-Off-By: Jan Schmidt <jan.schmidt@sun.com>
2009-02-24 17:59:29 +00:00
Edward Hervey
6512b3eb81 qtdemux: Also use "(c)inf" to fill the comment tag 2009-02-24 14:41:26 +01:00
Mark Nauwelaerts
21cb00aa9c rtspsrc: perform UDP SETUP according to MS RTSP spec
MS RTSP spec states that the UDP port pair used in subsequent SETUP
requests for various streams must be identical (since there will actually
be only 1 stream of muxed asf packets).  Following traditional specs and
using different port pairs in the SETUPs for separate streams will result
in all but the first one failing and only one stream being streamed.

So, in appropriate circumstances, retry UDP SETUP using previously used
port pair.  Fixes #552650.
2009-02-23 22:47:55 +01:00
Aurelien Grimaud
969622b439 Read ICMP error messages instead of looping
When we are dealing with connected sockets shared between a udpsrc and a udpsink
we might receive ICMP connection refused error messages in udpsrc that will
cause it to go into a bursty loop because the poll returns right away without a
message to read.

Instead of looping, read the error message from the error queue in udpsrc.
Fixes #567857.
2009-02-23 20:49:37 +01:00
Wai-Ming Ho
aeee52be05 Always add PPS to the sprop-parameters-set
Rework the parsing code that under certain circumstances dropped the PPS from
the sprop-parameters-set.
Fixes #572854.
2009-02-23 15:43:51 +01:00
Arnout Vandecappelle
b9adb5846b Don't do crazy things with 0/1 framerates
We use 0/1 framerates to mark variable framerates and matroskamux should not try
to calculate a frame duration for it.
Fixes #571294.
2009-02-23 12:14:23 +01:00
Wim Taymans
a08d75b892 Call new receive_request method
Call the receive_request extension methods so that extensions can handle the
server request if they want.
2009-02-23 11:42:53 +01:00
Wim Taymans
c4d53e9cc2 Add method for hadling server requests
Add method to handle server requests on the list of RTSP extensions.
2009-02-23 11:13:30 +01:00
Wim Taymans
8c9931e13e Don't use GST_ERROR for non-error cases.
Turn a GST_ERROR line into a GST_DEBUG line so that we don't spam the log with
errors. Fixes #570781.
2009-02-23 11:09:53 +01:00
Sebastian Dröge
a7c2b13543 matroskademux: Unref the buffer and not the memory address of the buffer 2009-02-22 19:25:39 +01:00
Olivier Crete
bfcf84a3eb alaw/mulaw: Implement _getcaps function for alaw/mulaw decoders
Fixes bug #572358.
2009-02-22 18:47:35 +01:00
Olivier Crete
b3a90202c1 alaw/mulaw: Don't require both, rate and channel, to be set in _getcaps
Fixes bug #572358.
2009-02-22 18:46:03 +01:00
Sebastian Dröge
6756475fd3 avidemux: Fix alignment issues by using GST_READ_*
Reading integers from random memory addresses will result
in SIGBUS on some architectures if the memory address
is not correctly aligned. This can happen at two
places in avidemux so we should use GST_READ_UINT32_LE
and friends here. Fixes bug #572256.
2009-02-22 18:32:02 +01:00
Jan Schmidt
591416e0ce Update Since: tags in autodetect srcs and audioecho 2009-02-19 13:16:39 +00:00
Edward Hervey
77c7eed1ae aspectratiocrop: Don't forget to call parent finalize implementation.
This fixes a memory leak (leaking the contained elements of the bin).
2009-02-10 11:27:51 +01:00
David Schleef
40bd377230 qtdemux: Add handling for stps atoms
stps atoms contain "partial sync" information, which means that it's
a sync point where pts != dts.  This is needed to properly handle
MPEG2, H.264, Dirac, etc., in quicktime.
2009-02-06 16:21:58 -08:00
Wim Taymans
1dc5c34143 rtspsrc: Keep track of connected state
Keep track of the state of the connection and don't try to send TEARDOWN when
the server has closed the connection.
2009-02-04 11:38:30 +01:00
Robin Stocker
7353cdc029 Read Matroska Title element for the TITLE tag
Not all Matroska files have a Tags element which contains
information about the title among other things. Most video
Matroska files only contain the Title element so we
should parse this too. Fixes bug #570435.
2009-02-04 09:20:28 +01:00
Stefan Kost
7de49319d7 equalizer: Don't reset frequency bands from user settings. Fixes #570343.
Move reallocating the history buffer out of _compute_frequencies() and call the
right function as needed. Add some logging and tweak the formatting of existing
logging. Simplify setting need_new_coefficients when changing properties.
2009-02-03 14:16:40 +02:00
Sebastian Dröge
be3674c516 Use guint64 instead of guint for storing guint64 2009-02-03 11:52:15 +01:00
Jan Schmidt
31b2b89cfe Don't use Glib 2.16 function g_strcmp0. 2009-01-30 17:35:49 +00:00
Jan Schmidt
fea851d100 Don't do void pointer arithmetic 2009-01-30 17:34:45 +00:00
Jan Schmidt
367f9123de Fix Forte compiler warnings.
Don't do void pointer arithmetic. Don't have an unreachable statement.
2009-01-30 17:26:19 +00:00
Edward Hervey
35848f66d8 Remove useless processing for non-raw formats 2009-01-30 17:01:30 +01:00
Edward Hervey
b2f17781ac Add support for the 'Requirement' and 'Encoder' tags 2009-01-30 15:34:31 +01:00
Edward Hervey
1af5a5d001 Modify private-tag name formatter so that it doesn't go mad at fourcc starting with '(c)'. 2009-01-30 15:33:19 +01:00
Thijs Vermeir
1c3fb99252 Only unref the peer when there is one. 2009-01-29 14:08:56 +01:00
Stefan Kost
8e462968cf Remove version numbers from a few gst-launch examples.
The majority of the examples doe not use -0.10 and this will also help us to maintain the docs.
2009-01-29 11:07:59 +02:00
Stefan Kost
bdb07d50be Add ' to framerate argument and remove the word 'simple' as all our pipelines are apparently simple. 2009-01-29 10:12:43 +02:00
Stefan Kost
9cf73bdd8f Update and add documentation for plugins with deps (ext).
Link to properties. Correct titles for examples. Document a few trivial cases. Keep lists in section file and docs/plugins/Makefile.am alphabetically ordered. Fix warnings that gtk-doc points out.
2009-01-28 18:05:09 +02:00
Sebastian Dröge
1f32369451 Limit the delay by a new max-delay property
Introduce a new max-delay property that can only
be set before going to PLAYING or PAUSED. This
is used to limit the maximum delay and is set
to the current delay by default.

Using this will make sure that we have enough data
in our internal ringbuffer for the echo. With dynamic
reallocation of the ringbuffer as used before silence
could've been used as the echo directly after setting
a new delay.
2009-01-28 16:01:34 +01:00
Stefan Kost
a99d3f8769 Update and add documentation for plugins with no deps (gst).
Link to properties. Correct titles for examples. Document a few trivial cases. Keep lists in section file and docs/plugins/Makefile.am alphabetically ordered.
2009-01-28 12:32:59 +02:00
Peter Kjellerstedt
ceb175f087 Plug a memory leak in a debug message. 2009-01-26 16:14:47 +01:00
Peter Kjellerstedt
5f642f38bd Correct return value from gst_udp_get_addr() when no known family is found. 2009-01-26 15:49:22 +01:00
David Schleef
66de4c1bba Add a few more video fourcc's 2009-01-25 19:26:46 -08:00
Thijs Vermeir
27093c19a4 Add unit test for aspectratiocrop Fixes bug #527951
Add unit test for aspectratiocrop and refactor this element. Added
finalize function to cleanup leaking mutex.
2009-01-25 18:40:42 +01:00
Sebastian Dröge
fb8a2b359d Save some allocations if the echo delay is increased often
Save some allocations if the echo delay is increased often
during playback by always allocating enough memory to hold
data up to the next complete second, i.e. in the worst case
allocate memory for one additional second.
2009-01-24 18:30:55 +01:00
Thijs Vermeir
18b7726b7b Fix link in documentation of videocrop element 2009-01-24 14:21:56 +01:00
Thijs Vermeir
56b3efb077 Add documentation for aspectratiocrop 2009-01-24 14:21:56 +01:00
Sebastian Dröge
f2524f71d7 Add note that audioecho's reverb sounds metallic
Add a note to the docs that audioecho's reverb will
sound metallic. This happens because for a real
reverb filter additional filtering is necessary.

Also note which values should be used for the delay
property to get an echo effect.
2009-01-24 11:55:04 +01:00
Thijs Vermeir
c1cb1e0c5b Add aspectratiocrop element. Fixes bug #527951
Add new aspectratiocrop element that crops the video
to a specified aspect ratio using videocrop.
2009-01-23 15:52:55 +01:00
Thijs Vermeir
1b82293248 Fix navigation event forwarding while cropping. Fixes bug #567992.
Fix the navigation event forwarding while cropping by adjusting
the mouse position by the amount of cropped pixels.
2009-01-23 10:49:28 +01:00
David Schleef
bdc20b9baf Fix for security advisory TKADV2009-0xx
Fix potential buffer overflows while reading quicktime headers.
Security issue noticed by Tobias Klein.
2009-01-22 14:33:05 +00:00
Sebastian Dröge
99753365c6 Rename audioreverb to audioecho. Fixes bug #568395.
The element can add an echo and a simple reverb effect to
an audio stream but for a real reverb filter it would need
some additional filtering to prevent a metallic-sounding
result.
2009-01-22 13:27:56 +01:00
Wim Taymans
16799b6b16 Free leftover udp ports (if any) when a setup request fails. 2009-01-22 12:21:29 +01:00
Luotao Fu
0a89f5e50c gst/videocrop/gstvideocrop.c: Add 8bit grayscale support to videocrop plugin. Fixes #567952.
Original commit message from CVS:
Patch by: Luotao Fu <l dot fu at pengutronix dot de>
* gst/videocrop/gstvideocrop.c:
(gst_video_crop_get_image_details_from_caps):
Add 8bit grayscale support to videocrop plugin. Fixes #567952.
2009-01-19 11:44:36 +00:00
Sebastian Dröge
0701ffa556 gst/audiofx/audioreverb.c: Set the default value in the instance init function.
Original commit message from CVS:
* gst/audiofx/audioreverb.c: (gst_audio_reverb_init):
Set the default value in the instance init function.
2009-01-19 11:22:06 +00:00
Sebastian Dröge
344a9f4229 Add an echo/reverb filter to the audiofx plugin, with configurable echo delay, intensity and feedback. Fixes bug #567...
Original commit message from CVS:
* docs/plugins/Makefile.am:
* docs/plugins/gst-plugins-good-plugins-docs.sgml:
* docs/plugins/gst-plugins-good-plugins-sections.txt:
* docs/plugins/gst-plugins-good-plugins.args:
* docs/plugins/gst-plugins-good-plugins.hierarchy:
* docs/plugins/inspect/plugin-audiofx.xml:
* docs/plugins/inspect/plugin-spectrum.xml:
* gst/audiofx/Makefile.am:
* gst/audiofx/audiofx.c: (plugin_init):
* gst/audiofx/audioreverb.c: (gst_audio_reverb_base_init),
(gst_audio_reverb_class_init), (gst_audio_reverb_init),
(gst_audio_reverb_finalize), (gst_audio_reverb_set_property),
(gst_audio_reverb_get_property), (gst_audio_reverb_setup),
(gst_audio_reverb_stop), (gst_audio_reverb_transform_ip):
* gst/audiofx/audioreverb.h:
* tests/check/Makefile.am:
* tests/check/elements/audioreverb.c: (setup_reverb),
(cleanup_reverb), (GST_START_TEST), (audioreverb_suite):
Add an echo/reverb filter to the audiofx plugin, with configurable
echo delay, intensity and feedback. Fixes bug #567874.
2009-01-19 11:19:08 +00:00
Sebastian Dröge
d912a42065 gst/spectrum/gstspectrum.*: Implement a simple compensation algorithm for rounding errors.
Original commit message from CVS:
* gst/spectrum/gstspectrum.c: (gst_spectrum_reset_state),
(gst_spectrum_transform_ip):
* gst/spectrum/gstspectrum.h:
Implement a simple compensation algorithm for rounding errors.
This makes sure that a spectrum message is posted on the bus
every interval nanoseconds. Fixes bug #567955.
2009-01-19 10:13:53 +00:00
Wim Taymans
293671170e gst/qtdemux/qtdemux.c: Catch invalid and commonly wrong playback rates in the elst atoms.
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (qtdemux_parse_segments):
Catch invalid and commonly wrong playback rates in the elst atoms.
Fixes #567800.
2009-01-15 14:53:18 +00:00
Sebastian Dröge
9ee7150985 gst/spectrum/gstspectrum.c: Don't call gst_fft_f32_free() with NULL to prevent a crash. Fixes bug #567642.
Original commit message from CVS:
* gst/spectrum/gstspectrum.c: (gst_spectrum_reset_state):
Don't call gst_fft_f32_free() with NULL to prevent a
crash. Fixes bug #567642.
2009-01-15 11:40:23 +00:00
Sebastian Dröge
f4b2d38c87 gst/spectrum/gstspectrum.*: Use correct types for frame/fft counters and some minor cleanup.
Original commit message from CVS:
* gst/spectrum/gstspectrum.c: (gst_spectrum_transform_ip):
* gst/spectrum/gstspectrum.h:
Use correct types for frame/fft counters and some minor
cleanup.
2009-01-14 15:44:18 +00:00
Sebastian Dröge
5d001b3ab6 gst/spectrum/: Post a spectrum message on the bus for every interval, even if the interval is small than the length o...
Original commit message from CVS:
* gst/spectrum/Makefile.am:
* gst/spectrum/README:
* gst/spectrum/gstspectrum.c: (gst_spectrum_base_init),
(gst_spectrum_class_init), (gst_spectrum_init),
(gst_spectrum_reset_state), (gst_spectrum_finalize),
(gst_spectrum_set_property), (gst_spectrum_start),
(gst_spectrum_stop), (gst_spectrum_setup),
(gst_spectrum_transform_ip):
* gst/spectrum/gstspectrum.h:
Post a spectrum message on the bus for every interval, even
if the interval is small than the length of the FFT.
Fixes bug #567642.
Major cleanup of the spectrum element.
2009-01-14 10:46:54 +00:00
Sebastian Dröge
75c1c9f378 Add audioiirfilter and audiofirfilter elements which allow generic IIR/FIR filters to be implemented by providing the...
Original commit message from CVS:
* configure.ac:
* gst/audiofx/Makefile.am:
* gst/audiofx/audiofirfilter.c: (gst_audio_fir_filter_base_init),
(gst_audio_fir_filter_class_init),
(gst_audio_fir_filter_update_kernel), (gst_audio_fir_filter_init),
(gst_audio_fir_filter_setup), (gst_audio_fir_filter_finalize),
(gst_audio_fir_filter_set_property),
(gst_audio_fir_filter_get_property):
* gst/audiofx/audiofirfilter.h:
* gst/audiofx/audiofx.c: (plugin_init):
* gst/audiofx/audioiirfilter.c: (gst_audio_iir_filter_base_init),
(gst_audio_iir_filter_class_init),
(gst_audio_iir_filter_update_coefficients),
(gst_audio_iir_filter_init), (gst_audio_iir_filter_setup),
(gst_audio_iir_filter_finalize),
(gst_audio_iir_filter_set_property),
(gst_audio_iir_filter_get_property):
* gst/audiofx/audioiirfilter.h:
Add audioiirfilter and audiofirfilter elements which allow
generic IIR/FIR filters to be implemented by providing the
filter coefficients. Fixes bug #567577.
* docs/plugins/Makefile.am:
* docs/plugins/gst-plugins-good-plugins-docs.sgml:
* docs/plugins/gst-plugins-good-plugins-sections.txt:
* docs/plugins/gst-plugins-good-plugins.args:
* docs/plugins/gst-plugins-good-plugins.hierarchy:
* docs/plugins/gst-plugins-good-plugins.signals:
* docs/plugins/inspect/plugin-alaw.xml:
* docs/plugins/inspect/plugin-audiofx.xml:
* docs/plugins/inspect/plugin-avi.xml:
* docs/plugins/inspect/plugin-flac.xml:
* docs/plugins/inspect/plugin-mulaw.xml:
* docs/plugins/inspect/plugin-video4linux2.xml:
* docs/plugins/inspect/plugin-wavparse.xml:
Add documentation for the audioiirfilter and audiofirfilter
elements.
* tests/check/Makefile.am:
* tests/check/elements/audiofirfilter.c: (on_message),
(on_rate_changed), (on_handoff), (GST_START_TEST),
(audiofirfilter_suite):
* tests/check/elements/audioiirfilter.c: (on_message),
(on_rate_changed), (on_handoff), (GST_START_TEST),
(audioiirfilter_suite):
* tests/examples/Makefile.am:
* tests/examples/audiofx/Makefile.am:
* tests/examples/audiofx/firfilter-example.c: (on_message),
(on_rate_changed), (main):
* tests/examples/audiofx/iirfilter-example.c: (on_message),
(on_rate_changed), (main):
Add unit tests and example applications for the two filter
elements.
2009-01-13 19:23:57 +00:00
Thiago Sousa Santos
5f5ae768b8 gst/qtdemux/qtdemux.c: Fix format string for guint64.
Original commit message from CVS:
Patch by: Thiago Sousa Santos <thiagoss@embedded.ufcg.edu.br>
* gst/qtdemux/qtdemux.c:
Fix format string for guint64.
2009-01-13 19:09:19 +00:00
Sebastian Dröge
4b227159cb gst/audiofx/: Use a custom mutex for protecting the instance fields instead of the GstObject lock. Using the latter c...
Original commit message from CVS:
* gst/audiofx/audiochebband.c: (gst_audio_cheb_band_class_init),
(gst_audio_cheb_band_init), (gst_audio_cheb_band_finalize),
(gst_audio_cheb_band_set_property):
* gst/audiofx/audiochebband.h:
* gst/audiofx/audiocheblimit.c: (gst_audio_cheb_limit_class_init),
(gst_audio_cheb_limit_init), (gst_audio_cheb_limit_finalize),
(gst_audio_cheb_limit_set_property):
* gst/audiofx/audiocheblimit.h:
* gst/audiofx/audiowsincband.c: (gst_audio_wsincband_class_init),
(gst_audio_wsincband_init), (gst_audio_wsincband_finalize),
(gst_audio_wsincband_set_property):
* gst/audiofx/audiowsincband.h:
* gst/audiofx/audiowsinclimit.c: (gst_audio_wsinclimit_class_init),
(gst_audio_wsinclimit_init), (gst_audio_wsinclimit_finalize),
(gst_audio_wsinclimit_set_property):
* gst/audiofx/audiowsinclimit.h:
Use a custom mutex for protecting the instance fields instead of
the GstObject lock. Using the latter can lead to deadlocks, especially
with the FIR filters when updating the latency.
2009-01-13 08:24:25 +00:00
Sebastian Dröge
0016658ace gst/audiofx/: Implement a base class for generic audio FIR filters.
Original commit message from CVS:
* gst/audiofx/Makefile.am:
* gst/audiofx/audiofxbasefirfilter.c:
(gst_audio_fx_base_fir_filter_dispose),
(gst_audio_fx_base_fir_filter_base_init),
(gst_audio_fx_base_fir_filter_class_init),
(gst_audio_fx_base_fir_filter_init),
(gst_audio_fx_base_fir_filter_push_residue),
(gst_audio_fx_base_fir_filter_setup),
(gst_audio_fx_base_fir_filter_transform),
(gst_audio_fx_base_fir_filter_start),
(gst_audio_fx_base_fir_filter_stop),
(gst_audio_fx_base_fir_filter_query),
(gst_audio_fx_base_fir_filter_query_type),
(gst_audio_fx_base_fir_filter_event),
(gst_audio_fx_base_fir_filter_set_kernel):
* gst/audiofx/audiofxbasefirfilter.h:
* gst/audiofx/audiofxbaseiirfilter.c:
Implement a base class for generic audio FIR filters.
* gst/audiofx/audiowsincband.c:
(gst_gst_audio_wsincband_mode_get_type),
(gst_gst_audio_wsincband_window_get_type),
(gst_audio_wsincband_base_init), (gst_audio_wsincband_class_init),
(gst_audio_wsincband_init), (gst_audio_wsincband_build_kernel),
(gst_audio_wsincband_setup), (gst_audio_wsincband_set_property),
(gst_audio_wsincband_get_property):
* gst/audiofx/audiowsincband.h:
* gst/audiofx/audiowsinclimit.c:
(gst_audio_wsinclimit_mode_get_type),
(gst_audio_wsinclimit_window_get_type),
(gst_audio_wsinclimit_base_init),
(gst_audio_wsinclimit_class_init), (gst_audio_wsinclimit_init),
(gst_audio_wsinclimit_build_kernel), (gst_audio_wsinclimit_setup),
(gst_audio_wsinclimit_set_property),
(gst_audio_wsinclimit_get_property):
* gst/audiofx/audiowsinclimit.h:
* tests/check/elements/audiowsincband.c: (GST_START_TEST):
* tests/check/elements/audiowsinclimit.c: (GST_START_TEST):
Use this new base class for audiowsincband and audiowsinclimit.
Also cleanup both elements.
2009-01-11 19:03:38 +00:00
Michael Smith
1d32ad886e gst/qtdemux/qtdemux.c: In push mode, error out if we get EOS before we've created any srcpads.
Original commit message from CVS:
* gst/qtdemux/qtdemux.c:
In push mode, error out if we get EOS before we've created any srcpads.
Handle (in pull mode) some files that have a truncated moov atom where
the final sub-atom is a 'free' atom and the contents of that are not
present in the file.
2009-01-08 18:17:13 +00:00
Mark Nauwelaerts
7958cf82ab gst/matroska/: Some cleanups, refactoring and minor enhancements in caps handling.
Original commit message from CVS:
* gst/matroska/matroska-demux.c: (gst_matroska_demux_video_caps):
* gst/matroska/matroska-mux.c: (gst_matroska_mux_video_pad_setcaps):
Some cleanups, refactoring and minor enhancements in caps handling.
* gst/matroska/matroska-mux.c: (gst_matroska_mux_class_init),
(gst_matroska_mux_init), (gst_matroska_pad_reset),
(gst_matroska_pad_free), (gst_matroska_mux_reset),
(gst_matroska_mux_video_pad_setcaps),
(gst_matroska_mux_request_new_pad):
* tests/check/elements/matroskamux.c: (teardown_src_pad):
Only remove, release or reset what is appropriate upon state change.
2009-01-08 15:56:46 +00:00
Mark Nauwelaerts
24eed322dc gst/avi/gstavimux.c: Minor fix/cleanup in header field calculation.
Original commit message from CVS:
* gst/avi/gstavimux.c: (gst_avi_mux_audsink_set_caps):
Minor fix/cleanup in header field calculation.
2009-01-07 09:43:13 +00:00
Mark Nauwelaerts
85c6c25264 gst/matroska/matroska-mux.*: Remove internal taglist and fully use tagsetter interface.
Original commit message from CVS:
* gst/matroska/matroska-mux.c: (gst_matroska_mux_reset),
(gst_matroska_mux_handle_sink_event), (gst_matroska_mux_finish):
* gst/matroska/matroska-mux.h:
Remove internal taglist and fully use tagsetter interface.
2009-01-06 17:48:10 +00:00
Mark Nauwelaerts
b506ab9918 gst/avi/gstavimux.*: Ensure header size invariance during subsequent rewrite by using tags snapshot.
Original commit message from CVS:
* gst/avi/gstavimux.c: (gst_avi_mux_reset),
(gst_avi_mux_riff_get_avi_header):
* gst/avi/gstavimux.h:
Ensure header size invariance during subsequent rewrite by using
tags snapshot.
2009-01-06 14:50:29 +00:00
Mark Nauwelaerts
455e24c0a3 gst/qtdemux/: Streamline tag handling and pass unparsed tags as binary blob in private tag.
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (qtdemux_tag_add_str),
(qtdemux_tag_add_tmpo), (qtdemux_tag_add_covr),
(qtdemux_tag_add_date), (qtdemux_tag_add_gnre),
(qtdemux_tag_add_blob), (qtdemux_parse_udta):
* gst/qtdemux/qtdemux.h:
* gst/qtdemux/quicktime.c: (plugin_init):
Streamline tag handling and pass unparsed tags as binary blob
in private tag.
2009-01-05 11:42:09 +00:00
Sebastian Dröge
4c7c4c00da gst/audiofx/: Implement a base class for IIR filters.
Original commit message from CVS:
* gst/audiofx/Makefile.am:
* gst/audiofx/audiofxbaseiirfilter.c:
(gst_audio_fx_base_iir_filter_base_init),
(gst_audio_fx_base_iir_filter_dispose),
(gst_audio_fx_base_iir_filter_class_init),
(gst_audio_fx_base_iir_filter_init),
(gst_audio_fx_base_iir_filter_calculate_gain),
(gst_audio_fx_base_iir_filter_set_coefficients),
(gst_audio_fx_base_iir_filter_setup), (process),
(gst_audio_fx_base_iir_filter_transform_ip),
(gst_audio_fx_base_iir_filter_stop):
* gst/audiofx/audiofxbaseiirfilter.h:
Implement a base class for IIR filters.
* gst/audiofx/audiochebband.c: (gst_audio_cheb_band_base_init),
(gst_audio_cheb_band_class_init), (gst_audio_cheb_band_init),
(generate_coefficients), (gst_audio_cheb_band_set_property),
(gst_audio_cheb_band_setup):
* gst/audiofx/audiochebband.h:
* gst/audiofx/audiocheblimit.c: (gst_audio_cheb_limit_base_init),
(gst_audio_cheb_limit_class_init), (gst_audio_cheb_limit_init),
(generate_coefficients), (gst_audio_cheb_limit_set_property),
(gst_audio_cheb_limit_setup):
* gst/audiofx/audiocheblimit.h:
Use the IIR filter base class for the chebyshev filters.
2009-01-05 10:13:29 +00:00
j^
dc4240de34 gst/qtdemux/qtdemux.c: Add codec mapping for xvid, fmp4 and ac3 tracks.
Original commit message from CVS:
Patch by: j^ <j at oil21.org>
* gst/qtdemux/qtdemux.c: (qtdemux_video_caps),
(qtdemux_audio_caps):
Add codec mapping for xvid, fmp4 and ac3 tracks.
Fixes #565850
2008-12-28 09:50:31 +00:00
Stefan Kost
211bda0966 ext/pulse/pulsemixerctrl.c: And remove temporary comment pointing to the bug ticket.
Original commit message from CVS:
* ext/pulse/pulsemixerctrl.c:
And remove temporary comment pointing to the bug ticket.
* gst/avi/gstavimux.c:
Move reoccuring logging to LOG and log instance too.
2008-12-19 09:36:45 +00:00
Stefan Kost
36b879f7c3 gst/avi/gstavimux.c: Rename api from _flush to _reset_tags.
Original commit message from CVS:
* gst/avi/gstavimux.c:
Rename api from _flush to _reset_tags.
2008-12-16 16:07:48 +00:00
Stefan Kost
9e72ba8464 gst/avi/gstavimux.c: Use new tagsetter api to flush tags.
Original commit message from CVS:
* gst/avi/gstavimux.c:
Use new tagsetter api to flush tags.
2008-12-16 14:22:51 +00:00
Stefan Kost
b067b81453 gst/avi/gstavimux.*: Totally remove the internal taglists and fully use tagsetter.
Original commit message from CVS:
* gst/avi/gstavimux.c:
* gst/avi/gstavimux.h:
Totally remove the internal taglists and fully use tagsetter.
2008-12-16 11:57:01 +00:00
Stefan Kost
8add29398d gst/avi/gstavimux.c: Instead of filtering wrongly just use the mergemode. Applications is use KEEP_ALL if they want t...
Original commit message from CVS:
* gst/avi/gstavimux.c:
Instead of filtering wrongly just use the mergemode. Applications is
use KEEP_ALL if they want to supress tag-events. Fixes #563221 for
avi for real (I hope). Everyone chime in, before I fix the others.
2008-12-15 15:59:53 +00:00
Edward Hervey
5ad613d9b9 Switch to using GstStaticPadTemplate.
Original commit message from CVS:
* ext/flac/gstflacdec.c: (gst_flac_dec_base_init),
(gst_flac_dec_init):
* gst/law/alaw-decode.c: (gst_alaw_dec_base_init),
(gst_alaw_dec_init):
* gst/law/alaw-encode.c: (gst_alaw_enc_base_init),
(gst_alaw_enc_init):
* gst/law/alaw.c: (plugin_init):
* gst/law/mulaw-decode.c: (gst_mulawdec_base_init),
(gst_mulawdec_init):
* gst/law/mulaw-encode.c: (gst_mulawenc_base_init),
(gst_mulawenc_init):
* gst/law/mulaw.c: (plugin_init):
Switch to using GstStaticPadTemplate.
* gst/udp/gstudpnetutils.c: (gst_udp_get_addr):
Don't forget to free the addrinfo structure.
* gst/wavparse/gstwavparse.c: (gst_wavparse_reset),
(gst_wavparse_sink_activate):
Don't forget to unref the GstAdapter.
2008-12-13 15:34:01 +00:00
Stefan Kost
40a14e528e gst/avi/gstavidemux.c: More logging.
Original commit message from CVS:
* gst/avi/gstavidemux.c:
More logging.
* gst/avi/gstavimux.c:
Handle more metadata fields. Better estimate of metadata size. Don't
merge received tags, if application has specified tags using
GST_TAG_MERGE_REPLACE_ALL. Fixes #563221 for avi.
2008-12-09 17:55:22 +00:00
Wim Taymans
1691683883 gst/rtp/gstrtpjpegdepay.c: Add an EOI marker at the end of the jpeg frame when it's missing.
Original commit message from CVS:
* gst/rtp/gstrtpjpegdepay.c: (gst_rtp_jpeg_depay_process):
Add an EOI marker at the end of the jpeg frame when it's missing.
Fixes #563056.
2008-12-09 14:19:16 +00:00
Wim Taymans
0e280fb120 gst/rtp/gstrtpmp4apay.c: Copy incomming timestamp to outgoing packets.
Original commit message from CVS:
* gst/rtp/gstrtpmp4apay.c: (gst_rtp_mp4a_pay_handle_buffer):
Copy incomming timestamp to outgoing packets.
2008-12-08 12:37:45 +00:00
Wim Taymans
90adf4b958 gst/rtp/gstrtpmp4vpay.c: Don't try to push packets before we could find a valid config startcode. Fixes #563509.
Original commit message from CVS:
* gst/rtp/gstrtpmp4vpay.c: (gst_rtp_mp4v_pay_flush),
(gst_rtp_mp4v_pay_event):
Don't try to push packets before we could find a valid config
startcode. Fixes #563509.
2008-12-08 12:36:21 +00:00
Sebastian Dröge
c54c9e2bac Add documentation for matroskamux and matroskademux and update the inspection xml files.
Original commit message from CVS:
* docs/plugins/Makefile.am:
* docs/plugins/gst-plugins-good-plugins-docs.sgml:
* docs/plugins/gst-plugins-good-plugins-sections.txt:
* docs/plugins/gst-plugins-good-plugins.args:
* docs/plugins/gst-plugins-good-plugins.hierarchy:
* docs/plugins/gst-plugins-good-plugins.interfaces:
* docs/plugins/inspect/plugin-1394.xml:
* docs/plugins/inspect/plugin-aasink.xml:
* docs/plugins/inspect/plugin-alaw.xml:
* docs/plugins/inspect/plugin-alpha.xml:
* docs/plugins/inspect/plugin-alphacolor.xml:
* docs/plugins/inspect/plugin-annodex.xml:
* docs/plugins/inspect/plugin-apetag.xml:
* docs/plugins/inspect/plugin-audiofx.xml:
* docs/plugins/inspect/plugin-auparse.xml:
* docs/plugins/inspect/plugin-autodetect.xml:
* docs/plugins/inspect/plugin-avi.xml:
* docs/plugins/inspect/plugin-cacasink.xml:
* docs/plugins/inspect/plugin-cairo.xml:
* docs/plugins/inspect/plugin-cutter.xml:
* docs/plugins/inspect/plugin-debug.xml:
* docs/plugins/inspect/plugin-dv.xml:
* docs/plugins/inspect/plugin-efence.xml:
* docs/plugins/inspect/plugin-effectv.xml:
* docs/plugins/inspect/plugin-equalizer.xml:
* docs/plugins/inspect/plugin-esdsink.xml:
* docs/plugins/inspect/plugin-flac.xml:
* docs/plugins/inspect/plugin-flxdec.xml:
* docs/plugins/inspect/plugin-gamma.xml:
* docs/plugins/inspect/plugin-gconfelements.xml:
* docs/plugins/inspect/plugin-gdkpixbuf.xml:
* docs/plugins/inspect/plugin-goom.xml:
* docs/plugins/inspect/plugin-goom2k1.xml:
* docs/plugins/inspect/plugin-halelements.xml:
* docs/plugins/inspect/plugin-icydemux.xml:
* docs/plugins/inspect/plugin-id3demux.xml:
* docs/plugins/inspect/plugin-interleave.xml:
* docs/plugins/inspect/plugin-jpeg.xml:
* docs/plugins/inspect/plugin-level.xml:
* docs/plugins/inspect/plugin-matroska.xml:
* docs/plugins/inspect/plugin-monoscope.xml:
* docs/plugins/inspect/plugin-mulaw.xml:
* docs/plugins/inspect/plugin-multifile.xml:
* docs/plugins/inspect/plugin-multipart.xml:
* docs/plugins/inspect/plugin-navigationtest.xml:
* docs/plugins/inspect/plugin-ossaudio.xml:
* docs/plugins/inspect/plugin-png.xml:
* docs/plugins/inspect/plugin-pulseaudio.xml:
* docs/plugins/inspect/plugin-quicktime.xml:
* docs/plugins/inspect/plugin-replaygain.xml:
* docs/plugins/inspect/plugin-rtp.xml:
* docs/plugins/inspect/plugin-rtsp.xml:
* docs/plugins/inspect/plugin-shout2send.xml:
* docs/plugins/inspect/plugin-smpte.xml:
* docs/plugins/inspect/plugin-soup.xml:
* docs/plugins/inspect/plugin-spectrum.xml:
* docs/plugins/inspect/plugin-speex.xml:
* docs/plugins/inspect/plugin-taglib.xml:
* docs/plugins/inspect/plugin-udp.xml:
* docs/plugins/inspect/plugin-video4linux2.xml:
* docs/plugins/inspect/plugin-videobalance.xml:
* docs/plugins/inspect/plugin-videobox.xml:
* docs/plugins/inspect/plugin-videocrop.xml:
* docs/plugins/inspect/plugin-videoflip.xml:
* docs/plugins/inspect/plugin-videomixer.xml:
* docs/plugins/inspect/plugin-wavenc.xml:
* docs/plugins/inspect/plugin-wavpack.xml:
* docs/plugins/inspect/plugin-wavparse.xml:
* docs/plugins/inspect/plugin-ximagesrc.xml:
* gst/matroska/matroska-demux.c:
* gst/matroska/matroska-demux.h:
* gst/matroska/matroska-mux.c:
* gst/matroska/matroska-mux.h:
Add documentation for matroskamux and matroskademux and
update the inspection xml files.
2008-12-05 09:24:18 +00:00
Sebastian Dröge
cfcc44e3ba gst/udp/gstmultiudpsink.c: Provide the parameters that are required for the format string to fix a compiler warning.
Original commit message from CVS:
* gst/udp/gstmultiudpsink.c: (gst_multiudpsink_render):
Provide the parameters that are required for the format string
to fix a compiler warning.
2008-11-30 16:24:45 +00:00
Stefan Kost
4be0ab8e86 gst/autodetect/gstautoaudiosrc.c: Fix classification.
Original commit message from CVS:
* gst/autodetect/gstautoaudiosrc.c:
Fix classification.
2008-11-29 20:05:41 +00:00
Peter Kjellerstedt
3db0832748 gst/udp/gstmultiudpsink.c: Make gst_multiudpsink_render() ignore errors from sendto() instead of breaking streaming. ...
Original commit message from CVS:
Patch by: Peter Kjellerstedt <pkj at axis com>
* gst/udp/gstmultiudpsink.c: (gst_multiudpsink_render):
Make gst_multiudpsink_render() ignore errors from sendto() instead of
breaking streaming. Emit a warning instead. Fixes #562572.
2008-11-28 15:10:50 +00:00
Sebastian Dröge
3f39ed1a0c gst/wavenc/: Add support for a-law and mu-law encoded wav files. Fixes bug #562434.
Original commit message from CVS:
Patch by: Pepijn Van Eeckhoudt
<pepijn dot vaneeckhoudt at luciad dot com>
* gst/wavenc/gstwavenc.c: (gst_wavenc_create_header_buf),
(gst_wavenc_sink_setcaps), (gst_wavenc_change_state):
* gst/wavenc/gstwavenc.h:
* gst/wavenc/riff.h:
Add support for a-law and mu-law encoded wav files. Fixes bug #562434.
2008-11-27 12:13:39 +00:00
이문형
42f6a2bca1 gst/rtsp/gstrtspsrc.c: Prevent further read/write actions taken to the connect-failed socket by erroring out quickly....
Original commit message from CVS:
Patch by: 이문형 <iwings at gmail dot com>
* gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_loop_udp):
Prevent further read/write actions taken to the connect-failed socket by
erroring out quickly. See #562258.
2008-11-27 11:22:56 +00:00
Wim Taymans
5e27695ca2 gst/rtp/: Fix the descriptions and fix some email addresses.
Original commit message from CVS:
* gst/rtp/gstasteriskh263.c:
* gst/rtp/gstasteriskh263.h:
* gst/rtp/gstrtpL16depay.c: (gst_rtp_L16_depay_setcaps):
* gst/rtp/gstrtpL16depay.h:
* gst/rtp/gstrtpL16pay.c:
* gst/rtp/gstrtpL16pay.h:
* gst/rtp/gstrtpac3depay.c: (gst_rtp_ac3_depay_setcaps):
* gst/rtp/gstrtpac3depay.h:
* gst/rtp/gstrtpamrdepay.c:
* gst/rtp/gstrtpamrdepay.h:
* gst/rtp/gstrtpamrpay.c:
* gst/rtp/gstrtpamrpay.h:
* gst/rtp/gstrtpdepay.c:
* gst/rtp/gstrtpdepay.h:
* gst/rtp/gstrtpdvdepay.c: (gst_rtp_dv_depay_setcaps):
* gst/rtp/gstrtpg726depay.c:
* gst/rtp/gstrtpg726pay.c:
* gst/rtp/gstrtpg729depay.c:
* gst/rtp/gstrtpg729pay.c:
* gst/rtp/gstrtpgsmdepay.c:
* gst/rtp/gstrtpgsmpay.c: (gst_rtp_gsm_pay_setcaps):
* gst/rtp/gstrtph263depay.c: (gst_rtp_h263_depay_setcaps):
* gst/rtp/gstrtph263depay.h:
* gst/rtp/gstrtph263pay.c:
* gst/rtp/gstrtph263pay.h:
* gst/rtp/gstrtph263pdepay.c: (gst_rtp_h263p_depay_setcaps):
* gst/rtp/gstrtph263pdepay.h:
* gst/rtp/gstrtph263ppay.c:
* gst/rtp/gstrtph263ppay.h:
* gst/rtp/gstrtph264depay.c:
* gst/rtp/gstrtph264depay.h:
* gst/rtp/gstrtph264pay.c:
* gst/rtp/gstrtph264pay.h:
* gst/rtp/gstrtpilbcdepay.c:
* gst/rtp/gstrtpilbcpay.c:
* gst/rtp/gstrtpjpegdepay.h:
* gst/rtp/gstrtpmp1sdepay.c: (gst_rtp_mp1s_depay_setcaps):
* gst/rtp/gstrtpmp1sdepay.h:
* gst/rtp/gstrtpmp2tdepay.c: (gst_rtp_mp2t_depay_setcaps):
* gst/rtp/gstrtpmp2tdepay.h:
* gst/rtp/gstrtpmp2tpay.c:
* gst/rtp/gstrtpmp2tpay.h:
* gst/rtp/gstrtpmp4adepay.c: (gst_rtp_mp4a_depay_setcaps):
* gst/rtp/gstrtpmp4apay.c:
* gst/rtp/gstrtpmp4apay.h:
* gst/rtp/gstrtpmp4gdepay.c: (gst_rtp_mp4g_depay_setcaps):
* gst/rtp/gstrtpmp4gdepay.h:
* gst/rtp/gstrtpmp4gpay.c:
* gst/rtp/gstrtpmp4gpay.h:
* gst/rtp/gstrtpmp4vdepay.c: (gst_rtp_mp4v_depay_setcaps):
* gst/rtp/gstrtpmp4vdepay.h:
* gst/rtp/gstrtpmp4vpay.c: (gst_rtp_mp4v_pay_event):
* gst/rtp/gstrtpmp4vpay.h:
* gst/rtp/gstrtpmpadepay.c:
* gst/rtp/gstrtpmpadepay.h:
* gst/rtp/gstrtpmpapay.c:
* gst/rtp/gstrtpmpapay.h:
* gst/rtp/gstrtpmpvdepay.c:
* gst/rtp/gstrtpmpvdepay.h:
* gst/rtp/gstrtppcmadepay.c: (gst_rtp_pcma_depay_process):
* gst/rtp/gstrtppcmapay.c:
* gst/rtp/gstrtppcmudepay.c:
* gst/rtp/gstrtppcmupay.c:
* gst/rtp/gstrtpspeexdepay.c:
* gst/rtp/gstrtpspeexpay.c:
* gst/rtp/gstrtpsv3vdepay.c:
* gst/rtp/gstrtpsv3vdepay.h:
* gst/rtp/gstrtptheoradepay.c:
* gst/rtp/gstrtptheoradepay.h:
* gst/rtp/gstrtptheorapay.c:
* gst/rtp/gstrtptheorapay.h:
* gst/rtp/gstrtpvorbisdepay.c:
* gst/rtp/gstrtpvorbisdepay.h:
* gst/rtp/gstrtpvorbispay.c: (gst_rtp_vorbis_pay_finish_headers):
* gst/rtp/gstrtpvorbispay.h:
* gst/rtp/gstrtpvrawdepay.c: (gst_rtp_vraw_depay_setcaps):
* gst/rtp/gstrtpvrawpay.c:
Fix the descriptions and fix some email addresses.
2008-11-25 18:03:02 +00:00
Julien Moutte
de3590f545 gst/qtdemux/qtdemux.c: Add MPG1 and MPG2 fourcc to supported qtdemux video codecs as I found some video clips using t...
Original commit message from CVS:
2008-11-25  Julien Moutte  <julien@fluendo.com>

* gst/qtdemux/qtdemux.c: (qtdemux_video_caps): Add MPG1 and MPG2
fourcc
to supported qtdemux video codecs as I found some video clips
using
those.
2008-11-25 17:47:24 +00:00
Wim Taymans
c25b0fcb92 gst/autodetect/: Post an error when we can't set the internal ghostpad target.
Original commit message from CVS:
* gst/autodetect/gstautoaudiosink.c: (gst_auto_audio_sink_detect):
* gst/autodetect/gstautoaudiosrc.c: (gst_auto_audio_src_detect):
* gst/autodetect/gstautovideosink.c: (gst_auto_video_sink_reset),
(gst_auto_video_sink_detect):
* gst/autodetect/gstautovideosrc.c: (gst_auto_video_src_detect):
Post an error when we can't set the internal ghostpad target.
2008-11-25 16:26:16 +00:00
Wim Taymans
6ab4698b95 gst/videocrop/gstvideocrop.*: Fix renegotiation when changing properties using the new basetransform features. Fixes ...
Original commit message from CVS:
* gst/videocrop/gstvideocrop.c: (gst_video_crop_init),
(gst_video_crop_transform), (gst_video_crop_transform_caps),
(gst_video_crop_set_caps), (gst_video_crop_set_property):
* gst/videocrop/gstvideocrop.h:
Fix renegotiation when changing properties using the new basetransform
features. Fixes #561502.
* tests/icles/Makefile.am:
* tests/icles/videocrop2-test.c: (make_pipeline), (main):
Add crazy interactive test unit for dynamically changing properties.
2008-11-25 16:06:22 +00:00
Wim Taymans
0b5fea8568 gst/rtsp/gstrtspsrc.c: Add some more debugging.
Original commit message from CVS:
* gst/rtsp/gstrtspsrc.c: (new_session_pad),
(gst_rtspsrc_parse_range):
Add some more debugging.
Use the reanges received from the server unconditionally.
Fixes #561625.
2008-11-24 12:20:29 +00:00
Tal Shalif
7b60afd805 gst/qtdemux/qtdemux.c: Use G_{BIG,LITTLE}_ENDIAN instead of the non-GLib variants as the latter don't exist on some s...
Original commit message from CVS:
Patch by: Tal Shalif <tshalif at nargila dot org>
* gst/qtdemux/qtdemux.c: (qtdemux_audio_caps):
Use G_{BIG,LITTLE}_ENDIAN instead of the non-GLib variants as
the latter don't exist on some systems (mingw). Fixes bug #561992.
2008-11-23 11:14:42 +00:00
Michael Smith
9b372f1bbd gst/udp/: Fix multiudpsink on OSX by passing the specific length of the socket, refactor that into a function shared ...
Original commit message from CVS:
* gst/udp/gstmultiudpsink.c:
* gst/udp/gstudpnetutils.c:
* gst/udp/gstudpnetutils.h:
* gst/udp/gstudpsrc.c:
Fix multiudpsink on OSX by passing the specific length of the socket,
refactor that into a function shared with the same thing in udpsrc.
2008-11-20 22:56:58 +00:00
Wim Taymans
380b64d670 gst/wavparse/gstwavparse.c: Fix the scaling code.
Original commit message from CVS:
* gst/wavparse/gstwavparse.c: (uint64_ceiling_scale_int),
(uint64_ceiling_scale), (gst_wavparse_calculate_duration),
(gst_wavparse_stream_headers):
Fix the scaling code.
Fix parsing of the INFO chunks, we were reading the wrong number of
bytes.  Fixes #561580.
2008-11-20 20:07:26 +00:00
Jan Schmidt
fe7d1d7ae0 gst/matroska/matroska-mux.c: Fix NULL pointer dereference of an unset codec_id in the recently added Dirac paths
Original commit message from CVS:
* gst/matroska/matroska-mux.c:
Fix NULL pointer dereference of an unset codec_id in the recently
added Dirac paths
2008-11-20 14:30:40 +00:00
Edward Hervey
481d98b710 gst/matroska/: Make mkvdemux aware of E-AC3.
Original commit message from CVS:
* gst/matroska/matroska-demux.c: (gst_matroska_demux_audio_caps):
* gst/matroska/matroska-ids.h:
Make mkvdemux aware of E-AC3.
2008-11-16 14:41:32 +00:00
Wim Taymans
5c9ebea381 gst/rtp/: Add a jpeg depayloader.
Original commit message from CVS:
* gst/rtp/Makefile.am:
* gst/rtp/gstrtp.c: (plugin_init):
* gst/rtp/gstrtpjpegdepay.c: (gst_rtp_jpeg_depay_base_init),
(gst_rtp_jpeg_depay_class_init), (gst_rtp_jpeg_depay_init),
(gst_rtp_jpeg_depay_finalize), (MakeTables), (MakeQuantHeader),
(MakeHuffmanHeader), (MakeDRIHeader), (MakeHeaders),
(gst_rtp_jpeg_depay_setcaps), (gst_rtp_jpeg_depay_process),
(gst_rtp_jpeg_depay_change_state),
(gst_rtp_jpeg_depay_plugin_init):
* gst/rtp/gstrtpjpegdepay.h:
Add a jpeg depayloader.
* gst/rtp/gstrtpjpegpay.c:
Set the default properties on the payloader to better defaults.
2008-11-14 18:41:29 +00:00
Bjorn Ostby
d8e74cabdc gst/rtp/: Add JPEG payloader. Fixes #560756.
Original commit message from CVS:
Patch by: Bjorn Ostby <bjornos at axis dot com>
* gst/rtp/Makefile.am:
* gst/rtp/gstrtp.c: (plugin_init):
* gst/rtp/gstrtpjpegpay.c: (gst_rtp_jpeg_pay_base_init),
(gst_rtp_jpeg_pay_class_init), (gst_rtp_jpeg_pay_init),
(gst_rtp_jpeg_pay_setcaps), (gst_rtp_jpeg_pay_header_size),
(gst_rtp_jpeg_pay_read_quant_table),
(gst_rtp_jpeg_pay_scan_marker), (gst_rtp_jpeg_pay_handle_buffer),
(gst_rtp_jpeg_pay_set_property), (gst_rtp_jpeg_pay_get_property),
(gst_rtp_jpeg_pay_plugin_init):
* gst/rtp/gstrtpjpegpay.h:
Add JPEG payloader. Fixes #560756.
2008-11-14 11:41:55 +00:00
Stefan Kost
2b8b13e7a4 gst/equalizer/: Add presets for equalizer. Fixes #522183.
Original commit message from CVS:
* gst/equalizer/GstIirEqualizer10Bands.prs:
* gst/equalizer/GstIirEqualizer3Bands.prs:
* gst/equalizer/Makefile.am:
* gst/equalizer/gstiirequalizer10bands.c:
* gst/equalizer/gstiirequalizer3bands.c:
Add presets for equalizer. Fixes #522183.
2008-11-13 16:24:59 +00:00
Wim Taymans
c975495838 gst/rtsp/: Remove google extension again, it's not needed anymore because we never send multiple transports anymore.
Original commit message from CVS:
* gst/rtsp/Makefile.am:
* gst/rtsp/gstrtsp.c: (plugin_init):
* gst/rtsp/gstrtspgoogle.c:
* gst/rtsp/gstrtspgoogle.h:
Remove google extension again, it's not needed anymore because we never
send multiple transports anymore.
2008-11-13 16:17:38 +00:00
Eric Zhang
be3906c918 gst/rtsp/gstrtspsrc.*: Add property to configure NAT traversal method.
Original commit message from CVS:
Based on patch by: Eric Zhang <chao.zhang at access-company dot com>
* gst/rtsp/gstrtspsrc.c: (gst_rtsp_nat_method_get_type),
(gst_rtspsrc_class_init), (gst_rtspsrc_set_property),
(gst_rtspsrc_get_property), (gst_rtspsrc_create_stream),
(gst_rtspsrc_stream_free),
(gst_rtspsrc_stream_configure_udp_sinks),
(gst_rtspsrc_stream_configure_transport),
(gst_rtspsrc_send_dummy_packets),
(gst_rtspsrc_create_transports_string),
(gst_rtspsrc_handle_message), (gst_rtspsrc_change_state):
* gst/rtsp/gstrtspsrc.h:
Add property to configure NAT traversal method.
Ignore EOS from the internal sinks.
Implement sending dummy packets as a (simple) method to open up
some firewalls.
Send PLAY request to the server after we started the udp sources.
Fixes #559545.
2008-11-13 16:11:16 +00:00
Yotam
bfb73112af gst/rtp/gstrtpmp4vpay.c: Flush the remaining frames on EOS. Fixes #560641.
Original commit message from CVS:
Patch by: Yotam <sh dot yotam at gmail dot com>
* gst/rtp/gstrtpmp4vpay.c: (gst_rtp_mp4v_pay_event):
Flush the remaining frames on EOS. Fixes #560641.
2008-11-13 14:04:40 +00:00
Jan Schmidt
5bb87818b2 gst/rtp/gstrtpg729pay.c: Fix compiler warning about printf formatting.
Original commit message from CVS:
* gst/rtp/gstrtpg729pay.c: (gst_rtp_g729_pay_handle_buffer):
Fix compiler warning about printf formatting.
2008-11-12 16:37:06 +00:00
Andy Wingo
c71fe3f75d gst/qtdemux/qtdemux.*: Queue up new segment events instead of sending them from the seeking thread.
Original commit message from CVS:
* gst/qtdemux/qtdemux.h (struct _GstQTDemux):
* gst/qtdemux/qtdemux.c (gst_qtdemux_do_seek): Queue up new
segment events instead of sending them from the seeking thread.
Fixes #559288.
(gst_qtdemux_push_pending_newsegment): New helper, sends out
queued newsegment events.
(gst_qtdemux_loop_state_movie): Voilà, call it here. Only need to
call it here, as we only seek when looping, and only push in the
movie state.
2008-11-12 11:55:14 +00:00
Mark Nauwelaerts
03ab3610c7 gst/qtdemux/: Add cover and alternative copyright tag, and enhance some existing ones by marking them as container at...
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (qtdemux_tag_add_tmpo),
(qtdemux_tag_add_covr), (qtdemux_parse_udta):
* gst/qtdemux/qtdemux_fourcc.h:
* gst/qtdemux/qtdemux_types.c:
Add cover and alternative copyright tag, and enhance some existing
ones by marking them as container atoms.
2008-11-11 19:52:05 +00:00
Wim Taymans
4c62e33eac gst/rtp/gstrtpg729pay.c: Don't ignore the return value of setcaps.
Original commit message from CVS:
* gst/rtp/gstrtpg729pay.c: (gst_rtp_g729_pay_set_caps):
Don't ignore the return value of setcaps.
2008-11-11 17:33:00 +00:00
Olivier Crete
774f238b96 gst/rtp/gstrtpg729pay.*: Replace G729 payloader with an improved version. Fixes #532409.
Original commit message from CVS:
Patch by: Olivier Crete <tester at tester dot ca>
* gst/rtp/gstrtpg729pay.c: (gst_rtp_g729_pay_base_init),
(gst_rtp_g729_pay_class_init), (gst_rtp_g729_pay_init),
(gst_rtp_g729_pay_set_caps), (gst_rtp_g729_pay_handle_buffer):
* gst/rtp/gstrtpg729pay.h:
Replace G729 payloader with an improved version. Fixes #532409.
2008-11-11 17:29:03 +00:00
Wim Taymans
21edbcc566 gst/rtsp/gstrtspsrc.c: Only send one transport at a time for improved compatibility with some broken servers. See #53...
Original commit message from CVS:
* gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_create_transports_string),
(gst_rtspsrc_change_state):
Only send one transport at a time for improved compatibility with some
broken servers. See #537832.
2008-11-11 16:00:48 +00:00
Wim Taymans
8a2bcfecb0 gst/rtsp/gstrtspsrc.c: Only pause/play in the seek handler when the source was playing.
Original commit message from CVS:
* gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_do_seek),
(gst_rtspsrc_perform_seek):
Only pause/play in the seek handler when the source was playing.
Fixes #529379.
2008-11-11 15:16:31 +00:00
Sebastian Dröge
320e96a27c gst/matroska/matroska-mux.c: Fix muxing of Dirac streams if the input already has the format we need, i.e. is the out...
Original commit message from CVS:
* gst/matroska/matroska-mux.c:
(gst_matroska_mux_handle_dirac_packet):
Fix muxing of Dirac streams if the input already has the format
we need, i.e. is the output of matroskademux.
2008-11-11 12:18:23 +00:00
Stefan Kost
15649903aa gst/avi/gstavimux.c: Don't segfault on string typed tags being NULL. Fixes #560155.
Original commit message from CVS:
* gst/avi/gstavimux.c:
Don't segfault on string typed tags being NULL. Fixes #560155.
2008-11-11 10:06:01 +00:00
Mark Nauwelaerts
e8a21443f1 gst/matroska/matroska-mux.c: Fix mapping AAC profile to Matroska codec id.
Original commit message from CVS:
* gst/matroska/matroska-mux.c: (aac_codec_data_to_codec_id),
(gst_matroska_mux_audio_pad_setcaps):
Fix mapping AAC profile to Matroska codec id.
2008-11-10 16:44:45 +00:00
Mark Nauwelaerts
9aecda0d08 gst/qtdemux/qtdemux.c: Refactor some raw audio caps building, and handle >16-bit cases.
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (qtdemux_parse_trak),
(qtdemux_video_caps), (qtdemux_audio_caps):
Refactor some raw audio caps building, and handle >16-bit cases.
Fix/replace building caps from a string description.
2008-11-10 16:36:09 +00:00
Thomas Vander Stichele
b3dc426c4e gst/: Make author name consistent with others.
Original commit message from CVS:
* gst/audiofx/audiowsincband.c:
* gst/audiofx/audiowsinclimit.c:
* gst/cutter/gstcutter.c:
Make author name consistent with others.
2008-11-10 13:59:27 +00:00
Eric Zhang
499c3e520e gst/rtsp/gstrtspsrc.c: Pause the RTSP stream before doing a new play request.
Original commit message from CVS:
Based on patch by: Eric Zhang <chao.zhang at access-company dot com>
* gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_perform_seek),
(gst_rtspsrc_stream_configure_udp_sink):
Pause the RTSP stream before doing a new play request.
Make sure that adding the udpsinks does not cause the rtspsrc to become
a sink. Fixes #559547.
2008-11-10 12:13:21 +00:00
Sebastian Dröge
ff5c035554 gst/matroska/: Implement Dirac muxing into Matroska comforming to the spec, i.e. put all Dirac packages up to a pictu...
Original commit message from CVS:
* gst/matroska/matroska-ids.h:
* gst/matroska/matroska-mux.c: (gst_matroska_pad_free),
(gst_matroska_mux_handle_dirac_packet),
(gst_matroska_mux_write_data):
Implement Dirac muxing into Matroska comforming to the spec, i.e.
put all Dirac packages up to a picture into a Matroska block.
TODO: Implement writing of the ReferenceBlock Matroska elements,
currently the Dirac muxing is only 100% correct if Matroska version 2
is selected for muxing.
2008-11-05 14:42:35 +00:00
Stefan Kost
084812bffd Don't install static libs for plugins. Fixes #550851 for -good.
Original commit message from CVS:
* ext/aalib/Makefile.am:
* ext/annodex/Makefile.am:
* ext/cairo/Makefile.am:
* ext/dv/Makefile.am:
* ext/esd/Makefile.am:
* ext/flac/Makefile.am:
* ext/gconf/Makefile.am:
* ext/gdk_pixbuf/Makefile.am:
* ext/hal/Makefile.am:
* ext/jpeg/Makefile.am:
* ext/ladspa/Makefile.am:
* ext/libcaca/Makefile.am:
* ext/libmng/Makefile.am:
* ext/libpng/Makefile.am:
* ext/mikmod/Makefile.am:
* ext/pulse/Makefile.am:
* ext/raw1394/Makefile.am:
* ext/shout2/Makefile.am:
* ext/soup/Makefile.am:
* ext/speex/Makefile.am:
* ext/taglib/Makefile.am:
* ext/wavpack/Makefile.am:
* gst/alpha/Makefile.am:
* gst/apetag/Makefile.am:
* gst/audiofx/Makefile.am:
* gst/auparse/Makefile.am:
* gst/autodetect/Makefile.am:
* gst/avi/Makefile.am:
* gst/cutter/Makefile.am:
* gst/debug/Makefile.am:
* gst/effectv/Makefile.am:
* gst/equalizer/Makefile.am:
* gst/flx/Makefile.am:
* gst/goom/Makefile.am:
* gst/goom2k1/Makefile.am:
* gst/icydemux/Makefile.am:
* gst/id3demux/Makefile.am:
* gst/interleave/Makefile.am:
* gst/law/Makefile.am:
* gst/level/Makefile.am:
* gst/matroska/Makefile.am:
* gst/median/Makefile.am:
* gst/monoscope/Makefile.am:
* gst/multifile/Makefile.am:
* gst/multipart/Makefile.am:
* gst/oldcore/Makefile.am:
* gst/qtdemux/Makefile.am:
* gst/replaygain/Makefile.am:
* gst/rtp/Makefile.am:
* gst/rtsp/Makefile.am:
* gst/smpte/Makefile.am:
* gst/spectrum/Makefile.am:
* gst/udp/Makefile.am:
* gst/videobox/Makefile.am:
* gst/videocrop/Makefile.am:
* gst/videofilter/Makefile.am:
* gst/videomixer/Makefile.am:
* gst/wavenc/Makefile.am:
* gst/wavparse/Makefile.am:
* sys/directdraw/Makefile.am:
* sys/directsound/Makefile.am:
* sys/oss/Makefile.am:
* sys/osxaudio/Makefile.am:
* sys/osxvideo/Makefile.am:
* sys/sunaudio/Makefile.am:
* sys/v4l2/Makefile.am:
* sys/waveform/Makefile.am:
* sys/ximage/Makefile.am:
Don't install static libs for plugins. Fixes #550851 for -good.
2008-11-04 12:28:34 +00:00
Nick Haddad
66c804b41c gst/avi/gstavidemux.c: Invert other uncompressed RGB formats. Fixes #558554.
Original commit message from CVS:
Patch by: Nick Haddad <nick at haddads dot net>
* gst/avi/gstavidemux.c: (gst_avi_demux_is_uncompressed),
(gst_avi_demux_invert), (gst_avi_demux_process_next_entry),
(gst_avi_demux_stream_data):
Invert other uncompressed RGB formats. Fixes #558554.
2008-10-31 10:00:18 +00:00
Sebastian Dröge
bab5d042b2 gst/wavenc/gstwavenc.*: Add support for float/double as input and remove the (nowadays) useless parsing of the depth ...
Original commit message from CVS:
* gst/wavenc/gstwavenc.c: (gst_wavenc_create_header_buf),
(gst_wavenc_sink_setcaps), (gst_wavenc_change_state):
* gst/wavenc/gstwavenc.h:
Add support for float/double as input and remove the (nowadays)
useless parsing of the depth as we require width==depth.
2008-10-30 15:08:49 +00:00
Wim Taymans
d1dc70efd8 gst/rtp/: Narrow down the caps of the mpeg audio pay/depayloaders to only accept mpeg version 1. Fixes #558427.
Original commit message from CVS:
* gst/rtp/gstrtpmpadepay.c: (gst_rtp_mpa_depay_setcaps):
* gst/rtp/gstrtpmpapay.c:
Narrow down the caps of the mpeg audio pay/depayloaders to only accept
mpeg version 1. Fixes #558427.
2008-10-30 10:31:35 +00:00
Wim Taymans
38eac47ec9 gst/rtp/gstrtpL16pay.c: Only put an integral amount of samples in the RTP packet.
Original commit message from CVS:
* gst/rtp/gstrtpL16pay.c: (gst_rtp_L16_pay_flush),
(gst_rtp_L16_pay_getcaps):
Only put an integral amount of samples in the RTP packet.
Fixes #556641.
2008-10-29 18:28:25 +00:00
Wim Taymans
b29385bd76 gst/rtp/gstrtpchannels.*: Add method to get possible channel positions.
Original commit message from CVS:
* gst/rtp/gstrtpchannels.c: (gst_rtp_channels_get_by_index):
* gst/rtp/gstrtpchannels.h:
Add method to get possible channel positions.
2008-10-28 17:42:02 +00:00
Wim Taymans
23f37b0179 gst/rtp/Makefile.am: Also commit updated makefile
Original commit message from CVS:
* gst/rtp/Makefile.am:
Also commit updated makefile
2008-10-28 17:39:48 +00:00
Sebastian Dröge
0e1f7b54bb gst/wavenc/gstwavenc.c: Don't allow width=32,depth=24 as input. WAV requires that the width is the next integer multi...
Original commit message from CVS:
* gst/wavenc/gstwavenc.c: (gst_wavenc_chain):
Don't allow width=32,depth=24 as input. WAV requires that the width
is the next integer multiply of 8 from the depth.
2008-10-28 14:56:08 +00:00
Wim Taymans
09e449609f gst/rtp/: Add mappings for multichannel support. Does not completely just work because the getcaps function does not ...
Original commit message from CVS:
* gst/rtp/gstrtpL16depay.c: (gst_rtp_L16_depay_setcaps):
* gst/rtp/gstrtpL16pay.c: (gst_rtp_L16_pay_setcaps),
(gst_rtp_L16_pay_getcaps):
* gst/rtp/gstrtpchannels.c: (check_channels),
(gst_rtp_channels_get_by_pos), (gst_rtp_channels_get_by_order),
(gst_rtp_channels_create_default):
* gst/rtp/gstrtpchannels.h:
Add mappings for multichannel support. Does not completely just work
because the getcaps function does not yet return the allowed channel
mappings. See #556641.
2008-10-28 10:01:49 +00:00
Stefan Kost
6eb6d5b9ac gst/goom/: Add license headers in all source files. Remove filter.c from
Original commit message from CVS:
* gst/goom/Makefile.am:
* gst/goom/README:
* gst/goom/config_param.c:
* gst/goom/convolve_fx.c:
* gst/goom/drawmethods.c:
* gst/goom/drawmethods.h:
* gst/goom/filters.c:
* gst/goom/filters_mmx.s:
* gst/goom/flying_stars_fx.c:
* gst/goom/goom.h:
* gst/goom/goom_config.h:
* gst/goom/goom_config_param.h:
* gst/goom/goom_core.c:
* gst/goom/goom_filters.h:
* gst/goom/goom_fx.h:
* gst/goom/goom_graphic.h:
* gst/goom/goom_plugin_info.h:
* gst/goom/goom_tools.c:
* gst/goom/goom_tools.h:
* gst/goom/goom_typedefs.h:
* gst/goom/goom_visual_fx.h:
* gst/goom/graphic.c:
* gst/goom/ifs.c:
* gst/goom/ifs.h:
* gst/goom/lines.c:
* gst/goom/lines.h:
* gst/goom/mathtools.c:
* gst/goom/mathtools.h:
* gst/goom/mmx.c:
* gst/goom/motif_goom1.h:
* gst/goom/motif_goom2.h:
* gst/goom/plugin_info.c:
* gst/goom/ppc_drawings.h:
* gst/goom/ppc_zoom_ultimate.h:
* gst/goom/sound_tester.c:
* gst/goom/sound_tester.h:
* gst/goom/surf3d.c:
* gst/goom/surf3d.h:
* gst/goom/tentacle3d.c:
* gst/goom/tentacle3d.h:
* gst/goom/v3d.c:
* gst/goom/v3d.h:
* gst/goom/xmmx.c:
Add license headers in all source files. Remove filter.c from
EXTRA_DIST, as its in SOURCES already. Mention the files in the REDME
which are not used right now. Fixes #557709.
2008-10-28 06:50:57 +00:00
Olivier Crete
19619961f3 gst/rtp/gstrtpL16pay.c: Implement getcaps in rtpL16pay. Fixes #556484.
Original commit message from CVS:
Patch by: Olivier Crete <tester at tester dot ca>
* gst/rtp/gstrtpL16pay.c: (gst_rtp_L16_pay_class_init),
(gst_rtp_L16_pay_setcaps), (gst_rtp_L16_pay_getcaps):
Implement getcaps in rtpL16pay. Fixes #556484.
2008-10-27 11:28:30 +00:00
Wim Taymans
2428a1ca55 gst/rtp/gstrtpL16depay.c: Check if clock-rate and channels are valid.
Original commit message from CVS:
* gst/rtp/gstrtpL16depay.c: (gst_rtp_L16_depay_setcaps),
(gst_rtp_L16_depay_process):
Check if clock-rate and channels are valid.
Don't ignore the return value of setcaps.
No need to validate the buffer, the base class does that for us.
Use the marker bit to set the DISCONT flag on outgoing buffers.
* gst/rtp/gstrtpL16pay.c: (gst_rtp_L16_pay_setcaps):
Don't ignore the return value of set_outcaps.
* gst/rtp/gstrtpac3depay.c: (gst_rtp_ac3_depay_setcaps),
(gst_rtp_ac3_depay_process):
Don't ignore the return value of set_caps.
No need to validate the buffer, the base class does that for us.
* gst/rtp/gstrtpamrdepay.c: (gst_rtp_amr_depay_setcaps),
(gst_rtp_amr_depay_process):
* gst/rtp/gstrtpamrdepay.h:
Don't ignore the return value of setcaps.
No need to validate the buffer, the base class does that for us.
No need to set output caps on the buffers, the base class does that for
us.
The subclass will make sure we are negotiated.
* gst/rtp/gstrtpdvdepay.c: (gst_rtp_dv_depay_setcaps),
(gst_rtp_dv_depay_process), (gst_rtp_dv_depay_reset):
* gst/rtp/gstrtpdvdepay.h:
Clean up caps negotiation.
The subclass will make sure we are negotiated.
* gst/rtp/gstrtpg726depay.c: (gst_rtp_g726_depay_setcaps),
(gst_rtp_g726_depay_process):
Clean up caps negotiation.
Use the marker bit to set the DISCONT flag on outgoing buffers.
* gst/rtp/gstrtpg729depay.c: (gst_rtp_g729_depay_init),
(gst_rtp_g729_depay_setcaps), (gst_rtp_g729_depay_process):
* gst/rtp/gstrtpg729depay.h:
The subclass will make sure we are negotiated.
Use the marker bit to set the DISCONT flag on outgoing buffers.
* gst/rtp/gstrtpgsmdepay.c: (gst_rtp_gsm_depay_setcaps),
(gst_rtp_gsm_depay_process):
Clean up caps negotiation.
Use the marker bit to set the DISCONT flag on outgoing buffers.
* gst/rtp/gstrtpgsmpay.c: (gst_rtp_gsm_pay_setcaps):
Clean up caps negotiation.
Don't ignore the return value of set_outcaps.
* gst/rtp/gstrtph263depay.c: (gst_rtp_h263_depay_setcaps),
(gst_rtp_h263_depay_process):
Clean up caps negotiation.
No need to validate the buffer, the base class does that for us.
* gst/rtp/gstrtph263pay.c: (gst_rtp_h263_pay_setcaps),
(gst_rtp_h263_pay_flush), (gst_rtp_h263_pay_handle_buffer):
* gst/rtp/gstrtph263pay.h:
Don't ignore the return value of set_outcaps.
Do some more timestamps.
* gst/rtp/gstrtph263pdepay.c: (gst_rtp_h263p_depay_setcaps),
(gst_rtp_h263p_depay_process):
Clean up caps negotiation.
Don't ignore the return value of setcaps.
No need to validate the buffer, the base class does that for us.
* gst/rtp/gstrtph263ppay.c: (gst_rtp_h263p_pay_class_init),
(gst_rtp_h263p_pay_setcaps), (gst_rtp_h263p_pay_flush),
(gst_rtp_h263p_pay_handle_buffer):
* gst/rtp/gstrtph263ppay.h:
Don't ignore the return value of set_outcaps.
Do some more timestamps.
* gst/rtp/gstrtph264depay.c: (gst_rtp_h264_depay_setcaps),
(gst_rtp_h264_depay_process):
Clean up caps negotiation.
Don't ignore the return value of setcaps.
Fix possible caps leak.
No need to validate the buffer, the base class does that for us.
* gst/rtp/gstrtph264pay.c: (gst_rtp_h264_pay_setcaps):
Add some more debug info.
* gst/rtp/gstrtpilbcdepay.c: (gst_rtp_ilbc_depay_setcaps),
(gst_rtp_ilbc_depay_process):
Clean up caps negotiation.
Use the marker bit to set the DISCONT flag on outgoing buffers.
* gst/rtp/gstrtpilbcpay.c: (gst_rtpilbcpay_sink_setcaps):
Clean up caps negotiation.
* gst/rtp/gstrtpmp1sdepay.c: (gst_rtp_mp1s_depay_setcaps),
(gst_rtp_mp1s_depay_process):
Clean up caps negotiation.
Don't ignore the return value of setcaps.
No need to validate the buffer, the base class does that for us.
No need to set caps on buffers, subclass does that for us.
* gst/rtp/gstrtpmp2tdepay.c: (gst_rtp_mp2t_depay_setcaps),
(gst_rtp_mp2t_depay_process):
Clean up caps negotiation.
Don't ignore the return value of setcaps.
No need to validate the buffer, the base class does that for us.
No need to set caps on buffers, subclass does that for us.
* gst/rtp/gstrtpmp4adepay.c: (gst_rtp_mp4a_depay_setcaps),
(gst_rtp_mp4a_depay_process):
Clean up caps negotiation.
Don't ignore the return value of setcaps.
No need to validate the buffer, the base class does that for us.
* gst/rtp/gstrtpmp4apay.c: (gst_rtp_mp4a_pay_new_caps),
(gst_rtp_mp4a_pay_setcaps):
Don't ignore the return value of set_outcaps.
* gst/rtp/gstrtpmp4gdepay.c: (gst_rtp_mp4g_depay_setcaps),
(gst_rtp_mp4g_depay_process):
Clean up caps negotiation.
Don't ignore the return value of setcaps.
No need to validate the buffer, the base class does that for us.
No need to set caps on buffers, subclass does that for us.
* gst/rtp/gstrtpmp4gpay.c: (gst_rtp_mp4g_pay_finalize),
(gst_rtp_mp4g_pay_new_caps), (gst_rtp_mp4g_pay_setcaps):
Don't ignore the return value of set_outcaps.
* gst/rtp/gstrtpmp4vdepay.c: (gst_rtp_mp4v_depay_setcaps),
(gst_rtp_mp4v_depay_process):
Clean up caps negotiation.
Don't ignore the return value of setcaps.
No need to validate the buffer, the base class does that for us.
No need to set caps on buffers, subclass does that for us.
* gst/rtp/gstrtpmp4vpay.c: (gst_rtp_mp4v_pay_new_caps),
(gst_rtp_mp4v_pay_setcaps):
Don't ignore the return value of set_outcaps.
* gst/rtp/gstrtpmpadepay.c: (gst_rtp_mpa_depay_setcaps),
(gst_rtp_mpa_depay_process):
Clean up caps negotiation.
Don't ignore the return value of setcaps.
No need to validate the buffer, the base class does that for us.
Use the marker bit to set the DISCONT flag on outgoing buffers.
* gst/rtp/gstrtpmpapay.c: (gst_rtp_mpa_pay_setcaps):
Don't ignore the return value of set_outcaps.
* gst/rtp/gstrtpmpvdepay.c: (gst_rtp_mpv_depay_setcaps),
(gst_rtp_mpv_depay_process):
Clean up caps negotiation.
Actually set output caps.
No need to validate the buffer, the base class does that for us.
* gst/rtp/gstrtpmpvpay.c: (gst_rtp_mpv_pay_setcaps):
Don't ignore the return value of set_outcaps.
* gst/rtp/gstrtppcmadepay.c: (gst_rtp_pcma_depay_setcaps),
(gst_rtp_pcma_depay_process):
Clean up caps negotiation.
Set output buffer duration because we can.
Use the marker bit to set the DISCONT flag on outgoing buffers.
* gst/rtp/gstrtppcmapay.c: (gst_rtp_pcma_pay_setcaps):
Don't ignore the return value of set_outcaps.
* gst/rtp/gstrtppcmudepay.c: (gst_rtp_pcmu_depay_setcaps),
(gst_rtp_pcmu_depay_process):
Clean up caps negotiation.
Use the marker bit to set the DISCONT flag on outgoing buffers.
* gst/rtp/gstrtppcmupay.c: (gst_rtp_pcmu_pay_setcaps):
Don't ignore the return value of set_outcaps.
* gst/rtp/gstrtpspeexdepay.c: (gst_rtp_speex_depay_init),
(gst_rtp_speex_depay_setcaps), (gst_rtp_speex_depay_process):
Clean up caps negotiation.
Set output caps on the pad and header buffers.
Set duration on output buffers because we can.
* gst/rtp/gstrtpspeexpay.c: (gst_rtp_speex_pay_parse_ident):
Don't ignore the return value of set_outcaps.
* gst/rtp/gstrtpsv3vdepay.c: (gst_rtp_sv3v_depay_setcaps),
(gst_rtp_sv3v_depay_process):
Clean up caps negotiation.
No need to validate the buffer, the base class does that for us.
No need to set caps out output buffers, subclass does that.
* gst/rtp/gstrtptheoradepay.c: (gst_rtp_theora_depay_setcaps),
(gst_rtp_theora_depay_process):
Don't ignore the return value of setcaps.
No need to validate the buffer, the base class does that for us.
* gst/rtp/gstrtptheorapay.c: (gst_rtp_theora_pay_class_init),
(gst_rtp_theora_pay_flush_packet), (encode_base64),
(gst_rtp_theora_pay_finish_headers), (gst_rtp_theora_pay_parse_id),
(gst_rtp_theora_pay_handle_buffer):
Don't ignore the return value of set_outcaps.
* gst/rtp/gstrtpvorbisdepay.c: (gst_rtp_vorbis_depay_setcaps),
(gst_rtp_vorbis_depay_process):
Don't ignore the return value of setcaps.
No need to validate the buffer, the base class does that for us.
* gst/rtp/gstrtpvorbispay.c: (gst_rtp_vorbis_pay_finish_headers):
Don't ignore the return value of set_outcaps.
* gst/rtp/gstrtpvrawdepay.c: (gst_rtp_vraw_depay_setcaps):
Clean up caps negotiation, don't ignore setcaps return.
* gst/rtp/gstrtpvrawpay.c: (gst_rtp_vraw_pay_setcaps):
Don't ignore the return value of set_outcaps.
2008-10-27 11:03:53 +00:00
Wim Taymans
99eb36eac0 gst/matroska/matroska-demux.c: Forward unknown events upstream.
Original commit message from CVS:
* gst/matroska/matroska-demux.c:
(gst_matroska_demux_handle_src_event):
Forward unknown events upstream.
2008-10-27 10:35:07 +00:00
Sebastian Dröge
ebd13c46d4 gst/autodetect/: Fix "Since" tags in the documentation.
Original commit message from CVS:
* gst/autodetect/gstautoaudiosrc.c:
(gst_auto_audio_src_class_init):
* gst/autodetect/gstautovideosrc.c:
(gst_auto_video_src_class_init):
Fix "Since" tags in the documentation.
2008-10-27 09:04:37 +00:00
Stefan Kost
a6f4df463d gst/autodetect/: Implement src plugins. Little code/string cleanup in the sinks.
Original commit message from CVS:
* gst/autodetect/Makefile.am:
* gst/autodetect/gstautoaudiosink.c:
* gst/autodetect/gstautoaudiosrc.c:
* gst/autodetect/gstautoaudiosrc.h:
* gst/autodetect/gstautodetect.c:
* gst/autodetect/gstautovideosink.c:
* gst/autodetect/gstautovideosrc.c:
* gst/autodetect/gstautovideosrc.h:
Implement src plugins. Little code/string cleanup in the sinks.
Fixes #523813.
2008-10-27 08:54:30 +00:00
Peter Kjellerstedt
40d198cfd8 gst/matroska/matroska-mux.c: Fix a memory leak when pads are requested but the pipeline never goes into PLAYING.
Original commit message from CVS:
Patch by: Peter Kjellerstedt <pkj at axis com>
* gst/matroska/matroska-mux.c: (gst_matroska_mux_reset),
(gst_matroska_mux_request_new_pad), (gst_matroska_mux_release_pad):
Fix a memory leak when pads are requested but the pipeline never
goes into PLAYING.
Correctly remove request pads, no matter if they have collected
data or not.
Fixes bug #557710.
2008-10-27 08:45:11 +00:00
Sebastian Dröge
d956310612 gst/udp/gstudpnetutils.h: Define the correct WINVER so getaddinfo() can be used when using mingw32. Fixes bug #557294.
Original commit message from CVS:
Patch by: <lrn1986 at gmail dot com>
* gst/udp/gstudpnetutils.h:
Define the correct WINVER so getaddinfo() can be used when using
mingw32. Fixes bug #557294.
2008-10-27 08:40:02 +00:00
Sebastian Dröge
cbec4b2d9d gst/udp/: Fix "argument type mismatch" compiler warnings on Windows.
Original commit message from CVS:
Patch by: <lrn1986 at gmail dot com>
* gst/udp/gstdynudpsink.c: (gst_dynudpsink_render):
* gst/udp/gstmultiudpsink.c: (gst_multiudpsink_render):
* gst/udp/gstudpsrc.c: (gst_udpsrc_create):
Fix "argument type mismatch" compiler warnings on Windows.
Fixes bug #557293.
2008-10-27 08:36:43 +00:00
Sebastian Dröge
3ca3d1de2b gst/equalizer/gstiirequalizer.c: Don't calculate the filter coefficients for every single buffer but only when it's n...
Original commit message from CVS:
* gst/equalizer/gstiirequalizer.c: (update_coefficients):
Don't calculate the filter coefficients for every single buffer
but only when it's needed. Fixes bug #557260.
2008-10-27 08:30:51 +00:00
Mark Nauwelaerts
772201830f gst/avi/gstavimux.c: Fix VPRP chunk setup in avimux.
Original commit message from CVS:
* gst/avi/gstavimux.c:
Fix VPRP chunk setup in avimux.
Fixes: #556010
Patch By: Mark Nauwelaerts <mark.nauwelaerts@collabora.co.uk>
2008-10-21 12:42:45 +00:00
Wim Taymans
8508561fcc gst/videobox/gstvideobox.c: support dynamically changing properties in videobox
Original commit message from CVS:
* gst/videobox/gstvideobox.c:
support dynamically changing properties in videobox
Fixed: #557085
Patch By: Wim Taymans <wim.taymans@collabora.co.uk>
2008-10-21 12:38:35 +00:00
Edward Hervey
1297b556c7 gst/avi/gstavidemux.c: Skip entries for streams that don't have a output pad yet, thereby avoiding calling pad functi...
Original commit message from CVS:
* gst/avi/gstavidemux.c: (gst_avi_demux_stream_scan):
Skip entries for streams that don't have a output pad yet, thereby
avoiding calling pad functions with a NULL pad.
Fixes #556424
2008-10-15 15:42:29 +00:00
Edward Hervey
8e8e2bf451 gst/qtdemux/qtdemux.c: Remove previous wrong commit
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: Remove previous wrong commit
* tests/check/elements/icydemux.c: (icydemux_found_pad):
Remove problematic and useless refcount check.
Fixes #556381
2008-10-15 09:39:27 +00:00
Edward Hervey
0af48261b4 gst/qtdemux/qtdemux.c: Remove problematic and useless refcount check.
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (qtdemux_parse_node):
Remove problematic and useless refcount check.
Fixes #556381
2008-10-15 09:27:27 +00:00
Wim Taymans
539627e049 gst/rtsp/gstrtspsrc.c: Return TRUE instead of FALSE from the event handler when we swallowed the event.
Original commit message from CVS:
* gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_handle_src_event):
Return TRUE instead of FALSE from the event handler when we swallowed the
event.
2008-10-09 14:27:12 +00:00
Wim Taymans
52e9c2a32b gst/avi/gstavidemux.c: Reset header state. Fixes #555321.
Original commit message from CVS:
* gst/avi/gstavidemux.c: (gst_avi_demux_reset),
(gst_avi_demux_parse_subindex), (gst_avi_demux_parse_index):
Reset header state. Fixes #555321.
2008-10-08 14:47:14 +00:00
Wim Taymans
b9a1894e5c gst/avi/gstavidemux.*: For timestamping audio packets we need to take into account the amount of blocks in one entry ...
Original commit message from CVS:
* gst/avi/gstavidemux.c: (gst_avi_demux_parse_subindex),
(gst_avi_demux_parse_stream), (gst_avi_demux_parse_index):
* gst/avi/gstavidemux.h:
For timestamping audio packets we need to take into account the
amount of blocks in one entry using the blockalign. Fixes some sync
issues with zero-padded audio blocks in the beginning of avi files.
2008-10-08 13:31:44 +00:00
Wim Taymans
0e9db391c7 gst/multifile/gstmultifilesrc.c: Implement DEFAULT and BUFFER position queries. See #555260.
Original commit message from CVS:
* gst/multifile/gstmultifilesrc.c: (gst_multi_file_src_class_init),
(gst_multi_file_src_query):
Implement DEFAULT and BUFFER position queries. See #555260.
2008-10-08 10:42:26 +00:00
Wim Taymans
b17599a297 gst/rtp/gstrtpamrdepay.c: Mark DISCONT on output buffers when the marker bit signals a new talk spurt.
Original commit message from CVS:
* gst/rtp/gstrtpamrdepay.c: (gst_rtp_amr_depay_class_init),
(gst_rtp_amr_depay_process):
Mark DISCONT on output buffers when the marker bit signals a new talk
spurt.
* gst/rtp/gstrtpamrpay.c: (gst_rtp_amr_pay_handle_buffer):
Set the marker bit for buffers with a DISCONT flag to signal a talk
spurt.
2008-09-26 14:44:49 +00:00
Wim Taymans
c77bfaacb4 gst/rtp/: Added MP4A-LATM payloader to match the depayloader.
Original commit message from CVS:
* gst/rtp/Makefile.am:
* gst/rtp/gstrtp.c: (plugin_init):
* gst/rtp/gstrtpmp4apay.c: (gst_rtp_mp4a_pay_get_type),
(gst_rtp_mp4a_pay_base_init), (gst_rtp_mp4a_pay_class_init),
(gst_rtp_mp4a_pay_init), (gst_rtp_mp4a_pay_finalize),
(gst_rtp_mp4a_pay_parse_audio_config), (gst_rtp_mp4a_pay_new_caps),
(gst_rtp_mp4a_pay_setcaps), (gst_rtp_mp4a_pay_handle_buffer),
(gst_rtp_mp4a_pay_change_state), (gst_rtp_mp4a_pay_plugin_init):
* gst/rtp/gstrtpmp4apay.h:
Added MP4A-LATM payloader to match the depayloader.
2008-09-26 13:55:48 +00:00
Wim Taymans
1dcf0755c5 gst/videomixer/videomixer.c: Handle segments a little better. Fixes #537361.
Original commit message from CVS:
* gst/videomixer/videomixer.c: (gst_videomixer_fill_queues),
(gst_videomixer_sink_event):
Handle segments a little better. Fixes #537361.
2008-09-25 15:11:16 +00:00
Wim Taymans
b1dfdc758e gst/rtsp/gstrtspsrc.c: Don't assume the server supports PAUSE by default. Fixes #551048.
Original commit message from CVS:
* gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_parse_methods):
Don't assume the server supports PAUSE by default. Fixes #551048.
2008-09-25 12:07:46 +00:00
Wim Taymans
712cd620af gst/udp/gstudpsrc.c: Switch on the socket family to get the addrlen size right.
Original commit message from CVS:
* gst/udp/gstudpsrc.c: (gst_udpsrc_class_init),
(gst_udpsrc_set_uri), (gst_udpsrc_start):
Switch on the socket family to get the addrlen size right.
2008-09-25 11:30:35 +00:00
Daniel Franke
edd6239979 gst/udp/gstudpsrc.c: OS X's bind() implementation is picky about its addrlen parameter and fails with EINVAL if it is...
Original commit message from CVS:
Patch by: Daniel Franke <df at dfranke dot us>
* gst/udp/gstudpsrc.c: (gst_udpsrc_create), (gst_udpsrc_start):
OS X's bind() implementation is picky about its addrlen parameter and
fails with EINVAL if it is larger than expected for the socket's address
family. Set the length to the expected length instead. Fixes #553191.
2008-09-25 10:34:39 +00:00
Wim Taymans
bf8777356b gst/rtsp/gstrtspsrc.c: Handle the case where we cannot do desribe or when the describe result does not contain a vali...
Original commit message from CVS:
* gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_open):
Handle the case where we cannot do desribe or when the describe result
does not contain a valid SDP message.
2008-09-23 18:08:56 +00:00
Wim Taymans
34a8fa06f9 gst/udp/gstmultiudpsink.c: Fix setting the qos.
Original commit message from CVS:
* gst/udp/gstmultiudpsink.c: (gst_multiudpsink_set_property):
Fix setting the qos.
2008-09-23 17:31:22 +00:00
Edward Hervey
53a576bb6f gst/qtdemux/qtdemux.c: Some 'broken' files out there have atom lengths of zero... which basically results in qtdemux ...
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (gst_qtdemux_loop_state_header),
(gst_qtdemux_chain):
Some 'broken' files out there have atom lengths of zero...
which basically results in qtdemux consuming that atom again and again
until the *end of night* !
Detect that and emits an adequate element error message.
2008-09-17 14:50:42 +00:00
Jan Schmidt
a236a2df36 gst/: Fix build flags order.
Original commit message from CVS:
* gst/interleave/Makefile.am:
* gst/matroska/Makefile.am:
Fix build flags order.
* tests/check/elements/audioamplify.c: (GST_START_TEST):
* tests/check/elements/audiodynamic.c: (GST_START_TEST):
* tests/check/elements/audioinvert.c: (GST_START_TEST):
* tests/check/elements/audiopanorama.c: (GST_START_TEST):
Format fixes.
* tests/check/elements/multifile.c:
Pull in unistd.h
2008-09-17 13:49:04 +00:00
Wim Taymans
1c6a371d0c gst/rtp/gstrtpmp4gdepay.*: Handle interleaved streams by reordering AU in a queue.
Original commit message from CVS:
* gst/rtp/gstrtpmp4gdepay.c: (gst_rtp_mp4g_depay_init),
(gst_rtp_mp4g_depay_finalize), (gst_rtp_mp4g_depay_setcaps),
(gst_rtp_mp4g_depay_clear_queue), (gst_rtp_mp4g_depay_flush_queue),
(gst_rtp_mp4g_depay_queue), (gst_rtp_mp4g_depay_process),
(gst_rtp_mp4g_depay_change_state):
* gst/rtp/gstrtpmp4gdepay.h:
Handle interleaved streams by reordering AU in a queue.
2008-09-15 21:10:23 +00:00
Wim Taymans
fe9b449678 gst/rtp/gstrtpmp4gdepay.c: Change some of the ranges in the caps, mostly for the amount of bits we can use.
Original commit message from CVS:
* gst/rtp/gstrtpmp4gdepay.c: (gst_bs_parse_init),
(gst_bs_parse_read), (gst_rtp_mp4g_depay_process):
Change some of the ranges in the caps, mostly for the amount of bits we
can use.
Added a little bitstream parse and use it to parse the AU header fields.
Check for malformed and wrongly sized packets better.
Implement more header field parsing.
Handle the size of fragmented packets correctly.
2008-09-15 16:04:26 +00:00
Jonathan Matthew
50eed1907b gst/qtdemux/qtdemux.c: Add mapping for 'tiff' => image/tiff
Original commit message from CVS:
Patch by: Jonathan Matthew <notverysmart@gmail.com>
* gst/qtdemux/qtdemux.c: (qtdemux_video_caps):
Add mapping for 'tiff' => image/tiff
Fixes #552213
2008-09-14 11:32:15 +00:00
Mark Nauwelaerts
bf5ffabf4c gst/qtdemux/: Add support for video/mj2 mime-type and its additional atoms/boxes.
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (gst_qtdemux_change_state),
(gst_qtdemux_loop_state_header), (qtdemux_parse_node),
(qtdemux_parse_trak), (qtdemux_video_caps):
* gst/qtdemux/qtdemux.h:
* gst/qtdemux/qtdemux_fourcc.h:
* gst/qtdemux/qtdemux_types.c:
Add support for video/mj2 mime-type and its additional atoms/boxes.
Fixes #550646.
2008-09-03 12:39:35 +00:00
Stefan Kost
d64815f75f gst/debug/gsttaginject.c: Add warning when tags parameter is unparsable and give example for quoting in the docs.
Original commit message from CVS:
* gst/debug/gsttaginject.c:
Add warning when tags parameter is unparsable and give example for
quoting in the docs.
2008-09-03 11:10:25 +00:00
Wim Taymans
105e002337 gst/qtdemux/qtdemux.c: Add mapping for IMA Loki SDL MJPEG ADPCM codec.
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (qtdemux_audio_caps):
Add mapping for IMA Loki SDL MJPEG ADPCM codec.
Add some alternative byteswapped mappings that seem to pop up sometimes.
Fixes #550288.
2008-09-02 15:27:49 +00:00
Tim-Philipp Müller
5c4b6ce079 Make stuff compile with GST_DISABLE_GST_DEBUG.
Original commit message from CVS:
* ext/raw1394/gsthdv1394src.c: (gst_hdv1394src_create):
* gst/alpha/gstalpha.c: (gst_alpha_get_unit_size):
* gst/audiofx/audiocheblimit.c: (generate_coefficients):
* gst/avi/gstavidemux.c: (gst_avi_demux_src_convert):
* gst/matroska/ebml-read.c: (gst_ebml_read_element_id),
(gst_ebml_read_element_length):
* gst/matroska/matroska-demux.c:
(gst_matroska_demux_check_subtitle_buffer):
Make stuff compile with GST_DISABLE_GST_DEBUG.
2008-08-30 14:15:03 +00:00
Michael Smith
331b016659 gst/law/: Ref caps before passing to gst_pad_template_new(), since that takes ownership.
Original commit message from CVS:
* gst/law/alaw.c:
* gst/law/mulaw.c:
Ref caps before passing to gst_pad_template_new(), since that takes
ownership.
2008-08-29 00:28:55 +00:00
Mersad Jelacic
9b08b5307f gst/multipart/: Convert audio/x-adpcm to and from the audio/G726-X in the muxer and demuxer. Fixes #549551.
Original commit message from CVS:
Patch by: Mersad Jelacic <mersad at axis dot com>
* gst/multipart/multipartdemux.c:
* gst/multipart/multipartmux.c: (gst_multipart_mux_get_mime):
Convert audio/x-adpcm to and from the audio/G726-X in the muxer and
demuxer. Fixes #549551.
2008-08-28 10:09:16 +00:00
Tim-Philipp Müller
2664bb269e gst/icydemux/gsticydemux.c: Small docs fix: in the example pipeline, we need to pass iradio-mode=true to the source, ...
Original commit message from CVS:
* gst/icydemux/gsticydemux.c:
Small docs fix: in the example pipeline, we need to pass
iradio-mode=true to the source, so the server actually sends
an ICY stream.
2008-08-27 15:42:11 +00:00
Stefan Kost
cc3a607d0c gst/: Ignore files.
Original commit message from CVS:
* gst/goom/.cvsignore:
* gst/goom2k1/.cvsignore:
Ignore files.
2008-08-26 08:00:57 +00:00
Edward Hervey
dbea08db34 gst/matroska/: Add Real[Audio|Video] support to Matroska containers.
Original commit message from CVS:
* gst/matroska/matroska-demux.c: (gst_matroska_demux_send_event),
(gst_matroska_demux_video_caps), (gst_matroska_demux_audio_caps):
* gst/matroska/matroska-mux.c:
(gst_matroska_mux_video_pad_setcaps),
(gst_matroska_mux_audio_pad_setcaps), (gst_matroska_mux_finish):
Add Real[Audio|Video] support to Matroska containers.
It works fine for:
* decoding real audio/video streams contained in mkv
* 'transmuxing' real (.rm) files into .mkv files
It will not work though for encoding real[audio/video] streams that
don't contain the 'mdpr_data' extra data on the caps.
The reason why this will not work is because I never intended to
duplicate virtually all the 'mdpr' block creation into mkvmux.
Fixes #536067
2008-08-25 14:15:43 +00:00
Wim Taymans
c0826dc21d gst/law/: The encoder can't really renegotiate at the time they perform a pad-alloc so make the srcpads use fixed caps.
Original commit message from CVS:
* gst/law/alaw-encode.c: (gst_alaw_enc_init), (gst_alaw_enc_chain):
* gst/law/mulaw-conversion.c:
* gst/law/mulaw-encode.c: (gst_mulawenc_init),
(gst_mulawenc_chain):
The encoder can't really renegotiate at the time they perform a
pad-alloc so make the srcpads use fixed caps.
Check the buffer size after a pad-alloc because the returned size might
not be right when the downstream element does not know the size of the
new buffer (capsfilter). Fixes #549073.
2008-08-25 09:48:06 +00:00
Sebastian Dröge
1e10b33f15 gst/autodetect/Makefile.am: Don't link the autodetect plugin with GConf as it doesn't use GConf. Fixes bug #545463.
Original commit message from CVS:
* gst/autodetect/Makefile.am:
Don't link the autodetect plugin with GConf as it doesn't
use GConf. Fixes bug #545463.
2008-08-22 16:04:02 +00:00
Sebastian Dröge
42998c9438 gst/matroska/ebml-read.c: Change some GST_ELEMENT_ERRORs to GST_ERROR_OBJECT to make it possible to ignore errors and...
Original commit message from CVS:
* gst/matroska/ebml-read.c: (gst_ebml_read_element_id),
(gst_ebml_read_element_length), (gst_ebml_read_uint),
(gst_ebml_read_sint), (gst_ebml_read_float),
(gst_ebml_read_header):
Change some GST_ELEMENT_ERRORs to GST_ERROR_OBJECT to make it
possible to ignore errors and not post any ERROR messages on
the bus.
* gst/matroska/matroska-demux.c:
(gst_matroska_demux_parse_contents):
Ignore any errors and not just EOS when parsing the contents of
a SeekHead. Errors here are usually caused by truncated files
and playback of the file works fine. Fixes playback of the
audio_only_chapter_seekbroken.mka file from the MPlayer samples
archive.
2008-08-22 12:24:23 +00:00
Zaheer Abbas Merali
a10d127c35 gst/multipart/: Conform to RFC2046. audio/basic is mulaw 8000Hz mono.
Original commit message from CVS:
* gst/multipart/multipartdemux.c:
* gst/multipart/multipartmux.c:
Conform to RFC2046. audio/basic is mulaw 8000Hz mono.
2008-08-22 11:29:26 +00:00
Sebastian Dröge
332f465dc3 gst/wavenc/gstwavenc.c: Revert the last commit. wavenc still supports width!=depth for 32 bit width. Thanks Tim.
Original commit message from CVS:
* gst/wavenc/gstwavenc.c: (gst_wavenc_chain):
Revert the last commit. wavenc still supports width!=depth for 32 bit
width. Thanks Tim.
2008-08-21 13:27:12 +00:00
Sebastian Dröge
698b432673 gst/matroska/matroska-demux.c: If the duration of a block is unknown only use the timestamp for the first lace and us...
Original commit message from CVS:
* gst/matroska/matroska-demux.c:
(gst_matroska_demux_parse_blockgroup_or_simpleblock):
If the duration of a block is unknown only use the timestamp for the
first lace and use GST_CLOCK_TIME_NONE as duration for the following
laces. Otherwise every lace has the same timestamp which leads to
various problems. Really fixes bug #548831.
2008-08-21 13:22:06 +00:00
Sebastian Dröge
cbccea33ec gst/wavenc/gstwavenc.c: If we're not allowing width!=depth in wavenc we should also disable the code that was added t...
Original commit message from CVS:
* gst/wavenc/gstwavenc.c: (gst_wavenc_chain):
If we're not allowing width!=depth in wavenc we should also disable
the code that was added to support width!=depth.
2008-08-21 12:56:01 +00:00
Sebastian Dröge
51cc968198 gst/matroska/matroska-demux.c: Don't calculate the default duration of a frame from the audio sampling rate. This onl...
Original commit message from CVS:
* gst/matroska/matroska-demux.c: (gst_matroska_demux_add_stream):
Don't calculate the default duration of a frame from the audio sampling
rate. This only works for raw audio if every frame contains a single
sample and results in broken buffer durations for other formats
if no specified default duration is given or the blocks have no
duration. Fixes bug #548831.
2008-08-21 12:52:47 +00:00
Sebastian Dröge
812954d1e9 gst/matroska/matroska-demux.c: Allow zero sized blocks instead of returning GST_FLOW_OK. Such blocks are used for tex...
Original commit message from CVS:
* gst/matroska/matroska-demux.c:
(gst_matroska_demux_parse_blockgroup_or_simpleblock):
Allow zero sized blocks instead of returning GST_FLOW_OK. Such blocks
are used for text/plain subtitles as a gap-filler in some files.
2008-08-21 12:34:33 +00:00
Wim Taymans
7f88043553 gst/rtsp/gstrtspgoogle.c: Things that can happen when your brain is in google mode trying to deal with their google r...
Original commit message from CVS:
* gst/rtsp/gstrtspgoogle.c:
Things that can happen when your brain is in google mode trying to
deal with their google rtsp server extensions and trying to type your
google mail account.
2008-08-20 17:42:21 +00:00
Wim Taymans
dd54e000ea gst/rtsp/: Add google RTSP extension, it can only handle udp and responds with unsupported if we do anything else. Fi...
Original commit message from CVS:
* gst/rtsp/Makefile.am:
* gst/rtsp/gstrtsp.c: (plugin_init):
* gst/rtsp/gstrtspgoogle.c: (gst_rtsp_google_before_send),
(gst_rtsp_google_after_send), (gst_rtsp_google_get_transports),
(_do_init), (gst_rtsp_google_base_init),
(gst_rtsp_google_class_init), (gst_rtsp_google_init),
(gst_rtsp_google_finalize), (gst_rtsp_google_change_state),
(gst_rtsp_google_extension_init):
* gst/rtsp/gstrtspgoogle.h:
Add google RTSP extension, it can only handle udp and responds with
unsupported if we do anything else. Fixes #546465.
* gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_connection_send),
(gst_rtspsrc_connection_receive), (gst_rtspsrc_loop_send_cmd),
(gst_rtspsrc_create_transports_string),
(gst_rtspsrc_setup_streams), (gst_rtspsrc_open),
(gst_rtspsrc_close), (gst_rtspsrc_pause):
Make transport setup code a bit better using GString.
Add some more debug.
Check for closed connections before doing anything on them.
2008-08-20 17:30:19 +00:00
Peter Kjellerstedt
7431491470 gst/udp/: Avoid leaking internally allocated file descriptors when setting custom file descriptors. Fixes #543101.
Original commit message from CVS:
Patch by: Peter Kjellerstedt <pkj at axis com>
* gst/udp/gstdynudpsink.c: (gst_dynudpsink_init),
(gst_dynudpsink_finalize), (gst_dynudpsink_set_property),
(gst_dynudpsink_init_send), (gst_dynudpsink_close):
* gst/udp/gstmultiudpsink.c: (gst_multiudpsink_init),
(gst_multiudpsink_finalize), (gst_multiudpsink_set_property):
* gst/udp/gstudpsrc.c: (gst_udpsrc_finalize),
(gst_udpsrc_set_property):
Avoid leaking internally allocated file descriptors when setting
custom file descriptors. Fixes #543101.
2008-08-20 11:51:38 +00:00
Wim Taymans
0dfa54f450 gst/rtsp/gstrtspsrc.c: Don't try to configure RTCP back to the server when the server did not give us a valid port nu...
Original commit message from CVS:
* gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_stream_configure_udp_sink):
Don't try to configure RTCP back to the server when the server did not
give us a valid port number.
2008-08-20 11:48:46 +00:00
Wim Taymans
3033108c05 gst/videobox/gstvideobox.c: Use new basetransform method to renegotiate. Fixes #544956.
Original commit message from CVS:
* gst/videobox/gstvideobox.c: (gst_video_box_set_property):
Use new basetransform method to renegotiate. Fixes #544956.
* tests/icles/Makefile.am:
* tests/icles/videobox-test.c: (make_pipeline), (main):
Add videobox renegotiation example.
2008-08-20 10:59:52 +00:00
David Schleef
de44b9743b gst/wavenc/gstwavenc.c: Remove depth ranges and replace with sane values. Fixes #548530.
Original commit message from CVS:
* gst/wavenc/gstwavenc.c: Remove depth ranges and replace
with sane values.  Fixes #548530.
2008-08-19 21:03:22 +00:00
Edward Hervey
25665a0df3 gst/avi/gstavidemux.c: Some AVI 2.0 (ODML) files don't respect the 'specifications' completely and instead of using t...
Original commit message from CVS:
* gst/avi/gstavidemux.c: (gst_avi_demux_read_subindexes_pull),
(gst_avi_demux_read_subindexes_push):
Some AVI 2.0 (ODML) files don't respect the 'specifications' completely
and instead of using the 'ix##' nomenclature, use '##ix'.
They're still valid though, this fixes the duration and indexes for
virtually all the ODML files I have.
2008-08-16 14:54:56 +00:00
Olivier Crete
87fd8ada34 gst/rtp/: Update the vorbis RTP pay/depay to RFC 5215.
Original commit message from CVS:
Patch by: Olivier Crete <tester at tester dot ca>
* gst/rtp/gstrtpvorbisdepay.c: (gst_rtp_vorbis_depay_setcaps),
(gst_rtp_vorbis_depay_process):
* gst/rtp/gstrtpvorbispay.c: (gst_rtp_vorbis_pay_finish_headers):
Update the vorbis RTP pay/depay to RFC 5215.
Fixes #547842.
2008-08-15 17:26:18 +00:00
David Schleef
62491dcb74 gst/qtdemux/qtdemux.c: Add 'hdv6' as a HDV format for 1080i/60 with 3:2 pulldown, i.e., 24p.
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: Add 'hdv6' as a HDV format for 1080i/60
with 3:2 pulldown, i.e., 24p.
2008-08-14 22:07:02 +00:00
Stefan Kost
a12235aec7 gst/spectrum/gstspectrum.c: Don't terminate on fabs(in)>1.0. Init doubles as doubles.
Original commit message from CVS:
* gst/spectrum/gstspectrum.c:
Don't terminate on fabs(in)>1.0. Init doubles as doubles.
2008-08-13 09:17:20 +00:00
Edward Hervey
9b7172ae9e gst/level/gstlevel.c: Fix compilation (also known as the classic 'fix code that someone committed without compiling i...
Original commit message from CVS:
* gst/level/gstlevel.c: (gst_level_message_new):
Fix compilation (also known as the classic 'fix code that someone
committed without compiling it first').
2008-08-11 10:53:06 +00:00
Stefan Kost
20b5b4c2d9 gst/level/gstlevel.c: Little renaming (l -> level).
Original commit message from CVS:
* gst/level/gstlevel.c:
Little renaming (l -> level).
* gst/spectrum/gstspectrum.c:
* gst/spectrum/gstspectrum.h:
Also send full timestamp/duration details here.
2008-08-10 15:52:42 +00:00
Stefan Kost
cac09e5a1b gst/level/gstlevel.*: Send same timestamp/duration details as videoanalysis. This gives applications better chance to...
Original commit message from CVS:
* gst/level/gstlevel.c:
* gst/level/gstlevel.h:
Send same timestamp/duration details as videoanalysis. This gives
applications better chance to sync analysis results with playback.
2008-08-10 11:32:03 +00:00
Sebastian Dröge
b7dcc19084 gst/matroska/matroska-mux.c: We need to drop one additional buffer for FLAC as the fLaC marker and STREAMINFO block a...
Original commit message from CVS:
* gst/matroska/matroska-mux.c:
(gst_matroska_mux_handle_sink_event),
(flac_streamheader_to_codecdata):
We need to drop one additional buffer for FLAC as the fLaC
marker and STREAMINFO block are merged into one buffer in the caps.
Also don't pretend to support NEWSEGMENT events, otherwise we
will most probably write some invalid data.
2008-08-09 14:02:27 +00:00
Sebastian Dröge
b6f5226f04 gst/matroska/matroska-mux.c: Add support for muxing FLAC into Matroska containers.
Original commit message from CVS:
* gst/matroska/matroska-mux.c: (flac_streamheader_to_codecdata),
(gst_matroska_mux_audio_pad_setcaps):
Add support for muxing FLAC into Matroska containers.
Fixes bug #311586.
2008-08-09 13:48:22 +00:00
Sebastian Dröge
ba69194f33 gst/matroska/matroska-demux.*: Close the current segment if we're doing a non-flushing seek and send the close-segmen...
Original commit message from CVS:
* gst/matroska/matroska-demux.c: (gst_matroska_demux_reset),
(gst_matroska_demux_element_send_event),
(gst_matroska_demux_handle_seek_event), (gst_matroska_demux_loop):
* gst/matroska/matroska-demux.h:
Close the current segment if we're doing a non-flushing seek and send
the close-segment and the new segment of the seek from the streaming
thread.
2008-08-08 16:20:26 +00:00
Stefan Kost
dfd580b207 gst/qtdemux/qtdemux.c: Use audio/x-qdm for caps. Collect some info - mplayer has a decoder for it but ffmpeg does not.
Original commit message from CVS:
* gst/qtdemux/qtdemux.c:
Use audio/x-qdm for caps. Collect some info - mplayer has a decoder
for it but ffmpeg does not.
2008-08-06 13:12:07 +00:00
Stefan Kost
1a9699c487 gst/wavparse/gstwavparse.c: Handle the list chunk and use gst_riff_parse_info() to parse the info sub-chunk.
Original commit message from CVS:
* gst/wavparse/gstwavparse.c:
Handle the list chunk and use gst_riff_parse_info() to parse the info
sub-chunk.
2008-08-05 15:05:44 +00:00
Stefan Kost
8e98d264cd gst/wavparse/gstwavparse.c: Handle the acid chunk and send tempo as part of tags. Other fields are interesting too, b...
Original commit message from CVS:
* gst/wavparse/gstwavparse.c:
Handle the acid chunk and send tempo as part of tags. Other fields are
interesting too, but need more tag-definitions. Fixes #545433.
2008-08-05 14:22:12 +00:00
Stefan Kost
6d0e3ac396 gst/wavparse/gstwavparse.c: Refactor wavparse. Call _reset() from dispose() and move old code from dispose into reset...
Original commit message from CVS:
* gst/wavparse/gstwavparse.c:
Refactor wavparse. Call _reset() from dispose() and move old code from
dispose into reset. This way we don't leak taglists when we abort
parsing. Fix some comments. Move code for skipping a chunk into extra
function. Replace chunk sizes with a const to ease readability.
2008-08-05 14:16:32 +00:00
Aurelien Grimaud
1e64691186 gst/rtsp/gstrtspsrc.c: Improve udp port setup. Fixes #545710.
Original commit message from CVS:
Patch by: Aurelien Grimaud <gstelzz at yahoo dot fr>
* gst/rtsp/gstrtspsrc.c: (gst_rtspsrc_alloc_udp_ports):
Improve udp port setup. Fixes #545710.
2008-08-05 13:57:57 +00:00
Wim Taymans
8f0079c7e2 gst/rtp/: Add MP1S depayloader.
Original commit message from CVS:
* gst/rtp/Makefile.am:
* gst/rtp/gstrtp.c: (plugin_init):
* gst/rtp/gstrtpmp1sdepay.c: (gst_rtp_mp1s_depay_base_init),
(gst_rtp_mp1s_depay_class_init), (gst_rtp_mp1s_depay_init),
(gst_rtp_mp1s_depay_setcaps), (gst_rtp_mp1s_depay_process),
(gst_rtp_mp1s_depay_set_property),
(gst_rtp_mp1s_depay_get_property),
(gst_rtp_mp1s_depay_change_state),
(gst_rtp_mp1s_depay_plugin_init):
* gst/rtp/gstrtpmp1sdepay.h:
Add MP1S depayloader.
* gst/rtsp/URLS:
Some more sample rtsp streams.
2008-08-05 13:54:18 +00:00
Wim Taymans
0f4317db20 gst/rtsp/URLS: Add another URL.
Original commit message from CVS:
* gst/rtsp/URLS:
Add another URL.
* tests/check/elements/id3v2mux.c: (test_taglib_id3mux_with_tags):
* tests/check/elements/rglimiter.c: (GST_START_TEST):
Add some more debug info.
2008-08-05 08:43:45 +00:00
Mark Nauwelaerts
19bee306fe gst/avi/gstavimux.c: Provide cbSize field for audio extra_data size, and take care to pad extra_data.
Original commit message from CVS:
* gst/avi/gstavimux.c: (gst_avi_mux_riff_get_avi_header):
Provide cbSize field for audio extra_data size, and take care to
pad extra_data.
2008-08-04 09:16:40 +00:00
Stefan Kost
815eb01af1 gst/qtdemux/qtdemux.c: Return the result of gst_pad_{start,stop}_task instead of hard-coded
Original commit message from CVS:
* gst/qtdemux/qtdemux.c:
Return the result of gst_pad_{start,stop}_task instead of hard-coded
TRUE.
2008-08-04 07:23:07 +00:00
Stefan Kost
115636d6d6 gst/qtdemux/: Add keyword tag support. Fixes #520694 for qtdemux.
Original commit message from CVS:
* gst/qtdemux/qtdemux.c:
* gst/qtdemux/qtdemux_fourcc.h:
Add keyword tag support. Fixes #520694 for qtdemux.
2008-08-04 07:17:38 +00:00
Stefan Kost
aa7a44190e gst/qtdemux/qtdemux.c: Add support for tmpo tag (BPM).
Original commit message from CVS:
* gst/qtdemux/qtdemux.c:
Add support for tmpo tag (BPM).
2008-08-04 07:05:33 +00:00
Sebastian Dröge
d0bb024e11 gst/matroska/matroska-demux.c: When receiving a SEEK event on a specific pad first search for a seek table entry for ...
Original commit message from CVS:
* gst/matroska/matroska-demux.c: (gst_matroskademux_do_index_seek),
(gst_matroska_demux_element_send_event),
(gst_matroska_demux_handle_seek_event),
(gst_matroska_demux_handle_src_event):
When receiving a SEEK event on a specific pad first search for a seek
table entry for the stream of the pad and then fall back to an entry
for a different stream.
2008-08-02 18:35:21 +00:00
Sebastian Dröge
25bc74b8a6 Build depend on core CVS for the attachment tag.
Original commit message from CVS:
* configure.ac:
* gst/matroska/matroska-ids.c: (gst_matroska_register_tags):
* gst/matroska/matroska-ids.h:
Build depend on core CVS for the attachment tag.
2008-08-02 18:20:44 +00:00
Sebastian Dröge
c4912dac78 Decode the codec private data and following ContentEncoding if necessary.
Original commit message from CVS:
* configure.ac:
* gst/matroska/Makefile.am:
* gst/matroska/lzo.c: (get_byte), (get_len), (copy),
(copy_backptr), (lzo1x_decode), (main):
* gst/matroska/lzo.h:
* gst/matroska/matroska-demux.c:
(gst_matroska_demux_read_track_encoding),
(gst_matroska_decompress_data), (gst_matroska_decode_data),
(gst_matroska_decode_buffer),
(gst_matroska_decode_content_encodings),
(gst_matroska_demux_read_track_encodings),
(gst_matroska_demux_add_stream),
(gst_matroska_demux_parse_blockgroup_or_simpleblock):
* gst/matroska/matroska-ids.h:
Decode the codec private data and following ContentEncoding if
necessary.
Support bzip2, lzo and header stripped compression. For lzo use the
ffmpeg lzo implementation as liblzo is GPL licensed.
Fix zlib decompression.
2008-08-02 18:18:05 +00:00
Sebastian Dröge
aedf04f957 gst/matroska/matroska-mux.c: Fix muxing of MP3/MP2 with different MPEG versions by calculating the duration of a fram...
Original commit message from CVS:
* gst/matroska/matroska-mux.c:
(gst_matroska_mux_audio_pad_setcaps):
Fix muxing of MP3/MP2 with different MPEG versions by calculating the
duration of a frame with the new mpegaudioversion caps field.
2008-08-02 18:11:32 +00:00
Sebastian Dröge
d43e67fa70 gst/matroska/matroska-demux.*: Allow an infinite number of stream inside Matroska containers and use a GPtrArray for ...
Original commit message from CVS:
* gst/matroska/matroska-demux.c: (gst_matroska_demux_finalize),
(gst_matroska_demux_class_init), (gst_matroska_demux_init),
(gst_matroska_demux_combine_flows), (gst_matroska_demux_reset),
(gst_matroska_demux_stream_from_num),
(gst_matroska_demux_tracknumber_unique),
(gst_matroska_demux_add_stream), (gst_matroska_demux_send_event),
(gst_matroska_demux_handle_seek_event),
(gst_matroska_demux_sync_streams),
(gst_matroska_demux_parse_blockgroup_or_simpleblock),
(gst_matroska_demux_loop):
* gst/matroska/matroska-demux.h:
Allow an infinite number of stream inside Matroska containers and use
a GPtrArray for storing them instead of allowing "only" 127 streams.
2008-08-02 18:06:20 +00:00
Sebastian Dröge
4ed1d36b7d gst/matroska/: Fix indention everywhere. A broken indent version has added newlines after every single declaration so...
Original commit message from CVS:
* gst/matroska/ebml-read.c: (gst_ebml_read_class_init),
(gst_ebml_read_change_state), (gst_ebml_read_element_level_up),
(gst_ebml_read_peek_bytes), (gst_ebml_read_element_id),
(gst_ebml_read_element_length), (gst_ebml_peek_id),
(gst_ebml_read_get_length), (gst_ebml_read_skip),
(gst_ebml_read_buffer), (gst_ebml_read_bytes),
(gst_ebml_read_uint), (gst_ebml_read_sint), (_ext2dbl),
(gst_ebml_read_float), (gst_ebml_read_ascii), (gst_ebml_read_date),
(gst_ebml_read_master), (gst_ebml_read_binary),
(gst_ebml_read_header):
* gst/matroska/ebml-write.c: (gst_ebml_write_element_id),
(gst_ebml_write_element_size), (gst_ebml_write_uint),
(gst_ebml_write_sint), (gst_ebml_write_ascii),
(gst_ebml_write_master_start), (gst_ebml_write_master_finish),
(gst_ebml_replace_uint):
* gst/matroska/matroska-demux.c: (gst_matroska_demux_reset),
(gst_matroska_demux_read_track_encoding),
(gst_matroska_demux_read_track_encodings),
(gst_matroska_demux_add_stream), (gst_matroskademux_do_index_seek),
(gst_matroska_demux_send_event),
(gst_matroska_demux_element_send_event),
(gst_matroska_demux_handle_seek_event),
(gst_matroska_demux_handle_src_event),
(gst_matroska_demux_init_stream),
(gst_matroska_demux_parse_tracks),
(gst_matroska_demux_parse_index_cuetrack),
(gst_matroska_demux_parse_index_pointentry),
(gst_matroska_demux_parse_index), (gst_matroska_demux_parse_info),
(gst_matroska_demux_parse_metadata_id_simple_tag),
(gst_matroska_demux_parse_metadata_id_tag),
(gst_matroska_demux_parse_metadata),
(gst_matroska_demux_parse_attached_file),
(gst_matroska_demux_parse_attachments),
(gst_matroska_demux_parse_chapters), (gst_matroska_ebmlnum_uint),
(gst_matroska_ebmlnum_sint), (gst_matroska_demux_push_hdr_buf),
(gst_matroska_demux_push_flac_codec_priv_data),
(gst_matroska_demux_push_xiph_codec_priv_data),
(gst_matroska_demux_push_dvd_clut_change_event),
(gst_matroska_demux_add_mpeg_seq_header),
(gst_matroska_demux_add_wvpk_header),
(gst_matroska_demux_check_subtitle_buffer),
(gst_matroska_decode_buffer),
(gst_matroska_demux_parse_blockgroup_or_simpleblock),
(gst_matroska_demux_parse_cluster),
(gst_matroska_demux_parse_contents_seekentry),
(gst_matroska_demux_parse_contents),
(gst_matroska_demux_loop_stream_parse_id),
(gst_matroska_demux_loop_stream), (gst_matroska_demux_loop),
(gst_matroska_demux_video_caps), (gst_matroska_demux_audio_caps),
(gst_matroska_demux_subtitle_caps),
(gst_matroska_demux_change_state):
* gst/matroska/matroska-ids.c:
* gst/matroska/matroska-mux.c: (gst_matroska_mux_class_init),
(gst_matroska_mux_reset), (gst_matroska_mux_handle_sink_event),
(gst_matroska_mux_video_pad_setcaps),
(xiph3_streamheader_to_codecdata),
(vorbis_streamheader_to_codecdata),
(theora_streamheader_to_codecdata),
(gst_matroska_mux_audio_pad_setcaps),
(gst_matroska_mux_request_new_pad), (gst_matroska_mux_release_pad),
(gst_matroska_mux_track_header), (gst_matroska_mux_start),
(gst_matroska_mux_write_simple_tag), (gst_matroska_mux_finish),
(gst_matroska_mux_best_pad), (gst_matroska_mux_write_data),
(gst_matroska_mux_collected), (gst_matroska_mux_change_state):
Fix indention everywhere. A broken indent version has added newlines
after every single declaration some time ago.
2008-08-02 18:01:36 +00:00
Sebastian Dröge
9cb2a4f461 gst/matroska/matroska-demux.c: If no Tracks are found error out instead of trying it again until the end of time.
Original commit message from CVS:
* gst/matroska/matroska-demux.c:
(gst_matroska_demux_loop_stream_parse_id):
If no Tracks are found error out instead of trying it again until the
end of time.
2008-08-02 17:59:05 +00:00
Sebastian Dröge
f5fdbfd416 gst/matroska/matroska-demux.c: Fix demuxing of raw integer audio. The samples are unsigned only for 8 bit and signed ...
Original commit message from CVS:
* gst/matroska/matroska-demux.c: (gst_matroska_demux_audio_caps):
Fix demuxing of raw integer audio. The samples are unsigned only for 8
bit and signed otherwise, not the other way around.
2008-08-02 17:57:31 +00:00
Sebastian Dröge
cbc3df738b gst/matroska/matroska-mux.c: Add more raw YUV formats to the list of supported formats.
Original commit message from CVS:
* gst/matroska/matroska-mux.c:
Add more raw YUV formats to the list of supported formats.
2008-08-02 17:54:04 +00:00
Sebastian Dröge
266c0bf8bf gst/matroska/matroska-mux.c: Add support for muxing raw float audio now that the spec defines the endianness and add ...
Original commit message from CVS:
* gst/matroska/matroska-mux.c:
(gst_matroska_mux_audio_pad_setcaps):
Add support for muxing raw float audio now that the spec defines the
endianness and add support for muxing raw integer audio with 24 and
32 bits.
Allow muxing of more than 8 audio channels.
2008-08-02 17:52:16 +00:00
Sebastian Dröge
0767ed3351 gst/matroska/matroska-mux.c: Add locking to the global array of used track UIDs to prevent random crashes if more tha...
Original commit message from CVS:
* gst/matroska/matroska-mux.c: (gst_matroska_mux_create_uid),
(gst_matroska_mux_reset), (gst_matroska_mux_start):
Add locking to the global array of used track UIDs to prevent random
crashes if more than a single matrosmux instance is used.
Use 64 bit values for the track UIDs.
Use the global GRandom of GLib instead of creating our own one
for the few random numbers we need every single time.
2008-08-02 17:47:32 +00:00
Edward Hervey
637854d725 gst/qtdemux/qtdemux.c: Fix segment-stop regression.
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (gst_qtdemux_activate_segment):
Fix segment-stop regression.
Add documentation regarding segments in quicktime files by Wim Taymans.
Fixes #544509
2008-07-25 14:50:03 +00:00
Michael Smith
90fdf92640 gst/goom/: Fix build with MSVC: include glib.h to define inline appropriately, use header guards where needed.
Original commit message from CVS:
* gst/goom/convolve_fx.c:
* gst/goom/filters.c:
* gst/goom/goom_config.h:
* gst/goom/goom_core.c:
* gst/goom/goom_tools.h:
Fix build with MSVC: include glib.h to define inline appropriately,
use header guards where needed.
* gst/udp/gstudpnetutils.c:
* gst/udp/gstudpsrc.c:
Fix build with MSVC: use WSA* constants/functions where appropriate, use
g_snprintf rather than snprintf.
Fixes #544433.
2008-07-23 22:01:20 +00:00
Stefan Kost
da2d6b62e9 gst/debug/gsttaginject.*: Sent tags in _transform_ip() instead of _start(). Fixes #543404 partially.
Original commit message from CVS:
* gst/debug/gsttaginject.c:
* gst/debug/gsttaginject.h:
Sent tags in _transform_ip() instead of _start(). Fixes #543404
partially.
2008-07-22 06:32:03 +00:00
Mark Nauwelaerts
964f855f8b gst/qtdemux/qtdemux.c: Revert ISO base media spec based pixel-aspect-ratio calculation.
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (gst_qtdemux_add_stream),
(qtdemux_parse_trak):
Revert ISO base media spec based pixel-aspect-ratio calculation.
Fixes #543300.
2008-07-18 20:03:07 +00:00
Sebastian Dröge
54b1c496d6 gst/debug/gsttaginject.c: Don't pass NULL taglists to gst_tag_list_is_empty().
Original commit message from CVS:
* gst/debug/gsttaginject.c: (gst_tag_inject_start):
Don't pass NULL taglists to gst_tag_list_is_empty().
2008-07-14 17:17:47 +00:00
Sebastian Dröge
0aa90f93f0 gst/udp/gstudpnetutils.c: EAI_ADDRFAMILY was obsoleted in BSD at some point. Define it to the old value (1) if it's n...
Original commit message from CVS:
* gst/udp/gstudpnetutils.c:
EAI_ADDRFAMILY was obsoleted in BSD at some point. Define it to the
old value (1) if it's not defined which should not cause any problems
as we're using it internal only anyway.
2008-07-14 13:11:14 +00:00
Alessandro Decina
365186956d gst/avi/gstavidemux.c: Fix build of avidemux on big endian architectures.
Original commit message from CVS:
Patch by: Alessandro Decina <alessandro at nnva dot org>
* gst/avi/gstavidemux.c: (gst_avi_demux_riff_parse_vprp):
Fix build of avidemux on big endian architectures.
2008-07-14 13:02:48 +00:00
Thiago Sousa Santos
a0bc9e69fe gst/qtdemux/qtdemux.c: Correctly distinguish 8bit vs 16bit raw audio. Fixes #542410.
Original commit message from CVS:
Patch by: Thiago Sousa Santos <thiagoss at lcc dot ufcg dot edu dot br>
* gst/qtdemux/qtdemux.c: (qtdemux_audio_caps):
Correctly distinguish 8bit vs 16bit raw audio.  Fixes #542410.
2008-07-10 20:47:56 +00:00
Mark Nauwelaerts
2c11fa8bb6 gst/qtdemux/qtdemux.c: Set pixel-aspect-ratio in caps using display width and height provided in track.
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: (gst_qtdemux_add_stream),
(qtdemux_parse_trak):
Set pixel-aspect-ratio in caps using display width and height
provided in track.
2008-07-08 21:05:18 +00:00
Sebastian Dröge
0db3e69da9 gst/rtp/gstrtpspeexdepay.*: Revert last change: Only the jitterbuffer is able to convert RTP to
Original commit message from CVS:
* gst/rtp/gstrtpspeexdepay.c: (gst_rtp_speex_depay_init),
(gst_rtp_speex_depay_process):
* gst/rtp/gstrtpspeexdepay.h:
Revert last change: Only the jitterbuffer is able to convert RTP to
Gstreamer timestamps and normal (de)payloaders should simply copy it.
Reopens bug #541787.
2008-07-07 15:34:12 +00:00
Stefan Kost
9f886ee1f2 gst/rtp/gstrtpvrawdepay.c: Include stdlib.h for atoi().
Original commit message from CVS:
* gst/rtp/gstrtpvrawdepay.c:
Include stdlib.h for atoi().
* gst/rtsp/gstrtspsrc.c:
Use floating point math for latencies < 0 sec in log output.
2008-07-07 10:30:51 +00:00
Tomasz Grobelny
5e2a462789 gst/rtp/gstrtpspeexdepay.*: Take timestamp from the RTP packet as a first step to fix problems with transmission over...
Original commit message from CVS:
Patch by: Tomasz Grobelny <tomasz at grobelny dot oswiecenia dot net>
* gst/rtp/gstrtpspeexdepay.c: (gst_rtp_speex_depay_init),
(gst_rtp_speex_depay_process):
* gst/rtp/gstrtpspeexdepay.h:
Take timestamp from the RTP packet as a first step to fix problems
with transmission over RTP when the network is not reliable.
Fixes bug #541787.
2008-07-07 10:16:07 +00:00
Tero Saarni
cf3286dac7 gst/udp/gstudpsrc.c: Fix parsing of udp:// URIs containing IPv6 addresses.
Original commit message from CVS:
Patch by: Tero Saarni <tero dot saarni at gmail dot com>
* gst/udp/gstudpsrc.c: (gst_udpsrc_set_uri):
Fix parsing of udp:// URIs containing IPv6 addresses.
Fixes bug #541650.
2008-07-05 19:01:28 +00:00
Sebastian Dröge
33e0d064a5 gst/matroska/matroska-demux.c: Handle position and duration query in DEFAULT format if the pad's track has a default ...
Original commit message from CVS:
* gst/matroska/matroska-demux.c: (gst_matroska_demux_class_init),
(gst_matroska_demux_add_stream), (gst_matroska_demux_query),
(gst_matroska_demux_element_query),
(gst_matroska_demux_handle_src_query),
(gst_matroska_demux_handle_seek_event):
Handle position and duration query in DEFAULT format if the
pad's track has a default frame duration set.
Fix seeking now that the segment's duration doesn't contain the
(possibly wrong or inaccurate) duration of the Matroska file.
2008-07-02 09:51:16 +00:00
Sebastian Dröge
2c38fcd1e6 gst/matroska/ebml-read.c: Use NAN constant instead of 0.0/0.0 if possible. NAN is defined in math.h except on MSVC wh...
Original commit message from CVS:
* gst/matroska/ebml-read.c: (_ext2dbl):
Use NAN constant instead of 0.0/0.0 if possible. NAN is defined
in math.h except on MSVC where it is defined in xmath.h.
Fixes compilation with MSVC.
2008-07-02 09:04:50 +00:00
Sebastian Dröge
35bcb8d8b0 gst/matroska/matroska-demux.*: Don't set the segment duration to the duration from the Matroska header as this value ...
Original commit message from CVS:
* gst/matroska/matroska-demux.c: (gst_matroska_demux_reset),
(gst_matroska_demux_handle_src_query),
(gst_matroska_demux_parse_info),
(gst_matroska_demux_loop_stream_parse_id):
* gst/matroska/matroska-demux.h:
Don't set the segment duration to the duration from the Matroska
header as this value could be wrong and is just informational.
2008-07-02 08:57:04 +00:00
Sebastian Dröge
5b68f28c94 gst/matroska/matroska-demux.c: If no Tracks element is found until the first Cluster is found search it and error out...
Original commit message from CVS:
* gst/matroska/matroska-demux.c:
(gst_matroska_demux_loop_stream_parse_id):
If no Tracks element is found until the first Cluster is found
search it and error out if none is found in the complete file.
2008-07-02 08:47:00 +00:00
Sebastian Dröge
b7bd5d283b gst/matroska/matroska-demux.c: Resync non-subtitle tracks too if a too large gap compared to other tracks is detected.
Original commit message from CVS:
* gst/matroska/matroska-demux.c: (gst_matroska_demux_sync_streams):
Resync non-subtitle tracks too if a too large gap compared to other
tracks is detected.
2008-07-02 08:14:35 +00:00
Wim Taymans
41e206534c gst/rtp/: Add raw video pay and depayloaders, see RFC4175.
Original commit message from CVS:
* gst/rtp/Makefile.am:
* gst/rtp/gstrtp.c: (plugin_init):
* gst/rtp/gstrtpvrawdepay.c: (gst_rtp_vraw_depay_base_init),
(gst_rtp_vraw_depay_class_init), (gst_rtp_vraw_depay_init),
(gst_rtp_vraw_depay_setcaps), (gst_rtp_vraw_depay_process),
(gst_rtp_vraw_depay_change_state),
(gst_rtp_vraw_depay_plugin_init):
* gst/rtp/gstrtpvrawdepay.h:
* gst/rtp/gstrtpvrawpay.c: (gst_rtp_vraw_pay_get_type),
(gst_rtp_vraw_pay_base_init), (gst_rtp_vraw_pay_class_init),
(gst_rtp_vraw_pay_init), (gst_rtp_vraw_pay_finalize),
(gst_rtp_vraw_pay_setcaps), (gst_rtp_vraw_pay_handle_buffer),
(gst_rtp_vraw_pay_plugin_init):
* gst/rtp/gstrtpvrawpay.h:
Add raw video pay and depayloaders, see RFC4175.
2008-07-01 13:28:02 +00:00
Mark Nauwelaerts
ae82126a56 gst/avi/avi-ids.h: Add vprp chunk related structures.
Original commit message from CVS:
* gst/avi/avi-ids.h:
Add vprp chunk related structures.
* gst/avi/gstavidemux.c: (gst_avi_demux_riff_parse_vprp),
(gst_avi_demux_parse_stream):
Parse optional vprp chunk and add calculated pixel-aspect-ratio
to caps.  Fixes #539482.
* gst/avi/gstavimux.h:
* gst/avi/gstavimux.c: (gst_avi_mux_pad_reset),
(gst_avi_mux_vidsink_set_caps), (gst_avi_mux_riff_get_avi_header):
Add a vprp chunk if non-trival pixel-aspect-ratio provided in caps.
2008-06-29 19:52:51 +00:00
David Schleef
3665725eaf gst/qtdemux/qtdemux.c: Add Dirac stream type
Original commit message from CVS:
* gst/qtdemux/qtdemux.c: Add Dirac stream type
2008-06-27 18:11:01 +00:00
Mark Nauwelaerts
5e6696db9d gst/avi/gstavimux.*: Add 8 bytes to current streamheader to make for a complete one and to make more players happy. ...
Original commit message from CVS:
* gst/avi/gstavimux.c: (gst_avi_mux_riff_get_avi_header):
* gst/avi/gstavimux.h:
Add 8 bytes to current streamheader to make for a complete one
and to make more players happy.  Fixes #519460.
2008-06-27 15:25:00 +00:00
Sebastian Dröge
8ca7dbfae5 gst/udp/gstudpsrc.c: Call getsockname() after the call to bind() to get updated values for the port, etc. This fixes ...
Original commit message from CVS:
* gst/udp/gstudpsrc.c: (gst_udpsrc_start):
Call getsockname() after the call to bind() to get updated values
for the port, etc. This fixes the usage of udpsrc on anonymous
binding and it's usage by rtspsrc. Fixes bugs #539372, #539548.
Thanks to Aurelien Grimaud for pointing out the obvious fix.
2008-06-25 08:12:18 +00:00
Julien Moutte
75c5d2e4ef gst/matroska/matroska-demux.c: Fix buggy format strings in macros. (makes it build on OS X again...)
Original commit message from CVS:
2008-06-23  Julien Moutte  <julien@fluendo.com>

* gst/matroska/matroska-demux.c:
(gst_matroska_demux_read_track_encoding),
(gst_matroska_demux_parse_blockgroup_or_simpleblock): Fix buggy
format strings in macros. (makes it build on OS X again...)
2008-06-23 16:13:40 +00:00
Thomas Vander Stichele
b3ac90d9e8 gst/: Added debug.
Original commit message from CVS:
* gst/rtp/gstrtptheorapay.c:
* gst/udp/gstmultiudpsink.c:
Added debug.
2008-06-20 16:24:11 +00:00
Wim Taymans
ed0c7a04b1 gst/rtp/gstrtpg726pay.c: Remove unused variable so that we can compile again.
Original commit message from CVS:
* gst/rtp/gstrtpg726pay.c: (gst_rtp_g726_pay_setcaps):
Remove unused variable so that we can compile again.
2008-06-19 11:24:54 +00:00
Peter Kjellerstedt
67e87defd6 gst/rtp/gstrtpg726pay.c: No need to check for audio/G723 and audio/32KADPCM here as they are no longer supported.
Original commit message from CVS:
* gst/rtp/gstrtpg726pay.c: (gst_rtp_g726_pay_setcaps):
No need to check for audio/G723 and audio/32KADPCM here as they are
no longer supported.
2008-06-19 11:06:29 +00:00
Sebastian Dröge
96da520095 gst/matroska/: Fix demuxing of WavPack files. Muxing is still broken.
Original commit message from CVS:
* gst/matroska/matroska-demux.c:
(gst_matroska_demux_add_wvpk_header),
(gst_matroska_demux_audio_caps):
* gst/matroska/matroska-ids.h:
Fix demuxing of WavPack files. Muxing is still broken.
2008-06-19 10:48:57 +00:00
Sebastian Dröge
7afcb8068a gst/matroska/: Add a "vfunc" to the track context for postprocessing frames and convert the wavpack and subtitle post...
Original commit message from CVS:
* gst/matroska/matroska-demux.c: (gst_matroska_track_free),
(gst_matroska_demux_add_mpeg_seq_header),
(gst_matroska_demux_add_wvpk_header),
(gst_matroska_demux_check_subtitle_buffer),
(gst_matroska_demux_parse_blockgroup_or_simpleblock),
(gst_matroska_demux_video_caps), (gst_matroska_demux_audio_caps),
(gst_matroska_demux_subtitle_caps):
* gst/matroska/matroska-ids.h:
Add a "vfunc" to the track context for postprocessing frames and
convert the wavpack and subtitle postprocessing to this vfunc.
Copy buffer flags in those functions to the new buffers too.
Parse CodecState elements of Blocks.
Add a postprocessing function for MPEG video that adds the sequence
header from the codec private data or codec state to the frames if
it's not already there.
2008-06-19 09:12:55 +00:00
Sebastian Dröge
2d79914948 gst/matroska/matroska-demux.c: If a gap of more than 1/2 second is found in one stream send a
Original commit message from CVS:
* gst/matroska/matroska-demux.c:
(gst_matroska_demux_parse_blockgroup_or_simpleblock):
If a gap of more than 1/2 second is found in one stream send a
NEWSEGMENT event to not stall the pipeline if the gap is too large.
This also fixes Matroska files where the first buffer doesn't start
at timestamp 0. Fixes bug #429322.
The duration of a block is the default duration multiplied with the
number of laces. Every lace is one frame and the default duration
is the duration of one frame. This fixes playback of files that use
lacing for some tracks.
2008-06-19 08:22:16 +00:00
Sebastian Dröge
0865a6019e gst/matroska/matroska-demux.c: Update FIXME/TODOs and only ignore EOS at the central, important place instead of seve...
Original commit message from CVS:
* gst/matroska/matroska-demux.c:
(gst_matroska_demux_parse_contents_seekentry):
Update FIXME/TODOs and only ignore EOS at the central, important place
instead of several places.
2008-06-18 20:09:28 +00:00
Wim Taymans
54f515d2c8 gst/rtp/gstrtpg726pay.c: Fix caps, See #538891.
Original commit message from CVS:
* gst/rtp/gstrtpg726pay.c:
Fix caps, See #538891.
2008-06-18 16:55:05 +00:00
Sebastian Dröge
6cf110c1e3 gst/matroska/matroska-demux.c: Improve debug output everywhere and fix the EOS logic.
Original commit message from CVS:
* gst/matroska/matroska-demux.c: (gst_matroska_demux_reset),
(gst_matroska_demux_stream_from_num),
(gst_matroska_demux_encoding_cmp),
(gst_matroska_demux_encoding_order_unique),
(gst_matroska_demux_read_track_encoding),
(gst_matroska_demux_read_track_encodings),
(gst_matroska_demux_tracknumber_unique),
(gst_matroska_demux_add_stream), (gst_matroska_demux_init_stream),
(gst_matroska_demux_parse_tracks),
(gst_matroska_demux_parse_index_cuetrack),
(gst_matroska_demux_parse_index_pointentry),
(gst_matroska_demux_parse_index), (gst_matroska_demux_parse_info),
(gst_matroska_demux_parse_metadata_id_simple_tag),
(gst_matroska_demux_parse_metadata_id_tag),
(gst_matroska_demux_parse_metadata),
(gst_matroska_demux_parse_attached_file),
(gst_matroska_demux_parse_attachments),
(gst_matroska_demux_parse_chapters),
(gst_matroska_demux_sync_streams), (gst_matroska_decode_buffer),
(gst_matroska_demux_parse_blockgroup_or_simpleblock),
(gst_matroska_demux_parse_cluster),
(gst_matroska_demux_parse_contents_seekentry),
(gst_matroska_demux_parse_contents),
(gst_matroska_demux_loop_stream_parse_id),
(gst_matroska_demux_loop):
Improve debug output everywhere and fix the EOS logic.
Check the values of the ContentEncoding elements more strictly and
don't use tracks for which it's invalid.
Check that the track number is unique for this stream.
Check that seek positions are below G_MAXINT64 as our seeks are
int64-based and overflows will fail badly.
After seeks also don't push SimpleBlocks until the first one
containing a keyframe is found. Before this was done only for normal
Blocks.
Update some FIXME/TODOs.
* gst/matroska/ebml-read.c: (gst_ebml_read_peek_bytes),
(gst_ebml_read_utf8), (gst_ebml_read_header):
Improve debug output.
* gst/matroska/matroska-ids.c:
(gst_matroska_track_init_video_context):
* gst/matroska/matroska-ids.h:
* gst/matroska/matroska-mux.c:
(gst_matroska_mux_video_pad_setcaps):
Remove eye mode and don't parse it anymore. We can't use that
information in GStreamer yet so it's useless.
2008-06-18 10:28:20 +00:00
mersad
e3141bbb49 gst/rtp/: Added G726 pay/depayloaders. Fixes #538891.
Original commit message from CVS:
Patch by: mersad <mersad at axis dot com>
* gst/rtp/Makefile.am:
* gst/rtp/gstrtp.c: (plugin_init):
* gst/rtp/gstrtpg726depay.c: (gst_rtp_g726_depay_base_init),
(gst_rtp_g726_depay_class_init), (gst_rtp_g726_depay_init),
(gst_rtp_g726_depay_setcaps), (gst_rtp_g726_depay_process),
(gst_rtp_g726_depay_plugin_init):
* gst/rtp/gstrtpg726depay.h:
* gst/rtp/gstrtpg726pay.c: (gst_rtp_g726_pay_base_init),
(gst_rtp_g726_pay_class_init), (gst_rtp_g726_pay_init),
(gst_rtp_g726_pay_setcaps), (gst_rtp_g726_pay_plugin_init):
* gst/rtp/gstrtpg726pay.h:
Added G726 pay/depayloaders. Fixes #538891.
2008-06-18 10:12:57 +00:00
Wim Taymans
198224ef58 gst/rtsp/URLS: Some more urls.
Original commit message from CVS:
* gst/rtsp/URLS:
Some more urls.
* gst/smpte/barboxwipes.c:
Add a comment
* tests/examples/rtp/server-v4l2-H264-alsasrc-PCMA.sh:
Fix typo, add audioresample to the pipeline.
2008-06-17 10:14:47 +00:00
Sebastian Dröge
a5f813b90a gst/matroska/matroska-demux.c: When comparing index elements with the same time compare their block number.
Original commit message from CVS:
* gst/matroska/matroska-demux.c: (gst_matroska_index_compare):
When comparing index elements with the same time compare their
block number.
2008-06-16 11:34:54 +00:00
Tim-Philipp Müller
350df6326d gst/matroska/matroska-demux.c: (gst_matroska_demux_parse_attached_file)
Original commit message from CVS:
* gst/matroska/matroska-demux.c:
(gst_matroska_demux_parse_attached_file)
Init variable to NULL to avoid compiler warning.
2008-06-16 11:31:06 +00:00
Sebastian Dröge
8c6d2c506a gst/matroska/: Parse Attachments and post them as GST_TAG_IMAGE if we detect it as image and otherwise as GST_TAG_ATT...
Original commit message from CVS:
* gst/matroska/Makefile.am:
* gst/matroska/matroska-demux.c: (gst_matroska_demux_reset),
(gst_matroska_demux_parse_attached_file),
(gst_matroska_demux_parse_attachments),
(gst_matroska_demux_parse_contents_seekentry),
(gst_matroska_demux_loop_stream_parse_id):
* gst/matroska/matroska-demux.h:
* gst/matroska/matroska-ids.c: (gst_matroska_register_tags):
* gst/matroska/matroska-ids.h:
* gst/matroska/matroska.c: (plugin_init):
Parse Attachments and post them as GST_TAG_IMAGE if we detect
it as image and otherwise as GST_TAG_ATTACHMENT. Include filename
and description of the attachments in the caps. Fixes bug #537622.
2008-06-16 10:59:39 +00:00
Sebastian Dröge
5e606453c0 gst/matroska/ebml-read.c: Return GST_FLOW_UNEXPECTED instead of GST_FLOW_ERROR on short reads.
Original commit message from CVS:
* gst/matroska/ebml-read.c: (gst_ebml_read_peek_bytes):
Return GST_FLOW_UNEXPECTED instead of GST_FLOW_ERROR on short reads.
If we get less bytes than requested we can't do anything except doing
our EOS logic.
2008-06-16 09:54:27 +00:00
Sebastian Dröge
94f778f952 gst/matroska/: Use a GArray for storing the Cue (i.e. seek) information, store the CueTrackPositions for every track,...
Original commit message from CVS:
* gst/matroska/matroska-demux.c: (gst_matroska_demux_reset),
(gst_matroskademux_do_index_seek),
(gst_matroska_demux_parse_index_cuetrack),
(gst_matroska_demux_parse_index_pointentry),
(gst_matroska_index_compare), (gst_matroska_demux_parse_index),
(gst_matroska_demux_parse_metadata):
* gst/matroska/matroska-demux.h:
* gst/matroska/matroska-ids.h:
Use a GArray for storing the Cue (i.e. seek) information, store
the CueTrackPositions for every track, store the block number
and optimize searching in the array by sorting it after the last
element was added.
Fix a small memory leak when trying to parse a tags element that was
already parsed.
2008-06-15 19:09:54 +00:00
Sebastian Dröge
25e2770edf gst/matroska/matroska-mux.*: Don't write another SeekHead which indexes all Clusters to the end of the file. This isn...
Original commit message from CVS:
* gst/matroska/matroska-mux.c: (gst_matroska_mux_reset),
(gst_matroska_mux_start), (gst_matroska_mux_finish),
(gst_matroska_mux_write_data):
* gst/matroska/matroska-mux.h:
Don't write another SeekHead which indexes all Clusters to the end of
the file. This isn't useful for anything and just increases filesize.
2008-06-15 15:29:29 +00:00
Sebastian Dröge
99f206c055 gst/matroska/ebml-read.c: Prevent unaligned memory access when reading floats.
Original commit message from CVS:
* gst/matroska/ebml-read.c: (_ext2dbl), (gst_ebml_read_float):
Prevent unaligned memory access when reading floats.
2008-06-15 15:01:30 +00:00
Sebastian Dröge
8012622e1b gst/matroska/: Make sure that every Tags element is only parsed once and it's containing tags are only posted once.
Original commit message from CVS:
* gst/matroska/ebml-read.c:
* gst/matroska/ebml-read.h:
* gst/matroska/matroska-demux.c: (gst_matroska_demux_reset),
(gst_matroska_demux_parse_metadata):
* gst/matroska/matroska-demux.h:
Make sure that every Tags element is only parsed once and it's
containing tags are only posted once.
2008-06-15 14:08:41 +00:00
Sebastian Dröge
3a99102c49 gst/matroska/: Handle EBML elements like Void or CRC32 in the EbmlRead base class already. They're not useful in the ...
Original commit message from CVS:
* gst/matroska/ebml-read.c: (gst_ebml_peek_id),
(gst_ebml_read_header):
* gst/matroska/matroska-demux.c: (gst_matroska_demux_add_stream),
(gst_matroska_demux_parse_tracks),
(gst_matroska_demux_parse_index_cuetrack),
(gst_matroska_demux_parse_index_pointentry),
(gst_matroska_demux_parse_index), (gst_matroska_demux_parse_info),
(gst_matroska_demux_parse_metadata_id_simple_tag),
(gst_matroska_demux_parse_metadata_id_tag),
(gst_matroska_demux_parse_metadata),
(gst_matroska_demux_parse_attachments),
(gst_matroska_demux_parse_chapters),
(gst_matroska_demux_parse_blockgroup_or_simpleblock),
(gst_matroska_demux_parse_cluster),
(gst_matroska_demux_parse_contents_seekentry),
(gst_matroska_demux_parse_contents),
(gst_matroska_demux_loop_stream_parse_id):
Handle EBML elements like Void or CRC32 in the EbmlRead base class
already. They're not useful in the matroska parser and only cause
additional code.
2008-06-15 09:43:25 +00:00
Sebastian Dröge
1051e57b36 gst/matroska/: Reverse the level list as we usually are only interested in the first element or want to add a new fir...
Original commit message from CVS:
* gst/matroska/ebml-read.c: (gst_ebml_level_free),
(gst_ebml_finalize), (gst_ebml_read_change_state),
(gst_ebml_read_element_level_up), (gst_ebml_read_master):
* gst/matroska/matroska-demux.c:
(gst_matroska_demux_parse_contents_seekentry):
Reverse the level list as we usually are only interested in the
first element or want to add a new first element. Having the
first element stored at the end and calling g_list_last() and
g_list_append() is more expensive.
Also use GSlice for allocating the GstEbmlLevel structs.
2008-06-14 15:51:25 +00:00
Tim-Philipp Müller
7a118610ed gst/debug/gsttaginject.c: Don't unref NULL taglist in finalize. Don't use c++ style comments.
Original commit message from CVS:
* gst/debug/gsttaginject.c: (gst_tag_inject_finalize),
(gst_tag_inject_class_init), (gst_tag_inject_init):
Don't unref NULL taglist in finalize. Don't use c++ style
comments.
2008-06-13 21:13:46 +00:00
Sebastian Dröge
70ceffb790 gst/matroska/: Use gst_value_serialize() and gst_value_deserialize() for transforming tags from some GType to a strin...
Original commit message from CVS:
* gst/matroska/matroska-demux.c:
(gst_matroska_demux_parse_metadata_id_simple_tag):
* gst/matroska/matroska-mux.c: (gst_matroska_mux_write_simple_tag),
(gst_matroska_mux_write_data):
Use gst_value_serialize() and gst_value_deserialize() for transforming
tags from some GType to a string and the other way around. The default
transformations in GLib don't include transformations from string to
number types.
2008-06-13 19:14:41 +00:00
Sebastian Dröge
04d1c49ef7 gst/matroska/matroska-demux.*: Only parse Tracks, SeekHead and SegmentInfo elements once but allow
Original commit message from CVS:
* gst/matroska/matroska-demux.c: (gst_matroska_demux_reset),
(gst_matroska_demux_parse_tracks),
(gst_matroska_demux_parse_index), (gst_matroska_demux_parse_info),
(gst_matroska_demux_parse_attachments),
(gst_matroska_demux_parse_chapters),
(gst_matroska_demux_parse_contents_seekentry),
(gst_matroska_demux_loop_stream_parse_id):
* gst/matroska/matroska-demux.h:
Only parse Tracks, SeekHead and SegmentInfo elements once but allow
Tags multiple times. The first ones can appear more than once but must
contain the same content as the first for backup purposes so we ignore
all but the first one. Tags can appear multiple times with different
content.
Jump to all elements except Clusters that are available from a
SeekHead to make it more likely to have all required informations
before getting to the first Clusters.
Add dummy functions for parsing Attachments and Chapters.
2008-06-13 19:07:03 +00:00
Stefan Kost
764f5106a5 gst/replaygain/: More doc updates.
Original commit message from CVS:
* gst/replaygain/gstrganalysis.c:
* gst/replaygain/gstrglimiter.c:
* gst/replaygain/gstrgvolume.c:
More doc updates.
2008-06-13 14:33:52 +00:00
Stefan Kost
b442ba6f55 docs/plugins/: docs/plugins/inspect/plugin-mythtv.xml
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:
* docs/plugins/gst-plugins-bad-plugins.args:
* docs/plugins/gst-plugins-bad-plugins.hierarchy:
* docs/plugins/gst-plugins-bad-plugins.interfaces:
* docs/plugins/gst-plugins-bad-plugins.prerequisites:
* docs/plugins/gst-plugins-bad-plugins.signals:
* docs/plugins/inspect/plugin-alsaspdif.xml:
* docs/plugins/inspect/plugin-amrwb.xml:
* docs/plugins/inspect/plugin-app.xml:
* docs/plugins/inspect/plugin-bayer.xml:
* docs/plugins/inspect/plugin-bz2.xml:
* docs/plugins/inspect/plugin-cdaudio.xml:
* docs/plugins/inspect/plugin-cdxaparse.xml:
* docs/plugins/inspect/plugin-dtsdec.xml:
* docs/plugins/inspect/plugin-dvb.xml:
* docs/plugins/inspect/plugin-dvdspu.xml:
* docs/plugins/inspect/plugin-faac.xml:
* docs/plugins/inspect/plugin-faad.xml:
* docs/plugins/inspect/plugin-fbdevsink.xml:
* docs/plugins/inspect/plugin-festival.xml:
* docs/plugins/inspect/plugin-filter.xml:
* docs/plugins/inspect/plugin-flvdemux.xml:
* docs/plugins/inspect/plugin-freeze.xml:
* docs/plugins/inspect/plugin-gsm.xml:
* docs/plugins/inspect/plugin-gstinterlace.xml:
* docs/plugins/inspect/plugin-gstrtpmanager.xml:
* docs/plugins/inspect/plugin-h264parse.xml:
* docs/plugins/inspect/plugin-interleave.xml:
* docs/plugins/inspect/plugin-jack.xml:
* docs/plugins/inspect/plugin-ladspa.xml:
* docs/plugins/inspect/plugin-metadata.xml:
* docs/plugins/inspect/plugin-mms.xml:
* docs/plugins/inspect/plugin-modplug.xml:
* docs/plugins/inspect/plugin-mpeg2enc.xml:
* docs/plugins/inspect/plugin-mpeg4videoparse.xml:
* docs/plugins/inspect/plugin-mpegtsparse.xml:
* docs/plugins/inspect/plugin-mpegvideoparse.xml:
* docs/plugins/inspect/plugin-musepack.xml:
* docs/plugins/inspect/plugin-musicbrainz.xml:
* docs/plugins/inspect/plugin-mve.xml:
* docs/plugins/inspect/plugin-mythtv.xml
* docs/plugins/inspect/plugin-nas.xml:
* docs/plugins/inspect/plugin-neon.xml:
* docs/plugins/inspect/plugin-nsfdec.xml:
* docs/plugins/inspect/plugin-nuvdemux.xml:
* docs/plugins/inspect/plugin-oss4.xml
* docs/plugins/inspect/plugin-rawparse.xml:
* docs/plugins/inspect/plugin-real.xml:
* docs/plugins/inspect/plugin-replaygain.xml:
* docs/plugins/inspect/plugin-rfbsrc.xml:
* docs/plugins/inspect/plugin-sdl.xml:
* docs/plugins/inspect/plugin-sdp.xml:
* docs/plugins/inspect/plugin-selector.xml:
* docs/plugins/inspect/plugin-sndfile.xml:
* docs/plugins/inspect/plugin-soundtouch.xml:
* docs/plugins/inspect/plugin-spcdec.xml:
* docs/plugins/inspect/plugin-speed.xml:
* docs/plugins/inspect/plugin-speexresample.xml:
* docs/plugins/inspect/plugin-stereo.xml:
* docs/plugins/inspect/plugin-subenc.xml
* docs/plugins/inspect/plugin-timidity.xml:
* docs/plugins/inspect/plugin-tta.xml:
* docs/plugins/inspect/plugin-vcdsrc.xml:
* docs/plugins/inspect/plugin-videosignal.xml:
* docs/plugins/inspect/plugin-vmnc.xml:
* docs/plugins/inspect/plugin-wildmidi.xml:
* docs/plugins/inspect/plugin-x264.xml:
* docs/plugins/inspect/plugin-xvid.xml:
* docs/plugins/inspect/plugin-y4menc.xml:
* ext/amrwb/gstamrwbdec.c:
* ext/amrwb/gstamrwbenc.c:
* ext/amrwb/gstamrwbparse.c:
* ext/dc1394/gstdc1394.c:
* ext/directfb/dfbvideosink.c:
* ext/ivorbis/vorbisdec.c:
* ext/jack/gstjackaudiosink.c:
* ext/mpeg2enc/gstmpeg2enc.cc:
* ext/mplex/gstmplex.cc:
* ext/musicbrainz/gsttrm.c:
* ext/mythtv/gstmythtvsrc.c:
* ext/theora/theoradec.c:
* ext/timidity/gsttimidity.c:
* ext/timidity/gstwildmidi.c:
* gst-libs/gst/app/gstappsink.c:
* gst/deinterlace/gstdeinterlace.c:
* gst/dvdspu/gstdvdspu.c:
* gst/festival/gstfestival.c:
* gst/freeze/gstfreeze.c:
* gst/interleave/deinterleave.c:
* gst/interleave/interleave.c:
* gst/modplug/gstmodplug.cc:
* gst/nuvdemux/gstnuvdemux.c:
Add missing elements to docs. Fix doc-markup: use convinience syntax
for examples (produces valid docbook), add several refsec2 when we
have several titles. Fix some types.
2008-06-13 11:59:23 +00:00
Wim Taymans
ccddfc5da7 gst/udp/gstudpsrc.*: Add property to control automatic join/leave of multicast groups.
Original commit message from CVS:
* gst/udp/gstudpsrc.c: (gst_udpsrc_class_init), (gst_udpsrc_init),
(gst_udpsrc_create), (gst_udpsrc_set_property),
(gst_udpsrc_get_property), (gst_udpsrc_start), (gst_udpsrc_stop):
* gst/udp/gstudpsrc.h:
Add property to control automatic join/leave of multicast groups.
Add G_LIKELY.
Remove setting caps on buffers explicitly, basesrc does that for us now.
Improve debug info.
Convert some non-fatal error into warnings.
Use g_ntohs for better portability.
Leave multicast groups when stopping.
When using external sockets, use getsockname() on them to fill up the
addr structure before calling methods that use the structure.
Should all fix #536903.
API: GstUDPSrc::auto-multicast property
2008-06-13 11:54:05 +00:00
Wim Taymans
5b751d0290 gst/udp/gstudpnetutils.c: Use g_ntohl for better portability.
Original commit message from CVS:
* gst/udp/gstudpnetutils.c: (gst_udp_is_multicast):
Use g_ntohl for better portability.
2008-06-13 11:47:28 +00:00