...
 
Commits (371)
This source diff could not be displayed because it is too large. You can view the blob instead.
......@@ -60,17 +60,5 @@ EXTRA_DIST = \
DISTCLEANFILES = _stdint.h
# check that no marshal or enumtypes files are included
# this in turn ensures that distcheck fails for missing .list files which is currently
# shadowed when the corresponding .c and .h files are included.
distcheck-hook:
@test "x" = "x`find $(distdir) -name \*-enumtypes.[ch]`" && \
test "x" = "x`find $(distdir) -name \*-marshal.[ch]`" || \
( $(ECHO) "*** Leftover enumtypes or marshal files in the tarball." && \
$(ECHO) "*** Make sure the following files are not disted:" && \
find $(distdir) -name \*-enumtypes.[ch] && \
find $(distdir) -name \*-marshal.[ch] && \
false )
include $(top_srcdir)/common/release.mak
include $(top_srcdir)/common/po.mak
This is GStreamer Plugins 0.8.7
This is GStreamer Plugins 0.8.11, "... And Thanks For All The Fix"
Changes since 0.8.10:
* new element: dvdsubdec
* new element: imagemixer
* new element: textrender
* new element: x264enc
* new element: oggparse
* important fixes for esound synchronisation
Bugs fixed since 0.8.10:
* 166528 : [playbin] hang playing dvdnav:// location
* 166783 : [PATCH] New plugin: imagemixer
* 167122 : seeking DVD stops playback
* 171563 : Vorbis support for Matroska muxer
* 301312 : dvdsubdec element
* 305754 : [PATCH] Internal GStreamer error: pad problem.
* 306555 : chain-based text rendering element
* 307326 : esdsink makes video choppy totem
* 307361 : please expose shoutcast stream metadata through playbin
* 308040 : gstadder: using adder with float audio results in corrupt...
* 308484 : Totem gives error when seeking back to beginning of Ogg T...
* 308633 : Matroska muxer always fails
* 308638 : ffmpegcolorspace does not handle bgra32 correctly
* 308772 : mad timestamp inconsistency
* 308980 : gst-typefind incorrectly identifies m4a files encoded wit...
* 309087 : artsdsink registers conflicting property " name " which cau...
* 309150 : [xvimagesink/ximagesink] Incremenet framerate properties
* 309179 : videomixer does not love static images and eos
* 309218 : adder element does not supply duration values to data it ...
* 309325 : Matroska: incorrect element size
* 309354 : timestamp inconsitency in audioscale
* 309375 : cdparanoia can't extract last track
* 309503 : gst-plugins: xine wrapper compile problem with xine-lib-1...
* 309524 : no debug category for gnome-vfs elements
* 309532 : Matroska: Invalid free()
* 309834 : Totem crashes when trying to Play Disc 'cdrecorder'
* 310020 : Totem segfaults due to bad location
* 310335 : [decodebin] problems with audio streams in a mkv
* 310597 : gsttextrender cuts of pixels at the right and bottom of s...
* 311006 : [spectrum] handle mono streams
* 311070 : wavparse returns caps not in template
* 311162 : [flacdec] doesn't handle 24-bit files
* 311401 : alpha capsnego broken
* 311487 : configure doesn't check for libGLU?
* 311491 : ogg muxer can get pages out of order (patch)
* 311583 : Skips when playing CD
* 311600 : Add MPEG-2 support to mpeg1videoparse
* 311662 : " uninitialized value " warning causes build to fail
* 312121 : [modplug] crashes on query before song fully loaded
* 312272 : Musicbrainz tags not registered for FLAC encoder
* 313084 : Eats memory decoding mp3
* 313374 : Crashes in libgstcdparanoia when missing device permissions
* 313600 : recent change to esdsink in the 0.8.x branch breaks playback
Changes since 0.8.9:
* new videoscale algorithm: bilinear
* important fixes for cd-based applications (Sound Juicer, gnome-cd)
Bugs fixed since 0.8.9:
* 140237 : Mp3 playback messes up on this file
* 161079 : [videoscale] implement bilinear or bicubic methods for do...
* 300305 : videobox in YUV adds green instead of black if right=(odd...
* 300471 : videoscale from odd to even width adds a green line at th...
* 301292 : caps nego problem in gst-adder
* 304627 : asfdemux producing a strange framerate
* 304754 : Say what devices couldn't be opened when cdparanoia thro...
* 305150 : faad plugin doesn't recognize end-of-song?
* 305428 : [audiorate] crashes if first buffer has offset of GST_BUF...
* 305435 : libgstaudiofile.so uses af_virtual_file_new, which is not...
* 305505 : Fail to compile plugin spc
* 305524 : Cairo plugin does not compile with cairo 0.5
* 305658 : the adder plugin doesn't connect to more than one sinks
* 306041 : gstreamer-plugins 0.8.8 stops Soundjuicer ripping properly
* 306641 : gst-compprep segfaults when mpeg2enc plugin is installed ...
* 306659 : [avidemux] certain avi file doesnt show video
* 306660 : glsink fails to build when OpenGL is used instead of MESA
* 306680 : mov with 8 bit raw pcm sound distorted
* 306938 : memory leak in gsttypefind
* 307354 : PATCH: gcc4 compile fix
* 307459 : Can not rip the last track of CDs
* 307606 : gstplaybasebin leaks mutex
* 307804 : [cdio] gst_element_make_from_uri hangs on " cdda:// " in totem
* 308644 : [matroska] Incorrect pixel-aspect-ratio in matroska demuxer
* 308794 : [auparse] minor memory leak
* 308827 : ogg muxer in 0.8 muxes wrong
* 309005 : leaks in gstlibfame.c
* 309043 : gstwavparse causes segfaults
Changes since 0.8.8:
* new element: ximagesrc
* new plugin: video4linuxradio
* new plugin: freeze
* new plugin: cddasrc
Bugs fixed since 0.8.8:
* 118033 : Autodetect audiosink at run-time
* 141189 : [PATCH] [SPC] playback
* 149158 : [qtdemux/faad] MP4 file encoded Nero AAC Codec 2.6.2.0 is...
* 154431 : [mpeg] on PPC, gstreamer segfaults on any mpeg video
* 161661 : [PATCH] screenshots via gstreamer
* 162024 : [alsasink] doesn't probe HW buffer_size/period_size/perio...
* 162355 : [PATCH] [cdparanoia] Fix for _QUERY_POSITION
* 163443 : crash when searching in a file (cvs)
* 165643 : [qtdemux] doesn't handle embedded URLs
* 165726 : [PATCH] New plugin: freeze
* 166113 : [faad] plugin won't compile against faad CVS (unreleased ...
* 168390 : data caching (queue) breaks mms/asf
* 168406 : asfdemux always uses 25fps
* 168558 : [faad] Unsupported FAAD channel position 0x0 encountered ...
* 168728 : [v4lsrc] Support for v4l radio (patch included)
* 169073 : muine crashes on song change
* 169081 : ogg broken stream fix
* 169289 : Playbin should fallback on x11 when xvideo isn't available
* 169333 : [pngdec, pngenc] Stride problems
* 169400 : decodebin finalization bug
* 169629 : [theoraenc] sharpness property
* 170060 : Segmentation Fault when open a video file with external s...
* 170066 : Leak in oggdemux
* 170083 : nautilus restarts (crashes) when trying to view the prope...
* 170249 : [nassink] playing .wav gives only noise
* 170319 : id3demuxbin loses tags
* 170387 : gstreamer fails to play free format mp3 using playbin
* 170390 : adder fails to implement a release_pad function
* 171341 : seeks on the silence plugin
* 171371 : need wavpack decoder
* 171530 : new plugin: libcdio-based cdda source
* 171777 : Ogm seek support is broken
* 171997 : gst-plugins structure addon for mikmod < = 3.2.0 just a on...
* 172242 : gstspeed doesn't handle seek events correct
* 172281 : Buffer overflows in gstspeed
* 172563 : [videocrop] corrupts video when setting property in state...
* 172697 : [PATCH] mpeg2dec skip-frame
* 172845 : one pixel cropped off at left when rendering subtitles
* 172854 : totem spawns error and stops when opening with a badly fo...
* 172884 : When un-muting the sound volume is restored to 100%
* 172946 : crash when playing a .mov quicktime file
* 300337 : [PATCH] [switch] Does not set debug category
* 300377 : Totem cannot read files from davs URIs (other GNOME apps ...
* 300457 : Totem never errors if you try playing a mp3 stream withou...
* 300495 : configure does not find v4l, v4l2, Xlib.h, and SDL
* 301158 : 2 casts of buf in the gst_ximagesink_chain function (xima...
* 301292 : caps nego problem in gst-adder
* 301894 : Wavpack doesn't compile on FreeBSD.
* 301944 : GstAdder doesn't EOS when all input channels did
* 302188 : totem crashes on a mp3 file
* 302222 : update for future Cairo 0.5 API
* 302625 : mad element doesn't report bitrate for mp3 files with no ...
* 302813 : volume inside playbin doesn't work after the first file h...
* 302837 : [playbin] gst_tag_list_copy: assertion `GST_IS_TAG_LIST (...
* 302864 : gst-plugins fails to compile with gcc4
* 303011 : compilation fails on GCC4 warnings
* 303117 : Gstreamer plugins 0.8.8 musepack plugin build fails
* 303253 : More gcc4 issues in 0.8 head plugins
* 303650 : mpeg1videoparse does not recognize keyframes
* 303936 : should use g++ to link with cpp code
* 304125 : POTFILES.in fixes for gst-plugins
* 304180 : [directfb] compilation fails with gcc-4
* 304284 : [dv1394src] doesn't compile with gcc4
* 304284 : [dv1394src] doesn't compile with gcc4
* 304537 : [dvdnav] dvdnav doesn't like gcc4
* 304538 : [hermes] doesn't like gcc4
* 304540 : [libmms] libmms doesn't like gcc4
* 304588 : totem crashes on invalid WAV file (channels=0)
* 305012 : [ximage] doesn't compile with gcc4
* 305186 : alsasink borkage
Changes since 0.8.7:
* subtitle support
* new element: puzzle
* new plugin: amrnb
* new element: dvdlpcmdec
* new plugin: autodetect
Bugs fixed since 0.8.7:
* 100931 : [PATCH] subtitles
* 132341 : [avidemux] 'DIB ' = > image upside-down
* 135778 : [int2float] broken with audioconvert
* 138666 : [playbin] cannot handle files with large initial delay in...
* 139749 : [gstplay] libgstplay is *WAY* too slow
* 140141 : [qtdemux] cannot playback gsm audio
* 140845 : [strings] gst-plugins testsuite's embed.c still uses xvid...
* 142272 : [PATCH] [qtdemux] doesn't work with sources that cannot seek
* 143555 : [qtdemux] Movie fails to playback
* 149162 : Importing m4a files in Rhythmbox leaks memory
* 149274 : [PATCH] gst-plug mad gets id3v2 text tags in wrong encoding
* 150284 : [matroskamux] fail to mux an MP3
* 150576 : [v4l2src] pad v4l2src0:src returned caps that are not a r...
* 151661 : [PATCH] [mad] Possible bug in mad plugin
* 152688 : [PATCH[mad/typefind] doesn't support completely broken mp...
* 153434 : [PATCH] faac filter cannot create .aac files
* 154000 : Relocation error on Linux PowerPC causing crash
* 154064 : [mad] cant mix two mp3
* 155163 : [qtdemux] don't know audio FOURCC samr (from mobiles/3GPP...
* 155346 : [build] faad plugin doesn't compile against 2.0-rc3
* 155575 : [alsasink] broken with hw:X or when used with either alsa...
* 156001 : [mpeg] problem playing an mpeg file
* 156379 : [ffmpegcolorspace] lack of YV12 capability
* 159092 : thx.vob file seeker moves 'faster' than the actual movie
* 159295 : [mikmod/modplug] amiga.mod file segfault totem
* 159327 : [mpeg/dvd] playing thx.vob seeking is broken
* 159970 : [typefinding] mpeg/audio typefind abort with musepack file
* 160126 : multi.ogg is slow
* 160505 : [adder] problem using adder plugin
* 160730 : [PATCH] [mpegdemux] should remove pads on " new-media " event
* 160957 : [adder] EOSs when the first stream EOSs
* 161179 : [audioscale] quits with gmem assertion
* 161191 : MP3 crashes rhythmbox
* 161262 : [mpegdemux] cannot play a pes mpeg file
* 161325 : [dvdnavsrc] gst-dvd example pipeline not linking (a52dec ...
* 161667 : [PATCH][snapshot] seg fault in signal handler
* 161675 : [ffmpegcolorspace] conversion of RGB depth=15 is wrong
* 161726 : [ffmpegcolorspace] does not handle x-raw-rgb 24/32 BE _RGB
* 161929 : [PATCH] [mpegdemux] sends no discont events on new pads
* 162330 : [rtpgsmenc] gsmenc ! rtpgsmenc gives assertion `GST_PAD_D...
* 162504 : [xvimagesink] goes black when going from playing - > ready...
* 162626 : [videoscale] cannot handle lists of fractions
* 162656 : [qtdemux] extracting more metadata from AAC/M4A
* 162974 : [flacenc] Flac encoding is broken
* 163159 : [videobox] plugin segfault (gst-plugin 0.8.7)
* 163161 : [pngenc] only supports video/x-raw-rgb,bits=24,depth=24
* 163177 : [pngdec] Can't cope with png's without an alpha channel
* 163309 : [PATCH] typefinding for formats used by libsndfile
* 163323 : [pngenc] compression-level customisation support
* 163348 : [pngenc] Leaks and other nasty stuff
* 163449 : Stereo-to-Surround doesn't like seek
* 163485 : [PATCH] tta plugin doesn't build with gcc 2.95.4.
* 163634 : [playbin] doesn't like # in filenames
* 163676 : [PATCH] [mpeg2dec] need to crop
* 163867 : [mad] Totem could not play 384kbit lame 'free format' mp3...
* 163891 : Gst-launch-ext will not play an MPEG video
* 164069 : [clocking] Hang when playing audio file (.wav) with visua...
* 164197 : [pngdec] & [pngenc] The decoded image is in RGB(LE) byte ...
* 164209 : [ffmpegcolorspace] PIX_FMT_BGRA32 - > caps conversion is w...
* 164265 : [PATCH][ffmpegcolorspace] Converting from an RGB image wi...
* 164708 : [PATCH] EffectTV/Quark freed data in wrong place
* 164826 : [patch] Avidemux doesn't handle seek on audiopads
* 165013 : AVI with HuffYUV segfault
* 165193 : Patch for ov51x v4ljpegsrc
* 165290 : cannot play asf file with just wma version 2 audio
* 165335 : [PATCH] GstAudioScale outgoing buffers don't have duratio...
* 165340 : gst-launch-ext-0.8 fails to display video of an .avi file.
* 165446 : musepack gst-plugin doesn't work with new libmusepack
* 165509 : Mod playback still broken with mikmod
* 165525 : Problem with mplex plugin
* 165545 : Totem won't play low bitrate mp3
* 165736 : [alphacolor] BGRA handling is missing
* 166207 : [PATCH] [ffmpegcolorspace] AYUV- > RGB is broken
* 166208 : [cdparanoia] returns wrong number of tracks
* 166600 : law encoder/decoder are leaking caps
* 166892 : gnome-volume-control crashed
* 166917 : deadlock in queue
* 166931 : MP3 webradio do not work in Totem
* 167117 : [dvdnavsrc] could use a better error message when DVD not...
* 167482 : [PATCH] [avidemux] Compile fix for gcc 2.95
* 167483 : [PATCH] [tcpclientsrc] FreeBSD compile fix
* 167509 : [PATCH] [tcpserversrc] Assumes a blocking socket
* 167633 : [wavparse] div by 0 = > crash
* 167639 : Support MusicBrainz metadata tags
* 167704 : [PATCH] [tcpserversink] Don't depend on uninitialised values
* 167878 : [buffer-frames-convert] buffer_frames_convert_link leaks ...
* 167959 : Dirac plugins doesn't build.
* 168002 : [build] Musepack header files not found
* 168133 : [PATCH] [jpegenc] Memory leaks
* 168134 : [PATCH] [gdkpixbufscale] Memory leak
* 168254 : [PATCH] [jpegdec] Memory leaks
* 168260 : [PATCH] [tcpserversink] free some memory
* 168269 : [PATCH] [smoothwave] C99-ism
* 168271 : [PATCH] [gdkpixbufscale] Memory/CPU leak
* 168801 : autoaudio/videosink probe only in READY
* 168885 : AMD64 build failure in gst/librfb/rfbdecoder.c
* 168994 : cdparanoia plugin problem with CDs whose first track does...
* 169146 : gst-plugins 0.8.9 building on gcc 2.95.3
Changes since 0.8.6:
......@@ -515,5 +795,5 @@ Bugs fixed since 0.7.4:
* 135038 : port gst-shorten to the new caps system
* 135042 : fix tag writing in lame
* 135116 : gstflacenc.c fails to build in NetBSD
GStreamer: Release notes for GStreamer Plugins 0.8.7 "Hyperspace"
GStreamer: Release notes for GStreamer Plugins 0.8.11 "... And Thanks For All The Fix"
The GStreamer team is happy to announce a new release
......@@ -23,87 +23,68 @@ want support for a lot of popular video formats, you need to install this
module along with the GStreamer Core and Plugins. An FFmpeg-based colorspace
element has been added to the Plugins however.
A special "thank you" to Ronald Bultje, who has done most of the work on 0.8
in the past year. We wish him luck on his new adventure in NYC. So long !
Features of this release
* Parallel installability with 0.6.x series
* Internationalization
* Translations: af az cs en_GB hu nb nl or sq sr sv uk
* multichannel audio support
* new element: apetag
* new element: ttadec, ttaparse
* new element: directfbvideosink
* vcd fixes
* playbin fixes
* dvdread fixes
* a52dec fixes
* sunaudiosrc fixes
* osssrc fixes
* avidemux fixes
* licensing updates
* Translations: af az ca cs en_GB fr hu it nb nl or sq sr sv uk vi
* new element: dvdsubdec
* new element: imagemixer
* new element: textrender
* new element: x264enc
* new element: oggparse
* important fixes for esound synchronisation
Bugs fixed in this release
* 147919 : [playbin] broken wav seeking
* 148559 : [monoscope] grinds to a halt
* 149102 : gstreamer license problems
* 149613 : [PATCH}Add proxy server support to the musicbrainz plugin
* 151624 : Multichannel support
* 152339 : [PATCH] [build] gst-plugins cross compiling
* 154773 : [playbin] crashes trying to play short wave files (1 or 2...
* 154775 : [qtdemux] Quicktime movie causing some weird debug spew
* 154814 : Selection of totem crashing videos
* 154815 : [PATCH] ffmpegcolorspace leaks caps
* 155348 : Various MP3 files cannot be detected or played
* 155879 : [libriff] Bug in lib-riff
* 156798 : " An error occured " " Could not write to resource " this sa...
* 157233 : [PATCH] playbin leak fixes
* 158258 : Patch for polypsink to make it work with both threaded an...
* 158382 : [PATCH] [build] debian speex detection patch
* 158650 : [PATCH] [videocrop] video crop is completely buggered
* 158704 : Fix/finish (S)VCD support
* 159215 : [PATCH] Memory leaks in audioscale
* 159296 : Playing benow.mp3 file cause totem to hang on EOS with de...
* 159297 : dark.441-16-s.flac hangs on eos in totem with debug spew
* 159301 : gstreamer.avi file plays, but have broken seeking in totem
* 159338 : alaw/mulaw decoders caps warning
* 159433 : [osssink] doesn't check for supported channels
* 159512 : Progress bar with m4a (aac) broken
* 159651 : [decodebin] totem crash
* 159759 : DVD LCPM asserts
* 159847 : [build] hardcoded path for musepack headers in configure
* 159864 : avidemux sends GST_EVENT_DISCONTINUOUS
* 159986 : [PATCH] Videorate doesn't handle seek and doesn't reset w...
* 160276 : [PATCH] mpegdemux and dvddemux don't reset themselves in ...
* 160439 : Can't compile gst-plugins without GCONF
* 160514 : [avidemux] seek after EOF for truncated avi files (to non...
* 160532 : [avidemux] avi[cvid+PCM] : no image, sound is noise
* 160808 : 'ERROR: pipeline doesn't want to play' when using xvimage...
* 160869 : [playbin] ogg file (theora/vorbis) causes segfault near end
* 161039 : [PATCH] [deinterlace] rowstrides need fixing
* 161538 : [playbin] AVI files with mp3 audio are out-of-sync in pla...
* 161624 : [alsasink] crash at end of playing this file
* 161980 : Volume control applet does not set value correctly.
* 162819 : [audioscale] cleanup
* 162913 : [mms] missing NULL terminator to g_object_set() in uri ha...
* 162924 : [playbin] totem assertion failures when playing cd / pote...
API changed in this release
- API additions:
* A new cdparanoia property, device, has been added.
* A new dvdnavsrc property, device, has been added.
* A new dvdreadsrc property, device, has been added.
* A new vcdsrc property, device, has been added.
- API depreciations:
* A cdparanoia property, location, has been marked for deprecation.
* A dvdnavsrc property, location, has been marked for deprecation.
* A dvdreadsrc property, location, has been marked for deprecation.
* A vcdsrc property, location, has been marked for deprecation.
* 166528 : [playbin] hang playing dvdnav:// location
* 166783 : [PATCH] New plugin: imagemixer
* 167122 : seeking DVD stops playback
* 171563 : Vorbis support for Matroska muxer
* 301312 : dvdsubdec element
* 305754 : [PATCH] Internal GStreamer error: pad problem.
* 306555 : chain-based text rendering element
* 307326 : esdsink makes video choppy totem
* 307361 : please expose shoutcast stream metadata through playbin
* 308040 : gstadder: using adder with float audio results in corrupt...
* 308484 : Totem gives error when seeking back to beginning of Ogg T...
* 308633 : Matroska muxer always fails
* 308638 : ffmpegcolorspace does not handle bgra32 correctly
* 308772 : mad timestamp inconsistency
* 308980 : gst-typefind incorrectly identifies m4a files encoded wit...
* 309087 : artsdsink registers conflicting property " name " which cau...
* 309150 : [xvimagesink/ximagesink] Incremenet framerate properties
* 309179 : videomixer does not love static images and eos
* 309218 : adder element does not supply duration values to data it ...
* 309325 : Matroska: incorrect element size
* 309354 : timestamp inconsitency in audioscale
* 309375 : cdparanoia can't extract last track
* 309503 : gst-plugins: xine wrapper compile problem with xine-lib-1...
* 309524 : no debug category for gnome-vfs elements
* 309532 : Matroska: Invalid free()
* 309834 : Totem crashes when trying to Play Disc 'cdrecorder'
* 310020 : Totem segfaults due to bad location
* 310335 : [decodebin] problems with audio streams in a mkv
* 310597 : gsttextrender cuts of pixels at the right and bottom of s...
* 311006 : [spectrum] handle mono streams
* 311070 : wavparse returns caps not in template
* 311162 : [flacdec] doesn't handle 24-bit files
* 311401 : alpha capsnego broken
* 311487 : configure doesn't check for libGLU?
* 311491 : ogg muxer can get pages out of order (patch)
* 311583 : Skips when playing CD
* 311600 : Add MPEG-2 support to mpeg1videoparse
* 311662 : " uninitialized value " warning causes build to fail
* 312121 : [modplug] crashes on query before song fully loaded
* 312272 : Musicbrainz tags not registered for FLAC encoder
* 313084 : Eats memory decoding mp3
* 313374 : Crashes in libgstcdparanoia when missing device permissions
* 313600 : recent change to esdsink in the 0.8.x branch breaks playback
Download
......@@ -138,26 +119,27 @@ as provided by gstreamer-gconf-0.8.pc, to access the default settings.
Contributors to this release
* Archana Shah
* Akos Maroy
* Andy Wingo
* Arwed v. Merkatz
* Balamurali Viswanathan
* Chris Ouch
* Benjamin Otte
* Christian Schaller
* Christophe Fergeau
* David Schleef
* Edward Hervey
* Iain Holmes
* James Bowes
* Julien Moutte
* Maciej Katafiasz
* Martin Soto
* Dominique Würtz
* Jan Schmidt
* Jonathan Matthew
* Josef Zlomek
* Luca Ognibene
* Madhan Raj M
* Michael Benes
* Michael Smith
* Paolo Borelli
* Ronald Bultje
* Sebastien Cote
* Stefan Kost
* Stephane Loeuillet
* Ross Burton
* Thomas Vander Stichele
* Thomas Zajic
* Stefan Kost
* Tim-Philipp Müller
* Toni Willberg
* Wim Taymans
* Wouter Paesen
* Zaheer Abbas Merali
 
\ No newline at end of file
......@@ -67,7 +67,7 @@ if test -x mkinstalldirs; then rm mkinstalldirs; fi
# first remove patch if necessary, then run autopoint, then reapply
if test -f po/Makefile.in.in;
then
patch -p0 -R < common/gettext.patch
patch -p0 -R --forward < common/gettext.patch
fi
tool_run "$autopoint --force"
patch -p0 < common/gettext.patch
......
common @ 54886902
Subproject commit b2638c100721f67b280c3b43b21f1ce1c9b5e316
Subproject commit 54886902497be267fe1f1a3f9c4dc0245bc46175
......@@ -12,7 +12,7 @@ AM_MAINTAINER_MODE
dnl when going to/from release please set the nano (fourth number) right !
dnl releases only do Wall, cvs and prerelease does Werror too
AS_VERSION(gst-plugins, GST_PLUGINS_VERSION, 0, 8, 7, 1, GST_CVS="no", GST_CVS="yes")
AS_VERSION(gst-plugins, GST_PLUGINS_VERSION, 0, 8, 11, 1, GST_CVS="no", GST_CVS="yes")
AM_INIT_AUTOMAKE($PACKAGE,$VERSION)
......@@ -213,7 +213,7 @@ GST_CHECK_FEATURE(GCONF, [GConf libraries], , [
dnl check for gstreamer
dnl uninstalled is selected preferentially -- see pkg-config(1)
GST_REQ=0.8.8.1
GST_REQ=0.8.9.1
PKG_CHECK_MODULES(GST, gstreamer-$GST_MAJORMINOR >= $GST_REQ,
HAVE_GST="yes", HAVE_GST="no")
......@@ -227,6 +227,12 @@ if test -z $GST_TOOLS_DIR; then
fi
AC_SUBST(GST_TOOLS_DIR)
GST_LIB_DIR=`pkg-config --variable=libdir gstreamer-$GST_MAJORMINOR`
if test -z $GST_LIB_DIR; then
AC_MSG_ERROR([no libdir defined in GStreamer pkg-config file; core upgrade needed.])
fi
AC_SUBST(GST_LIB_DIR)
dnl check for gstreamer-control; uninstalled is selected preferentially
PKG_CHECK_MODULES(GST_CONTROL, gstreamer-control-$GST_MAJORMINOR >= $GST_REQ,
HAVE_GST_CONTROL="yes", HAVE_GST_CONTROL="no")
......@@ -339,12 +345,11 @@ if test "x$HAVE_GDK_LOADERS" = "xyes"; then
fi
AM_CONDITIONAL(HAVE_GDK_LOADERS, test "x$HAVE_GDK_LOADERS" = "xyes")
PKG_CHECK_MODULES(LIBOIL, liboil-0.2, HAVE_LIBOIL=yes, HAVE_LIBOIL=no)
#PKG_CHECK_MODULES(LIBOIL, liboil-0.3 >= 0.3.0, HAVE_LIBOIL=yes, HAVE_LIBOIL=no)
PKG_CHECK_MODULES(LIBOIL, liboil-0.3 >= 0.3.0, HAVE_LIBOIL=yes, HAVE_LIBOIL=no)
AC_SUBST(LIBOIL_CFLAGS)
AC_SUBST(LIBOIL_LIBS)
if test "x${HAVE_LIBOIL}" = xyes ; then
#AC_DEFINE_UNQUOTED(HAVE_LIBOIL, 1, [Define if liboil is being used])
AC_DEFINE_UNQUOTED(HAVE_LIBOIL, 1, [Define if liboil is being used])
true
fi
......@@ -369,6 +374,7 @@ GST_PLUGINS_ALL="\
audioscale \
audiorate \
auparse \
autodetect \
avi \
cdxaparse \
chart \
......@@ -377,13 +383,16 @@ GST_PLUGINS_ALL="\
debug \
deinterlace \
dvdlpcmdec \
dvdsubdec \
effectv \
equalizer \
festival \
ffmpegcolorspace \
filter \
flx \
freeze \
goom \
imagemixer \
interleave \
law \
level \
......@@ -428,7 +437,6 @@ GST_PLUGINS_ALL="\
videobox \
videocrop \
videodrop \
videoflip \
videofilter \
videomixer \
videorate \
......@@ -557,7 +565,8 @@ GST_CHECK_FEATURE(VCD, [Video CD], vcdsrc, [
dnl *** OpenGL ***
translit(dnm, m, l) AM_CONDITIONAL(USE_OPENGL, true)
GST_CHECK_FEATURE(OPENGL, [Open GL], glsink, [
AC_CHECK_HEADER(GL/gl.h, HAVE_OPENGL="yes", HAVE_OPENGL="no")
GST_CHECK_LIBHEADER(GL, GLU, glTexImage2D,,
GL/gl.h, HAVE_OPENGL="yes", HAVE_OPENGL="no")
])
dnl *** CDROM Audio ***
......@@ -600,7 +609,10 @@ GST_CHECK_FEATURE(X, [X libraries and plugins],
[ximagesink], [
AC_PATH_XTRA
dnl now try to find the HEADER
save_cflags=$CFLAGS
CFLAGS="$CFLAGS $X_CFLAGS"
AC_CHECK_HEADER(X11/Xlib.h, HAVE_X="yes", HAVE_X="no")
CFLAGS="$save_cflags"
if test "x$HAVE_X" = "xno"
then
......@@ -613,10 +625,29 @@ GST_CHECK_FEATURE(X, [X libraries and plugins],
X_LIBS="$X_LIBS -lX11"
AC_SUBST(X_CFLAGS)
AC_SUBST(X_LIBS)
dnl check for Xfixes
PKG_CHECK_MODULES(XFIXES, xfixes, HAVE_XFIXES="yes", HAVE_XFIXES="no")
if test "x$HAVE_XFIXES" = "xyes"
then
XFIXES_CFLAGS="-DHAVE_XFIXES $XFIXES_CFLAGS"
fi
AC_SUBST(XFIXES_LIBS)
AC_SUBST(XFIXES_CFLAGS)
dnl check for Xdamage
PKG_CHECK_MODULES(XDAMAGE, xdamage, HAVE_XDAMAGE="yes", HAVE_XDAMAGE="no")
if test "x$HAVE_XDAMAGE" = "xyes"
then
XDAMAGE_CFLAGS="-DHAVE_XDAMAGE $XDAMAGE_CFLAGS"
fi
AC_SUBST(XDAMAGE_LIBS)
AC_SUBST(XDAMAGE_CFLAGS)
fi
AC_SUBST(HAVE_X)
])
AM_CONDITIONAL(HAVE_XFIXES, test "x$HAVE_XFIXES" = "xyes")
AM_CONDITIONAL(HAVE_XDAMAGE, test "x$HAVE_XDAMAGE" = "xyes")
dnl *** XVideo ***
dnl Look for the PIC library first, Debian requires it.
dnl Check debian-devel archives for gory details.
......@@ -841,7 +872,7 @@ GST_CHECK_FEATURE(AUDIORESAMPLE, [audioresample plug-in], audioresample, [
dnl *** cairo ***
translit(dnm, m, l) AM_CONDITIONAL(USE_CAIRO, true)
GST_CHECK_FEATURE(CAIRO, [cairo plug-in], cairo, [
PKG_CHECK_MODULES(CAIRO, cairo, HAVE_CAIRO=yes, HAVE_CAIRO=no)
PKG_CHECK_MODULES(CAIRO, cairo >= 0.5.0, HAVE_CAIRO=yes, HAVE_CAIRO=no)
AC_SUBST(CAIRO_CFLAGS)
AC_SUBST(CAIRO_LIBS)
])
......@@ -854,6 +885,13 @@ GST_CHECK_FEATURE(CDAUDIO, [cdaudio], cdaudio, [
AC_SUBST(CDAUDIO_LIBS)
])
dnl *** cdio ***
translit(dnm, m, l) AM_CONDITIONAL(USE_CDIO, true)
GST_CHECK_FEATURE(CDIO, [cdio library], cdio, [
PKG_CHECK_MODULES(CDIO, libcdio >= 0.71, HAVE_CDIO=yes, HAVE_CDIO=no)
AC_SUBST(CDIO_CFLAGS)
AC_SUBST(CDIO_LIBS)
])
dnl *** CDParanoia ***
translit(dnm, m, l) AM_CONDITIONAL(USE_CDPARANOIA, true)
......@@ -1032,7 +1070,10 @@ dnl **** Free AAC Decoder (FAAD) ****
translit(dnm, m, l) AM_CONDITIONAL(USE_FAAD, true)
GST_CHECK_FEATURE(FAAD, [AAC decoder plug-in], faad, [
HAVE_FAAD="yes"
GST_CHECK_LIBHEADER(FAAD, faad, faacDecOpen, -lm, faad.h, FAAD_LIBS="-lfaad -lm", HAVE_FAAD="no")
FAAD_LIBS="-lfaad -lm"
GST_CHECK_LIBHEADER(FAAD, faad, faacDecOpen, -lm, faad.h, , [
GST_CHECK_LIBHEADER(FAAD, faad, NeAACDecOpen, -lm, faad.h, , HAVE_FAAD="no")
])
if test $HAVE_FAAD = "yes"; then
AC_MSG_CHECKING([Checking for FAAD >= 2])
AC_TRY_RUN([
......@@ -1316,14 +1357,6 @@ GST_CHECK_FEATURE(LIBMNG, [libmng library], mngdec, [
AC_SUBST(LIBMNG_LIBS)
])
dnl *** librfb ***
translit(dnm, m, l) AM_CONDITIONAL(USE_LIBRFB, true)
GST_CHECK_FEATURE(LIBRFB, [librfb Remote Framebuffer], rfbsrc, [
PKG_CHECK_MODULES(LIBRFB, librfb-0.1, HAVE_LIBRFB="yes", HAVE_LIBRFB="no")
AC_SUBST(LIBRFB_CFLAGS)
AC_SUBST(LIBRFB_LIBS)
])
dnl *** libvisual ***
translit(dnm, m, l) AM_CONDITIONAL(USE_LIBVISUAL, true)
GST_CHECK_FEATURE(LIBVISUAL, [libvisual visualization plugins], libvisual, [
......@@ -1477,9 +1510,9 @@ dnl *** musepack ***
translit(dnm, m, l) AM_CONDITIONAL(USE_MUSEPACK, true)
GST_CHECK_FEATURE(MUSEPACK, [musepackdec], musepack, [
AC_LANG_CPLUSPLUS
AC_CHECK_HEADER([musepack/musepack.h], [
AC_CHECK_HEADER([mpcdec/mpcdec.h], [
HAVE_MUSEPACK="yes"
MUSEPACK_LIBS="-lmusepack"
MUSEPACK_LIBS="-lmpcdec"
AC_SUBST(MUSEPACK_LIBS)
], [HAVE_MUSEPACK="no"])
AC_LANG_C
......@@ -1605,6 +1638,20 @@ GST_CHECK_FEATURE(LIBPNG, [snapshot plug-in], snapshot, [
AC_SUBST(LIBPNG_LIBS)
])
dnl *** spc ***
dnl We use our own version of a library, so we only need to have the
dnl right CPU (it's assembler).
translit(dnm, m, l) AM_CONDITIONAL(USE_SPC, true)
GST_CHECK_FEATURE(SPC, [spc decoder], spcdec, [
if test "x$HAVE_CPU_I386" = "xyes"; then
AC_PATH_PROG(NASM, nasm)
if test x$NASM != x; then
AC_SUBST(NASM)
HAVE_SPC=yes
fi
fi
])
dnl *** speex >= 1.0.4 or >= 1.1.5 ***
dnl 1.1.4 and earlier were not API/ABI compatible with 1.0
dnl 1.1.6 is the first to use a .pc/pkg-config file ***
......@@ -1661,7 +1708,7 @@ GST_CHECK_FEATURE(SNDFILE, [sndfile plug-in], sfsrc sfsink, [
dnl *** swfdec ***
translit(dnm, m, l) AM_CONDITIONAL(USE_SWFDEC, true)
GST_CHECK_FEATURE(SWFDEC, [swfdec plug-in], swfdec, [
PKG_CHECK_MODULES(SWFDEC, swfdec-0.3 >= 0.3.0, HAVE_SWFDEC=yes, HAVE_SWFDEC=no)
PKG_CHECK_MODULES(SWFDEC, swfdec-0.3 >= 0.3.3, HAVE_SWFDEC=yes, HAVE_SWFDEC=no)
AC_SUBST(SWFDEC_CFLAGS)
AC_SUBST(SWFDEC_LIBS)
])
......@@ -1730,10 +1777,29 @@ vorbis_synthesis_restart (v);
CFLAGS="$ac_cflags_save"
fi
dnl *** wavpack ***
dnl We ship our own version of the library
translit(dnm, m, l) AM_CONDITIONAL(USE_WAVPACK, true)
GST_CHECK_FEATURE(WAVPACK, [wavpack plug-in], wavpack, [
PKG_CHECK_MODULES(WAVPACK, wavpack >= 4.2, HAVE_WAVPACK=yes, HAVE_WAVPACK=no)
AC_SUBST(WAVPACK_CFLAGS)
AC_SUBST(WAVPACK_LIBS)
])
dnl *** libx264 (MPEG-4 part 10/h.264/AVC encoder) ***
translit(dnm, m, l) AM_CONDITIONAL(USE_X264, true)
GST_CHECK_FEATURE(X264, [x264 plug-in], x264, [
GST_CHECK_LIBHEADER(X264, x264, x264_encoder_reconfig, -lm, x264.h,
X264_LIBS="$LDFLAGS -lx264 -lm"
X264_CFLAGS="$CFLAGS"
AC_SUBST(X264_LIBS)
AC_SUBST(X264_CFLAGS))
])
dnl *** xine ***
translit(dnm, m, l) AM_CONDITIONAL(USE_XINE, true)
GST_CHECK_FEATURE(XINE, [xine wrapper], xine, [
PKG_CHECK_MODULES(XINE, libxine >= 1.0.0, HAVE_XINE=yes, HAVE_XINE=no)
PKG_CHECK_MODULES(XINE, libxine >= 1.0.1, HAVE_XINE=yes, HAVE_XINE=no)
AC_SUBST(XINE_CFLAGS)
AC_SUBST(XINE_LIBS)
],disabled)
......@@ -1751,7 +1817,7 @@ GST_CHECK_FEATURE(XVID, [xvid plugins], xvid, [
AC_MSG_CHECKING([for uptodate XviD API version])
AC_TRY_RUN([
#include <xvid.h>
#if XVID_API != XVID_MAKE_API(4,0)
#if XVID_API_MAJOR(XVID_API) != 4
#error "Incompatible XviD API version"
#endif
int main () { return 0; }
......@@ -1950,6 +2016,7 @@ gst/asfdemux/Makefile
gst/audioconvert/Makefile
gst/audioscale/Makefile
gst/audiorate/Makefile
gst/autodetect/Makefile
gst/auparse/Makefile
gst/avi/Makefile
gst/cdxaparse/Makefile
......@@ -1959,14 +2026,17 @@ gst/cutter/Makefile
gst/debug/Makefile
gst/deinterlace/Makefile
gst/dvdlpcmdec/Makefile
gst/dvdsubdec/Makefile
gst/effectv/Makefile
gst/equalizer/Makefile
gst/festival/Makefile
gst/ffmpegcolorspace/Makefile
gst/filter/Makefile
gst/flx/Makefile
gst/freeze/Makefile
gst/games/Makefile
gst/goom/Makefile
gst/imagemixer/Makefile
gst/interleave/Makefile
gst/law/Makefile
gst/level/Makefile
......@@ -2013,7 +2083,6 @@ gst/videobox/Makefile
gst/videocrop/Makefile
gst/videodrop/Makefile
gst/videofilter/Makefile
gst/videoflip/Makefile
gst/videomixer/Makefile
gst/videorate/Makefile
gst/videoscale/Makefile
......@@ -2034,6 +2103,7 @@ sys/qcam/Makefile
sys/sunaudio/Makefile
sys/v4l/Makefile
sys/v4l2/Makefile
sys/v4lradio/Makefile
sys/vcd/Makefile
sys/ximage/Makefile
sys/xvimage/Makefile
......@@ -2048,6 +2118,7 @@ ext/audiofile/Makefile
ext/audioresample/Makefile
ext/cairo/Makefile
ext/cdaudio/Makefile
ext/cdio/Makefile
ext/cdparanoia/Makefile
ext/dirac/Makefile
ext/directfb/Makefile
......@@ -2061,6 +2132,7 @@ ext/esd/Makefile
ext/faac/Makefile
ext/faad/Makefile
ext/flac/Makefile
ext/gconf/Makefile
ext/gdk_pixbuf/Makefile
ext/gnomevfs/Makefile
ext/gsm/Makefile
......@@ -2096,12 +2168,15 @@ ext/shout2/Makefile
ext/sidplay/Makefile
ext/smoothwave/Makefile
ext/snapshot/Makefile
ext/spc/Makefile
ext/speex/Makefile
ext/sndfile/Makefile
ext/swfdec/Makefile
ext/tarkin/Makefile
ext/theora/Makefile
ext/vorbis/Makefile
ext/wavpack/Makefile
ext/x264/Makefile
ext/xine/Makefile
ext/xvid/Makefile
gst-libs/Makefile
......
......@@ -9,7 +9,7 @@ static GList *seekable_elements = NULL;
static GstElement *pipeline;
static GtkAdjustment *adjustment;
static gboolean stats = FALSE;
static guint64 duration;
static gint64 duration;
static guint update_id;
......@@ -60,7 +60,7 @@ static seek_format seek_formats[] = {
G_GNUC_UNUSED static void
query_durations ()
query_durations (void)
{
GList *walk = seekable_elements;
......@@ -89,7 +89,7 @@ query_durations ()
}
G_GNUC_UNUSED static void
query_positions ()
query_positions (void)
{
GList *walk = seekable_elements;
......@@ -121,7 +121,7 @@ static gboolean
update_scale (gpointer data)
{
GstClock *clock;
guint64 position = 0;
gint64 position = 0;
GstFormat format = GST_FORMAT_TIME;
duration = 0;
......@@ -267,11 +267,11 @@ main (int argc, char **argv)
gtk_scale_set_digits (GTK_SCALE (hscale), 2);
gtk_range_set_update_policy (GTK_RANGE (hscale), GTK_UPDATE_CONTINUOUS);
gtk_signal_connect (GTK_OBJECT (hscale),
g_signal_connect (hscale,
"button_press_event", G_CALLBACK (start_seek), pipeline);
gtk_signal_connect (GTK_OBJECT (hscale),
g_signal_connect (hscale,
"button_release_event", G_CALLBACK (stop_seek), pipeline);
gtk_signal_connect (GTK_OBJECT (hscale),
g_signal_connect (hscale,
"format_value", G_CALLBACK (format_value), pipeline);
/* do the packing stuff ... */
......
......@@ -6,7 +6,7 @@
static GstElement *playbin = NULL;
static GstElement *pipeline;
static guint64 duration;
static gint64 duration;
static GtkAdjustment *adjustment;
static GtkWidget *hscale;
static gboolean verbose = FALSE;
......@@ -45,7 +45,7 @@ static gboolean
update_scale (gpointer data)
{
GstClock *clock;
guint64 position;
gint64 position;
GstFormat format = GST_FORMAT_TIME;
gboolean res;
......@@ -225,11 +225,11 @@ main (int argc, char **argv)
gtk_scale_set_digits (GTK_SCALE (hscale), 2);
gtk_range_set_update_policy (GTK_RANGE (hscale), GTK_UPDATE_CONTINUOUS);
gtk_signal_connect (GTK_OBJECT (hscale),
g_signal_connect (hscale,
"button_press_event", G_CALLBACK (start_seek), pipeline);
gtk_signal_connect (GTK_OBJECT (hscale),
g_signal_connect (hscale,
"button_release_event", G_CALLBACK (stop_seek), pipeline);
gtk_signal_connect (GTK_OBJECT (hscale),
g_signal_connect (hscale,
"format_value", G_CALLBACK (format_value), pipeline);
/* do the packing stuff ... */
......
......@@ -12,7 +12,7 @@ static GList *rate_pads = NULL;
static GList *seekable_elements = NULL;
static GstElement *pipeline;
static guint64 duration;
static gint64 duration;
static GtkAdjustment *adjustment;
static GtkWidget *hscale;
static gboolean stats = FALSE;
......@@ -663,7 +663,7 @@ query_rates (void)
}
G_GNUC_UNUSED static void
query_durations_elems ()
query_durations_elems (void)
{
GList *walk = seekable_elements;
......@@ -693,7 +693,7 @@ query_durations_elems ()
}
G_GNUC_UNUSED static void
query_durations_pads ()
query_durations_pads (void)
{
GList *walk = seekable_pads;
......@@ -723,7 +723,7 @@ query_durations_pads ()
}
G_GNUC_UNUSED static void
query_positions_elems ()
query_positions_elems (void)
{
GList *walk = seekable_elements;
......@@ -753,7 +753,7 @@ query_positions_elems ()
}
G_GNUC_UNUSED static void
query_positions_pads ()
query_positions_pads (void)
{
GList *walk = seekable_pads;
......@@ -786,7 +786,7 @@ static gboolean
update_scale (gpointer data)
{
GstClock *clock;
guint64 position;
gint64 position;
GstFormat format = GST_FORMAT_TIME;
gboolean res;
......@@ -1035,11 +1035,11 @@ main (int argc, char **argv)
gtk_scale_set_digits (GTK_SCALE (hscale), 2);
gtk_range_set_update_policy (GTK_RANGE (hscale), GTK_UPDATE_CONTINUOUS);
gtk_signal_connect (GTK_OBJECT (hscale),
g_signal_connect (hscale,
"button_press_event", G_CALLBACK (start_seek), pipeline);
gtk_signal_connect (GTK_OBJECT (hscale),
g_signal_connect (hscale,
"button_release_event", G_CALLBACK (stop_seek), pipeline);
gtk_signal_connect (GTK_OBJECT (hscale),
g_signal_connect (hscale,
"format_value", G_CALLBACK (format_value), pipeline);
/* do the packing stuff ... */
......
......@@ -13,7 +13,7 @@ static GList *seekable_elements = NULL;
static GstElement *pipeline;
static GtkAdjustment *adjustment;
static gboolean stats = FALSE;
static guint64 duration;
static gint64 duration;
static guint update_id;
......@@ -136,7 +136,7 @@ query_rates (void)
}
G_GNUC_UNUSED static void
query_durations ()
query_durations (void)
{
GList *walk = seekable_elements;
......@@ -165,7 +165,7 @@ query_durations ()
}
G_GNUC_UNUSED static void
query_positions ()
query_positions (void)
{
GList *walk = seekable_elements;
......@@ -197,7 +197,7 @@ static gboolean
update_scale (gpointer data)
{
GstClock *clock;
guint64 position;
gint64 position;
GstFormat format = GST_FORMAT_TIME;
duration = 0;
......@@ -345,11 +345,11 @@ main (int argc, char **argv)
gtk_scale_set_digits (GTK_SCALE (hscale), 2);
gtk_range_set_update_policy (GTK_RANGE (hscale), GTK_UPDATE_CONTINUOUS);
gtk_signal_connect (GTK_OBJECT (hscale),
g_signal_connect (hscale,
"button_press_event", G_CALLBACK (start_seek), pipeline);
gtk_signal_connect (GTK_OBJECT (hscale),
g_signal_connect (hscale,
"button_release_event", G_CALLBACK (stop_seek), pipeline);
gtk_signal_connect (GTK_OBJECT (hscale),
g_signal_connect (hscale,
"format_value", G_CALLBACK (format_value), pipeline);
/* do the packing stuff ... */
......
......@@ -58,6 +58,12 @@ else
CDAUDIO_DIR=
endif
if USE_CDIO
CDIO_DIR=cdio
else
CDIO_DIR=
endif
if USE_CDPARANOIA
CDPARANOIA_DIR=cdparanoia
else
......@@ -130,6 +136,12 @@ else
FLAC_DIR=
endif
if USE_GCONF
GCONF_DIR = gconf
else
GCONF_DIR =
endif
if USE_GDK_PIXBUF
GDK_PIXBUF_DIR=gdk_pixbuf
else
......@@ -382,12 +394,30 @@ else
SNAPSHOT_DIR=
endif
if USE_SPC
SPC_DIR=spc
else
SPC_DIR=
endif
if USE_SPEEX
SPEEX_DIR=speex
else
SPEEX_DIR=
endif
if USE_WAVPACK
WAVPACK_DIR=wavpack
else
WAVPACK_DIR=
endif
if USE_X264
X264_DIR=x264
else
X264_DIR=
endif
if USE_XINE
XINE_DIR=xine
else
......@@ -405,6 +435,7 @@ SUBDIRS=\
$(AUDIORESAMPLE_DIR) \
$(CAIRO_DIR) \
$(CDAUDIO_DIR) \
$(CDIO_DIR) \
$(CDPARANOIA_DIR) \
$(DIRAC_DIR) \
$(DIRECTFB_DIR) \
......@@ -418,6 +449,7 @@ SUBDIRS=\
$(FAAC_DIR) \
$(FAAD_DIR) \
$(FLAC_DIR) \
$(GCONF_DIR) \
$(GDK_PIXBUF_DIR) \
$(GNOMEVFS_DIR) \
$(GSM_DIR) \
......@@ -451,12 +483,15 @@ SUBDIRS=\
$(SMOOTHWAVE_DIR) \
$(SNAPSHOT_DIR) \
$(SNDFILE_DIR) \
$(SPC_DIR) \
$(SPEEX_DIR) \
$(SWFDEC_DIR) \
$(TARKIN_DIR) \
$(THEORA_DIR) \
$(IVORBIS_DIR) \
$(VORBIS_DIR) \
$(WAVPACK_DIR) \
$(X264_DIR) \
$(XINE_DIR) \
$(XVID_DIR)
......@@ -471,6 +506,7 @@ DIST_SUBDIRS=\
audioresample \
cairo \
cdaudio \
cdio \
cdparanoia \
dirac \
directfb \
......@@ -483,6 +519,7 @@ DIST_SUBDIRS=\
faac \
faad \
flac \
gconf \
gdk_pixbuf \
gnomevfs \
gsm \
......@@ -518,10 +555,13 @@ DIST_SUBDIRS=\
shout2 \
sidplay \
smoothwave \
spc \
speex \
swfdec \
tarkin \
theora \
vorbis \
wavpack \
x264 \
xine \
xvid
......@@ -60,8 +60,8 @@ static GstStaticPadTemplate sink_temp = GST_STATIC_PAD_TEMPLATE ("sink",
"width = (int) 16, "
"signed = (boolean) true, "
"channels = (int) 2, "
"rate = (int) 44100, " "endianness = (int) byte_order")
);
"rate = (int) 44100, " "endianness = (int) " G_STRINGIFY (G_BYTE_ORDER)
));
static GstStaticPadTemplate src_temp = GST_STATIC_PAD_TEMPLATE ("src",
GST_PAD_SRC,
......@@ -71,8 +71,8 @@ static GstStaticPadTemplate src_temp = GST_STATIC_PAD_TEMPLATE ("src",
"width = (int) 16, "
"signed = (boolean) true, "
"channels = (int) 2, "
"rate = (int) 44100, " "endianness = (int) byte_order")
);
"rate = (int) 44100, " "endianness = (int) " G_STRINGIFY (G_BYTE_ORDER)
));
enum
{
......
......@@ -122,7 +122,7 @@ gst_artsdsink_class_init (GstArtsdsinkClass * klass)
g_object_class_install_property (G_OBJECT_CLASS (klass), ARG_MUTE, g_param_spec_boolean ("mute", "mute", "mute", TRUE, G_PARAM_READWRITE)); /* CHECKME */
g_object_class_install_property (G_OBJECT_CLASS (klass), ARG_NAME, g_param_spec_string ("name", "name", "name", NULL, G_PARAM_READWRITE)); /* CHECKME */
g_object_class_install_property (G_OBJECT_CLASS (klass), ARG_NAME, g_param_spec_string ("connection-name", "Connection name", "Name to use for the connection", NULL, G_PARAM_READWRITE)); /* CHECKME */
gobject_class->set_property = gst_artsdsink_set_property;
gobject_class->get_property = gst_artsdsink_get_property;
......
......@@ -74,6 +74,7 @@ static GstStaticPadTemplate afparse_sink_factory =
static void gst_afparse_base_init (gpointer g_class);
static void gst_afparse_class_init (GstAFParseClass * klass);
static void gst_afparse_init (GstAFParse * afparse);
static void gst_afparse_finalize (GObject * object);
static gboolean gst_afparse_open_file (GstAFParse * afparse);
static void gst_afparse_close_file (GstAFParse * afparse);
......@@ -93,6 +94,8 @@ static long gst_afparse_vf_seek (AFvirtualfile * vfile, long offset,
int is_relative);
static long gst_afparse_vf_tell (AFvirtualfile * vfile);
static GstElementClass *parent_class = NULL;
GType
gst_afparse_get_type (void)
{
......@@ -140,9 +143,11 @@ gst_afparse_class_init (GstAFParseClass * klass)
gobject_class = (GObjectClass *) klass;
gstelement_class = (GstElementClass *) klass;
parent_class = g_type_class_ref (GST_TYPE_ELEMENT);
gobject_class->set_property = gst_afparse_set_property;
gobject_class->get_property = gst_afparse_get_property;
gobject_class->finalize = gst_afparse_finalize;
}
static void
......@@ -161,7 +166,7 @@ gst_afparse_init (GstAFParse * afparse)
gst_element_set_loop_function (GST_ELEMENT (afparse), gst_afparse_loop);
afparse->vfile = af_virtual_file_new ();
afparse->vfile = g_new (AFvirtualfile, 1);
afparse->vfile->closure = NULL;
afparse->vfile->read = gst_afparse_vf_read;
afparse->vfile->length = gst_afparse_vf_length;
......@@ -185,6 +190,16 @@ gst_afparse_init (GstAFParse * afparse)
afparse->timestamp = 0LL;
}
static void
gst_afparse_finalize (GObject * obj)
{
GstAFParse *afparse = GST_AFPARSE (obj);
g_free (afparse->file);
G_OBJECT_CLASS (parent_class)->finalize (obj);
}
static void
gst_afparse_loop (GstElement * element)
{
......
......@@ -302,12 +302,15 @@ gst_afsink_open_file (GstAFSink * sink)
if (caps == NULL) {
g_critical ("gstafsink chain : Could not get caps of pad !\n");
} else {
gint rate = 0;
structure = gst_caps_get_structure (caps, 0);
gst_structure_get_int (structure, "channels", &sink->channels);
gst_structure_get_int (structure, "width", &sink->width);
gst_structure_get_int (structure, "rate", &sink->rate);
gst_structure_get_int (structure, "rate", &rate);
gst_structure_get_boolean (structure, "signed", &sink->is_signed);
gst_structure_get_int (structure, "endianness", &sink->endianness_data);
sink->rate = rate;
}
GST_DEBUG ("channels %d, width %d, rate %d, signed %s",
sink->channels, sink->width, sink->rate, sink->is_signed ? "yes" : "no");
......
......@@ -440,8 +440,6 @@ gst_cdaudio_get_query_types (GstElement * element)
static const GstQueryType query_types[] = {
GST_QUERY_TOTAL,
GST_QUERY_POSITION,
GST_QUERY_START,
GST_QUERY_SEGMENT_END,
0
};
......
......@@ -312,7 +312,7 @@ gst_directfbvideosink_sink_link (GstPad * pad, const GstCaps * caps)
}
} else if (g_ascii_strcasecmp (gst_structure_get_name (structure),
"video/x-raw-yuv") == 0) {
gint im_format = 0;
guint32 im_format = 0;
gst_structure_get_fourcc (structure, "format", &im_format);
GST_DEBUG_OBJECT (directfbvideosink,
......
......@@ -333,6 +333,7 @@ gst_dtsdec_handle_event (GstDtsDec * dts, GstEvent * event)
dts->cache = NULL;
}
break;
default:
break;
}
......
......@@ -21,6 +21,8 @@
#include "config.h"
#endif
#include <string.h>
#include "gstfaac.h"
static GstStaticPadTemplate src_template = GST_STATIC_PAD_TEMPLATE ("src",
......@@ -34,10 +36,28 @@ static GstStaticPadTemplate src_template = GST_STATIC_PAD_TEMPLATE ("src",
static GstStaticPadTemplate sink_template = GST_STATIC_PAD_TEMPLATE ("sink",
GST_PAD_SINK,
GST_PAD_ALWAYS,
GST_STATIC_CAPS ("audio/x-raw-int, " "endianness = (int) BYTE_ORDER, " "signed = (boolean) TRUE, " "width = (int) 16, " "depth = (int) 16, " "rate = (int) [ 8000, 96000 ], " "channels = (int) [ 1, 6]; " "audio/x-raw-int, " "endianness = (int) BYTE_ORDER, " "signed = (boolean) TRUE, " "width = (int) 32, " "depth = (int) 24, " "rate = (int) [ 8000, 96000], " "channels = (int) [ 1, 6]; " "audio/x-raw-float, " "endianness = (int) BYTE_ORDER, " "depth = (int) 32, " /* sizeof (gfloat) */
"rate = (int) [ 8000, 96000], " "channels = (int) [ 1, 6]")
GST_STATIC_CAPS ("audio/x-raw-int, "
"endianness = (int) BYTE_ORDER, "
"signed = (boolean) TRUE, "
"width = (int) 16, "
"depth = (int) 16, "
"rate = (int) [ 8000, 96000 ], " "channels = (int) [ 1, 6]")
);
#define UNUSED \
"audio/x-raw-int, " \
"endianness = (int) BYTE_ORDER, " \
"signed = (boolean) TRUE, " \
"width = (int) 32, " \
"depth = (int) 24, " \
"rate = (int) [ 8000, 96000], " \
"channels = (int) [ 1, 6]; " \
"audio/x-raw-float, " \
"endianness = (int) BYTE_ORDER, " \
"depth = (int) 32, " /* sizeof (gfloat) */ \
"rate = (int) [ 8000, 96000], " \
"channels = (int) [ 1, 6]" \
enum
{
ARG_0,
......@@ -61,8 +81,7 @@ static void gst_faac_get_property (GObject * object,
static GstPadLinkReturn
gst_faac_sinkconnect (GstPad * pad, const GstCaps * caps);
static GstPadLinkReturn
gst_faac_srcconnect (GstPad * pad, const GstCaps * caps);
static GstPadLinkReturn gst_faac_srcconnect (GstPad * pad);
static void gst_faac_chain (GstPad * pad, GstData * data);
static GstElementStateReturn gst_faac_change_state (GstElement * element);
......@@ -221,23 +240,22 @@ gst_faac_init (GstFaac * faac)
faac->samplerate = -1;
faac->channels = -1;
faac->cache = NULL;
faac->cache_time = GST_CLOCK_TIME_NONE;
faac->cache_duration = 0;
faac->out_time = 0;
GST_FLAG_SET (faac, GST_ELEMENT_EVENT_AWARE);
faac->sinkpad =
gst_pad_new_from_template (gst_static_pad_template_get (&sink_template),
"sink");
gst_element_add_pad (GST_ELEMENT (faac), faac->sinkpad);
gst_pad_set_chain_function (faac->sinkpad, gst_faac_chain);
gst_pad_set_link_function (faac->sinkpad, gst_faac_sinkconnect);
gst_element_add_pad (GST_ELEMENT (faac), faac->sinkpad);
faac->srcpad =
gst_pad_new_from_template (gst_static_pad_template_get (&src_template),
"src");
gst_pad_use_explicit_caps (faac->srcpad);
gst_element_add_pad (GST_ELEMENT (faac), faac->srcpad);
gst_pad_set_link_function (faac->srcpad, gst_faac_srcconnect);
/* default properties */
faac->bitrate = 1024 * 128;
......@@ -307,39 +325,33 @@ gst_faac_sinkconnect (GstPad * pad, const GstCaps * caps)
/* if the other side was already set-up, redo that */
if (GST_PAD_CAPS (faac->srcpad))
return gst_faac_srcconnect (faac->srcpad,
gst_pad_get_allowed_caps (faac->srcpad));
return gst_faac_srcconnect (faac->srcpad);
/* else, that'll be done later */
return GST_PAD_LINK_OK;
}
static GstPadLinkReturn
gst_faac_srcconnect (GstPad * pad, const GstCaps * caps)
gst_faac_srcconnect (GstPad * pad)
{
GstFaac *faac = GST_FAAC (gst_pad_get_parent (pad));
GstCaps *caps;
gint n;
if (!faac->handle || (faac->samplerate == -1 || faac->channels == -1)) {
return GST_PAD_LINK_DELAYED;
}
/* we do samplerate/channels ourselves */
for (n = 0; n < gst_caps_get_size (caps); n++) {
GstStructure *structure = gst_caps_get_structure (caps, n);
gst_structure_remove_field (structure, "rate");
gst_structure_remove_field (structure, "channels");
}
/* go through list */
caps = gst_caps_normalize (caps);
caps = gst_pad_get_allowed_caps (pad);
for (n = 0; n < gst_caps_get_size (caps); n++) {
GstStructure *structure = gst_caps_get_structure (caps, n);
faacEncConfiguration *conf;
gint mpegversion = 0;
gint mpegversion = 4;
GstCaps *newcaps;
GstPadLinkReturn ret;
guint8 *c_data;
gulong c_size;
gst_structure_get_int (structure, "mpegversion", &mpegversion);
......@@ -363,19 +375,26 @@ gst_faac_srcconnect (GstPad * pad, const GstCaps * caps)
"mpegversion", G_TYPE_INT, mpegversion,
"channels", G_TYPE_INT, faac->channels,
"rate", G_TYPE_INT, faac->samplerate, NULL);
ret = gst_pad_try_set_caps (faac->srcpad, newcaps);
switch (ret) {
case GST_PAD_LINK_OK:
case GST_PAD_LINK_DONE:
return GST_PAD_LINK_DONE;
case GST_PAD_LINK_DELAYED:
return GST_PAD_LINK_DELAYED;
default:
break;
if ((ret =
faacEncGetDecoderSpecificInfo (faac->handle, &c_data,
&c_size)) == 0) {
GstBuffer *data = gst_buffer_new_and_alloc (c_size);
memcpy (GST_BUFFER_DATA (data), c_data, c_size);
gst_caps_set_simple (newcaps, "codec_data", GST_TYPE_BUFFER, data, NULL);
gst_buffer_unref (data);
}
if (gst_pad_set_explicit_caps (faac->srcpad, newcaps)) {
gst_caps_free (caps);
gst_caps_free (newcaps);
return GST_PAD_LINK_OK;
}
gst_caps_free (newcaps);
}
gst_caps_free (caps);
return GST_PAD_LINK_REFUSED;
}
......@@ -404,8 +423,10 @@ gst_faac_chain (GstPad * pad, GstData * data)
if (ret_size > 0) {
GST_BUFFER_SIZE (outbuf) = ret_size;
GST_BUFFER_TIMESTAMP (outbuf) = 0;
GST_BUFFER_DURATION (outbuf) = 0;
GST_BUFFER_TIMESTAMP (outbuf) = faac->out_time;
GST_BUFFER_DURATION (outbuf) = GST_SECOND * faac->samples /
(faac->channels * faac->samplerate);
faac->out_time += GST_BUFFER_DURATION (outbuf);
gst_pad_push (faac->srcpad, GST_DATA (outbuf));
} else {
break;
......@@ -431,8 +452,7 @@ gst_faac_chain (GstPad * pad, GstData * data)
}
if (!GST_PAD_CAPS (faac->srcpad)) {
if (gst_faac_srcconnect (faac->srcpad,
gst_pad_get_allowed_caps (faac->srcpad)) <= 0) {
if (gst_faac_srcconnect (faac->srcpad) <= 0) {
GST_ELEMENT_ERROR (faac, CORE, NEGOTIATION, (NULL),
("failed to negotiate MPEG/AAC format with next element"));
gst_buffer_unref (inbuf);
......@@ -511,30 +531,11 @@ gst_faac_chain (GstPad * pad, GstData * data)
if (ret_size > 0) {
GST_BUFFER_SIZE (outbuf) = ret_size;
if (faac->cache_time != GST_CLOCK_TIME_NONE) {
GST_BUFFER_TIMESTAMP (outbuf) = faac->cache_time;
faac->cache_time = GST_CLOCK_TIME_NONE;
} else
GST_BUFFER_TIMESTAMP (outbuf) = GST_BUFFER_TIMESTAMP (subbuf);
GST_BUFFER_DURATION (outbuf) = GST_BUFFER_DURATION (subbuf);
if (faac->cache_duration) {
GST_BUFFER_DURATION (outbuf) +=