more mergeback from the latest release
authorThomas Vander Stichele <thomas@apestaart.org>
Mon, 15 Apr 2002 09:27:03 +0000 (09:27 +0000)
committerThomas Vander Stichele <thomas@apestaart.org>
Mon, 15 Apr 2002 09:27:03 +0000 (09:27 +0000)
Original commit message from CVS:
more mergeback from the latest release

README
RELEASE
REQUIREMENTS [new file with mode: 0644]
configure.ac
ext/vorbis/vorbisdec.c
ext/vorbis/vorbisenc.c
tools/gst-launch-ext

diff --git a/README b/README
index bad3073..d59daa4 100644 (file)
--- a/README
+++ b/README
@@ -4,8 +4,16 @@ plugins for GStreamer
 
 * to develop against uninstalled GStreamer core :
   add path to gstreamer-uninstalled.pc to PKG_CONFIG_PATH
+  or run configure --with-pkg-config-path=(path to gstreamer uninstalled)
 
 * to register plugins in source tree
   run gst-register --gst-plugin-path=.
 
+* if a certain plugin doesn't build, then redo configure with
+  --disable-(plugin)
+  to disable it from the build
 
+* Additional documentation :
+
+REQUIREMENTS
+       supporting libraries for plugins
diff --git a/RELEASE b/RELEASE
index c4f7a65..5174d26 100644 (file)
--- a/RELEASE
+++ b/RELEASE
@@ -1,46 +1,94 @@
-GStreamer 0.3.2 "Do-B-day" released
 
-Release Notes
+                GStreamer "30 Second Frenchman" 0.3.4 released
+
+                                 RELEASE NOTES
 
    The  GStreamer  team  is  happy  to  announce  another  release of the
-   GStreamer  streaming-media  framework. GStreamer now contains close to
-   100  plugins for reading, writing and manipulating audio and video. We
-   are  rapidly  approaching  a  stable  set  of  libraries.  Our  sample
-   applications are, however, still under development.
-
-   We  now have a gst-all module prepared that includes all of our source
-   modules in one easy-to-compile package.
-
-Future Plans
-
-   Our goal for the next release is stabilizing and improving the current
-   feature  set  of  GStreamer further, including introducing an improved
-   autoplugger  module for even better handling of media formats. We will
-   also  focus  more  attention at our media player sample application as
-   this is the application most users and developers probably will use to
-   get aquinted with the framework.
-
-   For help building GStreamer, take a look at our build help document.
-
-Updates and Enhancements
-
-     * new capabilities negotiation system
-     * xml support bugfixes
-     * sdlvideosink enhancements
-     * gst-xmllaunch added
-     * fixes in avi plugin
-     * fli plugin now works again
-     * fixes to old gstmediaplayer making it work
-     * lots of fixes on the v4l plugin
-     * new cdxa plugin
-     * new mjpeg encoder and decoder plugins
-     * new example plugin using GOB
-     * partial update of documentation and examples
-     * miscellaneous bugfixes
-
-   More  details  on  these features can be found, along with the release
-   tarballs    and    some    RPMs,    on    the    project's    website,
-   http://gstreamer.net/.
+   GStreamer streaming-media framework.
+
+Focus of this release
+
+   This release fixes a few developer usability issues.
+
+   A  few  of  the  API  functions  have  been  changed  to  offer better
+   functionality  and  to  be  more consistent with other toolkits (GLib,
+   GTK).
+   Sample changes:
+     * gst_elementfactory_make to gst_element_factory_make
+     * GST_PADTEMPLATE_* to GST_PAD_TEMPLATE_*
+
+   This  release  of  GStreamer  has  been  primarily  made in support of
+   RhythmBox. It should really work with their upcoming 0.2.0 release.
+
+   The gst-launch parsing has been bisonified. This allows for better and
+   more consistent command-line parsing. Accordingly, some changes in the
+   dynamic pad treatment have been made as well.
+   The registry handling has been changed. gst-register will now write to
+   a  local  registry  (in  ~/.gstreamer/reg.xml)  if  it  does  not have
+   permissions  to  write to the global registry. Normal applications not
+   running as root will prefer this local registry if it exists, and fall
+   back to the global otherwise.
+   Also,  a --gst-registry option has been added to all gst applications.
+   If  this  is  specified,  then  the  application  will  ONLY  use this
+   registry.  This  is  useful  for testsuites inside the core as well as
+   general testing of plugins.
+
+   GStreamer  is  now  in  Gnome's  Bugzilla. Please file bugs against us
+   there whenever you find them !
+
+Changes in the 0.3.x tree
+
+   The  0.3.x  tree  is  our first tree using GLib 2.0 and libxml2 as the
+   sole  compile  platform.  We  have  also  started  including  all  our
+   documentation  in our RPMS starting this tree. People wanting to build
+   GStreamer themselves with documentation should look at the DOCBUILDING
+   file  for  some  information on what packages are needed to build that
+   successfully.
+
+   Another  new  feature  of  this  release  tree  is  the gst-launch-ext
+   command-line  application.  It  uses predefined pipelines to play back
+   media  files  based on their file extension. This means that you don't
+   need  to construct your own pipelines using gst-launch if all you want
+   to  do  is  play  a  file. Just type gst-launch-ext [filename] and the
+   audiofile  or movie plays for you. This of course also being a work in
+   progress  means  that sometimes it might decide on the wrong pipeline,
+   or cause jitter, as well as random headaches.
+
+   For help building GStreamer, take a look at our [1]build help document
+   .
+
+Updates and Enhancements in this release
+
+     * Improved API naming
+     * New  registry  handling,  allowing  for global, local or specified
+       registry
+     * bison parser
+     * gst-launch-ext dynamic pad fixes
+     * various fixes in mad and vorbisdec for RhythmBox
+
+Previously, in the 0.3.x tree
+
+     * devhelp documentation
+     * New and improved Props API
+     * New master clock system
+     * dxr3 plugin
+     * libcolorspace plugin
+     * Full dparams documentation
+     * All functions documented (551 functions documented)
+     * Python bindings
+     * Portability fixes (no more C++ // style comments)
+     * a52dec plugin updated to a52dec 0.7.3 API
+     * gnome-vfs plugin updated to new seek api
+     * Misc bug and caps fixes
+     * SPEC files improvements
+
+   More  details on these features can be found on the project's website,
+   [2]http://gstreamer.net/.   Source   tarballs  are  also  mirrored  at
+   [3]http://gstreamer.net/releases/current/src/.  If you use Red Hat (or
+   possibly  other  RPM-based  systems),  RPMs for both GStreamer itself,
+   external  libraries and development tools not included in the standard
+   reference    distribution    (RedHat    7.2)    can    be   found   in
+   [4]http://gstreamer.net/releases/current/redhat.
 
    GStreamer  is  hosted on SourceForge, so support requests and bugs may
    be filed as usual. Interested developers of the core library, plugins,
@@ -53,23 +101,35 @@ Updates and Enhancements
 
 Contributors to this release
 
-Core
+  Core
 
      * Erik Walthinsen <omega@temple-baptist.com>
      * Wim Taymans <wim.taymans@chello.be>
      * Thomas Vander Stichele <thomas@apestaart.org>
      * Andy Wingo <wingo@pobox.com>
-     * David Lehn <dlehn@vt.edu>
+     * Benjamin Otte <in7y118@public.uni-hamburg.de>
 
-Plugins and Sample Applications
+  Plugins and Sample Applications
 
+     * Richard Boulton <richard@tartarus.org>
+     * David Lehn <dlehn@vt.edu>
      * Ronald Bultje <rbultje@ronald.bitfreak.net>
      * Bastien Nocera <hadess@hadess.net>
      * Martin Enlund <martin@enlund.net>
-     * Benjamin Otte <bj>
+     * Arik Devens <arik@gnome.org>
+     * Jérémy Simon <jsimon13@yahoo.fr>
+     * Zeeshan Ali Khattak <zak147@yahoo.com>
+     * Steve Baker <stevebaker_org@yahoo.co.uk>
+     * Rehan Khwaja <rehankhwaja@yahoo.com>
 
-Misc
+  Misc
 
      * Christian Schaller <christian.schaller@linuxrising.org>
-     * wrobell <wrobell@ite.pl>
+     * Calum Selkirk <cselkirk@panix.com>
+
+References
 
+   1. http://gstreamer.net/releases/current/buildhelp.php
+   2. http://gstreamer.net/
+   3. http://gstreamer.net/releases/current/src/
+   4. http://gstreamer.net/releases/current/redhat/
diff --git a/REQUIREMENTS b/REQUIREMENTS
new file mode 100644 (file)
index 0000000..6cc1e9f
--- /dev/null
@@ -0,0 +1,7 @@
+This file lists supporting libraries for which gst-plugins contains plugins,
+as well as their minimum version.  You can find the corresponding plugins in
+ext/(library)
+
+a52dec                         0.7.3
+avifile        >=      0.6.0 (cvs)
+
index 1ac0851..3ebe17d 100644 (file)
@@ -10,10 +10,15 @@ AM_DISABLE_STATIC
 dnl when going to/from release please set the nano (fourth number) right !
 dnl We disable static building for development, for time savings
 AM_DISABLE_STATIC
-AS_VERSION(gst-plugins, GST_PLUGINS, 0, 3, 3, 1)
+AS_VERSION(gst-plugins, GST_PLUGINS, 0, 3, 4, 0)
 AM_INIT_AUTOMAKE($PACKAGE,$VERSION)
 AS_LIBTOOL(GST_PLUGINS, 0, 0, 0, yes)
 
+dnl we'll move this to a configure option later on which will be turned on
+dnl by autogen
+dnl GST_ERROR="-Wall -Werror"
+GST_ERROR="-Werror"
+
 dnl FIXME take something else ?
 AC_CONFIG_SRCDIR([gst/law/alaw.c])
 AM_CONFIG_HEADER(config.h)
index 9748fa6..766fa1b 100644 (file)
@@ -489,6 +489,9 @@ end:
 
   /* OK, clean up the framer */
   ogg_sync_clear (&oy);
+
+  /* FIXME: this might be wrong, or deprecated, so please let me know */
+  gst_element_set_eos (element);
 }
 
 static void 
index ce2a852..7f140ac 100644 (file)
@@ -268,35 +268,39 @@ gst_vorbisenc_chain (GstPad * pad, GstBuffer * buf)
   while (vorbis_analysis_blockout (&vorbisenc->vd, &vorbisenc->vb) == 1) {
 
     /* analysis */
-    vorbis_analysis (&vorbisenc->vb, &vorbisenc->op);
+    vorbis_analysis (&vorbisenc->vb, NULL);
+    vorbis_bitrate_addblock(&vorbisenc->vb);
+    
+    while(vorbis_bitrate_flushpacket(&vorbisenc->vd, &vorbisenc->op)) {
 
-    /* weld the packet into the bitstream */
-    ogg_stream_packetin (&vorbisenc->os, &vorbisenc->op);
+      /* weld the packet into the bitstream */
+      ogg_stream_packetin (&vorbisenc->os, &vorbisenc->op);
 
-    /* write out pages (if any) */
-    while (!vorbisenc->eos) {
-      int result = ogg_stream_pageout (&vorbisenc->os, &vorbisenc->og);
-      GstBuffer *outbuf;
+      /* write out pages (if any) */
+      while (!vorbisenc->eos) {
+        int result = ogg_stream_pageout (&vorbisenc->os, &vorbisenc->og);
+        GstBuffer *outbuf;
 
-      if (result == 0)
-       break;
+        if (result == 0)
+         break;
 
-      outbuf = gst_buffer_new ();
-      GST_BUFFER_DATA (outbuf) = g_malloc (vorbisenc->og.header_len + vorbisenc->og.body_len);
-      GST_BUFFER_SIZE (outbuf) = vorbisenc->og.header_len + vorbisenc->og.body_len;
+        outbuf = gst_buffer_new ();
+        GST_BUFFER_DATA (outbuf) = g_malloc (vorbisenc->og.header_len + vorbisenc->og.body_len);
+        GST_BUFFER_SIZE (outbuf) = vorbisenc->og.header_len + vorbisenc->og.body_len;
 
-      memcpy (GST_BUFFER_DATA (outbuf), vorbisenc->og.header, vorbisenc->og.header_len);
-      memcpy (GST_BUFFER_DATA (outbuf) + vorbisenc->og.header_len, vorbisenc->og.body,
-             vorbisenc->og.body_len);
+        memcpy (GST_BUFFER_DATA (outbuf), vorbisenc->og.header, vorbisenc->og.header_len);
+        memcpy (GST_BUFFER_DATA (outbuf) + vorbisenc->og.header_len, vorbisenc->og.body,
+               vorbisenc->og.body_len);
 
-      GST_DEBUG (0, "vorbisenc: encoded buffer of %d bytes", GST_BUFFER_SIZE (outbuf));
+        GST_DEBUG (0, "vorbisenc: encoded buffer of %d bytes", GST_BUFFER_SIZE (outbuf));
 
-      gst_pad_push (vorbisenc->srcpad, outbuf);
+        gst_pad_push (vorbisenc->srcpad, outbuf);
 
-      /* this could be set above, but for illustrative purposes, I do
-         it here (to show that vorbis does know where the stream ends) */
-      if (ogg_page_eos (&vorbisenc->og)) {
-       vorbisenc->eos = 1;
+        /* this could be set above, but for illustrative purposes, I do
+           it here (to show that vorbis does know where the stream ends) */
+        if (ogg_page_eos (&vorbisenc->og)) {
+         vorbisenc->eos = 1;
+        }
       }
     }
   }
index 27a1306..61cd2ca 100755 (executable)
@@ -81,14 +81,14 @@ read_config ();
 ###  "ac3", "ac3parse ! $cfg{AUDIOSINK}",
 %pipes = ( 
   "au", "auparse ! $cfg{AUDIOSINK}",
-  "avi", "avidemux video_00! { queue ! windec ! $cfg{VIDEOSINK} } avidemux0.audio_00! { queue ! mad ! $cfg{AUDIOSINK} }",
+  "avi", "avidemux video_%02d! { queue ! windec ! $cfg{VIDEOSINK} } avidemux0.audio_00! { queue ! mad ! $cfg{AUDIOSINK} }",
   "fli", "flxdec ! colorspace ! $cfg{VIDEOSINK}",
   "mod", "modplug !  $cfg{AUDIOSINK}",
   "mp3", "mad ! $cfg{AUDIOSINK}",
-  "mpg", "mpegdemux video_00! { queue ! mpeg2dec ! $cfg{VIDEOSINK} } mpegdemux0.audio_00! { queue ! mad ! $cfg{AUDIOSINK} }",
+  "mpg", "mpegdemux video_%02d! { queue ! mpeg2dec ! $cfg{VIDEOSINK} } mpegdemux0.audio_%02d! { queue ! mad ! $cfg{AUDIOSINK} }",
   "ogg", "vorbisdec ! $cfg{AUDIOSINK}",
   "sid", "siddec ! $cfg{AUDIOSINK}",
-  "vob", "mpegdemux video_00! { queue max_level=500 ! mpeg2dec ! $cfg{VIDEOSINK} } mpegdemux0.private_stream_1.0! { queue max_level=500 ! a52dec ! $cfg{AUDIOSINK} }",
+  "vob", "mpegdemux video_%02d! { queue max_level=500 ! mpeg2dec ! $cfg{VIDEOSINK} } mpegdemux0.private_stream_1_%02d! { queue max_level=500 ! a52dec ! $cfg{AUDIOSINK} }",
 );
 
 if ($cfg{VISUALIZER}) {