Overview

Request 20 (accepted)

Updated to version 0.3.3. NOTE: Doesn't build for obsolete/older releases....

Submit package home:malcolmlewi...ches:Essentials / gst123 to package Essentials / gst123

gst123.changes Changed
x
 
1
@@ -1,4 +1,23 @@
2
 -------------------------------------------------------------------
3
+Mon Jul 29 02:04:35 UTC 2013 - malcolmlewis@opensuse.org
4
+
5
+- Update to version 0.3.3:
6
+  + Fix Issue 10: Local files not properly escaped when converted
7
+    to URLs.
8
+  + Added "-k, --skip=" option: skip first 'n' seconds
9
+    Tobias Bengfort.
10
+- Updates from version 0.3.2:
11
+  + Support building with gstreamer 1.0 or gstreamer 0.10
12
+    (Issue 11).
13
+  + Added "-a pulse" PulseAudio output support.
14
+  + Fix time display updates (broken by introduction of quiet
15
+    mode).
16
+  + Properly quit player if none of the files in the playlist can
17
+    be played.
18
+  + Cleanup code to avoid compiler warnings.
19
+- Rebase gst123-gtk2_backport_GDK_BLANK_CURSOR.patch.
20
+
21
+-------------------------------------------------------------------
22
 Sun Apr 22 21:15:30 UTC 2012 - pascal.bleser@opensuse.org
23
 
24
 - update to 0.3.1:
25
gst123.spec Changed
88
 
1
@@ -1,4 +1,4 @@
2
-# Copyright (c) 2012 Pascal Bleser <pascal.bleser@opensuse.org>
3
+# Copyright (c) 2012-2013 Pascal Bleser <pascal.bleser@opensuse.org>
4
 #
5
 # All modifications and additions to the file contributed by third parties
6
 # remain the property of their copyright owners, unless otherwise agreed
7
@@ -14,24 +14,31 @@
8
 # vim: set ts=4 sw=4 et:
9
 
10
 Name:           gst123
11
-Version:        0.3.1
12
-Release:        1
13
+Version:        0.3.3
14
+Release:        0
15
+License:        LGPL-2.0+
16
 Summary:        GStreamer based Command Line Music Player
17
+Url:            http://space.twc.de/~sfefan/gst123.php
18
+Group:          Productivity/Multimedia/Sound/Players
19
 Source:         http://space.twc.de/~stefan/gst123/gst123-%{version}.tar.bz2
20
 Source1:        gst123.desktop
21
+# PATCH-FIX-PACKMAN TAG gst123-gtk2_backport_GDK_BLANK_CURSOR.patch pascal.bleser@opensuse.org -- No info available for this patch?
22
 Patch2:         gst123-gtk2_backport_GDK_BLANK_CURSOR.patch
23
-URL:            http://space.twc.de/~sfefan/gst123.php
24
-Group:          Productivity/Multimedia/Sound/Players
25
-License:        LGPL-2.0+
26
-BuildRoot:      %{_tmppath}/build-%{name}-%{version}
27
+BuildRequires:  gcc-c++
28
+BuildRequires:  glibc-devel
29
+%if 0%{?suse_version} >= 1230
30
+BuildRequires:  gstreamer-devel
31
+BuildRequires:  gstreamer-plugins-base-devel
32
+%else
33
 BuildRequires:  gstreamer-0_10-devel
34
 BuildRequires:  gstreamer-0_10-plugins-base-devel
35
-BuildRequires:  gstreamer-0_10-devel
36
-BuildRequires:  gtk2-devel
37
+%endif
38
+BuildRequires:  libstdc++-devel
39
 BuildRequires:  ncurses-devel
40
-BuildRequires:  gcc make glibc-devel gcc-c++ libstdc++-devel
41
-BuildRequires:  autoconf automake libtool pkgconfig
42
+BuildRequires:  pkgconfig
43
 BuildRequires:  update-desktop-files
44
+BuildRequires:  pkgconfig(gtk+-2.0)
45
+BuildRoot:      %{_tmppath}/%{name}-%{version}-build
46
 
47
 %description
48
 The program gst123 is designed to be a more flexible command line player in the
49
@@ -40,25 +47,29 @@
50
 different file formats, like flac, ogg and mp3, you can use gst123 to play all
51
 your music files.
52
 
53
-
54
 %prep
55
 %setup -q
56
-%patch2
57
+%patch2 -p1
58
 
59
 %build
60
 %configure
61
-%__make %{?_smp_flags} V=1
62
+make %{?_smp_flags} V=1
63
 
64
 %install
65
-%makeinstall
66
-
67
-%__install -D -m0644 "%{SOURCE1}" "%{buildroot}%{_datadir}/applications/%{name}.desktop"
68
+%make_install
69
+install -D -m0644 "%{SOURCE1}" "%{buildroot}%{_datadir}/applications/%{name}.desktop"
70
 %suse_update_desktop_file -r "%{name}" AudioVideo Player
71
-
72
 %find_lang "%{name}" || echo -n >"%{name}.lang"
73
 
74
-%clean
75
-%{?buildroot:%__rm -rf "%{buildroot}"}
76
+%if 0%{?suse_version} >= 1140
77
+%post
78
+%desktop_database_post
79
+%endif
80
+
81
+%if 0%{?suse_version} >= 1140
82
+%postun
83
+%desktop_database_postun
84
+%endif
85
 
86
 %files -f "%{name}.lang"
87
 %defattr(-,root,root)
88
gst123-gtk2_backport_GDK_BLANK_CURSOR.patch Changed
12
 
1
@@ -1,6 +1,7 @@
2
---- src/gtkinterface.cc.orig   2010-06-27 22:44:31.000000000 +0200
3
-+++ src/gtkinterface.cc    2010-06-27 22:54:54.000000000 +0200
4
-@@ -88,8 +88,20 @@
5
+diff -Naur a/src/gtkinterface.cc b/src/gtkinterface.cc
6
+--- a/src/gtkinterface.cc  2013-01-30 10:36:00.000000000 -0600
7
++++ b/src/gtkinterface.cc  2013-07-28 21:01:26.397420533 -0500
8
+@@ -92,8 +92,20 @@
9
        gtk_widget_modify_bg (gtk_window, GTK_STATE_NORMAL, &color);
10
  
11
        visible_cursor = NULL;
12
gst123-0.3.1.tar.bz2/ChangeLog -> gst123-0.3.3.tar.bz2/ChangeLog Changed
107
 
1
@@ -1,3 +1,105 @@
2
+2013-06-03 12:38:38 +0200  Stefan Westerfeld   # 3ee92d4
3
+
4
+   Updated NEWS for 0.3.3.
5
+
6
+2013-06-03 12:33:37 +0200  Stefan Westerfeld   # e6716bc
7
+
8
+   bump version
9
+
10
+2013-06-03 12:27:21 +0200  Stefan Westerfeld   # 8921a4f
11
+
12
+   gst123: use g_filename_to_uri for filename->uri conversions; fixes issue 10
13
+
14
+   Issue 10: Local files not properly escaped when converted to URLs
15
+
16
+2013-04-18 14:48:55 +0200  Stefan Westerfeld   # e97b086
17
+
18
+   gst123: implemented --skip <n>, -k <n>; based on code by Tobias Bengfort
19
+
20
+2013-01-11 12:32:43 +0100  Stefan Westerfeld   # f6bf398
21
+
22
+   gst123: fixed video size related warning (regression against 0.3.1)
23
+
24
+2013-01-11 12:03:10 +0100  Stefan Westerfeld   # 6d28dbe
25
+
26
+   updated man page
27
+
28
+2013-01-11 11:54:54 +0100  Stefan Westerfeld   # eb01ba9
29
+
30
+   Update NEWS.
31
+
32
+2013-01-11 11:50:18 +0100  Stefan Westerfeld   # 0b72338
33
+
34
+   Bump version to 0.3.2.
35
+
36
+2013-01-10 17:40:55 +0100  Stefan Westerfeld   # e6cdd92
37
+
38
+   gst123: keep ref count on elements in list for verbose iterator output
39
+
40
+2013-01-10 17:27:42 +0100  Stefan Westerfeld   # 2a820ea
41
+
42
+   compat: improved foreach code for gstreamer 1.0
43
+
44
+2013-01-10 17:13:18 +0100  Stefan Westerfeld   # 69b1e85
45
+
46
+   compat: improved foreach implementation for gstreamer 0.10
47
+
48
+2013-01-10 16:42:17 +0100  Stefan Westerfeld   # 2437854
49
+
50
+   compat: improved video support for gstreamer 1.0
51
+
52
+2013-01-10 16:15:18 +0100  Stefan Westerfeld   # cd86d43
53
+
54
+   compat: fix playbin creation for gstreamer 1.0
55
+
56
+2013-01-10 14:38:47 +0100  Stefan Westerfeld   # 55d4c3e
57
+
58
+   compat: improved gstreamer-0.10 support
59
+
60
+2013-01-10 14:15:11 +0100  Stefan Westerfeld   # 6a4ba61
61
+
62
+   compat: added compatibility code
63
+
64
+2013-01-10 14:10:12 +0100  Stefan Westerfeld   # 496d2d6
65
+
66
+   compat: started to implement support for both: gstreamer 0.10 and gstreamer 1.0
67
+
68
+2013-01-08 14:49:51 +0100  Stefan Westerfeld   # 04adff5
69
+
70
+   typefinder: replace deprecated function g_cond_timed_wait()
71
+
72
+2013-01-08 14:37:36 +0100  Stefan Westerfeld   # 6c29274
73
+
74
+   gst123: properly quit player if none of the files in the playlist can be played
75
+
76
+2013-01-08 13:40:05 +0100  Stefan Westerfeld   # 9bf7b49
77
+
78
+   get rid of deprecated g_mutex_new(),... functions
79
+
80
+2013-01-08 12:22:44 +0100  Stefan Westerfeld   # 2cb1cc1
81
+
82
+   gst123: remove deprecated g_thread_init(), no longer necessary
83
+
84
+2013-01-08 12:14:27 +0100  Stefan Westerfeld   # fe87870
85
+
86
+   gst123: don't use deprecated g_basename function
87
+
88
+2013-01-08 11:58:58 +0100  Stefan Westerfeld   # d4cf7e4
89
+
90
+   playlist parser: added virtual destructor (fixes compile warning)
91
+
92
+2013-01-08 11:31:52 +0100  Stefan Westerfeld   # 16cd28f
93
+
94
+   BUILD: extend configure check to allow gstreamer-0.10 and gstreamer-1.0
95
+
96
+2012-12-18 11:36:37 +0100  Stefan Westerfeld   # 06e329a
97
+
98
+   gst123: added "-a pulse" PulseAudio output support
99
+
100
+2012-04-23 03:10:22 +0200  Stefan Westerfeld   # 3e46d2e
101
+
102
+   Fix time display updates (broken by introduction of quiet mode).
103
+
104
 2012-04-21 01:06:42 +0200  Stefan Westerfeld   # 4b67b85
105
 
106
    Updated news for 0.3.1.
107
gst123-0.3.1.tar.bz2/INSTALL -> gst123-0.3.3.tar.bz2/INSTALL Changed
24
 
1
@@ -1,8 +1,8 @@
2
 Installation Instructions
3
 *************************
4
 
5
-Copyright (C) 1994, 1995, 1996, 1999, 2000, 2001, 2002, 2004, 2005,
6
-2006, 2007, 2008, 2009 Free Software Foundation, Inc.
7
+Copyright (C) 1994-1996, 1999-2002, 2004-2011 Free Software Foundation,
8
+Inc.
9
 
10
    Copying and distribution of this file, with or without modification,
11
 are permitted in any medium without royalty provided the copyright
12
@@ -226,6 +226,11 @@
13
 
14
 and if that doesn't work, install pre-built binaries of GCC for HP-UX.
15
 
16
+   HP-UX `make' updates targets which have the same time stamps as
17
+their prerequisites, which makes it generally unusable when shipped
18
+generated files such as `configure' are involved.  Use GNU `make'
19
+instead.
20
+
21
    On OSF/1 a.k.a. Tru64, some versions of the default C compiler cannot
22
 parse its `<wchar.h>' header file.  The option `-nodtk' can be used as
23
 a workaround.  If GNU CC is not installed, it is therefore recommended
24
gst123-0.3.1.tar.bz2/Makefile.in -> gst123-0.3.3.tar.bz2/Makefile.in Changed
72
 
1
@@ -1,4 +1,4 @@
2
-# Makefile.in generated by automake 1.11.4 from Makefile.am.
3
+# Makefile.in generated by automake 1.11.3 from Makefile.am.
4
 # @configure_input@
5
 
6
 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
7
@@ -15,23 +15,6 @@
8
 
9
 @SET_MAKE@
10
 VPATH = @srcdir@
11
-am__make_dryrun = \
12
-  { \
13
-    am__dry=no; \
14
-    case $$MAKEFLAGS in \
15
-      *\\\ \   *) \
16
-        echo 'am--echo: ; @echo "AM"  OK' | $(MAKE) -f - 2>/dev/null \
17
-          | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
18
-      *) \
19
-        for am__flg in $$MAKEFLAGS; do \
20
-          case $$am__flg in \
21
-            *=*|--*) ;; \
22
-            *n*) am__dry=yes; break;; \
23
-          esac; \
24
-        done;; \
25
-    esac; \
26
-    test $$am__dry = yes; \
27
-  }
28
 pkgdatadir = $(datadir)/@PACKAGE@
29
 pkgincludedir = $(includedir)/@PACKAGE@
30
 pkglibdir = $(libdir)/@PACKAGE@
31
@@ -79,11 +62,6 @@
32
    install-pdf-recursive install-ps-recursive install-recursive \
33
    installcheck-recursive installdirs-recursive pdf-recursive \
34
    ps-recursive uninstall-recursive
35
-am__can_run_installinfo = \
36
-  case $$AM_UPDATE_INFO_DIR in \
37
-    n|no|NO) false;; \
38
-    *) (install-info --version) >/dev/null 2>&1;; \
39
-  esac
40
 RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive    \
41
   distclean-recursive maintainer-clean-recursive
42
 AM_RECURSIVE_TARGETS = $(RECURSIVE_TARGETS:-recursive=) \
43
@@ -154,6 +132,10 @@
44
 ECHO_T = @ECHO_T@
45
 EXEEXT = @EXEEXT@
46
 GROFF = @GROFF@
47
+GSTREAMER_0_10_CFLAGS = @GSTREAMER_0_10_CFLAGS@
48
+GSTREAMER_0_10_LIBS = @GSTREAMER_0_10_LIBS@
49
+GSTREAMER_1_0_CFLAGS = @GSTREAMER_1_0_CFLAGS@
50
+GSTREAMER_1_0_LIBS = @GSTREAMER_1_0_LIBS@
51
 GSTREAMER_CFLAGS = @GSTREAMER_CFLAGS@
52
 GSTREAMER_GTKLIBS = @GSTREAMER_GTKLIBS@
53
 GSTREAMER_GTK_CFLAGS = @GSTREAMER_GTK_CFLAGS@
54
@@ -497,10 +479,13 @@
55
    done
56
    @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
57
      if test "$$subdir" = .; then :; else \
58
-       $(am__make_dryrun) \
59
-         || test -d "$(distdir)/$$subdir" \
60
-         || $(MKDIR_P) "$(distdir)/$$subdir" \
61
-         || exit 1; \
62
+       test -d "$(distdir)/$$subdir" \
63
+       || $(MKDIR_P) "$(distdir)/$$subdir" \
64
+       || exit 1; \
65
+     fi; \
66
+   done
67
+   @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
68
+     if test "$$subdir" = .; then :; else \
69
        dir1=$$subdir; dir2="$(distdir)/$$subdir"; \
70
        $(am__relativize); \
71
        new_distdir=$$reldir; \
72
gst123-0.3.1.tar.bz2/NEWS -> gst123-0.3.3.tar.bz2/NEWS Changed
18
 
1
@@ -1,3 +1,16 @@
2
+Overview of changes is gst123-0.3.3:
3
+
4
+* Fix Issue 10: Local files not properly escaped when converted to URLs
5
+* Added "-k, --skip=<n>" option: skip first 'n' seconds Tobias Bengfort
6
+
7
+Overview of changes in gst123-0.3.2:
8
+
9
+* Support building with gstreamer 1.0 or gstreamer 0.10 (Issue 11).
10
+* Added "-a pulse" PulseAudio output support.
11
+* Fix time display updates (broken by introduction of quiet mode).
12
+* Properly quit player if none of the files in the playlist can be played.
13
+* Cleanup code to avoid compiler warnings.
14
+
15
 Overview of changes in gst123-0.3.1:
16
 
17
 * Added quiet mode (Issue 9).
18
gst123-0.3.1.tar.bz2/aclocal.m4 -> gst123-0.3.3.tar.bz2/aclocal.m4 Changed
25
 
1
@@ -1,4 +1,4 @@
2
-# generated automatically by aclocal 1.11.4 -*- Autoconf -*-
3
+# generated automatically by aclocal 1.11.3 -*- Autoconf -*-
4
 
5
 # Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004,
6
 # 2005, 2006, 2007, 2008, 2009, 2010, 2011 Free Software Foundation,
7
@@ -198,7 +198,7 @@
8
 am__api_version='1.11'
9
 dnl Some users find AM_AUTOMAKE_VERSION and mistake it for a way to
10
 dnl require some minimum version.  Point them to the right macro.
11
-m4_if($1, 1.11.4, ,
12
+m4_if($1, 1.11.3, ,
13
       AC_FATAL(Do not call $0, use AM_INIT_AUTOMAKE($1).))dnl
14
 )
15
 
16
@@ -214,7 +214,7 @@
17
 # Call AM_AUTOMAKE_VERSION and AM_AUTOMAKE_VERSION so they can be traced.
18
 # This function is AC_REQUIREd by AM_INIT_AUTOMAKE.
19
 AC_DEFUN(AM_SET_CURRENT_AUTOMAKE_VERSION,
20
-AM_AUTOMAKE_VERSION(1.11.4)dnl
21
+AM_AUTOMAKE_VERSION(1.11.3)dnl
22
 m4_ifndef(AC_AUTOCONF_VERSION,
23
   m4_copy(m4_PACKAGE_VERSION, AC_AUTOCONF_VERSION))dnl
24
 _AM_AUTOCONF_VERSION(m4_defn(AC_AUTOCONF_VERSION)))
25
gst123-0.3.1.tar.bz2/build-aux/depcomp -> gst123-0.3.3.tar.bz2/build-aux/depcomp Changed
123
 
1
@@ -1,10 +1,10 @@
2
 #! /bin/sh
3
 # depcomp - compile a program generating dependencies as side-effects
4
 
5
-scriptversion=2009-04-28.21; # UTC
6
+scriptversion=2011-12-04.11; # UTC
7
 
8
-# Copyright (C) 1999, 2000, 2003, 2004, 2005, 2006, 2007, 2009 Free
9
-# Software Foundation, Inc.
10
+# Copyright (C) 1999, 2000, 2003, 2004, 2005, 2006, 2007, 2009, 2010,
11
+# 2011 Free Software Foundation, Inc.
12
 
13
 # This program is free software; you can redistribute it and/or modify
14
 # it under the terms of the GNU General Public License as published by
15
@@ -44,7 +44,7 @@
16
   object      Object file output by `PROGRAMS ARGS'.
17
   DEPDIR      directory where to store dependencies.
18
   depfile     Dependency file to output.
19
-  tmpdepfile  Temporary file to use when outputing dependencies.
20
+  tmpdepfile  Temporary file to use when outputting dependencies.
21
   libtool     Whether libtool is used (yes/no).
22
 
23
 Report bugs to <bug-automake@gnu.org>.
24
@@ -90,10 +90,18 @@
25
    # This is just like msvisualcpp but w/o cygpath translation.
26
    # Just convert the backslash-escaped backslashes to single forward
27
    # slashes to satisfy depend.m4
28
-   cygpath_u="sed s,\\\\\\\\,/,g"
29
+   cygpath_u='sed s,\\\\,/,g'
30
    depmode=msvisualcpp
31
 fi
32
 
33
+if test "$depmode" = msvc7msys; then
34
+   # This is just like msvc7 but w/o cygpath translation.
35
+   # Just convert the backslash-escaped backslashes to single forward
36
+   # slashes to satisfy depend.m4
37
+   cygpath_u='sed s,\\\\,/,g'
38
+   depmode=msvc7
39
+fi
40
+
41
 case "$depmode" in
42
 gcc3)
43
 ## gcc 3 implements dependency tracking that does exactly what
44
@@ -158,10 +166,12 @@
45
 ' < "$tmpdepfile" |
46
 ## Some versions of gcc put a space before the `:'.  On the theory
47
 ## that the space means something, we add a space to the output as
48
-## well.
49
+## well.  hp depmode also adds that space, but also prefixes the VPATH
50
+## to the object.  Take care to not repeat it in the output.
51
 ## Some versions of the HPUX 10.20 sed can't process this invocation
52
 ## correctly.  Breaking it into two sed invocations is a workaround.
53
-    sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile"
54
+    sed -e 's/^\\$//' -e '/^$/d' -e "s|.*$object$||" -e '/:$/d' \
55
+      | sed -e 's/$/ :/' >> "$depfile"
56
   rm -f "$tmpdepfile"
57
   ;;
58
 
59
@@ -405,6 +415,52 @@
60
    rm -f "$tmpdepfile"
61
    ;;
62
 
63
+msvc7)
64
+  if test "$libtool" = yes; then
65
+    showIncludes=-Wc,-showIncludes
66
+  else
67
+    showIncludes=-showIncludes
68
+  fi
69
+  "$@" $showIncludes > "$tmpdepfile"
70
+  stat=$?
71
+  grep -v '^Note: including file: ' "$tmpdepfile"
72
+  if test "$stat" = 0; then :
73
+  else
74
+    rm -f "$tmpdepfile"
75
+    exit $stat
76
+  fi
77
+  rm -f "$depfile"
78
+  echo "$object : \\" > "$depfile"
79
+  # The first sed program below extracts the file names and escapes
80
+  # backslashes for cygpath.  The second sed program outputs the file
81
+  # name when reading, but also accumulates all include files in the
82
+  # hold buffer in order to output them again at the end.  This only
83
+  # works with sed implementations that can handle large buffers.
84
+  sed < "$tmpdepfile" -n '
85
+/^Note: including file:  *\(.*\)/ {
86
+  s//\1/
87
+  s/\\/\\\\/g
88
+  p
89
+}' | $cygpath_u | sort -u | sed -n '
90
+s/ /\\ /g
91
+s/\(.*\)/  \1 \\/p
92
+s/.\(.*\) \\/\1:/
93
+H
94
+$ {
95
+  s/.*/    /
96
+  G
97
+  p
98
+}' >> "$depfile"
99
+  rm -f "$tmpdepfile"
100
+  ;;
101
+
102
+msvc7msys)
103
+  # This case exists only to let depend.m4 do its work.  It works by
104
+  # looking at the text of this script.  This case will never be run,
105
+  # since it is checked for above.
106
+  exit 1
107
+  ;;
108
+
109
 #nosideeffect)
110
   # This comment above is used by automake to tell side-effect
111
   # dependency tracking mechanisms from slower ones.
112
@@ -503,7 +559,9 @@
113
   touch "$tmpdepfile"
114
   ${MAKEDEPEND-makedepend} -o"$obj_suffix" -f"$tmpdepfile" "$@"
115
   rm -f "$depfile"
116
-  cat < "$tmpdepfile" > "$depfile"
117
+  # makedepend may prepend the VPATH from the source file name to the object.
118
+  # No need to regex-escape $object, excess matching of '.' is harmless.
119
+  sed "s|^.*\($object *:\)|\1|" "$tmpdepfile" > "$depfile"
120
   sed '1,2d' "$tmpdepfile" | tr ' ' '
121
 ' | \
122
 ## Some versions of the HPUX 10.20 sed can't process this invocation
123
gst123-0.3.1.tar.bz2/build-aux/install-sh -> gst123-0.3.3.tar.bz2/build-aux/install-sh Changed
88
 
1
@@ -1,7 +1,7 @@
2
 #!/bin/sh
3
 # install - install a program, script, or datafile
4
 
5
-scriptversion=2009-04-28.21; # UTC
6
+scriptversion=2011-01-19.21; # UTC
7
 
8
 # This originates from X11R5 (mit/util/scripts/install.sh), which was
9
 # later released in X11R6 (xc/config/util/install.sh) with the
10
@@ -156,6 +156,10 @@
11
     -s) stripcmd=$stripprog;;
12
 
13
     -t) dst_arg=$2
14
+   # Protect names problematic for `test' and other utilities.
15
+   case $dst_arg in
16
+     -* | =\(\)!) dst_arg=./$dst_arg;;
17
+   esac
18
    shift;;
19
 
20
     -T) no_target_directory=true;;
21
@@ -186,6 +190,10 @@
22
     fi
23
     shift # arg
24
     dst_arg=$arg
25
+    # Protect names problematic for `test' and other utilities.
26
+    case $dst_arg in
27
+      -* | =\(\)!) dst_arg=./$dst_arg;;
28
+    esac
29
   done
30
 fi
31
 
32
@@ -200,7 +208,11 @@
33
 fi
34
 
35
 if test -z "$dir_arg"; then
36
-  trap '(exit $?); exit' 1 2 13 15
37
+  do_exit='(exit $ret); exit $ret'
38
+  trap "ret=129; $do_exit" 1
39
+  trap "ret=130; $do_exit" 2
40
+  trap "ret=141; $do_exit" 13
41
+  trap "ret=143; $do_exit" 15
42
 
43
   # Set umask so as not to create temps with too-generous modes.
44
   # However, 'strip' requires both read and write access to temps.
45
@@ -228,9 +240,9 @@
46
 
47
 for src
48
 do
49
-  # Protect names starting with `-'.
50
+  # Protect names problematic for `test' and other utilities.
51
   case $src in
52
-    -*) src=./$src;;
53
+    -* | =\(\)!) src=./$src;;
54
   esac
55
 
56
   if test -n "$dir_arg"; then
57
@@ -252,12 +264,7 @@
58
       echo "$0: no destination specified." >&2
59
       exit 1
60
     fi
61
-
62
     dst=$dst_arg
63
-    # Protect names starting with `-'.
64
-    case $dst in
65
-      -*) dst=./$dst;;
66
-    esac
67
 
68
     # If destination is a directory, append the input filename; won't work
69
     # if double slashes aren't ignored.
70
@@ -385,7 +392,7 @@
71
 
72
       case $dstdir in
73
    /*) prefix='/';;
74
-   -*) prefix='./';;
75
+   -=\(\)!*) prefix='./';;
76
    *)  prefix='';;
77
       esac
78
 
79
@@ -403,7 +410,7 @@
80
 
81
       for d
82
       do
83
-   test -z "$d" && continue
84
+   test X"$d" = X && continue
85
 
86
    prefix=$prefix$d
87
    if test -d "$prefix"; then
88
gst123-0.3.1.tar.bz2/build-aux/missing -> gst123-0.3.3.tar.bz2/build-aux/missing Changed
98
 
1
@@ -1,10 +1,10 @@
2
 #! /bin/sh
3
 # Common stub for a few missing GNU programs while installing.
4
 
5
-scriptversion=2009-04-28.21; # UTC
6
+scriptversion=2012-01-06.13; # UTC
7
 
8
 # Copyright (C) 1996, 1997, 1999, 2000, 2002, 2003, 2004, 2005, 2006,
9
-# 2008, 2009 Free Software Foundation, Inc.
10
+# 2008, 2009, 2010, 2011, 2012 Free Software Foundation, Inc.
11
 # Originally by Fran,cois Pinard <pinard@iro.umontreal.ca>, 1996.
12
 
13
 # This program is free software; you can redistribute it and/or modify
14
@@ -84,7 +84,6 @@
15
   help2man     touch the output file
16
   lex          create \`lex.yy.c', if possible, from existing .c
17
   makeinfo     touch the output file
18
-  tar          try tar, gnutar, gtar, then tar without non-portable flags
19
   yacc         create \`y.tab.ch', if possible, from existing .ch
20
 
21
 Version suffixes to PROGRAM as well as the prefixes \`gnu-', \`gnu', and
22
@@ -122,15 +121,6 @@
23
     # Not GNU programs, they don't have --version.
24
     ;;
25
 
26
-  tar*)
27
-    if test -n "$run"; then
28
-       echo 1>&2 "ERROR: \`tar' requires --run"
29
-       exit 1
30
-    elif test "x$2" = "x--version" || test "x$2" = "x--help"; then
31
-       exit 1
32
-    fi
33
-    ;;
34
-
35
   *)
36
     if test -z "$run" && ($1 --version) > /dev/null 2>&1; then
37
        # We have it, but it failed.
38
@@ -226,7 +216,7 @@
39
          \`Bison' from any GNU archive site."
40
     rm -f y.tab.c y.tab.h
41
     if test $# -ne 1; then
42
-        eval LASTARG="\${$#}"
43
+        eval LASTARG=\${$#}
44
    case $LASTARG in
45
    *.y)
46
        SRCFILE=`echo "$LASTARG" | sed 's/y$/c/'`
47
@@ -256,7 +246,7 @@
48
          \`Flex' from any GNU archive site."
49
     rm -f lex.yy.c
50
     if test $# -ne 1; then
51
-        eval LASTARG="\${$#}"
52
+        eval LASTARG=\${$#}
53
    case $LASTARG in
54
    *.l)
55
        SRCFILE=`echo "$LASTARG" | sed 's/l$/c/'`
56
@@ -318,41 +308,6 @@
57
     touch $file
58
     ;;
59
 
60
-  tar*)
61
-    shift
62
-
63
-    # We have already tried tar in the generic part.
64
-    # Look for gnutar/gtar before invocation to avoid ugly error
65
-    # messages.
66
-    if (gnutar --version > /dev/null 2>&1); then
67
-       gnutar "$@" && exit 0
68
-    fi
69
-    if (gtar --version > /dev/null 2>&1); then
70
-       gtar "$@" && exit 0
71
-    fi
72
-    firstarg="$1"
73
-    if shift; then
74
-   case $firstarg in
75
-   *o*)
76
-       firstarg=`echo "$firstarg" | sed s/o//`
77
-       tar "$firstarg" "$@" && exit 0
78
-       ;;
79
-   esac
80
-   case $firstarg in
81
-   *h*)
82
-       firstarg=`echo "$firstarg" | sed s/h//`
83
-       tar "$firstarg" "$@" && exit 0
84
-       ;;
85
-   esac
86
-    fi
87
-
88
-    echo 1>&2 "\
89
-WARNING: I can't seem to be able to run \`tar' with the given arguments.
90
-         You may want to install GNU tar or Free paxutils, or check the
91
-         command line arguments."
92
-    exit 1
93
-    ;;
94
-
95
   *)
96
     echo 1>&2 "\
97
 WARNING: \`$1' is needed, and is $msg.
98
gst123-0.3.1.tar.bz2/configure -> gst123-0.3.3.tar.bz2/configure Changed
487
 
1
@@ -1,6 +1,6 @@
2
 #! /bin/sh
3
 # Guess values for system-dependent variables and create Makefiles.
4
-# Generated by GNU Autoconf 2.68 for gst123 0.3.1.
5
+# Generated by GNU Autoconf 2.68 for gst123 0.3.3.
6
 #
7
 #
8
 # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001,
9
@@ -556,8 +556,8 @@
10
 # Identity of this package.
11
 PACKAGE_NAME='gst123'
12
 PACKAGE_TARNAME='gst123'
13
-PACKAGE_VERSION='0.3.1'
14
-PACKAGE_STRING='gst123 0.3.1'
15
+PACKAGE_VERSION='0.3.3'
16
+PACKAGE_STRING='gst123 0.3.3'
17
 PACKAGE_BUGREPORT=''
18
 PACKAGE_URL=''
19
 
20
@@ -577,8 +577,12 @@
21
 GSTREAMER_GTKLIBS
22
 GSTREAMER_GTK_LIBS
23
 GSTREAMER_GTK_CFLAGS
24
+GSTREAMER_0_10_LIBS
25
+GSTREAMER_0_10_CFLAGS
26
 GSTREAMER_LIBS
27
 GSTREAMER_CFLAGS
28
+GSTREAMER_1_0_LIBS
29
+GSTREAMER_1_0_CFLAGS
30
 PKG_CONFIG_LIBDIR
31
 PKG_CONFIG_PATH
32
 PKG_CONFIG
33
@@ -696,8 +700,12 @@
34
 PKG_CONFIG
35
 PKG_CONFIG_PATH
36
 PKG_CONFIG_LIBDIR
37
+GSTREAMER_1_0_CFLAGS
38
+GSTREAMER_1_0_LIBS
39
 GSTREAMER_CFLAGS
40
 GSTREAMER_LIBS
41
+GSTREAMER_0_10_CFLAGS
42
+GSTREAMER_0_10_LIBS
43
 GSTREAMER_GTK_CFLAGS
44
 GSTREAMER_GTK_LIBS'
45
 
46
@@ -1242,7 +1250,7 @@
47
   # Omit some internal or obsolete options to make the list less imposing.
48
   # This message is too long to be a string in the A/UX 3.1 sh.
49
   cat <<_ACEOF
50
-\`configure' configures gst123 0.3.1 to adapt to many kinds of systems.
51
+\`configure' configures gst123 0.3.3 to adapt to many kinds of systems.
52
 
53
 Usage: $0 OPTION... VAR=VALUE...
54
 
55
@@ -1308,7 +1316,7 @@
56
 
57
 if test -n "$ac_init_help"; then
58
   case $ac_init_help in
59
-     short | recursive ) echo "Configuration of gst123 0.3.1:";;
60
+     short | recursive ) echo "Configuration of gst123 0.3.3:";;
61
    esac
62
   cat <<\_ACEOF
63
 
64
@@ -1340,10 +1348,18 @@
65
               directories to add to pkg-config's search path
66
   PKG_CONFIG_LIBDIR
67
               path overriding pkg-config's built-in search path
68
+  GSTREAMER_1_0_CFLAGS
69
+              C compiler flags for GSTREAMER_1_0, overriding pkg-config
70
+  GSTREAMER_1_0_LIBS
71
+              linker flags for GSTREAMER_1_0, overriding pkg-config
72
   GSTREAMER_CFLAGS
73
               C compiler flags for GSTREAMER, overriding pkg-config
74
   GSTREAMER_LIBS
75
               linker flags for GSTREAMER, overriding pkg-config
76
+  GSTREAMER_0_10_CFLAGS
77
+              C compiler flags for GSTREAMER_0_10, overriding pkg-config
78
+  GSTREAMER_0_10_LIBS
79
+              linker flags for GSTREAMER_0_10, overriding pkg-config
80
   GSTREAMER_GTK_CFLAGS
81
               C compiler flags for GSTREAMER_GTK, overriding pkg-config
82
   GSTREAMER_GTK_LIBS
83
@@ -1415,7 +1431,7 @@
84
 test -n "$ac_init_help" && exit $ac_status
85
 if $ac_init_version; then
86
   cat <<\_ACEOF
87
-gst123 configure 0.3.1
88
+gst123 configure 0.3.3
89
 generated by GNU Autoconf 2.68
90
 
91
 Copyright (C) 2010 Free Software Foundation, Inc.
92
@@ -1554,7 +1570,7 @@
93
 This file contains any messages produced by compilers while
94
 running configure, to aid debugging if configure makes a mistake.
95
 
96
-It was created by gst123 $as_me 0.3.1, which was
97
+It was created by gst123 $as_me 0.3.3, which was
98
 generated by GNU Autoconf 2.68.  Invocation command line was
99
 
100
   $ $0 $@
101
@@ -2372,7 +2388,7 @@
102
 
103
 # Define the identity of the package.
104
  PACKAGE='gst123'
105
- VERSION='0.3.1'
106
+ VERSION='0.3.3'
107
 
108
 
109
 cat >>confdefs.h <<_ACEOF
110
@@ -4037,6 +4053,82 @@
111
 
112
 
113
 pkg_failed=no
114
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for GSTREAMER_1_0" >&5
115
+$as_echo_n "checking for GSTREAMER_1_0... " >&6; }
116
+
117
+if test -n "$GSTREAMER_1_0_CFLAGS"; then
118
+    pkg_cv_GSTREAMER_1_0_CFLAGS="$GSTREAMER_1_0_CFLAGS"
119
+ elif test -n "$PKG_CONFIG"; then
120
+    if test -n "$PKG_CONFIG" && \
121
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gstreamer-1.0\""; } >&5
122
+  ($PKG_CONFIG --exists --print-errors "gstreamer-1.0") 2>&5
123
+  ac_status=$?
124
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
125
+  test $ac_status = 0; }; then
126
+  pkg_cv_GSTREAMER_1_0_CFLAGS=`$PKG_CONFIG --cflags "gstreamer-1.0" 2>/dev/null`
127
+             test "x$?" != "x0" && pkg_failed=yes
128
+else
129
+  pkg_failed=yes
130
+fi
131
+ else
132
+    pkg_failed=untried
133
+fi
134
+if test -n "$GSTREAMER_1_0_LIBS"; then
135
+    pkg_cv_GSTREAMER_1_0_LIBS="$GSTREAMER_1_0_LIBS"
136
+ elif test -n "$PKG_CONFIG"; then
137
+    if test -n "$PKG_CONFIG" && \
138
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gstreamer-1.0\""; } >&5
139
+  ($PKG_CONFIG --exists --print-errors "gstreamer-1.0") 2>&5
140
+  ac_status=$?
141
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
142
+  test $ac_status = 0; }; then
143
+  pkg_cv_GSTREAMER_1_0_LIBS=`$PKG_CONFIG --libs "gstreamer-1.0" 2>/dev/null`
144
+             test "x$?" != "x0" && pkg_failed=yes
145
+else
146
+  pkg_failed=yes
147
+fi
148
+ else
149
+    pkg_failed=untried
150
+fi
151
+
152
+
153
+
154
+if test $pkg_failed = yes; then
155
+       { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
156
+$as_echo "no" >&6; }
157
+
158
+if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
159
+        _pkg_short_errors_supported=yes
160
+else
161
+        _pkg_short_errors_supported=no
162
+fi
163
+        if test $_pkg_short_errors_supported = yes; then
164
+           GSTREAMER_1_0_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "gstreamer-1.0" 2>&1`
165
+        else
166
+           GSTREAMER_1_0_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "gstreamer-1.0" 2>&1`
167
+        fi
168
+   # Put the nasty error message in config.log where it belongs
169
+   echo "$GSTREAMER_1_0_PKG_ERRORS" >&5
170
+
171
+   GST_1_0=0
172
+elif test $pkg_failed = untried; then
173
+       { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
174
+$as_echo "no" >&6; }
175
+   GST_1_0=0
176
+else
177
+   GSTREAMER_1_0_CFLAGS=$pkg_cv_GSTREAMER_1_0_CFLAGS
178
+   GSTREAMER_1_0_LIBS=$pkg_cv_GSTREAMER_1_0_LIBS
179
+        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
180
+$as_echo "yes" >&6; }
181
+   GST_1_0=1
182
+fi
183
+
184
+    if test x$GST_1_0 = x1; then
185
+      { $as_echo "$as_me:${as_lineno-$LINENO}: Building gst123 using gstreamer version 1.0" >&5
186
+$as_echo "$as_me: Building gst123 using gstreamer version 1.0" >&6;}
187
+
188
+
189
+pkg_failed=no
190
 { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GSTREAMER" >&5
191
 $as_echo_n "checking for GSTREAMER... " >&6; }
192
 
193
@@ -4044,12 +4136,12 @@
194
     pkg_cv_GSTREAMER_CFLAGS="$GSTREAMER_CFLAGS"
195
  elif test -n "$PKG_CONFIG"; then
196
     if test -n "$PKG_CONFIG" && \
197
-    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gstreamer-0.10\""; } >&5
198
-  ($PKG_CONFIG --exists --print-errors "gstreamer-0.10") 2>&5
199
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gstreamer-1.0 gstreamer-base-1.0 gstreamer-video-1.0\""; } >&5
200
+  ($PKG_CONFIG --exists --print-errors "gstreamer-1.0 gstreamer-base-1.0 gstreamer-video-1.0") 2>&5
201
   ac_status=$?
202
   $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
203
   test $ac_status = 0; }; then
204
-  pkg_cv_GSTREAMER_CFLAGS=`$PKG_CONFIG --cflags "gstreamer-0.10" 2>/dev/null`
205
+  pkg_cv_GSTREAMER_CFLAGS=`$PKG_CONFIG --cflags "gstreamer-1.0 gstreamer-base-1.0 gstreamer-video-1.0" 2>/dev/null`
206
              test "x$?" != "x0" && pkg_failed=yes
207
 else
208
   pkg_failed=yes
209
@@ -4061,12 +4153,104 @@
210
     pkg_cv_GSTREAMER_LIBS="$GSTREAMER_LIBS"
211
  elif test -n "$PKG_CONFIG"; then
212
     if test -n "$PKG_CONFIG" && \
213
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gstreamer-1.0 gstreamer-base-1.0 gstreamer-video-1.0\""; } >&5
214
+  ($PKG_CONFIG --exists --print-errors "gstreamer-1.0 gstreamer-base-1.0 gstreamer-video-1.0") 2>&5
215
+  ac_status=$?
216
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
217
+  test $ac_status = 0; }; then
218
+  pkg_cv_GSTREAMER_LIBS=`$PKG_CONFIG --libs "gstreamer-1.0 gstreamer-base-1.0 gstreamer-video-1.0" 2>/dev/null`
219
+             test "x$?" != "x0" && pkg_failed=yes
220
+else
221
+  pkg_failed=yes
222
+fi
223
+ else
224
+    pkg_failed=untried
225
+fi
226
+
227
+
228
+
229
+if test $pkg_failed = yes; then
230
+       { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
231
+$as_echo "no" >&6; }
232
+
233
+if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
234
+        _pkg_short_errors_supported=yes
235
+else
236
+        _pkg_short_errors_supported=no
237
+fi
238
+        if test $_pkg_short_errors_supported = yes; then
239
+           GSTREAMER_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "gstreamer-1.0 gstreamer-base-1.0 gstreamer-video-1.0" 2>&1`
240
+        else
241
+           GSTREAMER_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "gstreamer-1.0 gstreamer-base-1.0 gstreamer-video-1.0" 2>&1`
242
+        fi
243
+   # Put the nasty error message in config.log where it belongs
244
+   echo "$GSTREAMER_PKG_ERRORS" >&5
245
+
246
+   as_fn_error $? "Package requirements (gstreamer-1.0 gstreamer-base-1.0 gstreamer-video-1.0) were not met:
247
+
248
+$GSTREAMER_PKG_ERRORS
249
+
250
+Consider adjusting the PKG_CONFIG_PATH environment variable if you
251
+installed software in a non-standard prefix.
252
+
253
+Alternatively, you may set the environment variables GSTREAMER_CFLAGS
254
+and GSTREAMER_LIBS to avoid the need to call pkg-config.
255
+See the pkg-config man page for more details." "$LINENO" 5
256
+elif test $pkg_failed = untried; then
257
+       { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
258
+$as_echo "no" >&6; }
259
+   { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
260
+$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
261
+as_fn_error $? "The pkg-config script could not be found or is too old.  Make sure it
262
+is in your PATH or set the PKG_CONFIG environment variable to the full
263
+path to pkg-config.
264
+
265
+Alternatively, you may set the environment variables GSTREAMER_CFLAGS
266
+and GSTREAMER_LIBS to avoid the need to call pkg-config.
267
+See the pkg-config man page for more details.
268
+
269
+To get pkg-config, see <http://pkg-config.freedesktop.org/>.
270
+See \`config.log' for more details" "$LINENO" 5; }
271
+else
272
+   GSTREAMER_CFLAGS=$pkg_cv_GSTREAMER_CFLAGS
273
+   GSTREAMER_LIBS=$pkg_cv_GSTREAMER_LIBS
274
+        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
275
+$as_echo "yes" >&6; }
276
+
277
+fi
278
+    else
279
+
280
+pkg_failed=no
281
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for GSTREAMER_0_10" >&5
282
+$as_echo_n "checking for GSTREAMER_0_10... " >&6; }
283
+
284
+if test -n "$GSTREAMER_0_10_CFLAGS"; then
285
+    pkg_cv_GSTREAMER_0_10_CFLAGS="$GSTREAMER_0_10_CFLAGS"
286
+ elif test -n "$PKG_CONFIG"; then
287
+    if test -n "$PKG_CONFIG" && \
288
     { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gstreamer-0.10\""; } >&5
289
   ($PKG_CONFIG --exists --print-errors "gstreamer-0.10") 2>&5
290
   ac_status=$?
291
   $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
292
   test $ac_status = 0; }; then
293
-  pkg_cv_GSTREAMER_LIBS=`$PKG_CONFIG --libs "gstreamer-0.10" 2>/dev/null`
294
+  pkg_cv_GSTREAMER_0_10_CFLAGS=`$PKG_CONFIG --cflags "gstreamer-0.10" 2>/dev/null`
295
+             test "x$?" != "x0" && pkg_failed=yes
296
+else
297
+  pkg_failed=yes
298
+fi
299
+ else
300
+    pkg_failed=untried
301
+fi
302
+if test -n "$GSTREAMER_0_10_LIBS"; then
303
+    pkg_cv_GSTREAMER_0_10_LIBS="$GSTREAMER_0_10_LIBS"
304
+ elif test -n "$PKG_CONFIG"; then
305
+    if test -n "$PKG_CONFIG" && \
306
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gstreamer-0.10\""; } >&5
307
+  ($PKG_CONFIG --exists --print-errors "gstreamer-0.10") 2>&5
308
+  ac_status=$?
309
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
310
+  test $ac_status = 0; }; then
311
+  pkg_cv_GSTREAMER_0_10_LIBS=`$PKG_CONFIG --libs "gstreamer-0.10" 2>/dev/null`
312
              test "x$?" != "x0" && pkg_failed=yes
313
 else
314
   pkg_failed=yes
315
@@ -4087,14 +4271,89 @@
316
         _pkg_short_errors_supported=no
317
 fi
318
         if test $_pkg_short_errors_supported = yes; then
319
-           GSTREAMER_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "gstreamer-0.10" 2>&1`
320
+           GSTREAMER_0_10_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "gstreamer-0.10" 2>&1`
321
         else
322
-           GSTREAMER_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "gstreamer-0.10" 2>&1`
323
+           GSTREAMER_0_10_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "gstreamer-0.10" 2>&1`
324
+        fi
325
+   # Put the nasty error message in config.log where it belongs
326
+   echo "$GSTREAMER_0_10_PKG_ERRORS" >&5
327
+
328
+   GST_0_10=0
329
+elif test $pkg_failed = untried; then
330
+       { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
331
+$as_echo "no" >&6; }
332
+   GST_0_10=0
333
+else
334
+   GSTREAMER_0_10_CFLAGS=$pkg_cv_GSTREAMER_0_10_CFLAGS
335
+   GSTREAMER_0_10_LIBS=$pkg_cv_GSTREAMER_0_10_LIBS
336
+        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
337
+$as_echo "yes" >&6; }
338
+   GST_0_10=1
339
+fi
340
+
341
+      if test x$GST_0_10 = x1; then
342
+        { $as_echo "$as_me:${as_lineno-$LINENO}: Building gst123 using gstreamer version 0.10" >&5
343
+$as_echo "$as_me: Building gst123 using gstreamer version 0.10" >&6;}
344
+
345
+pkg_failed=no
346
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for GSTREAMER" >&5
347
+$as_echo_n "checking for GSTREAMER... " >&6; }
348
+
349
+if test -n "$GSTREAMER_CFLAGS"; then
350
+    pkg_cv_GSTREAMER_CFLAGS="$GSTREAMER_CFLAGS"
351
+ elif test -n "$PKG_CONFIG"; then
352
+    if test -n "$PKG_CONFIG" && \
353
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gstreamer-0.10 gstreamer-base-0.10 gstreamer-interfaces-0.10 gstreamer-video-0.10\""; } >&5
354
+  ($PKG_CONFIG --exists --print-errors "gstreamer-0.10 gstreamer-base-0.10 gstreamer-interfaces-0.10 gstreamer-video-0.10") 2>&5
355
+  ac_status=$?
356
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
357
+  test $ac_status = 0; }; then
358
+  pkg_cv_GSTREAMER_CFLAGS=`$PKG_CONFIG --cflags "gstreamer-0.10 gstreamer-base-0.10 gstreamer-interfaces-0.10 gstreamer-video-0.10" 2>/dev/null`
359
+             test "x$?" != "x0" && pkg_failed=yes
360
+else
361
+  pkg_failed=yes
362
+fi
363
+ else
364
+    pkg_failed=untried
365
+fi
366
+if test -n "$GSTREAMER_LIBS"; then
367
+    pkg_cv_GSTREAMER_LIBS="$GSTREAMER_LIBS"
368
+ elif test -n "$PKG_CONFIG"; then
369
+    if test -n "$PKG_CONFIG" && \
370
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gstreamer-0.10 gstreamer-base-0.10 gstreamer-interfaces-0.10 gstreamer-video-0.10\""; } >&5
371
+  ($PKG_CONFIG --exists --print-errors "gstreamer-0.10 gstreamer-base-0.10 gstreamer-interfaces-0.10 gstreamer-video-0.10") 2>&5
372
+  ac_status=$?
373
+  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
374
+  test $ac_status = 0; }; then
375
+  pkg_cv_GSTREAMER_LIBS=`$PKG_CONFIG --libs "gstreamer-0.10 gstreamer-base-0.10 gstreamer-interfaces-0.10 gstreamer-video-0.10" 2>/dev/null`
376
+             test "x$?" != "x0" && pkg_failed=yes
377
+else
378
+  pkg_failed=yes
379
+fi
380
+ else
381
+    pkg_failed=untried
382
+fi
383
+
384
+
385
+
386
+if test $pkg_failed = yes; then
387
+       { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
388
+$as_echo "no" >&6; }
389
+
390
+if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
391
+        _pkg_short_errors_supported=yes
392
+else
393
+        _pkg_short_errors_supported=no
394
+fi
395
+        if test $_pkg_short_errors_supported = yes; then
396
+           GSTREAMER_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "gstreamer-0.10 gstreamer-base-0.10 gstreamer-interfaces-0.10 gstreamer-video-0.10" 2>&1`
397
+        else
398
+           GSTREAMER_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "gstreamer-0.10 gstreamer-base-0.10 gstreamer-interfaces-0.10 gstreamer-video-0.10" 2>&1`
399
         fi
400
    # Put the nasty error message in config.log where it belongs
401
    echo "$GSTREAMER_PKG_ERRORS" >&5
402
 
403
-   as_fn_error $? "Package requirements (gstreamer-0.10) were not met:
404
+   as_fn_error $? "Package requirements (gstreamer-0.10 gstreamer-base-0.10 gstreamer-interfaces-0.10 gstreamer-video-0.10) were not met:
405
 
406
 $GSTREAMER_PKG_ERRORS
407
 
408
@@ -4126,6 +4385,10 @@
409
 $as_echo "yes" >&6; }
410
 
411
 fi
412
+      else
413
+        as_fn_error $? "Neither gstreamer-0.10 nor gstreamer-1.0 was found using pkg-config." "$LINENO" 5
414
+      fi
415
+    fi
416
 
417
 
418
 
419
@@ -4139,12 +4402,12 @@
420
     pkg_cv_GSTREAMER_GTK_CFLAGS="$GSTREAMER_GTK_CFLAGS"
421
  elif test -n "$PKG_CONFIG"; then
422
     if test -n "$PKG_CONFIG" && \
423
-    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gstreamer-base-0.10 gtk+-2.0 gstreamer-interfaces-0.10 gstreamer-video-0.10\""; } >&5
424
-  ($PKG_CONFIG --exists --print-errors "gstreamer-base-0.10 gtk+-2.0 gstreamer-interfaces-0.10 gstreamer-video-0.10") 2>&5
425
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gtk+-2.0\""; } >&5
426
+  ($PKG_CONFIG --exists --print-errors "gtk+-2.0") 2>&5
427
   ac_status=$?
428
   $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
429
   test $ac_status = 0; }; then
430
-  pkg_cv_GSTREAMER_GTK_CFLAGS=`$PKG_CONFIG --cflags "gstreamer-base-0.10 gtk+-2.0 gstreamer-interfaces-0.10 gstreamer-video-0.10" 2>/dev/null`
431
+  pkg_cv_GSTREAMER_GTK_CFLAGS=`$PKG_CONFIG --cflags "gtk+-2.0" 2>/dev/null`
432
              test "x$?" != "x0" && pkg_failed=yes
433
 else
434
   pkg_failed=yes
435
@@ -4156,12 +4419,12 @@
436
     pkg_cv_GSTREAMER_GTK_LIBS="$GSTREAMER_GTK_LIBS"
437
  elif test -n "$PKG_CONFIG"; then
438
     if test -n "$PKG_CONFIG" && \
439
-    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gstreamer-base-0.10 gtk+-2.0 gstreamer-interfaces-0.10 gstreamer-video-0.10\""; } >&5
440
-  ($PKG_CONFIG --exists --print-errors "gstreamer-base-0.10 gtk+-2.0 gstreamer-interfaces-0.10 gstreamer-video-0.10") 2>&5
441
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gtk+-2.0\""; } >&5
442
+  ($PKG_CONFIG --exists --print-errors "gtk+-2.0") 2>&5
443
   ac_status=$?
444
   $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
445
   test $ac_status = 0; }; then
446
-  pkg_cv_GSTREAMER_GTK_LIBS=`$PKG_CONFIG --libs "gstreamer-base-0.10 gtk+-2.0 gstreamer-interfaces-0.10 gstreamer-video-0.10" 2>/dev/null`
447
+  pkg_cv_GSTREAMER_GTK_LIBS=`$PKG_CONFIG --libs "gtk+-2.0" 2>/dev/null`
448
              test "x$?" != "x0" && pkg_failed=yes
449
 else
450
   pkg_failed=yes
451
@@ -4182,14 +4445,14 @@
452
         _pkg_short_errors_supported=no
453
 fi
454
         if test $_pkg_short_errors_supported = yes; then
455
-           GSTREAMER_GTK_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "gstreamer-base-0.10 gtk+-2.0 gstreamer-interfaces-0.10 gstreamer-video-0.10" 2>&1`
456
+           GSTREAMER_GTK_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "gtk+-2.0" 2>&1`
457
         else
458
-           GSTREAMER_GTK_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "gstreamer-base-0.10 gtk+-2.0 gstreamer-interfaces-0.10 gstreamer-video-0.10" 2>&1`
459
+           GSTREAMER_GTK_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "gtk+-2.0" 2>&1`
460
         fi
461
    # Put the nasty error message in config.log where it belongs
462
    echo "$GSTREAMER_GTK_PKG_ERRORS" >&5
463
 
464
-   as_fn_error $? "Package requirements (gstreamer-base-0.10 gtk+-2.0 gstreamer-interfaces-0.10 gstreamer-video-0.10) were not met:
465
+   as_fn_error $? "Package requirements (gtk+-2.0) were not met:
466
 
467
 $GSTREAMER_GTK_PKG_ERRORS
468
 
469
@@ -5051,7 +5314,7 @@
470
 # report actual input values of CONFIG_FILES etc. instead of their
471
 # values after options handling.
472
 ac_log="
473
-This file was extended by gst123 $as_me 0.3.1, which was
474
+This file was extended by gst123 $as_me 0.3.3, which was
475
 generated by GNU Autoconf 2.68.  Invocation command line was
476
 
477
   CONFIG_FILES    = $CONFIG_FILES
478
@@ -5117,7 +5380,7 @@
479
 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
480
 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/\\""\`\$/\\\\&/g'`"
481
 ac_cs_version="\\
482
-gst123 config.status 0.3.1
483
+gst123 config.status 0.3.3
484
 configured by $0, generated by GNU Autoconf 2.68,
485
   with options \\"\$ac_cs_config\\"
486
 
487
gst123-0.3.1.tar.bz2/configure.ac -> gst123-0.3.3.tar.bz2/configure.ac Changed
48
 
1
@@ -1,4 +1,4 @@
2
-AC_INIT(gst123, 0.3.1)
3
+AC_INIT(gst123, 0.3.3)
4
 AC_CONFIG_SRCDIR(src/gst123.cc)
5
 AC_CONFIG_HEADER(config.h)
6
 AC_CONFIG_AUX_DIR(build-aux)
7
@@ -50,12 +50,28 @@
8
 AM_MAINTAINER_MODE
9
 
10
 dnl
11
-dnl Define package requirements.
12
+dnl We need gstreamer-0.10 or gstreamer-1.0
13
 dnl
14
 AC_DEFUN(AC_GSTREAMER_REQUIREMENTS,
15
 
16
-    dnl We need GLib with friends
17
-    PKG_CHECK_MODULES(GSTREAMER, gstreamer-0.10)
18
+    dnl gstreamer-1.0 development package installed?
19
+    PKG_CHECK_MODULES(GSTREAMER_1_0, gstreamer-1.0, GST_1_0=1, GST_1_0=0)
20
+
21
+    if test x$GST_1_0 = x1; then
22
+      AC_MSG_NOTICE(Building gst123 using gstreamer version 1.0)
23
+
24
+      PKG_CHECK_MODULES(GSTREAMER, gstreamer-1.0 gstreamer-base-1.0 gstreamer-video-1.0)
25
+    else
26
+      dnl gstreamer-0.10 development package installed?
27
+      PKG_CHECK_MODULES(GSTREAMER_0_10, gstreamer-0.10, GST_0_10=1, GST_0_10=0)
28
+
29
+      if test x$GST_0_10 = x1; then
30
+        AC_MSG_NOTICE(Building gst123 using gstreamer version 0.10)
31
+        PKG_CHECK_MODULES(GSTREAMER, gstreamer-0.10 gstreamer-base-0.10 gstreamer-interfaces-0.10 gstreamer-video-0.10)
32
+      else
33
+        AC_MSG_ERROR(Neither gstreamer-0.10 nor gstreamer-1.0 was found using pkg-config.)
34
+      fi
35
+    fi
36
     AC_SUBST(GSTREAMER_CFLAGS)
37
     AC_SUBST(GSTREAMER_LIBS)
38
 )
39
@@ -66,7 +82,7 @@
40
 AC_DEFUN(AC_GSTREAMER_GTK_REQUIREMENTS,
41
 
42
     dnl We need GLib with friends
43
-    PKG_CHECK_MODULES(GSTREAMER_GTK, gstreamer-base-0.10 gtk+-2.0 gstreamer-interfaces-0.10 gstreamer-video-0.10)
44
+    PKG_CHECK_MODULES(GSTREAMER_GTK, gtk+-2.0)
45
     AC_SUBST(GSTREAMER_GTK_CFLAGS)
46
     AC_SUBST(GSTREAMER_GTKLIBS)
47
 )
48
gst123-0.3.1.tar.bz2/docs/Makefile.in -> gst123-0.3.3.tar.bz2/docs/Makefile.in Changed
78
 
1
@@ -1,4 +1,4 @@
2
-# Makefile.in generated by automake 1.11.4 from Makefile.am.
3
+# Makefile.in generated by automake 1.11.3 from Makefile.am.
4
 # @configure_input@
5
 
6
 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
7
@@ -15,23 +15,6 @@
8
 
9
 @SET_MAKE@
10
 VPATH = @srcdir@
11
-am__make_dryrun = \
12
-  { \
13
-    am__dry=no; \
14
-    case $$MAKEFLAGS in \
15
-      *\\\ \   *) \
16
-        echo 'am--echo: ; @echo "AM"  OK' | $(MAKE) -f - 2>/dev/null \
17
-          | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
18
-      *) \
19
-        for am__flg in $$MAKEFLAGS; do \
20
-          case $$am__flg in \
21
-            *=*|--*) ;; \
22
-            *n*) am__dry=yes; break;; \
23
-          esac; \
24
-        done;; \
25
-    esac; \
26
-    test $$am__dry = yes; \
27
-  }
28
 pkgdatadir = $(datadir)/@PACKAGE@
29
 pkgincludedir = $(includedir)/@PACKAGE@
30
 pkglibdir = $(libdir)/@PACKAGE@
31
@@ -67,11 +50,6 @@
32
 am__v_at_0 = @
33
 SOURCES =
34
 DIST_SOURCES =
35
-am__can_run_installinfo = \
36
-  case $$AM_UPDATE_INFO_DIR in \
37
-    n|no|NO) false;; \
38
-    *) (install-info --version) >/dev/null 2>&1;; \
39
-  esac
40
 am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
41
 am__vpath_adj = case $$p in \
42
     $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
43
@@ -126,6 +104,10 @@
44
 ECHO_T = @ECHO_T@
45
 EXEEXT = @EXEEXT@
46
 GROFF = @GROFF@
47
+GSTREAMER_0_10_CFLAGS = @GSTREAMER_0_10_CFLAGS@
48
+GSTREAMER_0_10_LIBS = @GSTREAMER_0_10_LIBS@
49
+GSTREAMER_1_0_CFLAGS = @GSTREAMER_1_0_CFLAGS@
50
+GSTREAMER_1_0_LIBS = @GSTREAMER_1_0_LIBS@
51
 GSTREAMER_CFLAGS = @GSTREAMER_CFLAGS@
52
 GSTREAMER_GTKLIBS = @GSTREAMER_GTKLIBS@
53
 GSTREAMER_GTK_CFLAGS = @GSTREAMER_GTK_CFLAGS@
54
@@ -247,18 +229,11 @@
55
 $(am__aclocal_m4_deps):
56
 install-man1: $(dist_man_MANS)
57
    @$(NORMAL_INSTALL)
58
-   @list1=''; \
59
-   list2='$(dist_man_MANS)'; \
60
-   test -n "$(man1dir)" \
61
-     && test -n "`echo $$list1$$list2`" \
62
-     || exit 0; \
63
-   echo " $(MKDIR_P) '$(DESTDIR)$(man1dir)'"; \
64
-   $(MKDIR_P) "$(DESTDIR)$(man1dir)" || exit 1; \
65
-   { for i in $$list1; do echo "$$i"; done;  \
66
-   if test -n "$$list2"; then \
67
-     for i in $$list2; do echo "$$i"; done \
68
-       | sed -n '/\.1a-z*$$/p'; \
69
-   fi; \
70
+   test -z "$(man1dir)" || $(MKDIR_P) "$(DESTDIR)$(man1dir)"
71
+   @list=''; test -n "$(man1dir)" || exit 0; \
72
+   { for i in $$list; do echo "$$i"; done; \
73
+   l2='$(dist_man_MANS)'; for i in $$l2; do echo "$$i"; done | \
74
+     sed -n '/\.1a-z*$$/p'; \
75
    } | while read p; do \
76
      if test -f $$p; then d=; else d="$(srcdir)/"; fi; \
77
      echo "$$d$$p"; echo "$$p"; \
78
gst123-0.3.1.tar.bz2/docs/gst123.1 -> gst123-0.3.3.tar.bz2/docs/gst123.1 Changed
44
 
1
@@ -1,4 +1,4 @@
2
-.TH "GST123" "1" "2012\-04\-20" "Revision 716" "gst123 Manual Page"
3
+.TH "GST123" "1" "2013\-04\-18" "Revision 921" "gst123 Manual Page"
4
 
5
 .SH NAME
6
 
7
@@ -60,6 +60,10 @@
8
 Show a list of available audio visualization plugins which can be used with the -v option.
9
 .PP
10
 .TP
11
+\fB-k\fR \fI<n>\fR, \fB--skip\fR \fI<n>\fR
12
+Skip the first 'n' seconds of each file.
13
+.PP
14
+.TP
15
 \fB-q\fR, \fB--quiet\fR
16
 Don't display any messages (title, codec, ui feedback).
17
 .PP
18
@@ -139,6 +143,14 @@
19
 The ALSA driver; when used without argument (as in -a alsa), the ALSA driver uses the default device. To select an ALSA device, its possible to use for example alsa=hw:1 (which will use the hw:1 ALSA device).
20
 .PP
21
 .TP
22
+\fBoss\fR=\fI<device>\fR
23
+The OSS driver; when used without argument (as in -a oss), the OSS driver uses the default device. The device can be specified using for example oss=/dev/dsp1 (which would use the OSS device /dev/dsp1).
24
+.PP
25
+.TP
26
+\fBpulse\fR=\fI<device>\fR
27
+The PulseAudio driver. This driver optionally accepts a device name using the pulse=\fI<device>\fR syntax.
28
+.PP
29
+.TP
30
 \fBjack\fR
31
 The JACK driver. Device selection is not supported in this case.
32
 .PP
33
@@ -146,10 +158,6 @@
34
 \fBnone\fR
35
 Dummy output driver, will not output any audio.
36
 .PP
37
-.TP
38
-\fBoss\fR=\fI<device>\fR
39
-The OSS driver; when used without argument (as in -a oss), the OSS driver uses the default device. The device can be specified using for example oss=/dev/dsp1 (which would use the OSS device /dev/dsp1).
40
-.PP
41
 
42
 .SH SEE ALSO
43
 
44
gst123-0.3.1.tar.bz2/src/Makefile.am -> gst123-0.3.3.tar.bz2/src/Makefile.am Changed
9
 
1
@@ -7,5 +7,6 @@
2
                  options.cc options.h microconf.cc microconf.h configfile.cc configfile.h \
3
         uri.cc playlist.cc m3uparser.cc plsparser.cc uri.h playlist.h m3uparser.h plsparser.h \
4
         iostream.cc iostream.h networkstream.cc filestream.cc consolestream.cc \
5
-        httpstream.cc visualization.h visualization.cc msg.h msg.cc typefinder.h typefinder.cc
6
+        httpstream.cc visualization.h visualization.cc msg.h msg.cc typefinder.h typefinder.cc \
7
+                 compat.h compat.cc
8
 gst123_LDADD = $(GSTREAMER_LIBS) $(GSTREAMER_GTK_LIBS) $(NCURSES_LIBS)
9
gst123-0.3.1.tar.bz2/src/Makefile.in -> gst123-0.3.3.tar.bz2/src/Makefile.in Changed
94
 
1
@@ -1,4 +1,4 @@
2
-# Makefile.in generated by automake 1.11.4 from Makefile.am.
3
+# Makefile.in generated by automake 1.11.3 from Makefile.am.
4
 # @configure_input@
5
 
6
 # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
7
@@ -16,23 +16,6 @@
8
 @SET_MAKE@
9
 
10
 VPATH = @srcdir@
11
-am__make_dryrun = \
12
-  { \
13
-    am__dry=no; \
14
-    case $$MAKEFLAGS in \
15
-      *\\\ \   *) \
16
-        echo 'am--echo: ; @echo "AM"  OK' | $(MAKE) -f - 2>/dev/null \
17
-          | grep '^AM OK$$' >/dev/null || am__dry=yes;; \
18
-      *) \
19
-        for am__flg in $$MAKEFLAGS; do \
20
-          case $$am__flg in \
21
-            *=*|--*) ;; \
22
-            *n*) am__dry=yes; break;; \
23
-          esac; \
24
-        done;; \
25
-    esac; \
26
-    test $$am__dry = yes; \
27
-  }
28
 pkgdatadir = $(datadir)/@PACKAGE@
29
 pkgincludedir = $(includedir)/@PACKAGE@
30
 pkglibdir = $(libdir)/@PACKAGE@
31
@@ -69,7 +52,7 @@
32
    iostream.$(OBJEXT) networkstream.$(OBJEXT) \
33
    filestream.$(OBJEXT) consolestream.$(OBJEXT) \
34
    httpstream.$(OBJEXT) visualization.$(OBJEXT) msg.$(OBJEXT) \
35
-   typefinder.$(OBJEXT)
36
+   typefinder.$(OBJEXT) compat.$(OBJEXT)
37
 gst123_OBJECTS = $(am_gst123_OBJECTS)
38
 am__DEPENDENCIES_1 =
39
 gst123_DEPENDENCIES = $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \
40
@@ -107,11 +90,6 @@
41
 am__v_GEN_0 = @echo "  GEN   " $@;
42
 SOURCES = $(gst123_SOURCES)
43
 DIST_SOURCES = $(gst123_SOURCES)
44
-am__can_run_installinfo = \
45
-  case $$AM_UPDATE_INFO_DIR in \
46
-    n|no|NO) false;; \
47
-    *) (install-info --version) >/dev/null 2>&1;; \
48
-  esac
49
 ETAGS = etags
50
 CTAGS = ctags
51
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
52
@@ -137,6 +115,10 @@
53
 ECHO_T = @ECHO_T@
54
 EXEEXT = @EXEEXT@
55
 GROFF = @GROFF@
56
+GSTREAMER_0_10_CFLAGS = @GSTREAMER_0_10_CFLAGS@
57
+GSTREAMER_0_10_LIBS = @GSTREAMER_0_10_LIBS@
58
+GSTREAMER_1_0_CFLAGS = @GSTREAMER_1_0_CFLAGS@
59
+GSTREAMER_1_0_LIBS = @GSTREAMER_1_0_LIBS@
60
 GSTREAMER_CFLAGS = @GSTREAMER_CFLAGS@
61
 GSTREAMER_GTKLIBS = @GSTREAMER_GTKLIBS@
62
 GSTREAMER_GTK_CFLAGS = @GSTREAMER_GTK_CFLAGS@
63
@@ -226,7 +208,8 @@
64
                  options.cc options.h microconf.cc microconf.h configfile.cc configfile.h \
65
         uri.cc playlist.cc m3uparser.cc plsparser.cc uri.h playlist.h m3uparser.h plsparser.h \
66
         iostream.cc iostream.h networkstream.cc filestream.cc consolestream.cc \
67
-        httpstream.cc visualization.h visualization.cc msg.h msg.cc typefinder.h typefinder.cc
68
+        httpstream.cc visualization.h visualization.cc msg.h msg.cc typefinder.h typefinder.cc \
69
+                 compat.h compat.cc
70
 
71
 gst123_LDADD = $(GSTREAMER_LIBS) $(GSTREAMER_GTK_LIBS) $(NCURSES_LIBS)
72
 all: all-am
73
@@ -265,11 +248,8 @@
74
 $(am__aclocal_m4_deps):
75
 install-binPROGRAMS: $(bin_PROGRAMS)
76
    @$(NORMAL_INSTALL)
77
+   test -z "$(bindir)" || $(MKDIR_P) "$(DESTDIR)$(bindir)"
78
    @list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \
79
-   if test -n "$$list"; then \
80
-     echo " $(MKDIR_P) '$(DESTDIR)$(bindir)'"; \
81
-     $(MKDIR_P) "$(DESTDIR)$(bindir)" || exit 1; \
82
-   fi; \
83
    for p in $$list; do echo "$$p $$p"; done | \
84
    sed 's/$(EXEEXT)$$//' | \
85
    while read p p1; do if test -f $$p; \
86
@@ -313,6 +293,7 @@
87
 distclean-compile:
88
    -rm -f *.tab.c
89
 
90
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/compat.Po@am__quote@
91
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/configfile.Po@am__quote@
92
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/consolestream.Po@am__quote@
93
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/filestream.Po@am__quote@
94
gst123-0.3.3.tar.bz2/src/compat.cc Added
209
 
1
@@ -0,0 +1,207 @@
2
+/* GST123 - GStreamer based command line media player
3
+ * Copyright (C) 2013 Stefan Westerfeld
4
+ *
5
+ * This library is free software; you can redistribute it and/or
6
+ * modify it under the terms of the GNU Lesser General Public
7
+ * License as published by the Free Software Foundation; either
8
+ * version 2 of the License, or (at your option) any later version.
9
+ *
10
+ * This library is distributed in the hope that it will be useful,
11
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
12
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
13
+ * Lesser General Public License for more details.
14
+ *
15
+ * You should have received a copy of the GNU Lesser General
16
+ * Public License along with this library; if not, write to the
17
+ * Free Software Foundation, Inc., 59 Temple Place, Suite 330,
18
+ * Boston, MA 02111-1307, USA.
19
+ */
20
+
21
+#include "compat.h"
22
+
23
+#include <gst/video/video.h>
24
+
25
+#if GST_CHECK_VERSION(1,0,0)
26
+#include <gst/video/videooverlay.h>
27
+#else
28
+#include <gst/interfaces/xoverlay.h>
29
+#endif
30
+
31
+using namespace Gst123;
32
+using Compat::IteratorFunc;
33
+
34
+struct IteratorOp
35
+{
36
+  IteratorFunc  func;
37
+  void         *user_data;
38
+};
39
+
40
+#if GST_CHECK_VERSION(1,0,0)
41
+
42
+bool
43
+Compat::element_query_position (GstElement *element, GstFormat format, gint64 *cur_pos)
44
+{
45
+  return gst_element_query_position (element, format, cur_pos);
46
+}
47
+
48
+bool
49
+Compat::element_query_duration (GstElement *element, GstFormat format, gint64 *cur_pos)
50
+{
51
+  return gst_element_query_duration (element, format, cur_pos);
52
+}
53
+
54
+bool
55
+Compat::video_get_size (GstPad *pad, int *width, int *height)
56
+{
57
+  bool result = false;
58
+
59
+  if (GstCaps *caps = gst_pad_get_current_caps (pad))
60
+    {
61
+      GstVideoInfo info;
62
+
63
+      gst_video_info_init (&info);
64
+      // get video size (if any)
65
+      if (gst_video_info_from_caps (&info, caps))
66
+        {
67
+          *width = info.width;
68
+          *height = info.height;
69
+
70
+          result = true;
71
+        }
72
+
73
+      gst_caps_unref (caps);
74
+    }
75
+  return result;
76
+}
77
+
78
+static void
79
+call_op_func (const GValue *evalue, gpointer user_data)
80
+{
81
+  GstElement *element = GST_ELEMENT (g_value_get_object (evalue));
82
+  IteratorOp *op = (IteratorOp *) user_data;
83
+  op->func (element, op->user_data);
84
+}
85
+
86
+void
87
+Compat::iterator_foreach (GstIterator *iterator, IteratorFunc func, gpointer user_data)
88
+{
89
+  IteratorOp op;
90
+  op.func = func;
91
+  op.user_data = user_data;
92
+  gst_iterator_foreach (iterator, call_op_func, &op);
93
+}
94
+
95
+void
96
+Compat::video_overlay_set_window_handle (GstMessage *msg, guintptr id)
97
+{
98
+  gst_video_overlay_set_window_handle (GST_VIDEO_OVERLAY (GST_MESSAGE_SRC (msg)), id);
99
+}
100
+
101
+GstElement*
102
+Compat::create_playbin (const char *name)
103
+{
104
+  return gst_element_factory_make ("playbin", name);
105
+}
106
+
107
+bool
108
+Compat::is_stream_start_message (GstMessage *msg)
109
+{
110
+  return GST_MESSAGE_TYPE (msg) == GST_MESSAGE_STREAM_START;
111
+}
112
+
113
+GstCaps*
114
+Compat::pad_get_current_caps (GstPad *pad)
115
+{
116
+  return gst_pad_get_current_caps (pad);
117
+}
118
+
119
+bool
120
+Compat::is_video_overlay_prepare_window_handle_message (GstMessage *msg)
121
+{
122
+  return gst_is_video_overlay_prepare_window_handle_message (msg);
123
+}
124
+
125
+GstRegistry*
126
+Compat::registry_get()
127
+{
128
+  return gst_registry_get();
129
+}
130
+
131
+
132
+#else
133
+
134
+bool
135
+Compat::element_query_position (GstElement *element, GstFormat format, gint64 *cur_pos)
136
+{
137
+  return gst_element_query_position (element, &format, cur_pos);
138
+}
139
+
140
+bool
141
+Compat::element_query_duration (GstElement *element, GstFormat format, gint64 *cur_pos)
142
+{
143
+  return gst_element_query_duration (element, &format, cur_pos);
144
+}
145
+
146
+bool
147
+Compat::video_get_size (GstPad *pad, int *width, int *height)
148
+{
149
+  return gst_video_get_size (GST_PAD (pad), width, height);
150
+}
151
+
152
+static void
153
+call_op_func (gpointer eptr, gpointer user_data)
154
+{
155
+  GstElement *element = GST_ELEMENT (eptr);
156
+  IteratorOp *op = (IteratorOp *) user_data;
157
+  op->func (element, op->user_data);
158
+}
159
+
160
+void
161
+Compat::iterator_foreach (GstIterator *iterator, IteratorFunc func, gpointer user_data)
162
+{
163
+  IteratorOp op;
164
+  op.func = func;
165
+  op.user_data = user_data;
166
+  gst_iterator_foreach (iterator, call_op_func, &op);
167
+}
168
+
169
+void
170
+Compat::video_overlay_set_window_handle (GstMessage *msg, guintptr id)
171
+{
172
+  gst_x_overlay_set_xwindow_id (GST_X_OVERLAY (GST_MESSAGE_SRC (msg)), id);
173
+}
174
+
175
+GstElement*
176
+Compat::create_playbin (const char *name)
177
+{
178
+  return gst_element_factory_make ("playbin2", name);
179
+}
180
+
181
+bool
182
+Compat::is_stream_start_message (GstMessage *msg)
183
+{
184
+  return GST_MESSAGE_TYPE (msg) == GST_MESSAGE_ELEMENT &&
185
+         gst_structure_has_name (msg->structure, "playbin2-stream-changed");
186
+}
187
+
188
+GstCaps*
189
+Compat::pad_get_current_caps (GstPad *pad)
190
+{
191
+  return gst_pad_get_negotiated_caps (pad);
192
+}
193
+
194
+bool
195
+Compat::is_video_overlay_prepare_window_handle_message (GstMessage *msg)
196
+{
197
+  return GST_MESSAGE_TYPE (msg) == GST_MESSAGE_ELEMENT &&
198
+         gst_structure_has_name (msg->structure, "prepare-xwindow-id");
199
+}
200
+
201
+GstRegistry*
202
+Compat::registry_get()
203
+{
204
+  return gst_registry_get_default();
205
+}
206
+
207
+
208
+#endif
209
gst123-0.3.3.tar.bz2/src/compat.h Added
52
 
1
@@ -0,0 +1,50 @@
2
+/* GST123 - GStreamer based command line media player
3
+ * Copyright (C) 2013 Stefan Westerfeld
4
+ *
5
+ * This library is free software; you can redistribute it and/or
6
+ * modify it under the terms of the GNU Lesser General Public
7
+ * License as published by the Free Software Foundation; either
8
+ * version 2 of the License, or (at your option) any later version.
9
+ *
10
+ * This library is distributed in the hope that it will be useful,
11
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
12
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
13
+ * Lesser General Public License for more details.
14
+ *
15
+ * You should have received a copy of the GNU Lesser General
16
+ * Public License along with this library; if not, write to the
17
+ * Free Software Foundation, Inc., 59 Temple Place, Suite 330,
18
+ * Boston, MA 02111-1307, USA.
19
+ */
20
+
21
+#ifndef __GST123_COMPAT__
22
+#define __GST123_COMPAT__
23
+
24
+#include <gst/gst.h>
25
+
26
+namespace Gst123
27
+{
28
+
29
+namespace Compat
30
+{
31
+
32
+typedef void (*IteratorFunc) (GstElement *element, gpointer user_data);
33
+
34
+bool element_query_position (GstElement *element, GstFormat format, gint64 *cur_pos);
35
+bool element_query_duration (GstElement *element, GstFormat format, gint64 *cur_pos);
36
+bool video_get_size (GstPad *pad, int *width, int *height);
37
+bool is_video_overlay_prepare_window_handle_message (GstMessage *msg);
38
+bool is_stream_start_message (GstMessage *msg);
39
+
40
+void iterator_foreach (GstIterator *iterator, IteratorFunc func, gpointer user_data);
41
+void video_overlay_set_window_handle (GstMessage *msg, guintptr id);
42
+
43
+GstElement* create_playbin (const char *name);
44
+GstCaps *pad_get_current_caps (GstPad *pad);
45
+GstRegistry *registry_get();
46
+
47
+}
48
+
49
+}
50
+
51
+#endif
52
gst123-0.3.1.tar.bz2/src/gst123.cc -> gst123-0.3.3.tar.bz2/src/gst123.cc Changed
321
 
1
@@ -18,7 +18,6 @@
2
  * Boston, MA 02111-1307, USA.
3
  */
4
 #include <gst/gst.h>
5
-#include <gst/interfaces/xoverlay.h>
6
 #include <gst/video/video.h>
7
 #include <gdk/gdkx.h>
8
 #include <gtk/gtk.h>
9
@@ -36,6 +35,7 @@
10
 #include "visualization.h"
11
 #include "msg.h"
12
 #include "typefinder.h"
13
+#include "compat.h"
14
 #include <vector>
15
 #include <string>
16
 #include <list>
17
@@ -97,13 +97,42 @@
18
   return result;
19
 }
20
 
21
+static string
22
+get_basename (const string& path)
23
+{
24
+  char *basename_c = g_path_get_basename (path.c_str());
25
+  string result = basename_c;
26
+  g_free (basename_c);
27
+
28
+  return result;
29
+}
30
+
31
 void
32
-force_aspect_ratio (gpointer element, gpointer userdata)
33
+force_aspect_ratio (GstElement *element, gpointer userdata)
34
 {
35
   if (g_object_class_find_property (G_OBJECT_GET_CLASS (G_OBJECT (element)), "force-aspect-ratio"))
36
     g_object_set (G_OBJECT (element), "force-aspect-ratio", TRUE, NULL);
37
 }
38
 
39
+static bool
40
+filename2uri (string& uri)
41
+{
42
+  GError *err = NULL;
43
+
44
+  char *xuri = g_filename_to_uri (uri.c_str(), NULL, &err);
45
+  uri = xuri;
46
+  g_free (xuri);
47
+
48
+  if (err != NULL)
49
+    {
50
+      g_critical ("Unable to convert to URI: %s", err->message);
51
+      g_error_free (err);
52
+
53
+      return false;
54
+    }
55
+  return true;
56
+}
57
+
58
 struct Options options;
59
 
60
 struct Player : public KeyHandler
61
@@ -143,11 +172,13 @@
62
   void
63
   add_uri (string uri)
64
   {
65
-    if (uri.find (":/") == uri.npos)
66
+    if (!gst_uri_is_valid (uri.c_str()))
67
       {
68
    if (!g_path_is_absolute (uri.c_str()))
69
      uri = g_get_current_dir() + string (G_DIR_SEPARATOR + uri);
70
-   uri = "file://" + uri;
71
+
72
+        if (!filename2uri (uri))
73
+          return;
74
       }
75
     uris.push_back (uri);
76
   }
77
@@ -277,7 +308,7 @@
78
               {
79
                 Msg::print ("\nPlaying %s\n", uri.c_str());
80
 
81
-                gtk_interface.set_title (g_basename (uri.c_str()));
82
+                gtk_interface.set_title (get_basename (uri));
83
 
84
                 video_size_width = 0;
85
                 video_size_height = 0;
86
@@ -286,6 +317,12 @@
87
                 g_object_set (G_OBJECT (playbin), "uri", uri.c_str(), NULL);
88
                 gst_element_set_state (playbin, GST_STATE_PLAYING);
89
 
90
+                if (options.skip > 0)
91
+                  {
92
+                    // block until state changed and seek to skip position
93
+                    gst_element_get_state (playbin, NULL, NULL, GST_CLOCK_TIME_NONE);
94
+                    seek (options.skip * GST_SECOND);
95
+                  }
96
                 return; // -> done
97
               }
98
           }
99
@@ -324,9 +361,8 @@
100
   void
101
   relative_seek (double displacement)
102
   {
103
-    GstFormat fmt = GST_FORMAT_TIME;
104
-    gint64    cur_pos;
105
-    gst_element_query_position (playbin, &fmt, &cur_pos);
106
+    gint64 cur_pos;
107
+    Compat::element_query_position (playbin, GST_FORMAT_TIME, &cur_pos);
108
 
109
     double new_pos_sec = cur_pos * (1.0 / GST_SECOND) + displacement;
110
     seek (new_pos_sec * GST_SECOND);
111
@@ -440,27 +476,27 @@
112
 static void
113
 caps_set_cb (GObject *pad, GParamSpec *pspec, class Player* player)
114
 {
115
-  if (GstCaps *caps = gst_pad_get_negotiated_caps (GST_PAD (pad)))
116
+  if (GstCaps *caps = Compat::pad_get_current_caps (GST_PAD (pad)))
117
     {
118
-      // get video size (if any)
119
-      gst_video_get_size (GST_PAD (pad), &player->video_size_width, &player->video_size_height);
120
-
121
-      // resize window to match video size
122
-      player->normal_size();
123
-
124
+      if (Compat::video_get_size (GST_PAD (pad), &player->video_size_width, &player->video_size_height))
125
+        {
126
+          // resize window to match video size
127
+          player->normal_size();
128
+        }
129
       gst_caps_unref (caps);
130
     }
131
 }
132
 
133
 static void
134
-collect_element (gpointer element,
135
+collect_element (GstElement *element,
136
                  gpointer list_ptr)
137
 {
138
   /* seems that if we use push_front, the pipeline gets displayed in the
139
    * right order; but I don't know if thats a guarantee of an accident
140
    */
141
   list<GstElement *>& elements = *(list<GstElement*> *)list_ptr;
142
-  elements.push_front (GST_ELEMENT (element));
143
+  gst_object_ref (element);
144
+  elements.push_front (element);
145
 }
146
 
147
 static string
148
@@ -523,56 +559,63 @@
149
    if (options.verbose && player.last_state != GST_STATE_PLAYING && state == GST_STATE_PLAYING)
150
      {
151
        list<GstElement *> elements;
152
+
153
        GstIterator *iterator = gst_bin_iterate_recurse (GST_BIN (player.playbin));
154
-       gst_iterator_foreach (iterator, collect_element, &elements);
155
+       Compat::iterator_foreach (iterator, collect_element, &elements);
156
+
157
        string print_elements = collect_print_elements (GST_ELEMENT (player.playbin), elements);
158
        player.overwrite_time_display();
159
        Msg::print ("\ngstreamer pipeline contains: %s\n", print_elements.c_str());
160
+
161
+            list<GstElement *>::iterator it;
162
+            for (it = elements.begin(); it != elements.end(); it++)
163
+              gst_object_unref (*it);
164
      }
165
    player.last_state = state;
166
       }
167
       break;
168
     case GST_MESSAGE_ELEMENT:
169
       {
170
-        if (gst_structure_has_name (message->structure, "prepare-xwindow-id") && gtk_interface.init_ok())
171
+        if (Compat::is_video_overlay_prepare_window_handle_message (message) && gtk_interface.init_ok())
172
           {
173
             // show gtk window to display video in
174
             gtk_interface.show();
175
-            gst_x_overlay_set_xwindow_id (GST_X_OVERLAY (GST_MESSAGE_SRC (message)),
176
-                                          GDK_WINDOW_XWINDOW (gtk_interface.window()->window));
177
-          }
178
-        else if (gst_structure_has_name (message->structure, "playbin2-stream-changed"))
179
-          {
180
-            // try to figure out the video size
181
-            GstElement *videosink = NULL;
182
-            g_object_get (G_OBJECT (player.playbin), "video-sink", &videosink, NULL);
183
-            if (videosink && !options.novideo)
184
-              {
185
-                // Find an sink element that has "force-aspect-ratio" property & set it
186
-                // to TRUE:
187
-                GstIterator *iterator = gst_bin_iterate_sinks (GST_BIN (videosink));
188
-                gst_iterator_foreach (iterator, force_aspect_ratio, NULL);
189
-
190
-                if (GstPad* pad = gst_element_get_static_pad (videosink, "sink"))
191
-                  {
192
-                    if (GstCaps *caps = gst_pad_get_negotiated_caps (pad))
193
-                      {
194
-                        caps_set_cb (G_OBJECT (pad), NULL, &player);
195
-                        gst_caps_unref (caps);
196
-                      }
197
-
198
-                    g_signal_connect (pad, "notify::caps", G_CALLBACK (caps_set_cb), &player);
199
-                    gst_object_unref (GST_OBJECT (pad));
200
-                  }
201
-                gst_object_unref (GST_OBJECT (videosink));
202
-              }
203
+            Compat::video_overlay_set_window_handle (message, GDK_WINDOW_XWINDOW (gtk_interface.window()->window));
204
           }
205
       }
206
+      break;
207
     default:
208
       /* unhandled message */
209
       break;
210
   }
211
 
212
+  if (Compat::is_stream_start_message (message))
213
+    {
214
+      // try to figure out the video size
215
+      GstElement *videosink = NULL;
216
+      g_object_get (G_OBJECT (player.playbin), "video-sink", &videosink, NULL);
217
+      if (videosink && !options.novideo)
218
+        {
219
+          // Find an sink element that has "force-aspect-ratio" property & set it
220
+          // to TRUE:
221
+          GstIterator *iterator = gst_bin_iterate_sinks (GST_BIN (videosink));
222
+          Compat::iterator_foreach (iterator, force_aspect_ratio, NULL);
223
+
224
+          if (GstPad* pad = gst_element_get_static_pad (videosink, "sink"))
225
+            {
226
+              if (GstCaps *caps = Compat::pad_get_current_caps (pad))
227
+                {
228
+                  caps_set_cb (G_OBJECT (pad), NULL, &player);
229
+                  gst_caps_unref (caps);
230
+                }
231
+
232
+              g_signal_connect (pad, "notify::caps", G_CALLBACK (caps_set_cb), &player);
233
+              gst_object_unref (GST_OBJECT (pad));
234
+            }
235
+          gst_object_unref (GST_OBJECT (videosink));
236
+        }
237
+    }
238
+
239
   /* remove message from the queue */
240
   return TRUE;
241
 }
242
@@ -605,12 +648,12 @@
243
 cb_print_position (gpointer *data)
244
 {
245
   Player& player = *(Player *)data;
246
-  GstFormat fmt = GST_FORMAT_TIME;
247
   gint64 pos, len;
248
 
249
   player.display_tags();
250
 
251
-  if (gst_element_query_position (player.playbin, &fmt, &pos) && gst_element_query_duration (player.playbin, &fmt, &len))
252
+  if (Compat::element_query_position (player.playbin, GST_FORMAT_TIME, &pos) &&
253
+      Compat::element_query_duration (player.playbin, GST_FORMAT_TIME, &len))
254
     {
255
       GTimeVal tv_pos, tv_len;
256
       GST_TIME_TO_TIMEVAL (pos, tv_pos);
257
@@ -640,12 +683,24 @@
258
       else
259
         blanks += "         ";
260
       Msg::print ("%s%s\r", status.c_str(), blanks.c_str());
261
+      Msg::flush();
262
     }
263
 
264
   /* call me again */
265
   return TRUE;
266
 }
267
 
268
+static gboolean
269
+idle_start_player (gpointer *data)
270
+{
271
+  Player& player = *(Player *)data;
272
+
273
+  player.play_next();
274
+
275
+  /* do not call me again */
276
+  return FALSE;
277
+}
278
+
279
 
280
 static inline bool
281
 is_directory (const string& path)
282
@@ -786,9 +841,6 @@
283
   Player player;
284
 
285
   /* Setup options */
286
-  if (!g_thread_supported())
287
-    g_thread_init (NULL);
288
-
289
   options.parse (argc, argv);
290
 
291
   /* init GStreamer */
292
@@ -842,7 +894,7 @@
293
         printf ("%s", options.usage.c_str());
294
       return -1;
295
     }
296
-  player.playbin = gst_element_factory_make ("playbin2", "play");
297
+  player.playbin = Compat::create_playbin ("play");
298
   if (options.novideo)
299
     {
300
       GstElement *fakesink = gst_element_factory_make ("fakesink", "novid");
301
@@ -869,6 +921,8 @@
302
             audio_sink = gst_element_factory_make ("osssink", "ossaudioout");
303
           else if (strcmp (audio_driver, "jack") == 0)
304
             audio_sink = gst_element_factory_make ("jackaudiosink", "jackaudioout");
305
+          else if (strcmp (audio_driver, "pulse") == 0)
306
+            audio_sink = gst_element_factory_make ("pulsesink", "pulseaudioout");
307
           else if (strcmp (audio_driver, "none") == 0)
308
             audio_sink = gst_element_factory_make ("fakesink", "fakeaudioout");
309
           else
310
@@ -886,9 +940,9 @@
311
     }
312
   gst_bus_add_watch (gst_pipeline_get_bus (GST_PIPELINE (player.playbin)), my_bus_callback, &player);
313
   g_timeout_add (130, (GSourceFunc) cb_print_position, &player);
314
+  g_idle_add ((GSourceFunc) idle_start_player, &player);
315
   signal (SIGINT, sigint_handler);
316
   g_usignal_add (SIGINT, sigint_usr_code, &player);
317
-  player.play_next();
318
 
319
   /* now run */
320
   terminal.init (player.loop, &player);
321
gst123-0.3.1.tar.bz2/src/msg.cc -> gst123-0.3.3.tar.bz2/src/msg.cc Changed
15
 
1
@@ -41,6 +41,13 @@
2
     }
3
 }
4
 
5
+void
6
+flush()
7
+{
8
+  if (!Options::the().quiet)
9
+    fflush (stdout);
10
+}
11
+
12
 }
13
 
14
 }
15
gst123-0.3.1.tar.bz2/src/msg.h -> gst123-0.3.3.tar.bz2/src/msg.h Changed
9
 
1
@@ -27,6 +27,7 @@
2
 {
3
 
4
 void print (const char *format, ...);
5
+void flush();
6
 
7
 }
8
 
9
gst123-0.3.1.tar.bz2/src/options.cc -> gst123-0.3.3.tar.bz2/src/options.cc Changed
26
 
1
@@ -21,6 +21,7 @@
2
 #include <gst/gst.h>
3
 #include <gtk/gtk.h>
4
 #include <X11/Xlib.h>
5
+#include <stdlib.h>
6
 
7
 #include "config.h"
8
 #include "options.h"
9
@@ -47,6 +48,7 @@
10
   audio_output = NULL;
11
   print_visualization_list = FALSE;
12
   visualization = NULL;
13
+  skip = 0;
14
 
15
   string default_audio_output = ConfigFile::the().audio_output();
16
   if (default_audio_output != "")
17
@@ -86,6 +88,8 @@
18
       "set visualization plugin to use for audio playback", "<plugin_name>"},
19
     {"visualization-list", 'V', 0, G_OPTION_ARG_NONE, &instance->print_visualization_list,
20
       "show available visualization plugins", NULL },
21
+    {"skip", 'k', 0, G_OPTION_ARG_DOUBLE, &instance->skip,
22
+      "Skip the first 'n' seconds", "<n>"},
23
     {"quiet", 'q', 0, G_OPTION_ARG_NONE, &instance->quiet,
24
       "don't display any messages", NULL},
25
     {G_OPTION_REMAINING, '\0', 0, G_OPTION_ARG_FILENAME_ARRAY, &instance->uris, "Movies to play", NULL},
26
gst123-0.3.1.tar.bz2/src/options.h -> gst123-0.3.3.tar.bz2/src/options.h Changed
9
 
1
@@ -41,6 +41,7 @@
2
   gboolean      repeat;
3
   gboolean      novideo;
4
   gboolean      print_visualization_list;
5
+  double        skip;
6
   gboolean      quiet;
7
   char        **uris;
8
   std::list<std::string>  playlists;
9
gst123-0.3.1.tar.bz2/src/playlist.cc -> gst123-0.3.3.tar.bz2/src/playlist.cc Changed
13
 
1
@@ -26,6 +26,11 @@
2
 
3
 using namespace Gst123;
4
 
5
+PlaylistParser::~PlaylistParser()
6
+{
7
+  // virtual dtor
8
+}
9
+
10
 Playlist::Playlist (const string& uri_str)
11
 {
12
   string errorstr;
13
gst123-0.3.1.tar.bz2/src/playlist.h -> gst123-0.3.3.tar.bz2/src/playlist.h Changed
10
 
1
@@ -41,6 +41,8 @@
2
   virtual bool identify (IOStream *stream) = 0;
3
   virtual std::string str_error (int error = 0) = 0;
4
 
5
+  virtual ~PlaylistParser();
6
+
7
 protected:
8
   int status;
9
 };
10
gst123-0.3.1.tar.bz2/src/typefinder.cc -> gst123-0.3.3.tar.bz2/src/typefinder.cc Changed
61
 
1
@@ -31,16 +31,16 @@
2
   done = false;
3
 
4
   m_probability = 0;
5
-  mutex = g_mutex_new();
6
-  cond = g_cond_new();
7
+  g_mutex_init (&mutex);
8
+  g_cond_init (&cond);
9
 
10
   run (filename);
11
 }
12
 
13
 TypeFinder::~TypeFinder()
14
 {
15
-  g_cond_free (cond);
16
-  g_mutex_free (mutex);
17
+  g_cond_clear (&cond);
18
+  g_mutex_clear (&mutex);
19
 }
20
 
21
 void
22
@@ -54,10 +54,10 @@
23
       m_probability = probability;
24
     }
25
 
26
-  g_mutex_lock (mutex);
27
+  g_mutex_lock (&mutex);
28
   done = true;
29
-  g_cond_signal (cond);
30
-  g_mutex_unlock (mutex);
31
+  g_cond_signal (&cond);
32
+  g_mutex_unlock (&mutex);
33
 }
34
 
35
 void
36
@@ -93,15 +93,17 @@
37
   gst_element_link_many (filesrc, typefind, fakesink, NULL);
38
   gst_element_set_state (GST_ELEMENT (pipeline), GST_STATE_PLAYING);
39
 
40
-  g_mutex_lock (mutex);
41
-  if (!done)
42
+  g_mutex_lock (&mutex);
43
+  gint64 end_time = g_get_monotonic_time() + 500 * G_TIME_SPAN_MILLISECOND;
44
+  while (!done)
45
     {
46
-      GTimeVal timeout_time;
47
-      g_get_current_time (&timeout_time);
48
-      g_time_val_add (&timeout_time, 500 * 1000);
49
-      g_cond_timed_wait (cond, mutex, &timeout_time);
50
+      if (!g_cond_wait_until (&cond, &mutex, end_time))
51
+        {
52
+          // timeout occurred
53
+          break;
54
+        }
55
     }
56
-  g_mutex_unlock (mutex);
57
+  g_mutex_unlock (&mutex);
58
 
59
   /* unset */
60
   gst_element_set_state (GST_ELEMENT (pipeline), GST_STATE_NULL);
61
gst123-0.3.1.tar.bz2/src/typefinder.h -> gst123-0.3.3.tar.bz2/src/typefinder.h Changed
12
 
1
@@ -40,8 +40,8 @@
2
   std::string   m_type;
3
   std::string   m_subtype;
4
   guint    m_probability;
5
-  GMutex  *mutex;
6
-  GCond   *cond;
7
+  GMutex   mutex;
8
+  GCond    cond;
9
   bool     done;
10
 
11
 public:
12
gst123-0.3.1.tar.bz2/src/visualization.cc -> gst123-0.3.3.tar.bz2/src/visualization.cc Changed
25
 
1
@@ -18,10 +18,14 @@
2
  */
3
 
4
 #include <gst/gst.h>
5
+#include <stdio.h>
6
 
7
+#include "compat.h"
8
 #include "options.h"
9
 #include "visualization.h"
10
 
11
+using namespace Gst123;
12
+
13
 namespace Visualization
14
 {
15
 
16
@@ -42,7 +46,7 @@
17
 static GList *
18
 get_visualization_features()
19
 {
20
-  return gst_registry_feature_filter (gst_registry_get_default(), filter_features, FALSE, NULL);
21
+  return gst_registry_feature_filter (Compat::registry_get(), filter_features, FALSE, NULL);
22
 }
23
 
24
 void
25
Refresh

No build results available

Refresh

No rpmlint results available

Request History
Malcolm Lewis's avatar

malcolmlewis created request over 11 years ago

Updated to version 0.3.3. NOTE: Doesn't build for obsolete/older releases....


Peter Linnell's avatar

mrdocs accepted request over 11 years ago

Thanks