diff -Nru oggvideotools-0.8a/ChangeLog oggvideotools-0.9.1/ChangeLog --- oggvideotools-0.8a/ChangeLog 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/ChangeLog 2016-09-05 08:35:14.000000000 +0000 @@ -84,3 +84,12 @@ google can help much better - release creation reworked - configure reworked and added to trunk + +Version 0.9: +- Bug in oggRingbuffer fixed (Thanks to Bjarne) -> solved problems with ffmpeg ogg implementation +- Manpage cleanup +- fix for gcc 4.7 (used in Fedora 17) + +Version 0.9.1 +- changed over to C++11 and boost (in some minor places). +- Cleanup a lot of things to fit ogg/theora/vorbis API again. diff -Nru oggvideotools-0.8a/CMakeLists.txt oggvideotools-0.9.1/CMakeLists.txt --- oggvideotools-0.8a/CMakeLists.txt 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/CMakeLists.txt 2016-09-05 08:35:14.000000000 +0000 @@ -1,24 +1,24 @@ -cmake_minimum_required(VERSION 2.6) +cmake_minimum_required(VERSION 2.8) PROJECT ( "OggVideoTools" ) SET ( PACKAGE_NAME "oggvideotools" ) -SET ( PACKAGE_VERSION "0.8a" ) -SET ( PACKAGE_BUGREPORT "yorn@gmx.de" ) +SET ( PACKAGE_VERSION "0.9.1" ) +SET ( PACKAGE_BUGREPORT "yorn@gmx.net" ) INCLUDE (CheckIncludeFiles) CHECK_INCLUDE_FILES ( bzero.h HAVE_BZERO_H) CHECK_INCLUDE_FILES ( stdint.h HAVE_STDINT_H ) IF ( $ENV{MAKE_PACKAGE} ) - find_library ( GD_GD_LIBRARY NAMES bgd.lib libgd.a ) + find_library ( GD_GD_LIBRARY NAMES bgd.dll ) find_library ( JPEG_GD_LIBRARY NAMES libjpeg.a libjpeg.lib jpeg.lib ) find_library ( PNG_GD_LIBRARY NAMES libpng.a libpng.lib ) - find_library ( Z_GD_LIBRARY NAMES libz.a ) - SET ( GD_LIBRARIES ${GD_GD_LIBRARY} ${GD_GDA_LIBRARY} ${JPEG_GD_LIBRARY} ${PNG_GD_LIBRARY} ${Z_GD_LIBRAY} ${Z_GD_LIBRARY} ) + find_library ( Z_GD_LIBRARY NAMES libz ) + SET ( GD_LIBRARIES ${GD_GD_LIBRARY} ${JPEG_GD_LIBRARY} ${PNG_GD_LIBRARY} ${Z_GD_LIBRARY} ) find_library ( GD_EXTERNAL NAMES bgd.dll ) - find_library ( THEORADEC_LIBRARIES NAMES libtheoradec.a ) - find_library ( THEORAENC_LIBRARIES NAMES libtheoraenc.a ) + find_library ( THEORADEC_LIBRARIES NAMES libtheoradec ) + find_library ( THEORAENC_LIBRARIES NAMES libtheoraenc ) find_library ( VORBIS_LIBRARIES NAMES libvorbis.a ) find_library ( VORBISENC_LIBRARIES NAMES libvorbisenc.a ) find_library ( OGG_LIBRARIES NAMES libogg.a ) @@ -48,7 +48,7 @@ find_path ( GD_INCLUDE gd.h ) IF ( $ENV{MAKE_PACKAGE} ) -MESSAGE ( "Do not creating package" ) +MESSAGE ( "Do creating package" ) ELSE ( $ENV{MAKE_PACKAGE} ) SET ( ALL_LIBS ) @@ -99,15 +99,15 @@ SET ( STOP_CONFIGURATION true ) ENDIF ( OGG_FOUND ) -IF ( NOT GD_LIBRARY-NOTFOUND AND NOT GD_INCLUDE-NOTFOUND ) +IF ( NOT ${GD_LIBRARY} MATCHES GD_LIBRARY-NOTFOUND ) MESSAGE ( STATUS "GD library and header found" ) SET ( HAVE_LIBGD 1 CACHE INTERNAL "" ) SET ( ALL_LIBS ${ALL_LIBS} ${GD_LIBRARY} ) INCLUDE_DIRECTORIES ( ${GD_INCLUDE} ) -ELSE ( NOT GD_LIBRARY-NOTFOUND AND NOT GD_INCLUDE-NOTFOUND ) +ELSE ( NOT ${GD_LIBRARY} MATCHES GD_LIBRARY-NOTFOUND ) MESSAGE ( STATUS "GD library and/or header NOT found" ) - SET ( STOP_CONFIGURATION true ) -ENDIF ( NOT GD_LIBRARY-NOTFOUND AND NOT GD_INCLUDE-NOTFOUND ) +# SET ( STOP_CONFIGURATION true ) +ENDIF ( NOT ${GD_LIBRARY} MATCHES GD_LIBRARY-NOTFOUND ) IF ( STOP_CONFIGURATION ) MESSAGE ( FATAL_ERROR "Some libraries are missing - stopping configuration" ) @@ -121,9 +121,12 @@ ADD_DEFINITIONS ( -DHAVE_CONFIG_H ) ADD_DEFINITIONS ( "-DPACKAGE_STRING=\"${PACKAGE_NAME}-${PACKAGE_VERSION}\"" ) -ADD_DEFINITIONS ( -D_FILE_OFFSET_BITS=64 ) +ADD_DEFINITIONS ( -D_FILE_OFFSET_BITS=64 -Wno-write-strings ) #ADD_DEFINITIONS ( -DDEBUG ) -#ADD_DEFINITIONS ( -O0 -g ) +ADD_DEFINITIONS ( -O0 -g --std=c++0x -fPIC ) +IF ( HAVE_LIBGD ) + ADD_DEFINITIONS ( -DWITH_GD2LIB ) +ENDIF (HAVE_LIBGD ) INCLUDE_DIRECTORIES ( ${CMAKE_BINARY_DIR} ) @@ -143,13 +146,13 @@ SET(CPACK_PACKAGE_DESCRIPTION_SUMMARY "Ogg Video Tools for video editing") SET(CPACK_PACKAGE_VENDOR "Yorn") -SET(CPACK_PACKAGE_DESCRIPTION_FILE "${CMAKE_SOURCE_DIR}/README.txt") +SET(CPACK_PACKAGE_DESCRIPTION_FILE "${CMAKE_SOURCE_DIR}/README") SET(CPACK_RESOURCE_FILE_README "${CMAKE_SOURCE_DIR}/cpackInfo/ReadMe.rtf") SET(CPACK_RESOURCE_FILE_WELCOME "${CMAKE_SOURCE_DIR}/cpackInfo/Welcome.rtf") SET(CPACK_RESOURCE_FILE_LICENSE "${CMAKE_SOURCE_DIR}/cpackInfo/COPYING.rtf") SET(CPACK_PACKAGE_VERSION_MAJOR "0") -SET(CPACK_PACKAGE_VERSION_MINOR "8") -SET(CPACK_PACKAGE_VERSION_PATCH "a") +SET(CPACK_PACKAGE_VERSION_MINOR "9") +SET(CPACK_PACKAGE_VERSION_PATCH "") SET(CPACK_PACKAGE_INSTALL_DIRECTORY "OggVideoTools") IF(WIN32 AND NOT UNIX) # There is a bug in NSI that does not handle full unix paths properly. Make diff -Nru oggvideotools-0.8a/configure oggvideotools-0.9.1/configure --- oggvideotools-0.8a/configure 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/configure 1970-01-01 00:00:00.000000000 +0000 @@ -1,13 +0,0 @@ -#!/bin/sh -echo -echo "This project has switched to cmake" -echo -mkdir build -cd build -cmake .. -echo -echo "When all has gone right from here, do:" -echo "> cd build" -echo "> make" -echo "> sudo make install" -echo diff -Nru oggvideotools-0.8a/COPYING oggvideotools-0.9.1/COPYING --- oggvideotools-0.8a/COPYING 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/COPYING 2016-09-05 08:35:14.000000000 +0000 @@ -108,8 +108,8 @@ a warranty) and that users may redistribute the program under these conditions, and telling the user how to view a copy of this License. (Exception: if the Program itself is interactive but - does not normally print such an announcement, your work based on - the Program is not required to print an announcement.) + does not normally toString such an announcement, your work based on + the Program is not required to toString an announcement.) These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Program, diff -Nru oggvideotools-0.8a/cpackInfo/COPYING.rtf oggvideotools-0.9.1/cpackInfo/COPYING.rtf --- oggvideotools-0.8a/cpackInfo/COPYING.rtf 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/cpackInfo/COPYING.rtf 2016-09-05 08:35:14.000000000 +0000 @@ -59,7 +59,7 @@ \ b) You must cause any work that you distribute or publish, that in whole or in part contains or is derived from the Program or any part thereof, to be licensed as a whole at no charge to all third parties under the terms of this License.\ \ -c) If the modified program normally reads commands interactively when run, you must cause it, when started running for such interactive use in the most ordinary way, to print or display an announcement including an appropriate copyright notice and a notice that there is no warranty (or else, saying that you provide a warranty) and that users may redistribute the program under these conditions, and telling the user how to view a copy of this License. (Exception: if the Program itself is interactive but does not normally print such an announcement, your work based on the Program is not required to print an announcement.)\ +c) If the modified program normally reads commands interactively when run, you must cause it, when started running for such interactive use in the most ordinary way, to print or display an announcement including an appropriate copyright notice and a notice that there is no warranty (or else, saying that you provide a warranty) and that users may redistribute the program under these conditions, and telling the user how to view a copy of this License. (Exception: if the Program itself is interactive but does not normally toString such an announcement, your work based on the Program is not required to toString an announcement.)\ \ These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Program, and can be reasonably considered independent and separate works in\ themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based\ diff -Nru oggvideotools-0.8a/cpackInfo/COPYING.txt oggvideotools-0.9.1/cpackInfo/COPYING.txt --- oggvideotools-0.8a/cpackInfo/COPYING.txt 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/cpackInfo/COPYING.txt 2016-09-05 08:35:14.000000000 +0000 @@ -114,8 +114,8 @@ a warranty) and that users may redistribute the program under\ these conditions, and telling the user how to view a copy of this\ License. (Exception: if the Program itself is interactive but\ - does not normally print such an announcement, your work based on\ - the Program is not required to print an announcement.)\ + does not normally toString such an announcement, your work based on\ + the Program is not required to toString an announcement.)\ \ These requirements apply to the modified work as a whole. If\ identifiable sections of that work are not derived from the Program,\ diff -Nru oggvideotools-0.8a/debian/changelog oggvideotools-0.9.1/debian/changelog --- oggvideotools-0.8a/debian/changelog 2015-12-20 22:53:23.000000000 +0000 +++ oggvideotools-0.9.1/debian/changelog 2016-12-03 21:40:18.000000000 +0000 @@ -1,3 +1,38 @@ +oggvideotools (0.9.1-3) unstable; urgency=medium + + * Updated d/copyright file to relect that win32/ no longer is part + of the source tarball. + * New patch import-cstring.patch to fix build problem after compiler + updates. Patch from Jan Gerber. Closes: #844858 + + -- Petter Reinholdtsen Sat, 03 Dec 2016 21:40:18 +0000 + +oggvideotools (0.9.1-2) unstable; urgency=medium + + * Add new and missing build dependency libboost-dev. + * Removed unwanted comma in d/tests/control file. Thanks lintian. + * Updated Standards-Version from 3.9.6 to 3.9.8. + + -- Petter Reinholdtsen Mon, 05 Sep 2016 18:56:22 +0200 + +oggvideotools (0.9.1-1) unstable; urgency=medium + + * Added Ralph Giles as uploader. + * Updated debian/copyright, correct upstream URL and wrap long lines. + * Added cme rule to debian/rules to track copyright changes. + * Rewrite debian/copyright file using DEP5 format. + * Added new entries in debian/copyright. + * Adjust testsuite run to new source layout. + * Adjust build rules to run both test scripts during build. + * Adjust test scripts to run tests using valgrind. + * Updated build rules for new 0.9 version. + * Updated to upstream version 0.9.1. + - Now compiles with GCC 6 (Closes: #811769). + - Refresh manual-typos.patch to match version 0.9.1. + * Add build dependency on python-mecavideo needed by the test suite. + + -- Petter Reinholdtsen Mon, 05 Sep 2016 13:05:43 +0200 + oggvideotools (0.8a-7) unstable; urgency=low * Changed build-depend on libgd2-xpm-dev to libgd-dev, to list the diff -Nru oggvideotools-0.8a/debian/control oggvideotools-0.9.1/debian/control --- oggvideotools-0.8a/debian/control 2015-09-23 20:09:51.000000000 +0000 +++ oggvideotools-0.9.1/debian/control 2016-09-05 16:55:41.000000000 +0000 @@ -5,6 +5,7 @@ Uploaders: Petter Reinholdtsen , Martin Steghöfer + , Ralph Giles Build-Depends: debhelper (>= 9), cmake, @@ -13,9 +14,11 @@ libvorbis-dev, libsdl-dev, libgd-dev, + libboost-dev, debconf, python-pygame, -Standards-Version: 3.9.6 + python-mecavideo, +Standards-Version: 3.9.8 XS-Testsuite: autopkgtest Vcs-Git: https://anonscm.debian.org/git/pkg-xiph/oggvideotools.git Vcs-Browser: https://anonscm.debian.org/cgit/pkg-xiph/oggvideotools.git diff -Nru oggvideotools-0.8a/debian/copyright oggvideotools-0.9.1/debian/copyright --- oggvideotools-0.8a/debian/copyright 2014-10-21 12:40:32.000000000 +0000 +++ oggvideotools-0.9.1/debian/copyright 2016-09-06 04:59:35.000000000 +0000 @@ -1,42 +1,46 @@ -This package was debianized by Jan Gerber on -Thu, 10 Aug 2009 18:55:02 +0200. +Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ +Source: https://svn.code.sf.net/p/oggvideotools/code/trunk -The debian package is co-maintained by: - Jan Gerber - John Ferlito - -It was downloaded from - https://oggvideotools.svn.sourceforge.net/svnroot/oggvideotools/trunk - -Upstream Author: Joern Seger (Yorn) yorn_at_gmx.net - -Copyright and license terms: - - Copyright © 2008 Joern Seger - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, - MA 02110-1301, USA. - -On Debian systems, the full text of the GNU General Public License is available -in /usr/share/common-licenses/GPL-2. - -Copyright and license terms for src/libresample/*: - - Copyright Dominic Mazzoni - - Licensed under LGPL Version 2.1 - -On Debian systems, the full text of the GNU Lesser General Public License is available -in /usr/share/common-licenses/LGPL-2.1. +Files: * +Copyright: 2005-2009, Joern Seger (Yorn) +License: GPL-2+ + +Files: debian/* +Copyright: + 2014-2016, Petter Reinholdtsen + 2012, Ron Lee + 2012, Gregor Herrmann + 2010, John Francesco Ferlito + 2009, Jan Gerber +License: GPL-2+ + +Files: src/libresample/* +Copyright: + 2003, Dominic Mazzoni + 1994-2002, by Julius O. Smith III , +License: LGPL-2+ + +Files: src/effect/effectorTypes.cpp + src/effect/effectorTypes.h + src/effect/effectorVisitor.cpp + src/effect/effectorVisitor.h +Copyright: 2010, Bjarne Juul Pasgaard +License: GPL-2+ + +License: GPL-2+ + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; version 2 dated June, 1991, or (at + your option) any later version. + . + On Debian systems, the complete text of version 2 of the GNU General + Public License can be found in '/usr/share/common-licenses/GPL-2'. + +License: LGPL-2+ + This program is free software; you can redistribute it and/or modify it + under the terms of the GNU Library General Public License as published by the + Free Software Foundation; version 2 of the License, or (at + your option) any later version. + . + On Debian systems, the complete text of version 2 of the GNU Library + General Public License can be found in `/usr/share/common-licenses/LGPL-2'. diff -Nru oggvideotools-0.8a/debian/copyright.cme oggvideotools-0.9.1/debian/copyright.cme --- oggvideotools-0.8a/debian/copyright.cme 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/debian/copyright.cme 2016-09-06 05:00:04.000000000 +0000 @@ -0,0 +1,62 @@ +Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ + +Files: * +Copyright: 1989, 1991, 1999, Free Software Foundation, Inc +License: UNKNOWN + Please fill license UNKNOWN from header of * + +Files: cpackInfo/* +Copyright: 1989, 1991, Free Software Foundation, Inc. +License: UNKNOWN + Please fill license UNKNOWN from header of cpackInfo/* + +Files: debian/* +Copyright: -file debian/.cme +License: UNKNOWN + Please fill license UNKNOWN from header of debian/* + +Files: debian/rules +Copyright: -file debian/.cme +License: UNKNOWN + Please fill license UNKNOWN from header of * + +Files: src/* +Copyright: 2005-2009, Joern Seger +License: GPL-2+ + +Files: src/effect/* +Copyright: 2009, Copyright: See COPYING file that comes with this distribution +License: GPL-2+ + +Files: src/effect/effectorTypes.cpp + src/effect/effectorTypes.h + src/effect/effectorVisitor.cpp + src/effect/effectorVisitor.h +Copyright: 2010, Bjarne Juul Pasgaard +License: GPL-2+ + +Files: src/effect/shiftEffect.cpp + src/effect/shiftEffect.h + src/effect/shiftblendEffect.cpp + src/effect/shiftblendEffect.h +Copyright: 2005-2009, Joern Seger +License: GPL-2+ + +Files: src/libresample/* +Copyright: 1989, 1991, 1999, Free Software Foundation, Inc +License: UNKNOWN + Please fill license UNKNOWN from header of src/libresample/* + +Files: src/main/cmdlineextractor.cpp + src/main/cmdlineextractor.h +Copyright: 2009, Copyright: See COPYING file that comes with this distribution +License: GPL-2+ + +License: GPL-2+ + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; version 2 dated June, 1991, or (at + your option) any later version. + . + On Debian systems, the complete text of version 2 of the GNU General + Public License can be found in '/usr/share/common-licenses/GPL-2'. diff -Nru oggvideotools-0.8a/debian/oggvideotools.install oggvideotools-0.9.1/debian/oggvideotools.install --- oggvideotools-0.8a/debian/oggvideotools.install 2015-09-22 07:54:51.000000000 +0000 +++ oggvideotools-0.9.1/debian/oggvideotools.install 2016-05-24 09:23:40.000000000 +0000 @@ -1,2 +1,2 @@ -obj-*/src/ogg* usr/bin +obj-*/src/binaries/ogg* usr/bin scripts/mkThumbs usr/bin diff -Nru oggvideotools-0.8a/debian/patches/import-cstring.patch oggvideotools-0.9.1/debian/patches/import-cstring.patch --- oggvideotools-0.8a/debian/patches/import-cstring.patch 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/debian/patches/import-cstring.patch 2016-12-03 20:51:25.000000000 +0000 @@ -0,0 +1,10 @@ +--- oggvideotools-0.9.1.orig/src/base/test/decoderTest.cpp ++++ oggvideotools-0.9.1/src/base/test/decoderTest.cpp +@@ -4,6 +4,7 @@ + + #include "oggDecoder.h" + #include ++#include + #include + + int main(int argc, char* argv[]) diff -Nru oggvideotools-0.8a/debian/patches/init-for-valgrind.patch oggvideotools-0.9.1/debian/patches/init-for-valgrind.patch --- oggvideotools-0.8a/debian/patches/init-for-valgrind.patch 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/debian/patches/init-for-valgrind.patch 2016-05-24 08:24:50.000000000 +0000 @@ -0,0 +1,19 @@ +Description: Initialize TheoraStreamParameter::colorspace. + Avoid warning from valgrind about making decisions based on uninitialized + values by making sure to initialize TheoraStreamParameter::colorspace to + unspecified when creating a new object. +Author: Petter Reinholdtsen +Forwarded: no +Reviewed-By: Petter Reinholdtsen +Last-Update: 2016-05-24 + +--- oggvideotools-0.9.orig/src/ovt_theora/theoraStreamParameter.cpp ++++ oggvideotools-0.9/src/ovt_theora/theoraStreamParameter.cpp +@@ -5,6 +5,7 @@ + #include "log.h" + + TheoraStreamParameter::TheoraStreamParameter() ++ : colorspace(unspecified) + { + } + diff -Nru oggvideotools-0.8a/debian/patches/manual-typos.patch oggvideotools-0.9.1/debian/patches/manual-typos.patch --- oggvideotools-0.8a/debian/patches/manual-typos.patch 2014-10-22 10:35:22.000000000 +0000 +++ oggvideotools-0.9.1/debian/patches/manual-typos.patch 2016-09-05 11:02:50.000000000 +0000 @@ -5,8 +5,8 @@ Index: oggvideotools/docs/oggDump.1 =================================================================== ---- oggvideotools.orig/docs/oggDump.1 2014-10-22 12:30:40.121711763 +0200 -+++ oggvideotools/docs/oggDump.1 2014-10-22 12:34:49.939724056 +0200 +--- oggvideotools.orig/docs/oggDump.1 2016-09-05 10:58:34.259747897 +0000 ++++ oggvideotools/docs/oggDump.1 2016-09-05 10:58:34.255747851 +0000 @@ -7,9 +7,9 @@ .B OggDump gives detailed information about an ogg video file and prints these information with a given detail level. @@ -14,15 +14,15 @@ -Ogg files consist of a number of streams (video and audio). From the Ogg-container perspective, the streams are devided into pages. These pages usually have nearly the same size. The pages can be printed out with the -g option. +Ogg files consist of a number of streams (video and audio). From the Ogg-container perspective, the streams are divided into pages. These pages usually have nearly the same size. The pages can be printed out with the \-g option. --From the stream perspective, every stream consists of packets. These packets carry a bunch of compressed audio samples in case of a vorbis stream or one video frame in case of a theora video stream. These packets could be of variable length and are places into the ogg pages. To print the packets, use the -p option. -+From the stream perspective, every stream consists of packets. These packets carry a bunch of compressed audio samples in case of a vorbis stream or one video frame in case of a theora video stream. These packets could be of variable length and are places into the ogg pages. To print the packets, use the \-p option. +-From the stream perspective, every stream consists of packets. These packets carry a bunch of compressed audio samples in case of a vorbis stream or one video frame in case of a theora video stream. These packets could be of variable length and are places into the ogg pages. To toString the packets, use the -p option. ++From the stream perspective, every stream consists of packets. These packets carry a bunch of compressed audio samples in case of a vorbis stream or one video frame in case of a theora video stream. These packets could be of variable length and are places into the ogg pages. To toString the packets, use the \-p option. .SH OPTIONS .IP \-g Index: oggvideotools/docs/oggSlideshow.1 =================================================================== ---- oggvideotools.orig/docs/oggSlideshow.1 2014-10-22 12:30:40.121711763 +0200 -+++ oggvideotools/docs/oggSlideshow.1 2014-10-22 12:34:36.127612865 +0200 +--- oggvideotools.orig/docs/oggSlideshow.1 2016-05-24 09:32:05.566912824 +0000 ++++ oggvideotools/docs/oggSlideshow.1 2016-05-24 09:32:05.562912790 +0000 @@ -52,7 +52,7 @@ .I Example: \-t p @@ -34,8 +34,8 @@ Index: oggvideotools/docs/oggTranscode.1 =================================================================== ---- oggvideotools.orig/docs/oggTranscode.1 2014-10-22 12:30:40.121711763 +0200 -+++ oggvideotools/docs/oggTranscode.1 2014-10-22 12:34:36.127612865 +0200 +--- oggvideotools.orig/docs/oggTranscode.1 2016-05-24 09:32:05.566912824 +0000 ++++ oggvideotools/docs/oggTranscode.1 2016-05-24 09:32:05.562912790 +0000 @@ -57,7 +57,7 @@ Adds comments to the video (theora) stream. Comments are given by a pair of type and value in the form 'type=value'. More than one comment can be @@ -56,8 +56,8 @@ Index: oggvideotools/docs/oggCat.1 =================================================================== ---- oggvideotools.orig/docs/oggCat.1 2014-10-22 12:30:40.121711763 +0200 -+++ oggvideotools/docs/oggCat.1 2014-10-22 12:34:36.127612865 +0200 +--- oggvideotools.orig/docs/oggCat.1 2016-05-24 09:32:05.566912824 +0000 ++++ oggvideotools/docs/oggCat.1 2016-05-24 09:32:05.562912790 +0000 @@ -53,7 +53,7 @@ Adds comments to the video (theora) stream. Comments are given by a pair of type and value in the form 'type=value'. More than one comment can be @@ -85,35 +85,62 @@ .IP \-x Force to overwrite the output file, even if it exists. This is mainly helpful if the oggCat is server controlled. +Index: oggvideotools/docs/oggThumb.html +=================================================================== +--- oggvideotools.orig/docs/oggThumb.html 2016-05-24 09:32:05.566912824 +0000 ++++ oggvideotools/docs/oggThumb.html 2016-05-24 09:32:05.562912790 +0000 +@@ -35,13 +35,13 @@ + +
+
-t
+-Time at which a thumbnail should be created. More than one thumbnail time can be concatenated by komas. The times can be set by integer or floating point values in seconds. If the time is not exactly matching, the next frame is used. The times don't have to be sorted incrementally. ++Time at which a thumbnail should be created. More than one thumbnail time can be concatenated by commas. The times can be set by integer or floating point values in seconds. If the time is not exactly matching, the next frame is used. The times don't have to be sorted incrementally. +

+ Example: -t 12.4,14.157,13.23 + +

+

-f
+-Number of a frame that should be created as a thumbnail. More than one thumbnail frame can be concatenated by komas. The frame numbers must be an integers. The frame numbers don't have to be sorted incrementally. ++Number of a frame that should be created as a thumbnail. More than one thumbnail frame can be concatenated by commas. The frame numbers must be an integers. The frame numbers don't have to be sorted incrementally. +

+ Example: -f 12000,13000,11000 + Index: oggvideotools/docs/oggThumb.1 =================================================================== ---- oggvideotools.orig/docs/oggThumb.1 2014-10-22 12:34:36.091612578 +0200 -+++ oggvideotools/docs/oggThumb.1 2014-10-22 12:34:36.127612865 +0200 +--- oggvideotools.orig/docs/oggThumb.1 2016-05-24 09:32:05.566912824 +0000 ++++ oggvideotools/docs/oggThumb.1 2016-05-24 09:32:05.562912790 +0000 @@ -11,16 +11,16 @@ .I _x. -Where x starts with 0 and is incremented with every created thumbnail. So the thumbnails are successivly numbered by the appearence order. This is even valid, if time positions and frame numbers are mixed. -+Where x starts with 0 and is incremented with every created thumbnail. So the thumbnails are successivly numbered by the appearance order. This is even valid, if time positions and frame numbers are mixed. ++Where x starts with 0 and is incremented with every created thumbnail. So the thumbnails are successively numbered by the appearance order. This is even valid, if time positions and frame numbers are mixed. .SH OPTIONS .IP -t --Time at which a thumbnail should be created. More than one thumbnail time can be concatenated by commas. The times can be set by integer or floating point values in seconds. If the time is not exactly matching, the next frame is used. The times don't have to be sorted incrementally. -+Time at which a thumbnail should be created. More than one thumbnail time can be concatenated by komas. The times can be set by integer or floating point values in seconds. If the time is not exactly matching, the next frame is used. The times don't have to be sorted incrementally. +-Time at which a thumbnail should be created. More than one thumbnail time can be concatenated by komas. The times can be set by integer or floating point values in seconds. If the time is not exactly matching, the next frame is used. The times don't have to be sorted incrementally. ++Time at which a thumbnail should be created. More than one thumbnail time can be concatenated by commas. The times can be set by integer or floating point values in seconds. If the time is not exactly matching, the next frame is used. The times don't have to be sorted incrementally. .I Example: \-t 12.4,14.157,13.23 .IP -f --Number of a frame that should be created as a thumbnail. More than one thumbnail frame can be concatenated by commas. The frame numbers must be an integers. The frame numbers don't have to be sorted incrementally. -+Number of a frame that should be created as a thumbnail. More than one thumbnail frame can be concatenated by komas. The frame numbers must be an integers. The frame numbers don't have to be sorted incrementally. +-Number of a frame that should be created as a thumbnail. More than one thumbnail frame can be concatenated by komas. The frame numbers must be an integers. The frame numbers don't have to be sorted incrementally. ++Number of a frame that should be created as a thumbnail. More than one thumbnail frame can be concatenated by commas. The frame numbers must be an integers. The frame numbers don't have to be sorted incrementally. .I Example: \-f 12000,13000,11000 +@@ -58,4 +58,4 @@ + .BR oggSplit (1), + .BR oggTranscode (1), + .BR oggSlideshow (1), +-.BR oggSilence (1) +\ No newline at end of file ++.BR oggSilence (1) Index: oggvideotools/docs/oggCut.1 =================================================================== ---- oggvideotools.orig/docs/oggCut.1 2014-10-22 12:30:40.121711763 +0200 -+++ oggvideotools/docs/oggCut.1 2014-10-22 12:34:36.127612865 +0200 -@@ -36,7 +36,7 @@ +--- oggvideotools.orig/docs/oggCut.1 2016-05-24 09:32:05.566912824 +0000 ++++ oggvideotools/docs/oggCut.1 2016-05-24 09:33:13.831477966 +0000 +@@ -36,13 +36,15 @@ .I Example: \-l 10000 .IP \-e @@ -122,10 +149,19 @@ Default: \-1 + .I Example: \-e 20000 + +-.IP \-i \-o ++.IP \-i ++ ++.IP \-o + Input file and output file set (alternative). + These parameters can be used alternatively. They are overwritten by the arguments after the options. If there is one argument given, it is used as the input file (and overwrites a file given with -i). If there are two arguments, the input and output files from the -i and -o option values are overwritten. + Index: oggvideotools/docs/oggSplit.1 =================================================================== ---- oggvideotools.orig/docs/oggSplit.1 2014-10-22 12:30:40.121711763 +0200 -+++ oggvideotools/docs/oggSplit.1 2014-10-22 12:34:36.127612865 +0200 +--- oggvideotools.orig/docs/oggSplit.1 2016-05-24 09:32:05.566912824 +0000 ++++ oggvideotools/docs/oggSplit.1 2016-05-24 09:32:05.562912790 +0000 @@ -7,7 +7,7 @@ .B oggSplit demultiplexes a multiplexed ogg file into several files with one stream each. diff -Nru oggvideotools-0.8a/debian/patches/mayhem-crash-oggjoin.patch oggvideotools-0.9.1/debian/patches/mayhem-crash-oggjoin.patch --- oggvideotools-0.8a/debian/patches/mayhem-crash-oggjoin.patch 2014-10-22 07:33:41.000000000 +0000 +++ oggvideotools-0.9.1/debian/patches/mayhem-crash-oggjoin.patch 2016-02-27 18:36:22.000000000 +0000 @@ -5,25 +5,27 @@ Reviewed-By: Petter Reinholdtsen Last-Update: 2014-10-22 ---- oggvideotools-0.8a.orig/src/oggBOSExtractorFactory.cpp -+++ oggvideotools-0.8a/src/oggBOSExtractorFactory.cpp -@@ -116,6 +116,9 @@ OggType OggBOSExtractorFactory::getStrea +diff --git a/src/main/oggBOSExtractorFactory.cpp b/src/main/oggBOSExtractorFactory.cpp +index 8bee556..7929e8e 100644 +--- a/src/main/oggBOSExtractorFactory.cpp ++++ b/src/main/oggBOSExtractorFactory.cpp +@@ -116,6 +116,9 @@ OggType OggBOSExtractorFactory::getStreamType(OggPage& page) { - uint8* type = page.obj()->data+page.obj()->headerLength; + uint8* type = &(page->data())[0]+page->getHeaderLength(); + if (NULL == OggTypeMap || NULL == type) -+ return (ogg_unknown); ++ return (OggType::unknown); + uint8 i=1; - for (; i< ogg_maxOggType; ++i) { + for (; i< to_integral(OggType::maxOggType); ++i) { if (memcmp(type, OggTypeMap[i], MAXIDCHARS) == 0) -@@ -131,6 +134,9 @@ OggType OggBOSExtractorFactory::getStrea +@@ -131,6 +134,9 @@ OggType OggBOSExtractorFactory::getStreamType(OggPacket& packet) { - uint8* type = packet.data(); + uint8* type = packet->data(); + if (NULL == OggTypeMap || NULL == type) -+ return (ogg_unknown); ++ return (OggType::unknown); + uint8 i=1; - for (; i< ogg_maxOggType; ++i) { + for (; i< to_integral(OggType::maxOggType); ++i) { if (memcmp(type, OggTypeMap[i], MAXIDCHARS) == 0) diff -Nru oggvideotools-0.8a/debian/patches/more-compiler-warnings.patch oggvideotools-0.9.1/debian/patches/more-compiler-warnings.patch --- oggvideotools-0.8a/debian/patches/more-compiler-warnings.patch 2015-09-23 20:26:22.000000000 +0000 +++ oggvideotools-0.9.1/debian/patches/more-compiler-warnings.patch 2016-05-24 08:47:58.000000000 +0000 @@ -7,14 +7,14 @@ Index: oggvideotools/CMakeLists.txt =================================================================== ---- oggvideotools.orig/CMakeLists.txt 2015-09-23 20:23:37.727537878 +0000 -+++ oggvideotools/CMakeLists.txt 2015-09-23 20:23:34.071519635 +0000 +--- oggvideotools.orig/CMakeLists.txt 2016-05-24 10:47:34.764474837 +0200 ++++ oggvideotools/CMakeLists.txt 2016-05-24 10:47:53.552633949 +0200 @@ -124,6 +124,8 @@ - ADD_DEFINITIONS ( -D_FILE_OFFSET_BITS=64 ) + ADD_DEFINITIONS ( -D_FILE_OFFSET_BITS=64 -Wno-write-strings ) #ADD_DEFINITIONS ( -DDEBUG ) - #ADD_DEFINITIONS ( -O0 -g ) + ADD_DEFINITIONS ( -O0 -g --std=c++0x -fPIC ) +ADD_DEFINITIONS ( -Wall -Wextra ) +#ADD_DEFINITIONS ( -Werror ) - - INCLUDE_DIRECTORIES ( ${CMAKE_BINARY_DIR} ) - + IF ( HAVE_LIBGD ) + ADD_DEFINITIONS ( -DWITH_GD2LIB ) + ENDIF (HAVE_LIBGD ) diff -Nru oggvideotools-0.8a/debian/patches/oggThumb-zero-getopt-long.patch oggvideotools-0.9.1/debian/patches/oggThumb-zero-getopt-long.patch --- oggvideotools-0.8a/debian/patches/oggThumb-zero-getopt-long.patch 2014-10-22 10:53:32.000000000 +0000 +++ oggvideotools-0.9.1/debian/patches/oggThumb-zero-getopt-long.patch 2016-05-24 08:38:32.000000000 +0000 @@ -8,15 +8,17 @@ Reviewed-By: Petter Reinholdtsen Last-Update: 2014-10-22 ---- oggvideotools-0.8a.orig/src/oggThumb.cpp -+++ oggvideotools-0.8a/src/oggThumb.cpp -@@ -260,7 +260,8 @@ NULL, val: - {name: "verbose" - , has_arg: 1, flag: - NULL, val: -- opt_verbose} -+ opt_verbose}, -+{0}, +Index: oggvideotools/src/binaries/oggThumb.cpp +=================================================================== +--- oggvideotools.orig/src/binaries/oggThumb.cpp 2016-05-24 10:38:11.515726684 +0200 ++++ oggvideotools/src/binaries/oggThumb.cpp 2016-05-24 10:38:27.603862021 +0200 +@@ -262,7 +262,8 @@ + /* has_arg: */ 1, + /* flag: */ NULL, + /* val: */ opt_verbose +- } ++ }, ++ {0}, }; //#endif diff -Nru oggvideotools-0.8a/debian/patches/series oggvideotools-0.9.1/debian/patches/series --- oggvideotools-0.8a/debian/patches/series 2015-09-23 20:23:10.000000000 +0000 +++ oggvideotools-0.9.1/debian/patches/series 2016-12-03 20:51:25.000000000 +0000 @@ -1,5 +1,6 @@ -version-0.8a-1.patch mayhem-crash-oggjoin.patch manual-typos.patch oggThumb-zero-getopt-long.patch more-compiler-warnings.patch +init-for-valgrind.patch +import-cstring.patch diff -Nru oggvideotools-0.8a/debian/patches/version-0.8a-1.patch oggvideotools-0.9.1/debian/patches/version-0.8a-1.patch --- oggvideotools-0.8a/debian/patches/version-0.8a-1.patch 2014-10-22 07:32:43.000000000 +0000 +++ oggvideotools-0.9.1/debian/patches/version-0.8a-1.patch 1970-01-01 00:00:00.000000000 +0000 @@ -1,140 +0,0 @@ -Description: changes foudn in version 0.8a-1 -Author: ? - ---- -The information above should follow the Patch Tagging Guidelines, please -checkout http://dep.debian.net/deps/dep3/ to learn about the format. Here -are templates for supplementary fields that you might want to add: - -Origin: , -Bug: -Bug-Debian: http://bugs.debian.org/ -Bug-Ubuntu: https://launchpad.net/bugs/ -Forwarded: -Reviewed-By: -Last-Update: - ---- oggvideotools-0.8a.orig/src/oggCat.cpp -+++ oggvideotools-0.8a/src/oggCat.cpp -@@ -32,6 +32,7 @@ - - #include - #include -+#include - - #include "definition.h" - #include "helper.h" ---- oggvideotools-0.8a.orig/src/CMakeLists.txt -+++ oggvideotools-0.8a/src/CMakeLists.txt -@@ -123,7 +123,8 @@ INCLUDE_DIRECTORIES ( ${THEORADEC_INCLUD - IF ( $ENV{MAKE_PACKAGE} ) - ADD_LIBRARY ( oggvideotools STATIC ${LIBRARY_SRC} ${RESAMPLE_SRC} ) - ELSE ( $ENV{MAKE_PACKAGE} ) -- ADD_LIBRARY ( oggvideotools SHARED ${LIBRARY_SRC} ${RESAMPLE_SRC} ) -+ ADD_LIBRARY ( oggvideotools STATIC ${LIBRARY_SRC} ${RESAMPLE_SRC} ) -+# ADD_LIBRARY ( oggvideotools SHARED ${LIBRARY_SRC} ${RESAMPLE_SRC} ) - ENDIF ( $ENV{MAKE_PACKAGE} ) - TARGET_LINK_LIBRARIES ( oggvideotools ${ALL_LIBS}) - ---- oggvideotools-0.8a.orig/src/oggDump.cpp -+++ oggvideotools-0.8a/src/oggDump.cpp -@@ -31,6 +31,7 @@ - #include - #include - #include -+#include - - #include "fileRepository.h" - #include "rawMediaPacket.h" ---- oggvideotools-0.8a.orig/src/oggLength.cpp -+++ oggvideotools-0.8a/src/oggLength.cpp -@@ -27,6 +27,7 @@ - #include - #include - #include -+#include - - #include "fileRepository.h" - #include "streamSerializer.h" ---- oggvideotools-0.8a.orig/src/oggSilence.cpp -+++ oggvideotools-0.8a/src/oggSilence.cpp -@@ -30,6 +30,7 @@ - #include - #include - #include -+#include - - #include "vorbisEncoder.h" - #include "streamMux.h" ---- oggvideotools-0.8a.orig/src/oggSlideshow.cpp -+++ oggvideotools-0.8a/src/oggSlideshow.cpp -@@ -36,6 +36,7 @@ - #include - #include - #include -+#include - - #include "th_helper.h" - ---- oggvideotools-0.8a.orig/src/oggCut.cpp -+++ oggvideotools-0.8a/src/oggCut.cpp -@@ -29,6 +29,7 @@ - #include - #include - #include -+#include - - #include "fileRepository.h" - #include "streamSerializer.h" ---- oggvideotools-0.8a.orig/src/oggTranscode.cpp -+++ oggvideotools-0.8a/src/oggTranscode.cpp -@@ -34,6 +34,7 @@ - #include - #include - #include -+#include - - #ifdef HAVE_CONFIG_H - #include "config.h" ---- oggvideotools-0.8a.orig/docs/oggThumb.html -+++ oggvideotools-0.8a/docs/oggThumb.html -@@ -35,13 +35,13 @@ Where x starts with 0 and is incremented - -

-
-t
--Time at which a thumbnail should be created. More than one thumbnail time can be concatenated by komas. The times can be set by integer or floating point values in seconds. If the time is not exactly matching, the next frame is used. The times don't have to be sorted incrementally. -+Time at which a thumbnail should be created. More than one thumbnail time can be concatenated by commas. The times can be set by integer or floating point values in seconds. If the time is not exactly matching, the next frame is used. The times don't have to be sorted incrementally. -

- Example: -t 12.4,14.157,13.23 - -

-

-f
--Number of a frame that should be created as a thumbnail. More than one thumbnail frame can be concatenated by komas. The frame numbers must be an integers. The frame numbers don't have to be sorted incrementally. -+Number of a frame that should be created as a thumbnail. More than one thumbnail frame can be concatenated by commas. The frame numbers must be an integers. The frame numbers don't have to be sorted incrementally. -

- Example: -f 12000,13000,11000 - ---- oggvideotools-0.8a.orig/docs/oggThumb.1 -+++ oggvideotools-0.8a/docs/oggThumb.1 -@@ -15,12 +15,12 @@ Where x starts with 0 and is incremented - - .SH OPTIONS - .IP -t --Time at which a thumbnail should be created. More than one thumbnail time can be concatenated by komas. The times can be set by integer or floating point values in seconds. If the time is not exactly matching, the next frame is used. The times don't have to be sorted incrementally. -+Time at which a thumbnail should be created. More than one thumbnail time can be concatenated by commas. The times can be set by integer or floating point values in seconds. If the time is not exactly matching, the next frame is used. The times don't have to be sorted incrementally. - - .I Example: \-t 12.4,14.157,13.23 - - .IP -f --Number of a frame that should be created as a thumbnail. More than one thumbnail frame can be concatenated by komas. The frame numbers must be an integers. The frame numbers don't have to be sorted incrementally. -+Number of a frame that should be created as a thumbnail. More than one thumbnail frame can be concatenated by commas. The frame numbers must be an integers. The frame numbers don't have to be sorted incrementally. - - .I Example: \-f 12000,13000,11000 - -@@ -58,4 +58,4 @@ Joern Seger - .BR oggSplit (1), - .BR oggTranscode (1), - .BR oggSlideshow (1), --.BR oggSilence (1) -\ No newline at end of file -+.BR oggSilence (1) diff -Nru oggvideotools-0.8a/debian/rules oggvideotools-0.9.1/debian/rules --- oggvideotools-0.8a/debian/rules 2015-09-22 12:22:41.000000000 +0000 +++ oggvideotools-0.9.1/debian/rules 2016-05-24 09:39:16.000000000 +0000 @@ -9,4 +9,8 @@ # Run our test suite until the upstream source get one override_dh_auto_test: dh_auto_test - TESTBINDIR=`pwd`/obj-*/src/ ./debian/tests/test-oggjoin + TESTBINDIR=`pwd`/obj-*/src/binaries/ ./debian/tests/test-oggjoin + TESTBINDIR=`pwd`/obj-*/src/binaries/ ./debian/tests/test-oggcut + +debian-copyright: + cme update dpkg-copyright -file debian/copyright.cme diff -Nru oggvideotools-0.8a/debian/tests/control oggvideotools-0.9.1/debian/tests/control --- oggvideotools-0.8a/debian/tests/control 2015-12-20 22:51:06.000000000 +0000 +++ oggvideotools-0.9.1/debian/tests/control 2016-09-05 14:16:59.000000000 +0000 @@ -1,4 +1,4 @@ -Tests: test-oggjoin, test-oggcut -Depends: @, debconf, python-pygame, python-mecavideo +Tests: test-oggjoin test-oggcut +Depends: @, debconf, python-pygame, python-mecavideo, valgrind Restrictions: allow-stderr diff -Nru oggvideotools-0.8a/debian/tests/test-oggcut oggvideotools-0.9.1/debian/tests/test-oggcut --- oggvideotools-0.8a/debian/tests/test-oggcut 2015-12-20 22:52:16.000000000 +0000 +++ oggvideotools-0.9.1/debian/tests/test-oggcut 2016-05-24 09:35:01.000000000 +0000 @@ -18,11 +18,15 @@ cd $WORKDIR +if type valgrind >/dev/null 2>&1 ; then + VALGRIND=valgrind +fi + echo "info: Running autopkgtest script $0" input=/usr/share/python-mecavideo/video/Effet_force_magnetique.ogv -${TESTBINDIR}oggCut -s 500 -e 1000 "$input" out.ogv +${VALGRIND} ${TESTBINDIR}oggCut -s 500 -e 1000 "$input" out.ogv if [ -e out.ogv ] ; then echo "success: Ogg Theora file out.ogv created." diff -Nru oggvideotools-0.8a/debian/tests/test-oggjoin oggvideotools-0.9.1/debian/tests/test-oggjoin --- oggvideotools-0.8a/debian/tests/test-oggjoin 2015-09-22 12:19:34.000000000 +0000 +++ oggvideotools-0.9.1/debian/tests/test-oggjoin 2016-05-24 09:35:01.000000000 +0000 @@ -15,19 +15,23 @@ cd $WORKDIR +if type valgrind >/dev/null 2>&1 ; then + VALGRIND=valgrind +fi + echo "info: Running autopkgtest script $0" echo "info: Generating Ogg Theora file" -${TESTBINDIR}oggSlideshow /usr/share/pixmaps/debian-logo.png +${VALGRIND} ${TESTBINDIR}oggSlideshow /usr/share/pixmaps/debian-logo.png # Join it. echo "info: Copy Ogg Theora file using oggJoin." -${TESTBINDIR}oggJoin out.ogv slideshow.ogv +${VALGRIND} ${TESTBINDIR}oggJoin out.ogv slideshow.ogv # This should trigger the bug reported in bug #606224, which need an # audio file. echo "info: Copy Ogg Vorbis file using oggJoin." -${TESTBINDIR}oggJoin out.ogv /usr/lib/python*/dist-packages/pygame/examples/data/house_lo.ogg +${VALGRIND} ${TESTBINDIR}oggJoin out.ogv /usr/lib/python*/dist-packages/pygame/examples/data/house_lo.ogg if [ -e out.ogv ] ; then echo "success: Ogg Theora file out.ogv created." diff -Nru oggvideotools-0.8a/docs/conv2html.sh oggvideotools-0.9.1/docs/conv2html.sh --- oggvideotools-0.8a/docs/conv2html.sh 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/docs/conv2html.sh 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,7 @@ +#!/bin/bash +# man pages must be installed +for i in oggCat oggCut oggJoin oggSplit oggTranscode oggSlideshow oggSilence oggThumb oggDump mkThumbs oggLength +do + echo "creating $i.html" + man2html -f $i.1 > $i.html +done Binary files /tmp/tmpOXWWOQ/vmlDCZABwz/oggvideotools-0.8a/docs/DocuOggVideoTools.pdf and /tmp/tmpOXWWOQ/dYeQkQR5_A/oggvideotools-0.9.1/docs/DocuOggVideoTools.pdf differ diff -Nru oggvideotools-0.8a/docs/oggCat.1 oggvideotools-0.9.1/docs/oggCat.1 --- oggvideotools-0.8a/docs/oggCat.1 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/docs/oggCat.1 2016-09-05 08:35:14.000000000 +0000 @@ -1,15 +1,15 @@ .TH OGGCAT 1 "JAN 2010" Linux "User Manuals" .SH NAME -oggCat \- concatenates two ogg video files (.ogv, .ogg or oga) +oggCat \- concatenates two or more ogg files .SH SYNOPSIS .B oggCat [options] outfile.ogv file1.ogv file2.ogv [ file3.ogv [...] ] .SH DESCRIPTION .B oggCat -concatenates two or more ogg files. +concatenates two or more ogg files (.ogv, .ogg or oga), that contain theora and/or vorbis streams. -The parameters of the resulting ogg file is defined by the first file in the concatenation list. The parameters could be changed by some options, explained below. +The parameters of the resulting ogg file is defined by the first file in the concatenation list. The parameters can be changed by the options, explained below. -All subsequent files that does not match these video file parameters are automatically transcoded. +All subsequent files that does not match these file parameters are automatically transcoded. A concatenation will fail in case that there are not enought streams available. This could happen e.g. if the first file consists of one audio and one video stream and the second file only carries a video stream. @@ -86,11 +86,11 @@ This command creates a cancatenated file .I concatFile.ogv -that consists of the three files myfile1.ogv myfile2.ogv myfile3.ogv +that consists of the three files myfile1.ogv, myfile2.ogv and myfile3.ogv .B oggCat -s320x240 -q63 concatFile.ogv myfile1.ogv myfile2.ogv myfile3.ogv -This command connects the three files myfile[1-3].ogv to file concatFile.ogv with the size of 320x240 and best quality. +This command connects the three files myfile[1-3].ogv to a file named concatFile.ogv with the video frame size of 320x240 and the best quality available. .SH AUTHOR Joern Seger @@ -102,4 +102,4 @@ .BR oggTranscode (1), .BR oggSlideshow (1), .BR oggThumb (1), -.BR oggSilence (1) \ No newline at end of file +.BR oggSilence (1) diff -Nru oggvideotools-0.8a/docs/oggCut.1 oggvideotools-0.9.1/docs/oggCut.1 --- oggvideotools-0.8a/docs/oggCut.1 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/docs/oggCut.1 2016-09-05 08:35:14.000000000 +0000 @@ -42,6 +42,10 @@ .I Example: \-e 20000 +.IP \-i \-o +Input file and output file set (alternative). +These parameters can be used alternatively. They are overwritten by the arguments after the options. If there is one argument given, it is used as the input file (and overwrites a file given with -i). If there are two arguments, the input and output files from the -i and -o option values are overwritten. + .SH EXAMPLE .I oggCut \-s 1000 \-e 21000 myVideo.ogv myOutput.ogv diff -Nru oggvideotools-0.8a/docs/oggDump.1 oggvideotools-0.9.1/docs/oggDump.1 --- oggvideotools-0.8a/docs/oggDump.1 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/docs/oggDump.1 2016-09-05 08:35:14.000000000 +0000 @@ -2,14 +2,14 @@ .SH NAME oggDump \- prints out information of ogg video files (.ogv, .ogg or oga) .SH SYNOPSIS -.B oggDump [options] outfile.ogv +.B oggDump [options] file.ogv .SH DESCRIPTION .B OggDump gives detailed information about an ogg video file and prints these information with a given detail level. Ogg files consist of a number of streams (video and audio). From the Ogg-container perspective, the streams are devided into pages. These pages usually have nearly the same size. The pages can be printed out with the -g option. -From the stream perspective, every stream consists of packets. These packets carry a bunch of compressed audio samples in case of a vorbis stream or one video frame in case of a theora video stream. These packets could be of variable length and are places into the ogg pages. To print the packets, use the -p option. +From the stream perspective, every stream consists of packets. These packets carry a bunch of compressed audio samples in case of a vorbis stream or one video frame in case of a theora video stream. These packets could be of variable length and are places into the ogg pages. To toString the packets, use the -p option. .SH OPTIONS .IP \-g diff -Nru oggvideotools-0.8a/docs/oggDump.html oggvideotools-0.9.1/docs/oggDump.html --- oggvideotools-0.8a/docs/oggDump.html 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/docs/oggDump.html 2016-09-05 08:35:14.000000000 +0000 @@ -25,7 +25,7 @@

Ogg files consist of a number of streams (video and audio). From the Ogg-container perspective, the streams are devided into pages. These pages usually have nearly the same size. The pages can be printed out with the -g option.

-From the stream perspective, every stream consists of packets. These packets carry a bunch of compressed audio samples in case of a vorbis stream or one video frame in case of a theora video stream. These packets could be of variable length and are places into the ogg pages. To print the packets, use the -p option. +From the stream perspective, every stream consists of packets. These packets carry a bunch of compressed audio samples in case of a vorbis stream or one video frame in case of a theora video stream. These packets could be of variable length and are places into the ogg pages. To toString the packets, use the -p option.

 

OPTIONS

diff -Nru oggvideotools-0.8a/docs/oggSplit.1 oggvideotools-0.9.1/docs/oggSplit.1 --- oggvideotools-0.8a/docs/oggSplit.1 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/docs/oggSplit.1 2016-09-05 08:35:14.000000000 +0000 @@ -2,7 +2,7 @@ .SH NAME oggSplit \- demultiplexes ogv files .SH SYNOPSIS -.B oggSplit outfile.ogv +.B oggSplit file.ogv .SH DESCRIPTION .B oggSplit demultiplexes a multiplexed ogg file into several files with one stream each. @@ -18,7 +18,7 @@ This is the audio stream encoded with the vorbis codec. The is the stream ID that is created by the encoder to uniquely identify this stream. .I unknown_.ogv: -This is an unknown stream, that could not be interpreted.The is the stream ID that is created by the encoder to uniquely identify this stream. +This is an unknown stream, that could not be interpreted. The is the stream ID that is created by the encoder to uniquely identify this stream. All files are fully playable with your favoured video or audio player (except the streams, that are uninterpreted). @@ -32,4 +32,4 @@ .BR oggTranscode (1), .BR oggSlideshow (1), .BR oggThumb (1), -.BR oggSilence (1) \ No newline at end of file +.BR oggSilence (1) diff -Nru oggvideotools-0.8a/docs/oggTranscode.1 oggvideotools-0.9.1/docs/oggTranscode.1 --- oggvideotools-0.8a/docs/oggTranscode.1 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/docs/oggTranscode.1 2016-09-05 08:35:14.000000000 +0000 @@ -92,13 +92,17 @@ .B [,[,[,s]]] -default +.B startTime +in seconds - value can be a floating point. +Default .B startTime is 0 +.B endTime +in seconds - value can be a floating point. default .B endTime -is \-1, which is the end of the stream duration +is \-1, which is the end of the stream duration default .B s @@ -156,4 +160,4 @@ .BR oggSplit (1), .BR oggSlideshow (1), .BR oggThumb (1), -.BR oggSilence (1) \ No newline at end of file +.BR oggSilence (1) diff -Nru oggvideotools-0.8a/README oggvideotools-0.9.1/README --- oggvideotools-0.8a/README 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/README 2016-09-05 08:35:14.000000000 +0000 @@ -1,6 +1,6 @@ You can find more detailed information (in pdf and manpages) in the docs/ directory -This release (0.8) consists of the following tools: +This release (0.9) consists of the following tools: oggJoin, oggSplit, oggCut, oggCat, oggTranscode, oggSlideshow, oggThumb, oggLength, oggScroll, oggDump, oggSilence @@ -8,8 +8,13 @@ Required Software ----------------- +you globally need c++11 + boost (at least lexical_cast and circular_buffer, +which are both header only) so if built, no boost libraries are needed. +Version is tested against boost 1.54, however earlier version may work as +well. + for oggCat oggCut oggDump oggSplit oggJoin oggLength: -NONE!! (No you do not need any ogg/theora/vorbis library for that) +(No you do not need any ogg/theora/vorbis library for that) for oggSlideshow, oggThumb, oggResize, oggSilence: libogg diff -Nru oggvideotools-0.8a/README.txt oggvideotools-0.9.1/README.txt --- oggvideotools-0.8a/README.txt 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/README.txt 1970-01-01 00:00:00.000000000 +0000 @@ -1,34 +0,0 @@ -You can find more detailed information (in pdf and manpages) in the docs/ directory - -This release (0.7) consists of the following tools: - -oggJoin, oggSplit, oggCut, oggCat, oggResize, oggSlideshow, oggThumb, oggLength, -oggScroll, oggDump, oggSilence - -Required Software ------------------ - -for oggCat oggCut oggDump oggSplit oggJoin oggLength: -NONE!! (No you do not need any ogg/theora/vorbis library for that) - -for oggSlideshow, oggThumb, oggResize, oggSilence: -libogg -libtheora (>= 1.0) -libvorbis - -> can both be found here: http://www.xiph.org/downloads/ -libgd -> can be found here: http://www.libgd.org/Downloads/ - -for oggScroll: -libogg -libtheora (>= 1.0) - -> can both be found here: http://www.xiph.org/downloads/ -libSDL - -> http://www.libsdl.org - -If you have questions regarding the ogg video tools, write a mail -(yorn_at_gmx_dot_net) or join the developers mailing list at - -https://lists.sourceforge.net/lists/listinfo/oggvideotools-users - -Have fun -Yorn diff -Nru oggvideotools-0.8a/restyle.sh oggvideotools-0.9.1/restyle.sh --- oggvideotools-0.8a/restyle.sh 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/restyle.sh 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,3 @@ +#!/bin/bash +astyle --style=stroustrup -s2 --recursive *.cpp +astyle --style=stroustrup -s2 --recursive *.h src/*.h diff -Nru oggvideotools-0.8a/scripts/mkSlideshow oggvideotools-0.9.1/scripts/mkSlideshow --- oggvideotools-0.8a/scripts/mkSlideshow 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/scripts/mkSlideshow 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,93 @@ +#!/bin/sh +# +# usage: ./mkSlideshow ~/mypicDir/ audiofile.oga outputFile.ogm +# +# Variables to be changed +# +# video frame size +SIZE="800x450" +# +# data rate of the outgoing slideshow stream in bit/s +DATARATE="2048000" +# +# presentation time of one picture in seconds +PR_TIME="10" +# +# frame rate in pictures/s +FRAMERATE="24" +# +# reframe picture +# This adds black borders to picture to meet the aspect ratio +# of the video frame size specified earlier. +# With the Ken Burns effect, this is not strictly necessary, +# but the sliding may be smoother +#REFRAME="-e" or "" +REFRAME="-e" +# +# resample +# This option says, how the picture should be loaded (by gdlib) +# As the resize mechanism of gdlib is really good, it is used to +# bring it do a value "near" the video frame size (usually a bit +# bigger). You usually do not see a big difference, if you change +# this value :-), so keep it as it is (default = 1.2) +RESAMPLE="1.2" +# +# slideshow type +# kb - Ken Burns Effect (sliding and zooming) +# p - plain (picture display only, no crossfade between pictures) +# cf - crossfade (picture display, crossfading between pictures) +TYPE="kb" +# +# +# Temporal file name +TMP_VIDEOFILE="slideshow_tmp.ogv" +TMP_AUDIOFILE="audio_tmp.oga" + +if [ $# -ne 3 ] +then + echo "usage $0 .oga .ogv" + exit +fi + +echo +echo "Creating a slideshow with the following data" +echo +echo "Audio file : $2" +echo "Created file: $3" +echo "Pictures to be presented are:" +ls "$1"/*.jpg +echo +echo "Command line for oggSlideshow is:" +echo "oggSlideshow -s $SIZE -d $DATARATE -l $PR_TIME -f $FRAMERATE \ " +echo " $REFRAME -r $RESAMPLE -t $TYPE -o $TMP_VIDEOFILE $1/*.jpg " + +# creating the slideshow +oggSlideshow -s $SIZE -d $DATARATE -l $PR_TIME -f $FRAMERATE \ + $REFRAME -r $RESAMPLE -t $TYPE -o $TMP_VIDEOFILE "$1"/*.jpg + +# what is the length of this +LENGTHVIDEO=`oggLength $TMP_VIDEOFILE` + +# +# cut the audio file +LENGTHAUDIO=`oggLength $2` + +# +# is the audio file to short? +last="newfile" +if [ $LENGTHVIDEO -gt $LENGTHAUDIO ] +then + echo "warning slideshow ($LENGTHVIDEO) is longer than your audio file ($LENGTHAUDIO)" + exit -1 +fi + +# cutting the audiofile +oggCut -l$LENGTHVIDEO -i$2 -o$TMP_AUDIOFILE + +# +# Join audio and video file +oggJoin $3 $TMP_VIDEOFILE $TMP_AUDIOFILE + +# +# remove +rm -f $TMP_VIDEOFILE $TMP_AUDIOFILE diff -Nru oggvideotools-0.8a/src/audioConverter.cpp oggvideotools-0.9.1/src/audioConverter.cpp --- oggvideotools-0.8a/src/audioConverter.cpp 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/src/audioConverter.cpp 1970-01-01 00:00:00.000000000 +0000 @@ -1,142 +0,0 @@ -#include "audioConverter.h" - -#include -#include - -#include "libresample/libresample.h" -#include "log.h" - -AudioConverter::AudioConverter() - : channelData(0), tmp(0), handle(0), used(0), ratio(0), channels(0) -{ -} - -AudioConverter::~AudioConverter() -{ -} - -void AudioConverter::initResample(uint8 _channels, double _ratio) -{ - - ratio = _ratio; - channels = _channels; - - handle = (void **) new char[channels * sizeof(void *)]; - - channelData = new float*[channels]; - tmp = new float*[channels]; - - for (uint8 c=0; c we want stereo and have mono - if ((channels == 2) && ((*packet)->getChannels() == 1)) { - - for (uint32 pos(0); pos < (*packet)->getLength(); ++pos) - channelData[0][used+pos] = (*packet)->getDataOfChannel(0)[pos]; - - for (uint32 pos(0); pos < (*packet)->getLength(); ++pos) - channelData[1][used+pos] = (*packet)->getDataOfChannel(0)[pos]; - - } - - // downmix -> we want mono and have stereo - if ((channels == 1) && ((*packet)->getChannels() == 2)) { - - for (uint32 pos(0); pos < (*packet)->getLength(); ++pos) { - channelData[0][used+pos] = (*packet)->getDataOfChannel(0)[pos]*0.5 + - (*packet)->getDataOfChannel(1)[pos]*0.5; - - if (channelData[0][used+pos]> 1.0) - channelData[0][used+pos] = 1.0; - } - } - - // plane copy - if (channels == (*packet)->getChannels()) { - - for (uint32 c(0); c < channels; ++c) - for (uint32 pos(0); pos < (*packet)->getLength(); ++pos) - channelData[c][used+pos] = (*packet)->getDataOfChannel(c)[pos]; - - } - - if (ratio == 1.0) { - length = (*packet)->getLength(); - AudioPacketInternal* newInternalPacket = new AudioPacketInternal(channels, length); - - for (uint32 i(0); isetDataOfChannel(i,channelData[i]); - } - - resampled = AudioPacket(newInternalPacket); - return(true); - } - - - uint32 availableSamples = used+(*packet)->getLength(); - int32 inUsed=0; - - // do resampling - for (uint32 i(0); isetDataOfChannel(i,tmp[i]); - } - - resampled = AudioPacket(newInternalPacket); - - // save data - used = availableSamples-inUsed; - for (uint32 i(0); i < used; ++i) { - for (uint32 ch(0); ch 0); - } - - return(true); -} - -bool AudioConverter::resampleflush(AudioPacket & resampled) -{ - - if (used==0) - return(false); - - logger.error() << "AudioConverter::resampleflush: not implemented "< -#include "exception.h" - -#include "vorbisEncoder.h" -#include "vorbisDecoder.h" -#include "log.h" - -AudioHook::AudioHook() -{} - -AudioHook::AudioHook(uint8 outStreamID, const bool copy, const bool keepComments) - : HookHandler(copy, keepComments), changeAudioSamplerate(false), changeChannel(false) -{ -// logger.debug() << "Vorbis Encoder stream No "<<(int)outStreamID<(*outputDecoder); - VorbisEncoder& encoder = static_cast(*inputEncoder); - - if (!copyOnly) { - - if (decoder.getInfo() == encoder.getInfo()) - copy = true; - else - copy = false; - - } - - if (!copy) { - if (decoder.getInfo().channels != encoder.getInfo().channels) - changeChannel = true; - - if (decoder.getInfo().rate != encoder.getInfo().rate) - changeAudioSamplerate = true; - - } - - converter.closeResample(); - - converter.initResample(encoder.getInfo().channels, - (encoder.getInfo().rate * 1.0 ) - / (decoder.getInfo().rate * 1.0 )); - -} - -static uint64 cnt(0); - -HookHandler& AudioHook::operator<<(OggPacket& packet) -{ - if (!outputDecoder) - throw OggException("AudioHook::callHook: no outputDecoder given"); - - if (!inputEncoder) - throw OggException("AudioHook::callHook: no inputEncoder given"); - - VorbisDecoder& decoder = static_cast(*outputDecoder); - VorbisEncoder& encoder = static_cast(*inputEncoder); - - if (copy) { - packet.setStreamNo(encoder.getStreamNo()); - packetList.push_back(packet); - } else { - // relevant packet - try { - decoder << packet; - while ( decoder.isAvailable() ) { - decoder >> audioPacket; - - if ( changeAudioSamplerate || changeChannel ) { - AudioPacket tmp; - - if ( converter.resample ( audioPacket,tmp ) ) { - encoder << tmp; - - } - } else { - encoder << audioPacket; - } - while ( encoder.isAvailable() ) { - OggPacket pckt; - encoder >> pckt; - - packetList.push_back(pckt); - } -// 16868466 - } - - } catch ( std::exception error ) { - logger.error() << "Exception: " << error.what(); - } - } -} - -void AudioHook::flush() -{ - if (!outputDecoder) - throw OggException("AudioHook::callHook: no outputDecoder given"); - - if (!inputEncoder) - throw OggException("AudioHook::callHook: no inputEncoder given"); - - VorbisDecoder& decoder = static_cast(*outputDecoder); - VorbisEncoder& encoder = static_cast(*inputEncoder); - - /* write resampled data, if there is some */ - if (converter.resampleflush(audioPacket)) { - - if ( audioPacket->getLength() > 0 ) - encoder << audioPacket; - } - - encoder.flush(); - - while ( encoder.isAvailable() ) { - - OggPacket pckt; - encoder >> pckt; - - packetList.push_back(pckt); - - } - -} - -OggType AudioHook::getType() const -{ - return(ogg_vorbis); -} - -static bool operator==(const vorbis_info& info1, const vorbis_info& info2) -{ - return ((info1.bitrate_lower == info2.bitrate_lower) && - (info1.bitrate_nominal == info2.bitrate_nominal) && - (info1.bitrate_upper == info2.bitrate_upper) && - (info1.bitrate_window == info2.bitrate_window) && - (info1.channels == info2.channels) && - (info1.rate == info2.rate) - ); -} - -static bool operator!=(const vorbis_info& info1, const vorbis_info& info2) -{ - return(!(info1==info2)); -} diff -Nru oggvideotools-0.8a/src/audioHook.h oggvideotools-0.9.1/src/audioHook.h --- oggvideotools-0.8a/src/audioHook.h 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/src/audioHook.h 1970-01-01 00:00:00.000000000 +0000 @@ -1,40 +0,0 @@ -#ifndef AUDIOHOOK_H_ -#define AUDIOHOOK_H_ - -#include "hookHandler.h" -#include "audioConverter.h" -#include "audioPacket.h" - -#include "vorbisDecoder.h" -#include "vorbisEncoder.h" - -class AudioHook : public HookHandler { - -private: - bool changeAudioSamplerate; - bool changeChannel; - bool copy; - - AudioConverter converter; - AudioPacket audioPacket; - - AudioHook(); - -public: - AudioHook(uint8 outStreamID, const bool copy, const bool keepComments); - virtual ~AudioHook(); - - virtual HookHandler& operator<<(OggPacket& packet); - - virtual void initAndConnect(); - - virtual void flush(); - - virtual OggType getType() const; -}; - -static bool operator==(const vorbis_info& info1, const vorbis_info& info2); -static bool operator!=(const vorbis_info& info1, const vorbis_info& info2); - - -#endif /*AUDIOHOOK_H_*/ diff -Nru oggvideotools-0.8a/src/audioPacket.cpp oggvideotools-0.9.1/src/audioPacket.cpp --- oggvideotools-0.8a/src/audioPacket.cpp 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/src/audioPacket.cpp 1970-01-01 00:00:00.000000000 +0000 @@ -1,160 +0,0 @@ -#include "audioPacket.h" - -#include -#include -#include "log.h" - -AudioPacketInternal::AudioPacketInternal() : - pcmData(0), length(0), channels(0) -{ -} - -AudioPacketInternal::~AudioPacketInternal() -{ - cleanup(); -} - -AudioPacketInternal::AudioPacketInternal(const AudioPacketInternal& packet) : - pcmData(0), length(packet.length), channels(packet.channels) -{ - /* create memory region */ - initMem(channels, length); - - /* copy data */ - for (uint8 i(0); i= channels) || (pcmData[channel] == 0)) - return; - - memcpy(pcmData[channel], _dataPtr, length*sizeof(float)); - -} - -void AudioPacketInternal::cleanup() -{ - - if (pcmData != 0) { - for (uint8 ch(0); ch(packet) -{ -// logger.debug() << "copy constructor "<<(*refCounter)<(internalPacket) -{ -// logger.debug() << "new Instance by internal packet "<<(*refCounter)< { - -public: - AudioPacket(); - AudioPacket(const AudioPacket& packet); - AudioPacket(AudioPacketInternal* internalPacket); - virtual ~AudioPacket(); - - AudioPacketInternal* operator*(); - AudioPacket& operator=(const AudioPacket& packet); - - AudioPacket clone(); - -}; - -#endif diff -Nru oggvideotools-0.8a/src/base/bufferRepository.cpp oggvideotools-0.9.1/src/base/bufferRepository.cpp --- oggvideotools-0.8a/src/base/bufferRepository.cpp 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/base/bufferRepository.cpp 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,42 @@ +#include "bufferRepository.h" + +BufferRepository::BufferRepository(const std::string& name) + : MediaRepository(MediaUnit::readwrite, name) +{ +} + +BufferRepository::~BufferRepository() +{ +} + +MediaUnit& BufferRepository::operator<<(RawMediaPacket& packet) +{ + buffer.push_back(packet); + + return(*this); +} + +MediaUnit& BufferRepository::operator>>(RawMediaPacket& packet) +{ + if (!buffer.empty()) { + packet = buffer.front(); + buffer.pop_front(); + } + + return(*this); +} + +bool BufferRepository::isAvailable() +{ + return(!buffer.empty()); +} + +uint32 BufferRepository::getBunchSize() +{ + return(0); +} + +void BufferRepository::setBunchSize(uint32 size) +{ + return; +} diff -Nru oggvideotools-0.8a/src/base/bufferRepository.h oggvideotools-0.9.1/src/base/bufferRepository.h --- oggvideotools-0.8a/src/base/bufferRepository.h 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/base/bufferRepository.h 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,26 @@ +#ifndef BUFFERREPOSITORY_H_ +#define BUFFERREPOSITORY_H_ + +#include + +#include "mediaRepository.h" + +class BufferRepository : public MediaRepository { + std::deque buffer; + +public: + BufferRepository(const std::string& name = std::string("BufferRepository")); + virtual ~BufferRepository(); + + virtual MediaUnit& operator<<(RawMediaPacket& packet); + virtual MediaUnit& operator>>(RawMediaPacket& packet); + + virtual bool isAvailable(); + + virtual uint32 getBunchSize(); + + virtual void setBunchSize(uint32 size); + +}; + +#endif /*BUFFERREPOSITORY_H_*/ diff -Nru oggvideotools-0.8a/src/base/CMakeLists.txt oggvideotools-0.9.1/src/base/CMakeLists.txt --- oggvideotools-0.8a/src/base/CMakeLists.txt 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/base/CMakeLists.txt 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,27 @@ +SET ( LIBRARY_BASE_SRC + oggPage.cpp + oggPacket.cpp + oggComment.cpp + oggDecoder.cpp + oggEncoder.cpp + oggRingbuffer.cpp + oggStreamDecoder.cpp + oggStreamEncoder.cpp + mediaUnit.cpp + mediaRepository.cpp + mediaDecoder.cpp + mediaEncoder.cpp + mediaConverter.cpp + granulePosInterpreter.cpp + mediaOutputDecoder.cpp + mediaInputEncoder.cpp + streamParameter.cpp + streamExtractor.cpp + bufferRepository.cpp + fileRepository.cpp + rawMediaPacket.cpp +) + +ADD_LIBRARY ( ovtbase ${LIBRARY_BASE_SRC} ) + +add_subdirectory(test) \ No newline at end of file diff -Nru oggvideotools-0.8a/src/base/fileRepository.cpp oggvideotools-0.9.1/src/base/fileRepository.cpp --- oggvideotools-0.8a/src/base/fileRepository.cpp 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/base/fileRepository.cpp 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,123 @@ +/* + * FileRepository is used to read or write a local file + * + * Copyright (C) 2008 Joern Seger + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + * + */ + +#include +#include +#include +// #include .. later + +#include "rawMediaPacket.h" +#include "fileRepository.h" +#include "exception.h" +#include "log.h" + +FileRepository::FileRepository() + : MediaRepository(read, "FileRepository"), fileDescriptor(0), filename(""), bunchSize(4096), + eof(true) +{ + +} + +FileRepository::FileRepository(const std::string& _filename, MediaDirection_t type) + : MediaRepository(type, "FileRepository"), filename(_filename), bunchSize(4096), eof(false) +{ + eof = true; + if (mediaDirection == write) { + if ((fileDescriptor = fopen(filename.c_str(), "wb")) == 0) + logger.error() << name << "::open failed: " << strerror(errno) << "\n"; + else { + repositoryAvailable = true; + eof = false; + } + } else { + if ((fileDescriptor = fopen(filename.c_str(), "rb")) == 0) + logger.error() << name << "::open failed: " << strerror(errno) << "\n"; + else { + repositoryAvailable = true; + eof = false; + } + } +} + +FileRepository::~FileRepository() +{ +} + +void FileRepository::close() +{ + if (fileDescriptor) { + fclose(fileDescriptor); + fileDescriptor = 0; + repositoryAvailable = false; + } +} + +void FileRepository::setBunchSize(uint32 _bunchSize) +{ + bunchSize = _bunchSize; +} + +uint32 FileRepository::getBunchSize() +{ + return(bunchSize); +} + +bool FileRepository::isEndOfFile() +{ + return(eof); +} + +MediaUnit& FileRepository::operator<<(RawMediaPacket& packet) +{ + if ((mediaDirection == write) && (repositoryAvailable == true)) { + if (fwrite(&(packet->getData())[0],1,packet->getSize(),fileDescriptor) != packet->getSize()) { + throw OggException(name+"::operator<<: "+strerror(errno)); + } + } + + return(*this); +} + +MediaUnit& FileRepository::operator>>(RawMediaPacket& packet) +{ + uint32 readBytes; + std::vector buffer(bunchSize); + + if (mediaDirection == read) { + + if ((readBytes = fread(buffer.data(),1,bunchSize,fileDescriptor)) < 0) { + logger.error() << name << "::operator>>: "<< strerror(errno) << "\n"; + return(*this); + } + + if (buffer.size() > readBytes) + buffer.resize(readBytes); + + packet = std::make_shared(buffer, false); // do not create copy + + if (readBytes < bunchSize) { + repositoryAvailable = false; + eof = true; + } + } + + return (*this); +} diff -Nru oggvideotools-0.8a/src/base/fileRepository.h oggvideotools-0.9.1/src/base/fileRepository.h --- oggvideotools-0.8a/src/base/fileRepository.h 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/base/fileRepository.h 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,55 @@ +/* + * FileRepository is used to read or write a local file + * + * Copyright (C) 2008 Joern Seger + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + * + */ + +#ifndef FILEREPOSITORY_H_ +#define FILEREPOSITORY_H_ + +#include + +#include "definition.h" +#include "mediaRepository.h" +#include "rawMediaPacket.h" + +class FileRepository : public MediaRepository { + + FILE* fileDescriptor; + std::string filename; + uint32 bunchSize; + bool eof; + +public: + FileRepository(); + FileRepository(const std::string& filename, MediaDirection_t type); + virtual ~FileRepository(); + + virtual MediaUnit& operator<<(RawMediaPacket& packet); + virtual MediaUnit& operator>>(RawMediaPacket& packet); + + virtual void setBunchSize(uint32 bunchSize); + virtual uint32 getBunchSize(); + + virtual void close(); + + bool isEndOfFile(); + +}; + +#endif /*FILEREPOSITORY_H_*/ diff -Nru oggvideotools-0.8a/src/base/granulePosInterpreter.cpp oggvideotools-0.9.1/src/base/granulePosInterpreter.cpp --- oggvideotools-0.8a/src/base/granulePosInterpreter.cpp 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/base/granulePosInterpreter.cpp 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,20 @@ +#include "granulePosInterpreter.h" + +GranulePosInterpreter::GranulePosInterpreter() + : initialized(false), actualGranulePosition(0) +{ +} + +GranulePosInterpreter::~GranulePosInterpreter() +{ +} + +int64 GranulePosInterpreter::getPosition() +{ + return(actualGranulePosition); +} + +double GranulePosInterpreter::getActTime() +{ + return(getTime(actualGranulePosition)); +} diff -Nru oggvideotools-0.8a/src/base/granulePosInterpreter.h oggvideotools-0.9.1/src/base/granulePosInterpreter.h --- oggvideotools-0.8a/src/base/granulePosInterpreter.h 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/base/granulePosInterpreter.h 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,83 @@ +#ifndef GRANULEPOSINTERPRETER_H_ +#define GRANULEPOSINTERPRETER_H_ + +#include "oggPacket.h" +#include "streamParameter.h" + +//! Class to interprete the granule position of a m_oggPacket +/*! Every m_oggPacket carries a granule position within its header information. + * This granule position is a 64 Bit value and is interpreted quite different + * across the available ogg encoders/decoders. + * + * To be able to convert a 64 Bit number into a time position this interpreter + * needs some more information, which are given by the initialize() method. + * + * E.g. an vorbis interpretes the granule position as the audio samples. If + * an audio file has been sample with a rate of 16 kHz, the position 0 is the + * first sample at time 0 ms. The granule Position 1000 would be a time position + * of 62.5 ms. At a sample rate of 32 kHz this would be the time position 31.25 ms. + * So in this case we need to know the sample rate as a basis for the time calculation. + * + * These decoder specific information are given by the corresponding class object + * derived from the abstract StreamParameter. + * + * This class can interpret a given granule position and it is able to caclulate + * new positions by given ones (additions of two positions) +*/ +class GranulePosInterpreter { + +protected: + bool initialized; + + int64 actualGranulePosition; + +public: + GranulePosInterpreter(); + virtual ~GranulePosInterpreter(); + + //! method to initialize the interpreter + /*! The initialization is needed to be able to + * interpret the granule position. E.g. theora splits the + * 64 Bit into a lower and upper part for the last keyframe + * position and a counter for the p-frames. This split + * is depending on the header information in the first page. + */ + virtual void initialize(StreamParameter* parameter) = 0; + + //! method to interpret the time from a granule position + /*! This method interprets the given granule position by the + * information from the first page, with which the interpreter has + * been initialized. The time does not depend on the actual + * internal position counter. + * @param granulePos granuale position, that should be interpreted with the implicite information from the interpreter + * @return the time of the position given by the parameter*/ + virtual double getTime(int64 granulePos) = 0; + + //! Method to interprete the internal position to a time + /*! This method uses the actual internal position information + * to calculate the actual time. For the interpretation the method + * uses the information given by the first page. + * */ + double getActTime(); + + //! method to return the actual granule position + /*! @return returns the actual/calculated granule position + * */ + virtual int64 getPosition(); + + //! Method places the actual stream position into an m_oggPacket. + /*! @param packet OggPacket to replace the granule position field in the header + * */ + virtual void setStreamPosition(OggPacket& packet) = 0; + + //! Method to add a second position to this position + /*! @param position that should be added to the actual (implicite) position of this object */ +// virtual GranulePosInterpreter& operator+=(GranulePosInterpreter& position) = 0; + + //! Method to substract a second position from this position + /*! @param position that should be substracted from the actual (implicite) position of this object */ +// virtual GranulePosInterpreter& operator-=(GranulePosInterpreter& position) = 0; + +}; + +#endif /*GRANULEPOSINTERPRETER_H_*/ diff -Nru oggvideotools-0.8a/src/base/mediaConverter.cpp oggvideotools-0.9.1/src/base/mediaConverter.cpp --- oggvideotools-0.8a/src/base/mediaConverter.cpp 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/base/mediaConverter.cpp 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,109 @@ +/* + * MediaConverter is the base class for all subsequent decoders + * and encoders + * + * Copyright (C) 2008 Joern Seger + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + * + */ + +#include +#include "mediaConverter.h" +#include "log.h" + +MediaConverter::MediaConverter() + : mediaConverterState(mdec_free) +{ +} + +MediaConverter::~MediaConverter() +{ +} + +void MediaConverter::setInitialized() +{ + if (mediaConverterState == mdec_free) + mediaConverterState = mdec_initialized; + else + logger.error() << "MediaConverter::setInitialized(): double initalization\n"; +} + +void MediaConverter::setConfigured() +{ + if (mediaConverterState < mdec_configured) + mediaConverterState = mdec_configured; + else + logger.error() << "MediaConverter::setConfigured(): decoder is configured\n"; +} + +void MediaConverter::setAvailable() +{ + if ((mediaConverterState >= mdec_configured) && + (mediaConverterState <= mdec_available)) + mediaConverterState = mdec_available; + else + logger.error() << "MediaConverter::setAvailable(): decoder is not configured or has ended\n"; +} + +void MediaConverter::setEmpty() +{ + if ((mediaConverterState == mdec_configured) || + (mediaConverterState == mdec_available) || + (mediaConverterState == mdec_empty)) + mediaConverterState = mdec_empty; + else + logger.error() << "MediaConverter::setEmpty(): decoder not configured correctly\n"; +} + +void MediaConverter::setEndOfStream() +{ + if (mediaConverterState > mdec_initialized) + mediaConverterState = mdec_endofStream; + else + logger.error() << "MediaConverter::setEndOfStream(): decoder not initialized\n"; +} + +void MediaConverter::setFree() +{ + mediaConverterState = mdec_free; +} + +bool MediaConverter::isInitialized() +{ + return(mediaConverterState > mdec_free); +} + +bool MediaConverter::isConfigured() +{ + return(mediaConverterState > mdec_initialized); +} + +bool MediaConverter::isAvailable() +{ + return(mediaConverterState == mdec_available); +} + +bool MediaConverter::isEmpty() +{ + return( (mediaConverterState == mdec_initialized) || + (mediaConverterState == mdec_empty) || + (mediaConverterState == mdec_configured)); +} + +bool MediaConverter::isEndOfStream() +{ + return(mediaConverterState == mdec_endofStream); +} diff -Nru oggvideotools-0.8a/src/base/mediaConverter.h oggvideotools-0.9.1/src/base/mediaConverter.h --- oggvideotools-0.8a/src/base/mediaConverter.h 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/base/mediaConverter.h 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,79 @@ +/* + * MediaConverter is the base class for all subsequent decoders + * and encoders + * + * Copyright (C) 2008 Joern Seger + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + * + */ + +#ifndef MEDIACONVERTER_H_ +#define MEDIACONVERTER_H_ + +#include + +//! MediaConverter is a baseclass for all decoders +/*! The MediaConverter class is used with a defined decoder or encoder. It mainly implements a state machine, + which holds the actual decoder/encoder state information: + #- mdec_free: the decoder is uninitialized + #- mdec_initialized: the decoder is initialized, i.e. the stream has a defined stream type or stream ID + #- mdec_configured: the stream is able to give information about the stream, that is processed (stream header is read) + #- mdec_available: the stream is able to provide output data (e.g. a video picture etc.) + #- mdec_empty: there is actually no data available for output + #- mdec_endofStream: the end of a stream has been detected + */ +class MediaConverter { +protected: + enum MediaConverterState { + mdec_free, + mdec_initialized, + mdec_configured, + mdec_empty, + mdec_available, + mdec_endofStream + }; + +private: + MediaConverterState mediaConverterState; + +protected: + + void setInitialized(); + void setConfigured(); + void setAvailable(); + void setEmpty(); + void setFree(); + +public: + MediaConverter(); + virtual ~MediaConverter(); + + void setEndOfStream(); + + bool isInitialized(); + bool isConfigured(); + bool isAvailable(); + bool isEmpty(); + bool isEndOfStream(); + + virtual std::string configuration() const { + return (std::string("")); + } + + virtual void reset() {} +}; + +#endif /*MEDIACONVERTER_H_*/ diff -Nru oggvideotools-0.8a/src/base/mediaDecoder.cpp oggvideotools-0.9.1/src/base/mediaDecoder.cpp --- oggvideotools-0.8a/src/base/mediaDecoder.cpp 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/base/mediaDecoder.cpp 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,31 @@ +/* + * MediaDecoder is the base class for all subsequent decoders + * + * Copyright (C) 2008 Joern Seger + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + * + */ + +#include "mediaDecoder.h" + +MediaDecoder::MediaDecoder() +{ +} + +MediaDecoder::~MediaDecoder() +{ +} + diff -Nru oggvideotools-0.8a/src/base/mediaDecoder.h oggvideotools-0.9.1/src/base/mediaDecoder.h --- oggvideotools-0.8a/src/base/mediaDecoder.h 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/base/mediaDecoder.h 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,38 @@ +/* + * MediaDecoder is the base class for all subsequent decoders + * + * Copyright (C) 2008 Joern Seger + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + * + */ + +#ifndef MEDIADECODER_H_ +#define MEDIADECODER_H_ + +#include "mediaConverter.h" + +class MediaDecoder : public MediaConverter { + +protected: + +public: + MediaDecoder(); + virtual ~MediaDecoder(); + + virtual void clear() = 0; +}; + +#endif /*MEDIADECODER_H_*/ diff -Nru oggvideotools-0.8a/src/base/mediaEncoder.cpp oggvideotools-0.9.1/src/base/mediaEncoder.cpp --- oggvideotools-0.8a/src/base/mediaEncoder.cpp 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/base/mediaEncoder.cpp 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,21 @@ +#include "mediaEncoder.h" + +MediaEncoder::MediaEncoder() + : useFixBunches(0), bunchsize(false) +{ +} + +MediaEncoder::~MediaEncoder() +{ +} + +void MediaEncoder::setBunchsize(uint32 _bunchsize) +{ + bunchsize = _bunchsize; + useFixBunches = true; +} + +void MediaEncoder::useVariableBunches() +{ + useFixBunches = false; +} diff -Nru oggvideotools-0.8a/src/base/mediaEncoder.h oggvideotools-0.9.1/src/base/mediaEncoder.h --- oggvideotools-0.8a/src/base/mediaEncoder.h 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/base/mediaEncoder.h 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,21 @@ +#ifndef MEDIAENCODER_H_ +#define MEDIAENCODER_H_ + +#include "definition.h" + +#include "mediaConverter.h" + +class MediaEncoder : public MediaConverter { + bool useFixBunches; + uint32 bunchsize; + +public: + MediaEncoder(); + virtual ~MediaEncoder(); + + void setBunchsize(uint32 bunchsize); + void useVariableBunches(); + +}; + +#endif /*MEDIAENCODER_H_*/ diff -Nru oggvideotools-0.8a/src/base/mediaInputEncoder.cpp oggvideotools-0.9.1/src/base/mediaInputEncoder.cpp --- oggvideotools-0.8a/src/base/mediaInputEncoder.cpp 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/base/mediaInputEncoder.cpp 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,15 @@ +#include "mediaInputEncoder.h" + +MediaInputEncoder::MediaInputEncoder(const uint8 _streamNo) + : streamNo(_streamNo) +{ +} + +MediaInputEncoder::~MediaInputEncoder() +{ +} + +uint32 MediaInputEncoder::getStreamNo() const +{ + return(streamNo); +} \ No newline at end of file diff -Nru oggvideotools-0.8a/src/base/mediaInputEncoder.h oggvideotools-0.9.1/src/base/mediaInputEncoder.h --- oggvideotools-0.8a/src/base/mediaInputEncoder.h 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/base/mediaInputEncoder.h 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,26 @@ +#ifndef MEDIAINPUTENCODER_H_ +#define MEDIAINPUTENCODER_H_ + +#include "mediaEncoder.h" + +#include "streamConfig.h" +#include "oggPacket.h" +#include "oggComment.h" + +class MediaInputEncoder : public MediaEncoder { + +protected: + uint8 streamNo; + +public: + MediaInputEncoder(const uint8 streamNo); + virtual ~MediaInputEncoder(); + + virtual MediaInputEncoder& operator>>(OggPacket& packet) = 0; + + virtual void configureEncoder(StreamConfig& config, std::vector& oggComments) = 0; + + uint32 getStreamNo() const; +}; + +#endif /*MEDIAINPUTENCODER_H_*/ diff -Nru oggvideotools-0.8a/src/base/mediaOutputDecoder.cpp oggvideotools-0.9.1/src/base/mediaOutputDecoder.cpp --- oggvideotools-0.8a/src/base/mediaOutputDecoder.cpp 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/base/mediaOutputDecoder.cpp 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,15 @@ +#include "mediaOutputDecoder.h" + +MediaOutputDecoder::MediaOutputDecoder(const uint8 _streamNo) + : streamID(_streamNo) +{ +} + +MediaOutputDecoder::~MediaOutputDecoder() +{ +} + +uint8 MediaOutputDecoder::getStreamNo() const +{ + return(streamID); +} diff -Nru oggvideotools-0.8a/src/base/mediaOutputDecoder.h oggvideotools-0.9.1/src/base/mediaOutputDecoder.h --- oggvideotools-0.8a/src/base/mediaOutputDecoder.h 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/base/mediaOutputDecoder.h 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,29 @@ +#ifndef MEDIAOUTPUTDECODER_H_ +#define MEDIAOUTPUTDECODER_H_ + +#include "definition.h" + +#include "oggPacket.h" +#include "oggComment.h" +#include "mediaDecoder.h" +#include "streamConfig.h" + +class MediaOutputDecoder : public MediaDecoder { + +protected: + uint8 streamID; + +public: + MediaOutputDecoder(const uint8 _streamID = 0); + virtual ~MediaOutputDecoder(); + + virtual void initDecoder(StreamConfig& config, std::vector& commentList) = 0; + virtual MediaOutputDecoder& operator<<(OggPacket packet) = 0; + + virtual uint32 getPositionOfNextPacket() = 0; + + uint8 getStreamNo() const; + +}; + +#endif /*MEDIAOUTPUTDECODER_H_*/ diff -Nru oggvideotools-0.8a/src/base/mediaRepository.cpp oggvideotools-0.9.1/src/base/mediaRepository.cpp --- oggvideotools-0.8a/src/base/mediaRepository.cpp 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/base/mediaRepository.cpp 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,42 @@ +/* + * MediaRepository is a baseclass for all communication interfaces + * (e.g. files, tcp, rtp and http streams) + * + * Copyright (C) 2008 Joern Seger + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + * + */ + +#include "mediaRepository.h" + +MediaRepository::MediaRepository() + : MediaUnit(MediaUnit::read, std::string("")), repositoryAvailable(false) +{ +} + +MediaRepository::MediaRepository(MediaDirection_t type, const std::string name) + : MediaUnit(type, name), repositoryAvailable(false) +{ +} + +MediaRepository::~MediaRepository() +{ +} + +bool MediaRepository::isAvailable() +{ + return(repositoryAvailable); +} diff -Nru oggvideotools-0.8a/src/base/mediaRepository.h oggvideotools-0.9.1/src/base/mediaRepository.h --- oggvideotools-0.8a/src/base/mediaRepository.h 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/base/mediaRepository.h 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,81 @@ +/* + * MediaRepository is a baseclass for all communication interfaces + * (e.g. files, tcp, rtp and http streams) + * + * Copyright (C) 2008 Joern Seger + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + * + */ + +#ifndef MEDIAREPOSITORY_H_ +#define MEDIAREPOSITORY_H_ + +#include "definition.h" +#include "mediaUnit.h" +#include "rawMediaPacket.h" + +//! Baseclass for all communication interfaces. +/*! This class is used as a basis for subsequent derived classes that are able to + * handle raw data from any source. + * + * Actually the only implementation is the FileRepository class. One of + * the next implementations will be a http m_repository, that creates raw packets + * from an http media source or throughs out an http media stream. + * + * */ +class MediaRepository : public MediaUnit { + +protected: + bool repositoryAvailable; + +public: + MediaRepository(); + + //! Constructor to create a new MediaRepository object + /*! @param type The media direction + * - MediaUnit::read for opening the m_repository for reading + * - MediaUnit::write for opening the m_repository for writing + * @param name The name of the media m_repository, this could be a filename, a url etc. + * + * */ + MediaRepository(MediaDirection_t type,const std::string name); + + virtual ~MediaRepository(); + + //! Find out, if data is available + /*! @return true, if any data is available, false if not */ + virtual bool isAvailable(); + + //! Insert a new raw data packet into the m_repository + virtual MediaUnit& operator<<(RawMediaPacket& packet) = 0; + + //! Receive a new raw data packet from the m_repository + virtual MediaUnit& operator>>(RawMediaPacket& packet) = 0; + + //! Request the actual size of a raw media packet that this m_repository creates + /*! @return Returns the bunch size, that is actually used. + * */ + virtual uint32 getBunchSize() = 0; + + //! Configures the size of the raw media packet size + /*! @param size The size to which all packets should be filled */ + virtual void setBunchSize(uint32 size) = 0; + + virtual void close() = 0; + +}; + +#endif /*MEDIAREPOSITORY_H_*/ diff -Nru oggvideotools-0.8a/src/base/mediaUnit.cpp oggvideotools-0.9.1/src/base/mediaUnit.cpp --- oggvideotools-0.8a/src/base/mediaUnit.cpp 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/base/mediaUnit.cpp 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,45 @@ +/* + * MediaUnit is a baseclass for all media transfer units + * + * Copyright (C) 2008 Joern Seger + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + * + */ + +#include "mediaUnit.h" + +#include + +MediaUnit::MediaUnit(MediaDirection_t type, const std::string _name) + : name(_name), mediaDirection(type) +{ +} + +MediaUnit::~MediaUnit() +{ +} + +/* +void MediaUnit::setConfig(MediaConfig* _config) +{ + config = _config->clone(); +} + +MediaConfig* MediaUnit::getConfig() +{ + return(config->clone()); +} +*/ diff -Nru oggvideotools-0.8a/src/base/mediaUnit.h oggvideotools-0.9.1/src/base/mediaUnit.h --- oggvideotools-0.8a/src/base/mediaUnit.h 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/base/mediaUnit.h 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,56 @@ +/* + * MediaUnit is a baseclass for all media transfer units + * + * Copyright (C) 2008 Joern Seger + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + * + */ + +#ifndef MEDIAUNIT_H_ +#define MEDIAUNIT_H_ + +#include + +//#include "MediaConfig.h" + +//! Base class for the media processing units +/*! This abstract class is the base class for all following classes, that process media data + * A MediaUnit object is able to receive packets and to send + * following classes, that process media data + * The idea is to connect one mediaUnit Object with + * another by using connectFront and connectBack. + */ + +class MediaUnit { + +public: + enum MediaDirection_t { + write, + read, + readwrite + }; + +protected: + std::string name; + MediaDirection_t mediaDirection; + +public: + MediaUnit(MediaDirection_t type, const std::string name); + virtual ~MediaUnit(); + +}; + +#endif /*MEDIAUNIT_H_*/ diff -Nru oggvideotools-0.8a/src/base/oggComment.cpp oggvideotools-0.9.1/src/base/oggComment.cpp --- oggvideotools-0.8a/src/base/oggComment.cpp 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/base/oggComment.cpp 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,9 @@ +#include "oggComment.h" + +OggComment::OggComment() +{ +} + +OggComment::~OggComment() +{ +} diff -Nru oggvideotools-0.8a/src/base/oggComment.h oggvideotools-0.9.1/src/base/oggComment.h --- oggvideotools-0.8a/src/base/oggComment.h 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/base/oggComment.h 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,16 @@ +#ifndef OGGCOMMENT_H_ +#define OGGCOMMENT_H_ + +#include + +class OggComment { +public: + OggComment(); + virtual ~OggComment(); + + std::string tag; + std::string value; + +}; + +#endif /*OGGCOMMENT_H_*/ diff -Nru oggvideotools-0.8a/src/base/oggDecoder.cpp oggvideotools-0.9.1/src/base/oggDecoder.cpp --- oggvideotools-0.8a/src/base/oggDecoder.cpp 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/base/oggDecoder.cpp 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,156 @@ +/* + * OggDecoder + * + * Copyright (C) 2008 Joern Seger + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + * + */ + +#include +#include +#include + +#include "oggDecoder.h" +#include "oggHeader.h" +#include "log.h" +#include "exception.h" + +#define min(a,b) (((a)<(b))?(a):(b)); + +OggDecoder::OggDecoder() + : m_oggRingbuffer(71000) // max page size plus 4KB read size +{ + setConfigured(); +} + +OggDecoder::~OggDecoder() +{ +} + +void OggDecoder::clear() +{ + /* nothing to be done here */ +} + +void OggDecoder::getNextPages() +{ + + while (1) { + uint32 length(0); + + if (length = getNextPageLength()) { + + logger.debug() << "getNextPage: length="<>(OggPage& page) +{ + if (isAvailable()) { + page = m_oggPageList.front(); + m_oggPageList.pop(); + if (m_oggPageList.empty()) + setEmpty(); + } else + logger.error() << "OggDecoder::operator>>: no page available, insert a packet first\n"; + + return(*this); +} + +uint32 OggDecoder::space() +{ + return (uint32_t) (m_oggRingbuffer.capacity()-m_oggRingbuffer.size()); +} + +uint32_t OggDecoder::getNextPageLength() +{ + + uint32_t availLength = (uint32_t) m_oggRingbuffer.size(); + logger.debug() << "get new page length (if one) " << std::endl; + + if (availLength < (int) sizeof(OggHeader)) { + return (0); + } + + // test is this aligned? + char starter[5]; + uint32_t pos; + for (pos = 0; pos < 5; ++pos) { + starter[pos] = m_oggRingbuffer[pos]; + logger.debug() << "data " << std::hex << "0x" << (int) starter[pos] << " (" << std::dec << starter[pos] << ")\n"; + } + + if (strncmp(starter, "OggS", 4) != 0) { + logger.debug() << "Error: ogg string is " << std::hex << "0x" << (int) starter[0] + << " 0x" << (int) starter[1] << " 0x" << (int) starter[2] + << " 0x" << (int) starter[3] << " 0x" << (int) starter[4] << std::endl; + throw OggException("OggRingbuffer::getNextPageLength: ERROR ogg packet not aligned"); + } + + if ('\0' != starter[4]) { + throw OggException("OggRingbuffer::getNextPageLength: ERROR unsupported stream structure version"); + } + + //pos = sizeof(OggHeader) - 1; // jump to the segment table + + uint32_t readsegments = m_oggRingbuffer[26]; + + logger.debug() << "there are " << readsegments << " segments available in this packet"; + + if (availLength < (int) (sizeof(OggHeader) + readsegments)) { + return (0); + } + + // what is the data length + uint32_t data_length(0); + uint32_t header_offset(sizeof(OggHeader)); + + for (uint32_t i = 0; i < readsegments; ++i) { + data_length += m_oggRingbuffer[header_offset + i]; + } + + uint32_t overallLength = data_length + header_offset + readsegments; + return (overallLength<=availLength?overallLength:0); +} \ No newline at end of file diff -Nru oggvideotools-0.8a/src/base/oggDecoderFactory.cpp oggvideotools-0.9.1/src/base/oggDecoderFactory.cpp --- oggvideotools-0.8a/src/base/oggDecoderFactory.cpp 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/base/oggDecoderFactory.cpp 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,29 @@ +#include "oggDecoderFactory.h" + +OggDecoderFactory::OggDecoderFactory() +{ +} + +OggDecoderFactory::~OggDecoderFactory() +{ +} + + +OggStreamDecoder* OggDecoderFactory::getOggStreamDecoder(OggPage& page) +{ + if (oggPage.bos()) { + switch (getStreamType(OggPage)) { + case ogg_theora: + return() + } + } else + return(0); +} + + + +OggStreamDecoder* OggDecoderFactory::getOggStreamDecoder(OggPacket& packet) +{ + +} + diff -Nru oggvideotools-0.8a/src/base/oggDecoderFactory.h oggvideotools-0.9.1/src/base/oggDecoderFactory.h --- oggvideotools-0.8a/src/base/oggDecoderFactory.h 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/base/oggDecoderFactory.h 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,21 @@ +#ifndef OGGDECODERFACTORY_H_ +#define OGGDECODERFACTORY_H_ + +#include "oggPage.h" +#include "oggPacket.h" +#include "oggTypes.h" +#include "oggStreamDecoder.h" + +class OggDecoderFactory { +public: + OggDecoderFactory(); + virtual ~OggDecoderFactory(); + + static OggStreamDecoder* getOggStreamDecoder(OggPage& page); + static OggStreamDecoder* getOggStreamDecoder(OggPacket& packet); + + static OggType getStreamType(OggPage& page); + static OggType getStreamType(OggPacket& packet); +}; + +#endif /*OGGDECODERFACTORY_H_*/ diff -Nru oggvideotools-0.8a/src/base/oggDecoder.h oggvideotools-0.9.1/src/base/oggDecoder.h --- oggvideotools-0.8a/src/base/oggDecoder.h 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/base/oggDecoder.h 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,99 @@ +/* + * OggDecoder + * + * Copyright (C) 2008 Joern Seger + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + * + */ + +#ifndef OGGDECODER_H_ +#define OGGDECODER_H_ + +#include +#include + +#include "mediaDecoder.h" +#include "rawMediaPacket.h" +#include "oggPage.h" +#include "oggRingbuffer.h" +#include +#include + +//! class to decode a raw bytestream into Ogg packets +/*! This class awaits raw packets (in form of a RawMediaPacket). These + * raw packets were inserted into a ringbuffer, from which the Ogg packets + * are extracted. + * + * When a raw packet has been inserted into the ring buffer, the OggDecoder + * tries to extract one or more Ogg packets immediately. Therefor in normal + * operations, the ring buffer can not overflow, if the ring buffer size is + * big enough to hold a full Ogg Packet. + * + * + * Example: + \code +RawMediaPacket rawPacket; +OggPage oggPage; + +FileRepository m_repository("myfile.ogg", MediaUnit::read); +OggDecoder oggDecoder; + +m_repository >> rawPacket; +oggDecoder << rawPacket; + +if (oggDecoder.isAvailable()) + oggDecoder >> oggPage; +\endcode + * */ +class OggDecoder : public MediaDecoder { + +protected: + boost::circular_buffer m_oggRingbuffer; + std::queue m_oggPageList; + + void getNextPages(); + +public: + OggDecoder(); + virtual ~OggDecoder(); + + //! Stream input method + /*! This method inserts a RawMediaPacket, which is just a bunch of + * raw bytes, into the decoder. When a new packet arrives, the + * decoder tries to extract the oggPages, which are fully available. + * The oggPages will then be buffered within a m_oggPageList. + * The uninterpreted data is stored until the next rawdata is received. + * @param mediaPacket This is the raw media packet, created by a m_repository. + * @return A reference to the actual OggDecoder object. + * */ + virtual OggDecoder& operator<<(RawMediaPacket& mediaPacket); + + //! Stream output method + /*! This method returns the next oggPage within the list of OggPages. + * If there is no page availabe, this method leaves the OggPage object untoched. + * @param oggPage the oggPage to be filled. + * @return A reference to the actual OggDecoder object. + * */ + virtual OggDecoder& operator>>(OggPage& page); + + uint32_t getNextPageLength(); + + virtual void clear(); + + uint32 space(); +}; + +#endif /*OGGDECODER_H_*/ diff -Nru oggvideotools-0.8a/src/base/oggEncoder.cpp oggvideotools-0.9.1/src/base/oggEncoder.cpp --- oggvideotools-0.8a/src/base/oggEncoder.cpp 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/base/oggEncoder.cpp 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,133 @@ +/* + * OggEncoder + * + * Copyright (C) 2008 Joern Seger + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + * + */ + +#include +#include + +#include "oggEncoder.h" +#include "log.h" + +PageBufferElement::PageBufferElement() + : time(-1), empty(true), interpreter(0) +{ +} + +PageBufferElement::~PageBufferElement() +{ +} + +OggEncoder::OggEncoder() + : withBuffer(false) +{ + setConfigured(); +} + +OggEncoder::~OggEncoder() +{ +} + +/* +void OggEncoder::createJitterBuffer(uint8 numOfStreams) +{ + if (numOfStreams) { + oggBuffer.resize(numOfStreams); + withBuffer = true; + } +} +*/ + +void OggEncoder::flush() +{ + +} + +void OggEncoder::serializePage(OggPage& page) +{ + + rawPacketList.push_back(std::make_shared(page->data(), true)); + + setAvailable(); +} + +void OggEncoder::insertNextPage(OggPage& page) +{ + +} + + +OggEncoder& OggEncoder::operator<<(OggPage page) +{ + if (!withBuffer) { + serializePage(page); + return(*this); + } + /* + uint8 m_streamNo(page->getStreamNo()); + double time(oggBuffer[m_streamNo].interpreter->getTime(page->granulepos())); + + double nextTime(-2); + uint8 nextStreamNo(0); + + while(!oggBuffer[m_streamNo].m_empty) { + + // find the next packet to send out + for(uint32 i(0); i oggBuffer[i].time)) { + nextTime = oggBuffer[i].time; + nextStreamNo = i; + } + } + + // write page to the output buffer + serializePage(oggBuffer[nextStreamNo].page); + + // ... and mark the buffer as m_empty + oggBuffer[nextStreamNo].m_empty = true; + + } + + // insert the page into the buffer + oggBuffer[m_streamNo].page = page; + oggBuffer[m_streamNo].time = time; + oggBuffer[m_streamNo].m_empty = false; + */ + return(*this); +} + +OggEncoder& OggEncoder::operator>>(RawMediaPacket& packet) +{ + if (isEmpty()) { + logger.error() << "OggEncoder::operator>>: no packet available\n"; + return(*this); + } + + packet = rawPacketList.front(); + rawPacketList.pop_front(); + + if (rawPacketList.empty()) + setEmpty(); + + return(*this); +} + + diff -Nru oggvideotools-0.8a/src/base/oggEncoder.h oggvideotools-0.9.1/src/base/oggEncoder.h --- oggvideotools-0.8a/src/base/oggEncoder.h 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/base/oggEncoder.h 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,71 @@ +/* + * OggEncoder + * + * Copyright (C) 2008 Joern Seger + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + * + */ + +#ifndef OGG_ENCODER_H +#define OGG_ENCODER_H + +#include +#include + +#include "mediaEncoder.h" +#include "oggPage.h" +#include "rawMediaPacket.h" +#include "granulePosInterpreter.h" +#include "streamConfig.h" + +class PageBufferElement { + +public: + PageBufferElement(); + virtual ~PageBufferElement(); + + double time; + bool empty; + OggPage page; + GranulePosInterpreter* interpreter; + +}; + +class OggEncoder : public MediaEncoder { + +protected: + bool withBuffer; + std::vector oggBuffer; + std::list rawPacketList; + + void serializePage(OggPage& page); + void insertNextPage(OggPage& page); + void createJitterBuffer(uint8 numOfStreams); + +public: + + OggEncoder(); + virtual ~OggEncoder(); + + void configure(std::vector configInformation); + + void flush(); + + OggEncoder& operator<<(OggPage page); + OggEncoder& operator>>(RawMediaPacket& packet); +}; + +#endif diff -Nru oggvideotools-0.8a/src/base/oggHeader.h oggvideotools-0.9.1/src/base/oggHeader.h --- oggvideotools-0.8a/src/base/oggHeader.h 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/base/oggHeader.h 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,57 @@ +/* + * information about the ogg header + * + * Copyright (C) 2005-2008 Joern Seger + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + * + */ + +#ifndef oggHeader_h +#define oggHeader_h + +#include "definition.h" + +struct OggHeader { + + char ogg[4]; + char version; + +#ifdef LITTLE_ENDIAN + char pack_type:1; + char page_type:1; + char last:1; + char reserved:5; +#else + char reserved:5; + char last:1; + char page_type:1; + char pack_type:1; +#endif + int64 position; + uint32 serial; + uint32 pageNo; + uint32 checksum; + uint8 tableSegments; + +} __attribute__ ((packed)); + +struct StreamType { + unsigned char headerType; + char typeName[6]; +} __attribute__ ((packed)); + + +#endif diff -Nru oggvideotools-0.8a/src/base/oggPacket.cpp oggvideotools-0.9.1/src/base/oggPacket.cpp --- oggvideotools-0.8a/src/base/oggPacket.cpp 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/base/oggPacket.cpp 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,335 @@ +/* + * OggPacket will carry all relevant information of an ogg packet + * + * Copyright (C) 2008 Joern Seger + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + * + */ + +#include +#include +#include +#include + +#include "oggPacket.h" + +OggPacketInternal::OggPacketInternal() + : m_streamType(OggType::unknown), m_streamNo(255), m_streamHeader(false) +{ + // create a packet without any extra data + memset(&m_oggPacket,0, sizeof(m_oggPacket)); + m_oggPacket.granulepos = -1; + +} + +OggPacketInternal::OggPacketInternal(const ogg_packet& pkt) + : m_streamType(OggType::unknown), m_streamNo(255), m_streamHeader(false) +{ + + m_oggPacket = pkt; + + // it is unclear, who is the owner of the data!? + uint8_t* tmp = new uint8_t [pkt.bytes]; + memcpy(tmp, pkt.packet, pkt.bytes); + m_oggPacket.packet = tmp; + +} + +OggPacketInternal::OggPacketInternal(uint8 *data, uint32 length, + uint32 packetNo, int64 granulePos, PacketType packetType) + : m_streamType(OggType::unknown), m_streamNo(255), m_streamHeader(false) +{ + uint8_t* tmp_data(0); + + tmp_data = new uint8_t[length]; + memcpy(tmp_data, data, length); + + m_oggPacket.packet = tmp_data; + m_oggPacket.bytes = length; + m_oggPacket.b_o_s = 0; + m_oggPacket.e_o_s = 0; + m_oggPacket.granulepos = granulePos; + m_oggPacket.packetno = packetNo; + + switch (packetType) { + case PacketType::bos: + m_oggPacket.b_o_s = 256; + break; + case PacketType::eos: + m_oggPacket.e_o_s = 256; + break; + default: { + } + } + +} + +OggPacketInternal::OggPacketInternal(std::vector data, uint32 packetNo, int64 granulePos, PacketType packetType) + : m_streamType(OggType::unknown), m_streamNo(255), m_streamHeader(false) +{ + uint8_t* tmp_data(0); + + if (data.size() > 0) { + tmp_data = new uint8_t[data.size()]; + memcpy(tmp_data, &data[0], data.size()); + } + + m_oggPacket.packet = tmp_data; + m_oggPacket.bytes = data.size(); + m_oggPacket.b_o_s = 0; + m_oggPacket.e_o_s = 0; + m_oggPacket.granulepos = granulePos; + m_oggPacket.packetno = packetNo; + + switch (packetType) { + case PacketType::bos: + m_oggPacket.b_o_s = 256; + break; + case PacketType::eos: + m_oggPacket.e_o_s = 256; + break; + default: { + } + } + +} + + + +OggPacket OggPacketInternal::clone() +{ + OggPacket pkt = std::make_shared(m_oggPacket); + + /* a bit nasty, as ogg_packet is c */ +// uint8* data = new uint8[m_oggPacket.bytes]; +// memcpy(data, m_oggPacket.packet, m_oggPacket.bytes); +// +// PacketType packetType(PacketType::normal); +// +// if (m_oggPacket.b_o_s) +// packetType = PacketType::bos; +// +// if (m_oggPacket.e_o_s) +// packetType = PacketType::eos; +// +// OggPacket pkt = std::make_shared(data, m_oggPacket.bytes, m_oggPacket.packetno, m_oggPacket.granulepos, packetType); +// +// pkt->m_streamNo = m_streamNo; +// pkt->m_streamType = m_streamType; +// pkt->m_streamHeader = m_streamHeader; + + return pkt; +} + +void OggPacketInternal::liboggDelivery() +{ + uint8_t* tmp(new uint8_t [m_oggPacket.bytes]); + memcpy(tmp, m_oggPacket.packet, m_oggPacket.bytes); + m_oggPacket.packet = tmp; + + // libtheora/libvorbis or whatever - do whatever is neccessary with your memory + // I have my copy to use it wherever I like ;-) + +} + +OggPacket OggPacketInternal::getPtr() +{ + return shared_from_this(); +} + +OggPacket OggPacketInternal::create(uint8 *data, uint32 length, uint32 packetNo, int64 granulePos, OggPacketInternal::PacketType packetType) +{ + return std::make_shared(data, length, packetNo, granulePos, packetType); +} + + +OggPacketInternal::~OggPacketInternal() +{ + if (!m_streamHeader) + delete[] m_oggPacket.packet; +} + + +int64 OggPacketInternal::granulepos() +{ + return m_oggPacket.granulepos; +} + +void OggPacketInternal::setGranulepos(int64 pos) +{ + m_oggPacket.granulepos = pos; +} + +void OggPacketInternal::setStreamHeader() +{ + m_streamHeader = true; +} + +bool OggPacketInternal::isStreamHeader() +{ + return m_streamHeader; +} + +uint32 OggPacketInternal::getPacketNo() +{ + return m_oggPacket.packetno; +} + +uint32 OggPacketInternal::length() +{ + return (uint32) m_oggPacket.bytes; +} + +bool OggPacketInternal::isBOS() +{ + return m_oggPacket.b_o_s != 0; +} + +bool OggPacketInternal::isEOS() +{ + return m_oggPacket.e_o_s != 0; +} + +void OggPacketInternal::setBOS() +{ + m_oggPacket.b_o_s = 1; +} + +void OggPacketInternal::setEOS() +{ + m_oggPacket.e_o_s = 1; +} + +void OggPacketInternal::unsetBOS() +{ + m_oggPacket.b_o_s = 0; +} + +void OggPacketInternal::unsetEOS() +{ + m_oggPacket.e_o_s = 0; +} + +/* +ogg_packet OggPacketInternal::toLibogg() +{ + return(*objPtr); +} +*/ +uint8 OggPacketInternal::getStreamNo() +{ + return m_streamNo; +} + +OggType OggPacketInternal::getStreamType() +{ + return m_streamType; +} + +void OggPacketInternal::setStreamNo(uint8 no) +{ + m_streamNo = no; +} + +void OggPacketInternal::setStreamType(OggType type) +{ + m_streamType = type; +} + +uint8* OggPacketInternal::data() +{ + return m_oggPacket.packet; +} + +/* toString levels: + * 1) only data length information + * 2) header information + * 3) additional header information + * 4) header dump + * 5) body dump + */ +std::string OggPacketInternal::toString(uint8 level) +{ + std::stringstream retStream; + + retStream << "\nOgg Packet: packet length = " << m_oggPacket.bytes << std::endl; + + if (level < 1) + return(retStream.str()); + + retStream << "\nHeader Information:" + << "\n\tBegin of Stream : "; + + if (m_oggPacket.b_o_s) + retStream << "true"; + else + retStream << "false"; + + retStream << "\n\tEnd of Stream : "; + + if (m_oggPacket.e_o_s) + retStream << "true"; + else + retStream << "false"; + + retStream << "\n\tGranule Position : " << m_oggPacket.granulepos; + retStream << "\n\tPacket Number : " << m_oggPacket.packetno; + + retStream << std::endl; + + if (level < 3) + return(retStream.str()); + + retStream << "\n\tStream Number : " << (int)m_streamNo; + retStream << "\n\tStream Type : "; + + switch (m_streamType) { + case OggType::vorbis: + retStream << "Vorbis"; + break; + case OggType::theora: + retStream << "Theora"; + break; + case OggType::kate: + retStream << "Kate"; + break; + case OggType::unknown: + default: + retStream << "unknown"; + break; + } + retStream << std::endl; + + if (level < 4) + return(retStream.str()); + + retStream << "\nPacket Hex dump:" << std::hex; + + for (int32 c(0); c +#include +#include + +#ifdef HAVE_LIBOGG +#include +#endif + +#include "definition.h" +//#include "refObject.h" +#include "oggTypes.h" + +class OggPacketInternal; + +typedef std::shared_ptr OggPacket; + +class OggPacketInternal : public std::enable_shared_from_this { + +public: + + enum class PacketType { + normal, + bos, + eos + }; + +protected: + ogg_packet m_oggPacket; + + /* information about the stream type and the stream No */ + OggType m_streamType; + uint8 m_streamNo; + bool m_streamHeader; + +public: + OggPacketInternal(); + OggPacketInternal(const ogg_packet& ogg_p); + OggPacketInternal(uint8* data, uint32 length, uint32 packetNo, + int64 granulePos=-1, PacketType packetType = PacketType::normal); + OggPacketInternal(std::vector data, uint32 packetNo, int64 granulePos, PacketType packetType); + + virtual ~OggPacketInternal(); + + OggPacket clone(); + OggPacket getPtr(); + static OggPacket create(uint8* data, uint32 length, uint32 packetNo, + int64 granulePos=-1, PacketType packetType = PacketType::normal); + + int64 granulepos(); + + void setGranulepos(int64 pos); + + uint32 getPacketNo(); + uint8 getStreamNo(); + OggType getStreamType(); + ogg_packet* getUnderlayingOggPacketPtr() { + return &m_oggPacket; + } +// void cleanPacketPtr() { m_oggPacket.packet = 0; /* no delete */ } + + void setStreamType(OggType type); + void setStreamNo(uint8 streamNo); + void setStreamHeader(); + + bool isBOS(); + bool isEOS(); + bool isStreamHeader(); + + void setBOS(); + void unsetBOS(); + void setEOS(); + void unsetEOS(); + + void setPacketno(int64_t no) { + m_oggPacket.packetno = no; + } + + void liboggDelivery(); + + uint32 length(); + uint8* data(); + + /* + ogg_packet toLibogg(); + void fromLibogg(ogg_packet packet); + */ + + std::string toString(uint8 level); + +}; + +#endif /*OGGPACKET_H_*/ diff -Nru oggvideotools-0.8a/src/base/oggPage.cpp oggvideotools-0.9.1/src/base/oggPage.cpp --- oggvideotools-0.8a/src/base/oggPage.cpp 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/base/oggPage.cpp 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,278 @@ +/* + * OggPage will carry all relevant information of an ogg page + * + * Copyright (C) 2008 Joern Seger + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + * + */ + +#include +#include + +#include "oggPage.h" +#include "oggHeader.h" +#include "crc.h" + +/* OggPageInternal */ + +OggPageInternal::OggPageInternal() + : m_dataPtr(0), m_headerLength(0), m_bodyLength(0), m_streamNo(255), m_empty(true) +{ +} + +OggPageInternal::OggPageInternal(std::vector& _dataPtr, uint32 _headerLength, uint32 _bodyLength) + : m_headerLength(_headerLength), m_bodyLength(_bodyLength), m_streamNo(255), m_empty(false) +{ + m_dataPtr = _dataPtr; +} + +OggPageInternal::~OggPageInternal() +{ + +} + +bool OggPageInternal::isContinued() +{ + return(((OggHeader*)(&m_dataPtr[0]))->pack_type); +} + +void OggPageInternal::setContinued() +{ + ((OggHeader*)(&m_dataPtr[0]))->pack_type = 1; +} + +bool OggPageInternal::isBOS() +{ + return(((OggHeader*)(&m_dataPtr[0]))->page_type); +} + +bool OggPageInternal::isEOS() +{ + return(((OggHeader*)(&m_dataPtr[0]))->last); +} + +void OggPageInternal::setBOS() +{ + ((OggHeader*)(&m_dataPtr[0]))->page_type = 1; +} + +void OggPageInternal::unsetBOS() +{ + ((OggHeader*)(&m_dataPtr[0]))->page_type = 0; +} + +void OggPageInternal::setEOS() +{ + ((OggHeader*)(&m_dataPtr[0]))->last = 1; +} + +void OggPageInternal::unsetEOS() +{ + ((OggHeader*)(&m_dataPtr[0]))->last = 0; +} + +void OggPageInternal::setStreamNo(uint8 streamNo) +{ + m_streamNo = streamNo; +} + +uint8 OggPageInternal::getStreamNo() +{ + return(m_streamNo); +} + +uint32 OggPageInternal::version() +{ + return(((OggHeader*)(&m_dataPtr[0]))->version); +} + +uint32 OggPageInternal::packets() +{ + uint32 segments(((OggHeader*)(&m_dataPtr[0]))->tableSegments); + uint32 packets(0); + uint8* oggPtr=&m_dataPtr[0]+sizeof(OggHeader); + + for (uint32 i(0); iposition); +} + +uint32 OggPageInternal::serialno() +{ + return(((OggHeader*)(&m_dataPtr[0]))->serial); +} + +uint32 OggPageInternal::pageno() +{ + return(((OggHeader*)(&m_dataPtr[0]))->pageNo); +} + +uint32 OggPageInternal::length() +{ + return(m_headerLength + m_bodyLength); +} + +std::vector& OggPageInternal::data() +{ + return(m_dataPtr); +} + +bool OggPageInternal::isEmpty() +{ + return(m_empty); +} + +void OggPageInternal::createCRC() +{ + OggHeader* hdr = (OggHeader*)(&m_dataPtr[0]); + hdr->checksum = 0; + hdr->checksum = Crc::create(&m_dataPtr[0], length()); +} + +OggPage OggPageInternal::clone() +{ + OggPage page; + + if (!m_dataPtr.empty()) { + + page = std::make_shared(m_dataPtr, m_headerLength, m_bodyLength); + + } + + return page; +} + +OggPage OggPageInternal::create(std::vector& data, uint32_t headerLength, uint32_t bodyLength) +{ + OggPage page; + + if (length() > 0) { + page = std::make_shared(data, headerLength, bodyLength); + } + + return page; +} + +OggPage OggPageInternal::getPtr() +{ + return shared_from_this(); +} + +/* toString levels: + * 0) only data length information + * 1) header information + * 2) additional header information + * 3) header dump + * 4) body dump + */ +std::string OggPageInternal::toString(uint8 level) +{ + std::stringstream retStream; + + retStream << "Ogg Page: header length = " << std::dec << m_headerLength + << " and body length = " << std::dec << m_bodyLength + << std::endl; + + if (level < 1) + return(retStream.str()); + + OggHeader* header = (OggHeader*)(&m_dataPtr[0]); + retStream << "Header Information:" + << "\n\tOgg Version : " << (uint32)header->version + << "\n\tSerial No : 0x" << std::hex << header->serial << std::dec + << "\n\tPacket Type : "; + + if (header->pack_type) + retStream << "continued packet"; + else + retStream << "fresh packet"; + + retStream << "\n\tPage Type : "; + + if (header->page_type) + retStream << "begin of stream marker"; + else + retStream << "normal page"; + + retStream << "\n\tLast Page : "; + + if (header->last) + retStream << "end of stream marker"; + else + retStream << "normal page"; + + retStream << "\n\tGranule Position : " << header->position << "(0x" << std::hex << header->position << std::dec << ")"; + retStream << "\n\tPage Number : " << header->pageNo; + retStream << "\n\tChecksum : 0x" << std::hex << header->checksum << std::dec; + retStream << "\n\tTable Segments : " << (uint32) header->tableSegments; + retStream << std::endl << std::endl; + + if (level < 2) + return(retStream.str()); + + retStream << "Segments:"; + + for (uint32 c(0); ctableSegments; ++c) { + if ((c%16) == 0) + retStream << std::endl; + retStream << " "<< std::hex; + if (((unsigned int) (m_dataPtr[c+sizeof(OggHeader)])) < 16) + retStream << "0"; + retStream << (unsigned int) (m_dataPtr[c+sizeof(OggHeader)]); + } + + retStream << std::endl << std::endl; + + if (level < 3) + return(retStream.str()); + + retStream << "Header Hex dump: "; + for (uint32 c(0); c +#include +#include +#include +#include "definition.h" + +/// class to store one ogg page +/** this class is easy to handle, as it only carries the + * data area that starts with "OggS". + **/ +class OggPageInternal; +typedef std::shared_ptr OggPage; + +class OggPageInternal : public std::enable_shared_from_this { + +protected: + //! pointer to the packet data + std::vector m_dataPtr; + + uint32 m_headerLength; + uint32 m_bodyLength; + uint8 m_streamNo; + bool m_empty; + +public: + + OggPageInternal(); + OggPageInternal(std::vector& data, uint32 headerLength, uint32 bodyLength); + ~OggPageInternal(); + + + //! Is this page continued ? + bool isContinued(); + + //! Is this page a "Begin of Stream" page ? + bool isBOS(); + + //! Is this page an "End of Stream" page ? + /*! Every stream within a file (e.g. audio stream and video stream) + has it's own eos flag */ + bool isEOS(); + + bool isEmpty(); + + void setContinued(); + + void setEOS(); + void unsetEOS(); + + void setBOS(); + void unsetBOS(); + + /* what ogg version is this stream */ + uint32 version(); + uint32 packets(); + int64 granulepos(); + uint32 serialno(); + uint32 pageno(); + + void createCRC(); + + uint8 getStreamNo(); + void setStreamNo(uint8 streamNo); + + uint32 length(); + std::vector& data(); + uint32 getHeaderLength() { + return m_headerLength; + } + + OggPage clone(); + OggPage create(std::vector& data, uint32_t headerLength, uint32_t bodyLength); + OggPage getPtr(); + + std::string toString(uint8 level); + +}; + + + +#endif /*OGGPAGE_H_*/ diff -Nru oggvideotools-0.8a/src/base/oggRingbuffer.cpp oggvideotools-0.9.1/src/base/oggRingbuffer.cpp --- oggvideotools-0.8a/src/base/oggRingbuffer.cpp 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/base/oggRingbuffer.cpp 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,189 @@ +/* + * Ringbuffer to prebuffer an ogg file + * + * Copyright (C) 2005-2008 Joern Seger + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + * + */ + +/* History: + 01 2008: initial version is taken from the streamnik server project (JS) +*/ + +#include +#include + +#include + +#include "oggRingbuffer.h" +#include "oggHeader.h" +#include "exception.h" +#include "oggPage.h" +#include "log.h" + +OggRingbuffer::OggRingbuffer(uint32_t buffersize) + :ringbuffer(buffersize) +{ +} + +//OggRingbuffer::OggRingbuffer(uint8_t* data, uint32_t len) +// :ringbuffer(data, len) +//{ +//} + + +OggRingbuffer::~OggRingbuffer() +{ +} + +bool OggRingbuffer::getNextPageLength(uint32_t& length, int pageNum) +{ + lock(); + + int tmpend = end; + int tmpused = used; + length = 0; + + for (; pageNum; pageNum--) { + + logger.debug() << "get new page no " << pageNum << " available data is "<< tmpused << std::endl; + uint32_t tmplen = 0; + + if (tmpused < (int) sizeof(OggHeader)) { + unlock(); + return(false); + } + + // test is this aligned? + char starter[5]; + for (uint32_t i=0; i<5; ++i) { + starter[i] = fifo[(tmpend+i)%size]; + logger.debug() << "data " << std::hex << "0x" << (int)starter[i] << " ("<& data, uint32_t& length, uint32_t size) +{ + if (!used) + return(false); + + if (!getNextPageLength(length,size)) + return(false); + + if (length != getData(data, length)) + return(false); + + + return(true); +} + + + +//bool OggRingbuffer::getNextPage(uint8_t*& data, uint32_t& length) +//{ +// return(getNextPages(data, length, 1)); +//} + +bool OggRingbuffer::getNextPage(std::vector& data, uint32_t& length) +{ + return(getNextPages(data, length, 1)); +} + +void OggRingbuffer::dump() +{ + + for (uint32 c(0); c &data, uint32_t &length, uint32_t size); + bool getNextPage(std::vector &data, uint32_t &length); +}; + + +#endif diff -Nru oggvideotools-0.8a/src/base/oggStreamDecoder.cpp oggvideotools-0.9.1/src/base/oggStreamDecoder.cpp --- oggvideotools-0.8a/src/base/oggStreamDecoder.cpp 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/base/oggStreamDecoder.cpp 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,222 @@ +/* + * oggStreamDecoder is a class to extract an ogg packet from an + * ogg page stream + * + * Copyright (C) 2008 Joern Seger + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + * + */ + +#include +#include +#include + +#include "definition.h" +#include "oggHeader.h" +#include "oggStreamDecoder.h" +#include "exception.h" +#include "log.h" + +OggStreamDecoder::SegmentElement::SegmentElement(uint8* _data, uint32 length) : + data(_data), length(length) +{ +} + +OggStreamDecoder::OggStreamDecoder() +{ +} + +OggStreamDecoder::~OggStreamDecoder() +{ + clear(); +} + +void OggStreamDecoder::init(OggPage page) +{ + + /* if this is not a Begin Of Stream page, do nothing */ + if (!page->isBOS()) { + logger.error() << "OggStreamDecoder: ogg page is not a begin of stream\n"; + return; + } + + m_packetCount = 0; + + /* extract and remember the serial number of this stream */ + m_serialNo = page->serialno(); + setConfigured(); + +} + +void OggStreamDecoder::clear() +{ + delete[] m_tmpSegment.data; + m_tmpSegment.data = 0; + m_tmpSegment.length = 0; +} + +uint32 OggStreamDecoder::getSerialNo() +{ + return(m_serialNo); +} + +OggStreamDecoder& OggStreamDecoder::operator<<(OggPage& page) +{ + /* if this stream is not initialized, try to initialize it */ + if (!isInitialized()) + init(page); + + /* decode the packets */ + if (!isConfigured()) { + throw OggException("OggStreamDecoder::operator<<: This stream is not is not configured yet"); + } + + if (page->serialno() != m_serialNo) { + throw OggException("OggStreamDecoder::operator<<: page does not belong to this stream"); + } + + /* extract the header */ + uint8* data(&(page->data())[0]); + OggHeader* header = (OggHeader*)(data); + data += sizeof(OggHeader); + + /* extract the relevant data from the header */ + unsigned char tableSegments(header->tableSegments); + + // extract the segment table + uint8* segment = (uint8*) data; + data += tableSegments; + + /* will the last packet be continued on in the next page? */ + bool willBeContinued; + + if (segment[header->tableSegments-1] != 255) + willBeContinued = false; + else + willBeContinued = true; + + std::vector segmentDataList; + + // extract pointers to the packets in this page + SegmentElement segData(data,0); + + for (unsigned int i=0; i 1) + infoPosition = segmentDataList.size()-2; + + // now extract the ogg packets itself + // every segment in the list is one packet (maybe there is a + // remaining part in tmpSegment from the page before and + // there might be a segment, that is not finished on this page) + + for (unsigned int i(0); iisBOS())) + packetType = OggPacketInternal::PacketType::bos; + + if ((i == segmentDataList.size()-1) && (page->isEOS())) + packetType = OggPacketInternal::PacketType::eos; + + if (i == infoPosition) + granulePosition = header->position; + + /* create the packet */ + OggPacket packet(new OggPacketInternal(newPacketPtr, overallLength, m_packetCount++, granulePosition, packetType)); + delete[] newPacketPtr; + + m_oggPacketList.push_back(packet); + } + } + + if (!m_oggPacketList.empty()) + setAvailable(); + + return(*this); +} + +OggPacket OggStreamDecoder::inspectNextPacket() +{ + OggPacket packet; + + if (!isAvailable()) { + throw OggException("OggStreamDecoder::inspectNextPacket: no packet available"); + } + + // we will not harm the list in any kind + packet = m_oggPacketList.front(); + + return (packet); +} + +OggStreamDecoder& OggStreamDecoder::operator>>(OggPacket& packet) +{ + if (!isAvailable()) { + throw OggException("OggStreamDecoder::operator>>: no packet available"); + } + + packet = m_oggPacketList.front(); + m_oggPacketList.pop_front(); + + /* is this the last packet within this stream, + * then set the stream status */ + if (packet->isEOS()) { + setEndOfStream(); + } else { + if (m_oggPacketList.empty()) { + setEmpty(); + } + } + return(*this); +} + diff -Nru oggvideotools-0.8a/src/base/oggStreamDecoder.h oggvideotools-0.9.1/src/base/oggStreamDecoder.h --- oggvideotools-0.8a/src/base/oggStreamDecoder.h 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/base/oggStreamDecoder.h 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,68 @@ +/* + * oggStreamDecoder is a class to extract an ogg packet from an + * ogg page stream + * + * Copyright (C) 2008 Joern Seger + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + * + */ + +#ifndef OGGSTREAMDECODER_H_ +#define OGGSTREAMDECODER_H_ + +#include + +#include "mediaDecoder.h" +#include "oggPage.h" +#include "oggPacket.h" +#include "oggTypes.h" + +/* TODO: Exception Handling + * The library should provide a consistent exception handling */ + +class OggStreamDecoder : public MediaDecoder { + +protected: + + /*! A segment element, to cut the page into it's pieces */ + struct SegmentElement { + uint8* data; + uint32 length; + SegmentElement(uint8* data=0, uint32 length=0); + }; + + uint32 m_packetCount; + uint32 m_serialNo; + SegmentElement m_tmpSegment; + std::list m_oggPacketList; + + void init(OggPage page); + +public: + OggStreamDecoder(); + virtual ~OggStreamDecoder(); + + virtual OggStreamDecoder& operator<<(OggPage& page); + virtual OggStreamDecoder& operator>>(OggPacket& packet); + + OggPacket inspectNextPacket(); + + uint32 getSerialNo(); + + virtual void clear(); +}; + +#endif /*OGGSTREAMDECODER_H_*/ diff -Nru oggvideotools-0.8a/src/base/oggStreamEncoder.cpp oggvideotools-0.9.1/src/base/oggStreamEncoder.cpp --- oggvideotools-0.8a/src/base/oggStreamEncoder.cpp 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/base/oggStreamEncoder.cpp 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,362 @@ +/* + * oggStreamEncoder is a class to insert an ogg packet into an ogg page stream + * + * Copyright (C) 2008 Joern Seger + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + * + */ + +#include +#include +#include + +#include "definition.h" +#include "oggStreamEncoder.h" +#include "oggHeader.h" +#include "crc.h" +#include "exception.h" +#include "log.h" + +#define min(a,b) ((ab)?(a):(b)) + +std::vector OggStreamEncoder::m_usedSerialNo; + +OggStreamEncoder::OggStreamEncoder(uint32 serial) + : m_maxPageSize(4096), m_streamNo(0), m_segmentsBuffer(maxSegmentEntries), m_dataLength(0), m_dataSegments(0), m_usedData(0), m_pageCounter(0) +// packetCounter(0), positionInterpreterEnabled(false), pageKeepEnabled(false), + //posInterpreter(0) +{ + uint32 newSerial = findUniqueSerial(serial); + m_streamSerialNo = newSerial; + setInitialized(); +} + +OggStreamEncoder::~OggStreamEncoder() +{ + if (!m_oggPacketList.empty()) + logger.warning() << "OggStreamEncoder::Destructor: WARNING packet list not m_empty ("<setStreamPosition(packet); + */ + /* This is a normal packet + * Let's start to calculate the actual length */ + m_oggPacketList.push_back(packet); + + m_dataLength += packet->length(); + uint32 actSegmentsSize = (packet->length()+255)/255; + std::vector actSegments(actSegmentsSize/*maxSegmentEntries*/, 0xff); + //uint8 actSegments[maxSegmentEntries]; + + if (actSegmentsSize > maxSegmentEntries) + throw OggException("OggStreamEncoder::addPacket: Not able to handle this packet size"); + + /* calculate the segment table part of this packet */ +// memset(actSegments, 0xff, actSegmentsSize-1); + actSegments[actSegmentsSize-1] = packet->length()%255; + + m_segmentsBuffer.insert(m_segmentsBuffer.end(), actSegments.begin(), actSegments.end()); + +} + +bool OggStreamEncoder::getNextPacketLength(uint32 pageBorder, uint32& length, + uint32& segments) +{ + /* initialize the values */ + length = 0; + segments = 0; + + /* if the data length is in range, do nothing */ + if ((m_dataLength < pageBorder) && (m_segmentsBuffer.size() < 255)) { + return false; + } + + uint32_t allSegLength=0; + for(uint32_t tmpLen : m_segmentsBuffer) { + allSegLength += tmpLen; + } + //logger.info() << "\nsegments: "<< m_segmentsBuffer.size()<< "len: "<= pageBorder) || (segments >= 254)) { + if ((i+1 == m_segmentsBuffer.size()) || (m_segmentsBuffer[i+1] != 0)) { // this is due to an empty (0) segment + break; + } + } + } + + return true; + +} + +OggStreamEncoder& OggStreamEncoder::operator<<(OggPacket packet) +{ + if (!isInitialized()) { + logger.error() << "OggStreamEncoder::operator<<: Stream is not initialized correctly\n"; + return(*this); + } + + if (!isConfigured()) { + + // this must be the bos packet + if (!packet->isBOS()) { + logger.error() << "OggStreamEncoder::operator<<: First packet must be a BOS packet\n"; + return(*this); + } else { + // The first BOS packet defines the stream number + m_streamNo = packet->getStreamNo(); + } + /* add the packet to the temporal buffer */ + addPacket(packet); + + /* the encoder stream is configured */ + setConfigured(); + + /* flush the first packet (see Spec) */ + flush(); + + return(*this); + } + + /* add the packet to the temporal buffer */ + addPacket(packet); + + /* create as many packets as data is available */ + while ((m_dataLength >= m_maxPageSize) || (m_segmentsBuffer.size() >= 255)) { + createPage(m_maxPageSize); + } + + return(*this); +} + +OggStreamEncoder& OggStreamEncoder::operator>>(OggPage& page) +{ + if (isEmpty()) { + logger.error() << "OggStreamEncoder::opertator>>: no page available\n"; + return(*this); + } + + page = m_oggPageList.front(); + m_oggPageList.pop_front(); + + page->setStreamNo(m_streamNo); + + if (m_oggPageList.empty()) + setEmpty(); + + + return(*this); + +} + +void OggStreamEncoder::flush() +{ + while (m_dataLength || (m_segmentsBuffer.size() > 0)) { + createPage(m_dataLength); + } +} + +void OggStreamEncoder::createPage(uint32 minPageSize) +{ + uint32 bodyLength; + uint32 segmentsSize; + + /* Is there enough data available? */ + if (!getNextPacketLength(minPageSize, bodyLength, segmentsSize)) { + return; + } + + uint32 overallLength = sizeof(OggHeader) + segmentsSize + bodyLength; + std::vector pageData(overallLength); + //uint8* pageData = new uint8[overallLength]; + + /* an ogg page looks like this: + * -------------------------------------------------------- + * | Ogg Header | Segments Table | Packet1 | Packet2 | ... + * -------------------------------------------------------- + */ + uint8_t* pageBeginPtr = &pageData[0]; + OggHeader* header ((OggHeader*)pageBeginPtr); + uint8* segments (pageBeginPtr+sizeof(OggHeader)); + uint8* body (segments+segmentsSize); + + /* set the header information */ + memset(header, 0x00, sizeof(OggHeader)); + + memcpy(header->ogg,"OggS",4); + header->tableSegments = segmentsSize; + header->pageNo = m_pageCounter++; + header->serial = m_streamSerialNo; + header->position = -1; + + if (m_usedData) + header->pack_type = 1; // packet starts on the previous page + + /* fill the segments */ + for (uint32_t i(0); i::iterator it(m_oggPacketList.begin()); + + /* if this is a bos packet, this would surely be the first packet */ + if ((*it)->isBOS()) + header->page_type = 1; + + uint32 arrayIndex(0); + logger.debug() << "OggStreamEncoder::create_page: packet length="<< overallLength <<"\n"; + + for (; it != m_oggPacketList.end(); it++) { + + OggPacket pkt(*it); + uint32 packetLength = pkt->length(); + uint32 cpyLength = min((packetLength-m_usedData),(bodyLength-arrayIndex)); + + logger.debug() << "OggStreamEncoder::create_page: copyLength="<data()+m_usedData, cpyLength); + arrayIndex += cpyLength; + + /* is this the end of the actual page */ + if (arrayIndex == bodyLength) { + + /* the packet does not start within this page and does not end + * on this page? */ + if (m_usedData != 0) { + m_usedData += cpyLength; + if (m_usedData == packetLength) { + m_usedData = 0; + if (pkt->isEOS()) + header->last = 1; + + /* the packet is fully used, so point to the next valid packet */ + ++it; // this might be the .end() sign, however, how cares + + } + + } else { + + if (cpyLength == packetLength) { + + /* this packet ended on this page */ + m_usedData = 0; + + /* at lease the actual Packet has been completed on this page */ +// onePacketCompleted = true; + + /* Is it the end of a stream? Then mark it as such */ + if (pkt->isEOS()) + header->last = 1; + + /* the packet is fully used, so point to the next valid packet */ + ++it; // this might be the .end() sign, however, how cares + + } else { + /* keep the number of copied bytes for the next page */ + m_usedData = cpyLength; + } + } + + // we found the end of the page + if (m_usedData || it == m_oggPacketList.end()) + break; + } + + m_usedData = 0; + } + +#ifdef DEBUG + if ( arrayIndex != m_bodyLength ) { + logger.error() << "ERROR: array not matching ( index "<::iterator it1 = it; + it1--; + header->position = (*it1)->granulepos(); + m_oggPacketList.erase(m_oggPacketList.begin(), it); + } + + header->checksum = Crc::create(pageBeginPtr, overallLength); + + OggPage page = std::make_shared(pageData, sizeof(OggHeader)+segmentsSize, bodyLength); + m_oggPageList.push_back(page); + + m_dataLength -= bodyLength; + + setAvailable(); + +} + + diff -Nru oggvideotools-0.8a/src/base/oggStreamEncoder.h oggvideotools-0.9.1/src/base/oggStreamEncoder.h --- oggvideotools-0.8a/src/base/oggStreamEncoder.h 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/base/oggStreamEncoder.h 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,74 @@ +/* + * oggStreamEncoder is a class to insert an ogg packet into an ogg page stream + * + * Copyright (C) 2008-2009 Joern Seger + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + * + */ + +#ifndef OGGSTREAMENCODER_H_ +#define OGGSTREAMENCODER_H_ + +#include +#include + +#include "mediaEncoder.h" +#include "oggPage.h" +#include "oggPacket.h" +#include "ringbuffer.h" +#include "definition.h" +#include + +class OggStreamEncoder : public MediaEncoder { + +protected: + static const uint32 maxSegmentEntries = 4096; + + static std::vector m_usedSerialNo; + + uint32 m_maxPageSize; + + uint32 m_streamSerialNo; + uint8 m_streamNo; + + std::list m_oggPageList; + std::list m_oggPacketList; + boost::circular_buffer m_segmentsBuffer; + + uint32 m_dataLength; //!< is the length of the actually available data + uint32 m_dataSegments; //!< is the number of the actually available segments + uint32 m_usedData; //!< is the size of data, that has already been used in the first packet + + uint32 m_pageCounter; + + uint32 findUniqueSerial(uint32 proposal); + + void addPacket(OggPacket& packet); + bool getNextPacketLength(uint32 PageBorder, uint32& length, uint32& segments); + void createPage(uint32 minPageLength); + +public: + OggStreamEncoder(uint32 serial = 0); + virtual ~OggStreamEncoder(); + + virtual OggStreamEncoder& operator<<(OggPacket packet); + virtual OggStreamEncoder& operator>>(OggPage& page); + + virtual void flush(); + +}; + +#endif /*OGGSTREAMENCODER_H_*/ diff -Nru oggvideotools-0.8a/src/base/oggTypes.h oggvideotools-0.9.1/src/base/oggTypes.h --- oggvideotools-0.8a/src/base/oggTypes.h 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/base/oggTypes.h 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,59 @@ +/* + * this emun should carry all known streams that could be inserted into + * the ogg container + * + * Copyright (C) 2008 Joern Seger + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + * + */ + +#ifndef OGGTYPES_H_ +#define OGGTYPES_H_ + +#include +#include + +#if __GNUC__ > 4 || \ + (__GNUC__ == 4 && (__GNUC_MINOR__ > 9 || \ + (__GNUC_MINOR__ == 9 && \ + __GNUC_PATCHLEVEL__ > 2))) + +template +constexpr auto to_integral(E e) -> typename std::underlying_type::type { + return static_cast::type>(e); +} +#else +#define to_integral(a) (int)(a) +#endif + +#define MAXIDCHARS 7 + +enum class OggType { + unknown, + vorbis, + theora, + kate, + maxOggType +}; + +static const uint8_t OggTypeMap[to_integral(OggType::maxOggType)][MAXIDCHARS] = { + { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, + { 0x01, 'v', 'o', 'r', 'b', 'i', 's' }, + { 0x80, 't', 'h', 'e', 'o', 'r', 'a' }, + { 0x80, 'k', 'a', 't', 'e', 0x00, 0x00 } +}; + +#endif /*OGGTYPES_H_*/ diff -Nru oggvideotools-0.8a/src/base/rawMediaPacket.cpp oggvideotools-0.9.1/src/base/rawMediaPacket.cpp --- oggvideotools-0.8a/src/base/rawMediaPacket.cpp 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/base/rawMediaPacket.cpp 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,93 @@ +/* + * RawMediaPacket class to carry a raw bunch of data + * + * Copyright (C) 2005-2008 Joern Seger + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + * + */ + +#include +#include "rawMediaPacket.h" + +RawMediaPacketInternal::RawMediaPacketInternal() +{ +} + +RawMediaPacketInternal::RawMediaPacketInternal(std::vector& _data, bool copy) +{ + setData(_data, copy); +} + +RawMediaPacketInternal::~RawMediaPacketInternal() +{ +} + +const std::vector &RawMediaPacketInternal::getData() +{ + return data; +} + +void RawMediaPacketInternal::setData(std::vector& _data, bool copy) +{ +// data = _data; + + if (copy) { + data = _data; + } else { + data = std::move(_data); + } +} + +uint32 RawMediaPacketInternal::getSize() +{ + return(data.size()); +} + +/*********************************/ + +//RawMediaPacket::RawMediaPacket() +//{ +//} + +//RawMediaPacket::RawMediaPacket(const RawMediaPacket& packet) +// : RefObject(packet) +//{ +//} + +//RawMediaPacket::RawMediaPacket(RawMediaPacketInternal* m_dataPtr) +// : RefObject(m_dataPtr) +//{ +//} + +//RawMediaPacket::~RawMediaPacket() +//{ +//} + +//uint8* RawMediaPacket::getData(uint32& length) +//{ +// return(objPtr->getData(length)); +//} + +//uint8* RawMediaPacket::getData() +//{ +// return(objPtr->getData()); +//} + +//uint32 RawMediaPacket::size() +//{ +// return(objPtr->size()); +//} + diff -Nru oggvideotools-0.8a/src/base/rawMediaPacket.h oggvideotools-0.9.1/src/base/rawMediaPacket.h --- oggvideotools-0.8a/src/base/rawMediaPacket.h 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/base/rawMediaPacket.h 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,56 @@ +/* + * RawMediaPacket class to carry a raw bunch of data + * + * Copyright (C) 2005-2008 Joern Seger + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + * + */ + +#ifndef RAWMEDIAPACKET_H_ +#define RAWMEDIAPACKET_H_ + +#include +#include +#include + +#include "definition.h" +//#include "refObject.h" + +class RawMediaPacketInternal; +typedef std::shared_ptr RawMediaPacket; + +class RawMediaPacketInternal { + +protected: + std::vector data; + +public: + RawMediaPacketInternal(); + RawMediaPacketInternal(std::vector& _data, bool copy); + ~RawMediaPacketInternal(); + + void setData(std::vector& _data, bool copy); + const std::vector& getData(); + uint32 getSize(); + +}; + +static RawMediaPacket createRawMediaPacket() +{ + return std::make_shared(); +} + +#endif /*RAWMEDIAPACKET_H_*/ diff -Nru oggvideotools-0.8a/src/base/refObject.h oggvideotools-0.9.1/src/base/refObject.h --- oggvideotools-0.8a/src/base/refObject.h 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/base/refObject.h 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,132 @@ +/* + * RefObject class to reduce complete object copy actions + * + * Copyright (C) 2005-2008 Joern Seger + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + * + */ + +#ifndef refObject_h +#define refObject_h + +//! class to keep refences instead of copies +/*! This class keeps track of an dynamically allocated + memory on the heap. + On object copy, only the object pointer is copied and + an additionally reference counter is incremented. + On object elemination, the object is deleted only in + case that no one has still a refence to this object. + (Code is inspired by Bjarne Stoustrup) + + This code is obsoleted by the boost smart pointers, + however, actually I do not plan to create a dependency + to boost +*/ +template +class RefObject { + +protected: + + unsigned int* refCounter; + C* objPtr; + +public: + RefObject(); + RefObject(C* objPtr); + RefObject(const RefObject& obj); + virtual ~RefObject(); + + RefObject& operator=(const RefObject& obj); + + C* operator->(); + + C* obj(); + void obj(C* object); + +}; + +/* Implementation Part */ + +template inline RefObject::RefObject() + : refCounter(new unsigned int), objPtr(new C) +{ + (*refCounter) = 1; +} + +template inline RefObject::RefObject(C* objPtr) + : refCounter(new unsigned int), objPtr(objPtr) +{ + (*refCounter) = 1; +} + +template inline RefObject::RefObject(const RefObject& refObj) + : refCounter(refObj.refCounter), objPtr(refObj.objPtr) +{ + if (this == &refObj) + return; + (*refCounter)++; +} + +template inline RefObject::~RefObject() +{ + (*refCounter)--; + + if ((*refCounter) == 0) { + delete refCounter; + delete objPtr; + } +} + +template inline RefObject& +RefObject::operator=(const RefObject& refObj) +{ + if (this == &refObj) + return(*this); + + (*refCounter)--; + + if ((*refCounter) == 0) { + delete refCounter; + delete objPtr; + } + + refCounter = refObj.refCounter; + objPtr = refObj.objPtr; + + (*refCounter)++; + return(*this); +} + +template inline C* RefObject::obj() +{ + return(objPtr); +} + +template inline C* RefObject::operator->() +{ + return(objPtr); +} + +template inline void RefObject::obj(C* ptr) +{ + delete objPtr; + objPtr = ptr; + + /* reference pointer is not touched + DANGER: think - do you really want to use this method? */ +} + +#endif // refObject_h diff -Nru oggvideotools-0.8a/src/base/streamConfig.h oggvideotools-0.9.1/src/base/streamConfig.h --- oggvideotools-0.8a/src/base/streamConfig.h 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/base/streamConfig.h 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,26 @@ +#ifndef STREAMCONFIG_H_ +#define STREAMCONFIG_H_ + +#include + +#include "oggPacket.h" +#include "streamExtractor.h" + + +/* this configuration gives all information, that the outside world needs + * to know about the streams */ +class StreamConfig : public ExtractorInformation { + +public: + + //! Id of the stream (starts from 0 and is incremented by every new stream) + int8 streamNo; + + //! Every stream needs some header packets, which are stored here + /*! at least one "Begin of Stream" packet and maybe some additional packets. These + * will all be stored here */ + std::vector headerList; + +}; + +#endif diff -Nru oggvideotools-0.8a/src/base/streamExtractor.cpp oggvideotools-0.9.1/src/base/streamExtractor.cpp --- oggvideotools-0.8a/src/base/streamExtractor.cpp 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/base/streamExtractor.cpp 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,37 @@ +#include "streamExtractor.h" + +ExtractorInformation::ExtractorInformation() + : type(OggType::unknown), serialNo(0), parameter(0), numOfHeaderPackets(0) +{ +} + +ExtractorInformation::ExtractorInformation(const ExtractorInformation& extractorInfo) + : type(extractorInfo.type), serialNo(extractorInfo.serialNo), + parameter(0), numOfHeaderPackets(extractorInfo.numOfHeaderPackets) +{ + parameter = extractorInfo.parameter; +} + +ExtractorInformation& ExtractorInformation::operator=(const ExtractorInformation& extractorInfo) +{ + type = extractorInfo.type; + serialNo = extractorInfo.serialNo; + numOfHeaderPackets = extractorInfo.numOfHeaderPackets; + + parameter = extractorInfo.parameter; + + return(*this); +} + +ExtractorInformation::~ExtractorInformation() +{ +} + +StreamExtractor::StreamExtractor() +{ +} + +StreamExtractor::~StreamExtractor() +{ +} + diff -Nru oggvideotools-0.8a/src/base/streamExtractor.h oggvideotools-0.9.1/src/base/streamExtractor.h --- oggvideotools-0.8a/src/base/streamExtractor.h 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/base/streamExtractor.h 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,55 @@ +#ifndef STREAMEXTRACTOR_H_ +#define STREAMEXTRACTOR_H_ + +#include "oggPage.h" +#include "oggPacket.h" +#include "streamParameter.h" +#include "granulePosInterpreter.h" + +//! This is a baseclass for the configuration of a stream +/*! This class can be derived by more specific stream information + * For the decoding process, parameter is created while the decoder + * is initialized + * For the encoding process, the parameter pointer must carry a + * valid parameter list. + * The parameter list is always owned by the ExtractorInformation class + * and will be deleted when the ExtractorInformation object destructor is + * called */ + +class ExtractorInformation { + +public: + + ExtractorInformation(); + ExtractorInformation(const ExtractorInformation& extractorInfo); + ~ExtractorInformation(); + + //! Type of stream (e.g. ogg_vorbis, ogg_theora, ogg_speex) + OggType type; + + //! stream serial number (random number required by ogg) + uint32 serialNo; + + //! The first page/packet gives detailed information of the stream + std::shared_ptr parameter; + + //! the number of header packets must be identified by the stream type + uint8 numOfHeaderPackets; + + ExtractorInformation& operator=(const ExtractorInformation& extractorInfo); + +}; + + +class StreamExtractor { +public: + StreamExtractor(); + + virtual ~StreamExtractor(); + + virtual bool extract(OggPage& page, ExtractorInformation& information) = 0; + virtual bool extract(OggPacket& packet, ExtractorInformation& information) = 0; + +}; + +#endif /*STREAMEXTRACTOR_H_*/ diff -Nru oggvideotools-0.8a/src/base/streamParameter.cpp oggvideotools-0.9.1/src/base/streamParameter.cpp --- oggvideotools-0.8a/src/base/streamParameter.cpp 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/base/streamParameter.cpp 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,9 @@ +#include "streamParameter.h" + +StreamParameter::StreamParameter() +{ +} + +StreamParameter::~StreamParameter() +{ +} diff -Nru oggvideotools-0.8a/src/base/streamParameter.h oggvideotools-0.9.1/src/base/streamParameter.h --- oggvideotools-0.8a/src/base/streamParameter.h 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/base/streamParameter.h 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,34 @@ +#ifndef STREAMPARAMETER_H_ +#define STREAMPARAMETER_H_ + +#include + +//! Pure virtual class to be derived to carry stream specific information +/*! This class has been implemented to define + * a number of virtual methods to clone, compare and print out + * the stream parameters. + * + * A (derived) stream parameter carries stream specific information, that + * is needed e.g. to interpret the granule position of an ogg page. + * */ +class StreamParameter { + +public: + + StreamParameter(); + virtual ~StreamParameter(); + + //! Method to compare stream parameters + /*! @param param is the second StreamParameter object, which is compared to this StreamParameter object. + * @return true, if both stream parameters match, false if not. */ + virtual bool operator==(const StreamParameter& param) = 0; + + //! Method to create a readable string from this StreamParameter object + virtual std::string toString() = 0; + + //! Method to clone this StreamParameter object + virtual StreamParameter* clone() = 0; + +}; + +#endif /*STREAMPARAMETER_H_*/ diff -Nru oggvideotools-0.8a/src/base/test/CMakeLists.txt oggvideotools-0.9.1/src/base/test/CMakeLists.txt --- oggvideotools-0.8a/src/base/test/CMakeLists.txt 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/base/test/CMakeLists.txt 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,5 @@ +add_executable(decoderTest decoderTest.cpp) +target_link_libraries(decoderTest ovtbase ovtmisc) + +add_executable(encoderTest encoderTest.cpp) +target_link_libraries(encoderTest ovtbase ovtmisc) diff -Nru oggvideotools-0.8a/src/base/test/decoderTest.cpp oggvideotools-0.9.1/src/base/test/decoderTest.cpp --- oggvideotools-0.8a/src/base/test/decoderTest.cpp 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/base/test/decoderTest.cpp 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,58 @@ +// +// Created by joern on 23.07.16. +// + +#include "oggDecoder.h" +#include +#include + +int main(int argc, char* argv[]) +{ + + OggDecoder decoder; + + { + // create a packet, that is valid in the eyes of the decoder + std::vector packet; + + OggHeader header; + memset(&header, 0, sizeof(OggHeader)); + + header.ogg[0] = 'O'; + header.ogg[1] = 'g'; + header.ogg[2] = 'g'; + header.ogg[3] = 'S'; + + header.tableSegments = 2; + uint8_t* hdr_ptr = (uint8_t*)&header; + packet.insert(packet.end(), &hdr_ptr[0], &hdr_ptr[sizeof(OggHeader)]); + + /* add the segments table */ + packet.push_back(255); + packet.push_back(1); + + /* add all the data (that is 0xc5) */ + for (uint32_t i(0); i < 256; ++i) { + packet.push_back(0xc5); + } + + RawMediaPacket rmp = createRawMediaPacket(); + rmp->setData(packet, false); + decoder << rmp; + } + + OggPage page; + + decoder >> page; + + std::vector pg_data = page->data(); + uint32_t cnt; + + for (auto i : pg_data) { + std::cout << " 0x"< +#include + +void printif(OggPage page) +{ + if (page) { + std::cout << page->toString(5); + } else { + std::cout << "page is empty"<setBOS(); + + encoder << packet; + + std::vector packetData2; + packetData2.insert(packetData2.end(),254, 0x5c); + + packet = OggPacketInternal::create(&packetData2[0], packetData2.size(),0,0); + page.reset(); + + encoder << packet; + + while (!encoder.isEmpty()) { + page.reset(); + encoder >> page; + + printif(page); + } + + std::vector packetData3; + packetData3.insert(packetData3.end(),1276, 0xb4); + + packet = OggPacketInternal::create(&packetData3[0], packetData3.size(),0,0); + page.reset(); + + encoder << packet; + encoder.flush(); + + while (!encoder.isEmpty()) { + page.reset(); + encoder >> page; + + printif(page); + } + + + return 0; + +} diff -Nru oggvideotools-0.8a/src/basePlane.cpp oggvideotools-0.9.1/src/basePlane.cpp --- oggvideotools-0.8a/src/basePlane.cpp 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/src/basePlane.cpp 1970-01-01 00:00:00.000000000 +0000 @@ -1,30 +0,0 @@ -// -// C++ Implementation: basePlane -// -// Description: -// -// -// Author: Yorn , (C) 2009 -// -// Copyright: See COPYING file that comes with this distribution -// -// -#include "basePlane.h" - -BasePlane::BasePlane() - : width(0), height(0), plane(0) -{ -} - -BasePlane::BasePlane(uint32 _width, uint32 _height, uint32 color) - : width(_width), height(_height), plane(new uint8[_height*_width*4]) -{ - uint32* ptr((uint32*)plane); - for (uint32 i(0); i<(_height*_width); ++i) - ptr[i] = color; -} - -BasePlane::~BasePlane() -{ - delete[] plane; -} diff -Nru oggvideotools-0.8a/src/basePlane.h oggvideotools-0.9.1/src/basePlane.h --- oggvideotools-0.8a/src/basePlane.h 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/src/basePlane.h 1970-01-01 00:00:00.000000000 +0000 @@ -1,40 +0,0 @@ -// -// C++ Interface: basePlane -// -// Description: -// -// -// Author: Yorn , (C) 2009 -// -// Copyright: See COPYING file that comes with this distribution -// -// -#ifndef BASEPLANE_H -#define BASEPLANE_H - -#include "definition.h" - -/** -BasePlane contains the picture information (width, height and picture plane) - - - @author Yorn -*/ -class BasePlane { - -public: - uint32 width; - uint32 height; - - uint8* plane; - - - BasePlane(); - - BasePlane(uint32 _width, uint32 _height, uint32 color = 0x00000000 ); - - virtual ~BasePlane(); - -}; - -#endif diff -Nru oggvideotools-0.8a/src/binaries/CMakeLists.txt oggvideotools-0.9.1/src/binaries/CMakeLists.txt --- oggvideotools-0.8a/src/binaries/CMakeLists.txt 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/binaries/CMakeLists.txt 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,17 @@ +SET ( EXECUTABLES oggSplit oggDump oggJoin oggCut oggLength oggCat oggSilence ) + +SET ( EXEC_WITH_GD oggSlideshow oggThumb oggTranscode ) + +FOREACH ( exec ${EXECUTABLES} ) + ADD_EXECUTABLE ( ${exec} ${exec}.cpp ) + TARGET_LINK_LIBRARIES ( ${exec} ovtmain ovtkate ovtvorbis ovttheora ovtbase ovteffect ovtmisc resample ${ALL_LIBS} ) +ENDFOREACH ( exec ${EXECUTABLES} ) +INSTALL ( TARGETS ${EXECUTABLES} DESTINATION bin ) + +IF ( HAVE_LIBGD ) +FOREACH ( exec ${EXEC_WITH_GD} ) + ADD_EXECUTABLE ( ${exec} ${exec}.cpp ) + TARGET_LINK_LIBRARIES ( ${exec} ovtmain ovtkate ovtvorbis ovttheora ovtbase ovteffect ovtmisc resample ${ALL_LIBS} ) +ENDFOREACH ( exec ${EXEC_WITH_GD} ) +INSTALL ( TARGETS ${EXEC_WITH_GD} DESTINATION bin ) +ENDIF ( HAVE_LIBGD ) diff -Nru oggvideotools-0.8a/src/binaries/oggCat.cpp oggvideotools-0.9.1/src/binaries/oggCat.cpp --- oggvideotools-0.8a/src/binaries/oggCat.cpp 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/binaries/oggCat.cpp 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,710 @@ +/* + * oggCat is a command line tool, to concatenate video streams + * + * Copyright (C) 2008 Joern Seger + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + * + */ + +#ifdef __WIN32 +#define __GNU_LIBRARY__ +#include "../win32/getopt_win.h" +#endif + +#include +#include +#include +#include + +#include +#include + +#include "definition.h" +#include "helper.h" +#include "fileRepository.h" +#include "oggPacket.h" +#include "streamMux.h" +#include "streamSerializer.h" + +#include "cmdlineextractor.h" +#include "theoraStreamParameter.h" +#include "vorbisStreamParameter.h" +#include "wishList.h" +#include "hookHandler.h" +#include "videoHook.h" +#include "audioHook.h" +#include "exception.h" +#include "log.h" + +void printHelpScreen(const std::string& progName) +{ + logger.error() << "usage: " << progName << " [options]" + << " [ [ ... ] ]\n" + << " or: [options] -o [ [ ... ] ]\n" + << " -- package and version \"" << PACKAGE_STRING << "\"\n\n" + << "Options:\n" << " -p presize cutting (-pa for audio only)\n" + << " -d datarate of output stream\n" + << " -q video quality of output stream\n" + << " -D datarate of output audio stream\n" + << " -Q audio quality of output stream\n" + << " -s video size (e.g. 240x160)\n" + << " -f video framerate\n" << " -F audio Sample rate\n" + << " -N channel numbers\n" + << " -x no existens check for output file (for interactive usage)\n" + << " -o output file (alternative - if set, the first name is an input file!)\n" + << " -rv reencode video stream\n"<< "\n"; +} + +void analyseVideoTranscoding(WishList& wishList, + std::shared_ptr theoraConfigInput, + std::shared_ptr theoraConfigOutput) +{ + /* first we believe the output should be equal for all + * parameters that are not explicitly changed */ + *theoraConfigOutput.get() = *theoraConfigInput.get(); + + if (wishList.changeVideoDatarate) { + if (theoraConfigInput->videoBitrate != wishList.videoDatarate) { + theoraConfigOutput->videoBitrate = wishList.videoDatarate; + theoraConfigOutput->videoQuality = 0; + } + } + + if (wishList.changeVideoQuality) { + if (theoraConfigInput->videoQuality != wishList.videoQuality) { + theoraConfigOutput->videoBitrate = 0; + theoraConfigOutput->videoQuality = wishList.videoQuality; + } + } + + if (wishList.changeSize) { + if ( (theoraConfigInput->pictureX != wishList.width ) + || (theoraConfigInput->pictureY != wishList.height ) + || (theoraConfigInput->aspectRatioNum != 1 ) + || (theoraConfigInput->aspectRatioDenom != 1 )) { + + theoraConfigOutput->pictureX = wishList.width; + theoraConfigOutput->pictureY = wishList.height; + + theoraConfigOutput->calculateFrame(); + + /* no reason for using another aspect ratio than 1:1, are there? */ + theoraConfigOutput->aspectRatioDenom = 1; + theoraConfigOutput->aspectRatioNum = 1; + + } + } + + if (wishList.changeFramerate) { + + if ( ( (theoraConfigOutput->framerateNum != wishList.framerateNum ) + || (theoraConfigOutput->framerateDenom + != wishList.framerateDenom ) ) + && ( (theoraConfigOutput->framerateNum*1.0 ) + / (theoraConfigOutput->framerateDenom*1.0 ) + != (wishList.framerateNum*1.0 ) + / (wishList.framerateDenom*1.0 ) )) { + theoraConfigOutput->framerateNum = wishList.framerateNum; + theoraConfigOutput->framerateDenom = wishList.framerateDenom; + } + } + +} + +void analyseAudioTranscoding(WishList& wishList, + std::shared_ptr vorbisConfigInput, + std::shared_ptr vorbisConfigOutput) +{ + /* first we believe the output should be equal for all + * parameters, that are not explicitly changed */ + *vorbisConfigOutput.get() = *vorbisConfigInput.get(); + + if (wishList.changeAudioDatarate) { + if (vorbisConfigOutput->datarate != wishList.audioDatarate) { + vorbisConfigOutput->datarate = wishList.audioDatarate; + } + } + + if (wishList.changeAudioSamplerate) { + if (vorbisConfigOutput->samplerate != wishList.audioSamplerate) { + vorbisConfigOutput->samplerate = wishList.audioSamplerate; + } + + } + + if (wishList.changeAudioChannels) { + if (vorbisConfigOutput->channels != wishList.audioChannels) { + vorbisConfigOutput->channels = wishList.audioChannels; + } + + } + return; +} + + +int oggCatCmd(int argc, char* argv[]) +{ + std::string programName(argv[0]); + std::string outputFile; + + WishList wishList; + + std::vector videoComments; + bool withVideoComments( false); + + std::vector audioComments; + bool withAudioComments( false); + + bool reencodeVideo(false); +// bool reencodeAudio(true); is always used + + bool existenceTest(true); + + srand((uint) time(0)); + + int opt; + while ((opt = getopt(argc, argv, "hp:d:q:o:D:s:f:F:N:tC:c:r:x")) != EOF) + + switch (opt) { + + case 'h': + case '?': + printHelpScreen(programName); + exit(-1); + + case 'o': + outputFile = std::string(optarg); + break; + + case 'd': + wishList.videoDatarate = CmdlineExtractor::atoi(optarg); + wishList.changeVideoDatarate = true; + break; + + case 'D': + wishList.audioDatarate = CmdlineExtractor::atoi(optarg); + wishList.changeAudioDatarate = true; + break; + + case 'q': + wishList.videoQuality = CmdlineExtractor::atoi(optarg); + wishList.changeVideoQuality = true; + break; + + case 's': { + std::deque framesize; + CmdlineExtractor::extractUint32(framesize, optarg, 'x'); + if (framesize.size() != 2) { + logger.error() + << "please specify the size in the following way: -s320x480\n"; + exit( -1); + } + wishList.width = framesize[0]; + wishList.height = framesize[1]; + wishList.changeSize = true; + break; + + } + + case 'f': { + std::deque framerate; + CmdlineExtractor::extractUint32(framerate, optarg, ':'); + + if (framerate.size() == 1) { + wishList.framerateNum = framerate[0]; + wishList.framerateDenom = 1; + wishList.changeFramerate = true; + break; + } + + if (framerate.size() == 2) { + wishList.framerateNum = framerate[0]; + wishList.framerateDenom = (framerate[1] == 0 ) ? 1 + : framerate[1]; + wishList.changeFramerate = true; + break; + } + logger.error() + << "please specify the framerate in the following way -f25:2 or -f24\n"; + exit( -1); + + break; + + } + + case 'F': + wishList.audioSamplerate = CmdlineExtractor::atoi(optarg); + wishList.changeAudioSamplerate = true; + break; + + case 'N': + wishList.audioChannels = CmdlineExtractor::atoi(optarg); + wishList.changeAudioChannels = true; + break; + + case 't': + wishList.stretch = true; + break; + + case 'c': + withVideoComments = true; + CmdlineExtractor::extractCommentPairs(videoComments, optarg, ';', + '='); + break; + + case 'C': + withAudioComments = true; + CmdlineExtractor::extractCommentPairs(audioComments, optarg, ';', + '='); + break; + + case 'r': + switch (optarg[0]) { +// case 'a': +// reencodeAudio = true; +// break; + case 'v': + reencodeVideo = true; + break; + } + break; + + case 'x': + existenceTest = false; + break; + default: + logger.error() << "option \"-" << opt << "\" is unknown" << std::endl; + } + + argc -= optind; + argv += optind; + + /* There are two possibilities to get the output file + * "old" version is via -o option. In this case the output file is + * not m_empty. In the other case the output file is given as the first + * argument (except the options). */ + if (outputFile.empty()) { + if (argc > 1) { + + outputFile = std::string(argv[0]); + argc -= 1; + argv += 1; + + } else { + printHelpScreen(programName); + exit(-1); + } + } + + if (existenceTest && check_file_exists(outputFile)) + exit(0); + + if (argc < 2) { + printHelpScreen(programName); + exit(-1); + } + + logger.debug() << "Output file is : "< originalConfigList; + StreamSerializer* serializer = new StreamSerializer; + + if (!serializer->open(baseFile)) { + logger.error() << "Can not open file <" << baseFile << ">\n"; + exit(-1); + } + + /* read the stream configuration */ + serializer->getStreamConfig(originalConfigList); + + /* we create a vector for the input stream and set every + * value to 255 (means: ignore this stream). + * If the stream is used, the value added is the stream, where this + * input stream should be mapped to */ + std::vector streamMap; + streamMap.resize(originalConfigList.size(), 255); + + /* These are the information ordered, by the stream IDs from the input stream */ + std::vector > hookList; + std::vector muxerInformation; + + bool foundTheora(false); + bool foundVorbis(false); + + uint8 streamCounter( 0); + uint32 startInputfiles(1); + /* create the first resize round */ + + for (uint32 i=0; i theoraEncoderConfig; + std::shared_ptr theoraDecoderConfig; + + std::shared_ptr vHook = std::make_shared(streamCounter, false, true ); + + if (reencodeVideo) + vHook->forceReencoding(); + + /* here, we configure things, that do not change + * the transcoding process (alpha blend etc) */ + VideoHook::Config videoHookConfig; + videoHookConfig.stretch = wishList.stretch; + + /* configure the video hook */ + vHook->configureProcess(videoHookConfig); + + hookList.push_back(vHook); + + /* We only need these information for the information printout */ + std::vector decoderComments; + + /* configure encoder config (StreamConfig/OggComment here) */ + vHook->setDecoderConfig(decoderConfig, decoderComments); + + /* grap the information extracted by the decoder */ + theoraDecoderConfig + = std::dynamic_pointer_cast(decoderConfig.parameter); + + /* create a config for the output stream and keep a pointer */ + theoraEncoderConfig = std::make_shared(); + + analyseVideoTranscoding(wishList, theoraDecoderConfig, + theoraEncoderConfig); + + if (reencodeVideo) + theoraEncoderConfig->calculateFrame(); + + if (!withVideoComments) + videoComments = decoderComments; + + /* add the pointer to the configuration */ + encoderConfig.parameter = theoraEncoderConfig; + + /* the decoder Comments are used as well in case, keepComments + * is set within the HookHandler */ + vHook->setEncoderConfig(encoderConfig, videoComments); + + /* the configuration ID must match the stream ID */ + muxerInformation.push_back(encoderConfig); + + /* calculate how to handle the input, to create the correct output */ + vHook->initAndConnect(); + + /* set the stream ID, to which this stream should be maped to */ + streamMap[i] = streamCounter; +// theoraStreamID = streamCounter; + + streamCounter++; + + } else { + logger.warning() + << "oggCat found more than one theora stream, only the first stream is handled\n"; + } + continue; + } + + if (decoderConfig.type == OggType::vorbis) { + if (!foundVorbis) { + StreamConfig encoderConfig; + + std::shared_ptr vorbisEncoderConfig; + std::shared_ptr vorbisDecoderConfig; + + foundVorbis = true; + + std::shared_ptr aHook = std::make_shared(streamCounter, false, true ); + hookList.push_back(aHook); + + /* We only need these information for the information printout */ + std::vector decoderComments; + + /* configure encoder config (StreamConfig/OggComment here) */ + aHook->setDecoderConfig(decoderConfig, decoderComments); + + /* create a config for this stream */ + vorbisEncoderConfig = std::make_shared(); + + /* */ + vorbisDecoderConfig = std::dynamic_pointer_cast(decoderConfig.parameter); + + /* */ + encoderConfig.parameter = vorbisEncoderConfig; + + analyseAudioTranscoding(wishList, vorbisDecoderConfig, + vorbisEncoderConfig); + + if (!withAudioComments) + audioComments = decoderComments; + + /* the decoder Comments are used as well in case, keepComments + * is set within the HookHandler */ + aHook->setEncoderConfig(encoderConfig, audioComments); + + /* calculate how to handle the input, to create the correct output */ + aHook->initAndConnect(); + + muxerInformation.push_back(encoderConfig); + + /* set the stream ID, to which this stream should be maped to */ + streamMap[i] = streamCounter; +// vorbisStreamID = streamCounter; + + streamCounter++; + } else { + logger.warning() + << "oggCat found more than one vorbis stream, only the first stream is handled\n"; + } + continue; + } + +// logger.error() +// << "There is actually no stream handler available to resize this stream \n"; + } + + logger.info() << "Output Configuration: " << std::endl + << "--------------------- " << std::endl; + + for (uint32 i(0); i< hookList.size(); ++i) { + logger.info() << hookList[i]->encoderConfiguration() << std::endl; + } + + logger.info() << "Mapping\n"; + for (uint32 i(0); iavailable() ) { + time = serializer->getNextPacket(packet); + + logger.info() << " " << time << " \r"; + + uint32 hookStreamID = streamMap[packet->getStreamNo()]; + + if (hookStreamID == 255) + continue; + + HookHandler& hook(*hookList[hookStreamID]); + + hook << packet; + + while (hook.available()) { + hook >> packet; + streamCreate << packet; + } + } + + logger.info() << "\n"; + // end of the road + delete serializer; + + // handle the other files given with the arguments list + for (uint32 j(startInputfiles); j<(uint32)argc; ++j) { + + StreamSerializer serializer; + + /* try to open the file. If file is not available switch to the next one */ + std::string filename(argv[j]); + if (!serializer.open(filename)) { + logger.error() << "Can not open file <" << filename << ">\n"; + continue; + } + + logger.info() << "Concatenating file <"<"< ConfigList; + + /* read the stream configuration of the actual file */ + serializer.getStreamConfig(ConfigList); + + foundTheora = false; + foundVorbis = false; + + /* create a new stream Map */ + streamMap.clear(); + streamMap.resize(ConfigList.size(), 255); + + for (uint32 l( 0); lgetType() == OggType::theora) && !foundTheora) { + foundTheora = true; +// logger.debug() << "Theora found ("<< l <<") -> "<(*hookList[k]); + + /* We only need these information for the information printout */ + std::vector decoderComments; + + /* configure encoder config (StreamConfig/OggComment here) */ + vHook.setDecoderConfig(decoderConfig, decoderComments); + /* as not every stream is de- and encoded, the encoder + * may be confused */ + vHook.resetEncoder(); + + /* calculate how to handle the input, to create the correct output */ + vHook.initAndConnect(); + + /* set the stream ID, to which this stream should be maped to */ + streamMap[l] = (uint8)k; + + newStreamCounter++; + + } + continue; + } + } + + if (decoderConfig.type == OggType::vorbis) { + /* run through the stream map to find the original stream, + * this stream should be mapped to */ + for (uint32 k(0); kgetType() == OggType::vorbis) && !foundVorbis) { + foundVorbis = true; +// logger.debug() << "Vorbis found ("<< l <<") -> "<(*hookList[k]); + + /* We only need these information for the information printout */ + std::vector decoderComments; + + /* configure encoder config (StreamConfig/OggComment here) */ + aHook.setDecoderConfig(decoderConfig, decoderComments); + + /* calculate how to handle the input, to create the correct output */ + aHook.initAndConnect(); + + /* set the stream ID, to which this stream should be maped to */ + streamMap[l] = (uint8)k; + + newStreamCounter++; + + } + continue; + } + +// logger.error() +// << "There is actually no stream handler available to resize this stream \n"; + } + } + + if (streamCounter != newStreamCounter) { + logger.error() << "File <"< does not carry enough streams\n"; + continue; + } + + + logger.info() << "Mapping\n"; + for (uint32 i(0); igetStreamNo()]; + + if (hookStreamID == 255) + continue; + + HookHandler& hook(*hookList[hookStreamID]); + + hook << packet; + + while (hook.available()) { + hook >> packet; + streamCreate << packet; + } + } + + serializer.close(); + + } + + /* flush all data */ + for (uint32 i(0); iflush(); + + while (hookList[i]->available()) { + (*hookList[i]) >> packet; + streamCreate << packet; + } + + } + + /* set end of stream and do everything neccessary */ + streamCreate.setEndOfStream(); + + streamCreate.close(); + + logger.info() << std::endl; + + return (0); +} + +int main(int argc, char* argv[]) +{ + try { + return oggCatCmd(argc, argv); + } catch (OggException & e) { + logger.error() << "Fatal error: " << e.what() << std::endl; + return -1; + } +} + diff -Nru oggvideotools-0.8a/src/binaries/oggCut.cpp oggvideotools-0.9.1/src/binaries/oggCut.cpp --- oggvideotools-0.8a/src/binaries/oggCut.cpp 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/binaries/oggCut.cpp 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,323 @@ +/* + * oggCut is a command line tool, to cut a video stream + * + * Copyright (C) 2008 Joern Seger + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + * + */ + +#ifdef __WIN32 +#define __GNU_LIBRARY__ +#include "../win32/getopt_win.h" +#endif + +#include +#include +#include +#include +#include +#include + +#include "fileRepository.h" +#include "streamSerializer.h" +#include "streamMux.h" +#include "oggEncoder.h" +#include "oggStreamEncoder.h" +#include "exception.h" +#include "log.h" + +struct ListElement { + double time; + OggPacket packet; + ListElement(double _time, OggPacket _packet) : + time(_time), packet(_packet) { + } +}; + +static std::list packetList; +static double bufferTime(0.5); // buffer 500 ms + +uint32 _atoi(const char* data) +{ + std::stringstream stream; + uint32 value; + + stream << data; + stream >> value; + + return(value); +} + +void printHelpScreen(const std::string& progName) +{ + logger.error() << "usage: "<< progName << "[options] \n" + << "or : "<< progName << "[options] -i -o \n" + << " -- package and version \"" << PACKAGE_STRING << "\"\n\n" + << "Options are:\n" + << " -s time : Start time in milliseconds from start\n" + << " if no start time is given, 0 is assumed\n" + << " -e time : End time in milliseconds\n" + << " if no end time or -1 is given, the end of the\n" + << " file is assumed\n" + << " -l length : Length of the cut area\n" + << " -i input : Input file (alternative) \n" + << " -o output : Output file (alternative) \n"; +} + +void bufferedOutput(StreamMux& streamMux, double time, OggPacket packet) +{ + ListElement elem(time, packet); + + std::list::iterator iter(packetList.begin()); + while ((iter != packetList.end()) && (elem.time < iter->time)) + ++iter; + packetList.insert(iter, elem); + + double lastTime(packetList.front().time); + while ((lastTime - packetList.back().time) > bufferTime) { + streamMux << packetList.back().packet; + packetList.pop_back(); + } +} + +void flushBuffer(StreamMux& streamMux) +{ + while (!packetList.empty()) { + streamMux << packetList.back().packet; + packetList.pop_back(); + } +} + +/* TODO: take offset into account + * The offset should be taken into account, so that the audio stream is + * exactly as long as the video. + * + */ + +int oggCutCmd(int argc, char* argv[]) +{ + int32 startTime(0); + int32 endTime(-1); + int32 length(-1); + + std::string inputFile; + std::string outputFile; + std::string programName(argv[0]); + + srand(time(0)); + + int opt; + while ((opt = getopt(argc, argv, "hi:o:s:e:l:")) != EOF) + + switch (opt) { + + case 'h': + printHelpScreen(programName); + exit(-1); + + case 'i': + inputFile = std::string(optarg); + break; + + case 'o': + outputFile = std::string(optarg); + break; + + case 's': + startTime = _atoi(optarg); + break; + + case 'e': + endTime = _atoi(optarg); + break; + + case 'l': + length = _atoi(optarg); // yes, I know the atoi bug + break; + + } + + argc -= optind; + argv += optind; + + if ((argc > 2)) { + printHelpScreen(programName); + exit (-1); + } + + if (argc > 0) { + inputFile = std::string(argv[0]); + } + + if (argc > 1) { + outputFile = std::string(argv[1]); + } + + /* Handle wrong parameter and parameter combinations */ + if (inputFile.empty() || outputFile.empty()) { + printHelpScreen(programName); + exit (-1); + } + + if (startTime < 0) { + logger.error() << "Error: start time is invalid\n"; + exit (-1); + } + + if ((endTime > 0) && (length > 0)) { + logger.warning() << "Warning: end time and length set, ignoring length\n"; + } + + if (endTime == -1) { + if (length > 0) { + endTime = startTime + length; + } else { + if (startTime == 0) { + logger.error() << "No need to cut, just use copy!\n"; + exit (-1); + } + } + } + + double startTimeSec(startTime*1.0/1000.0); + double endTimeSec(endTime*1.0/1000.0); + + /* create a stream serializer */ + StreamSerializer streamSerializer; + bool foundTheora(false); + + /* try to open the file. If there is no such file, abort with a message */ + if (!streamSerializer.open(inputFile)) { + logger.error() << "Error: can not open file <"<\n"; + exit (-1); + } + + /* create a repository for the new files and give the repository to the stream Muxer */ + FileRepository* outfile = new FileRepository(outputFile, MediaUnit::write); + StreamMux streamMux(outfile); + + /* grep the configuration for all streams */ + std::vector streamConfigList; + streamSerializer.getStreamConfig(streamConfigList); + + /* create the time synchronizer, which holds the time offset for every stream */ + std::vector offset(streamConfigList.size(),0.0); + + /* Output some stream information and reset the offset */ + for (uint32 i(0); itoString(); + if (streamConfigList[i].type == OggType::theora) + foundTheora = true; + offset[i] = -1; + } + + /* configure the output streams */ + streamMux.configureStreams(streamConfigList); + + /* */ + OggPacket packet; + double time; + double beginTime(0); + bool startMarker(false); + + /* copy the stream if the packets are within the cut area + * and the first video keyframe has been found */ + while (streamSerializer.available()) { + + /* get the actual packet and it's time information */ + /* the time is meant to be the presentation start time */ + time = streamSerializer.getNextPacket(packet); + +#ifdef DEBUG + if (packet.getStreamType() == OggType::theora) { + logger.debug() << "theora "; + } + + if (packet.getStreamType() == OggType::vorbis) { + logger.debug() << "vorbis "; + } + + logger.debug() << time << std::endl; +#endif + + /* look deeper into the packets, if the belong into the cutting + * area */ + if ((time >= startTimeSec) && (time < endTimeSec)) { + + /* are we within our cut interval and found the first keyframe? */ + if (!startMarker) { + + /* we are doing packet analysation by ourselfs - may be changed */ + if ((!foundTheora) || ((packet->getStreamType() == OggType::theora) + &&(!(packet->data()[0] & 0x40)))) { + startMarker = true; + beginTime = time; + offset[packet->getStreamNo()] = time; + } + } + + /* have we found the real starting position? */ + if (startMarker) { + + /* if this stream has no offset calculated, do it now */ + if (offset[packet->getStreamNo()] < 0) { + offset[packet->getStreamNo()] = time; +#ifdef DEBUG + logger.debug() << "offset for stream No <"<<(int)packet.getStreamNo() + <<"> is "<getStreamNo()] - beginTime <getStreamNo()]), packet); + } + + } + + /* the end of the cut area has reached */ + if (time >= endTimeSec) { + break; + } + } + + /* first flush all buffers to be ordered correct */ + flushBuffer(streamMux); + + /* set the end of the stream and close the file, + * which flushed the all internal stream encoder to flush all pages */ + streamMux.setEndOfStream(); + streamMux.close(); + + /* close the stream serializer with a big thank you */ + streamSerializer.close(); + + return(0); +} + +int main(int argc, char* argv[]) +{ + try { + return oggCutCmd(argc, argv); + } catch (OggException & e) { + logger.error() << "Fatal error: " << e.what() << std::endl; + return -1; + } +} + diff -Nru oggvideotools-0.8a/src/binaries/oggDump.cpp oggvideotools-0.9.1/src/binaries/oggDump.cpp --- oggvideotools-0.8a/src/binaries/oggDump.cpp 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/binaries/oggDump.cpp 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,368 @@ +/* + * oggDump will dump out an ogg file either by packets or by pages + * + * Copyright (C) 2008 Joern Seger + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + * + */ + +#ifdef __WIN32 +#define __GNU_LIBRARY__ +#include "../win32/getopt_win.h" +#endif + +#include +#include +#include +#include +#include +#include +#include +#include + +#include "fileRepository.h" +#include "rawMediaPacket.h" +#include "oggDecoder.h" +#include "oggEncoder.h" +#include "oggStreamDecoder.h" +#include "oggPacket.h" +#include "oggBOSExtractorFactory.h" +#include "streamSerializer.h" +#include "exception.h" +#include "log.h" + +struct OutputUnit { + OggEncoder encoder; + FileRepository repository; +}; + +void printHelp(std::string programName) +{ + logger.error() << "usage <"< [options] file" << std::endl; + logger.error() << "Options are:\n" + << " -h : help screen \n" + << " -g : dump pages \n" + << " -p : dump packets \n" + << " -l : information depth; default: 5 (most information)\n" + << " -s : promt for streams to dump\n" + << " -o : output dump information to a file\n"; +} + +void dumpPacketof(std::string& file, uint8 dumpLevel, bool promptForStreams, std::string& outFilename) +{ + /* open the first file to be read */ + std::vector configList; + StreamSerializer serializer; + + std::ofstream outStream; + + /* if there is a filename given, write the data to this file */ + if (!outFilename.empty()) + outStream.open(outFilename.c_str()); + + if (!serializer.open(file)) { + logger.error() << "Can not open file <" << file << ">\n"; + exit(-1); + } + + /* read the stream configuration */ + serializer.getStreamConfig(configList); + + std::vector outputStreamNo; + + for (uint32 i(0); itoString(); + + if (promptForStreams) { + std::cout << "Dump this stream? (y/n) \n"; + char answer; + std::cin >> answer; + + if (answer != 'Y' && answer != 'y') + outputStreamNo.push_back(configList[i].streamNo); + + std::cout << answer << "\n"; + } + } + + OggPacket packet; + double _time; + bool print; + + while (serializer.available()) { + + _time = serializer.getNextPacket(packet); + + print = true; + for (uint32 i(0); igetStreamNo()) + print = false; + + if (!print) + continue; + + if (outFilename.empty()) { + std::cout << "\nTime: " << _time; + std::cout << packet->toString(dumpLevel); + } else { + outStream << "\nTime: " << _time; + outStream << packet->toString(dumpLevel); + } + } +} + +int oggDumpCmd(int argc, char* argv[]) +{ + + /* default values + * for the command line arguments */ + + uint8 dumpLevel(5); + std::string outFilename(""); + bool dumpPages(false); + bool dumpPackets(false); + bool promptForStreams(false); + + std::string programName(argv[0]); + + int opt; + while ((opt = getopt(argc, argv, "hgpl:so:")) != EOF) + + switch (opt) { + + case 'h': + printHelp(argv[0]); + exit(-1); + + case 'g': + dumpPages = true; + break; + + case 'p': + dumpPackets = true; + break; + + case 's': + promptForStreams = true; + break; + + case 'o': + outFilename = std::string(optarg); + break; + + case 'l': + dumpLevel = atoi(optarg); // yes, I know the atoi bug + break; + + } + + argc -= optind; + argv += optind; + + std::string analysisFile; + + if (argc == 1) + analysisFile = std::string(argv[0]); + else { + printHelp(programName); + exit(-1); + } + + if ((!dumpPages) && (!dumpPackets)) { + logger.error() << "Specify whether you want to dump pages, packet or both by -g and/or -p\n"; + exit(-1); + } + + if (dumpPackets) { + dumpPacketof(analysisFile, dumpLevel, promptForStreams, outFilename); + return(0); + } + + std::ofstream outStream; + + /* if there is a filename given, write the data to this file */ + if (!outFilename.empty()) + outStream.open(outFilename.c_str()); + + /* open the m_repository + in this easy example, it is a simple file */ + FileRepository repository(analysisFile, MediaUnit::read); + + OggDecoder oggDecoder; + std::map oggStreamDecoderList; + std::vector bosPages; + + /* run through the m_repository until there is no data left */ + while (!repository.isEndOfFile()) { + + RawMediaPacket rawDecoderPacket; + + /* extract a raw data bunch from the file .. */ + repository >> rawDecoderPacket; + + /* .. and insert it into the ogg decoder */ + oggDecoder << rawDecoderPacket; + + /* are there any complete ogg Pages available ? */ + while (oggDecoder.isAvailable()) { + + OggPage oggPage; + + /* grap the next page */ + oggDecoder >> oggPage; + + /* what ID has this page / what stream does this page belongs to */ + uint32 serialID = oggPage->serialno(); + + if (oggPage->isBOS()) { + + bool addPage(false); + + switch (OggBOSExtractorFactory::getStreamType(oggPage)) { + + case OggType::theora: { + std::cout << "Found theora stream with ID= 0x" << std::hex + << serialID << std::dec << std::endl; + if (promptForStreams) { + std::cout << "Dump this stream? (y/n) \n"; + char answer; + std::cin >> answer; + if (answer == 'Y' || answer == 'y') + addPage = true; + std::cout << answer << "\n"; + } else + addPage = true; + } + break; + + case OggType::vorbis: { + std::cout << "Found vorbis stream with ID= 0x" << std::hex + << serialID << std::dec << std::endl; + if (promptForStreams) { + std::cout << "Dump this stream? (y/n) "; + char answer; + std::cin >> answer; + if (answer == 'Y' || answer == 'y') + addPage = true; + std::cout << answer << "\n"; + } else + addPage = true; + + } + break; + + case OggType::kate: { + std::cout << "Found kate stream with ID= 0x" << std::hex + << serialID << std::dec << std::endl; + if (promptForStreams) { + std::cout << "Dump this stream? (y/n) "; + char answer; + std::cin >> answer; + if (answer == 'Y' || answer == 'y') + addPage = true; + std::cout << answer << "\n"; + } else + addPage = true; + + } + break; + + default: { + std::cout << "Found unknown stream with ID= 0x" << std::hex + << serialID << std::dec << std::endl; + if (promptForStreams) { + std::cout << "Dump this stream? (y/n) \n"; + char answer; + std::cin >> answer; + if (answer == 'Y' || answer == 'y') + addPage = true; + std::cout << answer << "\n"; + } else + addPage = true; + } + break; + } + if (addPage) { + oggStreamDecoderList[serialID] = OggStreamDecoder(); + oggStreamDecoderList[serialID] << oggPage; + bosPages.push_back(oggPage); + } + + } else { + + /* does the user want to dump this stream */ + if (oggStreamDecoderList.find(serialID) != oggStreamDecoderList.end()) { + + if (dumpPages) { + + std::string outputString; + + // are there any bos pages, then toString them first + if (!bosPages.empty()) { + for (uint32 j(0); jtoString(dumpLevel); + bosPages.clear(); + } + + outputString += oggPage->toString(dumpLevel); + + if (outFilename.empty()) + std::cout << outputString; + else + outStream << outputString; + + } + + } + } + } + } + + /* close all files */ + repository.close(); + if (!outFilename.empty()) + outStream.close(); + + return (0); +} + +int main(int argc, char* argv[]) +{ + //logger.setLevel(OggLog::LOG_DEBUG); + try { + return oggDumpCmd(argc, argv); + } catch (OggException & e) { + logger.error() << "Fatal error: " << e.what() << std::endl; + return -1; + } +} + diff -Nru oggvideotools-0.8a/src/binaries/oggJoin.cpp oggvideotools-0.9.1/src/binaries/oggJoin.cpp --- oggvideotools-0.8a/src/binaries/oggJoin.cpp 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/binaries/oggJoin.cpp 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,228 @@ +/* + * oggJoin will multiplex a number of video and audiostreams to one ogg file + * + * Copyright (C) 2008 Joern Seger + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + * + */ + +#include +#include +#include +#include + +#include "fileRepository.h" +#include "oggDecoder.h" +#include "oggEncoder.h" +#include "oggStreamDecoder.h" +#include "vorbisPosInterpreter.h" +#include "theoraPosInterpreter.h" +#include "oggPage.h" +#include "oggBOSExtractorFactory.h" +#include "exception.h" +#include "log.h" + +struct JoinElement { + FileRepository repository; + OggDecoder decoder; + GranulePosInterpreter* position; + OggPage nextPage; + bool closed; +}; + +bool getNextPage(JoinElement* element, OggPage& page) +{ + if (element->decoder.isAvailable()) { + /* if there is a packet available, get it */ + element->decoder >> page; + return(true); + } + + /* there is actually no packet available, so grap a data + * bunch and transfer it into the decoder and see if we can + * then extract a packet */ + + while (element->decoder.isEmpty()) { + + /* if we can not grap any more data, return false */ + if (element->repository.isEndOfFile()) { + element->closed = true; + return(false); + } + + /* transfer a new raw packet */ + RawMediaPacket rawPacket; + element->repository >> rawPacket; + element->decoder << rawPacket; + + } + + element->decoder >> page; + return(true); +} + +void printHelpScreen(const std::string& progName) +{ + logger.error() << "usage: " << progName + << " [ [ ... ] ]\n" + << " -- package and version \"" << PACKAGE_STRING << "\"\n\n" + << "oggJoin will multiplex a number of ogg streams into \n" + << "one file. Actually every stream must be placed in a \n" + << "single file.\n\n"; +} + +int oggJoinCmd(int argc, char* argv[]) +{ + + std::string help("-h"); + if ((argc > 1) && (help == argv[1])) { + printHelpScreen(argv[0]); + exit(-1); + } + + + if (argc < 3) { + printHelpScreen(argv[0]); + exit(-1); + } + + std::vector decoderList; + + /* open the m_repository and encoder for the joined file */ + FileRepository outRepository = FileRepository(argv[1], MediaUnit::write); + OggEncoder oggEncoder; + + /* run through the file list given by the command line */ + for (uint32 i(2); i < (uint32)argc; ++i) { + + /* create a new element for one stream */ + JoinElement* newElement = new JoinElement; + newElement->closed = false; + newElement->repository = FileRepository(argv[i], MediaUnit::read); + + /* if we can not open the file, do not insert it in the decoder list */ + if (newElement->repository.isEndOfFile()) { + logger.warning() << "Warning: can not open file <"< for reading\n\n"; + delete newElement; + } else { + + /* get the first packet bunch from the file and place it into the decoder */ + RawMediaPacket packet; + newElement->repository >> packet; + newElement->decoder << packet; + + /* there must be at least the bos page */ + OggPage page; + newElement->decoder >> page; + + ExtractorInformation config; + if (!OggBOSExtractorFactory::extractInformation(page,config)) { + logger.warning() << "Warning: <"< is not a valid ogg file"; + newElement->repository.close(); + delete newElement; + continue; + } + + newElement->position = OggBOSExtractorFactory::extractPositionInterpreter(config); + + /* if we found a valid stream, create the rest of the infrastructure */ + if (newElement->position != 0) { + + /* insert the BOS page into the new file (the first pages must be the BOS + * pages) */ + oggEncoder << page; + + /* request the next page */ + getNextPage(newElement, newElement->nextPage); + decoderList.push_back(newElement); + } else { + logger.warning() << "Warning: can not interpret ogg stream\n"; + /* we can not interpret the granual position of this stream, + * so we close it */ + newElement->repository.close(); + delete newElement; + } + } + } + + if (decoderList.empty()) { + logger.error() << "Error: could not open any stream - abort\n"; + exit(-1); + } + + uint32 closeCounter(0); + + /* run through the different streams and assemble them until there are no more pages */ + while (closeCounter < decoderList.size()) { + + double smallestTime(-10); + uint32 smallestID(0); + + /* find the element, that should be inserted into the new file */ + for (uint32 i(0); iclosed) + continue; + + double testTime(decoderList[i]->position->getTime(decoderList[i]->nextPage->granulepos())); + if ((smallestTime < -9) || (smallestTime > testTime)) { + smallestTime = testTime; + smallestID = i; + } + } + + /* insert the next page into the new file */ + oggEncoder << decoderList[smallestID]->nextPage; + + /* try to get the next page */ + if (!getNextPage(decoderList[smallestID], decoderList[smallestID]->nextPage)) { + + /* if this was the last page in this stream, clean up */ + decoderList[smallestID]->closed = true; + decoderList[smallestID]->repository.close(); + delete decoderList[smallestID]->position; + + closeCounter++; + } + + while (oggEncoder.isAvailable()) { + RawMediaPacket outPacket; + oggEncoder >> outPacket; + outRepository << outPacket; + } + } + + /* cleanup the heap */ + for (uint32 i(0); i +#include +#include +#include + +#include "fileRepository.h" +#include "streamSerializer.h" +#include "exception.h" +#include "log.h" + +void printHelpScreen(std::string& progName) +{ + logger.error() << "usage: " << progName << " \n"; +} + +int oggLengthCmd(int argc, char* argv[]) +{ + + std::string inputFile; + std::string programName(argv[0]); + + bool printVorbisExtra(false); + bool printTheoraExtra(false); + + int opt; + while ((opt = getopt(argc, argv, "hvtVT")) != EOF) + + switch (opt) { + + case 'h': + printHelpScreen(programName); + exit(-1); + + case 'v': + case 'V': + printVorbisExtra = true; + break; + + case 't': + case 'T': + printTheoraExtra = true; + break; + + } + + argc -= optind; + argv += optind; + + if (argc == 1) + inputFile = std::string(argv[0]); + else { + printHelpScreen(programName); + exit(-1); + } + + /* create the stream serializer */ + StreamSerializer streamSerializer; + + /* open the file */ + if (!streamSerializer.open(inputFile)) { + logger.error() << "Error: can not open file <"<\n"; + exit(-1); + } + + /* create the headers */ + std::vector streamConfigList; + streamSerializer.getStreamConfig(streamConfigList); + +// for (uint32 i(0); itoString(); +// } + + OggPacket packet; + double timeVorbis; + double timeTheora; + double time; + double retTime(-1); + + /* copy the stream if the packets are within the cut area + * and the first video keyframe has been found */ + while (streamSerializer.available()) { + + time = streamSerializer.getNextPacket(packet); + + if (time < 0) { + break; + } else if (packet->getStreamType() == OggType::theora) + timeTheora = time; + if (packet->getStreamType() == OggType::vorbis) + timeVorbis = time; + + retTime = time; + + } + + std::cout << (int)(retTime*1000) << std::endl; + + if (printVorbisExtra) + std::cout << " Vorbis End-Time (packet basis): " << (int)(timeVorbis*1000) << std::endl; + + if (printTheoraExtra) + std::cout << " Theora End-Time : " << (int)(timeTheora*1000) << std::endl; + + return((int)(retTime*1000)); +} + +int main(int argc, char* argv[]) +{ + try { + return oggLengthCmd(argc, argv); + } catch (OggException & e) { + logger.error() << "Fatal error: " << e.what() << std::endl; + return -1; + } +} + diff -Nru oggvideotools-0.8a/src/binaries/oggScroll.cpp oggvideotools-0.9.1/src/binaries/oggScroll.cpp --- oggvideotools-0.8a/src/binaries/oggScroll.cpp 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/binaries/oggScroll.cpp 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,217 @@ +/* + * oggScroll is a tool to scroll through a theora stream + * + * Copyright (C) 2008 Joern Seger + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + * + */ + +#include +#include +#include +#include + +#include "fileRepository.h" +#include "streamSerializer.h" +#include "theoraDecoder.h" +#include "theoraStreamParameter.h" +#include "SDLvideoOutput.h" +#include "exception.h" +#include "log.h" + +void printHelpScreen(std::string& progName) +{ + logger.error() << "usage: " << progName << "[options]\n"; +} + +int getChar() +{ + termios origTerminal; + termios tempTerminal; + int character; + + /* get the actuall terminal state */ + if ((tcgetattr (STDIN_FILENO, &tempTerminal)) == -1) + exit(-1); + + origTerminal = tempTerminal; + + + tempTerminal.c_iflag = + tempTerminal.c_iflag & ~(BRKINT | ICRNL | INPCK | ISTRIP | IXON); + tempTerminal.c_oflag = tempTerminal.c_iflag & ~(OPOST); + tempTerminal.c_cflag = tempTerminal.c_cflag & ~(CSIZE | PARENB); + tempTerminal.c_lflag = tempTerminal.c_lflag & ~(ECHO|ICANON|IEXTEN|ISIG); + tempTerminal.c_cflag = tempTerminal.c_cflag | CS8; + tempTerminal.c_cc[VMIN] = 1; + tempTerminal.c_cc[VTIME] = 0; + + /*Jetzt setzten wir den raw-Modus*/ + /* + * if ((tcsetattr (fd, TCSAFLUSH, &new_io)) == -1) + */ + + /* change terminal to raw behaviour */ + tcsetattr (STDIN_FILENO, TCSAFLUSH, &tempTerminal); +// cfmakeraw(&tempTerminal); + + /* wait for a keypress event */ + character = getchar(); + + /* restore the old terminal */ + tcsetattr (STDIN_FILENO, TCSANOW, &origTerminal); + + return(character); +} + +int oggScrollCmd(int argc, char* argv[]) +{ + std::string inputFile; + std::string programName(argv[0]); + + int opt; + while ((opt = getopt(argc, argv, "h")) != EOF) + + switch (opt) { + + case 'h': + printHelpScreen(programName); + exit(-1); + + } + + argc -= optind; + argv += optind; + + if (argc == 1) + inputFile = std::string(argv[0]); + else { + printHelpScreen(programName); + exit(-1); + } + + if (inputFile.empty()) { + logger.error() << "Error: please define an input and output file with -i and -o\n\n"; + return(-1); + } + + /* create the */ + StreamSerializer streamSerializer; + TheoraDecoder theoraDecoder; + uint8 foundTheora(0); + std::vector commentList; + + if (!streamSerializer.open(inputFile)) { + logger.error() << "Error: can not open file <"<\n"; + return(-1); + } + + uint8 theoraStreamNo(0); + + /* create the headers */ + std::vector streamConfigList; + streamSerializer.getStreamConfig(streamConfigList); + + TheoraStreamParameter* theoraConfig(0); + + /* Output some stream information */ + for (uint32 i(0); itoString(); + } + if (streamConfigList[i].type == ogg_theora) { + // take the first theora stream + if (!foundTheora) { + theoraStreamNo = streamConfigList[i].streamNo; + theoraConfig = (TheoraStreamParameter*)streamConfigList[i].parameter; + theoraDecoder.initDecoder(streamConfigList[i], commentList); + } + foundTheora++; + } + } + + OggPacket packet; + double time; + + if (foundTheora == 0) { + logger.error() << "I did not find any theora stream\n"; + exit(-1); + } + + /* create SDL video object */ + VideoInfo sdlInfo; + sdlInfo.frame_width = theoraConfig->pictureX; + sdlInfo.frame_height = theoraConfig->pictureY; + sdlInfo.offset_x=0; + sdlInfo.offset_y=0; + + //TheoraVideoPacket picture; + th_ycbcr_buffer picture; + SDLvideoOutput videoOut; + videoOut.init(sdlInfo); + + /* play back the pictures */ + bool keyframeSearch(false); + bool avail(true); + + while (1==1) { + + time = streamSerializer.getNextPacket(packet); + while (avail) { +// logger.debug() << time<<" - Stream No: "<<(int)packet.getStreamNo()<< " theora Stream No: "<<(int)theoraStreamNo<<"\n"; + if ((packet.getStreamNo() != theoraStreamNo) || ((keyframeSearch) && (!TheoraDecoder::isPacketKeyframe(packet)))) { + if (!streamSerializer.available()) + avail = false; + else + time = streamSerializer.getNextPacket(packet); + } else + break; + + } + + if (!avail) + break; + + theoraDecoder << packet; + theoraDecoder >> picture; + videoOut << picture; + + logger.info() << "\rTime: "< +#include +#include +#include +#include +#include +#include + +#include "vorbisEncoder.h" +#include "streamMux.h" +#include "fileRepository.h" +#include "oggComment.h" +#include "cmdlineextractor.h" +#include "exception.h" +#include "log.h" + +#define BUNCHSIZE 512 + +void printHelpScreen(std::string& name) +{ + logger.error() << "usage "< -n -r -l \n"; +} + +AudioPacket getSilencePacket(uint32 channels, uint32 length) +{ + float silence[length]; + + for (uint32 i(0); isetDataOfChannel(j, silence); + + // funny stack stuff ;-) + return(AudioPacket(internal)); +} + +int oggSilenceCmd( int argc, char* argv[] ) +{ + + VorbisEncoder encoder(0); + AudioPacket audioPacket; + AudioPacket lastAudioPacket; + + uint32 samplerate(44100); + uint32 channels(2); + uint32 datarate(64000); + uint32 length(60000); // 1 minute + + /* Initialisation */ + + std::string outputFile; + std::string programName(argv[0]); + + srand(time(0)); + + int opt; + while ((opt = getopt(argc, argv, "ho:d:n:r:l:")) != EOF) + + switch (opt) { + + case 'h': + printHelpScreen(programName); + exit(-1); + + case 'd': + datarate = CmdlineExtractor::atoi(optarg); + break; + + case 'o': + outputFile = std::string(optarg); + break; + + case 'n': + channels = CmdlineExtractor::atoi(optarg); + break; + + case 'r': + samplerate = CmdlineExtractor::atoi(optarg); + break; + + case 'l': + length = CmdlineExtractor::atoi(optarg); + break; + + } + + argc -= optind; + argv += optind; + + if ((argc > 1)) { + printHelpScreen(programName); + exit (-1); + } + + if (argc > 0) { + outputFile = std::string(argv[0]); + } + + /* Handle wrong parameter and parameter combinations */ + if (outputFile.empty()) { + printHelpScreen(programName); + exit (-1); + } + + StreamMux muxer(new FileRepository(outputFile, MediaUnit::write)); + + muxer.recreatePacketPosition(false); + + /* configure encoder */ + std::shared_ptr config = std::make_shared(); + config->datarate = datarate; + config->channels = channels; + config->samplerate = samplerate; + + StreamConfig streamConfig; + streamConfig.parameter = config; + + std::vector comments; // none + + try { + encoder.configureEncoder(streamConfig, comments); + } catch (std::exception & e) { + logger.error() << e.what() << std::endl; + exit(-1); + } catch (...) { + //logger.error() << what(); + exit(-1); + } + + logger.error() << "Creating ogg file with the following parameters\n"<toString(); + + /* there is only one stream in this file */ + std::vector configList; + configList.push_back(streamConfig); + + /* configure the muxer */ + muxer.configureStreams(configList); + + uint32 completeSamples((float)length/1000.0*samplerate); + + /* create one silence packet */ + audioPacket = getSilencePacket(channels, BUNCHSIZE); + + if (completeSamples%BUNCHSIZE != 0) { + lastAudioPacket = getSilencePacket(channels, completeSamples%BUNCHSIZE); + } + + OggPacket packet; + + for (uint32 i(0); i> packet; + muxer << packet; + } + } + + logger.debug() << "\n"; + + if (completeSamples%BUNCHSIZE != 0) { + logger.debug() << "\nwrite last frame with "<> packet; + muxer << packet; + } + + muxer.setEndOfStream(); + muxer.close(); + + return(0); +} + +int main(int argc, char* argv[]) +{ + try { + return oggSilenceCmd(argc, argv); + } catch (OggException & e) { + logger.error() << "Fatal error: " << e.what() << std::endl; + return -1; + } +} + diff -Nru oggvideotools-0.8a/src/binaries/oggSlideshow.cpp oggvideotools-0.9.1/src/binaries/oggSlideshow.cpp --- oggvideotools-0.8a/src/binaries/oggSlideshow.cpp 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/binaries/oggSlideshow.cpp 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,514 @@ +/* + * oggSlideshow creates a slideshow from a number of pictures + * + * Copyright (C) 2008-2009 Joern Seger + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + * + */ + + + +#ifdef __WIN32 +#define __GNU_LIBRARY__ +#include "../win32/getopt_win.h" +#endif + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include "th_helper.h" + +#include "definition.h" +#include "theoraEncoder.h" +#include "fileRepository.h" +#include "streamMux.h" +#include "cmdlineextractor.h" + +#include "effector.h" +#include "effectorTypes.h" +#include "crossfader.h" +#include "kenburnseffect.h" +#include "lowpassEffect.h" +#include "plainPicture.h" +#include "shiftEffect.h" +#include "shiftblendEffect.h" + +#include "pictureLoader.h" +#include "pictureResize.h" + +#include "log.h" +#include "exception.h" + +void printHelpScreen(std::string& name) +{ + std::cerr << "usage: "<< name <<" [options] \n"; + std::cerr << "Options: \n" + << " -s x: picture width/height of the output frame\n" + << " -f : frames per second\n" + << " -o : name of the output file\n" + << " -l : number of frames per picture frequence\n" + << " -d : datarate in bit/second\n" + << " -r : resizes the original pictures to video frame width/height and the additional resample factor\n" + << " -e : reframe picture\n" + << " -t : kb - Ken Burns\n" + << " cf - cross fade\n" + << " p - plain\n" + << " bl - blur\n" + << " s - shift\n" + << " b - shiftblend\n" + << " -q : quality (0-63)\n" + << " -c : comments in form type=value;type=value\n"; + + std::cerr << "\nadditionally you are able to set a prefix walk with -tkb:\n"; +} + +//int main(int argc, char* argv[]) +int oggSlideshowCmd(int argc, char* argv[]) +{ + /* default values */ + uint32 width(480); + uint32 height(320); + uint32 framesPerSecond(24); + std::string outputFile("slideshow.ogv"); + uint32 datarate(0); + uint32 quality(32); + float resample(1.4); + bool reframe(false); + std::vector oggComments; + int32 predefine(0); + SlideshowElement defaultSlide; + defaultSlide.duration = 8; + defaultSlide.type = KenBurns; + + srand(time(0)); + + std::string programName(argv[0]); + + int opt; + while ((opt = getopt(argc, argv, "hp:f:o:l:d:r:t:s:ec:q:")) != EOF) + + switch (opt) { + + case 'h': + case '?': + printHelpScreen(programName); + exit(-1); + + case 's': { + std::deque framesize; + CmdlineExtractor::extractUint32(framesize, optarg, 'x'); + if (framesize.size() != 2) { + logger.error() << "please specify the size in the following way: -s320x480\n"; + exit(-1); + } + width = framesize[0]; + height = framesize[1]; + + } + break; + + case 'q': + quality = atoi(optarg); + break; + + case 'f': + framesPerSecond = atoi(optarg); + break; + + case 'o': + outputFile = std::string(optarg); + break; + + case 'l': + defaultSlide.duration = atof(optarg); + break; + + case 'd': + datarate = atoi(optarg); + break; + + case 'r': + resample = atof(optarg); + if ((resample < 1) || (resample > 2)) + resample = 1.2; + break; + + case 'e': { + logger.debug() << "reframing\n"; + reframe = true; + break; + } + + case 't': { + + std::string typeStr; + std::string teststring(optarg); + std::stringstream tmp; + + std::string::size_type pos = teststring.find(':'); + typeStr = teststring.substr(0,pos); + if ((pos != std::string::npos) && (pos+1 < teststring.size())) { + tmp << teststring.substr(pos+1, std::string::npos); + tmp >> predefine; + std::cerr << "Predefine: "<< predefine<\n"; + + // extract parameters + + uint32 loadWidth; + uint32 loadHeight; + + if (slide.type == KenBurns) { + loadWidth = (uint32)(width*resample); + loadHeight = (uint32)(height*resample); + } else { + loadWidth = width; + loadHeight = height; + } + + bool biggest = (!reframe); + if (PictureLoader::load(pictureRGB, slide.filename, loadWidth, loadHeight, biggest) == false) { + continue; + } + noneFound = false; + + /* add borders, if aspect ratio does not match and the user wants that */ + if (reframe && ((loadWidth != pictureRGB->width) || (loadHeight != pictureRGB->height))) { + logger.info() << "Picture aspect ratio does not match, doing reframing\n"; + pictureRGB = PictureResize::reframe(pictureRGB, loadWidth, loadHeight); + } + + /* configure the effector */ + switch (slide.type) { + + case KenBurns: { + + KenBurnsEffect::KenBurnsConfig config; + if (predefine == 0) + config = KenBurnsEffect::createKBconfigRandom(pictureRGB, loadWidth, loadHeight, width, height, slide.duration*framesPerSecond, framesPerSecond); + else if (predefine < 0) { + config.startpointX = slide.startPosX; + config.startpointY = slide.startPosY; + config.endpointX = slide.endPosX; + config.endpointY = slide.endPosY; + config.zoomStart = slide.startZoom; + config.zoomEnd = slide.endZoom; + config.sequenceLength = slide.duration * framesPerSecond; + config.blindLength = framesPerSecond; + config.origPlane = pictureRGB; + config.outputWidth = width; + config.outputHeight = height; + + std::cerr << "s:" << slide.startPosX<<":"< "<(effector.get())->configure(config); + + break; + } + + + case Crossfade: { + + Crossfader::CrossfaderConfig config; + + config.origPlane = pictureRGB; + config.blindLength = framesPerSecond; + config.sequenceLength = slide.duration*framesPerSecond; + config.outputWidth = width; + config.outputHeight = height; + config.first = first; + + if (!effector.get() || GetEffectorType()(*effector) != Crossfade) { + effector.reset(new Crossfader); + } + static_cast(effector.get())->configure(config); + + break; + } + + case Shift: { + + ShiftEffect::ShiftConfig config; + + config.origPlane = pictureRGB; + config.blindLength = framesPerSecond; + config.sequenceLength = slide.duration*framesPerSecond; + config.outputWidth = width; + config.outputHeight = height; + config.first = first; + + if (!effector.get() || GetEffectorType()(*effector) != Shift) { + effector.reset(new ShiftEffect); + } + static_cast(effector.get())->configure(config); + + break; + } + + case ShiftBlend: { + + ShiftblendEffect::ShiftConfig config; + + config.origPlane = pictureRGB; + config.blindLength = framesPerSecond; + config.sequenceLength = slide.duration*framesPerSecond; + config.outputWidth = width; + config.outputHeight = height; + config.first = first; + config.type = ShiftblendEffect::ShiftConfig::Right; + + if (!effector.get() || GetEffectorType()(*effector) != ShiftBlend) { + effector.reset(new ShiftblendEffect); + } + static_cast(effector.get())->configure(config); + + break; + } + + case Plain: { + + PlainPicture::PlainPictureConfig config; + + config.origPlane = pictureRGB; + config.sequenceLength = slide.duration*framesPerSecond; + config.outputWidth = width; + config.outputHeight = height; + + if (!effector.get() || GetEffectorType()(*effector) != Plain) { + effector.reset(new PlainPicture); + } + static_cast(effector.get())->configure(config); + + break; + } + + case Blur : { + + LowpassEffect::LowPassPictureConfig config; + + config.origPlane = pictureRGB; + config.blindLength = framesPerSecond; + config.sequenceLength = slide.duration*framesPerSecond; + config.outputWidth = width; + config.outputHeight = height; + config.first = first; + config.last = last; + + if (!effector.get() || GetEffectorType()(*effector) != Blur) { + effector.reset(new LowpassEffect); + } + static_cast(effector.get())->configure(config); + break; + } + } + + RGBPlane outputPlane; + OggPacket packet; + th_ycbcr_buffer theoraPictureBuffer; + th_clean_ycbcr(theoraPictureBuffer); + + while (effector->available()) { + + (*effector) >> outputPlane; + + PictureLoader::exportYCrCb_theora(outputPlane, theoraPictureBuffer); + + theoraEncoder << theoraPictureBuffer; + theoraEncoder >> packet; + std::cerr << "\r " <getPacketNo()*1.0/(framesPerSecond*1.0)<<" "; + streamCreate << packet; + + } + + th_free_ycbcr(theoraPictureBuffer); + + } catch (const char* errorString) { + std::cout << errorString << std::endl; + return(-1); + } + first = false; + } + + if (noneFound) + return(-1); + + streamCreate.setEndOfStream(); + streamCreate.close(); + + std::cout << std::endl; +#ifdef OSX_MALLOC_DEBUG + std::cout << "Done!\n"; + while (1==1) { } +#endif + + return(0); +} + +int main(int argc, char* argv[]) +{ + logger.setLevel(OggLog::LOG_INFO); + try { + return oggSlideshowCmd(argc, argv); + } catch (OggException & e) { + logger.error() << "Fatal error: " << e.what() << std::endl; + return (-1); + } +} diff -Nru oggvideotools-0.8a/src/binaries/oggSplit.cpp oggvideotools-0.9.1/src/binaries/oggSplit.cpp --- oggvideotools-0.8a/src/binaries/oggSplit.cpp 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/binaries/oggSplit.cpp 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,163 @@ +/* + * oggSplit will demultiplex a number of video and audio streams from an ogg file + * + * Copyright (C) 2008 Joern Seger + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + * + */ + +#include +#include +#include +#include +#include + +#include "fileRepository.h" +#include "rawMediaPacket.h" +#include "oggDecoder.h" +#include "oggEncoder.h" +#include "oggStreamDecoder.h" +#include "oggBOSExtractorFactory.h" +#include "exception.h" +#include "log.h" + +struct OutputUnit { + OggEncoder encoder; + FileRepository repository; +}; +void printHelpScreen(const std::string& progName) +{ + logger.error() << "usage: " << progName << " \n" + << " -- package and version \"" << PACKAGE_STRING << "\"\n\n" + << "oggSplit demultiplexes an ogg file into its streams.\n" + << "Every stream is placed into a single file, which are\n" + << "called theora_.ogg or vorbis_.ogg.\n" + << "The serial number is the unique ogg serial number of\n" + << "this stream.\n\n"; +} + +int oggSplitCmd(int argc, char* argv[]) +{ + + if (argc != 2) { + printHelpScreen(argv[0]); + exit(-1); + } + + std::string help("-h"); + + if (help == argv[1]) { + printHelpScreen(argv[0]); + exit(-1); + } + + /* open the m_repository + in this easy example, it is a simple file */ + FileRepository repository(argv[1], MediaUnit::read); + + /* open the file to write the new stream */ + std::map outputFileList; + + RawMediaPacket rawDecoderPacket; + OggDecoder oggDecoder; + + /* run through the m_repository until there is no data left */ + while (!repository.isEndOfFile()) { + + /* extract a raw data bunch from the file .. */ + repository >> rawDecoderPacket; + + /* .. and insert it into the ogg decoder */ + oggDecoder << rawDecoderPacket; + + /* are there any complete ogg Pages available ? */ + while (oggDecoder.isAvailable()) { + + OggPage oggPage; + + /* grap the next page */ + oggDecoder >> oggPage; + + /* what ID has this page / what stream does this page belongs to */ + uint32 serialID = oggPage->serialno(); + + /* if this is the start of a stream, create a m_repository file for it */ + if (oggPage->isBOS()) { + + std::stringstream filename; + + switch (OggBOSExtractorFactory::getStreamType(oggPage)) { + + case OggType::theora: + filename << "theora_" << std::hex << serialID << std::dec + << ".ogv"; + break; + + case OggType::vorbis: + filename << "vorbis_" << std::hex << serialID << std::dec + << ".oga"; + break; + + case OggType::kate: + filename << "kate_" << std::hex << serialID << std::dec + << ".ogv"; + break; + + default: + logger.warning() << "unknown type ID "<< std::hex << serialID << std::dec <<"\n"; + filename << "unknown_" << std::hex << serialID << std::dec + << ".ogv"; + + } + + logger.info() << "creating file <"<\n"; + outputFileList[serialID].repository = FileRepository( + filename.str(), MediaUnit::write); + outputFileList[serialID].encoder = OggEncoder(); + } + + /* if this is a simple page, insert it into the decoder it + belongs to */ + outputFileList[serialID].encoder << oggPage; + while (outputFileList[serialID].encoder.isAvailable()) { + + RawMediaPacket rawOutput; + + /* extract the raw packets */ + outputFileList[serialID].encoder >> rawOutput; + outputFileList[serialID].repository << rawOutput; + + } + if (oggPage->isEOS()) + outputFileList[serialID].repository.close(); + } + } + + repository.close(); + + return (0); +} + +int main(int argc, char* argv[]) +{ + try { + return oggSplitCmd(argc, argv); + } catch (OggException & e) { + logger.error() << "Fatal error: " << e.what() << std::endl; + return -1; + } +} + diff -Nru oggvideotools-0.8a/src/binaries/oggThumb.cpp oggvideotools-0.9.1/src/binaries/oggThumb.cpp --- oggvideotools-0.8a/src/binaries/oggThumb.cpp 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/binaries/oggThumb.cpp 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,574 @@ +/* + * oggThumb creates thumbs from an ogg/theora video + * + * Copyright (C) 2008-2009 Joern Seger + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + * + */ + +#ifdef __WIN32 +#define __GNU_LIBRARY__ +#include "../win32/getopt_win.h" +#else +#include +#endif + +#include +#include +#include +#include +#include +#include +#include +#include + +#include "fileRepository.h" +#include "streamSerializer.h" +#include "theoraDecoder.h" +#include "theoraStreamParameter.h" +#include "oggComment.h" +#include "rgbPlane.h" +#include "pictureLoader.h" +#include "pictureResize.h" +#include "exception.h" +#include "log.h" + +const std::string validChars("0123456789,.x"); + +void extractUint32(std::deque& list, const std::string& _argument, + char seperator) +{ + std::string argument(_argument); + std::stringstream str; + std::string substr; + + // if there is no argument given, the first frame will be created as a thumbnail + if (argument.empty()) { + list.push_back(0); + return; + } + + // delete all invalid data + std::size_t pos; + while ((pos = argument.find_first_not_of(validChars)) != std::string::npos) { + logger.debug() << "erasing <"<\n"; + argument.erase(pos,1); + } + + str << argument; + + uint32 value(0); + while (!str.eof()) { + std::stringstream part; + getline(str, substr, seperator); + part << substr; + part >> value; + list.push_back(value); + } + +} + +void extractUint32Sort(std::deque& list, const std::string& _argument, + char seperator) +{ + std::string argument(_argument); + std::stringstream str; + std::string substr; + + std::priority_queue _list; + + // if there is no argument given, the first frame will be created as a thumbnail + if (argument.empty()) { + list.push_back(0); + return; + } + + // delete all invalid data + std::size_t pos; + while ((pos = argument.find_first_not_of(validChars)) != std::string::npos) { + logger.debug() << "erasing <"<\n"; + argument.erase(pos,1); + } + + str << argument; + + uint32 value(0); + while (!str.eof()) { + std::stringstream part; + getline(str, substr, seperator); + part << substr; + part >> value; + _list.push(value); + } + + while (!_list.empty()) { + list.push_front(_list.top()); + _list.pop(); + } +} + + +void extractDoubleSort(std::deque& list, const std::string& _argument, + char seperator) +{ + std::string argument(_argument); + std::stringstream str; + std::string substr; + + std::priority_queue _list; + + // if there is no argument given, the first frame will be created as a thumbnail + if (argument.empty()) { + list.push_back(0); + return; + } + + std::size_t pos; + while ((pos = argument.find_first_not_of(validChars)) != std::string::npos) + argument.erase(pos); + + str << argument; + + double value(0); + while (!str.eof()) { + std::stringstream part; + getline(str, substr, seperator); + part << substr; + part >> value; + _list.push(value); + } + + while (!_list.empty()) { + list.push_front(_list.top()); + _list.pop(); + } + +} + +void writeActualFrame(TheoraDecoder& decoder, std::deque& packetList, + const std::string& name, uint32 width, uint32 height) +{ + th_ycbcr_buffer picture; + RGBPlane plane; + + if (!TheoraDecoder::isPacketKeyframe(packetList[0])) { + logger.error() << "first packet is not a keyframe\n"; + return; // could not happen ;-) + } + + for (uint32 i(0); i> picture; + } + + plane = PictureLoader::importYCrCb_theora(picture, decoder.getWidth(), decoder.getHeight(), decoder.getInfo().pic_x, decoder.getInfo().pic_y, decoder.getInfo().pixel_fmt); + + PictureLoader::save(plane, name, width, height); + +} + +std::string getThumbname(const std::string& filename, const std::string& forcedThumbname, + const std::string& extension, uint32& counter, uint32 reqCount) +{ + std::stringstream thumbname; + if (forcedThumbname.empty()) { + std::size_t filenamestart = filename.find_last_of('/'); + std::size_t filenamelength = filename.find_last_of('.'); + + if (filenamestart == std::string::npos) + filenamestart = 0; + else + filenamestart++; + + if ((filenamelength != std::string::npos) && (filenamelength > filenamestart)) + filenamelength = filenamelength - filenamestart; + else + filenamelength = std::string::npos; + + thumbname << filename.substr(filenamestart,filenamelength); + thumbname << "_" << counter++ << extension; + } else if (reqCount == 1) { + thumbname << forcedThumbname; + thumbname << extension; + } else { + std::size_t replacePos = forcedThumbname.find_first_of('%'); + if (replacePos != std::string::npos ) { + thumbname << forcedThumbname.substr(0, replacePos); + thumbname << (counter++); + thumbname << forcedThumbname.substr(replacePos + 1); + } else { + thumbname << forcedThumbname; + } + thumbname << extension; + } + return(thumbname.str()); +} + +void printHelpScreen(std::string& prog) +{ + logger.error() << "\nusage: "< : create thumbnail from frame at time position time1, time2, time3 second\n" + << " -f : create thumbnail from frame number frameNo1, frameNo2, frameNo3\n" + << " -s x : resize to given values (if one argument is set to 0, it is calculated to meet the aspect ratio)\n" + << " -o : formats are jpg or png\n" + << " -n : force output filename\n" + << "The filename could be given with a %, which will be replaced by the actual picture number\n" + << "\n\n"; + +} + +int oggThumbCmd(int argc, char* argv[]) +{ + std::deque timePosList; + std::deque frameNoList; + + uint32 width(0); + uint32 height(0); + uint32 requestedFrameCount(0); + + std::string programName(argv[0]); + std::string extension(".jpg"); + std::string forcedThumbname; + + int opt; + + enum { + opt_help = 256, + opt_verbose + }; + +//#ifdef with_eclipse_CDTBUG + option longOpts[] = { + { /* name: */ "help" + , /* has_arg: */ 0, + /* flag: */ NULL, + /* val: */ opt_help + }, + { /* name: */ "verbose", + /* has_arg: */ 1, + /* flag: */ NULL, + /* val: */ opt_verbose + } + }; +//#endif + + while ((opt = getopt_long(argc, argv, "hf:t:s:o:n:v:", longOpts, NULL)) != EOF) + switch (opt) { + + case '?': + case 'h': + case opt_help: + printHelpScreen(programName); + return -1; + + case 'f': + extractUint32Sort(frameNoList, optarg, ','); + break; + + case 't': + extractDoubleSort(timePosList,optarg, ','); + break; + + case 's': { + std::deque framesize; + extractUint32(framesize, optarg, 'x'); + if (framesize.size() != 2) { + logger.error() << "please specify the size in the following way: -s320x480\n"; + return -1; + } + width = framesize[0]; + height = framesize[1]; + } + break; + + case 'o': + extension = optarg; + extension = "." + extension; + break; + + case 'n': + forcedThumbname = optarg; + std::size_t extendPos; + if ((extendPos = forcedThumbname.find_last_of(".")) != std::string::npos) { + extension = forcedThumbname.substr(extendPos); + forcedThumbname = forcedThumbname.substr(0,extendPos); + } + logger.debug() << "Forced thumbnail name is "<> verbosity; + if (tempStream.fail() || verbosity < 0 || verbosity > 3) { + logger.error() << "Error: Invalid verbosity \"" << optarg << "\"\n"; + return(-1); + } + switch (verbosity) { + case 0: + logger.setLevel(OggLog::LOG_ERROR); + break; + case 1: + logger.setLevel(OggLog::LOG_WARNING); + break; + case 2: + logger.setLevel(OggLog::LOG_INFO); + break; + case 3: + logger.setLevel(OggLog::LOG_DEBUG); + } + } + break; + } + } + + argc -= optind; + argv += optind; + + requestedFrameCount = frameNoList.size() + timePosList.size(); + + if (argc == 0) { + logger.error() << "Please specify at least one ogg file\n"; + return -1; + } + + logger.info() << "Creating thumbs under the following option:\n"; + + if (!timePosList.empty()) { + logger.info() << "Frames at time (in seconds): "; + for (uint32 i(0); i tmptimePosList = timePosList; + std::deque tmpframeNoList = frameNoList; + + if (forcedThumbname.empty()) + counter=0; + + if (!streamSerializer.open(filename)) { + logger.error() << "Error: can not open file <"<\n"; + continue; + } + + uint8 theoraStreamNo(0); + + /* create the headers */ + std::vector streamConfigList; + streamSerializer.getStreamConfig(streamConfigList); + + std::vector oggComments; + + /* Output some stream information */ + for (uint32 i(0); i(*streamConfigList[i].parameter.get()); + theoraDecoder.initDecoder(streamConfigList[i], oggComments); + logger.info() << "Info:\n" << theoraDecoder.configuration()< 0 && theoraDecoder.getInfo().aspect_denominator > 0) + aspectCorrection = (theoraDecoder.getInfo().aspect_numerator*1.0)/(theoraDecoder.getInfo().aspect_denominator*1.0); + else + aspectCorrection = 1; + + if ((width == 0) && (height == 0)) { + width = theoraConfig.pictureX * aspectCorrection; //theoraConfig.frameX; + height = theoraConfig.pictureY; //theoraConfig.frameY; + } else { + if (height == 0) + height = (uint32)((width * theoraConfig.pictureY*1.0)/(theoraConfig.pictureX*aspectCorrection*1.0) + 0.5); + else if (width == 0) + width = (uint32)((height * theoraConfig.pictureX*aspectCorrection*1.0)/(theoraConfig.pictureY*1.0) +0.5); + } + + logger.info() << "width: "<\n"; + continue; + } + + if (foundTheora > 2) + logger.warning() << "Found more than one theora stream in file <"< using first stream\n"; + + /* set up first time/frame */ + double nextTime; + uint32 nextFrame; + + bool noMoreTime(false); + bool noMoreFrame(false); + + if (tmpframeNoList.empty()) { + nextFrame = std::numeric_limits::max(); + noMoreFrame = true; + } else { + nextFrame = tmpframeNoList.front(); + tmpframeNoList.pop_front(); + } + + if (tmptimePosList.empty()) { + nextTime = std::numeric_limits::max(); + noMoreTime = true; + } else { + nextTime = tmptimePosList.front(); + tmptimePosList.pop_front(); + } + + std::deque packetList; + double time; + OggPacket packet; + + while (streamSerializer.available()) { + + // get the next packet + time = streamSerializer.getNextPacket(packet); + + // is this packet a theora frame + if (packet->getStreamType() != OggType::theora) + continue; + + // write actual time + logger.info() << "\r "<getPacketNo()) { + + if (tmpframeNoList.empty()) { + nextFrame = std::numeric_limits::max(); + noMoreFrame = true; + } else { + nextFrame = tmpframeNoList.front(); + tmpframeNoList.pop_front(); + } + + + std::string thumbname = getThumbname(filename, forcedThumbname, extension, + counter, requestedFrameCount); + logger.info() << "writing "<= nextTime) { + + if (tmptimePosList.empty()) { + nextTime = std::numeric_limits::max(); + noMoreTime = true; + } else { + nextTime = tmptimePosList.front(); + tmptimePosList.pop_front(); + } + + std::string thumbname = getThumbname(filename, forcedThumbname, extension, + counter, requestedFrameCount); + + logger.info() << "writing "< +#include +#include +#include +#include + +#include +#include +#include +#include +#include + +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif + +#include + +#include "definition.h" +#include "helper.h" + +#include "rgbPlane.h" +#include "pictureBlend.h" +#include "pictureLoader.h" +#include "oggComment.h" + +#include "videoHook.h" +#include "audioHook.h" + +#include "fileRepository.h" +#include "streamSerializer.h" +#include "streamMux.h" + +#include "cmdlineextractor.h" +#include "wishList.h" +#include "exception.h" +#include "log.h" + +void printHelpScreen(const std::string& progname) +{ + logger.error() << "usage: "< new frame size\n" + << " -f video framerate in frames per second\n" + << " -F audio samplerate in Hz\n" + << " -d video datarate in Bit/s\n" + << " -D audio datarate in Bit/s\n" + << " -q theora video quality\n" + << " -N audio channels\n" + << " -a add png with alpha channel on top of a frame\n" + << " before the resize process \n" + << " form: file.png[,[,[,s]]]\n" + << " start and end time is in seconds and can be a floating point\n" + << " -A add png with alpha channel on top of a frame\n" + << " after the resize process (same parameters as -a)\n" + << " -p only use every th packet to create the new video\n" + << " -c comments for the video stream\n" + << " -C comments for the audio stream\n" + << " -x do not ask for overwriting output file\n" + << " -rv force reencode video stream\n" + << " -ra force reencode audio stream\n" + << " -Q resize quality (1=best/slow; 6=worst/fast)\n" + << " -t stretch picture to new size\n\n"; + +} + +void readPictures(std::vector& blendList) +{ + for (uint32 i(0); i < blendList.size(); ++i) { + RGBPlane plane; + try { + PictureLoader::load ( plane, blendList[i].getPictureName() ); + blendList[i].setPicturePlane( plane ); + } catch (std::exception & e) { + logger.error() << "Error: " << e.what() << std::endl; + } + + } +} + +/* you can create a alpha blend object with the following option + * -a picturex.png,1.23,2.34;picturey.png,5.12,7,s */ + +void alphaBlend(double time, RGBPlane& inPlane, + std::vector& blendList, float intensityStair) +{ + + for (uint32 i( 0); i= blendList[i].startTime) { + if (blendList[i].smooth) { + blendList[i].state = BlendElement::blend_slideIn; + } else { + blendList[i].intensity = 1.0; + blendList[i].state = BlendElement::blend_on; + } + } + } + break; + + case BlendElement::blend_slideIn: { + blendList[i].intensity += intensityStair; + + if (blendList[i].intensity >= 1.0) { + blendList[i].state = BlendElement::blend_on; + blendList[i].intensity = 1.0; + } + + } + break; + + case BlendElement::blend_on: { + if ( (blendList[i].endTime > 0.0 ) + && (time >= blendList[i].endTime )) { + if (blendList[i].smooth) { + blendList[i].state = BlendElement::blend_slideOut; + } else { + blendList[i].intensity = 0.0; + blendList[i].state = BlendElement::blend_end; + } + } + } + break; + + case BlendElement::blend_slideOut: { + blendList[i].intensity -= intensityStair; + + if (blendList[i].intensity <= 0.0) { + blendList[i].state = BlendElement::blend_end; + blendList[i].intensity = 0.0; + } + + } + break; + + case BlendElement::blend_end: { + /* do nothing */ + } + break; + + } + + if ( (blendList[i].state != BlendElement::blend_end ) + && (blendList[i].state != BlendElement::blend_off )) + inPlane = PictureBlend::alphaBlend(inPlane, blendList[i].picture, + blendList[i].intensity); + + } + +} + +void analyseVideoTranscoding(WishList& wishList, + std::shared_ptr theoraConfigInput, + std::shared_ptr theoraConfigOutput) +{ + /* first we believe the output should be equal for all + * parameters that are not explicitly changed */ + *theoraConfigOutput.get() = *theoraConfigInput.get(); + + if (wishList.changeVideoDatarate) { + if (theoraConfigInput->videoBitrate != wishList.videoDatarate) { + theoraConfigOutput->videoBitrate = wishList.videoDatarate; + theoraConfigOutput->videoQuality = 0; + } + } + + if (wishList.changeVideoQuality) { + if (theoraConfigInput->videoQuality != wishList.videoQuality) { + theoraConfigOutput->videoBitrate = 0; + theoraConfigOutput->videoQuality = wishList.videoQuality; + } + } + + if (wishList.changeSize) { + if ( (theoraConfigInput->pictureX != wishList.width ) + || (theoraConfigInput->pictureY != wishList.height ) + || (theoraConfigInput->aspectRatioNum != 1 ) + || (theoraConfigInput->aspectRatioDenom != 1 )) { + + theoraConfigOutput->pictureX = wishList.width; + theoraConfigOutput->pictureY = wishList.height; + + theoraConfigOutput->frameX = (theoraConfigOutput->pictureX+15)&~0xF; + theoraConfigOutput->frameY = (theoraConfigOutput->pictureY+15)&~0xF; + + // We force the offset to be even. + // This ensures that the chroma samples align properly with the luma + // samples. + + theoraConfigOutput->frameXOffset = ((theoraConfigOutput->frameX - theoraConfigOutput->pictureX)/2)&~1; + theoraConfigOutput->frameYOffset = ((theoraConfigOutput->frameY - theoraConfigOutput->pictureY)/2)&~1; + + /* no reason for using another aspect ratio than 1:1, are there? */ + theoraConfigOutput->aspectRatioDenom = 1; + theoraConfigOutput->aspectRatioNum = 1; + + } + } + + if (wishList.changeFramerate) { + + if ( ( (theoraConfigOutput->framerateNum != wishList.framerateNum ) + || (theoraConfigOutput->framerateDenom + != wishList.framerateDenom ) ) + && ( (theoraConfigOutput->framerateNum*1.0 ) + / (theoraConfigOutput->framerateDenom*1.0 ) + != (wishList.framerateNum*1.0 ) + / (wishList.framerateDenom*1.0 ) )) { + theoraConfigOutput->framerateNum = wishList.framerateNum; + theoraConfigOutput->framerateDenom = wishList.framerateDenom; + } + } + +} + +void analyseAudioTranscoding(WishList& wishList, + std::shared_ptr vorbisConfigInput, + std::shared_ptr vorbisConfigOutput) +{ + /* first we believe the output should be equal for all + * parameters, that are not explicitly changed */ + *vorbisConfigOutput.get() = *vorbisConfigInput.get(); + + if (wishList.changeAudioDatarate) { + if (vorbisConfigOutput->datarate != wishList.audioDatarate) { + vorbisConfigOutput->datarate = wishList.audioDatarate; + } + } + + if (wishList.changeAudioSamplerate) { + if (vorbisConfigOutput->samplerate != wishList.audioSamplerate) { + vorbisConfigOutput->samplerate = wishList.audioSamplerate; + } + + } + + if (wishList.changeAudioChannels) { + if (vorbisConfigOutput->channels != wishList.audioChannels) { + vorbisConfigOutput->channels = wishList.audioChannels; + } + + } + return; +} + +int oggTranscodeCmd(int argc, char* argv[]) +{ + + bool copyTheora( true); + bool copyVorbis( true); + + WishList wishList; + + std::vector videoComments; + + std::vector audioComments; + + bool forceVideoReencode(false); + bool forceAudioReencode(true); + bool existenceTest(true); + + std::vector blendListBefore; + std::vector blendListAfter; + + std::string programName(argv[0]); + + std::string inputFile; + std::string outputFile; + + srand( (int) time(0) ); + + int opt; + while ( (opt = getopt(argc, argv, "hs:f:d:tD:c:C:N:F:a:A:q:p:xr:o:Q:") ) != EOF) + + switch (opt) { + + case 'h': + case '?': + printHelpScreen(programName); + exit( -1); + + case 'a': { + CmdlineExtractor::extractBlend(blendListBefore, optarg, ':', ','); + copyTheora = false; + } + break; + + case 'A': { + CmdlineExtractor::extractBlend(blendListAfter, optarg, ':', ','); + copyTheora = false; + } + break; + + case 'Q': { + uint8 _quality = boost::lexical_cast(optarg); + + if (_quality < 1) + _quality = 1; + if (_quality > 5) + _quality = 5; + + // non linear + switch (_quality) { + + case 1: + wishList.quality = 2; + break; + case 2: + wishList.quality = 3; + break; + case 3: + wishList.quality = 4; + break; + case 4: + wishList.quality = 6; + break; + case 5: + wishList.quality = 10; + break; + } + + break; + } + + case 'q': { + wishList.changeVideoQuality = true; + wishList.videoQuality = boost::lexical_cast(optarg); + break; + } + + case 's': { + std::deque framesize; + CmdlineExtractor::extractUint32(framesize, optarg, 'x'); + if (framesize.size() != 2) { + logger.error() + << "please specify the size in the following way: -s320x480\n"; + exit( -1); + } + wishList.changeSize = true; + wishList.width = framesize[0]; + wishList.height = framesize[1]; + + } + break; + + case 'f': { + std::deque framerate; + CmdlineExtractor::extractUint32(framerate, optarg, ':'); + if (framerate.size() == 1) { + wishList.changeFramerate = true; + wishList.framerateNum = framerate[0]; + wishList.framerateDenom = 1; + break; + } + if (framerate.size() == 2) { + wishList.changeFramerate = true; + wishList.framerateNum = framerate[0]; + wishList.framerateDenom = (framerate[1] == 0 ) ? 1 + : framerate[1]; + break; + } + logger.error() + << "please specify the framerate in the following way -f25:2 or -f24\n"; + exit( -1); + + } + break; + + case 'd': + wishList.changeVideoDatarate = true; + wishList.videoDatarate = boost::lexical_cast(optarg); + break; + + case 'D': + wishList.changeAudioDatarate = true; + wishList.audioDatarate = boost::lexical_cast(optarg); + break; + + case 'c': + CmdlineExtractor::extractCommentPairs(videoComments, optarg, ';', + '='); + break; + + case 'C': + CmdlineExtractor::extractCommentPairs(audioComments, optarg, ';', + '='); + break; + + case 'N': + wishList.changeAudioChannels = true; + wishList.audioChannels = boost::lexical_cast(optarg); + if ( (wishList.audioChannels != 1 ) + && (wishList.audioChannels != 2 )) + wishList.changeAudioChannels = false; + break; + + case 'F': + wishList.changeAudioSamplerate = true; + wishList.audioSamplerate = boost::lexical_cast(optarg); + break; + + case 't': + wishList.stretch = true; + break; + + case 'p': + wishList.preview = boost::lexical_cast(optarg); + wishList.ignoreVorbis = true; + break; + + case 'r': + if (optarg[0] == 'v') + forceVideoReencode = true; + if (optarg[0] == 'a') + forceAudioReencode = true; + break; + + case 'x': + existenceTest = false; + break; + + case 'o': + outputFile = std::string(optarg); + break; + } + + argc -= optind; + argv += optind; + + if (existenceTest && check_file_exists(outputFile)) + exit(0); + + if (outputFile.empty() && (argc == 2)) { + inputFile = std::string(argv[0]); + outputFile = std::string(argv[1]); + } else { + if (!outputFile.empty() && (argc == 1)) + inputFile = std::string(argv[0]); + else { + printHelpScreen(programName); + return ( -1 ); + } + } + + /* create configuration */ + + StreamSerializer inStream; + if ( !inStream.open(inputFile) ) { + logger.error() << "can not open file <"<\n"; + return ( -1 ); + } + + + /* load all png pictures that should later be used */ + for (uint32 i(0); i demuxerInformation; + + /* read in the stream configuration that are avalable in this stream + * The information, we need is the stream ID and the corresponding + * stream type everything else is not needed */ + inStream.getStreamConfig(demuxerInformation); + + + /* Please notice! */ + /* At this time, the stream Information are extracted from the header + * in further analysation, we will replace these information + * by the more accurate information created by the decoder */ + + /* we create a vector for the input stream and set every + * value to 255 (means: ignore this stream). + * If the stream is used, the value added is the stream, where this + * input stream should be mapped to */ + std::vector streamMap; + streamMap.resize(demuxerInformation.size(), 255); + + /* These are the information ordered, by the stream IDs from the input stream */ + std::vector > hookList; + std::vector muxerInformation; + + bool foundTheora( false); + bool foundVorbis( false); + + uint8 streamCounter( 0); + + FileRepository* repository = new FileRepository( outputFile, MediaUnit::write ); + + for (uint32 i( 0); i theoraEncoderConfig; + std::shared_ptr theoraDecoderConfig; + + std::shared_ptr vHook = std::make_shared(streamCounter, false, true ); + + /* configure the video hook */ + vHook->configureProcess(videoHookConfig); + + hookList.push_back(vHook); + + /* We only need these information for the information printout */ + std::vector decoderComments; + + /* configure encoder config (StreamConfig/OggComment here) */ + vHook->setDecoderConfig(decoderConfig, decoderComments); + + /* grap the information extracted by the decoder */ + theoraDecoderConfig = std::dynamic_pointer_cast(decoderConfig.parameter); + + /* create a config for the output stream and keep a pointer */ + theoraEncoderConfig = std::make_shared(); + + /* add the pointer to the configuration */ + encoderConfig.parameter = theoraEncoderConfig; + + analyseVideoTranscoding(wishList, theoraDecoderConfig, + theoraEncoderConfig); + + if (forceVideoReencode) + vHook->forceReencoding(); + + /* the decoder Comments are used as well in case, keepComments + * is set within the HookHandler */ + vHook->setEncoderConfig(encoderConfig, videoComments); + + /* calculate how to handle the input, to create the correct output */ + vHook->initAndConnect(); + + /* the configuration ID must match the stream ID */ + muxerInformation.push_back(encoderConfig); + + /* set the stream ID, to which this stream should be maped to */ + streamMap[i] = streamCounter; + streamCounter++; + + } else { + logger.warning() + << "oggResize found more than one theora stream, only the first stream is handled\n"; + } + continue; + } + + if (decoderConfig.type == OggType::vorbis) { + if (!foundVorbis) { + StreamConfig encoderConfig; + + std::shared_ptr vorbisEncoderConfig; + std::shared_ptr vorbisDecoderConfig; + + foundVorbis = true; + + std::shared_ptr aHook = std::make_shared(streamCounter, false, true ); + hookList.push_back(aHook); + + /* We only need these information for the information printout */ + std::vector decoderComments; + + /* configure encoder config (StreamConfig/OggComment here) */ + aHook->setDecoderConfig(decoderConfig, decoderComments); + + /* create a config for this stream */ + vorbisEncoderConfig = std::make_shared(); + + /* */ + vorbisDecoderConfig + = std::dynamic_pointer_cast(decoderConfig.parameter); + + /* */ + encoderConfig.parameter = vorbisEncoderConfig; + + + analyseAudioTranscoding(wishList, vorbisDecoderConfig, + vorbisEncoderConfig); + + /* the decoder Comments are used as well in case, keepComments + * is set within the HookHandler */ + aHook->setEncoderConfig(encoderConfig, videoComments); + + /* calculate how to handle the input, to create the correct output */ + aHook->initAndConnect(); + + muxerInformation.push_back(encoderConfig); + + /* set the stream ID, to which this stream should be maped to */ + streamMap[i] = streamCounter; + streamCounter++; + } else { + logger.warning() + << "oggResize found more than one vorbis stream, only the first stream is handled\n"; + } + continue; + } + + logger.warning() << "There is actually no stream handler available to resize stream "<< decoderConfig.streamNo<<"\n"; + } + + /* configure stream hook */ + + logger.info() << "Input Configuration: " << std::endl + << "-------------------- " << std::endl; + + for (uint32 i(0); i< hookList.size(); ++i) { + logger.info() << hookList[i]->decoderConfiguration() << std::endl; + } + + logger.info() << "Output Configuration: " << std::endl + << "--------------------- " << std::endl; + + for (uint32 i(0); i< hookList.size(); ++i) { + logger.info() << hookList[i]->encoderConfiguration() << std::endl; + } + + StreamMux streamCreate ( repository ); + streamCreate.configureStreams ( muxerInformation ); + streamCreate.recreatePacketPosition(false); + + /* run through the stream */ + OggPacket packet; + double time; + + while (inStream.available() ) { + time = inStream.getNextPacket(packet); + + logger.info() << " "<getStreamNo()]; + + if (hookStreamID == 255) + continue; + + HookHandler& hook(*hookList[hookStreamID]); + + hook << packet; + + while (hook.available()) { + hook >> packet; + streamCreate << packet; + } + } + + /* flush all data */ + for (uint32 i(0); iflush(); + + while (hookList[i]->available()) { + (*hookList[i]) >> packet; + streamCreate << packet; + } + + } + + /* set end of stream and do everything neccessary */ + streamCreate.setEndOfStream(); + + streamCreate.close(); + inStream.close(); + + logger.info() << std::endl; + + return(0); +} + +int main(int argc, char* argv[]) +{ + try { + return oggTranscodeCmd(argc, argv); + } catch (OggException & e) { + logger.error() << "Fatal error: " << e.what() << std::endl; + return -1; + } +} + diff -Nru oggvideotools-0.8a/src/blendElement.cpp oggvideotools-0.9.1/src/blendElement.cpp --- oggvideotools-0.8a/src/blendElement.cpp 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/src/blendElement.cpp 1970-01-01 00:00:00.000000000 +0000 @@ -1,45 +0,0 @@ -// -// C++ Implementation: blendElement -// -// Description: -// -// -// Author: Yorn , (C) 2009 -// -// Copyright: See COPYING file that comes with this distribution -// -// -#include - -#include "blendElement.h" -#include "pictureLoader.h" - -BlendElement::BlendElement() - : startTime ( 0 ), endTime ( -1 ), - smooth ( false ), unavailable(true), state ( blend_off ), intensity ( 0.0 ) -{ -} - -BlendElement::BlendElement ( const std::string& _pictureName, double _startTime, double _endTime, - bool _smooth ) : - pictureName ( _pictureName ), startTime ( _startTime ), endTime ( _endTime ), - smooth ( _smooth ), unavailable(true), state ( blend_off ), intensity ( 0.0 ) -{ -} - - -BlendElement::~BlendElement() -{ -} - -std::string BlendElement::getPictureName() const -{ - return (pictureName); -} - -void BlendElement::setPicturePlane(const RGBPlane& _picture ) -{ - picture = _picture; - unavailable = false; -} - diff -Nru oggvideotools-0.8a/src/blendElement.h oggvideotools-0.9.1/src/blendElement.h --- oggvideotools-0.8a/src/blendElement.h 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/src/blendElement.h 1970-01-01 00:00:00.000000000 +0000 @@ -1,56 +0,0 @@ -// -// C++ Interface: blendElement -// -// Description: -// -// -// Author: Yorn , (C) 2009 -// -// Copyright: See COPYING file that comes with this distribution -// -// -#ifndef BLENDELEMENT_H -#define BLENDELEMENT_H - -#include - -#include "rgbPlane.h" - -/** - @author Yorn -*/ -class BlendElement { - -public: - - enum BlendState { - blend_off, - blend_slideIn, - blend_on, - blend_slideOut, - blend_end - }; - - std::string pictureName; - RGBPlane picture; - double startTime; - double endTime; - bool smooth; - bool unavailable; - - BlendState state; - float intensity; - - BlendElement(); - - BlendElement ( const std::string& pictureName, double _startTime, double _endTime, - bool _smooth ); - - std::string getPictureName() const; - void setPicturePlane(const RGBPlane& plane); - void setUnavailable(); - - virtual ~BlendElement(); -}; - -#endif diff -Nru oggvideotools-0.8a/src/bufferRepository.cpp oggvideotools-0.9.1/src/bufferRepository.cpp --- oggvideotools-0.8a/src/bufferRepository.cpp 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/src/bufferRepository.cpp 1970-01-01 00:00:00.000000000 +0000 @@ -1,42 +0,0 @@ -#include "bufferRepository.h" - -BufferRepository::BufferRepository(const std::string& name) - : MediaRepository(MediaUnit::readwrite, name) -{ -} - -BufferRepository::~BufferRepository() -{ -} - -MediaUnit& BufferRepository::operator<<(RawMediaPacket& packet) -{ - buffer.push_back(packet); - - return(*this); -} - -MediaUnit& BufferRepository::operator>>(RawMediaPacket& packet) -{ - if (!buffer.empty()) { - packet = buffer.front(); - buffer.pop_front(); - } - - return(*this); -} - -bool BufferRepository::isAvailable() -{ - return(!buffer.empty()); -} - -uint32 BufferRepository::getBunchSize() -{ - return(0); -} - -void BufferRepository::setBunchSize(uint32 size) -{ - return; -} diff -Nru oggvideotools-0.8a/src/bufferRepository.h oggvideotools-0.9.1/src/bufferRepository.h --- oggvideotools-0.8a/src/bufferRepository.h 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/src/bufferRepository.h 1970-01-01 00:00:00.000000000 +0000 @@ -1,26 +0,0 @@ -#ifndef BUFFERREPOSITORY_H_ -#define BUFFERREPOSITORY_H_ - -#include - -#include "mediaRepository.h" - -class BufferRepository : public MediaRepository { - std::deque buffer; - -public: - BufferRepository(const std::string& name = std::string("BufferRepository")); - virtual ~BufferRepository(); - - virtual MediaUnit& operator<<(RawMediaPacket& packet); - virtual MediaUnit& operator>>(RawMediaPacket& packet); - - virtual bool isAvailable(); - - virtual uint32 getBunchSize(); - - virtual void setBunchSize(uint32 size); - -}; - -#endif /*BUFFERREPOSITORY_H_*/ diff -Nru oggvideotools-0.8a/src/CMakeLists.txt oggvideotools-0.9.1/src/CMakeLists.txt --- oggvideotools-0.8a/src/CMakeLists.txt 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/src/CMakeLists.txt 2016-09-05 08:35:14.000000000 +0000 @@ -1,158 +1,28 @@ -SET ( EXECUTABLES oggSplit oggDump oggJoin oggCut oggLength oggCat oggSlideshow - oggTranscode oggThumb oggSilence ) - -SET ( LIBRARY_SRC effector.cpp crossfader.cpp crossfader.cpp - mediaUnit.cpp mediaRepository.cpp fileRepository.cpp - rawMediaPacket.cpp mediaDecoder.cpp mediaEncoder.cpp - mediaConverter.cpp oggDecoder.cpp oggStreamDecoder.cpp - oggPage.cpp oggPacket.cpp ringbuffer.cpp - oggRingbuffer.cpp crc.cpp granulePosInterpreter.cpp - mediaOutputDecoder.cpp mediaInputEncoder.cpp - streamSerializer.cpp oggBOSExtractorFactory.cpp - oggStreamEncoder.cpp oggEncoder.cpp streamExtractor.cpp - streamParameter.cpp streamMux.cpp bufferRepository.cpp - oggComment.cpp - theoraPosInterpreter.cpp theoraStreamParameter.cpp - theoraExtractor.cpp - vorbisPosInterpreter.cpp vorbisStreamParameter.cpp - vorbisExtractor.cpp - cmdlineextractor.cpp basePlane.cpp rgbPlane.cpp - blendElement.cpp - katePosInterpreter.cpp kateStreamParameter.cpp - kateExtractor.cpp - effector.cpp crossfader.cpp plainPicture.cpp - lowpassEffect.cpp kenburnseffect.cpp - pictureResize.cpp pictureBlend.cpp pictureLoader.cpp - hookHandler.cpp videoHook.cpp audioHook.cpp - vorbisDecoder.cpp vorbisEncoder.cpp audioPacket.cpp - audioConverter.cpp theoraDecoder.cpp theoraEncoder.cpp - helper.cpp log.cpp - ) - -SET ( RESAMPLE_SRC libresample/filterkit.c libresample/resample.c - libresample/resamplesubs.c ) - - -# These are the -SET ( CODER_LIBRARY_SRC theoraDecoder.cpp theoraEncoder.cpp - vorbisDecoder.cpp vorbisEncoder.cpp - audioPacket.cpp audioConverter.cpp - ) - -SET ( HEADER -exception.h -effector.h -crossfader.h -crossfader.h -mediaUnit.h -mediaRepository.h -fileRepository.h -rawMediaPacket.h -mediaDecoder.h -mediaEncoder.h -mediaConverter.h -oggDecoder.h -oggStreamDecoder.h -oggPage.h -oggPacket.h -ringbuffer.h -oggRingbuffer.h -crc.h -granulePosInterpreter.h -mediaOutputDecoder.h -mediaInputEncoder.h -streamSerializer.h -oggBOSExtractorFactory.h -oggStreamEncoder.h -oggEncoder.h -streamExtractor.h -streamParameter.h -streamMux.h -bufferRepository.h -oggComment.h -theoraPosInterpreter.h -theoraStreamParameter.h -theoraExtractor.h -vorbisPosInterpreter.h -vorbisStreamParameter.h -vorbisExtractor.h -cmdlineextractor.h -basePlane.h -rgbPlane.h -blendElement.h -katePosInterpreter.h -kateStreamParameter.h -kateExtractor.h -effector.h -crossfader.h -plainPicture.h -lowpassEffect.h -kenburnseffect.h -pictureResize.h -pictureBlend.h -pictureLoader.h -hookHandler.h -videoHook.h -audioHook.h -vorbisDecoder.h -vorbisEncoder.h -audioPacket.h -audioConverter.h -theoraDecoder.h -theoraEncoder.h -helper.h -log.h -refObject.h -definition.h -oggHeader.h -theoraHeader.h -vorbisHeader.h -kateHeader.h -oggTypes.h -streamConfig.h -th_helper.h -wishList.h +INCLUDE_DIRECTORIES ( ${THEORADEC_INCLUDE_DIRS} + ${THEORAENC_INCLUDE_DIRS} + ${VORBIS_INCLUDE_DIRS} + ${VORBISENC_INCLUDE_DIRS} + ${OGG_INCLUDE_DIRS} + ${GD_INCLUDE_DIRS} + ${CMAKE_CURRENT_LIST_DIR} + ${CMAKE_CURRENT_LIST_DIR}/base + ${CMAKE_CURRENT_LIST_DIR}/effect + ${CMAKE_CURRENT_LIST_DIR}/misc + ${CMAKE_CURRENT_LIST_DIR}/ovt_kate + ${CMAKE_CURRENT_LIST_DIR}/ovt_vorbis + ${CMAKE_CURRENT_LIST_DIR}/ovt_theora + ${CMAKE_CURRENT_LIST_DIR}/main + ${CMAKE_CURRENT_LIST_DIR}/libresample ) -# ADD_DEFINITIONS ( -DDEBUG ) - -INCLUDE_DIRECTORIES ( ${THEORADEC_INCLUDE_DIRS} ${THEORAENC_INCLUDE_DIRS} - ${VORBIS_INCLUDE_DIRS} ${VORBISENC_INCLUDE_DIRS} - ${OGG_INCLUDE_DIRS} ${GD_INCLUDE_DIRS} ) - -IF ( $ENV{MAKE_PACKAGE} ) - ADD_LIBRARY ( oggvideotools STATIC ${LIBRARY_SRC} ${RESAMPLE_SRC} ) -ELSE ( $ENV{MAKE_PACKAGE} ) - ADD_LIBRARY ( oggvideotools SHARED ${LIBRARY_SRC} ${RESAMPLE_SRC} ) -ENDIF ( $ENV{MAKE_PACKAGE} ) - TARGET_LINK_LIBRARIES ( oggvideotools ${ALL_LIBS}) - -IF ( $ENV{MAKE_PACKAGE} ) - MESSAGE ( " Creating static Executables ${ALL_STATIC_LIBS}" ) - FOREACH ( exec ${EXECUTABLES} ) - ADD_EXECUTABLE ( ${exec} ${exec}.cpp ) - TARGET_LINK_LIBRARIES ( ${exec} oggvideotools ${ALL_STATIC_LIBS} ) - ENDFOREACH ( exec ${EXECUTABLES} ) - - IF ( WIN32 ) - MESSAGE ( "Installing additional library ${GD_EXTERNAL}" ) - INSTALL ( FILES ${GD_EXTERNAL} DESTINATION bin ) - INSTALL ( FILES ${CMAKE_SOURCE_DIR}/win32/GD-COPYING.TXT DESTINATION doc ) - ENDIF ( WIN32 ) - -ELSE ( $ENV{MAKE_PACKAGE} ) - - MESSAGE ( "Libraries are: ${ALL_LIBS}" ) - FOREACH ( exec ${EXECUTABLES} ) - ADD_EXECUTABLE ( ${exec} ${exec}.cpp ) - TARGET_LINK_LIBRARIES ( ${exec} oggvideotools ) -# ADD_EXECUTABLE ( ${exec}_static ${exec}.cpp ${LIBRARY_SRC} ${RESAMPLE_SRC} ) -# TARGET_LINK_LIBRARIES ( ${exec}_static ${ALL_LIBS} ) - ENDFOREACH ( exec ${EXECUTABLES} ) - -ENDIF ( $ENV{MAKE_PACKAGE} ) +ADD_SUBDIRECTORY ( base ) +ADD_SUBDIRECTORY ( effect ) +ADD_SUBDIRECTORY ( binaries ) +ADD_SUBDIRECTORY ( misc ) +ADD_SUBDIRECTORY ( ovt_kate ) +ADD_SUBDIRECTORY ( ovt_vorbis ) +ADD_SUBDIRECTORY ( ovt_theora ) +ADD_SUBDIRECTORY ( main ) +ADD_SUBDIRECTORY ( libresample ) -INSTALL ( TARGETS ${EXECUTABLES} DESTINATION bin ) -INSTALL ( TARGETS oggvideotools DESTINATION lib ) -INSTALL ( FILES ${HEADER} DESTINATION include/oggvt ) diff -Nru oggvideotools-0.8a/src/cmdlineextractor.cpp oggvideotools-0.9.1/src/cmdlineextractor.cpp --- oggvideotools-0.8a/src/cmdlineextractor.cpp 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/src/cmdlineextractor.cpp 1970-01-01 00:00:00.000000000 +0000 @@ -1,364 +0,0 @@ -// -// C++ Implementation: cmdlineextractor -// -// Description: -// -// -// Author: Yorn , (C) 2009 -// -// Copyright: See COPYING file that comes with this distribution -// -// -#include "cmdlineextractor.h" - -#include -#include -#include -#include -#include - -#include "definition.h" -#include "oggComment.h" -#include "pictureLoader.h" -#include "log.h" - -CmdlineExtractor::CmdlineExtractor() -{ -} - -CmdlineExtractor::~CmdlineExtractor() -{ -} - -void CmdlineExtractor::extractCommentPairs(std::vector& list, - const std::string& _argument, char tokenSeparator, char commentSeparator) -{ - std::string argument(_argument); - std::stringstream str; - std::string substr; - - // delete all invalid data - std::size_t pos; - while ( (pos = argument.find_first_not_of(validTextChars) ) - != std::string::npos) { -#ifdef DEBUG - logger.debug() << "Erasing sign <"< - it is invalid\n"; -#endif - argument.erase(pos, 1); - } - - // if there is no argument given, the first frame will be created as a thumbnail - if (argument.empty() ) { - return; - } - - str << argument; - - while ( !str.eof() ) { - getline(str, substr, tokenSeparator); - - std::size_t commentSeparatorPos; - if ( (commentSeparatorPos = substr.find_first_of(commentSeparator) ) - != std::string::npos) { - OggComment comment; - comment.tag = substr.substr( 0, commentSeparatorPos); - comment.value = substr.substr(commentSeparatorPos+1, - std::string::npos); - list.push_back(comment); - // logger.debug() << "Found pair "<& list, - const std::string& _argument, char seperator) -{ - std::string argument(_argument); - std::stringstream str; - std::string substr; - - // delete all invalid data - std::size_t pos; - while ( (pos = argument.find_first_not_of(validChars) ) - != std::string::npos) { -#ifdef DEBUG - logger.debug() << "erasing <"<\n"; -#endif - argument.erase(pos, 1); - } - - // if there is no argument given, the first frame will be created as a thumbnail - if (argument.empty() ) { - list.push_back( 0); - return; - } - - str << argument; - - uint32 value( 0); - while ( !str.eof() ) { - std::stringstream part; - getline(str, substr, seperator); - part << substr; - part >> value; - list.push_back(value); - } - -} - -void CmdlineExtractor::extractBlend(std::vector& list, - const std::string& _argument, char tokenSeparator, char valueSeparator) -{ - - std::string argument(_argument); - std::stringstream str; - std::string substr; - - // delete all invalid data - std::size_t pos; - while ( (pos = argument.find_first_not_of(validTextChars) ) - != std::string::npos) { - argument.erase(pos, 1); - } - - // if there is no argument given, the first frame will be created as a thumbnail - if (argument.empty() ) { - return; - } - - str << argument; - - while ( !str.eof() ) { - getline(str, substr, tokenSeparator); - - /* extract picture name */ - std::size_t valueSeparatorPos = substr.find_first_of(valueSeparator); - - std::string filename = substr.substr( 0, valueSeparatorPos); - - /* extract all extra data if some (start time, end time, smoothing)*/ - double startTime( 0); - double endTime( -1); - bool smooth( false); - std::stringstream tmp; - - /* are there any other information given? */ - if (valueSeparatorPos != std::string::npos) { - - /* analysing start time */ - substr = substr.substr(valueSeparatorPos+1); - - valueSeparatorPos = substr.find_first_of(valueSeparator); - - tmp << substr.substr( 0, valueSeparatorPos); - tmp >> startTime; - tmp.clear(); - - if (valueSeparatorPos != std::string::npos) { - - /* analysing start time */ - substr = substr.substr(valueSeparatorPos+1); - - valueSeparatorPos = substr.find_first_of(valueSeparator); - - tmp << substr.substr( 0, valueSeparatorPos); - tmp >> endTime; - - if (valueSeparatorPos != std::string::npos) { - - /* analysing start time */ - substr = substr.substr(valueSeparatorPos+1); - - if (substr.substr( 0, valueSeparator) == "s") - smooth = true; - } - } - - } - - BlendElement elem(filename, startTime, endTime, smooth); - // elem.loadPicture(); - list.push_back(elem); - - } - -#ifdef DEBUG - for (uint32 i( 0); i> value; - - return (value); - -} - -float CmdlineExtractor::atof(const std::string& _argument) -{ - std::stringstream stream; - float value; - - stream << _argument; - stream >> value; - - return (value); - -} - -uint32 CmdlineExtractor::getNextUint32(std::string& argument, - char tokenSeparator) -{ - uint32 retValue(0); - - if (!argument.empty()) { - - std::stringstream tmp; - - std::size_t tokenPosition(argument.find_first_of(tokenSeparator)); - tmp << argument.substr( 0, tokenPosition); - tmp >> retValue; - - argument = argument.substr(tokenPosition+1); - - } - - return (retValue); -} - -std::string CmdlineExtractor::getNextString(std::string& argument, - char tokenSeparator) -{ - std::string retValue(0); - - if (!argument.empty()) { - - std::stringstream tmp; - - std::size_t tokenPosition(argument.find_first_of(tokenSeparator)); - tmp << argument.substr( 0, tokenPosition); - tmp >> retValue; - - argument = argument.substr(tokenPosition+1); - - } - - return (retValue); -} - - - -SlideshowElement CmdlineExtractor::extractSlideshow( - const std::string& _argument, char tokenSeparator, SlideshowElement& defaultElement) -{ - /* A full specified picture would look like this (speparator is ":" - * name.jpg::: - * This should go into a creator factory later: - * start and end position is written as :: - * The X and Y Position is from the left upper corner. The Zoom is 1 if - * the pixel is just copy. In that case, the subframe is as big is the - * outgoing frame */ - - std::string argument(_argument); - std::stringstream tmp; - SlideshowElement slideshowElement(defaultElement); - - // delete all invalid data - std::size_t pos; - while ( (pos = argument.find_first_not_of(validTextChars) ) - != std::string::npos) { - argument.erase(pos, 1); - } - - // if there is no argument given, the first frame will be created as a thumbnail - if (argument.empty() ) { - return(slideshowElement); - } - - /* extract picture name */ - std::size_t tokenPosition(argument.find_first_of(tokenSeparator)); - slideshowElement.filename = argument.substr( 0, tokenPosition); - - /* extract length */ - if (tokenPosition != std::string::npos) { - std::string substr = argument.substr(tokenPosition+1); - tokenPosition = substr.find_first_of(tokenSeparator); - tmp << substr.substr(0, tokenPosition); - tmp >> slideshowElement.duration; - - if (tokenPosition != std::string::npos) { - std::string substr = argument.substr(tokenPosition+1); - tokenPosition = substr.find_first_of(tokenSeparator); - std::string typeName(substr.substr(0, tokenPosition)); - - if ( (typeName == "kb") || (typeName == "KB") || (typeName - == "KenBurns") || (typeName == "kenburns")) - slideshowElement.type = SlideshowElement::KenBurns; - -// if ( (typeName == "p") || (typeName == "pl") || (typeName -// == "plain") || (typeName == "Plain")) -// slideshowElement.type = SlideshowElement::plain; -// -// if ( (typeName == "cf") || (typeName == "crossfade") || (typeName -// == "CF") || (typeName == "Crossfade")) -// slideshowElement.type = SlideshowElement::crossfade; -// -// if ((typeName == "bl") || (typeName == "b") || (typeName =="B") -// || (typeName == "blur") || (typeName == "bluring")) -// slideshowElement.type = SlideshowElement::bluring; - - if (tokenPosition != std::string::npos) { - substr = substr.substr(tokenPosition+1); - slideshowElement.startPosX = getNextUint32(substr, - tokenSeparator); - slideshowElement.startPosY = getNextUint32(substr, - tokenSeparator); - slideshowElement.startZoom = getNextUint32(substr, - tokenSeparator); - slideshowElement.endPosX - = getNextUint32(substr, tokenSeparator); - slideshowElement.endPosY - = getNextUint32(substr, tokenSeparator); - slideshowElement.endZoom - = getNextUint32(substr, tokenSeparator); - } - } - } - return(slideshowElement); - -} - -void CmdlineExtractor::extractCrossSequence(std::vector& list, const std::string& _argument, char tokenSeparator) -{ - std::string argument(_argument); - - // delete all invalid data - std::size_t pos; - while ( (pos = argument.find_first_not_of(validTextChars) ) - != std::string::npos) { - argument.erase(pos, 1); - } - - while (!argument.empty()) - list.push_back(getNextString(argument, tokenSeparator)); - - return; -} - - diff -Nru oggvideotools-0.8a/src/cmdlineextractor.h oggvideotools-0.9.1/src/cmdlineextractor.h --- oggvideotools-0.8a/src/cmdlineextractor.h 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/src/cmdlineextractor.h 1970-01-01 00:00:00.000000000 +0000 @@ -1,73 +0,0 @@ -// -// C++ Interface: cmdlineextractor -// -// Description: -// -// -// Author: Yorn , (C) 2009 -// -// Copyright: See COPYING file that comes with this distribution -// -// -#ifndef CMDLINEEXTRACTOR_H -#define CMDLINEEXTRACTOR_H - -#include -#include -#include - -#include "definition.h" -#include "oggComment.h" -#include "blendElement.h" - -const std::string validChars ( "0123456789,x" ); -const std::string -validTextChars ( "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789 /\\.,=;:-_" ); - -class SlideshowElement { -public: - enum SlideshowType { - KenBurns, - Crossfade, - Plain, - Blur - }; - - std::string filename; - float duration; - SlideshowType type; - uint32 startPosX; - uint32 startPosY; - uint32 startZoom; - uint32 endPosX; - uint32 endPosY; - uint32 endZoom; -}; - -class CmdlineExtractor { -public: - CmdlineExtractor(); - - ~CmdlineExtractor(); - - static void extractCommentPairs ( std::vector& list, - const std::string& _argument, char tokenSeparator, char commentSeparator ); - - static void extractUint32 ( std::deque& list, const std::string& _argument, - char seperator ); - - static void extractBlend ( std::vector& list, const std::string& _argument, - char tokenSeparator, char valueSeparator ); - - static uint32 atoi(const std::string& _argument); - static float atof(const std::string& _argument); - - static uint32 getNextUint32(std::string& substring, char tokenSeparator); - static std::string getNextString(std::string& substring, char tokenSeparator); - - static SlideshowElement extractSlideshow(const std::string& _argument, char tokenSeparator, SlideshowElement& defaultElement); - static void extractCrossSequence(std::vector& list, const std::string& _argument, char tokenSeparator); - -}; - -#endif diff -Nru oggvideotools-0.8a/src/crc.cpp oggvideotools-0.9.1/src/crc.cpp --- oggvideotools-0.8a/src/crc.cpp 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/src/crc.cpp 1970-01-01 00:00:00.000000000 +0000 @@ -1,107 +0,0 @@ -/* - * CRC creation class (static method) - * - * Copyright (C) 2008 Joern Seger - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - * - */ - -#include "crc.h" - -static const unsigned int crc_lookup[256]= { - 0x00000000,0x04c11db7,0x09823b6e,0x0d4326d9, - 0x130476dc,0x17c56b6b,0x1a864db2,0x1e475005, - 0x2608edb8,0x22c9f00f,0x2f8ad6d6,0x2b4bcb61, - 0x350c9b64,0x31cd86d3,0x3c8ea00a,0x384fbdbd, - 0x4c11db70,0x48d0c6c7,0x4593e01e,0x4152fda9, - 0x5f15adac,0x5bd4b01b,0x569796c2,0x52568b75, - 0x6a1936c8,0x6ed82b7f,0x639b0da6,0x675a1011, - 0x791d4014,0x7ddc5da3,0x709f7b7a,0x745e66cd, - 0x9823b6e0,0x9ce2ab57,0x91a18d8e,0x95609039, - 0x8b27c03c,0x8fe6dd8b,0x82a5fb52,0x8664e6e5, - 0xbe2b5b58,0xbaea46ef,0xb7a96036,0xb3687d81, - 0xad2f2d84,0xa9ee3033,0xa4ad16ea,0xa06c0b5d, - 0xd4326d90,0xd0f37027,0xddb056fe,0xd9714b49, - 0xc7361b4c,0xc3f706fb,0xceb42022,0xca753d95, - 0xf23a8028,0xf6fb9d9f,0xfbb8bb46,0xff79a6f1, - 0xe13ef6f4,0xe5ffeb43,0xe8bccd9a,0xec7dd02d, - 0x34867077,0x30476dc0,0x3d044b19,0x39c556ae, - 0x278206ab,0x23431b1c,0x2e003dc5,0x2ac12072, - 0x128e9dcf,0x164f8078,0x1b0ca6a1,0x1fcdbb16, - 0x018aeb13,0x054bf6a4,0x0808d07d,0x0cc9cdca, - 0x7897ab07,0x7c56b6b0,0x71159069,0x75d48dde, - 0x6b93dddb,0x6f52c06c,0x6211e6b5,0x66d0fb02, - 0x5e9f46bf,0x5a5e5b08,0x571d7dd1,0x53dc6066, - 0x4d9b3063,0x495a2dd4,0x44190b0d,0x40d816ba, - 0xaca5c697,0xa864db20,0xa527fdf9,0xa1e6e04e, - 0xbfa1b04b,0xbb60adfc,0xb6238b25,0xb2e29692, - 0x8aad2b2f,0x8e6c3698,0x832f1041,0x87ee0df6, - 0x99a95df3,0x9d684044,0x902b669d,0x94ea7b2a, - 0xe0b41de7,0xe4750050,0xe9362689,0xedf73b3e, - 0xf3b06b3b,0xf771768c,0xfa325055,0xfef34de2, - 0xc6bcf05f,0xc27dede8,0xcf3ecb31,0xcbffd686, - 0xd5b88683,0xd1799b34,0xdc3abded,0xd8fba05a, - 0x690ce0ee,0x6dcdfd59,0x608edb80,0x644fc637, - 0x7a089632,0x7ec98b85,0x738aad5c,0x774bb0eb, - 0x4f040d56,0x4bc510e1,0x46863638,0x42472b8f, - 0x5c007b8a,0x58c1663d,0x558240e4,0x51435d53, - 0x251d3b9e,0x21dc2629,0x2c9f00f0,0x285e1d47, - 0x36194d42,0x32d850f5,0x3f9b762c,0x3b5a6b9b, - 0x0315d626,0x07d4cb91,0x0a97ed48,0x0e56f0ff, - 0x1011a0fa,0x14d0bd4d,0x19939b94,0x1d528623, - 0xf12f560e,0xf5ee4bb9,0xf8ad6d60,0xfc6c70d7, - 0xe22b20d2,0xe6ea3d65,0xeba91bbc,0xef68060b, - 0xd727bbb6,0xd3e6a601,0xdea580d8,0xda649d6f, - 0xc423cd6a,0xc0e2d0dd,0xcda1f604,0xc960ebb3, - 0xbd3e8d7e,0xb9ff90c9,0xb4bcb610,0xb07daba7, - 0xae3afba2,0xaafbe615,0xa7b8c0cc,0xa379dd7b, - 0x9b3660c6,0x9ff77d71,0x92b45ba8,0x9675461f, - 0x8832161a,0x8cf30bad,0x81b02d74,0x857130c3, - 0x5d8a9099,0x594b8d2e,0x5408abf7,0x50c9b640, - 0x4e8ee645,0x4a4ffbf2,0x470cdd2b,0x43cdc09c, - 0x7b827d21,0x7f436096,0x7200464f,0x76c15bf8, - 0x68860bfd,0x6c47164a,0x61043093,0x65c52d24, - 0x119b4be9,0x155a565e,0x18197087,0x1cd86d30, - 0x029f3d35,0x065e2082,0x0b1d065b,0x0fdc1bec, - 0x3793a651,0x3352bbe6,0x3e119d3f,0x3ad08088, - 0x2497d08d,0x2056cd3a,0x2d15ebe3,0x29d4f654, - 0xc5a92679,0xc1683bce,0xcc2b1d17,0xc8ea00a0, - 0xd6ad50a5,0xd26c4d12,0xdf2f6bcb,0xdbee767c, - 0xe3a1cbc1,0xe760d676,0xea23f0af,0xeee2ed18, - 0xf0a5bd1d,0xf464a0aa,0xf9278673,0xfde69bc4, - 0x89b8fd09,0x8d79e0be,0x803ac667,0x84fbdbd0, - 0x9abc8bd5,0x9e7d9662,0x933eb0bb,0x97ffad0c, - 0xafb010b1,0xab710d06,0xa6322bdf,0xa2f33668, - 0xbcb4666d,0xb8757bda,0xb5365d03,0xb1f740b4 -}; - -Crc::Crc () -{} - -Crc::~Crc() -{} - - -unsigned int Crc::create(unsigned char* data, unsigned int length) -{ - /* this is the usual ethernet CRC algorithm */ - unsigned int crc_reg(0); - for (unsigned int i = 0; i < length; ++i) - crc_reg=(crc_reg<<8)^crc_lookup[((crc_reg >> 24)&0xff)^data[i]]; - - return (crc_reg); -} - diff -Nru oggvideotools-0.8a/src/crc.h oggvideotools-0.9.1/src/crc.h --- oggvideotools-0.8a/src/crc.h 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/src/crc.h 1970-01-01 00:00:00.000000000 +0000 @@ -1,36 +0,0 @@ -/* - * CRC creation class (static method) - * - * Copyright (C) 2008 Joern Seger - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - * - */ - -#ifndef crc_h -#define crc_h - -class Crc { -public: - typedef unsigned long Type; - -public: - Crc (); - virtual ~Crc(); - static unsigned int create(unsigned char* data, unsigned int length); - -}; - -#endif diff -Nru oggvideotools-0.8a/src/crossfader.cpp oggvideotools-0.9.1/src/crossfader.cpp --- oggvideotools-0.8a/src/crossfader.cpp 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/src/crossfader.cpp 1970-01-01 00:00:00.000000000 +0000 @@ -1,115 +0,0 @@ -// -// C++ Implementation: crossfader -// -// Description: -// -// -// Author: Yorn , (C) 2009 -// -// Copyright: See COPYING file that comes with this distribution -// -// -#include "crossfader.h" - -#include -#include - -#include "pictureBlend.h" -#include "pictureResize.h" -#include "log.h" - -Crossfader::Crossfader() - : Effector(), state(unconfigured), framecounter(0) -{ -} - - -Crossfader::~Crossfader() -{ -} - -void Crossfader::configure(CrossfaderConfig& _config) -{ - - framecounter = 0; - - config = _config; - - if (config.first) { - - lastPlane = RGBPlane(config.outputWidth, config.outputHeight); - - /* blank the plane */ - uint32 planesize = config.outputWidth*config.outputHeight*4; // 3 Colors + Alpha channel - memset(lastPlane->plane, 0x00, planesize); - - } - - - /* resize the picture to the correct size */ - presentationPlane = PictureResize::reframe(config.origPlane, config.outputWidth, config.outputHeight); - - logger.debug() << "Picture size: "<< presentationPlane->width<<" x "<width - <<" -> frame size "< config.blindLength) { - state = presentation; - } - -} - -void Crossfader::doPresentation(RGBPlane & plane) -{ - - plane = presentationPlane; - - framecounter++; - if (framecounter > config.sequenceLength) { - lastPlane = presentationPlane; - - state = unavailable; - } - -} - -bool Crossfader::available() -{ - return((state!=unavailable) && (state!=unconfigured)); -} - -Effector & Crossfader::operator >>(RGBPlane & plane) -{ - - switch (state) { - - case crossfade: { - doCrossfade(plane); - break; - } - - case presentation: { - doPresentation(plane); - break; - } - - default: { - logger.error() << "KenBurnsEffect: no frame available\n"; - break; - } - } - - return(*this); -} diff -Nru oggvideotools-0.8a/src/crossfader.h oggvideotools-0.9.1/src/crossfader.h --- oggvideotools-0.8a/src/crossfader.h 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/src/crossfader.h 1970-01-01 00:00:00.000000000 +0000 @@ -1,67 +0,0 @@ -// -// C++ Interface: crossfader -// -// Description: -// -// -// Author: Yorn , (C) 2009 -// -// Copyright: See COPYING file that comes with this distribution -// -// -#ifndef CROSSFADER_H -#define CROSSFADER_H - -#include "effector.h" - -/** - @author Yorn -*/ -class Crossfader : public Effector { -public: - class CrossfaderConfig { - public: - bool first; - - uint32 sequenceLength; /* in frames */ - uint32 blindLength; /* in frames */ - - uint32 outputWidth; - uint32 outputHeight; - - RGBPlane origPlane; - }; - - RGBPlane presentationPlane; - -protected: - enum State { - unconfigured, - crossfade, - presentation, - unavailable - }; - - State state; - - RGBPlane lastPlane; - uint32 framecounter; - - CrossfaderConfig config; - - void doCrossfade(RGBPlane& plane); - void doPresentation(RGBPlane& plane); - -public: - Crossfader(); - ~Crossfader(); - - void configure(CrossfaderConfig& config); - - virtual Effector& operator>>(RGBPlane& plane); - - virtual bool available(); - -}; - -#endif diff -Nru oggvideotools-0.8a/src/effect/basePlane.cpp oggvideotools-0.9.1/src/effect/basePlane.cpp --- oggvideotools-0.8a/src/effect/basePlane.cpp 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/effect/basePlane.cpp 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,30 @@ +// +// C++ Implementation: basePlane +// +// Description: +// +// +// Author: Yorn , (C) 2009 +// +// Copyright: See COPYING file that comes with this distribution +// +// +#include "basePlane.h" + +BasePlane::BasePlane() + : width(0), height(0), plane(0) +{ +} + +BasePlane::BasePlane(uint32 _width, uint32 _height, uint32 color) + : width(_width), height(_height), plane(new uint8[_height*_width*4]) +{ + uint32* ptr((uint32*)plane); + for (uint32 i(0); i<(_height*_width); ++i) + ptr[i] = color; +} + +BasePlane::~BasePlane() +{ + delete[] plane; +} diff -Nru oggvideotools-0.8a/src/effect/basePlane.h oggvideotools-0.9.1/src/effect/basePlane.h --- oggvideotools-0.8a/src/effect/basePlane.h 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/effect/basePlane.h 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,40 @@ +// +// C++ Interface: basePlane +// +// Description: +// +// +// Author: Yorn , (C) 2009 +// +// Copyright: See COPYING file that comes with this distribution +// +// +#ifndef BASEPLANE_H +#define BASEPLANE_H + +#include "definition.h" + +/** +BasePlane contains the picture information (width, height and picture plane) + + + @author Yorn +*/ +class BasePlane { + +public: + uint32 width; + uint32 height; + + uint8* plane; + + + BasePlane(); + + BasePlane(uint32 _width, uint32 _height, uint32 color = 0x00000000 ); + + virtual ~BasePlane(); + +}; + +#endif diff -Nru oggvideotools-0.8a/src/effect/blendElement.cpp oggvideotools-0.9.1/src/effect/blendElement.cpp --- oggvideotools-0.8a/src/effect/blendElement.cpp 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/effect/blendElement.cpp 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,45 @@ +// +// C++ Implementation: blendElement +// +// Description: +// +// +// Author: Yorn , (C) 2009 +// +// Copyright: See COPYING file that comes with this distribution +// +// +#include + +#include "blendElement.h" +#include "pictureLoader.h" + +BlendElement::BlendElement() + : startTime ( 0 ), endTime ( -1 ), + smooth ( false ), unavailable(true), state ( blend_off ), intensity ( 0.0 ) +{ +} + +BlendElement::BlendElement ( const std::string& _pictureName, double _startTime, double _endTime, + bool _smooth ) : + pictureName ( _pictureName ), startTime ( _startTime ), endTime ( _endTime ), + smooth ( _smooth ), unavailable(true), state ( blend_off ), intensity ( 0.0 ) +{ +} + + +BlendElement::~BlendElement() +{ +} + +std::string BlendElement::getPictureName() const +{ + return (pictureName); +} + +void BlendElement::setPicturePlane(const RGBPlane& _picture ) +{ + picture = _picture; + unavailable = false; +} + diff -Nru oggvideotools-0.8a/src/effect/blendElement.h oggvideotools-0.9.1/src/effect/blendElement.h --- oggvideotools-0.8a/src/effect/blendElement.h 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/effect/blendElement.h 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,56 @@ +// +// C++ Interface: blendElement +// +// Description: +// +// +// Author: Yorn , (C) 2009 +// +// Copyright: See COPYING file that comes with this distribution +// +// +#ifndef BLENDELEMENT_H +#define BLENDELEMENT_H + +#include + +#include "rgbPlane.h" + +/** + @author Yorn +*/ +class BlendElement { + +public: + + enum BlendState { + blend_off, + blend_slideIn, + blend_on, + blend_slideOut, + blend_end + }; + + std::string pictureName; + RGBPlane picture; + double startTime; + double endTime; + bool smooth; + bool unavailable; + + BlendState state; + float intensity; + + BlendElement(); + + BlendElement ( const std::string& pictureName, double _startTime, double _endTime, + bool _smooth ); + + std::string getPictureName() const; + void setPicturePlane(const RGBPlane& plane); + void setUnavailable(); + + virtual ~BlendElement(); +}; + +#endif diff -Nru oggvideotools-0.8a/src/effect/CMakeLists.txt oggvideotools-0.9.1/src/effect/CMakeLists.txt --- oggvideotools-0.8a/src/effect/CMakeLists.txt 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/effect/CMakeLists.txt 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,18 @@ +SET ( LIBRARY_VIDEOEFFECT_SRC + effector.cpp + effectorTypes.cpp + effectorVisitor.cpp + crossfader.cpp + plainPicture.cpp + lowpassEffect.cpp + kenburnseffect.cpp + pictureResize.cpp + pictureBlend.cpp + pictureLoader.cpp + shiftEffect.cpp + shiftblendEffect.cpp + basePlane.cpp + rgbPlane.cpp + blendElement.cpp ) + +ADD_LIBRARY ( ovteffect ${LIBRARY_VIDEOEFFECT_SRC} ) diff -Nru oggvideotools-0.8a/src/effect/crossfader.cpp oggvideotools-0.9.1/src/effect/crossfader.cpp --- oggvideotools-0.8a/src/effect/crossfader.cpp 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/effect/crossfader.cpp 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,121 @@ +// +// C++ Implementation: crossfader +// +// Description: +// +// +// Author: Yorn , (C) 2009 +// +// Copyright: See COPYING file that comes with this distribution +// +// +#include "crossfader.h" + +#include +#include + +#include "pictureBlend.h" +#include "pictureResize.h" +#include "log.h" +#include "effectorVisitor.h" + +Crossfader::Crossfader() + : Effector(), state(unconfigured), framecounter(0) +{ +} + + +Crossfader::~Crossfader() +{ +} + +void Crossfader::configure(CrossfaderConfig& _config) +{ + + framecounter = 0; + + config = _config; + + if (config.first) { + + lastPlane = RGBPlane(config.outputWidth, config.outputHeight); + + /* blank the plane */ + uint32 planesize = config.outputWidth*config.outputHeight*4; // 3 Colors + Alpha channel + memset(lastPlane->plane, 0x00, planesize); + + } + + + /* resize the picture to the correct size */ + presentationPlane = PictureResize::reframe(config.origPlane, config.outputWidth, config.outputHeight); + + logger.debug() << "Picture size: "<< presentationPlane->width<<" x "<height + <<" -> frame size "< config.blindLength) { + state = presentation; + } + +} + +void Crossfader::doPresentation(RGBPlane & plane) +{ + + plane = presentationPlane; + + framecounter++; + if (framecounter > config.sequenceLength) { + lastPlane = presentationPlane; + + state = unavailable; + } + +} + +bool Crossfader::available() +{ + return((state!=unavailable) && (state!=unconfigured)); +} + +void Crossfader::accept(EffectorVisitor& visitor) const +{ + visitor.visit(*this); +} + +Effector & Crossfader::operator >>(RGBPlane & plane) +{ + + switch (state) { + + case crossfade: { + doCrossfade(plane); + break; + } + + case presentation: { + doPresentation(plane); + break; + } + + default: { + logger.error() << "KenBurnsEffect: no frame available\n"; + break; + } + } + + return(*this); +} diff -Nru oggvideotools-0.8a/src/effect/crossfader.h oggvideotools-0.9.1/src/effect/crossfader.h --- oggvideotools-0.8a/src/effect/crossfader.h 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/effect/crossfader.h 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,69 @@ +// +// C++ Interface: crossfader +// +// Description: +// +// +// Author: Yorn , (C) 2009 +// +// Copyright: See COPYING file that comes with this distribution +// +// +#ifndef CROSSFADER_H +#define CROSSFADER_H + +#include "effector.h" + +/** + @author Yorn +*/ +class Crossfader : public Effector { +public: + class CrossfaderConfig { + public: + bool first; + + uint32 sequenceLength; /* in frames */ + uint32 blindLength; /* in frames */ + + uint32 outputWidth; + uint32 outputHeight; + + RGBPlane origPlane; + }; + + RGBPlane presentationPlane; + +protected: + enum State { + unconfigured, + crossfade, + presentation, + unavailable + }; + + State state; + + RGBPlane lastPlane; + uint32 framecounter; + + CrossfaderConfig config; + + void doCrossfade(RGBPlane& plane); + void doPresentation(RGBPlane& plane); + +public: + Crossfader(); + ~Crossfader(); + + void configure(CrossfaderConfig& config); + + virtual Effector& operator>>(RGBPlane& plane); + + virtual bool available(); + + virtual void accept(EffectorVisitor& visitor) const; + +}; + +#endif diff -Nru oggvideotools-0.8a/src/effect/effector.cpp oggvideotools-0.9.1/src/effect/effector.cpp --- oggvideotools-0.8a/src/effect/effector.cpp 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/effect/effector.cpp 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,23 @@ +// +// C++ Implementation: effector +// +// Description: +// +// +// Author: Yorn , (C) 2009 +// +// Copyright: See COPYING file that comes with this distribution +// +// +#include "effector.h" + +Effector::Effector() +{ +} + + +Effector::~Effector() +{ +} + + diff -Nru oggvideotools-0.8a/src/effect/effector.h oggvideotools-0.9.1/src/effect/effector.h --- oggvideotools-0.8a/src/effect/effector.h 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/effect/effector.h 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,39 @@ +// +// C++ Interface: effector +// +// Description: +// +// +// Author: Yorn , (C) 2009 +// +// Copyright: See COPYING file that comes with this distribution +// +// +#ifndef EFFECTOR_H +#define EFFECTOR_H + +#include "rgbPlane.h" + +// Forward declaration +class EffectorVisitor; + +/** + @author Yorn +*/ +class Effector { + +public: + + Effector(); + + virtual ~Effector(); + + virtual Effector& operator>>(RGBPlane& plane) = 0; + + virtual bool available() = 0; + + virtual void accept(EffectorVisitor& visitor) const = 0; + +}; + +#endif diff -Nru oggvideotools-0.8a/src/effect/effectorTypes.cpp oggvideotools-0.9.1/src/effect/effectorTypes.cpp --- oggvideotools-0.8a/src/effect/effectorTypes.cpp 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/effect/effectorTypes.cpp 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,60 @@ +// +// C++ Implementation: effectortypes +// +// Description: +// +// +// Copyright (C) 2010 Bjarne Juul Pasgaard +// +// This program is free software; you can redistribute it and/or +// modify it under the terms of the GNU General Public License +// as published by the Free Software Foundation; either version 2 +// of the License, or (at your option) any later version. +// +// This program is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. +// +// You should have received a copy of the GNU General Public License +// along with this program; if not, write to the Free Software +// Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, +// USA. + +#include "effectorTypes.h" + +EffectorType GetEffectorType::operator()(const Effector& effector) +{ + effector.accept(*this); + return t; +} + +void GetEffectorType::visit(const KenBurnsEffect&) +{ + t = KenBurns; +} + +void GetEffectorType::visit(const Crossfader&) +{ + t = Crossfade; +} + +void GetEffectorType::visit(const LowpassEffect&) +{ + t = Blur; +} + +void GetEffectorType::visit(const PlainPicture&) +{ + t = Plain; +} + +void GetEffectorType::visit(const ShiftEffect&) +{ + t = Shift; +} + +void GetEffectorType::visit(const ShiftblendEffect&) +{ + t = ShiftBlend; +} diff -Nru oggvideotools-0.8a/src/effect/effectorTypes.h oggvideotools-0.9.1/src/effect/effectorTypes.h --- oggvideotools-0.8a/src/effect/effectorTypes.h 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/effect/effectorTypes.h 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,83 @@ +// +// C++ Interface: effectortypes +// +// Description: +// Enumeration of effector types and a a specialized EffectorVisitor that +// allows for a more effective effector type detection than dynamic_cast<>. +// +// Copyright (C) 2010 Bjarne Juul Pasgaard +// +// This program is free software; you can redistribute it and/or +// modify it under the terms of the GNU General Public License +// as published by the Free Software Foundation; either version 2 +// of the License, or (at your option) any later version. +// +// This program is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. +// +// You should have received a copy of the GNU General Public License +// along with this program; if not, write to the Free Software +// Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, +// USA. + +#ifndef EFFECTORTYPES_H +#define EFFECTORTYPES_H + +#include "effector.h" +#include "effectorVisitor.h" + +/// @brief Enumeration of the available effector types. +enum EffectorType { + KenBurns, ///< Ken Burns effect + Crossfade, ///< Cross fading + Plain, ///< Plain pictures + Blur, ///< Bluring at changeover + Shift, ///< Shift left effect + ShiftBlend ///< Shift and blend left effect +}; + +// Forward declarations +class KenBurnsEffect; +class Crossfader; +class LowpassEffect; +class PlainPicture; +class ShiftEffect; +class ShiftblendEffect; + +/// @brief A functor that determines the type of an +/// effector specialization. +/// +/// This is an alternative to dynamic_cast<>, but is often +/// far more effective and has the advantage of a known +/// constant-time complexity (in contrast to dynamic_cast<>). +class GetEffectorType : protected EffectorVisitor { +public: + + /// @brief The entry point of the functor. + /// + /// @param effector The effector to determine the type of. + /// + /// @return The type of the supplied effector. + EffectorType operator()(const Effector& effector); + + virtual ~GetEffectorType() {} + +protected: + + // Overridden base class methods + virtual void visit(const KenBurnsEffect&); + virtual void visit(const Crossfader&); + virtual void visit(const LowpassEffect&); + virtual void visit(const PlainPicture&); + virtual void visit(const ShiftEffect&); + virtual void visit(const ShiftblendEffect&); + +protected: + + EffectorType t; + +}; + +#endif diff -Nru oggvideotools-0.8a/src/effect/effectorVisitor.cpp oggvideotools-0.9.1/src/effect/effectorVisitor.cpp --- oggvideotools-0.8a/src/effect/effectorVisitor.cpp 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/effect/effectorVisitor.cpp 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,48 @@ +// +// C++ Implementation: effectorvisitor +// +// Description: +// +// +// Copyright (C) 2010 Bjarne Juul Pasgaard +// +// This program is free software; you can redistribute it and/or +// modify it under the terms of the GNU General Public License +// as published by the Free Software Foundation; either version 2 +// of the License, or (at your option) any later version. +// +// This program is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. +// +// You should have received a copy of the GNU General Public License +// along with this program; if not, write to the Free Software +// Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, +// USA. + +#include "effectorVisitor.h" + +void EffectorVisitor::visit(const KenBurnsEffect&) +{ +} + +void EffectorVisitor::visit(const Crossfader&) +{ +} + +void EffectorVisitor::visit(const LowpassEffect&) +{ +} + +void EffectorVisitor::visit(const PlainPicture&) +{ +} + +void EffectorVisitor::visit(const ShiftEffect&) +{ +} + +void EffectorVisitor::visit(const ShiftblendEffect&) +{ +} diff -Nru oggvideotools-0.8a/src/effect/effectorVisitor.h oggvideotools-0.9.1/src/effect/effectorVisitor.h --- oggvideotools-0.8a/src/effect/effectorVisitor.h 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/effect/effectorVisitor.h 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,54 @@ +// +// C++ Interface: effectorvisitor +// +// Description: +// A visitor (in accordance with the visitor design patter) for +// specializations of the Effector class. +// +// Copyright (C) 2010 Bjarne Juul Pasgaard +// +// This program is free software; you can redistribute it and/or +// modify it under the terms of the GNU General Public License +// as published by the Free Software Foundation; either version 2 +// of the License, or (at your option) any later version. +// +// This program is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. +// +// You should have received a copy of the GNU General Public License +// along with this program; if not, write to the Free Software +// Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, +// USA. + +#ifndef EFFECTORVISITOR_H +#define EFFECTORVISITOR_H + +// Forward declarations +class KenBurnsEffect; +class Crossfader; +class LowpassEffect; +class PlainPicture; +class ShiftEffect; +class ShiftblendEffect; + +/// @brief A visitor of Effector specialisations +/// +/// This class takes the role of a visitor in accordance with the +/// visitor design pattern. +class EffectorVisitor { +public: + + virtual ~EffectorVisitor() {}; + + virtual void visit(const KenBurnsEffect&); + virtual void visit(const Crossfader&); + virtual void visit(const LowpassEffect&); + virtual void visit(const PlainPicture&); + virtual void visit(const ShiftEffect&); + virtual void visit(const ShiftblendEffect&); + +}; + +#endif diff -Nru oggvideotools-0.8a/src/effect/kenburnseffect.cpp oggvideotools-0.9.1/src/effect/kenburnseffect.cpp --- oggvideotools-0.8a/src/effect/kenburnseffect.cpp 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/effect/kenburnseffect.cpp 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,353 @@ +// +// C++ Implementation: kenburnseffect +// +// Description: +// +// +// Author: Yorn , (C) 2009 +// +// Copyright: See COPYING file that comes with this distribution +// +// +#include "kenburnseffect.h" + +#include +#include +#include +#include + +#include "pictureResize.h" +#include "pictureBlend.h" +#include "log.h" +#include "effectorVisitor.h" + +KenBurnsEffect::KenBurnsEffect() : + Effector(), state(unconfigured) +{ +} + +KenBurnsEffect::~KenBurnsEffect() +{ +} + +void KenBurnsEffect::configure(KenBurnsEffect::KenBurnsConfig& _config) +{ + + config = _config; + + stepX = ((config.endpointX - config.startpointX) * 1.0) + / (config.sequenceLength * 1.0); + stepY = ((config.endpointY - config.startpointY) * 1.0) + / (config.sequenceLength * 1.0); + stepZoom = ((config.zoomEnd - config.zoomStart) * 1.0) + / (config.sequenceLength * 1.0); + + actX = config.startpointX; + actY = config.startpointY; + actZoom = config.zoomStart; + + blackPlane = RGBPlane(config.outputWidth, config.outputHeight); + presentationPlane = config.origPlane; + + /* blank the plane */ + uint32 planesize = config.outputWidth * config.outputHeight * 4; // 3 Colors + Alpha channel + memset(blackPlane->plane, 0x00, planesize); + + frameCounter = 0; + + if (config.first) + state = presentation; + else + state = blindIn; + +} + +void KenBurnsEffect::doBlindIn(RGBPlane& plane) +{ + + logger.debug() << " --- Position " << actX <<" x "<< actY <<" "<<( 1.0/actZoom); + + // get the picture to be fade in + plane = PictureResize::subframe(presentationPlane, config.outputWidth, + config.outputHeight, actX, actY, 1.0 / actZoom); + + // calculate the next fader picture + plane = PictureBlend::crossfade(blackPlane, plane, (frameCounter * 1.0) + / (config.blindLength * 1.0)); + + // let the fading go on + actX += stepX; + actY += stepY; + actZoom += stepZoom; + + frameCounter++; + if (frameCounter > config.blindLength) { + state = presentation; + } +} + +void KenBurnsEffect::doPresentation(RGBPlane& plane) +{ + logger.debug() << " --- Position " << actX <<" x "<< actY <<" "<<( 1.0/actZoom); + + // get the picture to be fade in + plane = PictureResize::subframe(presentationPlane, config.outputWidth, + config.outputHeight, actX, actY, 1.0 / actZoom); + + // let the fading go on + actX += stepX; + actY += stepY; + actZoom += stepZoom; + + frameCounter++; + if (frameCounter > (config.sequenceLength - config.blindLength)) { + if (!config.last) { + state = blindOut; + } else { + if (frameCounter >= config.sequenceLength) { + state = unavailable; + } + } + } + +} + +void KenBurnsEffect::doBlindOut(RGBPlane & plane) +{ +#ifdef DEBUG + logger.debug() << " --- Position " << actX <<" x "<< actY <<" "<<( 1.0/actZoom); +#endif + // get the picture to be fade in + plane = PictureResize::subframe(presentationPlane, config.outputWidth, + config.outputHeight, actX, actY, 1.0 / actZoom); + + // calculate the next fader picture + plane = PictureBlend::crossfade(blackPlane, plane, ((config.sequenceLength + - frameCounter) * 1.0) / (config.blindLength * 1.0)); + + // let the fading go on + actX += stepX; + actY += stepY; + actZoom += stepZoom; + + frameCounter++; + if (frameCounter >= config.sequenceLength) { + state = unavailable; + } + +} + +bool KenBurnsEffect::available() +{ + return ((state != unavailable) && (state != unconfigured)); +} + +void KenBurnsEffect::accept(EffectorVisitor& visitor) const +{ + visitor.visit(*this); +} + +Effector & KenBurnsEffect::operator >>(RGBPlane & plane) +{ + switch (state) { + + case blindIn: { + doBlindIn(plane); + break; + } + + case blindOut: { + doBlindOut(plane); + break; + } + + case presentation: { + doPresentation(plane); + break; + } + + default: { + logger.error() << "KenBurnsEffect: no frame available\n"; + break; + } + } + return(*this); +} + +KenBurnsEffect::KenBurnsConfig KenBurnsEffect::createKBconfigRandom( + RGBPlane& plane, uint32 pictureWidth, uint32 pictureHeight, + uint32 frameWidth, uint32 frameHeight, uint32 sequenceLength, + uint32 blindLength) +{ + + KenBurnsConfig config; + + config.origPlane = plane; + config.outputWidth = frameWidth; + config.outputHeight = frameHeight; + config.sequenceLength = sequenceLength; + config.blindLength = blindLength; + + float maxZoomfactor; + if ((pictureWidth * 1.0) / (frameWidth * 1.0) * (frameHeight * 1.0) + < (pictureHeight * 1.0)) + maxZoomfactor = (pictureWidth * 1.0) / (frameWidth * 1.0); + else + maxZoomfactor = (pictureHeight * 1.0) / (frameHeight * 1.0); + + config.zoomStart = maxZoomfactor * 0.75 + rand() * (maxZoomfactor * 0.25) + / (RAND_MAX * 1.0); + config.zoomEnd = maxZoomfactor * 0.75 + rand() * (maxZoomfactor * 0.25) + / (RAND_MAX * 1.0); + +#ifdef DEBUG + logger.debug() << "Zooming ("< not available\n"; + exit(-1); + } + } + } + +#ifdef DEBUG + logger.error()<< "Zooming (" << maxZoomfactor << ") from factor " + << config.zoomStart << " to " << config.zoomEnd << std::endl; +#endif + + float availableXStart = pictureWidth - frameWidth * config.zoomStart; + float availableYStart = pictureHeight - frameHeight * config.zoomStart; + + float availableXEnd = pictureWidth - frameWidth * config.zoomEnd; + float availableYEnd = pictureHeight - frameHeight * config.zoomEnd; + + if ((availableXStart < 0) || (availableYStart < 0) || (availableXEnd < 0) + || (availableYEnd < 0)) { + logger.error() << "KenBurnsSequence: picture to small\n"; + // was machen bei einem Fehler? + } + + float availLengthSqr(powf((availableXStart - availableXEnd), 2.0) + powf( + (availableYStart - availableYEnd), 2.0)); + float lengthSqr; + + // do { + + switch (predefine) { + case 1: { + config.startpointX = 0; + config.startpointY = 0; + + config.endpointX = availableXEnd; + config.endpointY = availableYEnd; + break; + } + case 2: { + config.startpointX = availableXStart; + config.startpointY = 0; + + config.endpointX = 0; + config.endpointY = availableYEnd; + break; + } + case 3: { + config.startpointX = availableXStart; + config.startpointY = availableYStart; + + config.endpointX = 0; + config.endpointY = 0; + break; + } + case 4: { + config.startpointX = 0; + config.startpointY = availableYStart; + + config.endpointX = availableXEnd; + config.endpointY = 0; + break; + } + } + + // calculate walklength + float lengthX = fabs(config.startpointX - config.endpointX); + float lengthY = fabs(config.startpointY - config.endpointY); + + lengthSqr = powf(lengthX, 2.0) + powf(lengthY, 2.0); + + // } while (false); //lengthSqr < availLengthSqr/4.0); + + return (config); +} diff -Nru oggvideotools-0.8a/src/effect/kenburnseffect.h oggvideotools-0.9.1/src/effect/kenburnseffect.h --- oggvideotools-0.8a/src/effect/kenburnseffect.h 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/effect/kenburnseffect.h 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,87 @@ +// +// C++ Interface: kenburnseffect +// +// Description: +// +// +// Author: Yorn , (C) 2009 +// +// Copyright: See COPYING file that comes with this distribution +// +// +#ifndef KENBURNSEFFECT_H +#define KENBURNSEFFECT_H + +#include "effector.h" + +/** + @author Yorn +*/ +class KenBurnsEffect : public Effector { + +public: + class KenBurnsConfig { + public: + bool first; + bool last; + + uint32 sequenceLength; /* in frames */ + uint32 blindLength; /* in frames */ + + uint32 outputWidth; + uint32 outputHeight; + + float startpointX; + float startpointY; + float endpointX; + float endpointY; + float zoomStart; + float zoomEnd; + + RGBPlane origPlane; + }; + +protected: + enum State { + unconfigured, + blindIn, + presentation, + blindOut, + unavailable + }; + + KenBurnsConfig config; + uint32 frameCounter; + + State state; + + RGBPlane blackPlane; + RGBPlane presentationPlane; + + float stepX; + float stepY; + float stepZoom; + + float actX; + float actY; + float actZoom; + + void doBlindIn(RGBPlane& plane); + void doPresentation(RGBPlane& plane); + void doBlindOut(RGBPlane& plane); + +public: + KenBurnsEffect(); + ~KenBurnsEffect(); + + void configure(KenBurnsConfig& config); + + virtual Effector& operator>>(RGBPlane& plane); + virtual bool available(); + virtual void accept(EffectorVisitor& visitor) const; + + static KenBurnsConfig createKBconfigRandom(RGBPlane& plane, uint32 pictureWidth, uint32 pictureHeight, uint32 frameWidth, uint32 frameHeight, uint32 sequenceLength, uint32 blindLength); + static KenBurnsConfig createKBconfigPredefine(RGBPlane& plane, uint32 pictureWidth, uint32 pictureHeight, uint32 frameWidth, uint32 frameHeight, uint32 sequenceLength, uint32 blindLength, uint32 predefine); +}; + +#endif diff -Nru oggvideotools-0.8a/src/effect/lowpassEffect.cpp oggvideotools-0.9.1/src/effect/lowpassEffect.cpp --- oggvideotools-0.8a/src/effect/lowpassEffect.cpp 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/effect/lowpassEffect.cpp 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,135 @@ +// +// C++ Implementation: lowpassEffect +// +// Description: +// +// +// Author: Yorn , (C) 2009 +// +// Copyright: See COPYING file that comes with this distribution +// +// +#include "lowpassEffect.h" + +#include +#include + +#include "pictureResize.h" +#include "log.h" +#include "effectorVisitor.h" + +LowpassEffect::LowpassEffect() + : state(unconfigured) +{ +} + + +LowpassEffect::~LowpassEffect() +{ +} + +void LowpassEffect::configure(LowPassPictureConfig & _config) +{ + + config = _config; + framecounter = 0; + + factor = 0.5; + + presentationPlane = PictureResize::reframe(config.origPlane, config.outputWidth, config.outputHeight); + + if (config.first) + state = presentation; + else + state = blindIn; +} + +Effector & LowpassEffect::operator >>(RGBPlane & plane) +{ + switch (state) { + + case blindIn: { + doBlindIn(plane); + break; + } + + case blindOut: { + doBlindOut(plane); + break; + } + + case presentation: { + doPresentation(plane); + break; + } + + default: { + logger.error() << "LowpassEffect: no frame available\n"; + break; + } + } + + +} + +void LowpassEffect::doBlindIn(RGBPlane & plane) +{ + uint32 n = (config.blindLength - framecounter); + + float filterValue = n*1.0/(config.blindLength*1.0);//1.0/(2.0+(n*1.0/(config.blindLength*1.0)*100.0)); //powf(factor,n); +// logger.debug() << " -- blindin - fr "<< framecounter <<" fa "< config.blindLength) { + state = presentation; + } + +} + +void LowpassEffect::doPresentation(RGBPlane & plane) +{ + + plane = presentationPlane; //.reframe(config.outputWidth, config.outputHeight); + + framecounter++; + if (framecounter > (config.sequenceLength - config.blindLength)) { + if (!config.last) { + state = blindOut; + } else { + if (framecounter >= config.sequenceLength) { + state = unavailable; + } + } + + } + +} + +void LowpassEffect::doBlindOut(RGBPlane & plane) +{ + uint32 n = (framecounter - (config.sequenceLength - config.blindLength)); + + float filterValue = n*1.0/(config.blindLength*1.0);//1.0/(2.0+(n*1.0/(config.blindLength*1.0)*100.0)); //powf(factor,n); + + logger.debug() << " -- blindout - fr "<< framecounter <<" fa "<= config.sequenceLength) { + state = unavailable; + } + +} + +bool LowpassEffect::available() +{ + return((state != unavailable) && (state != unconfigured)); +} + +void LowpassEffect::accept(EffectorVisitor& visitor) const +{ + visitor.visit(*this); +} diff -Nru oggvideotools-0.8a/src/effect/lowpassEffect.h oggvideotools-0.9.1/src/effect/lowpassEffect.h --- oggvideotools-0.8a/src/effect/lowpassEffect.h 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/effect/lowpassEffect.h 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,74 @@ +// +// C++ Interface: lowpassEffect +// +// Description: +// +// +// Author: Yorn , (C) 2009 +// +// Copyright: See COPYING file that comes with this distribution +// +// +#ifndef LOWPASSEFFECT_H +#define LOWPASSEFFECT_H + +#include "effector.h" + +/** + @author Yorn +*/ +class LowpassEffect : public Effector { + +public: + class LowPassPictureConfig { + public: + + bool first; + bool last; + + uint32 sequenceLength; /* in frames */ + uint32 blindLength; /* in frames */ + + uint32 outputWidth; + uint32 outputHeight; + + RGBPlane origPlane; + }; + +protected: + + enum State { + unconfigured, + blindIn, + presentation, + blindOut, + unavailable + }; + + State state; + RGBPlane presentationPlane; + uint32 framecounter; + float factor; + + LowPassPictureConfig config; + + void doBlindIn(RGBPlane& plane); + void doBlindOut(RGBPlane& plane); + void doPresentation(RGBPlane& plane); + +public: + LowpassEffect(); + virtual ~LowpassEffect(); + + void configure(LowPassPictureConfig& config); + + virtual Effector& operator>>(RGBPlane& plane); + + virtual bool available(); + + virtual void accept(EffectorVisitor& visitor) const; + +}; + + +#endif diff -Nru oggvideotools-0.8a/src/effect/pictureBlend.cpp oggvideotools-0.9.1/src/effect/pictureBlend.cpp --- oggvideotools-0.8a/src/effect/pictureBlend.cpp 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/effect/pictureBlend.cpp 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,119 @@ +// +// C++ Implementation: pictureBlend +// +// Description: +// +// +// Author: Yorn , (C) 2009 +// +// Copyright: See COPYING file that comes with this distribution +// +// +#include "pictureBlend.h" +#include "exception.h" + +PictureBlend::PictureBlend() +{ +} + + +PictureBlend::~PictureBlend() +{ +} + +RGBPlane PictureBlend::crossfade(RGBPlane & plane1, RGBPlane & plane2, float velocity) +{ + + if ((plane1->width != plane2->width) || (plane1->height != plane2->height)) + throw OggException("can not crossfade, planes not matching"); + + uint32 size = plane1->width*plane1->height*4; + + RGBPlane retPlane(plane1->width, plane1->height); + + uint32 pixel1; + uint32 pixel2; + uint32 newPixel; + + for (uint32 i(0); iplane[i]; + pixel2 = plane2->plane[i]; + newPixel = (uint32)(pixel1*(1.0-velocity) + pixel2*velocity); + + if (newPixel> 0xFF) + newPixel = 0xFF; + + retPlane->plane[i] = (uint8)newPixel; + + /* green */ + pixel1 = plane1->plane[i+1]; + pixel2 = plane2->plane[i+1]; + newPixel = (uint32)(pixel1*(1.0-velocity) + pixel2*velocity); + + if (newPixel> 0xFF) + newPixel = 0xFF; + + retPlane->plane[i+1] = (uint8)newPixel; + + /* blue */ + pixel1 = plane1->plane[i+2]; + pixel2 = plane2->plane[i+2]; + newPixel = (uint32)(pixel1*(1.0-velocity) + pixel2*velocity); + + if (newPixel> 0xFF) + newPixel = 0xFF; + + retPlane->plane[i+2] = (uint8)newPixel; + + } + + return (retPlane); +} + +RGBPlane PictureBlend::alphaBlend(RGBPlane& origPlane, RGBPlane & alphaPlane, float intensity) +{ + float factor; + uint32 position; + + uint32 pixel1; + uint32 pixel2; + uint32 newPixel; + + RGBPlane retPlane(origPlane->width, origPlane->height); + + uint32 positionAlpha; + + for (uint32 j(0); j < origPlane->height; ++j) + for (uint32 i(0); i < origPlane->width; ++i) { + + // if the alpha plane is smaller than the original plane, just copy the data + if ((iwidth) && (jheight)) { + position = 4*(j*origPlane->width+i); + + positionAlpha = 4*(j*alphaPlane->width+i); + + factor = intensity*((127-alphaPlane->plane[positionAlpha+3])*1.0)/127.0; + for (uint32 k(0); k<3; ++k) { + pixel1 = origPlane->plane[position+k]; + pixel2 = alphaPlane->plane[positionAlpha+k]; + newPixel = (uint32)(pixel1 * (1.0-factor) + pixel2 * factor ); + + if (newPixel> 0xFF) + newPixel = 0xFF; + + retPlane->plane[position+k] = (uint8)newPixel; + } + + } else { + position = j*origPlane->width+i; + ((uint32*)(retPlane->plane))[position] = ((uint32*)(origPlane->plane))[position]; + } + + } + return (retPlane); + +} + + diff -Nru oggvideotools-0.8a/src/effect/pictureBlend.h oggvideotools-0.9.1/src/effect/pictureBlend.h --- oggvideotools-0.8a/src/effect/pictureBlend.h 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/effect/pictureBlend.h 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,32 @@ +// +// C++ Interface: pictureBlend +// +// Description: +// +// +// Author: Yorn , (C) 2009 +// +// Copyright: See COPYING file that comes with this distribution +// +// +#ifndef PICTUREBLEND_H +#define PICTUREBLEND_H + +#include "rgbPlane.h" +/** + @author Yorn +*/ +class PictureBlend { + +public: + PictureBlend(); + + virtual ~PictureBlend(); + + static RGBPlane alphaBlend(RGBPlane& picture, RGBPlane& alphaPic, float intensity); + + static RGBPlane crossfade(RGBPlane& plane1, RGBPlane& plane2, float velocity); + +}; + +#endif diff -Nru oggvideotools-0.8a/src/effect/pictureLoader.cpp oggvideotools-0.9.1/src/effect/pictureLoader.cpp --- oggvideotools-0.8a/src/effect/pictureLoader.cpp 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/effect/pictureLoader.cpp 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,584 @@ +// +// C++ Implementation: pictureLoader +// +// Description: +// +// +// Author: Yorn , (C) 2009 +// +// Copyright: See COPYING file that comes with this distribution +// +// +#include "pictureLoader.h" + +#include +#include +#include +#include "exception.h" +#include "log.h" + +#define SCALEBITS 8 +#define ONE_HALF (1 << (SCALEBITS - 1)) +#define FIX(x) ((int) ((x) * (1L<255)))) + +PictureLoader::PictureLoader() +{ +} + + +PictureLoader::~PictureLoader() +{ +} + +#ifdef WITH_GD2LIB +bool PictureLoader::load(RGBPlane& retPlane, const std::string& filename, uint32 _width, uint32 _height, + bool useBiggest) +{ + SuffixType type = identifySuffix(filename); + if (type == suffix_unknown) { + logger.error() << "PictureLoader::load: Cannot identify suffix of <"<\n"; + return(false); + } + + gdImagePtr im(0); + + FILE* in; + in = fopen(filename.c_str(), "rb"); + + if (in == 0) { + logger.error() << "PictureLoader::load: Cannot open file <"<: " + << strerror(errno) << "\n"; + return(false); + } + + if (type == suffix_jpg) { + im = gdImageCreateFromJpeg(in); + } else if (type == suffix_png) { + im = gdImageCreateFromPng(in); + } else if (type == suffix_gif) { + im = gdImageCreateFromGif(in); + } + + fclose(in); + + if (im == 0) { + logger.error() << "PictureLoader::load: Error reading image file <"<\n"; + return(false); + } + + if ((_width != 0) && (_height != 0) && ( _width != gdImageSX(im) ) && + (_height != gdImageSY(im))) { + + uint32 origWidth(gdImageSX(im)); + uint32 origHeight(gdImageSY(im)); + + /* calculate the new size -> picture must fit into the given rectangle */ + float factorX = (_width*1.0)/(origWidth*1.0); + float factorY = (_height*1.0)/(origHeight*1.0); + float factor(1.0); + +#ifdef DEBUG + logger.debug() << "wanted: "<<_width<<"x"<<_height<<" orig: " + <sx, + resampled->sy, origWidth, origHeight); + + retPlane = convertToRgbPlane(resampled); + + gdImageDestroy(resampled); + } else { + retPlane = convertToRgbPlane(im); + } + + gdImageDestroy(im); + + return (true); +} + +RGBPlane PictureLoader::convertToRgbPlane(gdImagePtr im) +{ + + uint32 width = gdImageSX(im); + uint32 height = gdImageSY(im); + + RGBPlane pic(width, height); + + int c(0); + uint32 x(0); + + for (uint32 i(0); iplane[x++] = gdImageRed(im, c); + pic->plane[x++] = gdImageGreen(im, c); + pic->plane[x++] = gdImageBlue(im,c); + pic->plane[x++] = gdImageAlpha(im,c); + } + + return(pic); +} + +PictureLoader::SuffixType PictureLoader::identifySuffix(const std::string& filename) +{ + std::string::size_type suffixStart(filename.find_last_of('.')); + + if (suffixStart == std::string::npos) { + return (suffix_unknown); + } + + std::string suffix(filename.substr(suffixStart+1)); + + if ((suffix == "jpg") || (suffix == "JPG") || (suffix == "jpeg") || (suffix + == "JPEG")) { + return (suffix_jpg); + } + + if ((suffix == "png") || (suffix == "PNG")) { + return (suffix_png); + } + + if ((suffix == "gif") || (suffix == "GIF")) { + return (suffix_gif); + } + + return (suffix_unknown); + +} + +bool PictureLoader::save(RGBPlane& pic, const std::string& filename, uint32 newWidth, + uint32 newHeight) +{ + + int actColor; + int planeCount(0); + + SuffixType type = identifySuffix(filename); + if (type == suffix_unknown) { + logger.error() << "PictureLoader::identifySuffix: Cannot identify suffix of <" + << filename << ">\n"; + return(false); + } + + gdImagePtr im = gdImageCreateTrueColor(pic->width, pic->height); + + for (uint32 i(0); i < pic->height; ++i) + for (uint32 j(0); j < pic->width; ++j) { + int red = pic->plane[planeCount++]; + int green = pic->plane[planeCount++]; + int blue = pic->plane[planeCount++]; + actColor = gdImageColorAllocate(im, red, green, blue); + + planeCount++; // alpha channel not in use + + gdImageSetPixel(im, j, i, actColor); + + } + + FILE* out = fopen(filename.c_str(), "wb"); + if (out == 0) { + logger.error() << "PictureLoader::save: Cannot open file <"<: " + << strerror(errno) << "\n"; + return(false); + } + + if ((newWidth != 0) || (newHeight != 0)) { + + if (newWidth == 0) + newWidth = pic->width*newHeight/pic->height; + + if (newHeight == 0) + newHeight = pic->height*newWidth/pic->width; + + gdImagePtr resampled; + resampled = gdImageCreateTrueColor(newWidth, newHeight); + if (!resampled) { + throw OggException("PictureLoader::save: failed to allocate image buffer\n"); + } + + gdImageCopyResampled(resampled, im, 0, 0, 0, 0, resampled->sx, + resampled->sy, pic->width, pic->height); + + switch (type) { + + case suffix_jpg: + gdImageJpeg(resampled, out, -1); + break; + + case suffix_png: + gdImagePng(resampled, out); + break; + + // case suffix_gif: + + default: + logger.error() << "cannot identify suffix\n"; + + } + /* Write JPEG using default quality */ + gdImageDestroy(resampled); + + } else { + + switch (type) { + + case suffix_jpg: + gdImageJpeg(im, out, -1); + break; + + case suffix_png: + gdImagePng(im, out); + break; + + // case suffix_gif: + + default: + logger.error() << "cannot identify suffix\n"; + + } + + } + + /* Close file */ + if (fclose(out) != 0) { + logger.error() << "Error writing file <" << filename << ">: " + << strerror(errno) << "\n"; + gdImageDestroy(im); + return(false); + } + + /* Destroy the image */ + gdImageDestroy(im); + + return (true); +} +#endif //WITH_GD2LIB + +#ifdef HAVE_LIBTHEORAENC + +void PictureLoader::exportYCrCb_theora(RGBPlane& picture, th_ycbcr_buffer& buffer, int pixel_format ) +{ + + uint32 frameWidth; + uint32 frameHeight; + uint32 XOffset; + uint32 YOffset; + + /* recalculate the buffer (must be multiple of 16) */ + frameWidth = (picture->width+15)&~0xF; + frameHeight = (picture->height+15)&~0xF; + + // We force the offset to be even. + // This ensures that the chroma samples align properly with the luma + // samples. + + XOffset = ((frameWidth - picture->width)/4); //&~1; + YOffset = ((frameHeight - picture->height)/4); //&~1; + +// logger.debug() << width <<" x "<width * 4; + + uint32 HeightPrecalculation0x; + uint32 HeightPrecalculation1x; + uint32 CromaPrecalculation; + + uint32 position00; + uint32 position01; + uint32 position10; + uint32 position11; + + uint32 inPos00; + uint32 inPos01; + uint32 inPos10; + uint32 inPos11; + + uint32 red_sample; + uint32 green_sample; + uint32 blue_sample; + + uint32 cromaPos; + + for (uint32 i(0); i<(uint32)(picture->height+1)/2; ++i) { + + HeightPrecalculation0x = (2*(i+YOffset))*buffer[0].stride; + HeightPrecalculation1x = (2*(i+YOffset)+1)*buffer[0].stride; + CromaPrecalculation = (i+YOffset)*buffer[1].stride; + + for (uint32 j(0); j<(uint32)(picture->width+1)/2; ++j) { + + position00 = HeightPrecalculation0x+(2*(j+XOffset)); + position01 = HeightPrecalculation0x+(2*(j+XOffset)+1); + position10 = HeightPrecalculation1x+(2*(j+XOffset)); + position11 = HeightPrecalculation1x+(2*(j+XOffset)+1); + + inPos00 = 4*((2*i)*picture->width+(2*j)); + inPos01 = 4*((2*i)*picture->width+(2*j+1)); + inPos10 = 4*((2*i+1)*picture->width+(2*j)); + inPos11 = 4*((2*i+1)*picture->width+(2*j+1)); + + cromaPos = CromaPrecalculation+(j+XOffset); + + + buffer[0].data[position00] = (FIX(0.29900) * picture->plane[inPos00] + + FIX(0.58700) * picture->plane[inPos00+1] + + FIX(0.11400) * picture->plane[inPos00+2] + + ONE_HALF) >> SCALEBITS; + + buffer[0].data[position01] = (FIX(0.29900) * picture->plane[inPos01] + + FIX(0.58700) * picture->plane[inPos01+1] + + FIX(0.11400) * picture->plane[inPos01+2] + + ONE_HALF) >> SCALEBITS; + + buffer[0].data[position10] = (FIX(0.29900) * picture->plane[inPos10] + + FIX(0.58700) * picture->plane[inPos10+1] + + FIX(0.11400) * picture->plane[inPos10+2] + + ONE_HALF) >> SCALEBITS; + + buffer[0].data[position11] = (FIX(0.29900) * picture->plane[inPos11] + + FIX(0.58700) * picture->plane[inPos11+1] + + FIX(0.11400) * picture->plane[inPos11+2] + + ONE_HALF) >> SCALEBITS; + + red_sample = picture->plane[inPos00] + picture->plane[inPos01] + picture->plane[inPos10] + picture->plane[inPos11]; + + green_sample = picture->plane[inPos00+1] + picture->plane[inPos01+1] + picture->plane[inPos10+1] + picture->plane[inPos11+1]; + + blue_sample = picture->plane[inPos00+2] + picture->plane[inPos01+2] + picture->plane[inPos10+2] + picture->plane[inPos11+2]; + + buffer[1].data[cromaPos] = ((-FIX(0.16874) * red_sample - FIX(0.33126) * green_sample +FIX(0.50000) * blue_sample + 4 * ONE_HALF- 1) >> (SCALEBITS + 2)) + 128; + + buffer[2].data[cromaPos] = ((FIX(0.50000) * red_sample - FIX(0.41869) * green_sample -FIX(0.08131) * blue_sample + 4 * ONE_HALF - 1) >> (SCALEBITS + 2)) + 128; + + + } + } +} + + +void PictureLoader::exportYCrCb_444_theora(RGBPlane& picture, th_ycbcr_buffer& buffer) +{ + + uint32 frameWidth; + uint32 frameHeight; + uint32 XOffset; + uint32 YOffset; + + /* recalculate the buffer (must be multiple of 16) */ + frameWidth = (picture->width+15)&~0xF; + frameHeight = (picture->height+15)&~0xF; + + // We force the offset to be even. + // This ensures that the chroma samples align properly with the luma + // samples. + + XOffset = ((frameWidth - picture->width)/2)&~1; + YOffset = ((frameHeight - picture->height)/2)&~1; + +// logger.debug() << width <<" x "<height; ++i) { + + HeightPrecalculation = (i+YOffset)*buffer[0].stride; + + for (uint32 j(0); j<(uint32)picture->width; ++j) { + + ycrcbPosition = HeightPrecalculation+(j+XOffset); + + rgbPosition = 4*(i*picture->width+j); + + red_sample = picture->plane[rgbPosition]; + green_sample = picture->plane[rgbPosition+1]; + blue_sample = picture->plane[rgbPosition+2]; + + buffer[0].data[ycrcbPosition] = (FIX(0.29900) * red_sample + + FIX(0.58700) * green_sample + + FIX(0.11400) * blue_sample + + ONE_HALF) >> SCALEBITS; + buffer[0].data[ycrcbPosition] = 0; + + int32 cr = ( -1 * FIX(0.168736) * red_sample + - FIX(0.331264) * green_sample + + FIX(0.5) * blue_sample + + ONE_HALF ) >> SCALEBITS ; + static uint32 cn(0); + //cr = + if (i < picture->height/4 ) + buffer[1].data[ycrcbPosition] = cn++;//128 + cr; + else + buffer[1].data[ycrcbPosition] = 0;//128 + cr; + // logger.debug() << (uint32) buffer[1].data[ycrcbPosition] << " "; + + int32 cb = (FIX(0.5) * red_sample + - FIX(0.418688) * green_sample + - FIX(0.081312) * blue_sample + + ONE_HALF) >> SCALEBITS; + buffer[2].data[ycrcbPosition] = 0; //128 +cb; + + } + } + //abort(); +} + + +RGBPlane PictureLoader::importYCrCb_theora(const th_ycbcr_buffer& buffer, uint32 _width, uint32 _height, uint32 XOffset, uint32 YOffset, int pixel_format) +{ + + uint32 width; + uint32 height; + + // what size to use? + if ((_width == 0) || (_height == 0)) { + width = buffer[0].width; + height = buffer[0].height; + XOffset = 0; + YOffset = 0; + } else { + width = _width; + height = _height; + } + + RGBPlane retPlane(width, height); + + /* Theora spec 4.4.1/4.4.2/4.4.3: + 4:2:0 is subsampled on X and Y, 4:2:2 on X, and 4:4:4 is not subsampled. */ + unsigned int CbCr_subshift_x = (pixel_format==TH_PF_444)?0:1; + unsigned int CbCr_subshift_y = (pixel_format==TH_PF_420)?1:0; + + uint8* out = retPlane->plane; + for (int row=YOffset; row>CbCr_subshift_y)*buffer[1].stride+(col>>CbCr_subshift_x); + int Cb = buffer[1].data[CrCb_pos]; + int Cr = buffer[2].data[CrCb_pos]; + /* Theora spec 4.3.1/4.3.2: + Y,Cb,Cr have offsets 16, 128, and 128 respectively.*/ + /* This can be made marginally faster by performing all + computation over a common power-of-two denominator to conserve the + multiplication on Y and replace the division with a shift. + Although somewhat faster it doesn't make it fast compared to a SIMD implementation + so this instead favors accuracy. + This can also be made faster on some platforms for using a table to + replace multiplication, but that isn't likely to be helpful if only + a single smallish frame is being written. + The two (minor) speedups mentioned here are implemented in libtheora's + player_example.c. An inaccurate but fairly fast SIMD implementation + can be found in liboggplay. */ + int r=(1904000*Y+2609823*Cr-363703744)/1635200; + *(out++) = CLAMP255(r); + int g=(3827562*Y-1287801*Cb-2672387*Cr+447306710)/3287200; + *(out++) = CLAMP255(g); + int b=(952000*Y+1649289*Cb-225932192)/817600; + *(out++) = CLAMP255(b); + *(out++) = 255; + } + } + + return(retPlane); +} + +#endif + + diff -Nru oggvideotools-0.8a/src/effect/pictureLoader.h oggvideotools-0.9.1/src/effect/pictureLoader.h --- oggvideotools-0.8a/src/effect/pictureLoader.h 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/effect/pictureLoader.h 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,66 @@ +// +// C++ Interface: pictureLoader +// +// Description: +// +// +// Author: Yorn , (C) 2009 +// +// Copyright: See COPYING file that comes with this distribution +// +// +#ifndef PICTURELOADER_H +#define PICTURELOADER_H + +#include + +#include "rgbPlane.h" + +#ifdef WITH_GD2LIB +#include +#endif + +#ifdef HAVE_LIBTHEORAENC +#include +#endif + +/** + @author Yorn +*/ +class PictureLoader { + +protected: + enum SuffixType { + suffix_unknown, + suffix_jpg, + suffix_png, + suffix_gif + }; + +#ifdef WITH_GD2LIB + static RGBPlane convertToRgbPlane(gdImagePtr im); + static SuffixType identifySuffix(const std::string& filename); +#endif + +public: + + PictureLoader(); + + virtual ~PictureLoader(); + +#ifdef WITH_GD2LIB + static bool load(RGBPlane& retPlane, const std::string& filename, uint32 width=0, uint32 height=0, bool useBiggest = true); + static bool save(RGBPlane& pic, const std::string& filename, uint32 width=0, uint32 height=0); +#endif + +#ifdef HAVE_LIBTHEORAENC + static void exportYCrCb_theora(RGBPlane& plane, th_ycbcr_buffer& buffer, int pixel_format=TH_PF_420); + static void exportYCrCb_444_theora(RGBPlane& picture, th_ycbcr_buffer& buffer); + + static RGBPlane importYCrCb_theora(const th_ycbcr_buffer& buffer, uint32 width, uint32 height, uint32 XOffset=0, uint32 YOffset=0, int pixel_format=TH_PF_420); +#endif + + +}; + +#endif diff -Nru oggvideotools-0.8a/src/effect/pictureResize.cpp oggvideotools-0.9.1/src/effect/pictureResize.cpp --- oggvideotools-0.8a/src/effect/pictureResize.cpp 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/effect/pictureResize.cpp 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,757 @@ +// +// C++ Implementation: pictureResize +// +// Description: +// +// +// Author: Yorn , (C) 2009 +// +// Copyright: See COPYING file that comes with this distribution +// +// +#include "pictureResize.h" + +#include +#include +#include +#include +#include "exception.h" +#include "log.h" + +#define INIT_CLIP int32 tmp +#define CLIP(x,n) tmp = (int32)(x+0.5); \ + if (tmp > 255) n=255; \ + else if (tmp < 0) n=0; \ + else n = (uint8)(tmp); + +#define MIN(x,y) (((x)<(y))?(x):(y)) +#define MAX(x,y) (((x)<(y))?(y):(x)) + +PictureResize::PictureResize() +{ +} + +PictureResize::~PictureResize() +{ +} + +uint32 PictureResize::calculateKernelValue(RGBPlane& pic, float posX, + float posY, float radius, bool p) +{ + + radius = sqrt(radius); + + uint32 xStart(MAX(0,posX-radius+0.5)); + uint32 xEnd(MIN(posX+radius+0.5,(float)pic->width)); + + uint32 yStart(MAX(0,posY-radius+0.5)); + uint32 yEnd(MIN(posY+radius+0.5,(float)pic->height)); + + float weightsCounter(0); + + float valueRed(0); + float valueGreen(0); + float valueBlue(0); + + float tmpWeight; + float tmpDistance; + uint32 position; + uint32 positionHeight; + +#ifdef DEBUG + uint32 counter1(0); + uint32 overall(0); + + if (p) { + logger.debug() << "kernel calculation at position "<"<width; + + for (uint32 j(xStart); j distance " + < distance " + < 4*pic->width*pic->height) { + logger.error() << "Error: calculating for Position "<width << " x " + << pic->height<<" Kernel window: "< "<plane[position]*tmpWeight; + valueGreen += pic->plane[position+1]*tmpWeight; + valueBlue += pic->plane[position+2]*tmpWeight; + weightsCounter += tmpWeight; + } + } +#ifdef DEBUG + if (p) + logger.debug() << " Unused: "<width)); + + uint32 yStart(MAX(0,posY-radius+0.5)); + uint32 yEnd(MIN(posY+radius+0.5,(float)pic->height)); + + uint32 radiusF(radius+0.51); + + uint32 weightsCounter(0); + + uint32 valueRed(0); + uint32 valueGreen(0); + uint32 valueBlue(0); + + int32 tmpWeight; + uint32 tmpDistance; + uint32 position; + uint32 positionHeight; + + uint32 posXF = (uint32)(posX+0.5); + uint32 posYF = (uint32)(posY+0.5); + + uint32 factor(1); + uint32 factorCounter(0); + uint32 size(((xEnd-xStart)*(yEnd-yStart))); + + if (size > 128) { + factor = size / 32; + } + +#ifdef DEBUG + uint32 counter1(0); + uint32 overall(0); + + if (p) { + logger.debug() << "kernel calculation at position "<"<width; + + tmpDistance = (i-posYF)*(i-posYF) + (j-posXF)*(j-posXF); + tmpDistance = (uint32)(sqrt(tmpDistance)+0.5); + tmpWeight = getWeightFix(tmpDistance, radiusF); + +#ifdef DEBUG + overall++; +#endif + if (tmpWeight <= 0) { +#ifdef DEBUG + if (p) { + logger.debug() << " Pos: "< distance " + < distance " + < 4*pic->width*pic->height) { + logger.debug() << "Error: calculating for Position "<width << " x "<< pic->height + <<" Kernel window: "< "<plane[position]*tmpWeight; + valueGreen += pic->plane[position+1]*tmpWeight; + valueBlue += pic->plane[position+2]*tmpWeight; + weightsCounter += tmpWeight; + } + +#ifdef DEBUG + if (p) + logger.debug() << " Unused: "<plane[4*(posYF*pic->width+posXF)]; + RGB[1] = pic->plane[4*(posYF*pic->width+posXF)+1]; + RGB[2] = pic->plane[4*(posYF*pic->width+posXF)+2]; + } + + return (retValue); +} + +float PictureResize::getWeight(float distance, float radius) +{ + // should be a sinc + + /* -> lets save time on the expence of security + * if ((radius <= 0) || (distance > radius)) + * return(0); + */ + return (1.0 - distance/radius); + + // return(1.0 - sqrt(distance)/sqrt(radius)); +} + +int32 PictureResize::getWeightFix(uint32 distance, uint32 radius) +{ + // should be a sinc + + /* -> lets save time on the expence of security + * if ((radius <= 0) || (distance > radius)) + * return(0); + */ + return (1000 - distance*1000/radius); +} + +RGBPlane PictureResize::kernelLowpass(RGBPlane& picture, float radius) +{ + + RGBPlane retPlane(picture->width, picture->height); + + float kernelRadius((1.0-radius)*picture->height/4.0); + + kernelRadius *= kernelRadius; + + if (kernelRadius < 0.708) // sqrt(0.5) this is the lease radius size, a picture can be + kernelRadius = 0.708; + + uint32 heightAddition; + + for (uint32 i(0); iheight; ++i) { + + heightAddition = 4*i*picture->width; + + for (uint32 j(0); jwidth; ++j) { + uint32* _plane = (uint32*)(&retPlane->plane[heightAddition + 4*j]); + (*_plane) = calculateKernelValueFix(picture, j, i, kernelRadius); + } + } + + // logger.debug() << " DONE ! \n"; + + return (retPlane); + +} + +uint32 PictureResize::linearInterpolation(RGBPlane pic, float x, float y) +{ + uint32 pixelDistance = 4; + uint32 pos_x1 = (int)(x); + uint32 pos_x2 = (int)(x+1.0); + uint32 pos_y1 = (int)(y); + uint32 pos_y2 = (int)(y+1.0); + + if (pos_x2 >= pic->width) + pos_x2 = pic->width-1; + + if (pos_y2 >= pic->height) + pos_y2 = pic->height-1; + + float part_x = (float)(x - pos_x1); + float part_y = (float)(y - pos_y1); + + float value_x1y1; + float value_x1y2; + float value_x2y1; + float value_x2y2; + + float inter_x1y1_x1y2; + float inter_x2y1_x2y2; + float endpoint; + + uint32 retValue(0); + + uint8* RGB = (uint8*)(&retValue); + + /* red */ + + value_x1y1 = pic->plane[pixelDistance*(pos_y1*pic->width+pos_x1)]; + value_x1y2 = pic->plane[pixelDistance*(pos_y2*pic->width+pos_x1)]; + value_x2y1 = pic->plane[pixelDistance*(pos_y1*pic->width+pos_x2)]; + value_x2y2 = pic->plane[pixelDistance*(pos_y2*pic->width+pos_x2)]; + + inter_x1y1_x1y2 = (value_x1y2-value_x1y1)*part_y + value_x1y1; + inter_x2y1_x2y2 = (value_x2y2-value_x2y1)*part_y + value_x2y1; + + endpoint = (inter_x2y1_x2y2 - inter_x1y1_x1y2) * part_x + inter_x1y1_x1y2 + + 0.5; + + if (endpoint > 255) + endpoint = 255; + + if (endpoint < 0) + endpoint = 0; + + RGB[0] = (uint8)endpoint; + + /* green */ + + value_x1y1 = pic->plane[pixelDistance*(pos_y1*pic->width+pos_x1)+1]; + value_x1y2 = pic->plane[pixelDistance*(pos_y2*pic->width+pos_x1)+1]; + value_x2y1 = pic->plane[pixelDistance*(pos_y1*pic->width+pos_x2)+1]; + value_x2y2 = pic->plane[pixelDistance*(pos_y2*pic->width+pos_x2)+1]; + + inter_x1y1_x1y2 = (value_x1y2-value_x1y1)*part_y + value_x1y1; + inter_x2y1_x2y2 = (value_x2y2-value_x2y1)*part_y + value_x2y1; + + endpoint = (inter_x2y1_x2y2 - inter_x1y1_x1y2) * part_x + inter_x1y1_x1y2 + + 0.5; + + if (endpoint > 255) + endpoint = 255; + + if (endpoint < 0) + endpoint = 0; + + RGB[1] = (uint8)endpoint; + + /* blue */ + + value_x1y1 = pic->plane[pixelDistance*(pos_y1*pic->width+pos_x1)+2]; + value_x1y2 = pic->plane[pixelDistance*(pos_y2*pic->width+pos_x1)+2]; + value_x2y1 = pic->plane[pixelDistance*(pos_y1*pic->width+pos_x2)+2]; + value_x2y2 = pic->plane[pixelDistance*(pos_y2*pic->width+pos_x2)+2]; + + inter_x1y1_x1y2 = (value_x1y2-value_x1y1)*part_y + value_x1y1; + inter_x2y1_x2y2 = (value_x2y2-value_x2y1)*part_y + value_x2y1; + + endpoint = (inter_x2y1_x2y2 - inter_x1y1_x1y2) * part_x + inter_x1y1_x1y2 + + 0.5; + + if (endpoint > 255) + endpoint = 255; + + if (endpoint < 0) + endpoint = 0; + + RGB[2] = (uint8)endpoint; + + /* ALPHA */ + + value_x1y1 = pic->plane[pixelDistance*(pos_y1*pic->width+pos_x1)+3]; + value_x1y2 = pic->plane[pixelDistance*(pos_y2*pic->width+pos_x1)+3]; + value_x2y1 = pic->plane[pixelDistance*(pos_y1*pic->width+pos_x2)+3]; + value_x2y2 = pic->plane[pixelDistance*(pos_y2*pic->width+pos_x2)+3]; + + inter_x1y1_x1y2 = (value_x1y2-value_x1y1)*part_y + value_x1y1; + inter_x2y1_x2y2 = (value_x2y2-value_x2y1)*part_y + value_x2y1; + + endpoint = (inter_x2y1_x2y2 - inter_x1y1_x1y2) * part_x + inter_x1y1_x1y2 + + 0.5; + + if (endpoint > 255) + endpoint = 255; + + if (endpoint < 0) + endpoint = 0; + + RGB[3] = (uint8)endpoint; + + return (retValue); + +} + +RGBPlane PictureResize::resize(RGBPlane& picture, uint32 width, uint32 height, + uint8 quality) +{ + + RGBPlane retPlane(width, height); + + float resizeFactorX(((float)picture->width)/((float)retPlane->width)); + float resizeFactorY(((float)picture->height)/((float)retPlane->height)); + float radius((resizeFactorX*resizeFactorX + resizeFactorY*resizeFactorY) + /(0.5*quality)); + uint32 heightAddition; + + if (radius < 0.708) + radius = 0.708; + +#ifdef DEBUG + logger.debug() << "Resizing from "<width<<" : "<height + <<" to "<width<<" : "<height<<"\n"; + logger.debug() << "using resizefactor "< 1.6)) { + logger.debug() << "\nKernel\n"; + for (uint32 i(0); i< retPlane->height; ++i) { + + heightAddition = i*retPlane->width; + + for (uint32 j(0); j < retPlane->width; ++j) { +#ifdef DEBUG + if ((j==100) && (i==100)) + p=true; + else + p=false; +#endif + + ((uint32*)(retPlane->plane))[j+heightAddition] + = calculateKernelValue(picture, j *resizeFactorX, i + *resizeFactorY, radius, p); + } + } + } else { + logger.debug() << "\nLinear\n"; + for (uint32 i(0); i< retPlane->height; ++i) { + + heightAddition = i*retPlane->width; + + for (uint32 j(0); j < retPlane->width; ++j) { + +#ifdef DEBUG + if ((j==100) && (i==100)) + p=true; + else + p=false; +#endif + + ((uint32*)(retPlane->plane))[j+heightAddition] + = linearInterpolation(picture, j *resizeFactorX, i + *resizeFactorY); + } + } + } + + return (retPlane); + +} + +RGBPlane PictureResize::resize(RGBPlane& picture, float resizeFactorX, float resizeFactorY, uint8 quality) +{ + + RGBPlane retPlane(picture->width*resizeFactorX, picture->height*resizeFactorY); + + float radius((resizeFactorX*resizeFactorX + resizeFactorY*resizeFactorX)/(0.5*quality)); + uint32 heightAddition; + + if (radius < 1.2) // sqrt(0.5) this is the lease radius size, a picture can be + radius = 1.2; + +// if (radius < 0.708) // sqrt(0.5) this is the lease radius size, a picture can be +// radius = 0.708; + + bool p(false); + + logger.debug() << "\n\nKernel\n\n"; + + for (uint32 i(0); i< retPlane->height; ++i) { + + heightAddition = i*retPlane->width; + + for (uint32 j(0); j < retPlane->width; ++j) { + if ((i==100) && (j==100)) + p=true; + else + p=false; + + ((uint32*)(retPlane->plane))[j+heightAddition] = calculateKernelValue(picture, ((float)j) + *resizeFactorX, ((float)i)*resizeFactorY, radius); + } + } + + return (retPlane); + +} + +RGBPlane PictureResize::resize(RGBPlane& picture, float resizeFactor, + uint8 quality) +{ + return (resize(picture, resizeFactor, resizeFactor, quality)); +} + +RGBPlane PictureResize::reframe(RGBPlane & picture, uint32 width, + uint32 height, uint8 quality, uint32 background, double aspectCorrection) +{ + if ((picture->width == width) && (picture->height == height)) + return (picture); + + if (((picture->width == width) || (picture->height == height)) && aspectCorrection > 0.999 && aspectCorrection < 1.0001 ) + return reframe_fixed(picture, width, height, background); + + RGBPlane newPlane(width, height); + + uint32 planesize(width*height); + + // fill the plane with the given background + uint32* plPtr((uint32*)(newPlane->plane)); + for (uint32 i(0); iheight*newPlane->width)/((float)picture->width*aspectCorrection)) + < ((float)newPlane->height)) { + // we work with a height offset + offsetY = (uint32) ((((float)newPlane->height) + - (((float)(picture->height * newPlane->width)) + /((float)picture->width*aspectCorrection)))/2.0+0.5); + offsetX = 0; + resizeFactor = (((float)picture->width*aspectCorrection/(float)newPlane->width)); //((float)newPlane->width)/((float)width); + } else { + // we work with a width offset + offsetY = 0; + offsetX = (uint32) ((((float)newPlane->width) + - (((float)(picture->width*aspectCorrection *newPlane->height)) + /((float)picture->height)))/2.0+0.5); + resizeFactor = (((float)picture->height/(float)newPlane->height)); //((float)newPlane->height)/((float)picture->height); + } + +#ifdef DEBUG + logger.debug() << "Reframe - OffsetX: "<height-offsetY); ++i) { + for (uint32 j(offsetX); j <(newPlane->width-offsetX); ++j) { + position_new = (((float)i)*newPlane->width+j); + ((uint32*)(newPlane->plane))[position_new] + = calculateKernelValue(picture, resizePlaneCounterX, + resizePlaneCounterY, radius); + resizePlaneCounterX += (resizeFactor/aspectCorrection); + } + resizePlaneCounterY += resizeFactor; + resizePlaneCounterX = 0; + } + + return (newPlane); +} + +RGBPlane PictureResize::reframe_fixed(RGBPlane & picture, uint32 width, + uint32 height, uint32 background) +{ + std::cout << "fixed reframe (from " << picture->width <<":"<height<<" to " << width << ":"<width > width || picture->height > height) + throw OggException("picture too big"); + + if ((picture->width == width) && (picture->height == height)) + return (picture); + + RGBPlane newPlane(width, height); + + uint32 planesize(width*height); + + // fill the plane with the given background + uint32* plPtr((uint32*)(newPlane->plane)); + for (uint32 i(0); iplane)); + uint32 offsetX((width - picture->width)/2); + uint32 offsetY((height - picture->height)/2); + + std::cout << "offset: X=" << offsetX << " offset Y=" << offsetY << std::endl; + + for (uint32 i(0); iheight; ++i) { + uint heightAddNew = (i+offsetY)*width; + uint heightAddOrig = i*picture->width; + for (uint32 j(0); j < picture->width; ++j) { + plPtr[heightAddNew+offsetX+j] = plPtrOrig[heightAddOrig+j]; + } + } + + return (newPlane); +} + +RGBPlane PictureResize::subframe(RGBPlane & picture, uint32 newWidth, + uint32 newHeight, float offsetWidth, float offsetHeight, + float scaleFactor, uint8 quality) +{ + + if (((((float)newWidth)/scaleFactor)+offsetWidth> picture->width) + || ((((float)newHeight) /scaleFactor)+offsetHeight> picture->height)) { + logger.error() << "new width: "<width + <height + < 1.6)) { + + for (uint32 i(0); i < newHeight; ++i) { + heightAddition = i*newWidth; + for (uint32 j(0); j < newWidth; ++j) { + ((uint32*)(retPlane->plane))[j+heightAddition] + = calculateKernelValue(picture, ((float)j) + *resizeFactor+offsetWidth, ((float)i) + *resizeFactor+offsetHeight, radius); + + } + } + } else { + for (uint32 i(0); i < newHeight; ++i) { + heightAddition = i*newWidth; + for (uint32 j(0); j < newWidth; ++j) { + ((uint32*)(retPlane->plane))[j+heightAddition] + = linearInterpolation(picture, ((float)j) *resizeFactor + +offsetWidth, ((float)i)*resizeFactor + +offsetHeight); + + } + } + + } + + return (retPlane); + +} + +RGBPlane PictureResize::concatenate(RGBPlane& picture1, RGBPlane& picture2, RGBPlane& picture3) +{ + if (picture1.getHeight() != picture2.getHeight()) { + + logger.error() + << picture1.getHeight() <<" " <plane)+width*hcnt*2; + uint32* pic1RgbaPlane = ((uint32*)picture1->plane)+width*hcnt; + uint32* pic2RgbaPlane = ((uint32*)picture2->plane)+width*hcnt; + memcpy(retRgbaPlane, pic1RgbaPlane, width*sizeof(uint32)); + memcpy(retRgbaPlane+width, pic2RgbaPlane, width*sizeof(uint32)); + } + + return retPlane; +} + diff -Nru oggvideotools-0.8a/src/effect/pictureResize.h oggvideotools-0.9.1/src/effect/pictureResize.h --- oggvideotools-0.8a/src/effect/pictureResize.h 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/effect/pictureResize.h 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,57 @@ +// +// C++ Interface: pictureResize +// +// Description: +// +// +// Author: Yorn , (C) 2009 +// +// Copyright: See COPYING file that comes with this distribution +// +// +#ifndef PICTURERESIZE_H +#define PICTURERESIZE_H + +#include "definition.h" +#include "rgbPlane.h" + +/** + @author Yorn +*/ +class PictureResize { + +protected: + static uint32 calculateKernelValue(RGBPlane& pic, float posX, float posY, float radius, bool p=false); + static float getWeight(float distance, float radius); + + static uint32 calculateKernelValueFix(RGBPlane& pic, float posX, float posY, float radius, bool p=false); + static int32 getWeightFix(uint32 distance, uint32 radius); + + static uint32 linearInterpolation(RGBPlane pic, float x, float y); +public: + PictureResize(); + + virtual ~PictureResize(); + + //! Method transforms the original picture through a lowpass/bluring filter + static RGBPlane kernelLowpass(RGBPlane& picture, float radius=1); + + //! method resizes the picture and stretches if necessary + static RGBPlane resize(RGBPlane& picture, uint32 width, uint32 height, uint8 quality=1); + + static RGBPlane resize(RGBPlane& picture, float factorX, float factorY, uint8 quality=1); + + static RGBPlane resize(RGBPlane& picture, float factor, uint8 quality=1); + + //! Method keeps the aspect ratio during resize + static RGBPlane reframe(RGBPlane& picture, uint32 width, uint32 height, uint8 quality=1, uint32 background=0, double aspectCorrection=1); + + static RGBPlane reframe_fixed(RGBPlane & picture, uint32 width, uint32 height, uint32 background); + + static RGBPlane subframe(RGBPlane& picture, uint32 newWidth, uint32 newHeight, float offsetWidth, float offsetHeight, float resizeFactor, uint8 quality=1); + + static RGBPlane concatenate(RGBPlane& picture1, RGBPlane& picture2, RGBPlane& picture3); + +}; + +#endif diff -Nru oggvideotools-0.8a/src/effect/plainPicture.cpp oggvideotools-0.9.1/src/effect/plainPicture.cpp --- oggvideotools-0.8a/src/effect/plainPicture.cpp 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/effect/plainPicture.cpp 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,78 @@ +// +// C++ Implementation: PlainPicture +// +// Description: +// +// +// Author: Yorn , (C) 2009 +// +// Copyright: See COPYING file that comes with this distribution +// +// + +#include +#include "plainPicture.h" +#include "pictureResize.h" +#include "pictureLoader.h" +#include +#include "log.h" +#include "effectorVisitor.h" + +PlainPicture::PlainPicture() + : Effector(), state(unconfigured), framecounter(0) +{ +} + + +PlainPicture::~PlainPicture() +{ +} + +Effector & PlainPicture::operator >>(RGBPlane & plane) +{ + + if (!available()) + return(*this); + + plane = presentationPlane; + + framecounter++; + if (framecounter > config.sequenceLength) { + state = unavailable; + } + + return(*this); +} + +void PlainPicture::configure(PlainPictureConfig & _config) +{ + + framecounter = 0; + config = _config; + + logger.debug() << "PlanePicture::configure: "<< config.origPlane->width << "x" << config.origPlane->height<<" -> " + <width != config.outputWidth) || (config.origPlane->height != config.outputHeight)) { + logger.debug() << "reframing"<width << "x"<height<, (C) 2009 +// +// Copyright: See COPYING file that comes with this distribution +// +// +#ifndef PLAINPICTURE_H +#define PLAINPICTURE_H + +#include "effector.h" + +/** + @author Yorn +*/ +class PlainPicture : public Effector { + +public: + + class PlainPictureConfig { + public: + + uint32 sequenceLength; /* in frames */ + + uint32 outputWidth; + uint32 outputHeight; + + RGBPlane origPlane; + }; + +protected: + + enum State { + unconfigured, + presentation, + unavailable + }; + + State state; + RGBPlane presentationPlane; + PlainPictureConfig config; + uint32 framecounter; + + +public: + PlainPicture(); + virtual ~PlainPicture(); + + void configure(PlainPictureConfig& config); + + virtual Effector& operator>>(RGBPlane& plane); + + virtual bool available(); + + virtual void accept(EffectorVisitor& visitor) const; + +}; + +#endif diff -Nru oggvideotools-0.8a/src/effect/rgbPlane.cpp oggvideotools-0.9.1/src/effect/rgbPlane.cpp --- oggvideotools-0.8a/src/effect/rgbPlane.cpp 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/effect/rgbPlane.cpp 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,29 @@ +// +// C++ Implementation: rgbPlane +// +// Description: +// +// +// Author: Yorn , (C) 2009 +// +// Copyright: See COPYING file that comes with this distribution +// +// +#include "rgbPlane.h" + + +RGBPlane::RGBPlane() +{ +} + + +RGBPlane::~RGBPlane() +{ +} + +RGBPlane::RGBPlane(uint32 width, uint32 height, uint32 color) + : RefObject(new BasePlane(width, height, color)) +{ +} + + diff -Nru oggvideotools-0.8a/src/effect/rgbPlane.h oggvideotools-0.9.1/src/effect/rgbPlane.h --- oggvideotools-0.8a/src/effect/rgbPlane.h 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/effect/rgbPlane.h 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,42 @@ +// +// C++ Interface: rgbPlane +// +// Description: +// +// +// Author: Yorn , (C) 2009 +// +// Copyright: See COPYING file that comes with this distribution +// +// +#ifndef RGBPLANE_H +#define RGBPLANE_H + +#include "refObject.h" +#include "basePlane.h" + +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif + +/** + @author Yorn +*/ +class RGBPlane : public RefObject { + +public: + RGBPlane(); + RGBPlane(uint32 width, uint32 height, uint32 color = 0x00000000 ); + + virtual ~RGBPlane(); + + const uint32 getWidth() const { + return objPtr->width; + } + const uint32 getHeight() const { + return objPtr->height; + } + +}; + +#endif diff -Nru oggvideotools-0.8a/src/effect/shiftblendEffect.cpp oggvideotools-0.9.1/src/effect/shiftblendEffect.cpp --- oggvideotools-0.8a/src/effect/shiftblendEffect.cpp 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/effect/shiftblendEffect.cpp 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,141 @@ +/* + * shiftEffect.cpp + * + * Created on: 16.03.2014 + * Author: seger + */ + +#include "shiftblendEffect.h" + +#include +#include +#include + +#include "pictureBlend.h" +#include "pictureResize.h" +#include "log.h" +#include "effectorVisitor.h" + +ShiftblendEffect::ShiftblendEffect() + :state(unconfigured), framecounter(0) +{ + +} + +ShiftblendEffect::~ShiftblendEffect() +{ + +} + +bool ShiftblendEffect::available() +{ + return((state!=unavailable) && (state!=unconfigured)); +} + +void ShiftblendEffect::accept(EffectorVisitor& visitor) const +{ + visitor.visit(*this); +} + +Effector& ShiftblendEffect::operator >>(RGBPlane& plane) +{ + + switch (state) { + + case shifting: { + doShift(plane); + break; + } + + case presentation: { + doPresentation(plane); + break; + } + + default: { + logger.error() << "no frame available\n"; + break; + } + } + + return(*this); + +} + +void ShiftblendEffect::configure(ShiftConfig& _config) +{ + + framecounter = 0; + + config = _config; + + if (config.first) { + + lastPlane = RGBPlane(config.outputWidth, config.outputHeight); + + /* blank the plane */ + uint32 planesize = config.outputWidth*config.outputHeight*4; // 3 Colors + Alpha channel + memset(lastPlane->plane, 0x00, planesize); + + } + + /* resize the picture to the correct size */ + presentationPlane = PictureResize::reframe(config.origPlane, config.outputWidth, config.outputHeight); + + logger.debug() << "Picture size: "<< presentationPlane->width<<" x "<width + <<" -> frame size "< config.blindLength) { + logger.debug() << "Presenting -- \n"; + state = presentation; + } + +} + +void ShiftblendEffect::doPresentation(RGBPlane& plane) +{ + + plane = presentationPlane; + + framecounter++; + if (framecounter > config.sequenceLength) { + lastPlane = presentationPlane; + + state = unavailable; + } + +} + + diff -Nru oggvideotools-0.8a/src/effect/shiftblendEffect.h oggvideotools-0.9.1/src/effect/shiftblendEffect.h --- oggvideotools-0.8a/src/effect/shiftblendEffect.h 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/effect/shiftblendEffect.h 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,71 @@ +/* + * ShiftblendEffect.h + * + * Created on: 16.03.2014 + * Author: seger + */ + +#ifndef SHIFTBLENDEFFECT_H_ +#define SHIFTBLENDEFFECT_H_ + +#include "effector.h" + +class ShiftblendEffect: public Effector { +public: + class ShiftConfig { + public: + bool first; + + uint32 sequenceLength; /* in frames */ + uint32 blindLength; /* in frames */ + + uint32 outputWidth; + uint32 outputHeight; + + enum Type { + Left, + Right + }; + + Type type; + + RGBPlane origPlane; + }; + +protected: + RGBPlane presentationPlane; + + enum State { + unconfigured, + shifting, + presentation, + unavailable + }; + + State state; + + RGBPlane lastPlane; + RGBPlane shiftPlane; + uint32 framecounter; + + ShiftConfig config; + + void doShift(RGBPlane& plane); + void doPresentation(RGBPlane& plane); + + +public: + ShiftblendEffect(); + virtual ~ShiftblendEffect(); + + void configure(ShiftConfig& config); + + virtual Effector& operator>>(RGBPlane& plane); + + virtual bool available(); + + virtual void accept(EffectorVisitor& visitor) const; + +}; + +#endif /* ShiftblendEffect_H_ */ diff -Nru oggvideotools-0.8a/src/effect/shiftEffect.cpp oggvideotools-0.9.1/src/effect/shiftEffect.cpp --- oggvideotools-0.8a/src/effect/shiftEffect.cpp 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/effect/shiftEffect.cpp 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,136 @@ +/* + * shiftEffect.cpp + * + * Created on: 16.03.2014 + * Author: seger + */ + +#include "shiftEffect.h" + +#include +#include +#include + +#include "pictureBlend.h" +#include "pictureResize.h" +#include "log.h" +#include "effectorVisitor.h" + +ShiftEffect::ShiftEffect() + :state(unconfigured), framecounter(0) +{ + +} + +ShiftEffect::~ShiftEffect() +{ + +} + +bool ShiftEffect::available() +{ + return((state!=unavailable) && (state!=unconfigured)); +} + +void ShiftEffect::accept(EffectorVisitor& visitor) const +{ + visitor.visit(*this); +} + +Effector& ShiftEffect::operator >>(RGBPlane& plane) +{ + + switch (state) { + + case shifting: { + doShift(plane); + break; + } + + case presentation: { + doPresentation(plane); + break; + } + + default: { + logger.error() << "no frame available\n"; + break; + } + } + + return(*this); + +} + +void ShiftEffect::configure(ShiftConfig& _config) +{ + + framecounter = 0; + + config = _config; + + if (config.first) { + + lastPlane = RGBPlane(config.outputWidth, config.outputHeight); + + /* blank the plane */ + uint32 planesize = config.outputWidth*config.outputHeight*4; // 3 Colors + Alpha channel + memset(lastPlane->plane, 0x00, planesize); + + } + + + /* resize the picture to the correct size */ + presentationPlane = PictureResize::reframe(config.origPlane, config.outputWidth, config.outputHeight); + + logger.debug() << "Picture size: "<< presentationPlane->width<<" x "<width + <<" -> frame size "< config.blindLength) { + logger.debug() << "Presenting -- \n"; + state = presentation; + } + +} + +void ShiftEffect::doPresentation(RGBPlane& plane) +{ + + plane = presentationPlane; + + framecounter++; + if (framecounter > config.sequenceLength) { + lastPlane = presentationPlane; + + state = unavailable; + } + +} + + diff -Nru oggvideotools-0.8a/src/effect/shiftEffect.h oggvideotools-0.9.1/src/effect/shiftEffect.h --- oggvideotools-0.8a/src/effect/shiftEffect.h 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/effect/shiftEffect.h 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,64 @@ +/* + * shiftEffect.h + * + * Created on: 16.03.2014 + * Author: seger + */ + +#ifndef SHIFTEFFECT_H_ +#define SHIFTEFFECT_H_ + +#include "effector.h" + +class ShiftEffect: public Effector { +public: + class ShiftConfig { + public: + bool first; + + uint32 sequenceLength; /* in frames */ + uint32 blindLength; /* in frames */ + + uint32 outputWidth; + uint32 outputHeight; + + RGBPlane origPlane; + }; + +protected: + RGBPlane presentationPlane; + + enum State { + unconfigured, + shifting, + presentation, + unavailable + }; + + State state; + + RGBPlane lastPlane; + RGBPlane shiftPlane; + uint32 framecounter; + + ShiftConfig config; + + void doShift(RGBPlane& plane); + void doPresentation(RGBPlane& plane); + + +public: + ShiftEffect(); + virtual ~ShiftEffect(); + + void configure(ShiftConfig& config); + + virtual Effector& operator>>(RGBPlane& plane); + + virtual bool available(); + + virtual void accept(EffectorVisitor& visitor) const; + +}; + +#endif /* SHIFTEFFECT_H_ */ diff -Nru oggvideotools-0.8a/src/effector.cpp oggvideotools-0.9.1/src/effector.cpp --- oggvideotools-0.8a/src/effector.cpp 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/src/effector.cpp 1970-01-01 00:00:00.000000000 +0000 @@ -1,23 +0,0 @@ -// -// C++ Implementation: effector -// -// Description: -// -// -// Author: Yorn , (C) 2009 -// -// Copyright: See COPYING file that comes with this distribution -// -// -#include "effector.h" - -Effector::Effector() -{ -} - - -Effector::~Effector() -{ -} - - diff -Nru oggvideotools-0.8a/src/effector.h oggvideotools-0.9.1/src/effector.h --- oggvideotools-0.8a/src/effector.h 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/src/effector.h 1970-01-01 00:00:00.000000000 +0000 @@ -1,33 +0,0 @@ -// -// C++ Interface: effector -// -// Description: -// -// -// Author: Yorn , (C) 2009 -// -// Copyright: See COPYING file that comes with this distribution -// -// -#ifndef EFFECTOR_H -#define EFFECTOR_H - -#include "rgbPlane.h" -/** - @author Yorn -*/ -class Effector { - -public: - - Effector(); - - virtual ~Effector(); - - virtual Effector& operator>>(RGBPlane& plane) = 0; - - virtual bool available() = 0; - -}; - -#endif diff -Nru oggvideotools-0.8a/src/exception.h oggvideotools-0.9.1/src/exception.h --- oggvideotools-0.8a/src/exception.h 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/src/exception.h 2016-09-05 08:35:14.000000000 +0000 @@ -6,7 +6,7 @@ class OggException : public std::runtime_error { public: OggException(const std::string & msg) - : std::runtime_error(msg) {} + : std::runtime_error(msg) {} }; #endif diff -Nru oggvideotools-0.8a/src/fileRepository.cpp oggvideotools-0.9.1/src/fileRepository.cpp --- oggvideotools-0.8a/src/fileRepository.cpp 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/src/fileRepository.cpp 1970-01-01 00:00:00.000000000 +0000 @@ -1,118 +0,0 @@ -/* - * FileRepository is used to read or write a local file - * - * Copyright (C) 2008 Joern Seger - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - * - */ - -#include -#include -#include - -#include "rawMediaPacket.h" -#include "fileRepository.h" -#include "exception.h" -#include "log.h" - -FileRepository::FileRepository() - : MediaRepository(read, "FileRepository"), fileDescriptor(0), filename(""), bunchSize(4096), - eof(true) -{ - -} - -FileRepository::FileRepository(const std::string& _filename, MediaDirection_t type) - : MediaRepository(type, "FileRepository"), filename(_filename), bunchSize(4096), eof(false) -{ - eof = true; - if (mediaDirection == write) { - if ((fileDescriptor = fopen(filename.c_str(), "wb")) == 0) - logger.error() << name << "::open failed: " << strerror(errno) << "\n"; - else { - repositoryAvailable = true; - eof = false; - } - } else { - if ((fileDescriptor = fopen(filename.c_str(), "rb")) == 0) - logger.error() << name << "::open failed: " << strerror(errno) << "\n"; - else { - repositoryAvailable = true; - eof = false; - } - } -} - -FileRepository::~FileRepository() -{ -} - -void FileRepository::close() -{ - if (fileDescriptor) { - fclose(fileDescriptor); - fileDescriptor = 0; - } -} - -void FileRepository::setBunchSize(uint32 _bunchSize) -{ - bunchSize = _bunchSize; -} - -uint32 FileRepository::getBunchSize() -{ - return(bunchSize); -} - -bool FileRepository::isEndOfFile() -{ - return(eof); -} - -MediaUnit& FileRepository::operator<<(RawMediaPacket& packet) -{ - if ((mediaDirection == write) && (repositoryAvailable == true)) { - if (fwrite(packet.getData(),1,packet.size(),fileDescriptor) != packet.size()) { - throw OggException(name+"::operator<<: "+strerror(errno)); - } - } - - return(*this); -} - -MediaUnit& FileRepository::operator>>(RawMediaPacket& packet) -{ - uint32 readBytes; - unsigned char* buffer = new unsigned char[bunchSize]; - - if (mediaDirection == read) { - - if ((readBytes = fread(buffer,1,bunchSize,fileDescriptor)) < 0) { - logger.error() << name << "::operator>>: "<< strerror(errno) << "\n"; - return(*this); - } - - packet = RawMediaPacket(new RawMediaData(buffer, readBytes, false)); // do not create copy - - if (readBytes < bunchSize) { - repositoryAvailable = false; - eof = true; - } - } - - return (*this); -} diff -Nru oggvideotools-0.8a/src/fileRepository.h oggvideotools-0.9.1/src/fileRepository.h --- oggvideotools-0.8a/src/fileRepository.h 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/src/fileRepository.h 1970-01-01 00:00:00.000000000 +0000 @@ -1,55 +0,0 @@ -/* - * FileRepository is used to read or write a local file - * - * Copyright (C) 2008 Joern Seger - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - * - */ - -#ifndef FILEREPOSITORY_H_ -#define FILEREPOSITORY_H_ - -#include - -#include "definition.h" -#include "mediaRepository.h" -#include "rawMediaPacket.h" - -class FileRepository : public MediaRepository { - - FILE* fileDescriptor; - std::string filename; - uint32 bunchSize; - bool eof; - -public: - FileRepository(); - FileRepository(const std::string& filename, MediaDirection_t type); - virtual ~FileRepository(); - - virtual MediaUnit& operator<<(RawMediaPacket& packet); - virtual MediaUnit& operator>>(RawMediaPacket& packet); - - virtual void setBunchSize(uint32 bunchSize); - virtual uint32 getBunchSize(); - - virtual void close(); - - bool isEndOfFile(); - -}; - -#endif /*FILEREPOSITORY_H_*/ diff -Nru oggvideotools-0.8a/src/granulePosInterpreter.cpp oggvideotools-0.9.1/src/granulePosInterpreter.cpp --- oggvideotools-0.8a/src/granulePosInterpreter.cpp 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/src/granulePosInterpreter.cpp 1970-01-01 00:00:00.000000000 +0000 @@ -1,20 +0,0 @@ -#include "granulePosInterpreter.h" - -GranulePosInterpreter::GranulePosInterpreter() - : initialized(false), actualGranulePosition(0) -{ -} - -GranulePosInterpreter::~GranulePosInterpreter() -{ -} - -int64 GranulePosInterpreter::getPosition() -{ - return(actualGranulePosition); -} - -double GranulePosInterpreter::getActTime() -{ - return(getTime(actualGranulePosition)); -} diff -Nru oggvideotools-0.8a/src/granulePosInterpreter.h oggvideotools-0.9.1/src/granulePosInterpreter.h --- oggvideotools-0.8a/src/granulePosInterpreter.h 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/src/granulePosInterpreter.h 1970-01-01 00:00:00.000000000 +0000 @@ -1,83 +0,0 @@ -#ifndef GRANULEPOSINTERPRETER_H_ -#define GRANULEPOSINTERPRETER_H_ - -#include "oggPacket.h" -#include "streamParameter.h" - -//! Class to interprete the granule position of a oggPacket -/*! Every oggPacket carries a granule position within its header information. - * This granule position is a 64 Bit value and is interpreted quite different - * across the available ogg encoders/decoders. - * - * To be able to convert a 64 Bit number into a time position this interpreter - * needs some more information, which are given by the initialize() method. - * - * E.g. an vorbis interpretes the granule position as the audio samples. If - * an audio file has been sample with a rate of 16 kHz, the position 0 is the - * first sample at time 0 ms. The granule Position 1000 would be a time position - * of 62.5 ms. At a sample rate of 32 kHz this would be the time position 31.25 ms. - * So in this case we need to know the sample rate as a basis for the time calculation. - * - * These decoder specific information are given by the corresponding class object - * derived from the abstract StreamParameter. - * - * This class can interpret a given granule position and it is able to caclulate - * new positions by given ones (additions of two positions) -*/ -class GranulePosInterpreter { - -protected: - bool initialized; - - int64 actualGranulePosition; - -public: - GranulePosInterpreter(); - virtual ~GranulePosInterpreter(); - - //! method to initialize the interpreter - /*! The initialization is needed to be able to - * interpret the granule position. E.g. theora splits the - * 64 Bit into a lower and upper part for the last keyframe - * position and a counter for the p-frames. This split - * is depending on the header information in the first page. - */ - virtual void initialize(StreamParameter* parameter) = 0; - - //! method to interpret the time from a granule position - /*! This method interprets the given granule position by the - * information from the first page, with which the interpreter has - * been initialized. The time does not depend on the actual - * internal position counter. - * @param granulePos granuale position, that should be interpreted with the implicite information from the interpreter - * @return the time of the position given by the parameter*/ - virtual double getTime(int64 granulePos) = 0; - - //! Method to interprete the internal position to a time - /*! This method uses the actual internal position information - * to calculate the actual time. For the interpretation the method - * uses the information given by the first page. - * */ - double getActTime(); - - //! method to return the actual granule position - /*! @return returns the actual/calculated granule position - * */ - virtual int64 getPosition(); - - //! Method places the actual stream position into an oggPacket. - /*! @param packet OggPacket to replace the granule position field in the header - * */ - virtual void setStreamPosition(OggPacket& packet) = 0; - - //! Method to add a second position to this position - /*! @param position that should be added to the actual (implicite) position of this object */ -// virtual GranulePosInterpreter& operator+=(GranulePosInterpreter& position) = 0; - - //! Method to substract a second position from this position - /*! @param position that should be substracted from the actual (implicite) position of this object */ -// virtual GranulePosInterpreter& operator-=(GranulePosInterpreter& position) = 0; - -}; - -#endif /*GRANULEPOSINTERPRETER_H_*/ diff -Nru oggvideotools-0.8a/src/header.dat oggvideotools-0.9.1/src/header.dat --- oggvideotools-0.8a/src/header.dat 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/header.dat 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,51 @@ +SDLvideoOutput.h +audioPacket.h +crc.h +definition.h +fileRepository.h +granulePosInterpreter.h +jackAudioOutput.h +mediaConfig.h +mediaContainer.h +mediaControlPacket.h +mediaConverter.h +mediaDecoder.h +mediaEncoder.h +mediaOutputDecoder.h +mediaPacket.h +mediaRepository.h +mediaStream.h +mediaUnit.h +oggBOSExtractorFactory.h +oggConfig.h +oggDecoder.h +oggDecoderFactory.h +oggEncoder.h +oggHeader.h +oggPacket.h +oggPage.h +oggRingbuffer.h +oggStreamDecoder.h +oggStreamEncoder.h +oggTypes.h +rawMediaPacket.h +refObject.h +ringbuffer.h +streamConfig.h +streamExtractor.h +streamMux.h +streamParameter.h +streamSerializer.h +theoraConfig.h +theoraDecoder.h +theoraExtractor.h +theoraHeader.h +theoraPosInterpreter.h +theoraStreamParameter.h +theoraVideoPacket.h +videoInfo.h +vorbisDecoder.h +vorbisExtractor.h +vorbisHeader.h +vorbisPosInterpreter.h +vorbisStreamParameter.h diff -Nru oggvideotools-0.8a/src/helper.cpp oggvideotools-0.9.1/src/helper.cpp --- oggvideotools-0.8a/src/helper.cpp 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/src/helper.cpp 1970-01-01 00:00:00.000000000 +0000 @@ -1,22 +0,0 @@ -#include "helper.h" -#include -#include - -bool check_file_exists (std::string& filename) -{ - bool exists(false); - std::string answer; - std::ifstream fin; - - fin.open (filename.c_str()); - if (fin.fail()) - return(false); - fin.close(); - - std::cerr << "The file <"< exists, overwrite? "; - std::cin >> answer; - if (answer == "yes" || answer =="y" || answer == "Yes" || answer == "Y" ) - return(false); - - return(true); -} diff -Nru oggvideotools-0.8a/src/helper.h oggvideotools-0.9.1/src/helper.h --- oggvideotools-0.8a/src/helper.h 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/src/helper.h 1970-01-01 00:00:00.000000000 +0000 @@ -1,9 +0,0 @@ -#ifndef helper_h -#define helper_h - -#include - -//! returns true, if file exists and should not be overwritten -bool check_file_exists (std::string& filename); - -#endif diff -Nru oggvideotools-0.8a/src/hookHandler.cpp oggvideotools-0.9.1/src/hookHandler.cpp --- oggvideotools-0.8a/src/hookHandler.cpp 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/src/hookHandler.cpp 1970-01-01 00:00:00.000000000 +0000 @@ -1,70 +0,0 @@ -#include "exception.h" -#include "hookHandler.h" - -HookHandler::HookHandler(const bool _copy, const bool _keepComments) - : copyOnly(_copy), reencode(false), keepComments(_keepComments), inPacketCounter(0), outPacketCounter(0), outputDecoder(0), inputEncoder(0) -{ -} - -HookHandler::~HookHandler() -{ - delete outputDecoder; - delete inputEncoder; -} - -/* refactor StreamConfig to be const*/ -void HookHandler::setDecoderConfig(StreamConfig& config, - std::vector& commentList) -{ - if (!outputDecoder) - throw OggException("No decoder available to configure"); - - outputDecoder->clear(); - outputDecoder->initDecoder(config, commentList); - -} - -void HookHandler::setEncoderConfig(StreamConfig& config, - std::vector& commentList) -{ - if (!inputEncoder) - throw OggException("No encoder available to configure"); - - inputEncoder->configureEncoder(config, commentList); -} - -std::string HookHandler::decoderConfiguration() const -{ - return (outputDecoder->configuration()); -} - -std::string HookHandler::encoderConfiguration() const -{ - return (inputEncoder->configuration()); -} - -HookHandler& HookHandler::operator>>(OggPacket& packet) -{ - if (packetList.empty()) - throw OggException("VideoHook::operator>>: No packet available"); - - packet = packetList.front(); - packetList.pop_front(); - - return (*this); -} - -bool HookHandler::available() -{ - return (!packetList.empty()); -} - -OggType HookHandler::getType() const -{ - return (ogg_unknown); -} - -void HookHandler::resetEncoder() -{ - -} diff -Nru oggvideotools-0.8a/src/hookHandler.h oggvideotools-0.9.1/src/hookHandler.h --- oggvideotools-0.8a/src/hookHandler.h 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/src/hookHandler.h 1970-01-01 00:00:00.000000000 +0000 @@ -1,85 +0,0 @@ -#ifndef HOOKHANDLER_H_ -#define HOOKHANDLER_H_ - -#include -#include - -#include "mediaOutputDecoder.h" -#include "mediaInputEncoder.h" -#include "oggComment.h" - -class HookHandler { - -protected: - bool copyOnly; /* specifies, if resize is disallowed */ - bool reencode; - bool keepComments; - uint64 inPacketCounter; - uint64 outPacketCounter; - std::vector comments; - - MediaOutputDecoder* outputDecoder; - MediaInputEncoder* inputEncoder; - std::deque packetList; - - -public: - HookHandler(const bool copy=true, const bool keepComments=true); - virtual ~HookHandler(); - - virtual void setDecoderConfig(StreamConfig& config, - std::vector& commentList); - - virtual void setEncoderConfig(StreamConfig& config, - std::vector& commentList); - - virtual void resetEncoder(); - - void setCopyOnly(); - bool isCopyOnly(); - void resetCopyOnly(); - - void forceReencoding(); - void resetForceReencoding(); - - //! method to compare both configurations and to calculate the reencoding parameters - virtual void initAndConnect() = 0; - - virtual HookHandler& operator<<(OggPacket& packet) = 0; - virtual HookHandler& operator>>(OggPacket& packet); - - virtual OggType getType() const; - virtual bool available(); - - virtual void flush() = 0; - - virtual std::string decoderConfiguration() const; - virtual std::string encoderConfiguration() const; -}; - -inline void HookHandler::setCopyOnly() -{ - copyOnly = true; -} - -inline bool HookHandler::isCopyOnly() -{ - return(copyOnly); -} - -inline void HookHandler::resetCopyOnly() -{ - copyOnly = false; -} - -inline void HookHandler::forceReencoding() -{ - reencode = true; -} - -inline void HookHandler::resetForceReencoding() -{ - reencode = false; -} - -#endif /*HOOKHANDLER_H_*/ diff -Nru oggvideotools-0.8a/src/kateExtractor.cpp oggvideotools-0.9.1/src/kateExtractor.cpp --- oggvideotools-0.8a/src/kateExtractor.cpp 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/src/kateExtractor.cpp 1970-01-01 00:00:00.000000000 +0000 @@ -1,90 +0,0 @@ -#include -#include - -#include "kateExtractor.h" -#include "definition.h" -#include "oggTypes.h" -#include "oggHeader.h" -#include "kateHeader.h" -#include "kateStreamParameter.h" -#include "katePosInterpreter.h" -#include "log.h" - -KateExtractor::KateExtractor() -{ -} - -KateExtractor::~KateExtractor() -{ -} - -bool KateExtractor::_extract(uint8* data, ExtractorInformation& info) -{ - - StreamType* streaminfo = (StreamType*) (data); - KateHeader* kateHeader = (KateHeader*) (data + sizeof(StreamType)); - - /* if this is not a kate header, return with an error */ - if ((streaminfo->headerType != 0x80) || - (memcmp(streaminfo->typeName, "kate\0\0\0", 7) != 0)) { - // TODO: no size of the passed data, the above could overflow (on read) - logger.error() << "KatePosInterpreter::initialize: This page is not a kate bos\n"; - return(false); - } - - // first extract the parameters - KateStreamParameter* param = new KateStreamParameter; - - param->granulerateNum = (kateHeader->granulerateNumerator); - param->granulerateDenom = (kateHeader->granulerateDenominator); - param->granuleShift = kateHeader->granuleShift; - - param->language = std::string(kateHeader->language, 16); - param->category = std::string(kateHeader->category, 16); - - /* are there any old info stored, then delete them */ - if (info.parameter) - delete info.parameter; - - info.parameter = param; - - /* set the ogg type and the number of header packets */ - info.type = ogg_kate; - info.numOfHeaderPackets = kateHeader->numHeaders; - - return(true); -} - -bool KateExtractor::extract(OggPage& oggPage, ExtractorInformation& information) -{ - /* if this is not a Begin Of Stream page, return immediately */ - if (!oggPage.isBOS()) { - logger.error() << "KatePosInterpreter::extract: This page is not a BOS (Begin Of Stream) page\n"; - return(false); - } - - /* get the information starting points within the raw data */ - OggHeader* oggHeader = (OggHeader*) (oggPage.data()); - uint8* data = (oggPage.data() + sizeof(OggHeader) + oggHeader->tableSegments); - - if (_extract(data, information) == false) - return(false); - - information.serialNo = oggHeader->serial; - - return(true); -} - -bool KateExtractor::extract(OggPacket& packet, ExtractorInformation& information) -{ - // if this is not a Begin Of Stream page, return immediately - if (!packet.isBOS()) { - logger.error() << "TheoraPosInterpreter::extract: This packet is not a BOS (Begin Of Stream) page\n"; - return(false); - } - - if (_extract(packet.data(), information) == false) - return(false); - - return(true); -} diff -Nru oggvideotools-0.8a/src/kateExtractor.h oggvideotools-0.9.1/src/kateExtractor.h --- oggvideotools-0.8a/src/kateExtractor.h 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/src/kateExtractor.h 1970-01-01 00:00:00.000000000 +0000 @@ -1,18 +0,0 @@ -#ifndef KATEEXTRACTOR_H_ -#define KATEEXTRACTOR_H_ - -#include "streamExtractor.h" - -class KateExtractor : public StreamExtractor { -public: - KateExtractor(); - virtual ~KateExtractor(); - - bool _extract(uint8* data, ExtractorInformation& information); - - virtual bool extract(OggPage& page, ExtractorInformation& information); - virtual bool extract(OggPacket& packet, ExtractorInformation& information); - -}; - -#endif /*KATEEXTRACTOR_H_*/ diff -Nru oggvideotools-0.8a/src/kateHeader.h oggvideotools-0.9.1/src/kateHeader.h --- oggvideotools-0.8a/src/kateHeader.h 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/src/kateHeader.h 1970-01-01 00:00:00.000000000 +0000 @@ -1,26 +0,0 @@ -#ifndef KATEHEADER_H_ -#define KATEHEADER_H_ - -struct KateHeader { - uint8 magic0; - uint8 reserved0; - uint8 versionMajor; - uint8 versionMinor; - uint8 numHeaders; - uint8 textEncoding; - uint8 textDirectionality; - uint8 reserved1; - uint8 granuleShift; - uint16 canvasWidthShift:4; - uint16 canvasWidthBase:12; - uint16 canvasHeightShift:4; - uint16 canvasHeightBase:12; - uint32 reserved2; - uint32 granulerateNumerator; - uint32 granulerateDenominator; - char language[16]; - char category[16]; -} __attribute__ ((packed)); - - -#endif /*KATEHEADER_H_*/ diff -Nru oggvideotools-0.8a/src/katePosInterpreter.cpp oggvideotools-0.9.1/src/katePosInterpreter.cpp --- oggvideotools-0.8a/src/katePosInterpreter.cpp 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/src/katePosInterpreter.cpp 1970-01-01 00:00:00.000000000 +0000 @@ -1,145 +0,0 @@ -#include "katePosInterpreter.h" -#include "kateStreamParameter.h" -#include "log.h" - -#include -#include - - -KatePosInterpreter::KatePosInterpreter() - : granuleShift(0), granulerateNumerator(1), granulerateDenominator(1) -{ -} - -KatePosInterpreter::~KatePosInterpreter() -{ -} - -uint32 KatePosInterpreter::getGranulerateNumerator() -{ - return(granulerateNumerator); -} - -uint32 KatePosInterpreter::getGranulerateDenominator() -{ - return(granulerateDenominator); -} - -uint8 KatePosInterpreter::getGranuleShift() -{ - return(granuleShift); -} - -void KatePosInterpreter::extractFramePos(int64 granulePosition, int64& base, int64& offset) -{ - - base = granulePosition>>granuleShift; - - uint64 mask(1); - mask <<= granuleShift; - mask -= 1; - offset = (granulePosition&mask); -} - -void KatePosInterpreter::initialize(StreamParameter* _param) -{ - KateStreamParameter* param = dynamic_cast(_param); - - if (!param) { - logger.error() << "KatePosInterpreter::initialize: parameter not set correctly\n"; - return; - } - - granuleShift = param->granuleShift; - granulerateNumerator = param->granulerateNum; - granulerateDenominator = param->granulerateDenom; - - initialized = true; - return; -} - -double KatePosInterpreter::getTime(int64 granulePos) -{ - if (!initialized) { - logger.error() << "KatePosInterpreter::initialize: The position interpreter is not initialized yet\n"; - return(-2); - } - - if (granulePos == -1) - return(-1); - - int64 base; - int64 offset; - - extractFramePos(granulePos, base, offset); - - double time = (granulerateDenominator*1.0/granulerateNumerator*1.0)*(base+offset); - - return(time); -} - -#if 0 -KatePosInterpreter& KatePosInterpreter::operator++() -{ - actualGranulePosition+=1; - return(*this); -} -#endif - -#if 0 -GranulePosInterpreter& TheoraPosInterpreter::operator+=(GranulePosInterpreter& _otherPosition) -{ - if (typeid(_otherPosition) != typeid(*this)) { - logger.error() << "GranulePosInterpreter::operator+=: type is not matching\n"; - return(*this); - } - - TheoraPosInterpreter* otherPosition = static_cast(&_otherPosition); - - if ((keyframeShift != otherPosition->keyframeShift) || - (framerateNumerator != otherPosition->framerateNumerator) || - (framerateDenominator != otherPosition->framerateDenominator)) { - logger.error() << "GranulePosInterpreter::operator+=: granulePositions does not match in shift value or framerate\n"; - return(*this); - } - - if ((actualGranulePosition < 0) || (otherPosition->actualGranulePosition < 0)) { - logger.error() << "GranulePosInterpreter::operator+=: one or both granulePositions are not valid\n"; - return(*this); - } - - int64 ownPos1; - int32 ownPos2; - - extractFramePos(actualGranulePosition, ownPos1, ownPos2); - - int64 otherPos1; - int32 otherPos2; - - extractFramePos(otherPosition->actualGranulePosition, otherPos1, otherPos2); - - ownPos1 += (otherPos1 + otherPos2); - - actualGranulePosition = ((ownPos1<= 0) { - actualGranulePosition = packet.granulepos(); - packet.setGranulepos(actualGranulePosition); - } -} - - -GranulePosInterpreter& KatePosInterpreter::operator-=(GranulePosInterpreter& position) -{ - logger.error() << "GranulePosInterpreter& operator-=: not implemented\n"; - - return(*this); -} - diff -Nru oggvideotools-0.8a/src/katePosInterpreter.h oggvideotools-0.9.1/src/katePosInterpreter.h --- oggvideotools-0.8a/src/katePosInterpreter.h 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/src/katePosInterpreter.h 1970-01-01 00:00:00.000000000 +0000 @@ -1,35 +0,0 @@ -#ifndef KATEPOSINTERPRETER_H_ -#define KATEPOSINTERPRETER_H_ - -#include "definition.h" -#include "granulePosInterpreter.h" - -class KatePosInterpreter : public GranulePosInterpreter { - -protected: - uint8 granuleShift; - uint32 granulerateNumerator; - uint32 granulerateDenominator; - - void extractFramePos(int64 granulePosition, int64& base, int64& offset); - -public: - KatePosInterpreter(); - virtual ~KatePosInterpreter(); - - uint32 getGranulerateNumerator(); - uint32 getGranulerateDenominator(); - uint8 getGranuleShift(); - - virtual void initialize(StreamParameter* parameter); - virtual double getTime(int64 granulePos); - - //KatePosInterpreter& operator++(); - - virtual void setStreamPosition(OggPacket& packet); - //virtual GranulePosInterpreter& operator+=(GranulePosInterpreter& position); - virtual GranulePosInterpreter& operator-=(GranulePosInterpreter& position); - -}; - -#endif /*KATEPOSINTERPRETER_H_*/ diff -Nru oggvideotools-0.8a/src/kateStreamParameter.cpp oggvideotools-0.9.1/src/kateStreamParameter.cpp --- oggvideotools-0.8a/src/kateStreamParameter.cpp 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/src/kateStreamParameter.cpp 1970-01-01 00:00:00.000000000 +0000 @@ -1,80 +0,0 @@ -#include -#include - -#include "kateStreamParameter.h" -#include "log.h" - -KateStreamParameter::KateStreamParameter() -{ -} - -KateStreamParameter::~KateStreamParameter() -{ -} - -bool KateStreamParameter::operator==(const StreamParameter& _param) -{ - StreamParameter* _param_unconst = const_cast(&_param); - KateStreamParameter* param = dynamic_cast(_param_unconst); - - if (!param) - return(false); - - if (granuleShift != param->granuleShift) { - logger.error() << "kate parameter compare: the granule shift is not matching\n"; - return(false); - } - - if ((granulerateNum != param->granulerateNum) || - (granulerateDenom != param->granulerateDenom)) { - logger.error() << "kate parameter compare: granulerate does not match: " - << granulerateNum << "/" << param->granulerateDenom - << " != " << param->granulerateNum << "/" << param->granulerateDenom - << std::endl; - return(false); - } - - if (language != param->language) { - logger.error() << "kate parameter compare: language does not match: " - << language << param->language - << std::endl; - return(false); - } - - if (category != param->category) { - logger.error() << "kate parameter compare: category does not match: " - << category << param->category - << std::endl; - return(false); - } - - return(true); -} - -std::string KateStreamParameter::toString() -{ - std::stringstream stream; - - stream << std::endl; - stream << "Language : " << language << "\n"; - stream << "Category : " << category << "\n"; - stream << "Granulerate : " << granulerateNum/granulerateDenom << "\n"; - - stream << std::endl; - - return(stream.str()); - -} - -StreamParameter* KateStreamParameter::clone() -{ - // create a clone - KateStreamParameter* streamParameter = new KateStreamParameter(); - - // copy the original data to the clone - (*streamParameter) = (*this); - - // return the clone - return(streamParameter); - -} diff -Nru oggvideotools-0.8a/src/kateStreamParameter.h oggvideotools-0.9.1/src/kateStreamParameter.h --- oggvideotools-0.8a/src/kateStreamParameter.h 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/src/kateStreamParameter.h 1970-01-01 00:00:00.000000000 +0000 @@ -1,27 +0,0 @@ -#ifndef KATESTREAMPARAMETER_H_ -#define KATESTREAMPARAMETER_H_ - -#include "definition.h" -#include "streamParameter.h" - -class KateStreamParameter : public StreamParameter { -public: - - uint32 granulerateNum; - uint32 granulerateDenom; - std::string language; - std::string category; - - uint8 granuleShift; - - KateStreamParameter(); - virtual ~KateStreamParameter(); - - virtual bool operator==(const StreamParameter& param); - - virtual std::string toString(); - - virtual StreamParameter* clone(); -}; - -#endif /*KATESTREAMPARAMETER_H_*/ diff -Nru oggvideotools-0.8a/src/kenburnseffect.cpp oggvideotools-0.9.1/src/kenburnseffect.cpp --- oggvideotools-0.8a/src/kenburnseffect.cpp 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/src/kenburnseffect.cpp 1970-01-01 00:00:00.000000000 +0000 @@ -1,347 +0,0 @@ -// -// C++ Implementation: kenburnseffect -// -// Description: -// -// -// Author: Yorn , (C) 2009 -// -// Copyright: See COPYING file that comes with this distribution -// -// -#include "kenburnseffect.h" - -#include -#include -#include -#include - -#include "pictureResize.h" -#include "pictureBlend.h" -#include "log.h" - -KenBurnsEffect::KenBurnsEffect() : - Effector(), state(unconfigured) -{ -} - -KenBurnsEffect::~KenBurnsEffect() -{ -} - -void KenBurnsEffect::configure(KenBurnsEffect::KenBurnsConfig& _config) -{ - - config = _config; - - stepX = ((config.endpointX - config.startpointX) * 1.0) - / (config.sequenceLength * 1.0); - stepY = ((config.endpointY - config.startpointY) * 1.0) - / (config.sequenceLength * 1.0); - stepZoom = ((config.zoomEnd - config.zoomStart) * 1.0) - / (config.sequenceLength * 1.0); - - actX = config.startpointX; - actY = config.startpointY; - actZoom = config.zoomStart; - - blackPlane = RGBPlane(config.outputWidth, config.outputHeight); - presentationPlane = config.origPlane; - - /* blank the plane */ - uint32 planesize = config.outputWidth * config.outputHeight * 4; // 3 Colors + Alpha channel - memset(blackPlane->plane, 0x00, planesize); - - frameCounter = 0; - - if (config.first) - state = presentation; - else - state = blindIn; - -} - -void KenBurnsEffect::doBlindIn(RGBPlane& plane) -{ - - logger.debug() << " --- Position " << actX <<" x "<< actY <<" "<<( 1.0/actZoom); - - // get the picture to be fade in - plane = PictureResize::subframe(presentationPlane, config.outputWidth, - config.outputHeight, actX, actY, 1.0 / actZoom); - - // calculate the next fader picture - plane = PictureBlend::crossfade(blackPlane, plane, (frameCounter * 1.0) - / (config.blindLength * 1.0)); - - // let the fading go on - actX += stepX; - actY += stepY; - actZoom += stepZoom; - - frameCounter++; - if (frameCounter > config.blindLength) { - state = presentation; - } -} - -void KenBurnsEffect::doPresentation(RGBPlane& plane) -{ - logger.debug() << " --- Position " << actX <<" x "<< actY <<" "<<( 1.0/actZoom); - - // get the picture to be fade in - plane = PictureResize::subframe(presentationPlane, config.outputWidth, - config.outputHeight, actX, actY, 1.0 / actZoom); - - // let the fading go on - actX += stepX; - actY += stepY; - actZoom += stepZoom; - - frameCounter++; - if (frameCounter > (config.sequenceLength - config.blindLength)) { - if (!config.last) { - state = blindOut; - } else { - if (frameCounter >= config.sequenceLength) { - state = unavailable; - } - } - } - -} - -void KenBurnsEffect::doBlindOut(RGBPlane & plane) -{ -#ifdef DEBUG - logger.debug() << " --- Position " << actX <<" x "<< actY <<" "<<( 1.0/actZoom); -#endif - // get the picture to be fade in - plane = PictureResize::subframe(presentationPlane, config.outputWidth, - config.outputHeight, actX, actY, 1.0 / actZoom); - - // calculate the next fader picture - plane = PictureBlend::crossfade(blackPlane, plane, ((config.sequenceLength - - frameCounter) * 1.0) / (config.blindLength * 1.0)); - - // let the fading go on - actX += stepX; - actY += stepY; - actZoom += stepZoom; - - frameCounter++; - if (frameCounter >= config.sequenceLength) { - state = unavailable; - } - -} - -bool KenBurnsEffect::available() -{ - return ((state != unavailable) && (state != unconfigured)); -} - -Effector & KenBurnsEffect::operator >>(RGBPlane & plane) -{ - switch (state) { - - case blindIn: { - doBlindIn(plane); - break; - } - - case blindOut: { - doBlindOut(plane); - break; - } - - case presentation: { - doPresentation(plane); - break; - } - - default: { - logger.error() << "KenBurnsEffect: no frame available\n"; - break; - } - } - return(*this); -} - -KenBurnsEffect::KenBurnsConfig KenBurnsEffect::createKBconfigRandom( - RGBPlane& plane, uint32 pictureWidth, uint32 pictureHeight, - uint32 frameWidth, uint32 frameHeight, uint32 sequenceLength, - uint32 blindLength) -{ - - KenBurnsConfig config; - - config.origPlane = plane; - config.outputWidth = frameWidth; - config.outputHeight = frameHeight; - config.sequenceLength = sequenceLength; - config.blindLength = blindLength; - - float maxZoomfactor; - if ((pictureWidth * 1.0) / (frameWidth * 1.0) * (frameHeight * 1.0) - < (pictureHeight * 1.0)) - maxZoomfactor = (pictureWidth * 1.0) / (frameWidth * 1.0); - else - maxZoomfactor = (pictureHeight * 1.0) / (frameHeight * 1.0); - - config.zoomStart = maxZoomfactor * 0.75 + rand() * (maxZoomfactor * 0.25) - / (RAND_MAX * 1.0); - config.zoomEnd = maxZoomfactor * 0.75 + rand() * (maxZoomfactor * 0.25) - / (RAND_MAX * 1.0); - -#ifdef DEBUG - logger.debug() << "Zooming ("< not available\n"; - exit(-1); - } - } - } - -#ifdef DEBUG - logger.error()<< "Zooming (" << maxZoomfactor << ") from factor " - << config.zoomStart << " to " << config.zoomEnd << std::endl; -#endif - - float availableXStart = pictureWidth - frameWidth * config.zoomStart; - float availableYStart = pictureHeight - frameHeight * config.zoomStart; - - float availableXEnd = pictureWidth - frameWidth * config.zoomEnd; - float availableYEnd = pictureHeight - frameHeight * config.zoomEnd; - - if ((availableXStart < 0) || (availableYStart < 0) || (availableXEnd < 0) - || (availableYEnd < 0)) { - logger.error() << "KenBurnsSequence: picture to small\n"; - // was machen bei einem Fehler? - } - - float availLengthSqr(powf((availableXStart - availableXEnd), 2.0) + powf( - (availableYStart - availableYEnd), 2.0)); - float lengthSqr; - - // do { - - switch (predefine) { - case 1: { - config.startpointX = 0; - config.startpointY = 0; - - config.endpointX = availableXEnd; - config.endpointY = availableYEnd; - break; - } - case 2: { - config.startpointX = availableXStart; - config.startpointY = 0; - - config.endpointX = 0; - config.endpointY = availableYEnd; - break; - } - case 3: { - config.startpointX = availableXStart; - config.startpointY = availableYStart; - - config.endpointX = 0; - config.endpointY = 0; - break; - } - case 4: { - config.startpointX = 0; - config.startpointY = availableYStart; - - config.endpointX = availableXEnd; - config.endpointY = 0; - break; - } - } - - // calculate walklength - float lengthX = fabs(config.startpointX - config.endpointX); - float lengthY = fabs(config.startpointY - config.endpointY); - - lengthSqr = powf(lengthX, 2.0) + powf(lengthY, 2.0); - - // } while (false); //lengthSqr < availLengthSqr/4.0); - - return (config); -} diff -Nru oggvideotools-0.8a/src/kenburnseffect.h oggvideotools-0.9.1/src/kenburnseffect.h --- oggvideotools-0.8a/src/kenburnseffect.h 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/src/kenburnseffect.h 1970-01-01 00:00:00.000000000 +0000 @@ -1,86 +0,0 @@ -// -// C++ Interface: kenburnseffect -// -// Description: -// -// -// Author: Yorn , (C) 2009 -// -// Copyright: See COPYING file that comes with this distribution -// -// -#ifndef KENBURNSEFFECT_H -#define KENBURNSEFFECT_H - -#include "effector.h" - -/** - @author Yorn -*/ -class KenBurnsEffect : public Effector { - -public: - class KenBurnsConfig { - public: - bool first; - bool last; - - uint32 sequenceLength; /* in frames */ - uint32 blindLength; /* in frames */ - - uint32 outputWidth; - uint32 outputHeight; - - float startpointX; - float startpointY; - float endpointX; - float endpointY; - float zoomStart; - float zoomEnd; - - RGBPlane origPlane; - }; - -protected: - enum State { - unconfigured, - blindIn, - presentation, - blindOut, - unavailable - }; - - KenBurnsConfig config; - uint32 frameCounter; - - State state; - - RGBPlane blackPlane; - RGBPlane presentationPlane; - - float stepX; - float stepY; - float stepZoom; - - float actX; - float actY; - float actZoom; - - void doBlindIn(RGBPlane& plane); - void doPresentation(RGBPlane& plane); - void doBlindOut(RGBPlane& plane); - -public: - KenBurnsEffect(); - ~KenBurnsEffect(); - - void configure(KenBurnsConfig& config); - - virtual Effector& operator>>(RGBPlane& plane); - virtual bool available(); - - static KenBurnsConfig createKBconfigRandom(RGBPlane& plane, uint32 pictureWidth, uint32 pictureHeight, uint32 frameWidth, uint32 frameHeight, uint32 sequenceLength, uint32 blindLength); - static KenBurnsConfig createKBconfigPredefine(RGBPlane& plane, uint32 pictureWidth, uint32 pictureHeight, uint32 frameWidth, uint32 frameHeight, uint32 sequenceLength, uint32 blindLength, uint32 predefine); -}; - -#endif diff -Nru oggvideotools-0.8a/src/libresample/CMakeLists.txt oggvideotools-0.9.1/src/libresample/CMakeLists.txt --- oggvideotools-0.8a/src/libresample/CMakeLists.txt 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/libresample/CMakeLists.txt 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,8 @@ +SET ( LIBRARY_RESAMPLE_SRC + filterkit.c + resample.c + resamplesubs.c + ) + +ADD_LIBRARY ( resample ${LIBRARY_RESAMPLE_SRC} ) + diff -Nru oggvideotools-0.8a/src/libresample/libresample.h oggvideotools-0.9.1/src/libresample/libresample.h --- oggvideotools-0.8a/src/libresample/libresample.h 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/src/libresample/libresample.h 2016-09-05 08:35:14.000000000 +0000 @@ -18,24 +18,24 @@ extern "C" { #endif /* __cplusplus */ - void *resample_open(int highQuality, - double minFactor, - double maxFactor); - - void *resample_dup(const void *handle); - - int resample_get_filter_width(const void *handle); - - int resample_process(void *handle, - double factor, - float *inBuffer, - int inBufferLen, - int lastFlag, - int *inBufferUsed, - float *outBuffer, - int outBufferLen); +void *resample_open(int highQuality, + double minFactor, + double maxFactor); + +void *resample_dup(const void *handle); + +int resample_get_filter_width(const void *handle); + +int resample_process(void *handle, + double factor, + float *inBuffer, + int inBufferLen, + int lastFlag, + int *inBufferUsed, + float *outBuffer, + int outBufferLen); - void resample_close(void *handle); +void resample_close(void *handle); #ifdef __cplusplus } /* extern "C" */ diff -Nru oggvideotools-0.8a/src/log.cpp oggvideotools-0.9.1/src/log.cpp --- oggvideotools-0.8a/src/log.cpp 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/src/log.cpp 1970-01-01 00:00:00.000000000 +0000 @@ -1,44 +0,0 @@ -#include "log.h" -#include - -OggLog logger; - -void OggLog::setLevel(Severity newLevel) -{ - currentLevel = newLevel; -} - -OggLog::Severity OggLog::getLevel() const -{ - return currentLevel; -} - -std::ostream & OggLog::error() const -{ - return getStream(LOG_ERROR); -} - -std::ostream & OggLog::warning() const -{ - return getStream(LOG_WARNING); -} - -std::ostream & OggLog::info() const -{ - return getStream(LOG_INFO); -} - -std::ostream & OggLog::debug() const -{ - return getStream(LOG_DEBUG); -} - -std::ostream & OggLog::getStream(Severity severity) const -{ - if (severity >= currentLevel) { - return std::cerr; - } else { - return (std::ostream&)fakeStream; - } -} - diff -Nru oggvideotools-0.8a/src/log.h oggvideotools-0.9.1/src/log.h --- oggvideotools-0.8a/src/log.h 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/src/log.h 1970-01-01 00:00:00.000000000 +0000 @@ -1,48 +0,0 @@ -#ifndef LOG_H -#define LOG_H - -#include - -class FakeStreambuf : public std::streambuf { -public: - FakeStreambuf() {} -}; - -class FakeStream : public std::ostream { -public: - FakeStreambuf buf; - - FakeStream() - : std::ostream(&buf) {} -}; - -class OggLog { -public: - enum Severity { - LOG_DEBUG, - LOG_INFO, - LOG_WARNING, - LOG_ERROR - }; - - OggLog() - : currentLevel(LOG_INFO) {} - - void setLevel(Severity newLevel); - Severity getLevel() const; - - std::ostream & error() const; - std::ostream & warning() const; - std::ostream & info() const; - std::ostream & debug() const; - - std::ostream & getStream(Severity severity) const; -protected: - Severity currentLevel; - FakeStream fakeStream; -}; - -// Global instance -extern OggLog logger; - -#endif diff -Nru oggvideotools-0.8a/src/lowpassEffect.cpp oggvideotools-0.9.1/src/lowpassEffect.cpp --- oggvideotools-0.8a/src/lowpassEffect.cpp 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/src/lowpassEffect.cpp 1970-01-01 00:00:00.000000000 +0000 @@ -1,131 +0,0 @@ -// -// C++ Implementation: lowpassEffect -// -// Description: -// -// -// Author: Yorn , (C) 2009 -// -// Copyright: See COPYING file that comes with this distribution -// -// -#include "lowpassEffect.h" - -#include -#include - -#include "pictureResize.h" -#include "log.h" - -LowpassEffect::LowpassEffect() - : state(unconfigured) -{ -} - - -LowpassEffect::~LowpassEffect() -{ -} - -void LowpassEffect::configure(LowPassPictureConfig & _config) -{ - - config = _config; - framecounter = 0; - - factor = 0.5; - - presentationPlane = PictureResize::reframe(config.origPlane, config.outputWidth, config.outputHeight); - - if (config.first) - state = presentation; - else - state = blindIn; -} - -Effector & LowpassEffect::operator >>(RGBPlane & plane) -{ - switch (state) { - - case blindIn: { - doBlindIn(plane); - break; - } - - case blindOut: { - doBlindOut(plane); - break; - } - - case presentation: { - doPresentation(plane); - break; - } - - default: { - logger.error() << "LowpassEffect: no frame available\n"; - break; - } - } - - -} - -void LowpassEffect::doBlindIn(RGBPlane & plane) -{ - uint32 n = (config.blindLength - framecounter); - - float filterValue = n*1.0/(config.blindLength*1.0);//1.0/(2.0+(n*1.0/(config.blindLength*1.0)*100.0)); //powf(factor,n); -// logger.debug() << " -- blindin - fr "<< framecounter <<" fa "< config.blindLength) { - state = presentation; - } - -} - -void LowpassEffect::doPresentation(RGBPlane & plane) -{ - - plane = presentationPlane; //.reframe(config.outputWidth, config.outputHeight); - - framecounter++; - if (framecounter > (config.sequenceLength - config.blindLength)) { - if (!config.last) { - state = blindOut; - } else { - if (framecounter >= config.sequenceLength) { - state = unavailable; - } - } - - } - -} - -void LowpassEffect::doBlindOut(RGBPlane & plane) -{ - uint32 n = (framecounter - (config.sequenceLength - config.blindLength)); - - float filterValue = n*1.0/(config.blindLength*1.0);//1.0/(2.0+(n*1.0/(config.blindLength*1.0)*100.0)); //powf(factor,n); - - logger.debug() << " -- blindout - fr "<< framecounter <<" fa "<= config.sequenceLength) { - state = unavailable; - } - -} - -bool LowpassEffect::available() -{ - return((state != unavailable) && (state != unconfigured)); -} - - diff -Nru oggvideotools-0.8a/src/lowpassEffect.h oggvideotools-0.9.1/src/lowpassEffect.h --- oggvideotools-0.8a/src/lowpassEffect.h 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/src/lowpassEffect.h 1970-01-01 00:00:00.000000000 +0000 @@ -1,72 +0,0 @@ -// -// C++ Interface: lowpassEffect -// -// Description: -// -// -// Author: Yorn , (C) 2009 -// -// Copyright: See COPYING file that comes with this distribution -// -// -#ifndef LOWPASSEFFECT_H -#define LOWPASSEFFECT_H - -#include "effector.h" - -/** - @author Yorn -*/ -class LowpassEffect : public Effector { - -public: - class LowPassPictureConfig { - public: - - bool first; - bool last; - - uint32 sequenceLength; /* in frames */ - uint32 blindLength; /* in frames */ - - uint32 outputWidth; - uint32 outputHeight; - - RGBPlane origPlane; - }; - -protected: - - enum State { - unconfigured, - blindIn, - presentation, - blindOut, - unavailable - }; - - State state; - RGBPlane presentationPlane; - uint32 framecounter; - float factor; - - LowPassPictureConfig config; - - void doBlindIn(RGBPlane& plane); - void doBlindOut(RGBPlane& plane); - void doPresentation(RGBPlane& plane); - -public: - LowpassEffect(); - virtual ~LowpassEffect(); - - void configure(LowPassPictureConfig& config); - - virtual Effector& operator>>(RGBPlane& plane); - - virtual bool available(); - -}; - - -#endif diff -Nru oggvideotools-0.8a/src/main/audioConverter.cpp oggvideotools-0.9.1/src/main/audioConverter.cpp --- oggvideotools-0.8a/src/main/audioConverter.cpp 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/main/audioConverter.cpp 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,142 @@ +#include "audioConverter.h" + +#include +#include + +#include "libresample/libresample.h" +#include "log.h" + +AudioConverter::AudioConverter() + : channelData(0), tmp(0), handle(0), used(0), ratio(0), channels(0) +{ +} + +AudioConverter::~AudioConverter() +{ +} + +void AudioConverter::initResample(uint8 _channels, double _ratio) +{ + + ratio = _ratio; + channels = _channels; + + handle = (void **) new char[channels * sizeof(void *)]; + + channelData = new float*[channels]; + tmp = new float*[channels]; + + for (uint8 c=0; c we want stereo and have mono + if ((channels == 2) && (packet->getChannels() == 1)) { + + for (uint32 pos(0); pos < packet->getLength(); ++pos) + channelData[0][used+pos] = packet->getDataOfChannel(0)[pos]; + + for (uint32 pos(0); pos < packet->getLength(); ++pos) + channelData[1][used+pos] = packet->getDataOfChannel(0)[pos]; + + } + + // downmix -> we want mono and have stereo + if ((channels == 1) && (packet->getChannels() == 2)) { + + for (uint32 pos(0); pos < packet->getLength(); ++pos) { + channelData[0][used+pos] = packet->getDataOfChannel(0)[pos]*0.5 + + packet->getDataOfChannel(1)[pos]*0.5; + + if (channelData[0][used+pos]> 1.0) + channelData[0][used+pos] = 1.0; + } + } + + // plane copy + if (channels == packet->getChannels()) { + + for (uint32 c(0); c < channels; ++c) + for (uint32 pos(0); pos < packet->getLength(); ++pos) + channelData[c][used+pos] = packet->getDataOfChannel(c)[pos]; + + } + + if (ratio == 1.0) { + length = packet->getLength(); + AudioPacketInternal* newInternalPacket = new AudioPacketInternal(channels, length); + + for (uint32 i(0); isetDataOfChannel(i,channelData[i]); + } + + resampled = AudioPacket(newInternalPacket); + return(true); + } + + + uint32 availableSamples = used+packet->getLength(); + int32 inUsed=0; + + // do resampling + for (uint32 i(0); isetDataOfChannel(i,tmp[i]); + } + + resampled = AudioPacket(newInternalPacket); + + // save data + used = availableSamples-inUsed; + for (uint32 i(0); i < used; ++i) { + for (uint32 ch(0); ch 0); + } + + return(true); +} + +bool AudioConverter::resampleflush(AudioPacket & resampled) +{ + + if (used==0) + return(false); + + logger.error() << "AudioConverter::resampleflush: not implemented "< +#include "exception.h" + +#include "vorbisEncoder.h" +#include "vorbisDecoder.h" +#include "log.h" + +AudioHook::AudioHook() +{} + +AudioHook::AudioHook(uint8 outStreamID, const bool copy, const bool keepComments) + : HookHandler(copy, keepComments), changeAudioSamplerate(false), changeChannel(false) +{ +// logger.debug() << "Vorbis Encoder stream No "<<(int)outStreamID<(*outputDecoder.get()); + VorbisEncoder& encoder = static_cast(*inputEncoder.get()); + + copy = true; + + if (!copyOnly) + copy = decoder.getInfo() == encoder.getInfo(); + + if (!copy) { + if (decoder.getInfo().channels != encoder.getInfo().channels) + changeChannel = true; + + if (decoder.getInfo().rate != encoder.getInfo().rate) + changeAudioSamplerate = true; + + } + + converter.closeResample(); + + converter.initResample(encoder.getInfo().channels, + (encoder.getInfo().rate * 1.0 ) + / (decoder.getInfo().rate * 1.0 )); + +} + +static uint64 cnt(0); + +HookHandler& AudioHook::operator<<(OggPacket& packet) +{ + if (!outputDecoder) + throw OggException("AudioHook::callHook: no outputDecoder given"); + + if (!inputEncoder) + throw OggException("AudioHook::callHook: no inputEncoder given"); + + VorbisDecoder& decoder = static_cast(*outputDecoder); + VorbisEncoder& encoder = static_cast(*inputEncoder); + + if (copy) { + packet->setStreamNo(encoder.getStreamNo()); + packetList.push_back(packet); + } else { + // relevant packet + try { + decoder << packet; + while ( decoder.isAvailable() ) { + decoder >> audioPacket; + + if ( changeAudioSamplerate || changeChannel ) { + AudioPacket tmp; + + if ( converter.resample ( audioPacket,tmp ) ) { + encoder << tmp; + + } + } else { + encoder << audioPacket; + } + while ( encoder.isAvailable() ) { + OggPacket pckt; + encoder >> pckt; + + packetList.push_back(pckt); + } +// 16868466 + } + + } catch ( std::exception error ) { + logger.error() << "Exception: " << error.what(); + } + } +} + +void AudioHook::flush() +{ + if (!outputDecoder) + throw OggException("AudioHook::callHook: no outputDecoder given"); + + if (!inputEncoder) + throw OggException("AudioHook::callHook: no inputEncoder given"); + + VorbisDecoder& decoder = static_cast(*outputDecoder); + VorbisEncoder& encoder = static_cast(*inputEncoder); + + /* write resampled data, if there is some */ + if (converter.resampleflush(audioPacket)) { + + if ( audioPacket->getLength() > 0 ) + encoder << audioPacket; + } + + encoder.flush(); + + while ( encoder.isAvailable() ) { + + OggPacket pckt; + encoder >> pckt; + + packetList.push_back(pckt); + + } + +} + +OggType AudioHook::getType() const +{ + return(OggType::vorbis); +} + +static bool operator==(const vorbis_info& info1, const vorbis_info& info2) +{ + return ((info1.bitrate_lower == info2.bitrate_lower) && + (info1.bitrate_nominal == info2.bitrate_nominal) && + (info1.bitrate_upper == info2.bitrate_upper) && + (info1.bitrate_window == info2.bitrate_window) && + (info1.channels == info2.channels) && + (info1.rate == info2.rate) + ); +} + +static bool operator!=(const vorbis_info& info1, const vorbis_info& info2) +{ + return(!(info1==info2)); +} diff -Nru oggvideotools-0.8a/src/main/audioHook.h oggvideotools-0.9.1/src/main/audioHook.h --- oggvideotools-0.8a/src/main/audioHook.h 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/main/audioHook.h 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,40 @@ +#ifndef AUDIOHOOK_H_ +#define AUDIOHOOK_H_ + +#include "hookHandler.h" +#include "audioConverter.h" +#include "audioPacket.h" + +#include "vorbisDecoder.h" +#include "vorbisEncoder.h" + +class AudioHook : public HookHandler { + +private: + bool changeAudioSamplerate; + bool changeChannel; + bool copy; + + AudioConverter converter; + AudioPacket audioPacket; + + AudioHook(); + +public: + AudioHook(uint8 outStreamID, const bool copy, const bool keepComments); + virtual ~AudioHook(); + + virtual HookHandler& operator<<(OggPacket& packet); + + virtual void initAndConnect(); + + virtual void flush(); + + virtual OggType getType() const; +}; + +static bool operator==(const vorbis_info& info1, const vorbis_info& info2); +static bool operator!=(const vorbis_info& info1, const vorbis_info& info2); + + +#endif /*AUDIOHOOK_H_*/ diff -Nru oggvideotools-0.8a/src/main/CMakeLists.txt oggvideotools-0.9.1/src/main/CMakeLists.txt --- oggvideotools-0.8a/src/main/CMakeLists.txt 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/main/CMakeLists.txt 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,13 @@ +SET ( LIBRARY_MAIN_SRC + audioConverter.cpp + audioHook.cpp + hookHandler.cpp + videoHook.cpp + oggBOSExtractorFactory.cpp + streamMux.cpp + streamSerializer.cpp + cmdlineextractor.cpp + ) + +ADD_LIBRARY ( ovtmain ${LIBRARY_MAIN_SRC} ) + diff -Nru oggvideotools-0.8a/src/main/cmdlineextractor.cpp oggvideotools-0.9.1/src/main/cmdlineextractor.cpp --- oggvideotools-0.8a/src/main/cmdlineextractor.cpp 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/main/cmdlineextractor.cpp 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,392 @@ +// +// C++ Implementation: cmdlineextractor +// +// Description: +// +// +// Author: Yorn , (C) 2009 +// +// Copyright: See COPYING file that comes with this distribution +// +// +#include "cmdlineextractor.h" + +#include +#include +#include +#include +#include + +#include "definition.h" +#include "oggComment.h" +#include "pictureLoader.h" +#include "log.h" +#include "effectorTypes.h" + +CmdlineExtractor::CmdlineExtractor() +{ +} + +CmdlineExtractor::~CmdlineExtractor() +{ +} + +void CmdlineExtractor::extractCommentPairs(std::vector& list, + const std::string& _argument, char tokenSeparator, + char commentSeparator) +{ + std::string argument(_argument); + std::stringstream str; + std::string substr; + + // delete all invalid data + std::size_t pos; + while ((pos = argument.find_first_not_of(validTextChars)) + != std::string::npos) { +#ifdef DEBUG + logger.debug() << "Erasing sign <"< - it is invalid\n"; +#endif + argument.erase(pos, 1); + } + + // if there is no argument given, the first frame will be created as a thumbnail + if (argument.empty()) { + return; + } + + str << argument; + + while (!str.eof()) { + getline(str, substr, tokenSeparator); + + std::size_t commentSeparatorPos; + if ((commentSeparatorPos = substr.find_first_of(commentSeparator)) + != std::string::npos) { + OggComment comment; + comment.tag = substr.substr(0, commentSeparatorPos); + comment.value = substr.substr(commentSeparatorPos + 1, + std::string::npos); + list.push_back(comment); + // logger.debug() << "Found pair "<& list, + const std::string& _argument, char seperator) +{ + std::string argument(_argument); + std::stringstream str; + std::string substr; + + // delete all invalid data + std::size_t pos; + while ((pos = argument.find_first_not_of(validChars)) != std::string::npos) { +#ifdef DEBUG + logger.debug() << "erasing <"<\n"; +#endif + argument.erase(pos, 1); + } + + // if there is no argument given, the first frame will be created as a thumbnail + if (argument.empty()) { + list.push_back(0); + return; + } + + str << argument; + + uint32 value(0); + while (!str.eof()) { + std::stringstream part; + getline(str, substr, seperator); + part << substr; + part >> value; + list.push_back(value); + } + +} + +void CmdlineExtractor::extractBlend(std::vector& list, + const std::string& _argument, char tokenSeparator, + char valueSeparator) +{ + + std::string argument(_argument); + std::stringstream str; + std::string substr; + + // delete all invalid data + std::size_t pos; + while ((pos = argument.find_first_not_of(validTextChars)) + != std::string::npos) { + argument.erase(pos, 1); + } + + // if there is no argument given, the first frame will be created as a thumbnail + if (argument.empty()) { + return; + } + + str << argument; + + while (!str.eof()) { + getline(str, substr, tokenSeparator); + + /* extract picture name */ + std::size_t valueSeparatorPos = substr.find_first_of(valueSeparator); + + std::string filename = substr.substr(0, valueSeparatorPos); + + /* extract all extra data if some (start time, end time, smoothing)*/ + double startTime(0); + double endTime(-1); + bool smooth(false); + std::stringstream tmp; + + /* are there any other information given? */ + if (valueSeparatorPos != std::string::npos) { + + /* analysing start time */ + substr = substr.substr(valueSeparatorPos + 1); + + valueSeparatorPos = substr.find_first_of(valueSeparator); + + tmp << substr.substr(0, valueSeparatorPos); + tmp >> startTime; + tmp.clear(); + + if (valueSeparatorPos != std::string::npos) { + + /* analysing start time */ + substr = substr.substr(valueSeparatorPos + 1); + + valueSeparatorPos = substr.find_first_of(valueSeparator); + + tmp << substr.substr(0, valueSeparatorPos); + tmp >> endTime; + + if (valueSeparatorPos != std::string::npos) { + + /* analysing start time */ + substr = substr.substr(valueSeparatorPos + 1); + + if (substr.substr(0, valueSeparator) == "s") + smooth = true; + } + } + + } + + BlendElement elem(filename, startTime, endTime, smooth); + // elem.loadPicture(); + list.push_back(elem); + + } + +#ifdef DEBUG + for (uint32 i( 0); i> value; + + return (value); + +} + +float CmdlineExtractor::atof(const std::string& _argument) +{ + std::stringstream stream; + float value; + + stream << _argument; + stream >> value; + + return (value); + +} + +uint32 CmdlineExtractor::getNextUint32(std::string& argument, + char tokenSeparator) +{ + uint32 retValue(0); + + if (!argument.empty()) { + + std::stringstream tmp; + + std::size_t tokenPosition(argument.find_first_of(tokenSeparator)); + tmp << argument.substr(0, tokenPosition); + tmp >> retValue; + + argument = argument.substr(tokenPosition + 1); + + } + + return (retValue); +} + +float CmdlineExtractor::getNextFloat(std::string& argument, + char tokenSeparator) +{ + float retValue(0.0); + + if (!argument.empty()) { + + std::stringstream tmp; + + std::size_t tokenPosition(argument.find_first_of(tokenSeparator)); + tmp << argument.substr(0, tokenPosition); + tmp >> retValue; + + argument = argument.substr(tokenPosition + 1); + + } + + return (retValue); +} + +std::string CmdlineExtractor::getNextString(std::string& argument, + char tokenSeparator) +{ + std::string retValue(0); + + if (!argument.empty()) { + + std::stringstream tmp; + + std::size_t tokenPosition(argument.find_first_of(tokenSeparator)); + tmp << argument.substr(0, tokenPosition); + tmp >> retValue; + + argument = argument.substr(tokenPosition + 1); + + } + + return (retValue); +} + +void CmdlineExtractor::extractSlideshow(const std::string& _argument, + char tokenSeparator, SlideshowElement& slideshowElement) +{ + /* A full specified picture would look like this (speparator is ",") + * name.jpg:,, + * This should go into a creator factory later: + * start and end position is written as ,, + * The X and Y Position is from the left upper corner. The Zoom is 1 if + * the pixel is just copy. In that case, the subframe is as big is the + * outgoing frame */ + + std::string argument(_argument); + std::stringstream tmp; + + // delete all invalid data + std::size_t pos; + while ((pos = argument.find_first_not_of(validTextChars)) + != std::string::npos) { + argument.erase(pos, 1); + } + + // if there is no argument given, the first frame will be created as a thumbnail + if (argument.empty()) { + return; + } + + /* extract picture name */ + std::size_t tokenPosition(argument.find_first_of(tokenSeparator)); + slideshowElement.filename = argument.substr(0, tokenPosition); + + std::string substr = argument.substr(tokenPosition + 1); + + /* extract length */ +// if (tokenPosition != std::string::npos) { +// std::string substr = argument.substr(tokenPosition + 1); +// tokenPosition = substr.find_first_of(tokenSeparator); +// tmp << substr.substr(0, tokenPosition); +// tmp >> slideshowElement.duration; +// substr = substr.substr(tokenPosition + 1); +// std::cout << substr << std::endl; + +// if (tokenPosition != std::string::npos) { +// tokenPosition = substr.find_first_of(tokenSeparator); +// std::string typeName(substr.substr(0, tokenPosition)); +// std::cout << substr << std::endl; +// +// if ((typeName == "kb") || (typeName == "KB") +// || (typeName == "KenBurns") || (typeName == "kenburns")) +// slideshowElement.type = KenBurns; +// +// if ((typeName == "p") || (typeName == "pl") || (typeName == "plain") +// || (typeName == "Plain")) +// slideshowElement.type = Plain; +// +// if ((typeName == "cf") || (typeName == "crossfade") +// || (typeName == "CF") || (typeName == "Crossfade")) +// slideshowElement.type = Crossfade; +// +// if ((typeName == "bl") || (typeName == "b") || (typeName == "B") +// || (typeName == "blur") || (typeName == "bluring")) +// slideshowElement.type = Blur; + + substr = substr.substr(tokenPosition + 1); + + if (tokenPosition != std::string::npos) { + std::cout << "F " << substr << std::endl; + + slideshowElement.startPosX = getNextUint32(substr, + tokenSeparator); + std::cout << substr << std::endl; + slideshowElement.startPosY = getNextUint32(substr, + tokenSeparator); + std::cout << substr << std::endl; + slideshowElement.startZoom = getNextFloat(substr, + tokenSeparator); + std::cout << substr << std::endl; + slideshowElement.endPosX = getNextUint32(substr, + tokenSeparator); + std::cout << substr << std::endl; + slideshowElement.endPosY = getNextUint32(substr, + tokenSeparator); + std::cout << substr << std::endl; + slideshowElement.endZoom = getNextFloat(substr, tokenSeparator); + } +// } + //} +} + +void CmdlineExtractor::extractCrossSequence(std::vector& list, + const std::string& _argument, char tokenSeparator) +{ + std::string argument(_argument); + + // delete all invalid data + std::size_t pos; + while ((pos = argument.find_first_not_of(validTextChars)) + != std::string::npos) { + argument.erase(pos, 1); + } + + while (!argument.empty()) + list.push_back(getNextString(argument, tokenSeparator)); + + return; +} + diff -Nru oggvideotools-0.8a/src/main/cmdlineextractor.h oggvideotools-0.9.1/src/main/cmdlineextractor.h --- oggvideotools-0.8a/src/main/cmdlineextractor.h 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/main/cmdlineextractor.h 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,68 @@ +// +// C++ Interface: cmdlineextractor +// +// Description: +// +// +// Author: Yorn , (C) 2009 +// +// Copyright: See COPYING file that comes with this distribution +// +// +#ifndef CMDLINEEXTRACTOR_H +#define CMDLINEEXTRACTOR_H + +#include +#include +#include + +#include "definition.h" +#include "oggComment.h" +#include "blendElement.h" +#include "effectorTypes.h" + +const std::string validChars ( "0123456789,x" ); +const std::string +validTextChars ( "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789 /\\.,=;:-_" ); + +class SlideshowElement { +public: + std::string filename; + float duration; + EffectorType type; + uint32 startPosX; + uint32 startPosY; + float startZoom; + uint32 endPosX; + uint32 endPosY; + float endZoom; +}; + +class CmdlineExtractor { +public: + CmdlineExtractor(); + + ~CmdlineExtractor(); + + static void extractCommentPairs ( std::vector& list, + const std::string& _argument, char tokenSeparator, char commentSeparator ); + + static void extractUint32 ( std::deque& list, const std::string& _argument, + char seperator ); + + static void extractBlend ( std::vector& list, const std::string& _argument, + char tokenSeparator, char valueSeparator ); + + static uint32 atoi(const std::string& _argument); + static float atof(const std::string& _argument); + + static uint32 getNextUint32(std::string& substring, char tokenSeparator); + static float getNextFloat(std::string& substring, char tokenSeparator); + static std::string getNextString(std::string& substring, char tokenSeparator); + + static void extractSlideshow(const std::string& _argument, char tokenSeparator, SlideshowElement& slideShowElement); + static void extractCrossSequence(std::vector& list, const std::string& _argument, char tokenSeparator); + +}; + +#endif diff -Nru oggvideotools-0.8a/src/main/hookHandler.cpp oggvideotools-0.9.1/src/main/hookHandler.cpp --- oggvideotools-0.8a/src/main/hookHandler.cpp 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/main/hookHandler.cpp 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,68 @@ +#include "exception.h" +#include "hookHandler.h" + +HookHandler::HookHandler(const bool _copy, const bool _keepComments) + : copyOnly(_copy), reencode(false), keepComments(_keepComments), inPacketCounter(0), outPacketCounter(0) +{ +} + +HookHandler::~HookHandler() +{ +} + +/* refactor StreamConfig to be const*/ +void HookHandler::setDecoderConfig(StreamConfig& config, + std::vector& commentList) +{ + if (!outputDecoder) + throw OggException("No decoder available to configure"); + + outputDecoder->clear(); + outputDecoder->initDecoder(config, commentList); + +} + +void HookHandler::setEncoderConfig(StreamConfig& config, + std::vector& commentList) +{ + if (!inputEncoder) + throw OggException("No encoder available to configure"); + + inputEncoder->configureEncoder(config, commentList); +} + +std::string HookHandler::decoderConfiguration() const +{ + return (outputDecoder->configuration()); +} + +std::string HookHandler::encoderConfiguration() const +{ + return (inputEncoder->configuration()); +} + +HookHandler& HookHandler::operator>>(OggPacket& packet) +{ + if (packetList.empty()) + throw OggException("VideoHook::operator>>: No packet available"); + + packet = packetList.front(); + packetList.pop_front(); + + return (*this); +} + +bool HookHandler::available() +{ + return (!packetList.empty()); +} + +OggType HookHandler::getType() const +{ + return (OggType::unknown); +} + +void HookHandler::resetEncoder() +{ + +} diff -Nru oggvideotools-0.8a/src/main/hookHandler.h oggvideotools-0.9.1/src/main/hookHandler.h --- oggvideotools-0.8a/src/main/hookHandler.h 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/main/hookHandler.h 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,85 @@ +#ifndef HOOKHANDLER_H_ +#define HOOKHANDLER_H_ + +#include +#include + +#include "mediaOutputDecoder.h" +#include "mediaInputEncoder.h" +#include "oggComment.h" + +class HookHandler { + +protected: + bool copyOnly; /* specifies, if resize is disallowed */ + bool reencode; + bool keepComments; + uint64 inPacketCounter; + uint64 outPacketCounter; + std::vector comments; + + std::unique_ptr outputDecoder; + std::unique_ptr inputEncoder; + std::deque packetList; + + +public: + HookHandler(const bool copy=true, const bool keepComments=true); + virtual ~HookHandler(); + + virtual void setDecoderConfig(StreamConfig& config, + std::vector& commentList); + + virtual void setEncoderConfig(StreamConfig& config, + std::vector& commentList); + + virtual void resetEncoder(); + + void setCopyOnly(); + bool isCopyOnly(); + void resetCopyOnly(); + + void forceReencoding(); + void resetForceReencoding(); + + //! method to compare both configurations and to calculate the reencoding parameters + virtual void initAndConnect() = 0; + + virtual HookHandler& operator<<(OggPacket& packet) = 0; + virtual HookHandler& operator>>(OggPacket& packet); + + virtual OggType getType() const; + virtual bool available(); + + virtual void flush() = 0; + + virtual std::string decoderConfiguration() const; + virtual std::string encoderConfiguration() const; +}; + +inline void HookHandler::setCopyOnly() +{ + copyOnly = true; +} + +inline bool HookHandler::isCopyOnly() +{ + return(copyOnly); +} + +inline void HookHandler::resetCopyOnly() +{ + copyOnly = false; +} + +inline void HookHandler::forceReencoding() +{ + reencode = true; +} + +inline void HookHandler::resetForceReencoding() +{ + reencode = false; +} + +#endif /*HOOKHANDLER_H_*/ diff -Nru oggvideotools-0.8a/src/main/oggBOSExtractorFactory.cpp oggvideotools-0.9.1/src/main/oggBOSExtractorFactory.cpp --- oggvideotools-0.8a/src/main/oggBOSExtractorFactory.cpp 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/main/oggBOSExtractorFactory.cpp 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,142 @@ +#include +#include "oggBOSExtractorFactory.h" +#include "theoraExtractor.h" +#include "vorbisExtractor.h" +#include "kateExtractor.h" +#include "theoraPosInterpreter.h" +#include "vorbisPosInterpreter.h" +#include "katePosInterpreter.h" +//#include "theoraDecoder.h" +//#include "vorbisEncoder.h" + +OggBOSExtractorFactory::OggBOSExtractorFactory() +{ +} + +OggBOSExtractorFactory::~OggBOSExtractorFactory() +{ +} + +/* +static MediaDecoder* OggBOSExtractorFactory::createDecoder(OggPage& page) +{ + +} + +static MediaDecoder* OggBOSExtractorFactory::createEncoder(OggPacket& packet) +{ + +} +*/ + +bool OggBOSExtractorFactory::extractInformation(OggPage& page, ExtractorInformation& information) +{ + switch (getStreamType(page)) { + + case OggType::theora: { + TheoraExtractor extractor; + return(extractor.extract(page, information)); + } + + case OggType::vorbis: { + VorbisExtractor extractor; + return(extractor.extract(page, information)); + } + + case OggType::kate: { + KateExtractor extractor; + return(extractor.extract(page, information)); + } + + default: + break; + + } + + /* could not interpret the bos page */ + return(false); +} + +bool OggBOSExtractorFactory::extractInformation(OggPacket& packet, ExtractorInformation& information) +{ + switch (getStreamType(packet)) { + + case OggType::theora: { + TheoraExtractor extractor; + return(extractor.extract(packet, information)); + } + + case OggType::vorbis: { + VorbisExtractor extractor; + return(extractor.extract(packet, information)); + } + + case OggType::kate: { + KateExtractor extractor; + return(extractor.extract(packet, information)); + } + + default: + break; + + } + + /* could not interpret the bos page */ + return(false); +} + +GranulePosInterpreter* OggBOSExtractorFactory::extractPositionInterpreter(ExtractorInformation& info) +{ + GranulePosInterpreter* retPosInterpreter(0); + + switch (info.type) { + case OggType::theora: + retPosInterpreter = new TheoraPosInterpreter; + break; + + case OggType::vorbis: + retPosInterpreter = new VorbisPosInterpreter; + break; + + case OggType::kate: + retPosInterpreter = new KatePosInterpreter; + break; + + default: + break; + } + + if (retPosInterpreter) + retPosInterpreter->initialize(info.parameter.get()); + + return(retPosInterpreter); +} + +OggType OggBOSExtractorFactory::getStreamType(OggPage& page) +{ + uint8* type = &(page->data())[0]+page->getHeaderLength(); + + uint8 i=1; + for (; i< to_integral(OggType::maxOggType); ++i) { + if (memcmp(type, OggTypeMap[i], MAXIDCHARS) == 0) +// if ((*type) == OggTypeMap[i]) + return ((OggType)i); + } + + return (OggType::unknown); + +} + +OggType OggBOSExtractorFactory::getStreamType(OggPacket& packet) +{ + uint8* type = packet->data(); + + uint8 i=1; + for (; i< to_integral(OggType::maxOggType); ++i) { + if (memcmp(type, OggTypeMap[i], MAXIDCHARS) == 0) +// if ((*type) == OggTypeMap[i]) + return ((OggType)i); + } + + return (OggType::unknown); +} diff -Nru oggvideotools-0.8a/src/main/oggBOSExtractorFactory.h oggvideotools-0.9.1/src/main/oggBOSExtractorFactory.h --- oggvideotools-0.8a/src/main/oggBOSExtractorFactory.h 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/main/oggBOSExtractorFactory.h 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,28 @@ +#ifndef OGGBOSEXTRACTORFACTORY_H_ +#define OGGBOSEXTRACTORFACTORY_H_ + +#include "oggTypes.h" +#include "granulePosInterpreter.h" +//#include "oggMediaStream.h" +#include "streamExtractor.h" + +class OggBOSExtractorFactory { + +public: + OggBOSExtractorFactory(); + virtual ~OggBOSExtractorFactory(); + + /* + static MediaDecoder* createStreamDecoder(ExtractorInformation& information); + static MediaDecoder* createStreamEncoder(ExtractorInformation& information); + */ + + static bool extractInformation(OggPage& page, ExtractorInformation& information); + static bool extractInformation(OggPacket& packet, ExtractorInformation& information); + static GranulePosInterpreter* extractPositionInterpreter(ExtractorInformation& information); + + static OggType getStreamType(OggPage& page); + static OggType getStreamType(OggPacket& packet); +}; + +#endif /*OGGBOSEXTRACTORFACTORY_H_*/ diff -Nru oggvideotools-0.8a/src/main/streamMux.cpp oggvideotools-0.9.1/src/main/streamMux.cpp --- oggvideotools-0.8a/src/main/streamMux.cpp 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/main/streamMux.cpp 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,385 @@ +/* + * streamMux will multiplex a number streams to one ogg file + * + * Copyright (C) 2008 Joern Seger + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + * + */ + +#include + +#include "streamMux.h" + +#include "rawMediaPacket.h" +#include "oggBOSExtractorFactory.h" +#include "log.h" + +MuxStreamEntry::MuxStreamEntry() + : used(false), streamEncoder(0), posInterpreter(0), + nextTime(-2), empty(true), bufferElemCounter(0) +{ +} + +MuxStreamEntry::MuxStreamEntry(StreamConfig& config, + OggStreamEncoder* _streamEncoder, + GranulePosInterpreter* _posInterpreter) + : used(true), streamConfig(config), streamEncoder(_streamEncoder), + posInterpreter(_posInterpreter), nextTime(-2), empty(true), lastPacketNo(2), + bufferElemCounter(0) +{ +} + +MuxStreamEntry::~MuxStreamEntry() +{ +} + +StreamMux::StreamMux(MediaRepository* _repository) + : m_timeOfLastPage(0.0), m_redoTiming(true), m_repository(_repository) +{ +} + +StreamMux::~StreamMux() +{ + for (uint32 i(0); i> rawPacket; + (*m_repository) << rawPacket; + } + +} + +void StreamMux::insertHeader() +{ + OggPage oggPage; + + /* first set all BOS Packets/Pages */ + for (uint32 i(0); itoString(10); + + encoder << m_streamList[i].streamConfig.headerList[0]; + + // we do not have to flush, the encoder knows, that the bos + // page needs a clean page + + if (encoder.isAvailable()) { + encoder >> oggPage; + m_oggEncoder << oggPage; + + } + } + + /* then set the rest of the packets */ + for (uint32 i(0); itoString(3); + encoder << m_streamList[i].streamConfig.headerList[j]; + } + + // place the additional header packets on a clean page + encoder.flush(); + + // write all pages to the ogg encoder + while (encoder.isAvailable()) { + encoder >> oggPage; + m_oggEncoder << oggPage; + } + + m_streamList[i].lastPacketNo = m_streamList[i].streamConfig.headerList.size()-1; + } + + // write the data to the m_repository + writeToRepository(); + +} + +void StreamMux::writeToOggEncoder() +{ + // write data to the ogg encoder, as long as there is + // at least one packet of every stream available + // This is because we might not know the end of stream + + while (!m_outputPageList.empty()) { + + // get the first page + OggPage nextPage = m_outputPageList.back().page; + + // logger.info() << nextPage->toString(5); + + uint8 streamNo(nextPage->getStreamNo()); + + // this is the real return reason, the Page list + // should never be m_empty + if (m_streamList.at(streamNo).bufferElemCounter < 2) + break; + + // insert the packet into the ogg encoder + m_oggEncoder << nextPage; + + // decrement the marker for the elements of this stream + m_streamList.at(streamNo).bufferElemCounter--; + m_outputPageList.pop_back(); + + } + + writeToRepository(); +} + +void StreamMux::flushOggEncoder() +{ + // now we search for the last page of every stream + // and mark it as the "End of Stream" + + while (!m_outputPageList.empty()) { + + // get the first page + OggPage nextPage = m_outputPageList.back().page; + + uint8 streamNo(nextPage->getStreamNo()); + + // is this the last page of this stream, then mark it + if (m_streamList.at(streamNo).bufferElemCounter == 1) { + nextPage->setEOS(); + nextPage->createCRC(); + } + + // insert the packet into the ogg encoder + m_oggEncoder << nextPage; + + // decrement the marker for the elements of this stream + m_streamList.at(streamNo).bufferElemCounter--; + + m_outputPageList.pop_back(); + } + + // flush the encoder (actually does nothing) + m_oggEncoder.flush(); + +} + +bool StreamMux::allBuffersEmpty() +{ + // run through the list and find out, if there is + // a filled buffer + + for (uint32 i(0); i::iterator iter(m_outputPageList.begin()); + + // -1 is a problem! + if (elem.time < 0) { + elem.time = m_timeOfLastPage; // should we care for the stream No? + } + + while ((iter != m_outputPageList.end()) && (elem.time < iter->time)) + ++iter; + + m_outputPageList.insert(iter, elem); + + m_timeOfLastPage = elem.time; + + // page has been added to the output list, mark the entry as free + m_streamList[nextID].empty = true; + + // increment the number of elements in the, that + // belongs to this stream + // we need to know that, to be able to ensure that at least + // one packet of every stream is not written to the ogg encoder + m_streamList[nextID].bufferElemCounter++; + + // write the data + writeToOggEncoder(); + + return(true); +} + +void StreamMux::handleNextPage(OggPage& page, uint8 streamNo) +{ + /* here we look, if there is a page in the buffer + * if yes, look into the other buffers and insert the pages into + * the m_outputPageList by their time order until the page buffer, + * we are looking for is free */ + + page->setStreamNo(streamNo); + MuxStreamEntry& entry = m_streamList.at(streamNo); + + while (!entry.empty) { + findAndInsertNextPage(); + } + + entry.nextPage = page; + entry.empty = false; + entry.nextTime = entry.posInterpreter->getTime(page->granulepos()); + return; + +} + +void StreamMux::configureStreams(std::vector& config) +{ + m_streamList.resize(config.size()); + + for (uint32 i(0); igetStreamNo()); + + // can we handle this packet - if not, this packet will be discarded + if (!entry.used) { + logger.error() << "StreamMux::operator<< no valid stream to put a packet with stream no:"<<(uint32) packet->getStreamNo()<setStreamPosition(packet); + + // then we place this packet into the stream encoder + encoder << packet; + + // now it is becomming difficult, as the pages must be in the correct order + // therefor we need a lot of buffering stuff :-/ + OggPage page; + + // if there are one or more pages, handle the buffering + while (encoder.isAvailable()) { + encoder >> page; + handleNextPage(page, packet->getStreamNo()); + } + + return(*this); +} + +void StreamMux::setEndOfStream() +{ + // flush the rest, if there is some + for (uint32 i(0); iflush(); + + while (entry.streamEncoder->isAvailable()) { + OggPage page; + + *entry.streamEncoder >> page; + handleNextPage(page, i); + } + } + + // insert all buffered pages + while (findAndInsertNextPage()); + + // flush the page list + flushOggEncoder(); + + writeToRepository(); +} + +void StreamMux::close() +{ + if (m_repository) { + m_repository->close(); + delete m_repository; + m_repository = 0; + } +} diff -Nru oggvideotools-0.8a/src/main/streamMux.h oggvideotools-0.9.1/src/main/streamMux.h --- oggvideotools-0.8a/src/main/streamMux.h 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/main/streamMux.h 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,118 @@ +/* + * streamMux will multiplex a number streams to one ogg file + * + * Copyright (C) 2008 Joern Seger + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + * + */ +#ifndef STREAMMUX_H_ +#define STREAMMUX_H_ + +#include +#include + +#include "definition.h" +#include "oggPacket.h" +#include "oggEncoder.h" +#include "oggStreamEncoder.h" +#include "granulePosInterpreter.h" +#include "mediaRepository.h" + +class MuxStreamEntry { + +public: + + /* entry information */ + bool used; + + /* stream information */ + StreamConfig streamConfig; + OggStreamEncoder* streamEncoder; + GranulePosInterpreter* posInterpreter; + + /* packet information */ + OggPage nextPage; + double nextTime; + bool empty; + + uint32 lastPacketNo; + + /* stream buffer information */ + int bufferElemCounter; + + MuxStreamEntry(); + MuxStreamEntry(StreamConfig& config, OggStreamEncoder* streamEncoder, GranulePosInterpreter* posInterpreter); + + virtual ~MuxStreamEntry(); + +}; + +//! streamMux creates a new ogg media stream +/*! This object awaits a m_repository with the constructor, which informs + * the object about where to write the information to. + * Additional it awaits a vector of Stream Config information to set up + * the header and the granule position correctly. + * From that moment, the StreamMux object receives OggPackets which are + * placed into the media stream with the correct packaging. + * */ +class StreamMux { + +protected: + + struct OutputElement { + OggPage page; + double time; + OutputElement(OggPage _page, double _time) + : page(_page), time(_time) {} + }; + + double m_timeOfLastPage; + + bool m_redoTiming; + + OggEncoder m_oggEncoder; + MediaRepository* m_repository; + + std::vector m_streamList; + //std::list m_outputPageList; + std::list m_outputPageList; + + bool allBuffersEmpty(); + + void writeToRepository(); + void writeToOggEncoder(); + + void flushOggEncoder(); + + bool findAndInsertNextPage(); + void insertHeader(); + void handleNextPage(OggPage& page, uint8 streamNo); + +public: + StreamMux(MediaRepository* repository); + virtual ~StreamMux(); + + void configureStreams(std::vector& config); + void setEndOfStream(); + + StreamMux& operator<<(OggPacket& page); + + void recreatePacketPosition(bool redoTiming); + + void close(); +}; + +#endif /*STREAMMUX_H_*/ diff -Nru oggvideotools-0.8a/src/main/streamSerializer.cpp oggvideotools-0.9.1/src/main/streamSerializer.cpp --- oggvideotools-0.8a/src/main/streamSerializer.cpp 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/main/streamSerializer.cpp 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,434 @@ +/* + * streamSerialize will output a serialized stream of packets from a file + * + * Copyright (C) 2008 Joern Seger + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + * + */ + +#include + +#include "streamSerializer.h" + +#include "fileRepository.h" +#include "oggBOSExtractorFactory.h" +#include "log.h" + +StreamEntry::StreamEntry() : + streamDecoder(0), posInterpreter(0), nextTime(-1), endOfStream(false), + empty(true) +{ +} + +StreamEntry::StreamEntry(StreamConfig& config, OggStreamDecoder* sDecoder) : + streamConfig(config), streamDecoder(sDecoder), posInterpreter(0), nextTime(-1), + endOfStream(false), empty(true) +{ +} + +StreamEntry::~StreamEntry() +{ +} + +bool StreamEntry::allHeadersCollected() +{ + return(streamConfig.numOfHeaderPackets == streamConfig.headerList.size()); +} + +StreamSerializer::StreamSerializer() : + initState(created), repository(0), oggDecoder(new OggDecoder), + streamEndCounter(0) +{ +} + +StreamSerializer::~StreamSerializer() +{ + close(); +} + +bool StreamSerializer::open(std::string& datasource) +{ + + // actually only file + repository = new FileRepository(datasource, MediaUnit::read); + + /* has there been a problem with opening the file */ + if (!repository->isAvailable()) + return (false); + + initState = reposOpened; + + // extract the streams + bool retValue = extractStreams(); + + // fill one packet to every stream item + std::map::iterator it(streamList.begin()); + for (; it != streamList.end(); ++it) { + StreamEntry& entry = it->second; + fillStreams(); + insertNextPacket(entry); + } + + return (retValue); +} + +bool StreamSerializer::open(MediaRepository* _repository) +{ + // actually only file + repository = _repository; + + /* has there been a problem with opening the file */ + if (!repository->isAvailable()) + return (false); + + initState = reposOpened; + + bool retValue = extractStreams(); + + // fill one packet to every stream item + std::map::iterator it(streamList.begin()); + for (; it != streamList.end(); ++it) { + StreamEntry& entry = it->second; + fillStreams(); + insertNextPacket(entry); + } + + return (retValue); +} + +bool StreamSerializer::extractStreams() +{ + + RawMediaPacket rawPacket; + OggPage oggPage; + OggPacket oggPacket; + + int8 streamCounter = 0; + + while (repository->isAvailable()) { + + /* extract a raw data bunch from the file and place it into + the ogg decoder */ + (*repository) >> rawPacket; + (*oggDecoder) << rawPacket; + + /* if there is a complete ogg page available, grab it */ + while (oggDecoder->isAvailable()) { + + (*oggDecoder) >> oggPage; + + /* what ID has this page / to what stream does this page belong to */ + uint32 serialID = oggPage->serialno(); + + /* if this is a "begin of stream" packet, + * create a new stream decoder instance */ + if (oggPage->isBOS()) { + + StreamEntry entry; + + /* get all the relevant information from the stream */ + OggBOSExtractorFactory::extractInformation(oggPage, entry.streamConfig); + entry.streamConfig.streamNo = streamCounter++; + + /* create the stream encoder */ + entry.streamDecoder = new OggStreamDecoder; + entry.posInterpreter + = OggBOSExtractorFactory::extractPositionInterpreter(entry.streamConfig); + + streamList[serialID] = entry; + + // insert the first page + *(streamList[serialID].streamDecoder) << oggPage; + + } else { + // insert the next page + + OggPacket oggPacket; + StreamEntry& entry = streamList[serialID]; + OggStreamDecoder& streamDecoder = *(entry.streamDecoder); + + streamDecoder << oggPage; + + /* as long as we need headers and there are packets available + * fill the header list */ + while ((!entry.allHeadersCollected()) && + (entry.streamDecoder->isAvailable())) { + + /* if the list of header packets is not completed, add + * the next packet to the list */ + streamDecoder >> oggPacket; + entry.streamConfig.headerList.push_back(oggPacket); + } + + /* find out, if all header packets have been found */ + + bool allStreamsReady(true); + std::map::iterator it(streamList.begin()); + for (; it != streamList.end(); ++it) { + if (!it->second.allHeadersCollected()) { + allStreamsReady = false; + break; + } + } + + if (allStreamsReady) + return (true); + } + } + } + + logger.error() + << "StreamSerializer::extractStreams(): extracter was not able to grab all stream header\n"; + return (false); +} + +void StreamSerializer::getStreamConfig(std::vector& packetList) +{ + + std::map::iterator it(streamList.begin()); + + fillStreams(); + + // it is a bit difficult, we need the original folge + packetList.resize(streamList.size()); + + for (; it != streamList.end(); ++it) { + StreamEntry& entry = it->second; + packetList[entry.streamConfig.streamNo] = entry.streamConfig; + } + +} + +void StreamSerializer::close() +{ + + delete oggDecoder; + oggDecoder = 0; + + /* close the m_repository */ + if (repository) { + repository->close(); + delete repository; + repository = 0; + } + + std::map::iterator it = streamList.begin(); + + /* delete all list entries */ + for (; it != streamList.end(); ++it) { + StreamEntry entry = it->second; + + delete entry.streamDecoder; + delete entry.posInterpreter; + +// if (entry.streamConfig.parameter) +// delete entry.streamConfig.parameter; + + /* we do not need to delete the header List + * it is controled by the refObject structure */ + } + streamList.clear(); + +} + +bool StreamSerializer::fillPage() +{ + + RawMediaPacket rawPacket; + OggPage oggPage; + + while (1==1) { + + // is there no packet available within the ogg page decoder + while (!oggDecoder->isAvailable()) { + + // is there any data bunch available from the m_repository? + if (!repository->isAvailable()) { + + // if there is no more data at the m_repository, there is an error + // in the stream/file + return (false); + } + + // get a bunch of raw data and place it into the ogg page decoder + *repository >> rawPacket; + *oggDecoder << rawPacket; + + // repeat this until there is at least one page available + } + + // get the next ogg page + *oggDecoder >> oggPage; + + // find out to what stream this packet belongs and forget the + // page if the stream has not been configured befor + if (streamList.find(oggPage->serialno()) == streamList.end()) + continue; + + // get the stream item for easier access + StreamEntry& item = streamList[oggPage->serialno()]; + + // insert the ogg page into the right stream decoder + *(item.streamDecoder) << oggPage; + + return (true); + } + +} + +/* method is called to be sure, that there is at least one packet in every stream + * or the stream has finished */ +bool StreamSerializer::fillStreams() +{ + + /* are there no more packets to process, return false */ + if (streamEndCounter == streamList.size()) + return (false); + + std::map::iterator it = streamList.begin(); + + // ensure that every stream can deliver at least one packet or + // the stream has been ended + for (; it != streamList.end(); ++it) { + + // create a local reference for easier access + StreamEntry& item = it->second; + + // if this stream has ended, do not fill this stream any more + if (item.endOfStream) + continue; + + // if there is no packet available within this particular stream + // try to get more input + while (!item.streamDecoder->isAvailable()) { + + // if the stream has not ended, fill up the stream + // if the stream has ended, increment the end counter + if (item.streamDecoder->isEndOfStream()) { + break; + } else { + if (!fillPage()) { + logger.error() << "StreamSerializer::fillStreams: stream ended without an end-of-stream indicator\n"; + return (false); + } + } + } + } + + return (true); +} + +void StreamSerializer::insertNextPacket(StreamEntry& entry) +{ + // insert next packet into the streamEntry + if (entry.streamDecoder->isEndOfStream()) { + // if the stream has ended, set a marker + if (entry.endOfStream == false) { + entry.endOfStream = true; + entry.empty = true; +// logger.debug() << "Stream <"<getSerialNo()<< std::dec<<"> has ended \n"; + streamEndCounter++; + } +// entry.endOfStream = true; + } else { + + // get the next packet from this stream decoder + OggPacket newPacket; + *(entry.streamDecoder) >> newPacket; + + // set some additional data + newPacket->setStreamType(entry.streamConfig.type); + newPacket->setStreamNo(entry.streamConfig.streamNo); + + // if there is a position interpreter, use it to set the time + // else set the time to 0 + if (entry.posInterpreter) { +// logger.debug() << "granpos stream: "<granulepos(); + if (newPacket->granulepos() == -1) { + entry.posInterpreter->setStreamPosition(newPacket); + entry.nextTime = entry.posInterpreter->getActTime(); + } else { + int64 grPos = newPacket->granulepos(); + // the interpreter needs to be pushed forward + entry.posInterpreter->setStreamPosition(newPacket); + newPacket->setGranulepos(grPos); + entry.nextTime = entry.posInterpreter->getTime(newPacket->granulepos()); + } +// logger.debug() << " calc: "<granulepos()<::iterator it = streamList.begin(); + + /* delete all list entries */ + for (; it != streamList.end(); ++it) { + + StreamEntry& entry = it->second; + + /* if this stream has ended, continue with the next stream */ + if (entry.endOfStream) + continue; + + /* if this is the first packet in this round, take it + * as a reference else compare both times */ + + if ((time < 0) || ((!entry.empty) && (entry.nextTime < time))) { + time = entry.nextTime; + nextStreamID = it->first; + } + } + + if (time > -1) { + /* copy the next packet to the requested one */ + packet = streamList[nextStreamID].nextPacket; + if (fillStreams()) + insertNextPacket(streamList[nextStreamID]); + else + streamEndCounter = streamList.size(); + } + + return (time); +} diff -Nru oggvideotools-0.8a/src/main/streamSerializer.h oggvideotools-0.9.1/src/main/streamSerializer.h --- oggvideotools-0.8a/src/main/streamSerializer.h 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/main/streamSerializer.h 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,98 @@ +/* + * streamSerialize will output a serialized stream of packets from a file + * + * Copyright (C) 2008 Joern Seger + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + * + */ + +#ifndef STREAMSERIALIZER_H_ +#define STREAMSERIALIZER_H_ + +#include +#include + +#include "definition.h" +#include "mediaRepository.h" +#include "oggDecoder.h" +#include "oggStreamDecoder.h" +#include "granulePosInterpreter.h" +#include "streamConfig.h" + +class StreamEntry { + +public: + StreamConfig streamConfig; + OggStreamDecoder* streamDecoder; + GranulePosInterpreter* posInterpreter; + + OggPacket nextPacket; + double nextTime; + bool endOfStream; + bool empty; + + StreamEntry(); + StreamEntry(StreamConfig& config, OggStreamDecoder* sDecoder); + virtual ~StreamEntry(); + + bool allHeadersCollected(); +}; + +//! class to reserialize ogg packets +/* reserializing an ogg stream is not as easy as it seems: + * you always */ +class StreamSerializer { + +protected: + enum InitStates { + created, + reposOpened, + initialized + }; + + InitStates initState; + MediaRepository* repository; + OggDecoder* oggDecoder; + std::map streamList; + + uint32 streamEndCounter; + + bool fillPage(); + bool fillStreams(); + bool extractStreams(); + + void insertNextPacket(StreamEntry& entry); + + // none copieable serializer + StreamSerializer(const StreamSerializer& streamSerializer) {} + +public: + StreamSerializer(); + virtual ~StreamSerializer(); + + void getStreamConfig(std::vector& configList); + + bool available(); + + bool open(std::string& datasource); + bool open(MediaRepository* _repository); + void close(); + + double getNextPacket(OggPacket& packet); + +}; + +#endif /*STREAMSERIALIZER_H_*/ diff -Nru oggvideotools-0.8a/src/main/videoHook.cpp oggvideotools-0.9.1/src/main/videoHook.cpp --- oggvideotools-0.8a/src/main/videoHook.cpp 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/main/videoHook.cpp 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,335 @@ +#include + +#include + +#include "videoHook.h" + +#include "theoraDecoder.h" +#include "theoraEncoder.h" + +#include "rgbPlane.h" +#include "pictureLoader.h" +#include "pictureResize.h" +#include "pictureBlend.h" +#include "th_helper.h" +#include "exception.h" +#include "log.h" + +VideoHook::Config::Config() + : stretch(false), trimDatarateOrQuality(false), quality(3), preview(1) +{ +} + +VideoHook::VideoHook(uint8 outStreamID, const bool copy, const bool keepComments) : + HookHandler(copy, keepComments), framerateDecoder(1), framerateEncoder(1), + aspectCorrection(1), time(0), nextTime(0), timeOffset(0), intensityStair(1), + changeSize(false) +{ + config.stretch = false; // Try to keep the aspect ratio + config.quality = 3; // use good quality for resizing + config.preview = 1; // don't use any preview functionality + + // we create the decoder/encoder pair, + // even if we don't need them + // specially the encoder may be needed later, if the + // input comes from another source + + outputDecoder.reset(new TheoraDecoder); + inputEncoder.reset(new TheoraEncoder(outStreamID)); + + th_clean_ycbcr(outycbcr); + th_clean_ycbcr(inycbcr); + +} + +VideoHook::~VideoHook() +{ + th_free_ycbcr(outycbcr); + // th_free_ycbcr(inycbcr); +} + +HookHandler& VideoHook::operator<<(OggPacket& packet) +{ + + if (!outputDecoder) + throw OggException("VideoHook::callHook: no outputDecoder given"); + + if (!inputEncoder) + throw OggException("VideoHook::callHook: no inputEncoder given"); + + TheoraDecoder& decoder = static_cast(*outputDecoder.get()); + TheoraEncoder& encoder = static_cast(*inputEncoder.get()); + + // What is the best way to receive the time?! + // best way may be to recalculate the time due to the number of packets + // and the framerate + time = (inPacketCounter*framerateEncoder) + timeOffset; + nextTime = (outPacketCounter*framerateDecoder) + timeOffset; +// logger.debug() << "Time "<setStreamNo(encoder.getStreamNo()); + // in case, this is just a packet transfer, we need to create + // the correct position + if (TheoraPosInterpreter::packetIsKeyframe(packet)) + posCreator.addKeyframe(); + else + ++posCreator; + + packet->setGranulepos(posCreator.getPosition()); + outPacketCounter++; + packetList.push_back(packet); + + } else { + try { + decoder << packet; + decoder >> inycbcr; + + while ( (uint64)(time*1000.0+0.5) >= (uint64)(nextTime*1000.0+0.5) ) { + + inPlane = PictureLoader::importYCrCb_theora ( inycbcr, decoder.getWidth(), decoder.getHeight(), decoder.getInfo().pic_x, decoder.getInfo().pic_y, decoder.getInfo().pixel_fmt ); + + /* should be an alpha blend applied before resizing */ + if ( !config.blendListBefore.empty() ) { + alphaBlend ( time, inPlane, config.blendListBefore ); + } + + if ( changeSize ) { + if (config.stretch) + inPlane = PictureResize::resize ( inPlane, encoder.width(), encoder.height(), config.quality ); + else + inPlane = PictureResize::reframe ( inPlane, encoder.width(), encoder.height(), config.quality, 0, aspectCorrection ); + } + + /* should be an alpha blend applied after resizing? */ + if ( !config.blendListAfter.empty() ) { + alphaBlend ( time, inPlane, config.blendListAfter ); + } + + if ( ( !config.blendListBefore.empty() ) || ( !config.blendListAfter.empty() ) || changeSize ) { + + /* there are changes written to the outycbcr */ + PictureLoader::exportYCrCb_theora ( inPlane, outycbcr, encoder.getInfo().pixel_fmt ); + + if (inPacketCounter%config.preview == 0) + encoder << outycbcr; + } else { + + /* use the original data */ + if (outPacketCounter%config.preview == 0) + encoder << inycbcr; + } + + if (encoder.isAvailable()) { + outPacketCounter++; + encoder >> packet; + + if (TheoraPosInterpreter::packetIsKeyframe(packet)) + posCreator.addKeyframe(); + else + ++posCreator; + + packet->setGranulepos(posCreator.getPosition()); + packetList.push_back(packet); + nextTime = (outPacketCounter*framerateDecoder) + timeOffset; + + } + + } + // logger.debug() << std::endl; + } catch (std::exception & e) { + logger.error() << "Exception: " << e.what(); + } + } + + return(*this); +} + +void VideoHook::setEncoderConfig(StreamConfig& config, + std::vector& commentList) +{ + HookHandler::setEncoderConfig(config, commentList); + posCreator.initialize(config.parameter.get()); +} + +void VideoHook::resetEncoder() +{ + TheoraEncoder& encoder = static_cast(*inputEncoder); + encoder.reset(); +} + +void VideoHook::initAndConnect() +{ + // maybe we could copy the stream even, when it's not strictly + // specified + // at this point every thing must be configured. + // So the comparison could take place + TheoraDecoder& decoder = static_cast(*outputDecoder.get()); + TheoraEncoder& encoder = static_cast(*inputEncoder.get()); + + /* if this is a reinitialisation, remember the offset */ + timeOffset = time; + inPacketCounter = 0; + outPacketCounter = 0; + + if (!config.blendListAfter.empty() || !config.blendListBefore.empty()) + reencode = true; + + /* if it is ok, that we do a reencoding, than we could trim the output */ + if (!copyOnly) { + /* if both stream configurations are equal, they could be copied */ + copy = (decoder.getInfo() == encoder.getInfo()) && !reencode; + + /* maybe only the datarate/quality is different in this case, we can copy the + * stream. But maybe somebody wants to trim the datarate/quality. In this case + * we do not copy (very difficult ;-)*/ + + /* if the picture size is different, we need to resize the video */ + if ((decoder.getInfo().pic_width != encoder.getInfo().pic_width) || + (decoder.getInfo().pic_height != encoder.getInfo().pic_height)) + changeSize = true; + + /* if the aspect ratio is different, we also need resizing */ + if ((decoder.getInfo().aspect_numerator != encoder.getInfo().aspect_numerator) || + (decoder.getInfo().aspect_denominator != encoder.getInfo().aspect_denominator)) + changeSize = true; + + /* calculate the framerate Input and framerate Output */ + if (decoder.getInfo().fps_denominator > 0) + framerateDecoder = decoder.getInfo().fps_numerator*1.0/decoder.getInfo().fps_denominator; + else + framerateDecoder = 1; + + if (encoder.getInfo().fps_denominator > 0) + framerateEncoder = encoder.getInfo().fps_numerator*1.0/encoder.getInfo().fps_denominator; + else + framerateEncoder = 1; + + // logger.debug() << "changeing framerate from "<< framerateInput<<" to "<& blendList) +{ + + for (uint32 i( 0); i= blendList[i].startTime) { + if (blendList[i].smooth) { + blendList[i].state = BlendElement::blend_slideIn; + } else { + blendList[i].intensity = 1.0; + blendList[i].state = BlendElement::blend_on; + } + } + } + break; + + case BlendElement::blend_slideIn: { + blendList[i].intensity += intensityStair; + + if (blendList[i].intensity >= 1.0) { + blendList[i].state = BlendElement::blend_on; + blendList[i].intensity = 1.0; + } + + } + break; + + case BlendElement::blend_on: { + if ( (blendList[i].endTime > 0.0 ) + && (time >= blendList[i].endTime )) { + if (blendList[i].smooth) { + blendList[i].state = BlendElement::blend_slideOut; + } else { + blendList[i].intensity = 0.0; + blendList[i].state = BlendElement::blend_end; + } + } + } + break; + + case BlendElement::blend_slideOut: { + blendList[i].intensity -= intensityStair; + + if (blendList[i].intensity <= 0.0) { + blendList[i].state = BlendElement::blend_end; + blendList[i].intensity = 0.0; + } + + } + break; + + case BlendElement::blend_end: { + /* do nothing */ + } + break; + + } + + if ( (blendList[i].state != BlendElement::blend_end ) + && (blendList[i].state != BlendElement::blend_off )) + inPlane = PictureBlend::alphaBlend(inPlane, blendList[i].picture, + blendList[i].intensity); + + } + +} + +void VideoHook::flush() +{ + +} + +OggType VideoHook::getType() const +{ + return(OggType::theora); +} + +static bool operator==(const th_info& info1, const th_info& info2) +{ + return ( (info1.aspect_denominator == info2.aspect_denominator) && + (info1.aspect_numerator == info2.aspect_numerator) && + (info1.colorspace == info2.colorspace) && + (info1.fps_denominator == info2.fps_denominator ) && + (info1.fps_numerator == info2.fps_numerator) && + (info1.frame_height == info2.frame_height) && + (info1.frame_width == info2.frame_width) && + (info1.keyframe_granule_shift == info2.keyframe_granule_shift) && + (info1.pic_height == info2.pic_height) && + (info1.pic_width == info2.pic_width) && + (info1.pic_x == info2.pic_x) && + (info1.pic_y == info2.pic_y) && + (info1.pixel_fmt == info2.pixel_fmt) && + (info1.quality == info2.quality) && + (info1.target_bitrate == info2.target_bitrate) ); +} + +static bool operator!=(const th_info& info1, const th_info& info2) +{ + return (!(info1==info2)); +} diff -Nru oggvideotools-0.8a/src/main/videoHook.h oggvideotools-0.9.1/src/main/videoHook.h --- oggvideotools-0.8a/src/main/videoHook.h 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/main/videoHook.h 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,83 @@ +#ifndef VIDEOHOOK_H_ +#define VIDEOHOOK_H_ + +// #include + +#include "hookHandler.h" + +#include "theoraDecoder.h" +#include "theoraEncoder.h" +#include "rgbPlane.h" +#include "theoraPosInterpreter.h" + +#include "blendElement.h" + +class VideoHook : public HookHandler { +public: + + class Config { + public: + bool stretch; + bool trimDatarateOrQuality; + uint32 quality; + uint32 preview; + std::vector blendListBefore; + std::vector blendListAfter; + Config(); + }; + +private: + Config config; + + /* precalculations from known values */ + double framerateDecoder; + double framerateEncoder; + + double aspectCorrection; + double time; + double nextTime; + double timeOffset; + + double intensityStair; + + bool copy; + + bool changeSize; + RGBPlane inPlane; + + TheoraPosInterpreter posCreator; + + th_ycbcr_buffer inycbcr; + th_ycbcr_buffer outycbcr; + + VideoHook(); + + void alphaBlend(double time, RGBPlane& inPlane, + std::vector& blendList); + +public: + + VideoHook(uint8 outStreamID, const bool copy=true, const bool keepComments=true); + virtual ~VideoHook(); + + void configureProcess(Config& config); + + virtual void setEncoderConfig(StreamConfig& config, + std::vector& commentList); + + virtual void resetEncoder(); + + virtual HookHandler& operator<<(OggPacket& packet); + + virtual void initAndConnect(); + + virtual OggType getType() const; + + virtual void flush(); + +}; + +static bool operator==(const th_info& info1, const th_info& info2); +static bool operator!=(const th_info& info1, const th_info& info2); + +#endif /*VIDEOHOOK_H_*/ diff -Nru oggvideotools-0.8a/src/makefile.am oggvideotools-0.9.1/src/makefile.am --- oggvideotools-0.8a/src/makefile.am 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/src/makefile.am 1970-01-01 00:00:00.000000000 +0000 @@ -1,92 +0,0 @@ -bin_PROGRAMS = oggSplit oggDump oggJoin oggCut oggLength oggCat - -SRC_CORE = mediaUnit.cpp mediaRepository.cpp fileRepository.cpp rawMediaPacket.cpp \ - mediaDecoder.cpp mediaEncoder.cpp mediaConverter.cpp \ - oggDecoder.cpp oggStreamDecoder.cpp \ - oggPage.cpp oggPacket.cpp ringbuffer.cpp oggRingbuffer.cpp crc.cpp \ - granulePosInterpreter.cpp mediaOutputDecoder.cpp mediaInputEncoder.cpp \ - streamSerializer.cpp oggBOSExtractorFactory.cpp \ - oggStreamEncoder.cpp oggEncoder.cpp streamExtractor.cpp streamParameter.cpp \ - streamMux.cpp bufferRepository.cpp oggComment.cpp - -SRC_ADDITIONAL = cmdlineextractor.cpp basePlane.cpp rgbPlane.cpp blendElement.cpp - -SRC_OUTPUT = SDLvideoOutput.cpp - -# Theora independed information -SRC_THEORA_INDEP = theoraPosInterpreter.cpp theoraStreamParameter.cpp theoraExtractor.cpp -SRC_THEORA_DEP = theoraDecoder.cpp theoraEncoder.cpp - -HDR_THEORA = theoraHeader.h - -SRC_VORBIS_INDEP = vorbisPosInterpreter.cpp vorbisStreamParameter.cpp vorbisExtractor.cpp -# SRC_VORBIS_DEP = vorbisDecoder.cpp audioPacket.cpp - -SRC_VORBIS_DEP = vorbisDecoder.cpp vorbisEncoder.cpp audioPacket.cpp audioConverter.cpp - -HDR_VORBIS = vorbisHeader.h - -SRC_KATE_INDEP = katePosInterpreter.cpp kateStreamParameter.cpp kateExtractor.cpp - -SRC_SDL = SDLvideoOutput.cpp -HDR_SDL = SDLvideoOutput.h - -LIBRESAMPLE = libresample/filterkit.c libresample/resample.c libresample/resamplesubs.c - -EFFECTORS = effector.cpp crossfader.cpp plainPicture.cpp lowpassEffect.cpp kenburnseffect.cpp \ - pictureResize.cpp pictureBlend.cpp pictureLoader.cpp - -HOOKS = hookHandler.cpp videoHook.cpp audioHook.cpp - -ADDHEADERS = refObject.h definition.h oggHeader.h oggTypes.h audioPacket.h \ - streamConfig.h $(HDR_VORBIS) $(HDR_THEORA) $(HDR_SDL) - -oggSplit_SOURCES = $(SRC_CORE) $(SRC_ADDITIONAL) $(SRC_THEORA_INDEP) $(SRC_VORBIS_INDEP) $(SRC_KATE_INDEP) oggSplit.cpp - -oggDump_SOURCES = $(SRC_CORE) $(SRC_ADDITIONAL) $(SRC_THEORA_INDEP) $(SRC_VORBIS_INDEP) $(SRC_KATE_INDEP) oggDump.cpp - -oggJoin_SOURCES = $(SRC_CORE) $(SRC_ADDITIONAL) $(SRC_THEORA_INDEP) $(SRC_VORBIS_INDEP) $(SRC_KATE_INDEP) oggJoin.cpp - -oggCut_SOURCES = $(SRC_CORE) $(SRC_ADDITIONAL) $(SRC_THEORA_INDEP) $(SRC_VORBIS_INDEP) $(SRC_KATE_INDEP) oggCut.cpp - -oggCat_SOURCES = $(SRC_CORE) $(SRC_THEORA_INDEP) $(SRC_VORBIS_INDEP) $(SRC_KATE_INDEP) $(SRC_THEORA_DEP) $(SRC_VORBIS_DEP) $(SRC_GD) $(LIBRESAMPLE) $(SRC_ADDITIONAL) $(EFFECTORS) $(HOOKS) oggCat.cpp -oggCat_CXXFLAGS = $(OGG_CFLAGS) $(THEORAENC_CFLAGS) $(THEORADEC_CFLAGS) $(VORBIS_CFLAGS) $(VORBISENC_CFLAGS) $(GD_CFLAGS) -oggCat_LDADD = $(OGG_LIBS) $(THEORAENC_LIBS) $(THEORADEC_LIBS) $(VORBIS_LIBS) $(VORBISENC_LIBS) $(GD_LIBS) - -oggLength_SOURCES = $(SRC_CORE) $(SRC_ADDITIONAL) $(SRC_THEORA_INDEP) $(SRC_VORBIS_INDEP) $(SRC_KATE_INDEP) oggLength.cpp - -if WANT_OGGSCROLL -bin_PROGRAMS += oggScroll -oggScroll_SOURCES = $(SRC_CORE) $(SRC_THEORA_INDEP) $(SRC_VORBIS_INDEP) $(SRC_THEORA_DEP) $(SRC_KATE_INDEP) $(SRC_SDL) $(SRC_ADDITIONAL) oggScroll.cpp -oggScroll_CXXFLAGS = $(OGG_CFLAGS) $(VORBIS_CFLAGS) $(THEORAENC_CFLAGS) $(THEORADEC_CFLAGS) $(SDL_CFLAGS) -oggScroll_LDADD = $(OGG_LIBS) $(VORBIS_LIBS) $(THEORAENC_LIBS) $(THEORADEC_LIBS) $(SDL_LIBS) -endif - -if WANT_OGGSLIDESHOW -bin_PROGRAMS += oggSlideshow -oggSlideshow_SOURCES = $(SRC_CORE) $(SRC_THEORA_INDEP) $(SRC_VORBIS_INDEP) $(SRC_KATE_INDEP) $(SRC_THEORA_DEP) $(SRC_GD) $(EFFECTORS) $(SRC_ADDITIONAL) oggSlideshow.cpp -oggSlideshow_CXXFLAGS = $(OGG_CFLAGS) $(THEORAENC_CFLAGS) $(THEORADEC_CFLAGS) $(GD_CFLAGS) -oggSlideshow_LDADD = $(OGG_LIBS) $(THEORAENC_LIBS) $(THEORADEC_LIBS) $(GD_LIBS) -endif - -if WANT_OGGTHUMB -bin_PROGRAMS += oggThumb -oggThumb_SOURCES = $(SRC_CORE) $(SRC_THEORA_INDEP) $(SRC_VORBIS_INDEP) $(SRC_KATE_INDEP) $(SRC_THEORA_DEP) $(SRC_GD) $(EFFECTORS) $(SRC_ADDITIONAL) oggThumb.cpp -oggThumb_CXXFLAGS = $(OGG_CFLAGS) $(THEORAENC_CFLAGS) $(THEORADEC_CFLAGS) $(GD_CFLAGS) -oggThumb_LDADD = $(OGG_LIBS) $(THEORAENC_LIBS) $(THEORADEC_LIBS) $(GD_LIBS) -endif - -if WANT_OGGRESIZE -bin_PROGRAMS += oggTranscode -oggTranscode_SOURCES = $(SRC_CORE) $(SRC_THEORA_INDEP) $(SRC_VORBIS_INDEP) $(SRC_KATE_INDEP) $(SRC_THEORA_DEP) $(SRC_VORBIS_DEP) $(SRC_GD) $(LIBRESAMPLE) $(SRC_ADDITIONAL) $(EFFECTORS) $(HOOKS) oggTranscode.cpp -oggTranscode_CXXFLAGS = $(OGG_CFLAGS) $(THEORAENC_CFLAGS) $(THEORADEC_CFLAGS) $(VORBIS_CFLAGS) $(VORBISENC_CFLAGS) $(GD_CFLAGS) -oggTranscode_LDADD = $(OGG_LIBS) $(THEORAENC_LIBS) $(THEORADEC_LIBS) $(VORBIS_LIBS) $(VORBISENC_LIBS) $(GD_LIBS) -endif - -if WANT_OGGSILENCE -bin_PROGRAMS += oggSilence -oggSilence_SOURCES = $(SRC_CORE) $(SRC_THEORA_INDEP) $(SRC_VORBIS_INDEP) $(SRC_KATE_INDEP) $(SRC_VORBIS_DEP) $(LIBRESAMPLE) $(SRC_ADDITIONAL) oggSilence.cpp -oggSilence_CXXFLAGS = $(OGG_CFLAGS) $(VORBIS_CFLAGS) $(VORBISENC_CFLAGS) -oggSilence_LDADD = $(OGG_LIBS) $(VORBIS_LIBS) $(VORBISENC_LIBS) -endif - diff -Nru oggvideotools-0.8a/src/makefile.in oggvideotools-0.9.1/src/makefile.in --- oggvideotools-0.8a/src/makefile.in 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/src/makefile.in 1970-01-01 00:00:00.000000000 +0000 @@ -1,4846 +0,0 @@ -# makefile.in generated by automake 1.11 from makefile.am. -# @configure_input@ - -# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, -# 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation, -# Inc. -# This Makefile.in is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY, to the extent permitted by law; without -# even the implied warranty of MERCHANTABILITY or FITNESS FOR A -# PARTICULAR PURPOSE. - -@SET_MAKE@ - -VPATH = @srcdir@ -pkgdatadir = $(datadir)/@PACKAGE@ -pkgincludedir = $(includedir)/@PACKAGE@ -pkglibdir = $(libdir)/@PACKAGE@ -pkglibexecdir = $(libexecdir)/@PACKAGE@ -am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd -install_sh_DATA = $(install_sh) -c -m 644 -install_sh_PROGRAM = $(install_sh) -c -install_sh_SCRIPT = $(install_sh) -c -INSTALL_HEADER = $(INSTALL_DATA) -transform = $(program_transform_name) -NORMAL_INSTALL = : -PRE_INSTALL = : -POST_INSTALL = : -NORMAL_UNINSTALL = : -PRE_UNINSTALL = : -POST_UNINSTALL = : -bin_PROGRAMS = oggSplit$(EXEEXT) oggDump$(EXEEXT) oggJoin$(EXEEXT) \ - oggCut$(EXEEXT) oggLength$(EXEEXT) oggCat$(EXEEXT) \ - $(am__EXEEXT_1) $(am__EXEEXT_2) $(am__EXEEXT_3) \ - $(am__EXEEXT_4) -@WANT_OGGSCROLL_TRUE@am__append_1 = oggScroll - -#if WANT_OGGSLIDESHOW -#bin_PROGRAMS += oggSlideshow -#oggSlideshow_SOURCES = $(SRC_CORE) $(SRC_THEORA_INDEP) $(SRC_VORBIS_INDEP) $(SRC_KATE_INDEP) $(SRC_THEORA_DEP) $(SRC_GD) $(EFFECTORS) $(SRC_ADDITIONAL) oggSlideshow.cpp -#oggSlideshow_CXXFLAGS = $(OGG_CFLAGS) $(THEORAENC_CFLAGS) $(THEORADEC_CFLAGS) $(GD_CFLAGS) -#oggSlideshow_LDADD = $(OGG_LIBS) $(THEORAENC_LIBS) $(THEORADEC_LIBS) $(GD_LIBS) -#endif -@WANT_OGGTHUMB_TRUE@am__append_2 = oggThumb -@WANT_OGGRESIZE_TRUE@am__append_3 = oggTranscode -@WANT_OGGSILENCE_TRUE@am__append_4 = oggSilence -subdir = src -DIST_COMMON = $(srcdir)/makefile.am $(srcdir)/makefile.in -ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 -am__aclocal_m4_deps = $(top_srcdir)/m4/pkg.m4 \ - $(top_srcdir)/configure.ac -am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ - $(ACLOCAL_M4) -mkinstalldirs = $(SHELL) $(top_srcdir)/admin/mkinstalldirs -CONFIG_HEADER = $(top_builddir)/config.h -CONFIG_CLEAN_FILES = -CONFIG_CLEAN_VPATH_FILES = -@WANT_OGGSCROLL_TRUE@am__EXEEXT_1 = oggScroll$(EXEEXT) -@WANT_OGGTHUMB_TRUE@am__EXEEXT_2 = oggThumb$(EXEEXT) -@WANT_OGGRESIZE_TRUE@am__EXEEXT_3 = oggTranscode$(EXEEXT) -@WANT_OGGSILENCE_TRUE@am__EXEEXT_4 = oggSilence$(EXEEXT) -am__installdirs = "$(DESTDIR)$(bindir)" -PROGRAMS = $(bin_PROGRAMS) -am__objects_1 = oggCat-mediaUnit.$(OBJEXT) \ - oggCat-mediaRepository.$(OBJEXT) \ - oggCat-fileRepository.$(OBJEXT) \ - oggCat-rawMediaPacket.$(OBJEXT) oggCat-mediaDecoder.$(OBJEXT) \ - oggCat-mediaEncoder.$(OBJEXT) oggCat-mediaConverter.$(OBJEXT) \ - oggCat-oggDecoder.$(OBJEXT) oggCat-oggStreamDecoder.$(OBJEXT) \ - oggCat-oggPage.$(OBJEXT) oggCat-oggPacket.$(OBJEXT) \ - oggCat-ringbuffer.$(OBJEXT) oggCat-oggRingbuffer.$(OBJEXT) \ - oggCat-crc.$(OBJEXT) oggCat-granulePosInterpreter.$(OBJEXT) \ - oggCat-mediaOutputDecoder.$(OBJEXT) \ - oggCat-mediaInputEncoder.$(OBJEXT) \ - oggCat-streamSerializer.$(OBJEXT) \ - oggCat-oggBOSExtractorFactory.$(OBJEXT) \ - oggCat-oggStreamEncoder.$(OBJEXT) oggCat-oggEncoder.$(OBJEXT) \ - oggCat-streamExtractor.$(OBJEXT) \ - oggCat-streamParameter.$(OBJEXT) oggCat-streamMux.$(OBJEXT) \ - oggCat-bufferRepository.$(OBJEXT) oggCat-oggComment.$(OBJEXT) -am__objects_2 = oggCat-theoraPosInterpreter.$(OBJEXT) \ - oggCat-theoraStreamParameter.$(OBJEXT) \ - oggCat-theoraExtractor.$(OBJEXT) -am__objects_3 = oggCat-vorbisPosInterpreter.$(OBJEXT) \ - oggCat-vorbisStreamParameter.$(OBJEXT) \ - oggCat-vorbisExtractor.$(OBJEXT) -am__objects_4 = oggCat-katePosInterpreter.$(OBJEXT) \ - oggCat-kateStreamParameter.$(OBJEXT) \ - oggCat-kateExtractor.$(OBJEXT) -am__objects_5 = oggCat-theoraDecoder.$(OBJEXT) \ - oggCat-theoraEncoder.$(OBJEXT) -am__objects_6 = oggCat-vorbisDecoder.$(OBJEXT) \ - oggCat-vorbisEncoder.$(OBJEXT) oggCat-audioPacket.$(OBJEXT) \ - oggCat-audioConverter.$(OBJEXT) -am__objects_7 = filterkit.$(OBJEXT) resample.$(OBJEXT) \ - resamplesubs.$(OBJEXT) -am__objects_8 = oggCat-cmdlineextractor.$(OBJEXT) \ - oggCat-basePlane.$(OBJEXT) oggCat-rgbPlane.$(OBJEXT) \ - oggCat-blendElement.$(OBJEXT) -am__objects_9 = oggCat-effector.$(OBJEXT) oggCat-crossfader.$(OBJEXT) \ - oggCat-plainPicture.$(OBJEXT) oggCat-lowpassEffect.$(OBJEXT) \ - oggCat-kenburnseffect.$(OBJEXT) oggCat-pictureResize.$(OBJEXT) \ - oggCat-pictureBlend.$(OBJEXT) oggCat-pictureLoader.$(OBJEXT) -am__objects_10 = oggCat-hookHandler.$(OBJEXT) \ - oggCat-videoHook.$(OBJEXT) oggCat-audioHook.$(OBJEXT) -am_oggCat_OBJECTS = $(am__objects_1) $(am__objects_2) $(am__objects_3) \ - $(am__objects_4) $(am__objects_5) $(am__objects_6) \ - $(am__objects_7) $(am__objects_8) $(am__objects_9) \ - $(am__objects_10) oggCat-oggCat.$(OBJEXT) -oggCat_OBJECTS = $(am_oggCat_OBJECTS) -am__DEPENDENCIES_1 = -oggCat_DEPENDENCIES = $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \ - $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \ - $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) -oggCat_LINK = $(CXXLD) $(oggCat_CXXFLAGS) $(CXXFLAGS) $(AM_LDFLAGS) \ - $(LDFLAGS) -o $@ -am__objects_11 = mediaUnit.$(OBJEXT) mediaRepository.$(OBJEXT) \ - fileRepository.$(OBJEXT) rawMediaPacket.$(OBJEXT) \ - mediaDecoder.$(OBJEXT) mediaEncoder.$(OBJEXT) \ - mediaConverter.$(OBJEXT) oggDecoder.$(OBJEXT) \ - oggStreamDecoder.$(OBJEXT) oggPage.$(OBJEXT) \ - oggPacket.$(OBJEXT) ringbuffer.$(OBJEXT) \ - oggRingbuffer.$(OBJEXT) crc.$(OBJEXT) \ - granulePosInterpreter.$(OBJEXT) mediaOutputDecoder.$(OBJEXT) \ - mediaInputEncoder.$(OBJEXT) streamSerializer.$(OBJEXT) \ - oggBOSExtractorFactory.$(OBJEXT) oggStreamEncoder.$(OBJEXT) \ - oggEncoder.$(OBJEXT) streamExtractor.$(OBJEXT) \ - streamParameter.$(OBJEXT) streamMux.$(OBJEXT) \ - bufferRepository.$(OBJEXT) oggComment.$(OBJEXT) -am__objects_12 = cmdlineextractor.$(OBJEXT) basePlane.$(OBJEXT) \ - rgbPlane.$(OBJEXT) blendElement.$(OBJEXT) -am__objects_13 = theoraPosInterpreter.$(OBJEXT) \ - theoraStreamParameter.$(OBJEXT) theoraExtractor.$(OBJEXT) -am__objects_14 = vorbisPosInterpreter.$(OBJEXT) \ - vorbisStreamParameter.$(OBJEXT) vorbisExtractor.$(OBJEXT) -am__objects_15 = katePosInterpreter.$(OBJEXT) \ - kateStreamParameter.$(OBJEXT) kateExtractor.$(OBJEXT) -am_oggCut_OBJECTS = $(am__objects_11) $(am__objects_12) \ - $(am__objects_13) $(am__objects_14) $(am__objects_15) \ - oggCut.$(OBJEXT) -oggCut_OBJECTS = $(am_oggCut_OBJECTS) -oggCut_LDADD = $(LDADD) -am_oggDump_OBJECTS = $(am__objects_11) $(am__objects_12) \ - $(am__objects_13) $(am__objects_14) $(am__objects_15) \ - oggDump.$(OBJEXT) -oggDump_OBJECTS = $(am_oggDump_OBJECTS) -oggDump_LDADD = $(LDADD) -am_oggJoin_OBJECTS = $(am__objects_11) $(am__objects_12) \ - $(am__objects_13) $(am__objects_14) $(am__objects_15) \ - oggJoin.$(OBJEXT) -oggJoin_OBJECTS = $(am_oggJoin_OBJECTS) -oggJoin_LDADD = $(LDADD) -am_oggLength_OBJECTS = $(am__objects_11) $(am__objects_12) \ - $(am__objects_13) $(am__objects_14) $(am__objects_15) \ - oggLength.$(OBJEXT) -oggLength_OBJECTS = $(am_oggLength_OBJECTS) -oggLength_LDADD = $(LDADD) -am__oggScroll_SOURCES_DIST = mediaUnit.cpp mediaRepository.cpp \ - fileRepository.cpp rawMediaPacket.cpp mediaDecoder.cpp \ - mediaEncoder.cpp mediaConverter.cpp oggDecoder.cpp \ - oggStreamDecoder.cpp oggPage.cpp oggPacket.cpp ringbuffer.cpp \ - oggRingbuffer.cpp crc.cpp granulePosInterpreter.cpp \ - mediaOutputDecoder.cpp mediaInputEncoder.cpp \ - streamSerializer.cpp oggBOSExtractorFactory.cpp \ - oggStreamEncoder.cpp oggEncoder.cpp streamExtractor.cpp \ - streamParameter.cpp streamMux.cpp bufferRepository.cpp \ - oggComment.cpp theoraPosInterpreter.cpp \ - theoraStreamParameter.cpp theoraExtractor.cpp \ - vorbisPosInterpreter.cpp vorbisStreamParameter.cpp \ - vorbisExtractor.cpp theoraDecoder.cpp theoraEncoder.cpp \ - katePosInterpreter.cpp kateStreamParameter.cpp \ - kateExtractor.cpp SDLvideoOutput.cpp cmdlineextractor.cpp \ - basePlane.cpp rgbPlane.cpp blendElement.cpp oggScroll.cpp -am__objects_16 = oggScroll-mediaUnit.$(OBJEXT) \ - oggScroll-mediaRepository.$(OBJEXT) \ - oggScroll-fileRepository.$(OBJEXT) \ - oggScroll-rawMediaPacket.$(OBJEXT) \ - oggScroll-mediaDecoder.$(OBJEXT) \ - oggScroll-mediaEncoder.$(OBJEXT) \ - oggScroll-mediaConverter.$(OBJEXT) \ - oggScroll-oggDecoder.$(OBJEXT) \ - oggScroll-oggStreamDecoder.$(OBJEXT) \ - oggScroll-oggPage.$(OBJEXT) oggScroll-oggPacket.$(OBJEXT) \ - oggScroll-ringbuffer.$(OBJEXT) \ - oggScroll-oggRingbuffer.$(OBJEXT) oggScroll-crc.$(OBJEXT) \ - oggScroll-granulePosInterpreter.$(OBJEXT) \ - oggScroll-mediaOutputDecoder.$(OBJEXT) \ - oggScroll-mediaInputEncoder.$(OBJEXT) \ - oggScroll-streamSerializer.$(OBJEXT) \ - oggScroll-oggBOSExtractorFactory.$(OBJEXT) \ - oggScroll-oggStreamEncoder.$(OBJEXT) \ - oggScroll-oggEncoder.$(OBJEXT) \ - oggScroll-streamExtractor.$(OBJEXT) \ - oggScroll-streamParameter.$(OBJEXT) \ - oggScroll-streamMux.$(OBJEXT) \ - oggScroll-bufferRepository.$(OBJEXT) \ - oggScroll-oggComment.$(OBJEXT) -am__objects_17 = oggScroll-theoraPosInterpreter.$(OBJEXT) \ - oggScroll-theoraStreamParameter.$(OBJEXT) \ - oggScroll-theoraExtractor.$(OBJEXT) -am__objects_18 = oggScroll-vorbisPosInterpreter.$(OBJEXT) \ - oggScroll-vorbisStreamParameter.$(OBJEXT) \ - oggScroll-vorbisExtractor.$(OBJEXT) -am__objects_19 = oggScroll-theoraDecoder.$(OBJEXT) \ - oggScroll-theoraEncoder.$(OBJEXT) -am__objects_20 = oggScroll-katePosInterpreter.$(OBJEXT) \ - oggScroll-kateStreamParameter.$(OBJEXT) \ - oggScroll-kateExtractor.$(OBJEXT) -am__objects_21 = oggScroll-SDLvideoOutput.$(OBJEXT) -am__objects_22 = oggScroll-cmdlineextractor.$(OBJEXT) \ - oggScroll-basePlane.$(OBJEXT) oggScroll-rgbPlane.$(OBJEXT) \ - oggScroll-blendElement.$(OBJEXT) -@WANT_OGGSCROLL_TRUE@am_oggScroll_OBJECTS = $(am__objects_16) \ -@WANT_OGGSCROLL_TRUE@ $(am__objects_17) $(am__objects_18) \ -@WANT_OGGSCROLL_TRUE@ $(am__objects_19) $(am__objects_20) \ -@WANT_OGGSCROLL_TRUE@ $(am__objects_21) $(am__objects_22) \ -@WANT_OGGSCROLL_TRUE@ oggScroll-oggScroll.$(OBJEXT) -oggScroll_OBJECTS = $(am_oggScroll_OBJECTS) -@WANT_OGGSCROLL_TRUE@oggScroll_DEPENDENCIES = $(am__DEPENDENCIES_1) \ -@WANT_OGGSCROLL_TRUE@ $(am__DEPENDENCIES_1) \ -@WANT_OGGSCROLL_TRUE@ $(am__DEPENDENCIES_1) \ -@WANT_OGGSCROLL_TRUE@ $(am__DEPENDENCIES_1) \ -@WANT_OGGSCROLL_TRUE@ $(am__DEPENDENCIES_1) -oggScroll_LINK = $(CXXLD) $(oggScroll_CXXFLAGS) $(CXXFLAGS) \ - $(AM_LDFLAGS) $(LDFLAGS) -o $@ -am__oggSilence_SOURCES_DIST = mediaUnit.cpp mediaRepository.cpp \ - fileRepository.cpp rawMediaPacket.cpp mediaDecoder.cpp \ - mediaEncoder.cpp mediaConverter.cpp oggDecoder.cpp \ - oggStreamDecoder.cpp oggPage.cpp oggPacket.cpp ringbuffer.cpp \ - oggRingbuffer.cpp crc.cpp granulePosInterpreter.cpp \ - mediaOutputDecoder.cpp mediaInputEncoder.cpp \ - streamSerializer.cpp oggBOSExtractorFactory.cpp \ - oggStreamEncoder.cpp oggEncoder.cpp streamExtractor.cpp \ - streamParameter.cpp streamMux.cpp bufferRepository.cpp \ - oggComment.cpp theoraPosInterpreter.cpp \ - theoraStreamParameter.cpp theoraExtractor.cpp \ - vorbisPosInterpreter.cpp vorbisStreamParameter.cpp \ - vorbisExtractor.cpp katePosInterpreter.cpp \ - kateStreamParameter.cpp kateExtractor.cpp vorbisDecoder.cpp \ - vorbisEncoder.cpp audioPacket.cpp audioConverter.cpp \ - libresample/filterkit.c libresample/resample.c \ - libresample/resamplesubs.c cmdlineextractor.cpp basePlane.cpp \ - rgbPlane.cpp blendElement.cpp oggSilence.cpp -am__objects_23 = oggSilence-mediaUnit.$(OBJEXT) \ - oggSilence-mediaRepository.$(OBJEXT) \ - oggSilence-fileRepository.$(OBJEXT) \ - oggSilence-rawMediaPacket.$(OBJEXT) \ - oggSilence-mediaDecoder.$(OBJEXT) \ - oggSilence-mediaEncoder.$(OBJEXT) \ - oggSilence-mediaConverter.$(OBJEXT) \ - oggSilence-oggDecoder.$(OBJEXT) \ - oggSilence-oggStreamDecoder.$(OBJEXT) \ - oggSilence-oggPage.$(OBJEXT) oggSilence-oggPacket.$(OBJEXT) \ - oggSilence-ringbuffer.$(OBJEXT) \ - oggSilence-oggRingbuffer.$(OBJEXT) oggSilence-crc.$(OBJEXT) \ - oggSilence-granulePosInterpreter.$(OBJEXT) \ - oggSilence-mediaOutputDecoder.$(OBJEXT) \ - oggSilence-mediaInputEncoder.$(OBJEXT) \ - oggSilence-streamSerializer.$(OBJEXT) \ - oggSilence-oggBOSExtractorFactory.$(OBJEXT) \ - oggSilence-oggStreamEncoder.$(OBJEXT) \ - oggSilence-oggEncoder.$(OBJEXT) \ - oggSilence-streamExtractor.$(OBJEXT) \ - oggSilence-streamParameter.$(OBJEXT) \ - oggSilence-streamMux.$(OBJEXT) \ - oggSilence-bufferRepository.$(OBJEXT) \ - oggSilence-oggComment.$(OBJEXT) -am__objects_24 = oggSilence-theoraPosInterpreter.$(OBJEXT) \ - oggSilence-theoraStreamParameter.$(OBJEXT) \ - oggSilence-theoraExtractor.$(OBJEXT) -am__objects_25 = oggSilence-vorbisPosInterpreter.$(OBJEXT) \ - oggSilence-vorbisStreamParameter.$(OBJEXT) \ - oggSilence-vorbisExtractor.$(OBJEXT) -am__objects_26 = oggSilence-katePosInterpreter.$(OBJEXT) \ - oggSilence-kateStreamParameter.$(OBJEXT) \ - oggSilence-kateExtractor.$(OBJEXT) -am__objects_27 = oggSilence-vorbisDecoder.$(OBJEXT) \ - oggSilence-vorbisEncoder.$(OBJEXT) \ - oggSilence-audioPacket.$(OBJEXT) \ - oggSilence-audioConverter.$(OBJEXT) -am__objects_28 = oggSilence-cmdlineextractor.$(OBJEXT) \ - oggSilence-basePlane.$(OBJEXT) oggSilence-rgbPlane.$(OBJEXT) \ - oggSilence-blendElement.$(OBJEXT) -@WANT_OGGSILENCE_TRUE@am_oggSilence_OBJECTS = $(am__objects_23) \ -@WANT_OGGSILENCE_TRUE@ $(am__objects_24) $(am__objects_25) \ -@WANT_OGGSILENCE_TRUE@ $(am__objects_26) $(am__objects_27) \ -@WANT_OGGSILENCE_TRUE@ $(am__objects_7) $(am__objects_28) \ -@WANT_OGGSILENCE_TRUE@ oggSilence-oggSilence.$(OBJEXT) -oggSilence_OBJECTS = $(am_oggSilence_OBJECTS) -@WANT_OGGSILENCE_TRUE@oggSilence_DEPENDENCIES = $(am__DEPENDENCIES_1) \ -@WANT_OGGSILENCE_TRUE@ $(am__DEPENDENCIES_1) \ -@WANT_OGGSILENCE_TRUE@ $(am__DEPENDENCIES_1) -oggSilence_LINK = $(CXXLD) $(oggSilence_CXXFLAGS) $(CXXFLAGS) \ - $(AM_LDFLAGS) $(LDFLAGS) -o $@ -am_oggSplit_OBJECTS = $(am__objects_11) $(am__objects_12) \ - $(am__objects_13) $(am__objects_14) $(am__objects_15) \ - oggSplit.$(OBJEXT) -oggSplit_OBJECTS = $(am_oggSplit_OBJECTS) -oggSplit_LDADD = $(LDADD) -am__oggThumb_SOURCES_DIST = mediaUnit.cpp mediaRepository.cpp \ - fileRepository.cpp rawMediaPacket.cpp mediaDecoder.cpp \ - mediaEncoder.cpp mediaConverter.cpp oggDecoder.cpp \ - oggStreamDecoder.cpp oggPage.cpp oggPacket.cpp ringbuffer.cpp \ - oggRingbuffer.cpp crc.cpp granulePosInterpreter.cpp \ - mediaOutputDecoder.cpp mediaInputEncoder.cpp \ - streamSerializer.cpp oggBOSExtractorFactory.cpp \ - oggStreamEncoder.cpp oggEncoder.cpp streamExtractor.cpp \ - streamParameter.cpp streamMux.cpp bufferRepository.cpp \ - oggComment.cpp theoraPosInterpreter.cpp \ - theoraStreamParameter.cpp theoraExtractor.cpp \ - vorbisPosInterpreter.cpp vorbisStreamParameter.cpp \ - vorbisExtractor.cpp katePosInterpreter.cpp \ - kateStreamParameter.cpp kateExtractor.cpp theoraDecoder.cpp \ - theoraEncoder.cpp effector.cpp crossfader.cpp plainPicture.cpp \ - lowpassEffect.cpp kenburnseffect.cpp pictureResize.cpp \ - pictureBlend.cpp pictureLoader.cpp cmdlineextractor.cpp \ - basePlane.cpp rgbPlane.cpp blendElement.cpp oggThumb.cpp -am__objects_29 = oggThumb-mediaUnit.$(OBJEXT) \ - oggThumb-mediaRepository.$(OBJEXT) \ - oggThumb-fileRepository.$(OBJEXT) \ - oggThumb-rawMediaPacket.$(OBJEXT) \ - oggThumb-mediaDecoder.$(OBJEXT) \ - oggThumb-mediaEncoder.$(OBJEXT) \ - oggThumb-mediaConverter.$(OBJEXT) \ - oggThumb-oggDecoder.$(OBJEXT) \ - oggThumb-oggStreamDecoder.$(OBJEXT) oggThumb-oggPage.$(OBJEXT) \ - oggThumb-oggPacket.$(OBJEXT) oggThumb-ringbuffer.$(OBJEXT) \ - oggThumb-oggRingbuffer.$(OBJEXT) oggThumb-crc.$(OBJEXT) \ - oggThumb-granulePosInterpreter.$(OBJEXT) \ - oggThumb-mediaOutputDecoder.$(OBJEXT) \ - oggThumb-mediaInputEncoder.$(OBJEXT) \ - oggThumb-streamSerializer.$(OBJEXT) \ - oggThumb-oggBOSExtractorFactory.$(OBJEXT) \ - oggThumb-oggStreamEncoder.$(OBJEXT) \ - oggThumb-oggEncoder.$(OBJEXT) \ - oggThumb-streamExtractor.$(OBJEXT) \ - oggThumb-streamParameter.$(OBJEXT) \ - oggThumb-streamMux.$(OBJEXT) \ - oggThumb-bufferRepository.$(OBJEXT) \ - oggThumb-oggComment.$(OBJEXT) -am__objects_30 = oggThumb-theoraPosInterpreter.$(OBJEXT) \ - oggThumb-theoraStreamParameter.$(OBJEXT) \ - oggThumb-theoraExtractor.$(OBJEXT) -am__objects_31 = oggThumb-vorbisPosInterpreter.$(OBJEXT) \ - oggThumb-vorbisStreamParameter.$(OBJEXT) \ - oggThumb-vorbisExtractor.$(OBJEXT) -am__objects_32 = oggThumb-katePosInterpreter.$(OBJEXT) \ - oggThumb-kateStreamParameter.$(OBJEXT) \ - oggThumb-kateExtractor.$(OBJEXT) -am__objects_33 = oggThumb-theoraDecoder.$(OBJEXT) \ - oggThumb-theoraEncoder.$(OBJEXT) -am__objects_34 = oggThumb-effector.$(OBJEXT) \ - oggThumb-crossfader.$(OBJEXT) oggThumb-plainPicture.$(OBJEXT) \ - oggThumb-lowpassEffect.$(OBJEXT) \ - oggThumb-kenburnseffect.$(OBJEXT) \ - oggThumb-pictureResize.$(OBJEXT) \ - oggThumb-pictureBlend.$(OBJEXT) \ - oggThumb-pictureLoader.$(OBJEXT) -am__objects_35 = oggThumb-cmdlineextractor.$(OBJEXT) \ - oggThumb-basePlane.$(OBJEXT) oggThumb-rgbPlane.$(OBJEXT) \ - oggThumb-blendElement.$(OBJEXT) -@WANT_OGGTHUMB_TRUE@am_oggThumb_OBJECTS = $(am__objects_29) \ -@WANT_OGGTHUMB_TRUE@ $(am__objects_30) $(am__objects_31) \ -@WANT_OGGTHUMB_TRUE@ $(am__objects_32) $(am__objects_33) \ -@WANT_OGGTHUMB_TRUE@ $(am__objects_34) $(am__objects_35) \ -@WANT_OGGTHUMB_TRUE@ oggThumb-oggThumb.$(OBJEXT) -oggThumb_OBJECTS = $(am_oggThumb_OBJECTS) -@WANT_OGGTHUMB_TRUE@oggThumb_DEPENDENCIES = $(am__DEPENDENCIES_1) \ -@WANT_OGGTHUMB_TRUE@ $(am__DEPENDENCIES_1) \ -@WANT_OGGTHUMB_TRUE@ $(am__DEPENDENCIES_1) \ -@WANT_OGGTHUMB_TRUE@ $(am__DEPENDENCIES_1) -oggThumb_LINK = $(CXXLD) $(oggThumb_CXXFLAGS) $(CXXFLAGS) \ - $(AM_LDFLAGS) $(LDFLAGS) -o $@ -am__oggTranscode_SOURCES_DIST = mediaUnit.cpp mediaRepository.cpp \ - fileRepository.cpp rawMediaPacket.cpp mediaDecoder.cpp \ - mediaEncoder.cpp mediaConverter.cpp oggDecoder.cpp \ - oggStreamDecoder.cpp oggPage.cpp oggPacket.cpp ringbuffer.cpp \ - oggRingbuffer.cpp crc.cpp granulePosInterpreter.cpp \ - mediaOutputDecoder.cpp mediaInputEncoder.cpp \ - streamSerializer.cpp oggBOSExtractorFactory.cpp \ - oggStreamEncoder.cpp oggEncoder.cpp streamExtractor.cpp \ - streamParameter.cpp streamMux.cpp bufferRepository.cpp \ - oggComment.cpp theoraPosInterpreter.cpp \ - theoraStreamParameter.cpp theoraExtractor.cpp \ - vorbisPosInterpreter.cpp vorbisStreamParameter.cpp \ - vorbisExtractor.cpp katePosInterpreter.cpp \ - kateStreamParameter.cpp kateExtractor.cpp theoraDecoder.cpp \ - theoraEncoder.cpp vorbisDecoder.cpp vorbisEncoder.cpp \ - audioPacket.cpp audioConverter.cpp libresample/filterkit.c \ - libresample/resample.c libresample/resamplesubs.c \ - cmdlineextractor.cpp basePlane.cpp rgbPlane.cpp \ - blendElement.cpp effector.cpp crossfader.cpp plainPicture.cpp \ - lowpassEffect.cpp kenburnseffect.cpp pictureResize.cpp \ - pictureBlend.cpp pictureLoader.cpp hookHandler.cpp \ - videoHook.cpp audioHook.cpp oggTranscode.cpp -am__objects_36 = oggTranscode-mediaUnit.$(OBJEXT) \ - oggTranscode-mediaRepository.$(OBJEXT) \ - oggTranscode-fileRepository.$(OBJEXT) \ - oggTranscode-rawMediaPacket.$(OBJEXT) \ - oggTranscode-mediaDecoder.$(OBJEXT) \ - oggTranscode-mediaEncoder.$(OBJEXT) \ - oggTranscode-mediaConverter.$(OBJEXT) \ - oggTranscode-oggDecoder.$(OBJEXT) \ - oggTranscode-oggStreamDecoder.$(OBJEXT) \ - oggTranscode-oggPage.$(OBJEXT) \ - oggTranscode-oggPacket.$(OBJEXT) \ - oggTranscode-ringbuffer.$(OBJEXT) \ - oggTranscode-oggRingbuffer.$(OBJEXT) \ - oggTranscode-crc.$(OBJEXT) \ - oggTranscode-granulePosInterpreter.$(OBJEXT) \ - oggTranscode-mediaOutputDecoder.$(OBJEXT) \ - oggTranscode-mediaInputEncoder.$(OBJEXT) \ - oggTranscode-streamSerializer.$(OBJEXT) \ - oggTranscode-oggBOSExtractorFactory.$(OBJEXT) \ - oggTranscode-oggStreamEncoder.$(OBJEXT) \ - oggTranscode-oggEncoder.$(OBJEXT) \ - oggTranscode-streamExtractor.$(OBJEXT) \ - oggTranscode-streamParameter.$(OBJEXT) \ - oggTranscode-streamMux.$(OBJEXT) \ - oggTranscode-bufferRepository.$(OBJEXT) \ - oggTranscode-oggComment.$(OBJEXT) -am__objects_37 = oggTranscode-theoraPosInterpreter.$(OBJEXT) \ - oggTranscode-theoraStreamParameter.$(OBJEXT) \ - oggTranscode-theoraExtractor.$(OBJEXT) -am__objects_38 = oggTranscode-vorbisPosInterpreter.$(OBJEXT) \ - oggTranscode-vorbisStreamParameter.$(OBJEXT) \ - oggTranscode-vorbisExtractor.$(OBJEXT) -am__objects_39 = oggTranscode-katePosInterpreter.$(OBJEXT) \ - oggTranscode-kateStreamParameter.$(OBJEXT) \ - oggTranscode-kateExtractor.$(OBJEXT) -am__objects_40 = oggTranscode-theoraDecoder.$(OBJEXT) \ - oggTranscode-theoraEncoder.$(OBJEXT) -am__objects_41 = oggTranscode-vorbisDecoder.$(OBJEXT) \ - oggTranscode-vorbisEncoder.$(OBJEXT) \ - oggTranscode-audioPacket.$(OBJEXT) \ - oggTranscode-audioConverter.$(OBJEXT) -am__objects_42 = oggTranscode-cmdlineextractor.$(OBJEXT) \ - oggTranscode-basePlane.$(OBJEXT) \ - oggTranscode-rgbPlane.$(OBJEXT) \ - oggTranscode-blendElement.$(OBJEXT) -am__objects_43 = oggTranscode-effector.$(OBJEXT) \ - oggTranscode-crossfader.$(OBJEXT) \ - oggTranscode-plainPicture.$(OBJEXT) \ - oggTranscode-lowpassEffect.$(OBJEXT) \ - oggTranscode-kenburnseffect.$(OBJEXT) \ - oggTranscode-pictureResize.$(OBJEXT) \ - oggTranscode-pictureBlend.$(OBJEXT) \ - oggTranscode-pictureLoader.$(OBJEXT) -am__objects_44 = oggTranscode-hookHandler.$(OBJEXT) \ - oggTranscode-videoHook.$(OBJEXT) \ - oggTranscode-audioHook.$(OBJEXT) -@WANT_OGGRESIZE_TRUE@am_oggTranscode_OBJECTS = $(am__objects_36) \ -@WANT_OGGRESIZE_TRUE@ $(am__objects_37) $(am__objects_38) \ -@WANT_OGGRESIZE_TRUE@ $(am__objects_39) $(am__objects_40) \ -@WANT_OGGRESIZE_TRUE@ $(am__objects_41) $(am__objects_7) \ -@WANT_OGGRESIZE_TRUE@ $(am__objects_42) $(am__objects_43) \ -@WANT_OGGRESIZE_TRUE@ $(am__objects_44) \ -@WANT_OGGRESIZE_TRUE@ oggTranscode-oggTranscode.$(OBJEXT) -oggTranscode_OBJECTS = $(am_oggTranscode_OBJECTS) -@WANT_OGGRESIZE_TRUE@oggTranscode_DEPENDENCIES = \ -@WANT_OGGRESIZE_TRUE@ $(am__DEPENDENCIES_1) \ -@WANT_OGGRESIZE_TRUE@ $(am__DEPENDENCIES_1) \ -@WANT_OGGRESIZE_TRUE@ $(am__DEPENDENCIES_1) \ -@WANT_OGGRESIZE_TRUE@ $(am__DEPENDENCIES_1) \ -@WANT_OGGRESIZE_TRUE@ $(am__DEPENDENCIES_1) \ -@WANT_OGGRESIZE_TRUE@ $(am__DEPENDENCIES_1) -oggTranscode_LINK = $(CXXLD) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) \ - $(AM_LDFLAGS) $(LDFLAGS) -o $@ -DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir) -depcomp = $(SHELL) $(top_srcdir)/admin/depcomp -am__depfiles_maybe = depfiles -am__mv = mv -f -COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ - $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -CCLD = $(CC) -LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@ -CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \ - $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -CXXLD = $(CXX) -CXXLINK = $(CXXLD) $(AM_CXXFLAGS) $(CXXFLAGS) $(AM_LDFLAGS) $(LDFLAGS) \ - -o $@ -SOURCES = $(oggCat_SOURCES) $(oggCut_SOURCES) $(oggDump_SOURCES) \ - $(oggJoin_SOURCES) $(oggLength_SOURCES) $(oggScroll_SOURCES) \ - $(oggSilence_SOURCES) $(oggSplit_SOURCES) $(oggThumb_SOURCES) \ - $(oggTranscode_SOURCES) -DIST_SOURCES = $(oggCat_SOURCES) $(oggCut_SOURCES) $(oggDump_SOURCES) \ - $(oggJoin_SOURCES) $(oggLength_SOURCES) \ - $(am__oggScroll_SOURCES_DIST) $(am__oggSilence_SOURCES_DIST) \ - $(oggSplit_SOURCES) $(am__oggThumb_SOURCES_DIST) \ - $(am__oggTranscode_SOURCES_DIST) -ETAGS = etags -CTAGS = ctags -DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) -ACLOCAL = @ACLOCAL@ -AMTAR = @AMTAR@ -AUTOCONF = @AUTOCONF@ -AUTOHEADER = @AUTOHEADER@ -AUTOMAKE = @AUTOMAKE@ -AWK = @AWK@ -CC = @CC@ -CCDEPMODE = @CCDEPMODE@ -CFLAGS = @CFLAGS@ -CPPFLAGS = @CPPFLAGS@ -CXX = @CXX@ -CXXCPP = @CXXCPP@ -CXXDEPMODE = @CXXDEPMODE@ -CXXFLAGS = @CXXFLAGS@ -CYGPATH_W = @CYGPATH_W@ -DEFS = @DEFS@ -DEPDIR = @DEPDIR@ -ECHO_C = @ECHO_C@ -ECHO_N = @ECHO_N@ -ECHO_T = @ECHO_T@ -EGREP = @EGREP@ -EXEEXT = @EXEEXT@ -GD_CFLAGS = @GD_CFLAGS@ -GD_CONFIG = @GD_CONFIG@ -GD_LIBS = @GD_LIBS@ -GREP = @GREP@ -INSTALL = @INSTALL@ -INSTALL_DATA = @INSTALL_DATA@ -INSTALL_PROGRAM = @INSTALL_PROGRAM@ -INSTALL_SCRIPT = @INSTALL_SCRIPT@ -INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ -LDFLAGS = @LDFLAGS@ -LIBOBJS = @LIBOBJS@ -LIBS = @LIBS@ -LTLIBOBJS = @LTLIBOBJS@ -MAKEINFO = @MAKEINFO@ -MKDIR_P = @MKDIR_P@ -OBJEXT = @OBJEXT@ -OGG_CFLAGS = @OGG_CFLAGS@ -OGG_LIBS = @OGG_LIBS@ -PACKAGE = @PACKAGE@ -PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ -PACKAGE_NAME = @PACKAGE_NAME@ -PACKAGE_STRING = @PACKAGE_STRING@ -PACKAGE_TARNAME = @PACKAGE_TARNAME@ -PACKAGE_VERSION = @PACKAGE_VERSION@ -PATH_SEPARATOR = @PATH_SEPARATOR@ -PKG_CONFIG = @PKG_CONFIG@ -RANLIB = @RANLIB@ -SDL_CFLAGS = @SDL_CFLAGS@ -SDL_LIBS = @SDL_LIBS@ -SET_MAKE = @SET_MAKE@ -SHELL = @SHELL@ -STRIP = @STRIP@ -THEORADEC_CFLAGS = @THEORADEC_CFLAGS@ -THEORADEC_LIBS = @THEORADEC_LIBS@ -THEORAENC_CFLAGS = @THEORAENC_CFLAGS@ -THEORAENC_LIBS = @THEORAENC_LIBS@ -VERSION = @VERSION@ -VORBISENC_CFLAGS = @VORBISENC_CFLAGS@ -VORBISENC_LIBS = @VORBISENC_LIBS@ -VORBIS_CFLAGS = @VORBIS_CFLAGS@ -VORBIS_LIBS = @VORBIS_LIBS@ -abs_builddir = @abs_builddir@ -abs_srcdir = @abs_srcdir@ -abs_top_builddir = @abs_top_builddir@ -abs_top_srcdir = @abs_top_srcdir@ -ac_ct_CC = @ac_ct_CC@ -ac_ct_CXX = @ac_ct_CXX@ -am__include = @am__include@ -am__leading_dot = @am__leading_dot@ -am__quote = @am__quote@ -am__tar = @am__tar@ -am__untar = @am__untar@ -bindir = @bindir@ -build_alias = @build_alias@ -builddir = @builddir@ -datadir = @datadir@ -datarootdir = @datarootdir@ -docdir = @docdir@ -dvidir = @dvidir@ -exec_prefix = @exec_prefix@ -host_alias = @host_alias@ -htmldir = @htmldir@ -includedir = @includedir@ -infodir = @infodir@ -install_sh = @install_sh@ -libdir = @libdir@ -libexecdir = @libexecdir@ -localedir = @localedir@ -localstatedir = @localstatedir@ -mandir = @mandir@ -mkdir_p = @mkdir_p@ -oldincludedir = @oldincludedir@ -pdfdir = @pdfdir@ -prefix = @prefix@ -program_transform_name = @program_transform_name@ -psdir = @psdir@ -sbindir = @sbindir@ -sharedstatedir = @sharedstatedir@ -srcdir = @srcdir@ -sysconfdir = @sysconfdir@ -target_alias = @target_alias@ -top_build_prefix = @top_build_prefix@ -top_builddir = @top_builddir@ -top_srcdir = @top_srcdir@ -SRC_CORE = mediaUnit.cpp mediaRepository.cpp fileRepository.cpp rawMediaPacket.cpp \ - mediaDecoder.cpp mediaEncoder.cpp mediaConverter.cpp \ - oggDecoder.cpp oggStreamDecoder.cpp \ - oggPage.cpp oggPacket.cpp ringbuffer.cpp oggRingbuffer.cpp crc.cpp \ - granulePosInterpreter.cpp mediaOutputDecoder.cpp mediaInputEncoder.cpp \ - streamSerializer.cpp oggBOSExtractorFactory.cpp \ - oggStreamEncoder.cpp oggEncoder.cpp streamExtractor.cpp streamParameter.cpp \ - streamMux.cpp bufferRepository.cpp oggComment.cpp - -SRC_ADDITIONAL = cmdlineextractor.cpp basePlane.cpp rgbPlane.cpp blendElement.cpp -SRC_OUTPUT = SDLvideoOutput.cpp - -# Theora independed information -SRC_THEORA_INDEP = theoraPosInterpreter.cpp theoraStreamParameter.cpp theoraExtractor.cpp -SRC_THEORA_DEP = theoraDecoder.cpp theoraEncoder.cpp -HDR_THEORA = theoraHeader.h -SRC_VORBIS_INDEP = vorbisPosInterpreter.cpp vorbisStreamParameter.cpp vorbisExtractor.cpp -# SRC_VORBIS_DEP = vorbisDecoder.cpp audioPacket.cpp -SRC_VORBIS_DEP = vorbisDecoder.cpp vorbisEncoder.cpp audioPacket.cpp audioConverter.cpp -HDR_VORBIS = vorbisHeader.h -SRC_KATE_INDEP = katePosInterpreter.cpp kateStreamParameter.cpp kateExtractor.cpp -SRC_SDL = SDLvideoOutput.cpp -HDR_SDL = SDLvideoOutput.h -LIBRESAMPLE = libresample/filterkit.c libresample/resample.c libresample/resamplesubs.c -EFFECTORS = effector.cpp crossfader.cpp plainPicture.cpp lowpassEffect.cpp kenburnseffect.cpp \ - pictureResize.cpp pictureBlend.cpp pictureLoader.cpp - -HOOKS = hookHandler.cpp videoHook.cpp audioHook.cpp -ADDHEADERS = refObject.h definition.h oggHeader.h oggTypes.h audioPacket.h \ - streamConfig.h $(HDR_VORBIS) $(HDR_THEORA) $(HDR_SDL) - -oggSplit_SOURCES = $(SRC_CORE) $(SRC_ADDITIONAL) $(SRC_THEORA_INDEP) $(SRC_VORBIS_INDEP) $(SRC_KATE_INDEP) oggSplit.cpp -oggDump_SOURCES = $(SRC_CORE) $(SRC_ADDITIONAL) $(SRC_THEORA_INDEP) $(SRC_VORBIS_INDEP) $(SRC_KATE_INDEP) oggDump.cpp -oggJoin_SOURCES = $(SRC_CORE) $(SRC_ADDITIONAL) $(SRC_THEORA_INDEP) $(SRC_VORBIS_INDEP) $(SRC_KATE_INDEP) oggJoin.cpp -oggCut_SOURCES = $(SRC_CORE) $(SRC_ADDITIONAL) $(SRC_THEORA_INDEP) $(SRC_VORBIS_INDEP) $(SRC_KATE_INDEP) oggCut.cpp -oggCat_SOURCES = $(SRC_CORE) $(SRC_THEORA_INDEP) $(SRC_VORBIS_INDEP) $(SRC_KATE_INDEP) $(SRC_THEORA_DEP) $(SRC_VORBIS_DEP) $(SRC_GD) $(LIBRESAMPLE) $(SRC_ADDITIONAL) $(EFFECTORS) $(HOOKS) oggCat.cpp -oggCat_CXXFLAGS = $(OGG_CFLAGS) $(THEORAENC_CFLAGS) $(THEORADEC_CFLAGS) $(VORBIS_CFLAGS) $(VORBISENC_CFLAGS) $(GD_CFLAGS) -oggCat_LDADD = $(OGG_LIBS) $(THEORAENC_LIBS) $(THEORADEC_LIBS) $(VORBIS_LIBS) $(VORBISENC_LIBS) $(GD_LIBS) -oggLength_SOURCES = $(SRC_CORE) $(SRC_ADDITIONAL) $(SRC_THEORA_INDEP) $(SRC_VORBIS_INDEP) $(SRC_KATE_INDEP) oggLength.cpp -@WANT_OGGSCROLL_TRUE@oggScroll_SOURCES = $(SRC_CORE) $(SRC_THEORA_INDEP) $(SRC_VORBIS_INDEP) $(SRC_THEORA_DEP) $(SRC_KATE_INDEP) $(SRC_SDL) $(SRC_ADDITIONAL) oggScroll.cpp -@WANT_OGGSCROLL_TRUE@oggScroll_CXXFLAGS = $(OGG_CFLAGS) $(VORBIS_CFLAGS) $(THEORAENC_CFLAGS) $(THEORADEC_CFLAGS) $(SDL_CFLAGS) -@WANT_OGGSCROLL_TRUE@oggScroll_LDADD = $(OGG_LIBS) $(VORBIS_LIBS) $(THEORAENC_LIBS) $(THEORADEC_LIBS) $(SDL_LIBS) -@WANT_OGGTHUMB_TRUE@oggThumb_SOURCES = $(SRC_CORE) $(SRC_THEORA_INDEP) $(SRC_VORBIS_INDEP) $(SRC_KATE_INDEP) $(SRC_THEORA_DEP) $(SRC_GD) $(EFFECTORS) $(SRC_ADDITIONAL) oggThumb.cpp -@WANT_OGGTHUMB_TRUE@oggThumb_CXXFLAGS = $(OGG_CFLAGS) $(THEORAENC_CFLAGS) $(THEORADEC_CFLAGS) $(GD_CFLAGS) -@WANT_OGGTHUMB_TRUE@oggThumb_LDADD = $(OGG_LIBS) $(THEORAENC_LIBS) $(THEORADEC_LIBS) $(GD_LIBS) -@WANT_OGGRESIZE_TRUE@oggTranscode_SOURCES = $(SRC_CORE) $(SRC_THEORA_INDEP) $(SRC_VORBIS_INDEP) $(SRC_KATE_INDEP) $(SRC_THEORA_DEP) $(SRC_VORBIS_DEP) $(SRC_GD) $(LIBRESAMPLE) $(SRC_ADDITIONAL) $(EFFECTORS) $(HOOKS) oggTranscode.cpp -@WANT_OGGRESIZE_TRUE@oggTranscode_CXXFLAGS = $(OGG_CFLAGS) $(THEORAENC_CFLAGS) $(THEORADEC_CFLAGS) $(VORBIS_CFLAGS) $(VORBISENC_CFLAGS) $(GD_CFLAGS) -@WANT_OGGRESIZE_TRUE@oggTranscode_LDADD = $(OGG_LIBS) $(THEORAENC_LIBS) $(THEORADEC_LIBS) $(VORBIS_LIBS) $(VORBISENC_LIBS) $(GD_LIBS) -@WANT_OGGSILENCE_TRUE@oggSilence_SOURCES = $(SRC_CORE) $(SRC_THEORA_INDEP) $(SRC_VORBIS_INDEP) $(SRC_KATE_INDEP) $(SRC_VORBIS_DEP) $(LIBRESAMPLE) $(SRC_ADDITIONAL) oggSilence.cpp -@WANT_OGGSILENCE_TRUE@oggSilence_CXXFLAGS = $(OGG_CFLAGS) $(VORBIS_CFLAGS) $(VORBISENC_CFLAGS) -@WANT_OGGSILENCE_TRUE@oggSilence_LDADD = $(OGG_LIBS) $(VORBIS_LIBS) $(VORBISENC_LIBS) -all: all-am - -.SUFFIXES: -.SUFFIXES: .c .cpp .o .obj -$(srcdir)/makefile.in: $(srcdir)/makefile.am $(am__configure_deps) - @for dep in $?; do \ - case '$(am__configure_deps)' in \ - *$$dep*) \ - ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ - && { if test -f $@; then exit 0; else break; fi; }; \ - exit 1;; \ - esac; \ - done; \ - echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu src/makefile'; \ - $(am__cd) $(top_srcdir) && \ - $(AUTOMAKE) --gnu src/makefile -.PRECIOUS: makefile -makefile: $(srcdir)/makefile.in $(top_builddir)/config.status - @case '$?' in \ - *config.status*) \ - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ - *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ - esac; - -$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh - -$(top_srcdir)/configure: $(am__configure_deps) - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh -$(ACLOCAL_M4): $(am__aclocal_m4_deps) - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh -$(am__aclocal_m4_deps): -install-binPROGRAMS: $(bin_PROGRAMS) - @$(NORMAL_INSTALL) - test -z "$(bindir)" || $(MKDIR_P) "$(DESTDIR)$(bindir)" - @list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \ - for p in $$list; do echo "$$p $$p"; done | \ - sed 's/$(EXEEXT)$$//' | \ - while read p p1; do if test -f $$p; \ - then echo "$$p"; echo "$$p"; else :; fi; \ - done | \ - sed -e 'p;s,.*/,,;n;h' -e 's|.*|.|' \ - -e 'p;x;s,.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/' | \ - sed 'N;N;N;s,\n, ,g' | \ - $(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1 } \ - { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \ - if ($$2 == $$4) files[d] = files[d] " " $$1; \ - else { print "f", $$3 "/" $$4, $$1; } } \ - END { for (d in files) print "f", d, files[d] }' | \ - while read type dir files; do \ - if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \ - test -z "$$files" || { \ - echo " $(INSTALL_PROGRAM_ENV) $(INSTALL_PROGRAM) $$files '$(DESTDIR)$(bindir)$$dir'"; \ - $(INSTALL_PROGRAM_ENV) $(INSTALL_PROGRAM) $$files "$(DESTDIR)$(bindir)$$dir" || exit $$?; \ - } \ - ; done - -uninstall-binPROGRAMS: - @$(NORMAL_UNINSTALL) - @list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \ - files=`for p in $$list; do echo "$$p"; done | \ - sed -e 'h;s,^.*/,,;s/$(EXEEXT)$$//;$(transform)' \ - -e 's/$$/$(EXEEXT)/' `; \ - test -n "$$list" || exit 0; \ - echo " ( cd '$(DESTDIR)$(bindir)' && rm -f" $$files ")"; \ - cd "$(DESTDIR)$(bindir)" && rm -f $$files - -clean-binPROGRAMS: - -test -z "$(bin_PROGRAMS)" || rm -f $(bin_PROGRAMS) -oggCat$(EXEEXT): $(oggCat_OBJECTS) $(oggCat_DEPENDENCIES) - @rm -f oggCat$(EXEEXT) - $(oggCat_LINK) $(oggCat_OBJECTS) $(oggCat_LDADD) $(LIBS) -oggCut$(EXEEXT): $(oggCut_OBJECTS) $(oggCut_DEPENDENCIES) - @rm -f oggCut$(EXEEXT) - $(CXXLINK) $(oggCut_OBJECTS) $(oggCut_LDADD) $(LIBS) -oggDump$(EXEEXT): $(oggDump_OBJECTS) $(oggDump_DEPENDENCIES) - @rm -f oggDump$(EXEEXT) - $(CXXLINK) $(oggDump_OBJECTS) $(oggDump_LDADD) $(LIBS) -oggJoin$(EXEEXT): $(oggJoin_OBJECTS) $(oggJoin_DEPENDENCIES) - @rm -f oggJoin$(EXEEXT) - $(CXXLINK) $(oggJoin_OBJECTS) $(oggJoin_LDADD) $(LIBS) -oggLength$(EXEEXT): $(oggLength_OBJECTS) $(oggLength_DEPENDENCIES) - @rm -f oggLength$(EXEEXT) - $(CXXLINK) $(oggLength_OBJECTS) $(oggLength_LDADD) $(LIBS) -oggScroll$(EXEEXT): $(oggScroll_OBJECTS) $(oggScroll_DEPENDENCIES) - @rm -f oggScroll$(EXEEXT) - $(oggScroll_LINK) $(oggScroll_OBJECTS) $(oggScroll_LDADD) $(LIBS) -oggSilence$(EXEEXT): $(oggSilence_OBJECTS) $(oggSilence_DEPENDENCIES) - @rm -f oggSilence$(EXEEXT) - $(oggSilence_LINK) $(oggSilence_OBJECTS) $(oggSilence_LDADD) $(LIBS) -oggSplit$(EXEEXT): $(oggSplit_OBJECTS) $(oggSplit_DEPENDENCIES) - @rm -f oggSplit$(EXEEXT) - $(CXXLINK) $(oggSplit_OBJECTS) $(oggSplit_LDADD) $(LIBS) -oggThumb$(EXEEXT): $(oggThumb_OBJECTS) $(oggThumb_DEPENDENCIES) - @rm -f oggThumb$(EXEEXT) - $(oggThumb_LINK) $(oggThumb_OBJECTS) $(oggThumb_LDADD) $(LIBS) -oggTranscode$(EXEEXT): $(oggTranscode_OBJECTS) $(oggTranscode_DEPENDENCIES) - @rm -f oggTranscode$(EXEEXT) - $(oggTranscode_LINK) $(oggTranscode_OBJECTS) $(oggTranscode_LDADD) $(LIBS) - -mostlyclean-compile: - -rm -f *.$(OBJEXT) - -distclean-compile: - -rm -f *.tab.c - -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/basePlane.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/blendElement.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/bufferRepository.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/cmdlineextractor.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/crc.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fileRepository.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/filterkit.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/granulePosInterpreter.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/kateExtractor.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/katePosInterpreter.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/kateStreamParameter.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mediaConverter.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mediaDecoder.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mediaEncoder.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mediaInputEncoder.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mediaOutputDecoder.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mediaRepository.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/mediaUnit.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggBOSExtractorFactory.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggCat-audioConverter.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggCat-audioHook.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggCat-audioPacket.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggCat-basePlane.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggCat-blendElement.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggCat-bufferRepository.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggCat-cmdlineextractor.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggCat-crc.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggCat-crossfader.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggCat-effector.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggCat-fileRepository.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggCat-granulePosInterpreter.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggCat-hookHandler.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggCat-kateExtractor.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggCat-katePosInterpreter.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggCat-kateStreamParameter.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggCat-kenburnseffect.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggCat-lowpassEffect.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggCat-mediaConverter.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggCat-mediaDecoder.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggCat-mediaEncoder.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggCat-mediaInputEncoder.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggCat-mediaOutputDecoder.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggCat-mediaRepository.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggCat-mediaUnit.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggCat-oggBOSExtractorFactory.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggCat-oggCat.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggCat-oggComment.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggCat-oggDecoder.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggCat-oggEncoder.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggCat-oggPacket.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggCat-oggPage.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggCat-oggRingbuffer.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggCat-oggStreamDecoder.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggCat-oggStreamEncoder.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggCat-pictureBlend.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggCat-pictureLoader.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggCat-pictureResize.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggCat-plainPicture.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggCat-rawMediaPacket.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggCat-rgbPlane.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggCat-ringbuffer.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggCat-streamExtractor.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggCat-streamMux.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggCat-streamParameter.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggCat-streamSerializer.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggCat-theoraDecoder.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggCat-theoraEncoder.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggCat-theoraExtractor.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggCat-theoraPosInterpreter.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggCat-theoraStreamParameter.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggCat-videoHook.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggCat-vorbisDecoder.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggCat-vorbisEncoder.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggCat-vorbisExtractor.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggCat-vorbisPosInterpreter.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggCat-vorbisStreamParameter.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggComment.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggCut.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggDecoder.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggDump.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggEncoder.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggJoin.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggLength.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggPacket.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggPage.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggRingbuffer.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggScroll-SDLvideoOutput.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggScroll-basePlane.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggScroll-blendElement.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggScroll-bufferRepository.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggScroll-cmdlineextractor.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggScroll-crc.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggScroll-fileRepository.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggScroll-granulePosInterpreter.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggScroll-kateExtractor.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggScroll-katePosInterpreter.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggScroll-kateStreamParameter.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggScroll-mediaConverter.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggScroll-mediaDecoder.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggScroll-mediaEncoder.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggScroll-mediaInputEncoder.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggScroll-mediaOutputDecoder.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggScroll-mediaRepository.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggScroll-mediaUnit.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggScroll-oggBOSExtractorFactory.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggScroll-oggComment.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggScroll-oggDecoder.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggScroll-oggEncoder.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggScroll-oggPacket.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggScroll-oggPage.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggScroll-oggRingbuffer.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggScroll-oggScroll.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggScroll-oggStreamDecoder.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggScroll-oggStreamEncoder.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggScroll-rawMediaPacket.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggScroll-rgbPlane.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggScroll-ringbuffer.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggScroll-streamExtractor.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggScroll-streamMux.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggScroll-streamParameter.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggScroll-streamSerializer.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggScroll-theoraDecoder.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggScroll-theoraEncoder.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggScroll-theoraExtractor.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggScroll-theoraPosInterpreter.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggScroll-theoraStreamParameter.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggScroll-vorbisExtractor.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggScroll-vorbisPosInterpreter.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggScroll-vorbisStreamParameter.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggSilence-audioConverter.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggSilence-audioPacket.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggSilence-basePlane.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggSilence-blendElement.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggSilence-bufferRepository.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggSilence-cmdlineextractor.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggSilence-crc.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggSilence-fileRepository.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggSilence-granulePosInterpreter.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggSilence-kateExtractor.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggSilence-katePosInterpreter.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggSilence-kateStreamParameter.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggSilence-mediaConverter.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggSilence-mediaDecoder.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggSilence-mediaEncoder.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggSilence-mediaInputEncoder.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggSilence-mediaOutputDecoder.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggSilence-mediaRepository.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggSilence-mediaUnit.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggSilence-oggBOSExtractorFactory.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggSilence-oggComment.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggSilence-oggDecoder.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggSilence-oggEncoder.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggSilence-oggPacket.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggSilence-oggPage.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggSilence-oggRingbuffer.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggSilence-oggSilence.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggSilence-oggStreamDecoder.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggSilence-oggStreamEncoder.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggSilence-rawMediaPacket.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggSilence-rgbPlane.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggSilence-ringbuffer.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggSilence-streamExtractor.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggSilence-streamMux.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggSilence-streamParameter.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggSilence-streamSerializer.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggSilence-theoraExtractor.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggSilence-theoraPosInterpreter.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggSilence-theoraStreamParameter.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggSilence-vorbisDecoder.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggSilence-vorbisEncoder.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggSilence-vorbisExtractor.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggSilence-vorbisPosInterpreter.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggSilence-vorbisStreamParameter.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggSplit.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggStreamDecoder.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggStreamEncoder.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggThumb-basePlane.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggThumb-blendElement.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggThumb-bufferRepository.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggThumb-cmdlineextractor.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggThumb-crc.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggThumb-crossfader.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggThumb-effector.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggThumb-fileRepository.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggThumb-granulePosInterpreter.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggThumb-kateExtractor.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggThumb-katePosInterpreter.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggThumb-kateStreamParameter.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggThumb-kenburnseffect.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggThumb-lowpassEffect.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggThumb-mediaConverter.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggThumb-mediaDecoder.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggThumb-mediaEncoder.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggThumb-mediaInputEncoder.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggThumb-mediaOutputDecoder.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggThumb-mediaRepository.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggThumb-mediaUnit.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggThumb-oggBOSExtractorFactory.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggThumb-oggComment.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggThumb-oggDecoder.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggThumb-oggEncoder.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggThumb-oggPacket.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggThumb-oggPage.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggThumb-oggRingbuffer.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggThumb-oggStreamDecoder.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggThumb-oggStreamEncoder.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggThumb-oggThumb.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggThumb-pictureBlend.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggThumb-pictureLoader.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggThumb-pictureResize.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggThumb-plainPicture.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggThumb-rawMediaPacket.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggThumb-rgbPlane.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggThumb-ringbuffer.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggThumb-streamExtractor.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggThumb-streamMux.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggThumb-streamParameter.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggThumb-streamSerializer.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggThumb-theoraDecoder.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggThumb-theoraEncoder.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggThumb-theoraExtractor.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggThumb-theoraPosInterpreter.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggThumb-theoraStreamParameter.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggThumb-vorbisExtractor.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggThumb-vorbisPosInterpreter.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggThumb-vorbisStreamParameter.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggTranscode-audioConverter.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggTranscode-audioHook.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggTranscode-audioPacket.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggTranscode-basePlane.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggTranscode-blendElement.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggTranscode-bufferRepository.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggTranscode-cmdlineextractor.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggTranscode-crc.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggTranscode-crossfader.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggTranscode-effector.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggTranscode-fileRepository.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggTranscode-granulePosInterpreter.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggTranscode-hookHandler.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggTranscode-kateExtractor.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggTranscode-katePosInterpreter.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggTranscode-kateStreamParameter.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggTranscode-kenburnseffect.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggTranscode-lowpassEffect.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggTranscode-mediaConverter.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggTranscode-mediaDecoder.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggTranscode-mediaEncoder.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggTranscode-mediaInputEncoder.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggTranscode-mediaOutputDecoder.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggTranscode-mediaRepository.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggTranscode-mediaUnit.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggTranscode-oggBOSExtractorFactory.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggTranscode-oggComment.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggTranscode-oggDecoder.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggTranscode-oggEncoder.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggTranscode-oggPacket.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggTranscode-oggPage.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggTranscode-oggRingbuffer.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggTranscode-oggStreamDecoder.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggTranscode-oggStreamEncoder.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggTranscode-oggTranscode.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggTranscode-pictureBlend.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggTranscode-pictureLoader.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggTranscode-pictureResize.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggTranscode-plainPicture.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggTranscode-rawMediaPacket.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggTranscode-rgbPlane.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggTranscode-ringbuffer.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggTranscode-streamExtractor.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggTranscode-streamMux.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggTranscode-streamParameter.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggTranscode-streamSerializer.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggTranscode-theoraDecoder.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggTranscode-theoraEncoder.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggTranscode-theoraExtractor.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggTranscode-theoraPosInterpreter.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggTranscode-theoraStreamParameter.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggTranscode-videoHook.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggTranscode-vorbisDecoder.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggTranscode-vorbisEncoder.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggTranscode-vorbisExtractor.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggTranscode-vorbisPosInterpreter.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/oggTranscode-vorbisStreamParameter.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/rawMediaPacket.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/resample.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/resamplesubs.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/rgbPlane.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ringbuffer.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/streamExtractor.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/streamMux.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/streamParameter.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/streamSerializer.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/theoraExtractor.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/theoraPosInterpreter.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/theoraStreamParameter.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/vorbisExtractor.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/vorbisPosInterpreter.Po@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/vorbisStreamParameter.Po@am__quote@ - -.c.o: -@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< -@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(COMPILE) -c $< - -.c.obj: -@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'` -@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(COMPILE) -c `$(CYGPATH_W) '$<'` - -filterkit.o: libresample/filterkit.c -@am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT filterkit.o -MD -MP -MF $(DEPDIR)/filterkit.Tpo -c -o filterkit.o `test -f 'libresample/filterkit.c' || echo '$(srcdir)/'`libresample/filterkit.c -@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/filterkit.Tpo $(DEPDIR)/filterkit.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='libresample/filterkit.c' object='filterkit.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o filterkit.o `test -f 'libresample/filterkit.c' || echo '$(srcdir)/'`libresample/filterkit.c - -filterkit.obj: libresample/filterkit.c -@am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT filterkit.obj -MD -MP -MF $(DEPDIR)/filterkit.Tpo -c -o filterkit.obj `if test -f 'libresample/filterkit.c'; then $(CYGPATH_W) 'libresample/filterkit.c'; else $(CYGPATH_W) '$(srcdir)/libresample/filterkit.c'; fi` -@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/filterkit.Tpo $(DEPDIR)/filterkit.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='libresample/filterkit.c' object='filterkit.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o filterkit.obj `if test -f 'libresample/filterkit.c'; then $(CYGPATH_W) 'libresample/filterkit.c'; else $(CYGPATH_W) '$(srcdir)/libresample/filterkit.c'; fi` - -resample.o: libresample/resample.c -@am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT resample.o -MD -MP -MF $(DEPDIR)/resample.Tpo -c -o resample.o `test -f 'libresample/resample.c' || echo '$(srcdir)/'`libresample/resample.c -@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/resample.Tpo $(DEPDIR)/resample.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='libresample/resample.c' object='resample.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o resample.o `test -f 'libresample/resample.c' || echo '$(srcdir)/'`libresample/resample.c - -resample.obj: libresample/resample.c -@am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT resample.obj -MD -MP -MF $(DEPDIR)/resample.Tpo -c -o resample.obj `if test -f 'libresample/resample.c'; then $(CYGPATH_W) 'libresample/resample.c'; else $(CYGPATH_W) '$(srcdir)/libresample/resample.c'; fi` -@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/resample.Tpo $(DEPDIR)/resample.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='libresample/resample.c' object='resample.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o resample.obj `if test -f 'libresample/resample.c'; then $(CYGPATH_W) 'libresample/resample.c'; else $(CYGPATH_W) '$(srcdir)/libresample/resample.c'; fi` - -resamplesubs.o: libresample/resamplesubs.c -@am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT resamplesubs.o -MD -MP -MF $(DEPDIR)/resamplesubs.Tpo -c -o resamplesubs.o `test -f 'libresample/resamplesubs.c' || echo '$(srcdir)/'`libresample/resamplesubs.c -@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/resamplesubs.Tpo $(DEPDIR)/resamplesubs.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='libresample/resamplesubs.c' object='resamplesubs.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o resamplesubs.o `test -f 'libresample/resamplesubs.c' || echo '$(srcdir)/'`libresample/resamplesubs.c - -resamplesubs.obj: libresample/resamplesubs.c -@am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT resamplesubs.obj -MD -MP -MF $(DEPDIR)/resamplesubs.Tpo -c -o resamplesubs.obj `if test -f 'libresample/resamplesubs.c'; then $(CYGPATH_W) 'libresample/resamplesubs.c'; else $(CYGPATH_W) '$(srcdir)/libresample/resamplesubs.c'; fi` -@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/resamplesubs.Tpo $(DEPDIR)/resamplesubs.Po -@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='libresample/resamplesubs.c' object='resamplesubs.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o resamplesubs.obj `if test -f 'libresample/resamplesubs.c'; then $(CYGPATH_W) 'libresample/resamplesubs.c'; else $(CYGPATH_W) '$(srcdir)/libresample/resamplesubs.c'; fi` - -.cpp.o: -@am__fastdepCXX_TRUE@ $(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXXCOMPILE) -c -o $@ $< - -.cpp.obj: -@am__fastdepCXX_TRUE@ $(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXXCOMPILE) -c -o $@ `$(CYGPATH_W) '$<'` - -oggCat-mediaUnit.o: mediaUnit.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -MT oggCat-mediaUnit.o -MD -MP -MF $(DEPDIR)/oggCat-mediaUnit.Tpo -c -o oggCat-mediaUnit.o `test -f 'mediaUnit.cpp' || echo '$(srcdir)/'`mediaUnit.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggCat-mediaUnit.Tpo $(DEPDIR)/oggCat-mediaUnit.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='mediaUnit.cpp' object='oggCat-mediaUnit.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -c -o oggCat-mediaUnit.o `test -f 'mediaUnit.cpp' || echo '$(srcdir)/'`mediaUnit.cpp - -oggCat-mediaUnit.obj: mediaUnit.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -MT oggCat-mediaUnit.obj -MD -MP -MF $(DEPDIR)/oggCat-mediaUnit.Tpo -c -o oggCat-mediaUnit.obj `if test -f 'mediaUnit.cpp'; then $(CYGPATH_W) 'mediaUnit.cpp'; else $(CYGPATH_W) '$(srcdir)/mediaUnit.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggCat-mediaUnit.Tpo $(DEPDIR)/oggCat-mediaUnit.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='mediaUnit.cpp' object='oggCat-mediaUnit.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -c -o oggCat-mediaUnit.obj `if test -f 'mediaUnit.cpp'; then $(CYGPATH_W) 'mediaUnit.cpp'; else $(CYGPATH_W) '$(srcdir)/mediaUnit.cpp'; fi` - -oggCat-mediaRepository.o: mediaRepository.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -MT oggCat-mediaRepository.o -MD -MP -MF $(DEPDIR)/oggCat-mediaRepository.Tpo -c -o oggCat-mediaRepository.o `test -f 'mediaRepository.cpp' || echo '$(srcdir)/'`mediaRepository.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggCat-mediaRepository.Tpo $(DEPDIR)/oggCat-mediaRepository.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='mediaRepository.cpp' object='oggCat-mediaRepository.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -c -o oggCat-mediaRepository.o `test -f 'mediaRepository.cpp' || echo '$(srcdir)/'`mediaRepository.cpp - -oggCat-mediaRepository.obj: mediaRepository.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -MT oggCat-mediaRepository.obj -MD -MP -MF $(DEPDIR)/oggCat-mediaRepository.Tpo -c -o oggCat-mediaRepository.obj `if test -f 'mediaRepository.cpp'; then $(CYGPATH_W) 'mediaRepository.cpp'; else $(CYGPATH_W) '$(srcdir)/mediaRepository.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggCat-mediaRepository.Tpo $(DEPDIR)/oggCat-mediaRepository.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='mediaRepository.cpp' object='oggCat-mediaRepository.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -c -o oggCat-mediaRepository.obj `if test -f 'mediaRepository.cpp'; then $(CYGPATH_W) 'mediaRepository.cpp'; else $(CYGPATH_W) '$(srcdir)/mediaRepository.cpp'; fi` - -oggCat-fileRepository.o: fileRepository.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -MT oggCat-fileRepository.o -MD -MP -MF $(DEPDIR)/oggCat-fileRepository.Tpo -c -o oggCat-fileRepository.o `test -f 'fileRepository.cpp' || echo '$(srcdir)/'`fileRepository.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggCat-fileRepository.Tpo $(DEPDIR)/oggCat-fileRepository.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='fileRepository.cpp' object='oggCat-fileRepository.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -c -o oggCat-fileRepository.o `test -f 'fileRepository.cpp' || echo '$(srcdir)/'`fileRepository.cpp - -oggCat-fileRepository.obj: fileRepository.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -MT oggCat-fileRepository.obj -MD -MP -MF $(DEPDIR)/oggCat-fileRepository.Tpo -c -o oggCat-fileRepository.obj `if test -f 'fileRepository.cpp'; then $(CYGPATH_W) 'fileRepository.cpp'; else $(CYGPATH_W) '$(srcdir)/fileRepository.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggCat-fileRepository.Tpo $(DEPDIR)/oggCat-fileRepository.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='fileRepository.cpp' object='oggCat-fileRepository.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -c -o oggCat-fileRepository.obj `if test -f 'fileRepository.cpp'; then $(CYGPATH_W) 'fileRepository.cpp'; else $(CYGPATH_W) '$(srcdir)/fileRepository.cpp'; fi` - -oggCat-rawMediaPacket.o: rawMediaPacket.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -MT oggCat-rawMediaPacket.o -MD -MP -MF $(DEPDIR)/oggCat-rawMediaPacket.Tpo -c -o oggCat-rawMediaPacket.o `test -f 'rawMediaPacket.cpp' || echo '$(srcdir)/'`rawMediaPacket.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggCat-rawMediaPacket.Tpo $(DEPDIR)/oggCat-rawMediaPacket.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='rawMediaPacket.cpp' object='oggCat-rawMediaPacket.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -c -o oggCat-rawMediaPacket.o `test -f 'rawMediaPacket.cpp' || echo '$(srcdir)/'`rawMediaPacket.cpp - -oggCat-rawMediaPacket.obj: rawMediaPacket.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -MT oggCat-rawMediaPacket.obj -MD -MP -MF $(DEPDIR)/oggCat-rawMediaPacket.Tpo -c -o oggCat-rawMediaPacket.obj `if test -f 'rawMediaPacket.cpp'; then $(CYGPATH_W) 'rawMediaPacket.cpp'; else $(CYGPATH_W) '$(srcdir)/rawMediaPacket.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggCat-rawMediaPacket.Tpo $(DEPDIR)/oggCat-rawMediaPacket.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='rawMediaPacket.cpp' object='oggCat-rawMediaPacket.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -c -o oggCat-rawMediaPacket.obj `if test -f 'rawMediaPacket.cpp'; then $(CYGPATH_W) 'rawMediaPacket.cpp'; else $(CYGPATH_W) '$(srcdir)/rawMediaPacket.cpp'; fi` - -oggCat-mediaDecoder.o: mediaDecoder.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -MT oggCat-mediaDecoder.o -MD -MP -MF $(DEPDIR)/oggCat-mediaDecoder.Tpo -c -o oggCat-mediaDecoder.o `test -f 'mediaDecoder.cpp' || echo '$(srcdir)/'`mediaDecoder.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggCat-mediaDecoder.Tpo $(DEPDIR)/oggCat-mediaDecoder.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='mediaDecoder.cpp' object='oggCat-mediaDecoder.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -c -o oggCat-mediaDecoder.o `test -f 'mediaDecoder.cpp' || echo '$(srcdir)/'`mediaDecoder.cpp - -oggCat-mediaDecoder.obj: mediaDecoder.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -MT oggCat-mediaDecoder.obj -MD -MP -MF $(DEPDIR)/oggCat-mediaDecoder.Tpo -c -o oggCat-mediaDecoder.obj `if test -f 'mediaDecoder.cpp'; then $(CYGPATH_W) 'mediaDecoder.cpp'; else $(CYGPATH_W) '$(srcdir)/mediaDecoder.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggCat-mediaDecoder.Tpo $(DEPDIR)/oggCat-mediaDecoder.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='mediaDecoder.cpp' object='oggCat-mediaDecoder.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -c -o oggCat-mediaDecoder.obj `if test -f 'mediaDecoder.cpp'; then $(CYGPATH_W) 'mediaDecoder.cpp'; else $(CYGPATH_W) '$(srcdir)/mediaDecoder.cpp'; fi` - -oggCat-mediaEncoder.o: mediaEncoder.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -MT oggCat-mediaEncoder.o -MD -MP -MF $(DEPDIR)/oggCat-mediaEncoder.Tpo -c -o oggCat-mediaEncoder.o `test -f 'mediaEncoder.cpp' || echo '$(srcdir)/'`mediaEncoder.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggCat-mediaEncoder.Tpo $(DEPDIR)/oggCat-mediaEncoder.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='mediaEncoder.cpp' object='oggCat-mediaEncoder.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -c -o oggCat-mediaEncoder.o `test -f 'mediaEncoder.cpp' || echo '$(srcdir)/'`mediaEncoder.cpp - -oggCat-mediaEncoder.obj: mediaEncoder.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -MT oggCat-mediaEncoder.obj -MD -MP -MF $(DEPDIR)/oggCat-mediaEncoder.Tpo -c -o oggCat-mediaEncoder.obj `if test -f 'mediaEncoder.cpp'; then $(CYGPATH_W) 'mediaEncoder.cpp'; else $(CYGPATH_W) '$(srcdir)/mediaEncoder.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggCat-mediaEncoder.Tpo $(DEPDIR)/oggCat-mediaEncoder.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='mediaEncoder.cpp' object='oggCat-mediaEncoder.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -c -o oggCat-mediaEncoder.obj `if test -f 'mediaEncoder.cpp'; then $(CYGPATH_W) 'mediaEncoder.cpp'; else $(CYGPATH_W) '$(srcdir)/mediaEncoder.cpp'; fi` - -oggCat-mediaConverter.o: mediaConverter.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -MT oggCat-mediaConverter.o -MD -MP -MF $(DEPDIR)/oggCat-mediaConverter.Tpo -c -o oggCat-mediaConverter.o `test -f 'mediaConverter.cpp' || echo '$(srcdir)/'`mediaConverter.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggCat-mediaConverter.Tpo $(DEPDIR)/oggCat-mediaConverter.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='mediaConverter.cpp' object='oggCat-mediaConverter.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -c -o oggCat-mediaConverter.o `test -f 'mediaConverter.cpp' || echo '$(srcdir)/'`mediaConverter.cpp - -oggCat-mediaConverter.obj: mediaConverter.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -MT oggCat-mediaConverter.obj -MD -MP -MF $(DEPDIR)/oggCat-mediaConverter.Tpo -c -o oggCat-mediaConverter.obj `if test -f 'mediaConverter.cpp'; then $(CYGPATH_W) 'mediaConverter.cpp'; else $(CYGPATH_W) '$(srcdir)/mediaConverter.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggCat-mediaConverter.Tpo $(DEPDIR)/oggCat-mediaConverter.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='mediaConverter.cpp' object='oggCat-mediaConverter.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -c -o oggCat-mediaConverter.obj `if test -f 'mediaConverter.cpp'; then $(CYGPATH_W) 'mediaConverter.cpp'; else $(CYGPATH_W) '$(srcdir)/mediaConverter.cpp'; fi` - -oggCat-oggDecoder.o: oggDecoder.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -MT oggCat-oggDecoder.o -MD -MP -MF $(DEPDIR)/oggCat-oggDecoder.Tpo -c -o oggCat-oggDecoder.o `test -f 'oggDecoder.cpp' || echo '$(srcdir)/'`oggDecoder.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggCat-oggDecoder.Tpo $(DEPDIR)/oggCat-oggDecoder.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='oggDecoder.cpp' object='oggCat-oggDecoder.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -c -o oggCat-oggDecoder.o `test -f 'oggDecoder.cpp' || echo '$(srcdir)/'`oggDecoder.cpp - -oggCat-oggDecoder.obj: oggDecoder.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -MT oggCat-oggDecoder.obj -MD -MP -MF $(DEPDIR)/oggCat-oggDecoder.Tpo -c -o oggCat-oggDecoder.obj `if test -f 'oggDecoder.cpp'; then $(CYGPATH_W) 'oggDecoder.cpp'; else $(CYGPATH_W) '$(srcdir)/oggDecoder.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggCat-oggDecoder.Tpo $(DEPDIR)/oggCat-oggDecoder.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='oggDecoder.cpp' object='oggCat-oggDecoder.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -c -o oggCat-oggDecoder.obj `if test -f 'oggDecoder.cpp'; then $(CYGPATH_W) 'oggDecoder.cpp'; else $(CYGPATH_W) '$(srcdir)/oggDecoder.cpp'; fi` - -oggCat-oggStreamDecoder.o: oggStreamDecoder.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -MT oggCat-oggStreamDecoder.o -MD -MP -MF $(DEPDIR)/oggCat-oggStreamDecoder.Tpo -c -o oggCat-oggStreamDecoder.o `test -f 'oggStreamDecoder.cpp' || echo '$(srcdir)/'`oggStreamDecoder.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggCat-oggStreamDecoder.Tpo $(DEPDIR)/oggCat-oggStreamDecoder.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='oggStreamDecoder.cpp' object='oggCat-oggStreamDecoder.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -c -o oggCat-oggStreamDecoder.o `test -f 'oggStreamDecoder.cpp' || echo '$(srcdir)/'`oggStreamDecoder.cpp - -oggCat-oggStreamDecoder.obj: oggStreamDecoder.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -MT oggCat-oggStreamDecoder.obj -MD -MP -MF $(DEPDIR)/oggCat-oggStreamDecoder.Tpo -c -o oggCat-oggStreamDecoder.obj `if test -f 'oggStreamDecoder.cpp'; then $(CYGPATH_W) 'oggStreamDecoder.cpp'; else $(CYGPATH_W) '$(srcdir)/oggStreamDecoder.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggCat-oggStreamDecoder.Tpo $(DEPDIR)/oggCat-oggStreamDecoder.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='oggStreamDecoder.cpp' object='oggCat-oggStreamDecoder.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -c -o oggCat-oggStreamDecoder.obj `if test -f 'oggStreamDecoder.cpp'; then $(CYGPATH_W) 'oggStreamDecoder.cpp'; else $(CYGPATH_W) '$(srcdir)/oggStreamDecoder.cpp'; fi` - -oggCat-oggPage.o: oggPage.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -MT oggCat-oggPage.o -MD -MP -MF $(DEPDIR)/oggCat-oggPage.Tpo -c -o oggCat-oggPage.o `test -f 'oggPage.cpp' || echo '$(srcdir)/'`oggPage.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggCat-oggPage.Tpo $(DEPDIR)/oggCat-oggPage.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='oggPage.cpp' object='oggCat-oggPage.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -c -o oggCat-oggPage.o `test -f 'oggPage.cpp' || echo '$(srcdir)/'`oggPage.cpp - -oggCat-oggPage.obj: oggPage.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -MT oggCat-oggPage.obj -MD -MP -MF $(DEPDIR)/oggCat-oggPage.Tpo -c -o oggCat-oggPage.obj `if test -f 'oggPage.cpp'; then $(CYGPATH_W) 'oggPage.cpp'; else $(CYGPATH_W) '$(srcdir)/oggPage.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggCat-oggPage.Tpo $(DEPDIR)/oggCat-oggPage.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='oggPage.cpp' object='oggCat-oggPage.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -c -o oggCat-oggPage.obj `if test -f 'oggPage.cpp'; then $(CYGPATH_W) 'oggPage.cpp'; else $(CYGPATH_W) '$(srcdir)/oggPage.cpp'; fi` - -oggCat-oggPacket.o: oggPacket.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -MT oggCat-oggPacket.o -MD -MP -MF $(DEPDIR)/oggCat-oggPacket.Tpo -c -o oggCat-oggPacket.o `test -f 'oggPacket.cpp' || echo '$(srcdir)/'`oggPacket.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggCat-oggPacket.Tpo $(DEPDIR)/oggCat-oggPacket.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='oggPacket.cpp' object='oggCat-oggPacket.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -c -o oggCat-oggPacket.o `test -f 'oggPacket.cpp' || echo '$(srcdir)/'`oggPacket.cpp - -oggCat-oggPacket.obj: oggPacket.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -MT oggCat-oggPacket.obj -MD -MP -MF $(DEPDIR)/oggCat-oggPacket.Tpo -c -o oggCat-oggPacket.obj `if test -f 'oggPacket.cpp'; then $(CYGPATH_W) 'oggPacket.cpp'; else $(CYGPATH_W) '$(srcdir)/oggPacket.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggCat-oggPacket.Tpo $(DEPDIR)/oggCat-oggPacket.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='oggPacket.cpp' object='oggCat-oggPacket.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -c -o oggCat-oggPacket.obj `if test -f 'oggPacket.cpp'; then $(CYGPATH_W) 'oggPacket.cpp'; else $(CYGPATH_W) '$(srcdir)/oggPacket.cpp'; fi` - -oggCat-ringbuffer.o: ringbuffer.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -MT oggCat-ringbuffer.o -MD -MP -MF $(DEPDIR)/oggCat-ringbuffer.Tpo -c -o oggCat-ringbuffer.o `test -f 'ringbuffer.cpp' || echo '$(srcdir)/'`ringbuffer.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggCat-ringbuffer.Tpo $(DEPDIR)/oggCat-ringbuffer.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='ringbuffer.cpp' object='oggCat-ringbuffer.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -c -o oggCat-ringbuffer.o `test -f 'ringbuffer.cpp' || echo '$(srcdir)/'`ringbuffer.cpp - -oggCat-ringbuffer.obj: ringbuffer.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -MT oggCat-ringbuffer.obj -MD -MP -MF $(DEPDIR)/oggCat-ringbuffer.Tpo -c -o oggCat-ringbuffer.obj `if test -f 'ringbuffer.cpp'; then $(CYGPATH_W) 'ringbuffer.cpp'; else $(CYGPATH_W) '$(srcdir)/ringbuffer.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggCat-ringbuffer.Tpo $(DEPDIR)/oggCat-ringbuffer.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='ringbuffer.cpp' object='oggCat-ringbuffer.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -c -o oggCat-ringbuffer.obj `if test -f 'ringbuffer.cpp'; then $(CYGPATH_W) 'ringbuffer.cpp'; else $(CYGPATH_W) '$(srcdir)/ringbuffer.cpp'; fi` - -oggCat-oggRingbuffer.o: oggRingbuffer.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -MT oggCat-oggRingbuffer.o -MD -MP -MF $(DEPDIR)/oggCat-oggRingbuffer.Tpo -c -o oggCat-oggRingbuffer.o `test -f 'oggRingbuffer.cpp' || echo '$(srcdir)/'`oggRingbuffer.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggCat-oggRingbuffer.Tpo $(DEPDIR)/oggCat-oggRingbuffer.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='oggRingbuffer.cpp' object='oggCat-oggRingbuffer.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -c -o oggCat-oggRingbuffer.o `test -f 'oggRingbuffer.cpp' || echo '$(srcdir)/'`oggRingbuffer.cpp - -oggCat-oggRingbuffer.obj: oggRingbuffer.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -MT oggCat-oggRingbuffer.obj -MD -MP -MF $(DEPDIR)/oggCat-oggRingbuffer.Tpo -c -o oggCat-oggRingbuffer.obj `if test -f 'oggRingbuffer.cpp'; then $(CYGPATH_W) 'oggRingbuffer.cpp'; else $(CYGPATH_W) '$(srcdir)/oggRingbuffer.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggCat-oggRingbuffer.Tpo $(DEPDIR)/oggCat-oggRingbuffer.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='oggRingbuffer.cpp' object='oggCat-oggRingbuffer.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -c -o oggCat-oggRingbuffer.obj `if test -f 'oggRingbuffer.cpp'; then $(CYGPATH_W) 'oggRingbuffer.cpp'; else $(CYGPATH_W) '$(srcdir)/oggRingbuffer.cpp'; fi` - -oggCat-crc.o: crc.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -MT oggCat-crc.o -MD -MP -MF $(DEPDIR)/oggCat-crc.Tpo -c -o oggCat-crc.o `test -f 'crc.cpp' || echo '$(srcdir)/'`crc.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggCat-crc.Tpo $(DEPDIR)/oggCat-crc.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='crc.cpp' object='oggCat-crc.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -c -o oggCat-crc.o `test -f 'crc.cpp' || echo '$(srcdir)/'`crc.cpp - -oggCat-crc.obj: crc.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -MT oggCat-crc.obj -MD -MP -MF $(DEPDIR)/oggCat-crc.Tpo -c -o oggCat-crc.obj `if test -f 'crc.cpp'; then $(CYGPATH_W) 'crc.cpp'; else $(CYGPATH_W) '$(srcdir)/crc.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggCat-crc.Tpo $(DEPDIR)/oggCat-crc.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='crc.cpp' object='oggCat-crc.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -c -o oggCat-crc.obj `if test -f 'crc.cpp'; then $(CYGPATH_W) 'crc.cpp'; else $(CYGPATH_W) '$(srcdir)/crc.cpp'; fi` - -oggCat-granulePosInterpreter.o: granulePosInterpreter.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -MT oggCat-granulePosInterpreter.o -MD -MP -MF $(DEPDIR)/oggCat-granulePosInterpreter.Tpo -c -o oggCat-granulePosInterpreter.o `test -f 'granulePosInterpreter.cpp' || echo '$(srcdir)/'`granulePosInterpreter.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggCat-granulePosInterpreter.Tpo $(DEPDIR)/oggCat-granulePosInterpreter.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='granulePosInterpreter.cpp' object='oggCat-granulePosInterpreter.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -c -o oggCat-granulePosInterpreter.o `test -f 'granulePosInterpreter.cpp' || echo '$(srcdir)/'`granulePosInterpreter.cpp - -oggCat-granulePosInterpreter.obj: granulePosInterpreter.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -MT oggCat-granulePosInterpreter.obj -MD -MP -MF $(DEPDIR)/oggCat-granulePosInterpreter.Tpo -c -o oggCat-granulePosInterpreter.obj `if test -f 'granulePosInterpreter.cpp'; then $(CYGPATH_W) 'granulePosInterpreter.cpp'; else $(CYGPATH_W) '$(srcdir)/granulePosInterpreter.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggCat-granulePosInterpreter.Tpo $(DEPDIR)/oggCat-granulePosInterpreter.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='granulePosInterpreter.cpp' object='oggCat-granulePosInterpreter.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -c -o oggCat-granulePosInterpreter.obj `if test -f 'granulePosInterpreter.cpp'; then $(CYGPATH_W) 'granulePosInterpreter.cpp'; else $(CYGPATH_W) '$(srcdir)/granulePosInterpreter.cpp'; fi` - -oggCat-mediaOutputDecoder.o: mediaOutputDecoder.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -MT oggCat-mediaOutputDecoder.o -MD -MP -MF $(DEPDIR)/oggCat-mediaOutputDecoder.Tpo -c -o oggCat-mediaOutputDecoder.o `test -f 'mediaOutputDecoder.cpp' || echo '$(srcdir)/'`mediaOutputDecoder.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggCat-mediaOutputDecoder.Tpo $(DEPDIR)/oggCat-mediaOutputDecoder.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='mediaOutputDecoder.cpp' object='oggCat-mediaOutputDecoder.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -c -o oggCat-mediaOutputDecoder.o `test -f 'mediaOutputDecoder.cpp' || echo '$(srcdir)/'`mediaOutputDecoder.cpp - -oggCat-mediaOutputDecoder.obj: mediaOutputDecoder.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -MT oggCat-mediaOutputDecoder.obj -MD -MP -MF $(DEPDIR)/oggCat-mediaOutputDecoder.Tpo -c -o oggCat-mediaOutputDecoder.obj `if test -f 'mediaOutputDecoder.cpp'; then $(CYGPATH_W) 'mediaOutputDecoder.cpp'; else $(CYGPATH_W) '$(srcdir)/mediaOutputDecoder.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggCat-mediaOutputDecoder.Tpo $(DEPDIR)/oggCat-mediaOutputDecoder.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='mediaOutputDecoder.cpp' object='oggCat-mediaOutputDecoder.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -c -o oggCat-mediaOutputDecoder.obj `if test -f 'mediaOutputDecoder.cpp'; then $(CYGPATH_W) 'mediaOutputDecoder.cpp'; else $(CYGPATH_W) '$(srcdir)/mediaOutputDecoder.cpp'; fi` - -oggCat-mediaInputEncoder.o: mediaInputEncoder.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -MT oggCat-mediaInputEncoder.o -MD -MP -MF $(DEPDIR)/oggCat-mediaInputEncoder.Tpo -c -o oggCat-mediaInputEncoder.o `test -f 'mediaInputEncoder.cpp' || echo '$(srcdir)/'`mediaInputEncoder.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggCat-mediaInputEncoder.Tpo $(DEPDIR)/oggCat-mediaInputEncoder.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='mediaInputEncoder.cpp' object='oggCat-mediaInputEncoder.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -c -o oggCat-mediaInputEncoder.o `test -f 'mediaInputEncoder.cpp' || echo '$(srcdir)/'`mediaInputEncoder.cpp - -oggCat-mediaInputEncoder.obj: mediaInputEncoder.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -MT oggCat-mediaInputEncoder.obj -MD -MP -MF $(DEPDIR)/oggCat-mediaInputEncoder.Tpo -c -o oggCat-mediaInputEncoder.obj `if test -f 'mediaInputEncoder.cpp'; then $(CYGPATH_W) 'mediaInputEncoder.cpp'; else $(CYGPATH_W) '$(srcdir)/mediaInputEncoder.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggCat-mediaInputEncoder.Tpo $(DEPDIR)/oggCat-mediaInputEncoder.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='mediaInputEncoder.cpp' object='oggCat-mediaInputEncoder.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -c -o oggCat-mediaInputEncoder.obj `if test -f 'mediaInputEncoder.cpp'; then $(CYGPATH_W) 'mediaInputEncoder.cpp'; else $(CYGPATH_W) '$(srcdir)/mediaInputEncoder.cpp'; fi` - -oggCat-streamSerializer.o: streamSerializer.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -MT oggCat-streamSerializer.o -MD -MP -MF $(DEPDIR)/oggCat-streamSerializer.Tpo -c -o oggCat-streamSerializer.o `test -f 'streamSerializer.cpp' || echo '$(srcdir)/'`streamSerializer.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggCat-streamSerializer.Tpo $(DEPDIR)/oggCat-streamSerializer.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='streamSerializer.cpp' object='oggCat-streamSerializer.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -c -o oggCat-streamSerializer.o `test -f 'streamSerializer.cpp' || echo '$(srcdir)/'`streamSerializer.cpp - -oggCat-streamSerializer.obj: streamSerializer.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -MT oggCat-streamSerializer.obj -MD -MP -MF $(DEPDIR)/oggCat-streamSerializer.Tpo -c -o oggCat-streamSerializer.obj `if test -f 'streamSerializer.cpp'; then $(CYGPATH_W) 'streamSerializer.cpp'; else $(CYGPATH_W) '$(srcdir)/streamSerializer.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggCat-streamSerializer.Tpo $(DEPDIR)/oggCat-streamSerializer.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='streamSerializer.cpp' object='oggCat-streamSerializer.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -c -o oggCat-streamSerializer.obj `if test -f 'streamSerializer.cpp'; then $(CYGPATH_W) 'streamSerializer.cpp'; else $(CYGPATH_W) '$(srcdir)/streamSerializer.cpp'; fi` - -oggCat-oggBOSExtractorFactory.o: oggBOSExtractorFactory.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -MT oggCat-oggBOSExtractorFactory.o -MD -MP -MF $(DEPDIR)/oggCat-oggBOSExtractorFactory.Tpo -c -o oggCat-oggBOSExtractorFactory.o `test -f 'oggBOSExtractorFactory.cpp' || echo '$(srcdir)/'`oggBOSExtractorFactory.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggCat-oggBOSExtractorFactory.Tpo $(DEPDIR)/oggCat-oggBOSExtractorFactory.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='oggBOSExtractorFactory.cpp' object='oggCat-oggBOSExtractorFactory.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -c -o oggCat-oggBOSExtractorFactory.o `test -f 'oggBOSExtractorFactory.cpp' || echo '$(srcdir)/'`oggBOSExtractorFactory.cpp - -oggCat-oggBOSExtractorFactory.obj: oggBOSExtractorFactory.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -MT oggCat-oggBOSExtractorFactory.obj -MD -MP -MF $(DEPDIR)/oggCat-oggBOSExtractorFactory.Tpo -c -o oggCat-oggBOSExtractorFactory.obj `if test -f 'oggBOSExtractorFactory.cpp'; then $(CYGPATH_W) 'oggBOSExtractorFactory.cpp'; else $(CYGPATH_W) '$(srcdir)/oggBOSExtractorFactory.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggCat-oggBOSExtractorFactory.Tpo $(DEPDIR)/oggCat-oggBOSExtractorFactory.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='oggBOSExtractorFactory.cpp' object='oggCat-oggBOSExtractorFactory.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -c -o oggCat-oggBOSExtractorFactory.obj `if test -f 'oggBOSExtractorFactory.cpp'; then $(CYGPATH_W) 'oggBOSExtractorFactory.cpp'; else $(CYGPATH_W) '$(srcdir)/oggBOSExtractorFactory.cpp'; fi` - -oggCat-oggStreamEncoder.o: oggStreamEncoder.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -MT oggCat-oggStreamEncoder.o -MD -MP -MF $(DEPDIR)/oggCat-oggStreamEncoder.Tpo -c -o oggCat-oggStreamEncoder.o `test -f 'oggStreamEncoder.cpp' || echo '$(srcdir)/'`oggStreamEncoder.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggCat-oggStreamEncoder.Tpo $(DEPDIR)/oggCat-oggStreamEncoder.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='oggStreamEncoder.cpp' object='oggCat-oggStreamEncoder.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -c -o oggCat-oggStreamEncoder.o `test -f 'oggStreamEncoder.cpp' || echo '$(srcdir)/'`oggStreamEncoder.cpp - -oggCat-oggStreamEncoder.obj: oggStreamEncoder.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -MT oggCat-oggStreamEncoder.obj -MD -MP -MF $(DEPDIR)/oggCat-oggStreamEncoder.Tpo -c -o oggCat-oggStreamEncoder.obj `if test -f 'oggStreamEncoder.cpp'; then $(CYGPATH_W) 'oggStreamEncoder.cpp'; else $(CYGPATH_W) '$(srcdir)/oggStreamEncoder.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggCat-oggStreamEncoder.Tpo $(DEPDIR)/oggCat-oggStreamEncoder.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='oggStreamEncoder.cpp' object='oggCat-oggStreamEncoder.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -c -o oggCat-oggStreamEncoder.obj `if test -f 'oggStreamEncoder.cpp'; then $(CYGPATH_W) 'oggStreamEncoder.cpp'; else $(CYGPATH_W) '$(srcdir)/oggStreamEncoder.cpp'; fi` - -oggCat-oggEncoder.o: oggEncoder.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -MT oggCat-oggEncoder.o -MD -MP -MF $(DEPDIR)/oggCat-oggEncoder.Tpo -c -o oggCat-oggEncoder.o `test -f 'oggEncoder.cpp' || echo '$(srcdir)/'`oggEncoder.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggCat-oggEncoder.Tpo $(DEPDIR)/oggCat-oggEncoder.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='oggEncoder.cpp' object='oggCat-oggEncoder.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -c -o oggCat-oggEncoder.o `test -f 'oggEncoder.cpp' || echo '$(srcdir)/'`oggEncoder.cpp - -oggCat-oggEncoder.obj: oggEncoder.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -MT oggCat-oggEncoder.obj -MD -MP -MF $(DEPDIR)/oggCat-oggEncoder.Tpo -c -o oggCat-oggEncoder.obj `if test -f 'oggEncoder.cpp'; then $(CYGPATH_W) 'oggEncoder.cpp'; else $(CYGPATH_W) '$(srcdir)/oggEncoder.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggCat-oggEncoder.Tpo $(DEPDIR)/oggCat-oggEncoder.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='oggEncoder.cpp' object='oggCat-oggEncoder.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -c -o oggCat-oggEncoder.obj `if test -f 'oggEncoder.cpp'; then $(CYGPATH_W) 'oggEncoder.cpp'; else $(CYGPATH_W) '$(srcdir)/oggEncoder.cpp'; fi` - -oggCat-streamExtractor.o: streamExtractor.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -MT oggCat-streamExtractor.o -MD -MP -MF $(DEPDIR)/oggCat-streamExtractor.Tpo -c -o oggCat-streamExtractor.o `test -f 'streamExtractor.cpp' || echo '$(srcdir)/'`streamExtractor.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggCat-streamExtractor.Tpo $(DEPDIR)/oggCat-streamExtractor.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='streamExtractor.cpp' object='oggCat-streamExtractor.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -c -o oggCat-streamExtractor.o `test -f 'streamExtractor.cpp' || echo '$(srcdir)/'`streamExtractor.cpp - -oggCat-streamExtractor.obj: streamExtractor.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -MT oggCat-streamExtractor.obj -MD -MP -MF $(DEPDIR)/oggCat-streamExtractor.Tpo -c -o oggCat-streamExtractor.obj `if test -f 'streamExtractor.cpp'; then $(CYGPATH_W) 'streamExtractor.cpp'; else $(CYGPATH_W) '$(srcdir)/streamExtractor.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggCat-streamExtractor.Tpo $(DEPDIR)/oggCat-streamExtractor.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='streamExtractor.cpp' object='oggCat-streamExtractor.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -c -o oggCat-streamExtractor.obj `if test -f 'streamExtractor.cpp'; then $(CYGPATH_W) 'streamExtractor.cpp'; else $(CYGPATH_W) '$(srcdir)/streamExtractor.cpp'; fi` - -oggCat-streamParameter.o: streamParameter.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -MT oggCat-streamParameter.o -MD -MP -MF $(DEPDIR)/oggCat-streamParameter.Tpo -c -o oggCat-streamParameter.o `test -f 'streamParameter.cpp' || echo '$(srcdir)/'`streamParameter.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggCat-streamParameter.Tpo $(DEPDIR)/oggCat-streamParameter.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='streamParameter.cpp' object='oggCat-streamParameter.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -c -o oggCat-streamParameter.o `test -f 'streamParameter.cpp' || echo '$(srcdir)/'`streamParameter.cpp - -oggCat-streamParameter.obj: streamParameter.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -MT oggCat-streamParameter.obj -MD -MP -MF $(DEPDIR)/oggCat-streamParameter.Tpo -c -o oggCat-streamParameter.obj `if test -f 'streamParameter.cpp'; then $(CYGPATH_W) 'streamParameter.cpp'; else $(CYGPATH_W) '$(srcdir)/streamParameter.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggCat-streamParameter.Tpo $(DEPDIR)/oggCat-streamParameter.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='streamParameter.cpp' object='oggCat-streamParameter.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -c -o oggCat-streamParameter.obj `if test -f 'streamParameter.cpp'; then $(CYGPATH_W) 'streamParameter.cpp'; else $(CYGPATH_W) '$(srcdir)/streamParameter.cpp'; fi` - -oggCat-streamMux.o: streamMux.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -MT oggCat-streamMux.o -MD -MP -MF $(DEPDIR)/oggCat-streamMux.Tpo -c -o oggCat-streamMux.o `test -f 'streamMux.cpp' || echo '$(srcdir)/'`streamMux.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggCat-streamMux.Tpo $(DEPDIR)/oggCat-streamMux.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='streamMux.cpp' object='oggCat-streamMux.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -c -o oggCat-streamMux.o `test -f 'streamMux.cpp' || echo '$(srcdir)/'`streamMux.cpp - -oggCat-streamMux.obj: streamMux.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -MT oggCat-streamMux.obj -MD -MP -MF $(DEPDIR)/oggCat-streamMux.Tpo -c -o oggCat-streamMux.obj `if test -f 'streamMux.cpp'; then $(CYGPATH_W) 'streamMux.cpp'; else $(CYGPATH_W) '$(srcdir)/streamMux.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggCat-streamMux.Tpo $(DEPDIR)/oggCat-streamMux.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='streamMux.cpp' object='oggCat-streamMux.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -c -o oggCat-streamMux.obj `if test -f 'streamMux.cpp'; then $(CYGPATH_W) 'streamMux.cpp'; else $(CYGPATH_W) '$(srcdir)/streamMux.cpp'; fi` - -oggCat-bufferRepository.o: bufferRepository.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -MT oggCat-bufferRepository.o -MD -MP -MF $(DEPDIR)/oggCat-bufferRepository.Tpo -c -o oggCat-bufferRepository.o `test -f 'bufferRepository.cpp' || echo '$(srcdir)/'`bufferRepository.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggCat-bufferRepository.Tpo $(DEPDIR)/oggCat-bufferRepository.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='bufferRepository.cpp' object='oggCat-bufferRepository.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -c -o oggCat-bufferRepository.o `test -f 'bufferRepository.cpp' || echo '$(srcdir)/'`bufferRepository.cpp - -oggCat-bufferRepository.obj: bufferRepository.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -MT oggCat-bufferRepository.obj -MD -MP -MF $(DEPDIR)/oggCat-bufferRepository.Tpo -c -o oggCat-bufferRepository.obj `if test -f 'bufferRepository.cpp'; then $(CYGPATH_W) 'bufferRepository.cpp'; else $(CYGPATH_W) '$(srcdir)/bufferRepository.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggCat-bufferRepository.Tpo $(DEPDIR)/oggCat-bufferRepository.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='bufferRepository.cpp' object='oggCat-bufferRepository.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -c -o oggCat-bufferRepository.obj `if test -f 'bufferRepository.cpp'; then $(CYGPATH_W) 'bufferRepository.cpp'; else $(CYGPATH_W) '$(srcdir)/bufferRepository.cpp'; fi` - -oggCat-oggComment.o: oggComment.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -MT oggCat-oggComment.o -MD -MP -MF $(DEPDIR)/oggCat-oggComment.Tpo -c -o oggCat-oggComment.o `test -f 'oggComment.cpp' || echo '$(srcdir)/'`oggComment.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggCat-oggComment.Tpo $(DEPDIR)/oggCat-oggComment.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='oggComment.cpp' object='oggCat-oggComment.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -c -o oggCat-oggComment.o `test -f 'oggComment.cpp' || echo '$(srcdir)/'`oggComment.cpp - -oggCat-oggComment.obj: oggComment.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -MT oggCat-oggComment.obj -MD -MP -MF $(DEPDIR)/oggCat-oggComment.Tpo -c -o oggCat-oggComment.obj `if test -f 'oggComment.cpp'; then $(CYGPATH_W) 'oggComment.cpp'; else $(CYGPATH_W) '$(srcdir)/oggComment.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggCat-oggComment.Tpo $(DEPDIR)/oggCat-oggComment.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='oggComment.cpp' object='oggCat-oggComment.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -c -o oggCat-oggComment.obj `if test -f 'oggComment.cpp'; then $(CYGPATH_W) 'oggComment.cpp'; else $(CYGPATH_W) '$(srcdir)/oggComment.cpp'; fi` - -oggCat-theoraPosInterpreter.o: theoraPosInterpreter.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -MT oggCat-theoraPosInterpreter.o -MD -MP -MF $(DEPDIR)/oggCat-theoraPosInterpreter.Tpo -c -o oggCat-theoraPosInterpreter.o `test -f 'theoraPosInterpreter.cpp' || echo '$(srcdir)/'`theoraPosInterpreter.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggCat-theoraPosInterpreter.Tpo $(DEPDIR)/oggCat-theoraPosInterpreter.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='theoraPosInterpreter.cpp' object='oggCat-theoraPosInterpreter.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -c -o oggCat-theoraPosInterpreter.o `test -f 'theoraPosInterpreter.cpp' || echo '$(srcdir)/'`theoraPosInterpreter.cpp - -oggCat-theoraPosInterpreter.obj: theoraPosInterpreter.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -MT oggCat-theoraPosInterpreter.obj -MD -MP -MF $(DEPDIR)/oggCat-theoraPosInterpreter.Tpo -c -o oggCat-theoraPosInterpreter.obj `if test -f 'theoraPosInterpreter.cpp'; then $(CYGPATH_W) 'theoraPosInterpreter.cpp'; else $(CYGPATH_W) '$(srcdir)/theoraPosInterpreter.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggCat-theoraPosInterpreter.Tpo $(DEPDIR)/oggCat-theoraPosInterpreter.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='theoraPosInterpreter.cpp' object='oggCat-theoraPosInterpreter.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -c -o oggCat-theoraPosInterpreter.obj `if test -f 'theoraPosInterpreter.cpp'; then $(CYGPATH_W) 'theoraPosInterpreter.cpp'; else $(CYGPATH_W) '$(srcdir)/theoraPosInterpreter.cpp'; fi` - -oggCat-theoraStreamParameter.o: theoraStreamParameter.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -MT oggCat-theoraStreamParameter.o -MD -MP -MF $(DEPDIR)/oggCat-theoraStreamParameter.Tpo -c -o oggCat-theoraStreamParameter.o `test -f 'theoraStreamParameter.cpp' || echo '$(srcdir)/'`theoraStreamParameter.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggCat-theoraStreamParameter.Tpo $(DEPDIR)/oggCat-theoraStreamParameter.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='theoraStreamParameter.cpp' object='oggCat-theoraStreamParameter.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -c -o oggCat-theoraStreamParameter.o `test -f 'theoraStreamParameter.cpp' || echo '$(srcdir)/'`theoraStreamParameter.cpp - -oggCat-theoraStreamParameter.obj: theoraStreamParameter.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -MT oggCat-theoraStreamParameter.obj -MD -MP -MF $(DEPDIR)/oggCat-theoraStreamParameter.Tpo -c -o oggCat-theoraStreamParameter.obj `if test -f 'theoraStreamParameter.cpp'; then $(CYGPATH_W) 'theoraStreamParameter.cpp'; else $(CYGPATH_W) '$(srcdir)/theoraStreamParameter.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggCat-theoraStreamParameter.Tpo $(DEPDIR)/oggCat-theoraStreamParameter.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='theoraStreamParameter.cpp' object='oggCat-theoraStreamParameter.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -c -o oggCat-theoraStreamParameter.obj `if test -f 'theoraStreamParameter.cpp'; then $(CYGPATH_W) 'theoraStreamParameter.cpp'; else $(CYGPATH_W) '$(srcdir)/theoraStreamParameter.cpp'; fi` - -oggCat-theoraExtractor.o: theoraExtractor.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -MT oggCat-theoraExtractor.o -MD -MP -MF $(DEPDIR)/oggCat-theoraExtractor.Tpo -c -o oggCat-theoraExtractor.o `test -f 'theoraExtractor.cpp' || echo '$(srcdir)/'`theoraExtractor.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggCat-theoraExtractor.Tpo $(DEPDIR)/oggCat-theoraExtractor.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='theoraExtractor.cpp' object='oggCat-theoraExtractor.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -c -o oggCat-theoraExtractor.o `test -f 'theoraExtractor.cpp' || echo '$(srcdir)/'`theoraExtractor.cpp - -oggCat-theoraExtractor.obj: theoraExtractor.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -MT oggCat-theoraExtractor.obj -MD -MP -MF $(DEPDIR)/oggCat-theoraExtractor.Tpo -c -o oggCat-theoraExtractor.obj `if test -f 'theoraExtractor.cpp'; then $(CYGPATH_W) 'theoraExtractor.cpp'; else $(CYGPATH_W) '$(srcdir)/theoraExtractor.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggCat-theoraExtractor.Tpo $(DEPDIR)/oggCat-theoraExtractor.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='theoraExtractor.cpp' object='oggCat-theoraExtractor.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -c -o oggCat-theoraExtractor.obj `if test -f 'theoraExtractor.cpp'; then $(CYGPATH_W) 'theoraExtractor.cpp'; else $(CYGPATH_W) '$(srcdir)/theoraExtractor.cpp'; fi` - -oggCat-vorbisPosInterpreter.o: vorbisPosInterpreter.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -MT oggCat-vorbisPosInterpreter.o -MD -MP -MF $(DEPDIR)/oggCat-vorbisPosInterpreter.Tpo -c -o oggCat-vorbisPosInterpreter.o `test -f 'vorbisPosInterpreter.cpp' || echo '$(srcdir)/'`vorbisPosInterpreter.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggCat-vorbisPosInterpreter.Tpo $(DEPDIR)/oggCat-vorbisPosInterpreter.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='vorbisPosInterpreter.cpp' object='oggCat-vorbisPosInterpreter.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -c -o oggCat-vorbisPosInterpreter.o `test -f 'vorbisPosInterpreter.cpp' || echo '$(srcdir)/'`vorbisPosInterpreter.cpp - -oggCat-vorbisPosInterpreter.obj: vorbisPosInterpreter.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -MT oggCat-vorbisPosInterpreter.obj -MD -MP -MF $(DEPDIR)/oggCat-vorbisPosInterpreter.Tpo -c -o oggCat-vorbisPosInterpreter.obj `if test -f 'vorbisPosInterpreter.cpp'; then $(CYGPATH_W) 'vorbisPosInterpreter.cpp'; else $(CYGPATH_W) '$(srcdir)/vorbisPosInterpreter.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggCat-vorbisPosInterpreter.Tpo $(DEPDIR)/oggCat-vorbisPosInterpreter.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='vorbisPosInterpreter.cpp' object='oggCat-vorbisPosInterpreter.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -c -o oggCat-vorbisPosInterpreter.obj `if test -f 'vorbisPosInterpreter.cpp'; then $(CYGPATH_W) 'vorbisPosInterpreter.cpp'; else $(CYGPATH_W) '$(srcdir)/vorbisPosInterpreter.cpp'; fi` - -oggCat-vorbisStreamParameter.o: vorbisStreamParameter.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -MT oggCat-vorbisStreamParameter.o -MD -MP -MF $(DEPDIR)/oggCat-vorbisStreamParameter.Tpo -c -o oggCat-vorbisStreamParameter.o `test -f 'vorbisStreamParameter.cpp' || echo '$(srcdir)/'`vorbisStreamParameter.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggCat-vorbisStreamParameter.Tpo $(DEPDIR)/oggCat-vorbisStreamParameter.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='vorbisStreamParameter.cpp' object='oggCat-vorbisStreamParameter.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -c -o oggCat-vorbisStreamParameter.o `test -f 'vorbisStreamParameter.cpp' || echo '$(srcdir)/'`vorbisStreamParameter.cpp - -oggCat-vorbisStreamParameter.obj: vorbisStreamParameter.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -MT oggCat-vorbisStreamParameter.obj -MD -MP -MF $(DEPDIR)/oggCat-vorbisStreamParameter.Tpo -c -o oggCat-vorbisStreamParameter.obj `if test -f 'vorbisStreamParameter.cpp'; then $(CYGPATH_W) 'vorbisStreamParameter.cpp'; else $(CYGPATH_W) '$(srcdir)/vorbisStreamParameter.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggCat-vorbisStreamParameter.Tpo $(DEPDIR)/oggCat-vorbisStreamParameter.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='vorbisStreamParameter.cpp' object='oggCat-vorbisStreamParameter.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -c -o oggCat-vorbisStreamParameter.obj `if test -f 'vorbisStreamParameter.cpp'; then $(CYGPATH_W) 'vorbisStreamParameter.cpp'; else $(CYGPATH_W) '$(srcdir)/vorbisStreamParameter.cpp'; fi` - -oggCat-vorbisExtractor.o: vorbisExtractor.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -MT oggCat-vorbisExtractor.o -MD -MP -MF $(DEPDIR)/oggCat-vorbisExtractor.Tpo -c -o oggCat-vorbisExtractor.o `test -f 'vorbisExtractor.cpp' || echo '$(srcdir)/'`vorbisExtractor.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggCat-vorbisExtractor.Tpo $(DEPDIR)/oggCat-vorbisExtractor.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='vorbisExtractor.cpp' object='oggCat-vorbisExtractor.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -c -o oggCat-vorbisExtractor.o `test -f 'vorbisExtractor.cpp' || echo '$(srcdir)/'`vorbisExtractor.cpp - -oggCat-vorbisExtractor.obj: vorbisExtractor.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -MT oggCat-vorbisExtractor.obj -MD -MP -MF $(DEPDIR)/oggCat-vorbisExtractor.Tpo -c -o oggCat-vorbisExtractor.obj `if test -f 'vorbisExtractor.cpp'; then $(CYGPATH_W) 'vorbisExtractor.cpp'; else $(CYGPATH_W) '$(srcdir)/vorbisExtractor.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggCat-vorbisExtractor.Tpo $(DEPDIR)/oggCat-vorbisExtractor.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='vorbisExtractor.cpp' object='oggCat-vorbisExtractor.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -c -o oggCat-vorbisExtractor.obj `if test -f 'vorbisExtractor.cpp'; then $(CYGPATH_W) 'vorbisExtractor.cpp'; else $(CYGPATH_W) '$(srcdir)/vorbisExtractor.cpp'; fi` - -oggCat-katePosInterpreter.o: katePosInterpreter.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -MT oggCat-katePosInterpreter.o -MD -MP -MF $(DEPDIR)/oggCat-katePosInterpreter.Tpo -c -o oggCat-katePosInterpreter.o `test -f 'katePosInterpreter.cpp' || echo '$(srcdir)/'`katePosInterpreter.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggCat-katePosInterpreter.Tpo $(DEPDIR)/oggCat-katePosInterpreter.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='katePosInterpreter.cpp' object='oggCat-katePosInterpreter.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -c -o oggCat-katePosInterpreter.o `test -f 'katePosInterpreter.cpp' || echo '$(srcdir)/'`katePosInterpreter.cpp - -oggCat-katePosInterpreter.obj: katePosInterpreter.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -MT oggCat-katePosInterpreter.obj -MD -MP -MF $(DEPDIR)/oggCat-katePosInterpreter.Tpo -c -o oggCat-katePosInterpreter.obj `if test -f 'katePosInterpreter.cpp'; then $(CYGPATH_W) 'katePosInterpreter.cpp'; else $(CYGPATH_W) '$(srcdir)/katePosInterpreter.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggCat-katePosInterpreter.Tpo $(DEPDIR)/oggCat-katePosInterpreter.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='katePosInterpreter.cpp' object='oggCat-katePosInterpreter.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -c -o oggCat-katePosInterpreter.obj `if test -f 'katePosInterpreter.cpp'; then $(CYGPATH_W) 'katePosInterpreter.cpp'; else $(CYGPATH_W) '$(srcdir)/katePosInterpreter.cpp'; fi` - -oggCat-kateStreamParameter.o: kateStreamParameter.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -MT oggCat-kateStreamParameter.o -MD -MP -MF $(DEPDIR)/oggCat-kateStreamParameter.Tpo -c -o oggCat-kateStreamParameter.o `test -f 'kateStreamParameter.cpp' || echo '$(srcdir)/'`kateStreamParameter.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggCat-kateStreamParameter.Tpo $(DEPDIR)/oggCat-kateStreamParameter.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='kateStreamParameter.cpp' object='oggCat-kateStreamParameter.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -c -o oggCat-kateStreamParameter.o `test -f 'kateStreamParameter.cpp' || echo '$(srcdir)/'`kateStreamParameter.cpp - -oggCat-kateStreamParameter.obj: kateStreamParameter.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -MT oggCat-kateStreamParameter.obj -MD -MP -MF $(DEPDIR)/oggCat-kateStreamParameter.Tpo -c -o oggCat-kateStreamParameter.obj `if test -f 'kateStreamParameter.cpp'; then $(CYGPATH_W) 'kateStreamParameter.cpp'; else $(CYGPATH_W) '$(srcdir)/kateStreamParameter.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggCat-kateStreamParameter.Tpo $(DEPDIR)/oggCat-kateStreamParameter.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='kateStreamParameter.cpp' object='oggCat-kateStreamParameter.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -c -o oggCat-kateStreamParameter.obj `if test -f 'kateStreamParameter.cpp'; then $(CYGPATH_W) 'kateStreamParameter.cpp'; else $(CYGPATH_W) '$(srcdir)/kateStreamParameter.cpp'; fi` - -oggCat-kateExtractor.o: kateExtractor.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -MT oggCat-kateExtractor.o -MD -MP -MF $(DEPDIR)/oggCat-kateExtractor.Tpo -c -o oggCat-kateExtractor.o `test -f 'kateExtractor.cpp' || echo '$(srcdir)/'`kateExtractor.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggCat-kateExtractor.Tpo $(DEPDIR)/oggCat-kateExtractor.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='kateExtractor.cpp' object='oggCat-kateExtractor.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -c -o oggCat-kateExtractor.o `test -f 'kateExtractor.cpp' || echo '$(srcdir)/'`kateExtractor.cpp - -oggCat-kateExtractor.obj: kateExtractor.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -MT oggCat-kateExtractor.obj -MD -MP -MF $(DEPDIR)/oggCat-kateExtractor.Tpo -c -o oggCat-kateExtractor.obj `if test -f 'kateExtractor.cpp'; then $(CYGPATH_W) 'kateExtractor.cpp'; else $(CYGPATH_W) '$(srcdir)/kateExtractor.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggCat-kateExtractor.Tpo $(DEPDIR)/oggCat-kateExtractor.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='kateExtractor.cpp' object='oggCat-kateExtractor.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -c -o oggCat-kateExtractor.obj `if test -f 'kateExtractor.cpp'; then $(CYGPATH_W) 'kateExtractor.cpp'; else $(CYGPATH_W) '$(srcdir)/kateExtractor.cpp'; fi` - -oggCat-theoraDecoder.o: theoraDecoder.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -MT oggCat-theoraDecoder.o -MD -MP -MF $(DEPDIR)/oggCat-theoraDecoder.Tpo -c -o oggCat-theoraDecoder.o `test -f 'theoraDecoder.cpp' || echo '$(srcdir)/'`theoraDecoder.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggCat-theoraDecoder.Tpo $(DEPDIR)/oggCat-theoraDecoder.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='theoraDecoder.cpp' object='oggCat-theoraDecoder.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -c -o oggCat-theoraDecoder.o `test -f 'theoraDecoder.cpp' || echo '$(srcdir)/'`theoraDecoder.cpp - -oggCat-theoraDecoder.obj: theoraDecoder.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -MT oggCat-theoraDecoder.obj -MD -MP -MF $(DEPDIR)/oggCat-theoraDecoder.Tpo -c -o oggCat-theoraDecoder.obj `if test -f 'theoraDecoder.cpp'; then $(CYGPATH_W) 'theoraDecoder.cpp'; else $(CYGPATH_W) '$(srcdir)/theoraDecoder.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggCat-theoraDecoder.Tpo $(DEPDIR)/oggCat-theoraDecoder.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='theoraDecoder.cpp' object='oggCat-theoraDecoder.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -c -o oggCat-theoraDecoder.obj `if test -f 'theoraDecoder.cpp'; then $(CYGPATH_W) 'theoraDecoder.cpp'; else $(CYGPATH_W) '$(srcdir)/theoraDecoder.cpp'; fi` - -oggCat-theoraEncoder.o: theoraEncoder.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -MT oggCat-theoraEncoder.o -MD -MP -MF $(DEPDIR)/oggCat-theoraEncoder.Tpo -c -o oggCat-theoraEncoder.o `test -f 'theoraEncoder.cpp' || echo '$(srcdir)/'`theoraEncoder.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggCat-theoraEncoder.Tpo $(DEPDIR)/oggCat-theoraEncoder.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='theoraEncoder.cpp' object='oggCat-theoraEncoder.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -c -o oggCat-theoraEncoder.o `test -f 'theoraEncoder.cpp' || echo '$(srcdir)/'`theoraEncoder.cpp - -oggCat-theoraEncoder.obj: theoraEncoder.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -MT oggCat-theoraEncoder.obj -MD -MP -MF $(DEPDIR)/oggCat-theoraEncoder.Tpo -c -o oggCat-theoraEncoder.obj `if test -f 'theoraEncoder.cpp'; then $(CYGPATH_W) 'theoraEncoder.cpp'; else $(CYGPATH_W) '$(srcdir)/theoraEncoder.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggCat-theoraEncoder.Tpo $(DEPDIR)/oggCat-theoraEncoder.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='theoraEncoder.cpp' object='oggCat-theoraEncoder.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -c -o oggCat-theoraEncoder.obj `if test -f 'theoraEncoder.cpp'; then $(CYGPATH_W) 'theoraEncoder.cpp'; else $(CYGPATH_W) '$(srcdir)/theoraEncoder.cpp'; fi` - -oggCat-vorbisDecoder.o: vorbisDecoder.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -MT oggCat-vorbisDecoder.o -MD -MP -MF $(DEPDIR)/oggCat-vorbisDecoder.Tpo -c -o oggCat-vorbisDecoder.o `test -f 'vorbisDecoder.cpp' || echo '$(srcdir)/'`vorbisDecoder.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggCat-vorbisDecoder.Tpo $(DEPDIR)/oggCat-vorbisDecoder.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='vorbisDecoder.cpp' object='oggCat-vorbisDecoder.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -c -o oggCat-vorbisDecoder.o `test -f 'vorbisDecoder.cpp' || echo '$(srcdir)/'`vorbisDecoder.cpp - -oggCat-vorbisDecoder.obj: vorbisDecoder.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -MT oggCat-vorbisDecoder.obj -MD -MP -MF $(DEPDIR)/oggCat-vorbisDecoder.Tpo -c -o oggCat-vorbisDecoder.obj `if test -f 'vorbisDecoder.cpp'; then $(CYGPATH_W) 'vorbisDecoder.cpp'; else $(CYGPATH_W) '$(srcdir)/vorbisDecoder.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggCat-vorbisDecoder.Tpo $(DEPDIR)/oggCat-vorbisDecoder.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='vorbisDecoder.cpp' object='oggCat-vorbisDecoder.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -c -o oggCat-vorbisDecoder.obj `if test -f 'vorbisDecoder.cpp'; then $(CYGPATH_W) 'vorbisDecoder.cpp'; else $(CYGPATH_W) '$(srcdir)/vorbisDecoder.cpp'; fi` - -oggCat-vorbisEncoder.o: vorbisEncoder.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -MT oggCat-vorbisEncoder.o -MD -MP -MF $(DEPDIR)/oggCat-vorbisEncoder.Tpo -c -o oggCat-vorbisEncoder.o `test -f 'vorbisEncoder.cpp' || echo '$(srcdir)/'`vorbisEncoder.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggCat-vorbisEncoder.Tpo $(DEPDIR)/oggCat-vorbisEncoder.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='vorbisEncoder.cpp' object='oggCat-vorbisEncoder.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -c -o oggCat-vorbisEncoder.o `test -f 'vorbisEncoder.cpp' || echo '$(srcdir)/'`vorbisEncoder.cpp - -oggCat-vorbisEncoder.obj: vorbisEncoder.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -MT oggCat-vorbisEncoder.obj -MD -MP -MF $(DEPDIR)/oggCat-vorbisEncoder.Tpo -c -o oggCat-vorbisEncoder.obj `if test -f 'vorbisEncoder.cpp'; then $(CYGPATH_W) 'vorbisEncoder.cpp'; else $(CYGPATH_W) '$(srcdir)/vorbisEncoder.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggCat-vorbisEncoder.Tpo $(DEPDIR)/oggCat-vorbisEncoder.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='vorbisEncoder.cpp' object='oggCat-vorbisEncoder.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -c -o oggCat-vorbisEncoder.obj `if test -f 'vorbisEncoder.cpp'; then $(CYGPATH_W) 'vorbisEncoder.cpp'; else $(CYGPATH_W) '$(srcdir)/vorbisEncoder.cpp'; fi` - -oggCat-audioPacket.o: audioPacket.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -MT oggCat-audioPacket.o -MD -MP -MF $(DEPDIR)/oggCat-audioPacket.Tpo -c -o oggCat-audioPacket.o `test -f 'audioPacket.cpp' || echo '$(srcdir)/'`audioPacket.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggCat-audioPacket.Tpo $(DEPDIR)/oggCat-audioPacket.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='audioPacket.cpp' object='oggCat-audioPacket.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -c -o oggCat-audioPacket.o `test -f 'audioPacket.cpp' || echo '$(srcdir)/'`audioPacket.cpp - -oggCat-audioPacket.obj: audioPacket.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -MT oggCat-audioPacket.obj -MD -MP -MF $(DEPDIR)/oggCat-audioPacket.Tpo -c -o oggCat-audioPacket.obj `if test -f 'audioPacket.cpp'; then $(CYGPATH_W) 'audioPacket.cpp'; else $(CYGPATH_W) '$(srcdir)/audioPacket.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggCat-audioPacket.Tpo $(DEPDIR)/oggCat-audioPacket.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='audioPacket.cpp' object='oggCat-audioPacket.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -c -o oggCat-audioPacket.obj `if test -f 'audioPacket.cpp'; then $(CYGPATH_W) 'audioPacket.cpp'; else $(CYGPATH_W) '$(srcdir)/audioPacket.cpp'; fi` - -oggCat-audioConverter.o: audioConverter.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -MT oggCat-audioConverter.o -MD -MP -MF $(DEPDIR)/oggCat-audioConverter.Tpo -c -o oggCat-audioConverter.o `test -f 'audioConverter.cpp' || echo '$(srcdir)/'`audioConverter.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggCat-audioConverter.Tpo $(DEPDIR)/oggCat-audioConverter.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='audioConverter.cpp' object='oggCat-audioConverter.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -c -o oggCat-audioConverter.o `test -f 'audioConverter.cpp' || echo '$(srcdir)/'`audioConverter.cpp - -oggCat-audioConverter.obj: audioConverter.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -MT oggCat-audioConverter.obj -MD -MP -MF $(DEPDIR)/oggCat-audioConverter.Tpo -c -o oggCat-audioConverter.obj `if test -f 'audioConverter.cpp'; then $(CYGPATH_W) 'audioConverter.cpp'; else $(CYGPATH_W) '$(srcdir)/audioConverter.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggCat-audioConverter.Tpo $(DEPDIR)/oggCat-audioConverter.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='audioConverter.cpp' object='oggCat-audioConverter.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -c -o oggCat-audioConverter.obj `if test -f 'audioConverter.cpp'; then $(CYGPATH_W) 'audioConverter.cpp'; else $(CYGPATH_W) '$(srcdir)/audioConverter.cpp'; fi` - -oggCat-cmdlineextractor.o: cmdlineextractor.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -MT oggCat-cmdlineextractor.o -MD -MP -MF $(DEPDIR)/oggCat-cmdlineextractor.Tpo -c -o oggCat-cmdlineextractor.o `test -f 'cmdlineextractor.cpp' || echo '$(srcdir)/'`cmdlineextractor.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggCat-cmdlineextractor.Tpo $(DEPDIR)/oggCat-cmdlineextractor.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='cmdlineextractor.cpp' object='oggCat-cmdlineextractor.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -c -o oggCat-cmdlineextractor.o `test -f 'cmdlineextractor.cpp' || echo '$(srcdir)/'`cmdlineextractor.cpp - -oggCat-cmdlineextractor.obj: cmdlineextractor.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -MT oggCat-cmdlineextractor.obj -MD -MP -MF $(DEPDIR)/oggCat-cmdlineextractor.Tpo -c -o oggCat-cmdlineextractor.obj `if test -f 'cmdlineextractor.cpp'; then $(CYGPATH_W) 'cmdlineextractor.cpp'; else $(CYGPATH_W) '$(srcdir)/cmdlineextractor.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggCat-cmdlineextractor.Tpo $(DEPDIR)/oggCat-cmdlineextractor.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='cmdlineextractor.cpp' object='oggCat-cmdlineextractor.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -c -o oggCat-cmdlineextractor.obj `if test -f 'cmdlineextractor.cpp'; then $(CYGPATH_W) 'cmdlineextractor.cpp'; else $(CYGPATH_W) '$(srcdir)/cmdlineextractor.cpp'; fi` - -oggCat-basePlane.o: basePlane.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -MT oggCat-basePlane.o -MD -MP -MF $(DEPDIR)/oggCat-basePlane.Tpo -c -o oggCat-basePlane.o `test -f 'basePlane.cpp' || echo '$(srcdir)/'`basePlane.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggCat-basePlane.Tpo $(DEPDIR)/oggCat-basePlane.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='basePlane.cpp' object='oggCat-basePlane.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -c -o oggCat-basePlane.o `test -f 'basePlane.cpp' || echo '$(srcdir)/'`basePlane.cpp - -oggCat-basePlane.obj: basePlane.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -MT oggCat-basePlane.obj -MD -MP -MF $(DEPDIR)/oggCat-basePlane.Tpo -c -o oggCat-basePlane.obj `if test -f 'basePlane.cpp'; then $(CYGPATH_W) 'basePlane.cpp'; else $(CYGPATH_W) '$(srcdir)/basePlane.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggCat-basePlane.Tpo $(DEPDIR)/oggCat-basePlane.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='basePlane.cpp' object='oggCat-basePlane.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -c -o oggCat-basePlane.obj `if test -f 'basePlane.cpp'; then $(CYGPATH_W) 'basePlane.cpp'; else $(CYGPATH_W) '$(srcdir)/basePlane.cpp'; fi` - -oggCat-rgbPlane.o: rgbPlane.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -MT oggCat-rgbPlane.o -MD -MP -MF $(DEPDIR)/oggCat-rgbPlane.Tpo -c -o oggCat-rgbPlane.o `test -f 'rgbPlane.cpp' || echo '$(srcdir)/'`rgbPlane.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggCat-rgbPlane.Tpo $(DEPDIR)/oggCat-rgbPlane.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='rgbPlane.cpp' object='oggCat-rgbPlane.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -c -o oggCat-rgbPlane.o `test -f 'rgbPlane.cpp' || echo '$(srcdir)/'`rgbPlane.cpp - -oggCat-rgbPlane.obj: rgbPlane.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -MT oggCat-rgbPlane.obj -MD -MP -MF $(DEPDIR)/oggCat-rgbPlane.Tpo -c -o oggCat-rgbPlane.obj `if test -f 'rgbPlane.cpp'; then $(CYGPATH_W) 'rgbPlane.cpp'; else $(CYGPATH_W) '$(srcdir)/rgbPlane.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggCat-rgbPlane.Tpo $(DEPDIR)/oggCat-rgbPlane.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='rgbPlane.cpp' object='oggCat-rgbPlane.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -c -o oggCat-rgbPlane.obj `if test -f 'rgbPlane.cpp'; then $(CYGPATH_W) 'rgbPlane.cpp'; else $(CYGPATH_W) '$(srcdir)/rgbPlane.cpp'; fi` - -oggCat-blendElement.o: blendElement.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -MT oggCat-blendElement.o -MD -MP -MF $(DEPDIR)/oggCat-blendElement.Tpo -c -o oggCat-blendElement.o `test -f 'blendElement.cpp' || echo '$(srcdir)/'`blendElement.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggCat-blendElement.Tpo $(DEPDIR)/oggCat-blendElement.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='blendElement.cpp' object='oggCat-blendElement.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -c -o oggCat-blendElement.o `test -f 'blendElement.cpp' || echo '$(srcdir)/'`blendElement.cpp - -oggCat-blendElement.obj: blendElement.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -MT oggCat-blendElement.obj -MD -MP -MF $(DEPDIR)/oggCat-blendElement.Tpo -c -o oggCat-blendElement.obj `if test -f 'blendElement.cpp'; then $(CYGPATH_W) 'blendElement.cpp'; else $(CYGPATH_W) '$(srcdir)/blendElement.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggCat-blendElement.Tpo $(DEPDIR)/oggCat-blendElement.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='blendElement.cpp' object='oggCat-blendElement.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -c -o oggCat-blendElement.obj `if test -f 'blendElement.cpp'; then $(CYGPATH_W) 'blendElement.cpp'; else $(CYGPATH_W) '$(srcdir)/blendElement.cpp'; fi` - -oggCat-effector.o: effector.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -MT oggCat-effector.o -MD -MP -MF $(DEPDIR)/oggCat-effector.Tpo -c -o oggCat-effector.o `test -f 'effector.cpp' || echo '$(srcdir)/'`effector.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggCat-effector.Tpo $(DEPDIR)/oggCat-effector.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='effector.cpp' object='oggCat-effector.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -c -o oggCat-effector.o `test -f 'effector.cpp' || echo '$(srcdir)/'`effector.cpp - -oggCat-effector.obj: effector.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -MT oggCat-effector.obj -MD -MP -MF $(DEPDIR)/oggCat-effector.Tpo -c -o oggCat-effector.obj `if test -f 'effector.cpp'; then $(CYGPATH_W) 'effector.cpp'; else $(CYGPATH_W) '$(srcdir)/effector.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggCat-effector.Tpo $(DEPDIR)/oggCat-effector.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='effector.cpp' object='oggCat-effector.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -c -o oggCat-effector.obj `if test -f 'effector.cpp'; then $(CYGPATH_W) 'effector.cpp'; else $(CYGPATH_W) '$(srcdir)/effector.cpp'; fi` - -oggCat-crossfader.o: crossfader.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -MT oggCat-crossfader.o -MD -MP -MF $(DEPDIR)/oggCat-crossfader.Tpo -c -o oggCat-crossfader.o `test -f 'crossfader.cpp' || echo '$(srcdir)/'`crossfader.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggCat-crossfader.Tpo $(DEPDIR)/oggCat-crossfader.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='crossfader.cpp' object='oggCat-crossfader.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -c -o oggCat-crossfader.o `test -f 'crossfader.cpp' || echo '$(srcdir)/'`crossfader.cpp - -oggCat-crossfader.obj: crossfader.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -MT oggCat-crossfader.obj -MD -MP -MF $(DEPDIR)/oggCat-crossfader.Tpo -c -o oggCat-crossfader.obj `if test -f 'crossfader.cpp'; then $(CYGPATH_W) 'crossfader.cpp'; else $(CYGPATH_W) '$(srcdir)/crossfader.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggCat-crossfader.Tpo $(DEPDIR)/oggCat-crossfader.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='crossfader.cpp' object='oggCat-crossfader.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -c -o oggCat-crossfader.obj `if test -f 'crossfader.cpp'; then $(CYGPATH_W) 'crossfader.cpp'; else $(CYGPATH_W) '$(srcdir)/crossfader.cpp'; fi` - -oggCat-plainPicture.o: plainPicture.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -MT oggCat-plainPicture.o -MD -MP -MF $(DEPDIR)/oggCat-plainPicture.Tpo -c -o oggCat-plainPicture.o `test -f 'plainPicture.cpp' || echo '$(srcdir)/'`plainPicture.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggCat-plainPicture.Tpo $(DEPDIR)/oggCat-plainPicture.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='plainPicture.cpp' object='oggCat-plainPicture.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -c -o oggCat-plainPicture.o `test -f 'plainPicture.cpp' || echo '$(srcdir)/'`plainPicture.cpp - -oggCat-plainPicture.obj: plainPicture.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -MT oggCat-plainPicture.obj -MD -MP -MF $(DEPDIR)/oggCat-plainPicture.Tpo -c -o oggCat-plainPicture.obj `if test -f 'plainPicture.cpp'; then $(CYGPATH_W) 'plainPicture.cpp'; else $(CYGPATH_W) '$(srcdir)/plainPicture.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggCat-plainPicture.Tpo $(DEPDIR)/oggCat-plainPicture.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='plainPicture.cpp' object='oggCat-plainPicture.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -c -o oggCat-plainPicture.obj `if test -f 'plainPicture.cpp'; then $(CYGPATH_W) 'plainPicture.cpp'; else $(CYGPATH_W) '$(srcdir)/plainPicture.cpp'; fi` - -oggCat-lowpassEffect.o: lowpassEffect.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -MT oggCat-lowpassEffect.o -MD -MP -MF $(DEPDIR)/oggCat-lowpassEffect.Tpo -c -o oggCat-lowpassEffect.o `test -f 'lowpassEffect.cpp' || echo '$(srcdir)/'`lowpassEffect.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggCat-lowpassEffect.Tpo $(DEPDIR)/oggCat-lowpassEffect.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='lowpassEffect.cpp' object='oggCat-lowpassEffect.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -c -o oggCat-lowpassEffect.o `test -f 'lowpassEffect.cpp' || echo '$(srcdir)/'`lowpassEffect.cpp - -oggCat-lowpassEffect.obj: lowpassEffect.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -MT oggCat-lowpassEffect.obj -MD -MP -MF $(DEPDIR)/oggCat-lowpassEffect.Tpo -c -o oggCat-lowpassEffect.obj `if test -f 'lowpassEffect.cpp'; then $(CYGPATH_W) 'lowpassEffect.cpp'; else $(CYGPATH_W) '$(srcdir)/lowpassEffect.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggCat-lowpassEffect.Tpo $(DEPDIR)/oggCat-lowpassEffect.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='lowpassEffect.cpp' object='oggCat-lowpassEffect.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -c -o oggCat-lowpassEffect.obj `if test -f 'lowpassEffect.cpp'; then $(CYGPATH_W) 'lowpassEffect.cpp'; else $(CYGPATH_W) '$(srcdir)/lowpassEffect.cpp'; fi` - -oggCat-kenburnseffect.o: kenburnseffect.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -MT oggCat-kenburnseffect.o -MD -MP -MF $(DEPDIR)/oggCat-kenburnseffect.Tpo -c -o oggCat-kenburnseffect.o `test -f 'kenburnseffect.cpp' || echo '$(srcdir)/'`kenburnseffect.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggCat-kenburnseffect.Tpo $(DEPDIR)/oggCat-kenburnseffect.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='kenburnseffect.cpp' object='oggCat-kenburnseffect.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -c -o oggCat-kenburnseffect.o `test -f 'kenburnseffect.cpp' || echo '$(srcdir)/'`kenburnseffect.cpp - -oggCat-kenburnseffect.obj: kenburnseffect.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -MT oggCat-kenburnseffect.obj -MD -MP -MF $(DEPDIR)/oggCat-kenburnseffect.Tpo -c -o oggCat-kenburnseffect.obj `if test -f 'kenburnseffect.cpp'; then $(CYGPATH_W) 'kenburnseffect.cpp'; else $(CYGPATH_W) '$(srcdir)/kenburnseffect.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggCat-kenburnseffect.Tpo $(DEPDIR)/oggCat-kenburnseffect.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='kenburnseffect.cpp' object='oggCat-kenburnseffect.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -c -o oggCat-kenburnseffect.obj `if test -f 'kenburnseffect.cpp'; then $(CYGPATH_W) 'kenburnseffect.cpp'; else $(CYGPATH_W) '$(srcdir)/kenburnseffect.cpp'; fi` - -oggCat-pictureResize.o: pictureResize.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -MT oggCat-pictureResize.o -MD -MP -MF $(DEPDIR)/oggCat-pictureResize.Tpo -c -o oggCat-pictureResize.o `test -f 'pictureResize.cpp' || echo '$(srcdir)/'`pictureResize.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggCat-pictureResize.Tpo $(DEPDIR)/oggCat-pictureResize.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='pictureResize.cpp' object='oggCat-pictureResize.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -c -o oggCat-pictureResize.o `test -f 'pictureResize.cpp' || echo '$(srcdir)/'`pictureResize.cpp - -oggCat-pictureResize.obj: pictureResize.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -MT oggCat-pictureResize.obj -MD -MP -MF $(DEPDIR)/oggCat-pictureResize.Tpo -c -o oggCat-pictureResize.obj `if test -f 'pictureResize.cpp'; then $(CYGPATH_W) 'pictureResize.cpp'; else $(CYGPATH_W) '$(srcdir)/pictureResize.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggCat-pictureResize.Tpo $(DEPDIR)/oggCat-pictureResize.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='pictureResize.cpp' object='oggCat-pictureResize.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -c -o oggCat-pictureResize.obj `if test -f 'pictureResize.cpp'; then $(CYGPATH_W) 'pictureResize.cpp'; else $(CYGPATH_W) '$(srcdir)/pictureResize.cpp'; fi` - -oggCat-pictureBlend.o: pictureBlend.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -MT oggCat-pictureBlend.o -MD -MP -MF $(DEPDIR)/oggCat-pictureBlend.Tpo -c -o oggCat-pictureBlend.o `test -f 'pictureBlend.cpp' || echo '$(srcdir)/'`pictureBlend.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggCat-pictureBlend.Tpo $(DEPDIR)/oggCat-pictureBlend.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='pictureBlend.cpp' object='oggCat-pictureBlend.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -c -o oggCat-pictureBlend.o `test -f 'pictureBlend.cpp' || echo '$(srcdir)/'`pictureBlend.cpp - -oggCat-pictureBlend.obj: pictureBlend.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -MT oggCat-pictureBlend.obj -MD -MP -MF $(DEPDIR)/oggCat-pictureBlend.Tpo -c -o oggCat-pictureBlend.obj `if test -f 'pictureBlend.cpp'; then $(CYGPATH_W) 'pictureBlend.cpp'; else $(CYGPATH_W) '$(srcdir)/pictureBlend.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggCat-pictureBlend.Tpo $(DEPDIR)/oggCat-pictureBlend.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='pictureBlend.cpp' object='oggCat-pictureBlend.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -c -o oggCat-pictureBlend.obj `if test -f 'pictureBlend.cpp'; then $(CYGPATH_W) 'pictureBlend.cpp'; else $(CYGPATH_W) '$(srcdir)/pictureBlend.cpp'; fi` - -oggCat-pictureLoader.o: pictureLoader.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -MT oggCat-pictureLoader.o -MD -MP -MF $(DEPDIR)/oggCat-pictureLoader.Tpo -c -o oggCat-pictureLoader.o `test -f 'pictureLoader.cpp' || echo '$(srcdir)/'`pictureLoader.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggCat-pictureLoader.Tpo $(DEPDIR)/oggCat-pictureLoader.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='pictureLoader.cpp' object='oggCat-pictureLoader.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -c -o oggCat-pictureLoader.o `test -f 'pictureLoader.cpp' || echo '$(srcdir)/'`pictureLoader.cpp - -oggCat-pictureLoader.obj: pictureLoader.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -MT oggCat-pictureLoader.obj -MD -MP -MF $(DEPDIR)/oggCat-pictureLoader.Tpo -c -o oggCat-pictureLoader.obj `if test -f 'pictureLoader.cpp'; then $(CYGPATH_W) 'pictureLoader.cpp'; else $(CYGPATH_W) '$(srcdir)/pictureLoader.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggCat-pictureLoader.Tpo $(DEPDIR)/oggCat-pictureLoader.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='pictureLoader.cpp' object='oggCat-pictureLoader.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -c -o oggCat-pictureLoader.obj `if test -f 'pictureLoader.cpp'; then $(CYGPATH_W) 'pictureLoader.cpp'; else $(CYGPATH_W) '$(srcdir)/pictureLoader.cpp'; fi` - -oggCat-hookHandler.o: hookHandler.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -MT oggCat-hookHandler.o -MD -MP -MF $(DEPDIR)/oggCat-hookHandler.Tpo -c -o oggCat-hookHandler.o `test -f 'hookHandler.cpp' || echo '$(srcdir)/'`hookHandler.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggCat-hookHandler.Tpo $(DEPDIR)/oggCat-hookHandler.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='hookHandler.cpp' object='oggCat-hookHandler.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -c -o oggCat-hookHandler.o `test -f 'hookHandler.cpp' || echo '$(srcdir)/'`hookHandler.cpp - -oggCat-hookHandler.obj: hookHandler.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -MT oggCat-hookHandler.obj -MD -MP -MF $(DEPDIR)/oggCat-hookHandler.Tpo -c -o oggCat-hookHandler.obj `if test -f 'hookHandler.cpp'; then $(CYGPATH_W) 'hookHandler.cpp'; else $(CYGPATH_W) '$(srcdir)/hookHandler.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggCat-hookHandler.Tpo $(DEPDIR)/oggCat-hookHandler.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='hookHandler.cpp' object='oggCat-hookHandler.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -c -o oggCat-hookHandler.obj `if test -f 'hookHandler.cpp'; then $(CYGPATH_W) 'hookHandler.cpp'; else $(CYGPATH_W) '$(srcdir)/hookHandler.cpp'; fi` - -oggCat-videoHook.o: videoHook.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -MT oggCat-videoHook.o -MD -MP -MF $(DEPDIR)/oggCat-videoHook.Tpo -c -o oggCat-videoHook.o `test -f 'videoHook.cpp' || echo '$(srcdir)/'`videoHook.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggCat-videoHook.Tpo $(DEPDIR)/oggCat-videoHook.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='videoHook.cpp' object='oggCat-videoHook.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -c -o oggCat-videoHook.o `test -f 'videoHook.cpp' || echo '$(srcdir)/'`videoHook.cpp - -oggCat-videoHook.obj: videoHook.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -MT oggCat-videoHook.obj -MD -MP -MF $(DEPDIR)/oggCat-videoHook.Tpo -c -o oggCat-videoHook.obj `if test -f 'videoHook.cpp'; then $(CYGPATH_W) 'videoHook.cpp'; else $(CYGPATH_W) '$(srcdir)/videoHook.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggCat-videoHook.Tpo $(DEPDIR)/oggCat-videoHook.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='videoHook.cpp' object='oggCat-videoHook.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -c -o oggCat-videoHook.obj `if test -f 'videoHook.cpp'; then $(CYGPATH_W) 'videoHook.cpp'; else $(CYGPATH_W) '$(srcdir)/videoHook.cpp'; fi` - -oggCat-audioHook.o: audioHook.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -MT oggCat-audioHook.o -MD -MP -MF $(DEPDIR)/oggCat-audioHook.Tpo -c -o oggCat-audioHook.o `test -f 'audioHook.cpp' || echo '$(srcdir)/'`audioHook.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggCat-audioHook.Tpo $(DEPDIR)/oggCat-audioHook.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='audioHook.cpp' object='oggCat-audioHook.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -c -o oggCat-audioHook.o `test -f 'audioHook.cpp' || echo '$(srcdir)/'`audioHook.cpp - -oggCat-audioHook.obj: audioHook.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -MT oggCat-audioHook.obj -MD -MP -MF $(DEPDIR)/oggCat-audioHook.Tpo -c -o oggCat-audioHook.obj `if test -f 'audioHook.cpp'; then $(CYGPATH_W) 'audioHook.cpp'; else $(CYGPATH_W) '$(srcdir)/audioHook.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggCat-audioHook.Tpo $(DEPDIR)/oggCat-audioHook.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='audioHook.cpp' object='oggCat-audioHook.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -c -o oggCat-audioHook.obj `if test -f 'audioHook.cpp'; then $(CYGPATH_W) 'audioHook.cpp'; else $(CYGPATH_W) '$(srcdir)/audioHook.cpp'; fi` - -oggCat-oggCat.o: oggCat.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -MT oggCat-oggCat.o -MD -MP -MF $(DEPDIR)/oggCat-oggCat.Tpo -c -o oggCat-oggCat.o `test -f 'oggCat.cpp' || echo '$(srcdir)/'`oggCat.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggCat-oggCat.Tpo $(DEPDIR)/oggCat-oggCat.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='oggCat.cpp' object='oggCat-oggCat.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -c -o oggCat-oggCat.o `test -f 'oggCat.cpp' || echo '$(srcdir)/'`oggCat.cpp - -oggCat-oggCat.obj: oggCat.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -MT oggCat-oggCat.obj -MD -MP -MF $(DEPDIR)/oggCat-oggCat.Tpo -c -o oggCat-oggCat.obj `if test -f 'oggCat.cpp'; then $(CYGPATH_W) 'oggCat.cpp'; else $(CYGPATH_W) '$(srcdir)/oggCat.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggCat-oggCat.Tpo $(DEPDIR)/oggCat-oggCat.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='oggCat.cpp' object='oggCat-oggCat.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggCat_CXXFLAGS) $(CXXFLAGS) -c -o oggCat-oggCat.obj `if test -f 'oggCat.cpp'; then $(CYGPATH_W) 'oggCat.cpp'; else $(CYGPATH_W) '$(srcdir)/oggCat.cpp'; fi` - -oggScroll-mediaUnit.o: mediaUnit.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -MT oggScroll-mediaUnit.o -MD -MP -MF $(DEPDIR)/oggScroll-mediaUnit.Tpo -c -o oggScroll-mediaUnit.o `test -f 'mediaUnit.cpp' || echo '$(srcdir)/'`mediaUnit.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggScroll-mediaUnit.Tpo $(DEPDIR)/oggScroll-mediaUnit.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='mediaUnit.cpp' object='oggScroll-mediaUnit.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -c -o oggScroll-mediaUnit.o `test -f 'mediaUnit.cpp' || echo '$(srcdir)/'`mediaUnit.cpp - -oggScroll-mediaUnit.obj: mediaUnit.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -MT oggScroll-mediaUnit.obj -MD -MP -MF $(DEPDIR)/oggScroll-mediaUnit.Tpo -c -o oggScroll-mediaUnit.obj `if test -f 'mediaUnit.cpp'; then $(CYGPATH_W) 'mediaUnit.cpp'; else $(CYGPATH_W) '$(srcdir)/mediaUnit.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggScroll-mediaUnit.Tpo $(DEPDIR)/oggScroll-mediaUnit.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='mediaUnit.cpp' object='oggScroll-mediaUnit.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -c -o oggScroll-mediaUnit.obj `if test -f 'mediaUnit.cpp'; then $(CYGPATH_W) 'mediaUnit.cpp'; else $(CYGPATH_W) '$(srcdir)/mediaUnit.cpp'; fi` - -oggScroll-mediaRepository.o: mediaRepository.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -MT oggScroll-mediaRepository.o -MD -MP -MF $(DEPDIR)/oggScroll-mediaRepository.Tpo -c -o oggScroll-mediaRepository.o `test -f 'mediaRepository.cpp' || echo '$(srcdir)/'`mediaRepository.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggScroll-mediaRepository.Tpo $(DEPDIR)/oggScroll-mediaRepository.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='mediaRepository.cpp' object='oggScroll-mediaRepository.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -c -o oggScroll-mediaRepository.o `test -f 'mediaRepository.cpp' || echo '$(srcdir)/'`mediaRepository.cpp - -oggScroll-mediaRepository.obj: mediaRepository.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -MT oggScroll-mediaRepository.obj -MD -MP -MF $(DEPDIR)/oggScroll-mediaRepository.Tpo -c -o oggScroll-mediaRepository.obj `if test -f 'mediaRepository.cpp'; then $(CYGPATH_W) 'mediaRepository.cpp'; else $(CYGPATH_W) '$(srcdir)/mediaRepository.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggScroll-mediaRepository.Tpo $(DEPDIR)/oggScroll-mediaRepository.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='mediaRepository.cpp' object='oggScroll-mediaRepository.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -c -o oggScroll-mediaRepository.obj `if test -f 'mediaRepository.cpp'; then $(CYGPATH_W) 'mediaRepository.cpp'; else $(CYGPATH_W) '$(srcdir)/mediaRepository.cpp'; fi` - -oggScroll-fileRepository.o: fileRepository.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -MT oggScroll-fileRepository.o -MD -MP -MF $(DEPDIR)/oggScroll-fileRepository.Tpo -c -o oggScroll-fileRepository.o `test -f 'fileRepository.cpp' || echo '$(srcdir)/'`fileRepository.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggScroll-fileRepository.Tpo $(DEPDIR)/oggScroll-fileRepository.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='fileRepository.cpp' object='oggScroll-fileRepository.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -c -o oggScroll-fileRepository.o `test -f 'fileRepository.cpp' || echo '$(srcdir)/'`fileRepository.cpp - -oggScroll-fileRepository.obj: fileRepository.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -MT oggScroll-fileRepository.obj -MD -MP -MF $(DEPDIR)/oggScroll-fileRepository.Tpo -c -o oggScroll-fileRepository.obj `if test -f 'fileRepository.cpp'; then $(CYGPATH_W) 'fileRepository.cpp'; else $(CYGPATH_W) '$(srcdir)/fileRepository.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggScroll-fileRepository.Tpo $(DEPDIR)/oggScroll-fileRepository.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='fileRepository.cpp' object='oggScroll-fileRepository.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -c -o oggScroll-fileRepository.obj `if test -f 'fileRepository.cpp'; then $(CYGPATH_W) 'fileRepository.cpp'; else $(CYGPATH_W) '$(srcdir)/fileRepository.cpp'; fi` - -oggScroll-rawMediaPacket.o: rawMediaPacket.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -MT oggScroll-rawMediaPacket.o -MD -MP -MF $(DEPDIR)/oggScroll-rawMediaPacket.Tpo -c -o oggScroll-rawMediaPacket.o `test -f 'rawMediaPacket.cpp' || echo '$(srcdir)/'`rawMediaPacket.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggScroll-rawMediaPacket.Tpo $(DEPDIR)/oggScroll-rawMediaPacket.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='rawMediaPacket.cpp' object='oggScroll-rawMediaPacket.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -c -o oggScroll-rawMediaPacket.o `test -f 'rawMediaPacket.cpp' || echo '$(srcdir)/'`rawMediaPacket.cpp - -oggScroll-rawMediaPacket.obj: rawMediaPacket.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -MT oggScroll-rawMediaPacket.obj -MD -MP -MF $(DEPDIR)/oggScroll-rawMediaPacket.Tpo -c -o oggScroll-rawMediaPacket.obj `if test -f 'rawMediaPacket.cpp'; then $(CYGPATH_W) 'rawMediaPacket.cpp'; else $(CYGPATH_W) '$(srcdir)/rawMediaPacket.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggScroll-rawMediaPacket.Tpo $(DEPDIR)/oggScroll-rawMediaPacket.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='rawMediaPacket.cpp' object='oggScroll-rawMediaPacket.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -c -o oggScroll-rawMediaPacket.obj `if test -f 'rawMediaPacket.cpp'; then $(CYGPATH_W) 'rawMediaPacket.cpp'; else $(CYGPATH_W) '$(srcdir)/rawMediaPacket.cpp'; fi` - -oggScroll-mediaDecoder.o: mediaDecoder.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -MT oggScroll-mediaDecoder.o -MD -MP -MF $(DEPDIR)/oggScroll-mediaDecoder.Tpo -c -o oggScroll-mediaDecoder.o `test -f 'mediaDecoder.cpp' || echo '$(srcdir)/'`mediaDecoder.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggScroll-mediaDecoder.Tpo $(DEPDIR)/oggScroll-mediaDecoder.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='mediaDecoder.cpp' object='oggScroll-mediaDecoder.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -c -o oggScroll-mediaDecoder.o `test -f 'mediaDecoder.cpp' || echo '$(srcdir)/'`mediaDecoder.cpp - -oggScroll-mediaDecoder.obj: mediaDecoder.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -MT oggScroll-mediaDecoder.obj -MD -MP -MF $(DEPDIR)/oggScroll-mediaDecoder.Tpo -c -o oggScroll-mediaDecoder.obj `if test -f 'mediaDecoder.cpp'; then $(CYGPATH_W) 'mediaDecoder.cpp'; else $(CYGPATH_W) '$(srcdir)/mediaDecoder.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggScroll-mediaDecoder.Tpo $(DEPDIR)/oggScroll-mediaDecoder.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='mediaDecoder.cpp' object='oggScroll-mediaDecoder.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -c -o oggScroll-mediaDecoder.obj `if test -f 'mediaDecoder.cpp'; then $(CYGPATH_W) 'mediaDecoder.cpp'; else $(CYGPATH_W) '$(srcdir)/mediaDecoder.cpp'; fi` - -oggScroll-mediaEncoder.o: mediaEncoder.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -MT oggScroll-mediaEncoder.o -MD -MP -MF $(DEPDIR)/oggScroll-mediaEncoder.Tpo -c -o oggScroll-mediaEncoder.o `test -f 'mediaEncoder.cpp' || echo '$(srcdir)/'`mediaEncoder.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggScroll-mediaEncoder.Tpo $(DEPDIR)/oggScroll-mediaEncoder.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='mediaEncoder.cpp' object='oggScroll-mediaEncoder.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -c -o oggScroll-mediaEncoder.o `test -f 'mediaEncoder.cpp' || echo '$(srcdir)/'`mediaEncoder.cpp - -oggScroll-mediaEncoder.obj: mediaEncoder.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -MT oggScroll-mediaEncoder.obj -MD -MP -MF $(DEPDIR)/oggScroll-mediaEncoder.Tpo -c -o oggScroll-mediaEncoder.obj `if test -f 'mediaEncoder.cpp'; then $(CYGPATH_W) 'mediaEncoder.cpp'; else $(CYGPATH_W) '$(srcdir)/mediaEncoder.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggScroll-mediaEncoder.Tpo $(DEPDIR)/oggScroll-mediaEncoder.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='mediaEncoder.cpp' object='oggScroll-mediaEncoder.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -c -o oggScroll-mediaEncoder.obj `if test -f 'mediaEncoder.cpp'; then $(CYGPATH_W) 'mediaEncoder.cpp'; else $(CYGPATH_W) '$(srcdir)/mediaEncoder.cpp'; fi` - -oggScroll-mediaConverter.o: mediaConverter.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -MT oggScroll-mediaConverter.o -MD -MP -MF $(DEPDIR)/oggScroll-mediaConverter.Tpo -c -o oggScroll-mediaConverter.o `test -f 'mediaConverter.cpp' || echo '$(srcdir)/'`mediaConverter.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggScroll-mediaConverter.Tpo $(DEPDIR)/oggScroll-mediaConverter.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='mediaConverter.cpp' object='oggScroll-mediaConverter.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -c -o oggScroll-mediaConverter.o `test -f 'mediaConverter.cpp' || echo '$(srcdir)/'`mediaConverter.cpp - -oggScroll-mediaConverter.obj: mediaConverter.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -MT oggScroll-mediaConverter.obj -MD -MP -MF $(DEPDIR)/oggScroll-mediaConverter.Tpo -c -o oggScroll-mediaConverter.obj `if test -f 'mediaConverter.cpp'; then $(CYGPATH_W) 'mediaConverter.cpp'; else $(CYGPATH_W) '$(srcdir)/mediaConverter.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggScroll-mediaConverter.Tpo $(DEPDIR)/oggScroll-mediaConverter.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='mediaConverter.cpp' object='oggScroll-mediaConverter.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -c -o oggScroll-mediaConverter.obj `if test -f 'mediaConverter.cpp'; then $(CYGPATH_W) 'mediaConverter.cpp'; else $(CYGPATH_W) '$(srcdir)/mediaConverter.cpp'; fi` - -oggScroll-oggDecoder.o: oggDecoder.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -MT oggScroll-oggDecoder.o -MD -MP -MF $(DEPDIR)/oggScroll-oggDecoder.Tpo -c -o oggScroll-oggDecoder.o `test -f 'oggDecoder.cpp' || echo '$(srcdir)/'`oggDecoder.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggScroll-oggDecoder.Tpo $(DEPDIR)/oggScroll-oggDecoder.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='oggDecoder.cpp' object='oggScroll-oggDecoder.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -c -o oggScroll-oggDecoder.o `test -f 'oggDecoder.cpp' || echo '$(srcdir)/'`oggDecoder.cpp - -oggScroll-oggDecoder.obj: oggDecoder.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -MT oggScroll-oggDecoder.obj -MD -MP -MF $(DEPDIR)/oggScroll-oggDecoder.Tpo -c -o oggScroll-oggDecoder.obj `if test -f 'oggDecoder.cpp'; then $(CYGPATH_W) 'oggDecoder.cpp'; else $(CYGPATH_W) '$(srcdir)/oggDecoder.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggScroll-oggDecoder.Tpo $(DEPDIR)/oggScroll-oggDecoder.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='oggDecoder.cpp' object='oggScroll-oggDecoder.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -c -o oggScroll-oggDecoder.obj `if test -f 'oggDecoder.cpp'; then $(CYGPATH_W) 'oggDecoder.cpp'; else $(CYGPATH_W) '$(srcdir)/oggDecoder.cpp'; fi` - -oggScroll-oggStreamDecoder.o: oggStreamDecoder.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -MT oggScroll-oggStreamDecoder.o -MD -MP -MF $(DEPDIR)/oggScroll-oggStreamDecoder.Tpo -c -o oggScroll-oggStreamDecoder.o `test -f 'oggStreamDecoder.cpp' || echo '$(srcdir)/'`oggStreamDecoder.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggScroll-oggStreamDecoder.Tpo $(DEPDIR)/oggScroll-oggStreamDecoder.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='oggStreamDecoder.cpp' object='oggScroll-oggStreamDecoder.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -c -o oggScroll-oggStreamDecoder.o `test -f 'oggStreamDecoder.cpp' || echo '$(srcdir)/'`oggStreamDecoder.cpp - -oggScroll-oggStreamDecoder.obj: oggStreamDecoder.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -MT oggScroll-oggStreamDecoder.obj -MD -MP -MF $(DEPDIR)/oggScroll-oggStreamDecoder.Tpo -c -o oggScroll-oggStreamDecoder.obj `if test -f 'oggStreamDecoder.cpp'; then $(CYGPATH_W) 'oggStreamDecoder.cpp'; else $(CYGPATH_W) '$(srcdir)/oggStreamDecoder.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggScroll-oggStreamDecoder.Tpo $(DEPDIR)/oggScroll-oggStreamDecoder.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='oggStreamDecoder.cpp' object='oggScroll-oggStreamDecoder.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -c -o oggScroll-oggStreamDecoder.obj `if test -f 'oggStreamDecoder.cpp'; then $(CYGPATH_W) 'oggStreamDecoder.cpp'; else $(CYGPATH_W) '$(srcdir)/oggStreamDecoder.cpp'; fi` - -oggScroll-oggPage.o: oggPage.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -MT oggScroll-oggPage.o -MD -MP -MF $(DEPDIR)/oggScroll-oggPage.Tpo -c -o oggScroll-oggPage.o `test -f 'oggPage.cpp' || echo '$(srcdir)/'`oggPage.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggScroll-oggPage.Tpo $(DEPDIR)/oggScroll-oggPage.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='oggPage.cpp' object='oggScroll-oggPage.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -c -o oggScroll-oggPage.o `test -f 'oggPage.cpp' || echo '$(srcdir)/'`oggPage.cpp - -oggScroll-oggPage.obj: oggPage.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -MT oggScroll-oggPage.obj -MD -MP -MF $(DEPDIR)/oggScroll-oggPage.Tpo -c -o oggScroll-oggPage.obj `if test -f 'oggPage.cpp'; then $(CYGPATH_W) 'oggPage.cpp'; else $(CYGPATH_W) '$(srcdir)/oggPage.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggScroll-oggPage.Tpo $(DEPDIR)/oggScroll-oggPage.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='oggPage.cpp' object='oggScroll-oggPage.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -c -o oggScroll-oggPage.obj `if test -f 'oggPage.cpp'; then $(CYGPATH_W) 'oggPage.cpp'; else $(CYGPATH_W) '$(srcdir)/oggPage.cpp'; fi` - -oggScroll-oggPacket.o: oggPacket.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -MT oggScroll-oggPacket.o -MD -MP -MF $(DEPDIR)/oggScroll-oggPacket.Tpo -c -o oggScroll-oggPacket.o `test -f 'oggPacket.cpp' || echo '$(srcdir)/'`oggPacket.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggScroll-oggPacket.Tpo $(DEPDIR)/oggScroll-oggPacket.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='oggPacket.cpp' object='oggScroll-oggPacket.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -c -o oggScroll-oggPacket.o `test -f 'oggPacket.cpp' || echo '$(srcdir)/'`oggPacket.cpp - -oggScroll-oggPacket.obj: oggPacket.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -MT oggScroll-oggPacket.obj -MD -MP -MF $(DEPDIR)/oggScroll-oggPacket.Tpo -c -o oggScroll-oggPacket.obj `if test -f 'oggPacket.cpp'; then $(CYGPATH_W) 'oggPacket.cpp'; else $(CYGPATH_W) '$(srcdir)/oggPacket.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggScroll-oggPacket.Tpo $(DEPDIR)/oggScroll-oggPacket.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='oggPacket.cpp' object='oggScroll-oggPacket.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -c -o oggScroll-oggPacket.obj `if test -f 'oggPacket.cpp'; then $(CYGPATH_W) 'oggPacket.cpp'; else $(CYGPATH_W) '$(srcdir)/oggPacket.cpp'; fi` - -oggScroll-ringbuffer.o: ringbuffer.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -MT oggScroll-ringbuffer.o -MD -MP -MF $(DEPDIR)/oggScroll-ringbuffer.Tpo -c -o oggScroll-ringbuffer.o `test -f 'ringbuffer.cpp' || echo '$(srcdir)/'`ringbuffer.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggScroll-ringbuffer.Tpo $(DEPDIR)/oggScroll-ringbuffer.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='ringbuffer.cpp' object='oggScroll-ringbuffer.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -c -o oggScroll-ringbuffer.o `test -f 'ringbuffer.cpp' || echo '$(srcdir)/'`ringbuffer.cpp - -oggScroll-ringbuffer.obj: ringbuffer.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -MT oggScroll-ringbuffer.obj -MD -MP -MF $(DEPDIR)/oggScroll-ringbuffer.Tpo -c -o oggScroll-ringbuffer.obj `if test -f 'ringbuffer.cpp'; then $(CYGPATH_W) 'ringbuffer.cpp'; else $(CYGPATH_W) '$(srcdir)/ringbuffer.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggScroll-ringbuffer.Tpo $(DEPDIR)/oggScroll-ringbuffer.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='ringbuffer.cpp' object='oggScroll-ringbuffer.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -c -o oggScroll-ringbuffer.obj `if test -f 'ringbuffer.cpp'; then $(CYGPATH_W) 'ringbuffer.cpp'; else $(CYGPATH_W) '$(srcdir)/ringbuffer.cpp'; fi` - -oggScroll-oggRingbuffer.o: oggRingbuffer.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -MT oggScroll-oggRingbuffer.o -MD -MP -MF $(DEPDIR)/oggScroll-oggRingbuffer.Tpo -c -o oggScroll-oggRingbuffer.o `test -f 'oggRingbuffer.cpp' || echo '$(srcdir)/'`oggRingbuffer.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggScroll-oggRingbuffer.Tpo $(DEPDIR)/oggScroll-oggRingbuffer.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='oggRingbuffer.cpp' object='oggScroll-oggRingbuffer.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -c -o oggScroll-oggRingbuffer.o `test -f 'oggRingbuffer.cpp' || echo '$(srcdir)/'`oggRingbuffer.cpp - -oggScroll-oggRingbuffer.obj: oggRingbuffer.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -MT oggScroll-oggRingbuffer.obj -MD -MP -MF $(DEPDIR)/oggScroll-oggRingbuffer.Tpo -c -o oggScroll-oggRingbuffer.obj `if test -f 'oggRingbuffer.cpp'; then $(CYGPATH_W) 'oggRingbuffer.cpp'; else $(CYGPATH_W) '$(srcdir)/oggRingbuffer.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggScroll-oggRingbuffer.Tpo $(DEPDIR)/oggScroll-oggRingbuffer.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='oggRingbuffer.cpp' object='oggScroll-oggRingbuffer.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -c -o oggScroll-oggRingbuffer.obj `if test -f 'oggRingbuffer.cpp'; then $(CYGPATH_W) 'oggRingbuffer.cpp'; else $(CYGPATH_W) '$(srcdir)/oggRingbuffer.cpp'; fi` - -oggScroll-crc.o: crc.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -MT oggScroll-crc.o -MD -MP -MF $(DEPDIR)/oggScroll-crc.Tpo -c -o oggScroll-crc.o `test -f 'crc.cpp' || echo '$(srcdir)/'`crc.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggScroll-crc.Tpo $(DEPDIR)/oggScroll-crc.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='crc.cpp' object='oggScroll-crc.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -c -o oggScroll-crc.o `test -f 'crc.cpp' || echo '$(srcdir)/'`crc.cpp - -oggScroll-crc.obj: crc.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -MT oggScroll-crc.obj -MD -MP -MF $(DEPDIR)/oggScroll-crc.Tpo -c -o oggScroll-crc.obj `if test -f 'crc.cpp'; then $(CYGPATH_W) 'crc.cpp'; else $(CYGPATH_W) '$(srcdir)/crc.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggScroll-crc.Tpo $(DEPDIR)/oggScroll-crc.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='crc.cpp' object='oggScroll-crc.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -c -o oggScroll-crc.obj `if test -f 'crc.cpp'; then $(CYGPATH_W) 'crc.cpp'; else $(CYGPATH_W) '$(srcdir)/crc.cpp'; fi` - -oggScroll-granulePosInterpreter.o: granulePosInterpreter.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -MT oggScroll-granulePosInterpreter.o -MD -MP -MF $(DEPDIR)/oggScroll-granulePosInterpreter.Tpo -c -o oggScroll-granulePosInterpreter.o `test -f 'granulePosInterpreter.cpp' || echo '$(srcdir)/'`granulePosInterpreter.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggScroll-granulePosInterpreter.Tpo $(DEPDIR)/oggScroll-granulePosInterpreter.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='granulePosInterpreter.cpp' object='oggScroll-granulePosInterpreter.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -c -o oggScroll-granulePosInterpreter.o `test -f 'granulePosInterpreter.cpp' || echo '$(srcdir)/'`granulePosInterpreter.cpp - -oggScroll-granulePosInterpreter.obj: granulePosInterpreter.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -MT oggScroll-granulePosInterpreter.obj -MD -MP -MF $(DEPDIR)/oggScroll-granulePosInterpreter.Tpo -c -o oggScroll-granulePosInterpreter.obj `if test -f 'granulePosInterpreter.cpp'; then $(CYGPATH_W) 'granulePosInterpreter.cpp'; else $(CYGPATH_W) '$(srcdir)/granulePosInterpreter.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggScroll-granulePosInterpreter.Tpo $(DEPDIR)/oggScroll-granulePosInterpreter.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='granulePosInterpreter.cpp' object='oggScroll-granulePosInterpreter.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -c -o oggScroll-granulePosInterpreter.obj `if test -f 'granulePosInterpreter.cpp'; then $(CYGPATH_W) 'granulePosInterpreter.cpp'; else $(CYGPATH_W) '$(srcdir)/granulePosInterpreter.cpp'; fi` - -oggScroll-mediaOutputDecoder.o: mediaOutputDecoder.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -MT oggScroll-mediaOutputDecoder.o -MD -MP -MF $(DEPDIR)/oggScroll-mediaOutputDecoder.Tpo -c -o oggScroll-mediaOutputDecoder.o `test -f 'mediaOutputDecoder.cpp' || echo '$(srcdir)/'`mediaOutputDecoder.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggScroll-mediaOutputDecoder.Tpo $(DEPDIR)/oggScroll-mediaOutputDecoder.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='mediaOutputDecoder.cpp' object='oggScroll-mediaOutputDecoder.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -c -o oggScroll-mediaOutputDecoder.o `test -f 'mediaOutputDecoder.cpp' || echo '$(srcdir)/'`mediaOutputDecoder.cpp - -oggScroll-mediaOutputDecoder.obj: mediaOutputDecoder.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -MT oggScroll-mediaOutputDecoder.obj -MD -MP -MF $(DEPDIR)/oggScroll-mediaOutputDecoder.Tpo -c -o oggScroll-mediaOutputDecoder.obj `if test -f 'mediaOutputDecoder.cpp'; then $(CYGPATH_W) 'mediaOutputDecoder.cpp'; else $(CYGPATH_W) '$(srcdir)/mediaOutputDecoder.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggScroll-mediaOutputDecoder.Tpo $(DEPDIR)/oggScroll-mediaOutputDecoder.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='mediaOutputDecoder.cpp' object='oggScroll-mediaOutputDecoder.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -c -o oggScroll-mediaOutputDecoder.obj `if test -f 'mediaOutputDecoder.cpp'; then $(CYGPATH_W) 'mediaOutputDecoder.cpp'; else $(CYGPATH_W) '$(srcdir)/mediaOutputDecoder.cpp'; fi` - -oggScroll-mediaInputEncoder.o: mediaInputEncoder.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -MT oggScroll-mediaInputEncoder.o -MD -MP -MF $(DEPDIR)/oggScroll-mediaInputEncoder.Tpo -c -o oggScroll-mediaInputEncoder.o `test -f 'mediaInputEncoder.cpp' || echo '$(srcdir)/'`mediaInputEncoder.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggScroll-mediaInputEncoder.Tpo $(DEPDIR)/oggScroll-mediaInputEncoder.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='mediaInputEncoder.cpp' object='oggScroll-mediaInputEncoder.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -c -o oggScroll-mediaInputEncoder.o `test -f 'mediaInputEncoder.cpp' || echo '$(srcdir)/'`mediaInputEncoder.cpp - -oggScroll-mediaInputEncoder.obj: mediaInputEncoder.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -MT oggScroll-mediaInputEncoder.obj -MD -MP -MF $(DEPDIR)/oggScroll-mediaInputEncoder.Tpo -c -o oggScroll-mediaInputEncoder.obj `if test -f 'mediaInputEncoder.cpp'; then $(CYGPATH_W) 'mediaInputEncoder.cpp'; else $(CYGPATH_W) '$(srcdir)/mediaInputEncoder.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggScroll-mediaInputEncoder.Tpo $(DEPDIR)/oggScroll-mediaInputEncoder.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='mediaInputEncoder.cpp' object='oggScroll-mediaInputEncoder.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -c -o oggScroll-mediaInputEncoder.obj `if test -f 'mediaInputEncoder.cpp'; then $(CYGPATH_W) 'mediaInputEncoder.cpp'; else $(CYGPATH_W) '$(srcdir)/mediaInputEncoder.cpp'; fi` - -oggScroll-streamSerializer.o: streamSerializer.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -MT oggScroll-streamSerializer.o -MD -MP -MF $(DEPDIR)/oggScroll-streamSerializer.Tpo -c -o oggScroll-streamSerializer.o `test -f 'streamSerializer.cpp' || echo '$(srcdir)/'`streamSerializer.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggScroll-streamSerializer.Tpo $(DEPDIR)/oggScroll-streamSerializer.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='streamSerializer.cpp' object='oggScroll-streamSerializer.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -c -o oggScroll-streamSerializer.o `test -f 'streamSerializer.cpp' || echo '$(srcdir)/'`streamSerializer.cpp - -oggScroll-streamSerializer.obj: streamSerializer.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -MT oggScroll-streamSerializer.obj -MD -MP -MF $(DEPDIR)/oggScroll-streamSerializer.Tpo -c -o oggScroll-streamSerializer.obj `if test -f 'streamSerializer.cpp'; then $(CYGPATH_W) 'streamSerializer.cpp'; else $(CYGPATH_W) '$(srcdir)/streamSerializer.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggScroll-streamSerializer.Tpo $(DEPDIR)/oggScroll-streamSerializer.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='streamSerializer.cpp' object='oggScroll-streamSerializer.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -c -o oggScroll-streamSerializer.obj `if test -f 'streamSerializer.cpp'; then $(CYGPATH_W) 'streamSerializer.cpp'; else $(CYGPATH_W) '$(srcdir)/streamSerializer.cpp'; fi` - -oggScroll-oggBOSExtractorFactory.o: oggBOSExtractorFactory.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -MT oggScroll-oggBOSExtractorFactory.o -MD -MP -MF $(DEPDIR)/oggScroll-oggBOSExtractorFactory.Tpo -c -o oggScroll-oggBOSExtractorFactory.o `test -f 'oggBOSExtractorFactory.cpp' || echo '$(srcdir)/'`oggBOSExtractorFactory.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggScroll-oggBOSExtractorFactory.Tpo $(DEPDIR)/oggScroll-oggBOSExtractorFactory.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='oggBOSExtractorFactory.cpp' object='oggScroll-oggBOSExtractorFactory.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -c -o oggScroll-oggBOSExtractorFactory.o `test -f 'oggBOSExtractorFactory.cpp' || echo '$(srcdir)/'`oggBOSExtractorFactory.cpp - -oggScroll-oggBOSExtractorFactory.obj: oggBOSExtractorFactory.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -MT oggScroll-oggBOSExtractorFactory.obj -MD -MP -MF $(DEPDIR)/oggScroll-oggBOSExtractorFactory.Tpo -c -o oggScroll-oggBOSExtractorFactory.obj `if test -f 'oggBOSExtractorFactory.cpp'; then $(CYGPATH_W) 'oggBOSExtractorFactory.cpp'; else $(CYGPATH_W) '$(srcdir)/oggBOSExtractorFactory.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggScroll-oggBOSExtractorFactory.Tpo $(DEPDIR)/oggScroll-oggBOSExtractorFactory.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='oggBOSExtractorFactory.cpp' object='oggScroll-oggBOSExtractorFactory.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -c -o oggScroll-oggBOSExtractorFactory.obj `if test -f 'oggBOSExtractorFactory.cpp'; then $(CYGPATH_W) 'oggBOSExtractorFactory.cpp'; else $(CYGPATH_W) '$(srcdir)/oggBOSExtractorFactory.cpp'; fi` - -oggScroll-oggStreamEncoder.o: oggStreamEncoder.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -MT oggScroll-oggStreamEncoder.o -MD -MP -MF $(DEPDIR)/oggScroll-oggStreamEncoder.Tpo -c -o oggScroll-oggStreamEncoder.o `test -f 'oggStreamEncoder.cpp' || echo '$(srcdir)/'`oggStreamEncoder.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggScroll-oggStreamEncoder.Tpo $(DEPDIR)/oggScroll-oggStreamEncoder.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='oggStreamEncoder.cpp' object='oggScroll-oggStreamEncoder.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -c -o oggScroll-oggStreamEncoder.o `test -f 'oggStreamEncoder.cpp' || echo '$(srcdir)/'`oggStreamEncoder.cpp - -oggScroll-oggStreamEncoder.obj: oggStreamEncoder.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -MT oggScroll-oggStreamEncoder.obj -MD -MP -MF $(DEPDIR)/oggScroll-oggStreamEncoder.Tpo -c -o oggScroll-oggStreamEncoder.obj `if test -f 'oggStreamEncoder.cpp'; then $(CYGPATH_W) 'oggStreamEncoder.cpp'; else $(CYGPATH_W) '$(srcdir)/oggStreamEncoder.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggScroll-oggStreamEncoder.Tpo $(DEPDIR)/oggScroll-oggStreamEncoder.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='oggStreamEncoder.cpp' object='oggScroll-oggStreamEncoder.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -c -o oggScroll-oggStreamEncoder.obj `if test -f 'oggStreamEncoder.cpp'; then $(CYGPATH_W) 'oggStreamEncoder.cpp'; else $(CYGPATH_W) '$(srcdir)/oggStreamEncoder.cpp'; fi` - -oggScroll-oggEncoder.o: oggEncoder.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -MT oggScroll-oggEncoder.o -MD -MP -MF $(DEPDIR)/oggScroll-oggEncoder.Tpo -c -o oggScroll-oggEncoder.o `test -f 'oggEncoder.cpp' || echo '$(srcdir)/'`oggEncoder.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggScroll-oggEncoder.Tpo $(DEPDIR)/oggScroll-oggEncoder.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='oggEncoder.cpp' object='oggScroll-oggEncoder.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -c -o oggScroll-oggEncoder.o `test -f 'oggEncoder.cpp' || echo '$(srcdir)/'`oggEncoder.cpp - -oggScroll-oggEncoder.obj: oggEncoder.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -MT oggScroll-oggEncoder.obj -MD -MP -MF $(DEPDIR)/oggScroll-oggEncoder.Tpo -c -o oggScroll-oggEncoder.obj `if test -f 'oggEncoder.cpp'; then $(CYGPATH_W) 'oggEncoder.cpp'; else $(CYGPATH_W) '$(srcdir)/oggEncoder.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggScroll-oggEncoder.Tpo $(DEPDIR)/oggScroll-oggEncoder.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='oggEncoder.cpp' object='oggScroll-oggEncoder.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -c -o oggScroll-oggEncoder.obj `if test -f 'oggEncoder.cpp'; then $(CYGPATH_W) 'oggEncoder.cpp'; else $(CYGPATH_W) '$(srcdir)/oggEncoder.cpp'; fi` - -oggScroll-streamExtractor.o: streamExtractor.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -MT oggScroll-streamExtractor.o -MD -MP -MF $(DEPDIR)/oggScroll-streamExtractor.Tpo -c -o oggScroll-streamExtractor.o `test -f 'streamExtractor.cpp' || echo '$(srcdir)/'`streamExtractor.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggScroll-streamExtractor.Tpo $(DEPDIR)/oggScroll-streamExtractor.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='streamExtractor.cpp' object='oggScroll-streamExtractor.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -c -o oggScroll-streamExtractor.o `test -f 'streamExtractor.cpp' || echo '$(srcdir)/'`streamExtractor.cpp - -oggScroll-streamExtractor.obj: streamExtractor.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -MT oggScroll-streamExtractor.obj -MD -MP -MF $(DEPDIR)/oggScroll-streamExtractor.Tpo -c -o oggScroll-streamExtractor.obj `if test -f 'streamExtractor.cpp'; then $(CYGPATH_W) 'streamExtractor.cpp'; else $(CYGPATH_W) '$(srcdir)/streamExtractor.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggScroll-streamExtractor.Tpo $(DEPDIR)/oggScroll-streamExtractor.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='streamExtractor.cpp' object='oggScroll-streamExtractor.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -c -o oggScroll-streamExtractor.obj `if test -f 'streamExtractor.cpp'; then $(CYGPATH_W) 'streamExtractor.cpp'; else $(CYGPATH_W) '$(srcdir)/streamExtractor.cpp'; fi` - -oggScroll-streamParameter.o: streamParameter.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -MT oggScroll-streamParameter.o -MD -MP -MF $(DEPDIR)/oggScroll-streamParameter.Tpo -c -o oggScroll-streamParameter.o `test -f 'streamParameter.cpp' || echo '$(srcdir)/'`streamParameter.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggScroll-streamParameter.Tpo $(DEPDIR)/oggScroll-streamParameter.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='streamParameter.cpp' object='oggScroll-streamParameter.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -c -o oggScroll-streamParameter.o `test -f 'streamParameter.cpp' || echo '$(srcdir)/'`streamParameter.cpp - -oggScroll-streamParameter.obj: streamParameter.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -MT oggScroll-streamParameter.obj -MD -MP -MF $(DEPDIR)/oggScroll-streamParameter.Tpo -c -o oggScroll-streamParameter.obj `if test -f 'streamParameter.cpp'; then $(CYGPATH_W) 'streamParameter.cpp'; else $(CYGPATH_W) '$(srcdir)/streamParameter.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggScroll-streamParameter.Tpo $(DEPDIR)/oggScroll-streamParameter.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='streamParameter.cpp' object='oggScroll-streamParameter.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -c -o oggScroll-streamParameter.obj `if test -f 'streamParameter.cpp'; then $(CYGPATH_W) 'streamParameter.cpp'; else $(CYGPATH_W) '$(srcdir)/streamParameter.cpp'; fi` - -oggScroll-streamMux.o: streamMux.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -MT oggScroll-streamMux.o -MD -MP -MF $(DEPDIR)/oggScroll-streamMux.Tpo -c -o oggScroll-streamMux.o `test -f 'streamMux.cpp' || echo '$(srcdir)/'`streamMux.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggScroll-streamMux.Tpo $(DEPDIR)/oggScroll-streamMux.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='streamMux.cpp' object='oggScroll-streamMux.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -c -o oggScroll-streamMux.o `test -f 'streamMux.cpp' || echo '$(srcdir)/'`streamMux.cpp - -oggScroll-streamMux.obj: streamMux.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -MT oggScroll-streamMux.obj -MD -MP -MF $(DEPDIR)/oggScroll-streamMux.Tpo -c -o oggScroll-streamMux.obj `if test -f 'streamMux.cpp'; then $(CYGPATH_W) 'streamMux.cpp'; else $(CYGPATH_W) '$(srcdir)/streamMux.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggScroll-streamMux.Tpo $(DEPDIR)/oggScroll-streamMux.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='streamMux.cpp' object='oggScroll-streamMux.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -c -o oggScroll-streamMux.obj `if test -f 'streamMux.cpp'; then $(CYGPATH_W) 'streamMux.cpp'; else $(CYGPATH_W) '$(srcdir)/streamMux.cpp'; fi` - -oggScroll-bufferRepository.o: bufferRepository.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -MT oggScroll-bufferRepository.o -MD -MP -MF $(DEPDIR)/oggScroll-bufferRepository.Tpo -c -o oggScroll-bufferRepository.o `test -f 'bufferRepository.cpp' || echo '$(srcdir)/'`bufferRepository.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggScroll-bufferRepository.Tpo $(DEPDIR)/oggScroll-bufferRepository.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='bufferRepository.cpp' object='oggScroll-bufferRepository.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -c -o oggScroll-bufferRepository.o `test -f 'bufferRepository.cpp' || echo '$(srcdir)/'`bufferRepository.cpp - -oggScroll-bufferRepository.obj: bufferRepository.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -MT oggScroll-bufferRepository.obj -MD -MP -MF $(DEPDIR)/oggScroll-bufferRepository.Tpo -c -o oggScroll-bufferRepository.obj `if test -f 'bufferRepository.cpp'; then $(CYGPATH_W) 'bufferRepository.cpp'; else $(CYGPATH_W) '$(srcdir)/bufferRepository.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggScroll-bufferRepository.Tpo $(DEPDIR)/oggScroll-bufferRepository.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='bufferRepository.cpp' object='oggScroll-bufferRepository.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -c -o oggScroll-bufferRepository.obj `if test -f 'bufferRepository.cpp'; then $(CYGPATH_W) 'bufferRepository.cpp'; else $(CYGPATH_W) '$(srcdir)/bufferRepository.cpp'; fi` - -oggScroll-oggComment.o: oggComment.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -MT oggScroll-oggComment.o -MD -MP -MF $(DEPDIR)/oggScroll-oggComment.Tpo -c -o oggScroll-oggComment.o `test -f 'oggComment.cpp' || echo '$(srcdir)/'`oggComment.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggScroll-oggComment.Tpo $(DEPDIR)/oggScroll-oggComment.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='oggComment.cpp' object='oggScroll-oggComment.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -c -o oggScroll-oggComment.o `test -f 'oggComment.cpp' || echo '$(srcdir)/'`oggComment.cpp - -oggScroll-oggComment.obj: oggComment.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -MT oggScroll-oggComment.obj -MD -MP -MF $(DEPDIR)/oggScroll-oggComment.Tpo -c -o oggScroll-oggComment.obj `if test -f 'oggComment.cpp'; then $(CYGPATH_W) 'oggComment.cpp'; else $(CYGPATH_W) '$(srcdir)/oggComment.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggScroll-oggComment.Tpo $(DEPDIR)/oggScroll-oggComment.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='oggComment.cpp' object='oggScroll-oggComment.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -c -o oggScroll-oggComment.obj `if test -f 'oggComment.cpp'; then $(CYGPATH_W) 'oggComment.cpp'; else $(CYGPATH_W) '$(srcdir)/oggComment.cpp'; fi` - -oggScroll-theoraPosInterpreter.o: theoraPosInterpreter.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -MT oggScroll-theoraPosInterpreter.o -MD -MP -MF $(DEPDIR)/oggScroll-theoraPosInterpreter.Tpo -c -o oggScroll-theoraPosInterpreter.o `test -f 'theoraPosInterpreter.cpp' || echo '$(srcdir)/'`theoraPosInterpreter.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggScroll-theoraPosInterpreter.Tpo $(DEPDIR)/oggScroll-theoraPosInterpreter.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='theoraPosInterpreter.cpp' object='oggScroll-theoraPosInterpreter.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -c -o oggScroll-theoraPosInterpreter.o `test -f 'theoraPosInterpreter.cpp' || echo '$(srcdir)/'`theoraPosInterpreter.cpp - -oggScroll-theoraPosInterpreter.obj: theoraPosInterpreter.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -MT oggScroll-theoraPosInterpreter.obj -MD -MP -MF $(DEPDIR)/oggScroll-theoraPosInterpreter.Tpo -c -o oggScroll-theoraPosInterpreter.obj `if test -f 'theoraPosInterpreter.cpp'; then $(CYGPATH_W) 'theoraPosInterpreter.cpp'; else $(CYGPATH_W) '$(srcdir)/theoraPosInterpreter.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggScroll-theoraPosInterpreter.Tpo $(DEPDIR)/oggScroll-theoraPosInterpreter.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='theoraPosInterpreter.cpp' object='oggScroll-theoraPosInterpreter.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -c -o oggScroll-theoraPosInterpreter.obj `if test -f 'theoraPosInterpreter.cpp'; then $(CYGPATH_W) 'theoraPosInterpreter.cpp'; else $(CYGPATH_W) '$(srcdir)/theoraPosInterpreter.cpp'; fi` - -oggScroll-theoraStreamParameter.o: theoraStreamParameter.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -MT oggScroll-theoraStreamParameter.o -MD -MP -MF $(DEPDIR)/oggScroll-theoraStreamParameter.Tpo -c -o oggScroll-theoraStreamParameter.o `test -f 'theoraStreamParameter.cpp' || echo '$(srcdir)/'`theoraStreamParameter.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggScroll-theoraStreamParameter.Tpo $(DEPDIR)/oggScroll-theoraStreamParameter.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='theoraStreamParameter.cpp' object='oggScroll-theoraStreamParameter.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -c -o oggScroll-theoraStreamParameter.o `test -f 'theoraStreamParameter.cpp' || echo '$(srcdir)/'`theoraStreamParameter.cpp - -oggScroll-theoraStreamParameter.obj: theoraStreamParameter.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -MT oggScroll-theoraStreamParameter.obj -MD -MP -MF $(DEPDIR)/oggScroll-theoraStreamParameter.Tpo -c -o oggScroll-theoraStreamParameter.obj `if test -f 'theoraStreamParameter.cpp'; then $(CYGPATH_W) 'theoraStreamParameter.cpp'; else $(CYGPATH_W) '$(srcdir)/theoraStreamParameter.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggScroll-theoraStreamParameter.Tpo $(DEPDIR)/oggScroll-theoraStreamParameter.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='theoraStreamParameter.cpp' object='oggScroll-theoraStreamParameter.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -c -o oggScroll-theoraStreamParameter.obj `if test -f 'theoraStreamParameter.cpp'; then $(CYGPATH_W) 'theoraStreamParameter.cpp'; else $(CYGPATH_W) '$(srcdir)/theoraStreamParameter.cpp'; fi` - -oggScroll-theoraExtractor.o: theoraExtractor.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -MT oggScroll-theoraExtractor.o -MD -MP -MF $(DEPDIR)/oggScroll-theoraExtractor.Tpo -c -o oggScroll-theoraExtractor.o `test -f 'theoraExtractor.cpp' || echo '$(srcdir)/'`theoraExtractor.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggScroll-theoraExtractor.Tpo $(DEPDIR)/oggScroll-theoraExtractor.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='theoraExtractor.cpp' object='oggScroll-theoraExtractor.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -c -o oggScroll-theoraExtractor.o `test -f 'theoraExtractor.cpp' || echo '$(srcdir)/'`theoraExtractor.cpp - -oggScroll-theoraExtractor.obj: theoraExtractor.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -MT oggScroll-theoraExtractor.obj -MD -MP -MF $(DEPDIR)/oggScroll-theoraExtractor.Tpo -c -o oggScroll-theoraExtractor.obj `if test -f 'theoraExtractor.cpp'; then $(CYGPATH_W) 'theoraExtractor.cpp'; else $(CYGPATH_W) '$(srcdir)/theoraExtractor.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggScroll-theoraExtractor.Tpo $(DEPDIR)/oggScroll-theoraExtractor.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='theoraExtractor.cpp' object='oggScroll-theoraExtractor.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -c -o oggScroll-theoraExtractor.obj `if test -f 'theoraExtractor.cpp'; then $(CYGPATH_W) 'theoraExtractor.cpp'; else $(CYGPATH_W) '$(srcdir)/theoraExtractor.cpp'; fi` - -oggScroll-vorbisPosInterpreter.o: vorbisPosInterpreter.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -MT oggScroll-vorbisPosInterpreter.o -MD -MP -MF $(DEPDIR)/oggScroll-vorbisPosInterpreter.Tpo -c -o oggScroll-vorbisPosInterpreter.o `test -f 'vorbisPosInterpreter.cpp' || echo '$(srcdir)/'`vorbisPosInterpreter.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggScroll-vorbisPosInterpreter.Tpo $(DEPDIR)/oggScroll-vorbisPosInterpreter.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='vorbisPosInterpreter.cpp' object='oggScroll-vorbisPosInterpreter.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -c -o oggScroll-vorbisPosInterpreter.o `test -f 'vorbisPosInterpreter.cpp' || echo '$(srcdir)/'`vorbisPosInterpreter.cpp - -oggScroll-vorbisPosInterpreter.obj: vorbisPosInterpreter.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -MT oggScroll-vorbisPosInterpreter.obj -MD -MP -MF $(DEPDIR)/oggScroll-vorbisPosInterpreter.Tpo -c -o oggScroll-vorbisPosInterpreter.obj `if test -f 'vorbisPosInterpreter.cpp'; then $(CYGPATH_W) 'vorbisPosInterpreter.cpp'; else $(CYGPATH_W) '$(srcdir)/vorbisPosInterpreter.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggScroll-vorbisPosInterpreter.Tpo $(DEPDIR)/oggScroll-vorbisPosInterpreter.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='vorbisPosInterpreter.cpp' object='oggScroll-vorbisPosInterpreter.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -c -o oggScroll-vorbisPosInterpreter.obj `if test -f 'vorbisPosInterpreter.cpp'; then $(CYGPATH_W) 'vorbisPosInterpreter.cpp'; else $(CYGPATH_W) '$(srcdir)/vorbisPosInterpreter.cpp'; fi` - -oggScroll-vorbisStreamParameter.o: vorbisStreamParameter.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -MT oggScroll-vorbisStreamParameter.o -MD -MP -MF $(DEPDIR)/oggScroll-vorbisStreamParameter.Tpo -c -o oggScroll-vorbisStreamParameter.o `test -f 'vorbisStreamParameter.cpp' || echo '$(srcdir)/'`vorbisStreamParameter.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggScroll-vorbisStreamParameter.Tpo $(DEPDIR)/oggScroll-vorbisStreamParameter.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='vorbisStreamParameter.cpp' object='oggScroll-vorbisStreamParameter.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -c -o oggScroll-vorbisStreamParameter.o `test -f 'vorbisStreamParameter.cpp' || echo '$(srcdir)/'`vorbisStreamParameter.cpp - -oggScroll-vorbisStreamParameter.obj: vorbisStreamParameter.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -MT oggScroll-vorbisStreamParameter.obj -MD -MP -MF $(DEPDIR)/oggScroll-vorbisStreamParameter.Tpo -c -o oggScroll-vorbisStreamParameter.obj `if test -f 'vorbisStreamParameter.cpp'; then $(CYGPATH_W) 'vorbisStreamParameter.cpp'; else $(CYGPATH_W) '$(srcdir)/vorbisStreamParameter.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggScroll-vorbisStreamParameter.Tpo $(DEPDIR)/oggScroll-vorbisStreamParameter.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='vorbisStreamParameter.cpp' object='oggScroll-vorbisStreamParameter.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -c -o oggScroll-vorbisStreamParameter.obj `if test -f 'vorbisStreamParameter.cpp'; then $(CYGPATH_W) 'vorbisStreamParameter.cpp'; else $(CYGPATH_W) '$(srcdir)/vorbisStreamParameter.cpp'; fi` - -oggScroll-vorbisExtractor.o: vorbisExtractor.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -MT oggScroll-vorbisExtractor.o -MD -MP -MF $(DEPDIR)/oggScroll-vorbisExtractor.Tpo -c -o oggScroll-vorbisExtractor.o `test -f 'vorbisExtractor.cpp' || echo '$(srcdir)/'`vorbisExtractor.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggScroll-vorbisExtractor.Tpo $(DEPDIR)/oggScroll-vorbisExtractor.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='vorbisExtractor.cpp' object='oggScroll-vorbisExtractor.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -c -o oggScroll-vorbisExtractor.o `test -f 'vorbisExtractor.cpp' || echo '$(srcdir)/'`vorbisExtractor.cpp - -oggScroll-vorbisExtractor.obj: vorbisExtractor.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -MT oggScroll-vorbisExtractor.obj -MD -MP -MF $(DEPDIR)/oggScroll-vorbisExtractor.Tpo -c -o oggScroll-vorbisExtractor.obj `if test -f 'vorbisExtractor.cpp'; then $(CYGPATH_W) 'vorbisExtractor.cpp'; else $(CYGPATH_W) '$(srcdir)/vorbisExtractor.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggScroll-vorbisExtractor.Tpo $(DEPDIR)/oggScroll-vorbisExtractor.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='vorbisExtractor.cpp' object='oggScroll-vorbisExtractor.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -c -o oggScroll-vorbisExtractor.obj `if test -f 'vorbisExtractor.cpp'; then $(CYGPATH_W) 'vorbisExtractor.cpp'; else $(CYGPATH_W) '$(srcdir)/vorbisExtractor.cpp'; fi` - -oggScroll-theoraDecoder.o: theoraDecoder.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -MT oggScroll-theoraDecoder.o -MD -MP -MF $(DEPDIR)/oggScroll-theoraDecoder.Tpo -c -o oggScroll-theoraDecoder.o `test -f 'theoraDecoder.cpp' || echo '$(srcdir)/'`theoraDecoder.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggScroll-theoraDecoder.Tpo $(DEPDIR)/oggScroll-theoraDecoder.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='theoraDecoder.cpp' object='oggScroll-theoraDecoder.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -c -o oggScroll-theoraDecoder.o `test -f 'theoraDecoder.cpp' || echo '$(srcdir)/'`theoraDecoder.cpp - -oggScroll-theoraDecoder.obj: theoraDecoder.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -MT oggScroll-theoraDecoder.obj -MD -MP -MF $(DEPDIR)/oggScroll-theoraDecoder.Tpo -c -o oggScroll-theoraDecoder.obj `if test -f 'theoraDecoder.cpp'; then $(CYGPATH_W) 'theoraDecoder.cpp'; else $(CYGPATH_W) '$(srcdir)/theoraDecoder.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggScroll-theoraDecoder.Tpo $(DEPDIR)/oggScroll-theoraDecoder.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='theoraDecoder.cpp' object='oggScroll-theoraDecoder.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -c -o oggScroll-theoraDecoder.obj `if test -f 'theoraDecoder.cpp'; then $(CYGPATH_W) 'theoraDecoder.cpp'; else $(CYGPATH_W) '$(srcdir)/theoraDecoder.cpp'; fi` - -oggScroll-theoraEncoder.o: theoraEncoder.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -MT oggScroll-theoraEncoder.o -MD -MP -MF $(DEPDIR)/oggScroll-theoraEncoder.Tpo -c -o oggScroll-theoraEncoder.o `test -f 'theoraEncoder.cpp' || echo '$(srcdir)/'`theoraEncoder.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggScroll-theoraEncoder.Tpo $(DEPDIR)/oggScroll-theoraEncoder.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='theoraEncoder.cpp' object='oggScroll-theoraEncoder.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -c -o oggScroll-theoraEncoder.o `test -f 'theoraEncoder.cpp' || echo '$(srcdir)/'`theoraEncoder.cpp - -oggScroll-theoraEncoder.obj: theoraEncoder.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -MT oggScroll-theoraEncoder.obj -MD -MP -MF $(DEPDIR)/oggScroll-theoraEncoder.Tpo -c -o oggScroll-theoraEncoder.obj `if test -f 'theoraEncoder.cpp'; then $(CYGPATH_W) 'theoraEncoder.cpp'; else $(CYGPATH_W) '$(srcdir)/theoraEncoder.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggScroll-theoraEncoder.Tpo $(DEPDIR)/oggScroll-theoraEncoder.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='theoraEncoder.cpp' object='oggScroll-theoraEncoder.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -c -o oggScroll-theoraEncoder.obj `if test -f 'theoraEncoder.cpp'; then $(CYGPATH_W) 'theoraEncoder.cpp'; else $(CYGPATH_W) '$(srcdir)/theoraEncoder.cpp'; fi` - -oggScroll-katePosInterpreter.o: katePosInterpreter.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -MT oggScroll-katePosInterpreter.o -MD -MP -MF $(DEPDIR)/oggScroll-katePosInterpreter.Tpo -c -o oggScroll-katePosInterpreter.o `test -f 'katePosInterpreter.cpp' || echo '$(srcdir)/'`katePosInterpreter.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggScroll-katePosInterpreter.Tpo $(DEPDIR)/oggScroll-katePosInterpreter.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='katePosInterpreter.cpp' object='oggScroll-katePosInterpreter.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -c -o oggScroll-katePosInterpreter.o `test -f 'katePosInterpreter.cpp' || echo '$(srcdir)/'`katePosInterpreter.cpp - -oggScroll-katePosInterpreter.obj: katePosInterpreter.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -MT oggScroll-katePosInterpreter.obj -MD -MP -MF $(DEPDIR)/oggScroll-katePosInterpreter.Tpo -c -o oggScroll-katePosInterpreter.obj `if test -f 'katePosInterpreter.cpp'; then $(CYGPATH_W) 'katePosInterpreter.cpp'; else $(CYGPATH_W) '$(srcdir)/katePosInterpreter.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggScroll-katePosInterpreter.Tpo $(DEPDIR)/oggScroll-katePosInterpreter.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='katePosInterpreter.cpp' object='oggScroll-katePosInterpreter.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -c -o oggScroll-katePosInterpreter.obj `if test -f 'katePosInterpreter.cpp'; then $(CYGPATH_W) 'katePosInterpreter.cpp'; else $(CYGPATH_W) '$(srcdir)/katePosInterpreter.cpp'; fi` - -oggScroll-kateStreamParameter.o: kateStreamParameter.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -MT oggScroll-kateStreamParameter.o -MD -MP -MF $(DEPDIR)/oggScroll-kateStreamParameter.Tpo -c -o oggScroll-kateStreamParameter.o `test -f 'kateStreamParameter.cpp' || echo '$(srcdir)/'`kateStreamParameter.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggScroll-kateStreamParameter.Tpo $(DEPDIR)/oggScroll-kateStreamParameter.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='kateStreamParameter.cpp' object='oggScroll-kateStreamParameter.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -c -o oggScroll-kateStreamParameter.o `test -f 'kateStreamParameter.cpp' || echo '$(srcdir)/'`kateStreamParameter.cpp - -oggScroll-kateStreamParameter.obj: kateStreamParameter.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -MT oggScroll-kateStreamParameter.obj -MD -MP -MF $(DEPDIR)/oggScroll-kateStreamParameter.Tpo -c -o oggScroll-kateStreamParameter.obj `if test -f 'kateStreamParameter.cpp'; then $(CYGPATH_W) 'kateStreamParameter.cpp'; else $(CYGPATH_W) '$(srcdir)/kateStreamParameter.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggScroll-kateStreamParameter.Tpo $(DEPDIR)/oggScroll-kateStreamParameter.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='kateStreamParameter.cpp' object='oggScroll-kateStreamParameter.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -c -o oggScroll-kateStreamParameter.obj `if test -f 'kateStreamParameter.cpp'; then $(CYGPATH_W) 'kateStreamParameter.cpp'; else $(CYGPATH_W) '$(srcdir)/kateStreamParameter.cpp'; fi` - -oggScroll-kateExtractor.o: kateExtractor.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -MT oggScroll-kateExtractor.o -MD -MP -MF $(DEPDIR)/oggScroll-kateExtractor.Tpo -c -o oggScroll-kateExtractor.o `test -f 'kateExtractor.cpp' || echo '$(srcdir)/'`kateExtractor.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggScroll-kateExtractor.Tpo $(DEPDIR)/oggScroll-kateExtractor.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='kateExtractor.cpp' object='oggScroll-kateExtractor.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -c -o oggScroll-kateExtractor.o `test -f 'kateExtractor.cpp' || echo '$(srcdir)/'`kateExtractor.cpp - -oggScroll-kateExtractor.obj: kateExtractor.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -MT oggScroll-kateExtractor.obj -MD -MP -MF $(DEPDIR)/oggScroll-kateExtractor.Tpo -c -o oggScroll-kateExtractor.obj `if test -f 'kateExtractor.cpp'; then $(CYGPATH_W) 'kateExtractor.cpp'; else $(CYGPATH_W) '$(srcdir)/kateExtractor.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggScroll-kateExtractor.Tpo $(DEPDIR)/oggScroll-kateExtractor.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='kateExtractor.cpp' object='oggScroll-kateExtractor.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -c -o oggScroll-kateExtractor.obj `if test -f 'kateExtractor.cpp'; then $(CYGPATH_W) 'kateExtractor.cpp'; else $(CYGPATH_W) '$(srcdir)/kateExtractor.cpp'; fi` - -oggScroll-SDLvideoOutput.o: SDLvideoOutput.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -MT oggScroll-SDLvideoOutput.o -MD -MP -MF $(DEPDIR)/oggScroll-SDLvideoOutput.Tpo -c -o oggScroll-SDLvideoOutput.o `test -f 'SDLvideoOutput.cpp' || echo '$(srcdir)/'`SDLvideoOutput.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggScroll-SDLvideoOutput.Tpo $(DEPDIR)/oggScroll-SDLvideoOutput.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='SDLvideoOutput.cpp' object='oggScroll-SDLvideoOutput.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -c -o oggScroll-SDLvideoOutput.o `test -f 'SDLvideoOutput.cpp' || echo '$(srcdir)/'`SDLvideoOutput.cpp - -oggScroll-SDLvideoOutput.obj: SDLvideoOutput.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -MT oggScroll-SDLvideoOutput.obj -MD -MP -MF $(DEPDIR)/oggScroll-SDLvideoOutput.Tpo -c -o oggScroll-SDLvideoOutput.obj `if test -f 'SDLvideoOutput.cpp'; then $(CYGPATH_W) 'SDLvideoOutput.cpp'; else $(CYGPATH_W) '$(srcdir)/SDLvideoOutput.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggScroll-SDLvideoOutput.Tpo $(DEPDIR)/oggScroll-SDLvideoOutput.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='SDLvideoOutput.cpp' object='oggScroll-SDLvideoOutput.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -c -o oggScroll-SDLvideoOutput.obj `if test -f 'SDLvideoOutput.cpp'; then $(CYGPATH_W) 'SDLvideoOutput.cpp'; else $(CYGPATH_W) '$(srcdir)/SDLvideoOutput.cpp'; fi` - -oggScroll-cmdlineextractor.o: cmdlineextractor.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -MT oggScroll-cmdlineextractor.o -MD -MP -MF $(DEPDIR)/oggScroll-cmdlineextractor.Tpo -c -o oggScroll-cmdlineextractor.o `test -f 'cmdlineextractor.cpp' || echo '$(srcdir)/'`cmdlineextractor.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggScroll-cmdlineextractor.Tpo $(DEPDIR)/oggScroll-cmdlineextractor.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='cmdlineextractor.cpp' object='oggScroll-cmdlineextractor.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -c -o oggScroll-cmdlineextractor.o `test -f 'cmdlineextractor.cpp' || echo '$(srcdir)/'`cmdlineextractor.cpp - -oggScroll-cmdlineextractor.obj: cmdlineextractor.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -MT oggScroll-cmdlineextractor.obj -MD -MP -MF $(DEPDIR)/oggScroll-cmdlineextractor.Tpo -c -o oggScroll-cmdlineextractor.obj `if test -f 'cmdlineextractor.cpp'; then $(CYGPATH_W) 'cmdlineextractor.cpp'; else $(CYGPATH_W) '$(srcdir)/cmdlineextractor.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggScroll-cmdlineextractor.Tpo $(DEPDIR)/oggScroll-cmdlineextractor.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='cmdlineextractor.cpp' object='oggScroll-cmdlineextractor.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -c -o oggScroll-cmdlineextractor.obj `if test -f 'cmdlineextractor.cpp'; then $(CYGPATH_W) 'cmdlineextractor.cpp'; else $(CYGPATH_W) '$(srcdir)/cmdlineextractor.cpp'; fi` - -oggScroll-basePlane.o: basePlane.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -MT oggScroll-basePlane.o -MD -MP -MF $(DEPDIR)/oggScroll-basePlane.Tpo -c -o oggScroll-basePlane.o `test -f 'basePlane.cpp' || echo '$(srcdir)/'`basePlane.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggScroll-basePlane.Tpo $(DEPDIR)/oggScroll-basePlane.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='basePlane.cpp' object='oggScroll-basePlane.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -c -o oggScroll-basePlane.o `test -f 'basePlane.cpp' || echo '$(srcdir)/'`basePlane.cpp - -oggScroll-basePlane.obj: basePlane.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -MT oggScroll-basePlane.obj -MD -MP -MF $(DEPDIR)/oggScroll-basePlane.Tpo -c -o oggScroll-basePlane.obj `if test -f 'basePlane.cpp'; then $(CYGPATH_W) 'basePlane.cpp'; else $(CYGPATH_W) '$(srcdir)/basePlane.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggScroll-basePlane.Tpo $(DEPDIR)/oggScroll-basePlane.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='basePlane.cpp' object='oggScroll-basePlane.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -c -o oggScroll-basePlane.obj `if test -f 'basePlane.cpp'; then $(CYGPATH_W) 'basePlane.cpp'; else $(CYGPATH_W) '$(srcdir)/basePlane.cpp'; fi` - -oggScroll-rgbPlane.o: rgbPlane.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -MT oggScroll-rgbPlane.o -MD -MP -MF $(DEPDIR)/oggScroll-rgbPlane.Tpo -c -o oggScroll-rgbPlane.o `test -f 'rgbPlane.cpp' || echo '$(srcdir)/'`rgbPlane.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggScroll-rgbPlane.Tpo $(DEPDIR)/oggScroll-rgbPlane.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='rgbPlane.cpp' object='oggScroll-rgbPlane.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -c -o oggScroll-rgbPlane.o `test -f 'rgbPlane.cpp' || echo '$(srcdir)/'`rgbPlane.cpp - -oggScroll-rgbPlane.obj: rgbPlane.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -MT oggScroll-rgbPlane.obj -MD -MP -MF $(DEPDIR)/oggScroll-rgbPlane.Tpo -c -o oggScroll-rgbPlane.obj `if test -f 'rgbPlane.cpp'; then $(CYGPATH_W) 'rgbPlane.cpp'; else $(CYGPATH_W) '$(srcdir)/rgbPlane.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggScroll-rgbPlane.Tpo $(DEPDIR)/oggScroll-rgbPlane.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='rgbPlane.cpp' object='oggScroll-rgbPlane.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -c -o oggScroll-rgbPlane.obj `if test -f 'rgbPlane.cpp'; then $(CYGPATH_W) 'rgbPlane.cpp'; else $(CYGPATH_W) '$(srcdir)/rgbPlane.cpp'; fi` - -oggScroll-blendElement.o: blendElement.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -MT oggScroll-blendElement.o -MD -MP -MF $(DEPDIR)/oggScroll-blendElement.Tpo -c -o oggScroll-blendElement.o `test -f 'blendElement.cpp' || echo '$(srcdir)/'`blendElement.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggScroll-blendElement.Tpo $(DEPDIR)/oggScroll-blendElement.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='blendElement.cpp' object='oggScroll-blendElement.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -c -o oggScroll-blendElement.o `test -f 'blendElement.cpp' || echo '$(srcdir)/'`blendElement.cpp - -oggScroll-blendElement.obj: blendElement.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -MT oggScroll-blendElement.obj -MD -MP -MF $(DEPDIR)/oggScroll-blendElement.Tpo -c -o oggScroll-blendElement.obj `if test -f 'blendElement.cpp'; then $(CYGPATH_W) 'blendElement.cpp'; else $(CYGPATH_W) '$(srcdir)/blendElement.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggScroll-blendElement.Tpo $(DEPDIR)/oggScroll-blendElement.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='blendElement.cpp' object='oggScroll-blendElement.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -c -o oggScroll-blendElement.obj `if test -f 'blendElement.cpp'; then $(CYGPATH_W) 'blendElement.cpp'; else $(CYGPATH_W) '$(srcdir)/blendElement.cpp'; fi` - -oggScroll-oggScroll.o: oggScroll.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -MT oggScroll-oggScroll.o -MD -MP -MF $(DEPDIR)/oggScroll-oggScroll.Tpo -c -o oggScroll-oggScroll.o `test -f 'oggScroll.cpp' || echo '$(srcdir)/'`oggScroll.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggScroll-oggScroll.Tpo $(DEPDIR)/oggScroll-oggScroll.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='oggScroll.cpp' object='oggScroll-oggScroll.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -c -o oggScroll-oggScroll.o `test -f 'oggScroll.cpp' || echo '$(srcdir)/'`oggScroll.cpp - -oggScroll-oggScroll.obj: oggScroll.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -MT oggScroll-oggScroll.obj -MD -MP -MF $(DEPDIR)/oggScroll-oggScroll.Tpo -c -o oggScroll-oggScroll.obj `if test -f 'oggScroll.cpp'; then $(CYGPATH_W) 'oggScroll.cpp'; else $(CYGPATH_W) '$(srcdir)/oggScroll.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggScroll-oggScroll.Tpo $(DEPDIR)/oggScroll-oggScroll.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='oggScroll.cpp' object='oggScroll-oggScroll.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggScroll_CXXFLAGS) $(CXXFLAGS) -c -o oggScroll-oggScroll.obj `if test -f 'oggScroll.cpp'; then $(CYGPATH_W) 'oggScroll.cpp'; else $(CYGPATH_W) '$(srcdir)/oggScroll.cpp'; fi` - -oggSilence-mediaUnit.o: mediaUnit.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -MT oggSilence-mediaUnit.o -MD -MP -MF $(DEPDIR)/oggSilence-mediaUnit.Tpo -c -o oggSilence-mediaUnit.o `test -f 'mediaUnit.cpp' || echo '$(srcdir)/'`mediaUnit.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggSilence-mediaUnit.Tpo $(DEPDIR)/oggSilence-mediaUnit.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='mediaUnit.cpp' object='oggSilence-mediaUnit.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -c -o oggSilence-mediaUnit.o `test -f 'mediaUnit.cpp' || echo '$(srcdir)/'`mediaUnit.cpp - -oggSilence-mediaUnit.obj: mediaUnit.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -MT oggSilence-mediaUnit.obj -MD -MP -MF $(DEPDIR)/oggSilence-mediaUnit.Tpo -c -o oggSilence-mediaUnit.obj `if test -f 'mediaUnit.cpp'; then $(CYGPATH_W) 'mediaUnit.cpp'; else $(CYGPATH_W) '$(srcdir)/mediaUnit.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggSilence-mediaUnit.Tpo $(DEPDIR)/oggSilence-mediaUnit.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='mediaUnit.cpp' object='oggSilence-mediaUnit.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -c -o oggSilence-mediaUnit.obj `if test -f 'mediaUnit.cpp'; then $(CYGPATH_W) 'mediaUnit.cpp'; else $(CYGPATH_W) '$(srcdir)/mediaUnit.cpp'; fi` - -oggSilence-mediaRepository.o: mediaRepository.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -MT oggSilence-mediaRepository.o -MD -MP -MF $(DEPDIR)/oggSilence-mediaRepository.Tpo -c -o oggSilence-mediaRepository.o `test -f 'mediaRepository.cpp' || echo '$(srcdir)/'`mediaRepository.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggSilence-mediaRepository.Tpo $(DEPDIR)/oggSilence-mediaRepository.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='mediaRepository.cpp' object='oggSilence-mediaRepository.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -c -o oggSilence-mediaRepository.o `test -f 'mediaRepository.cpp' || echo '$(srcdir)/'`mediaRepository.cpp - -oggSilence-mediaRepository.obj: mediaRepository.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -MT oggSilence-mediaRepository.obj -MD -MP -MF $(DEPDIR)/oggSilence-mediaRepository.Tpo -c -o oggSilence-mediaRepository.obj `if test -f 'mediaRepository.cpp'; then $(CYGPATH_W) 'mediaRepository.cpp'; else $(CYGPATH_W) '$(srcdir)/mediaRepository.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggSilence-mediaRepository.Tpo $(DEPDIR)/oggSilence-mediaRepository.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='mediaRepository.cpp' object='oggSilence-mediaRepository.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -c -o oggSilence-mediaRepository.obj `if test -f 'mediaRepository.cpp'; then $(CYGPATH_W) 'mediaRepository.cpp'; else $(CYGPATH_W) '$(srcdir)/mediaRepository.cpp'; fi` - -oggSilence-fileRepository.o: fileRepository.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -MT oggSilence-fileRepository.o -MD -MP -MF $(DEPDIR)/oggSilence-fileRepository.Tpo -c -o oggSilence-fileRepository.o `test -f 'fileRepository.cpp' || echo '$(srcdir)/'`fileRepository.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggSilence-fileRepository.Tpo $(DEPDIR)/oggSilence-fileRepository.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='fileRepository.cpp' object='oggSilence-fileRepository.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -c -o oggSilence-fileRepository.o `test -f 'fileRepository.cpp' || echo '$(srcdir)/'`fileRepository.cpp - -oggSilence-fileRepository.obj: fileRepository.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -MT oggSilence-fileRepository.obj -MD -MP -MF $(DEPDIR)/oggSilence-fileRepository.Tpo -c -o oggSilence-fileRepository.obj `if test -f 'fileRepository.cpp'; then $(CYGPATH_W) 'fileRepository.cpp'; else $(CYGPATH_W) '$(srcdir)/fileRepository.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggSilence-fileRepository.Tpo $(DEPDIR)/oggSilence-fileRepository.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='fileRepository.cpp' object='oggSilence-fileRepository.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -c -o oggSilence-fileRepository.obj `if test -f 'fileRepository.cpp'; then $(CYGPATH_W) 'fileRepository.cpp'; else $(CYGPATH_W) '$(srcdir)/fileRepository.cpp'; fi` - -oggSilence-rawMediaPacket.o: rawMediaPacket.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -MT oggSilence-rawMediaPacket.o -MD -MP -MF $(DEPDIR)/oggSilence-rawMediaPacket.Tpo -c -o oggSilence-rawMediaPacket.o `test -f 'rawMediaPacket.cpp' || echo '$(srcdir)/'`rawMediaPacket.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggSilence-rawMediaPacket.Tpo $(DEPDIR)/oggSilence-rawMediaPacket.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='rawMediaPacket.cpp' object='oggSilence-rawMediaPacket.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -c -o oggSilence-rawMediaPacket.o `test -f 'rawMediaPacket.cpp' || echo '$(srcdir)/'`rawMediaPacket.cpp - -oggSilence-rawMediaPacket.obj: rawMediaPacket.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -MT oggSilence-rawMediaPacket.obj -MD -MP -MF $(DEPDIR)/oggSilence-rawMediaPacket.Tpo -c -o oggSilence-rawMediaPacket.obj `if test -f 'rawMediaPacket.cpp'; then $(CYGPATH_W) 'rawMediaPacket.cpp'; else $(CYGPATH_W) '$(srcdir)/rawMediaPacket.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggSilence-rawMediaPacket.Tpo $(DEPDIR)/oggSilence-rawMediaPacket.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='rawMediaPacket.cpp' object='oggSilence-rawMediaPacket.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -c -o oggSilence-rawMediaPacket.obj `if test -f 'rawMediaPacket.cpp'; then $(CYGPATH_W) 'rawMediaPacket.cpp'; else $(CYGPATH_W) '$(srcdir)/rawMediaPacket.cpp'; fi` - -oggSilence-mediaDecoder.o: mediaDecoder.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -MT oggSilence-mediaDecoder.o -MD -MP -MF $(DEPDIR)/oggSilence-mediaDecoder.Tpo -c -o oggSilence-mediaDecoder.o `test -f 'mediaDecoder.cpp' || echo '$(srcdir)/'`mediaDecoder.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggSilence-mediaDecoder.Tpo $(DEPDIR)/oggSilence-mediaDecoder.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='mediaDecoder.cpp' object='oggSilence-mediaDecoder.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -c -o oggSilence-mediaDecoder.o `test -f 'mediaDecoder.cpp' || echo '$(srcdir)/'`mediaDecoder.cpp - -oggSilence-mediaDecoder.obj: mediaDecoder.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -MT oggSilence-mediaDecoder.obj -MD -MP -MF $(DEPDIR)/oggSilence-mediaDecoder.Tpo -c -o oggSilence-mediaDecoder.obj `if test -f 'mediaDecoder.cpp'; then $(CYGPATH_W) 'mediaDecoder.cpp'; else $(CYGPATH_W) '$(srcdir)/mediaDecoder.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggSilence-mediaDecoder.Tpo $(DEPDIR)/oggSilence-mediaDecoder.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='mediaDecoder.cpp' object='oggSilence-mediaDecoder.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -c -o oggSilence-mediaDecoder.obj `if test -f 'mediaDecoder.cpp'; then $(CYGPATH_W) 'mediaDecoder.cpp'; else $(CYGPATH_W) '$(srcdir)/mediaDecoder.cpp'; fi` - -oggSilence-mediaEncoder.o: mediaEncoder.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -MT oggSilence-mediaEncoder.o -MD -MP -MF $(DEPDIR)/oggSilence-mediaEncoder.Tpo -c -o oggSilence-mediaEncoder.o `test -f 'mediaEncoder.cpp' || echo '$(srcdir)/'`mediaEncoder.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggSilence-mediaEncoder.Tpo $(DEPDIR)/oggSilence-mediaEncoder.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='mediaEncoder.cpp' object='oggSilence-mediaEncoder.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -c -o oggSilence-mediaEncoder.o `test -f 'mediaEncoder.cpp' || echo '$(srcdir)/'`mediaEncoder.cpp - -oggSilence-mediaEncoder.obj: mediaEncoder.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -MT oggSilence-mediaEncoder.obj -MD -MP -MF $(DEPDIR)/oggSilence-mediaEncoder.Tpo -c -o oggSilence-mediaEncoder.obj `if test -f 'mediaEncoder.cpp'; then $(CYGPATH_W) 'mediaEncoder.cpp'; else $(CYGPATH_W) '$(srcdir)/mediaEncoder.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggSilence-mediaEncoder.Tpo $(DEPDIR)/oggSilence-mediaEncoder.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='mediaEncoder.cpp' object='oggSilence-mediaEncoder.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -c -o oggSilence-mediaEncoder.obj `if test -f 'mediaEncoder.cpp'; then $(CYGPATH_W) 'mediaEncoder.cpp'; else $(CYGPATH_W) '$(srcdir)/mediaEncoder.cpp'; fi` - -oggSilence-mediaConverter.o: mediaConverter.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -MT oggSilence-mediaConverter.o -MD -MP -MF $(DEPDIR)/oggSilence-mediaConverter.Tpo -c -o oggSilence-mediaConverter.o `test -f 'mediaConverter.cpp' || echo '$(srcdir)/'`mediaConverter.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggSilence-mediaConverter.Tpo $(DEPDIR)/oggSilence-mediaConverter.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='mediaConverter.cpp' object='oggSilence-mediaConverter.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -c -o oggSilence-mediaConverter.o `test -f 'mediaConverter.cpp' || echo '$(srcdir)/'`mediaConverter.cpp - -oggSilence-mediaConverter.obj: mediaConverter.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -MT oggSilence-mediaConverter.obj -MD -MP -MF $(DEPDIR)/oggSilence-mediaConverter.Tpo -c -o oggSilence-mediaConverter.obj `if test -f 'mediaConverter.cpp'; then $(CYGPATH_W) 'mediaConverter.cpp'; else $(CYGPATH_W) '$(srcdir)/mediaConverter.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggSilence-mediaConverter.Tpo $(DEPDIR)/oggSilence-mediaConverter.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='mediaConverter.cpp' object='oggSilence-mediaConverter.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -c -o oggSilence-mediaConverter.obj `if test -f 'mediaConverter.cpp'; then $(CYGPATH_W) 'mediaConverter.cpp'; else $(CYGPATH_W) '$(srcdir)/mediaConverter.cpp'; fi` - -oggSilence-oggDecoder.o: oggDecoder.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -MT oggSilence-oggDecoder.o -MD -MP -MF $(DEPDIR)/oggSilence-oggDecoder.Tpo -c -o oggSilence-oggDecoder.o `test -f 'oggDecoder.cpp' || echo '$(srcdir)/'`oggDecoder.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggSilence-oggDecoder.Tpo $(DEPDIR)/oggSilence-oggDecoder.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='oggDecoder.cpp' object='oggSilence-oggDecoder.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -c -o oggSilence-oggDecoder.o `test -f 'oggDecoder.cpp' || echo '$(srcdir)/'`oggDecoder.cpp - -oggSilence-oggDecoder.obj: oggDecoder.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -MT oggSilence-oggDecoder.obj -MD -MP -MF $(DEPDIR)/oggSilence-oggDecoder.Tpo -c -o oggSilence-oggDecoder.obj `if test -f 'oggDecoder.cpp'; then $(CYGPATH_W) 'oggDecoder.cpp'; else $(CYGPATH_W) '$(srcdir)/oggDecoder.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggSilence-oggDecoder.Tpo $(DEPDIR)/oggSilence-oggDecoder.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='oggDecoder.cpp' object='oggSilence-oggDecoder.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -c -o oggSilence-oggDecoder.obj `if test -f 'oggDecoder.cpp'; then $(CYGPATH_W) 'oggDecoder.cpp'; else $(CYGPATH_W) '$(srcdir)/oggDecoder.cpp'; fi` - -oggSilence-oggStreamDecoder.o: oggStreamDecoder.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -MT oggSilence-oggStreamDecoder.o -MD -MP -MF $(DEPDIR)/oggSilence-oggStreamDecoder.Tpo -c -o oggSilence-oggStreamDecoder.o `test -f 'oggStreamDecoder.cpp' || echo '$(srcdir)/'`oggStreamDecoder.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggSilence-oggStreamDecoder.Tpo $(DEPDIR)/oggSilence-oggStreamDecoder.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='oggStreamDecoder.cpp' object='oggSilence-oggStreamDecoder.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -c -o oggSilence-oggStreamDecoder.o `test -f 'oggStreamDecoder.cpp' || echo '$(srcdir)/'`oggStreamDecoder.cpp - -oggSilence-oggStreamDecoder.obj: oggStreamDecoder.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -MT oggSilence-oggStreamDecoder.obj -MD -MP -MF $(DEPDIR)/oggSilence-oggStreamDecoder.Tpo -c -o oggSilence-oggStreamDecoder.obj `if test -f 'oggStreamDecoder.cpp'; then $(CYGPATH_W) 'oggStreamDecoder.cpp'; else $(CYGPATH_W) '$(srcdir)/oggStreamDecoder.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggSilence-oggStreamDecoder.Tpo $(DEPDIR)/oggSilence-oggStreamDecoder.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='oggStreamDecoder.cpp' object='oggSilence-oggStreamDecoder.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -c -o oggSilence-oggStreamDecoder.obj `if test -f 'oggStreamDecoder.cpp'; then $(CYGPATH_W) 'oggStreamDecoder.cpp'; else $(CYGPATH_W) '$(srcdir)/oggStreamDecoder.cpp'; fi` - -oggSilence-oggPage.o: oggPage.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -MT oggSilence-oggPage.o -MD -MP -MF $(DEPDIR)/oggSilence-oggPage.Tpo -c -o oggSilence-oggPage.o `test -f 'oggPage.cpp' || echo '$(srcdir)/'`oggPage.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggSilence-oggPage.Tpo $(DEPDIR)/oggSilence-oggPage.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='oggPage.cpp' object='oggSilence-oggPage.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -c -o oggSilence-oggPage.o `test -f 'oggPage.cpp' || echo '$(srcdir)/'`oggPage.cpp - -oggSilence-oggPage.obj: oggPage.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -MT oggSilence-oggPage.obj -MD -MP -MF $(DEPDIR)/oggSilence-oggPage.Tpo -c -o oggSilence-oggPage.obj `if test -f 'oggPage.cpp'; then $(CYGPATH_W) 'oggPage.cpp'; else $(CYGPATH_W) '$(srcdir)/oggPage.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggSilence-oggPage.Tpo $(DEPDIR)/oggSilence-oggPage.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='oggPage.cpp' object='oggSilence-oggPage.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -c -o oggSilence-oggPage.obj `if test -f 'oggPage.cpp'; then $(CYGPATH_W) 'oggPage.cpp'; else $(CYGPATH_W) '$(srcdir)/oggPage.cpp'; fi` - -oggSilence-oggPacket.o: oggPacket.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -MT oggSilence-oggPacket.o -MD -MP -MF $(DEPDIR)/oggSilence-oggPacket.Tpo -c -o oggSilence-oggPacket.o `test -f 'oggPacket.cpp' || echo '$(srcdir)/'`oggPacket.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggSilence-oggPacket.Tpo $(DEPDIR)/oggSilence-oggPacket.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='oggPacket.cpp' object='oggSilence-oggPacket.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -c -o oggSilence-oggPacket.o `test -f 'oggPacket.cpp' || echo '$(srcdir)/'`oggPacket.cpp - -oggSilence-oggPacket.obj: oggPacket.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -MT oggSilence-oggPacket.obj -MD -MP -MF $(DEPDIR)/oggSilence-oggPacket.Tpo -c -o oggSilence-oggPacket.obj `if test -f 'oggPacket.cpp'; then $(CYGPATH_W) 'oggPacket.cpp'; else $(CYGPATH_W) '$(srcdir)/oggPacket.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggSilence-oggPacket.Tpo $(DEPDIR)/oggSilence-oggPacket.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='oggPacket.cpp' object='oggSilence-oggPacket.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -c -o oggSilence-oggPacket.obj `if test -f 'oggPacket.cpp'; then $(CYGPATH_W) 'oggPacket.cpp'; else $(CYGPATH_W) '$(srcdir)/oggPacket.cpp'; fi` - -oggSilence-ringbuffer.o: ringbuffer.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -MT oggSilence-ringbuffer.o -MD -MP -MF $(DEPDIR)/oggSilence-ringbuffer.Tpo -c -o oggSilence-ringbuffer.o `test -f 'ringbuffer.cpp' || echo '$(srcdir)/'`ringbuffer.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggSilence-ringbuffer.Tpo $(DEPDIR)/oggSilence-ringbuffer.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='ringbuffer.cpp' object='oggSilence-ringbuffer.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -c -o oggSilence-ringbuffer.o `test -f 'ringbuffer.cpp' || echo '$(srcdir)/'`ringbuffer.cpp - -oggSilence-ringbuffer.obj: ringbuffer.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -MT oggSilence-ringbuffer.obj -MD -MP -MF $(DEPDIR)/oggSilence-ringbuffer.Tpo -c -o oggSilence-ringbuffer.obj `if test -f 'ringbuffer.cpp'; then $(CYGPATH_W) 'ringbuffer.cpp'; else $(CYGPATH_W) '$(srcdir)/ringbuffer.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggSilence-ringbuffer.Tpo $(DEPDIR)/oggSilence-ringbuffer.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='ringbuffer.cpp' object='oggSilence-ringbuffer.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -c -o oggSilence-ringbuffer.obj `if test -f 'ringbuffer.cpp'; then $(CYGPATH_W) 'ringbuffer.cpp'; else $(CYGPATH_W) '$(srcdir)/ringbuffer.cpp'; fi` - -oggSilence-oggRingbuffer.o: oggRingbuffer.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -MT oggSilence-oggRingbuffer.o -MD -MP -MF $(DEPDIR)/oggSilence-oggRingbuffer.Tpo -c -o oggSilence-oggRingbuffer.o `test -f 'oggRingbuffer.cpp' || echo '$(srcdir)/'`oggRingbuffer.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggSilence-oggRingbuffer.Tpo $(DEPDIR)/oggSilence-oggRingbuffer.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='oggRingbuffer.cpp' object='oggSilence-oggRingbuffer.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -c -o oggSilence-oggRingbuffer.o `test -f 'oggRingbuffer.cpp' || echo '$(srcdir)/'`oggRingbuffer.cpp - -oggSilence-oggRingbuffer.obj: oggRingbuffer.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -MT oggSilence-oggRingbuffer.obj -MD -MP -MF $(DEPDIR)/oggSilence-oggRingbuffer.Tpo -c -o oggSilence-oggRingbuffer.obj `if test -f 'oggRingbuffer.cpp'; then $(CYGPATH_W) 'oggRingbuffer.cpp'; else $(CYGPATH_W) '$(srcdir)/oggRingbuffer.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggSilence-oggRingbuffer.Tpo $(DEPDIR)/oggSilence-oggRingbuffer.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='oggRingbuffer.cpp' object='oggSilence-oggRingbuffer.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -c -o oggSilence-oggRingbuffer.obj `if test -f 'oggRingbuffer.cpp'; then $(CYGPATH_W) 'oggRingbuffer.cpp'; else $(CYGPATH_W) '$(srcdir)/oggRingbuffer.cpp'; fi` - -oggSilence-crc.o: crc.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -MT oggSilence-crc.o -MD -MP -MF $(DEPDIR)/oggSilence-crc.Tpo -c -o oggSilence-crc.o `test -f 'crc.cpp' || echo '$(srcdir)/'`crc.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggSilence-crc.Tpo $(DEPDIR)/oggSilence-crc.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='crc.cpp' object='oggSilence-crc.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -c -o oggSilence-crc.o `test -f 'crc.cpp' || echo '$(srcdir)/'`crc.cpp - -oggSilence-crc.obj: crc.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -MT oggSilence-crc.obj -MD -MP -MF $(DEPDIR)/oggSilence-crc.Tpo -c -o oggSilence-crc.obj `if test -f 'crc.cpp'; then $(CYGPATH_W) 'crc.cpp'; else $(CYGPATH_W) '$(srcdir)/crc.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggSilence-crc.Tpo $(DEPDIR)/oggSilence-crc.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='crc.cpp' object='oggSilence-crc.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -c -o oggSilence-crc.obj `if test -f 'crc.cpp'; then $(CYGPATH_W) 'crc.cpp'; else $(CYGPATH_W) '$(srcdir)/crc.cpp'; fi` - -oggSilence-granulePosInterpreter.o: granulePosInterpreter.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -MT oggSilence-granulePosInterpreter.o -MD -MP -MF $(DEPDIR)/oggSilence-granulePosInterpreter.Tpo -c -o oggSilence-granulePosInterpreter.o `test -f 'granulePosInterpreter.cpp' || echo '$(srcdir)/'`granulePosInterpreter.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggSilence-granulePosInterpreter.Tpo $(DEPDIR)/oggSilence-granulePosInterpreter.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='granulePosInterpreter.cpp' object='oggSilence-granulePosInterpreter.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -c -o oggSilence-granulePosInterpreter.o `test -f 'granulePosInterpreter.cpp' || echo '$(srcdir)/'`granulePosInterpreter.cpp - -oggSilence-granulePosInterpreter.obj: granulePosInterpreter.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -MT oggSilence-granulePosInterpreter.obj -MD -MP -MF $(DEPDIR)/oggSilence-granulePosInterpreter.Tpo -c -o oggSilence-granulePosInterpreter.obj `if test -f 'granulePosInterpreter.cpp'; then $(CYGPATH_W) 'granulePosInterpreter.cpp'; else $(CYGPATH_W) '$(srcdir)/granulePosInterpreter.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggSilence-granulePosInterpreter.Tpo $(DEPDIR)/oggSilence-granulePosInterpreter.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='granulePosInterpreter.cpp' object='oggSilence-granulePosInterpreter.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -c -o oggSilence-granulePosInterpreter.obj `if test -f 'granulePosInterpreter.cpp'; then $(CYGPATH_W) 'granulePosInterpreter.cpp'; else $(CYGPATH_W) '$(srcdir)/granulePosInterpreter.cpp'; fi` - -oggSilence-mediaOutputDecoder.o: mediaOutputDecoder.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -MT oggSilence-mediaOutputDecoder.o -MD -MP -MF $(DEPDIR)/oggSilence-mediaOutputDecoder.Tpo -c -o oggSilence-mediaOutputDecoder.o `test -f 'mediaOutputDecoder.cpp' || echo '$(srcdir)/'`mediaOutputDecoder.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggSilence-mediaOutputDecoder.Tpo $(DEPDIR)/oggSilence-mediaOutputDecoder.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='mediaOutputDecoder.cpp' object='oggSilence-mediaOutputDecoder.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -c -o oggSilence-mediaOutputDecoder.o `test -f 'mediaOutputDecoder.cpp' || echo '$(srcdir)/'`mediaOutputDecoder.cpp - -oggSilence-mediaOutputDecoder.obj: mediaOutputDecoder.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -MT oggSilence-mediaOutputDecoder.obj -MD -MP -MF $(DEPDIR)/oggSilence-mediaOutputDecoder.Tpo -c -o oggSilence-mediaOutputDecoder.obj `if test -f 'mediaOutputDecoder.cpp'; then $(CYGPATH_W) 'mediaOutputDecoder.cpp'; else $(CYGPATH_W) '$(srcdir)/mediaOutputDecoder.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggSilence-mediaOutputDecoder.Tpo $(DEPDIR)/oggSilence-mediaOutputDecoder.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='mediaOutputDecoder.cpp' object='oggSilence-mediaOutputDecoder.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -c -o oggSilence-mediaOutputDecoder.obj `if test -f 'mediaOutputDecoder.cpp'; then $(CYGPATH_W) 'mediaOutputDecoder.cpp'; else $(CYGPATH_W) '$(srcdir)/mediaOutputDecoder.cpp'; fi` - -oggSilence-mediaInputEncoder.o: mediaInputEncoder.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -MT oggSilence-mediaInputEncoder.o -MD -MP -MF $(DEPDIR)/oggSilence-mediaInputEncoder.Tpo -c -o oggSilence-mediaInputEncoder.o `test -f 'mediaInputEncoder.cpp' || echo '$(srcdir)/'`mediaInputEncoder.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggSilence-mediaInputEncoder.Tpo $(DEPDIR)/oggSilence-mediaInputEncoder.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='mediaInputEncoder.cpp' object='oggSilence-mediaInputEncoder.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -c -o oggSilence-mediaInputEncoder.o `test -f 'mediaInputEncoder.cpp' || echo '$(srcdir)/'`mediaInputEncoder.cpp - -oggSilence-mediaInputEncoder.obj: mediaInputEncoder.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -MT oggSilence-mediaInputEncoder.obj -MD -MP -MF $(DEPDIR)/oggSilence-mediaInputEncoder.Tpo -c -o oggSilence-mediaInputEncoder.obj `if test -f 'mediaInputEncoder.cpp'; then $(CYGPATH_W) 'mediaInputEncoder.cpp'; else $(CYGPATH_W) '$(srcdir)/mediaInputEncoder.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggSilence-mediaInputEncoder.Tpo $(DEPDIR)/oggSilence-mediaInputEncoder.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='mediaInputEncoder.cpp' object='oggSilence-mediaInputEncoder.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -c -o oggSilence-mediaInputEncoder.obj `if test -f 'mediaInputEncoder.cpp'; then $(CYGPATH_W) 'mediaInputEncoder.cpp'; else $(CYGPATH_W) '$(srcdir)/mediaInputEncoder.cpp'; fi` - -oggSilence-streamSerializer.o: streamSerializer.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -MT oggSilence-streamSerializer.o -MD -MP -MF $(DEPDIR)/oggSilence-streamSerializer.Tpo -c -o oggSilence-streamSerializer.o `test -f 'streamSerializer.cpp' || echo '$(srcdir)/'`streamSerializer.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggSilence-streamSerializer.Tpo $(DEPDIR)/oggSilence-streamSerializer.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='streamSerializer.cpp' object='oggSilence-streamSerializer.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -c -o oggSilence-streamSerializer.o `test -f 'streamSerializer.cpp' || echo '$(srcdir)/'`streamSerializer.cpp - -oggSilence-streamSerializer.obj: streamSerializer.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -MT oggSilence-streamSerializer.obj -MD -MP -MF $(DEPDIR)/oggSilence-streamSerializer.Tpo -c -o oggSilence-streamSerializer.obj `if test -f 'streamSerializer.cpp'; then $(CYGPATH_W) 'streamSerializer.cpp'; else $(CYGPATH_W) '$(srcdir)/streamSerializer.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggSilence-streamSerializer.Tpo $(DEPDIR)/oggSilence-streamSerializer.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='streamSerializer.cpp' object='oggSilence-streamSerializer.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -c -o oggSilence-streamSerializer.obj `if test -f 'streamSerializer.cpp'; then $(CYGPATH_W) 'streamSerializer.cpp'; else $(CYGPATH_W) '$(srcdir)/streamSerializer.cpp'; fi` - -oggSilence-oggBOSExtractorFactory.o: oggBOSExtractorFactory.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -MT oggSilence-oggBOSExtractorFactory.o -MD -MP -MF $(DEPDIR)/oggSilence-oggBOSExtractorFactory.Tpo -c -o oggSilence-oggBOSExtractorFactory.o `test -f 'oggBOSExtractorFactory.cpp' || echo '$(srcdir)/'`oggBOSExtractorFactory.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggSilence-oggBOSExtractorFactory.Tpo $(DEPDIR)/oggSilence-oggBOSExtractorFactory.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='oggBOSExtractorFactory.cpp' object='oggSilence-oggBOSExtractorFactory.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -c -o oggSilence-oggBOSExtractorFactory.o `test -f 'oggBOSExtractorFactory.cpp' || echo '$(srcdir)/'`oggBOSExtractorFactory.cpp - -oggSilence-oggBOSExtractorFactory.obj: oggBOSExtractorFactory.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -MT oggSilence-oggBOSExtractorFactory.obj -MD -MP -MF $(DEPDIR)/oggSilence-oggBOSExtractorFactory.Tpo -c -o oggSilence-oggBOSExtractorFactory.obj `if test -f 'oggBOSExtractorFactory.cpp'; then $(CYGPATH_W) 'oggBOSExtractorFactory.cpp'; else $(CYGPATH_W) '$(srcdir)/oggBOSExtractorFactory.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggSilence-oggBOSExtractorFactory.Tpo $(DEPDIR)/oggSilence-oggBOSExtractorFactory.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='oggBOSExtractorFactory.cpp' object='oggSilence-oggBOSExtractorFactory.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -c -o oggSilence-oggBOSExtractorFactory.obj `if test -f 'oggBOSExtractorFactory.cpp'; then $(CYGPATH_W) 'oggBOSExtractorFactory.cpp'; else $(CYGPATH_W) '$(srcdir)/oggBOSExtractorFactory.cpp'; fi` - -oggSilence-oggStreamEncoder.o: oggStreamEncoder.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -MT oggSilence-oggStreamEncoder.o -MD -MP -MF $(DEPDIR)/oggSilence-oggStreamEncoder.Tpo -c -o oggSilence-oggStreamEncoder.o `test -f 'oggStreamEncoder.cpp' || echo '$(srcdir)/'`oggStreamEncoder.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggSilence-oggStreamEncoder.Tpo $(DEPDIR)/oggSilence-oggStreamEncoder.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='oggStreamEncoder.cpp' object='oggSilence-oggStreamEncoder.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -c -o oggSilence-oggStreamEncoder.o `test -f 'oggStreamEncoder.cpp' || echo '$(srcdir)/'`oggStreamEncoder.cpp - -oggSilence-oggStreamEncoder.obj: oggStreamEncoder.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -MT oggSilence-oggStreamEncoder.obj -MD -MP -MF $(DEPDIR)/oggSilence-oggStreamEncoder.Tpo -c -o oggSilence-oggStreamEncoder.obj `if test -f 'oggStreamEncoder.cpp'; then $(CYGPATH_W) 'oggStreamEncoder.cpp'; else $(CYGPATH_W) '$(srcdir)/oggStreamEncoder.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggSilence-oggStreamEncoder.Tpo $(DEPDIR)/oggSilence-oggStreamEncoder.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='oggStreamEncoder.cpp' object='oggSilence-oggStreamEncoder.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -c -o oggSilence-oggStreamEncoder.obj `if test -f 'oggStreamEncoder.cpp'; then $(CYGPATH_W) 'oggStreamEncoder.cpp'; else $(CYGPATH_W) '$(srcdir)/oggStreamEncoder.cpp'; fi` - -oggSilence-oggEncoder.o: oggEncoder.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -MT oggSilence-oggEncoder.o -MD -MP -MF $(DEPDIR)/oggSilence-oggEncoder.Tpo -c -o oggSilence-oggEncoder.o `test -f 'oggEncoder.cpp' || echo '$(srcdir)/'`oggEncoder.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggSilence-oggEncoder.Tpo $(DEPDIR)/oggSilence-oggEncoder.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='oggEncoder.cpp' object='oggSilence-oggEncoder.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -c -o oggSilence-oggEncoder.o `test -f 'oggEncoder.cpp' || echo '$(srcdir)/'`oggEncoder.cpp - -oggSilence-oggEncoder.obj: oggEncoder.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -MT oggSilence-oggEncoder.obj -MD -MP -MF $(DEPDIR)/oggSilence-oggEncoder.Tpo -c -o oggSilence-oggEncoder.obj `if test -f 'oggEncoder.cpp'; then $(CYGPATH_W) 'oggEncoder.cpp'; else $(CYGPATH_W) '$(srcdir)/oggEncoder.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggSilence-oggEncoder.Tpo $(DEPDIR)/oggSilence-oggEncoder.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='oggEncoder.cpp' object='oggSilence-oggEncoder.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -c -o oggSilence-oggEncoder.obj `if test -f 'oggEncoder.cpp'; then $(CYGPATH_W) 'oggEncoder.cpp'; else $(CYGPATH_W) '$(srcdir)/oggEncoder.cpp'; fi` - -oggSilence-streamExtractor.o: streamExtractor.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -MT oggSilence-streamExtractor.o -MD -MP -MF $(DEPDIR)/oggSilence-streamExtractor.Tpo -c -o oggSilence-streamExtractor.o `test -f 'streamExtractor.cpp' || echo '$(srcdir)/'`streamExtractor.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggSilence-streamExtractor.Tpo $(DEPDIR)/oggSilence-streamExtractor.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='streamExtractor.cpp' object='oggSilence-streamExtractor.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -c -o oggSilence-streamExtractor.o `test -f 'streamExtractor.cpp' || echo '$(srcdir)/'`streamExtractor.cpp - -oggSilence-streamExtractor.obj: streamExtractor.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -MT oggSilence-streamExtractor.obj -MD -MP -MF $(DEPDIR)/oggSilence-streamExtractor.Tpo -c -o oggSilence-streamExtractor.obj `if test -f 'streamExtractor.cpp'; then $(CYGPATH_W) 'streamExtractor.cpp'; else $(CYGPATH_W) '$(srcdir)/streamExtractor.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggSilence-streamExtractor.Tpo $(DEPDIR)/oggSilence-streamExtractor.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='streamExtractor.cpp' object='oggSilence-streamExtractor.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -c -o oggSilence-streamExtractor.obj `if test -f 'streamExtractor.cpp'; then $(CYGPATH_W) 'streamExtractor.cpp'; else $(CYGPATH_W) '$(srcdir)/streamExtractor.cpp'; fi` - -oggSilence-streamParameter.o: streamParameter.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -MT oggSilence-streamParameter.o -MD -MP -MF $(DEPDIR)/oggSilence-streamParameter.Tpo -c -o oggSilence-streamParameter.o `test -f 'streamParameter.cpp' || echo '$(srcdir)/'`streamParameter.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggSilence-streamParameter.Tpo $(DEPDIR)/oggSilence-streamParameter.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='streamParameter.cpp' object='oggSilence-streamParameter.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -c -o oggSilence-streamParameter.o `test -f 'streamParameter.cpp' || echo '$(srcdir)/'`streamParameter.cpp - -oggSilence-streamParameter.obj: streamParameter.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -MT oggSilence-streamParameter.obj -MD -MP -MF $(DEPDIR)/oggSilence-streamParameter.Tpo -c -o oggSilence-streamParameter.obj `if test -f 'streamParameter.cpp'; then $(CYGPATH_W) 'streamParameter.cpp'; else $(CYGPATH_W) '$(srcdir)/streamParameter.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggSilence-streamParameter.Tpo $(DEPDIR)/oggSilence-streamParameter.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='streamParameter.cpp' object='oggSilence-streamParameter.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -c -o oggSilence-streamParameter.obj `if test -f 'streamParameter.cpp'; then $(CYGPATH_W) 'streamParameter.cpp'; else $(CYGPATH_W) '$(srcdir)/streamParameter.cpp'; fi` - -oggSilence-streamMux.o: streamMux.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -MT oggSilence-streamMux.o -MD -MP -MF $(DEPDIR)/oggSilence-streamMux.Tpo -c -o oggSilence-streamMux.o `test -f 'streamMux.cpp' || echo '$(srcdir)/'`streamMux.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggSilence-streamMux.Tpo $(DEPDIR)/oggSilence-streamMux.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='streamMux.cpp' object='oggSilence-streamMux.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -c -o oggSilence-streamMux.o `test -f 'streamMux.cpp' || echo '$(srcdir)/'`streamMux.cpp - -oggSilence-streamMux.obj: streamMux.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -MT oggSilence-streamMux.obj -MD -MP -MF $(DEPDIR)/oggSilence-streamMux.Tpo -c -o oggSilence-streamMux.obj `if test -f 'streamMux.cpp'; then $(CYGPATH_W) 'streamMux.cpp'; else $(CYGPATH_W) '$(srcdir)/streamMux.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggSilence-streamMux.Tpo $(DEPDIR)/oggSilence-streamMux.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='streamMux.cpp' object='oggSilence-streamMux.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -c -o oggSilence-streamMux.obj `if test -f 'streamMux.cpp'; then $(CYGPATH_W) 'streamMux.cpp'; else $(CYGPATH_W) '$(srcdir)/streamMux.cpp'; fi` - -oggSilence-bufferRepository.o: bufferRepository.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -MT oggSilence-bufferRepository.o -MD -MP -MF $(DEPDIR)/oggSilence-bufferRepository.Tpo -c -o oggSilence-bufferRepository.o `test -f 'bufferRepository.cpp' || echo '$(srcdir)/'`bufferRepository.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggSilence-bufferRepository.Tpo $(DEPDIR)/oggSilence-bufferRepository.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='bufferRepository.cpp' object='oggSilence-bufferRepository.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -c -o oggSilence-bufferRepository.o `test -f 'bufferRepository.cpp' || echo '$(srcdir)/'`bufferRepository.cpp - -oggSilence-bufferRepository.obj: bufferRepository.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -MT oggSilence-bufferRepository.obj -MD -MP -MF $(DEPDIR)/oggSilence-bufferRepository.Tpo -c -o oggSilence-bufferRepository.obj `if test -f 'bufferRepository.cpp'; then $(CYGPATH_W) 'bufferRepository.cpp'; else $(CYGPATH_W) '$(srcdir)/bufferRepository.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggSilence-bufferRepository.Tpo $(DEPDIR)/oggSilence-bufferRepository.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='bufferRepository.cpp' object='oggSilence-bufferRepository.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -c -o oggSilence-bufferRepository.obj `if test -f 'bufferRepository.cpp'; then $(CYGPATH_W) 'bufferRepository.cpp'; else $(CYGPATH_W) '$(srcdir)/bufferRepository.cpp'; fi` - -oggSilence-oggComment.o: oggComment.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -MT oggSilence-oggComment.o -MD -MP -MF $(DEPDIR)/oggSilence-oggComment.Tpo -c -o oggSilence-oggComment.o `test -f 'oggComment.cpp' || echo '$(srcdir)/'`oggComment.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggSilence-oggComment.Tpo $(DEPDIR)/oggSilence-oggComment.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='oggComment.cpp' object='oggSilence-oggComment.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -c -o oggSilence-oggComment.o `test -f 'oggComment.cpp' || echo '$(srcdir)/'`oggComment.cpp - -oggSilence-oggComment.obj: oggComment.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -MT oggSilence-oggComment.obj -MD -MP -MF $(DEPDIR)/oggSilence-oggComment.Tpo -c -o oggSilence-oggComment.obj `if test -f 'oggComment.cpp'; then $(CYGPATH_W) 'oggComment.cpp'; else $(CYGPATH_W) '$(srcdir)/oggComment.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggSilence-oggComment.Tpo $(DEPDIR)/oggSilence-oggComment.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='oggComment.cpp' object='oggSilence-oggComment.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -c -o oggSilence-oggComment.obj `if test -f 'oggComment.cpp'; then $(CYGPATH_W) 'oggComment.cpp'; else $(CYGPATH_W) '$(srcdir)/oggComment.cpp'; fi` - -oggSilence-theoraPosInterpreter.o: theoraPosInterpreter.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -MT oggSilence-theoraPosInterpreter.o -MD -MP -MF $(DEPDIR)/oggSilence-theoraPosInterpreter.Tpo -c -o oggSilence-theoraPosInterpreter.o `test -f 'theoraPosInterpreter.cpp' || echo '$(srcdir)/'`theoraPosInterpreter.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggSilence-theoraPosInterpreter.Tpo $(DEPDIR)/oggSilence-theoraPosInterpreter.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='theoraPosInterpreter.cpp' object='oggSilence-theoraPosInterpreter.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -c -o oggSilence-theoraPosInterpreter.o `test -f 'theoraPosInterpreter.cpp' || echo '$(srcdir)/'`theoraPosInterpreter.cpp - -oggSilence-theoraPosInterpreter.obj: theoraPosInterpreter.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -MT oggSilence-theoraPosInterpreter.obj -MD -MP -MF $(DEPDIR)/oggSilence-theoraPosInterpreter.Tpo -c -o oggSilence-theoraPosInterpreter.obj `if test -f 'theoraPosInterpreter.cpp'; then $(CYGPATH_W) 'theoraPosInterpreter.cpp'; else $(CYGPATH_W) '$(srcdir)/theoraPosInterpreter.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggSilence-theoraPosInterpreter.Tpo $(DEPDIR)/oggSilence-theoraPosInterpreter.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='theoraPosInterpreter.cpp' object='oggSilence-theoraPosInterpreter.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -c -o oggSilence-theoraPosInterpreter.obj `if test -f 'theoraPosInterpreter.cpp'; then $(CYGPATH_W) 'theoraPosInterpreter.cpp'; else $(CYGPATH_W) '$(srcdir)/theoraPosInterpreter.cpp'; fi` - -oggSilence-theoraStreamParameter.o: theoraStreamParameter.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -MT oggSilence-theoraStreamParameter.o -MD -MP -MF $(DEPDIR)/oggSilence-theoraStreamParameter.Tpo -c -o oggSilence-theoraStreamParameter.o `test -f 'theoraStreamParameter.cpp' || echo '$(srcdir)/'`theoraStreamParameter.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggSilence-theoraStreamParameter.Tpo $(DEPDIR)/oggSilence-theoraStreamParameter.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='theoraStreamParameter.cpp' object='oggSilence-theoraStreamParameter.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -c -o oggSilence-theoraStreamParameter.o `test -f 'theoraStreamParameter.cpp' || echo '$(srcdir)/'`theoraStreamParameter.cpp - -oggSilence-theoraStreamParameter.obj: theoraStreamParameter.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -MT oggSilence-theoraStreamParameter.obj -MD -MP -MF $(DEPDIR)/oggSilence-theoraStreamParameter.Tpo -c -o oggSilence-theoraStreamParameter.obj `if test -f 'theoraStreamParameter.cpp'; then $(CYGPATH_W) 'theoraStreamParameter.cpp'; else $(CYGPATH_W) '$(srcdir)/theoraStreamParameter.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggSilence-theoraStreamParameter.Tpo $(DEPDIR)/oggSilence-theoraStreamParameter.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='theoraStreamParameter.cpp' object='oggSilence-theoraStreamParameter.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -c -o oggSilence-theoraStreamParameter.obj `if test -f 'theoraStreamParameter.cpp'; then $(CYGPATH_W) 'theoraStreamParameter.cpp'; else $(CYGPATH_W) '$(srcdir)/theoraStreamParameter.cpp'; fi` - -oggSilence-theoraExtractor.o: theoraExtractor.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -MT oggSilence-theoraExtractor.o -MD -MP -MF $(DEPDIR)/oggSilence-theoraExtractor.Tpo -c -o oggSilence-theoraExtractor.o `test -f 'theoraExtractor.cpp' || echo '$(srcdir)/'`theoraExtractor.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggSilence-theoraExtractor.Tpo $(DEPDIR)/oggSilence-theoraExtractor.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='theoraExtractor.cpp' object='oggSilence-theoraExtractor.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -c -o oggSilence-theoraExtractor.o `test -f 'theoraExtractor.cpp' || echo '$(srcdir)/'`theoraExtractor.cpp - -oggSilence-theoraExtractor.obj: theoraExtractor.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -MT oggSilence-theoraExtractor.obj -MD -MP -MF $(DEPDIR)/oggSilence-theoraExtractor.Tpo -c -o oggSilence-theoraExtractor.obj `if test -f 'theoraExtractor.cpp'; then $(CYGPATH_W) 'theoraExtractor.cpp'; else $(CYGPATH_W) '$(srcdir)/theoraExtractor.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggSilence-theoraExtractor.Tpo $(DEPDIR)/oggSilence-theoraExtractor.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='theoraExtractor.cpp' object='oggSilence-theoraExtractor.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -c -o oggSilence-theoraExtractor.obj `if test -f 'theoraExtractor.cpp'; then $(CYGPATH_W) 'theoraExtractor.cpp'; else $(CYGPATH_W) '$(srcdir)/theoraExtractor.cpp'; fi` - -oggSilence-vorbisPosInterpreter.o: vorbisPosInterpreter.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -MT oggSilence-vorbisPosInterpreter.o -MD -MP -MF $(DEPDIR)/oggSilence-vorbisPosInterpreter.Tpo -c -o oggSilence-vorbisPosInterpreter.o `test -f 'vorbisPosInterpreter.cpp' || echo '$(srcdir)/'`vorbisPosInterpreter.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggSilence-vorbisPosInterpreter.Tpo $(DEPDIR)/oggSilence-vorbisPosInterpreter.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='vorbisPosInterpreter.cpp' object='oggSilence-vorbisPosInterpreter.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -c -o oggSilence-vorbisPosInterpreter.o `test -f 'vorbisPosInterpreter.cpp' || echo '$(srcdir)/'`vorbisPosInterpreter.cpp - -oggSilence-vorbisPosInterpreter.obj: vorbisPosInterpreter.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -MT oggSilence-vorbisPosInterpreter.obj -MD -MP -MF $(DEPDIR)/oggSilence-vorbisPosInterpreter.Tpo -c -o oggSilence-vorbisPosInterpreter.obj `if test -f 'vorbisPosInterpreter.cpp'; then $(CYGPATH_W) 'vorbisPosInterpreter.cpp'; else $(CYGPATH_W) '$(srcdir)/vorbisPosInterpreter.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggSilence-vorbisPosInterpreter.Tpo $(DEPDIR)/oggSilence-vorbisPosInterpreter.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='vorbisPosInterpreter.cpp' object='oggSilence-vorbisPosInterpreter.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -c -o oggSilence-vorbisPosInterpreter.obj `if test -f 'vorbisPosInterpreter.cpp'; then $(CYGPATH_W) 'vorbisPosInterpreter.cpp'; else $(CYGPATH_W) '$(srcdir)/vorbisPosInterpreter.cpp'; fi` - -oggSilence-vorbisStreamParameter.o: vorbisStreamParameter.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -MT oggSilence-vorbisStreamParameter.o -MD -MP -MF $(DEPDIR)/oggSilence-vorbisStreamParameter.Tpo -c -o oggSilence-vorbisStreamParameter.o `test -f 'vorbisStreamParameter.cpp' || echo '$(srcdir)/'`vorbisStreamParameter.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggSilence-vorbisStreamParameter.Tpo $(DEPDIR)/oggSilence-vorbisStreamParameter.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='vorbisStreamParameter.cpp' object='oggSilence-vorbisStreamParameter.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -c -o oggSilence-vorbisStreamParameter.o `test -f 'vorbisStreamParameter.cpp' || echo '$(srcdir)/'`vorbisStreamParameter.cpp - -oggSilence-vorbisStreamParameter.obj: vorbisStreamParameter.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -MT oggSilence-vorbisStreamParameter.obj -MD -MP -MF $(DEPDIR)/oggSilence-vorbisStreamParameter.Tpo -c -o oggSilence-vorbisStreamParameter.obj `if test -f 'vorbisStreamParameter.cpp'; then $(CYGPATH_W) 'vorbisStreamParameter.cpp'; else $(CYGPATH_W) '$(srcdir)/vorbisStreamParameter.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggSilence-vorbisStreamParameter.Tpo $(DEPDIR)/oggSilence-vorbisStreamParameter.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='vorbisStreamParameter.cpp' object='oggSilence-vorbisStreamParameter.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -c -o oggSilence-vorbisStreamParameter.obj `if test -f 'vorbisStreamParameter.cpp'; then $(CYGPATH_W) 'vorbisStreamParameter.cpp'; else $(CYGPATH_W) '$(srcdir)/vorbisStreamParameter.cpp'; fi` - -oggSilence-vorbisExtractor.o: vorbisExtractor.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -MT oggSilence-vorbisExtractor.o -MD -MP -MF $(DEPDIR)/oggSilence-vorbisExtractor.Tpo -c -o oggSilence-vorbisExtractor.o `test -f 'vorbisExtractor.cpp' || echo '$(srcdir)/'`vorbisExtractor.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggSilence-vorbisExtractor.Tpo $(DEPDIR)/oggSilence-vorbisExtractor.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='vorbisExtractor.cpp' object='oggSilence-vorbisExtractor.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -c -o oggSilence-vorbisExtractor.o `test -f 'vorbisExtractor.cpp' || echo '$(srcdir)/'`vorbisExtractor.cpp - -oggSilence-vorbisExtractor.obj: vorbisExtractor.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -MT oggSilence-vorbisExtractor.obj -MD -MP -MF $(DEPDIR)/oggSilence-vorbisExtractor.Tpo -c -o oggSilence-vorbisExtractor.obj `if test -f 'vorbisExtractor.cpp'; then $(CYGPATH_W) 'vorbisExtractor.cpp'; else $(CYGPATH_W) '$(srcdir)/vorbisExtractor.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggSilence-vorbisExtractor.Tpo $(DEPDIR)/oggSilence-vorbisExtractor.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='vorbisExtractor.cpp' object='oggSilence-vorbisExtractor.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -c -o oggSilence-vorbisExtractor.obj `if test -f 'vorbisExtractor.cpp'; then $(CYGPATH_W) 'vorbisExtractor.cpp'; else $(CYGPATH_W) '$(srcdir)/vorbisExtractor.cpp'; fi` - -oggSilence-katePosInterpreter.o: katePosInterpreter.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -MT oggSilence-katePosInterpreter.o -MD -MP -MF $(DEPDIR)/oggSilence-katePosInterpreter.Tpo -c -o oggSilence-katePosInterpreter.o `test -f 'katePosInterpreter.cpp' || echo '$(srcdir)/'`katePosInterpreter.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggSilence-katePosInterpreter.Tpo $(DEPDIR)/oggSilence-katePosInterpreter.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='katePosInterpreter.cpp' object='oggSilence-katePosInterpreter.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -c -o oggSilence-katePosInterpreter.o `test -f 'katePosInterpreter.cpp' || echo '$(srcdir)/'`katePosInterpreter.cpp - -oggSilence-katePosInterpreter.obj: katePosInterpreter.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -MT oggSilence-katePosInterpreter.obj -MD -MP -MF $(DEPDIR)/oggSilence-katePosInterpreter.Tpo -c -o oggSilence-katePosInterpreter.obj `if test -f 'katePosInterpreter.cpp'; then $(CYGPATH_W) 'katePosInterpreter.cpp'; else $(CYGPATH_W) '$(srcdir)/katePosInterpreter.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggSilence-katePosInterpreter.Tpo $(DEPDIR)/oggSilence-katePosInterpreter.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='katePosInterpreter.cpp' object='oggSilence-katePosInterpreter.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -c -o oggSilence-katePosInterpreter.obj `if test -f 'katePosInterpreter.cpp'; then $(CYGPATH_W) 'katePosInterpreter.cpp'; else $(CYGPATH_W) '$(srcdir)/katePosInterpreter.cpp'; fi` - -oggSilence-kateStreamParameter.o: kateStreamParameter.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -MT oggSilence-kateStreamParameter.o -MD -MP -MF $(DEPDIR)/oggSilence-kateStreamParameter.Tpo -c -o oggSilence-kateStreamParameter.o `test -f 'kateStreamParameter.cpp' || echo '$(srcdir)/'`kateStreamParameter.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggSilence-kateStreamParameter.Tpo $(DEPDIR)/oggSilence-kateStreamParameter.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='kateStreamParameter.cpp' object='oggSilence-kateStreamParameter.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -c -o oggSilence-kateStreamParameter.o `test -f 'kateStreamParameter.cpp' || echo '$(srcdir)/'`kateStreamParameter.cpp - -oggSilence-kateStreamParameter.obj: kateStreamParameter.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -MT oggSilence-kateStreamParameter.obj -MD -MP -MF $(DEPDIR)/oggSilence-kateStreamParameter.Tpo -c -o oggSilence-kateStreamParameter.obj `if test -f 'kateStreamParameter.cpp'; then $(CYGPATH_W) 'kateStreamParameter.cpp'; else $(CYGPATH_W) '$(srcdir)/kateStreamParameter.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggSilence-kateStreamParameter.Tpo $(DEPDIR)/oggSilence-kateStreamParameter.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='kateStreamParameter.cpp' object='oggSilence-kateStreamParameter.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -c -o oggSilence-kateStreamParameter.obj `if test -f 'kateStreamParameter.cpp'; then $(CYGPATH_W) 'kateStreamParameter.cpp'; else $(CYGPATH_W) '$(srcdir)/kateStreamParameter.cpp'; fi` - -oggSilence-kateExtractor.o: kateExtractor.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -MT oggSilence-kateExtractor.o -MD -MP -MF $(DEPDIR)/oggSilence-kateExtractor.Tpo -c -o oggSilence-kateExtractor.o `test -f 'kateExtractor.cpp' || echo '$(srcdir)/'`kateExtractor.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggSilence-kateExtractor.Tpo $(DEPDIR)/oggSilence-kateExtractor.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='kateExtractor.cpp' object='oggSilence-kateExtractor.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -c -o oggSilence-kateExtractor.o `test -f 'kateExtractor.cpp' || echo '$(srcdir)/'`kateExtractor.cpp - -oggSilence-kateExtractor.obj: kateExtractor.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -MT oggSilence-kateExtractor.obj -MD -MP -MF $(DEPDIR)/oggSilence-kateExtractor.Tpo -c -o oggSilence-kateExtractor.obj `if test -f 'kateExtractor.cpp'; then $(CYGPATH_W) 'kateExtractor.cpp'; else $(CYGPATH_W) '$(srcdir)/kateExtractor.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggSilence-kateExtractor.Tpo $(DEPDIR)/oggSilence-kateExtractor.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='kateExtractor.cpp' object='oggSilence-kateExtractor.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -c -o oggSilence-kateExtractor.obj `if test -f 'kateExtractor.cpp'; then $(CYGPATH_W) 'kateExtractor.cpp'; else $(CYGPATH_W) '$(srcdir)/kateExtractor.cpp'; fi` - -oggSilence-vorbisDecoder.o: vorbisDecoder.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -MT oggSilence-vorbisDecoder.o -MD -MP -MF $(DEPDIR)/oggSilence-vorbisDecoder.Tpo -c -o oggSilence-vorbisDecoder.o `test -f 'vorbisDecoder.cpp' || echo '$(srcdir)/'`vorbisDecoder.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggSilence-vorbisDecoder.Tpo $(DEPDIR)/oggSilence-vorbisDecoder.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='vorbisDecoder.cpp' object='oggSilence-vorbisDecoder.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -c -o oggSilence-vorbisDecoder.o `test -f 'vorbisDecoder.cpp' || echo '$(srcdir)/'`vorbisDecoder.cpp - -oggSilence-vorbisDecoder.obj: vorbisDecoder.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -MT oggSilence-vorbisDecoder.obj -MD -MP -MF $(DEPDIR)/oggSilence-vorbisDecoder.Tpo -c -o oggSilence-vorbisDecoder.obj `if test -f 'vorbisDecoder.cpp'; then $(CYGPATH_W) 'vorbisDecoder.cpp'; else $(CYGPATH_W) '$(srcdir)/vorbisDecoder.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggSilence-vorbisDecoder.Tpo $(DEPDIR)/oggSilence-vorbisDecoder.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='vorbisDecoder.cpp' object='oggSilence-vorbisDecoder.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -c -o oggSilence-vorbisDecoder.obj `if test -f 'vorbisDecoder.cpp'; then $(CYGPATH_W) 'vorbisDecoder.cpp'; else $(CYGPATH_W) '$(srcdir)/vorbisDecoder.cpp'; fi` - -oggSilence-vorbisEncoder.o: vorbisEncoder.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -MT oggSilence-vorbisEncoder.o -MD -MP -MF $(DEPDIR)/oggSilence-vorbisEncoder.Tpo -c -o oggSilence-vorbisEncoder.o `test -f 'vorbisEncoder.cpp' || echo '$(srcdir)/'`vorbisEncoder.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggSilence-vorbisEncoder.Tpo $(DEPDIR)/oggSilence-vorbisEncoder.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='vorbisEncoder.cpp' object='oggSilence-vorbisEncoder.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -c -o oggSilence-vorbisEncoder.o `test -f 'vorbisEncoder.cpp' || echo '$(srcdir)/'`vorbisEncoder.cpp - -oggSilence-vorbisEncoder.obj: vorbisEncoder.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -MT oggSilence-vorbisEncoder.obj -MD -MP -MF $(DEPDIR)/oggSilence-vorbisEncoder.Tpo -c -o oggSilence-vorbisEncoder.obj `if test -f 'vorbisEncoder.cpp'; then $(CYGPATH_W) 'vorbisEncoder.cpp'; else $(CYGPATH_W) '$(srcdir)/vorbisEncoder.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggSilence-vorbisEncoder.Tpo $(DEPDIR)/oggSilence-vorbisEncoder.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='vorbisEncoder.cpp' object='oggSilence-vorbisEncoder.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -c -o oggSilence-vorbisEncoder.obj `if test -f 'vorbisEncoder.cpp'; then $(CYGPATH_W) 'vorbisEncoder.cpp'; else $(CYGPATH_W) '$(srcdir)/vorbisEncoder.cpp'; fi` - -oggSilence-audioPacket.o: audioPacket.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -MT oggSilence-audioPacket.o -MD -MP -MF $(DEPDIR)/oggSilence-audioPacket.Tpo -c -o oggSilence-audioPacket.o `test -f 'audioPacket.cpp' || echo '$(srcdir)/'`audioPacket.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggSilence-audioPacket.Tpo $(DEPDIR)/oggSilence-audioPacket.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='audioPacket.cpp' object='oggSilence-audioPacket.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -c -o oggSilence-audioPacket.o `test -f 'audioPacket.cpp' || echo '$(srcdir)/'`audioPacket.cpp - -oggSilence-audioPacket.obj: audioPacket.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -MT oggSilence-audioPacket.obj -MD -MP -MF $(DEPDIR)/oggSilence-audioPacket.Tpo -c -o oggSilence-audioPacket.obj `if test -f 'audioPacket.cpp'; then $(CYGPATH_W) 'audioPacket.cpp'; else $(CYGPATH_W) '$(srcdir)/audioPacket.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggSilence-audioPacket.Tpo $(DEPDIR)/oggSilence-audioPacket.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='audioPacket.cpp' object='oggSilence-audioPacket.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -c -o oggSilence-audioPacket.obj `if test -f 'audioPacket.cpp'; then $(CYGPATH_W) 'audioPacket.cpp'; else $(CYGPATH_W) '$(srcdir)/audioPacket.cpp'; fi` - -oggSilence-audioConverter.o: audioConverter.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -MT oggSilence-audioConverter.o -MD -MP -MF $(DEPDIR)/oggSilence-audioConverter.Tpo -c -o oggSilence-audioConverter.o `test -f 'audioConverter.cpp' || echo '$(srcdir)/'`audioConverter.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggSilence-audioConverter.Tpo $(DEPDIR)/oggSilence-audioConverter.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='audioConverter.cpp' object='oggSilence-audioConverter.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -c -o oggSilence-audioConverter.o `test -f 'audioConverter.cpp' || echo '$(srcdir)/'`audioConverter.cpp - -oggSilence-audioConverter.obj: audioConverter.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -MT oggSilence-audioConverter.obj -MD -MP -MF $(DEPDIR)/oggSilence-audioConverter.Tpo -c -o oggSilence-audioConverter.obj `if test -f 'audioConverter.cpp'; then $(CYGPATH_W) 'audioConverter.cpp'; else $(CYGPATH_W) '$(srcdir)/audioConverter.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggSilence-audioConverter.Tpo $(DEPDIR)/oggSilence-audioConverter.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='audioConverter.cpp' object='oggSilence-audioConverter.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -c -o oggSilence-audioConverter.obj `if test -f 'audioConverter.cpp'; then $(CYGPATH_W) 'audioConverter.cpp'; else $(CYGPATH_W) '$(srcdir)/audioConverter.cpp'; fi` - -oggSilence-cmdlineextractor.o: cmdlineextractor.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -MT oggSilence-cmdlineextractor.o -MD -MP -MF $(DEPDIR)/oggSilence-cmdlineextractor.Tpo -c -o oggSilence-cmdlineextractor.o `test -f 'cmdlineextractor.cpp' || echo '$(srcdir)/'`cmdlineextractor.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggSilence-cmdlineextractor.Tpo $(DEPDIR)/oggSilence-cmdlineextractor.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='cmdlineextractor.cpp' object='oggSilence-cmdlineextractor.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -c -o oggSilence-cmdlineextractor.o `test -f 'cmdlineextractor.cpp' || echo '$(srcdir)/'`cmdlineextractor.cpp - -oggSilence-cmdlineextractor.obj: cmdlineextractor.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -MT oggSilence-cmdlineextractor.obj -MD -MP -MF $(DEPDIR)/oggSilence-cmdlineextractor.Tpo -c -o oggSilence-cmdlineextractor.obj `if test -f 'cmdlineextractor.cpp'; then $(CYGPATH_W) 'cmdlineextractor.cpp'; else $(CYGPATH_W) '$(srcdir)/cmdlineextractor.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggSilence-cmdlineextractor.Tpo $(DEPDIR)/oggSilence-cmdlineextractor.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='cmdlineextractor.cpp' object='oggSilence-cmdlineextractor.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -c -o oggSilence-cmdlineextractor.obj `if test -f 'cmdlineextractor.cpp'; then $(CYGPATH_W) 'cmdlineextractor.cpp'; else $(CYGPATH_W) '$(srcdir)/cmdlineextractor.cpp'; fi` - -oggSilence-basePlane.o: basePlane.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -MT oggSilence-basePlane.o -MD -MP -MF $(DEPDIR)/oggSilence-basePlane.Tpo -c -o oggSilence-basePlane.o `test -f 'basePlane.cpp' || echo '$(srcdir)/'`basePlane.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggSilence-basePlane.Tpo $(DEPDIR)/oggSilence-basePlane.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='basePlane.cpp' object='oggSilence-basePlane.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -c -o oggSilence-basePlane.o `test -f 'basePlane.cpp' || echo '$(srcdir)/'`basePlane.cpp - -oggSilence-basePlane.obj: basePlane.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -MT oggSilence-basePlane.obj -MD -MP -MF $(DEPDIR)/oggSilence-basePlane.Tpo -c -o oggSilence-basePlane.obj `if test -f 'basePlane.cpp'; then $(CYGPATH_W) 'basePlane.cpp'; else $(CYGPATH_W) '$(srcdir)/basePlane.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggSilence-basePlane.Tpo $(DEPDIR)/oggSilence-basePlane.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='basePlane.cpp' object='oggSilence-basePlane.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -c -o oggSilence-basePlane.obj `if test -f 'basePlane.cpp'; then $(CYGPATH_W) 'basePlane.cpp'; else $(CYGPATH_W) '$(srcdir)/basePlane.cpp'; fi` - -oggSilence-rgbPlane.o: rgbPlane.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -MT oggSilence-rgbPlane.o -MD -MP -MF $(DEPDIR)/oggSilence-rgbPlane.Tpo -c -o oggSilence-rgbPlane.o `test -f 'rgbPlane.cpp' || echo '$(srcdir)/'`rgbPlane.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggSilence-rgbPlane.Tpo $(DEPDIR)/oggSilence-rgbPlane.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='rgbPlane.cpp' object='oggSilence-rgbPlane.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -c -o oggSilence-rgbPlane.o `test -f 'rgbPlane.cpp' || echo '$(srcdir)/'`rgbPlane.cpp - -oggSilence-rgbPlane.obj: rgbPlane.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -MT oggSilence-rgbPlane.obj -MD -MP -MF $(DEPDIR)/oggSilence-rgbPlane.Tpo -c -o oggSilence-rgbPlane.obj `if test -f 'rgbPlane.cpp'; then $(CYGPATH_W) 'rgbPlane.cpp'; else $(CYGPATH_W) '$(srcdir)/rgbPlane.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggSilence-rgbPlane.Tpo $(DEPDIR)/oggSilence-rgbPlane.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='rgbPlane.cpp' object='oggSilence-rgbPlane.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -c -o oggSilence-rgbPlane.obj `if test -f 'rgbPlane.cpp'; then $(CYGPATH_W) 'rgbPlane.cpp'; else $(CYGPATH_W) '$(srcdir)/rgbPlane.cpp'; fi` - -oggSilence-blendElement.o: blendElement.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -MT oggSilence-blendElement.o -MD -MP -MF $(DEPDIR)/oggSilence-blendElement.Tpo -c -o oggSilence-blendElement.o `test -f 'blendElement.cpp' || echo '$(srcdir)/'`blendElement.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggSilence-blendElement.Tpo $(DEPDIR)/oggSilence-blendElement.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='blendElement.cpp' object='oggSilence-blendElement.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -c -o oggSilence-blendElement.o `test -f 'blendElement.cpp' || echo '$(srcdir)/'`blendElement.cpp - -oggSilence-blendElement.obj: blendElement.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -MT oggSilence-blendElement.obj -MD -MP -MF $(DEPDIR)/oggSilence-blendElement.Tpo -c -o oggSilence-blendElement.obj `if test -f 'blendElement.cpp'; then $(CYGPATH_W) 'blendElement.cpp'; else $(CYGPATH_W) '$(srcdir)/blendElement.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggSilence-blendElement.Tpo $(DEPDIR)/oggSilence-blendElement.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='blendElement.cpp' object='oggSilence-blendElement.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -c -o oggSilence-blendElement.obj `if test -f 'blendElement.cpp'; then $(CYGPATH_W) 'blendElement.cpp'; else $(CYGPATH_W) '$(srcdir)/blendElement.cpp'; fi` - -oggSilence-oggSilence.o: oggSilence.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -MT oggSilence-oggSilence.o -MD -MP -MF $(DEPDIR)/oggSilence-oggSilence.Tpo -c -o oggSilence-oggSilence.o `test -f 'oggSilence.cpp' || echo '$(srcdir)/'`oggSilence.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggSilence-oggSilence.Tpo $(DEPDIR)/oggSilence-oggSilence.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='oggSilence.cpp' object='oggSilence-oggSilence.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -c -o oggSilence-oggSilence.o `test -f 'oggSilence.cpp' || echo '$(srcdir)/'`oggSilence.cpp - -oggSilence-oggSilence.obj: oggSilence.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -MT oggSilence-oggSilence.obj -MD -MP -MF $(DEPDIR)/oggSilence-oggSilence.Tpo -c -o oggSilence-oggSilence.obj `if test -f 'oggSilence.cpp'; then $(CYGPATH_W) 'oggSilence.cpp'; else $(CYGPATH_W) '$(srcdir)/oggSilence.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggSilence-oggSilence.Tpo $(DEPDIR)/oggSilence-oggSilence.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='oggSilence.cpp' object='oggSilence-oggSilence.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggSilence_CXXFLAGS) $(CXXFLAGS) -c -o oggSilence-oggSilence.obj `if test -f 'oggSilence.cpp'; then $(CYGPATH_W) 'oggSilence.cpp'; else $(CYGPATH_W) '$(srcdir)/oggSilence.cpp'; fi` - -oggThumb-mediaUnit.o: mediaUnit.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -MT oggThumb-mediaUnit.o -MD -MP -MF $(DEPDIR)/oggThumb-mediaUnit.Tpo -c -o oggThumb-mediaUnit.o `test -f 'mediaUnit.cpp' || echo '$(srcdir)/'`mediaUnit.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggThumb-mediaUnit.Tpo $(DEPDIR)/oggThumb-mediaUnit.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='mediaUnit.cpp' object='oggThumb-mediaUnit.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -c -o oggThumb-mediaUnit.o `test -f 'mediaUnit.cpp' || echo '$(srcdir)/'`mediaUnit.cpp - -oggThumb-mediaUnit.obj: mediaUnit.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -MT oggThumb-mediaUnit.obj -MD -MP -MF $(DEPDIR)/oggThumb-mediaUnit.Tpo -c -o oggThumb-mediaUnit.obj `if test -f 'mediaUnit.cpp'; then $(CYGPATH_W) 'mediaUnit.cpp'; else $(CYGPATH_W) '$(srcdir)/mediaUnit.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggThumb-mediaUnit.Tpo $(DEPDIR)/oggThumb-mediaUnit.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='mediaUnit.cpp' object='oggThumb-mediaUnit.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -c -o oggThumb-mediaUnit.obj `if test -f 'mediaUnit.cpp'; then $(CYGPATH_W) 'mediaUnit.cpp'; else $(CYGPATH_W) '$(srcdir)/mediaUnit.cpp'; fi` - -oggThumb-mediaRepository.o: mediaRepository.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -MT oggThumb-mediaRepository.o -MD -MP -MF $(DEPDIR)/oggThumb-mediaRepository.Tpo -c -o oggThumb-mediaRepository.o `test -f 'mediaRepository.cpp' || echo '$(srcdir)/'`mediaRepository.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggThumb-mediaRepository.Tpo $(DEPDIR)/oggThumb-mediaRepository.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='mediaRepository.cpp' object='oggThumb-mediaRepository.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -c -o oggThumb-mediaRepository.o `test -f 'mediaRepository.cpp' || echo '$(srcdir)/'`mediaRepository.cpp - -oggThumb-mediaRepository.obj: mediaRepository.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -MT oggThumb-mediaRepository.obj -MD -MP -MF $(DEPDIR)/oggThumb-mediaRepository.Tpo -c -o oggThumb-mediaRepository.obj `if test -f 'mediaRepository.cpp'; then $(CYGPATH_W) 'mediaRepository.cpp'; else $(CYGPATH_W) '$(srcdir)/mediaRepository.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggThumb-mediaRepository.Tpo $(DEPDIR)/oggThumb-mediaRepository.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='mediaRepository.cpp' object='oggThumb-mediaRepository.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -c -o oggThumb-mediaRepository.obj `if test -f 'mediaRepository.cpp'; then $(CYGPATH_W) 'mediaRepository.cpp'; else $(CYGPATH_W) '$(srcdir)/mediaRepository.cpp'; fi` - -oggThumb-fileRepository.o: fileRepository.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -MT oggThumb-fileRepository.o -MD -MP -MF $(DEPDIR)/oggThumb-fileRepository.Tpo -c -o oggThumb-fileRepository.o `test -f 'fileRepository.cpp' || echo '$(srcdir)/'`fileRepository.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggThumb-fileRepository.Tpo $(DEPDIR)/oggThumb-fileRepository.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='fileRepository.cpp' object='oggThumb-fileRepository.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -c -o oggThumb-fileRepository.o `test -f 'fileRepository.cpp' || echo '$(srcdir)/'`fileRepository.cpp - -oggThumb-fileRepository.obj: fileRepository.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -MT oggThumb-fileRepository.obj -MD -MP -MF $(DEPDIR)/oggThumb-fileRepository.Tpo -c -o oggThumb-fileRepository.obj `if test -f 'fileRepository.cpp'; then $(CYGPATH_W) 'fileRepository.cpp'; else $(CYGPATH_W) '$(srcdir)/fileRepository.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggThumb-fileRepository.Tpo $(DEPDIR)/oggThumb-fileRepository.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='fileRepository.cpp' object='oggThumb-fileRepository.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -c -o oggThumb-fileRepository.obj `if test -f 'fileRepository.cpp'; then $(CYGPATH_W) 'fileRepository.cpp'; else $(CYGPATH_W) '$(srcdir)/fileRepository.cpp'; fi` - -oggThumb-rawMediaPacket.o: rawMediaPacket.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -MT oggThumb-rawMediaPacket.o -MD -MP -MF $(DEPDIR)/oggThumb-rawMediaPacket.Tpo -c -o oggThumb-rawMediaPacket.o `test -f 'rawMediaPacket.cpp' || echo '$(srcdir)/'`rawMediaPacket.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggThumb-rawMediaPacket.Tpo $(DEPDIR)/oggThumb-rawMediaPacket.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='rawMediaPacket.cpp' object='oggThumb-rawMediaPacket.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -c -o oggThumb-rawMediaPacket.o `test -f 'rawMediaPacket.cpp' || echo '$(srcdir)/'`rawMediaPacket.cpp - -oggThumb-rawMediaPacket.obj: rawMediaPacket.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -MT oggThumb-rawMediaPacket.obj -MD -MP -MF $(DEPDIR)/oggThumb-rawMediaPacket.Tpo -c -o oggThumb-rawMediaPacket.obj `if test -f 'rawMediaPacket.cpp'; then $(CYGPATH_W) 'rawMediaPacket.cpp'; else $(CYGPATH_W) '$(srcdir)/rawMediaPacket.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggThumb-rawMediaPacket.Tpo $(DEPDIR)/oggThumb-rawMediaPacket.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='rawMediaPacket.cpp' object='oggThumb-rawMediaPacket.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -c -o oggThumb-rawMediaPacket.obj `if test -f 'rawMediaPacket.cpp'; then $(CYGPATH_W) 'rawMediaPacket.cpp'; else $(CYGPATH_W) '$(srcdir)/rawMediaPacket.cpp'; fi` - -oggThumb-mediaDecoder.o: mediaDecoder.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -MT oggThumb-mediaDecoder.o -MD -MP -MF $(DEPDIR)/oggThumb-mediaDecoder.Tpo -c -o oggThumb-mediaDecoder.o `test -f 'mediaDecoder.cpp' || echo '$(srcdir)/'`mediaDecoder.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggThumb-mediaDecoder.Tpo $(DEPDIR)/oggThumb-mediaDecoder.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='mediaDecoder.cpp' object='oggThumb-mediaDecoder.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -c -o oggThumb-mediaDecoder.o `test -f 'mediaDecoder.cpp' || echo '$(srcdir)/'`mediaDecoder.cpp - -oggThumb-mediaDecoder.obj: mediaDecoder.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -MT oggThumb-mediaDecoder.obj -MD -MP -MF $(DEPDIR)/oggThumb-mediaDecoder.Tpo -c -o oggThumb-mediaDecoder.obj `if test -f 'mediaDecoder.cpp'; then $(CYGPATH_W) 'mediaDecoder.cpp'; else $(CYGPATH_W) '$(srcdir)/mediaDecoder.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggThumb-mediaDecoder.Tpo $(DEPDIR)/oggThumb-mediaDecoder.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='mediaDecoder.cpp' object='oggThumb-mediaDecoder.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -c -o oggThumb-mediaDecoder.obj `if test -f 'mediaDecoder.cpp'; then $(CYGPATH_W) 'mediaDecoder.cpp'; else $(CYGPATH_W) '$(srcdir)/mediaDecoder.cpp'; fi` - -oggThumb-mediaEncoder.o: mediaEncoder.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -MT oggThumb-mediaEncoder.o -MD -MP -MF $(DEPDIR)/oggThumb-mediaEncoder.Tpo -c -o oggThumb-mediaEncoder.o `test -f 'mediaEncoder.cpp' || echo '$(srcdir)/'`mediaEncoder.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggThumb-mediaEncoder.Tpo $(DEPDIR)/oggThumb-mediaEncoder.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='mediaEncoder.cpp' object='oggThumb-mediaEncoder.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -c -o oggThumb-mediaEncoder.o `test -f 'mediaEncoder.cpp' || echo '$(srcdir)/'`mediaEncoder.cpp - -oggThumb-mediaEncoder.obj: mediaEncoder.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -MT oggThumb-mediaEncoder.obj -MD -MP -MF $(DEPDIR)/oggThumb-mediaEncoder.Tpo -c -o oggThumb-mediaEncoder.obj `if test -f 'mediaEncoder.cpp'; then $(CYGPATH_W) 'mediaEncoder.cpp'; else $(CYGPATH_W) '$(srcdir)/mediaEncoder.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggThumb-mediaEncoder.Tpo $(DEPDIR)/oggThumb-mediaEncoder.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='mediaEncoder.cpp' object='oggThumb-mediaEncoder.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -c -o oggThumb-mediaEncoder.obj `if test -f 'mediaEncoder.cpp'; then $(CYGPATH_W) 'mediaEncoder.cpp'; else $(CYGPATH_W) '$(srcdir)/mediaEncoder.cpp'; fi` - -oggThumb-mediaConverter.o: mediaConverter.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -MT oggThumb-mediaConverter.o -MD -MP -MF $(DEPDIR)/oggThumb-mediaConverter.Tpo -c -o oggThumb-mediaConverter.o `test -f 'mediaConverter.cpp' || echo '$(srcdir)/'`mediaConverter.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggThumb-mediaConverter.Tpo $(DEPDIR)/oggThumb-mediaConverter.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='mediaConverter.cpp' object='oggThumb-mediaConverter.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -c -o oggThumb-mediaConverter.o `test -f 'mediaConverter.cpp' || echo '$(srcdir)/'`mediaConverter.cpp - -oggThumb-mediaConverter.obj: mediaConverter.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -MT oggThumb-mediaConverter.obj -MD -MP -MF $(DEPDIR)/oggThumb-mediaConverter.Tpo -c -o oggThumb-mediaConverter.obj `if test -f 'mediaConverter.cpp'; then $(CYGPATH_W) 'mediaConverter.cpp'; else $(CYGPATH_W) '$(srcdir)/mediaConverter.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggThumb-mediaConverter.Tpo $(DEPDIR)/oggThumb-mediaConverter.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='mediaConverter.cpp' object='oggThumb-mediaConverter.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -c -o oggThumb-mediaConverter.obj `if test -f 'mediaConverter.cpp'; then $(CYGPATH_W) 'mediaConverter.cpp'; else $(CYGPATH_W) '$(srcdir)/mediaConverter.cpp'; fi` - -oggThumb-oggDecoder.o: oggDecoder.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -MT oggThumb-oggDecoder.o -MD -MP -MF $(DEPDIR)/oggThumb-oggDecoder.Tpo -c -o oggThumb-oggDecoder.o `test -f 'oggDecoder.cpp' || echo '$(srcdir)/'`oggDecoder.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggThumb-oggDecoder.Tpo $(DEPDIR)/oggThumb-oggDecoder.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='oggDecoder.cpp' object='oggThumb-oggDecoder.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -c -o oggThumb-oggDecoder.o `test -f 'oggDecoder.cpp' || echo '$(srcdir)/'`oggDecoder.cpp - -oggThumb-oggDecoder.obj: oggDecoder.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -MT oggThumb-oggDecoder.obj -MD -MP -MF $(DEPDIR)/oggThumb-oggDecoder.Tpo -c -o oggThumb-oggDecoder.obj `if test -f 'oggDecoder.cpp'; then $(CYGPATH_W) 'oggDecoder.cpp'; else $(CYGPATH_W) '$(srcdir)/oggDecoder.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggThumb-oggDecoder.Tpo $(DEPDIR)/oggThumb-oggDecoder.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='oggDecoder.cpp' object='oggThumb-oggDecoder.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -c -o oggThumb-oggDecoder.obj `if test -f 'oggDecoder.cpp'; then $(CYGPATH_W) 'oggDecoder.cpp'; else $(CYGPATH_W) '$(srcdir)/oggDecoder.cpp'; fi` - -oggThumb-oggStreamDecoder.o: oggStreamDecoder.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -MT oggThumb-oggStreamDecoder.o -MD -MP -MF $(DEPDIR)/oggThumb-oggStreamDecoder.Tpo -c -o oggThumb-oggStreamDecoder.o `test -f 'oggStreamDecoder.cpp' || echo '$(srcdir)/'`oggStreamDecoder.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggThumb-oggStreamDecoder.Tpo $(DEPDIR)/oggThumb-oggStreamDecoder.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='oggStreamDecoder.cpp' object='oggThumb-oggStreamDecoder.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -c -o oggThumb-oggStreamDecoder.o `test -f 'oggStreamDecoder.cpp' || echo '$(srcdir)/'`oggStreamDecoder.cpp - -oggThumb-oggStreamDecoder.obj: oggStreamDecoder.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -MT oggThumb-oggStreamDecoder.obj -MD -MP -MF $(DEPDIR)/oggThumb-oggStreamDecoder.Tpo -c -o oggThumb-oggStreamDecoder.obj `if test -f 'oggStreamDecoder.cpp'; then $(CYGPATH_W) 'oggStreamDecoder.cpp'; else $(CYGPATH_W) '$(srcdir)/oggStreamDecoder.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggThumb-oggStreamDecoder.Tpo $(DEPDIR)/oggThumb-oggStreamDecoder.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='oggStreamDecoder.cpp' object='oggThumb-oggStreamDecoder.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -c -o oggThumb-oggStreamDecoder.obj `if test -f 'oggStreamDecoder.cpp'; then $(CYGPATH_W) 'oggStreamDecoder.cpp'; else $(CYGPATH_W) '$(srcdir)/oggStreamDecoder.cpp'; fi` - -oggThumb-oggPage.o: oggPage.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -MT oggThumb-oggPage.o -MD -MP -MF $(DEPDIR)/oggThumb-oggPage.Tpo -c -o oggThumb-oggPage.o `test -f 'oggPage.cpp' || echo '$(srcdir)/'`oggPage.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggThumb-oggPage.Tpo $(DEPDIR)/oggThumb-oggPage.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='oggPage.cpp' object='oggThumb-oggPage.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -c -o oggThumb-oggPage.o `test -f 'oggPage.cpp' || echo '$(srcdir)/'`oggPage.cpp - -oggThumb-oggPage.obj: oggPage.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -MT oggThumb-oggPage.obj -MD -MP -MF $(DEPDIR)/oggThumb-oggPage.Tpo -c -o oggThumb-oggPage.obj `if test -f 'oggPage.cpp'; then $(CYGPATH_W) 'oggPage.cpp'; else $(CYGPATH_W) '$(srcdir)/oggPage.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggThumb-oggPage.Tpo $(DEPDIR)/oggThumb-oggPage.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='oggPage.cpp' object='oggThumb-oggPage.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -c -o oggThumb-oggPage.obj `if test -f 'oggPage.cpp'; then $(CYGPATH_W) 'oggPage.cpp'; else $(CYGPATH_W) '$(srcdir)/oggPage.cpp'; fi` - -oggThumb-oggPacket.o: oggPacket.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -MT oggThumb-oggPacket.o -MD -MP -MF $(DEPDIR)/oggThumb-oggPacket.Tpo -c -o oggThumb-oggPacket.o `test -f 'oggPacket.cpp' || echo '$(srcdir)/'`oggPacket.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggThumb-oggPacket.Tpo $(DEPDIR)/oggThumb-oggPacket.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='oggPacket.cpp' object='oggThumb-oggPacket.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -c -o oggThumb-oggPacket.o `test -f 'oggPacket.cpp' || echo '$(srcdir)/'`oggPacket.cpp - -oggThumb-oggPacket.obj: oggPacket.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -MT oggThumb-oggPacket.obj -MD -MP -MF $(DEPDIR)/oggThumb-oggPacket.Tpo -c -o oggThumb-oggPacket.obj `if test -f 'oggPacket.cpp'; then $(CYGPATH_W) 'oggPacket.cpp'; else $(CYGPATH_W) '$(srcdir)/oggPacket.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggThumb-oggPacket.Tpo $(DEPDIR)/oggThumb-oggPacket.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='oggPacket.cpp' object='oggThumb-oggPacket.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -c -o oggThumb-oggPacket.obj `if test -f 'oggPacket.cpp'; then $(CYGPATH_W) 'oggPacket.cpp'; else $(CYGPATH_W) '$(srcdir)/oggPacket.cpp'; fi` - -oggThumb-ringbuffer.o: ringbuffer.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -MT oggThumb-ringbuffer.o -MD -MP -MF $(DEPDIR)/oggThumb-ringbuffer.Tpo -c -o oggThumb-ringbuffer.o `test -f 'ringbuffer.cpp' || echo '$(srcdir)/'`ringbuffer.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggThumb-ringbuffer.Tpo $(DEPDIR)/oggThumb-ringbuffer.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='ringbuffer.cpp' object='oggThumb-ringbuffer.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -c -o oggThumb-ringbuffer.o `test -f 'ringbuffer.cpp' || echo '$(srcdir)/'`ringbuffer.cpp - -oggThumb-ringbuffer.obj: ringbuffer.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -MT oggThumb-ringbuffer.obj -MD -MP -MF $(DEPDIR)/oggThumb-ringbuffer.Tpo -c -o oggThumb-ringbuffer.obj `if test -f 'ringbuffer.cpp'; then $(CYGPATH_W) 'ringbuffer.cpp'; else $(CYGPATH_W) '$(srcdir)/ringbuffer.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggThumb-ringbuffer.Tpo $(DEPDIR)/oggThumb-ringbuffer.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='ringbuffer.cpp' object='oggThumb-ringbuffer.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -c -o oggThumb-ringbuffer.obj `if test -f 'ringbuffer.cpp'; then $(CYGPATH_W) 'ringbuffer.cpp'; else $(CYGPATH_W) '$(srcdir)/ringbuffer.cpp'; fi` - -oggThumb-oggRingbuffer.o: oggRingbuffer.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -MT oggThumb-oggRingbuffer.o -MD -MP -MF $(DEPDIR)/oggThumb-oggRingbuffer.Tpo -c -o oggThumb-oggRingbuffer.o `test -f 'oggRingbuffer.cpp' || echo '$(srcdir)/'`oggRingbuffer.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggThumb-oggRingbuffer.Tpo $(DEPDIR)/oggThumb-oggRingbuffer.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='oggRingbuffer.cpp' object='oggThumb-oggRingbuffer.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -c -o oggThumb-oggRingbuffer.o `test -f 'oggRingbuffer.cpp' || echo '$(srcdir)/'`oggRingbuffer.cpp - -oggThumb-oggRingbuffer.obj: oggRingbuffer.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -MT oggThumb-oggRingbuffer.obj -MD -MP -MF $(DEPDIR)/oggThumb-oggRingbuffer.Tpo -c -o oggThumb-oggRingbuffer.obj `if test -f 'oggRingbuffer.cpp'; then $(CYGPATH_W) 'oggRingbuffer.cpp'; else $(CYGPATH_W) '$(srcdir)/oggRingbuffer.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggThumb-oggRingbuffer.Tpo $(DEPDIR)/oggThumb-oggRingbuffer.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='oggRingbuffer.cpp' object='oggThumb-oggRingbuffer.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -c -o oggThumb-oggRingbuffer.obj `if test -f 'oggRingbuffer.cpp'; then $(CYGPATH_W) 'oggRingbuffer.cpp'; else $(CYGPATH_W) '$(srcdir)/oggRingbuffer.cpp'; fi` - -oggThumb-crc.o: crc.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -MT oggThumb-crc.o -MD -MP -MF $(DEPDIR)/oggThumb-crc.Tpo -c -o oggThumb-crc.o `test -f 'crc.cpp' || echo '$(srcdir)/'`crc.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggThumb-crc.Tpo $(DEPDIR)/oggThumb-crc.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='crc.cpp' object='oggThumb-crc.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -c -o oggThumb-crc.o `test -f 'crc.cpp' || echo '$(srcdir)/'`crc.cpp - -oggThumb-crc.obj: crc.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -MT oggThumb-crc.obj -MD -MP -MF $(DEPDIR)/oggThumb-crc.Tpo -c -o oggThumb-crc.obj `if test -f 'crc.cpp'; then $(CYGPATH_W) 'crc.cpp'; else $(CYGPATH_W) '$(srcdir)/crc.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggThumb-crc.Tpo $(DEPDIR)/oggThumb-crc.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='crc.cpp' object='oggThumb-crc.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -c -o oggThumb-crc.obj `if test -f 'crc.cpp'; then $(CYGPATH_W) 'crc.cpp'; else $(CYGPATH_W) '$(srcdir)/crc.cpp'; fi` - -oggThumb-granulePosInterpreter.o: granulePosInterpreter.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -MT oggThumb-granulePosInterpreter.o -MD -MP -MF $(DEPDIR)/oggThumb-granulePosInterpreter.Tpo -c -o oggThumb-granulePosInterpreter.o `test -f 'granulePosInterpreter.cpp' || echo '$(srcdir)/'`granulePosInterpreter.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggThumb-granulePosInterpreter.Tpo $(DEPDIR)/oggThumb-granulePosInterpreter.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='granulePosInterpreter.cpp' object='oggThumb-granulePosInterpreter.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -c -o oggThumb-granulePosInterpreter.o `test -f 'granulePosInterpreter.cpp' || echo '$(srcdir)/'`granulePosInterpreter.cpp - -oggThumb-granulePosInterpreter.obj: granulePosInterpreter.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -MT oggThumb-granulePosInterpreter.obj -MD -MP -MF $(DEPDIR)/oggThumb-granulePosInterpreter.Tpo -c -o oggThumb-granulePosInterpreter.obj `if test -f 'granulePosInterpreter.cpp'; then $(CYGPATH_W) 'granulePosInterpreter.cpp'; else $(CYGPATH_W) '$(srcdir)/granulePosInterpreter.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggThumb-granulePosInterpreter.Tpo $(DEPDIR)/oggThumb-granulePosInterpreter.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='granulePosInterpreter.cpp' object='oggThumb-granulePosInterpreter.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -c -o oggThumb-granulePosInterpreter.obj `if test -f 'granulePosInterpreter.cpp'; then $(CYGPATH_W) 'granulePosInterpreter.cpp'; else $(CYGPATH_W) '$(srcdir)/granulePosInterpreter.cpp'; fi` - -oggThumb-mediaOutputDecoder.o: mediaOutputDecoder.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -MT oggThumb-mediaOutputDecoder.o -MD -MP -MF $(DEPDIR)/oggThumb-mediaOutputDecoder.Tpo -c -o oggThumb-mediaOutputDecoder.o `test -f 'mediaOutputDecoder.cpp' || echo '$(srcdir)/'`mediaOutputDecoder.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggThumb-mediaOutputDecoder.Tpo $(DEPDIR)/oggThumb-mediaOutputDecoder.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='mediaOutputDecoder.cpp' object='oggThumb-mediaOutputDecoder.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -c -o oggThumb-mediaOutputDecoder.o `test -f 'mediaOutputDecoder.cpp' || echo '$(srcdir)/'`mediaOutputDecoder.cpp - -oggThumb-mediaOutputDecoder.obj: mediaOutputDecoder.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -MT oggThumb-mediaOutputDecoder.obj -MD -MP -MF $(DEPDIR)/oggThumb-mediaOutputDecoder.Tpo -c -o oggThumb-mediaOutputDecoder.obj `if test -f 'mediaOutputDecoder.cpp'; then $(CYGPATH_W) 'mediaOutputDecoder.cpp'; else $(CYGPATH_W) '$(srcdir)/mediaOutputDecoder.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggThumb-mediaOutputDecoder.Tpo $(DEPDIR)/oggThumb-mediaOutputDecoder.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='mediaOutputDecoder.cpp' object='oggThumb-mediaOutputDecoder.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -c -o oggThumb-mediaOutputDecoder.obj `if test -f 'mediaOutputDecoder.cpp'; then $(CYGPATH_W) 'mediaOutputDecoder.cpp'; else $(CYGPATH_W) '$(srcdir)/mediaOutputDecoder.cpp'; fi` - -oggThumb-mediaInputEncoder.o: mediaInputEncoder.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -MT oggThumb-mediaInputEncoder.o -MD -MP -MF $(DEPDIR)/oggThumb-mediaInputEncoder.Tpo -c -o oggThumb-mediaInputEncoder.o `test -f 'mediaInputEncoder.cpp' || echo '$(srcdir)/'`mediaInputEncoder.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggThumb-mediaInputEncoder.Tpo $(DEPDIR)/oggThumb-mediaInputEncoder.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='mediaInputEncoder.cpp' object='oggThumb-mediaInputEncoder.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -c -o oggThumb-mediaInputEncoder.o `test -f 'mediaInputEncoder.cpp' || echo '$(srcdir)/'`mediaInputEncoder.cpp - -oggThumb-mediaInputEncoder.obj: mediaInputEncoder.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -MT oggThumb-mediaInputEncoder.obj -MD -MP -MF $(DEPDIR)/oggThumb-mediaInputEncoder.Tpo -c -o oggThumb-mediaInputEncoder.obj `if test -f 'mediaInputEncoder.cpp'; then $(CYGPATH_W) 'mediaInputEncoder.cpp'; else $(CYGPATH_W) '$(srcdir)/mediaInputEncoder.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggThumb-mediaInputEncoder.Tpo $(DEPDIR)/oggThumb-mediaInputEncoder.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='mediaInputEncoder.cpp' object='oggThumb-mediaInputEncoder.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -c -o oggThumb-mediaInputEncoder.obj `if test -f 'mediaInputEncoder.cpp'; then $(CYGPATH_W) 'mediaInputEncoder.cpp'; else $(CYGPATH_W) '$(srcdir)/mediaInputEncoder.cpp'; fi` - -oggThumb-streamSerializer.o: streamSerializer.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -MT oggThumb-streamSerializer.o -MD -MP -MF $(DEPDIR)/oggThumb-streamSerializer.Tpo -c -o oggThumb-streamSerializer.o `test -f 'streamSerializer.cpp' || echo '$(srcdir)/'`streamSerializer.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggThumb-streamSerializer.Tpo $(DEPDIR)/oggThumb-streamSerializer.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='streamSerializer.cpp' object='oggThumb-streamSerializer.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -c -o oggThumb-streamSerializer.o `test -f 'streamSerializer.cpp' || echo '$(srcdir)/'`streamSerializer.cpp - -oggThumb-streamSerializer.obj: streamSerializer.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -MT oggThumb-streamSerializer.obj -MD -MP -MF $(DEPDIR)/oggThumb-streamSerializer.Tpo -c -o oggThumb-streamSerializer.obj `if test -f 'streamSerializer.cpp'; then $(CYGPATH_W) 'streamSerializer.cpp'; else $(CYGPATH_W) '$(srcdir)/streamSerializer.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggThumb-streamSerializer.Tpo $(DEPDIR)/oggThumb-streamSerializer.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='streamSerializer.cpp' object='oggThumb-streamSerializer.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -c -o oggThumb-streamSerializer.obj `if test -f 'streamSerializer.cpp'; then $(CYGPATH_W) 'streamSerializer.cpp'; else $(CYGPATH_W) '$(srcdir)/streamSerializer.cpp'; fi` - -oggThumb-oggBOSExtractorFactory.o: oggBOSExtractorFactory.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -MT oggThumb-oggBOSExtractorFactory.o -MD -MP -MF $(DEPDIR)/oggThumb-oggBOSExtractorFactory.Tpo -c -o oggThumb-oggBOSExtractorFactory.o `test -f 'oggBOSExtractorFactory.cpp' || echo '$(srcdir)/'`oggBOSExtractorFactory.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggThumb-oggBOSExtractorFactory.Tpo $(DEPDIR)/oggThumb-oggBOSExtractorFactory.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='oggBOSExtractorFactory.cpp' object='oggThumb-oggBOSExtractorFactory.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -c -o oggThumb-oggBOSExtractorFactory.o `test -f 'oggBOSExtractorFactory.cpp' || echo '$(srcdir)/'`oggBOSExtractorFactory.cpp - -oggThumb-oggBOSExtractorFactory.obj: oggBOSExtractorFactory.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -MT oggThumb-oggBOSExtractorFactory.obj -MD -MP -MF $(DEPDIR)/oggThumb-oggBOSExtractorFactory.Tpo -c -o oggThumb-oggBOSExtractorFactory.obj `if test -f 'oggBOSExtractorFactory.cpp'; then $(CYGPATH_W) 'oggBOSExtractorFactory.cpp'; else $(CYGPATH_W) '$(srcdir)/oggBOSExtractorFactory.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggThumb-oggBOSExtractorFactory.Tpo $(DEPDIR)/oggThumb-oggBOSExtractorFactory.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='oggBOSExtractorFactory.cpp' object='oggThumb-oggBOSExtractorFactory.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -c -o oggThumb-oggBOSExtractorFactory.obj `if test -f 'oggBOSExtractorFactory.cpp'; then $(CYGPATH_W) 'oggBOSExtractorFactory.cpp'; else $(CYGPATH_W) '$(srcdir)/oggBOSExtractorFactory.cpp'; fi` - -oggThumb-oggStreamEncoder.o: oggStreamEncoder.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -MT oggThumb-oggStreamEncoder.o -MD -MP -MF $(DEPDIR)/oggThumb-oggStreamEncoder.Tpo -c -o oggThumb-oggStreamEncoder.o `test -f 'oggStreamEncoder.cpp' || echo '$(srcdir)/'`oggStreamEncoder.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggThumb-oggStreamEncoder.Tpo $(DEPDIR)/oggThumb-oggStreamEncoder.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='oggStreamEncoder.cpp' object='oggThumb-oggStreamEncoder.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -c -o oggThumb-oggStreamEncoder.o `test -f 'oggStreamEncoder.cpp' || echo '$(srcdir)/'`oggStreamEncoder.cpp - -oggThumb-oggStreamEncoder.obj: oggStreamEncoder.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -MT oggThumb-oggStreamEncoder.obj -MD -MP -MF $(DEPDIR)/oggThumb-oggStreamEncoder.Tpo -c -o oggThumb-oggStreamEncoder.obj `if test -f 'oggStreamEncoder.cpp'; then $(CYGPATH_W) 'oggStreamEncoder.cpp'; else $(CYGPATH_W) '$(srcdir)/oggStreamEncoder.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggThumb-oggStreamEncoder.Tpo $(DEPDIR)/oggThumb-oggStreamEncoder.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='oggStreamEncoder.cpp' object='oggThumb-oggStreamEncoder.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -c -o oggThumb-oggStreamEncoder.obj `if test -f 'oggStreamEncoder.cpp'; then $(CYGPATH_W) 'oggStreamEncoder.cpp'; else $(CYGPATH_W) '$(srcdir)/oggStreamEncoder.cpp'; fi` - -oggThumb-oggEncoder.o: oggEncoder.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -MT oggThumb-oggEncoder.o -MD -MP -MF $(DEPDIR)/oggThumb-oggEncoder.Tpo -c -o oggThumb-oggEncoder.o `test -f 'oggEncoder.cpp' || echo '$(srcdir)/'`oggEncoder.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggThumb-oggEncoder.Tpo $(DEPDIR)/oggThumb-oggEncoder.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='oggEncoder.cpp' object='oggThumb-oggEncoder.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -c -o oggThumb-oggEncoder.o `test -f 'oggEncoder.cpp' || echo '$(srcdir)/'`oggEncoder.cpp - -oggThumb-oggEncoder.obj: oggEncoder.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -MT oggThumb-oggEncoder.obj -MD -MP -MF $(DEPDIR)/oggThumb-oggEncoder.Tpo -c -o oggThumb-oggEncoder.obj `if test -f 'oggEncoder.cpp'; then $(CYGPATH_W) 'oggEncoder.cpp'; else $(CYGPATH_W) '$(srcdir)/oggEncoder.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggThumb-oggEncoder.Tpo $(DEPDIR)/oggThumb-oggEncoder.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='oggEncoder.cpp' object='oggThumb-oggEncoder.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -c -o oggThumb-oggEncoder.obj `if test -f 'oggEncoder.cpp'; then $(CYGPATH_W) 'oggEncoder.cpp'; else $(CYGPATH_W) '$(srcdir)/oggEncoder.cpp'; fi` - -oggThumb-streamExtractor.o: streamExtractor.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -MT oggThumb-streamExtractor.o -MD -MP -MF $(DEPDIR)/oggThumb-streamExtractor.Tpo -c -o oggThumb-streamExtractor.o `test -f 'streamExtractor.cpp' || echo '$(srcdir)/'`streamExtractor.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggThumb-streamExtractor.Tpo $(DEPDIR)/oggThumb-streamExtractor.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='streamExtractor.cpp' object='oggThumb-streamExtractor.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -c -o oggThumb-streamExtractor.o `test -f 'streamExtractor.cpp' || echo '$(srcdir)/'`streamExtractor.cpp - -oggThumb-streamExtractor.obj: streamExtractor.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -MT oggThumb-streamExtractor.obj -MD -MP -MF $(DEPDIR)/oggThumb-streamExtractor.Tpo -c -o oggThumb-streamExtractor.obj `if test -f 'streamExtractor.cpp'; then $(CYGPATH_W) 'streamExtractor.cpp'; else $(CYGPATH_W) '$(srcdir)/streamExtractor.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggThumb-streamExtractor.Tpo $(DEPDIR)/oggThumb-streamExtractor.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='streamExtractor.cpp' object='oggThumb-streamExtractor.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -c -o oggThumb-streamExtractor.obj `if test -f 'streamExtractor.cpp'; then $(CYGPATH_W) 'streamExtractor.cpp'; else $(CYGPATH_W) '$(srcdir)/streamExtractor.cpp'; fi` - -oggThumb-streamParameter.o: streamParameter.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -MT oggThumb-streamParameter.o -MD -MP -MF $(DEPDIR)/oggThumb-streamParameter.Tpo -c -o oggThumb-streamParameter.o `test -f 'streamParameter.cpp' || echo '$(srcdir)/'`streamParameter.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggThumb-streamParameter.Tpo $(DEPDIR)/oggThumb-streamParameter.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='streamParameter.cpp' object='oggThumb-streamParameter.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -c -o oggThumb-streamParameter.o `test -f 'streamParameter.cpp' || echo '$(srcdir)/'`streamParameter.cpp - -oggThumb-streamParameter.obj: streamParameter.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -MT oggThumb-streamParameter.obj -MD -MP -MF $(DEPDIR)/oggThumb-streamParameter.Tpo -c -o oggThumb-streamParameter.obj `if test -f 'streamParameter.cpp'; then $(CYGPATH_W) 'streamParameter.cpp'; else $(CYGPATH_W) '$(srcdir)/streamParameter.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggThumb-streamParameter.Tpo $(DEPDIR)/oggThumb-streamParameter.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='streamParameter.cpp' object='oggThumb-streamParameter.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -c -o oggThumb-streamParameter.obj `if test -f 'streamParameter.cpp'; then $(CYGPATH_W) 'streamParameter.cpp'; else $(CYGPATH_W) '$(srcdir)/streamParameter.cpp'; fi` - -oggThumb-streamMux.o: streamMux.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -MT oggThumb-streamMux.o -MD -MP -MF $(DEPDIR)/oggThumb-streamMux.Tpo -c -o oggThumb-streamMux.o `test -f 'streamMux.cpp' || echo '$(srcdir)/'`streamMux.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggThumb-streamMux.Tpo $(DEPDIR)/oggThumb-streamMux.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='streamMux.cpp' object='oggThumb-streamMux.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -c -o oggThumb-streamMux.o `test -f 'streamMux.cpp' || echo '$(srcdir)/'`streamMux.cpp - -oggThumb-streamMux.obj: streamMux.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -MT oggThumb-streamMux.obj -MD -MP -MF $(DEPDIR)/oggThumb-streamMux.Tpo -c -o oggThumb-streamMux.obj `if test -f 'streamMux.cpp'; then $(CYGPATH_W) 'streamMux.cpp'; else $(CYGPATH_W) '$(srcdir)/streamMux.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggThumb-streamMux.Tpo $(DEPDIR)/oggThumb-streamMux.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='streamMux.cpp' object='oggThumb-streamMux.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -c -o oggThumb-streamMux.obj `if test -f 'streamMux.cpp'; then $(CYGPATH_W) 'streamMux.cpp'; else $(CYGPATH_W) '$(srcdir)/streamMux.cpp'; fi` - -oggThumb-bufferRepository.o: bufferRepository.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -MT oggThumb-bufferRepository.o -MD -MP -MF $(DEPDIR)/oggThumb-bufferRepository.Tpo -c -o oggThumb-bufferRepository.o `test -f 'bufferRepository.cpp' || echo '$(srcdir)/'`bufferRepository.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggThumb-bufferRepository.Tpo $(DEPDIR)/oggThumb-bufferRepository.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='bufferRepository.cpp' object='oggThumb-bufferRepository.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -c -o oggThumb-bufferRepository.o `test -f 'bufferRepository.cpp' || echo '$(srcdir)/'`bufferRepository.cpp - -oggThumb-bufferRepository.obj: bufferRepository.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -MT oggThumb-bufferRepository.obj -MD -MP -MF $(DEPDIR)/oggThumb-bufferRepository.Tpo -c -o oggThumb-bufferRepository.obj `if test -f 'bufferRepository.cpp'; then $(CYGPATH_W) 'bufferRepository.cpp'; else $(CYGPATH_W) '$(srcdir)/bufferRepository.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggThumb-bufferRepository.Tpo $(DEPDIR)/oggThumb-bufferRepository.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='bufferRepository.cpp' object='oggThumb-bufferRepository.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -c -o oggThumb-bufferRepository.obj `if test -f 'bufferRepository.cpp'; then $(CYGPATH_W) 'bufferRepository.cpp'; else $(CYGPATH_W) '$(srcdir)/bufferRepository.cpp'; fi` - -oggThumb-oggComment.o: oggComment.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -MT oggThumb-oggComment.o -MD -MP -MF $(DEPDIR)/oggThumb-oggComment.Tpo -c -o oggThumb-oggComment.o `test -f 'oggComment.cpp' || echo '$(srcdir)/'`oggComment.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggThumb-oggComment.Tpo $(DEPDIR)/oggThumb-oggComment.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='oggComment.cpp' object='oggThumb-oggComment.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -c -o oggThumb-oggComment.o `test -f 'oggComment.cpp' || echo '$(srcdir)/'`oggComment.cpp - -oggThumb-oggComment.obj: oggComment.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -MT oggThumb-oggComment.obj -MD -MP -MF $(DEPDIR)/oggThumb-oggComment.Tpo -c -o oggThumb-oggComment.obj `if test -f 'oggComment.cpp'; then $(CYGPATH_W) 'oggComment.cpp'; else $(CYGPATH_W) '$(srcdir)/oggComment.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggThumb-oggComment.Tpo $(DEPDIR)/oggThumb-oggComment.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='oggComment.cpp' object='oggThumb-oggComment.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -c -o oggThumb-oggComment.obj `if test -f 'oggComment.cpp'; then $(CYGPATH_W) 'oggComment.cpp'; else $(CYGPATH_W) '$(srcdir)/oggComment.cpp'; fi` - -oggThumb-theoraPosInterpreter.o: theoraPosInterpreter.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -MT oggThumb-theoraPosInterpreter.o -MD -MP -MF $(DEPDIR)/oggThumb-theoraPosInterpreter.Tpo -c -o oggThumb-theoraPosInterpreter.o `test -f 'theoraPosInterpreter.cpp' || echo '$(srcdir)/'`theoraPosInterpreter.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggThumb-theoraPosInterpreter.Tpo $(DEPDIR)/oggThumb-theoraPosInterpreter.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='theoraPosInterpreter.cpp' object='oggThumb-theoraPosInterpreter.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -c -o oggThumb-theoraPosInterpreter.o `test -f 'theoraPosInterpreter.cpp' || echo '$(srcdir)/'`theoraPosInterpreter.cpp - -oggThumb-theoraPosInterpreter.obj: theoraPosInterpreter.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -MT oggThumb-theoraPosInterpreter.obj -MD -MP -MF $(DEPDIR)/oggThumb-theoraPosInterpreter.Tpo -c -o oggThumb-theoraPosInterpreter.obj `if test -f 'theoraPosInterpreter.cpp'; then $(CYGPATH_W) 'theoraPosInterpreter.cpp'; else $(CYGPATH_W) '$(srcdir)/theoraPosInterpreter.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggThumb-theoraPosInterpreter.Tpo $(DEPDIR)/oggThumb-theoraPosInterpreter.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='theoraPosInterpreter.cpp' object='oggThumb-theoraPosInterpreter.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -c -o oggThumb-theoraPosInterpreter.obj `if test -f 'theoraPosInterpreter.cpp'; then $(CYGPATH_W) 'theoraPosInterpreter.cpp'; else $(CYGPATH_W) '$(srcdir)/theoraPosInterpreter.cpp'; fi` - -oggThumb-theoraStreamParameter.o: theoraStreamParameter.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -MT oggThumb-theoraStreamParameter.o -MD -MP -MF $(DEPDIR)/oggThumb-theoraStreamParameter.Tpo -c -o oggThumb-theoraStreamParameter.o `test -f 'theoraStreamParameter.cpp' || echo '$(srcdir)/'`theoraStreamParameter.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggThumb-theoraStreamParameter.Tpo $(DEPDIR)/oggThumb-theoraStreamParameter.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='theoraStreamParameter.cpp' object='oggThumb-theoraStreamParameter.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -c -o oggThumb-theoraStreamParameter.o `test -f 'theoraStreamParameter.cpp' || echo '$(srcdir)/'`theoraStreamParameter.cpp - -oggThumb-theoraStreamParameter.obj: theoraStreamParameter.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -MT oggThumb-theoraStreamParameter.obj -MD -MP -MF $(DEPDIR)/oggThumb-theoraStreamParameter.Tpo -c -o oggThumb-theoraStreamParameter.obj `if test -f 'theoraStreamParameter.cpp'; then $(CYGPATH_W) 'theoraStreamParameter.cpp'; else $(CYGPATH_W) '$(srcdir)/theoraStreamParameter.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggThumb-theoraStreamParameter.Tpo $(DEPDIR)/oggThumb-theoraStreamParameter.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='theoraStreamParameter.cpp' object='oggThumb-theoraStreamParameter.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -c -o oggThumb-theoraStreamParameter.obj `if test -f 'theoraStreamParameter.cpp'; then $(CYGPATH_W) 'theoraStreamParameter.cpp'; else $(CYGPATH_W) '$(srcdir)/theoraStreamParameter.cpp'; fi` - -oggThumb-theoraExtractor.o: theoraExtractor.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -MT oggThumb-theoraExtractor.o -MD -MP -MF $(DEPDIR)/oggThumb-theoraExtractor.Tpo -c -o oggThumb-theoraExtractor.o `test -f 'theoraExtractor.cpp' || echo '$(srcdir)/'`theoraExtractor.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggThumb-theoraExtractor.Tpo $(DEPDIR)/oggThumb-theoraExtractor.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='theoraExtractor.cpp' object='oggThumb-theoraExtractor.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -c -o oggThumb-theoraExtractor.o `test -f 'theoraExtractor.cpp' || echo '$(srcdir)/'`theoraExtractor.cpp - -oggThumb-theoraExtractor.obj: theoraExtractor.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -MT oggThumb-theoraExtractor.obj -MD -MP -MF $(DEPDIR)/oggThumb-theoraExtractor.Tpo -c -o oggThumb-theoraExtractor.obj `if test -f 'theoraExtractor.cpp'; then $(CYGPATH_W) 'theoraExtractor.cpp'; else $(CYGPATH_W) '$(srcdir)/theoraExtractor.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggThumb-theoraExtractor.Tpo $(DEPDIR)/oggThumb-theoraExtractor.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='theoraExtractor.cpp' object='oggThumb-theoraExtractor.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -c -o oggThumb-theoraExtractor.obj `if test -f 'theoraExtractor.cpp'; then $(CYGPATH_W) 'theoraExtractor.cpp'; else $(CYGPATH_W) '$(srcdir)/theoraExtractor.cpp'; fi` - -oggThumb-vorbisPosInterpreter.o: vorbisPosInterpreter.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -MT oggThumb-vorbisPosInterpreter.o -MD -MP -MF $(DEPDIR)/oggThumb-vorbisPosInterpreter.Tpo -c -o oggThumb-vorbisPosInterpreter.o `test -f 'vorbisPosInterpreter.cpp' || echo '$(srcdir)/'`vorbisPosInterpreter.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggThumb-vorbisPosInterpreter.Tpo $(DEPDIR)/oggThumb-vorbisPosInterpreter.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='vorbisPosInterpreter.cpp' object='oggThumb-vorbisPosInterpreter.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -c -o oggThumb-vorbisPosInterpreter.o `test -f 'vorbisPosInterpreter.cpp' || echo '$(srcdir)/'`vorbisPosInterpreter.cpp - -oggThumb-vorbisPosInterpreter.obj: vorbisPosInterpreter.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -MT oggThumb-vorbisPosInterpreter.obj -MD -MP -MF $(DEPDIR)/oggThumb-vorbisPosInterpreter.Tpo -c -o oggThumb-vorbisPosInterpreter.obj `if test -f 'vorbisPosInterpreter.cpp'; then $(CYGPATH_W) 'vorbisPosInterpreter.cpp'; else $(CYGPATH_W) '$(srcdir)/vorbisPosInterpreter.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggThumb-vorbisPosInterpreter.Tpo $(DEPDIR)/oggThumb-vorbisPosInterpreter.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='vorbisPosInterpreter.cpp' object='oggThumb-vorbisPosInterpreter.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -c -o oggThumb-vorbisPosInterpreter.obj `if test -f 'vorbisPosInterpreter.cpp'; then $(CYGPATH_W) 'vorbisPosInterpreter.cpp'; else $(CYGPATH_W) '$(srcdir)/vorbisPosInterpreter.cpp'; fi` - -oggThumb-vorbisStreamParameter.o: vorbisStreamParameter.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -MT oggThumb-vorbisStreamParameter.o -MD -MP -MF $(DEPDIR)/oggThumb-vorbisStreamParameter.Tpo -c -o oggThumb-vorbisStreamParameter.o `test -f 'vorbisStreamParameter.cpp' || echo '$(srcdir)/'`vorbisStreamParameter.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggThumb-vorbisStreamParameter.Tpo $(DEPDIR)/oggThumb-vorbisStreamParameter.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='vorbisStreamParameter.cpp' object='oggThumb-vorbisStreamParameter.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -c -o oggThumb-vorbisStreamParameter.o `test -f 'vorbisStreamParameter.cpp' || echo '$(srcdir)/'`vorbisStreamParameter.cpp - -oggThumb-vorbisStreamParameter.obj: vorbisStreamParameter.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -MT oggThumb-vorbisStreamParameter.obj -MD -MP -MF $(DEPDIR)/oggThumb-vorbisStreamParameter.Tpo -c -o oggThumb-vorbisStreamParameter.obj `if test -f 'vorbisStreamParameter.cpp'; then $(CYGPATH_W) 'vorbisStreamParameter.cpp'; else $(CYGPATH_W) '$(srcdir)/vorbisStreamParameter.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggThumb-vorbisStreamParameter.Tpo $(DEPDIR)/oggThumb-vorbisStreamParameter.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='vorbisStreamParameter.cpp' object='oggThumb-vorbisStreamParameter.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -c -o oggThumb-vorbisStreamParameter.obj `if test -f 'vorbisStreamParameter.cpp'; then $(CYGPATH_W) 'vorbisStreamParameter.cpp'; else $(CYGPATH_W) '$(srcdir)/vorbisStreamParameter.cpp'; fi` - -oggThumb-vorbisExtractor.o: vorbisExtractor.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -MT oggThumb-vorbisExtractor.o -MD -MP -MF $(DEPDIR)/oggThumb-vorbisExtractor.Tpo -c -o oggThumb-vorbisExtractor.o `test -f 'vorbisExtractor.cpp' || echo '$(srcdir)/'`vorbisExtractor.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggThumb-vorbisExtractor.Tpo $(DEPDIR)/oggThumb-vorbisExtractor.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='vorbisExtractor.cpp' object='oggThumb-vorbisExtractor.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -c -o oggThumb-vorbisExtractor.o `test -f 'vorbisExtractor.cpp' || echo '$(srcdir)/'`vorbisExtractor.cpp - -oggThumb-vorbisExtractor.obj: vorbisExtractor.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -MT oggThumb-vorbisExtractor.obj -MD -MP -MF $(DEPDIR)/oggThumb-vorbisExtractor.Tpo -c -o oggThumb-vorbisExtractor.obj `if test -f 'vorbisExtractor.cpp'; then $(CYGPATH_W) 'vorbisExtractor.cpp'; else $(CYGPATH_W) '$(srcdir)/vorbisExtractor.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggThumb-vorbisExtractor.Tpo $(DEPDIR)/oggThumb-vorbisExtractor.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='vorbisExtractor.cpp' object='oggThumb-vorbisExtractor.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -c -o oggThumb-vorbisExtractor.obj `if test -f 'vorbisExtractor.cpp'; then $(CYGPATH_W) 'vorbisExtractor.cpp'; else $(CYGPATH_W) '$(srcdir)/vorbisExtractor.cpp'; fi` - -oggThumb-katePosInterpreter.o: katePosInterpreter.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -MT oggThumb-katePosInterpreter.o -MD -MP -MF $(DEPDIR)/oggThumb-katePosInterpreter.Tpo -c -o oggThumb-katePosInterpreter.o `test -f 'katePosInterpreter.cpp' || echo '$(srcdir)/'`katePosInterpreter.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggThumb-katePosInterpreter.Tpo $(DEPDIR)/oggThumb-katePosInterpreter.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='katePosInterpreter.cpp' object='oggThumb-katePosInterpreter.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -c -o oggThumb-katePosInterpreter.o `test -f 'katePosInterpreter.cpp' || echo '$(srcdir)/'`katePosInterpreter.cpp - -oggThumb-katePosInterpreter.obj: katePosInterpreter.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -MT oggThumb-katePosInterpreter.obj -MD -MP -MF $(DEPDIR)/oggThumb-katePosInterpreter.Tpo -c -o oggThumb-katePosInterpreter.obj `if test -f 'katePosInterpreter.cpp'; then $(CYGPATH_W) 'katePosInterpreter.cpp'; else $(CYGPATH_W) '$(srcdir)/katePosInterpreter.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggThumb-katePosInterpreter.Tpo $(DEPDIR)/oggThumb-katePosInterpreter.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='katePosInterpreter.cpp' object='oggThumb-katePosInterpreter.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -c -o oggThumb-katePosInterpreter.obj `if test -f 'katePosInterpreter.cpp'; then $(CYGPATH_W) 'katePosInterpreter.cpp'; else $(CYGPATH_W) '$(srcdir)/katePosInterpreter.cpp'; fi` - -oggThumb-kateStreamParameter.o: kateStreamParameter.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -MT oggThumb-kateStreamParameter.o -MD -MP -MF $(DEPDIR)/oggThumb-kateStreamParameter.Tpo -c -o oggThumb-kateStreamParameter.o `test -f 'kateStreamParameter.cpp' || echo '$(srcdir)/'`kateStreamParameter.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggThumb-kateStreamParameter.Tpo $(DEPDIR)/oggThumb-kateStreamParameter.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='kateStreamParameter.cpp' object='oggThumb-kateStreamParameter.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -c -o oggThumb-kateStreamParameter.o `test -f 'kateStreamParameter.cpp' || echo '$(srcdir)/'`kateStreamParameter.cpp - -oggThumb-kateStreamParameter.obj: kateStreamParameter.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -MT oggThumb-kateStreamParameter.obj -MD -MP -MF $(DEPDIR)/oggThumb-kateStreamParameter.Tpo -c -o oggThumb-kateStreamParameter.obj `if test -f 'kateStreamParameter.cpp'; then $(CYGPATH_W) 'kateStreamParameter.cpp'; else $(CYGPATH_W) '$(srcdir)/kateStreamParameter.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggThumb-kateStreamParameter.Tpo $(DEPDIR)/oggThumb-kateStreamParameter.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='kateStreamParameter.cpp' object='oggThumb-kateStreamParameter.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -c -o oggThumb-kateStreamParameter.obj `if test -f 'kateStreamParameter.cpp'; then $(CYGPATH_W) 'kateStreamParameter.cpp'; else $(CYGPATH_W) '$(srcdir)/kateStreamParameter.cpp'; fi` - -oggThumb-kateExtractor.o: kateExtractor.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -MT oggThumb-kateExtractor.o -MD -MP -MF $(DEPDIR)/oggThumb-kateExtractor.Tpo -c -o oggThumb-kateExtractor.o `test -f 'kateExtractor.cpp' || echo '$(srcdir)/'`kateExtractor.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggThumb-kateExtractor.Tpo $(DEPDIR)/oggThumb-kateExtractor.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='kateExtractor.cpp' object='oggThumb-kateExtractor.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -c -o oggThumb-kateExtractor.o `test -f 'kateExtractor.cpp' || echo '$(srcdir)/'`kateExtractor.cpp - -oggThumb-kateExtractor.obj: kateExtractor.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -MT oggThumb-kateExtractor.obj -MD -MP -MF $(DEPDIR)/oggThumb-kateExtractor.Tpo -c -o oggThumb-kateExtractor.obj `if test -f 'kateExtractor.cpp'; then $(CYGPATH_W) 'kateExtractor.cpp'; else $(CYGPATH_W) '$(srcdir)/kateExtractor.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggThumb-kateExtractor.Tpo $(DEPDIR)/oggThumb-kateExtractor.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='kateExtractor.cpp' object='oggThumb-kateExtractor.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -c -o oggThumb-kateExtractor.obj `if test -f 'kateExtractor.cpp'; then $(CYGPATH_W) 'kateExtractor.cpp'; else $(CYGPATH_W) '$(srcdir)/kateExtractor.cpp'; fi` - -oggThumb-theoraDecoder.o: theoraDecoder.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -MT oggThumb-theoraDecoder.o -MD -MP -MF $(DEPDIR)/oggThumb-theoraDecoder.Tpo -c -o oggThumb-theoraDecoder.o `test -f 'theoraDecoder.cpp' || echo '$(srcdir)/'`theoraDecoder.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggThumb-theoraDecoder.Tpo $(DEPDIR)/oggThumb-theoraDecoder.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='theoraDecoder.cpp' object='oggThumb-theoraDecoder.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -c -o oggThumb-theoraDecoder.o `test -f 'theoraDecoder.cpp' || echo '$(srcdir)/'`theoraDecoder.cpp - -oggThumb-theoraDecoder.obj: theoraDecoder.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -MT oggThumb-theoraDecoder.obj -MD -MP -MF $(DEPDIR)/oggThumb-theoraDecoder.Tpo -c -o oggThumb-theoraDecoder.obj `if test -f 'theoraDecoder.cpp'; then $(CYGPATH_W) 'theoraDecoder.cpp'; else $(CYGPATH_W) '$(srcdir)/theoraDecoder.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggThumb-theoraDecoder.Tpo $(DEPDIR)/oggThumb-theoraDecoder.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='theoraDecoder.cpp' object='oggThumb-theoraDecoder.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -c -o oggThumb-theoraDecoder.obj `if test -f 'theoraDecoder.cpp'; then $(CYGPATH_W) 'theoraDecoder.cpp'; else $(CYGPATH_W) '$(srcdir)/theoraDecoder.cpp'; fi` - -oggThumb-theoraEncoder.o: theoraEncoder.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -MT oggThumb-theoraEncoder.o -MD -MP -MF $(DEPDIR)/oggThumb-theoraEncoder.Tpo -c -o oggThumb-theoraEncoder.o `test -f 'theoraEncoder.cpp' || echo '$(srcdir)/'`theoraEncoder.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggThumb-theoraEncoder.Tpo $(DEPDIR)/oggThumb-theoraEncoder.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='theoraEncoder.cpp' object='oggThumb-theoraEncoder.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -c -o oggThumb-theoraEncoder.o `test -f 'theoraEncoder.cpp' || echo '$(srcdir)/'`theoraEncoder.cpp - -oggThumb-theoraEncoder.obj: theoraEncoder.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -MT oggThumb-theoraEncoder.obj -MD -MP -MF $(DEPDIR)/oggThumb-theoraEncoder.Tpo -c -o oggThumb-theoraEncoder.obj `if test -f 'theoraEncoder.cpp'; then $(CYGPATH_W) 'theoraEncoder.cpp'; else $(CYGPATH_W) '$(srcdir)/theoraEncoder.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggThumb-theoraEncoder.Tpo $(DEPDIR)/oggThumb-theoraEncoder.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='theoraEncoder.cpp' object='oggThumb-theoraEncoder.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -c -o oggThumb-theoraEncoder.obj `if test -f 'theoraEncoder.cpp'; then $(CYGPATH_W) 'theoraEncoder.cpp'; else $(CYGPATH_W) '$(srcdir)/theoraEncoder.cpp'; fi` - -oggThumb-effector.o: effector.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -MT oggThumb-effector.o -MD -MP -MF $(DEPDIR)/oggThumb-effector.Tpo -c -o oggThumb-effector.o `test -f 'effector.cpp' || echo '$(srcdir)/'`effector.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggThumb-effector.Tpo $(DEPDIR)/oggThumb-effector.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='effector.cpp' object='oggThumb-effector.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -c -o oggThumb-effector.o `test -f 'effector.cpp' || echo '$(srcdir)/'`effector.cpp - -oggThumb-effector.obj: effector.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -MT oggThumb-effector.obj -MD -MP -MF $(DEPDIR)/oggThumb-effector.Tpo -c -o oggThumb-effector.obj `if test -f 'effector.cpp'; then $(CYGPATH_W) 'effector.cpp'; else $(CYGPATH_W) '$(srcdir)/effector.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggThumb-effector.Tpo $(DEPDIR)/oggThumb-effector.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='effector.cpp' object='oggThumb-effector.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -c -o oggThumb-effector.obj `if test -f 'effector.cpp'; then $(CYGPATH_W) 'effector.cpp'; else $(CYGPATH_W) '$(srcdir)/effector.cpp'; fi` - -oggThumb-crossfader.o: crossfader.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -MT oggThumb-crossfader.o -MD -MP -MF $(DEPDIR)/oggThumb-crossfader.Tpo -c -o oggThumb-crossfader.o `test -f 'crossfader.cpp' || echo '$(srcdir)/'`crossfader.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggThumb-crossfader.Tpo $(DEPDIR)/oggThumb-crossfader.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='crossfader.cpp' object='oggThumb-crossfader.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -c -o oggThumb-crossfader.o `test -f 'crossfader.cpp' || echo '$(srcdir)/'`crossfader.cpp - -oggThumb-crossfader.obj: crossfader.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -MT oggThumb-crossfader.obj -MD -MP -MF $(DEPDIR)/oggThumb-crossfader.Tpo -c -o oggThumb-crossfader.obj `if test -f 'crossfader.cpp'; then $(CYGPATH_W) 'crossfader.cpp'; else $(CYGPATH_W) '$(srcdir)/crossfader.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggThumb-crossfader.Tpo $(DEPDIR)/oggThumb-crossfader.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='crossfader.cpp' object='oggThumb-crossfader.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -c -o oggThumb-crossfader.obj `if test -f 'crossfader.cpp'; then $(CYGPATH_W) 'crossfader.cpp'; else $(CYGPATH_W) '$(srcdir)/crossfader.cpp'; fi` - -oggThumb-plainPicture.o: plainPicture.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -MT oggThumb-plainPicture.o -MD -MP -MF $(DEPDIR)/oggThumb-plainPicture.Tpo -c -o oggThumb-plainPicture.o `test -f 'plainPicture.cpp' || echo '$(srcdir)/'`plainPicture.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggThumb-plainPicture.Tpo $(DEPDIR)/oggThumb-plainPicture.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='plainPicture.cpp' object='oggThumb-plainPicture.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -c -o oggThumb-plainPicture.o `test -f 'plainPicture.cpp' || echo '$(srcdir)/'`plainPicture.cpp - -oggThumb-plainPicture.obj: plainPicture.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -MT oggThumb-plainPicture.obj -MD -MP -MF $(DEPDIR)/oggThumb-plainPicture.Tpo -c -o oggThumb-plainPicture.obj `if test -f 'plainPicture.cpp'; then $(CYGPATH_W) 'plainPicture.cpp'; else $(CYGPATH_W) '$(srcdir)/plainPicture.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggThumb-plainPicture.Tpo $(DEPDIR)/oggThumb-plainPicture.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='plainPicture.cpp' object='oggThumb-plainPicture.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -c -o oggThumb-plainPicture.obj `if test -f 'plainPicture.cpp'; then $(CYGPATH_W) 'plainPicture.cpp'; else $(CYGPATH_W) '$(srcdir)/plainPicture.cpp'; fi` - -oggThumb-lowpassEffect.o: lowpassEffect.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -MT oggThumb-lowpassEffect.o -MD -MP -MF $(DEPDIR)/oggThumb-lowpassEffect.Tpo -c -o oggThumb-lowpassEffect.o `test -f 'lowpassEffect.cpp' || echo '$(srcdir)/'`lowpassEffect.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggThumb-lowpassEffect.Tpo $(DEPDIR)/oggThumb-lowpassEffect.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='lowpassEffect.cpp' object='oggThumb-lowpassEffect.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -c -o oggThumb-lowpassEffect.o `test -f 'lowpassEffect.cpp' || echo '$(srcdir)/'`lowpassEffect.cpp - -oggThumb-lowpassEffect.obj: lowpassEffect.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -MT oggThumb-lowpassEffect.obj -MD -MP -MF $(DEPDIR)/oggThumb-lowpassEffect.Tpo -c -o oggThumb-lowpassEffect.obj `if test -f 'lowpassEffect.cpp'; then $(CYGPATH_W) 'lowpassEffect.cpp'; else $(CYGPATH_W) '$(srcdir)/lowpassEffect.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggThumb-lowpassEffect.Tpo $(DEPDIR)/oggThumb-lowpassEffect.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='lowpassEffect.cpp' object='oggThumb-lowpassEffect.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -c -o oggThumb-lowpassEffect.obj `if test -f 'lowpassEffect.cpp'; then $(CYGPATH_W) 'lowpassEffect.cpp'; else $(CYGPATH_W) '$(srcdir)/lowpassEffect.cpp'; fi` - -oggThumb-kenburnseffect.o: kenburnseffect.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -MT oggThumb-kenburnseffect.o -MD -MP -MF $(DEPDIR)/oggThumb-kenburnseffect.Tpo -c -o oggThumb-kenburnseffect.o `test -f 'kenburnseffect.cpp' || echo '$(srcdir)/'`kenburnseffect.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggThumb-kenburnseffect.Tpo $(DEPDIR)/oggThumb-kenburnseffect.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='kenburnseffect.cpp' object='oggThumb-kenburnseffect.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -c -o oggThumb-kenburnseffect.o `test -f 'kenburnseffect.cpp' || echo '$(srcdir)/'`kenburnseffect.cpp - -oggThumb-kenburnseffect.obj: kenburnseffect.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -MT oggThumb-kenburnseffect.obj -MD -MP -MF $(DEPDIR)/oggThumb-kenburnseffect.Tpo -c -o oggThumb-kenburnseffect.obj `if test -f 'kenburnseffect.cpp'; then $(CYGPATH_W) 'kenburnseffect.cpp'; else $(CYGPATH_W) '$(srcdir)/kenburnseffect.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggThumb-kenburnseffect.Tpo $(DEPDIR)/oggThumb-kenburnseffect.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='kenburnseffect.cpp' object='oggThumb-kenburnseffect.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -c -o oggThumb-kenburnseffect.obj `if test -f 'kenburnseffect.cpp'; then $(CYGPATH_W) 'kenburnseffect.cpp'; else $(CYGPATH_W) '$(srcdir)/kenburnseffect.cpp'; fi` - -oggThumb-pictureResize.o: pictureResize.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -MT oggThumb-pictureResize.o -MD -MP -MF $(DEPDIR)/oggThumb-pictureResize.Tpo -c -o oggThumb-pictureResize.o `test -f 'pictureResize.cpp' || echo '$(srcdir)/'`pictureResize.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggThumb-pictureResize.Tpo $(DEPDIR)/oggThumb-pictureResize.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='pictureResize.cpp' object='oggThumb-pictureResize.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -c -o oggThumb-pictureResize.o `test -f 'pictureResize.cpp' || echo '$(srcdir)/'`pictureResize.cpp - -oggThumb-pictureResize.obj: pictureResize.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -MT oggThumb-pictureResize.obj -MD -MP -MF $(DEPDIR)/oggThumb-pictureResize.Tpo -c -o oggThumb-pictureResize.obj `if test -f 'pictureResize.cpp'; then $(CYGPATH_W) 'pictureResize.cpp'; else $(CYGPATH_W) '$(srcdir)/pictureResize.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggThumb-pictureResize.Tpo $(DEPDIR)/oggThumb-pictureResize.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='pictureResize.cpp' object='oggThumb-pictureResize.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -c -o oggThumb-pictureResize.obj `if test -f 'pictureResize.cpp'; then $(CYGPATH_W) 'pictureResize.cpp'; else $(CYGPATH_W) '$(srcdir)/pictureResize.cpp'; fi` - -oggThumb-pictureBlend.o: pictureBlend.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -MT oggThumb-pictureBlend.o -MD -MP -MF $(DEPDIR)/oggThumb-pictureBlend.Tpo -c -o oggThumb-pictureBlend.o `test -f 'pictureBlend.cpp' || echo '$(srcdir)/'`pictureBlend.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggThumb-pictureBlend.Tpo $(DEPDIR)/oggThumb-pictureBlend.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='pictureBlend.cpp' object='oggThumb-pictureBlend.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -c -o oggThumb-pictureBlend.o `test -f 'pictureBlend.cpp' || echo '$(srcdir)/'`pictureBlend.cpp - -oggThumb-pictureBlend.obj: pictureBlend.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -MT oggThumb-pictureBlend.obj -MD -MP -MF $(DEPDIR)/oggThumb-pictureBlend.Tpo -c -o oggThumb-pictureBlend.obj `if test -f 'pictureBlend.cpp'; then $(CYGPATH_W) 'pictureBlend.cpp'; else $(CYGPATH_W) '$(srcdir)/pictureBlend.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggThumb-pictureBlend.Tpo $(DEPDIR)/oggThumb-pictureBlend.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='pictureBlend.cpp' object='oggThumb-pictureBlend.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -c -o oggThumb-pictureBlend.obj `if test -f 'pictureBlend.cpp'; then $(CYGPATH_W) 'pictureBlend.cpp'; else $(CYGPATH_W) '$(srcdir)/pictureBlend.cpp'; fi` - -oggThumb-pictureLoader.o: pictureLoader.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -MT oggThumb-pictureLoader.o -MD -MP -MF $(DEPDIR)/oggThumb-pictureLoader.Tpo -c -o oggThumb-pictureLoader.o `test -f 'pictureLoader.cpp' || echo '$(srcdir)/'`pictureLoader.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggThumb-pictureLoader.Tpo $(DEPDIR)/oggThumb-pictureLoader.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='pictureLoader.cpp' object='oggThumb-pictureLoader.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -c -o oggThumb-pictureLoader.o `test -f 'pictureLoader.cpp' || echo '$(srcdir)/'`pictureLoader.cpp - -oggThumb-pictureLoader.obj: pictureLoader.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -MT oggThumb-pictureLoader.obj -MD -MP -MF $(DEPDIR)/oggThumb-pictureLoader.Tpo -c -o oggThumb-pictureLoader.obj `if test -f 'pictureLoader.cpp'; then $(CYGPATH_W) 'pictureLoader.cpp'; else $(CYGPATH_W) '$(srcdir)/pictureLoader.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggThumb-pictureLoader.Tpo $(DEPDIR)/oggThumb-pictureLoader.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='pictureLoader.cpp' object='oggThumb-pictureLoader.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -c -o oggThumb-pictureLoader.obj `if test -f 'pictureLoader.cpp'; then $(CYGPATH_W) 'pictureLoader.cpp'; else $(CYGPATH_W) '$(srcdir)/pictureLoader.cpp'; fi` - -oggThumb-cmdlineextractor.o: cmdlineextractor.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -MT oggThumb-cmdlineextractor.o -MD -MP -MF $(DEPDIR)/oggThumb-cmdlineextractor.Tpo -c -o oggThumb-cmdlineextractor.o `test -f 'cmdlineextractor.cpp' || echo '$(srcdir)/'`cmdlineextractor.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggThumb-cmdlineextractor.Tpo $(DEPDIR)/oggThumb-cmdlineextractor.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='cmdlineextractor.cpp' object='oggThumb-cmdlineextractor.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -c -o oggThumb-cmdlineextractor.o `test -f 'cmdlineextractor.cpp' || echo '$(srcdir)/'`cmdlineextractor.cpp - -oggThumb-cmdlineextractor.obj: cmdlineextractor.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -MT oggThumb-cmdlineextractor.obj -MD -MP -MF $(DEPDIR)/oggThumb-cmdlineextractor.Tpo -c -o oggThumb-cmdlineextractor.obj `if test -f 'cmdlineextractor.cpp'; then $(CYGPATH_W) 'cmdlineextractor.cpp'; else $(CYGPATH_W) '$(srcdir)/cmdlineextractor.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggThumb-cmdlineextractor.Tpo $(DEPDIR)/oggThumb-cmdlineextractor.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='cmdlineextractor.cpp' object='oggThumb-cmdlineextractor.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -c -o oggThumb-cmdlineextractor.obj `if test -f 'cmdlineextractor.cpp'; then $(CYGPATH_W) 'cmdlineextractor.cpp'; else $(CYGPATH_W) '$(srcdir)/cmdlineextractor.cpp'; fi` - -oggThumb-basePlane.o: basePlane.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -MT oggThumb-basePlane.o -MD -MP -MF $(DEPDIR)/oggThumb-basePlane.Tpo -c -o oggThumb-basePlane.o `test -f 'basePlane.cpp' || echo '$(srcdir)/'`basePlane.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggThumb-basePlane.Tpo $(DEPDIR)/oggThumb-basePlane.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='basePlane.cpp' object='oggThumb-basePlane.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -c -o oggThumb-basePlane.o `test -f 'basePlane.cpp' || echo '$(srcdir)/'`basePlane.cpp - -oggThumb-basePlane.obj: basePlane.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -MT oggThumb-basePlane.obj -MD -MP -MF $(DEPDIR)/oggThumb-basePlane.Tpo -c -o oggThumb-basePlane.obj `if test -f 'basePlane.cpp'; then $(CYGPATH_W) 'basePlane.cpp'; else $(CYGPATH_W) '$(srcdir)/basePlane.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggThumb-basePlane.Tpo $(DEPDIR)/oggThumb-basePlane.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='basePlane.cpp' object='oggThumb-basePlane.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -c -o oggThumb-basePlane.obj `if test -f 'basePlane.cpp'; then $(CYGPATH_W) 'basePlane.cpp'; else $(CYGPATH_W) '$(srcdir)/basePlane.cpp'; fi` - -oggThumb-rgbPlane.o: rgbPlane.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -MT oggThumb-rgbPlane.o -MD -MP -MF $(DEPDIR)/oggThumb-rgbPlane.Tpo -c -o oggThumb-rgbPlane.o `test -f 'rgbPlane.cpp' || echo '$(srcdir)/'`rgbPlane.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggThumb-rgbPlane.Tpo $(DEPDIR)/oggThumb-rgbPlane.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='rgbPlane.cpp' object='oggThumb-rgbPlane.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -c -o oggThumb-rgbPlane.o `test -f 'rgbPlane.cpp' || echo '$(srcdir)/'`rgbPlane.cpp - -oggThumb-rgbPlane.obj: rgbPlane.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -MT oggThumb-rgbPlane.obj -MD -MP -MF $(DEPDIR)/oggThumb-rgbPlane.Tpo -c -o oggThumb-rgbPlane.obj `if test -f 'rgbPlane.cpp'; then $(CYGPATH_W) 'rgbPlane.cpp'; else $(CYGPATH_W) '$(srcdir)/rgbPlane.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggThumb-rgbPlane.Tpo $(DEPDIR)/oggThumb-rgbPlane.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='rgbPlane.cpp' object='oggThumb-rgbPlane.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -c -o oggThumb-rgbPlane.obj `if test -f 'rgbPlane.cpp'; then $(CYGPATH_W) 'rgbPlane.cpp'; else $(CYGPATH_W) '$(srcdir)/rgbPlane.cpp'; fi` - -oggThumb-blendElement.o: blendElement.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -MT oggThumb-blendElement.o -MD -MP -MF $(DEPDIR)/oggThumb-blendElement.Tpo -c -o oggThumb-blendElement.o `test -f 'blendElement.cpp' || echo '$(srcdir)/'`blendElement.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggThumb-blendElement.Tpo $(DEPDIR)/oggThumb-blendElement.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='blendElement.cpp' object='oggThumb-blendElement.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -c -o oggThumb-blendElement.o `test -f 'blendElement.cpp' || echo '$(srcdir)/'`blendElement.cpp - -oggThumb-blendElement.obj: blendElement.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -MT oggThumb-blendElement.obj -MD -MP -MF $(DEPDIR)/oggThumb-blendElement.Tpo -c -o oggThumb-blendElement.obj `if test -f 'blendElement.cpp'; then $(CYGPATH_W) 'blendElement.cpp'; else $(CYGPATH_W) '$(srcdir)/blendElement.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggThumb-blendElement.Tpo $(DEPDIR)/oggThumb-blendElement.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='blendElement.cpp' object='oggThumb-blendElement.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -c -o oggThumb-blendElement.obj `if test -f 'blendElement.cpp'; then $(CYGPATH_W) 'blendElement.cpp'; else $(CYGPATH_W) '$(srcdir)/blendElement.cpp'; fi` - -oggThumb-oggThumb.o: oggThumb.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -MT oggThumb-oggThumb.o -MD -MP -MF $(DEPDIR)/oggThumb-oggThumb.Tpo -c -o oggThumb-oggThumb.o `test -f 'oggThumb.cpp' || echo '$(srcdir)/'`oggThumb.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggThumb-oggThumb.Tpo $(DEPDIR)/oggThumb-oggThumb.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='oggThumb.cpp' object='oggThumb-oggThumb.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -c -o oggThumb-oggThumb.o `test -f 'oggThumb.cpp' || echo '$(srcdir)/'`oggThumb.cpp - -oggThumb-oggThumb.obj: oggThumb.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -MT oggThumb-oggThumb.obj -MD -MP -MF $(DEPDIR)/oggThumb-oggThumb.Tpo -c -o oggThumb-oggThumb.obj `if test -f 'oggThumb.cpp'; then $(CYGPATH_W) 'oggThumb.cpp'; else $(CYGPATH_W) '$(srcdir)/oggThumb.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggThumb-oggThumb.Tpo $(DEPDIR)/oggThumb-oggThumb.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='oggThumb.cpp' object='oggThumb-oggThumb.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggThumb_CXXFLAGS) $(CXXFLAGS) -c -o oggThumb-oggThumb.obj `if test -f 'oggThumb.cpp'; then $(CYGPATH_W) 'oggThumb.cpp'; else $(CYGPATH_W) '$(srcdir)/oggThumb.cpp'; fi` - -oggTranscode-mediaUnit.o: mediaUnit.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -MT oggTranscode-mediaUnit.o -MD -MP -MF $(DEPDIR)/oggTranscode-mediaUnit.Tpo -c -o oggTranscode-mediaUnit.o `test -f 'mediaUnit.cpp' || echo '$(srcdir)/'`mediaUnit.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggTranscode-mediaUnit.Tpo $(DEPDIR)/oggTranscode-mediaUnit.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='mediaUnit.cpp' object='oggTranscode-mediaUnit.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -c -o oggTranscode-mediaUnit.o `test -f 'mediaUnit.cpp' || echo '$(srcdir)/'`mediaUnit.cpp - -oggTranscode-mediaUnit.obj: mediaUnit.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -MT oggTranscode-mediaUnit.obj -MD -MP -MF $(DEPDIR)/oggTranscode-mediaUnit.Tpo -c -o oggTranscode-mediaUnit.obj `if test -f 'mediaUnit.cpp'; then $(CYGPATH_W) 'mediaUnit.cpp'; else $(CYGPATH_W) '$(srcdir)/mediaUnit.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggTranscode-mediaUnit.Tpo $(DEPDIR)/oggTranscode-mediaUnit.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='mediaUnit.cpp' object='oggTranscode-mediaUnit.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -c -o oggTranscode-mediaUnit.obj `if test -f 'mediaUnit.cpp'; then $(CYGPATH_W) 'mediaUnit.cpp'; else $(CYGPATH_W) '$(srcdir)/mediaUnit.cpp'; fi` - -oggTranscode-mediaRepository.o: mediaRepository.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -MT oggTranscode-mediaRepository.o -MD -MP -MF $(DEPDIR)/oggTranscode-mediaRepository.Tpo -c -o oggTranscode-mediaRepository.o `test -f 'mediaRepository.cpp' || echo '$(srcdir)/'`mediaRepository.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggTranscode-mediaRepository.Tpo $(DEPDIR)/oggTranscode-mediaRepository.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='mediaRepository.cpp' object='oggTranscode-mediaRepository.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -c -o oggTranscode-mediaRepository.o `test -f 'mediaRepository.cpp' || echo '$(srcdir)/'`mediaRepository.cpp - -oggTranscode-mediaRepository.obj: mediaRepository.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -MT oggTranscode-mediaRepository.obj -MD -MP -MF $(DEPDIR)/oggTranscode-mediaRepository.Tpo -c -o oggTranscode-mediaRepository.obj `if test -f 'mediaRepository.cpp'; then $(CYGPATH_W) 'mediaRepository.cpp'; else $(CYGPATH_W) '$(srcdir)/mediaRepository.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggTranscode-mediaRepository.Tpo $(DEPDIR)/oggTranscode-mediaRepository.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='mediaRepository.cpp' object='oggTranscode-mediaRepository.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -c -o oggTranscode-mediaRepository.obj `if test -f 'mediaRepository.cpp'; then $(CYGPATH_W) 'mediaRepository.cpp'; else $(CYGPATH_W) '$(srcdir)/mediaRepository.cpp'; fi` - -oggTranscode-fileRepository.o: fileRepository.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -MT oggTranscode-fileRepository.o -MD -MP -MF $(DEPDIR)/oggTranscode-fileRepository.Tpo -c -o oggTranscode-fileRepository.o `test -f 'fileRepository.cpp' || echo '$(srcdir)/'`fileRepository.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggTranscode-fileRepository.Tpo $(DEPDIR)/oggTranscode-fileRepository.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='fileRepository.cpp' object='oggTranscode-fileRepository.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -c -o oggTranscode-fileRepository.o `test -f 'fileRepository.cpp' || echo '$(srcdir)/'`fileRepository.cpp - -oggTranscode-fileRepository.obj: fileRepository.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -MT oggTranscode-fileRepository.obj -MD -MP -MF $(DEPDIR)/oggTranscode-fileRepository.Tpo -c -o oggTranscode-fileRepository.obj `if test -f 'fileRepository.cpp'; then $(CYGPATH_W) 'fileRepository.cpp'; else $(CYGPATH_W) '$(srcdir)/fileRepository.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggTranscode-fileRepository.Tpo $(DEPDIR)/oggTranscode-fileRepository.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='fileRepository.cpp' object='oggTranscode-fileRepository.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -c -o oggTranscode-fileRepository.obj `if test -f 'fileRepository.cpp'; then $(CYGPATH_W) 'fileRepository.cpp'; else $(CYGPATH_W) '$(srcdir)/fileRepository.cpp'; fi` - -oggTranscode-rawMediaPacket.o: rawMediaPacket.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -MT oggTranscode-rawMediaPacket.o -MD -MP -MF $(DEPDIR)/oggTranscode-rawMediaPacket.Tpo -c -o oggTranscode-rawMediaPacket.o `test -f 'rawMediaPacket.cpp' || echo '$(srcdir)/'`rawMediaPacket.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggTranscode-rawMediaPacket.Tpo $(DEPDIR)/oggTranscode-rawMediaPacket.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='rawMediaPacket.cpp' object='oggTranscode-rawMediaPacket.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -c -o oggTranscode-rawMediaPacket.o `test -f 'rawMediaPacket.cpp' || echo '$(srcdir)/'`rawMediaPacket.cpp - -oggTranscode-rawMediaPacket.obj: rawMediaPacket.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -MT oggTranscode-rawMediaPacket.obj -MD -MP -MF $(DEPDIR)/oggTranscode-rawMediaPacket.Tpo -c -o oggTranscode-rawMediaPacket.obj `if test -f 'rawMediaPacket.cpp'; then $(CYGPATH_W) 'rawMediaPacket.cpp'; else $(CYGPATH_W) '$(srcdir)/rawMediaPacket.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggTranscode-rawMediaPacket.Tpo $(DEPDIR)/oggTranscode-rawMediaPacket.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='rawMediaPacket.cpp' object='oggTranscode-rawMediaPacket.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -c -o oggTranscode-rawMediaPacket.obj `if test -f 'rawMediaPacket.cpp'; then $(CYGPATH_W) 'rawMediaPacket.cpp'; else $(CYGPATH_W) '$(srcdir)/rawMediaPacket.cpp'; fi` - -oggTranscode-mediaDecoder.o: mediaDecoder.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -MT oggTranscode-mediaDecoder.o -MD -MP -MF $(DEPDIR)/oggTranscode-mediaDecoder.Tpo -c -o oggTranscode-mediaDecoder.o `test -f 'mediaDecoder.cpp' || echo '$(srcdir)/'`mediaDecoder.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggTranscode-mediaDecoder.Tpo $(DEPDIR)/oggTranscode-mediaDecoder.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='mediaDecoder.cpp' object='oggTranscode-mediaDecoder.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -c -o oggTranscode-mediaDecoder.o `test -f 'mediaDecoder.cpp' || echo '$(srcdir)/'`mediaDecoder.cpp - -oggTranscode-mediaDecoder.obj: mediaDecoder.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -MT oggTranscode-mediaDecoder.obj -MD -MP -MF $(DEPDIR)/oggTranscode-mediaDecoder.Tpo -c -o oggTranscode-mediaDecoder.obj `if test -f 'mediaDecoder.cpp'; then $(CYGPATH_W) 'mediaDecoder.cpp'; else $(CYGPATH_W) '$(srcdir)/mediaDecoder.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggTranscode-mediaDecoder.Tpo $(DEPDIR)/oggTranscode-mediaDecoder.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='mediaDecoder.cpp' object='oggTranscode-mediaDecoder.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -c -o oggTranscode-mediaDecoder.obj `if test -f 'mediaDecoder.cpp'; then $(CYGPATH_W) 'mediaDecoder.cpp'; else $(CYGPATH_W) '$(srcdir)/mediaDecoder.cpp'; fi` - -oggTranscode-mediaEncoder.o: mediaEncoder.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -MT oggTranscode-mediaEncoder.o -MD -MP -MF $(DEPDIR)/oggTranscode-mediaEncoder.Tpo -c -o oggTranscode-mediaEncoder.o `test -f 'mediaEncoder.cpp' || echo '$(srcdir)/'`mediaEncoder.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggTranscode-mediaEncoder.Tpo $(DEPDIR)/oggTranscode-mediaEncoder.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='mediaEncoder.cpp' object='oggTranscode-mediaEncoder.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -c -o oggTranscode-mediaEncoder.o `test -f 'mediaEncoder.cpp' || echo '$(srcdir)/'`mediaEncoder.cpp - -oggTranscode-mediaEncoder.obj: mediaEncoder.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -MT oggTranscode-mediaEncoder.obj -MD -MP -MF $(DEPDIR)/oggTranscode-mediaEncoder.Tpo -c -o oggTranscode-mediaEncoder.obj `if test -f 'mediaEncoder.cpp'; then $(CYGPATH_W) 'mediaEncoder.cpp'; else $(CYGPATH_W) '$(srcdir)/mediaEncoder.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggTranscode-mediaEncoder.Tpo $(DEPDIR)/oggTranscode-mediaEncoder.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='mediaEncoder.cpp' object='oggTranscode-mediaEncoder.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -c -o oggTranscode-mediaEncoder.obj `if test -f 'mediaEncoder.cpp'; then $(CYGPATH_W) 'mediaEncoder.cpp'; else $(CYGPATH_W) '$(srcdir)/mediaEncoder.cpp'; fi` - -oggTranscode-mediaConverter.o: mediaConverter.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -MT oggTranscode-mediaConverter.o -MD -MP -MF $(DEPDIR)/oggTranscode-mediaConverter.Tpo -c -o oggTranscode-mediaConverter.o `test -f 'mediaConverter.cpp' || echo '$(srcdir)/'`mediaConverter.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggTranscode-mediaConverter.Tpo $(DEPDIR)/oggTranscode-mediaConverter.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='mediaConverter.cpp' object='oggTranscode-mediaConverter.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -c -o oggTranscode-mediaConverter.o `test -f 'mediaConverter.cpp' || echo '$(srcdir)/'`mediaConverter.cpp - -oggTranscode-mediaConverter.obj: mediaConverter.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -MT oggTranscode-mediaConverter.obj -MD -MP -MF $(DEPDIR)/oggTranscode-mediaConverter.Tpo -c -o oggTranscode-mediaConverter.obj `if test -f 'mediaConverter.cpp'; then $(CYGPATH_W) 'mediaConverter.cpp'; else $(CYGPATH_W) '$(srcdir)/mediaConverter.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggTranscode-mediaConverter.Tpo $(DEPDIR)/oggTranscode-mediaConverter.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='mediaConverter.cpp' object='oggTranscode-mediaConverter.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -c -o oggTranscode-mediaConverter.obj `if test -f 'mediaConverter.cpp'; then $(CYGPATH_W) 'mediaConverter.cpp'; else $(CYGPATH_W) '$(srcdir)/mediaConverter.cpp'; fi` - -oggTranscode-oggDecoder.o: oggDecoder.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -MT oggTranscode-oggDecoder.o -MD -MP -MF $(DEPDIR)/oggTranscode-oggDecoder.Tpo -c -o oggTranscode-oggDecoder.o `test -f 'oggDecoder.cpp' || echo '$(srcdir)/'`oggDecoder.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggTranscode-oggDecoder.Tpo $(DEPDIR)/oggTranscode-oggDecoder.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='oggDecoder.cpp' object='oggTranscode-oggDecoder.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -c -o oggTranscode-oggDecoder.o `test -f 'oggDecoder.cpp' || echo '$(srcdir)/'`oggDecoder.cpp - -oggTranscode-oggDecoder.obj: oggDecoder.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -MT oggTranscode-oggDecoder.obj -MD -MP -MF $(DEPDIR)/oggTranscode-oggDecoder.Tpo -c -o oggTranscode-oggDecoder.obj `if test -f 'oggDecoder.cpp'; then $(CYGPATH_W) 'oggDecoder.cpp'; else $(CYGPATH_W) '$(srcdir)/oggDecoder.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggTranscode-oggDecoder.Tpo $(DEPDIR)/oggTranscode-oggDecoder.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='oggDecoder.cpp' object='oggTranscode-oggDecoder.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -c -o oggTranscode-oggDecoder.obj `if test -f 'oggDecoder.cpp'; then $(CYGPATH_W) 'oggDecoder.cpp'; else $(CYGPATH_W) '$(srcdir)/oggDecoder.cpp'; fi` - -oggTranscode-oggStreamDecoder.o: oggStreamDecoder.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -MT oggTranscode-oggStreamDecoder.o -MD -MP -MF $(DEPDIR)/oggTranscode-oggStreamDecoder.Tpo -c -o oggTranscode-oggStreamDecoder.o `test -f 'oggStreamDecoder.cpp' || echo '$(srcdir)/'`oggStreamDecoder.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggTranscode-oggStreamDecoder.Tpo $(DEPDIR)/oggTranscode-oggStreamDecoder.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='oggStreamDecoder.cpp' object='oggTranscode-oggStreamDecoder.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -c -o oggTranscode-oggStreamDecoder.o `test -f 'oggStreamDecoder.cpp' || echo '$(srcdir)/'`oggStreamDecoder.cpp - -oggTranscode-oggStreamDecoder.obj: oggStreamDecoder.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -MT oggTranscode-oggStreamDecoder.obj -MD -MP -MF $(DEPDIR)/oggTranscode-oggStreamDecoder.Tpo -c -o oggTranscode-oggStreamDecoder.obj `if test -f 'oggStreamDecoder.cpp'; then $(CYGPATH_W) 'oggStreamDecoder.cpp'; else $(CYGPATH_W) '$(srcdir)/oggStreamDecoder.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggTranscode-oggStreamDecoder.Tpo $(DEPDIR)/oggTranscode-oggStreamDecoder.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='oggStreamDecoder.cpp' object='oggTranscode-oggStreamDecoder.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -c -o oggTranscode-oggStreamDecoder.obj `if test -f 'oggStreamDecoder.cpp'; then $(CYGPATH_W) 'oggStreamDecoder.cpp'; else $(CYGPATH_W) '$(srcdir)/oggStreamDecoder.cpp'; fi` - -oggTranscode-oggPage.o: oggPage.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -MT oggTranscode-oggPage.o -MD -MP -MF $(DEPDIR)/oggTranscode-oggPage.Tpo -c -o oggTranscode-oggPage.o `test -f 'oggPage.cpp' || echo '$(srcdir)/'`oggPage.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggTranscode-oggPage.Tpo $(DEPDIR)/oggTranscode-oggPage.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='oggPage.cpp' object='oggTranscode-oggPage.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -c -o oggTranscode-oggPage.o `test -f 'oggPage.cpp' || echo '$(srcdir)/'`oggPage.cpp - -oggTranscode-oggPage.obj: oggPage.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -MT oggTranscode-oggPage.obj -MD -MP -MF $(DEPDIR)/oggTranscode-oggPage.Tpo -c -o oggTranscode-oggPage.obj `if test -f 'oggPage.cpp'; then $(CYGPATH_W) 'oggPage.cpp'; else $(CYGPATH_W) '$(srcdir)/oggPage.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggTranscode-oggPage.Tpo $(DEPDIR)/oggTranscode-oggPage.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='oggPage.cpp' object='oggTranscode-oggPage.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -c -o oggTranscode-oggPage.obj `if test -f 'oggPage.cpp'; then $(CYGPATH_W) 'oggPage.cpp'; else $(CYGPATH_W) '$(srcdir)/oggPage.cpp'; fi` - -oggTranscode-oggPacket.o: oggPacket.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -MT oggTranscode-oggPacket.o -MD -MP -MF $(DEPDIR)/oggTranscode-oggPacket.Tpo -c -o oggTranscode-oggPacket.o `test -f 'oggPacket.cpp' || echo '$(srcdir)/'`oggPacket.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggTranscode-oggPacket.Tpo $(DEPDIR)/oggTranscode-oggPacket.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='oggPacket.cpp' object='oggTranscode-oggPacket.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -c -o oggTranscode-oggPacket.o `test -f 'oggPacket.cpp' || echo '$(srcdir)/'`oggPacket.cpp - -oggTranscode-oggPacket.obj: oggPacket.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -MT oggTranscode-oggPacket.obj -MD -MP -MF $(DEPDIR)/oggTranscode-oggPacket.Tpo -c -o oggTranscode-oggPacket.obj `if test -f 'oggPacket.cpp'; then $(CYGPATH_W) 'oggPacket.cpp'; else $(CYGPATH_W) '$(srcdir)/oggPacket.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggTranscode-oggPacket.Tpo $(DEPDIR)/oggTranscode-oggPacket.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='oggPacket.cpp' object='oggTranscode-oggPacket.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -c -o oggTranscode-oggPacket.obj `if test -f 'oggPacket.cpp'; then $(CYGPATH_W) 'oggPacket.cpp'; else $(CYGPATH_W) '$(srcdir)/oggPacket.cpp'; fi` - -oggTranscode-ringbuffer.o: ringbuffer.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -MT oggTranscode-ringbuffer.o -MD -MP -MF $(DEPDIR)/oggTranscode-ringbuffer.Tpo -c -o oggTranscode-ringbuffer.o `test -f 'ringbuffer.cpp' || echo '$(srcdir)/'`ringbuffer.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggTranscode-ringbuffer.Tpo $(DEPDIR)/oggTranscode-ringbuffer.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='ringbuffer.cpp' object='oggTranscode-ringbuffer.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -c -o oggTranscode-ringbuffer.o `test -f 'ringbuffer.cpp' || echo '$(srcdir)/'`ringbuffer.cpp - -oggTranscode-ringbuffer.obj: ringbuffer.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -MT oggTranscode-ringbuffer.obj -MD -MP -MF $(DEPDIR)/oggTranscode-ringbuffer.Tpo -c -o oggTranscode-ringbuffer.obj `if test -f 'ringbuffer.cpp'; then $(CYGPATH_W) 'ringbuffer.cpp'; else $(CYGPATH_W) '$(srcdir)/ringbuffer.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggTranscode-ringbuffer.Tpo $(DEPDIR)/oggTranscode-ringbuffer.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='ringbuffer.cpp' object='oggTranscode-ringbuffer.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -c -o oggTranscode-ringbuffer.obj `if test -f 'ringbuffer.cpp'; then $(CYGPATH_W) 'ringbuffer.cpp'; else $(CYGPATH_W) '$(srcdir)/ringbuffer.cpp'; fi` - -oggTranscode-oggRingbuffer.o: oggRingbuffer.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -MT oggTranscode-oggRingbuffer.o -MD -MP -MF $(DEPDIR)/oggTranscode-oggRingbuffer.Tpo -c -o oggTranscode-oggRingbuffer.o `test -f 'oggRingbuffer.cpp' || echo '$(srcdir)/'`oggRingbuffer.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggTranscode-oggRingbuffer.Tpo $(DEPDIR)/oggTranscode-oggRingbuffer.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='oggRingbuffer.cpp' object='oggTranscode-oggRingbuffer.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -c -o oggTranscode-oggRingbuffer.o `test -f 'oggRingbuffer.cpp' || echo '$(srcdir)/'`oggRingbuffer.cpp - -oggTranscode-oggRingbuffer.obj: oggRingbuffer.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -MT oggTranscode-oggRingbuffer.obj -MD -MP -MF $(DEPDIR)/oggTranscode-oggRingbuffer.Tpo -c -o oggTranscode-oggRingbuffer.obj `if test -f 'oggRingbuffer.cpp'; then $(CYGPATH_W) 'oggRingbuffer.cpp'; else $(CYGPATH_W) '$(srcdir)/oggRingbuffer.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggTranscode-oggRingbuffer.Tpo $(DEPDIR)/oggTranscode-oggRingbuffer.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='oggRingbuffer.cpp' object='oggTranscode-oggRingbuffer.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -c -o oggTranscode-oggRingbuffer.obj `if test -f 'oggRingbuffer.cpp'; then $(CYGPATH_W) 'oggRingbuffer.cpp'; else $(CYGPATH_W) '$(srcdir)/oggRingbuffer.cpp'; fi` - -oggTranscode-crc.o: crc.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -MT oggTranscode-crc.o -MD -MP -MF $(DEPDIR)/oggTranscode-crc.Tpo -c -o oggTranscode-crc.o `test -f 'crc.cpp' || echo '$(srcdir)/'`crc.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggTranscode-crc.Tpo $(DEPDIR)/oggTranscode-crc.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='crc.cpp' object='oggTranscode-crc.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -c -o oggTranscode-crc.o `test -f 'crc.cpp' || echo '$(srcdir)/'`crc.cpp - -oggTranscode-crc.obj: crc.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -MT oggTranscode-crc.obj -MD -MP -MF $(DEPDIR)/oggTranscode-crc.Tpo -c -o oggTranscode-crc.obj `if test -f 'crc.cpp'; then $(CYGPATH_W) 'crc.cpp'; else $(CYGPATH_W) '$(srcdir)/crc.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggTranscode-crc.Tpo $(DEPDIR)/oggTranscode-crc.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='crc.cpp' object='oggTranscode-crc.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -c -o oggTranscode-crc.obj `if test -f 'crc.cpp'; then $(CYGPATH_W) 'crc.cpp'; else $(CYGPATH_W) '$(srcdir)/crc.cpp'; fi` - -oggTranscode-granulePosInterpreter.o: granulePosInterpreter.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -MT oggTranscode-granulePosInterpreter.o -MD -MP -MF $(DEPDIR)/oggTranscode-granulePosInterpreter.Tpo -c -o oggTranscode-granulePosInterpreter.o `test -f 'granulePosInterpreter.cpp' || echo '$(srcdir)/'`granulePosInterpreter.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggTranscode-granulePosInterpreter.Tpo $(DEPDIR)/oggTranscode-granulePosInterpreter.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='granulePosInterpreter.cpp' object='oggTranscode-granulePosInterpreter.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -c -o oggTranscode-granulePosInterpreter.o `test -f 'granulePosInterpreter.cpp' || echo '$(srcdir)/'`granulePosInterpreter.cpp - -oggTranscode-granulePosInterpreter.obj: granulePosInterpreter.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -MT oggTranscode-granulePosInterpreter.obj -MD -MP -MF $(DEPDIR)/oggTranscode-granulePosInterpreter.Tpo -c -o oggTranscode-granulePosInterpreter.obj `if test -f 'granulePosInterpreter.cpp'; then $(CYGPATH_W) 'granulePosInterpreter.cpp'; else $(CYGPATH_W) '$(srcdir)/granulePosInterpreter.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggTranscode-granulePosInterpreter.Tpo $(DEPDIR)/oggTranscode-granulePosInterpreter.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='granulePosInterpreter.cpp' object='oggTranscode-granulePosInterpreter.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -c -o oggTranscode-granulePosInterpreter.obj `if test -f 'granulePosInterpreter.cpp'; then $(CYGPATH_W) 'granulePosInterpreter.cpp'; else $(CYGPATH_W) '$(srcdir)/granulePosInterpreter.cpp'; fi` - -oggTranscode-mediaOutputDecoder.o: mediaOutputDecoder.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -MT oggTranscode-mediaOutputDecoder.o -MD -MP -MF $(DEPDIR)/oggTranscode-mediaOutputDecoder.Tpo -c -o oggTranscode-mediaOutputDecoder.o `test -f 'mediaOutputDecoder.cpp' || echo '$(srcdir)/'`mediaOutputDecoder.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggTranscode-mediaOutputDecoder.Tpo $(DEPDIR)/oggTranscode-mediaOutputDecoder.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='mediaOutputDecoder.cpp' object='oggTranscode-mediaOutputDecoder.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -c -o oggTranscode-mediaOutputDecoder.o `test -f 'mediaOutputDecoder.cpp' || echo '$(srcdir)/'`mediaOutputDecoder.cpp - -oggTranscode-mediaOutputDecoder.obj: mediaOutputDecoder.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -MT oggTranscode-mediaOutputDecoder.obj -MD -MP -MF $(DEPDIR)/oggTranscode-mediaOutputDecoder.Tpo -c -o oggTranscode-mediaOutputDecoder.obj `if test -f 'mediaOutputDecoder.cpp'; then $(CYGPATH_W) 'mediaOutputDecoder.cpp'; else $(CYGPATH_W) '$(srcdir)/mediaOutputDecoder.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggTranscode-mediaOutputDecoder.Tpo $(DEPDIR)/oggTranscode-mediaOutputDecoder.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='mediaOutputDecoder.cpp' object='oggTranscode-mediaOutputDecoder.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -c -o oggTranscode-mediaOutputDecoder.obj `if test -f 'mediaOutputDecoder.cpp'; then $(CYGPATH_W) 'mediaOutputDecoder.cpp'; else $(CYGPATH_W) '$(srcdir)/mediaOutputDecoder.cpp'; fi` - -oggTranscode-mediaInputEncoder.o: mediaInputEncoder.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -MT oggTranscode-mediaInputEncoder.o -MD -MP -MF $(DEPDIR)/oggTranscode-mediaInputEncoder.Tpo -c -o oggTranscode-mediaInputEncoder.o `test -f 'mediaInputEncoder.cpp' || echo '$(srcdir)/'`mediaInputEncoder.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggTranscode-mediaInputEncoder.Tpo $(DEPDIR)/oggTranscode-mediaInputEncoder.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='mediaInputEncoder.cpp' object='oggTranscode-mediaInputEncoder.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -c -o oggTranscode-mediaInputEncoder.o `test -f 'mediaInputEncoder.cpp' || echo '$(srcdir)/'`mediaInputEncoder.cpp - -oggTranscode-mediaInputEncoder.obj: mediaInputEncoder.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -MT oggTranscode-mediaInputEncoder.obj -MD -MP -MF $(DEPDIR)/oggTranscode-mediaInputEncoder.Tpo -c -o oggTranscode-mediaInputEncoder.obj `if test -f 'mediaInputEncoder.cpp'; then $(CYGPATH_W) 'mediaInputEncoder.cpp'; else $(CYGPATH_W) '$(srcdir)/mediaInputEncoder.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggTranscode-mediaInputEncoder.Tpo $(DEPDIR)/oggTranscode-mediaInputEncoder.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='mediaInputEncoder.cpp' object='oggTranscode-mediaInputEncoder.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -c -o oggTranscode-mediaInputEncoder.obj `if test -f 'mediaInputEncoder.cpp'; then $(CYGPATH_W) 'mediaInputEncoder.cpp'; else $(CYGPATH_W) '$(srcdir)/mediaInputEncoder.cpp'; fi` - -oggTranscode-streamSerializer.o: streamSerializer.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -MT oggTranscode-streamSerializer.o -MD -MP -MF $(DEPDIR)/oggTranscode-streamSerializer.Tpo -c -o oggTranscode-streamSerializer.o `test -f 'streamSerializer.cpp' || echo '$(srcdir)/'`streamSerializer.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggTranscode-streamSerializer.Tpo $(DEPDIR)/oggTranscode-streamSerializer.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='streamSerializer.cpp' object='oggTranscode-streamSerializer.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -c -o oggTranscode-streamSerializer.o `test -f 'streamSerializer.cpp' || echo '$(srcdir)/'`streamSerializer.cpp - -oggTranscode-streamSerializer.obj: streamSerializer.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -MT oggTranscode-streamSerializer.obj -MD -MP -MF $(DEPDIR)/oggTranscode-streamSerializer.Tpo -c -o oggTranscode-streamSerializer.obj `if test -f 'streamSerializer.cpp'; then $(CYGPATH_W) 'streamSerializer.cpp'; else $(CYGPATH_W) '$(srcdir)/streamSerializer.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggTranscode-streamSerializer.Tpo $(DEPDIR)/oggTranscode-streamSerializer.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='streamSerializer.cpp' object='oggTranscode-streamSerializer.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -c -o oggTranscode-streamSerializer.obj `if test -f 'streamSerializer.cpp'; then $(CYGPATH_W) 'streamSerializer.cpp'; else $(CYGPATH_W) '$(srcdir)/streamSerializer.cpp'; fi` - -oggTranscode-oggBOSExtractorFactory.o: oggBOSExtractorFactory.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -MT oggTranscode-oggBOSExtractorFactory.o -MD -MP -MF $(DEPDIR)/oggTranscode-oggBOSExtractorFactory.Tpo -c -o oggTranscode-oggBOSExtractorFactory.o `test -f 'oggBOSExtractorFactory.cpp' || echo '$(srcdir)/'`oggBOSExtractorFactory.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggTranscode-oggBOSExtractorFactory.Tpo $(DEPDIR)/oggTranscode-oggBOSExtractorFactory.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='oggBOSExtractorFactory.cpp' object='oggTranscode-oggBOSExtractorFactory.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -c -o oggTranscode-oggBOSExtractorFactory.o `test -f 'oggBOSExtractorFactory.cpp' || echo '$(srcdir)/'`oggBOSExtractorFactory.cpp - -oggTranscode-oggBOSExtractorFactory.obj: oggBOSExtractorFactory.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -MT oggTranscode-oggBOSExtractorFactory.obj -MD -MP -MF $(DEPDIR)/oggTranscode-oggBOSExtractorFactory.Tpo -c -o oggTranscode-oggBOSExtractorFactory.obj `if test -f 'oggBOSExtractorFactory.cpp'; then $(CYGPATH_W) 'oggBOSExtractorFactory.cpp'; else $(CYGPATH_W) '$(srcdir)/oggBOSExtractorFactory.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggTranscode-oggBOSExtractorFactory.Tpo $(DEPDIR)/oggTranscode-oggBOSExtractorFactory.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='oggBOSExtractorFactory.cpp' object='oggTranscode-oggBOSExtractorFactory.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -c -o oggTranscode-oggBOSExtractorFactory.obj `if test -f 'oggBOSExtractorFactory.cpp'; then $(CYGPATH_W) 'oggBOSExtractorFactory.cpp'; else $(CYGPATH_W) '$(srcdir)/oggBOSExtractorFactory.cpp'; fi` - -oggTranscode-oggStreamEncoder.o: oggStreamEncoder.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -MT oggTranscode-oggStreamEncoder.o -MD -MP -MF $(DEPDIR)/oggTranscode-oggStreamEncoder.Tpo -c -o oggTranscode-oggStreamEncoder.o `test -f 'oggStreamEncoder.cpp' || echo '$(srcdir)/'`oggStreamEncoder.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggTranscode-oggStreamEncoder.Tpo $(DEPDIR)/oggTranscode-oggStreamEncoder.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='oggStreamEncoder.cpp' object='oggTranscode-oggStreamEncoder.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -c -o oggTranscode-oggStreamEncoder.o `test -f 'oggStreamEncoder.cpp' || echo '$(srcdir)/'`oggStreamEncoder.cpp - -oggTranscode-oggStreamEncoder.obj: oggStreamEncoder.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -MT oggTranscode-oggStreamEncoder.obj -MD -MP -MF $(DEPDIR)/oggTranscode-oggStreamEncoder.Tpo -c -o oggTranscode-oggStreamEncoder.obj `if test -f 'oggStreamEncoder.cpp'; then $(CYGPATH_W) 'oggStreamEncoder.cpp'; else $(CYGPATH_W) '$(srcdir)/oggStreamEncoder.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggTranscode-oggStreamEncoder.Tpo $(DEPDIR)/oggTranscode-oggStreamEncoder.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='oggStreamEncoder.cpp' object='oggTranscode-oggStreamEncoder.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -c -o oggTranscode-oggStreamEncoder.obj `if test -f 'oggStreamEncoder.cpp'; then $(CYGPATH_W) 'oggStreamEncoder.cpp'; else $(CYGPATH_W) '$(srcdir)/oggStreamEncoder.cpp'; fi` - -oggTranscode-oggEncoder.o: oggEncoder.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -MT oggTranscode-oggEncoder.o -MD -MP -MF $(DEPDIR)/oggTranscode-oggEncoder.Tpo -c -o oggTranscode-oggEncoder.o `test -f 'oggEncoder.cpp' || echo '$(srcdir)/'`oggEncoder.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggTranscode-oggEncoder.Tpo $(DEPDIR)/oggTranscode-oggEncoder.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='oggEncoder.cpp' object='oggTranscode-oggEncoder.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -c -o oggTranscode-oggEncoder.o `test -f 'oggEncoder.cpp' || echo '$(srcdir)/'`oggEncoder.cpp - -oggTranscode-oggEncoder.obj: oggEncoder.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -MT oggTranscode-oggEncoder.obj -MD -MP -MF $(DEPDIR)/oggTranscode-oggEncoder.Tpo -c -o oggTranscode-oggEncoder.obj `if test -f 'oggEncoder.cpp'; then $(CYGPATH_W) 'oggEncoder.cpp'; else $(CYGPATH_W) '$(srcdir)/oggEncoder.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggTranscode-oggEncoder.Tpo $(DEPDIR)/oggTranscode-oggEncoder.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='oggEncoder.cpp' object='oggTranscode-oggEncoder.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -c -o oggTranscode-oggEncoder.obj `if test -f 'oggEncoder.cpp'; then $(CYGPATH_W) 'oggEncoder.cpp'; else $(CYGPATH_W) '$(srcdir)/oggEncoder.cpp'; fi` - -oggTranscode-streamExtractor.o: streamExtractor.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -MT oggTranscode-streamExtractor.o -MD -MP -MF $(DEPDIR)/oggTranscode-streamExtractor.Tpo -c -o oggTranscode-streamExtractor.o `test -f 'streamExtractor.cpp' || echo '$(srcdir)/'`streamExtractor.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggTranscode-streamExtractor.Tpo $(DEPDIR)/oggTranscode-streamExtractor.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='streamExtractor.cpp' object='oggTranscode-streamExtractor.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -c -o oggTranscode-streamExtractor.o `test -f 'streamExtractor.cpp' || echo '$(srcdir)/'`streamExtractor.cpp - -oggTranscode-streamExtractor.obj: streamExtractor.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -MT oggTranscode-streamExtractor.obj -MD -MP -MF $(DEPDIR)/oggTranscode-streamExtractor.Tpo -c -o oggTranscode-streamExtractor.obj `if test -f 'streamExtractor.cpp'; then $(CYGPATH_W) 'streamExtractor.cpp'; else $(CYGPATH_W) '$(srcdir)/streamExtractor.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggTranscode-streamExtractor.Tpo $(DEPDIR)/oggTranscode-streamExtractor.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='streamExtractor.cpp' object='oggTranscode-streamExtractor.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -c -o oggTranscode-streamExtractor.obj `if test -f 'streamExtractor.cpp'; then $(CYGPATH_W) 'streamExtractor.cpp'; else $(CYGPATH_W) '$(srcdir)/streamExtractor.cpp'; fi` - -oggTranscode-streamParameter.o: streamParameter.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -MT oggTranscode-streamParameter.o -MD -MP -MF $(DEPDIR)/oggTranscode-streamParameter.Tpo -c -o oggTranscode-streamParameter.o `test -f 'streamParameter.cpp' || echo '$(srcdir)/'`streamParameter.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggTranscode-streamParameter.Tpo $(DEPDIR)/oggTranscode-streamParameter.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='streamParameter.cpp' object='oggTranscode-streamParameter.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -c -o oggTranscode-streamParameter.o `test -f 'streamParameter.cpp' || echo '$(srcdir)/'`streamParameter.cpp - -oggTranscode-streamParameter.obj: streamParameter.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -MT oggTranscode-streamParameter.obj -MD -MP -MF $(DEPDIR)/oggTranscode-streamParameter.Tpo -c -o oggTranscode-streamParameter.obj `if test -f 'streamParameter.cpp'; then $(CYGPATH_W) 'streamParameter.cpp'; else $(CYGPATH_W) '$(srcdir)/streamParameter.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggTranscode-streamParameter.Tpo $(DEPDIR)/oggTranscode-streamParameter.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='streamParameter.cpp' object='oggTranscode-streamParameter.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -c -o oggTranscode-streamParameter.obj `if test -f 'streamParameter.cpp'; then $(CYGPATH_W) 'streamParameter.cpp'; else $(CYGPATH_W) '$(srcdir)/streamParameter.cpp'; fi` - -oggTranscode-streamMux.o: streamMux.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -MT oggTranscode-streamMux.o -MD -MP -MF $(DEPDIR)/oggTranscode-streamMux.Tpo -c -o oggTranscode-streamMux.o `test -f 'streamMux.cpp' || echo '$(srcdir)/'`streamMux.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggTranscode-streamMux.Tpo $(DEPDIR)/oggTranscode-streamMux.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='streamMux.cpp' object='oggTranscode-streamMux.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -c -o oggTranscode-streamMux.o `test -f 'streamMux.cpp' || echo '$(srcdir)/'`streamMux.cpp - -oggTranscode-streamMux.obj: streamMux.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -MT oggTranscode-streamMux.obj -MD -MP -MF $(DEPDIR)/oggTranscode-streamMux.Tpo -c -o oggTranscode-streamMux.obj `if test -f 'streamMux.cpp'; then $(CYGPATH_W) 'streamMux.cpp'; else $(CYGPATH_W) '$(srcdir)/streamMux.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggTranscode-streamMux.Tpo $(DEPDIR)/oggTranscode-streamMux.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='streamMux.cpp' object='oggTranscode-streamMux.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -c -o oggTranscode-streamMux.obj `if test -f 'streamMux.cpp'; then $(CYGPATH_W) 'streamMux.cpp'; else $(CYGPATH_W) '$(srcdir)/streamMux.cpp'; fi` - -oggTranscode-bufferRepository.o: bufferRepository.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -MT oggTranscode-bufferRepository.o -MD -MP -MF $(DEPDIR)/oggTranscode-bufferRepository.Tpo -c -o oggTranscode-bufferRepository.o `test -f 'bufferRepository.cpp' || echo '$(srcdir)/'`bufferRepository.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggTranscode-bufferRepository.Tpo $(DEPDIR)/oggTranscode-bufferRepository.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='bufferRepository.cpp' object='oggTranscode-bufferRepository.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -c -o oggTranscode-bufferRepository.o `test -f 'bufferRepository.cpp' || echo '$(srcdir)/'`bufferRepository.cpp - -oggTranscode-bufferRepository.obj: bufferRepository.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -MT oggTranscode-bufferRepository.obj -MD -MP -MF $(DEPDIR)/oggTranscode-bufferRepository.Tpo -c -o oggTranscode-bufferRepository.obj `if test -f 'bufferRepository.cpp'; then $(CYGPATH_W) 'bufferRepository.cpp'; else $(CYGPATH_W) '$(srcdir)/bufferRepository.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggTranscode-bufferRepository.Tpo $(DEPDIR)/oggTranscode-bufferRepository.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='bufferRepository.cpp' object='oggTranscode-bufferRepository.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -c -o oggTranscode-bufferRepository.obj `if test -f 'bufferRepository.cpp'; then $(CYGPATH_W) 'bufferRepository.cpp'; else $(CYGPATH_W) '$(srcdir)/bufferRepository.cpp'; fi` - -oggTranscode-oggComment.o: oggComment.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -MT oggTranscode-oggComment.o -MD -MP -MF $(DEPDIR)/oggTranscode-oggComment.Tpo -c -o oggTranscode-oggComment.o `test -f 'oggComment.cpp' || echo '$(srcdir)/'`oggComment.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggTranscode-oggComment.Tpo $(DEPDIR)/oggTranscode-oggComment.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='oggComment.cpp' object='oggTranscode-oggComment.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -c -o oggTranscode-oggComment.o `test -f 'oggComment.cpp' || echo '$(srcdir)/'`oggComment.cpp - -oggTranscode-oggComment.obj: oggComment.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -MT oggTranscode-oggComment.obj -MD -MP -MF $(DEPDIR)/oggTranscode-oggComment.Tpo -c -o oggTranscode-oggComment.obj `if test -f 'oggComment.cpp'; then $(CYGPATH_W) 'oggComment.cpp'; else $(CYGPATH_W) '$(srcdir)/oggComment.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggTranscode-oggComment.Tpo $(DEPDIR)/oggTranscode-oggComment.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='oggComment.cpp' object='oggTranscode-oggComment.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -c -o oggTranscode-oggComment.obj `if test -f 'oggComment.cpp'; then $(CYGPATH_W) 'oggComment.cpp'; else $(CYGPATH_W) '$(srcdir)/oggComment.cpp'; fi` - -oggTranscode-theoraPosInterpreter.o: theoraPosInterpreter.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -MT oggTranscode-theoraPosInterpreter.o -MD -MP -MF $(DEPDIR)/oggTranscode-theoraPosInterpreter.Tpo -c -o oggTranscode-theoraPosInterpreter.o `test -f 'theoraPosInterpreter.cpp' || echo '$(srcdir)/'`theoraPosInterpreter.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggTranscode-theoraPosInterpreter.Tpo $(DEPDIR)/oggTranscode-theoraPosInterpreter.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='theoraPosInterpreter.cpp' object='oggTranscode-theoraPosInterpreter.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -c -o oggTranscode-theoraPosInterpreter.o `test -f 'theoraPosInterpreter.cpp' || echo '$(srcdir)/'`theoraPosInterpreter.cpp - -oggTranscode-theoraPosInterpreter.obj: theoraPosInterpreter.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -MT oggTranscode-theoraPosInterpreter.obj -MD -MP -MF $(DEPDIR)/oggTranscode-theoraPosInterpreter.Tpo -c -o oggTranscode-theoraPosInterpreter.obj `if test -f 'theoraPosInterpreter.cpp'; then $(CYGPATH_W) 'theoraPosInterpreter.cpp'; else $(CYGPATH_W) '$(srcdir)/theoraPosInterpreter.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggTranscode-theoraPosInterpreter.Tpo $(DEPDIR)/oggTranscode-theoraPosInterpreter.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='theoraPosInterpreter.cpp' object='oggTranscode-theoraPosInterpreter.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -c -o oggTranscode-theoraPosInterpreter.obj `if test -f 'theoraPosInterpreter.cpp'; then $(CYGPATH_W) 'theoraPosInterpreter.cpp'; else $(CYGPATH_W) '$(srcdir)/theoraPosInterpreter.cpp'; fi` - -oggTranscode-theoraStreamParameter.o: theoraStreamParameter.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -MT oggTranscode-theoraStreamParameter.o -MD -MP -MF $(DEPDIR)/oggTranscode-theoraStreamParameter.Tpo -c -o oggTranscode-theoraStreamParameter.o `test -f 'theoraStreamParameter.cpp' || echo '$(srcdir)/'`theoraStreamParameter.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggTranscode-theoraStreamParameter.Tpo $(DEPDIR)/oggTranscode-theoraStreamParameter.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='theoraStreamParameter.cpp' object='oggTranscode-theoraStreamParameter.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -c -o oggTranscode-theoraStreamParameter.o `test -f 'theoraStreamParameter.cpp' || echo '$(srcdir)/'`theoraStreamParameter.cpp - -oggTranscode-theoraStreamParameter.obj: theoraStreamParameter.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -MT oggTranscode-theoraStreamParameter.obj -MD -MP -MF $(DEPDIR)/oggTranscode-theoraStreamParameter.Tpo -c -o oggTranscode-theoraStreamParameter.obj `if test -f 'theoraStreamParameter.cpp'; then $(CYGPATH_W) 'theoraStreamParameter.cpp'; else $(CYGPATH_W) '$(srcdir)/theoraStreamParameter.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggTranscode-theoraStreamParameter.Tpo $(DEPDIR)/oggTranscode-theoraStreamParameter.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='theoraStreamParameter.cpp' object='oggTranscode-theoraStreamParameter.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -c -o oggTranscode-theoraStreamParameter.obj `if test -f 'theoraStreamParameter.cpp'; then $(CYGPATH_W) 'theoraStreamParameter.cpp'; else $(CYGPATH_W) '$(srcdir)/theoraStreamParameter.cpp'; fi` - -oggTranscode-theoraExtractor.o: theoraExtractor.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -MT oggTranscode-theoraExtractor.o -MD -MP -MF $(DEPDIR)/oggTranscode-theoraExtractor.Tpo -c -o oggTranscode-theoraExtractor.o `test -f 'theoraExtractor.cpp' || echo '$(srcdir)/'`theoraExtractor.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggTranscode-theoraExtractor.Tpo $(DEPDIR)/oggTranscode-theoraExtractor.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='theoraExtractor.cpp' object='oggTranscode-theoraExtractor.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -c -o oggTranscode-theoraExtractor.o `test -f 'theoraExtractor.cpp' || echo '$(srcdir)/'`theoraExtractor.cpp - -oggTranscode-theoraExtractor.obj: theoraExtractor.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -MT oggTranscode-theoraExtractor.obj -MD -MP -MF $(DEPDIR)/oggTranscode-theoraExtractor.Tpo -c -o oggTranscode-theoraExtractor.obj `if test -f 'theoraExtractor.cpp'; then $(CYGPATH_W) 'theoraExtractor.cpp'; else $(CYGPATH_W) '$(srcdir)/theoraExtractor.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggTranscode-theoraExtractor.Tpo $(DEPDIR)/oggTranscode-theoraExtractor.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='theoraExtractor.cpp' object='oggTranscode-theoraExtractor.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -c -o oggTranscode-theoraExtractor.obj `if test -f 'theoraExtractor.cpp'; then $(CYGPATH_W) 'theoraExtractor.cpp'; else $(CYGPATH_W) '$(srcdir)/theoraExtractor.cpp'; fi` - -oggTranscode-vorbisPosInterpreter.o: vorbisPosInterpreter.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -MT oggTranscode-vorbisPosInterpreter.o -MD -MP -MF $(DEPDIR)/oggTranscode-vorbisPosInterpreter.Tpo -c -o oggTranscode-vorbisPosInterpreter.o `test -f 'vorbisPosInterpreter.cpp' || echo '$(srcdir)/'`vorbisPosInterpreter.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggTranscode-vorbisPosInterpreter.Tpo $(DEPDIR)/oggTranscode-vorbisPosInterpreter.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='vorbisPosInterpreter.cpp' object='oggTranscode-vorbisPosInterpreter.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -c -o oggTranscode-vorbisPosInterpreter.o `test -f 'vorbisPosInterpreter.cpp' || echo '$(srcdir)/'`vorbisPosInterpreter.cpp - -oggTranscode-vorbisPosInterpreter.obj: vorbisPosInterpreter.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -MT oggTranscode-vorbisPosInterpreter.obj -MD -MP -MF $(DEPDIR)/oggTranscode-vorbisPosInterpreter.Tpo -c -o oggTranscode-vorbisPosInterpreter.obj `if test -f 'vorbisPosInterpreter.cpp'; then $(CYGPATH_W) 'vorbisPosInterpreter.cpp'; else $(CYGPATH_W) '$(srcdir)/vorbisPosInterpreter.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggTranscode-vorbisPosInterpreter.Tpo $(DEPDIR)/oggTranscode-vorbisPosInterpreter.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='vorbisPosInterpreter.cpp' object='oggTranscode-vorbisPosInterpreter.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -c -o oggTranscode-vorbisPosInterpreter.obj `if test -f 'vorbisPosInterpreter.cpp'; then $(CYGPATH_W) 'vorbisPosInterpreter.cpp'; else $(CYGPATH_W) '$(srcdir)/vorbisPosInterpreter.cpp'; fi` - -oggTranscode-vorbisStreamParameter.o: vorbisStreamParameter.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -MT oggTranscode-vorbisStreamParameter.o -MD -MP -MF $(DEPDIR)/oggTranscode-vorbisStreamParameter.Tpo -c -o oggTranscode-vorbisStreamParameter.o `test -f 'vorbisStreamParameter.cpp' || echo '$(srcdir)/'`vorbisStreamParameter.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggTranscode-vorbisStreamParameter.Tpo $(DEPDIR)/oggTranscode-vorbisStreamParameter.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='vorbisStreamParameter.cpp' object='oggTranscode-vorbisStreamParameter.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -c -o oggTranscode-vorbisStreamParameter.o `test -f 'vorbisStreamParameter.cpp' || echo '$(srcdir)/'`vorbisStreamParameter.cpp - -oggTranscode-vorbisStreamParameter.obj: vorbisStreamParameter.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -MT oggTranscode-vorbisStreamParameter.obj -MD -MP -MF $(DEPDIR)/oggTranscode-vorbisStreamParameter.Tpo -c -o oggTranscode-vorbisStreamParameter.obj `if test -f 'vorbisStreamParameter.cpp'; then $(CYGPATH_W) 'vorbisStreamParameter.cpp'; else $(CYGPATH_W) '$(srcdir)/vorbisStreamParameter.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggTranscode-vorbisStreamParameter.Tpo $(DEPDIR)/oggTranscode-vorbisStreamParameter.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='vorbisStreamParameter.cpp' object='oggTranscode-vorbisStreamParameter.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -c -o oggTranscode-vorbisStreamParameter.obj `if test -f 'vorbisStreamParameter.cpp'; then $(CYGPATH_W) 'vorbisStreamParameter.cpp'; else $(CYGPATH_W) '$(srcdir)/vorbisStreamParameter.cpp'; fi` - -oggTranscode-vorbisExtractor.o: vorbisExtractor.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -MT oggTranscode-vorbisExtractor.o -MD -MP -MF $(DEPDIR)/oggTranscode-vorbisExtractor.Tpo -c -o oggTranscode-vorbisExtractor.o `test -f 'vorbisExtractor.cpp' || echo '$(srcdir)/'`vorbisExtractor.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggTranscode-vorbisExtractor.Tpo $(DEPDIR)/oggTranscode-vorbisExtractor.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='vorbisExtractor.cpp' object='oggTranscode-vorbisExtractor.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -c -o oggTranscode-vorbisExtractor.o `test -f 'vorbisExtractor.cpp' || echo '$(srcdir)/'`vorbisExtractor.cpp - -oggTranscode-vorbisExtractor.obj: vorbisExtractor.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -MT oggTranscode-vorbisExtractor.obj -MD -MP -MF $(DEPDIR)/oggTranscode-vorbisExtractor.Tpo -c -o oggTranscode-vorbisExtractor.obj `if test -f 'vorbisExtractor.cpp'; then $(CYGPATH_W) 'vorbisExtractor.cpp'; else $(CYGPATH_W) '$(srcdir)/vorbisExtractor.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggTranscode-vorbisExtractor.Tpo $(DEPDIR)/oggTranscode-vorbisExtractor.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='vorbisExtractor.cpp' object='oggTranscode-vorbisExtractor.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -c -o oggTranscode-vorbisExtractor.obj `if test -f 'vorbisExtractor.cpp'; then $(CYGPATH_W) 'vorbisExtractor.cpp'; else $(CYGPATH_W) '$(srcdir)/vorbisExtractor.cpp'; fi` - -oggTranscode-katePosInterpreter.o: katePosInterpreter.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -MT oggTranscode-katePosInterpreter.o -MD -MP -MF $(DEPDIR)/oggTranscode-katePosInterpreter.Tpo -c -o oggTranscode-katePosInterpreter.o `test -f 'katePosInterpreter.cpp' || echo '$(srcdir)/'`katePosInterpreter.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggTranscode-katePosInterpreter.Tpo $(DEPDIR)/oggTranscode-katePosInterpreter.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='katePosInterpreter.cpp' object='oggTranscode-katePosInterpreter.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -c -o oggTranscode-katePosInterpreter.o `test -f 'katePosInterpreter.cpp' || echo '$(srcdir)/'`katePosInterpreter.cpp - -oggTranscode-katePosInterpreter.obj: katePosInterpreter.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -MT oggTranscode-katePosInterpreter.obj -MD -MP -MF $(DEPDIR)/oggTranscode-katePosInterpreter.Tpo -c -o oggTranscode-katePosInterpreter.obj `if test -f 'katePosInterpreter.cpp'; then $(CYGPATH_W) 'katePosInterpreter.cpp'; else $(CYGPATH_W) '$(srcdir)/katePosInterpreter.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggTranscode-katePosInterpreter.Tpo $(DEPDIR)/oggTranscode-katePosInterpreter.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='katePosInterpreter.cpp' object='oggTranscode-katePosInterpreter.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -c -o oggTranscode-katePosInterpreter.obj `if test -f 'katePosInterpreter.cpp'; then $(CYGPATH_W) 'katePosInterpreter.cpp'; else $(CYGPATH_W) '$(srcdir)/katePosInterpreter.cpp'; fi` - -oggTranscode-kateStreamParameter.o: kateStreamParameter.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -MT oggTranscode-kateStreamParameter.o -MD -MP -MF $(DEPDIR)/oggTranscode-kateStreamParameter.Tpo -c -o oggTranscode-kateStreamParameter.o `test -f 'kateStreamParameter.cpp' || echo '$(srcdir)/'`kateStreamParameter.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggTranscode-kateStreamParameter.Tpo $(DEPDIR)/oggTranscode-kateStreamParameter.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='kateStreamParameter.cpp' object='oggTranscode-kateStreamParameter.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -c -o oggTranscode-kateStreamParameter.o `test -f 'kateStreamParameter.cpp' || echo '$(srcdir)/'`kateStreamParameter.cpp - -oggTranscode-kateStreamParameter.obj: kateStreamParameter.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -MT oggTranscode-kateStreamParameter.obj -MD -MP -MF $(DEPDIR)/oggTranscode-kateStreamParameter.Tpo -c -o oggTranscode-kateStreamParameter.obj `if test -f 'kateStreamParameter.cpp'; then $(CYGPATH_W) 'kateStreamParameter.cpp'; else $(CYGPATH_W) '$(srcdir)/kateStreamParameter.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggTranscode-kateStreamParameter.Tpo $(DEPDIR)/oggTranscode-kateStreamParameter.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='kateStreamParameter.cpp' object='oggTranscode-kateStreamParameter.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -c -o oggTranscode-kateStreamParameter.obj `if test -f 'kateStreamParameter.cpp'; then $(CYGPATH_W) 'kateStreamParameter.cpp'; else $(CYGPATH_W) '$(srcdir)/kateStreamParameter.cpp'; fi` - -oggTranscode-kateExtractor.o: kateExtractor.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -MT oggTranscode-kateExtractor.o -MD -MP -MF $(DEPDIR)/oggTranscode-kateExtractor.Tpo -c -o oggTranscode-kateExtractor.o `test -f 'kateExtractor.cpp' || echo '$(srcdir)/'`kateExtractor.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggTranscode-kateExtractor.Tpo $(DEPDIR)/oggTranscode-kateExtractor.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='kateExtractor.cpp' object='oggTranscode-kateExtractor.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -c -o oggTranscode-kateExtractor.o `test -f 'kateExtractor.cpp' || echo '$(srcdir)/'`kateExtractor.cpp - -oggTranscode-kateExtractor.obj: kateExtractor.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -MT oggTranscode-kateExtractor.obj -MD -MP -MF $(DEPDIR)/oggTranscode-kateExtractor.Tpo -c -o oggTranscode-kateExtractor.obj `if test -f 'kateExtractor.cpp'; then $(CYGPATH_W) 'kateExtractor.cpp'; else $(CYGPATH_W) '$(srcdir)/kateExtractor.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggTranscode-kateExtractor.Tpo $(DEPDIR)/oggTranscode-kateExtractor.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='kateExtractor.cpp' object='oggTranscode-kateExtractor.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -c -o oggTranscode-kateExtractor.obj `if test -f 'kateExtractor.cpp'; then $(CYGPATH_W) 'kateExtractor.cpp'; else $(CYGPATH_W) '$(srcdir)/kateExtractor.cpp'; fi` - -oggTranscode-theoraDecoder.o: theoraDecoder.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -MT oggTranscode-theoraDecoder.o -MD -MP -MF $(DEPDIR)/oggTranscode-theoraDecoder.Tpo -c -o oggTranscode-theoraDecoder.o `test -f 'theoraDecoder.cpp' || echo '$(srcdir)/'`theoraDecoder.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggTranscode-theoraDecoder.Tpo $(DEPDIR)/oggTranscode-theoraDecoder.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='theoraDecoder.cpp' object='oggTranscode-theoraDecoder.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -c -o oggTranscode-theoraDecoder.o `test -f 'theoraDecoder.cpp' || echo '$(srcdir)/'`theoraDecoder.cpp - -oggTranscode-theoraDecoder.obj: theoraDecoder.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -MT oggTranscode-theoraDecoder.obj -MD -MP -MF $(DEPDIR)/oggTranscode-theoraDecoder.Tpo -c -o oggTranscode-theoraDecoder.obj `if test -f 'theoraDecoder.cpp'; then $(CYGPATH_W) 'theoraDecoder.cpp'; else $(CYGPATH_W) '$(srcdir)/theoraDecoder.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggTranscode-theoraDecoder.Tpo $(DEPDIR)/oggTranscode-theoraDecoder.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='theoraDecoder.cpp' object='oggTranscode-theoraDecoder.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -c -o oggTranscode-theoraDecoder.obj `if test -f 'theoraDecoder.cpp'; then $(CYGPATH_W) 'theoraDecoder.cpp'; else $(CYGPATH_W) '$(srcdir)/theoraDecoder.cpp'; fi` - -oggTranscode-theoraEncoder.o: theoraEncoder.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -MT oggTranscode-theoraEncoder.o -MD -MP -MF $(DEPDIR)/oggTranscode-theoraEncoder.Tpo -c -o oggTranscode-theoraEncoder.o `test -f 'theoraEncoder.cpp' || echo '$(srcdir)/'`theoraEncoder.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggTranscode-theoraEncoder.Tpo $(DEPDIR)/oggTranscode-theoraEncoder.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='theoraEncoder.cpp' object='oggTranscode-theoraEncoder.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -c -o oggTranscode-theoraEncoder.o `test -f 'theoraEncoder.cpp' || echo '$(srcdir)/'`theoraEncoder.cpp - -oggTranscode-theoraEncoder.obj: theoraEncoder.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -MT oggTranscode-theoraEncoder.obj -MD -MP -MF $(DEPDIR)/oggTranscode-theoraEncoder.Tpo -c -o oggTranscode-theoraEncoder.obj `if test -f 'theoraEncoder.cpp'; then $(CYGPATH_W) 'theoraEncoder.cpp'; else $(CYGPATH_W) '$(srcdir)/theoraEncoder.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggTranscode-theoraEncoder.Tpo $(DEPDIR)/oggTranscode-theoraEncoder.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='theoraEncoder.cpp' object='oggTranscode-theoraEncoder.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -c -o oggTranscode-theoraEncoder.obj `if test -f 'theoraEncoder.cpp'; then $(CYGPATH_W) 'theoraEncoder.cpp'; else $(CYGPATH_W) '$(srcdir)/theoraEncoder.cpp'; fi` - -oggTranscode-vorbisDecoder.o: vorbisDecoder.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -MT oggTranscode-vorbisDecoder.o -MD -MP -MF $(DEPDIR)/oggTranscode-vorbisDecoder.Tpo -c -o oggTranscode-vorbisDecoder.o `test -f 'vorbisDecoder.cpp' || echo '$(srcdir)/'`vorbisDecoder.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggTranscode-vorbisDecoder.Tpo $(DEPDIR)/oggTranscode-vorbisDecoder.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='vorbisDecoder.cpp' object='oggTranscode-vorbisDecoder.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -c -o oggTranscode-vorbisDecoder.o `test -f 'vorbisDecoder.cpp' || echo '$(srcdir)/'`vorbisDecoder.cpp - -oggTranscode-vorbisDecoder.obj: vorbisDecoder.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -MT oggTranscode-vorbisDecoder.obj -MD -MP -MF $(DEPDIR)/oggTranscode-vorbisDecoder.Tpo -c -o oggTranscode-vorbisDecoder.obj `if test -f 'vorbisDecoder.cpp'; then $(CYGPATH_W) 'vorbisDecoder.cpp'; else $(CYGPATH_W) '$(srcdir)/vorbisDecoder.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggTranscode-vorbisDecoder.Tpo $(DEPDIR)/oggTranscode-vorbisDecoder.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='vorbisDecoder.cpp' object='oggTranscode-vorbisDecoder.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -c -o oggTranscode-vorbisDecoder.obj `if test -f 'vorbisDecoder.cpp'; then $(CYGPATH_W) 'vorbisDecoder.cpp'; else $(CYGPATH_W) '$(srcdir)/vorbisDecoder.cpp'; fi` - -oggTranscode-vorbisEncoder.o: vorbisEncoder.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -MT oggTranscode-vorbisEncoder.o -MD -MP -MF $(DEPDIR)/oggTranscode-vorbisEncoder.Tpo -c -o oggTranscode-vorbisEncoder.o `test -f 'vorbisEncoder.cpp' || echo '$(srcdir)/'`vorbisEncoder.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggTranscode-vorbisEncoder.Tpo $(DEPDIR)/oggTranscode-vorbisEncoder.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='vorbisEncoder.cpp' object='oggTranscode-vorbisEncoder.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -c -o oggTranscode-vorbisEncoder.o `test -f 'vorbisEncoder.cpp' || echo '$(srcdir)/'`vorbisEncoder.cpp - -oggTranscode-vorbisEncoder.obj: vorbisEncoder.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -MT oggTranscode-vorbisEncoder.obj -MD -MP -MF $(DEPDIR)/oggTranscode-vorbisEncoder.Tpo -c -o oggTranscode-vorbisEncoder.obj `if test -f 'vorbisEncoder.cpp'; then $(CYGPATH_W) 'vorbisEncoder.cpp'; else $(CYGPATH_W) '$(srcdir)/vorbisEncoder.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggTranscode-vorbisEncoder.Tpo $(DEPDIR)/oggTranscode-vorbisEncoder.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='vorbisEncoder.cpp' object='oggTranscode-vorbisEncoder.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -c -o oggTranscode-vorbisEncoder.obj `if test -f 'vorbisEncoder.cpp'; then $(CYGPATH_W) 'vorbisEncoder.cpp'; else $(CYGPATH_W) '$(srcdir)/vorbisEncoder.cpp'; fi` - -oggTranscode-audioPacket.o: audioPacket.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -MT oggTranscode-audioPacket.o -MD -MP -MF $(DEPDIR)/oggTranscode-audioPacket.Tpo -c -o oggTranscode-audioPacket.o `test -f 'audioPacket.cpp' || echo '$(srcdir)/'`audioPacket.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggTranscode-audioPacket.Tpo $(DEPDIR)/oggTranscode-audioPacket.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='audioPacket.cpp' object='oggTranscode-audioPacket.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -c -o oggTranscode-audioPacket.o `test -f 'audioPacket.cpp' || echo '$(srcdir)/'`audioPacket.cpp - -oggTranscode-audioPacket.obj: audioPacket.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -MT oggTranscode-audioPacket.obj -MD -MP -MF $(DEPDIR)/oggTranscode-audioPacket.Tpo -c -o oggTranscode-audioPacket.obj `if test -f 'audioPacket.cpp'; then $(CYGPATH_W) 'audioPacket.cpp'; else $(CYGPATH_W) '$(srcdir)/audioPacket.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggTranscode-audioPacket.Tpo $(DEPDIR)/oggTranscode-audioPacket.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='audioPacket.cpp' object='oggTranscode-audioPacket.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -c -o oggTranscode-audioPacket.obj `if test -f 'audioPacket.cpp'; then $(CYGPATH_W) 'audioPacket.cpp'; else $(CYGPATH_W) '$(srcdir)/audioPacket.cpp'; fi` - -oggTranscode-audioConverter.o: audioConverter.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -MT oggTranscode-audioConverter.o -MD -MP -MF $(DEPDIR)/oggTranscode-audioConverter.Tpo -c -o oggTranscode-audioConverter.o `test -f 'audioConverter.cpp' || echo '$(srcdir)/'`audioConverter.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggTranscode-audioConverter.Tpo $(DEPDIR)/oggTranscode-audioConverter.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='audioConverter.cpp' object='oggTranscode-audioConverter.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -c -o oggTranscode-audioConverter.o `test -f 'audioConverter.cpp' || echo '$(srcdir)/'`audioConverter.cpp - -oggTranscode-audioConverter.obj: audioConverter.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -MT oggTranscode-audioConverter.obj -MD -MP -MF $(DEPDIR)/oggTranscode-audioConverter.Tpo -c -o oggTranscode-audioConverter.obj `if test -f 'audioConverter.cpp'; then $(CYGPATH_W) 'audioConverter.cpp'; else $(CYGPATH_W) '$(srcdir)/audioConverter.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggTranscode-audioConverter.Tpo $(DEPDIR)/oggTranscode-audioConverter.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='audioConverter.cpp' object='oggTranscode-audioConverter.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -c -o oggTranscode-audioConverter.obj `if test -f 'audioConverter.cpp'; then $(CYGPATH_W) 'audioConverter.cpp'; else $(CYGPATH_W) '$(srcdir)/audioConverter.cpp'; fi` - -oggTranscode-cmdlineextractor.o: cmdlineextractor.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -MT oggTranscode-cmdlineextractor.o -MD -MP -MF $(DEPDIR)/oggTranscode-cmdlineextractor.Tpo -c -o oggTranscode-cmdlineextractor.o `test -f 'cmdlineextractor.cpp' || echo '$(srcdir)/'`cmdlineextractor.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggTranscode-cmdlineextractor.Tpo $(DEPDIR)/oggTranscode-cmdlineextractor.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='cmdlineextractor.cpp' object='oggTranscode-cmdlineextractor.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -c -o oggTranscode-cmdlineextractor.o `test -f 'cmdlineextractor.cpp' || echo '$(srcdir)/'`cmdlineextractor.cpp - -oggTranscode-cmdlineextractor.obj: cmdlineextractor.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -MT oggTranscode-cmdlineextractor.obj -MD -MP -MF $(DEPDIR)/oggTranscode-cmdlineextractor.Tpo -c -o oggTranscode-cmdlineextractor.obj `if test -f 'cmdlineextractor.cpp'; then $(CYGPATH_W) 'cmdlineextractor.cpp'; else $(CYGPATH_W) '$(srcdir)/cmdlineextractor.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggTranscode-cmdlineextractor.Tpo $(DEPDIR)/oggTranscode-cmdlineextractor.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='cmdlineextractor.cpp' object='oggTranscode-cmdlineextractor.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -c -o oggTranscode-cmdlineextractor.obj `if test -f 'cmdlineextractor.cpp'; then $(CYGPATH_W) 'cmdlineextractor.cpp'; else $(CYGPATH_W) '$(srcdir)/cmdlineextractor.cpp'; fi` - -oggTranscode-basePlane.o: basePlane.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -MT oggTranscode-basePlane.o -MD -MP -MF $(DEPDIR)/oggTranscode-basePlane.Tpo -c -o oggTranscode-basePlane.o `test -f 'basePlane.cpp' || echo '$(srcdir)/'`basePlane.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggTranscode-basePlane.Tpo $(DEPDIR)/oggTranscode-basePlane.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='basePlane.cpp' object='oggTranscode-basePlane.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -c -o oggTranscode-basePlane.o `test -f 'basePlane.cpp' || echo '$(srcdir)/'`basePlane.cpp - -oggTranscode-basePlane.obj: basePlane.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -MT oggTranscode-basePlane.obj -MD -MP -MF $(DEPDIR)/oggTranscode-basePlane.Tpo -c -o oggTranscode-basePlane.obj `if test -f 'basePlane.cpp'; then $(CYGPATH_W) 'basePlane.cpp'; else $(CYGPATH_W) '$(srcdir)/basePlane.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggTranscode-basePlane.Tpo $(DEPDIR)/oggTranscode-basePlane.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='basePlane.cpp' object='oggTranscode-basePlane.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -c -o oggTranscode-basePlane.obj `if test -f 'basePlane.cpp'; then $(CYGPATH_W) 'basePlane.cpp'; else $(CYGPATH_W) '$(srcdir)/basePlane.cpp'; fi` - -oggTranscode-rgbPlane.o: rgbPlane.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -MT oggTranscode-rgbPlane.o -MD -MP -MF $(DEPDIR)/oggTranscode-rgbPlane.Tpo -c -o oggTranscode-rgbPlane.o `test -f 'rgbPlane.cpp' || echo '$(srcdir)/'`rgbPlane.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggTranscode-rgbPlane.Tpo $(DEPDIR)/oggTranscode-rgbPlane.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='rgbPlane.cpp' object='oggTranscode-rgbPlane.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -c -o oggTranscode-rgbPlane.o `test -f 'rgbPlane.cpp' || echo '$(srcdir)/'`rgbPlane.cpp - -oggTranscode-rgbPlane.obj: rgbPlane.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -MT oggTranscode-rgbPlane.obj -MD -MP -MF $(DEPDIR)/oggTranscode-rgbPlane.Tpo -c -o oggTranscode-rgbPlane.obj `if test -f 'rgbPlane.cpp'; then $(CYGPATH_W) 'rgbPlane.cpp'; else $(CYGPATH_W) '$(srcdir)/rgbPlane.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggTranscode-rgbPlane.Tpo $(DEPDIR)/oggTranscode-rgbPlane.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='rgbPlane.cpp' object='oggTranscode-rgbPlane.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -c -o oggTranscode-rgbPlane.obj `if test -f 'rgbPlane.cpp'; then $(CYGPATH_W) 'rgbPlane.cpp'; else $(CYGPATH_W) '$(srcdir)/rgbPlane.cpp'; fi` - -oggTranscode-blendElement.o: blendElement.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -MT oggTranscode-blendElement.o -MD -MP -MF $(DEPDIR)/oggTranscode-blendElement.Tpo -c -o oggTranscode-blendElement.o `test -f 'blendElement.cpp' || echo '$(srcdir)/'`blendElement.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggTranscode-blendElement.Tpo $(DEPDIR)/oggTranscode-blendElement.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='blendElement.cpp' object='oggTranscode-blendElement.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -c -o oggTranscode-blendElement.o `test -f 'blendElement.cpp' || echo '$(srcdir)/'`blendElement.cpp - -oggTranscode-blendElement.obj: blendElement.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -MT oggTranscode-blendElement.obj -MD -MP -MF $(DEPDIR)/oggTranscode-blendElement.Tpo -c -o oggTranscode-blendElement.obj `if test -f 'blendElement.cpp'; then $(CYGPATH_W) 'blendElement.cpp'; else $(CYGPATH_W) '$(srcdir)/blendElement.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggTranscode-blendElement.Tpo $(DEPDIR)/oggTranscode-blendElement.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='blendElement.cpp' object='oggTranscode-blendElement.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -c -o oggTranscode-blendElement.obj `if test -f 'blendElement.cpp'; then $(CYGPATH_W) 'blendElement.cpp'; else $(CYGPATH_W) '$(srcdir)/blendElement.cpp'; fi` - -oggTranscode-effector.o: effector.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -MT oggTranscode-effector.o -MD -MP -MF $(DEPDIR)/oggTranscode-effector.Tpo -c -o oggTranscode-effector.o `test -f 'effector.cpp' || echo '$(srcdir)/'`effector.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggTranscode-effector.Tpo $(DEPDIR)/oggTranscode-effector.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='effector.cpp' object='oggTranscode-effector.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -c -o oggTranscode-effector.o `test -f 'effector.cpp' || echo '$(srcdir)/'`effector.cpp - -oggTranscode-effector.obj: effector.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -MT oggTranscode-effector.obj -MD -MP -MF $(DEPDIR)/oggTranscode-effector.Tpo -c -o oggTranscode-effector.obj `if test -f 'effector.cpp'; then $(CYGPATH_W) 'effector.cpp'; else $(CYGPATH_W) '$(srcdir)/effector.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggTranscode-effector.Tpo $(DEPDIR)/oggTranscode-effector.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='effector.cpp' object='oggTranscode-effector.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -c -o oggTranscode-effector.obj `if test -f 'effector.cpp'; then $(CYGPATH_W) 'effector.cpp'; else $(CYGPATH_W) '$(srcdir)/effector.cpp'; fi` - -oggTranscode-crossfader.o: crossfader.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -MT oggTranscode-crossfader.o -MD -MP -MF $(DEPDIR)/oggTranscode-crossfader.Tpo -c -o oggTranscode-crossfader.o `test -f 'crossfader.cpp' || echo '$(srcdir)/'`crossfader.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggTranscode-crossfader.Tpo $(DEPDIR)/oggTranscode-crossfader.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='crossfader.cpp' object='oggTranscode-crossfader.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -c -o oggTranscode-crossfader.o `test -f 'crossfader.cpp' || echo '$(srcdir)/'`crossfader.cpp - -oggTranscode-crossfader.obj: crossfader.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -MT oggTranscode-crossfader.obj -MD -MP -MF $(DEPDIR)/oggTranscode-crossfader.Tpo -c -o oggTranscode-crossfader.obj `if test -f 'crossfader.cpp'; then $(CYGPATH_W) 'crossfader.cpp'; else $(CYGPATH_W) '$(srcdir)/crossfader.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggTranscode-crossfader.Tpo $(DEPDIR)/oggTranscode-crossfader.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='crossfader.cpp' object='oggTranscode-crossfader.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -c -o oggTranscode-crossfader.obj `if test -f 'crossfader.cpp'; then $(CYGPATH_W) 'crossfader.cpp'; else $(CYGPATH_W) '$(srcdir)/crossfader.cpp'; fi` - -oggTranscode-plainPicture.o: plainPicture.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -MT oggTranscode-plainPicture.o -MD -MP -MF $(DEPDIR)/oggTranscode-plainPicture.Tpo -c -o oggTranscode-plainPicture.o `test -f 'plainPicture.cpp' || echo '$(srcdir)/'`plainPicture.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggTranscode-plainPicture.Tpo $(DEPDIR)/oggTranscode-plainPicture.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='plainPicture.cpp' object='oggTranscode-plainPicture.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -c -o oggTranscode-plainPicture.o `test -f 'plainPicture.cpp' || echo '$(srcdir)/'`plainPicture.cpp - -oggTranscode-plainPicture.obj: plainPicture.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -MT oggTranscode-plainPicture.obj -MD -MP -MF $(DEPDIR)/oggTranscode-plainPicture.Tpo -c -o oggTranscode-plainPicture.obj `if test -f 'plainPicture.cpp'; then $(CYGPATH_W) 'plainPicture.cpp'; else $(CYGPATH_W) '$(srcdir)/plainPicture.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggTranscode-plainPicture.Tpo $(DEPDIR)/oggTranscode-plainPicture.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='plainPicture.cpp' object='oggTranscode-plainPicture.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -c -o oggTranscode-plainPicture.obj `if test -f 'plainPicture.cpp'; then $(CYGPATH_W) 'plainPicture.cpp'; else $(CYGPATH_W) '$(srcdir)/plainPicture.cpp'; fi` - -oggTranscode-lowpassEffect.o: lowpassEffect.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -MT oggTranscode-lowpassEffect.o -MD -MP -MF $(DEPDIR)/oggTranscode-lowpassEffect.Tpo -c -o oggTranscode-lowpassEffect.o `test -f 'lowpassEffect.cpp' || echo '$(srcdir)/'`lowpassEffect.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggTranscode-lowpassEffect.Tpo $(DEPDIR)/oggTranscode-lowpassEffect.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='lowpassEffect.cpp' object='oggTranscode-lowpassEffect.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -c -o oggTranscode-lowpassEffect.o `test -f 'lowpassEffect.cpp' || echo '$(srcdir)/'`lowpassEffect.cpp - -oggTranscode-lowpassEffect.obj: lowpassEffect.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -MT oggTranscode-lowpassEffect.obj -MD -MP -MF $(DEPDIR)/oggTranscode-lowpassEffect.Tpo -c -o oggTranscode-lowpassEffect.obj `if test -f 'lowpassEffect.cpp'; then $(CYGPATH_W) 'lowpassEffect.cpp'; else $(CYGPATH_W) '$(srcdir)/lowpassEffect.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggTranscode-lowpassEffect.Tpo $(DEPDIR)/oggTranscode-lowpassEffect.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='lowpassEffect.cpp' object='oggTranscode-lowpassEffect.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -c -o oggTranscode-lowpassEffect.obj `if test -f 'lowpassEffect.cpp'; then $(CYGPATH_W) 'lowpassEffect.cpp'; else $(CYGPATH_W) '$(srcdir)/lowpassEffect.cpp'; fi` - -oggTranscode-kenburnseffect.o: kenburnseffect.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -MT oggTranscode-kenburnseffect.o -MD -MP -MF $(DEPDIR)/oggTranscode-kenburnseffect.Tpo -c -o oggTranscode-kenburnseffect.o `test -f 'kenburnseffect.cpp' || echo '$(srcdir)/'`kenburnseffect.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggTranscode-kenburnseffect.Tpo $(DEPDIR)/oggTranscode-kenburnseffect.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='kenburnseffect.cpp' object='oggTranscode-kenburnseffect.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -c -o oggTranscode-kenburnseffect.o `test -f 'kenburnseffect.cpp' || echo '$(srcdir)/'`kenburnseffect.cpp - -oggTranscode-kenburnseffect.obj: kenburnseffect.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -MT oggTranscode-kenburnseffect.obj -MD -MP -MF $(DEPDIR)/oggTranscode-kenburnseffect.Tpo -c -o oggTranscode-kenburnseffect.obj `if test -f 'kenburnseffect.cpp'; then $(CYGPATH_W) 'kenburnseffect.cpp'; else $(CYGPATH_W) '$(srcdir)/kenburnseffect.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggTranscode-kenburnseffect.Tpo $(DEPDIR)/oggTranscode-kenburnseffect.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='kenburnseffect.cpp' object='oggTranscode-kenburnseffect.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -c -o oggTranscode-kenburnseffect.obj `if test -f 'kenburnseffect.cpp'; then $(CYGPATH_W) 'kenburnseffect.cpp'; else $(CYGPATH_W) '$(srcdir)/kenburnseffect.cpp'; fi` - -oggTranscode-pictureResize.o: pictureResize.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -MT oggTranscode-pictureResize.o -MD -MP -MF $(DEPDIR)/oggTranscode-pictureResize.Tpo -c -o oggTranscode-pictureResize.o `test -f 'pictureResize.cpp' || echo '$(srcdir)/'`pictureResize.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggTranscode-pictureResize.Tpo $(DEPDIR)/oggTranscode-pictureResize.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='pictureResize.cpp' object='oggTranscode-pictureResize.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -c -o oggTranscode-pictureResize.o `test -f 'pictureResize.cpp' || echo '$(srcdir)/'`pictureResize.cpp - -oggTranscode-pictureResize.obj: pictureResize.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -MT oggTranscode-pictureResize.obj -MD -MP -MF $(DEPDIR)/oggTranscode-pictureResize.Tpo -c -o oggTranscode-pictureResize.obj `if test -f 'pictureResize.cpp'; then $(CYGPATH_W) 'pictureResize.cpp'; else $(CYGPATH_W) '$(srcdir)/pictureResize.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggTranscode-pictureResize.Tpo $(DEPDIR)/oggTranscode-pictureResize.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='pictureResize.cpp' object='oggTranscode-pictureResize.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -c -o oggTranscode-pictureResize.obj `if test -f 'pictureResize.cpp'; then $(CYGPATH_W) 'pictureResize.cpp'; else $(CYGPATH_W) '$(srcdir)/pictureResize.cpp'; fi` - -oggTranscode-pictureBlend.o: pictureBlend.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -MT oggTranscode-pictureBlend.o -MD -MP -MF $(DEPDIR)/oggTranscode-pictureBlend.Tpo -c -o oggTranscode-pictureBlend.o `test -f 'pictureBlend.cpp' || echo '$(srcdir)/'`pictureBlend.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggTranscode-pictureBlend.Tpo $(DEPDIR)/oggTranscode-pictureBlend.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='pictureBlend.cpp' object='oggTranscode-pictureBlend.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -c -o oggTranscode-pictureBlend.o `test -f 'pictureBlend.cpp' || echo '$(srcdir)/'`pictureBlend.cpp - -oggTranscode-pictureBlend.obj: pictureBlend.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -MT oggTranscode-pictureBlend.obj -MD -MP -MF $(DEPDIR)/oggTranscode-pictureBlend.Tpo -c -o oggTranscode-pictureBlend.obj `if test -f 'pictureBlend.cpp'; then $(CYGPATH_W) 'pictureBlend.cpp'; else $(CYGPATH_W) '$(srcdir)/pictureBlend.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggTranscode-pictureBlend.Tpo $(DEPDIR)/oggTranscode-pictureBlend.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='pictureBlend.cpp' object='oggTranscode-pictureBlend.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -c -o oggTranscode-pictureBlend.obj `if test -f 'pictureBlend.cpp'; then $(CYGPATH_W) 'pictureBlend.cpp'; else $(CYGPATH_W) '$(srcdir)/pictureBlend.cpp'; fi` - -oggTranscode-pictureLoader.o: pictureLoader.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -MT oggTranscode-pictureLoader.o -MD -MP -MF $(DEPDIR)/oggTranscode-pictureLoader.Tpo -c -o oggTranscode-pictureLoader.o `test -f 'pictureLoader.cpp' || echo '$(srcdir)/'`pictureLoader.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggTranscode-pictureLoader.Tpo $(DEPDIR)/oggTranscode-pictureLoader.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='pictureLoader.cpp' object='oggTranscode-pictureLoader.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -c -o oggTranscode-pictureLoader.o `test -f 'pictureLoader.cpp' || echo '$(srcdir)/'`pictureLoader.cpp - -oggTranscode-pictureLoader.obj: pictureLoader.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -MT oggTranscode-pictureLoader.obj -MD -MP -MF $(DEPDIR)/oggTranscode-pictureLoader.Tpo -c -o oggTranscode-pictureLoader.obj `if test -f 'pictureLoader.cpp'; then $(CYGPATH_W) 'pictureLoader.cpp'; else $(CYGPATH_W) '$(srcdir)/pictureLoader.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggTranscode-pictureLoader.Tpo $(DEPDIR)/oggTranscode-pictureLoader.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='pictureLoader.cpp' object='oggTranscode-pictureLoader.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -c -o oggTranscode-pictureLoader.obj `if test -f 'pictureLoader.cpp'; then $(CYGPATH_W) 'pictureLoader.cpp'; else $(CYGPATH_W) '$(srcdir)/pictureLoader.cpp'; fi` - -oggTranscode-hookHandler.o: hookHandler.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -MT oggTranscode-hookHandler.o -MD -MP -MF $(DEPDIR)/oggTranscode-hookHandler.Tpo -c -o oggTranscode-hookHandler.o `test -f 'hookHandler.cpp' || echo '$(srcdir)/'`hookHandler.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggTranscode-hookHandler.Tpo $(DEPDIR)/oggTranscode-hookHandler.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='hookHandler.cpp' object='oggTranscode-hookHandler.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -c -o oggTranscode-hookHandler.o `test -f 'hookHandler.cpp' || echo '$(srcdir)/'`hookHandler.cpp - -oggTranscode-hookHandler.obj: hookHandler.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -MT oggTranscode-hookHandler.obj -MD -MP -MF $(DEPDIR)/oggTranscode-hookHandler.Tpo -c -o oggTranscode-hookHandler.obj `if test -f 'hookHandler.cpp'; then $(CYGPATH_W) 'hookHandler.cpp'; else $(CYGPATH_W) '$(srcdir)/hookHandler.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggTranscode-hookHandler.Tpo $(DEPDIR)/oggTranscode-hookHandler.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='hookHandler.cpp' object='oggTranscode-hookHandler.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -c -o oggTranscode-hookHandler.obj `if test -f 'hookHandler.cpp'; then $(CYGPATH_W) 'hookHandler.cpp'; else $(CYGPATH_W) '$(srcdir)/hookHandler.cpp'; fi` - -oggTranscode-videoHook.o: videoHook.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -MT oggTranscode-videoHook.o -MD -MP -MF $(DEPDIR)/oggTranscode-videoHook.Tpo -c -o oggTranscode-videoHook.o `test -f 'videoHook.cpp' || echo '$(srcdir)/'`videoHook.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggTranscode-videoHook.Tpo $(DEPDIR)/oggTranscode-videoHook.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='videoHook.cpp' object='oggTranscode-videoHook.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -c -o oggTranscode-videoHook.o `test -f 'videoHook.cpp' || echo '$(srcdir)/'`videoHook.cpp - -oggTranscode-videoHook.obj: videoHook.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -MT oggTranscode-videoHook.obj -MD -MP -MF $(DEPDIR)/oggTranscode-videoHook.Tpo -c -o oggTranscode-videoHook.obj `if test -f 'videoHook.cpp'; then $(CYGPATH_W) 'videoHook.cpp'; else $(CYGPATH_W) '$(srcdir)/videoHook.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggTranscode-videoHook.Tpo $(DEPDIR)/oggTranscode-videoHook.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='videoHook.cpp' object='oggTranscode-videoHook.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -c -o oggTranscode-videoHook.obj `if test -f 'videoHook.cpp'; then $(CYGPATH_W) 'videoHook.cpp'; else $(CYGPATH_W) '$(srcdir)/videoHook.cpp'; fi` - -oggTranscode-audioHook.o: audioHook.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -MT oggTranscode-audioHook.o -MD -MP -MF $(DEPDIR)/oggTranscode-audioHook.Tpo -c -o oggTranscode-audioHook.o `test -f 'audioHook.cpp' || echo '$(srcdir)/'`audioHook.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggTranscode-audioHook.Tpo $(DEPDIR)/oggTranscode-audioHook.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='audioHook.cpp' object='oggTranscode-audioHook.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -c -o oggTranscode-audioHook.o `test -f 'audioHook.cpp' || echo '$(srcdir)/'`audioHook.cpp - -oggTranscode-audioHook.obj: audioHook.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -MT oggTranscode-audioHook.obj -MD -MP -MF $(DEPDIR)/oggTranscode-audioHook.Tpo -c -o oggTranscode-audioHook.obj `if test -f 'audioHook.cpp'; then $(CYGPATH_W) 'audioHook.cpp'; else $(CYGPATH_W) '$(srcdir)/audioHook.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggTranscode-audioHook.Tpo $(DEPDIR)/oggTranscode-audioHook.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='audioHook.cpp' object='oggTranscode-audioHook.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -c -o oggTranscode-audioHook.obj `if test -f 'audioHook.cpp'; then $(CYGPATH_W) 'audioHook.cpp'; else $(CYGPATH_W) '$(srcdir)/audioHook.cpp'; fi` - -oggTranscode-oggTranscode.o: oggTranscode.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -MT oggTranscode-oggTranscode.o -MD -MP -MF $(DEPDIR)/oggTranscode-oggTranscode.Tpo -c -o oggTranscode-oggTranscode.o `test -f 'oggTranscode.cpp' || echo '$(srcdir)/'`oggTranscode.cpp -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggTranscode-oggTranscode.Tpo $(DEPDIR)/oggTranscode-oggTranscode.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='oggTranscode.cpp' object='oggTranscode-oggTranscode.o' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -c -o oggTranscode-oggTranscode.o `test -f 'oggTranscode.cpp' || echo '$(srcdir)/'`oggTranscode.cpp - -oggTranscode-oggTranscode.obj: oggTranscode.cpp -@am__fastdepCXX_TRUE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -MT oggTranscode-oggTranscode.obj -MD -MP -MF $(DEPDIR)/oggTranscode-oggTranscode.Tpo -c -o oggTranscode-oggTranscode.obj `if test -f 'oggTranscode.cpp'; then $(CYGPATH_W) 'oggTranscode.cpp'; else $(CYGPATH_W) '$(srcdir)/oggTranscode.cpp'; fi` -@am__fastdepCXX_TRUE@ $(am__mv) $(DEPDIR)/oggTranscode-oggTranscode.Tpo $(DEPDIR)/oggTranscode-oggTranscode.Po -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ source='oggTranscode.cpp' object='oggTranscode-oggTranscode.obj' libtool=no @AMDEPBACKSLASH@ -@AMDEP_TRUE@@am__fastdepCXX_FALSE@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@ -@am__fastdepCXX_FALSE@ $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(oggTranscode_CXXFLAGS) $(CXXFLAGS) -c -o oggTranscode-oggTranscode.obj `if test -f 'oggTranscode.cpp'; then $(CYGPATH_W) 'oggTranscode.cpp'; else $(CYGPATH_W) '$(srcdir)/oggTranscode.cpp'; fi` - -ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) - list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ - unique=`for i in $$list; do \ - if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ - done | \ - $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ - END { if (nonempty) { for (i in files) print i; }; }'`; \ - mkid -fID $$unique -tags: TAGS - -TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ - $(TAGS_FILES) $(LISP) - set x; \ - here=`pwd`; \ - list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ - unique=`for i in $$list; do \ - if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ - done | \ - $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ - END { if (nonempty) { for (i in files) print i; }; }'`; \ - shift; \ - if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \ - test -n "$$unique" || unique=$$empty_fix; \ - if test $$# -gt 0; then \ - $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ - "$$@" $$unique; \ - else \ - $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ - $$unique; \ - fi; \ - fi -ctags: CTAGS -CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ - $(TAGS_FILES) $(LISP) - list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ - unique=`for i in $$list; do \ - if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ - done | \ - $(AWK) '{ files[$$0] = 1; nonempty = 1; } \ - END { if (nonempty) { for (i in files) print i; }; }'`; \ - test -z "$(CTAGS_ARGS)$$unique" \ - || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ - $$unique - -GTAGS: - here=`$(am__cd) $(top_builddir) && pwd` \ - && $(am__cd) $(top_srcdir) \ - && gtags -i $(GTAGS_ARGS) "$$here" - -distclean-tags: - -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags - -distdir: $(DISTFILES) - @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ - topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ - list='$(DISTFILES)'; \ - dist_files=`for file in $$list; do echo $$file; done | \ - sed -e "s|^$$srcdirstrip/||;t" \ - -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ - case $$dist_files in \ - */*) $(MKDIR_P) `echo "$$dist_files" | \ - sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ - sort -u` ;; \ - esac; \ - for file in $$dist_files; do \ - if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ - if test -d $$d/$$file; then \ - dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ - if test -d "$(distdir)/$$file"; then \ - find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ - fi; \ - if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ - cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ - find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ - fi; \ - cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ - else \ - test -f "$(distdir)/$$file" \ - || cp -p $$d/$$file "$(distdir)/$$file" \ - || exit 1; \ - fi; \ - done -check-am: all-am -check: check-am -all-am: makefile $(PROGRAMS) -installdirs: - for dir in "$(DESTDIR)$(bindir)"; do \ - test -z "$$dir" || $(MKDIR_P) "$$dir"; \ - done -install: install-am -install-exec: install-exec-am -install-data: install-data-am -uninstall: uninstall-am - -install-am: all-am - @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am - -installcheck: installcheck-am -install-strip: - $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ - install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ - `test -z '$(STRIP)' || \ - echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install -mostlyclean-generic: - -clean-generic: - -distclean-generic: - -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) - -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) - -maintainer-clean-generic: - @echo "This command is intended for maintainers to use" - @echo "it deletes files that may require special tools to rebuild." -clean: clean-am - -clean-am: clean-binPROGRAMS clean-generic mostlyclean-am - -distclean: distclean-am - -rm -rf ./$(DEPDIR) - -rm -f makefile -distclean-am: clean-am distclean-compile distclean-generic \ - distclean-tags - -dvi: dvi-am - -dvi-am: - -html: html-am - -html-am: - -info: info-am - -info-am: - -install-data-am: - -install-dvi: install-dvi-am - -install-dvi-am: - -install-exec-am: install-binPROGRAMS - -install-html: install-html-am - -install-html-am: - -install-info: install-info-am - -install-info-am: - -install-man: - -install-pdf: install-pdf-am - -install-pdf-am: - -install-ps: install-ps-am - -install-ps-am: - -installcheck-am: - -maintainer-clean: maintainer-clean-am - -rm -rf ./$(DEPDIR) - -rm -f makefile -maintainer-clean-am: distclean-am maintainer-clean-generic - -mostlyclean: mostlyclean-am - -mostlyclean-am: mostlyclean-compile mostlyclean-generic - -pdf: pdf-am - -pdf-am: - -ps: ps-am - -ps-am: - -uninstall-am: uninstall-binPROGRAMS - -.MAKE: install-am install-strip - -.PHONY: CTAGS GTAGS all all-am check check-am clean clean-binPROGRAMS \ - clean-generic ctags distclean distclean-compile \ - distclean-generic distclean-tags distdir dvi dvi-am html \ - html-am info info-am install install-am install-binPROGRAMS \ - install-data install-data-am install-dvi install-dvi-am \ - install-exec install-exec-am install-html install-html-am \ - install-info install-info-am install-man install-pdf \ - install-pdf-am install-ps install-ps-am install-strip \ - installcheck installcheck-am installdirs maintainer-clean \ - maintainer-clean-generic mostlyclean mostlyclean-compile \ - mostlyclean-generic pdf pdf-am ps ps-am tags uninstall \ - uninstall-am uninstall-binPROGRAMS - - -# Tell versions [3.59,3.63) of GNU make to not export all variables. -# Otherwise a system limit (for SysV at least) may be exceeded. -.NOEXPORT: diff -Nru oggvideotools-0.8a/src/mediaConverter.cpp oggvideotools-0.9.1/src/mediaConverter.cpp --- oggvideotools-0.8a/src/mediaConverter.cpp 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/src/mediaConverter.cpp 1970-01-01 00:00:00.000000000 +0000 @@ -1,108 +0,0 @@ -/* - * MediaConverter is the base class for all subsequent decoders - * and encoders - * - * Copyright (C) 2008 Joern Seger - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - * - */ - -#include -#include "mediaConverter.h" -#include "log.h" - -MediaConverter::MediaConverter() - : mediaConverterState(mdec_free) -{ -} - -MediaConverter::~MediaConverter() -{ -} - -void MediaConverter::setInitialized() -{ - if (mediaConverterState == mdec_free) - mediaConverterState = mdec_initialized; - else - logger.error() << "MediaConverter::setInitialized(): double initalization\n"; -} - -void MediaConverter::setConfigured() -{ - if (mediaConverterState < mdec_configured) - mediaConverterState = mdec_configured; - else - logger.error() << "MediaConverter::setConfigured(): decoder is configured\n"; -} - -void MediaConverter::setAvailable() -{ - if ((mediaConverterState >= mdec_configured) && - (mediaConverterState <= mdec_available)) - mediaConverterState = mdec_available; - else - logger.error() << "MediaConverter::setAvailable(): decoder is not configured or has ended\n"; -} - -void MediaConverter::setEmpty() -{ - if ((mediaConverterState == mdec_configured) || - (mediaConverterState == mdec_available) || - (mediaConverterState == mdec_empty)) - mediaConverterState = mdec_empty; - else - logger.error() << "MediaConverter::setEmpty(): decoder not configured correctly\n"; -} - -void MediaConverter::setEndOfStream() -{ - if (mediaConverterState > mdec_initialized) - mediaConverterState = mdec_endofStream; - else - logger.error() << "MediaConverter::setEndOfStream(): decoder not initialized\n"; -} - -void MediaConverter::setFree() -{ - mediaConverterState = mdec_free; -} - -bool MediaConverter::isInitialized() -{ - return(mediaConverterState > mdec_free); -} - -bool MediaConverter::isConfigured() -{ - return(mediaConverterState > mdec_initialized); -} - -bool MediaConverter::isAvailable() -{ - return(mediaConverterState == mdec_available); -} - -bool MediaConverter::isEmpty() -{ - return((mediaConverterState == mdec_empty) || - (mediaConverterState == mdec_configured)); -} - -bool MediaConverter::isEndOfStream() -{ - return(mediaConverterState == mdec_endofStream); -} diff -Nru oggvideotools-0.8a/src/mediaConverter.h oggvideotools-0.9.1/src/mediaConverter.h --- oggvideotools-0.8a/src/mediaConverter.h 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/src/mediaConverter.h 1970-01-01 00:00:00.000000000 +0000 @@ -1,79 +0,0 @@ -/* - * MediaConverter is the base class for all subsequent decoders - * and encoders - * - * Copyright (C) 2008 Joern Seger - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - * - */ - -#ifndef MEDIACONVERTER_H_ -#define MEDIACONVERTER_H_ - -#include - -//! MediaConverter is a baseclass for all decoders -/*! The MediaConverter class is used with a defined decoder or encoder. It mainly implements a state machine, - which holds the actual decoder/encoder state information: - #- mdec_free: the decoder is uninitialized - #- mdec_initialized: the decoder is initialized, i.e. the stream has a defined stream type or stream ID - #- mdec_configured: the stream is able to give information about the stream, that is processed (stream header is read) - #- mdec_available: the stream is able to provide output data (e.g. a video picture etc.) - #- mdec_empty: there is actually no data available for output - #- mdec_endofStream: the end of a stream has been detected - */ -class MediaConverter { -protected: - enum MediaConverterState { - mdec_free, - mdec_initialized, - mdec_configured, - mdec_empty, - mdec_available, - mdec_endofStream - }; - -private: - MediaConverterState mediaConverterState; - -protected: - - void setInitialized(); - void setConfigured(); - void setAvailable(); - void setEmpty(); - void setFree(); - -public: - MediaConverter(); - virtual ~MediaConverter(); - - void setEndOfStream(); - - bool isInitialized(); - bool isConfigured(); - bool isAvailable(); - bool isEmpty(); - bool isEndOfStream(); - - virtual std::string configuration() const { - return (std::string("")); - }; - - virtual void reset() {}; -}; - -#endif /*MEDIACONVERTER_H_*/ diff -Nru oggvideotools-0.8a/src/mediaDecoder.cpp oggvideotools-0.9.1/src/mediaDecoder.cpp --- oggvideotools-0.8a/src/mediaDecoder.cpp 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/src/mediaDecoder.cpp 1970-01-01 00:00:00.000000000 +0000 @@ -1,31 +0,0 @@ -/* - * MediaDecoder is the base class for all subsequent decoders - * - * Copyright (C) 2008 Joern Seger - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - * - */ - -#include "mediaDecoder.h" - -MediaDecoder::MediaDecoder() -{ -} - -MediaDecoder::~MediaDecoder() -{ -} - diff -Nru oggvideotools-0.8a/src/mediaDecoder.h oggvideotools-0.9.1/src/mediaDecoder.h --- oggvideotools-0.8a/src/mediaDecoder.h 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/src/mediaDecoder.h 1970-01-01 00:00:00.000000000 +0000 @@ -1,38 +0,0 @@ -/* - * MediaDecoder is the base class for all subsequent decoders - * - * Copyright (C) 2008 Joern Seger - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - * - */ - -#ifndef MEDIADECODER_H_ -#define MEDIADECODER_H_ - -#include "mediaConverter.h" - -class MediaDecoder : public MediaConverter { - -protected: - -public: - MediaDecoder(); - virtual ~MediaDecoder(); - - virtual void clear() = 0; -}; - -#endif /*MEDIADECODER_H_*/ diff -Nru oggvideotools-0.8a/src/mediaEncoder.cpp oggvideotools-0.9.1/src/mediaEncoder.cpp --- oggvideotools-0.8a/src/mediaEncoder.cpp 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/src/mediaEncoder.cpp 1970-01-01 00:00:00.000000000 +0000 @@ -1,21 +0,0 @@ -#include "mediaEncoder.h" - -MediaEncoder::MediaEncoder() - : useFixBunches(0), bunchsize(false) -{ -} - -MediaEncoder::~MediaEncoder() -{ -} - -void MediaEncoder::setBunchsize(uint32 _bunchsize) -{ - bunchsize = _bunchsize; - useFixBunches = true; -} - -void MediaEncoder::useVariableBunches() -{ - useFixBunches = false; -} diff -Nru oggvideotools-0.8a/src/mediaEncoder.h oggvideotools-0.9.1/src/mediaEncoder.h --- oggvideotools-0.8a/src/mediaEncoder.h 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/src/mediaEncoder.h 1970-01-01 00:00:00.000000000 +0000 @@ -1,21 +0,0 @@ -#ifndef MEDIAENCODER_H_ -#define MEDIAENCODER_H_ - -#include "definition.h" - -#include "mediaConverter.h" - -class MediaEncoder : public MediaConverter { - bool useFixBunches; - uint32 bunchsize; - -public: - MediaEncoder(); - virtual ~MediaEncoder(); - - void setBunchsize(uint32 bunchsize); - void useVariableBunches(); - -}; - -#endif /*MEDIAENCODER_H_*/ diff -Nru oggvideotools-0.8a/src/mediaInputEncoder.cpp oggvideotools-0.9.1/src/mediaInputEncoder.cpp --- oggvideotools-0.8a/src/mediaInputEncoder.cpp 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/src/mediaInputEncoder.cpp 1970-01-01 00:00:00.000000000 +0000 @@ -1,15 +0,0 @@ -#include "mediaInputEncoder.h" - -MediaInputEncoder::MediaInputEncoder(const uint8 _streamNo) - : streamNo(_streamNo) -{ -} - -MediaInputEncoder::~MediaInputEncoder() -{ -} - -uint32 MediaInputEncoder::getStreamNo() const -{ - return(streamNo); -} \ No newline at end of file diff -Nru oggvideotools-0.8a/src/mediaInputEncoder.h oggvideotools-0.9.1/src/mediaInputEncoder.h --- oggvideotools-0.8a/src/mediaInputEncoder.h 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/src/mediaInputEncoder.h 1970-01-01 00:00:00.000000000 +0000 @@ -1,26 +0,0 @@ -#ifndef MEDIAINPUTENCODER_H_ -#define MEDIAINPUTENCODER_H_ - -#include "mediaEncoder.h" - -#include "streamConfig.h" -#include "oggPacket.h" -#include "oggComment.h" - -class MediaInputEncoder : public MediaEncoder { - -protected: - uint8 streamNo; - -public: - MediaInputEncoder(const uint8 streamNo); - virtual ~MediaInputEncoder(); - - virtual MediaInputEncoder& operator>>(OggPacket& packet) = 0; - - virtual void configureEncoder(StreamConfig& config, std::vector& oggComments) = 0; - - uint32 getStreamNo() const; -}; - -#endif /*MEDIAINPUTENCODER_H_*/ diff -Nru oggvideotools-0.8a/src/mediaOutputDecoder.cpp oggvideotools-0.9.1/src/mediaOutputDecoder.cpp --- oggvideotools-0.8a/src/mediaOutputDecoder.cpp 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/src/mediaOutputDecoder.cpp 1970-01-01 00:00:00.000000000 +0000 @@ -1,15 +0,0 @@ -#include "mediaOutputDecoder.h" - -MediaOutputDecoder::MediaOutputDecoder(const uint8 _streamNo) - : streamID(_streamNo) -{ -} - -MediaOutputDecoder::~MediaOutputDecoder() -{ -} - -uint8 MediaOutputDecoder::getStreamNo() const -{ - return(streamID); -} diff -Nru oggvideotools-0.8a/src/mediaOutputDecoder.h oggvideotools-0.9.1/src/mediaOutputDecoder.h --- oggvideotools-0.8a/src/mediaOutputDecoder.h 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/src/mediaOutputDecoder.h 1970-01-01 00:00:00.000000000 +0000 @@ -1,29 +0,0 @@ -#ifndef MEDIAOUTPUTDECODER_H_ -#define MEDIAOUTPUTDECODER_H_ - -#include "definition.h" - -#include "oggPacket.h" -#include "oggComment.h" -#include "mediaDecoder.h" -#include "streamConfig.h" - -class MediaOutputDecoder : public MediaDecoder { - -protected: - uint8 streamID; - -public: - MediaOutputDecoder(const uint8 _streamID = 0); - virtual ~MediaOutputDecoder(); - - virtual void initDecoder(StreamConfig& config, std::vector& commentList) = 0; - virtual MediaOutputDecoder& operator<<(OggPacket packet) = 0; - - virtual uint32 getPositionOfNextPacket() = 0; - - uint8 getStreamNo() const; - -}; - -#endif /*MEDIAOUTPUTDECODER_H_*/ diff -Nru oggvideotools-0.8a/src/mediaRepository.cpp oggvideotools-0.9.1/src/mediaRepository.cpp --- oggvideotools-0.8a/src/mediaRepository.cpp 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/src/mediaRepository.cpp 1970-01-01 00:00:00.000000000 +0000 @@ -1,42 +0,0 @@ -/* - * MediaRepository is a baseclass for all communication interfaces - * (e.g. files, tcp, rtp and http streams) - * - * Copyright (C) 2008 Joern Seger - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - * - */ - -#include "mediaRepository.h" - -MediaRepository::MediaRepository() - : MediaUnit(MediaUnit::read, std::string("")), repositoryAvailable(false) -{ -} - -MediaRepository::MediaRepository(MediaDirection_t type, const std::string name) - : MediaUnit(type, name), repositoryAvailable(false) -{ -} - -MediaRepository::~MediaRepository() -{ -} - -bool MediaRepository::isAvailable() -{ - return(repositoryAvailable); -} diff -Nru oggvideotools-0.8a/src/mediaRepository.h oggvideotools-0.9.1/src/mediaRepository.h --- oggvideotools-0.8a/src/mediaRepository.h 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/src/mediaRepository.h 1970-01-01 00:00:00.000000000 +0000 @@ -1,81 +0,0 @@ -/* - * MediaRepository is a baseclass for all communication interfaces - * (e.g. files, tcp, rtp and http streams) - * - * Copyright (C) 2008 Joern Seger - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - * - */ - -#ifndef MEDIAREPOSITORY_H_ -#define MEDIAREPOSITORY_H_ - -#include "definition.h" -#include "mediaUnit.h" -#include "rawMediaPacket.h" - -//! Baseclass for all communication interfaces. -/*! This class is used as a basis for subsequent derived classes that are able to - * handle raw data from any source. - * - * Actually the only implementation is the FileRepository class. One of - * the next implementations will be a http repository, that creates raw packets - * from an http media source or throughs out an http media stream. - * - * */ -class MediaRepository : public MediaUnit { - -protected: - bool repositoryAvailable; - -public: - MediaRepository(); - - //! Constructor to create a new MediaRepository object - /*! @param type The media direction - * - MediaUnit::read for opening the repository for reading - * - MediaUnit::write for opening the repository for writing - * @param name The name of the media repository, this could be a filename, a url etc. - * - * */ - MediaRepository(MediaDirection_t type,const std::string name); - - virtual ~MediaRepository(); - - //! Find out, if data is available - /*! @return true, if any data is available, false if not */ - virtual bool isAvailable(); - - //! Insert a new raw data packet into the repository - virtual MediaUnit& operator<<(RawMediaPacket& packet) = 0; - - //! Receive a new raw data packet from the repository - virtual MediaUnit& operator>>(RawMediaPacket& packet) = 0; - - //! Request the actual size of a raw media packet that this repository creates - /*! @return Returns the bunch size, that is actually used. - * */ - virtual uint32 getBunchSize() = 0; - - //! Configures the size of the raw media packet size - /*! @param size The size to which all packets should be filled */ - virtual void setBunchSize(uint32 size) = 0; - - virtual void close() = 0; - -}; - -#endif /*MEDIAREPOSITORY_H_*/ diff -Nru oggvideotools-0.8a/src/mediaUnit.cpp oggvideotools-0.9.1/src/mediaUnit.cpp --- oggvideotools-0.8a/src/mediaUnit.cpp 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/src/mediaUnit.cpp 1970-01-01 00:00:00.000000000 +0000 @@ -1,45 +0,0 @@ -/* - * MediaUnit is a baseclass for all media transfer units - * - * Copyright (C) 2008 Joern Seger - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - * - */ - -#include "mediaUnit.h" - -#include - -MediaUnit::MediaUnit(MediaDirection_t type, const std::string _name) - : name(_name), mediaDirection(type) -{ -} - -MediaUnit::~MediaUnit() -{ -} - -/* -void MediaUnit::setConfig(MediaConfig* _config) -{ - config = _config->clone(); -} - -MediaConfig* MediaUnit::getConfig() -{ - return(config->clone()); -} -*/ diff -Nru oggvideotools-0.8a/src/mediaUnit.h oggvideotools-0.9.1/src/mediaUnit.h --- oggvideotools-0.8a/src/mediaUnit.h 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/src/mediaUnit.h 1970-01-01 00:00:00.000000000 +0000 @@ -1,56 +0,0 @@ -/* - * MediaUnit is a baseclass for all media transfer units - * - * Copyright (C) 2008 Joern Seger - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - * - */ - -#ifndef MEDIAUNIT_H_ -#define MEDIAUNIT_H_ - -#include - -//#include "MediaConfig.h" - -//! Base class for the media processing units -/*! This abstract class is the base class for all following classes, that process media data - * A MediaUnit object is able to receive packets and to send - * following classes, that process media data - * The idea is to connect one mediaUnit Object with - * another by using connectFront and connectBack. - */ - -class MediaUnit { - -public: - enum MediaDirection_t { - write, - read, - readwrite - }; - -protected: - std::string name; - MediaDirection_t mediaDirection; - -public: - MediaUnit(MediaDirection_t type, const std::string name); - virtual ~MediaUnit(); - -}; - -#endif /*MEDIAUNIT_H_*/ diff -Nru oggvideotools-0.8a/src/misc/CMakeLists.txt oggvideotools-0.9.1/src/misc/CMakeLists.txt --- oggvideotools-0.8a/src/misc/CMakeLists.txt 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/misc/CMakeLists.txt 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,8 @@ +SET ( LIBRARY_MISC_SRC + ringbuffer.cpp + log.cpp + helper.cpp + crc.cpp +) + +ADD_LIBRARY ( ovtmisc ${LIBRARY_MISC_SRC} ) diff -Nru oggvideotools-0.8a/src/misc/crc.cpp oggvideotools-0.9.1/src/misc/crc.cpp --- oggvideotools-0.8a/src/misc/crc.cpp 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/misc/crc.cpp 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,107 @@ +/* + * CRC creation class (static method) + * + * Copyright (C) 2008 Joern Seger + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + * + */ + +#include "crc.h" + +static const unsigned int crc_lookup[256]= { + 0x00000000,0x04c11db7,0x09823b6e,0x0d4326d9, + 0x130476dc,0x17c56b6b,0x1a864db2,0x1e475005, + 0x2608edb8,0x22c9f00f,0x2f8ad6d6,0x2b4bcb61, + 0x350c9b64,0x31cd86d3,0x3c8ea00a,0x384fbdbd, + 0x4c11db70,0x48d0c6c7,0x4593e01e,0x4152fda9, + 0x5f15adac,0x5bd4b01b,0x569796c2,0x52568b75, + 0x6a1936c8,0x6ed82b7f,0x639b0da6,0x675a1011, + 0x791d4014,0x7ddc5da3,0x709f7b7a,0x745e66cd, + 0x9823b6e0,0x9ce2ab57,0x91a18d8e,0x95609039, + 0x8b27c03c,0x8fe6dd8b,0x82a5fb52,0x8664e6e5, + 0xbe2b5b58,0xbaea46ef,0xb7a96036,0xb3687d81, + 0xad2f2d84,0xa9ee3033,0xa4ad16ea,0xa06c0b5d, + 0xd4326d90,0xd0f37027,0xddb056fe,0xd9714b49, + 0xc7361b4c,0xc3f706fb,0xceb42022,0xca753d95, + 0xf23a8028,0xf6fb9d9f,0xfbb8bb46,0xff79a6f1, + 0xe13ef6f4,0xe5ffeb43,0xe8bccd9a,0xec7dd02d, + 0x34867077,0x30476dc0,0x3d044b19,0x39c556ae, + 0x278206ab,0x23431b1c,0x2e003dc5,0x2ac12072, + 0x128e9dcf,0x164f8078,0x1b0ca6a1,0x1fcdbb16, + 0x018aeb13,0x054bf6a4,0x0808d07d,0x0cc9cdca, + 0x7897ab07,0x7c56b6b0,0x71159069,0x75d48dde, + 0x6b93dddb,0x6f52c06c,0x6211e6b5,0x66d0fb02, + 0x5e9f46bf,0x5a5e5b08,0x571d7dd1,0x53dc6066, + 0x4d9b3063,0x495a2dd4,0x44190b0d,0x40d816ba, + 0xaca5c697,0xa864db20,0xa527fdf9,0xa1e6e04e, + 0xbfa1b04b,0xbb60adfc,0xb6238b25,0xb2e29692, + 0x8aad2b2f,0x8e6c3698,0x832f1041,0x87ee0df6, + 0x99a95df3,0x9d684044,0x902b669d,0x94ea7b2a, + 0xe0b41de7,0xe4750050,0xe9362689,0xedf73b3e, + 0xf3b06b3b,0xf771768c,0xfa325055,0xfef34de2, + 0xc6bcf05f,0xc27dede8,0xcf3ecb31,0xcbffd686, + 0xd5b88683,0xd1799b34,0xdc3abded,0xd8fba05a, + 0x690ce0ee,0x6dcdfd59,0x608edb80,0x644fc637, + 0x7a089632,0x7ec98b85,0x738aad5c,0x774bb0eb, + 0x4f040d56,0x4bc510e1,0x46863638,0x42472b8f, + 0x5c007b8a,0x58c1663d,0x558240e4,0x51435d53, + 0x251d3b9e,0x21dc2629,0x2c9f00f0,0x285e1d47, + 0x36194d42,0x32d850f5,0x3f9b762c,0x3b5a6b9b, + 0x0315d626,0x07d4cb91,0x0a97ed48,0x0e56f0ff, + 0x1011a0fa,0x14d0bd4d,0x19939b94,0x1d528623, + 0xf12f560e,0xf5ee4bb9,0xf8ad6d60,0xfc6c70d7, + 0xe22b20d2,0xe6ea3d65,0xeba91bbc,0xef68060b, + 0xd727bbb6,0xd3e6a601,0xdea580d8,0xda649d6f, + 0xc423cd6a,0xc0e2d0dd,0xcda1f604,0xc960ebb3, + 0xbd3e8d7e,0xb9ff90c9,0xb4bcb610,0xb07daba7, + 0xae3afba2,0xaafbe615,0xa7b8c0cc,0xa379dd7b, + 0x9b3660c6,0x9ff77d71,0x92b45ba8,0x9675461f, + 0x8832161a,0x8cf30bad,0x81b02d74,0x857130c3, + 0x5d8a9099,0x594b8d2e,0x5408abf7,0x50c9b640, + 0x4e8ee645,0x4a4ffbf2,0x470cdd2b,0x43cdc09c, + 0x7b827d21,0x7f436096,0x7200464f,0x76c15bf8, + 0x68860bfd,0x6c47164a,0x61043093,0x65c52d24, + 0x119b4be9,0x155a565e,0x18197087,0x1cd86d30, + 0x029f3d35,0x065e2082,0x0b1d065b,0x0fdc1bec, + 0x3793a651,0x3352bbe6,0x3e119d3f,0x3ad08088, + 0x2497d08d,0x2056cd3a,0x2d15ebe3,0x29d4f654, + 0xc5a92679,0xc1683bce,0xcc2b1d17,0xc8ea00a0, + 0xd6ad50a5,0xd26c4d12,0xdf2f6bcb,0xdbee767c, + 0xe3a1cbc1,0xe760d676,0xea23f0af,0xeee2ed18, + 0xf0a5bd1d,0xf464a0aa,0xf9278673,0xfde69bc4, + 0x89b8fd09,0x8d79e0be,0x803ac667,0x84fbdbd0, + 0x9abc8bd5,0x9e7d9662,0x933eb0bb,0x97ffad0c, + 0xafb010b1,0xab710d06,0xa6322bdf,0xa2f33668, + 0xbcb4666d,0xb8757bda,0xb5365d03,0xb1f740b4 +}; + +Crc::Crc () +{} + +Crc::~Crc() +{} + + +unsigned int Crc::create(unsigned char* data, unsigned int length) +{ + /* this is the usual ethernet CRC algorithm */ + unsigned int crc_reg(0); + for (unsigned int i = 0; i < length; ++i) + crc_reg=(crc_reg<<8)^crc_lookup[((crc_reg >> 24)&0xff)^data[i]]; + + return (crc_reg); +} + diff -Nru oggvideotools-0.8a/src/misc/crc.h oggvideotools-0.9.1/src/misc/crc.h --- oggvideotools-0.8a/src/misc/crc.h 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/misc/crc.h 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,36 @@ +/* + * CRC creation class (static method) + * + * Copyright (C) 2008 Joern Seger + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + * + */ + +#ifndef crc_h +#define crc_h + +class Crc { +public: + typedef unsigned long Type; + +public: + Crc (); + virtual ~Crc(); + static unsigned int create(unsigned char* data, unsigned int length); + +}; + +#endif diff -Nru oggvideotools-0.8a/src/misc/helper.cpp oggvideotools-0.9.1/src/misc/helper.cpp --- oggvideotools-0.8a/src/misc/helper.cpp 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/misc/helper.cpp 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,22 @@ +#include "helper.h" +#include +#include + +bool check_file_exists (std::string& filename) +{ + bool exists(false); + std::string answer; + std::ifstream fin; + + fin.open (filename.c_str()); + if (fin.fail()) + return(false); + fin.close(); + + std::cerr << "The file <"< exists, overwrite? "; + std::cin >> answer; + if (answer == "yes" || answer =="y" || answer == "Yes" || answer == "Y" ) + return(false); + + return(true); +} diff -Nru oggvideotools-0.8a/src/misc/helper.h oggvideotools-0.9.1/src/misc/helper.h --- oggvideotools-0.8a/src/misc/helper.h 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/misc/helper.h 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,9 @@ +#ifndef helper_h +#define helper_h + +#include + +//! returns true, if file exists and should not be overwritten +bool check_file_exists (std::string& filename); + +#endif diff -Nru oggvideotools-0.8a/src/misc/log.cpp oggvideotools-0.9.1/src/misc/log.cpp --- oggvideotools-0.8a/src/misc/log.cpp 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/misc/log.cpp 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,44 @@ +#include "log.h" +#include + +OggLog logger; + +void OggLog::setLevel(Severity newLevel) +{ + currentLevel = newLevel; +} + +OggLog::Severity OggLog::getLevel() const +{ + return currentLevel; +} + +std::ostream & OggLog::error() const +{ + return getStream(LOG_ERROR); +} + +std::ostream & OggLog::warning() const +{ + return getStream(LOG_WARNING); +} + +std::ostream & OggLog::info() const +{ + return getStream(LOG_INFO); +} + +std::ostream & OggLog::debug() const +{ + return getStream(LOG_DEBUG); +} + +std::ostream & OggLog::getStream(Severity severity) const +{ + if (severity >= currentLevel) { + return std::cerr; + } else { + return (std::ostream&)fakeStream; + } +} + diff -Nru oggvideotools-0.8a/src/misc/log.h oggvideotools-0.9.1/src/misc/log.h --- oggvideotools-0.8a/src/misc/log.h 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/misc/log.h 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,48 @@ +#ifndef LOG_H +#define LOG_H + +#include + +class FakeStreambuf : public std::streambuf { +public: + FakeStreambuf() {} +}; + +class FakeStream : public std::ostream { +public: + FakeStreambuf buf; + + FakeStream() + : std::ostream(&buf) {} +}; + +class OggLog { +public: + enum Severity { + LOG_DEBUG, + LOG_INFO, + LOG_WARNING, + LOG_ERROR + }; + + OggLog() + : currentLevel(LOG_INFO) {} + + void setLevel(Severity newLevel); + Severity getLevel() const; + + std::ostream & error() const; + std::ostream & warning() const; + std::ostream & info() const; + std::ostream & debug() const; + + std::ostream & getStream(Severity severity) const; +protected: + Severity currentLevel; + FakeStream fakeStream; +}; + +// Global instance +extern OggLog logger; + +#endif diff -Nru oggvideotools-0.8a/src/misc/ringbuffer.cpp oggvideotools-0.9.1/src/misc/ringbuffer.cpp --- oggvideotools-0.8a/src/misc/ringbuffer.cpp 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/misc/ringbuffer.cpp 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,331 @@ +/* + * simple ring buffer + * + * Copyright (C) 2005-2008 Joern Seger + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + * + */ + +#include +#include "ringbuffer.h" +#include "exception.h" +#include "log.h" + +ringbuffer::ringbuffer(uint32_t buffersize) + : size(buffersize), used(0), begin(0), end(0) +{ + lock(); + logger.debug() <<"creating ringbuffer with size " << buffersize << std::endl; + fifo.resize(buffersize); //reserve(buffersize);// = new unsigned char[buffersize]; + unlock(); +} + +//ringbuffer::ringbuffer(unsigned char* data, uint32_t len) +// : size(len), used(len), begin(0), end(0) +//{ +// // gonna make a copy for safety: +// lock(); +// fifo.reserve(len);// = new unsigned char[len]; +// fifo.insert(fifo.end(), data.data(), &data[len]); //memcpy(fifo, data, len); +// unlock(); +//} + +ringbuffer::~ringbuffer() +{ +} + +//uint32_t ringbuffer::addData(const unsigned char* data, uint32_t len) +//{ +// lock(); + +// if ((!len) || (!data)) { +// unlock(); +// return(0); +// } + +// if (len > size) { +// unlock(); +// throw OggException("Ring buffer write overflow"); +// } +// if (begin+len < size) { +// memcpy(fifo.data()+begin,data,len); +// } else { +// // split +// int part1 = (size - begin); +// int part2 = len - part1; +// memcpy(fifo.data()+begin,data,part1); +// memcpy(fifo.data(),data+part1,part2); +// } + +// begin += len; +// begin %= size; + +// if (len > (size-used)) { +// throw OggException("Ring buffer overrun"); +// } else { +// used += len; +// } + +// unlock(); + +// return (len); + +//} + +uint32_t ringbuffer::addData(const std::vector& data, uint32_t len) +{ + lock(); + + if ((!len) || (data.empty())) { + unlock(); + return(0); + } + + if (len > size) { + unlock(); + throw OggException("Ring buffer write overflow"); + } + if (begin+len < size) { + logger.debug() << "fifo: capacity " << fifo.capacity() << " size: "<< fifo.size() << std::endl; + logger.debug() << "writing data with length " << len << " as one block " << std::endl; + logger.debug() << "ringbuffer begin: " << begin << " end: " << end <<" size: " << size << std::endl; + memcpy(fifo.data()+begin,data.data(),len); + } else { + // split + int part1 = (size - begin); + int part2 = len - part1; + logger.debug() << "writing data with length " << len << " splitted " << part1 <<" / " << part2 << std::endl; + logger.debug() << "ringbuffer begin: " << begin << " end: " << end <<" size: " << size << std::endl; + memcpy(fifo.data()+begin,data.data(),part1); + memcpy(fifo.data(),data.data()+part1,part2); + } + + begin += len; + begin %= size; + + if (len > (size-used)) { + throw OggException("Ring buffer overrun"); + } else { + used += len; + } + + unlock(); + + return (len); + +} + + + +uint32_t ringbuffer::getData(unsigned char* data, uint32_t len) +{ + lock(); + + if (used < len) + len = used; + + if (len > size) { + throw OggException("Ring buffer read overflow"); + } + if (size < (end + len)) { + // split + int part1 = size - end; + int part2 = len - part1; + memcpy(data, fifo.data()+end, part1); + memcpy(data+part1, fifo.data(), part2); + } else + memcpy(data, fifo.data()+end, len); + + end += len; + end %= size; + used -= len; + + /* + for(uint32_t i=0; i& data, uint32_t len) +{ + lock(); + + if (used < len) + len = used; + + if (len > size) { + throw OggException("Ring buffer read overflow"); + } + + data.clear(); + data.reserve(len); +// data.insert(data.end(),len); + + if (size < (end + len)) { + // split + int part1 = size - end; + int part2 = len - (size-end); + //data.insert(std::end(data),std::begin(fifo)+end, std::end(fifo)); //std::begin(fifo)+end+part1); + data.insert(data.end(),fifo.begin()+end, fifo.end()); //std::end(fifo)); + data.insert(std::end(data),std::begin(fifo), std::begin(fifo)+part2); +// memcpy(data.data(), fifo.data()+end, part1); +// memcpy(data.data()+part1, fifo.data(), part2); + } else { + data.insert(std::end(data),std::begin(fifo)+end, std::begin(fifo)+end+len); +// memcpy(data.data(), fifo.data()+end, len); + } + + end += len; + end %= size; + used -= len; + + /* + for(uint32_t i=0; iused) +// len = used; + +// int tmpEnd = begin-1; +// for (int i=len-1; i>=0; --i) { +// if (tmpEnd < 0) +// tmpEnd = size-1; +// data[i] = fifo[tmpEnd--]; +// } +// unlock(); + +// return (len); +//} + +uint32_t ringbuffer::peekBack(std::vector& data, uint32_t len) +{ + lock(); + if (len>used) + len = used; + + /* clean data and fill with zeros in specified length */ + data.clear(); + data.insert(std::begin(data), len, 0); + + int tmpEnd = begin-1; + for (int i=len-1; i>=0; --i) { + if (tmpEnd < 0) + tmpEnd = size-1; + data[i] = fifo[tmpEnd--]; + } + unlock(); + + return (len); +} + + +//uint32_t ringbuffer::peekFront(unsigned char* data, uint32_t len) +//{ +// lock(); +// if (used < len) +// len = used; + +// uint32_t tmpEnd = end; +// for (uint32_t i=0; i& data, uint32_t len) +{ + lock(); + if (used < len) + len = used; + + /* clean data and fill with zeros in specified length */ + data.clear(); + data.insert(std::begin(data), len, 0); + + uint32_t tmpEnd = end; + for (uint32_t i=0; i +#include + +class ringbuffer { + +protected: + //unsigned char* fifo; + std::vector fifo; + + uint32_t size; + uint32_t used; + uint32_t begin; //! first available sign + uint32_t end; //! oldest packet + + void lock() {} + void unlock() {} + +public: + ringbuffer(uint32_t buffersize = 8000); +// ringbuffer(uint8_t* rawdata, uint32_t len); + + ~ringbuffer(); + +// uint32_t addData(const unsigned char* data, uint32_t len); + uint32_t getData(unsigned char* data, uint32_t len); + + uint32_t getAvailable(); + uint32_t getUsed(); + + // read newest nBytes +// uint32_t peekBack(unsigned char* data, uint32_t len); + + // read oldest nBytes +// uint32_t peekFront(unsigned char* data, uint32_t len); + + // delete the oldest len bytes + uint32_t inc(uint32_t len); + + void clean(); + + uint32_t addData(const std::vector &data, uint32_t len); + uint32_t getData(std::vector &data, uint32_t len); + uint32_t peekBack(std::vector &data, uint32_t len); + uint32_t peekFront(std::vector &data, uint32_t len); +}; + +#endif diff -Nru oggvideotools-0.8a/src/oggBOSExtractorFactory.cpp oggvideotools-0.9.1/src/oggBOSExtractorFactory.cpp --- oggvideotools-0.8a/src/oggBOSExtractorFactory.cpp 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/src/oggBOSExtractorFactory.cpp 1970-01-01 00:00:00.000000000 +0000 @@ -1,142 +0,0 @@ -#include -#include "oggBOSExtractorFactory.h" -#include "theoraExtractor.h" -#include "vorbisExtractor.h" -#include "kateExtractor.h" -#include "theoraPosInterpreter.h" -#include "vorbisPosInterpreter.h" -#include "katePosInterpreter.h" -//#include "theoraDecoder.h" -//#include "vorbisEncoder.h" - -OggBOSExtractorFactory::OggBOSExtractorFactory() -{ -} - -OggBOSExtractorFactory::~OggBOSExtractorFactory() -{ -} - -/* -static MediaDecoder* OggBOSExtractorFactory::createDecoder(OggPage& page) -{ - -} - -static MediaDecoder* OggBOSExtractorFactory::createEncoder(OggPacket& packet) -{ - -} -*/ - -bool OggBOSExtractorFactory::extractInformation(OggPage& page, ExtractorInformation& information) -{ - switch (getStreamType(page)) { - - case ogg_theora: { - TheoraExtractor extractor; - return(extractor.extract(page, information)); - } - - case ogg_vorbis: { - VorbisExtractor extractor; - return(extractor.extract(page, information)); - } - - case ogg_kate: { - KateExtractor extractor; - return(extractor.extract(page, information)); - } - - default: - break; - - } - - /* could not interpret the bos page */ - return(false); -} - -bool OggBOSExtractorFactory::extractInformation(OggPacket& packet, ExtractorInformation& information) -{ - switch (getStreamType(packet)) { - - case ogg_theora: { - TheoraExtractor extractor; - return(extractor.extract(packet, information)); - } - - case ogg_vorbis: { - VorbisExtractor extractor; - return(extractor.extract(packet, information)); - } - - case ogg_kate: { - KateExtractor extractor; - return(extractor.extract(packet, information)); - } - - default: - break; - - } - - /* could not interpret the bos page */ - return(false); -} - -GranulePosInterpreter* OggBOSExtractorFactory::extractPositionInterpreter(ExtractorInformation& info) -{ - GranulePosInterpreter* retPosInterpreter(0); - - switch (info.type) { - case ogg_theora: - retPosInterpreter = new TheoraPosInterpreter; - break; - - case ogg_vorbis: - retPosInterpreter = new VorbisPosInterpreter; - break; - - case ogg_kate: - retPosInterpreter = new KatePosInterpreter; - break; - - default: - break; - } - - if (retPosInterpreter) - retPosInterpreter->initialize(info.parameter); - - return(retPosInterpreter); -} - -OggType OggBOSExtractorFactory::getStreamType(OggPage& page) -{ - uint8* type = page.obj()->data+page.obj()->headerLength; - - uint8 i=1; - for (; i< ogg_maxOggType; ++i) { - if (memcmp(type, OggTypeMap[i], MAXIDCHARS) == 0) -// if ((*type) == OggTypeMap[i]) - return ((OggType)i); - } - - return (ogg_unknown); - -} - -OggType OggBOSExtractorFactory::getStreamType(OggPacket& packet) -{ - uint8* type = packet.data(); - - uint8 i=1; - for (; i< ogg_maxOggType; ++i) { - if (memcmp(type, OggTypeMap[i], MAXIDCHARS) == 0) -// if ((*type) == OggTypeMap[i]) - return ((OggType)i); - } - - return (ogg_unknown); -} diff -Nru oggvideotools-0.8a/src/oggBOSExtractorFactory.h oggvideotools-0.9.1/src/oggBOSExtractorFactory.h --- oggvideotools-0.8a/src/oggBOSExtractorFactory.h 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/src/oggBOSExtractorFactory.h 1970-01-01 00:00:00.000000000 +0000 @@ -1,28 +0,0 @@ -#ifndef OGGBOSEXTRACTORFACTORY_H_ -#define OGGBOSEXTRACTORFACTORY_H_ - -#include "oggTypes.h" -#include "granulePosInterpreter.h" -//#include "oggMediaStream.h" -#include "streamExtractor.h" - -class OggBOSExtractorFactory { - -public: - OggBOSExtractorFactory(); - virtual ~OggBOSExtractorFactory(); - - /* - static MediaDecoder* createStreamDecoder(ExtractorInformation& information); - static MediaDecoder* createStreamEncoder(ExtractorInformation& information); - */ - - static bool extractInformation(OggPage& page, ExtractorInformation& information); - static bool extractInformation(OggPacket& packet, ExtractorInformation& information); - static GranulePosInterpreter* extractPositionInterpreter(ExtractorInformation& information); - - static OggType getStreamType(OggPage& page); - static OggType getStreamType(OggPacket& packet); -}; - -#endif /*OGGBOSEXTRACTORFACTORY_H_*/ diff -Nru oggvideotools-0.8a/src/oggCat.cpp oggvideotools-0.9.1/src/oggCat.cpp --- oggvideotools-0.8a/src/oggCat.cpp 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/src/oggCat.cpp 1970-01-01 00:00:00.000000000 +0000 @@ -1,795 +0,0 @@ -/* - * oggCat is a command line tool, to concatenate video streams - * - * Copyright (C) 2008 Joern Seger - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - * - */ - -#ifdef __WIN32 -#define __GNU_LIBRARY__ -#include "../win32/getopt_win.h" -#endif - -#include -#include -#include -#include -#include - -#include -#include - -#include "definition.h" -#include "helper.h" -#include "fileRepository.h" -#include "oggPacket.h" -#include "streamMux.h" -#include "streamSerializer.h" -#include "streamConfig.h" -#include "oggTypes.h" - -#include "cmdlineextractor.h" -#include "theoraStreamParameter.h" -#include "vorbisStreamParameter.h" -#include "wishList.h" -#include "hookHandler.h" -#include "videoHook.h" -#include "audioHook.h" -#include "exception.h" -#include "log.h" - -/* get the next file - * within this function, the next stream serializer is created. - * The configuration of this serializer is compared with the - * configuration of the given configuration, and a matching table - * is created (i.e. a theora stream with a certain configuration - * may be on an other stream position, than on the first stream) - * if there is no match found, the function returns false. - * If there is a match found, the packets created by the serializer - * should be remarked from the actual stream ID to the stream ID - * of the output file. - * */ -bool getNextFile(std::string& fileName, StreamSerializer* &serializer, - std::vector& origConfigList, std::vector& streamMap) -{ - serializer = new StreamSerializer; - - if (!serializer->open(fileName)) { - logger.error() << "Unable to open file <" << fileName << "> \n"; - delete serializer; - serializer = 0; - return (false); - } - - std::vector actConfigList; - - serializer->getStreamConfig(actConfigList); - - uint32 matchCounter(0); - uint32 origCounter(0); - - streamMap.resize(actConfigList.size(), 255); - - bool vorbisFound(false); - bool theoraFound(false); - - for (uint32 i(0); i\n"; - delete serializer; - serializer = 0; - return (false); - } - // detele the config list explicitly - - return (true); -} - -void printHelpScreen(const std::string& progName) -{ - logger.error() << "usage: " << progName << " [Options]" - << " [ [ ... ] ]\n" - << " -- package and version \"" << PACKAGE_STRING << "\"\n\n" - << "Options:\n" << " -p presize cutting (-pa for audio only)\n" - << " -d datarate of output stream\n" - << " -q video quality of output stream\n" - << " -D datarate of output audio stream\n" - << " -Q audio quality of output stream\n" - << " -s video size (e.g. 240x160)\n" - << " -f video framerate\n" << " -F audio Sample rate\n" - << " -N channel numbers\n" - << " -x no existens check for output file (for interactive usage)\n" - << " -rv reencode video stream\n"<< "\n"; -} - -void analyseVideoTranscoding(WishList& wishList, - TheoraStreamParameter* theoraConfigInput, - TheoraStreamParameter* theoraConfigOutput) -{ - /* first we believe the output should be equal for all - * parameters that are not explicitly changed */ - (*theoraConfigOutput) = (*theoraConfigInput); - - if (wishList.changeVideoDatarate) { - if (theoraConfigInput->videoBitrate != wishList.videoDatarate) { - theoraConfigOutput->videoBitrate = wishList.videoDatarate; - theoraConfigOutput->videoQuality = 0; - } - } - - if (wishList.changeVideoQuality) { - if (theoraConfigInput->videoQuality != wishList.videoQuality) { - theoraConfigOutput->videoBitrate = 0; - theoraConfigOutput->videoQuality = wishList.videoQuality; - } - } - - if (wishList.changeSize) { - if ( (theoraConfigInput->pictureX != wishList.width ) - || (theoraConfigInput->pictureY != wishList.height ) - || (theoraConfigInput->aspectRatioNum != 1 ) - || (theoraConfigInput->aspectRatioDenom != 1 )) { - - theoraConfigOutput->pictureX = wishList.width; - theoraConfigOutput->pictureY = wishList.height; - - theoraConfigOutput->calculateFrame(); - - /* no reason for using another aspect ratio than 1:1, are there? */ - theoraConfigOutput->aspectRatioDenom = 1; - theoraConfigOutput->aspectRatioNum = 1; - - } - } - - if (wishList.changeFramerate) { - - if ( ( (theoraConfigOutput->framerateNum != wishList.framerateNum ) - || (theoraConfigOutput->framerateDenom - != wishList.framerateDenom ) ) - && ( (theoraConfigOutput->framerateNum*1.0 ) - / (theoraConfigOutput->framerateDenom*1.0 ) - != (wishList.framerateNum*1.0 ) - / (wishList.framerateDenom*1.0 ) )) { - theoraConfigOutput->framerateNum = wishList.framerateNum; - theoraConfigOutput->framerateDenom = wishList.framerateDenom; - } - } - -} - -void analyseAudioTranscoding(WishList& wishList, - VorbisStreamParameter* vorbisConfigInput, - VorbisStreamParameter* vorbisConfigOutput) -{ - /* first we believe the output should be equal for all - * parameters, that are not explicitly changed */ - (*vorbisConfigOutput) = (*vorbisConfigInput); - - if (wishList.changeAudioDatarate) { - if (vorbisConfigOutput->datarate != wishList.audioDatarate) { - vorbisConfigOutput->datarate = wishList.audioDatarate; - } - } - - if (wishList.changeAudioSamplerate) { - if (vorbisConfigOutput->samplerate != wishList.audioSamplerate) { - vorbisConfigOutput->samplerate = wishList.audioSamplerate; - } - - } - - if (wishList.changeAudioChannels) { - if (vorbisConfigOutput->channels != wishList.audioChannels) { - vorbisConfigOutput->channels = wishList.audioChannels; - } - - } - return; -} - - -int oggCatCmd(int argc, char* argv[]) -{ - std::string programName(argv[0]); - std::string outputFile; - - WishList wishList; - - bool usePresizeVideoCutting(false); - bool usePresizeAudioCutting(false); - - std::vector videoComments; - bool withVideoComments( false); - - std::vector audioComments; - bool withAudioComments( false); - - bool reencodeVideo(false); - bool reencodeAudio(true); - - bool existenceTest(true); - - srand(time(0)); - - int opt; - while ((opt = getopt(argc, argv, "hp:d:q:o:D:s:f:F:N:tC:c:r:x")) != EOF) - - switch (opt) { - - case 'h': - case '?': - printHelpScreen(programName); - exit(-1); - - case 'o': - outputFile = std::string(optarg); - break; - - case 'p': - if (optarg[0] == 'a') - usePresizeAudioCutting = true; - else { - usePresizeVideoCutting = true; - usePresizeAudioCutting = true; - } - break; - - case 'd': - wishList.videoDatarate = CmdlineExtractor::atoi(optarg); - wishList.changeVideoDatarate = true; - break; - - case 'D': - wishList.audioDatarate = CmdlineExtractor::atoi(optarg); - wishList.changeAudioDatarate = true; - break; - - case 'q': - wishList.videoQuality = CmdlineExtractor::atoi(optarg); - wishList.changeVideoQuality = true; - break; - - case 's': { - std::deque framesize; - CmdlineExtractor::extractUint32(framesize, optarg, 'x'); - if (framesize.size() != 2) { - logger.error() - << "please specify the size in the following way: -s320x480\n"; - exit( -1); - } - wishList.width = framesize[0]; - wishList.height = framesize[1]; - wishList.changeSize = true; - break; - - } - - case 'f': { - std::deque framerate; - CmdlineExtractor::extractUint32(framerate, optarg, ':'); - - if (framerate.size() == 1) { - wishList.framerateNum = framerate[0]; - wishList.framerateDenom = 1; - wishList.changeFramerate = true; - break; - } - - if (framerate.size() == 2) { - wishList.framerateNum = framerate[0]; - wishList.framerateDenom = (framerate[1] == 0 ) ? 1 - : framerate[1]; - wishList.changeFramerate = true; - break; - } - logger.error() - << "please specify the framerate in the following way -f25:2 or -f24\n"; - exit( -1); - - break; - - } - - case 'F': - wishList.audioSamplerate = CmdlineExtractor::atoi(optarg); - wishList.changeAudioSamplerate = true; - break; - - case 'N': - wishList.audioChannels = CmdlineExtractor::atoi(optarg); - wishList.changeAudioChannels = true; - break; - - case 't': - wishList.stretch = true; - break; - - case 'c': - withVideoComments = true; - CmdlineExtractor::extractCommentPairs(videoComments, optarg, ';', - '='); - break; - - case 'C': - withAudioComments = true; - CmdlineExtractor::extractCommentPairs(audioComments, optarg, ';', - '='); - break; - - case 'r': - switch (optarg[0]) { - case 'a': - reencodeAudio = true; - break; - case 'v': - reencodeVideo = true; - break; - } - break; - - case 'x': - existenceTest = false; - break; - } - - argc -= optind; - argv += optind; - - /* There are two possibilities to get the output file - * "old" version is via -o option. In this case the output file is - * not empty. In the other case the output file is given as the first - * argument (except the options). */ - if (outputFile.empty()) { - if (argc > 1) { - - outputFile = std::string(argv[0]); - argc -= 1; - argv += 1; - - } else { - printHelpScreen(programName); - exit(-1); - } - } - - if (existenceTest && check_file_exists(outputFile)) - exit(0); - - if (argc < 2) { - printHelpScreen(programName); - exit(-1); - } - - logger.debug() << "Output file is : "< originalConfigList; - StreamSerializer* serializer = new StreamSerializer; - - if (!serializer->open(baseFile)) { - logger.error() << "Can not open file <" << baseFile << ">\n"; - exit(-1); - } - - /* read the stream configuration */ - serializer->getStreamConfig(originalConfigList); - - /* we create a vector for the input stream and set every - * value to 255 (means: ignore this stream). - * If the stream is used, the value added is the stream, where this - * input stream should be mapped to */ - std::vector streamMap; - streamMap.resize(originalConfigList.size(), 255); - - /* These are the information ordered, by the stream IDs from the input stream */ - std::vector hookList; - std::vector muxerInformation; - - uint32 theoraStreamNo(255); - uint32 vorbisStreamNo(255); - - bool foundTheora(false); - bool foundVorbis(false); - - uint8 streamCounter( 0); - uint32 startInputfiles(1); - /* create the first resize round */ - - for (uint32 i=0; iforceReencoding(); - - /* here, we configure things, that do not change - * the transcoding process (alpha blend etc) */ - VideoHook::Config videoHookConfig; - videoHookConfig.stretch = wishList.stretch; - - /* configure the video hook */ - vHook->configureProcess(videoHookConfig); - - hookList.push_back(vHook); - - /* We only need these information for the information printout */ - std::vector decoderComments; - - /* configure encoder config (StreamConfig/OggComment here) */ - vHook->setDecoderConfig(decoderConfig, decoderComments); - - /* grap the information extracted by the decoder */ - theoraDecoderConfig - = static_cast(decoderConfig.parameter); - - /* create a config for the output stream and keep a pointer */ - theoraEncoderConfig = new TheoraStreamParameter; - - analyseVideoTranscoding(wishList, theoraDecoderConfig, - theoraEncoderConfig); - - if (reencodeVideo) - theoraEncoderConfig->calculateFrame(); - - if (!withVideoComments) - videoComments = decoderComments; - - /* add the pointer to the configuration */ - encoderConfig.parameter = theoraEncoderConfig; - - /* the decoder Comments are used as well in case, keepComments - * is set within the HookHandler */ - vHook->setEncoderConfig(encoderConfig, videoComments); - - /* the configuration ID must match the stream ID */ - muxerInformation.push_back(encoderConfig); - - /* calculate how to handle the input, to create the correct output */ - vHook->initAndConnect(); - - /* set the stream ID, to which this stream should be maped to */ - streamMap[i] = streamCounter; -// theoraStreamID = streamCounter; - - streamCounter++; - - } else { - logger.warning() - << "oggCat found more than one theora stream, only the first stream is handled\n"; - } - continue; - } - - if (decoderConfig.type == ogg_vorbis) { - if (foundVorbis == false) { - StreamConfig encoderConfig; - - VorbisStreamParameter* vorbisEncoderConfig(0); - VorbisStreamParameter* vorbisDecoderConfig(0); - - foundVorbis = true; - - AudioHook* aHook(new AudioHook(streamCounter, false, true )); - hookList.push_back(aHook); - - /* We only need these information for the information printout */ - std::vector decoderComments; - - /* configure encoder config (StreamConfig/OggComment here) */ - aHook->setDecoderConfig(decoderConfig, decoderComments); - - /* create a config for this stream */ - vorbisEncoderConfig = new VorbisStreamParameter; - - /* */ - vorbisDecoderConfig - = static_cast(decoderConfig.parameter); - - /* */ - encoderConfig.parameter = vorbisEncoderConfig; - - analyseAudioTranscoding(wishList, vorbisDecoderConfig, - vorbisEncoderConfig); - - /* the decoder Comments are used as well in case, keepComments - * is set within the HookHandler */ - aHook->setEncoderConfig(encoderConfig, videoComments); - - /* calculate how to handle the input, to create the correct output */ - aHook->initAndConnect(); - - muxerInformation.push_back(encoderConfig); - - /* set the stream ID, to which this stream should be maped to */ - streamMap[i] = streamCounter; -// vorbisStreamID = streamCounter; - - streamCounter++; - } else { - logger.warning() - << "oggCat found more than one vorbis stream, only the first stream is handled\n"; - } - continue; - } - -// logger.error() -// << "There is actually no stream handler available to resize this stream \n"; - } - - logger.info() << "Output Configuration: " << std::endl - << "--------------------- " << std::endl; - - for (uint32 i(0); i< hookList.size(); ++i) { - logger.info() << hookList[i]->encoderConfiguration() << std::endl; - } - - logger.info() << "Mapping\n"; - for (uint32 i(0); iavailable() ) { - time = serializer->getNextPacket(packet); - - logger.info() << " " << time << " \r"; - - uint32 hookStreamID = streamMap[packet.getStreamNo()]; - - if (hookStreamID == 255) - continue; - - HookHandler& hook(*hookList[hookStreamID]); - - hook << packet; - - while (hook.available()) { - hook >> packet; - streamCreate << packet; - } - } - - logger.info() << "\n"; - // end of the road - delete serializer; - - // handle the other files given with the arguments list - for (uint32 j(startInputfiles); j<(uint32)argc; ++j) { - - StreamSerializer serializer; - - /* try to open the file. If file is not available switch to the next one */ - std::string filename(argv[j]); - if (!serializer.open(filename)) { - logger.error() << "Can not open file <" << filename << ">\n"; - continue; - } - - logger.info() << "Concatenating file <"<"< ConfigList; - - /* read the stream configuration of the actual file */ - serializer.getStreamConfig(ConfigList); - - foundTheora = false; - foundVorbis = false; - - /* create a new stream Map */ - streamMap.clear(); - streamMap.resize(ConfigList.size(), 255); - - for (uint32 l( 0); lgetType() == ogg_theora) && (foundTheora - == false)) { - foundTheora = true; -// logger.debug() << "Theora found ("<< l <<") -> "<(*hookList[k]); - - /* We only need these information for the information printout */ - std::vector decoderComments; - - /* configure encoder config (StreamConfig/OggComment here) */ - vHook.setDecoderConfig(decoderConfig, decoderComments); - /* as not every stream is de- and encoded, the encoder - * may be confused */ - vHook.resetEncoder(); - - /* calculate how to handle the input, to create the correct output */ - vHook.initAndConnect(); - - /* set the stream ID, to which this stream should be maped to */ - streamMap[l] = k; - - newStreamCounter++; - - } - continue; - } - } - - if (decoderConfig.type == ogg_vorbis) { - /* run through the stream map to find the original stream, - * this stream should be mapped to */ - for (uint32 k(0); kgetType() == ogg_vorbis) && (foundVorbis - == false)) { - foundVorbis = true; -// logger.debug() << "Vorbis found ("<< l <<") -> "<(*hookList[k]); - - /* We only need these information for the information printout */ - std::vector decoderComments; - - /* configure encoder config (StreamConfig/OggComment here) */ - aHook.setDecoderConfig(decoderConfig, decoderComments); - - /* calculate how to handle the input, to create the correct output */ - aHook.initAndConnect(); - - /* set the stream ID, to which this stream should be maped to */ - streamMap[l] = k; - - newStreamCounter++; - - } - continue; - } - -// logger.error() -// << "There is actually no stream handler available to resize this stream \n"; - } - } - - if (streamCounter != newStreamCounter) { - logger.error() << "File <"< does not carry enough streams\n"; - continue; - } - - - logger.info() << "Mapping\n"; - for (uint32 i(0); i> packet; - streamCreate << packet; - } - } - - serializer.close(); - - } - - /* flush all data */ - for (uint32 i(0); iflush(); - - while (hookList[i]->available()) { - (*hookList[i]) >> packet; - streamCreate << packet; - } - - delete hookList[i]; - - } - - /* set end of stream and do everything neccessary */ - streamCreate.setEndOfStream(); - - streamCreate.close(); - - logger.info() << std::endl; - - return (0); -} - -int main(int argc, char* argv[]) -{ - try { - return oggCatCmd(argc, argv); - } catch (OggException & e) { - logger.error() << "Fatal error: " << e.what() << std::endl; - return -1; - } -} - diff -Nru oggvideotools-0.8a/src/oggComment.cpp oggvideotools-0.9.1/src/oggComment.cpp --- oggvideotools-0.8a/src/oggComment.cpp 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/src/oggComment.cpp 1970-01-01 00:00:00.000000000 +0000 @@ -1,9 +0,0 @@ -#include "oggComment.h" - -OggComment::OggComment() -{ -} - -OggComment::~OggComment() -{ -} diff -Nru oggvideotools-0.8a/src/oggComment.h oggvideotools-0.9.1/src/oggComment.h --- oggvideotools-0.8a/src/oggComment.h 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/src/oggComment.h 1970-01-01 00:00:00.000000000 +0000 @@ -1,16 +0,0 @@ -#ifndef OGGCOMMENT_H_ -#define OGGCOMMENT_H_ - -#include - -class OggComment { -public: - OggComment(); - virtual ~OggComment(); - - std::string tag; - std::string value; - -}; - -#endif /*OGGCOMMENT_H_*/ diff -Nru oggvideotools-0.8a/src/oggCut.cpp oggvideotools-0.9.1/src/oggCut.cpp --- oggvideotools-0.8a/src/oggCut.cpp 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/src/oggCut.cpp 1970-01-01 00:00:00.000000000 +0000 @@ -1,322 +0,0 @@ -/* - * oggCut is a command line tool, to cut a video stream - * - * Copyright (C) 2008 Joern Seger - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - * - */ - -#ifdef __WIN32 -#define __GNU_LIBRARY__ -#include "../win32/getopt_win.h" -#endif - -#include -#include -#include -#include -#include - -#include "fileRepository.h" -#include "streamSerializer.h" -#include "streamMux.h" -#include "oggEncoder.h" -#include "oggStreamEncoder.h" -#include "exception.h" -#include "log.h" - -struct ListElement { - double time; - OggPacket packet; - ListElement(double _time, OggPacket _packet) : - time(_time), packet(_packet) { - } -}; - -static std::list packetList; -static double bufferTime(0.5); // buffer 500 ms - -uint32 _atoi(const char* data) -{ - std::stringstream stream; - uint32 value; - - stream << data; - stream >> value; - - return(value); -} - -void printHelpScreen(const std::string& progName) -{ - logger.error() << "usage: "<< progName << "[options] \n" - << " -- package and version \"" << PACKAGE_STRING << "\"\n\n" - << "Options are:\n" - << " -s time : Start time in milliseconds from start\n" - << " if no start time is given, 0 is assumed\n" - << " -e time : End time in milliseconds\n" - << " if no end time or -1 is given, the end of the\n" - << " file is assumed\n" - << " -l length : Length of the cut area\n" - << " -i input : Input file (alternative) \n" - << " -o output : Output file (alternative) \n"; -} - -void bufferedOutput(StreamMux& streamMux, double time, OggPacket packet) -{ - ListElement elem(time, packet); - - std::list::iterator iter(packetList.begin()); - while ((iter != packetList.end()) && (elem.time < iter->time)) - ++iter; - packetList.insert(iter, elem); - - double lastTime(packetList.front().time); - while ((lastTime - packetList.back().time) > bufferTime) { - streamMux << packetList.back().packet; - packetList.pop_back(); - } -} - -void flushBuffer(StreamMux& streamMux) -{ - while (!packetList.empty()) { - streamMux << packetList.back().packet; - packetList.pop_back(); - } -} - -/* TODO: take offset into account - * The offset should be taken into account, so that the audio stream is - * exactly as long as the video. - * - */ - -int oggCutCmd(int argc, char* argv[]) -{ - int32 startTime(0); - int32 endTime(-1); - int32 length(-1); - - std::string inputFile; - std::string outputFile; - std::string programName(argv[0]); - - srand(time(0)); - - int opt; - while ((opt = getopt(argc, argv, "hi:o:s:e:l:")) != EOF) - - switch (opt) { - - case 'h': - printHelpScreen(programName); - exit(-1); - - case 'i': - inputFile = std::string(optarg); - break; - - case 'o': - outputFile = std::string(optarg); - break; - - case 's': - startTime = _atoi(optarg); - break; - - case 'e': - endTime = _atoi(optarg); - break; - - case 'l': - length = _atoi(optarg); // yes, I know the atoi bug - break; - - } - - argc -= optind; - argv += optind; - - if ((argc > 2)) { - printHelpScreen(programName); - exit (-1); - } - - if (argc > 0) { - inputFile = std::string(argv[0]); - } - - if (argc > 1) { - outputFile = std::string(argv[1]); - } - - /* Handle wrong parameter and parameter combinations */ - if (inputFile.empty() || outputFile.empty()) { - printHelpScreen(programName); - exit (-1); - } - - if (startTime < 0) { - logger.error() << "Error: start time is invalid\n"; - exit (-1); - } - - if ((endTime > 0) && (length > 0)) { - logger.warning() << "Warning: end time and length set, ignoring length\n"; - } - - if (endTime == -1) { - if (length > 0) { - endTime = startTime + length; - } else { - if (startTime == 0) { - logger.error() << "No need to cut, just use copy!\n"; - exit (-1); - } - } - } - - double startTimeSec(startTime*1.0/1000.0); - double endTimeSec(endTime*1.0/1000.0); - - /* create a stream serializer */ - StreamSerializer streamSerializer; - bool foundTheora(false); - - /* try to open the file. If there is no such file, abort with a message */ - if (!streamSerializer.open(inputFile)) { - logger.error() << "Error: can not open file <"<\n"; - exit (-1); - } - - /* create a repository for the new files and give the repository to the stream Muxer */ - FileRepository* outfile = new FileRepository(outputFile, MediaUnit::write); - StreamMux streamMux(outfile); - - /* grep the configuration for all streams */ - std::vector streamConfigList; - streamSerializer.getStreamConfig(streamConfigList); - - /* create the time synchronizer, which holds the time offset for every stream */ - std::vector offset; - offset.resize(streamConfigList.size()); - - /* Output some stream information and reset the offset */ - for (uint32 i(0); itoString(); - if (streamConfigList[i].type == ogg_theora) - foundTheora = true; - offset[i] = -1; - } - - /* configure the output streams */ - streamMux.configureStreams(streamConfigList); - - /* */ - OggPacket packet; - double time; - double beginTime(0); - bool startMarker(false); - - /* copy the stream if the packets are within the cut area - * and the first video keyframe has been found */ - while (streamSerializer.available()) { - - /* get the actual packet and it's time information */ - /* the time is meant to be the presentation start time */ - time = streamSerializer.getNextPacket(packet); - -#ifdef DEBUG - if (packet.getStreamType() == ogg_theora) { - logger.debug() << "theora "; - } - - if (packet.getStreamType() == ogg_vorbis) { - logger.debug() << "vorbis "; - } - - logger.debug() << time << std::endl; -#endif - - /* look deeper into the packets, if the belong into the cutting - * area */ - if ((time >= startTimeSec) && (time < endTimeSec)) { - - /* are we within our cut interval and found the first keyframe? */ - if (!startMarker) { - - /* we are doing packet analysation by ourselfs - may be changed */ - if ((!foundTheora) || ((packet.getStreamType() == ogg_theora) - &&(!(packet.data()[0] & 0x40)))) { - startMarker = true; - beginTime = time; - offset[packet.getStreamNo()] = time; - } - } - - /* have we found the real starting position? */ - if (startMarker) { - - /* if this stream has no offset calculated, do it now */ - if (offset[packet.getStreamNo()] < 0) { - offset[packet.getStreamNo()] = time; -#ifdef DEBUG - logger.debug() << "offset for stream No <"<<(int)packet.getStreamNo() - <<"> is "<= endTimeSec) { - break; - } - } - - /* first flush all buffers to be ordered correct */ - flushBuffer(streamMux); - - /* set the end of the stream and close the file, - * which flushed the all internal stream encoder to flush all pages */ - streamMux.setEndOfStream(); - streamMux.close(); - - /* close the stream serializer with a big thank you */ - streamSerializer.close(); - - return(0); -} - -int main(int argc, char* argv[]) -{ - try { - return oggCutCmd(argc, argv); - } catch (OggException & e) { - logger.error() << "Fatal error: " << e.what() << std::endl; - return -1; - } -} - diff -Nru oggvideotools-0.8a/src/oggDecoder.cpp oggvideotools-0.9.1/src/oggDecoder.cpp --- oggvideotools-0.8a/src/oggDecoder.cpp 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/src/oggDecoder.cpp 1970-01-01 00:00:00.000000000 +0000 @@ -1,94 +0,0 @@ -/* - * OggDecoder - * - * Copyright (C) 2008 Joern Seger - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - * - */ - -#include -#include -#include - -#include "oggDecoder.h" -#include "oggHeader.h" -#include "log.h" - -#define min(a,b) (((a)<(b))?(a):(b)); - -OggDecoder::OggDecoder() - : oggRingbuffer(71000) // max page size plus 4KB read size -{ - setConfigured(); -} - -OggDecoder::~OggDecoder() -{ -} - -void OggDecoder::clear() -{ - /* nothing to be done here */ -} - -void OggDecoder::getNextPages() -{ - uint8* data(0); - uint32 length(0); - - while (oggRingbuffer.getNextPage(data, length)) { - - uint32 headerLength = sizeof(OggHeader) + ((OggHeader*)data)->tableSegments; - uint32 bodyLength = length - headerLength; - OggPage page(new OggPageInternal(data, headerLength, bodyLength)); - - oggPageList.push_back(page); - - data = 0; - - setAvailable(); - } -} - -OggDecoder& OggDecoder::operator<<(RawMediaPacket& mediaPacket) -{ - /* insert the raw data into the ring buffer*/ - oggRingbuffer.addData(mediaPacket.getData(), mediaPacket.size()); - - /* extract ogg pages */ - getNextPages(); - - return(*this); -} - -OggDecoder& OggDecoder::operator>>(OggPage& page) -{ - - if (isAvailable()) { - page = oggPageList.front(); - oggPageList.pop_front(); - if (oggPageList.empty()) - setEmpty(); - } else - logger.error() << "OggDecoder::operator>>: no page available, insert a packet first\n"; - - return(*this); -} - -uint32 OggDecoder::space() -{ - return(oggRingbuffer.getAvailable()); -} diff -Nru oggvideotools-0.8a/src/oggDecoder.h oggvideotools-0.9.1/src/oggDecoder.h --- oggvideotools-0.8a/src/oggDecoder.h 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/src/oggDecoder.h 1970-01-01 00:00:00.000000000 +0000 @@ -1,95 +0,0 @@ -/* - * OggDecoder - * - * Copyright (C) 2008 Joern Seger - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - * - */ - -#ifndef OGGDECODER_H_ -#define OGGDECODER_H_ - -#include -#include - -#include "mediaDecoder.h" -#include "rawMediaPacket.h" -#include "oggPage.h" -#include "oggRingbuffer.h" - -//! class to decode a raw bytestream into Ogg packets -/*! This class awaits raw packets (in form of a RawMediaPacket). These - * raw packets were inserted into a ringbuffer, from which the Ogg packets - * are extracted. - * - * When a raw packet has been inserted into the ring buffer, the OggDecoder - * tries to extract one or more Ogg packets immediately. Therefor in normal - * operations, the ring buffer can not overflow, if the ring buffer size is - * big enough to hold a full Ogg Packet. - * - * - * Example: - \code -RawMediaPacket rawPacket; -OggPage oggPage; - -FileRepository repository("myfile.ogg", MediaUnit::read); -OggDecoder oggDecoder; - -repository >> rawPacket; -oggDecoder << rawPacket; - -if (oggDecoder.isAvailable()) - oggDecoder >> oggPage; -\endcode - * */ -class OggDecoder : public MediaDecoder { - -protected: - OggRingbuffer oggRingbuffer; - std::list oggPageList; - - void getNextPages(); - -public: - OggDecoder(); - virtual ~OggDecoder(); - - //! Stream input method - /*! This method inserts a RawMediaPacket, which is just a bunch of - * raw bytes, into the decoder. When a new packet arrives, the - * decoder tries to extract the oggPages, which are fully available. - * The oggPages will then be buffered within a oggPageList. - * The uninterpreted data is stored until the next rawdata is received. - * @param mediaPacket This is the raw media packet, created by a repository. - * @return A reference to the actual OggDecoder object. - * */ - virtual OggDecoder& operator<<(RawMediaPacket& mediaPacket); - - //! Stream output method - /*! This method returns the next oggPage within the list of OggPages. - * If there is no page availabe, this method leaves the OggPage object untoched. - * @param oggPage the oggPage to be filled. - * @return A reference to the actual OggDecoder object. - * */ - virtual OggDecoder& operator>>(OggPage& page); - - virtual void clear(); - - uint32 space(); -}; - -#endif /*OGGDECODER_H_*/ diff -Nru oggvideotools-0.8a/src/oggDump.cpp oggvideotools-0.9.1/src/oggDump.cpp --- oggvideotools-0.8a/src/oggDump.cpp 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/src/oggDump.cpp 1970-01-01 00:00:00.000000000 +0000 @@ -1,366 +0,0 @@ -/* - * oggDump will dump out an ogg file either by packets or by pages - * - * Copyright (C) 2008 Joern Seger - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - * - */ - -#ifdef __WIN32 -#define __GNU_LIBRARY__ -#include "../win32/getopt_win.h" -#endif - -#include -#include -#include -#include -#include -#include -#include - -#include "fileRepository.h" -#include "rawMediaPacket.h" -#include "oggDecoder.h" -#include "oggEncoder.h" -#include "oggStreamDecoder.h" -#include "oggPacket.h" -#include "oggBOSExtractorFactory.h" -#include "streamSerializer.h" -#include "exception.h" -#include "log.h" - -struct OutputUnit { - OggEncoder encoder; - FileRepository repository; -}; - -void printHelp(std::string programName) -{ - logger.error() << "usage <"< [options] file" << std::endl; - logger.error() << "Options are:\n" - << " -h : help screen \n" - << " -g : dump pages \n" - << " -p : dump packets \n" - << " -l : information depth; default: 5 (most information)\n" - << " -s : promt for streams to dump\n" - << " -o : output dump information to a file\n"; -} - -void dumpPacketof(std::string& file, uint8 dumpLevel, bool promptForStreams, std::string& outFilename) -{ - /* open the first file to be read */ - std::vector configList; - StreamSerializer serializer; - - std::ofstream outStream; - - /* if there is a filename given, write the data to this file */ - if (!outFilename.empty()) - outStream.open(outFilename.c_str()); - - if (!serializer.open(file)) { - logger.error() << "Can not open file <" << file << ">\n"; - exit(-1); - } - - /* read the stream configuration */ - serializer.getStreamConfig(configList); - - std::vector outputStreamNo; - - for (uint32 i(0); itoString(); - - if (promptForStreams) { - std::cout << "Dump this stream? (y/n) \n"; - char answer; - std::cin >> answer; - - if (answer != 'Y' && answer != 'y') - outputStreamNo.push_back(configList[i].streamNo); - - std::cout << answer << "\n"; - } - } - - OggPacket packet; - double _time; - bool print; - - while (serializer.available()) { - - _time = serializer.getNextPacket(packet); - - print = true; - for (uint32 i(0); i oggStreamDecoderList; - std::vector bosPages; - - /* run through the repository until there is no data left */ - while (!repository.isEndOfFile()) { - - RawMediaPacket rawDecoderPacket; - - /* extract a raw data bunch from the file .. */ - repository >> rawDecoderPacket; - - /* .. and insert it into the ogg decoder */ - oggDecoder << rawDecoderPacket; - - /* are there any complete ogg Pages available ? */ - while (oggDecoder.isAvailable()) { - - OggPage oggPage; - - /* grap the next page */ - oggDecoder >> oggPage; - - /* what ID has this page / what stream does this page belongs to */ - uint32 serialID = oggPage.serialno(); - - if (oggPage.isBOS()) { - - bool addPage(false); - - switch (OggBOSExtractorFactory::getStreamType(oggPage)) { - - case ogg_theora: { - std::cout << "Found theora stream with ID= 0x" << std::hex - << serialID << std::dec << std::endl; - if (promptForStreams) { - std::cout << "Dump this stream? (y/n) \n"; - char answer; - std::cin >> answer; - if (answer == 'Y' || answer == 'y') - addPage = true; - std::cout << answer << "\n"; - } else - addPage = true; - } - break; - - case ogg_vorbis: { - std::cout << "Found vorbis stream with ID= 0x" << std::hex - << serialID << std::dec << std::endl; - if (promptForStreams) { - std::cout << "Dump this stream? (y/n) "; - char answer; - std::cin >> answer; - if (answer == 'Y' || answer == 'y') - addPage = true; - std::cout << answer << "\n"; - } else - addPage = true; - - } - break; - - case ogg_kate: { - std::cout << "Found kate stream with ID= 0x" << std::hex - << serialID << std::dec << std::endl; - if (promptForStreams) { - std::cout << "Dump this stream? (y/n) "; - char answer; - std::cin >> answer; - if (answer == 'Y' || answer == 'y') - addPage = true; - std::cout << answer << "\n"; - } else - addPage = true; - - } - break; - - default: { - std::cout << "Found unknown stream with ID= 0x" << std::hex - << serialID << std::dec << std::endl; - if (promptForStreams) { - std::cout << "Dump this stream? (y/n) \n"; - char answer; - std::cin >> answer; - if (answer == 'Y' || answer == 'y') - addPage = true; - std::cout << answer << "\n"; - } else - addPage = true; - } - break; - } - if (addPage) { - oggStreamDecoderList[serialID] = OggStreamDecoder(); - oggStreamDecoderList[serialID] << oggPage; - bosPages.push_back(oggPage); - } - - } else { - - /* does the user want to dump this stream */ - if (oggStreamDecoderList.find(serialID) != oggStreamDecoderList.end()) { - - if (dumpPages) { - - std::string outputString; - - // are there any bos pages, then print them first - if (!bosPages.empty()) { - for (uint32 j(0); j -#include - -#include "oggEncoder.h" -#include "log.h" - -PageBufferElement::PageBufferElement() - : time(-1), empty(true), interpreter(0) -{ -} - -PageBufferElement::~PageBufferElement() -{ -} - -OggEncoder::OggEncoder() - : withBuffer(false) -{ - setConfigured(); -} - -OggEncoder::~OggEncoder() -{ -} - -/* -void OggEncoder::createJitterBuffer(uint8 numOfStreams) -{ - if (numOfStreams) { - oggBuffer.resize(numOfStreams); - withBuffer = true; - } -} -*/ - -void OggEncoder::flush() -{ - -} - -void OggEncoder::serializePage(OggPage& page) -{ - unsigned char* bunch = new unsigned char[page.length()]; - - if (bunch) { - memcpy(bunch, page.data(), page.length()); - - rawPacketList.push_back(RawMediaPacket(new RawMediaData(bunch, page.length(), false))); - - setAvailable(); - } else - logger.error() << "OggEncoder::operator<<: Out of Memory\n"; - -} - -void OggEncoder::insertNextPage(OggPage& page) -{ - -} - - -OggEncoder& OggEncoder::operator<<(OggPage page) -{ - if (!withBuffer) { - serializePage(page); - return(*this); - } - /* - uint8 streamNo(page.getStreamNo()); - double time(oggBuffer[streamNo].interpreter->getTime(page.granulepos())); - - double nextTime(-2); - uint8 nextStreamNo(0); - - while(!oggBuffer[streamNo].empty) { - - // find the next packet to send out - for(uint32 i(0); i oggBuffer[i].time)) { - nextTime = oggBuffer[i].time; - nextStreamNo = i; - } - } - - // write page to the output buffer - serializePage(oggBuffer[nextStreamNo].page); - - // ... and mark the buffer as empty - oggBuffer[nextStreamNo].empty = true; - - } - - // insert the page into the buffer - oggBuffer[streamNo].page = page; - oggBuffer[streamNo].time = time; - oggBuffer[streamNo].empty = false; - */ - return(*this); -} - -OggEncoder& OggEncoder::operator>>(RawMediaPacket& packet) -{ - if (isEmpty()) { - logger.error() << "OggEncoder::operator>>: no packet available\n"; - return(*this); - } - - packet = rawPacketList.front(); - rawPacketList.pop_front(); - - if (rawPacketList.empty()) - setEmpty(); - - return(*this); -} - - diff -Nru oggvideotools-0.8a/src/oggEncoder.h oggvideotools-0.9.1/src/oggEncoder.h --- oggvideotools-0.8a/src/oggEncoder.h 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/src/oggEncoder.h 1970-01-01 00:00:00.000000000 +0000 @@ -1,71 +0,0 @@ -/* - * OggEncoder - * - * Copyright (C) 2008 Joern Seger - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - * - */ - -#ifndef OGG_ENCODER_H -#define OGG_ENCODER_H - -#include -#include - -#include "mediaEncoder.h" -#include "oggPage.h" -#include "rawMediaPacket.h" -#include "granulePosInterpreter.h" -#include "streamConfig.h" - -class PageBufferElement { - -public: - PageBufferElement(); - virtual ~PageBufferElement(); - - double time; - bool empty; - OggPage page; - GranulePosInterpreter* interpreter; - -}; - -class OggEncoder : public MediaEncoder { - -protected: - bool withBuffer; - std::vector oggBuffer; - std::list rawPacketList; - - void serializePage(OggPage& page); - void insertNextPage(OggPage& page); - void createJitterBuffer(uint8 numOfStreams); - -public: - - OggEncoder(); - virtual ~OggEncoder(); - - void configure(std::vector configInformation); - - void flush(); - - OggEncoder& operator<<(OggPage page); - OggEncoder& operator>>(RawMediaPacket& packet); -}; - -#endif diff -Nru oggvideotools-0.8a/src/oggHeader.h oggvideotools-0.9.1/src/oggHeader.h --- oggvideotools-0.8a/src/oggHeader.h 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/src/oggHeader.h 1970-01-01 00:00:00.000000000 +0000 @@ -1,51 +0,0 @@ -/* - * information about the ogg header - * - * Copyright (C) 2005-2008 Joern Seger - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - * - */ - -#ifndef oggHeader_h -#define oggHeader_h - -#include "definition.h" - -struct OggHeader { - - char ogg[4]; - char version; - - char pack_type:1; - char page_type:1; - char last:1; - char reserved:5; - - int64 position; - uint32 serial; - uint32 pageNo; - uint32 checksum; - uint8 tableSegments; - -} __attribute__ ((packed)); - -struct StreamType { - unsigned char headerType; - char typeName[6]; -} __attribute__ ((packed)); - - -#endif diff -Nru oggvideotools-0.8a/src/oggJoin.cpp oggvideotools-0.9.1/src/oggJoin.cpp --- oggvideotools-0.8a/src/oggJoin.cpp 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/src/oggJoin.cpp 1970-01-01 00:00:00.000000000 +0000 @@ -1,228 +0,0 @@ -/* - * oggJoin will multiplex a number of video and audiostreams to one ogg file - * - * Copyright (C) 2008 Joern Seger - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - * - */ - -#include -#include -#include -#include - -#include "fileRepository.h" -#include "oggDecoder.h" -#include "oggEncoder.h" -#include "oggStreamDecoder.h" -#include "vorbisPosInterpreter.h" -#include "theoraPosInterpreter.h" -#include "oggPage.h" -#include "oggBOSExtractorFactory.h" -#include "exception.h" -#include "log.h" - -struct JoinElement { - FileRepository repository; - OggDecoder decoder; - GranulePosInterpreter* position; - OggPage nextPage; - bool closed; -}; - -bool getNextPage(JoinElement* element, OggPage& page) -{ - if (element->decoder.isAvailable()) { - /* if there is a packet available, get it */ - element->decoder >> page; - return(true); - } - - /* there is actually no packet available, so grap a data - * bunch and transfer it into the decoder and see if we can - * then extract a packet */ - - while (element->decoder.isEmpty()) { - - /* if we can not grap any more data, return false */ - if (element->repository.isEndOfFile()) { - element->closed = true; - return(false); - } - - /* transfer a new raw packet */ - RawMediaPacket rawPacket; - element->repository >> rawPacket; - element->decoder << rawPacket; - - } - - element->decoder >> page; - return(true); -} - -void printHelpScreen(const std::string& progName) -{ - logger.error() << "usage: " << progName - << " [ [ ... ] ]\n" - << " -- package and version \"" << PACKAGE_STRING << "\"\n\n" - << "oggJoin will multiplex a number of ogg streams into \n" - << "one file. Actually every stream must be placed in a \n" - << "single file.\n\n"; -} - -int oggJoinCmd(int argc, char* argv[]) -{ - - std::string help("-h"); - if ((argc > 1) && (help == argv[1])) { - printHelpScreen(argv[0]); - exit(-1); - } - - - if (argc < 3) { - printHelpScreen(argv[0]); - exit(-1); - } - - std::vector decoderList; - - /* open the repository and encoder for the joined file */ - FileRepository outRepository = FileRepository(argv[1], MediaUnit::write); - OggEncoder oggEncoder; - - /* run through the file list given by the command line */ - for (uint32 i(2); i < (uint32)argc; ++i) { - - /* create a new element for one stream */ - JoinElement* newElement = new JoinElement; - newElement->closed = false; - newElement->repository = FileRepository(argv[i], MediaUnit::read); - - /* if we can not open the file, do not insert it in the decoder list */ - if (newElement->repository.isEndOfFile()) { - logger.warning() << "Warning: can not open file <"< for reading\n\n"; - delete newElement; - } else { - - /* get the first packet bunch from the file and place it into the decoder */ - RawMediaPacket packet; - newElement->repository >> packet; - newElement->decoder << packet; - - /* there must be at least the bos page */ - OggPage page; - newElement->decoder >> page; - - ExtractorInformation config; - if (!OggBOSExtractorFactory::extractInformation(page,config)) { - logger.warning() << "Warning: <"< is not a valid ogg file"; - newElement->repository.close(); - delete newElement; - continue; - } - - newElement->position = OggBOSExtractorFactory::extractPositionInterpreter(config); - - /* if we found a valid stream, create the rest of the infrastructure */ - if (newElement->position != 0) { - - /* insert the BOS page into the new file (the first pages must be the BOS - * pages) */ - oggEncoder << page; - - /* request the next page */ - getNextPage(newElement, newElement->nextPage); - decoderList.push_back(newElement); - } else { - logger.warning() << "Warning: can not interpret ogg stream\n"; - /* we can not interpret the granual position of this stream, - * so we close it */ - newElement->repository.close(); - delete newElement; - } - } - } - - if (decoderList.empty()) { - logger.error() << "Error: could not open any stream - abort\n"; - exit(-1); - } - - uint32 closeCounter(0); - - /* run through the different streams and assemble them until there are no more pages */ - while (closeCounter < decoderList.size()) { - - double smallestTime(-10); - uint32 smallestID(0); - - /* find the element, that should be inserted into the new file */ - for (uint32 i(0); iclosed) - continue; - - double testTime(decoderList[i]->position->getTime(decoderList[i]->nextPage.granulepos())); - if ((smallestTime < -9) || (smallestTime > testTime)) { - smallestTime = testTime; - smallestID = i; - } - } - - /* insert the next page into the new file */ - oggEncoder << decoderList[smallestID]->nextPage; - - /* try to get the next page */ - if (!getNextPage(decoderList[smallestID], decoderList[smallestID]->nextPage)) { - - /* if this was the last page in this stream, clean up */ - decoderList[smallestID]->closed = true; - decoderList[smallestID]->repository.close(); - delete decoderList[smallestID]->position; - - closeCounter++; - } - - while (oggEncoder.isAvailable()) { - RawMediaPacket outPacket; - oggEncoder >> outPacket; - outRepository << outPacket; - } - } - - /* cleanup the heap */ - for (uint32 i(0); i -#include -#include - -#include "fileRepository.h" -#include "streamSerializer.h" -#include "exception.h" -#include "log.h" - -void printHelpScreen(std::string& progName) -{ - logger.error() << "usage: " << progName << " \n"; -} - -int oggLengthCmd(int argc, char* argv[]) -{ - - std::string inputFile; - std::string programName(argv[0]); - - bool printVorbisExtra(false); - bool printTheoraExtra(false); - - int opt; - while ((opt = getopt(argc, argv, "hvtVT")) != EOF) - - switch (opt) { - - case 'h': - printHelpScreen(programName); - exit(-1); - - case 'v': - case 'V': - printVorbisExtra = true; - break; - - case 't': - case 'T': - printTheoraExtra = true; - break; - - } - - argc -= optind; - argv += optind; - - if (argc == 1) - inputFile = std::string(argv[0]); - else { - printHelpScreen(programName); - exit(-1); - } - - /* create the stream serializer */ - StreamSerializer streamSerializer; - - /* open the file */ - if (!streamSerializer.open(inputFile)) { - logger.error() << "Error: can not open file <"<\n"; - exit(-1); - } - - /* create the headers */ - std::vector streamConfigList; - streamSerializer.getStreamConfig(streamConfigList); - -// for (uint32 i(0); itoString(); -// } - - OggPacket packet; - double timeVorbis; - double timeTheora; - double time; - double retTime(-1); - - /* copy the stream if the packets are within the cut area - * and the first video keyframe has been found */ - while (streamSerializer.available()) { - - time = streamSerializer.getNextPacket(packet); - - if (time < 0) { - break; - } else if (packet.getStreamType() == ogg_theora) - timeTheora = time; - if (packet.getStreamType() == ogg_vorbis) - timeVorbis = time; - - retTime = time; - - } - - std::cout << (int)(retTime*1000) << std::endl; - - if (printVorbisExtra) - std::cout << " Vorbis End-Time (packet basis): " << (int)(timeVorbis*1000) << std::endl; - - if (printTheoraExtra) - std::cout << " Theora End-Time : " << (int)(timeTheora*1000) << std::endl; - - return((int)(retTime*1000)); -} - -int main(int argc, char* argv[]) -{ - try { - return oggLengthCmd(argc, argv); - } catch (OggException & e) { - logger.error() << "Fatal error: " << e.what() << std::endl; - return -1; - } -} - diff -Nru oggvideotools-0.8a/src/oggPacket.cpp oggvideotools-0.9.1/src/oggPacket.cpp --- oggvideotools-0.8a/src/oggPacket.cpp 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/src/oggPacket.cpp 1970-01-01 00:00:00.000000000 +0000 @@ -1,334 +0,0 @@ -/* - * OggPacket will carry all relevant information of an ogg packet - * - * Copyright (C) 2008 Joern Seger - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - * - */ - -#include -#include -#include - -//#include "theora/theora.h" -#include "oggPacket.h" -#include "log.h" - -OggPacketInternal::OggPacketInternal() - : streamType(ogg_unknown), streamNo(255), streamHeader(false) -{ - packet = 0; - bytes = 0; - packetno = 0; - granulepos = -1; - b_o_s = 0; - e_o_s = 0; -} - -OggPacketInternal* OggPacketInternal::clone() -{ - uint8* data = new uint8[bytes]; - memcpy(data, packet, bytes); - - PacketType packetType(normal); - - if (b_o_s) - packetType = bos; - - if (e_o_s) - packetType = eos; - - OggPacketInternal* pkt = new OggPacketInternal(data, bytes, packetno, granulepos, packetType); - - pkt->streamNo = streamNo; - pkt->streamType = streamType; - pkt->streamHeader = streamHeader; - - return(pkt); -} - -OggPacketInternal::OggPacketInternal(uint8* data, uint32 length, - uint32 packetNo, int64 granulePos, PacketType packetType) - : streamType(ogg_unknown), streamNo(255), streamHeader(false) -{ - packet = data; - bytes = length; - packetno = packetNo; - granulepos = granulePos; - b_o_s = 0; - e_o_s = 0; - - switch (packetType) { - case bos: - b_o_s = 256; - break; - case eos: - e_o_s = 256; - break; - default: {} - } - -} - -OggPacketInternal::~OggPacketInternal() -{ - if (packet) - delete[] packet; -} - -OggPacket::OggPacket() -{ -} - -OggPacket::OggPacket(OggPacketInternal* pagePtr) - : RefObject(pagePtr) -{ -} - -OggPacket::OggPacket(const OggPacket& refObj) - : RefObject(refObj) -{ -} - -OggPacket::~OggPacket() -{ -} - -OggPacket& OggPacket::operator=(const OggPacket& refObj) -{ - if (this == &refObj) - return(*this); - - (*refCounter)--; - - if ((*refCounter) == 0) { - delete refCounter; - delete objPtr; - } - - refCounter = refObj.refCounter; - objPtr = refObj.objPtr; - - (*refCounter)++; - - return(*this); -} - -int64 OggPacket::granulepos() -{ - if (objPtr) - return(objPtr->granulepos); - - return(-2); -} - -void OggPacket::setGranulepos(int64 pos) -{ - if (objPtr) - objPtr->granulepos = pos; -} - -void OggPacket::setStreamHeader() -{ - objPtr->streamHeader = true; -} - -bool OggPacket::isStreamHeader() -{ - return(objPtr->streamHeader); -} - -OggPacket OggPacket::clone() -{ - OggPacketInternal* newPacket = new OggPacketInternal(*objPtr); - - if (newPacket) { - newPacket->packet = new unsigned char[objPtr->bytes]; - memcpy(newPacket->packet, objPtr->packet, objPtr->bytes); - } - - return(OggPacket(newPacket)); -} - -uint32 OggPacket::getPacketNo() -{ - return(objPtr->packetno); -} - -uint32 OggPacket::length() -{ - return(objPtr->bytes); -} - -bool OggPacket::isBOS() -{ - return(objPtr->b_o_s); -} - -bool OggPacket::isEOS() -{ - return(objPtr->e_o_s); -} - -void OggPacket::setBOS() -{ - objPtr->b_o_s = 1; -} - -void OggPacket::setEOS() -{ - objPtr->e_o_s = 1; -} - -void OggPacket::unsetBOS() -{ - objPtr->b_o_s = 0; -} - -void OggPacket::unsetEOS() -{ - objPtr->e_o_s = 0; -} - -/* -ogg_packet OggPacket::toLibogg() -{ - return(*objPtr); -} -*/ -uint8 OggPacket::getStreamNo() -{ - return(objPtr->streamNo); -} - -OggType OggPacket::getStreamType() -{ - return(objPtr->streamType); -} - -void OggPacket::setStreamNo(int8 no) -{ - objPtr->streamNo = no; -} - -void OggPacket::setStreamType(OggType type) -{ - objPtr->streamType = type; -} - -/* -void OggPacket::fromLibogg(ogg_packet pack) -{ - // copy all information including the pointers - objPtr->bytes = pack.bytes; - objPtr->packetno = pack.packetno; - objPtr->granulepos = pack.granulepos; - objPtr->b_o_s = pack.b_o_s; - objPtr->e_o_s = pack.e_o_s; - - objPtr->packet = new uint8[pack.bytes]; - - if (objPtr->packet) { - memcpy(objPtr->packet, pack.packet, pack.bytes); - } - else { - logger.error() << "OggPacket::fromLibogg: out of memory\n"; - } -} -*/ - -uint8* OggPacket::data() -{ - return(objPtr->packet); -} - -/* print levels: - * 1) only data length information - * 2) header information - * 3) additional header information - * 4) header dump - * 5) body dump - */ -std::string OggPacket::print(uint8 level) -{ - std::stringstream retStream; - - retStream << "\nOgg Packet: packet length = " << objPtr->bytes << std::endl; - - if (level < 1) - return(retStream.str()); - - retStream << "\nHeader Information:" - << "\n\tBegin of Stream : "; - - if (objPtr->b_o_s) - retStream << "true"; - else - retStream << "false"; - - retStream << "\n\tEnd of Stream : "; - - if (objPtr->e_o_s) - retStream << "true"; - else - retStream << "false"; - - retStream << "\n\tGranule Position : " << objPtr->granulepos; - retStream << "\n\tPacket Number : " << objPtr->packetno; - - retStream << std::endl; - - if (level < 3) - return(retStream.str()); - - retStream << "\n\tStream Number : " << (int)objPtr->streamNo; - retStream << "\n\tStream Type : "; - - switch (objPtr->streamType) { - case ogg_vorbis: - retStream << "Vorbis"; - break; - case ogg_theora: - retStream << "Theora"; - break; - case ogg_kate: - retStream << "Kate"; - break; - case ogg_unknown: - default: - retStream << "unknown"; - break; - } - retStream << std::endl; - - if (level < 4) - return(retStream.str()); - - retStream << "\nPacket Hex dump:"; - - for (int32 c(0); cbytes; ++c) { - if ((c%16) == 0) - retStream << std::endl; - retStream << " " << std::hex; - if (((unsigned int) (objPtr->packet[c])) < 16) - retStream << "0"; - retStream << (unsigned int) (objPtr->packet[c]); - } - - retStream << std::dec << std::endl; - - return(retStream.str()); -} diff -Nru oggvideotools-0.8a/src/oggPacket.h oggvideotools-0.9.1/src/oggPacket.h --- oggvideotools-0.8a/src/oggPacket.h 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/src/oggPacket.h 1970-01-01 00:00:00.000000000 +0000 @@ -1,103 +0,0 @@ -/* - * OggPacket will carry all relevant information of an ogg packet - * - * Copyright (C) 2008 Joern Seger - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - * - */ - -#ifndef OGGPACKET_H_ -#define OGGPACKET_H_ - -#include -#ifdef HAVE_LIBOGG -#include -#endif - -#include "definition.h" -#include "refObject.h" -#include "oggTypes.h" - -class OggPacketInternal : public ogg_packet { - -public: - - enum PacketType { - normal, - bos, - eos - }; - - /* information about the stream type and the stream No */ - OggType streamType; - uint8 streamNo; - bool streamHeader; - - OggPacketInternal(); - OggPacketInternal(uint8* data, uint32 length, uint32 packetNo, - int64 granulePos=-1, PacketType packetType = normal); - - virtual ~OggPacketInternal(); - - OggPacketInternal* clone(); -}; - -class OggPacket : public RefObject { - -public: - OggPacket(); - OggPacket(const OggPacket& packet); - OggPacket(OggPacketInternal* internalPacket); - virtual ~OggPacket(); - - OggPacket& operator=(const OggPacket& packet); - - int64 granulepos(); - - void setGranulepos(int64 pos); - - uint32 getPacketNo(); - uint8 getStreamNo(); - OggType getStreamType(); - - void setStreamType(OggType type); - void setStreamNo(int8 streamNo); - void setStreamHeader(); - - bool isBOS(); - bool isEOS(); - bool isStreamHeader(); - - void setBOS(); - void unsetBOS(); - void setEOS(); - void unsetEOS(); - - uint32 length(); - uint8* data(); - - OggPacket clone(); - - /* - ogg_packet toLibogg(); - void fromLibogg(ogg_packet packet); - */ - - std::string print(uint8 level); - -}; - -#endif /*OGGPACKET_H_*/ diff -Nru oggvideotools-0.8a/src/oggPage.cpp oggvideotools-0.9.1/src/oggPage.cpp --- oggvideotools-0.8a/src/oggPage.cpp 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/src/oggPage.cpp 1970-01-01 00:00:00.000000000 +0000 @@ -1,331 +0,0 @@ -/* - * OggPage will carry all relevant information of an ogg page - * - * Copyright (C) 2008 Joern Seger - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - * - */ - -#include -#include - -#include "oggPage.h" -#include "oggHeader.h" -#include "crc.h" - -/* OggPageInternal */ - -OggPageInternal::OggPageInternal() - : data(0), headerLength(0), bodyLength(0), streamNo(255), empty(true) -{ -} - -OggPageInternal::OggPageInternal(uint8* _data, uint32 _headerLength, uint32 _bodyLength) - : data(_data), headerLength(_headerLength), bodyLength(_bodyLength), streamNo(255), empty(false) -{ -} - -OggPageInternal::~OggPageInternal() -{ - if (data) - delete[] data; -} - -/* -void OggPageInternal::fromLibogg(ogg_page page) -{ - if (data) - delete[] data; - data = new uint8[page.body_len+page.header_len]; - headerLength = page.header_len; - bodyLength = page.body_len; -} - -ogg_page OggPageInternal::toLibogg() -{ - ogg_page page; - if (data) { - page.header = data; - page.body = data+headerLength; - page.header_len = headerLength; - page.body_len = bodyLength; - } - else { - page.header = 0; - page.body = 0; - page.header_len = 0; - page.body_len = 0; - } - - return(page); -} -*/ -OggPage::OggPage() -{ -} - -OggPage::OggPage(OggPageInternal* pagePtr) - : RefObject(pagePtr) -{ -} - -OggPage::OggPage(const OggPage& refObj) - : RefObject(refObj) -{ -} - -OggPage::~OggPage() -{ -} - -OggPage& OggPage::operator=(const OggPage& refObj) -{ - if (this == &refObj) - return(*this); - - (*refCounter)--; - - if ((*refCounter) == 0) { - delete refCounter; - delete objPtr; - } - - refCounter = refObj.refCounter; - objPtr = refObj.objPtr; - - (*refCounter)++; - - return(*this); -} - -bool OggPage::isContinued() -{ - return(((OggHeader*)(objPtr->data))->pack_type); -} - -void OggPage::setContinued() -{ - ((OggHeader*)(objPtr->data))->pack_type = 1; -} - -bool OggPage::isBOS() -{ - return(((OggHeader*)(objPtr->data))->page_type); -} - -bool OggPage::isEOS() -{ - return(((OggHeader*)(objPtr->data))->last); -} - -void OggPage::setBOS() -{ - ((OggHeader*)(objPtr->data))->page_type = 1; -} - -void OggPage::unsetBOS() -{ - ((OggHeader*)(objPtr->data))->page_type = 0; -} - -void OggPage::setEOS() -{ - ((OggHeader*)(objPtr->data))->last = 1; -} - -void OggPage::unsetEOS() -{ - ((OggHeader*)(objPtr->data))->last = 0; -} - -void OggPage::setStreamNo(uint8 streamNo) -{ - objPtr->streamNo = streamNo; -} - -uint8 OggPage::getStreamNo() -{ - return(objPtr->streamNo); -} - -uint32 OggPage::version() -{ - return(((OggHeader*)(objPtr->data))->version); -} - -uint32 OggPage::packets() -{ - uint32 segments(((OggHeader*)(objPtr->data))->tableSegments); - uint32 packets(0); - uint8* oggPtr=objPtr->data+sizeof(OggHeader); - - for (uint32 i(0); idata))->position); -} - -uint32 OggPage::serialno() -{ - return(((OggHeader*)(objPtr->data))->serial); -} - -uint32 OggPage::pageno() -{ - return(((OggHeader*)(objPtr->data))->pageNo); -} - -uint32 OggPage::length() -{ - return(objPtr->headerLength + objPtr->bodyLength); -} - -uint8* OggPage::data() -{ - return(objPtr->data); -} - -bool OggPage::isEmpty() -{ - return(objPtr->empty); -} - -void OggPage::createCRC() -{ - OggHeader* hdr = (OggHeader*)(objPtr->data); - hdr->checksum = 0; - hdr->checksum = Crc::create(objPtr->data, length()); -} - -OggPage OggPage::clone() -{ - - if (length() == 0) - return(OggPage()); - - uint8* data = new uint8[length()]; - memcpy(data, objPtr->data, length()); - - OggPageInternal* newInternalPage = new OggPageInternal(data, objPtr->headerLength, objPtr->bodyLength); - - return(OggPage(newInternalPage)); - -} - -/* print levels: - * 0) only data length information - * 1) header information - * 2) additional header information - * 3) header dump - * 4) body dump - */ -std::string OggPage::print(uint8 level) -{ - std::stringstream retStream; - - retStream << "Ogg Page: header length = " << std::dec << objPtr->headerLength - << " and body length = " << std::dec << objPtr->bodyLength - << std::endl; - - if (level < 1) - return(retStream.str()); - - OggHeader* header = (OggHeader*)(objPtr->data); - retStream << "Header Information:" - << "\n\tOgg Version : " << (uint32)header->version - << "\n\tSerial No : 0x" << std::hex << header->serial << std::dec - << "\n\tPacket Type : "; - - if (header->pack_type) - retStream << "continued packet"; - else - retStream << "fresh packet"; - - retStream << "\n\tPage Type : "; - - if (header->page_type) - retStream << "begin of stream marker"; - else - retStream << "normal page"; - - retStream << "\n\tLast Page : "; - - if (header->last) - retStream << "end of stream marker"; - else - retStream << "normal page"; - - retStream << "\n\tGranule Position : " << header->position << "(0x" << std::hex << header->position << std::dec << ")"; - retStream << "\n\tPage Number : " << header->pageNo; - retStream << "\n\tChecksum : 0x" << std::hex << header->checksum << std::dec; - retStream << "\n\tTable Segments : " << (uint32) header->tableSegments; - retStream << std::endl << std::endl; - - if (level < 2) - return(retStream.str()); - - retStream << "Segments:"; - - for (uint32 c(0); ctableSegments; ++c) { - if ((c%16) == 0) - retStream << std::endl; - retStream << " "<< std::hex; - if (((unsigned int) (objPtr->data[c+sizeof(OggHeader)])) < 16) - retStream << "0"; - retStream << (unsigned int) (objPtr->data[c+sizeof(OggHeader)]); - } - - retStream << std::endl << std::endl; - - if (level < 3) - return(retStream.str()); - - retStream << "Header Hex dump: "; - for (uint32 c(0); cheaderLength; ++c) { - if ((c%16) == 0) - retStream << std::endl; - retStream << " " << std::hex; - if (((unsigned int) (objPtr->data[c])) < 16) - retStream << "0"; - retStream << (unsigned int) (objPtr->data[c]); - } - retStream << std::dec << std::endl << std::endl; - - if (level < 4) - return(retStream.str()); - - retStream << "Body Hex dump: "; - - for (uint32 c(0); cbodyLength; ++c) { - if ((c%16) == 0) - retStream << std::endl; - retStream << " " << std::hex; - if (((unsigned int) (objPtr->data[c+objPtr->headerLength])) < 16) - retStream << "0"; - retStream << (unsigned int) (objPtr->data[c+objPtr->headerLength]); - } - - retStream << std::dec << std::endl; - - return(retStream.str()); -} - diff -Nru oggvideotools-0.8a/src/oggPage.h oggvideotools-0.9.1/src/oggPage.h --- oggvideotools-0.8a/src/oggPage.h 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/src/oggPage.h 1970-01-01 00:00:00.000000000 +0000 @@ -1,121 +0,0 @@ -/* - * OggPage will carry all relevant information of an ogg page - * - * Copyright (C) 2008 Joern Seger - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - * - */ - -#ifndef OGGPAGE_H_ -#define OGGPAGE_H_ - -#include -/* -#ifdef HAVE_LIBOGG -#include -#endif -*/ - -#include "refObject.h" -#include "definition.h" - -/// class to store one ogg page -/** this class is easy to handle, as it only carries the - * data area that starts with "OggS". - * The toLibogg() method should be called only if an - * ogg_page is needed. It will NOT provide a deep copy - * so that the data will be lost, when the object is - * deleted. */ -class OggPageInternal { - -public: - //! pointer to the packet data - uint8* data; - - //! header length - uint32 headerLength; - - //! body length - uint32 bodyLength; - - //! internal information: number of stream associated by the decoder - uint8 streamNo; - - //! internal information: unused page - bool empty; - - OggPageInternal(); - OggPageInternal(uint8* data, uint32 headerLength, uint32 bodyLength); - virtual ~OggPageInternal(); - - /* actually we will not create an interface to the original ogg lib - ogg_page toLibogg(); - void fromLibogg(ogg_page page); - */ -}; - -class OggPage : public RefObject { - -public: - OggPage(); - OggPage(const OggPage& page); - OggPage(OggPageInternal* pagePtr); - virtual ~OggPage(); - - OggPage& operator=(const OggPage& page); - - //! Is this page continued ? - bool isContinued(); - - //! Is this page a "Begin of Stream" page ? - bool isBOS(); - - //! Is this page an "End of Stream" page ? - /*! Every stream within a file (e.g. audio stream and video stream) - has it's own eos flag */ - bool isEOS(); - - bool isEmpty(); - - void setContinued(); - - void setEOS(); - void unsetEOS(); - - void setBOS(); - void unsetBOS(); - - /* what ogg version is this stream */ - uint32 version(); - uint32 packets(); - int64 granulepos(); - uint32 serialno(); - uint32 pageno(); - - void createCRC(); - - uint8 getStreamNo(); - void setStreamNo(uint8 streamNo); - - uint32 length(); - uint8* data(); - - OggPage clone(); - - std::string print(uint8 level); -}; - -#endif /*OGGPAGE_H_*/ diff -Nru oggvideotools-0.8a/src/oggRingbuffer.cpp oggvideotools-0.9.1/src/oggRingbuffer.cpp --- oggvideotools-0.8a/src/oggRingbuffer.cpp 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/src/oggRingbuffer.cpp 1970-01-01 00:00:00.000000000 +0000 @@ -1,152 +0,0 @@ -/* - * Ringbuffer to prebuffer an ogg file - * - * Copyright (C) 2005-2008 Joern Seger - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - * - */ - -/* History: - 01 2008: initial version is taken from the streamnik server project (JS) -*/ - -#include -#include - -#include - -#include "oggRingbuffer.h" -#include "oggHeader.h" -#include "exception.h" -#include "log.h" - -OggRingbuffer::OggRingbuffer(unsigned int buffersize) - :ringbuffer(buffersize) -{ -} - -OggRingbuffer::OggRingbuffer(unsigned char* data, unsigned int len) - :ringbuffer(data, len) -{ -} - - -OggRingbuffer::~OggRingbuffer() -{ -} - -bool OggRingbuffer::getNextPageLength(unsigned int& length, int pageNum) -{ - lock(); - - int tmpend = end; - int tmpend2 = end; - int tmpused = used; - length = 0; - - for (; pageNum; pageNum--) { - tmpend = tmpend2; - if (tmpused < (int) sizeof(OggHeader)) { - unlock(); - return(false); - } - - // test is this aligned? - char starter[5]; - for (unsigned int i=0; i<5; ++i) { - starter[i] = fifo[tmpend]; - tmpend+=1; - tmpend%=size; - } - - if (strncmp(starter, "OggS", 4) != 0) { - unlock(); - throw OggException("OggRingbuffer::getNextPageLength: ERROR ogg packet not aligned"); - } - - tmpend += sizeof(OggHeader)-6; // jump to the segment table - tmpend %= size; - - unsigned int readsegments = fifo[tmpend]; - - tmpend += 1; - tmpend %= size; - - length += sizeof(OggHeader) + readsegments; - - if (tmpused < (int)(sizeof(OggHeader)+readsegments)) { - unlock(); - return(false); - } - - for (unsigned int i=0; i -#include -#include -#include -#include -#include - -#include "vorbisEncoder.h" -#include "streamMux.h" -#include "fileRepository.h" -#include "oggComment.h" -#include "cmdlineextractor.h" -#include "exception.h" -#include "log.h" - -#define BUNCHSIZE 512 - -void printHelpScreen(std::string& name) -{ - logger.error() << "usage "< -n -r -l \n"; -} - -AudioPacket getSilencePacket(uint32 channels, uint32 length) -{ - float silence[length]; - - for (uint32 i(0); isetDataOfChannel(j, silence); - - // funny stack stuff ;-) - return(AudioPacket(internal)); -} - -int oggSilenceCmd( int argc, char* argv[] ) -{ - - VorbisEncoder encoder(0); - AudioPacket audioPacket; - AudioPacket lastAudioPacket; - - uint32 samplerate(44100); - uint32 channels(2); - uint32 datarate(64000); - uint32 length(60000); // 1 minute - - /* Initialisation */ - - std::string outputFile; - std::string programName(argv[0]); - - srand(time(0)); - - int opt; - while ((opt = getopt(argc, argv, "ho:d:n:r:l:")) != EOF) - - switch (opt) { - - case 'h': - printHelpScreen(programName); - exit(-1); - - case 'd': - datarate = CmdlineExtractor::atoi(optarg); - break; - - case 'o': - outputFile = std::string(optarg); - break; - - case 'n': - channels = CmdlineExtractor::atoi(optarg); - break; - - case 'r': - samplerate = CmdlineExtractor::atoi(optarg); - break; - - case 'l': - length = CmdlineExtractor::atoi(optarg); - break; - - } - - argc -= optind; - argv += optind; - - if ((argc > 1)) { - printHelpScreen(programName); - exit (-1); - } - - if (argc > 0) { - outputFile = std::string(argv[0]); - } - - /* Handle wrong parameter and parameter combinations */ - if (outputFile.empty()) { - printHelpScreen(programName); - exit (-1); - } - - StreamMux muxer(new FileRepository(outputFile, MediaUnit::write)); - - muxer.recreatePacketPosition(false); - - /* configure encoder */ - VorbisStreamParameter* config = new VorbisStreamParameter; - config->datarate = datarate; - config->channels = channels; - config->samplerate = samplerate; - - StreamConfig streamConfig; - streamConfig.parameter = config; - - std::vector comments; // none - - try { - encoder.configureEncoder(streamConfig, comments); - } catch (std::exception & e) { - logger.error() << e.what() << std::endl; - exit(-1); - } catch (...) { - //logger.error() << what(); - exit(-1); - } - - logger.error() << "Creating ogg file with the following parameters\n"<toString(); - - /* there is only one stream in this file */ - std::vector configList; - configList.push_back(streamConfig); - - /* configure the muxer */ - muxer.configureStreams(configList); - - uint32 completeSamples((float)length/1000.0*samplerate); - - /* create one silence packet */ - audioPacket = getSilencePacket(channels, BUNCHSIZE); - - if (completeSamples%BUNCHSIZE != 0) { - lastAudioPacket = getSilencePacket(channels, completeSamples%BUNCHSIZE); - } - - OggPacket packet; - - for (uint32 i(0); i> packet; - muxer << packet; - } - } - - logger.debug() << "\n"; - - if (completeSamples%BUNCHSIZE != 0) { - logger.debug() << "\nwrite last frame with "<> packet; - muxer << packet; - } - - muxer.setEndOfStream(); - muxer.close(); - - return(0); -} - -int main(int argc, char* argv[]) -{ - try { - return oggSilenceCmd(argc, argv); - } catch (OggException & e) { - logger.error() << "Fatal error: " << e.what() << std::endl; - return -1; - } -} - diff -Nru oggvideotools-0.8a/src/oggSlideshow.cpp oggvideotools-0.9.1/src/oggSlideshow.cpp --- oggvideotools-0.8a/src/oggSlideshow.cpp 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/src/oggSlideshow.cpp 1970-01-01 00:00:00.000000000 +0000 @@ -1,447 +0,0 @@ -/* - * oggSlideshow creates a slideshow from a number of pictures - * - * Copyright (C) 2008-2009 Joern Seger - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - * - */ - - - -#ifdef __WIN32 -#define __GNU_LIBRARY__ -#include "../win32/getopt_win.h" -#endif - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#include "th_helper.h" - -#include "definition.h" -#include "theoraEncoder.h" -#include "fileRepository.h" -#include "streamMux.h" -#include "cmdlineextractor.h" - -#include "effector.h" -#include "crossfader.h" -#include "kenburnseffect.h" -#include "lowpassEffect.h" -#include "plainPicture.h" - -#include "pictureLoader.h" -#include "pictureResize.h" - -#include "log.h" -#include "exception.h" - -void printHelpScreen(std::string& name) -{ - std::cerr << "usage: "<< name <<" [options] \n"; - std::cerr << "Options: \n" - << " -s x: picture width/height of the output frame\n" - << " -f : frames per second\n" - << " -o : name of the output file\n" - << " -l : number of frames per picture frequence\n" - << " -d : datarate in bit/second\n" - << " -r : resizes the original pictures to video frame width/height and the additional resample factor\n" - << " -e : reframe picture\n" - << " -t : kb - Ken Burns\n" - << " cf - cross fade\n" - << " p - plain\n" - << " bl - blur\n" - << " -q : quality (0-63)\n" - << " -c : comments in form type=value;type=value\n"; - - std::cerr << "\nadditionally you are able to set a prefix walk with -tkb:\n"; -} - -//int main(int argc, char* argv[]) -int oggSlideshowCmd(int argc, char* argv[]) -{ - enum seqType { - seqType_KenBurns, - seqType_Crossfade, - seqType_Plain, - seqType_Blur - }; - - /* default values */ - uint32 width(480); - uint32 height(320); - uint32 framesPerSecond(24); - std::string outputFile("slideshow.ogv"); - uint32 length(8); - uint32 datarate(0); - uint32 quality(32); - seqType showType(seqType_KenBurns); - float resample(1.4); - bool reframe(false); - std::vector oggComments; - uint16 predefine(0); - - srand(time(0)); - - std::string programName(argv[0]); - - int opt; - while ((opt = getopt(argc, argv, "hp:f:o:l:d:r:t:s:ec:q:")) != EOF) - - switch (opt) { - - case 'h': - case '?': - printHelpScreen(programName); - exit(-1); - - case 's': { - std::deque framesize; - CmdlineExtractor::extractUint32(framesize, optarg, 'x'); - if (framesize.size() != 2) { - logger.error() << "please specify the size in the following way: -s320x480\n"; - exit(-1); - } - width = framesize[0]; - height = framesize[1]; - - } - break; - - case 'q': - quality = atoi(optarg); - break; - - case 'f': - framesPerSecond = atoi(optarg); - break; - - case 'o': - outputFile = std::string(optarg); - break; - - case 'l': - length = atoi(optarg); // yes, I know the atoi bug - break; - - case 'd': - datarate = atoi(optarg); // yes, I know the atoi bug - break; - - case 'r': - resample = atof(optarg); - if ((resample < 1) || (resample > 2)) - resample = 1.2; - break; - - case 'e': { - logger.debug() << "reframing\n"; - reframe = true; - break; - } - - case 't': { - - std::string typeStr; - std::string teststring(optarg); - std::stringstream tmp; - - std::string::size_type pos = teststring.find(':'); - typeStr = teststring.substr(0,pos); - if ((pos != std::string::npos) && (pos+1 < teststring.size())) { - tmp << teststring.substr(pos+1, std::string::npos); - tmp >> predefine; - std::cerr << "Predefine: "<< predefine< oggPacketList; - - void init(OggPage page); - -public: - OggStreamDecoder(); - virtual ~OggStreamDecoder(); - - virtual OggStreamDecoder& operator<<(OggPage& page); - virtual OggStreamDecoder& operator>>(OggPacket& packet); - - OggPacket inspectNextPacket(); - - uint32 getSerialNo(); - - virtual void clear(); -}; - -#endif /*OGGSTREAMDECODER_H_*/ diff -Nru oggvideotools-0.8a/src/oggStreamEncoder.cpp oggvideotools-0.9.1/src/oggStreamEncoder.cpp --- oggvideotools-0.8a/src/oggStreamEncoder.cpp 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/src/oggStreamEncoder.cpp 1970-01-01 00:00:00.000000000 +0000 @@ -1,354 +0,0 @@ -/* - * oggStreamEncoder is a class to insert an ogg packet into an ogg page stream - * - * Copyright (C) 2008 Joern Seger - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - * - */ - -#include -#include -#include - -#include "definition.h" -#include "oggStreamEncoder.h" -#include "oggHeader.h" -#include "crc.h" -#include "exception.h" -#include "log.h" - -#define min(a,b) ((ab)?(a):(b)) - -std::vector OggStreamEncoder::usedSerialNo; - -OggStreamEncoder::OggStreamEncoder(uint32 serial) - : maxPageSize(4096), streamNo(0), dataLength(0), dataSegments(0), usedData(0), pageCounter(0) -// packetCounter(0), positionInterpreterEnabled(false), pageKeepEnabled(false), - //posInterpreter(0) -{ - uint32 newSerial = findUniqueSerial(serial); - streamSerialNo = newSerial; - setInitialized(); -} - -OggStreamEncoder::~OggStreamEncoder() -{ - if (!oggPacketList.empty()) - logger.warning() << "OggStreamEncoder::Destructor: WARNING packet list not empty ("<setStreamPosition(packet); - */ - /* This is a normal packet - * Let's start to calculate the actual length */ - oggPacketList.push_back(packet); - - dataLength += packet.length(); - uint32 actSegmentsSize = (packet.length()+255)/255; - uint8 actSegments[maxSegmentEntries]; - - if (actSegmentsSize > maxSegmentEntries) - throw OggException("OggStreamEncoder::addPacket: Not able to handle this packet size"); - - /* calculate the segment table part of this packet */ - memset(actSegments, 0xff, actSegmentsSize-1); - actSegments[actSegmentsSize-1] = packet.length()%255; - - segmentsBuffer.addData(actSegments, actSegmentsSize); - -} - -bool OggStreamEncoder::getNextPacketLength(uint32 pageBorder, uint32& length, - uint32& segments) -{ - /* initialize the values */ - length = 0; - segments = 0; - - /* if the data length is in range, do nothing */ - if ((dataLength < pageBorder) && (segmentsBuffer.getUsed() < 255)) { - return(false); - } - - /* get the actually available segments (maximum 255) */ - uint8 actSegments[255]; - uint32 actSegmentsSize = segmentsBuffer.peekFront(actSegments,255); - - /* and calculate, how many segments we want to include into the - * actual page */ - for (uint32 count(0); count= pageBorder) || (segments >= 255)) { - // this is a "sonderlocke" for zero size segments - count++; - while ((count < actSegmentsSize) && (actSegments[count] == 0)) { - segments++; - count++; - } - return(true); - } - } - - return(true); -} - -OggStreamEncoder& OggStreamEncoder::operator<<(OggPacket packet) -{ - if (!isInitialized()) { - logger.error() << "OggStreamEncoder::operator<<: Stream is not initialized correctly\n"; - return(*this); - } - - if (!isConfigured()) { - - // this must be the bos packet - if (!packet.isBOS()) { - logger.error() << "OggStreamEncoder::operator<<: First packet must be a BOS packet\n"; - return(*this); - } else { - // The first BOS packet defines the stream number - streamNo = packet.getStreamNo(); - } - /* add the packet to the temporal buffer */ - addPacket(packet); - - /* the encoder stream is configured */ - setConfigured(); - - /* flush the first packet (see Spec) */ - flush(); - - return(*this); - } - - /* add the packet to the temporal buffer */ - addPacket(packet); - - /* create as many packets as data is available */ - while ((dataLength >= maxPageSize) || (segmentsBuffer.getUsed() >= 255)) { - createPage(maxPageSize); - } - - return(*this); -} - -OggStreamEncoder& OggStreamEncoder::operator>>(OggPage& page) -{ - if (isEmpty()) { - logger.error() << "OggStreamEncoder::opertator>>: no page available\n"; - return(*this); - } - - page = oggPageList.front(); - oggPageList.pop_front(); - - page.obj()->streamNo = streamNo; - - if (oggPageList.empty()) - setEmpty(); - - - return(*this); - -} - -void OggStreamEncoder::flush() -{ - while (dataLength || (segmentsBuffer.getUsed() > 0)) { - createPage(dataLength); - } -} - -void OggStreamEncoder::createPage(uint32 minPageSize) -{ - uint32 bodyLength; - uint32 segmentsSize; - - /* Is there enough data available? */ - if (!getNextPacketLength(minPageSize, bodyLength, segmentsSize)) { - return; - } - - uint32 overallLength = sizeof(OggHeader) + segmentsSize + bodyLength; - uint8* pageData = new uint8[overallLength]; - - /* an ogg page looks like this: - * -------------------------------------------------------- - * | Ogg Header | Segments Table | Packet1 | Packet2 | ... - * -------------------------------------------------------- - */ - OggHeader* header ((OggHeader*)pageData); - uint8* segments (pageData+sizeof(OggHeader)); - uint8* body (segments+segmentsSize); - - /* set the header information */ -#ifdef HAVE_BZERO - bzero(header,sizeof(OggHeader)); -#else - for (uint32 i(0); iogg,"OggS",4); - header->tableSegments = segmentsSize; - header->pageNo = pageCounter++; - header->serial = streamSerialNo; - header->position = -1; - - if (usedData) - header->pack_type = 1; // is packet starts on the previous page - - /* fill the segments */ - segmentsBuffer.getData(segments,segmentsSize); - - std::list::iterator it(oggPacketList.begin()); - - /* if this is a bos packet, this would surely be the first packet */ - if (it->isBOS()) - header->page_type = 1; - - uint32 arrayIndex(0); - - for (; it != oggPacketList.end(); it++) { - - uint32 cpyLength = min((it->length()-usedData),(bodyLength-arrayIndex)); - - memcpy(body+arrayIndex, it->data()+usedData, cpyLength); - arrayIndex += cpyLength; - - /* is this the end of the actual page */ - if (arrayIndex == bodyLength) { - - /* the packet does not start within this page and does not end - * on this page? */ - if (usedData != 0) { - usedData += cpyLength; - if (usedData == it->length()) { - usedData = 0; - if (it->isEOS()) - header->last = 1; - - /* the packet is fully used, so point to the next valid packet */ - ++it; // this might be the .end() sign, however, how cares - - } - - } else { - - if (cpyLength == it->length()) { - - /* this packet ended on this page */ - usedData = 0; - - /* at lease the actual Packet has been completed on this page */ -// onePacketCompleted = true; - - /* Is it the end of a stream? Then mark it as such */ - if (it->isEOS()) - header->last = 1; - - /* the packet is fully used, so point to the next valid packet */ - ++it; // this might be the .end() sign, however, how cares - - } else { - /* keep the number of copied bytes for the next page */ - usedData = cpyLength; - } - } - - // we found the end of the page - if (usedData) - break; - } - - usedData = 0; - } - -#ifdef DEBUG - if ( arrayIndex != bodyLength ) { - logger.error() << "ERROR: array not matching ( index "<::iterator it1 = it; - it1--; - header->position = it1->granulepos(); - oggPacketList.erase(oggPacketList.begin(), it); - } - - header->checksum = Crc::create(pageData, overallLength); - - OggPage page(new OggPageInternal(pageData, sizeof(OggHeader)+segmentsSize, bodyLength)); - oggPageList.push_back(page); - - dataLength -= bodyLength; - - setAvailable(); - -} - - diff -Nru oggvideotools-0.8a/src/oggStreamEncoder.h oggvideotools-0.9.1/src/oggStreamEncoder.h --- oggvideotools-0.8a/src/oggStreamEncoder.h 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/src/oggStreamEncoder.h 1970-01-01 00:00:00.000000000 +0000 @@ -1,73 +0,0 @@ -/* - * oggStreamEncoder is a class to insert an ogg packet into an ogg page stream - * - * Copyright (C) 2008-2009 Joern Seger - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - * - */ - -#ifndef OGGSTREAMENCODER_H_ -#define OGGSTREAMENCODER_H_ - -#include -#include - -#include "mediaEncoder.h" -#include "oggPage.h" -#include "oggPacket.h" -#include "ringbuffer.h" -#include "definition.h" - -class OggStreamEncoder : public MediaEncoder { - -protected: - static const uint32 maxSegmentEntries = 4096; - - static std::vector usedSerialNo; - - uint32 maxPageSize; - - uint32 streamSerialNo; - uint8 streamNo; - - std::list oggPageList; - std::list oggPacketList; - ringbuffer segmentsBuffer; - - uint32 dataLength; //!< is the length of the actually available data - uint32 dataSegments; //!< is the number of the actually available segments - uint32 usedData; //!< is the size of data, that has already been used in the first packet - - uint32 pageCounter; - - uint32 findUniqueSerial(uint32 proposal); - - void addPacket(OggPacket& packet); - bool getNextPacketLength(uint32 PageBorder, uint32& length, uint32& segments); - void createPage(uint32 minPageLength); - -public: - OggStreamEncoder(uint32 serial = 0); - virtual ~OggStreamEncoder(); - - virtual OggStreamEncoder& operator<<(OggPacket packet); - virtual OggStreamEncoder& operator>>(OggPage& page); - - virtual void flush(); - -}; - -#endif /*OGGSTREAMENCODER_H_*/ diff -Nru oggvideotools-0.8a/src/oggThumb.cpp oggvideotools-0.9.1/src/oggThumb.cpp --- oggvideotools-0.8a/src/oggThumb.cpp 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/src/oggThumb.cpp 1970-01-01 00:00:00.000000000 +0000 @@ -1,573 +0,0 @@ -/* - * oggThumb creates thumbs from an ogg/theora video - * - * Copyright (C) 2008-2009 Joern Seger - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - * - */ - -#ifdef __WIN32 -#define __GNU_LIBRARY__ -#include "../win32/getopt_win.h" -#else -#include -#endif - -#include -#include -#include -#include -#include -#include -#include -#include - -#include "fileRepository.h" -#include "streamSerializer.h" -#include "theoraDecoder.h" -#include "theoraStreamParameter.h" -#include "oggComment.h" -#include "rgbPlane.h" -#include "pictureLoader.h" -#include "pictureResize.h" -#include "exception.h" -#include "log.h" - -const std::string validChars("0123456789,.x"); - -void extractUint32(std::deque& list, const std::string& _argument, - char seperator) -{ - std::string argument(_argument); - std::stringstream str; - std::string substr; - - // if there is no argument given, the first frame will be created as a thumbnail - if (argument.empty()) { - list.push_back(0); - return; - } - - // delete all invalid data - std::size_t pos; - while ((pos = argument.find_first_not_of(validChars)) != std::string::npos) { - logger.debug() << "erasing <"<\n"; - argument.erase(pos,1); - } - - str << argument; - - uint32 value(0); - while (!str.eof()) { - std::stringstream part; - getline(str, substr, seperator); - part << substr; - part >> value; - list.push_back(value); - } - -} - -void extractUint32Sort(std::deque& list, const std::string& _argument, - char seperator) -{ - std::string argument(_argument); - std::stringstream str; - std::string substr; - - std::priority_queue _list; - - // if there is no argument given, the first frame will be created as a thumbnail - if (argument.empty()) { - list.push_back(0); - return; - } - - // delete all invalid data - std::size_t pos; - while ((pos = argument.find_first_not_of(validChars)) != std::string::npos) { - logger.debug() << "erasing <"<\n"; - argument.erase(pos,1); - } - - str << argument; - - uint32 value(0); - while (!str.eof()) { - std::stringstream part; - getline(str, substr, seperator); - part << substr; - part >> value; - _list.push(value); - } - - while (!_list.empty()) { - list.push_front(_list.top()); - _list.pop(); - } -} - - -void extractDoubleSort(std::deque& list, const std::string& _argument, - char seperator) -{ - std::string argument(_argument); - std::stringstream str; - std::string substr; - - std::priority_queue _list; - - // if there is no argument given, the first frame will be created as a thumbnail - if (argument.empty()) { - list.push_back(0); - return; - } - - std::size_t pos; - while ((pos = argument.find_first_not_of(validChars)) != std::string::npos) - argument.erase(pos); - - str << argument; - - double value(0); - while (!str.eof()) { - std::stringstream part; - getline(str, substr, seperator); - part << substr; - part >> value; - _list.push(value); - } - - while (!_list.empty()) { - list.push_front(_list.top()); - _list.pop(); - } - -} - -void writeActualFrame(TheoraDecoder& decoder, std::deque& packetList, - const std::string& name, uint32 width, uint32 height) -{ - th_ycbcr_buffer picture; - RGBPlane plane; - - if (!TheoraDecoder::isPacketKeyframe(packetList[0])) { - logger.error() << "first packet is not a keyframe\n"; - return; // could not happen ;-) - } - - for (uint32 i(0); i> picture; - } - - plane = PictureLoader::importYCrCb_theora(picture, decoder.getWidth(), decoder.getHeight(), decoder.getInfo().pic_x, decoder.getInfo().pic_y, decoder.getInfo().pixel_fmt); - - PictureLoader::save(plane, name, width, height); - -} - -std::string getThumbname(const std::string& filename, const std::string& forcedThumbname, - const std::string& extension, uint32& counter, uint32 reqCount) -{ - std::stringstream thumbname; - if (forcedThumbname.empty()) { - std::size_t filenamestart = filename.find_last_of('/'); - std::size_t filenamelength = filename.find_last_of('.'); - - if (filenamestart == std::string::npos) - filenamestart = 0; - else - filenamestart++; - - if ((filenamelength != std::string::npos) && (filenamelength > filenamestart)) - filenamelength = filenamelength - filenamestart; - else - filenamelength = std::string::npos; - - thumbname << filename.substr(filenamestart,filenamelength); - thumbname << "_" << counter++ << extension; - } else if (reqCount == 1) { - thumbname << forcedThumbname; - thumbname << extension; - } else { - std::size_t replacePos = forcedThumbname.find_first_of('%'); - if (replacePos != std::string::npos ) { - thumbname << forcedThumbname.substr(0, replacePos); - thumbname << (counter++); - thumbname << forcedThumbname.substr(replacePos + 1); - } else { - thumbname << forcedThumbname; - } - thumbname << extension; - } - return(thumbname.str()); -} - -void printHelpScreen(std::string& prog) -{ - logger.error() << "\nusage: "< : create thumbnail from frame at time position time1, time2, time3 second\n" - << " -f : create thumbnail from frame number frameNo1, frameNo2, frameNo3\n" - << " -s x : resize to given values (if one argument is set to 0, it is calculated to meet the aspect ratio)\n" - << " -o : formats are jpg or png\n" - << " -n : force output filename\n" - << "The filename could be given with a %, which will be replaced by the actual picture number\n" - << "\n\n"; - -} - -int oggThumbCmd(int argc, char* argv[]) -{ - std::deque timePosList; - std::deque frameNoList; - - uint32 width(0); - uint32 height(0); - uint32 requestedFrameCount(0); - - std::string programName(argv[0]); - std::string extension(".jpg"); - std::string forcedThumbname; - - int opt; - - enum { - opt_help = 256, - opt_verbose - }; - -//#ifdef with_eclipse_CDTBUG - struct option longOpts[] = { -{name: "help" -, has_arg: 0, flag: -NULL, val: - opt_help}, -{name: "verbose" - , has_arg: 1, flag: - NULL, val: - opt_verbose} - }; -//#endif - - while ((opt = getopt_long(argc, argv, "hf:t:s:o:n:v:", longOpts, NULL)) != EOF) - switch (opt) { - - case '?': - case 'h': - case opt_help: - printHelpScreen(programName); - return -1; - - case 'f': - extractUint32Sort(frameNoList, optarg, ','); - break; - - case 't': - extractDoubleSort(timePosList,optarg, ','); - break; - - case 's': { - std::deque framesize; - extractUint32(framesize, optarg, 'x'); - if (framesize.size() != 2) { - logger.error() << "please specify the size in the following way: -s320x480\n"; - return -1; - } - width = framesize[0]; - height = framesize[1]; - } - break; - - case 'o': - extension = optarg; - extension = "." + extension; - break; - - case 'n': - forcedThumbname = optarg; - std::size_t extendPos; - if ((extendPos = forcedThumbname.find_last_of(".")) != std::string::npos) { - extension = forcedThumbname.substr(extendPos); - forcedThumbname = forcedThumbname.substr(0,extendPos); - } - logger.debug() << "Forced thumbnail name is "<> verbosity; - if (tempStream.fail() || verbosity < 0 || verbosity > 3) { - logger.error() << "Error: Invalid verbosity \"" << optarg << "\"\n"; - return(-1); - } - switch (verbosity) { - case 0: - logger.setLevel(OggLog::LOG_ERROR); - break; - case 1: - logger.setLevel(OggLog::LOG_WARNING); - break; - case 2: - logger.setLevel(OggLog::LOG_INFO); - break; - case 3: - logger.setLevel(OggLog::LOG_DEBUG); - } - } - break; - } - } - - argc -= optind; - argv += optind; - - requestedFrameCount = frameNoList.size() + timePosList.size(); - - if (argc == 0) { - logger.error() << "Please specify at least one ogg file\n"; - return -1; - } - - logger.info() << "Creating thumbs under the following option:\n"; - - if (!timePosList.empty()) { - logger.info() << "Frames at time (in seconds): "; - for (uint32 i(0); i tmptimePosList = timePosList; - std::deque tmpframeNoList = frameNoList; - - if (forcedThumbname.empty()) - counter=0; - - if (!streamSerializer.open(filename)) { - logger.error() << "Error: can not open file <"<\n"; - continue; - } - - uint8 theoraStreamNo(0); - - /* create the headers */ - std::vector streamConfigList; - streamSerializer.getStreamConfig(streamConfigList); - - TheoraStreamParameter* theoraConfig(0); - std::vector oggComments; - - /* Output some stream information */ - for (uint32 i(0); i 0 && theoraDecoder.getInfo().aspect_denominator > 0) - aspectCorrection = (theoraDecoder.getInfo().aspect_numerator*1.0)/(theoraDecoder.getInfo().aspect_denominator*1.0); - else - aspectCorrection = 1; - - if ((width == 0) && (height == 0)) { - width = theoraConfig->pictureX * aspectCorrection; //theoraConfig->frameX; - height = theoraConfig->pictureY; //theoraConfig->frameY; - } else { - if (height == 0) - height = (uint32)((width * theoraConfig->pictureY*1.0)/(theoraConfig->pictureX*aspectCorrection*1.0) + 0.5); - else if (width == 0) - width = (uint32)((height * theoraConfig->pictureX*aspectCorrection*1.0)/(theoraConfig->pictureY*1.0) +0.5); - } - - logger.info() << "width: "<\n"; - continue; - } - - if (foundTheora > 2) - logger.warning() << "Found more than one theora stream in file <"< using first stream\n"; - - /* set up first time/frame */ - double nextTime; - uint32 nextFrame; - - bool noMoreTime(false); - bool noMoreFrame(false); - - if (tmpframeNoList.empty()) { - nextFrame = std::numeric_limits::max(); - noMoreFrame = true; - } else { - nextFrame = tmpframeNoList.front(); - tmpframeNoList.pop_front(); - } - - if (tmptimePosList.empty()) { - nextTime = std::numeric_limits::max(); - noMoreTime = true; - } else { - nextTime = tmptimePosList.front(); - tmptimePosList.pop_front(); - } - - std::deque packetList; - double time; - OggPacket packet; - - while (streamSerializer.available()) { - - // get the next packet - time = streamSerializer.getNextPacket(packet); - - // is this packet a theora frame - if (packet.getStreamType() != ogg_theora) - continue; - - // write actual time - logger.info() << "\r "<::max(); - noMoreFrame = true; - } else { - nextFrame = tmpframeNoList.front(); - tmpframeNoList.pop_front(); - } - - - std::string thumbname = getThumbname(filename, forcedThumbname, extension, - counter, requestedFrameCount); - logger.info() << "writing "<= nextTime) { - - if (tmptimePosList.empty()) { - nextTime = std::numeric_limits::max(); - noMoreTime = true; - } else { - nextTime = tmptimePosList.front(); - tmptimePosList.pop_front(); - } - - std::string thumbname = getThumbname(filename, forcedThumbname, extension, - counter, requestedFrameCount); - - logger.info() << "writing "< -#include -#include -#include -#include - -#include -#include -#include -#include - -#ifdef HAVE_CONFIG_H -#include "config.h" -#endif - -#include "definition.h" -#include "th_helper.h" -#include "helper.h" - -#include "rgbPlane.h" -#include "pictureBlend.h" -#include "pictureLoader.h" -#include "oggComment.h" - -#include "videoHook.h" -#include "audioHook.h" - -#include "theoraStreamParameter.h" -#include "vorbisStreamParameter.h" - -#include "fileRepository.h" -#include "streamSerializer.h" -#include "streamMux.h" - -#include "blendElement.h" -#include "cmdlineextractor.h" -#include "wishList.h" -#include "exception.h" -#include "log.h" - -void printHelpScreen(const std::string& progname) -{ - logger.error() << "usage: "< new frame size\n" - << " -f video framerate in frames per second\n" - << " -F audio samplerate in Hz\n" - << " -d video datarate in Bit/s\n" - << " -D audio datarate in Bit/s\n" - << " -q theora video quality\n" - << " -N audio channels\n" - << " -a add png with alpha channel on top of a frame\n" - << " before the resize process\n" - << " -A add png with alpha channel on top of a frame\n" - << " after the resize process\n" - << " -p only use every th packet to create the new video\n" - << " -c comments for the video stream\n" - << " -C comments for the audio stream\n" - << " -x do not ask for overwriting output file\n" - << " -rv force reencode video stream\n" - << " -ra force reencode audio stream\n" - << " -Q resize quality (1=best/slow; 6=worst/fast)\n" - << " -t stretch picture to new size\n\n"; - -} - -void readPictures(std::vector& blendList) -{ - for (uint32 i(0); i < blendList.size(); ++i) { - RGBPlane plane; - try { - PictureLoader::load ( plane, blendList[i].getPictureName() ); - blendList[i].setPicturePlane( plane ); - } catch (std::exception & e) { - logger.error() << "Error: " << e.what() << std::endl; - } - - } -} - -/* you can create a alpha blend object with the following option - * -a picturex.png,1.23,2.34;picturey.png,5.12,7,s */ - -void alphaBlend(double time, RGBPlane& inPlane, - std::vector& blendList, float intensityStair) -{ - - for (uint32 i( 0); i= blendList[i].startTime) { - if (blendList[i].smooth == true) { - blendList[i].state = BlendElement::blend_slideIn; - } else { - blendList[i].intensity = 1.0; - blendList[i].state = BlendElement::blend_on; - } - } - } - break; - - case BlendElement::blend_slideIn: { - blendList[i].intensity += intensityStair; - - if (blendList[i].intensity >= 1.0) { - blendList[i].state = BlendElement::blend_on; - blendList[i].intensity = 1.0; - } - - } - break; - - case BlendElement::blend_on: { - if ( (blendList[i].endTime > 0.0 ) - && (time >= blendList[i].endTime )) { - if (blendList[i].smooth == true) { - blendList[i].state = BlendElement::blend_slideOut; - } else { - blendList[i].intensity = 0.0; - blendList[i].state = BlendElement::blend_end; - } - } - } - break; - - case BlendElement::blend_slideOut: { - blendList[i].intensity -= intensityStair; - - if (blendList[i].intensity <= 0.0) { - blendList[i].state = BlendElement::blend_end; - blendList[i].intensity = 0.0; - } - - } - break; - - case BlendElement::blend_end: { - /* do nothing */ - } - break; - - } - - if ( (blendList[i].state != BlendElement::blend_end ) - && (blendList[i].state != BlendElement::blend_off )) - inPlane = PictureBlend::alphaBlend(inPlane, blendList[i].picture, - blendList[i].intensity); - - } - -} - -void analyseVideoTranscoding(WishList& wishList, - TheoraStreamParameter* theoraConfigInput, - TheoraStreamParameter* theoraConfigOutput) -{ - /* first we believe the output should be equal for all - * parameters that are not explicitly changed */ - (*theoraConfigOutput) = (*theoraConfigInput); - - if (wishList.changeVideoDatarate) { - if (theoraConfigInput->videoBitrate != wishList.videoDatarate) { - theoraConfigOutput->videoBitrate = wishList.videoDatarate; - theoraConfigOutput->videoQuality = 0; - } - } - - if (wishList.changeVideoQuality) { - if (theoraConfigInput->videoQuality != wishList.videoQuality) { - theoraConfigOutput->videoBitrate = 0; - theoraConfigOutput->videoQuality = wishList.videoQuality; - } - } - - if (wishList.changeSize) { - if ( (theoraConfigInput->pictureX != wishList.width ) - || (theoraConfigInput->pictureY != wishList.height ) - || (theoraConfigInput->aspectRatioNum != 1 ) - || (theoraConfigInput->aspectRatioDenom != 1 )) { - - theoraConfigOutput->pictureX = wishList.width; - theoraConfigOutput->pictureY = wishList.height; - - theoraConfigOutput->frameX = (theoraConfigOutput->pictureX+15)&~0xF; - theoraConfigOutput->frameY = (theoraConfigOutput->pictureY+15)&~0xF; - - // We force the offset to be even. - // This ensures that the chroma samples align properly with the luma - // samples. - - theoraConfigOutput->frameXOffset = ((theoraConfigOutput->frameX - theoraConfigOutput->pictureX)/2)&~1; - theoraConfigOutput->frameYOffset = ((theoraConfigOutput->frameY - theoraConfigOutput->pictureY)/2)&~1; - - /* no reason for using another aspect ratio than 1:1, are there? */ - theoraConfigOutput->aspectRatioDenom = 1; - theoraConfigOutput->aspectRatioNum = 1; - - } - } - - if (wishList.changeFramerate) { - - if ( ( (theoraConfigOutput->framerateNum != wishList.framerateNum ) - || (theoraConfigOutput->framerateDenom - != wishList.framerateDenom ) ) - && ( (theoraConfigOutput->framerateNum*1.0 ) - / (theoraConfigOutput->framerateDenom*1.0 ) - != (wishList.framerateNum*1.0 ) - / (wishList.framerateDenom*1.0 ) )) { - theoraConfigOutput->framerateNum = wishList.framerateNum; - theoraConfigOutput->framerateDenom = wishList.framerateDenom; - } - } - -} - -void analyseAudioTranscoding(WishList& wishList, - VorbisStreamParameter* vorbisConfigInput, - VorbisStreamParameter* vorbisConfigOutput) -{ - /* first we believe the output should be equal for all - * parameters, that are not explicitly changed */ - (*vorbisConfigOutput) = (*vorbisConfigInput); - - if (wishList.changeAudioDatarate) { - if (vorbisConfigOutput->datarate != wishList.audioDatarate) { - vorbisConfigOutput->datarate = wishList.audioDatarate; - } - } - - if (wishList.changeAudioSamplerate) { - if (vorbisConfigOutput->samplerate != wishList.audioSamplerate) { - vorbisConfigOutput->samplerate = wishList.audioSamplerate; - } - - } - - if (wishList.changeAudioChannels) { - if (vorbisConfigOutput->channels != wishList.audioChannels) { - vorbisConfigOutput->channels = wishList.audioChannels; - } - - } - return; -} - -int oggTranscodeCmd(int argc, char* argv[]) -{ - - bool copyTheora( true); - bool copyVorbis( true); - - WishList wishList; - - std::vector videoComments; - bool withVideoComments( false); - - std::vector audioComments; - bool withAudioComments( false); - - bool forceVideoReencode(false); - bool forceAudioReencode(true); - bool existenceTest(true); - - std::vector blendListBefore; - std::vector blendListAfter; - - std::string programName(argv[0]); - - std::string inputFile; - std::string outputFile; - - srand( time(0) ); - - int opt; - while ( (opt = getopt(argc, argv, "hs:f:d:tD:c:C:N:F:a:A:q:p:xr:o:Q:") ) != EOF) - - switch (opt) { - - case 'h': - case '?': - printHelpScreen(programName); - exit( -1); - - case 'a': { - CmdlineExtractor::extractBlend(blendListBefore, optarg, ':', ','); - copyTheora = false; - } - break; - - case 'A': { - CmdlineExtractor::extractBlend(blendListAfter, optarg, ':', ','); - copyTheora = false; - } - break; - - case 'Q': { - uint8 _quality = atoi(optarg); - - if (_quality < 1) - _quality = 1; - if (_quality > 5) - _quality = 5; - - // non linear - switch (_quality) { - - case 1: - wishList.quality = 2; - break; - case 2: - wishList.quality = 3; - break; - case 3: - wishList.quality = 4; - break; - case 4: - wishList.quality = 6; - break; - case 5: - wishList.quality = 10; - break; - } - - break; - } - - case 'q': { - wishList.changeVideoQuality = true; - wishList.videoQuality = atoi(optarg); - break; - } - - case 's': { - std::deque framesize; - CmdlineExtractor::extractUint32(framesize, optarg, 'x'); - if (framesize.size() != 2) { - logger.error() - << "please specify the size in the following way: -s320x480\n"; - exit( -1); - } - wishList.changeSize = true; - wishList.width = framesize[0]; - wishList.height = framesize[1]; - - } - break; - - case 'f': { - std::deque framerate; - CmdlineExtractor::extractUint32(framerate, optarg, ':'); - if (framerate.size() == 1) { - wishList.changeFramerate = true; - wishList.framerateNum = framerate[0]; - wishList.framerateDenom = 1; - break; - } - if (framerate.size() == 2) { - wishList.changeFramerate = true; - wishList.framerateNum = framerate[0]; - wishList.framerateDenom = (framerate[1] == 0 ) ? 1 - : framerate[1]; - break; - } - logger.error() - << "please specify the framerate in the following way -f25:2 or -f24\n"; - exit( -1); - - } - break; - - case 'd': - wishList.changeVideoDatarate = true; - wishList.videoDatarate = atoi(optarg); // yes, I know the atoi bug - break; - - case 'D': - wishList.changeAudioDatarate = true; - wishList.audioDatarate = atoi(optarg); - break; - - case 'c': - withVideoComments = true; - CmdlineExtractor::extractCommentPairs(videoComments, optarg, ';', - '='); - break; - - case 'C': - withAudioComments = true; - CmdlineExtractor::extractCommentPairs(audioComments, optarg, ';', - '='); - break; - - case 'N': - wishList.changeAudioChannels = true; - wishList.audioChannels = atoi(optarg); - if ( (wishList.audioChannels != 1 ) - && (wishList.audioChannels != 2 )) - wishList.changeAudioChannels = false; - break; - - case 'F': - wishList.changeAudioSamplerate = true; - wishList.audioSamplerate = atoi(optarg); - break; - - case 't': - wishList.stretch = true; - break; - - case 'p': - wishList.preview = atoi(optarg); - wishList.ignoreVorbis = true; - break; - - case 'r': - if (optarg[0] == 'v') - forceVideoReencode = true; - if (optarg[0] == 'a') - forceAudioReencode = true; - break; - - case 'x': - existenceTest = false; - break; - - case 'o': - outputFile = std::string(optarg); - break; - } - - argc -= optind; - argv += optind; - - if (existenceTest && check_file_exists(outputFile)) - exit(0); - - if (outputFile.empty() && (argc == 2)) { - inputFile = std::string(argv[0]); - outputFile = std::string(argv[1]); - } else { - if (!outputFile.empty() && (argc == 1)) - inputFile = std::string(argv[0]); - else { - printHelpScreen(programName); - return ( -1 ); - } - } - - /* create configuration */ - - StreamSerializer inStream; - if ( !inStream.open(inputFile) ) { - logger.error() << "can not open file <"<\n"; - return ( -1 ); - } - - - /* load all png pictures that should later be used */ - /* I have to think this over - maybe not the best solution */ - for (uint32 i(0); i demuxerInformation; - - /* read in the stream configuration that are avalable in this stream - * The information, we need is the stream ID and the corresponding - * stream type everything else is not needed */ - inStream.getStreamConfig(demuxerInformation); - - - /* Please notice! */ - /* At this time, the stream Information are extracted from the header - * in further analysation, we will replace these information - * by the more accurate information created by the decoder */ - - /* we create a vector for the input stream and set every - * value to 255 (means: ignore this stream). - * If the stream is used, the value added is the stream, where this - * input stream should be mapped to */ - std::vector streamMap; - streamMap.resize(demuxerInformation.size(), 255); - - /* These are the information ordered, by the stream IDs from the input stream */ - std::vector hookList; - std::vector muxerInformation; - - bool foundTheora( false); - bool foundVorbis( false); - - uint8 streamCounter( 0); - - FileRepository* repository = new FileRepository( outputFile, MediaUnit::write ); - - for (uint32 i( 0); iconfigureProcess(videoHookConfig); - - hookList.push_back(vHook); - - /* We only need these information for the information printout */ - std::vector decoderComments; - - /* configure encoder config (StreamConfig/OggComment here) */ - vHook->setDecoderConfig(decoderConfig, decoderComments); - - /* grap the information extracted by the decoder */ - theoraDecoderConfig - = static_cast(decoderConfig.parameter); - - /* create a config for the output stream and keep a pointer */ - theoraEncoderConfig = new TheoraStreamParameter; - - /* add the pointer to the configuration */ - encoderConfig.parameter = theoraEncoderConfig; - - analyseVideoTranscoding(wishList, theoraDecoderConfig, - theoraEncoderConfig); - - if (forceVideoReencode) - vHook->forceReencoding(); - - /* the decoder Comments are used as well in case, keepComments - * is set within the HookHandler */ - vHook->setEncoderConfig(encoderConfig, videoComments); - - /* calculate how to handle the input, to create the correct output */ - vHook->initAndConnect(); - - /* the configuration ID must match the stream ID */ - muxerInformation.push_back(encoderConfig); - - /* set the stream ID, to which this stream should be maped to */ - streamMap[i] = streamCounter; - streamCounter++; - - } else { - logger.warning() - << "oggResize found more than one theora stream, only the first stream is handled\n"; - } - continue; - } - - if (decoderConfig.type == ogg_vorbis) { - if (foundVorbis == false) { - StreamConfig encoderConfig; - - VorbisStreamParameter* vorbisEncoderConfig(0); - VorbisStreamParameter* vorbisDecoderConfig(0); - - foundVorbis = true; - - AudioHook* aHook (new AudioHook(streamCounter, false, true )); - hookList.push_back(aHook); - - /* We only need these information for the information printout */ - std::vector decoderComments; - - /* configure encoder config (StreamConfig/OggComment here) */ - aHook->setDecoderConfig(decoderConfig, decoderComments); - - /* create a config for this stream */ - vorbisEncoderConfig = new VorbisStreamParameter; - - /* */ - vorbisDecoderConfig - = static_cast(decoderConfig.parameter); - - /* */ - encoderConfig.parameter = vorbisEncoderConfig; - - - analyseAudioTranscoding(wishList, vorbisDecoderConfig, - vorbisEncoderConfig); - - /* the decoder Comments are used as well in case, keepComments - * is set within the HookHandler */ - aHook->setEncoderConfig(encoderConfig, videoComments); - - /* calculate how to handle the input, to create the correct output */ - aHook->initAndConnect(); - - muxerInformation.push_back(encoderConfig); - - /* set the stream ID, to which this stream should be maped to */ - streamMap[i] = streamCounter; - streamCounter++; - } else { - logger.warning() - << "oggResize found more than one vorbis stream, only the first stream is handled\n"; - } - continue; - } - - logger.error() << "There is actually no stream handler available to resize this stream \n"; - } - - /* configure stream hook */ - - logger.info() << "Input Configuration: " << std::endl - << "-------------------- " << std::endl; - - for (uint32 i(0); i< hookList.size(); ++i) { - logger.info() << hookList[i]->decoderConfiguration() << std::endl; - } - - logger.info() << "Output Configuration: " << std::endl - << "--------------------- " << std::endl; - - for (uint32 i(0); i< hookList.size(); ++i) { - logger.info() << hookList[i]->encoderConfiguration() << std::endl; - } - - StreamMux streamCreate ( repository ); - streamCreate.configureStreams ( muxerInformation ); - streamCreate.recreatePacketPosition(false); - - /* run through the stream */ - OggPacket packet; - double time; - - while (inStream.available() ) { - time = inStream.getNextPacket(packet); - - logger.info() << " "<> packet; - streamCreate << packet; - } - } - - /* flush all data */ - for (uint32 i(0); iflush(); - - while (hookList[i]->available()) { - (*hookList[i]) >> packet; - streamCreate << packet; - } - - delete hookList[i]; - } - - /* set end of stream and do everything neccessary */ - streamCreate.setEndOfStream(); - - streamCreate.close(); - inStream.close(); - - logger.info() << std::endl; - - return(0); -} - -int main(int argc, char* argv[]) -{ - try { - return oggTranscodeCmd(argc, argv); - } catch (OggException & e) { - logger.error() << "Fatal error: " << e.what() << std::endl; - return -1; - } -} - diff -Nru oggvideotools-0.8a/src/oggTypes.h oggvideotools-0.9.1/src/oggTypes.h --- oggvideotools-0.8a/src/oggTypes.h 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/src/oggTypes.h 1970-01-01 00:00:00.000000000 +0000 @@ -1,43 +0,0 @@ -/* - * this emun should carry all known streams that could be inserted into - * the ogg container - * - * Copyright (C) 2008 Joern Seger - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - * - */ - -#ifndef OGGTYPES_H_ -#define OGGTYPES_H_ - -#define MAXIDCHARS 7 - -enum OggType { - ogg_unknown, - ogg_vorbis, - ogg_theora, - ogg_kate, - ogg_maxOggType -}; - -static const char OggTypeMap[ogg_maxOggType][MAXIDCHARS] = { - { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, - { 0x01, 'v', 'o', 'r', 'b', 'i', 's' }, - { 0x80, 't', 'h', 'e', 'o', 'r', 'a' }, - { 0x80, 'k', 'a', 't', 'e', 0x00, 0x00 } -}; - -#endif /*OGGTYPES_H_*/ diff -Nru oggvideotools-0.8a/src/ovt_kate/CMakeLists.txt oggvideotools-0.9.1/src/ovt_kate/CMakeLists.txt --- oggvideotools-0.8a/src/ovt_kate/CMakeLists.txt 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/ovt_kate/CMakeLists.txt 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,8 @@ +SET ( LIBRARY_KATE_SRC + katePosInterpreter.cpp + kateStreamParameter.cpp + kateExtractor.cpp + ) + +ADD_LIBRARY ( ovtkate ${LIBRARY_KATE_SRC} ) + diff -Nru oggvideotools-0.8a/src/ovt_kate/kateExtractor.cpp oggvideotools-0.9.1/src/ovt_kate/kateExtractor.cpp --- oggvideotools-0.8a/src/ovt_kate/kateExtractor.cpp 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/ovt_kate/kateExtractor.cpp 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,89 @@ +#include +#include + +#include "kateExtractor.h" +#include "definition.h" +#include "oggTypes.h" +#include "oggHeader.h" +#include "kateHeader.h" +#include "kateStreamParameter.h" +#include "katePosInterpreter.h" +#include "log.h" + +KateExtractor::KateExtractor() +{ +} + +KateExtractor::~KateExtractor() +{ +} + +bool KateExtractor::_extract(uint8* data, ExtractorInformation& info) +{ + + StreamType* streaminfo = (StreamType*) (data); + KateHeader* kateHeader = (KateHeader*) (data + sizeof(StreamType)); + + /* if this is not a kate header, return with an error */ + if ((streaminfo->headerType != 0x80) || + (memcmp(streaminfo->typeName, "kate\0\0\0", 7) != 0)) { + // TODO: no size of the passed data, the above could overflow (on read) + logger.error() << "KatePosInterpreter::initialize: This page is not a kate bos\n"; + return(false); + } + + // first extract the parameters + std::shared_ptr param(new KateStreamParameter); + + param->granulerateNum = (kateHeader->granulerateNumerator); + param->granulerateDenom = (kateHeader->granulerateDenominator); + param->granuleShift = kateHeader->granuleShift; + + param->language = std::string(kateHeader->language, 16); + param->category = std::string(kateHeader->category, 16); + + /* are there any old info stored, then delete them */ + info.parameter = param; + + /* set the ogg type and the number of header packets */ + info.type = OggType::kate; + info.numOfHeaderPackets = kateHeader->numHeaders; + + return(true); +} + +bool KateExtractor::extract(OggPage& oggPage, ExtractorInformation& information) +{ + /* if this is not a Begin Of Stream page, return immediately */ + if (!oggPage->isBOS()) { + logger.error() << "KatePosInterpreter::extract: This page is not a BOS (Begin Of Stream) page\n"; + return(false); + } + + uint8_t* dataPtr = &(oggPage->data())[0]; + + /* get the information starting points within the raw data */ + OggHeader* oggHeader = (OggHeader*) dataPtr; + uint8* data = dataPtr + sizeof(OggHeader) + oggHeader->tableSegments; + + if (_extract(data, information) == false) + return(false); + + information.serialNo = oggHeader->serial; + + return(true); +} + +bool KateExtractor::extract(OggPacket& packet, ExtractorInformation& information) +{ + // if this is not a Begin Of Stream page, return immediately + if (!packet->isBOS()) { + logger.error() << "TheoraPosInterpreter::extract: This packet is not a BOS (Begin Of Stream) page\n"; + return(false); + } + + if (_extract(packet->data(), information) == false) + return(false); + + return(true); +} diff -Nru oggvideotools-0.8a/src/ovt_kate/kateExtractor.h oggvideotools-0.9.1/src/ovt_kate/kateExtractor.h --- oggvideotools-0.8a/src/ovt_kate/kateExtractor.h 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/ovt_kate/kateExtractor.h 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,18 @@ +#ifndef KATEEXTRACTOR_H_ +#define KATEEXTRACTOR_H_ + +#include "streamExtractor.h" + +class KateExtractor : public StreamExtractor { +public: + KateExtractor(); + virtual ~KateExtractor(); + + bool _extract(uint8* data, ExtractorInformation& information); + + virtual bool extract(OggPage& page, ExtractorInformation& information); + virtual bool extract(OggPacket& packet, ExtractorInformation& information); + +}; + +#endif /*KATEEXTRACTOR_H_*/ diff -Nru oggvideotools-0.8a/src/ovt_kate/kateHeader.h oggvideotools-0.9.1/src/ovt_kate/kateHeader.h --- oggvideotools-0.8a/src/ovt_kate/kateHeader.h 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/ovt_kate/kateHeader.h 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,26 @@ +#ifndef KATEHEADER_H_ +#define KATEHEADER_H_ + +struct KateHeader { + uint8 magic0; + uint8 reserved0; + uint8 versionMajor; + uint8 versionMinor; + uint8 numHeaders; + uint8 textEncoding; + uint8 textDirectionality; + uint8 reserved1; + uint8 granuleShift; + uint16 canvasWidthShift:4; + uint16 canvasWidthBase:12; + uint16 canvasHeightShift:4; + uint16 canvasHeightBase:12; + uint32 reserved2; + uint32 granulerateNumerator; + uint32 granulerateDenominator; + char language[16]; + char category[16]; +} __attribute__ ((packed)); + + +#endif /*KATEHEADER_H_*/ diff -Nru oggvideotools-0.8a/src/ovt_kate/katePosInterpreter.cpp oggvideotools-0.9.1/src/ovt_kate/katePosInterpreter.cpp --- oggvideotools-0.8a/src/ovt_kate/katePosInterpreter.cpp 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/ovt_kate/katePosInterpreter.cpp 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,145 @@ +#include "katePosInterpreter.h" +#include "kateStreamParameter.h" +#include "log.h" + +#include +#include + + +KatePosInterpreter::KatePosInterpreter() + : granuleShift(0), granulerateNumerator(1), granulerateDenominator(1) +{ +} + +KatePosInterpreter::~KatePosInterpreter() +{ +} + +uint32 KatePosInterpreter::getGranulerateNumerator() +{ + return(granulerateNumerator); +} + +uint32 KatePosInterpreter::getGranulerateDenominator() +{ + return(granulerateDenominator); +} + +uint8 KatePosInterpreter::getGranuleShift() +{ + return(granuleShift); +} + +void KatePosInterpreter::extractFramePos(int64 granulePosition, int64& base, int64& offset) +{ + + base = granulePosition>>granuleShift; + + uint64 mask(1); + mask <<= granuleShift; + mask -= 1; + offset = (granulePosition&mask); +} + +void KatePosInterpreter::initialize(StreamParameter* _param) +{ + KateStreamParameter* param = dynamic_cast(_param); + + if (!param) { + logger.error() << "KatePosInterpreter::initialize: parameter not set correctly\n"; + return; + } + + granuleShift = param->granuleShift; + granulerateNumerator = param->granulerateNum; + granulerateDenominator = param->granulerateDenom; + + initialized = true; + return; +} + +double KatePosInterpreter::getTime(int64 granulePos) +{ + if (!initialized) { + logger.error() << "KatePosInterpreter::initialize: The position interpreter is not initialized yet\n"; + return(-2); + } + + if (granulePos == -1) + return(-1); + + int64 base; + int64 offset; + + extractFramePos(granulePos, base, offset); + + double time = (granulerateDenominator*1.0/granulerateNumerator*1.0)*(base+offset); + + return(time); +} + +#if 0 +KatePosInterpreter& KatePosInterpreter::operator++() +{ + actualGranulePosition+=1; + return(*this); +} +#endif + +#if 0 +GranulePosInterpreter& TheoraPosInterpreter::operator+=(GranulePosInterpreter& _otherPosition) +{ + if (typeid(_otherPosition) != typeid(*this)) { + logger.error() << "GranulePosInterpreter::operator+=: type is not matching\n"; + return(*this); + } + + TheoraPosInterpreter* otherPosition = static_cast(&_otherPosition); + + if ((keyframeShift != otherPosition->keyframeShift) || + (framerateNumerator != otherPosition->framerateNumerator) || + (framerateDenominator != otherPosition->framerateDenominator)) { + logger.error() << "GranulePosInterpreter::operator+=: granulePositions does not match in shift value or framerate\n"; + return(*this); + } + + if ((actualGranulePosition < 0) || (otherPosition->actualGranulePosition < 0)) { + logger.error() << "GranulePosInterpreter::operator+=: one or both granulePositions are not valid\n"; + return(*this); + } + + int64 ownPos1; + int32 ownPos2; + + extractFramePos(actualGranulePosition, ownPos1, ownPos2); + + int64 otherPos1; + int32 otherPos2; + + extractFramePos(otherPosition->actualGranulePosition, otherPos1, otherPos2); + + ownPos1 += (otherPos1 + otherPos2); + + actualGranulePosition = ((ownPos1<granulepos(); + if (granpos >= 0) { + actualGranulePosition = packet->granulepos(); + packet->setGranulepos(actualGranulePosition); + } +} + + +GranulePosInterpreter& KatePosInterpreter::operator-=(GranulePosInterpreter& position) +{ + logger.error() << "GranulePosInterpreter& operator-=: not implemented\n"; + + return(*this); +} + diff -Nru oggvideotools-0.8a/src/ovt_kate/katePosInterpreter.h oggvideotools-0.9.1/src/ovt_kate/katePosInterpreter.h --- oggvideotools-0.8a/src/ovt_kate/katePosInterpreter.h 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/ovt_kate/katePosInterpreter.h 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,35 @@ +#ifndef KATEPOSINTERPRETER_H_ +#define KATEPOSINTERPRETER_H_ + +#include "definition.h" +#include "granulePosInterpreter.h" + +class KatePosInterpreter : public GranulePosInterpreter { + +protected: + uint8 granuleShift; + uint32 granulerateNumerator; + uint32 granulerateDenominator; + + void extractFramePos(int64 granulePosition, int64& base, int64& offset); + +public: + KatePosInterpreter(); + virtual ~KatePosInterpreter(); + + uint32 getGranulerateNumerator(); + uint32 getGranulerateDenominator(); + uint8 getGranuleShift(); + + virtual void initialize(StreamParameter* parameter); + virtual double getTime(int64 granulePos); + + //KatePosInterpreter& operator++(); + + virtual void setStreamPosition(OggPacket& packet); + //virtual GranulePosInterpreter& operator+=(GranulePosInterpreter& position); + virtual GranulePosInterpreter& operator-=(GranulePosInterpreter& position); + +}; + +#endif /*KATEPOSINTERPRETER_H_*/ diff -Nru oggvideotools-0.8a/src/ovt_kate/kateStreamParameter.cpp oggvideotools-0.9.1/src/ovt_kate/kateStreamParameter.cpp --- oggvideotools-0.8a/src/ovt_kate/kateStreamParameter.cpp 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/ovt_kate/kateStreamParameter.cpp 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,80 @@ +#include +#include + +#include "kateStreamParameter.h" +#include "log.h" + +KateStreamParameter::KateStreamParameter() +{ +} + +KateStreamParameter::~KateStreamParameter() +{ +} + +bool KateStreamParameter::operator==(const StreamParameter& _param) +{ + StreamParameter* _param_unconst = const_cast(&_param); + KateStreamParameter* param = dynamic_cast(_param_unconst); + + if (!param) + return(false); + + if (granuleShift != param->granuleShift) { + logger.error() << "kate parameter compare: the granule shift is not matching\n"; + return(false); + } + + if ((granulerateNum != param->granulerateNum) || + (granulerateDenom != param->granulerateDenom)) { + logger.error() << "kate parameter compare: granulerate does not match: " + << granulerateNum << "/" << param->granulerateDenom + << " != " << param->granulerateNum << "/" << param->granulerateDenom + << std::endl; + return(false); + } + + if (language != param->language) { + logger.error() << "kate parameter compare: language does not match: " + << language << param->language + << std::endl; + return(false); + } + + if (category != param->category) { + logger.error() << "kate parameter compare: category does not match: " + << category << param->category + << std::endl; + return(false); + } + + return(true); +} + +std::string KateStreamParameter::toString() +{ + std::stringstream stream; + + stream << std::endl; + stream << "Language : " << language << "\n"; + stream << "Category : " << category << "\n"; + stream << "Granulerate : " << granulerateNum/granulerateDenom << "\n"; + + stream << std::endl; + + return(stream.str()); + +} + +StreamParameter* KateStreamParameter::clone() +{ + // create a clone + KateStreamParameter* streamParameter = new KateStreamParameter(); + + // copy the original data to the clone + (*streamParameter) = (*this); + + // return the clone + return(streamParameter); + +} diff -Nru oggvideotools-0.8a/src/ovt_kate/kateStreamParameter.h oggvideotools-0.9.1/src/ovt_kate/kateStreamParameter.h --- oggvideotools-0.8a/src/ovt_kate/kateStreamParameter.h 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/ovt_kate/kateStreamParameter.h 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,27 @@ +#ifndef KATESTREAMPARAMETER_H_ +#define KATESTREAMPARAMETER_H_ + +#include "definition.h" +#include "streamParameter.h" + +class KateStreamParameter : public StreamParameter { +public: + + uint32 granulerateNum; + uint32 granulerateDenom; + std::string language; + std::string category; + + uint8 granuleShift; + + KateStreamParameter(); + virtual ~KateStreamParameter(); + + virtual bool operator==(const StreamParameter& param); + + virtual std::string toString(); + + virtual StreamParameter* clone(); +}; + +#endif /*KATESTREAMPARAMETER_H_*/ diff -Nru oggvideotools-0.8a/src/ovt_theora/CMakeLists.txt oggvideotools-0.9.1/src/ovt_theora/CMakeLists.txt --- oggvideotools-0.8a/src/ovt_theora/CMakeLists.txt 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/ovt_theora/CMakeLists.txt 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,11 @@ +SET ( LIBRARY_THEORA_SRC + theoraEncoder.cpp + theoraDecoder.cpp + theoraExtractor.cpp + theoraPosInterpreter.cpp + theoraStreamParameter.cpp + ) +# theoraConfig.cpp + +ADD_LIBRARY ( ovttheora ${LIBRARY_THEORA_SRC} ) + diff -Nru oggvideotools-0.8a/src/ovt_theora/theoraDecoder.cpp oggvideotools-0.9.1/src/ovt_theora/theoraDecoder.cpp --- oggvideotools-0.8a/src/ovt_theora/theoraDecoder.cpp 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/ovt_theora/theoraDecoder.cpp 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,403 @@ +/* + * TheoraDecoder wrapper + * + * Copyright (C) 2008 Joern Seger + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + * + */ + +#include "theoraDecoder.h" +#include + +#ifdef HAVE_LIBTHEORADEC + +#include "theoraStreamParameter.h" +#include "exception.h" + +#include +#include +#include + +#include +#include +#include +#include "exception.h" +#include "log.h" + +TheoraDecoder::TheoraDecoder(uint8 _streamID) : + MediaOutputDecoder(_streamID), setupInfo(NULL), theoraDecState(NULL), + initCount(0) +{ +} + +TheoraDecoder::~TheoraDecoder() +{ + clear(); +} + +void TheoraDecoder::clear() +{ + if (isConfigured()) { + /* delete all packets, that may be left within the queue */ + packetList.clear(); + + /* clean up everything regarding the decoding process */ + th_setup_free(setupInfo); + setupInfo=0; + th_decode_free(theoraDecState); + theoraDecState=0; + th_info_clear(&theoraInfo); + th_comment_clear(&theoraComment); + setFree(); + } +} + +void TheoraDecoder::initDecoder(StreamConfig& config, + std::vector& oggComments) +{ + if (isConfigured()) + throw OggException("TheoraDecoder::initDecoder: could not configure twice"); + + + /* initialize the info and comment handler structs */ + th_info_init(&theoraInfo); + th_comment_init(&theoraComment); + + /* initialize the packet counter */ + packetCount = 0; + + /* configure the decoders */ + for (uint8 i(0); igetUnderlayingOggPacketPtr()); + if (retVal <= 0) { + // TODO: cleanup everything that has been set up until now + th_comment_clear(&theoraComment); + if (retVal == 0) { + // There was a video packet in config.headerList. This should not happen, + // because we only read 3 packets (numOfHeaderPackets) + throw OggException("TheoraDecoder::initDecoder: unexpected video packet"); + } else { + reportTheoraError(retVal); + } + } + + } + + /* extract the comments */ + for (uint8 i(0); iINT_MAX/theoraInfo.frame_width) + || ((theoraInfo.frame_width*theoraInfo.frame_height) + >= maxVideoPlaneSize)) { + throw OggException("TheoraDecoder::initDecoder: could not set up decoder, frame is too big"); + } + + theoraDecState = th_decode_alloc(&theoraInfo, setupInfo); + if (theoraDecState == NULL) { + throw OggException("TheoraDecoder::initDecoder: th_decode_alloc failed"); + } + + TheoraStreamParameter& theoraConfig = dynamic_cast(*config.parameter.get()); + + theoraConfig.aspectRatioDenom = theoraInfo.aspect_denominator; + theoraConfig.aspectRatioNum = theoraInfo.aspect_numerator; + theoraConfig.colorspace = (TheoraStreamParameter::ColorSpace) theoraInfo.colorspace; + theoraConfig.framerateDenom = theoraInfo.fps_denominator; + theoraConfig.framerateNum = theoraInfo.fps_numerator; + theoraConfig.pictureX = theoraInfo.pic_width; + theoraConfig.pictureY = theoraInfo.pic_height; + theoraConfig.frameX = theoraInfo.frame_width; + theoraConfig.frameY = theoraInfo.frame_height; + theoraConfig.frameXOffset = theoraInfo.pic_x; + theoraConfig.frameYOffset = theoraInfo.pic_y; + theoraConfig.keyframeShift = theoraInfo.keyframe_granule_shift; + theoraConfig.pixel_fmt = (TheoraStreamParameter::PixFormat) theoraInfo.pixel_fmt; + theoraConfig.videoBitrate = theoraInfo.target_bitrate; + theoraConfig.videoQuality = theoraInfo.quality; + + /* set the state machine */ + setConfigured(); + +} + +MediaOutputDecoder& TheoraDecoder::operator<<(OggPacket packet) +{ + /* if the stream is not initialized, initialize the first structs */ + if (!isConfigured()) + throw OggException("TheoraDecoder::initDecoder: Theora decoder is not configured"); + + /* while inserting data into the stream, we do not + * decode. We just store the packets and will decode them + * on demand */ + packetList.push_back(packet); + + /* has there not been a packet in the queue before */ + if (isEmpty()) { + + /* set the internal state */ + setAvailable(); + + } + + /* count the video packets, to have a gimps of the actual position */ + packetCount++; + return(*this); +} + +bool TheoraDecoder::isNextPacketKeyframe() +{ + return ((th_packet_iskeyframe(packetList.front()->getUnderlayingOggPacketPtr()) == 1)); +} + +bool TheoraDecoder::isPacketKeyframe(OggPacket packet) +{ + return ((th_packet_iskeyframe(packet->getUnderlayingOggPacketPtr()) == 1)); +} + +uint32 TheoraDecoder::getPositionOfNextPacket() +{ + if (isEmpty()) + return (0xFFFFFFFF); + + return (packetCount - packetList.size()); +} + +TheoraDecoder& TheoraDecoder::operator>>(th_ycbcr_buffer& picture) +{ + if (!isConfigured()) + throw OggException("TheoraDecoder::operator>>: Theora decoder is not configured"); + + if (isEmpty()) + throw OggException("TheoraDecoder::operator>>: No packet available"); + + /* get the first packet from the packet list */ + OggPacket packet = packetList.front(); + packetList.pop_front(); + + /* insert the packet into the theora decoder */ + ogg_int64_t dummy; + int result; + result = th_decode_packetin(theoraDecState, packet->getUnderlayingOggPacketPtr(), &dummy); + if (result != 0 && result != TH_DUPFRAME) { + reportTheoraError(result); + } + + /* finally decode the picture */ + result = th_decode_ycbcr_out(theoraDecState, picture); + if (result != 0) { + reportTheoraError(result); + } + + if (packetList.empty()) { + setEmpty(); + } + + return(*this); +} + +/*std::string TheoraDecoder::getInfoString() +{ + + std::stringstream stream; + + if (!isConfigured()) + { + logger.error() + << "TheoraDecoder::operator>>: Theora Stream is not initialized\n"; + return (stream.str()); + } + + stream << std::endl; + stream << "Size : " << theoraInfo.pic_width << ":" + << theoraInfo.pic_height << " (Frame Size : " + << theoraInfo.frame_width << ":" << theoraInfo.frame_height + << " ; Offset: "< +#include +#include +#include +#include "definition.h" + +#include "mediaOutputDecoder.h" +#include "theoraStreamParameter.h" + +class TheoraDecoder : public MediaOutputDecoder { + +protected: + + th_info theoraInfo; + th_comment theoraComment; + th_setup_info* setupInfo; + + th_dec_ctx* theoraDecState; + + std::list packetList; +// std::vector headerList; + + uint8 initCount; + uint32 packetCount; + + static const uint32 maxVideoPlaneSize = (4096*4096); + + void reportTheoraError(int error) const; + +public: + TheoraDecoder(uint8 streamID = 0); + virtual ~TheoraDecoder(); + + virtual void initDecoder(StreamConfig& config, std::vector& commentList); + + virtual MediaOutputDecoder& operator<<(OggPacket packet); + + TheoraDecoder& operator>>(th_ycbcr_buffer& picture); + + + th_info& getInfo(); + th_comment& getComment(); + + bool isNextPacketKeyframe(); + uint32 getPositionOfNextPacket(); + + virtual void clear(); + + uint32 getWidth(); + uint32 getHeight(); + + static bool isPacketKeyframe(OggPacket packet); + + virtual std::string configuration() const; + + +}; + +#endif // WITH_LIBTHEORA + +#endif /*THEORADECODER_H_*/ diff -Nru oggvideotools-0.8a/src/ovt_theora/theoraEncoder.cpp oggvideotools-0.9.1/src/ovt_theora/theoraEncoder.cpp --- oggvideotools-0.8a/src/ovt_theora/theoraEncoder.cpp 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/ovt_theora/theoraEncoder.cpp 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,338 @@ +/* + * TheoraEncoder wrapper + * + * Copyright (C) 2008 Joern Seger + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + * + */ + +#include "theoraEncoder.h" + +#ifdef HAVE_LIBTHEORADEC + +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif + +#include +#include +#include +#include +#include + +#include "exception.h" +#include "log.h" + +TheoraEncoder::TheoraEncoder(uint8 _streamNo) + : MediaInputEncoder(_streamNo), packetCounter(0) +{ + th_comment_init(&theoraComment); +} + +TheoraEncoder::~TheoraEncoder() +{ + if (isConfigured()) + th_encode_free(theoraState); + + th_info_clear(&theoraInfo); + th_comment_clear(&theoraComment); + +} + +void TheoraEncoder::createHeader(std::vector& headerList, std::vector& oggComments) +{ + int32 encodeRetID(1); + + th_comment_add_tag(&theoraComment,"ENCODER",PACKAGE_STRING); + + /* add other comments */ + for (uint32 i(0); i 0) { + ogg_packet tmpPkt; + encodeRetID = th_encode_flushheader(theoraState, &theoraComment, &tmpPkt); //packet->getUnderlayingOggPacketPtr()); + + if (encodeRetID == TH_EFAULT) + throw OggException("TheoraEncoder::operator <<: encoder or packet are NULL"); + + // ost::slog(ost::Slog::levelDebug) << "TheoraEncoder:: inserting header/n"; + if (encodeRetID > 0) { + OggPacket packet = std::make_shared(tmpPkt); + +#ifdef DEBUG + logger.debug() << "Theora Packet Number: "<< packet.packetno << "reset to 0" << std::endl; +#endif + + packet->setStreamType(OggType::theora); + packet->setStreamNo(streamNo); + packet->setStreamHeader(); + packet->setPacketno(0); + + headerList.push_back(packet); + } + } + + +} + +void TheoraEncoder::reset() +{ + if (isConfigured()) { + th_encode_free(theoraState); + theoraState = th_encode_alloc(&theoraInfo); + } + +} + +void TheoraEncoder::configureEncoder(StreamConfig& streamConf, std::vector& oggComments) +{ + if (isConfigured()) + throw OggException("TheoraEncoder::configureEncoder: can't configure encoder twice"); + + TheoraStreamParameter& config = dynamic_cast(*streamConf.parameter.get()); + + // Theora has a divisible-by-sixteen restriction for the encoded video size + // scale the frame size up to the nearest /16 and calculate offsets + + config.frameX = (config.pictureX+15)&~0xF; + config.frameY = (config.pictureY+15)&~0xF; + + // We force the offset to be even. + // This ensures that the chroma samples align properly with the luma + // samples. + +// config.frameXOffset = ((config.frameX - config.pictureX)/2)&~1; +// config.frameYOffset = ((config.frameY - config.pictureY)/2)&~1; +// config.frameXOffset = 0; +// config.frameYOffset = 0; + + // let's initialize the theora encoder + th_info_init(&theoraInfo); + + theoraInfo.pic_width = config.pictureX; + theoraInfo.pic_height = config.pictureY; + theoraInfo.frame_width = config.frameX; + theoraInfo.frame_height = config.frameY; + theoraInfo.pic_x = config.frameXOffset; + theoraInfo.pic_y = config.frameYOffset; + theoraInfo.fps_numerator = config.framerateNum; + theoraInfo.fps_denominator = config.framerateDenom; + theoraInfo.aspect_numerator = config.aspectRatioNum; + theoraInfo.aspect_denominator = config.aspectRatioDenom; + switch ( config.colorspace ) { + case TheoraStreamParameter::ITU_470M: + theoraInfo.colorspace = TH_CS_ITU_REC_470M; + break; + case TheoraStreamParameter::ITU_470BG: + theoraInfo.colorspace = TH_CS_ITU_REC_470BG; + break; + default: + theoraInfo.colorspace = TH_CS_UNSPECIFIED; + break; + } + switch (config.pixel_fmt) { + case TheoraStreamParameter::pf_420: + theoraInfo.pixel_fmt = TH_PF_420; + break; + case TheoraStreamParameter::pf_422: + theoraInfo.pixel_fmt = TH_PF_422; + break; + case TheoraStreamParameter::pf_444: + theoraInfo.pixel_fmt = TH_PF_444; + break; + default: + theoraInfo.pixel_fmt = TH_PF_420; // most likly this format + break; + } + + theoraInfo.target_bitrate = config.videoBitrate; + theoraInfo.quality = config.videoQuality; + theoraInfo.keyframe_granule_shift = config.keyframeShift; // 6 bit to distinguish interframes + + // TODO: Pixel Format should be available in config + /* create a new theora encoder handle */ + theoraState = th_encode_alloc(&theoraInfo); + + if (theoraState) + setConfigured(); + else + throw OggException("TheoraEncoder::setConfig: Parameters invalid"); + + createHeader(streamConf.headerList, oggComments); + + streamConf.serialNo = (uint32) rand(); + streamConf.streamNo = streamNo; + streamConf.type = OggType::theora; + streamConf.numOfHeaderPackets = (uint8) streamConf.headerList.size(); + + // reset the packet counter if encoder is reconfigured + packetCounter = 0; +} + +MediaInputEncoder& TheoraEncoder::operator >>(OggPacket& packet) +{ + if (packetList.empty()) + throw OggException("TheoraEncoder::operator >>: No PacketAvailable"); + + packet = packetList.front(); + packetList.pop_front(); + + packet->setPacketno(packetCounter++); + + if (packetList.empty()) + setEmpty(); + + return(*this); +} + +MediaInputEncoder& TheoraEncoder::operator <<(th_ycbcr_buffer buffer) +{ + if (!isConfigured()) + throw OggException("TheoraEncoder::operator <<: codec not configured"); + + int32 errID; + if ((errID = th_encode_ycbcr_in(theoraState, buffer)) != 0) { + if (errID == TH_EFAULT) + throw OggException("TheoraEncoder::operator <<: encoder or video buffer is NULL"); + if (errID == TH_EINVAL) { + logger.debug() << "Size of picture "< 0) { + + ogg_packet _packet; + encodeRetID = th_encode_packetout(theoraState, 0, &_packet); + + /* Spec says: + * _op An ogg_packet structure to fill. All of the elements of this structure will be set, + * including a pointer to the video data. The memory for the video data is owned by libtheoraenc, + * and may be invalidated when the next encoder function is called. + * This means, data may be lost and cannot be used in a packet list, so we need to copy, + * this really kills performance ... */ + if (encodeRetID > 0) { + OggPacket packet = std::make_shared(_packet); + +#ifdef DEBUG + logger.debug() << "Theora Packet Number: "<< packet.packetno<setStreamType(OggType::theora); + packet->setStreamNo(streamNo); + + packetList.push_back(packet); + } + } + + if (encodeRetID == TH_EFAULT) + throw OggException("TheoraEncoder::operator <<: encoder or packet are NULL"); + + setAvailable(); + + return(*this); +} + +uint32 TheoraEncoder::width() const +{ + return(theoraInfo.pic_width); +} + +uint32 TheoraEncoder::height() const +{ + return(theoraInfo.pic_height); +} + +th_info& TheoraEncoder::getInfo() +{ + return(theoraInfo); +} + +std::string TheoraEncoder::configuration() const +{ + std::stringstream stream; + + stream << "Theora Encoder Configuration:"< +#include +#include +#include + +#include "oggPacket.h" +#include "oggComment.h" +#include "mediaInputEncoder.h" +#include "theoraStreamParameter.h" +#include "streamConfig.h" + +class TheoraEncoder : public MediaInputEncoder { + +protected: + + uint64 packetCounter; + + th_enc_ctx* theoraState; + th_comment theoraComment; + th_info theoraInfo; + + std::list packetList; + + void createHeader(std::vector& headerList, std::vector& oggComments); + +public: + + TheoraEncoder(uint8 streamNo = 0); + virtual ~TheoraEncoder(); + + virtual MediaInputEncoder& operator>>(OggPacket& packet); + MediaInputEncoder& operator<<(th_ycbcr_buffer buffer); + + virtual void configureEncoder(StreamConfig& config, std::vector& oggComments); + + uint32 width() const; + uint32 height() const; + + th_info& getInfo(); + + virtual std::string configuration() const; + + virtual void reset(); + +}; + +#endif /* HAVE_LIBTHEORAENC */ + +#endif /*THEORAENCODER_H_*/ diff -Nru oggvideotools-0.8a/src/ovt_theora/theoraExtractor.cpp oggvideotools-0.9.1/src/ovt_theora/theoraExtractor.cpp --- oggvideotools-0.8a/src/ovt_theora/theoraExtractor.cpp 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/ovt_theora/theoraExtractor.cpp 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,104 @@ +#include +#include + +#include "theoraExtractor.h" + +#include "oggHeader.h" +#include "theoraHeader.h" +#include "theoraStreamParameter.h" +#include "log.h" + +TheoraExtractor::TheoraExtractor() +{ +} + +TheoraExtractor::~TheoraExtractor() +{ +} + +bool TheoraExtractor::_extract(uint8* data, ExtractorInformation& info) +{ + + StreamType* streaminfo = (StreamType*) (data); + TheoraHeader* theoraHeader = (TheoraHeader*) (data + sizeof(StreamType)); + + /* if this is not a theora header, return with an error */ + if ((streaminfo->headerType != 0x80) || + (strncmp(streaminfo->typeName, "theora", 6) != 0)) { + logger.error() << "TheoraPosInterpreter::initialize: This page is not a theora bos\n"; + return(false); + } + + // first extract the parameters + std::shared_ptr param = std::make_shared(); + + // for all the calculation, we need to convert some fields + theoraHeader->un.pleaseconvert = convert16(theoraHeader->un.pleaseconvert); + + param->framerateNum = convert32(theoraHeader->frn); + param->framerateDenom = convert32(theoraHeader->frd); + + param->pictureX = convert24(theoraHeader->picw); + param->pictureY = convert24(theoraHeader->pich); + + param->aspectRatioNum = convert24(theoraHeader->parn); + param->aspectRatioDenom = convert24(theoraHeader->parn); + + param->frameX = convert16(theoraHeader->fmbw)*16; + param->frameY = convert16(theoraHeader->fmbh)*16; + + param->frameXOffset = theoraHeader->picx; + param->frameYOffset = theoraHeader->picy; + + param->videoQuality = theoraHeader->un.lenbo.qual; + param->videoBitrate = convert24(theoraHeader->nombr); + + param->keyframeShift = theoraHeader->un.lenbo.kfgshift; + + param->colorspace = (TheoraStreamParameter::ColorSpace) theoraHeader->cs; + param->pixel_fmt = (TheoraStreamParameter::PixFormat) theoraHeader->un.lenbo.pf; + + // to have the original packet, we recover the data + theoraHeader->un.pleaseconvert = convert16(theoraHeader->un.pleaseconvert); + + info.parameter = param; + + /* set the ogg type and the number of header packets */ + info.type = OggType::theora; + info.numOfHeaderPackets = 3; // the first three packets are headers + + return(true); +} + +bool TheoraExtractor::extract(OggPage& oggPage, ExtractorInformation& information) +{ + /* if this is not a Begin Of Stream page, return immediately */ + if (!oggPage->isBOS()) { + logger.error() << "TheoraPosInterpreter::extract: This page is not a BOS (Begin Of Stream) page\n"; + return(false); + } + + uint8_t* dataPtr = &(oggPage->data())[0]; + /* get the information starting points within the raw data */ + OggHeader* oggHeader = (OggHeader*) dataPtr; + uint8* data = dataPtr + sizeof(OggHeader) + oggHeader->tableSegments; + + if (!_extract(data, information)) + return(false); + + information.serialNo = oggHeader->serial; + + return(true); +} + +bool TheoraExtractor::extract(OggPacket& packet, ExtractorInformation& information) +{ + // if this is not a Begin Of Stream page, return immediately + if (!packet->isBOS()) { + logger.error() << "TheoraPosInterpreter::extract: This packet is not a BOS (Begin Of Stream) page\n"; + return(false); + } + + return _extract(packet->data(), information); + +} diff -Nru oggvideotools-0.8a/src/ovt_theora/theoraExtractor.h oggvideotools-0.9.1/src/ovt_theora/theoraExtractor.h --- oggvideotools-0.8a/src/ovt_theora/theoraExtractor.h 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/ovt_theora/theoraExtractor.h 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,18 @@ +#ifndef THEORAEXTRACTOR_H_ +#define THEORAEXTRACTOR_H_ + +#include "streamExtractor.h" + +class TheoraExtractor : public StreamExtractor { +public: + TheoraExtractor(); + virtual ~TheoraExtractor(); + + bool _extract(uint8* data, ExtractorInformation& information); + + virtual bool extract(OggPage& page, ExtractorInformation& information); + virtual bool extract(OggPacket& packet, ExtractorInformation& information); + +}; + +#endif /*THEORAEXTRACTOR_H_*/ diff -Nru oggvideotools-0.8a/src/ovt_theora/theoraHeader.h oggvideotools-0.9.1/src/ovt_theora/theoraHeader.h --- oggvideotools-0.8a/src/ovt_theora/theoraHeader.h 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/ovt_theora/theoraHeader.h 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,35 @@ +#ifndef THEORAHEADER_H +#define THEORAHEADER_H + +struct TheoraHeader { + char vmaj; + char vmin; + char vrev; + uint16 fmbw; + uint16 fmbh; + uint32 picw:24; + uint32 pich:24; + char picx; + char picy; + uint32 frn; + uint32 frd; + uint32 parn:24; + uint32 pard:24; + char cs; + uint32 nombr:24; + + // its little endian + // and network byte order + union { + struct { + uint16 reserved:3; + uint16 pf:2; + uint16 kfgshift:5; + uint16 qual:6; + } lenbo; + uint16 pleaseconvert; + } un; + +} __attribute__ ((packed)); + +#endif diff -Nru oggvideotools-0.8a/src/ovt_theora/theoraPosInterpreter.cpp oggvideotools-0.9.1/src/ovt_theora/theoraPosInterpreter.cpp --- oggvideotools-0.8a/src/ovt_theora/theoraPosInterpreter.cpp 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/ovt_theora/theoraPosInterpreter.cpp 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,241 @@ +#include "theoraPosInterpreter.h" +#include "theoraStreamParameter.h" + +#include +#include +#include "log.h" + + +TheoraPosInterpreter::TheoraPosInterpreter() + : keyframeShift(6), framerateNumerator(1), framerateDenominator(1) +{ +} + +TheoraPosInterpreter::~TheoraPosInterpreter() +{ +} + +uint32 TheoraPosInterpreter::getFramerateNumerator() +{ + return(framerateNumerator); +} + +uint32 TheoraPosInterpreter::getFramerateDenominator() +{ + return(framerateDenominator); +} + +uint8 TheoraPosInterpreter::getKeyframeShift() +{ + return(keyframeShift); +} + +void TheoraPosInterpreter::extractFramePos(int64 granulePosition, int64& keyframePosition, int32& intraframePosition) +{ + + keyframePosition = granulePosition>>keyframeShift; + + uint64 mask(1); + mask <<= keyframeShift; + mask -= 1; + intraframePosition = (granulePosition&mask); + +} + +void TheoraPosInterpreter::initialize(StreamParameter* _param) +{ + TheoraStreamParameter* param = dynamic_cast(_param); + + if (!param) { + logger.error() << "TheoraPosInterpreter::initialize: parameter not set correctly\n"; + return; + } + + keyframeShift = param->keyframeShift; + framerateNumerator = param->framerateNum; + framerateDenominator = param->framerateDenom; + + initialized = true; + return; +} + +/* +void TheoraPosInterpreter::initialize(OggPage oggPage) +{ + if (!oggPage.isBOS()) { + logger.error() << "TheoraPosInterpreter::initialize: This page is not a BOS (Begin Of Stream) page\n"; + return; + } + + OggHeader* oggHeader = (OggHeader*) (oggPage.data()); + StreamType* streamInformation = (StreamType*) (oggPage.data() + sizeof(OggHeader) + oggHeader->tableSegments); + TheoraHeader* theoraHeader = (TheoraHeader*) (oggPage.data() + sizeof(OggHeader) + oggHeader->tableSegments + sizeof(StreamType)); + + if ((streamInformation->headerType != 0x80) || + (strncmp(streamInformation->typeName, "theora", 6) != 0)) { + logger.error() << "TheoraPosInterpreter::initialize: This page is not a theora bos\n"; + return; + } + + // for all the calculation, we need to convert some fields + theoraHeader->un.pleaseconvert = convert16(theoraHeader->un.pleaseconvert); + + framerateNumerator = convert32(theoraHeader->frn); + framerateDenominator = convert32(theoraHeader->frd); + + keyframeShift = theoraHeader->un.lenbo.kfgshift; + + // to have the original packet, we recover the data + theoraHeader->un.pleaseconvert = convert16(theoraHeader->un.pleaseconvert); + + initialized = true; +} + +void TheoraPosInterpreter::initialize(OggPacket m_oggPacket) +{ + + StreamType* streamInformation = (StreamType*) (m_oggPacket.data()); + TheoraHeader* theoraHeader = (TheoraHeader*) (m_oggPacket.data() + sizeof(StreamType)); + + if ((streamInformation->headerType != 0x80) || + (strncmp(streamInformation->typeName, "theora", 6) != 0)) { + logger.error() << "TheoraPosInterpreter::initialize: This page is not a theora bos\n"; + return; + } + + // for all the calculation, we need to convert some fields + theoraHeader->un.pleaseconvert = convert16(theoraHeader->un.pleaseconvert); + + framerateNumerator = convert32(theoraHeader->frn); + framerateDenominator = convert32(theoraHeader->frd); + + keyframeShift = theoraHeader->un.lenbo.kfgshift; + + // to have the original packet, we recover the data + theoraHeader->un.pleaseconvert = convert16(theoraHeader->un.pleaseconvert); + + initialized = true; +} + +*/ + +double TheoraPosInterpreter::getTime(int64 granulePos) +{ + if (!initialized) { + logger.error() << "TheoraPosInterpreter::initialize: The position interpreter is not initialized yet\n"; + return(-2); + } + + if (granulePos == -1) + return(-1); + + int64 pos1; + int32 pos2; + + extractFramePos(granulePos, pos1, pos2); + + double time = (framerateDenominator*1.0/framerateNumerator*1.0)*(pos1+pos2); + +// logger.debug() << "time extractor: "< "<(&_otherPosition); + + if ((keyframeShift != otherPosition->keyframeShift) || + (framerateNumerator != otherPosition->framerateNumerator) || + (framerateDenominator != otherPosition->framerateDenominator)) { + logger.error() << "GranulePosInterpreter::operator+=: granulePositions does not match in shift value or framerate\n"; + return(*this); + } + + if ((actualGranulePosition < 0) || (otherPosition->actualGranulePosition < 0)) { + logger.error() << "GranulePosInterpreter::operator+=: one or both granulePositions are not valid\n"; + return(*this); + } + + int64 ownPos1; + int32 ownPos2; + + extractFramePos(actualGranulePosition, ownPos1, ownPos2); + + int64 otherPos1; + int32 otherPos2; + + extractFramePos(otherPosition->actualGranulePosition, otherPos1, otherPos2); + + ownPos1 += (otherPos1 + otherPos2); + + actualGranulePosition = ((ownPos1<length()<=0) + return(false); + + if (packet->data()[0]&0x80) { + return(false); + } + + if (!(packet->data()[0]&0x40)) { + return(true); + } + + return(false); +} + +void TheoraPosInterpreter::setStreamPosition(OggPacket& packet) +{ + /* is this a keyframe */ + if (packetIsKeyframe(packet)) + addKeyframe(); + else + actualGranulePosition+=1; + + packet->setGranulepos(actualGranulePosition); +} + + +GranulePosInterpreter& TheoraPosInterpreter::operator-=(GranulePosInterpreter& position) +{ + logger.error() << "GranulePosInterpreter& operator-=: not implemented\n"; + + return(*this); +} diff -Nru oggvideotools-0.8a/src/ovt_theora/theoraPosInterpreter.h oggvideotools-0.9.1/src/ovt_theora/theoraPosInterpreter.h --- oggvideotools-0.8a/src/ovt_theora/theoraPosInterpreter.h 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/ovt_theora/theoraPosInterpreter.h 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,38 @@ +#ifndef THEORAPOSINTERPRETER_H_ +#define THEORAPOSINTERPRETER_H_ + +#include "definition.h" +#include "granulePosInterpreter.h" + +class TheoraPosInterpreter : public GranulePosInterpreter { + +protected: + uint8 keyframeShift; + uint32 framerateNumerator; + uint32 framerateDenominator; + + +public: + TheoraPosInterpreter(); + virtual ~TheoraPosInterpreter(); + + void extractFramePos(int64 granulePosition, int64& keyframePosition, + int32& intraframePosition); + uint32 getFramerateNumerator(); + uint32 getFramerateDenominator(); + uint8 getKeyframeShift(); + + virtual void initialize(StreamParameter* parameter); + virtual double getTime(int64 granulePos); + + TheoraPosInterpreter& operator++(); + void addKeyframe(); + static bool packetIsKeyframe(OggPacket& packet); + + virtual void setStreamPosition(OggPacket& packet); + virtual GranulePosInterpreter& operator+=(GranulePosInterpreter& position); + virtual GranulePosInterpreter& operator-=(GranulePosInterpreter& position); + +}; + +#endif /*THEORAPOSINTERPRETER_H_*/ diff -Nru oggvideotools-0.8a/src/ovt_theora/theoraStreamParameter.cpp oggvideotools-0.9.1/src/ovt_theora/theoraStreamParameter.cpp --- oggvideotools-0.8a/src/ovt_theora/theoraStreamParameter.cpp 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/ovt_theora/theoraStreamParameter.cpp 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,105 @@ +#include +#include + +#include "theoraStreamParameter.h" +#include "log.h" + +TheoraStreamParameter::TheoraStreamParameter() +{ +} + +TheoraStreamParameter::~TheoraStreamParameter() +{ +} + +bool TheoraStreamParameter::operator==(const StreamParameter& _param) +{ + StreamParameter* _param_unconst = const_cast(&_param); + TheoraStreamParameter* param = dynamic_cast(_param_unconst); + + if (!param) + return(false); + + if (keyframeShift != param->keyframeShift) { + logger.error() << "theora parameter compare: the granule shift is not matching\n"; + return(false); + } + + if ((framerateNum != param->framerateNum) || + (framerateDenom != param->framerateDenom)) { + logger.error() << "theora parameter compare: framerate does not match: " + << framerateNum << "/" << param->framerateDenom + << " != " << param->framerateNum << "/" << param->framerateDenom + << std::endl; + return(false); + } + + if ((pictureX != param->pictureX) || + (pictureY != param->pictureY)) { + logger.error() << "theora parameter compare: height or width are not matching:" + << pictureX << ":" << pictureY << " != " + << param->pictureX << ":" << param->pictureY << "\n"; + return(false); + } + + if ((frameX != param->frameX) || + (frameY != param->frameY)) { + logger.error() << "theora parameter compare: frame height or width are not matching:" + << frameX << ":" << frameY << " != " + << param->frameX << ":" << param->frameY << "\n"; + return(false); + } + + /* if ((frameXOffset != param->frameXOffset) || + (frameYOffset != param->frameYOffset)) { + logger.error() << "theora parameter compare: offsets are not matching:" + << frameXOffset << ":" << frameXOffset << " != " + << param->frameYOffset << ":" << param->frameYOffset << "\n"; + return(false); + } + */ + return(true); +} + +std::string TheoraStreamParameter::toString() +{ + std::stringstream stream; + + stream << std::endl; + stream << "Size : " << pictureX << " x " << pictureY + << " (Frame Size : " << frameX << " x" << frameY << " )\n" + << "KeyframeShift: " <<(uint32)keyframeShift< +#include +#include "log.h" + +AudioPacketInternal::AudioPacketInternal() : + pcmData(0), length(0), channels(0) +{ +} + +AudioPacketInternal::~AudioPacketInternal() +{ + cleanup(); +} + +AudioPacketInternal::AudioPacketInternal(const AudioPacketInternal& packet) : + pcmData(0), length(packet.length), channels(packet.channels) +{ + /* create memory region */ + initMem(channels, length); + + /* copy data */ + for (uint8 i(0); i= channels) || (pcmData[channel] == 0)) + return; + + memcpy(pcmData[channel], _dataPtr, length*sizeof(float)); + +} + +void AudioPacketInternal::cleanup() +{ + + if (pcmData != 0) { + for (uint8 ch(0); ch + +class AudioPacketInternal { + +protected: + float** pcmData; + uint32 length; + uint8 channels; + + void initMem(uint8 channels, uint32 length); + +public: + + AudioPacketInternal(); + AudioPacketInternal(const AudioPacketInternal& packet); + AudioPacketInternal(uint8 channels, uint32 length); + AudioPacketInternal(float** dataPtr, uint32 length, uint8 channels); + ~AudioPacketInternal(); + + uint32 getLength() const; + uint8 getChannels() const; + float** getAllChannels() const; + + float* getDataOfChannel(uint8 channel) const; + void setDataOfChannel(uint8 channel, float* data); + + void cleanup(); +}; + +typedef std::shared_ptr AudioPacket; + +#endif diff -Nru oggvideotools-0.8a/src/ovt_vorbis/CMakeLists.txt oggvideotools-0.9.1/src/ovt_vorbis/CMakeLists.txt --- oggvideotools-0.8a/src/ovt_vorbis/CMakeLists.txt 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/ovt_vorbis/CMakeLists.txt 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,11 @@ +SET ( LIBRARY_VORBIS_SRC + vorbisDecoder.cpp + vorbisEncoder.cpp + vorbisExtractor.cpp + vorbisPosInterpreter.cpp + vorbisStreamParameter.cpp + audioPacket.cpp + ) + +ADD_LIBRARY ( ovtvorbis STATIC ${LIBRARY_VORBIS_SRC} ) + diff -Nru oggvideotools-0.8a/src/ovt_vorbis/vorbisDecoder.cpp oggvideotools-0.9.1/src/ovt_vorbis/vorbisDecoder.cpp --- oggvideotools-0.8a/src/ovt_vorbis/vorbisDecoder.cpp 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/ovt_vorbis/vorbisDecoder.cpp 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,198 @@ +#include "vorbisDecoder.h" + +#ifdef HAVE_LIBVORBIS + +#include +#include +#include + +#include "vorbisStreamParameter.h" +#include "exception.h" +#include "log.h" + +VorbisDecoder::VorbisDecoder(uint8 _streamID) : + MediaOutputDecoder(_streamID), initCount(0) +{ + +} + +VorbisDecoder::~VorbisDecoder() +{ + clear(); +} + +void VorbisDecoder::clear() +{ + + if (isConfigured()) { + /* delete all packets that may have left within the decoder queue */ + packetList.clear(); + + vorbis_info_clear(&vorbisInfo); + vorbis_block_clear(&vorbisBlock); + vorbis_dsp_clear(&vorbisDspState); + vorbis_comment_init(&vorbisComment); + setFree(); + } + +} + +void VorbisDecoder::initDecoder(StreamConfig& config, std::vector& oggComments) +{ + + if (isConfigured()) { + throw OggException("VorbisDecoder: Decoder is still configured"); + } + + /* initialize the info and comment handler structs */ + vorbis_info_init(&vorbisInfo); + vorbis_comment_init(&vorbisComment); + + /* initialize the packet counter */ + packetCount = 0; + + /* Konfiguration des Decoders */ + int retVal; + for (uint8 i(0); igetUnderlayingOggPacketPtr()); + if (retVal < 0) { + vorbis_comment_clear(&vorbisComment); + throw OggException("VorbisDecoder::initDecoder: packet is not a header"); + } + + } + + /* extract the comments*/ + for (uint8 i(0); i(*config.parameter.get()); + + vorbisConfig.samplerate = vorbisInfo.rate; + vorbisConfig.channels = vorbisInfo.channels; + vorbisConfig.datarate = vorbisInfo.bitrate_nominal; + vorbisConfig.datarateMin = vorbisInfo.bitrate_lower; + vorbisConfig.datarateMax = vorbisInfo.bitrate_upper; + vorbisConfig.datarateWin = vorbisInfo.bitrate_window; + + /* set the state machine */ + setConfigured(); + +} + +MediaOutputDecoder& VorbisDecoder::operator<<(OggPacket packet) +{ + if (!isConfigured()) { + throw OggException("VorbisDecoder::operator<<: stream not configured"); + } + + if (vorbis_synthesis(&vorbisBlock,packet->getUnderlayingOggPacketPtr())==0) + vorbis_synthesis_blockin(&vorbisDspState,&vorbisBlock); + + float** pcm; + int samples; + + while ((samples=vorbis_synthesis_pcmout(&vorbisDspState,&pcm))>0) { + AudioPacket apack(new AudioPacketInternal(pcm, samples, vorbisInfo.channels)); + packetList.push_back(apack); + vorbis_synthesis_read(&vorbisDspState,samples); + } + + + /* has there not been a packet in the queue before */ + if (!packetList.empty()) { + /* set the internal state */ + setAvailable(); + } + + /* count the audio packets, to have a glimps of the actual position */ + packetCount++; + + return(*this); +} + +VorbisDecoder& VorbisDecoder::operator>>(AudioPacket& audioPacket) +{ + if (!isAvailable()) + throw OggException("VorbisDecoder::operator>>: No audio packets available"); + + audioPacket = packetList.front(); + packetList.pop_front(); + + sampleCounter += audioPacket->getLength(); + +// logger.debug() << " Sample counter: "< 0 ) + stream << "Bitrate (lower) : " << vorbisInfo.bitrate_lower << std::endl; + if ( vorbisInfo.bitrate_upper > 0 ) + stream << "Bitrate (upper) : " << vorbisInfo.bitrate_upper << std::endl; + //stream << "Bitrate (window) : " << vorbisInfo.bitrate_window << std::endl; + stream << std::endl; + + if (vorbisComment.comments) { + stream << "Comments:\n"; + for (int i=0; i +#include +#include +#include "definition.h" + +#include "mediaOutputDecoder.h" +#include "audioPacket.h" + +class VorbisDecoder : public MediaOutputDecoder { + +protected: + + vorbis_info vorbisInfo; + vorbis_dsp_state vorbisDspState; + vorbis_block vorbisBlock; + vorbis_comment vorbisComment; + + std::list packetList; + + uint8 initCount; + uint32 packetCount; + + uint64 sampleCounter; + +public: + + VorbisDecoder(uint8 streamID = 0); + virtual ~VorbisDecoder(); + + virtual void initDecoder(StreamConfig& config, std::vector& oggComments); + +// virtual std::string getInfoString(); + + vorbis_info& getInfo(); + vorbis_comment& getComment(); + + virtual MediaOutputDecoder& operator<<(OggPacket packet); + VorbisDecoder& operator>>(AudioPacket& audioPacket); + + virtual void clear(); + + virtual double getTimeOfNextPacket(); + virtual uint32 getPositionOfNextPacket() { + return packetCount; + } + + virtual std::string configuration() const; + + +}; + +#endif // WITH_LIBVORBIS + +#endif + diff -Nru oggvideotools-0.8a/src/ovt_vorbis/vorbisEncoder.cpp oggvideotools-0.9.1/src/ovt_vorbis/vorbisEncoder.cpp --- oggvideotools-0.8a/src/ovt_vorbis/vorbisEncoder.cpp 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/ovt_vorbis/vorbisEncoder.cpp 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,259 @@ +#include "vorbisEncoder.h" + +#ifdef HAVE_LIBVORBIS + +#include "vorbisExtractor.h" +#include +#include +#include +#include + +#include "exception.h" +#include "log.h" + +VorbisEncoder::VorbisEncoder(uint8 _streamNo) : + MediaInputEncoder(_streamNo), pktCnt(0) +{ +} + +VorbisEncoder::~VorbisEncoder() +{ + + if (isConfigured()) { + vorbis_block_clear(&vorbisBlock); + vorbis_dsp_clear(&vorbisState); + vorbis_info_clear(&vorbisInfo); + } + +} + +vorbis_info& VorbisEncoder::getInfo() +{ + return(vorbisInfo); +} + +void VorbisEncoder::configureEncoder(StreamConfig& streamConfig, std::vector& oggComments) +{ + if (isConfigured()) + throw OggException("VorbisEncoder::setConfig: can't configure encoder twice"); + + vorbis_info_init(&vorbisInfo); + + VorbisStreamParameter& config = dynamic_cast(*streamConfig.parameter.get()); + + /* int32 ret = vorbis_encode_init(&vorbisInfo, config.channels, + config.samplerate, config.datarate, config.datarate, config.datarate); + */ + int32 ret = vorbis_encode_init(&vorbisInfo, config.channels, + config.samplerate, -1, config.datarate, -1); + + /* do not continue if setup failed; this can happen if we ask for a + mode that libVorbis does not support (eg, too low a bitrate, etc, + will return 'OV_EIMPL') */ + + if (ret) + throw OggException("VorbisEncoder::configureEncoder: can not configure encoder, wrong parameters"); + + /* add a comment */ + vorbis_comment_init(&vorbisComment); + vorbis_comment_add_tag(&vorbisComment, "ENCODER", PACKAGE_STRING); + + /* add other comments */ + for (uint32 i(0); i(); + OggPacket header_comm = std::make_shared(); + OggPacket header_code = std::make_shared(); + + vorbis_analysis_headerout(&vorbisState, &vorbisComment, + header->getUnderlayingOggPacketPtr(), + header_comm->getUnderlayingOggPacketPtr(), + header_code->getUnderlayingOggPacketPtr() ); + + header->setStreamType(OggType::vorbis); + header->setStreamNo(streamNo); + header->setStreamHeader(); + +#ifdef DEBUG + logger.debug() << "Vorbis Packet Number: "<< header.packetno << "reset to 0" << std::endl; +#endif + header->setPacketno(0); + + streamConfig.headerList.push_back(header); + + header_comm->setStreamType(OggType::vorbis); + header_comm->setStreamNo(streamNo); + header_comm->setStreamHeader(); + +#ifdef DEBUG + logger.debug() << "Vorbis Packet Number: "<< header_comm.packetno << "reset to 0" << std::endl; +#endif + header_comm->setPacketno(0); + + streamConfig.headerList.push_back(header_comm); + + header_code->setStreamType(OggType::vorbis); + header_code->setStreamNo(streamNo); + header_code->setStreamHeader(); + +#ifdef DEBUG + logger.debug() << "Vorbis Packet Number: "<< header_code.packetno << "reset to 0" << std::endl; +#endif + header_code->setPacketno(0); + + streamConfig.headerList.push_back(header_code); + + VorbisExtractor extractor; + extractor.extract(streamConfig.headerList[0], streamConfig); + + streamConfig.numOfHeaderPackets = streamConfig.headerList.size(); +// streamConfig.parameter = new VorbisStreamParameter(config); + streamConfig.type = OggType::vorbis; + streamConfig.streamNo = streamNo; + streamConfig.serialNo = rand(); + + vorbis_comment_clear(&vorbisComment); + + setConfigured(); + + // reset packet Counter, in case, the stream reconfigured + pktCnt = 0; + +} + +MediaInputEncoder& VorbisEncoder::operator<<(AudioPacket& aPacket) +{ + float **buffer=vorbis_analysis_buffer(&vorbisState, aPacket->getLength()); + + /* there is no chance to give the data directly to the encoder + * so we need to copy :-( */ + for (uint8 i(0); igetDataOfChannel(i), aPacket->getLength()*sizeof(float)); + } + + /* tell the library how much we actually submitted */ + if (vorbis_analysis_wrote(&vorbisState, aPacket->getLength()) < 0) + throw OggException("VorbisEncoder::operator <<: Invalid value"); + + /* vorbis does some data preanalysis, then divvies up blocks for + more involved (potentially parallel) processing. Get a single + block for encoding now */ + while ((vorbis_analysis_blockout(&vorbisState, &vorbisBlock))==1) { + + //OggPacket packet = std::make_shared(); + ogg_packet tmpPkt; + /* analysis, assume we want to use bitrate management */ + vorbis_analysis(&vorbisBlock,0); + vorbis_bitrate_addblock(&vorbisBlock); + + while (vorbis_bitrate_flushpacket(&vorbisState, &tmpPkt/*packet->getUnderlayingOggPacketPtr()*/)) { +// logger.debug() << "Position: "<(tmpPkt); + packet->setStreamType(OggType::vorbis); + packet->setStreamNo(streamNo); +#ifdef DEBUG + logger.debug() << "Vorbis Packet Number: "<< packet->getPacketno() << std::endl; +#endif + packet->setPacketno(pktCnt++); + packetList.push_back(packet); + } + } + + if (!packetList.empty()) + setAvailable(); + + return(*this); +} + +MediaInputEncoder& VorbisEncoder::operator >>(OggPacket& packet) +{ + if (packetList.empty()) + throw OggException("VorbisEncoder::operator>> PacketList is m_empty"); + + packet = packetList.front(); + packetList.pop_front(); + + if (packetList.empty()) + setEmpty(); + + return(*this); +} + +void VorbisEncoder::flush() +{ + /* tell the library how much we actually submitted */ + if (vorbis_analysis_wrote(&vorbisState, 0) < 0) + throw OggException("VorbisEncoder::flush: can not flush"); + + /* vorbis does some data preanalysis, then divvies up blocks for + more involved (potentially parallel) processing. Get a single + block for encoding now */ + while ((vorbis_analysis_blockout(&vorbisState, &vorbisBlock))==1) { + + /* analysis, assume we want to use bitrate management */ + vorbis_analysis(&vorbisBlock,0); + vorbis_bitrate_addblock(&vorbisBlock); + + bool do_flush(true); + + while ( do_flush ) { +// logger.debug() << "Flush: "<(tmpPkt); + + packet->setStreamType(OggType::vorbis); + packet->setStreamNo(streamNo); + packet->setPacketno(pktCnt++); + + packetList.push_back(packet); + } + } + + if (!packetList.empty()) + setAvailable(); + +} + +std::string VorbisEncoder::configuration() const +{ + std::stringstream stream; + + stream << "Vorbis Encoder Configuration:" << std::endl; + stream << "Stream No: "<<(int)streamNo< 0 ) + stream << "Bitrate (lower) : " << vorbisInfo.bitrate_lower << std::endl; + if ( vorbisInfo.bitrate_upper > 0 ) + stream << "Bitrate (upper) : " << vorbisInfo.bitrate_upper << std::endl; +// stream << "Bitrate (window) : " << vorbisInfo.bitrate_window << std::endl; + stream << std::endl; + + if (vorbisComment.comments) { + stream << "Comments:\n"; + for (int i=0; i +#include +#include +#include + +#include "mediaInputEncoder.h" +#include "oggPacket.h" +#include "audioPacket.h" +#include "oggComment.h" +#include "vorbisStreamParameter.h" +#include "streamConfig.h" + +class VorbisEncoder : public MediaInputEncoder { +protected: + + vorbis_info vorbisInfo; + vorbis_comment vorbisComment; + vorbis_dsp_state vorbisState; + vorbis_block vorbisBlock; + +// OggPacket packet; + + std::list packetList; + + uint64 pktCnt; + +public: + VorbisEncoder(uint8 streamNo); + virtual ~VorbisEncoder(); + + virtual MediaInputEncoder& operator>>(OggPacket& packet); + MediaInputEncoder& operator<<(AudioPacket& aPacket); + + virtual void configureEncoder(StreamConfig& streamConf, std::vector& oggComments); + void flush(); + + vorbis_info& getInfo(); + + virtual std::string configuration() const; + +}; + +#endif /* HAVE_LIBVORBIS */ +#endif /* VORBISENCODER_H_*/ + diff -Nru oggvideotools-0.8a/src/ovt_vorbis/vorbisExtractor.cpp oggvideotools-0.9.1/src/ovt_vorbis/vorbisExtractor.cpp --- oggvideotools-0.8a/src/ovt_vorbis/vorbisExtractor.cpp 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/ovt_vorbis/vorbisExtractor.cpp 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,83 @@ +#include +#include + +#include "vorbisExtractor.h" +#include "vorbisStreamParameter.h" +#include "oggHeader.h" +#include "vorbisHeader.h" +#include "log.h" + +VorbisExtractor::VorbisExtractor() +{ +} + +VorbisExtractor::~VorbisExtractor() +{ +} + +bool VorbisExtractor::_extract(uint8* data, ExtractorInformation& info) +{ + + StreamType* streaminfo = (StreamType*) (data); + VorbisHeader* vorbisHeader = (VorbisHeader*) (data + sizeof(StreamType)); + + /* if this is not a vorbis header, return with an error */ + if ((streaminfo->headerType != 0x01) || + (strncmp(streaminfo->typeName, "vorbis", 6) != 0)) { + logger.error() << "VorbisExtractor::_extract: This page is not a vorbis bos\n"; + return(false); + } + + // first extract the parameters + std::shared_ptr param = std::make_shared(); + + param->channels = vorbisHeader->audioChannels; + param->samplerate = vorbisHeader->sampleRate; + param->datarate = vorbisHeader->bitrateNom; + param->datarateMin = vorbisHeader->bitrateMin; + param->datarateMax = vorbisHeader->bitrateMax; + + param->block0 = 1<blocksize0; + param->block1 = 1<blocksize1; + + info.parameter = param; + + /* set the ogg type and the number of header packets */ + info.type = OggType::vorbis; + info.numOfHeaderPackets = 3; // the first three packets are headers + + return(true); +} + +bool VorbisExtractor::extract(OggPage& oggPage, ExtractorInformation& information) +{ + /* if this is not a Begin Of Stream page, return immediately */ + if (!oggPage->isBOS()) { + logger.error() << "VorbisPosInterpreter::extract: This page is not a BOS (Begin Of Stream) page\n"; + return(false); + } + + uint8_t* dataPtr = &(oggPage->data())[0]; + /* get the information starting points within the raw data */ + OggHeader* oggHeader = (OggHeader*) dataPtr; + uint8* data = dataPtr + sizeof(OggHeader) + oggHeader->tableSegments; + + if (!_extract(data, information)) + return(false); + + information.serialNo = oggHeader->serial; + + return(true); +} + +bool VorbisExtractor::extract(OggPacket& packet, ExtractorInformation& information) +{ + /// if this is not a Begin Of Stream page, return immediately + if (!packet->isBOS()) { + logger.error() << "VorbisPosInterpreter::extract: This page is not a BOS (Begin Of Stream) page\n"; + return(false); + } + + return _extract(packet->data(), information); + +} diff -Nru oggvideotools-0.8a/src/ovt_vorbis/vorbisExtractor.h oggvideotools-0.9.1/src/ovt_vorbis/vorbisExtractor.h --- oggvideotools-0.8a/src/ovt_vorbis/vorbisExtractor.h 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/ovt_vorbis/vorbisExtractor.h 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,18 @@ +#ifndef VORBISEXTRACTOR_H_ +#define VORBISEXTRACTOR_H_ + +#include "streamExtractor.h" + +class VorbisExtractor : public StreamExtractor { +public: + VorbisExtractor(); + virtual ~VorbisExtractor(); + + bool _extract(uint8* data, ExtractorInformation& info); + + virtual bool extract(OggPage& page, ExtractorInformation& information); + virtual bool extract(OggPacket& packet, ExtractorInformation& information); + +}; + +#endif /*VORBISEXTRACTOR_H_*/ diff -Nru oggvideotools-0.8a/src/ovt_vorbis/vorbisHeader.h oggvideotools-0.9.1/src/ovt_vorbis/vorbisHeader.h --- oggvideotools-0.8a/src/ovt_vorbis/vorbisHeader.h 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/ovt_vorbis/vorbisHeader.h 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,17 @@ +#ifndef VORBISHEADER_H_ +#define VORBISHEADER_H_ + +struct VorbisHeader { + uint32 version; + uint8 audioChannels; + uint32 sampleRate; + uint32 bitrateMax; + uint32 bitrateNom; + uint32 bitrateMin; + uint8 blocksize0:4; + uint8 blocksize1:4; + uint8 framing; //? +} __attribute__ ((packed)); + + +#endif /*VORBISHEADER_H_*/ diff -Nru oggvideotools-0.8a/src/ovt_vorbis/vorbisPosInterpreter.cpp oggvideotools-0.9.1/src/ovt_vorbis/vorbisPosInterpreter.cpp --- oggvideotools-0.8a/src/ovt_vorbis/vorbisPosInterpreter.cpp 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/ovt_vorbis/vorbisPosInterpreter.cpp 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,194 @@ +#include "vorbisPosInterpreter.h" + +#include +#include + +#include "vorbisStreamParameter.h" +#include "log.h" + +struct VorbisPackHeader { + char dataType:1; + char block:1; + char blsht:6; +}; + +VorbisPosInterpreter::VorbisPosInterpreter() + : samplerate(0), blocksize0(0), blocksize1(0), lastBlock(none) +{ +} + +VorbisPosInterpreter::~VorbisPosInterpreter() +{ +} + +void VorbisPosInterpreter::initialize(StreamParameter* _param) +{ + VorbisStreamParameter* param = dynamic_cast(_param); + + if (!param) { + logger.error() << "VorbisPosInterpreter::initialize: parameter not set correctly\n"; + return; + } + + samplerate = param->samplerate; + blocksize0 = param->block0; + blocksize1 = param->block1; + + initialized = true; + + return; +} + +/* +void VorbisPosInterpreter::initialize(OggPage oggPage) +{ + + OggHeader* oggHeader = (OggHeader*) (oggPage.data()); + StreamType* streamInformation = (StreamType*) (oggPage.data() + sizeof(OggHeader) + oggHeader->tableSegments); + VorbisHeader* vorbisHeader = (VorbisHeader*) (oggPage.data() + sizeof(OggHeader) + + oggHeader->tableSegments + sizeof(StreamType)); + + if ((streamInformation->headerType != 0x01) || + (strncmp(streamInformation->typeName, "vorbis", 6) != 0)) { + logger.error() << "VorbisPosInterpreter::initialize: this page is not a vorbis bos\n"; + return; + } + + samplerate = vorbisHeader->sampleRate; + channels = vorbisHeader->audioChannels; + + blocksize0 = 1<blocksize0; + blocksize1 = 1<blocksize1; + +} + +void VorbisPosInterpreter::initialize(OggPacket m_oggPacket) +{ + if (m_oggPacket.length() < (sizeof(StreamType) + sizeof(VorbisHeader))) { + logger.error() << "VorbisPosInterpreter::initialize: Error: page is to small - cannot parse header\n"; + return; + } + + StreamType* streamInformation = (StreamType*) (m_oggPacket.data()); + VorbisHeader* vorbisHeader = (VorbisHeader*) (m_oggPacket.data() + sizeof(StreamType)); + + if ((streamInformation->headerType != 0x01) || + (strncmp(streamInformation->typeName, "vorbis", 6) != 0)) { + logger.error() << "VorbisPosInterpreter::initialize: this page is not a vorbis bos\n"; + return; + } + + + samplerate = vorbisHeader->sampleRate; + channels = vorbisHeader->audioChannels; + + blocksize0 = 1<blocksize0; + blocksize1 = 1<blocksize1; + +} +*/ + +double VorbisPosInterpreter::getTime(int64 granulePos) +{ + double time = (granulePos*1.0)/(samplerate*1.0); + + return(time); +} + +void VorbisPosInterpreter::addBlock0() +{ + switch (lastBlock) { + case block0: + actualGranulePosition += blocksize0/2; + break; + case block1: + actualGranulePosition += (blocksize1/4 + blocksize0/4); + break; + default: + /* nothing to be done */ + break; + } + + lastBlock = block0; +} + +void VorbisPosInterpreter::addBlock1() +{ + switch (lastBlock) { + case block0: + actualGranulePosition += (blocksize1/4 + blocksize0/4); + break; + case block1: + actualGranulePosition += blocksize1/2; + break; + default: + /* nothing to be done */ + break; + } + + lastBlock = block1; +} + +GranulePosInterpreter& VorbisPosInterpreter::operator+=(GranulePosInterpreter& _otherPosition) +{ + if (typeid(_otherPosition) != typeid(*this)) { + logger.error() << "GranulePosInterpreter::operator+=: type is not matching\n"; + return(*this); + } + + VorbisPosInterpreter* otherPosition = static_cast(&_otherPosition); + + if (samplerate != otherPosition->samplerate) { + logger.error() << "VorbisPosInterpreter::operator+=: granulePositions does not match in samplerate or channel numbers\n"; + return(*this); + } + + if ((blocksize0 != otherPosition->blocksize0) || (blocksize1 != otherPosition->blocksize1)) { + logger.error() << "VorbisPosInterpreter::operator+=: granulePositions does not match in the blocksizes\n"; + return(*this); + } + + actualGranulePosition += otherPosition->actualGranulePosition; + + return(*this); +} + +GranulePosInterpreter& VorbisPosInterpreter::operator-=(GranulePosInterpreter& _otherPosition) +{ + if (typeid(_otherPosition) != typeid(*this)) { + logger.error() << "GranulePosInterpreter::operator+=: type is not matching\n"; + return(*this); + } + + VorbisPosInterpreter* otherPosition = static_cast(&_otherPosition); + + if (samplerate != otherPosition->samplerate) { + logger.error() << "VorbisPosInterpreter::operator+=: granulePositions does not match in samplerate or channel numbers\n"; + return(*this); + } + + if ((blocksize0 != otherPosition->blocksize0) || (blocksize1 != otherPosition->blocksize1)) { + logger.error() << "VorbisPosInterpreter::operator+=: granulePositions does not match in the blocksizes\n"; + return(*this); + } + + actualGranulePosition -= otherPosition->actualGranulePosition; + + return(*this); +} + +void VorbisPosInterpreter::setStreamPosition(OggPacket& packet) +{ +// packet.setGranulepos(getPosition()); + + VorbisPackHeader* packHead = (VorbisPackHeader*)(packet->data()); + + if (packHead->block) + addBlock1(); + else + addBlock0(); + +// logger.debug() << "Granule Position: "<setGranulepos(getPosition()); +// logger.debug() << "-> "< +#include + +#include "vorbisStreamParameter.h" +#include "log.h" + +VorbisStreamParameter::VorbisStreamParameter() +{ +} + +VorbisStreamParameter::~VorbisStreamParameter() +{ +} + +bool VorbisStreamParameter::operator==(const StreamParameter& _param) +{ + StreamParameter* _param_unconst = const_cast(&_param); + VorbisStreamParameter* param = dynamic_cast(_param_unconst); + + bool retValue(true); + + if (!param) + return(false); + + if (channels != param->channels) { + logger.error() << "vorbis parameter compare: number of channels not matching " + << channels << " != " << param->channels + << std::endl; + retValue = false; + } + + if (samplerate != param->samplerate) { + logger.error() << "vorbis parameter compare: sample rate not matching " + << samplerate << " != " << param->samplerate + << std::endl; + retValue = false; + } + + if (datarate != param->datarate) { + logger.error() << "vorbis parameter compare: data rate not matching " + << datarate << " != " << param->datarate << std::endl; +// << "This is not a blocker if all other parameters match" <block0) { + logger.error() << "vorbis parameter compare: size of block0 does not match " + << block0 << " != " << param->block0 << std::endl + << "You may try to reencode with the datarate of the other file" + << std::endl; + retValue = false; + } + + if (block1 != param->block1) { + logger.error() << "vorbis parameter compare: size of block0 does not match " + << block1 << " != " << param->block1 << std::endl + << "You may try to reencode with the datarate of the other file" + << std::endl; + retValue = false; + } + + if (retValue == false) { + logger.error() << "\nPlease try to resample with the following command\n" + << "oggResize"; + if (channels != param->channels) + logger.error() << " -N "<samplerate) + logger.error() << " -F "<datarate) + logger.error() << " -D "<\n\n"; + } + + return(retValue); +} + +std::string VorbisStreamParameter::toString() +{ + std::stringstream stream; + stream << "Vorbis Stream:\n" << "\twith " << channels << " channel(s)\n" + << "\tand " << samplerate << " kHz sample rate\n" << "\tand " + << datarate << " data rate\n\n"; + +// logger.debug() << "block0: "<, (C) 2009 -// -// Copyright: See COPYING file that comes with this distribution -// -// -#include "pictureBlend.h" -#include "exception.h" - -PictureBlend::PictureBlend() -{ -} - - -PictureBlend::~PictureBlend() -{ -} - -RGBPlane PictureBlend::crossfade(RGBPlane & plane1, RGBPlane & plane2, float velocity) -{ - - if ((plane1->width != plane2->width) || (plane1->height != plane2->height)) - throw OggException("can not crossfade, planes not matching"); - - uint32 size = plane1->width*plane1->height*4; - - RGBPlane retPlane(plane1->width, plane1->height); - - uint32 pixel1; - uint32 pixel2; - uint32 newPixel; - - for (uint32 i(0); iplane[i]; - pixel2 = plane2->plane[i]; - newPixel = (uint32)(pixel1*(1.0-velocity) + pixel2*velocity); - - if (newPixel> 0xFF) - newPixel = 0xFF; - - retPlane->plane[i] = (uint8)newPixel; - - /* green */ - pixel1 = plane1->plane[i+1]; - pixel2 = plane2->plane[i+1]; - newPixel = (uint32)(pixel1*(1.0-velocity) + pixel2*velocity); - - if (newPixel> 0xFF) - newPixel = 0xFF; - - retPlane->plane[i+1] = (uint8)newPixel; - - /* blue */ - pixel1 = plane1->plane[i+2]; - pixel2 = plane2->plane[i+2]; - newPixel = (uint32)(pixel1*(1.0-velocity) + pixel2*velocity); - - if (newPixel> 0xFF) - newPixel = 0xFF; - - retPlane->plane[i+2] = (uint8)newPixel; - - } - - return (retPlane); -} - -RGBPlane PictureBlend::alphaBlend(RGBPlane& origPlane, RGBPlane & alphaPlane, float intensity) -{ - float factor; - uint32 position; - - uint32 pixel1; - uint32 pixel2; - uint32 newPixel; - - RGBPlane retPlane(origPlane->width, origPlane->height); - - uint32 positionAlpha; - - for (uint32 j(0); j < origPlane->height; ++j) - for (uint32 i(0); i < origPlane->width; ++i) { - - // if the alpha plane is smaller than the original plane, just copy the data - if ((iwidth) && (jheight)) { - position = 4*(j*origPlane->width+i); - - positionAlpha = 4*(j*alphaPlane->width+i); - - factor = intensity*((127-alphaPlane->plane[positionAlpha+3])*1.0)/127.0; - - for (uint32 k(0); k<3; ++k) { - pixel1 = origPlane->plane[position+k]; - pixel2 = alphaPlane->plane[positionAlpha+k]; - newPixel = (uint32)(pixel1 * (1.0-factor) + pixel2 * factor ); - - if (newPixel> 0xFF) - newPixel = 0xFF; - - retPlane->plane[position+k] = (uint8)newPixel; - } - - } else { - position = j*origPlane->width+i; - ((uint32*)(retPlane->plane))[position] = ((uint32*)(origPlane->plane))[position]; - } - - } - return (retPlane); - -} - - diff -Nru oggvideotools-0.8a/src/pictureBlend.h oggvideotools-0.9.1/src/pictureBlend.h --- oggvideotools-0.8a/src/pictureBlend.h 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/src/pictureBlend.h 1970-01-01 00:00:00.000000000 +0000 @@ -1,32 +0,0 @@ -// -// C++ Interface: pictureBlend -// -// Description: -// -// -// Author: Yorn , (C) 2009 -// -// Copyright: See COPYING file that comes with this distribution -// -// -#ifndef PICTUREBLEND_H -#define PICTUREBLEND_H - -#include "rgbPlane.h" -/** - @author Yorn -*/ -class PictureBlend { - -public: - PictureBlend(); - - virtual ~PictureBlend(); - - static RGBPlane alphaBlend(RGBPlane& picture, RGBPlane& alphaPic, float intensity); - - static RGBPlane crossfade(RGBPlane& plane1, RGBPlane& plane2, float velocity); - -}; - -#endif diff -Nru oggvideotools-0.8a/src/pictureLoader.cpp oggvideotools-0.9.1/src/pictureLoader.cpp --- oggvideotools-0.8a/src/pictureLoader.cpp 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/src/pictureLoader.cpp 1970-01-01 00:00:00.000000000 +0000 @@ -1,584 +0,0 @@ -// -// C++ Implementation: pictureLoader -// -// Description: -// -// -// Author: Yorn , (C) 2009 -// -// Copyright: See COPYING file that comes with this distribution -// -// -#include "pictureLoader.h" - -#include -#include -#include -#include -#include "exception.h" -#include "log.h" - -#define SCALEBITS 8 -#define ONE_HALF (1 << (SCALEBITS - 1)) -#define FIX(x) ((int) ((x) * (1L<255)))) - -PictureLoader::PictureLoader() -{ -} - - -PictureLoader::~PictureLoader() -{ -} - - -bool PictureLoader::load(RGBPlane& retPlane, const std::string& filename, uint32 _width, uint32 _height, - bool useBiggest) -{ - SuffixType type = identifySuffix(filename); - if (type == suffix_unknown) { - logger.error() << "PictureLoader::load: Cannot identify suffix of <"<\n"; - return(false); - } - - gdImagePtr im(0); - - FILE* in; - in = fopen(filename.c_str(), "rb"); - - if (in == 0) { - logger.error() << "PictureLoader::load: Cannot open file <"<: " - << strerror(errno) << "\n"; - return(false); - } - - if (type == suffix_jpg) { - im = gdImageCreateFromJpeg(in); - } else if (type == suffix_png) { - im = gdImageCreateFromPng(in); - } else if (type == suffix_gif) { - im = gdImageCreateFromGif(in); - } - - fclose(in); - - if (im == 0) { - logger.error() << "PictureLoader::load: Error reading image file <"<\n"; - return(false); - } - - if ((_width != 0) && (_height != 0) && ( _width != gdImageSX(im) ) && - (_height != gdImageSY(im))) { - - uint32 origWidth(gdImageSX(im)); - uint32 origHeight(gdImageSY(im)); - - /* calculate the new size -> picture must fit into the given rectangle */ - float factorX = (_width*1.0)/(origWidth*1.0); - float factorY = (_height*1.0)/(origHeight*1.0); - float factor(1.0); - -#ifdef DEBUG - logger.debug() << "wanted: "<<_width<<"x"<<_height<<" orig: " - <sx, - resampled->sy, origWidth, origHeight); - - retPlane = convertToRgbPlane(resampled); - - gdImageDestroy(resampled); - } else { - retPlane = convertToRgbPlane(im); - } - - gdImageDestroy(im); - - return (true); -} - -RGBPlane PictureLoader::convertToRgbPlane(gdImagePtr im) -{ - - uint32 width = gdImageSX(im); - uint32 height = gdImageSY(im); - - RGBPlane pic(width, height); - - int c(0); - uint32 x(0); - - for (uint32 i(0); iplane[x++] = gdImageRed(im, c); - pic->plane[x++] = gdImageGreen(im, c); - pic->plane[x++] = gdImageBlue(im,c); - pic->plane[x++] = gdImageAlpha(im,c); - } - - return(pic); -} - -PictureLoader::SuffixType PictureLoader::identifySuffix(const std::string& filename) -{ - std::string::size_type suffixStart(filename.find_last_of('.')); - - if (suffixStart == std::string::npos) { - return (suffix_unknown); - } - - std::string suffix(filename.substr(suffixStart+1)); - - if ((suffix == "jpg") || (suffix == "JPG") || (suffix == "jpeg") || (suffix - == "JPEG")) { - return (suffix_jpg); - } - - if ((suffix == "png") || (suffix == "PNG")) { - return (suffix_png); - } - - if ((suffix == "gif") || (suffix == "GIF")) { - return (suffix_gif); - } - - return (suffix_unknown); - -} - -bool PictureLoader::save(RGBPlane& pic, const std::string& filename, uint32 newWidth, - uint32 newHeight) -{ - - int actColor; - int planeCount(0); - - SuffixType type = identifySuffix(filename); - if (type == suffix_unknown) { - logger.error() << "PictureLoader::identifySuffix: Cannot identify suffix of <" - << filename << ">\n"; - return(false); - } - - gdImagePtr im = gdImageCreateTrueColor(pic->width, pic->height); - - for (uint32 i(0); i < pic->height; ++i) - for (uint32 j(0); j < pic->width; ++j) { - int red = pic->plane[planeCount++]; - int green = pic->plane[planeCount++]; - int blue = pic->plane[planeCount++]; - actColor = gdImageColorAllocate(im, red, green, blue); - - planeCount++; // alpha channel not in use - - gdImageSetPixel(im, j, i, actColor); - - } - - FILE* out = fopen(filename.c_str(), "wb"); - if (out == 0) { - logger.error() << "PictureLoader::save: Cannot open file <"<: " - << strerror(errno) << "\n"; - return(false); - } - - if ((newWidth != 0) || (newHeight != 0)) { - - if (newWidth == 0) - newWidth = pic->width*newHeight/pic->height; - - if (newHeight == 0) - newHeight = pic->height*newWidth/pic->width; - - gdImagePtr resampled; - resampled = gdImageCreateTrueColor(newWidth, newHeight); - if (!resampled) { - throw OggException("PictureLoader::save: failed to allocate image buffer\n"); - } - - gdImageCopyResampled(resampled, im, 0, 0, 0, 0, resampled->sx, - resampled->sy, pic->width, pic->height); - - switch (type) { - - case suffix_jpg: - gdImageJpeg(resampled, out, -1); - break; - - case suffix_png: - gdImagePng(resampled, out); - break; - - // case suffix_gif: - - default: - logger.error() << "cannot identify suffix\n"; - - } - /* Write JPEG using default quality */ - gdImageDestroy(resampled); - - } else { - - switch (type) { - - case suffix_jpg: - gdImageJpeg(im, out, -1); - break; - - case suffix_png: - gdImagePng(im, out); - break; - - // case suffix_gif: - - default: - logger.error() << "cannot identify suffix\n"; - - } - - } - - /* Close file */ - if (fclose(out) != 0) { - logger.error() << "Error writing file <" << filename << ">: " - << strerror(errno) << "\n"; - gdImageDestroy(im); - return(false); - } - - /* Destroy the image */ - gdImageDestroy(im); - - return (true); -} - -#ifdef HAVE_LIBTHEORAENC - -void PictureLoader::exportYCrCb_theora(RGBPlane& picture, th_ycbcr_buffer& buffer, int pixel_format ) -{ - - uint32 frameWidth; - uint32 frameHeight; - uint32 XOffset; - uint32 YOffset; - - /* recalculate the buffer (must be multiple of 16) */ - frameWidth = (picture->width+15)&~0xF; - frameHeight = (picture->height+15)&~0xF; - - // We force the offset to be even. - // This ensures that the chroma samples align properly with the luma - // samples. - - XOffset = ((frameWidth - picture->width)/4); //&~1; - YOffset = ((frameHeight - picture->height)/4); //&~1; - -// logger.debug() << width <<" x "<width * 4; - - uint32 HeightPrecalculation0x; - uint32 HeightPrecalculation1x; - uint32 CromaPrecalculation; - - uint32 position00; - uint32 position01; - uint32 position10; - uint32 position11; - - uint32 inPos00; - uint32 inPos01; - uint32 inPos10; - uint32 inPos11; - - uint32 red_sample; - uint32 green_sample; - uint32 blue_sample; - - uint32 cromaPos; - - for (uint32 i(0); i<(uint32)(picture->height+1)/2; ++i) { - - HeightPrecalculation0x = (2*(i+YOffset))*buffer[0].stride; - HeightPrecalculation1x = (2*(i+YOffset)+1)*buffer[0].stride; - CromaPrecalculation = (i+YOffset)*buffer[1].stride; - - for (uint32 j(0); j<(uint32)(picture->width+1)/2; ++j) { - - position00 = HeightPrecalculation0x+(2*(j+XOffset)); - position01 = HeightPrecalculation0x+(2*(j+XOffset)+1); - position10 = HeightPrecalculation1x+(2*(j+XOffset)); - position11 = HeightPrecalculation1x+(2*(j+XOffset)+1); - - inPos00 = 4*((2*i)*picture->width+(2*j)); - inPos01 = 4*((2*i)*picture->width+(2*j+1)); - inPos10 = 4*((2*i+1)*picture->width+(2*j)); - inPos11 = 4*((2*i+1)*picture->width+(2*j+1)); - - cromaPos = CromaPrecalculation+(j+XOffset); - - - buffer[0].data[position00] = (FIX(0.29900) * picture->plane[inPos00] - + FIX(0.58700) * picture->plane[inPos00+1] - + FIX(0.11400) * picture->plane[inPos00+2] - + ONE_HALF) >> SCALEBITS; - - buffer[0].data[position01] = (FIX(0.29900) * picture->plane[inPos01] - + FIX(0.58700) * picture->plane[inPos01+1] - + FIX(0.11400) * picture->plane[inPos01+2] - + ONE_HALF) >> SCALEBITS; - - buffer[0].data[position10] = (FIX(0.29900) * picture->plane[inPos10] - + FIX(0.58700) * picture->plane[inPos10+1] - + FIX(0.11400) * picture->plane[inPos10+2] - + ONE_HALF) >> SCALEBITS; - - buffer[0].data[position11] = (FIX(0.29900) * picture->plane[inPos11] - + FIX(0.58700) * picture->plane[inPos11+1] - + FIX(0.11400) * picture->plane[inPos11+2] - + ONE_HALF) >> SCALEBITS; - - red_sample = picture->plane[inPos00] + picture->plane[inPos01] + picture->plane[inPos10] + picture->plane[inPos11]; - - green_sample = picture->plane[inPos00+1] + picture->plane[inPos01+1] + picture->plane[inPos10+1] + picture->plane[inPos11+1]; - - blue_sample = picture->plane[inPos00+2] + picture->plane[inPos01+2] + picture->plane[inPos10+2] + picture->plane[inPos11+2]; - - buffer[1].data[cromaPos] = ((-FIX(0.16874) * red_sample - FIX(0.33126) * green_sample +FIX(0.50000) * blue_sample + 4 * ONE_HALF- 1) >> (SCALEBITS + 2)) + 128; - - buffer[2].data[cromaPos] = ((FIX(0.50000) * red_sample - FIX(0.41869) * green_sample -FIX(0.08131) * blue_sample + 4 * ONE_HALF - 1) >> (SCALEBITS + 2)) + 128; - - - } - } -} - - -void PictureLoader::exportYCrCb_444_theora(RGBPlane& picture, th_ycbcr_buffer& buffer) -{ - - uint32 frameWidth; - uint32 frameHeight; - uint32 XOffset; - uint32 YOffset; - - /* recalculate the buffer (must be multiple of 16) */ - frameWidth = (picture->width+15)&~0xF; - frameHeight = (picture->height+15)&~0xF; - - // We force the offset to be even. - // This ensures that the chroma samples align properly with the luma - // samples. - - XOffset = ((frameWidth - picture->width)/2)&~1; - YOffset = ((frameHeight - picture->height)/2)&~1; - -// logger.debug() << width <<" x "<height; ++i) { - - HeightPrecalculation = (i+YOffset)*buffer[0].stride; - - for (uint32 j(0); j<(uint32)picture->width; ++j) { - - ycrcbPosition = HeightPrecalculation+(j+XOffset); - - rgbPosition = 4*(i*picture->width+j); - - red_sample = picture->plane[rgbPosition]; - green_sample = picture->plane[rgbPosition+1]; - blue_sample = picture->plane[rgbPosition+2]; - - buffer[0].data[ycrcbPosition] = (FIX(0.29900) * red_sample - + FIX(0.58700) * green_sample - + FIX(0.11400) * blue_sample - + ONE_HALF) >> SCALEBITS; - buffer[0].data[ycrcbPosition] = 0; - - int32 cr = ( -1 * FIX(0.168736) * red_sample - - FIX(0.331264) * green_sample - + FIX(0.5) * blue_sample - + ONE_HALF ) >> SCALEBITS ; - static uint32 cn(0); - //cr = - if (i < picture->height/4 ) - buffer[1].data[ycrcbPosition] = cn++;//128 + cr; - else - buffer[1].data[ycrcbPosition] = 0;//128 + cr; - // logger.debug() << (uint32) buffer[1].data[ycrcbPosition] << " "; - - int32 cb = (FIX(0.5) * red_sample - - FIX(0.418688) * green_sample - - FIX(0.081312) * blue_sample - + ONE_HALF) >> SCALEBITS; - buffer[2].data[ycrcbPosition] = 0; //128 +cb; - - } - } - //abort(); -} - - -RGBPlane PictureLoader::importYCrCb_theora(const th_ycbcr_buffer& buffer, uint32 _width, uint32 _height, uint32 XOffset, uint32 YOffset, int pixel_format) -{ - - uint32 width; - uint32 height; - - // what size to use? - if ((_width == 0) || (_height == 0)) { - width = buffer[0].width; - height = buffer[0].height; - XOffset = 0; - YOffset = 0; - } else { - width = _width; - height = _height; - } - - RGBPlane retPlane(width, height); - - /* Theora spec 4.4.1/4.4.2/4.4.3: - 4:2:0 is subsampled on X and Y, 4:2:2 on X, and 4:4:4 is not subsampled. */ - unsigned int CbCr_subshift_x = (pixel_format==TH_PF_444)?0:1; - unsigned int CbCr_subshift_y = (pixel_format==TH_PF_420)?1:0; - - uint8* out = retPlane->plane; - for (int row=YOffset; row>CbCr_subshift_y)*buffer[1].stride+(col>>CbCr_subshift_x); - int Cb = buffer[1].data[CrCb_pos]; - int Cr = buffer[2].data[CrCb_pos]; - /* Theora spec 4.3.1/4.3.2: - Y,Cb,Cr have offsets 16, 128, and 128 respectively.*/ - /* This can be made marginally faster by performing all - computation over a common power-of-two denominator to conserve the - multiplication on Y and replace the division with a shift. - Although somewhat faster it doesn't make it fast compared to a SIMD implementation - so this instead favors accuracy. - This can also be made faster on some platforms for using a table to - replace multiplication, but that isn't likely to be helpful if only - a single smallish frame is being written. - The two (minor) speedups mentioned here are implemented in libtheora's - player_example.c. An inaccurate but fairly fast SIMD implementation - can be found in liboggplay. */ - int r=(1904000*Y+2609823*Cr-363703744)/1635200; - *(out++) = CLAMP255(r); - int g=(3827562*Y-1287801*Cb-2672387*Cr+447306710)/3287200; - *(out++) = CLAMP255(g); - int b=(952000*Y+1649289*Cb-225932192)/817600; - *(out++) = CLAMP255(b); - *(out++) = 255; - } - } - - return(retPlane); -} - -#endif - - diff -Nru oggvideotools-0.8a/src/pictureLoader.h oggvideotools-0.9.1/src/pictureLoader.h --- oggvideotools-0.8a/src/pictureLoader.h 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/src/pictureLoader.h 1970-01-01 00:00:00.000000000 +0000 @@ -1,59 +0,0 @@ -// -// C++ Interface: pictureLoader -// -// Description: -// -// -// Author: Yorn , (C) 2009 -// -// Copyright: See COPYING file that comes with this distribution -// -// -#ifndef PICTURELOADER_H -#define PICTURELOADER_H - -#include - -#include "rgbPlane.h" -#include - -#ifdef HAVE_LIBTHEORAENC -#include -#endif - -/** - @author Yorn -*/ -class PictureLoader { - -protected: - enum SuffixType { - suffix_unknown, - suffix_jpg, - suffix_png, - suffix_gif - }; - - static RGBPlane convertToRgbPlane(gdImagePtr im); - static SuffixType identifySuffix(const std::string& filename); - -public: - - PictureLoader(); - - virtual ~PictureLoader(); - - static bool load(RGBPlane& retPlane, const std::string& filename, uint32 width=0, uint32 height=0, bool useBiggest = true); - static bool save(RGBPlane& pic, const std::string& filename, uint32 width=0, uint32 height=0); - -#ifdef HAVE_LIBTHEORAENC - static void exportYCrCb_theora(RGBPlane& plane, th_ycbcr_buffer& buffer, int pixel_format=TH_PF_420); - static void exportYCrCb_444_theora(RGBPlane& picture, th_ycbcr_buffer& buffer); - - static RGBPlane importYCrCb_theora(const th_ycbcr_buffer& buffer, uint32 width, uint32 height, uint32 XOffset=0, uint32 YOffset=0, int pixel_format=TH_PF_420); -#endif - - -}; - -#endif diff -Nru oggvideotools-0.8a/src/pictureResize.cpp oggvideotools-0.9.1/src/pictureResize.cpp --- oggvideotools-0.8a/src/pictureResize.cpp 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/src/pictureResize.cpp 1970-01-01 00:00:00.000000000 +0000 @@ -1,668 +0,0 @@ -// -// C++ Implementation: pictureResize -// -// Description: -// -// -// Author: Yorn , (C) 2009 -// -// Copyright: See COPYING file that comes with this distribution -// -// -#include "pictureResize.h" - -#include -#include -#include -#include "exception.h" -#include "log.h" - -#define INIT_CLIP int32 tmp -#define CLIP(x,n) tmp = (int32)(x+0.5); \ - if (tmp > 255) n=255; \ - else if (tmp < 0) n=0; \ - else n = (uint8)(tmp); - -#define MIN(x,y) (((x)<(y))?(x):(y)) -#define MAX(x,y) (((x)<(y))?(y):(x)) - -PictureResize::PictureResize() -{ -} - -PictureResize::~PictureResize() -{ -} - -uint32 PictureResize::calculateKernelValue(RGBPlane& pic, float posX, - float posY, float radius, bool p) -{ - - radius = sqrt(radius); - - uint32 xStart(MAX(0,posX-radius+0.5)); - uint32 xEnd(MIN(posX+radius+0.5,(float)pic->width)); - - uint32 yStart(MAX(0,posY-radius+0.5)); - uint32 yEnd(MIN(posY+radius+0.5,(float)pic->height)); - - float weightsCounter(0); - - float valueRed(0); - float valueGreen(0); - float valueBlue(0); - - float tmpWeight; - float tmpDistance; - uint32 position; - uint32 positionHeight; - -#ifdef DEBUG - uint32 counter1(0); - uint32 overall(0); - - if (p) { - logger.debug() << "kernel calculation at position "<"<width; - - for (uint32 j(xStart); j distance " - < distance " - < 4*pic->width*pic->height) { - logger.error() << "Error: calculating for Position "<width << " x " - << pic->height<<" Kernel window: "< "<plane[position]*tmpWeight; - valueGreen += pic->plane[position+1]*tmpWeight; - valueBlue += pic->plane[position+2]*tmpWeight; - weightsCounter += tmpWeight; - } - } -#ifdef DEBUG - if (p) - logger.debug() << " Unused: "<width)); - - uint32 yStart(MAX(0,posY-radius+0.5)); - uint32 yEnd(MIN(posY+radius+0.5,(float)pic->height)); - - uint32 radiusF(radius+0.51); - - uint32 weightsCounter(0); - - uint32 valueRed(0); - uint32 valueGreen(0); - uint32 valueBlue(0); - - int32 tmpWeight; - uint32 tmpDistance; - uint32 position; - uint32 positionHeight; - - uint32 posXF = (uint32)(posX+0.5); - uint32 posYF = (uint32)(posY+0.5); - - uint32 factor(1); - uint32 factorCounter(0); - uint32 size(((xEnd-xStart)*(yEnd-yStart))); - - if (size > 128) { - factor = size / 32; - } - -#ifdef DEBUG - uint32 counter1(0); - uint32 overall(0); - - if (p) { - logger.debug() << "kernel calculation at position "<"<width; - - tmpDistance = (i-posYF)*(i-posYF) + (j-posXF)*(j-posXF); - tmpDistance = (uint32)(sqrt(tmpDistance)+0.5); - tmpWeight = getWeightFix(tmpDistance, radiusF); - -#ifdef DEBUG - overall++; -#endif - if (tmpWeight <= 0) { -#ifdef DEBUG - if (p) { - logger.debug() << " Pos: "< distance " - < distance " - < 4*pic->width*pic->height) { - logger.debug() << "Error: calculating for Position "<width << " x "<< pic->height - <<" Kernel window: "< "<plane[position]*tmpWeight; - valueGreen += pic->plane[position+1]*tmpWeight; - valueBlue += pic->plane[position+2]*tmpWeight; - weightsCounter += tmpWeight; - } - -#ifdef DEBUG - if (p) - logger.debug() << " Unused: "<plane[4*(posYF*pic->width+posXF)]; - RGB[1] = pic->plane[4*(posYF*pic->width+posXF)+1]; - RGB[2] = pic->plane[4*(posYF*pic->width+posXF)+2]; - } - - return (retValue); -} - -float PictureResize::getWeight(float distance, float radius) -{ - // should be a sinc - - /* -> lets save time on the expence of security - * if ((radius <= 0) || (distance > radius)) - * return(0); - */ - return (1.0 - distance/radius); - - // return(1.0 - sqrt(distance)/sqrt(radius)); -} - -int32 PictureResize::getWeightFix(uint32 distance, uint32 radius) -{ - // should be a sinc - - /* -> lets save time on the expence of security - * if ((radius <= 0) || (distance > radius)) - * return(0); - */ - return (1000 - distance*1000/radius); -} - -RGBPlane PictureResize::kernelLowpass(RGBPlane& picture, float radius) -{ - - RGBPlane retPlane(picture->width, picture->height); - - float kernelRadius((1.0-radius)*picture->height/4.0); - - kernelRadius *= kernelRadius; - - if (kernelRadius < 0.708) // sqrt(0.5) this is the lease radius size, a picture can be - kernelRadius = 0.708; - - uint32 heightAddition; - - for (uint32 i(0); iheight; ++i) { - - heightAddition = 4*i*picture->width; - - for (uint32 j(0); jwidth; ++j) { - uint32* _plane = (uint32*)(&retPlane->plane[heightAddition + 4*j]); - (*_plane) = calculateKernelValueFix(picture, j, i, kernelRadius); - } - } - - // logger.debug() << " DONE ! \n"; - - return (retPlane); - -} - -uint32 PictureResize::linearInterpolation(RGBPlane pic, float x, float y) -{ - uint32 pixelDistance = 4; - uint32 pos_x1 = (int)(x); - uint32 pos_x2 = (int)(x+1.0); - uint32 pos_y1 = (int)(y); - uint32 pos_y2 = (int)(y+1.0); - - if (pos_x2 >= pic->width) - pos_x2 = pic->width-1; - - if (pos_y2 >= pic->height) - pos_y2 = pic->height-1; - - float part_x = (float)(x - pos_x1); - float part_y = (float)(y - pos_y1); - - float value_x1y1; - float value_x1y2; - float value_x2y1; - float value_x2y2; - - float inter_x1y1_x1y2; - float inter_x2y1_x2y2; - float endpoint; - - uint32 retValue(0); - - uint8* RGB = (uint8*)(&retValue); - - /* red */ - - value_x1y1 = pic->plane[pixelDistance*(pos_y1*pic->width+pos_x1)]; - value_x1y2 = pic->plane[pixelDistance*(pos_y2*pic->width+pos_x1)]; - value_x2y1 = pic->plane[pixelDistance*(pos_y1*pic->width+pos_x2)]; - value_x2y2 = pic->plane[pixelDistance*(pos_y2*pic->width+pos_x2)]; - - inter_x1y1_x1y2 = (value_x1y2-value_x1y1)*part_y + value_x1y1; - inter_x2y1_x2y2 = (value_x2y2-value_x2y1)*part_y + value_x2y1; - - endpoint = (inter_x2y1_x2y2 - inter_x1y1_x1y2) * part_x + inter_x1y1_x1y2 - + 0.5; - - if (endpoint > 255) - endpoint = 255; - - if (endpoint < 0) - endpoint = 0; - - RGB[0] = (uint8)endpoint; - - /* green */ - - value_x1y1 = pic->plane[pixelDistance*(pos_y1*pic->width+pos_x1)+1]; - value_x1y2 = pic->plane[pixelDistance*(pos_y2*pic->width+pos_x1)+1]; - value_x2y1 = pic->plane[pixelDistance*(pos_y1*pic->width+pos_x2)+1]; - value_x2y2 = pic->plane[pixelDistance*(pos_y2*pic->width+pos_x2)+1]; - - inter_x1y1_x1y2 = (value_x1y2-value_x1y1)*part_y + value_x1y1; - inter_x2y1_x2y2 = (value_x2y2-value_x2y1)*part_y + value_x2y1; - - endpoint = (inter_x2y1_x2y2 - inter_x1y1_x1y2) * part_x + inter_x1y1_x1y2 - + 0.5; - - if (endpoint > 255) - endpoint = 255; - - if (endpoint < 0) - endpoint = 0; - - RGB[1] = (uint8)endpoint; - - /* blue */ - - value_x1y1 = pic->plane[pixelDistance*(pos_y1*pic->width+pos_x1)+2]; - value_x1y2 = pic->plane[pixelDistance*(pos_y2*pic->width+pos_x1)+2]; - value_x2y1 = pic->plane[pixelDistance*(pos_y1*pic->width+pos_x2)+2]; - value_x2y2 = pic->plane[pixelDistance*(pos_y2*pic->width+pos_x2)+2]; - - inter_x1y1_x1y2 = (value_x1y2-value_x1y1)*part_y + value_x1y1; - inter_x2y1_x2y2 = (value_x2y2-value_x2y1)*part_y + value_x2y1; - - endpoint = (inter_x2y1_x2y2 - inter_x1y1_x1y2) * part_x + inter_x1y1_x1y2 - + 0.5; - - if (endpoint > 255) - endpoint = 255; - - if (endpoint < 0) - endpoint = 0; - - RGB[2] = (uint8)endpoint; - - return (retValue); - -} - -RGBPlane PictureResize::resize(RGBPlane& picture, uint32 width, uint32 height, - uint8 quality) -{ - - RGBPlane retPlane(width, height); - - float resizeFactorX(((float)picture->width)/((float)retPlane->width)); - float resizeFactorY(((float)picture->height)/((float)retPlane->height)); - float radius((resizeFactorX*resizeFactorX + resizeFactorY*resizeFactorY) - /(0.5*quality)); - uint32 heightAddition; - - if (radius < 0.708) - radius = 0.708; - -#ifdef DEBUG - logger.debug() << "Resizing from "<width<<" : "<height - <<" to "<width<<" : "<height<<"\n"; - logger.debug() << "using resizefactor "< 1.6)) { - logger.debug() << "\nKernel\n"; - for (uint32 i(0); i< retPlane->height; ++i) { - - heightAddition = i*retPlane->width; - - for (uint32 j(0); j < retPlane->width; ++j) { -#ifdef DEBUG - if ((j==100) && (i==100)) - p=true; - else - p=false; -#endif - - ((uint32*)(retPlane->plane))[j+heightAddition] - = calculateKernelValue(picture, j *resizeFactorX, i - *resizeFactorY, radius, p); - } - } - } else { - logger.debug() << "\nLinear\n"; - for (uint32 i(0); i< retPlane->height; ++i) { - - heightAddition = i*retPlane->width; - - for (uint32 j(0); j < retPlane->width; ++j) { - -#ifdef DEBUG - if ((j==100) && (i==100)) - p=true; - else - p=false; -#endif - - ((uint32*)(retPlane->plane))[j+heightAddition] - = linearInterpolation(picture, j *resizeFactorX, i - *resizeFactorY); - } - } - } - - return (retPlane); - -} - -RGBPlane PictureResize::resize(RGBPlane& picture, float resizeFactorX, float resizeFactorY, uint8 quality) -{ - - RGBPlane retPlane(picture->width*resizeFactorX, picture->height*resizeFactorY); - - float radius((resizeFactorX*resizeFactorX + resizeFactorY*resizeFactorX)/(0.5*quality)); - uint32 heightAddition; - - if (radius < 1.2) // sqrt(0.5) this is the lease radius size, a picture can be - radius = 1.2; - -// if (radius < 0.708) // sqrt(0.5) this is the lease radius size, a picture can be -// radius = 0.708; - - bool p(false); - - logger.debug() << "\n\nKernel\n\n"; - - for (uint32 i(0); i< retPlane->height; ++i) { - - heightAddition = i*retPlane->width; - - for (uint32 j(0); j < retPlane->width; ++j) { - if ((i==100) && (j==100)) - p=true; - else - p=false; - - ((uint32*)(retPlane->plane))[j+heightAddition] = calculateKernelValue(picture, ((float)j) - *resizeFactorX, ((float)i)*resizeFactorY, radius); - } - } - - return (retPlane); - -} - -RGBPlane PictureResize::resize(RGBPlane& picture, float resizeFactor, - uint8 quality) -{ - return (resize(picture, resizeFactor, resizeFactor, quality)); -} - -RGBPlane PictureResize::reframe(RGBPlane & picture, uint32 width, - uint32 height, uint8 quality, uint32 background, double aspectCorrection) -{ - if ((picture->width == width) && (picture->height == height)) - return (picture); - - RGBPlane newPlane(width, height); - - uint32 planesize(width*height); - - // fill the plane with the given background - uint32* plPtr((uint32*)(newPlane->plane)); - for (uint32 i(0); iheight*newPlane->width)/((float)picture->width*aspectCorrection)) - < ((float)newPlane->height)) { - // we work with a height offset - offsetY = (uint32) ((((float)newPlane->height) - - (((float)(picture->height * newPlane->width)) - /((float)picture->width*aspectCorrection)))/2.0+0.5); - offsetX = 0; - resizeFactor = (((float)picture->width*aspectCorrection/(float)newPlane->width)); //((float)newPlane->width)/((float)width); - } else { - // we work with a width offset - offsetY = 0; - offsetX = (uint32) ((((float)newPlane->width) - - (((float)(picture->width*aspectCorrection *newPlane->height)) - /((float)picture->height)))/2.0+0.5); - resizeFactor = (((float)picture->height/(float)newPlane->height)); //((float)newPlane->height)/((float)picture->height); - } - -#ifdef DEBUG - logger.debug() << "Reframe - OffsetX: "<height-offsetY); ++i) { - for (uint32 j(offsetX); j <(newPlane->width-offsetX); ++j) { - position_new = (((float)i)*newPlane->width+j); - ((uint32*)(newPlane->plane))[position_new] - = calculateKernelValue(picture, resizePlaneCounterX, - resizePlaneCounterY, radius); - resizePlaneCounterX += (resizeFactor/aspectCorrection); - } - resizePlaneCounterY += resizeFactor; - resizePlaneCounterX = 0; - } - - return (newPlane); -} - -RGBPlane PictureResize::subframe(RGBPlane & picture, uint32 newWidth, - uint32 newHeight, float offsetWidth, float offsetHeight, - float scaleFactor, uint8 quality) -{ - - if (((((float)newWidth)/scaleFactor)+offsetWidth> picture->width) - || ((((float)newHeight) /scaleFactor)+offsetHeight> picture->height)) { - logger.error() << "new width: "<width - <height - < 1.6)) { - - for (uint32 i(0); i < newHeight; ++i) { - heightAddition = i*newWidth; - for (uint32 j(0); j < newWidth; ++j) { - ((uint32*)(retPlane->plane))[j+heightAddition] - = calculateKernelValue(picture, ((float)j) - *resizeFactor+offsetWidth, ((float)i) - *resizeFactor+offsetHeight, radius); - - } - } - } else { - for (uint32 i(0); i < newHeight; ++i) { - heightAddition = i*newWidth; - for (uint32 j(0); j < newWidth; ++j) { - ((uint32*)(retPlane->plane))[j+heightAddition] - = linearInterpolation(picture, ((float)j) *resizeFactor - +offsetWidth, ((float)i)*resizeFactor - +offsetHeight); - - } - } - - } - - return (retPlane); - -} - diff -Nru oggvideotools-0.8a/src/pictureResize.h oggvideotools-0.9.1/src/pictureResize.h --- oggvideotools-0.8a/src/pictureResize.h 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/src/pictureResize.h 1970-01-01 00:00:00.000000000 +0000 @@ -1,53 +0,0 @@ -// -// C++ Interface: pictureResize -// -// Description: -// -// -// Author: Yorn , (C) 2009 -// -// Copyright: See COPYING file that comes with this distribution -// -// -#ifndef PICTURERESIZE_H -#define PICTURERESIZE_H - -#include "definition.h" -#include "rgbPlane.h" - -/** - @author Yorn -*/ -class PictureResize { - -protected: - static uint32 calculateKernelValue(RGBPlane& pic, float posX, float posY, float radius, bool p=false); - static float getWeight(float distance, float radius); - - static uint32 calculateKernelValueFix(RGBPlane& pic, float posX, float posY, float radius, bool p=false); - static int32 getWeightFix(uint32 distance, uint32 radius); - - static uint32 linearInterpolation(RGBPlane pic, float x, float y); -public: - PictureResize(); - - virtual ~PictureResize(); - - //! Method transforms the original picture through a lowpass/bluring filter - static RGBPlane kernelLowpass(RGBPlane& picture, float radius=1); - - //! method resizes the picture and stretches if necessary - static RGBPlane resize(RGBPlane& picture, uint32 width, uint32 height, uint8 quality=1); - - static RGBPlane resize(RGBPlane& picture, float factorX, float factorY, uint8 quality=1); - - static RGBPlane resize(RGBPlane& picture, float factor, uint8 quality=1); - - //! Method keeps the aspect ratio during resize - static RGBPlane reframe(RGBPlane& picture, uint32 width, uint32 height, uint8 quality=1, uint32 background=0, double aspectCorrection=1); - - static RGBPlane subframe(RGBPlane& picture, uint32 newWidth, uint32 newHeight, float offsetWidth, float offsetHeight, float resizeFactor, uint8 quality=1); - -}; - -#endif diff -Nru oggvideotools-0.8a/src/plainPicture.cpp oggvideotools-0.9.1/src/plainPicture.cpp --- oggvideotools-0.8a/src/plainPicture.cpp 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/src/plainPicture.cpp 1970-01-01 00:00:00.000000000 +0000 @@ -1,74 +0,0 @@ -// -// C++ Implementation: PlainPicture -// -// Description: -// -// -// Author: Yorn , (C) 2009 -// -// Copyright: See COPYING file that comes with this distribution -// -// - -#include -#include "plainPicture.h" -#include "pictureResize.h" -#include "pictureLoader.h" -#include -#include "log.h" - -PlainPicture::PlainPicture() - : Effector(), state(unconfigured), framecounter(0) -{ -} - - -PlainPicture::~PlainPicture() -{ -} - -Effector & PlainPicture::operator >>(RGBPlane & plane) -{ - - if (!available()) - return(*this); - - plane = presentationPlane; - - framecounter++; - if (framecounter > config.sequenceLength) { - state = unavailable; - } - - return(*this); -} - -void PlainPicture::configure(PlainPictureConfig & _config) -{ - - framecounter = 0; - config = _config; - - logger.debug() << "PlanePicture::configure: "<< config.origPlane->width << "x" << config.origPlane->height<<" -> " - <width != config.outputWidth) || (config.origPlane->height != config.outputHeight)) { - logger.debug() << "reframing"<width << "x"<height<, (C) 2009 -// -// Copyright: See COPYING file that comes with this distribution -// -// -#ifndef PLAINPICTURE_H -#define PLAINPICTURE_H - -#include "effector.h" - -/** - @author Yorn -*/ -class PlainPicture : public Effector { - -public: - - class PlainPictureConfig { - public: - - uint32 sequenceLength; /* in frames */ - - uint32 outputWidth; - uint32 outputHeight; - - RGBPlane origPlane; - }; - -protected: - - enum State { - unconfigured, - presentation, - unavailable - }; - - State state; - RGBPlane presentationPlane; - PlainPictureConfig config; - uint32 framecounter; - - -public: - PlainPicture(); - virtual ~PlainPicture(); - - void configure(PlainPictureConfig& config); - - virtual Effector& operator>>(RGBPlane& plane); - - virtual bool available(); - -}; - -#endif diff -Nru oggvideotools-0.8a/src/rawMediaPacket.cpp oggvideotools-0.9.1/src/rawMediaPacket.cpp --- oggvideotools-0.8a/src/rawMediaPacket.cpp 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/src/rawMediaPacket.cpp 1970-01-01 00:00:00.000000000 +0000 @@ -1,110 +0,0 @@ -/* - * RawMediaPacket class to carry a raw bunch of data - * - * Copyright (C) 2005-2008 Joern Seger - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - * - */ - -#include -#include "rawMediaPacket.h" - -RawMediaData::RawMediaData() - : data(0), length(0) -{ -} - -RawMediaData::RawMediaData(uint8* _data, uint32 _length, bool copy) -{ - if (copy) - memcpy(data=new unsigned char[_length], _data, length=_length); - else { - data = _data; - length = _length; - } -} - -RawMediaData::~RawMediaData() -{ - if (data) - delete[] data; -} - -uint8* RawMediaData::getData(uint32& _length) -{ - _length = length; - return(data); -} - -uint8* RawMediaData::getData() -{ - return(data); -} - -void RawMediaData::setData(uint8* _data, uint32 _length, bool copy) -{ - if (data) - delete[] data; - - length = _length; - - if (copy) - memcpy(data=new unsigned char[length], _data, length); - else - data = _data; - -} - -uint32 RawMediaData::size() -{ - return(length); -} - -/*********************************/ - -RawMediaPacket::RawMediaPacket() -{ -} - -RawMediaPacket::RawMediaPacket(const RawMediaPacket& packet) - : RefObject(packet) -{ -} - -RawMediaPacket::RawMediaPacket(RawMediaData* dataPtr) - : RefObject(dataPtr) -{ -} - -RawMediaPacket::~RawMediaPacket() -{ -} - -uint8* RawMediaPacket::getData(uint32& length) -{ - return(objPtr->getData(length)); -} - -uint8* RawMediaPacket::getData() -{ - return(objPtr->getData()); -} - -uint32 RawMediaPacket::size() -{ - return(objPtr->size()); -} - diff -Nru oggvideotools-0.8a/src/rawMediaPacket.h oggvideotools-0.9.1/src/rawMediaPacket.h --- oggvideotools-0.8a/src/rawMediaPacket.h 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/src/rawMediaPacket.h 1970-01-01 00:00:00.000000000 +0000 @@ -1,62 +0,0 @@ -/* - * RawMediaPacket class to carry a raw bunch of data - * - * Copyright (C) 2005-2008 Joern Seger - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - * - */ - -#ifndef RAWMEDIAPACKET_H_ -#define RAWMEDIAPACKET_H_ - -#include "definition.h" -#include "refObject.h" - -class RawMediaData { - -protected: - uint8* data; - uint32 length; - -public: - RawMediaData(); - RawMediaData(uint8* data, uint32 length, bool copy); - virtual ~RawMediaData(); - - void setData(uint8* data, uint32 length, bool copy); - uint8* getData(uint32& length); - uint8* getData(); - uint32 size(); - -}; - -class RawMediaPacket : public RefObject { - -public: - - RawMediaPacket(); - RawMediaPacket(const RawMediaPacket& data); - RawMediaPacket(RawMediaData* data); - - virtual ~RawMediaPacket(); - - uint8* getData(uint32& length); - uint8* getData(); - uint32 size(); - -}; - -#endif /*RAWMEDIAPACKET_H_*/ diff -Nru oggvideotools-0.8a/src/refObject.h oggvideotools-0.9.1/src/refObject.h --- oggvideotools-0.8a/src/refObject.h 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/src/refObject.h 1970-01-01 00:00:00.000000000 +0000 @@ -1,132 +0,0 @@ -/* - * RefObject class to reduce complete object copy actions - * - * Copyright (C) 2005-2008 Joern Seger - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - * - */ - -#ifndef refObject_h -#define refObject_h - -//! class to keep refences instead of copies -/*! This class keeps track of an dynamically allocated - memory on the heap. - On object copy, only the object pointer is copied and - an additionally reference counter is incremented. - On object elemination, the object is deleted only in - case that no one has still a refence to this object. - (Code is inspired by Bjarne Stoustrup) - - This code is obsoleted by the boost smart pointers, - however, actually I do not plan to create a dependency - to boost -*/ -template -class RefObject { - -protected: - - unsigned int* refCounter; - C* objPtr; - -public: - RefObject(); - RefObject(C* objPtr); - RefObject(const RefObject& obj); - virtual ~RefObject(); - - RefObject& operator=(const RefObject& obj); - - C* operator->(); - - C* obj(); - void obj(C* object); - -}; - -/* Implementation Part */ - -template inline RefObject::RefObject() - : refCounter(new unsigned int), objPtr(new C) -{ - (*refCounter) = 1; -} - -template inline RefObject::RefObject(C* objPtr) - : refCounter(new unsigned int), objPtr(objPtr) -{ - (*refCounter) = 1; -} - -template inline RefObject::RefObject(const RefObject& refObj) - : refCounter(refObj.refCounter), objPtr(refObj.objPtr) -{ - if (this == &refObj) - return; - (*refCounter)++; -} - -template inline RefObject::~RefObject() -{ - (*refCounter)--; - - if ((*refCounter) == 0) { - delete refCounter; - delete objPtr; - } -} - -template inline RefObject& -RefObject::operator=(const RefObject& refObj) -{ - if (this == &refObj) - return(*this); - - (*refCounter)--; - - if ((*refCounter) == 0) { - delete refCounter; - delete objPtr; - } - - refCounter = refObj.refCounter; - objPtr = refObj.objPtr; - - (*refCounter)++; - return(*this); -} - -template inline C* RefObject::obj() -{ - return(objPtr); -} - -template inline C* RefObject::operator->() -{ - return(objPtr); -} - -template inline void RefObject::obj(C* ptr) -{ - delete objPtr; - objPtr = ptr; - - /* reference pointer is not touched - DANGER: think - do you really want to use this method? */ -} - -#endif // refObject_h diff -Nru oggvideotools-0.8a/src/rgbPlane.cpp oggvideotools-0.9.1/src/rgbPlane.cpp --- oggvideotools-0.8a/src/rgbPlane.cpp 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/src/rgbPlane.cpp 1970-01-01 00:00:00.000000000 +0000 @@ -1,29 +0,0 @@ -// -// C++ Implementation: rgbPlane -// -// Description: -// -// -// Author: Yorn , (C) 2009 -// -// Copyright: See COPYING file that comes with this distribution -// -// -#include "rgbPlane.h" - - -RGBPlane::RGBPlane() -{ -} - - -RGBPlane::~RGBPlane() -{ -} - -RGBPlane::RGBPlane(uint32 width, uint32 height, uint32 color) - : RefObject(new BasePlane(width, height, color)) -{ -} - - diff -Nru oggvideotools-0.8a/src/rgbPlane.h oggvideotools-0.9.1/src/rgbPlane.h --- oggvideotools-0.8a/src/rgbPlane.h 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/src/rgbPlane.h 1970-01-01 00:00:00.000000000 +0000 @@ -1,42 +0,0 @@ -// -// C++ Interface: rgbPlane -// -// Description: -// -// -// Author: Yorn , (C) 2009 -// -// Copyright: See COPYING file that comes with this distribution -// -// -#ifndef RGBPLANE_H -#define RGBPLANE_H - -#include "refObject.h" -#include "basePlane.h" - -#ifdef HAVE_CONFIG_H -#include "config.h" -#endif - -/** - @author Yorn -*/ -class RGBPlane : public RefObject { - -public: - RGBPlane(); - RGBPlane(uint32 width, uint32 height, uint32 color = 0x00000000 ); - - virtual ~RGBPlane(); - - const uint32 getWidth() const { - return objPtr->width; - } - const uint32 getHeight() const { - return objPtr->height; - } - -}; - -#endif diff -Nru oggvideotools-0.8a/src/ringbuffer.cpp oggvideotools-0.9.1/src/ringbuffer.cpp --- oggvideotools-0.8a/src/ringbuffer.cpp 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/src/ringbuffer.cpp 1970-01-01 00:00:00.000000000 +0000 @@ -1,198 +0,0 @@ -/* - * simple ring buffer - * - * Copyright (C) 2005-2008 Joern Seger - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - * - */ - -#include -#include "ringbuffer.h" -#include "exception.h" -#include "log.h" - -ringbuffer::ringbuffer(unsigned int buffersize) - : size(buffersize), used(0), begin(0), end(0) -{ - lock(); - fifo = new unsigned char[buffersize]; - unlock(); -} - -ringbuffer::ringbuffer(unsigned char* data, unsigned int len) - : size(len), used(len), begin(0), end(0) -{ - // gonna make a copy for safety: - lock(); - fifo = new unsigned char[len]; - memcpy(fifo, data, len); - unlock(); -} - -ringbuffer::~ringbuffer() -{ - delete[] fifo; -} - -unsigned int ringbuffer::addData(const unsigned char* data, unsigned int len) -{ - lock(); - - if ((!len) || (!data)) { - unlock(); - return(0); - } - - if (len > size) { - unlock(); - throw OggException("Ring buffer write overflow"); - } - if (begin+len < size) { - memcpy(fifo+begin,data,len); - } else { - // split - int part1 = (size - begin); - int part2 = len - part1; - memcpy(fifo+begin,data,part1); - memcpy(fifo,data+part1,part2); - } - - begin += len; - begin %= size; - - if (len > (size-used)) { - throw OggException("Ring buffer overrun"); - } else { - used += len; - } - - unlock(); - - return (len); - -} - -unsigned int ringbuffer::getData(unsigned char* data, unsigned int len) -{ - lock(); - - if (used < len) - len = used; - - if (len > size) { - throw OggException("Ring buffer read overflow"); - } - if (size < (end + len)) { - // split - int part1 = size - end; - int part2 = len - part1; - memcpy(data, fifo+end, part1); - memcpy(data+part1, fifo, part2); - } else - memcpy(data, fifo+end, len); - - end += len; - end %= size; - used -= len; - - /* - for(unsigned int i=0; iused) - len = used; - - int tmpEnd = begin-1; - for (int i=len-1; i>=0; --i) { - if (tmpEnd < 0) - tmpEnd = size-1; - data[i] = fifo[tmpEnd--]; - } - unlock(); - - return (len); -} - -unsigned int ringbuffer::peekFront(unsigned char* data, unsigned int len) -{ - lock(); - if (used < len) - len = used; - - unsigned int tmpEnd = end; - for (unsigned int i=0; i - -#include "oggPacket.h" -#include "streamExtractor.h" - - -/* this configuration gives all information, that the outside world needs - * to know about the streams */ -class StreamConfig : public ExtractorInformation { - -public: - - //! Id of the stream (starts from 0 and is incremented by every new stream) - int8 streamNo; - - //! Every stream needs some header packets, which are stored here - /*! at least one "Begin of Stream" packet and maybe some additional packets. These - * will all be stored here */ - std::vector headerList; - -}; - -#endif diff -Nru oggvideotools-0.8a/src/streamExtractor.cpp oggvideotools-0.9.1/src/streamExtractor.cpp --- oggvideotools-0.8a/src/streamExtractor.cpp 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/src/streamExtractor.cpp 1970-01-01 00:00:00.000000000 +0000 @@ -1,47 +0,0 @@ -#include "streamExtractor.h" - -ExtractorInformation::ExtractorInformation() - : type(ogg_unknown), serialNo(0), parameter(0), numOfHeaderPackets(0) -{ -} - -ExtractorInformation::ExtractorInformation(const ExtractorInformation& extractorInfo) - : type(extractorInfo.type), serialNo(extractorInfo.serialNo), - parameter(0), numOfHeaderPackets(extractorInfo.numOfHeaderPackets) -{ - if (extractorInfo.parameter) - parameter = extractorInfo.parameter->clone(); - -} - -ExtractorInformation& ExtractorInformation::operator=(const ExtractorInformation& extractorInfo) -{ - type = extractorInfo.type; - serialNo = extractorInfo.serialNo; - numOfHeaderPackets = extractorInfo.numOfHeaderPackets; - - if (parameter) - delete parameter; - - if (extractorInfo.parameter) - parameter = extractorInfo.parameter->clone(); - else - parameter = 0; - - return(*this); -} - -ExtractorInformation::~ExtractorInformation() -{ - if (parameter) - delete parameter; -} - -StreamExtractor::StreamExtractor() -{ -} - -StreamExtractor::~StreamExtractor() -{ -} - diff -Nru oggvideotools-0.8a/src/streamExtractor.h oggvideotools-0.9.1/src/streamExtractor.h --- oggvideotools-0.8a/src/streamExtractor.h 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/src/streamExtractor.h 1970-01-01 00:00:00.000000000 +0000 @@ -1,55 +0,0 @@ -#ifndef STREAMEXTRACTOR_H_ -#define STREAMEXTRACTOR_H_ - -#include "oggPage.h" -#include "oggPacket.h" -#include "streamParameter.h" -#include "granulePosInterpreter.h" - -//! This is a baseclass for the configuration of a stream -/*! This class can be derived by more specific stream information - * For the decoding process, parameter is created while the decoder - * is initialized - * For the encoding process, the parameter pointer must carry a - * valid parameter list. - * The parameter list is always owned by the ExtractorInformation class - * and will be deleted when the ExtractorInformation object destructor is - * called */ - -class ExtractorInformation { - -public: - - ExtractorInformation(); - ExtractorInformation(const ExtractorInformation& extractorInfo); - ~ExtractorInformation(); - - //! Type of stream (e.g. ogg_vorbis, ogg_theora, ogg_speex) - OggType type; - - //! stream serial number (random number required by ogg) - uint32 serialNo; - - //! The first page/packet gives detailed information of the stream - StreamParameter* parameter; - - //! the number of header packets must be identified by the stream type - uint8 numOfHeaderPackets; - - ExtractorInformation& operator=(const ExtractorInformation& extractorInfo); - -}; - - -class StreamExtractor { -public: - StreamExtractor(); - - virtual ~StreamExtractor(); - - virtual bool extract(OggPage& page, ExtractorInformation& information) = 0; - virtual bool extract(OggPacket& packet, ExtractorInformation& information) = 0; - -}; - -#endif /*STREAMEXTRACTOR_H_*/ diff -Nru oggvideotools-0.8a/src/streamMux.cpp oggvideotools-0.9.1/src/streamMux.cpp --- oggvideotools-0.8a/src/streamMux.cpp 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/src/streamMux.cpp 1970-01-01 00:00:00.000000000 +0000 @@ -1,379 +0,0 @@ -/* - * streamMux will multiplex a number streams to one ogg file - * - * Copyright (C) 2008 Joern Seger - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - * - */ - -#include - -#include "streamMux.h" - -#include "rawMediaPacket.h" -#include "oggBOSExtractorFactory.h" -#include "log.h" - -MuxStreamEntry::MuxStreamEntry() - : used(false), streamEncoder(0), posInterpreter(0), - nextTime(-2), empty(true), bufferElemCounter(0) -{ -} - -MuxStreamEntry::MuxStreamEntry(StreamConfig& config, - OggStreamEncoder* _streamEncoder, - GranulePosInterpreter* _posInterpreter) - : used(true), streamConfig(config), streamEncoder(_streamEncoder), - posInterpreter(_posInterpreter), nextTime(-2), empty(true), lastPacketNo(2), - bufferElemCounter(0) -{ -} - -MuxStreamEntry::~MuxStreamEntry() -{ -} - -StreamMux::StreamMux(MediaRepository* _repository) - : timeOfLastPage(0.0), redoTiming(true), repository(_repository) -{ -} - -StreamMux::~StreamMux() -{ - for (uint32 i(0); i> rawPacket; - (*repository) << rawPacket; - } - -} - -void StreamMux::insertHeader() -{ - OggPage oggPage; - - /* first set all BOS Packets/Pages */ - for (uint32 i(0); i> oggPage; - oggEncoder << oggPage; - - } - } - - /* then set the rest of the packets */ - for (uint32 i(0); i> oggPage; - oggEncoder << oggPage; - } - - streamList[i].lastPacketNo = streamList[i].streamConfig.headerList.size()-1; - } - - // write the data to the repository - writeToRepository(); - -} - -void StreamMux::writeToOggEncoder() -{ - // write data to the ogg encoder, as long as there is - // at least one packet of every stream available - // This is because we might not know the end of stream - - while (!outputPageList.empty()) { - - // get the first page - OggPage nextPage = outputPageList.back().page; - - uint8 streamNo(nextPage.getStreamNo()); - - // this is the real return reason, the Page list - // should never be empty - if (streamList[streamNo].bufferElemCounter < 2) - break; - - // insert the packet into the ogg encoder - oggEncoder << nextPage; - - // decrement the marker for the elements of this stream - streamList[streamNo].bufferElemCounter--; - outputPageList.pop_back(); - - } - - writeToRepository(); -} - -void StreamMux::flushOggEncoder() -{ - // now we search for the last page of every stream - // and mark it as the "End of Stream" - - while (!outputPageList.empty()) { - - // get the first page - OggPage nextPage = outputPageList.back().page; - - uint8 streamNo(nextPage.getStreamNo()); - - // is this the last page of this stream, then mark it - if (streamList[streamNo].bufferElemCounter == 1) { - nextPage.setEOS(); - nextPage.createCRC(); - } - - // insert the packet into the ogg encoder - oggEncoder << nextPage; - - // decrement the marker for the elements of this stream - streamList[streamNo].bufferElemCounter--; - - outputPageList.pop_back(); - } - - // flush the encoder (actually does nothing) - oggEncoder.flush(); - -} - -bool StreamMux::allBuffersEmpty() -{ - // run through the list and find out, if there is - // a filled buffer - - for (uint32 i(0); i::iterator iter(outputPageList.begin()); - - // -1 is a problem! - if (elem.time < 0) { - elem.time = timeOfLastPage; // should we care for the stream No? - } - - while ((iter != outputPageList.end()) && (elem.time < iter->time)) - ++iter; - - outputPageList.insert(iter, elem); - - timeOfLastPage = elem.time; - - // page has been added to the output list, mark the entry as free - streamList[nextID].empty = true; - - // increment the number of elements in the, that - // belongs to this stream - // we need to know that, to be able to ensure that at least - // one packet of every stream is not written to the ogg encoder - streamList[nextID].bufferElemCounter++; - - // write the data - writeToOggEncoder(); - - return(true); -} - -void StreamMux::handleNextPage(OggPage& page, uint8 streamNo) -{ - /* here we look, if there is a page in the buffer - * if yes, look into the other buffers and insert the pages into - * the outputPageList by their time order until the page buffer, - * we are looking for is free */ - - MuxStreamEntry& entry = streamList[streamNo]; - - while (!entry.empty) { - findAndInsertNextPage(); - } - - page.setStreamNo(streamNo); - entry.nextPage = page; - entry.empty = false; - entry.nextTime = entry.posInterpreter->getTime(page.granulepos()); - return; - -} - -void StreamMux::configureStreams(std::vector& config) -{ - streamList.resize(config.size()); - - for (uint32 i(0); isetStreamPosition(packet); - - // then we place this packet into the stream encoder - encoder << packet; - - // now it is becomming difficult, as the pages must be in the correct order - // therefor we need a lot of buffering stuff :-/ - OggPage page; - - // if there are one or more pages, handle the buffering - while (encoder.isAvailable()) { - encoder >> page; - handleNextPage(page, packet.getStreamNo()); - } - - return(*this); -} - -void StreamMux::setEndOfStream() -{ - // flush the rest, if there is some - for (uint32 i(0); iflush(); - - while (entry.streamEncoder->isAvailable()) { - OggPage page; - - *entry.streamEncoder >> page; - handleNextPage(page, i); - } - } - - // insert all buffered pages - while (findAndInsertNextPage()); - - // flush the page list - flushOggEncoder(); - - writeToRepository(); -} - -void StreamMux::close() -{ - if (repository) { - repository->close(); - delete repository; - repository = 0; - } -} diff -Nru oggvideotools-0.8a/src/streamMux.h oggvideotools-0.9.1/src/streamMux.h --- oggvideotools-0.8a/src/streamMux.h 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/src/streamMux.h 1970-01-01 00:00:00.000000000 +0000 @@ -1,118 +0,0 @@ -/* - * streamMux will multiplex a number streams to one ogg file - * - * Copyright (C) 2008 Joern Seger - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - * - */ -#ifndef STREAMMUX_H_ -#define STREAMMUX_H_ - -#include -#include - -#include "definition.h" -#include "oggPacket.h" -#include "oggEncoder.h" -#include "oggStreamEncoder.h" -#include "granulePosInterpreter.h" -#include "mediaRepository.h" - -class MuxStreamEntry { - -public: - - /* entry information */ - bool used; - - /* stream information */ - StreamConfig streamConfig; - OggStreamEncoder* streamEncoder; - GranulePosInterpreter* posInterpreter; - - /* packet information */ - OggPage nextPage; - double nextTime; - bool empty; - - uint32 lastPacketNo; - - /* stream buffer information */ - int bufferElemCounter; - - MuxStreamEntry(); - MuxStreamEntry(StreamConfig& config, OggStreamEncoder* streamEncoder, GranulePosInterpreter* posInterpreter); - - virtual ~MuxStreamEntry(); - -}; - -//! streamMux creates a new ogg media stream -/*! This object awaits a repository with the constructor, which informs - * the object about where to write the information to. - * Additional it awaits a vector of Stream Config information to set up - * the header and the granule position correctly. - * From that moment, the StreamMux object receives OggPackets which are - * placed into the media stream with the correct packaging. - * */ -class StreamMux { - -protected: - - struct OutputElement { - OggPage page; - double time; - OutputElement(OggPage _page, double _time) - : page(_page), time(_time) {} - }; - - double timeOfLastPage; - - bool redoTiming; - - OggEncoder oggEncoder; - MediaRepository* repository; - - std::vector streamList; - //std::list outputPageList; - std::list outputPageList; - - bool allBuffersEmpty(); - - void writeToRepository(); - void writeToOggEncoder(); - - void flushOggEncoder(); - - bool findAndInsertNextPage(); - void insertHeader(); - void handleNextPage(OggPage& page, uint8 streamNo); - -public: - StreamMux(MediaRepository* repository); - virtual ~StreamMux(); - - void configureStreams(std::vector& config); - void setEndOfStream(); - - StreamMux& operator<<(OggPacket& page); - - void recreatePacketPosition(bool redoTiming); - - void close(); -}; - -#endif /*STREAMMUX_H_*/ diff -Nru oggvideotools-0.8a/src/streamParameter.cpp oggvideotools-0.9.1/src/streamParameter.cpp --- oggvideotools-0.8a/src/streamParameter.cpp 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/src/streamParameter.cpp 1970-01-01 00:00:00.000000000 +0000 @@ -1,9 +0,0 @@ -#include "streamParameter.h" - -StreamParameter::StreamParameter() -{ -} - -StreamParameter::~StreamParameter() -{ -} diff -Nru oggvideotools-0.8a/src/streamParameter.h oggvideotools-0.9.1/src/streamParameter.h --- oggvideotools-0.8a/src/streamParameter.h 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/src/streamParameter.h 1970-01-01 00:00:00.000000000 +0000 @@ -1,34 +0,0 @@ -#ifndef STREAMPARAMETER_H_ -#define STREAMPARAMETER_H_ - -#include - -//! Pure virtual class to be derived to carry stream specific information -/*! This class has been implemented to define - * a number of virtual methods to clone, compare and print out - * the stream parameters. - * - * A (derived) stream parameter carries stream specific information, that - * is needed e.g. to interpret the granule position of an ogg page. - * */ -class StreamParameter { - -public: - - StreamParameter(); - virtual ~StreamParameter(); - - //! Method to compare stream parameters - /*! @param param is the second StreamParameter object, which is compared to this StreamParameter object. - * @return true, if both stream parameters match, false if not. */ - virtual bool operator==(const StreamParameter& param) = 0; - - //! Method to create a readable string from this StreamParameter object - virtual std::string toString() = 0; - - //! Method to clone this StreamParameter object - virtual StreamParameter* clone() = 0; - -}; - -#endif /*STREAMPARAMETER_H_*/ diff -Nru oggvideotools-0.8a/src/streamSerializer.cpp oggvideotools-0.9.1/src/streamSerializer.cpp --- oggvideotools-0.8a/src/streamSerializer.cpp 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/src/streamSerializer.cpp 1970-01-01 00:00:00.000000000 +0000 @@ -1,434 +0,0 @@ -/* - * streamSerialize will output a serialized stream of packets from a file - * - * Copyright (C) 2008 Joern Seger - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - * - */ - -#include - -#include "streamSerializer.h" - -#include "fileRepository.h" -#include "oggBOSExtractorFactory.h" -#include "log.h" - -StreamEntry::StreamEntry() : - streamDecoder(0), posInterpreter(0), nextTime(-1), endOfStream(false), - empty(true) -{ -} - -StreamEntry::StreamEntry(StreamConfig& config, OggStreamDecoder* sDecoder) : - streamConfig(config), streamDecoder(sDecoder), posInterpreter(0), nextTime(-1), - endOfStream(false), empty(true) -{ -} - -StreamEntry::~StreamEntry() -{ -} - -bool StreamEntry::allHeadersCollected() -{ - return(streamConfig.numOfHeaderPackets == streamConfig.headerList.size()); -} - -StreamSerializer::StreamSerializer() : - initState(created), repository(0), oggDecoder(new OggDecoder), - streamEndCounter(0) -{ -} - -StreamSerializer::~StreamSerializer() -{ - close(); -} - -bool StreamSerializer::open(std::string& datasource) -{ - - // actually only file - repository = new FileRepository(datasource, MediaUnit::read); - - /* has there been a problem with opening the file */ - if (!repository->isAvailable()) - return (false); - - initState = reposOpened; - - // extract the streams - bool retValue = extractStreams(); - - // fill one packet to every stream item - std::map::iterator it(streamList.begin()); - for (; it != streamList.end(); ++it) { - StreamEntry& entry = it->second; - fillStreams(); - insertNextPacket(entry); - } - - return (retValue); -} - -bool StreamSerializer::open(MediaRepository* _repository) -{ - // actually only file - repository = _repository; - - /* has there been a problem with opening the file */ - if (!repository->isAvailable()) - return (false); - - initState = reposOpened; - - bool retValue = extractStreams(); - - // fill one packet to every stream item - std::map::iterator it(streamList.begin()); - for (; it != streamList.end(); ++it) { - StreamEntry& entry = it->second; - fillStreams(); - insertNextPacket(entry); - } - - return (retValue); -} - -bool StreamSerializer::extractStreams() -{ - - RawMediaPacket rawPacket; - OggPage oggPage; - OggPacket oggPacket; - - int8 streamCounter = 0; - - while (repository->isAvailable()) { - - /* extract a raw data bunch from the file and place it into - the ogg decoder */ - (*repository) >> rawPacket; - (*oggDecoder) << rawPacket; - - /* if there is a complete ogg page available, grab it */ - while (oggDecoder->isAvailable()) { - - (*oggDecoder) >> oggPage; - - /* what ID has this page / to what stream does this page belong to */ - uint32 serialID = oggPage.serialno(); - - /* if this is a "begin of stream" packet, - * create a new stream decoder instance */ - if (oggPage.isBOS()) { - - StreamEntry entry; - - /* get all the relevant information from the stream */ - OggBOSExtractorFactory::extractInformation(oggPage, entry.streamConfig); - entry.streamConfig.streamNo = streamCounter++; - - /* create the stream encoder */ - entry.streamDecoder = new OggStreamDecoder; - entry.posInterpreter - = OggBOSExtractorFactory::extractPositionInterpreter(entry.streamConfig); - - streamList[serialID] = entry; - - // insert the first page - *(streamList[serialID].streamDecoder) << oggPage; - - } else { - // insert the next page - - OggPacket oggPacket; - StreamEntry& entry = streamList[serialID]; - OggStreamDecoder& streamDecoder = *(entry.streamDecoder); - - streamDecoder << oggPage; - - /* as long as we need headers and there are packets available - * fill the header list */ - while ((!entry.allHeadersCollected()) && - (entry.streamDecoder->isAvailable())) { - - /* if the list of header packets is not completed, add - * the next packet to the list */ - streamDecoder >> oggPacket; - entry.streamConfig.headerList.push_back(oggPacket); - } - - /* find out, if all header packets have been found */ - - bool allStreamsReady(true); - std::map::iterator it(streamList.begin()); - for (; it != streamList.end(); ++it) { - if (!it->second.allHeadersCollected()) { - allStreamsReady = false; - break; - } - } - - if (allStreamsReady) - return (true); - } - } - } - - logger.error() - << "StreamSerializer::extractStreams(): extracter was not able to grab all stream header\n"; - return (false); -} - -void StreamSerializer::getStreamConfig(std::vector& packetList) -{ - - std::map::iterator it(streamList.begin()); - - fillStreams(); - - // it is a bit difficult, we need the original folge - packetList.resize(streamList.size()); - - for (; it != streamList.end(); ++it) { - StreamEntry& entry = it->second; - packetList[entry.streamConfig.streamNo] = entry.streamConfig; - } - -} - -void StreamSerializer::close() -{ - - delete oggDecoder; - oggDecoder = 0; - - /* close the repository */ - if (repository) { - repository->close(); - delete repository; - repository = 0; - } - - std::map::iterator it = streamList.begin(); - - /* delete all list entries */ - for (; it != streamList.end(); ++it) { - StreamEntry entry = it->second; - - delete entry.streamDecoder; - delete entry.posInterpreter; - -// if (entry.streamConfig.parameter) -// delete entry.streamConfig.parameter; - - /* we do not need to delete the header List - * it is controled by the refObject structure */ - } - streamList.clear(); - -} - -bool StreamSerializer::fillPage() -{ - - RawMediaPacket rawPacket; - OggPage oggPage; - - while (1==1) { - - // is there no packet available within the ogg page decoder - while (!oggDecoder->isAvailable()) { - - // is there any data bunch available from the repository? - if (!repository->isAvailable()) { - - // if there is no more data at the repository, there is an error - // in the stream/file - return (false); - } - - // get a bunch of raw data and place it into the ogg page decoder - *repository >> rawPacket; - *oggDecoder << rawPacket; - - // repeat this until there is at least one page available - } - - // get the next ogg page - *oggDecoder >> oggPage; - - // find out to what stream this packet belongs and forget the - // page if the stream has not been configured befor - if (streamList.find(oggPage.serialno()) == streamList.end()) - continue; - - // get the stream item for easier access - StreamEntry& item = streamList[oggPage.serialno()]; - - // insert the ogg page into the right stream decoder - *(item.streamDecoder) << oggPage; - - return (true); - } - -} - -/* method is called to be sure, that there is at least one packet in every stream - * or the stream has finished */ -bool StreamSerializer::fillStreams() -{ - - /* are there no more packets to process, return false */ - if (streamEndCounter == streamList.size()) - return (false); - - std::map::iterator it = streamList.begin(); - - // ensure that every stream can deliver at least one packet or - // the stream has been ended - for (; it != streamList.end(); ++it) { - - // create a local reference for easier access - StreamEntry& item = it->second; - - // if this stream has ended, do not fill this stream any more - if (item.endOfStream) - continue; - - // if there is no packet available within this particular stream - // try to get more input - while (!item.streamDecoder->isAvailable()) { - - // if the stream has not ended, fill up the stream - // if the stream has ended, increment the end counter - if (item.streamDecoder->isEndOfStream()) { - break; - } else { - if (!fillPage()) { - logger.error() << "StreamSerializer::fillStreams: stream ended without an end-of-stream indicator\n"; - return (false); - } - } - } - } - - return (true); -} - -void StreamSerializer::insertNextPacket(StreamEntry& entry) -{ - // insert next packet into the streamEntry - if (entry.streamDecoder->isEndOfStream()) { - // if the stream has ended, set a marker - if (entry.endOfStream == false) { - entry.endOfStream = true; - entry.empty = true; -// logger.debug() << "Stream <"<getSerialNo()<< std::dec<<"> has ended \n"; - streamEndCounter++; - } -// entry.endOfStream = true; - } else { - - // get the next packet from this stream decoder - OggPacket newPacket; - *(entry.streamDecoder) >> newPacket; - - // set some additional data - newPacket.setStreamType(entry.streamConfig.type); - newPacket.setStreamNo(entry.streamConfig.streamNo); - - // if there is a position interpreter, use it to set the time - // else set the time to 0 - if (entry.posInterpreter) { -// logger.debug() << "granpos stream: "<setStreamPosition(newPacket); - entry.nextTime = entry.posInterpreter->getActTime(); - } else { - int64 grPos = newPacket.granulepos(); - // the interpreter needs to be pushed forward - entry.posInterpreter->setStreamPosition(newPacket); - newPacket.setGranulepos(grPos); - entry.nextTime = entry.posInterpreter->getTime(newPacket.granulepos()); - } -// logger.debug() << " calc: "<::iterator it = streamList.begin(); - - /* delete all list entries */ - for (; it != streamList.end(); ++it) { - - StreamEntry& entry = it->second; - - /* if this stream has ended, continue with the next stream */ - if (entry.endOfStream) - continue; - - /* if this is the first packet in this round, take it - * as a reference else compare both times */ - - if ((time < 0) || ((!entry.empty) && (entry.nextTime < time))) { - time = entry.nextTime; - nextStreamID = it->first; - } - } - - if (time > -1) { - /* copy the next packet to the requested one */ - packet = streamList[nextStreamID].nextPacket; - if (fillStreams()) - insertNextPacket(streamList[nextStreamID]); - else - streamEndCounter = streamList.size(); - } - - return (time); -} diff -Nru oggvideotools-0.8a/src/streamSerializer.h oggvideotools-0.9.1/src/streamSerializer.h --- oggvideotools-0.8a/src/streamSerializer.h 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/src/streamSerializer.h 1970-01-01 00:00:00.000000000 +0000 @@ -1,98 +0,0 @@ -/* - * streamSerialize will output a serialized stream of packets from a file - * - * Copyright (C) 2008 Joern Seger - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - * - */ - -#ifndef STREAMSERIALIZER_H_ -#define STREAMSERIALIZER_H_ - -#include -#include - -#include "definition.h" -#include "mediaRepository.h" -#include "oggDecoder.h" -#include "oggStreamDecoder.h" -#include "granulePosInterpreter.h" -#include "streamConfig.h" - -class StreamEntry { - -public: - StreamConfig streamConfig; - OggStreamDecoder* streamDecoder; - GranulePosInterpreter* posInterpreter; - - OggPacket nextPacket; - double nextTime; - bool endOfStream; - bool empty; - - StreamEntry(); - StreamEntry(StreamConfig& config, OggStreamDecoder* sDecoder); - virtual ~StreamEntry(); - - bool allHeadersCollected(); -}; - -//! class to reserialize ogg packets -/* reserializing an ogg stream is not as easy as it seems: - * you always */ -class StreamSerializer { - -protected: - enum InitStates { - created, - reposOpened, - initialized - }; - - InitStates initState; - MediaRepository* repository; - OggDecoder* oggDecoder; - std::map streamList; - - uint32 streamEndCounter; - - bool fillPage(); - bool fillStreams(); - bool extractStreams(); - - void insertNextPacket(StreamEntry& entry); - - // none copieable serializer - StreamSerializer(const StreamSerializer& streamSerializer) {} - -public: - StreamSerializer(); - virtual ~StreamSerializer(); - - void getStreamConfig(std::vector& configList); - - bool available(); - - bool open(std::string& datasource); - bool open(MediaRepository* _repository); - void close(); - - double getNextPacket(OggPacket& packet); - -}; - -#endif /*STREAMSERIALIZER_H_*/ diff -Nru oggvideotools-0.8a/src/theoraConfig.cpp oggvideotools-0.9.1/src/theoraConfig.cpp --- oggvideotools-0.8a/src/theoraConfig.cpp 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/theoraConfig.cpp 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,9 @@ +#include "theoraConfig.h" + +TheoraConfig::TheoraConfig() +{ +} + +TheoraConfig::~TheoraConfig() +{ +} diff -Nru oggvideotools-0.8a/src/theoraConfig.h oggvideotools-0.9.1/src/theoraConfig.h --- oggvideotools-0.8a/src/theoraConfig.h 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/theoraConfig.h 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,31 @@ +#ifndef THEORACONFIG_H_ +#define THEORACONFIG_H_ + +#include "definition.h" + +#include "mediaConfig.h" + +class TheoraConfig : public MediaConfig { +public: + TheoraConfig(); + virtual ~TheoraConfig(); + + uint32 pictureX; + uint32 pictureY; + uint32 frameX; + uint32 frameY; + uint32 frameXOffset; + uint32 frameYOffset; + + uint32 aspectRatioNum; + uint32 aspectRatioDedum; + + uint32 framerateNum; + uint32 framerateDenum; + + uint32 videoQuality; + uint32 videoBitrate; + +}; + +#endif /*THEORACONFIG_H_*/ diff -Nru oggvideotools-0.8a/src/theoraDecoder.cpp oggvideotools-0.9.1/src/theoraDecoder.cpp --- oggvideotools-0.8a/src/theoraDecoder.cpp 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/src/theoraDecoder.cpp 1970-01-01 00:00:00.000000000 +0000 @@ -1,402 +0,0 @@ -/* - * TheoraDecoder wrapper - * - * Copyright (C) 2008 Joern Seger - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - * - */ - -#include "theoraDecoder.h" -#include - -#ifdef HAVE_LIBTHEORADEC - -#include "theoraStreamParameter.h" -#include "exception.h" - -#include -#include -#include - -#include -#include -#include "exception.h" -#include "log.h" - -TheoraDecoder::TheoraDecoder(uint8 _streamID) : - MediaOutputDecoder(_streamID), setupInfo(NULL), theoraDecState(NULL), - initCount(0) -{ -} - -TheoraDecoder::~TheoraDecoder() -{ - clear(); -} - -void TheoraDecoder::clear() -{ - if (isConfigured()) { - /* delete all packets, that may be left within the queue */ - packetList.clear(); - - /* clean up everything regarding the decoding process */ - th_setup_free(setupInfo); - setupInfo=0; - th_decode_free(theoraDecState); - theoraDecState=0; - th_info_clear(&theoraInfo); - th_comment_clear(&theoraComment); - setFree(); - } -} - -void TheoraDecoder::initDecoder(StreamConfig& config, - std::vector& oggComments) -{ - if (isConfigured()) - throw OggException("TheoraDecoder::initDecoder: could not configure twice"); - - - /* initialize the info and comment handler structs */ - th_info_init(&theoraInfo); - th_comment_init(&theoraComment); - - /* initialize the packet counter */ - packetCount = 0; - - /* configure the decoders */ - for (uint8 i(0); iINT_MAX/theoraInfo.frame_width) - || ((theoraInfo.frame_width*theoraInfo.frame_height) - >= maxVideoPlaneSize)) { - throw OggException("TheoraDecoder::initDecoder: could not set up decoder, frame is too big"); - } - - theoraDecState = th_decode_alloc(&theoraInfo, setupInfo); - if (theoraDecState == NULL) { - throw OggException("TheoraDecoder::initDecoder: th_decode_alloc failed"); - } - - TheoraStreamParameter* theoraConfig = dynamic_cast(config.parameter); - - theoraConfig->aspectRatioDenom = theoraInfo.aspect_denominator; - theoraConfig->aspectRatioNum = theoraInfo.aspect_numerator; - theoraConfig->colorspace = (TheoraStreamParameter::ColorSpace) theoraInfo.colorspace; - theoraConfig->framerateDenom = theoraInfo.fps_denominator; - theoraConfig->framerateNum = theoraInfo.fps_numerator; - theoraConfig->pictureX = theoraInfo.pic_width; - theoraConfig->pictureY = theoraInfo.pic_height; - theoraConfig->frameX = theoraInfo.frame_width; - theoraConfig->frameY = theoraInfo.frame_height; - theoraConfig->frameXOffset = theoraInfo.pic_x; - theoraConfig->frameYOffset = theoraInfo.pic_y; - theoraConfig->keyframeShift = theoraInfo.keyframe_granule_shift; - theoraConfig->pixel_fmt = (TheoraStreamParameter::PixFormat) theoraInfo.pixel_fmt; - theoraConfig->videoBitrate = theoraInfo.target_bitrate; - theoraConfig->videoQuality = theoraInfo.quality; - - /* set the state machine */ - setConfigured(); - -} - -MediaOutputDecoder& TheoraDecoder::operator<<(OggPacket packet) -{ - /* if the stream is not initialized, initialize the first structs */ - if (!isConfigured()) - throw OggException("TheoraDecoder::initDecoder: Theora decoder is not configured"); - - /* while inserting data into the stream, we do not - * decode. We just store the packets and will decode them - * on demand */ - packetList.push_back(packet); - - /* has there not been a packet in the queue before */ - if (isEmpty()) { - - /* set the internal state */ - setAvailable(); - - } - - /* count the video packets, to have a gimps of the actual position */ - packetCount++; - return(*this); -} - -bool TheoraDecoder::isNextPacketKeyframe() -{ - return ((th_packet_iskeyframe(packetList.front().obj()) == 1)); -} - -bool TheoraDecoder::isPacketKeyframe(OggPacket packet) -{ - return ((th_packet_iskeyframe(packet.obj()) == 1)); -} - -uint32 TheoraDecoder::getPositionOfNextPacket() -{ - if (isEmpty()) - return (0xFFFFFFFF); - - return (packetCount - packetList.size()); -} - -TheoraDecoder& TheoraDecoder::operator>>(th_ycbcr_buffer& picture) -{ - if (!isConfigured()) - throw OggException("TheoraDecoder::operator>>: Theora decoder is not configured"); - - if (isEmpty()) - throw OggException("TheoraDecoder::operator>>: No packet available"); - - /* get the first packet from the packet list */ - OggPacket packet = packetList.front(); - packetList.pop_front(); - - /* insert the packet into the theora decoder */ - ogg_int64_t dummy; - int result; - result = th_decode_packetin(theoraDecState, packet.obj(), &dummy); - if (result != 0 && result != TH_DUPFRAME) { - reportTheoraError(result); - } - - /* finally decode the picture */ - result = th_decode_ycbcr_out(theoraDecState, picture); - if (result != 0) { - reportTheoraError(result); - } - - if (packetList.empty()) { - setEmpty(); - } - - return(*this); -} - -/*std::string TheoraDecoder::getInfoString() -{ - - std::stringstream stream; - - if (!isConfigured()) - { - logger.error() - << "TheoraDecoder::operator>>: Theora Stream is not initialized\n"; - return (stream.str()); - } - - stream << std::endl; - stream << "Size : " << theoraInfo.pic_width << ":" - << theoraInfo.pic_height << " (Frame Size : " - << theoraInfo.frame_width << ":" << theoraInfo.frame_height - << " ; Offset: "< -#include -#include -#include -#include "definition.h" - -#include "mediaOutputDecoder.h" - -class TheoraDecoder : public MediaOutputDecoder { - -protected: - - th_info theoraInfo; - th_comment theoraComment; - th_setup_info* setupInfo; - - th_dec_ctx* theoraDecState; - - std::list packetList; - std::vector headerList; - - uint8 initCount; - uint32 packetCount; - - static const uint32 maxVideoPlaneSize = (4096*4096); - - void reportTheoraError(int error) const; - -public: - TheoraDecoder(uint8 streamID = 0); - virtual ~TheoraDecoder(); - - virtual void initDecoder(StreamConfig& config, std::vector& commentList); - - virtual MediaOutputDecoder& operator<<(OggPacket packet); - - TheoraDecoder& operator>>(th_ycbcr_buffer& picture); - -// virtual std::string getInfoString(); - - th_info& getInfo(); - th_comment& getComment(); - - bool isNextPacketKeyframe(); - uint32 getPositionOfNextPacket(); - - virtual void clear(); - - uint32 getWidth(); - uint32 getHeight(); - - static bool isPacketKeyframe(OggPacket packet); - - virtual std::string configuration() const; - -}; - -#endif // WITH_LIBTHEORA - -#endif /*THEORADECODER_H_*/ diff -Nru oggvideotools-0.8a/src/theoraEncoder.cpp oggvideotools-0.9.1/src/theoraEncoder.cpp --- oggvideotools-0.8a/src/theoraEncoder.cpp 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/src/theoraEncoder.cpp 1970-01-01 00:00:00.000000000 +0000 @@ -1,332 +0,0 @@ -/* - * TheoraEncoder wrapper - * - * Copyright (C) 2008 Joern Seger - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - * - */ - -#include "theoraEncoder.h" - -#ifdef HAVE_LIBTHEORADEC - -#ifdef HAVE_CONFIG_H -#include "config.h" -#endif - -#include -#include -#include -#include - -#include "exception.h" -#include "log.h" - -TheoraEncoder::TheoraEncoder(uint8 _streamNo) - : MediaInputEncoder(_streamNo), packetCounter(0) -{ - th_comment_init(&theoraComment); -} - -TheoraEncoder::~TheoraEncoder() -{ - if (isConfigured()) - th_encode_free(theoraState); - - th_info_clear(&theoraInfo); - th_comment_clear(&theoraComment); - - // the original packet is owned by the encoder, so we are not allowed to delete it - packet.packet = 0; -} - -void TheoraEncoder::createHeader(std::vector& headerList, std::vector& oggComments) -{ - int32 encodeRetID; - - th_comment_add_tag(&theoraComment,"ENCODER",PACKAGE_STRING); - - /* add other comments */ - for (uint32 i(0); i 0) { -// ost::slog(ost::Slog::levelDebug) << "TheoraEncoder:: inserting header/n"; - -#ifdef DEBUG - logger.debug() << "Theora Packet Number: "<< packet.packetno << "reset to 0" << std::endl; -#endif - - packet.streamType = ogg_theora; - packet.streamNo = streamNo; - packet.streamHeader = true; - packet.packetno = 0; - headerList.push_back(OggPacket(packet.clone())); - - } - - if (encodeRetID == TH_EFAULT) - throw OggException("TheoraEncoder::operator <<: encoder or packet are NULL"); - -} - -void TheoraEncoder::reset() -{ - if (isConfigured()) { - th_encode_free(theoraState); - theoraState = th_encode_alloc(&theoraInfo); - } - -} - -void TheoraEncoder::configureEncoder(StreamConfig& streamConf, std::vector& oggComments) -{ - if (isConfigured()) - throw OggException("TheoraEncoder::configureEncoder: can't configure encoder twice"); - - TheoraStreamParameter* config = dynamic_cast(streamConf.parameter); - - if (!config) - throw OggException("TheoraEncoder::configureEncoder: wrong configuration"); - - // Theora has a divisible-by-sixteen restriction for the encoded video size - // scale the frame size up to the nearest /16 and calculate offsets - - config->frameX = (config->pictureX+15)&~0xF; - config->frameY = (config->pictureY+15)&~0xF; - - // We force the offset to be even. - // This ensures that the chroma samples align properly with the luma - // samples. - -// config->frameXOffset = ((config->frameX - config->pictureX)/2)&~1; -// config->frameYOffset = ((config->frameY - config->pictureY)/2)&~1; -// config->frameXOffset = 0; -// config->frameYOffset = 0; - - // let's initialize the theora encoder - th_info_init(&theoraInfo); - - theoraInfo.pic_width = config->pictureX; - theoraInfo.pic_height = config->pictureY; - theoraInfo.frame_width = config->frameX; - theoraInfo.frame_height = config->frameY; - theoraInfo.pic_x = config->frameXOffset; - theoraInfo.pic_y = config->frameYOffset; - theoraInfo.fps_numerator = config->framerateNum; - theoraInfo.fps_denominator = config->framerateDenom; - theoraInfo.aspect_numerator = config->aspectRatioNum; - theoraInfo.aspect_denominator = config->aspectRatioDenom; - switch ( config->colorspace ) { - case TheoraStreamParameter::ITU_470M: - theoraInfo.colorspace = TH_CS_ITU_REC_470M; - break; - case TheoraStreamParameter::ITU_470BG: - theoraInfo.colorspace = TH_CS_ITU_REC_470BG; - break; - default: - theoraInfo.colorspace = TH_CS_UNSPECIFIED; - break; - } - switch (config->pixel_fmt) { - case TheoraStreamParameter::pf_420: - theoraInfo.pixel_fmt = TH_PF_420; - break; - case TheoraStreamParameter::pf_422: - theoraInfo.pixel_fmt = TH_PF_422; - break; - case TheoraStreamParameter::pf_444: - theoraInfo.pixel_fmt = TH_PF_444; - break; - default: - theoraInfo.pixel_fmt = TH_PF_420; // most likly this format - break; - } - theoraInfo.target_bitrate = config->videoBitrate; - theoraInfo.quality = config->videoQuality; - theoraInfo.keyframe_granule_shift = config->keyframeShift; // 6 bit to distinguish interframes - - // TODO: Pixel Format should be available in config - /* create a new theora encoder handle */ - theoraState = th_encode_alloc(&theoraInfo); - - if (theoraState) - setConfigured(); - else - throw OggException("TheoraEncoder::setConfig: Parameters invalid"); - - createHeader(streamConf.headerList, oggComments); - - streamConf.serialNo = rand(); - streamConf.streamNo = streamNo; - streamConf.type = ogg_theora; - streamConf.numOfHeaderPackets = streamConf.headerList.size(); - - - // reset the packet counter if encoder is reconfigured - packetCounter = 0; -} - -MediaInputEncoder& TheoraEncoder::operator >>(OggPacket& packet) -{ - if (packetList.empty()) - throw OggException("TheoraEncoder::operator >>: No PacketAvailable"); - - packet = packetList.front(); - packetList.pop_front(); - - packet.obj()->packetno = packetCounter++; - - if (packetList.empty()) - setEmpty(); - - return(*this); -} - -MediaInputEncoder& TheoraEncoder::operator <<(th_ycbcr_buffer buffer) -{ - if (!isConfigured()) - throw OggException("TheoraEncoder::operator <<: codec not configured"); - - int32 errID; - if ((errID = th_encode_ycbcr_in(theoraState, buffer)) != 0) { - if (errID == TH_EFAULT) - throw OggException("TheoraEncoder::operator <<: encoder or video buffer is NULL"); - if (errID == TH_EINVAL) { - logger.debug() << "Size of picture "< 0) { - -#ifdef DEBUG - logger.debug() << "Theora Packet Number: "<< packet.packetno< -#include -#include -#include - -#include "oggPacket.h" -#include "oggComment.h" -#include "mediaInputEncoder.h" -#include "theoraStreamParameter.h" -#include "streamConfig.h" - -class TheoraEncoder : public MediaInputEncoder { - -protected: - - uint64 packetCounter; - - th_enc_ctx* theoraState; - th_comment theoraComment; - th_info theoraInfo; - - OggPacketInternal packet; - - std::list packetList; - - void createHeader(std::vector& headerList, std::vector& oggComments); - -public: - - TheoraEncoder(uint8 streamNo = 0); - virtual ~TheoraEncoder(); - - virtual MediaInputEncoder& operator>>(OggPacket& packet); - MediaInputEncoder& operator<<(th_ycbcr_buffer buffer); - - virtual void configureEncoder(StreamConfig& config, std::vector& oggComments); - - uint32 width() const; - uint32 height() const; - - th_info& getInfo(); - - virtual std::string configuration() const; - - virtual void reset(); - -}; - -#endif /* HAVE_LIBTHEORAENC */ - -#endif /*THEORAENCODER_H_*/ diff -Nru oggvideotools-0.8a/src/theoraExtractor.cpp oggvideotools-0.9.1/src/theoraExtractor.cpp --- oggvideotools-0.8a/src/theoraExtractor.cpp 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/src/theoraExtractor.cpp 1970-01-01 00:00:00.000000000 +0000 @@ -1,111 +0,0 @@ -#include -#include - -#include "theoraExtractor.h" -#include "definition.h" -#include "oggTypes.h" -#include "oggHeader.h" -#include "theoraHeader.h" -#include "theoraStreamParameter.h" -#include "theoraPosInterpreter.h" -#include "log.h" - -TheoraExtractor::TheoraExtractor() -{ -} - -TheoraExtractor::~TheoraExtractor() -{ -} - -bool TheoraExtractor::_extract(uint8* data, ExtractorInformation& info) -{ - - StreamType* streaminfo = (StreamType*) (data); - TheoraHeader* theoraHeader = (TheoraHeader*) (data + sizeof(StreamType)); - - /* if this is not a theora header, return with an error */ - if ((streaminfo->headerType != 0x80) || - (strncmp(streaminfo->typeName, "theora", 6) != 0)) { - logger.error() << "TheoraPosInterpreter::initialize: This page is not a theora bos\n"; - return(false); - } - - // first extract the parameters - TheoraStreamParameter* param = new TheoraStreamParameter; - - // for all the calculation, we need to convert some fields - theoraHeader->un.pleaseconvert = convert16(theoraHeader->un.pleaseconvert); - - param->framerateNum = convert32(theoraHeader->frn); - param->framerateDenom = convert32(theoraHeader->frd); - - param->pictureX = convert24(theoraHeader->picw); - param->pictureY = convert24(theoraHeader->pich); - - param->aspectRatioNum = convert24(theoraHeader->parn); - param->aspectRatioDenom = convert24(theoraHeader->parn); - - param->frameX = convert16(theoraHeader->fmbw)*16; - param->frameY = convert16(theoraHeader->fmbh)*16; - - param->frameXOffset = theoraHeader->picx; - param->frameYOffset = theoraHeader->picy; - - param->videoQuality = theoraHeader->un.lenbo.qual; - param->videoBitrate = convert24(theoraHeader->nombr); - - param->keyframeShift = theoraHeader->un.lenbo.kfgshift; - - param->colorspace = (TheoraStreamParameter::ColorSpace) theoraHeader->cs; - param->pixel_fmt = (TheoraStreamParameter::PixFormat) theoraHeader->un.lenbo.pf; - - // to have the original packet, we recover the data - theoraHeader->un.pleaseconvert = convert16(theoraHeader->un.pleaseconvert); - - /* are there any old info stored, then delete them */ - if (info.parameter) - delete info.parameter; - - info.parameter = param; - - /* set the ogg type and the number of header packets */ - info.type = ogg_theora; - info.numOfHeaderPackets = 3; // the first three packets are headers - - return(true); -} - -bool TheoraExtractor::extract(OggPage& oggPage, ExtractorInformation& information) -{ - /* if this is not a Begin Of Stream page, return immediately */ - if (!oggPage.isBOS()) { - logger.error() << "TheoraPosInterpreter::extract: This page is not a BOS (Begin Of Stream) page\n"; - return(false); - } - - /* get the information starting points within the raw data */ - OggHeader* oggHeader = (OggHeader*) (oggPage.data()); - uint8* data = (oggPage.data() + sizeof(OggHeader) + oggHeader->tableSegments); - - if (_extract(data, information) == false) - return(false); - - information.serialNo = oggHeader->serial; - - return(true); -} - -bool TheoraExtractor::extract(OggPacket& packet, ExtractorInformation& information) -{ - // if this is not a Begin Of Stream page, return immediately - if (!packet.isBOS()) { - logger.error() << "TheoraPosInterpreter::extract: This packet is not a BOS (Begin Of Stream) page\n"; - return(false); - } - - if (_extract(packet.data(), information) == false) - return(false); - - return(true); -} diff -Nru oggvideotools-0.8a/src/theoraExtractor.h oggvideotools-0.9.1/src/theoraExtractor.h --- oggvideotools-0.8a/src/theoraExtractor.h 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/src/theoraExtractor.h 1970-01-01 00:00:00.000000000 +0000 @@ -1,18 +0,0 @@ -#ifndef THEORAEXTRACTOR_H_ -#define THEORAEXTRACTOR_H_ - -#include "streamExtractor.h" - -class TheoraExtractor : public StreamExtractor { -public: - TheoraExtractor(); - virtual ~TheoraExtractor(); - - bool _extract(uint8* data, ExtractorInformation& information); - - virtual bool extract(OggPage& page, ExtractorInformation& information); - virtual bool extract(OggPacket& packet, ExtractorInformation& information); - -}; - -#endif /*THEORAEXTRACTOR_H_*/ diff -Nru oggvideotools-0.8a/src/theoraHeader.h oggvideotools-0.9.1/src/theoraHeader.h --- oggvideotools-0.8a/src/theoraHeader.h 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/src/theoraHeader.h 1970-01-01 00:00:00.000000000 +0000 @@ -1,35 +0,0 @@ -#ifndef THEORAHEADER_H -#define THEORAHEADER_H - -struct TheoraHeader { - char vmaj; - char vmin; - char vrev; - uint16 fmbw; - uint16 fmbh; - uint32 picw:24; - uint32 pich:24; - char picx; - char picy; - uint32 frn; - uint32 frd; - uint32 parn:24; - uint32 pard:24; - char cs; - uint32 nombr:24; - - // its little endian - // and network byte order - union { - struct { - uint16 reserved:3; - uint16 pf:2; - uint16 kfgshift:5; - uint16 qual:6; - } lenbo; - uint16 pleaseconvert; - } un; - -} __attribute__ ((packed)); - -#endif diff -Nru oggvideotools-0.8a/src/theoraPosInterpreter.cpp oggvideotools-0.9.1/src/theoraPosInterpreter.cpp --- oggvideotools-0.8a/src/theoraPosInterpreter.cpp 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/src/theoraPosInterpreter.cpp 1970-01-01 00:00:00.000000000 +0000 @@ -1,241 +0,0 @@ -#include "theoraPosInterpreter.h" -#include "theoraStreamParameter.h" - -#include -#include -#include "log.h" - - -TheoraPosInterpreter::TheoraPosInterpreter() - : keyframeShift(6), framerateNumerator(1), framerateDenominator(1) -{ -} - -TheoraPosInterpreter::~TheoraPosInterpreter() -{ -} - -uint32 TheoraPosInterpreter::getFramerateNumerator() -{ - return(framerateNumerator); -} - -uint32 TheoraPosInterpreter::getFramerateDenominator() -{ - return(framerateDenominator); -} - -uint8 TheoraPosInterpreter::getKeyframeShift() -{ - return(keyframeShift); -} - -void TheoraPosInterpreter::extractFramePos(int64 granulePosition, int64& keyframePosition, int32& intraframePosition) -{ - - keyframePosition = granulePosition>>keyframeShift; - - uint64 mask(1); - mask <<= keyframeShift; - mask -= 1; - intraframePosition = (granulePosition&mask); - -} - -void TheoraPosInterpreter::initialize(StreamParameter* _param) -{ - TheoraStreamParameter* param = dynamic_cast(_param); - - if (!param) { - logger.error() << "TheoraPosInterpreter::initialize: parameter not set correctly\n"; - return; - } - - keyframeShift = param->keyframeShift; - framerateNumerator = param->framerateNum; - framerateDenominator = param->framerateDenom; - - initialized = true; - return; -} - -/* -void TheoraPosInterpreter::initialize(OggPage oggPage) -{ - if (!oggPage.isBOS()) { - logger.error() << "TheoraPosInterpreter::initialize: This page is not a BOS (Begin Of Stream) page\n"; - return; - } - - OggHeader* oggHeader = (OggHeader*) (oggPage.data()); - StreamType* streamInformation = (StreamType*) (oggPage.data() + sizeof(OggHeader) + oggHeader->tableSegments); - TheoraHeader* theoraHeader = (TheoraHeader*) (oggPage.data() + sizeof(OggHeader) + oggHeader->tableSegments + sizeof(StreamType)); - - if ((streamInformation->headerType != 0x80) || - (strncmp(streamInformation->typeName, "theora", 6) != 0)) { - logger.error() << "TheoraPosInterpreter::initialize: This page is not a theora bos\n"; - return; - } - - // for all the calculation, we need to convert some fields - theoraHeader->un.pleaseconvert = convert16(theoraHeader->un.pleaseconvert); - - framerateNumerator = convert32(theoraHeader->frn); - framerateDenominator = convert32(theoraHeader->frd); - - keyframeShift = theoraHeader->un.lenbo.kfgshift; - - // to have the original packet, we recover the data - theoraHeader->un.pleaseconvert = convert16(theoraHeader->un.pleaseconvert); - - initialized = true; -} - -void TheoraPosInterpreter::initialize(OggPacket oggPacket) -{ - - StreamType* streamInformation = (StreamType*) (oggPacket.data()); - TheoraHeader* theoraHeader = (TheoraHeader*) (oggPacket.data() + sizeof(StreamType)); - - if ((streamInformation->headerType != 0x80) || - (strncmp(streamInformation->typeName, "theora", 6) != 0)) { - logger.error() << "TheoraPosInterpreter::initialize: This page is not a theora bos\n"; - return; - } - - // for all the calculation, we need to convert some fields - theoraHeader->un.pleaseconvert = convert16(theoraHeader->un.pleaseconvert); - - framerateNumerator = convert32(theoraHeader->frn); - framerateDenominator = convert32(theoraHeader->frd); - - keyframeShift = theoraHeader->un.lenbo.kfgshift; - - // to have the original packet, we recover the data - theoraHeader->un.pleaseconvert = convert16(theoraHeader->un.pleaseconvert); - - initialized = true; -} - -*/ - -double TheoraPosInterpreter::getTime(int64 granulePos) -{ - if (!initialized) { - logger.error() << "TheoraPosInterpreter::initialize: The position interpreter is not initialized yet\n"; - return(-2); - } - - if (granulePos == -1) - return(-1); - - int64 pos1; - int32 pos2; - - extractFramePos(granulePos, pos1, pos2); - - double time = (framerateDenominator*1.0/framerateNumerator*1.0)*(pos1+pos2); - -// logger.debug() << "time extractor: "< "<(&_otherPosition); - - if ((keyframeShift != otherPosition->keyframeShift) || - (framerateNumerator != otherPosition->framerateNumerator) || - (framerateDenominator != otherPosition->framerateDenominator)) { - logger.error() << "GranulePosInterpreter::operator+=: granulePositions does not match in shift value or framerate\n"; - return(*this); - } - - if ((actualGranulePosition < 0) || (otherPosition->actualGranulePosition < 0)) { - logger.error() << "GranulePosInterpreter::operator+=: one or both granulePositions are not valid\n"; - return(*this); - } - - int64 ownPos1; - int32 ownPos2; - - extractFramePos(actualGranulePosition, ownPos1, ownPos2); - - int64 otherPos1; - int32 otherPos2; - - extractFramePos(otherPosition->actualGranulePosition, otherPos1, otherPos2); - - ownPos1 += (otherPos1 + otherPos2); - - actualGranulePosition = ((ownPos1< -#include - -#include "theoraStreamParameter.h" -#include "log.h" - -TheoraStreamParameter::TheoraStreamParameter() -{ -} - -TheoraStreamParameter::~TheoraStreamParameter() -{ -} - -bool TheoraStreamParameter::operator==(const StreamParameter& _param) -{ - StreamParameter* _param_unconst = const_cast(&_param); - TheoraStreamParameter* param = dynamic_cast(_param_unconst); - - if (!param) - return(false); - - if (keyframeShift != param->keyframeShift) { - logger.error() << "theora parameter compare: the granule shift is not matching\n"; - return(false); - } - - if ((framerateNum != param->framerateNum) || - (framerateDenom != param->framerateDenom)) { - logger.error() << "theora parameter compare: framerate does not match: " - << framerateNum << "/" << param->framerateDenom - << " != " << param->framerateNum << "/" << param->framerateDenom - << std::endl; - return(false); - } - - if ((pictureX != param->pictureX) || - (pictureY != param->pictureY)) { - logger.error() << "theora parameter compare: height or width are not matching:" - << pictureX << ":" << pictureY << " != " - << param->pictureX << ":" << param->pictureY << "\n"; - return(false); - } - - if ((frameX != param->frameX) || - (frameY != param->frameY)) { - logger.error() << "theora parameter compare: frame height or width are not matching:" - << frameX << ":" << frameY << " != " - << param->frameX << ":" << param->frameY << "\n"; - return(false); - } - - /* if ((frameXOffset != param->frameXOffset) || - (frameYOffset != param->frameYOffset)) { - logger.error() << "theora parameter compare: offsets are not matching:" - << frameXOffset << ":" << frameXOffset << " != " - << param->frameYOffset << ":" << param->frameYOffset << "\n"; - return(false); - } - */ - return(true); -} - -std::string TheoraStreamParameter::toString() -{ - std::stringstream stream; - - stream << std::endl; - stream << "Size : " << pictureX << " x " << pictureY - << " (Frame Size : " << frameX << " x" << frameY << " )\n" - << "KeyframeShift: " <<(uint32)keyframeShift<(packet) +{} + +TheoraVideoPacket::~TheoraVideoPacket() +{} + +uint64 TheoraVideoPacket::getGranulePosition() +{ + if (objPtr) + return (objPtr->granulePosition); + + return(0); +} + +double TheoraVideoPacket::getTime() +{ + if (objPtr) + return (objPtr->time); + + return(0); +} + +bool TheoraVideoPacket::isKeyFrame() +{ + if (objPtr) + return (objPtr->keyframe); + + return(0); +} + +yuv_buffer& TheoraVideoPacket::getYuvBuffer() +{ + if (objPtr) + return (objPtr->yuvBuffer); + + static yuv_buffer dummy; + + return(dummy); +} + +void TheoraVideoPacket::setGranulePosition(uint64 position) +{ + if (objPtr) + objPtr->granulePosition = position; +} + +void TheoraVideoPacket::setTime(double picTime) +{ + if (objPtr) + objPtr->time = picTime; +} + +void TheoraVideoPacket::setKeyFrame(bool isKFrame) +{ + if (objPtr) + objPtr->keyframe = isKFrame; +} + +void TheoraVideoPacket::setYuvBuffer(yuv_buffer& buffer) +{ + if (objPtr) + objPtr->yuvBuffer = buffer; +} + +#endif diff -Nru oggvideotools-0.8a/src/theoraVideoPacket.h oggvideotools-0.9.1/src/theoraVideoPacket.h --- oggvideotools-0.8a/src/theoraVideoPacket.h 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/theoraVideoPacket.h 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,72 @@ +/* + * theoraVideoPacket + * + * Copyright (C) 2008 Joern Seger + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + * + */ +#ifndef THEORAVIDEOPACKET_H_ +#define THEORAVIDEOPACKET_H_ + +#ifdef HAVE_CONFIG_H +#include "config.h" +#else +#warning only use with autotools +#endif + +#ifdef HAVE_LIBTHEORA + +#include +#include "refObject.h" +#include "definition.h" + +class VideoData { + +public: + + yuv_buffer yuvBuffer; + + uint64 granulePosition; + double time; + bool keyframe; + +}; + +class TheoraVideoPacket : public RefObject { + +public: + + TheoraVideoPacket(); + TheoraVideoPacket(TheoraVideoPacket& packet); + virtual ~TheoraVideoPacket(); + + TheoraVideoPacket& operator=(const TheoraVideoPacket& packet); + + uint64 getGranulePosition(); + double getTime(); + bool isKeyFrame(); + yuv_buffer& getYuvBuffer(); + + void setGranulePosition(uint64 position); + void setTime(double picTime); + void setKeyFrame(bool isFrame); + void setYuvBuffer(yuv_buffer& buffer); + +}; + +#endif + +#endif /*THEORAVIDEOPACKET_H_*/ diff -Nru oggvideotools-0.8a/src/videoHook.cpp oggvideotools-0.9.1/src/videoHook.cpp --- oggvideotools-0.8a/src/videoHook.cpp 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/src/videoHook.cpp 1970-01-01 00:00:00.000000000 +0000 @@ -1,364 +0,0 @@ -#include - -#include - -#include "videoHook.h" - -#include "theoraDecoder.h" -#include "theoraEncoder.h" - -#include "rgbPlane.h" -#include "pictureLoader.h" -#include "pictureResize.h" -#include "pictureBlend.h" -#include "th_helper.h" -#include "exception.h" -#include "log.h" - -VideoHook::Config::Config() - : stretch(false), trimDatarateOrQuality(false), quality(3), preview(1) -{ -} - -VideoHook::VideoHook(uint8 outStreamID, const bool copy, const bool keepComments) : - HookHandler(copy, keepComments), framerateDecoder(1), framerateEncoder(1), - aspectCorrection(1), time(0), nextTime(0), timeOffset(0), intensityStair(1), - changeSize(false) -{ - config.stretch = false; // Try to keep the aspect ratio - config.quality = 3; // use good quality for resizing - config.preview = 1; // don't use any preview functionality - - // we create the decoder/encoder pair, - // even if we don't need them - // specially the encoder may be needed later, if the - // input comes from another source - outputDecoder = new TheoraDecoder; -// logger.debug() << "Theora Encoder stream No "<<(int)outStreamID<(*outputDecoder); - TheoraEncoder& encoder = static_cast(*inputEncoder); - - // What is the best way to receive the time?! - // best way may be to recalculate the time due to the number of packets - // and the framerate - time = (inPacketCounter*framerateEncoder) + timeOffset; - nextTime = (outPacketCounter*framerateDecoder) + timeOffset; -// logger.debug() << "Time "<> inycbcr; - - while ( (uint64)(time*1000.0+0.5) >= (uint64)(nextTime*1000.0+0.5) ) { - - inPlane = PictureLoader::importYCrCb_theora ( inycbcr, decoder.getWidth(), decoder.getHeight(), decoder.getInfo().pic_x, decoder.getInfo().pic_y, decoder.getInfo().pixel_fmt ); - - /* should be an alpha blend applied before resizing */ - if ( !config.blendListBefore.empty() ) { - alphaBlend ( time, inPlane, config.blendListBefore ); - } - - if ( changeSize ) { - if (config.stretch) - inPlane = PictureResize::resize ( inPlane, encoder.width(), encoder.height(), config.quality ); - else - inPlane = PictureResize::reframe ( inPlane, encoder.width(), encoder.height(), config.quality, 0, aspectCorrection ); - } - - /* should be an alpha blend applied after resizing? */ - if ( !config.blendListAfter.empty() ) { - alphaBlend ( time, inPlane, config.blendListAfter ); - } - - if ( ( !config.blendListBefore.empty() ) || ( !config.blendListAfter.empty() ) || changeSize ) { - - /* there are changes written to the outycbcr */ - PictureLoader::exportYCrCb_theora ( inPlane, outycbcr, encoder.getInfo().pixel_fmt ); - - if (inPacketCounter%config.preview == 0) - encoder << outycbcr; - } else { - - /* use the original data */ - if (outPacketCounter%config.preview == 0) - encoder << inycbcr; - } - - if (encoder.isAvailable()) { - outPacketCounter++; - encoder >> packet; - - if (TheoraPosInterpreter::packetIsKeyframe(packet)) - posCreator.addKeyframe(); - else - ++posCreator; - - packet.setGranulepos(posCreator.getPosition()); - packetList.push_back(packet); - nextTime = (outPacketCounter*framerateDecoder) + timeOffset; - - } - - } - // logger.debug() << std::endl; - } catch (std::exception & e) { - logger.error() << "Exception: " << e.what(); - } - } - -// logger.debug() << "time in Sec: "< "; - logger.debug() << (posCreator::packetIsKeyframe()) - */ - return(*this); -} - -void VideoHook::setEncoderConfig(StreamConfig& config, - std::vector& commentList) -{ - HookHandler::setEncoderConfig(config, commentList); - posCreator.initialize(config.parameter); -} - -void VideoHook::resetEncoder() -{ - TheoraEncoder& encoder = static_cast(*inputEncoder); - encoder.reset(); -} - -void VideoHook::initAndConnect() -{ - // maybe we could copy the stream even, when it's not strictly - // specified - // at this point every thing must be configured. - // So the comparison could take place - TheoraDecoder& decoder = static_cast(*outputDecoder); - TheoraEncoder& encoder = static_cast(*inputEncoder); - - /* if this is a reinitialisation, remember the offset */ - timeOffset = time; - inPacketCounter = 0; - outPacketCounter = 0; - - if (!config.blendListAfter.empty() || !config.blendListBefore.empty()) - reencode = true; - - /* if it is ok, that we do a reencoding, than we could trim the output */ - if (!copyOnly) { - /* if both stream configurations are equal, they could be copied */ - if ((decoder.getInfo() == encoder.getInfo()) && !reencode) { - copy = true; - } else - copy = false; - - /* maybe only the datarate/quality is different in this case, we can copy the - * stream. But maybe somebody wants to trim the datarate/quality. In this case - * we do not copy (very difficult ;-)*/ - /* - if ( !copy && !config.trimDatarateOrQuality) { - if ((decoder.getInfo().aspect_denominator == encoder.getInfo().aspect_denominator) && - ( decoder.getInfo().aspect_numerator == encoder.getInfo().aspect_numerator ) && - ( decoder.getInfo().fps_denominator == encoder.getInfo().fps_denominator) && - ( decoder.getInfo().fps_numerator == encoder.getInfo().fps_numerator) && - ( decoder.getInfo().frame_height == encoder.getInfo().frame_height) && - ( decoder.getInfo().frame_width == encoder.getInfo().frame_width) && - ( decoder.getInfo().pic_height == decoder.getInfo().pic_height) && - ( decoder.getInfo().pic_width == encoder.getInfo().pic_width) && - ( decoder.getInfo().pic_x == encoder.getInfo().pic_x) && - ( decoder.getInfo().pic_y == encoder.getInfo().pic_y) && - ( decoder.getInfo().pixel_fmt == encoder.getInfo().pixel_fmt) && - ( decoder.getInfo().colorspace == encoder.getInfo().colorspace) && - ( decoder.getInfo().keyframe_granule_shift == encoder.getInfo().keyframe_granule_shift)) { - // everything is equal except the datarate, so we can copy - copy = true; - } - } - */ - /* if the picture size is different, we need to resize the video */ - if ((decoder.getInfo().pic_width != encoder.getInfo().pic_width) || - (decoder.getInfo().pic_height != encoder.getInfo().pic_height)) - changeSize = true; - - /* if the aspect ratio is different, we also need resizing */ - if ((decoder.getInfo().aspect_numerator != encoder.getInfo().aspect_numerator) || - (decoder.getInfo().aspect_denominator != encoder.getInfo().aspect_denominator)) - changeSize = true; - - /* calculate the framerate Input and framerate Output */ - if (decoder.getInfo().fps_denominator > 0) - framerateDecoder = decoder.getInfo().fps_numerator*1.0/decoder.getInfo().fps_denominator; - else - framerateDecoder = 1; - - if (encoder.getInfo().fps_denominator > 0) - framerateEncoder = encoder.getInfo().fps_numerator*1.0/encoder.getInfo().fps_denominator; - else - framerateEncoder = 1; - - // logger.debug() << "changeing framerate from "<< framerateInput<<" to "<& blendList) -{ - - for (uint32 i( 0); i= blendList[i].startTime) { - if (blendList[i].smooth == true) { - blendList[i].state = BlendElement::blend_slideIn; - } else { - blendList[i].intensity = 1.0; - blendList[i].state = BlendElement::blend_on; - } - } - } - break; - - case BlendElement::blend_slideIn: { - blendList[i].intensity += intensityStair; - - if (blendList[i].intensity >= 1.0) { - blendList[i].state = BlendElement::blend_on; - blendList[i].intensity = 1.0; - } - - } - break; - - case BlendElement::blend_on: { - if ( (blendList[i].endTime > 0.0 ) - && (time >= blendList[i].endTime )) { - if (blendList[i].smooth == true) { - blendList[i].state = BlendElement::blend_slideOut; - } else { - blendList[i].intensity = 0.0; - blendList[i].state = BlendElement::blend_end; - } - } - } - break; - - case BlendElement::blend_slideOut: { - blendList[i].intensity -= intensityStair; - - if (blendList[i].intensity <= 0.0) { - blendList[i].state = BlendElement::blend_end; - blendList[i].intensity = 0.0; - } - - } - break; - - case BlendElement::blend_end: { - /* do nothing */ - } - break; - - } - - if ( (blendList[i].state != BlendElement::blend_end ) - && (blendList[i].state != BlendElement::blend_off )) - inPlane = PictureBlend::alphaBlend(inPlane, blendList[i].picture, - blendList[i].intensity); - - } - -} - -void VideoHook::flush() -{ - -} - -OggType VideoHook::getType() const -{ - return(ogg_theora); -} - -static bool operator==(const th_info& info1, const th_info& info2) -{ - return ( (info1.aspect_denominator == info2.aspect_denominator) && - (info1.aspect_numerator == info2.aspect_numerator) && - (info1.colorspace == info2.colorspace) && - (info1.fps_denominator == info2.fps_denominator ) && - (info1.fps_numerator == info2.fps_numerator) && - (info1.frame_height == info2.frame_height) && - (info1.frame_width == info2.frame_width) && - (info1.keyframe_granule_shift == info2.keyframe_granule_shift) && - (info1.pic_height == info2.pic_height) && - (info1.pic_width == info2.pic_width) && - (info1.pic_x == info2.pic_x) && - (info1.pic_y == info2.pic_y) && - (info1.pixel_fmt == info2.pixel_fmt) && - (info1.quality == info2.quality) && - (info1.target_bitrate == info2.target_bitrate) ); -} - -static bool operator!=(const th_info& info1, const th_info& info2) -{ - return (!(info1==info2)); -} diff -Nru oggvideotools-0.8a/src/videoHook.h oggvideotools-0.9.1/src/videoHook.h --- oggvideotools-0.8a/src/videoHook.h 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/src/videoHook.h 1970-01-01 00:00:00.000000000 +0000 @@ -1,83 +0,0 @@ -#ifndef VIDEOHOOK_H_ -#define VIDEOHOOK_H_ - -// #include - -#include "hookHandler.h" - -#include "theoraDecoder.h" -#include "theoraEncoder.h" -#include "rgbPlane.h" -#include "theoraPosInterpreter.h" - -#include "blendElement.h" - -class VideoHook : public HookHandler { -public: - - class Config { - public: - bool stretch; - bool trimDatarateOrQuality; - uint32 quality; - uint32 preview; - std::vector blendListBefore; - std::vector blendListAfter; - Config(); - }; - -private: - Config config; - - /* precalculations from known values */ - double framerateDecoder; - double framerateEncoder; - - double aspectCorrection; - double time; - double nextTime; - double timeOffset; - - double intensityStair; - - bool copy; - - bool changeSize; - RGBPlane inPlane; - - TheoraPosInterpreter posCreator; - - th_ycbcr_buffer inycbcr; - th_ycbcr_buffer outycbcr; - - VideoHook(); - - void alphaBlend(double time, RGBPlane& inPlane, - std::vector& blendList); - -public: - - VideoHook(uint8 outStreamID, const bool copy=true, const bool keepComments=true); - virtual ~VideoHook(); - - void configureProcess(Config& config); - - virtual void setEncoderConfig(StreamConfig& config, - std::vector& commentList); - - virtual void resetEncoder(); - - virtual HookHandler& operator<<(OggPacket& packet); - - virtual void initAndConnect(); - - virtual OggType getType() const; - - virtual void flush(); - -}; - -static bool operator==(const th_info& info1, const th_info& info2); -static bool operator!=(const th_info& info1, const th_info& info2); - -#endif /*VIDEOHOOK_H_*/ diff -Nru oggvideotools-0.8a/src/videoInfo.h oggvideotools-0.9.1/src/videoInfo.h --- oggvideotools-0.8a/src/videoInfo.h 1970-01-01 00:00:00.000000000 +0000 +++ oggvideotools-0.9.1/src/videoInfo.h 2016-09-05 08:35:14.000000000 +0000 @@ -0,0 +1,15 @@ +#ifndef VIDEOINFO_H_ +#define VIDEOINFO_H_ + +#include "definition.h" + +class VideoInfo { +public: + uint32 frame_width; + uint32 frame_height; + uint32 offset_x; + uint32 offset_y; + +}; + +#endif /*VIDEOINFO_H_*/ diff -Nru oggvideotools-0.8a/src/vorbisDecoder.cpp oggvideotools-0.9.1/src/vorbisDecoder.cpp --- oggvideotools-0.8a/src/vorbisDecoder.cpp 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/src/vorbisDecoder.cpp 1970-01-01 00:00:00.000000000 +0000 @@ -1,198 +0,0 @@ -#include "vorbisDecoder.h" - -#ifdef HAVE_LIBVORBIS - -#include -#include -#include - -#include "vorbisStreamParameter.h" -#include "exception.h" -#include "log.h" - -VorbisDecoder::VorbisDecoder(uint8 _streamID) : - MediaOutputDecoder(_streamID), initCount(0) -{ - -} - -VorbisDecoder::~VorbisDecoder() -{ - clear(); -} - -void VorbisDecoder::clear() -{ - - if (isConfigured()) { - /* delete all packets that may have left within the decoder queue */ - packetList.clear(); - - vorbis_info_clear(&vorbisInfo); - vorbis_block_clear(&vorbisBlock); - vorbis_dsp_clear(&vorbisDspState); - vorbis_comment_init(&vorbisComment); - setFree(); - } - -} - -void VorbisDecoder::initDecoder(StreamConfig& config, std::vector& oggComments) -{ - - if (isConfigured()) { - throw OggException("VorbisDecoder: Decoder is still configured"); - } - - /* initialize the info and comment handler structs */ - vorbis_info_init(&vorbisInfo); - vorbis_comment_init(&vorbisComment); - - /* initialize the packet counter */ - packetCount = 0; - - /* Konfiguration des Decoders */ - int retVal; - for (uint8 i(0); i(config.parameter); - - vorbisConfig->samplerate = vorbisInfo.rate; - vorbisConfig->channels = vorbisInfo.channels; - vorbisConfig->datarate = vorbisInfo.bitrate_nominal; - vorbisConfig->datarateMin = vorbisInfo.bitrate_lower; - vorbisConfig->datarateMax = vorbisInfo.bitrate_upper; - vorbisConfig->datarateWin = vorbisInfo.bitrate_window; - - /* set the state machine */ - setConfigured(); - -} - -MediaOutputDecoder& VorbisDecoder::operator<<(OggPacket packet) -{ - if (!isConfigured()) { - throw OggException("VorbisDecoder::operator<<: stream not configured"); - } - - if (vorbis_synthesis(&vorbisBlock,packet.obj())==0) - vorbis_synthesis_blockin(&vorbisDspState,&vorbisBlock); - - float** pcm; - int samples; - - while ((samples=vorbis_synthesis_pcmout(&vorbisDspState,&pcm))>0) { - AudioPacket apack(new AudioPacketInternal(pcm, samples, vorbisInfo.channels)); - packetList.push_back(apack); - vorbis_synthesis_read(&vorbisDspState,samples); - } - - - /* has there not been a packet in the queue before */ - if (!packetList.empty()) { - /* set the internal state */ - setAvailable(); - } - - /* count the audio packets, to have a glimps of the actual position */ - packetCount++; - - return(*this); -} - -VorbisDecoder& VorbisDecoder::operator>>(AudioPacket& audioPacket) -{ - if (!isAvailable()) - throw OggException("VorbisDecoder::operator>>: No audio packets available"); - - audioPacket = packetList.front(); - packetList.pop_front(); - - sampleCounter += (*audioPacket)->getLength(); - -// logger.debug() << " Sample counter: "< 0 ) - stream << "Bitrate (lower) : " << vorbisInfo.bitrate_lower << std::endl; - if ( vorbisInfo.bitrate_upper > 0 ) - stream << "Bitrate (upper) : " << vorbisInfo.bitrate_upper << std::endl; - //stream << "Bitrate (window) : " << vorbisInfo.bitrate_window << std::endl; - stream << std::endl; - - if (vorbisComment.comments) { - stream << "Comments:\n"; - for (int i=0; i -#include -#include -#include "definition.h" - -#include "mediaOutputDecoder.h" -#include "audioPacket.h" - -class VorbisDecoder : public MediaOutputDecoder { - -protected: - - vorbis_info vorbisInfo; - vorbis_dsp_state vorbisDspState; - vorbis_block vorbisBlock; - vorbis_comment vorbisComment; - - std::list packetList; - - uint8 initCount; - uint32 packetCount; - - uint64 sampleCounter; - -public: - - VorbisDecoder(uint8 streamID = 0); - virtual ~VorbisDecoder(); - - virtual void initDecoder(StreamConfig& config, std::vector& oggComments); - -// virtual std::string getInfoString(); - - vorbis_info& getInfo(); - vorbis_comment& getComment(); - - virtual MediaOutputDecoder& operator<<(OggPacket packet); - VorbisDecoder& operator>>(AudioPacket& audioPacket); - - virtual void clear(); - - virtual double getTimeOfNextPacket(); - virtual uint32 getPositionOfNextPacket() { - return packetCount; - } - - virtual std::string configuration() const; - - -}; - -#endif // WITH_LIBVORBIS - -#endif - diff -Nru oggvideotools-0.8a/src/vorbisEncoder.cpp oggvideotools-0.9.1/src/vorbisEncoder.cpp --- oggvideotools-0.8a/src/vorbisEncoder.cpp 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/src/vorbisEncoder.cpp 1970-01-01 00:00:00.000000000 +0000 @@ -1,257 +0,0 @@ -#include "vorbisEncoder.h" - -#ifdef HAVE_LIBVORBIS - -#include "vorbisExtractor.h" -#include -#include -#include -#include - -#include "exception.h" -#include "log.h" - -VorbisEncoder::VorbisEncoder(uint8 _streamNo) : - MediaInputEncoder(_streamNo), pktCnt(0) -{ -} - -VorbisEncoder::~VorbisEncoder() -{ -// logger.debug() << "Vorbis Encoder produced "<& oggComments) -{ - if (isConfigured()) - throw OggException("VorbisEncoder::setConfig: can't configure encoder twice"); - - vorbis_info_init(&vorbisInfo); - - VorbisStreamParameter* config = dynamic_cast(streamConfig.parameter); - - if (!config) - throw OggException("VorbisEncoder::configureEncoder: no valid vorbis config"); - - /* int32 ret = vorbis_encode_init(&vorbisInfo, config.channels, - config.samplerate, config.datarate, config.datarate, config.datarate); - */ - int32 ret = vorbis_encode_init(&vorbisInfo, config->channels, - config->samplerate, -1, config->datarate, -1); - - /* do not continue if setup failed; this can happen if we ask for a - mode that libVorbis does not support (eg, too low a bitrate, etc, - will return 'OV_EIMPL') */ - - if (ret) - throw OggException("VorbisEncoder::configureEncoder: can not configure encoder, wrong parameters"); - - /* add a comment */ - vorbis_comment_init(&vorbisComment); - vorbis_comment_add_tag(&vorbisComment, "ENCODER", PACKAGE_STRING); - - /* add other comments */ - for (uint32 i(0); igetLength()); - - /* there is no chance to give the data directly to the encoder - * so we need to copy :-( */ - for (uint8 i(0); igetDataOfChannel(i), (*aPacket)->getLength()*sizeof(float)); - } - - /* tell the library how much we actually submitted */ - if (vorbis_analysis_wrote(&vorbisState, (*aPacket)->getLength()) < 0) - throw OggException("VorbisEncoder::operator <<: Invalid value"); - - /* vorbis does some data preanalysis, then divvies up blocks for - more involved (potentially parallel) processing. Get a single - block for encoding now */ - while ((vorbis_analysis_blockout(&vorbisState, &vorbisBlock))==1) { - - /* analysis, assume we want to use bitrate management */ - vorbis_analysis(&vorbisBlock,0); - vorbis_bitrate_addblock(&vorbisBlock); - - while (vorbis_bitrate_flushpacket(&vorbisState, &packet)) { -// logger.debug() << "Position: "<>(OggPacket& packet) -{ - if (packetList.empty()) - throw OggException("VorbisEncoder::operator>> PacketList is empty"); - - packet = packetList.front(); - packetList.pop_front(); - - if (packetList.empty()) - setEmpty(); - - return(*this); -} - -void VorbisEncoder::flush() -{ - /* tell the library how much we actually submitted */ - if (vorbis_analysis_wrote(&vorbisState, 0) < 0) - throw OggException("VorbisEncoder::flush: can not flush"); - - /* vorbis does some data preanalysis, then divvies up blocks for - more involved (potentially parallel) processing. Get a single - block for encoding now */ - while ((vorbis_analysis_blockout(&vorbisState, &vorbisBlock))==1) { - - /* analysis, assume we want to use bitrate management */ - vorbis_analysis(&vorbisBlock,0); - vorbis_bitrate_addblock(&vorbisBlock); - - while (vorbis_bitrate_flushpacket(&vorbisState, &packet)) { -// logger.debug() << "Flush: "< 0 ) - stream << "Bitrate (lower) : " << vorbisInfo.bitrate_lower << std::endl; - if ( vorbisInfo.bitrate_upper > 0 ) - stream << "Bitrate (upper) : " << vorbisInfo.bitrate_upper << std::endl; -// stream << "Bitrate (window) : " << vorbisInfo.bitrate_window << std::endl; - stream << std::endl; - - if (vorbisComment.comments) { - stream << "Comments:\n"; - for (int i=0; i -#include -#include -#include - -#include "mediaInputEncoder.h" -#include "oggPacket.h" -#include "audioPacket.h" -#include "oggComment.h" -#include "vorbisStreamParameter.h" -#include "streamConfig.h" - -class VorbisEncoder : public MediaInputEncoder { -protected: - - vorbis_info vorbisInfo; - vorbis_comment vorbisComment; - vorbis_dsp_state vorbisState; - vorbis_block vorbisBlock; - - OggPacketInternal packet; - - std::list packetList; - - uint64 pktCnt; - -public: - VorbisEncoder(uint8 streamNo); - virtual ~VorbisEncoder(); - - virtual MediaInputEncoder& operator>>(OggPacket& packet); - MediaInputEncoder& operator<<(AudioPacket& aPacket); - - virtual void configureEncoder(StreamConfig& streamConf, std::vector& oggComments); - void flush(); - - vorbis_info& getInfo(); - - virtual std::string configuration() const; - -}; - -#endif /* HAVE_LIBVORBIS */ -#endif /* VORBISENCODER_H_*/ - diff -Nru oggvideotools-0.8a/src/vorbisExtractor.cpp oggvideotools-0.9.1/src/vorbisExtractor.cpp --- oggvideotools-0.8a/src/vorbisExtractor.cpp 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/src/vorbisExtractor.cpp 1970-01-01 00:00:00.000000000 +0000 @@ -1,87 +0,0 @@ -#include -#include - -#include "vorbisExtractor.h" -#include "vorbisStreamParameter.h" -#include "oggHeader.h" -#include "vorbisHeader.h" -#include "log.h" - -VorbisExtractor::VorbisExtractor() -{ -} - -VorbisExtractor::~VorbisExtractor() -{ -} - -bool VorbisExtractor::_extract(uint8* data, ExtractorInformation& info) -{ - - StreamType* streaminfo = (StreamType*) (data); - VorbisHeader* vorbisHeader = (VorbisHeader*) (data + sizeof(StreamType)); - - /* if this is not a vorbis header, return with an error */ - if ((streaminfo->headerType != 0x01) || - (strncmp(streaminfo->typeName, "vorbis", 6) != 0)) { - logger.error() << "VorbisExtractor::_extract: This page is not a vorbis bos\n"; - return(false); - } - - // first extract the parameters - VorbisStreamParameter* param = new VorbisStreamParameter; - - param->channels = vorbisHeader->audioChannels; - param->samplerate = vorbisHeader->sampleRate; - param->datarate = vorbisHeader->bitrateNom; - param->datarateMin = vorbisHeader->bitrateMin; - param->datarateMax = vorbisHeader->bitrateMax; - - param->block0 = 1<blocksize0; - param->block1 = 1<blocksize1; - - if (info.parameter) - delete info.parameter; - - info.parameter = param; - - /* set the ogg type and the number of header packets */ - info.type = ogg_vorbis; - info.numOfHeaderPackets = 3; // the first three packets are headers - - return(true); -} - -bool VorbisExtractor::extract(OggPage& oggPage, ExtractorInformation& information) -{ - /* if this is not a Begin Of Stream page, return immediately */ - if (!oggPage.isBOS()) { - logger.error() << "VorbisPosInterpreter::extract: This page is not a BOS (Begin Of Stream) page\n"; - return(false); - } - - /* get the information starting points within the raw data */ - OggHeader* oggHeader = (OggHeader*) (oggPage.data()); - uint8* data = (oggPage.data() + sizeof(OggHeader) + oggHeader->tableSegments); - - if (_extract(data, information) == false) - return(false); - - information.serialNo = oggHeader->serial; - - return(true); -} - -bool VorbisExtractor::extract(OggPacket& packet, ExtractorInformation& information) -{ - /// if this is not a Begin Of Stream page, return immediately - if (!packet.isBOS()) { - logger.error() << "VorbisPosInterpreter::extract: This page is not a BOS (Begin Of Stream) page\n"; - return(false); - } - - if (_extract(packet.data(), information) == false) - return(false); - - return(true); -} diff -Nru oggvideotools-0.8a/src/vorbisExtractor.h oggvideotools-0.9.1/src/vorbisExtractor.h --- oggvideotools-0.8a/src/vorbisExtractor.h 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/src/vorbisExtractor.h 1970-01-01 00:00:00.000000000 +0000 @@ -1,18 +0,0 @@ -#ifndef VORBISEXTRACTOR_H_ -#define VORBISEXTRACTOR_H_ - -#include "streamExtractor.h" - -class VorbisExtractor : public StreamExtractor { -public: - VorbisExtractor(); - virtual ~VorbisExtractor(); - - bool _extract(uint8* data, ExtractorInformation& info); - - virtual bool extract(OggPage& page, ExtractorInformation& information); - virtual bool extract(OggPacket& packet, ExtractorInformation& information); - -}; - -#endif /*VORBISEXTRACTOR_H_*/ diff -Nru oggvideotools-0.8a/src/vorbisHeader.h oggvideotools-0.9.1/src/vorbisHeader.h --- oggvideotools-0.8a/src/vorbisHeader.h 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/src/vorbisHeader.h 1970-01-01 00:00:00.000000000 +0000 @@ -1,17 +0,0 @@ -#ifndef VORBISHEADER_H_ -#define VORBISHEADER_H_ - -struct VorbisHeader { - uint32 version; - uint8 audioChannels; - uint32 sampleRate; - uint32 bitrateMax; - uint32 bitrateNom; - uint32 bitrateMin; - uint8 blocksize0:4; - uint8 blocksize1:4; - uint8 framing; //? -} __attribute__ ((packed)); - - -#endif /*VORBISHEADER_H_*/ diff -Nru oggvideotools-0.8a/src/vorbisPosInterpreter.cpp oggvideotools-0.9.1/src/vorbisPosInterpreter.cpp --- oggvideotools-0.8a/src/vorbisPosInterpreter.cpp 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/src/vorbisPosInterpreter.cpp 1970-01-01 00:00:00.000000000 +0000 @@ -1,194 +0,0 @@ -#include "vorbisPosInterpreter.h" - -#include -#include - -#include "vorbisStreamParameter.h" -#include "log.h" - -struct VorbisPackHeader { - char dataType:1; - char block:1; - char blsht:6; -}; - -VorbisPosInterpreter::VorbisPosInterpreter() - : samplerate(0), blocksize0(0), blocksize1(0), lastBlock(none) -{ -} - -VorbisPosInterpreter::~VorbisPosInterpreter() -{ -} - -void VorbisPosInterpreter::initialize(StreamParameter* _param) -{ - VorbisStreamParameter* param = dynamic_cast(_param); - - if (!param) { - logger.error() << "VorbisPosInterpreter::initialize: parameter not set correctly\n"; - return; - } - - samplerate = param->samplerate; - blocksize0 = param->block0; - blocksize1 = param->block1; - - initialized = true; - - return; -} - -/* -void VorbisPosInterpreter::initialize(OggPage oggPage) -{ - - OggHeader* oggHeader = (OggHeader*) (oggPage.data()); - StreamType* streamInformation = (StreamType*) (oggPage.data() + sizeof(OggHeader) + oggHeader->tableSegments); - VorbisHeader* vorbisHeader = (VorbisHeader*) (oggPage.data() + sizeof(OggHeader) + + oggHeader->tableSegments + sizeof(StreamType)); - - if ((streamInformation->headerType != 0x01) || - (strncmp(streamInformation->typeName, "vorbis", 6) != 0)) { - logger.error() << "VorbisPosInterpreter::initialize: this page is not a vorbis bos\n"; - return; - } - - samplerate = vorbisHeader->sampleRate; - channels = vorbisHeader->audioChannels; - - blocksize0 = 1<blocksize0; - blocksize1 = 1<blocksize1; - -} - -void VorbisPosInterpreter::initialize(OggPacket oggPacket) -{ - if (oggPacket.length() < (sizeof(StreamType) + sizeof(VorbisHeader))) { - logger.error() << "VorbisPosInterpreter::initialize: Error: page is to small - cannot parse header\n"; - return; - } - - StreamType* streamInformation = (StreamType*) (oggPacket.data()); - VorbisHeader* vorbisHeader = (VorbisHeader*) (oggPacket.data() + sizeof(StreamType)); - - if ((streamInformation->headerType != 0x01) || - (strncmp(streamInformation->typeName, "vorbis", 6) != 0)) { - logger.error() << "VorbisPosInterpreter::initialize: this page is not a vorbis bos\n"; - return; - } - - - samplerate = vorbisHeader->sampleRate; - channels = vorbisHeader->audioChannels; - - blocksize0 = 1<blocksize0; - blocksize1 = 1<blocksize1; - -} -*/ - -double VorbisPosInterpreter::getTime(int64 granulePos) -{ - double time = (granulePos*1.0)/(samplerate*1.0); - - return(time); -} - -void VorbisPosInterpreter::addBlock0() -{ - switch (lastBlock) { - case block0: - actualGranulePosition += blocksize0/2; - break; - case block1: - actualGranulePosition += (blocksize1/4 + blocksize0/4); - break; - default: - /* nothing to be done */ - break; - } - - lastBlock = block0; -} - -void VorbisPosInterpreter::addBlock1() -{ - switch (lastBlock) { - case block0: - actualGranulePosition += (blocksize1/4 + blocksize0/4); - break; - case block1: - actualGranulePosition += blocksize1/2; - break; - default: - /* nothing to be done */ - break; - } - - lastBlock = block1; -} - -GranulePosInterpreter& VorbisPosInterpreter::operator+=(GranulePosInterpreter& _otherPosition) -{ - if (typeid(_otherPosition) != typeid(*this)) { - logger.error() << "GranulePosInterpreter::operator+=: type is not matching\n"; - return(*this); - } - - VorbisPosInterpreter* otherPosition = static_cast(&_otherPosition); - - if (samplerate != otherPosition->samplerate) { - logger.error() << "VorbisPosInterpreter::operator+=: granulePositions does not match in samplerate or channel numbers\n"; - return(*this); - } - - if ((blocksize0 != otherPosition->blocksize0) || (blocksize1 != otherPosition->blocksize1)) { - logger.error() << "VorbisPosInterpreter::operator+=: granulePositions does not match in the blocksizes\n"; - return(*this); - } - - actualGranulePosition += otherPosition->actualGranulePosition; - - return(*this); -} - -GranulePosInterpreter& VorbisPosInterpreter::operator-=(GranulePosInterpreter& _otherPosition) -{ - if (typeid(_otherPosition) != typeid(*this)) { - logger.error() << "GranulePosInterpreter::operator+=: type is not matching\n"; - return(*this); - } - - VorbisPosInterpreter* otherPosition = static_cast(&_otherPosition); - - if (samplerate != otherPosition->samplerate) { - logger.error() << "VorbisPosInterpreter::operator+=: granulePositions does not match in samplerate or channel numbers\n"; - return(*this); - } - - if ((blocksize0 != otherPosition->blocksize0) || (blocksize1 != otherPosition->blocksize1)) { - logger.error() << "VorbisPosInterpreter::operator+=: granulePositions does not match in the blocksizes\n"; - return(*this); - } - - actualGranulePosition -= otherPosition->actualGranulePosition; - - return(*this); -} - -void VorbisPosInterpreter::setStreamPosition(OggPacket& packet) -{ -// packet.setGranulepos(getPosition()); - - VorbisPackHeader* packHead = (VorbisPackHeader*)(packet.data()); - - if (packHead->block) - addBlock1(); - else - addBlock0(); - -// logger.debug() << "Granule Position: "< "< -#include - -#include "vorbisStreamParameter.h" -#include "log.h" - -VorbisStreamParameter::VorbisStreamParameter() -{ -} - -VorbisStreamParameter::~VorbisStreamParameter() -{ -} - -bool VorbisStreamParameter::operator==(const StreamParameter& _param) -{ - StreamParameter* _param_unconst = const_cast(&_param); - VorbisStreamParameter* param = dynamic_cast(_param_unconst); - - bool retValue(true); - - if (!param) - return(false); - - if (channels != param->channels) { - logger.error() << "vorbis parameter compare: number of channels not matching " - << channels << " != " << param->channels - << std::endl; - retValue = false; - } - - if (samplerate != param->samplerate) { - logger.error() << "vorbis parameter compare: sample rate not matching " - << samplerate << " != " << param->samplerate - << std::endl; - retValue = false; - } - - if (datarate != param->datarate) { - logger.error() << "vorbis parameter compare: data rate not matching " - << datarate << " != " << param->datarate << std::endl; -// << "This is not a blocker if all other parameters match" <block0) { - logger.error() << "vorbis parameter compare: size of block0 does not match " - << block0 << " != " << param->block0 << std::endl - << "You may try to reencode with the datarate of the other file" - << std::endl; - retValue = false; - } - - if (block1 != param->block1) { - logger.error() << "vorbis parameter compare: size of block0 does not match " - << block1 << " != " << param->block1 << std::endl - << "You may try to reencode with the datarate of the other file" - << std::endl; - retValue = false; - } - - if (retValue == false) { - logger.error() << "\nPlease try to resample with the following command\n" - << "oggResize"; - if (channels != param->channels) - logger.error() << " -N "<samplerate) - logger.error() << " -F "<datarate) - logger.error() << " -D "<\n\n"; - } - - return(retValue); -} - -std::string VorbisStreamParameter::toString() -{ - std::stringstream stream; - stream << "Vorbis Stream:\n" << "\twith " << channels << " channel(s)\n" - << "\tand " << samplerate << " kHz sample rate\n" << "\tand " - << datarate << " data rate\n\n"; - -// logger.debug() << "block0: "<. - Ditto for AIX 3.2 and . */ -#ifndef _NO_PROTO -# define _NO_PROTO -#endif - -#ifdef HAVE_CONFIG_H -# include "config.h" -#endif - -#if !defined __STDC__ || !__STDC__ -/* This is a separate conditional since some stdc systems - reject `defined (const)'. */ -# ifndef const -# define const -# endif -#endif - -#include - -/* Comment out all this code if we are using the GNU C Library, and are not - actually compiling the library itself. This code is part of the GNU C - Library, but also included in many other GNU distributions. Compiling - and linking in this code is a waste when using the GNU C library - (especially if it is a shared library). Rather than having every GNU - program understand `configure --with-gnu-libc' and omit the object files, - it is simpler to just do this in the source for each such file. */ - -#define GETOPT_INTERFACE_VERSION 2 -#if !defined _LIBC && defined __GLIBC__ && __GLIBC__ >= 2 -# include -# if _GNU_GETOPT_INTERFACE_VERSION == GETOPT_INTERFACE_VERSION -# define ELIDE_CODE -# endif -#endif - -#ifndef ELIDE_CODE - - -/* This needs to come after some library #include - to get __GNU_LIBRARY__ defined. */ -#ifdef __GNU_LIBRARY__ -/* Don't include stdlib.h for non-GNU C libraries because some of them - contain conflicting prototypes for getopt. */ -# include -# include -#endif /* GNU C library. */ - -#ifdef VMS -# include -# if HAVE_STRING_H - 0 -# include -# endif -#endif - -#ifndef _ -/* This is for other GNU distributions with internationalized messages. - When compiling libc, the _ macro is predefined. */ -# ifdef HAVE_LIBINTL_H -# include -# define _(msgid) gettext (msgid) -# else -# define _(msgid) (msgid) -# endif -#endif - -/* This version of `getopt' appears to the caller like standard Unix `getopt' - but it behaves differently for the user, since it allows the user - to intersperse the options with the other arguments. - - As `getopt' works, it permutes the elements of ARGV so that, - when it is done, all the options precede everything else. Thus - all application programs are extended to handle flexible argument order. - - Setting the environment variable POSIXLY_CORRECT disables permutation. - Then the behavior is completely standard. - - GNU application programs can use a third alternative mode in which - they can distinguish the relative order of options and other arguments. */ - -#include "getopt_win.h" - -/* For communication from `getopt' to the caller. - When `getopt' finds an option that takes an argument, - the argument value is returned here. - Also, when `ordering' is RETURN_IN_ORDER, - each non-option ARGV-element is returned here. */ - -char *optarg; - -/* Index in ARGV of the next element to be scanned. - This is used for communication to and from the caller - and for communication between successive calls to `getopt'. - - On entry to `getopt', zero means this is the first call; initialize. - - When `getopt' returns -1, this is the index of the first of the - non-option elements that the caller should itself scan. - - Otherwise, `optind' communicates from one call to the next - how much of ARGV has been scanned so far. */ - -/* 1003.2 says this must be 1 before any call. */ -int optind = 1; - -/* Formerly, initialization of getopt depended on optind==0, which - causes problems with re-calling getopt as programs generally don't - know that. */ - -int __getopt_initialized; - -/* The next char to be scanned in the option-element - in which the last option character we returned was found. - This allows us to pick up the scan where we left off. - - If this is zero, or a null string, it means resume the scan - by advancing to the next ARGV-element. */ - -static char *nextchar; - -/* Callers store zero here to inhibit the error message - for unrecognized options. */ - -int opterr = 1; - -/* Set to an option character which was unrecognized. - This must be initialized on some systems to avoid linking in the - system's own getopt implementation. */ - -int optopt = '?'; - -/* Describe how to deal with options that follow non-option ARGV-elements. - - If the caller did not specify anything, - the default is REQUIRE_ORDER if the environment variable - POSIXLY_CORRECT is defined, PERMUTE otherwise. - - REQUIRE_ORDER means don't recognize them as options; - stop option processing when the first non-option is seen. - This is what Unix does. - This mode of operation is selected by either setting the environment - variable POSIXLY_CORRECT, or using `+' as the first character - of the list of option characters. - - PERMUTE is the default. We permute the contents of ARGV as we scan, - so that eventually all the non-options are at the end. This allows options - to be given in any order, even with programs that were not written to - expect this. - - RETURN_IN_ORDER is an option available to programs that were written - to expect options and other ARGV-elements in any order and that care about - the ordering of the two. We describe each non-option ARGV-element - as if it were the argument of an option with character code 1. - Using `-' as the first character of the list of option characters - selects this mode of operation. - - The special argument `--' forces an end of option-scanning regardless - of the value of `ordering'. In the case of RETURN_IN_ORDER, only - `--' can cause `getopt' to return -1 with `optind' != ARGC. */ - -static enum -{ - REQUIRE_ORDER, PERMUTE, RETURN_IN_ORDER -} ordering; - -/* Value of POSIXLY_CORRECT environment variable. */ -static char *posixly_correct; - -#ifdef __GNU_LIBRARY__ -/* We want to avoid inclusion of string.h with non-GNU libraries - because there are many ways it can cause trouble. - On some systems, it contains special magic macros that don't work - in GCC. */ -# include -# define my_index strchr -#else - -#include - -/* Avoid depending on library functions or files - whose names are inconsistent. */ - -#ifndef getenv -extern char *getenv (); -#endif - -static char * -my_index (str, chr) - const char *str; - int chr; -{ - while (*str) - { - if (*str == chr) - return (char *) str; - str++; - } - return 0; -} - -/* If using GCC, we can safely declare strlen this way. - If not using GCC, it is ok not to declare it. */ -#ifdef __GNUC__ -/* Note that Motorola Delta 68k R3V7 comes with GCC but not stddef.h. - That was relevant to code that was here before. */ -# if (!defined __STDC__ || !__STDC__) && !defined strlen -/* gcc with -traditional declares the built-in strlen to return int, - and has done so at least since version 2.4.5. -- rms. */ -extern int strlen (const char *); -# endif /* not __STDC__ */ -#endif /* __GNUC__ */ - -#endif /* not __GNU_LIBRARY__ */ - -/* Handle permutation of arguments. */ - -/* Describe the part of ARGV that contains non-options that have - been skipped. `first_nonopt' is the index in ARGV of the first of them; - `last_nonopt' is the index after the last of them. */ - -static int first_nonopt; -static int last_nonopt; - -#ifdef _LIBC -/* Bash 2.0 gives us an environment variable containing flags - indicating ARGV elements that should not be considered arguments. */ - -/* Defined in getopt_init.c */ -extern char *__getopt_nonoption_flags; - -static int nonoption_flags_max_len; -static int nonoption_flags_len; - -static int original_argc; -static char *const *original_argv; - -/* Make sure the environment variable bash 2.0 puts in the environment - is valid for the getopt call we must make sure that the ARGV passed - to getopt is that one passed to the process. */ -static void -__attribute__ ((unused)) -store_args_and_env (int argc, char *const *argv) -{ - /* XXX This is no good solution. We should rather copy the args so - that we can compare them later. But we must not use malloc(3). */ - original_argc = argc; - original_argv = argv; -} -# ifdef text_set_element -text_set_element (__libc_subinit, store_args_and_env); -# endif /* text_set_element */ - -# define SWAP_FLAGS(ch1, ch2) \ - if (nonoption_flags_len > 0) \ - { \ - char __tmp = __getopt_nonoption_flags[ch1]; \ - __getopt_nonoption_flags[ch1] = __getopt_nonoption_flags[ch2]; \ - __getopt_nonoption_flags[ch2] = __tmp; \ - } -#else /* !_LIBC */ -# define SWAP_FLAGS(ch1, ch2) -#endif /* _LIBC */ - -/* Exchange two adjacent subsequences of ARGV. - One subsequence is elements [first_nonopt,last_nonopt) - which contains all the non-options that have been skipped so far. - The other is elements [last_nonopt,optind), which contains all - the options processed since those non-options were skipped. - - `first_nonopt' and `last_nonopt' are relocated so that they describe - the new indices of the non-options in ARGV after they are moved. */ - -#if defined __STDC__ && __STDC__ -static void exchange (char **); -#endif - -static void -exchange (argv) - char **argv; -{ - int bottom = first_nonopt; - int middle = last_nonopt; - int top = optind; - char *tem; - - /* Exchange the shorter segment with the far end of the longer segment. - That puts the shorter segment into the right place. - It leaves the longer segment in the right place overall, - but it consists of two parts that need to be swapped next. */ - -#ifdef _LIBC - /* First make sure the handling of the `__getopt_nonoption_flags' - string can work normally. Our top argument must be in the range - of the string. */ - if (nonoption_flags_len > 0 && top >= nonoption_flags_max_len) - { - /* We must extend the array. The user plays games with us and - presents new arguments. */ - char *new_str = malloc (top + 1); - if (new_str == NULL) - nonoption_flags_len = nonoption_flags_max_len = 0; - else - { - memset (__mempcpy (new_str, __getopt_nonoption_flags, - nonoption_flags_max_len), - '\0', top + 1 - nonoption_flags_max_len); - nonoption_flags_max_len = top + 1; - __getopt_nonoption_flags = new_str; - } - } -#endif - - while (top > middle && middle > bottom) - { - if (top - middle > middle - bottom) - { - /* Bottom segment is the short one. */ - int len = middle - bottom; - register int i; - - /* Swap it with the top part of the top segment. */ - for (i = 0; i < len; i++) - { - tem = argv[bottom + i]; - argv[bottom + i] = argv[top - (middle - bottom) + i]; - argv[top - (middle - bottom) + i] = tem; - SWAP_FLAGS (bottom + i, top - (middle - bottom) + i); - } - /* Exclude the moved bottom segment from further swapping. */ - top -= len; - } - else - { - /* Top segment is the short one. */ - int len = top - middle; - register int i; - - /* Swap it with the bottom part of the bottom segment. */ - for (i = 0; i < len; i++) - { - tem = argv[bottom + i]; - argv[bottom + i] = argv[middle + i]; - argv[middle + i] = tem; - SWAP_FLAGS (bottom + i, middle + i); - } - /* Exclude the moved top segment from further swapping. */ - bottom += len; - } - } - - /* Update records for the slots the non-options now occupy. */ - - first_nonopt += (optind - last_nonopt); - last_nonopt = optind; -} - -/* Initialize the internal data when the first call is made. */ - -#if defined __STDC__ && __STDC__ -static const char *_getopt_initialize (int, char *const *, const char *); -#endif -static const char * -_getopt_initialize (argc, argv, optstring) - int argc; - char *const *argv; - const char *optstring; -{ - /* Start processing options with ARGV-element 1 (since ARGV-element 0 - is the program name); the sequence of previously skipped - non-option ARGV-elements is empty. */ - - first_nonopt = last_nonopt = optind; - - nextchar = NULL; - - posixly_correct = getenv ("POSIXLY_CORRECT"); - - /* Determine how to handle the ordering of options and nonoptions. */ - - if (optstring[0] == '-') - { - ordering = RETURN_IN_ORDER; - ++optstring; - } - else if (optstring[0] == '+') - { - ordering = REQUIRE_ORDER; - ++optstring; - } - else if (posixly_correct != NULL) - ordering = REQUIRE_ORDER; - else - ordering = PERMUTE; - -#ifdef _LIBC - if (posixly_correct == NULL - && argc == original_argc && argv == original_argv) - { - if (nonoption_flags_max_len == 0) - { - if (__getopt_nonoption_flags == NULL - || __getopt_nonoption_flags[0] == '\0') - nonoption_flags_max_len = -1; - else - { - const char *orig_str = __getopt_nonoption_flags; - int len = nonoption_flags_max_len = strlen (orig_str); - if (nonoption_flags_max_len < argc) - nonoption_flags_max_len = argc; - __getopt_nonoption_flags = - (char *) malloc (nonoption_flags_max_len); - if (__getopt_nonoption_flags == NULL) - nonoption_flags_max_len = -1; - else - memset (__mempcpy (__getopt_nonoption_flags, orig_str, len), - '\0', nonoption_flags_max_len - len); - } - } - nonoption_flags_len = nonoption_flags_max_len; - } - else - nonoption_flags_len = 0; -#endif - - return optstring; -} - -/* Scan elements of ARGV (whose length is ARGC) for option characters - given in OPTSTRING. - - If an element of ARGV starts with '-', and is not exactly "-" or "--", - then it is an option element. The characters of this element - (aside from the initial '-') are option characters. If `getopt' - is called repeatedly, it returns successively each of the option characters - from each of the option elements. - - If `getopt' finds another option character, it returns that character, - updating `optind' and `nextchar' so that the next call to `getopt' can - resume the scan with the following option character or ARGV-element. - - If there are no more option characters, `getopt' returns -1. - Then `optind' is the index in ARGV of the first ARGV-element - that is not an option. (The ARGV-elements have been permuted - so that those that are not options now come last.) - - OPTSTRING is a string containing the legitimate option characters. - If an option character is seen that is not listed in OPTSTRING, - return '?' after printing an error message. If you set `opterr' to - zero, the error message is suppressed but we still return '?'. - - If a char in OPTSTRING is followed by a colon, that means it wants an arg, - so the following text in the same ARGV-element, or the text of the following - ARGV-element, is returned in `optarg'. Two colons mean an option that - wants an optional arg; if there is text in the current ARGV-element, - it is returned in `optarg', otherwise `optarg' is set to zero. - - If OPTSTRING starts with `-' or `+', it requests different methods of - handling the non-option ARGV-elements. - See the comments about RETURN_IN_ORDER and REQUIRE_ORDER, above. - - Long-named options begin with `--' instead of `-'. - Their names may be abbreviated as long as the abbreviation is unique - or is an exact match for some defined option. If they have an - argument, it follows the option name in the same ARGV-element, separated - from the option name by a `=', or else the in next ARGV-element. - When `getopt' finds a long-named option, it returns 0 if that option's - `flag' field is nonzero, the value of the option's `val' field - if the `flag' field is zero. - - The elements of ARGV aren't really const, because we permute them. - But we pretend they're const in the prototype to be compatible - with other systems. - - LONGOPTS is a vector of `struct option' terminated by an - element containing a name which is zero. - - LONGIND returns the index in LONGOPT of the long-named option found. - It is only valid when a long-named option has been found by the most - recent call. - - If LONG_ONLY is nonzero, '-' as well as '--' can introduce - long-named options. */ - -int -_getopt_internal (argc, argv, optstring, longopts, longind, long_only) - int argc; - char *const *argv; - const char *optstring; - const struct option *longopts; - int *longind; - int long_only; -{ - optarg = NULL; - - if (optind == 0 || !__getopt_initialized) - { - if (optind == 0) - optind = 1; /* Don't scan ARGV[0], the program name. */ - optstring = _getopt_initialize (argc, argv, optstring); - __getopt_initialized = 1; - } - - /* Test whether ARGV[optind] points to a non-option argument. - Either it does not have option syntax, or there is an environment flag - from the shell indicating it is not an option. The later information - is only used when the used in the GNU libc. */ -#ifdef _LIBC -# define NONOPTION_P (argv[optind][0] != '-' || argv[optind][1] == '\0' \ - || (optind < nonoption_flags_len \ - && __getopt_nonoption_flags[optind] == '1')) -#else -# define NONOPTION_P (argv[optind][0] != '-' || argv[optind][1] == '\0') -#endif - - if (nextchar == NULL || *nextchar == '\0') - { - /* Advance to the next ARGV-element. */ - - /* Give FIRST_NONOPT & LAST_NONOPT rational values if OPTIND has been - moved back by the user (who may also have changed the arguments). */ - if (last_nonopt > optind) - last_nonopt = optind; - if (first_nonopt > optind) - first_nonopt = optind; - - if (ordering == PERMUTE) - { - /* If we have just processed some options following some non-options, - exchange them so that the options come first. */ - - if (first_nonopt != last_nonopt && last_nonopt != optind) - exchange ((char **) argv); - else if (last_nonopt != optind) - first_nonopt = optind; - - /* Skip any additional non-options - and extend the range of non-options previously skipped. */ - - while (optind < argc && NONOPTION_P) - optind++; - last_nonopt = optind; - } - - /* The special ARGV-element `--' means premature end of options. - Skip it like a null option, - then exchange with previous non-options as if it were an option, - then skip everything else like a non-option. */ - - if (optind != argc && !strcmp (argv[optind], "--")) - { - optind++; - - if (first_nonopt != last_nonopt && last_nonopt != optind) - exchange ((char **) argv); - else if (first_nonopt == last_nonopt) - first_nonopt = optind; - last_nonopt = argc; - - optind = argc; - } - - /* If we have done all the ARGV-elements, stop the scan - and back over any non-options that we skipped and permuted. */ - - if (optind == argc) - { - /* Set the next-arg-index to point at the non-options - that we previously skipped, so the caller will digest them. */ - if (first_nonopt != last_nonopt) - optind = first_nonopt; - return -1; - } - - /* If we have come to a non-option and did not permute it, - either stop the scan or describe it to the caller and pass it by. */ - - if (NONOPTION_P) - { - if (ordering == REQUIRE_ORDER) - return -1; - optarg = argv[optind++]; - return 1; - } - - /* We have found another option-ARGV-element. - Skip the initial punctuation. */ - - nextchar = (argv[optind] + 1 - + (longopts != NULL && argv[optind][1] == '-')); - } - - /* Decode the current option-ARGV-element. */ - - /* Check whether the ARGV-element is a long option. - - If long_only and the ARGV-element has the form "-f", where f is - a valid short option, don't consider it an abbreviated form of - a long option that starts with f. Otherwise there would be no - way to give the -f short option. - - On the other hand, if there's a long option "fubar" and - the ARGV-element is "-fu", do consider that an abbreviation of - the long option, just like "--fu", and not "-f" with arg "u". - - This distinction seems to be the most useful approach. */ - - if (longopts != NULL - && (argv[optind][1] == '-' - || (long_only && (argv[optind][2] || !my_index (optstring, argv[optind][1]))))) - { - char *nameend; - const struct option *p; - const struct option *pfound = NULL; - int exact = 0; - int ambig = 0; - int indfound = -1; - int option_index; - - for (nameend = nextchar; *nameend && *nameend != '='; nameend++) - /* Do nothing. */ ; - - /* Test all long options for either exact match - or abbreviated matches. */ - for (p = longopts, option_index = 0; p->name; p++, option_index++) - if (!strncmp (p->name, nextchar, nameend - nextchar)) - { - if ((unsigned int) (nameend - nextchar) - == (unsigned int) strlen (p->name)) - { - /* Exact match found. */ - pfound = p; - indfound = option_index; - exact = 1; - break; - } - else if (pfound == NULL) - { - /* First nonexact match found. */ - pfound = p; - indfound = option_index; - } - else - /* Second or later nonexact match found. */ - ambig = 1; - } - - if (ambig && !exact) - { - if (opterr) - fprintf (stderr, _("%s: option `%s' is ambiguous\n"), - argv[0], argv[optind]); - nextchar += strlen (nextchar); - optind++; - optopt = 0; - return '?'; - } - - if (pfound != NULL) - { - option_index = indfound; - optind++; - if (*nameend) - { - /* Don't test has_arg with >, because some C compilers don't - allow it to be used on enums. */ - if (pfound->has_arg) - optarg = nameend + 1; - else - { - if (opterr) - { - if (argv[optind - 1][1] == '-') - /* --option */ - fprintf (stderr, - _("%s: option `--%s' doesn't allow an argument\n"), - argv[0], pfound->name); - else - /* +option or -option */ - fprintf (stderr, - _("%s: option `%c%s' doesn't allow an argument\n"), - argv[0], argv[optind - 1][0], pfound->name); - } - - nextchar += strlen (nextchar); - - optopt = pfound->val; - return '?'; - } - } - else if (pfound->has_arg == 1) - { - if (optind < argc) - optarg = argv[optind++]; - else - { - if (opterr) - fprintf (stderr, - _("%s: option `%s' requires an argument\n"), - argv[0], argv[optind - 1]); - nextchar += strlen (nextchar); - optopt = pfound->val; - return optstring[0] == ':' ? ':' : '?'; - } - } - nextchar += strlen (nextchar); - if (longind != NULL) - *longind = option_index; - if (pfound->flag) - { - *(pfound->flag) = pfound->val; - return 0; - } - return pfound->val; - } - - /* Can't find it as a long option. If this is not getopt_long_only, - or the option starts with '--' or is not a valid short - option, then it's an error. - Otherwise interpret it as a short option. */ - if (!long_only || argv[optind][1] == '-' - || my_index (optstring, *nextchar) == NULL) - { - if (opterr) - { - if (argv[optind][1] == '-') - /* --option */ - fprintf (stderr, _("%s: unrecognized option `--%s'\n"), - argv[0], nextchar); - else - /* +option or -option */ - fprintf (stderr, _("%s: unrecognized option `%c%s'\n"), - argv[0], argv[optind][0], nextchar); - } - nextchar = (char *) ""; - optind++; - optopt = 0; - return '?'; - } - } - - /* Look at and handle the next short option-character. */ - - { - char c = *nextchar++; - char *temp = my_index (optstring, c); - - /* Increment `optind' when we start to process its last character. */ - if (*nextchar == '\0') - ++optind; - - if (temp == NULL || c == ':') - { - if (opterr) - { - if (posixly_correct) - /* 1003.2 specifies the format of this message. */ - fprintf (stderr, _("%s: illegal option -- %c\n"), - argv[0], c); - else - fprintf (stderr, _("%s: invalid option -- %c\n"), - argv[0], c); - } - optopt = c; - return '?'; - } - /* Convenience. Treat POSIX -W foo same as long option --foo */ - if (temp[0] == 'W' && temp[1] == ';') - { - char *nameend; - const struct option *p; - const struct option *pfound = NULL; - int exact = 0; - int ambig = 0; - int indfound = 0; - int option_index; - - /* This is an option that requires an argument. */ - if (*nextchar != '\0') - { - optarg = nextchar; - /* If we end this ARGV-element by taking the rest as an arg, - we must advance to the next element now. */ - optind++; - } - else if (optind == argc) - { - if (opterr) - { - /* 1003.2 specifies the format of this message. */ - fprintf (stderr, _("%s: option requires an argument -- %c\n"), - argv[0], c); - } - optopt = c; - if (optstring[0] == ':') - c = ':'; - else - c = '?'; - return c; - } - else - /* We already incremented `optind' once; - increment it again when taking next ARGV-elt as argument. */ - optarg = argv[optind++]; - - /* optarg is now the argument, see if it's in the - table of longopts. */ - - for (nextchar = nameend = optarg; *nameend && *nameend != '='; nameend++) - /* Do nothing. */ ; - - /* Test all long options for either exact match - or abbreviated matches. */ - for (p = longopts, option_index = 0; p->name; p++, option_index++) - if (!strncmp (p->name, nextchar, nameend - nextchar)) - { - if ((unsigned int) (nameend - nextchar) == strlen (p->name)) - { - /* Exact match found. */ - pfound = p; - indfound = option_index; - exact = 1; - break; - } - else if (pfound == NULL) - { - /* First nonexact match found. */ - pfound = p; - indfound = option_index; - } - else - /* Second or later nonexact match found. */ - ambig = 1; - } - if (ambig && !exact) - { - if (opterr) - fprintf (stderr, _("%s: option `-W %s' is ambiguous\n"), - argv[0], argv[optind]); - nextchar += strlen (nextchar); - optind++; - return '?'; - } - if (pfound != NULL) - { - option_index = indfound; - if (*nameend) - { - /* Don't test has_arg with >, because some C compilers don't - allow it to be used on enums. */ - if (pfound->has_arg) - optarg = nameend + 1; - else - { - if (opterr) - fprintf (stderr, _("\ -%s: option `-W %s' doesn't allow an argument\n"), - argv[0], pfound->name); - - nextchar += strlen (nextchar); - return '?'; - } - } - else if (pfound->has_arg == 1) - { - if (optind < argc) - optarg = argv[optind++]; - else - { - if (opterr) - fprintf (stderr, - _("%s: option `%s' requires an argument\n"), - argv[0], argv[optind - 1]); - nextchar += strlen (nextchar); - return optstring[0] == ':' ? ':' : '?'; - } - } - nextchar += strlen (nextchar); - if (longind != NULL) - *longind = option_index; - if (pfound->flag) - { - *(pfound->flag) = pfound->val; - return 0; - } - return pfound->val; - } - nextchar = NULL; - return 'W'; /* Let the application handle it. */ - } - if (temp[1] == ':') - { - if (temp[2] == ':') - { - /* This is an option that accepts an argument optionally. */ - if (*nextchar != '\0') - { - optarg = nextchar; - optind++; - } - else - optarg = NULL; - nextchar = NULL; - } - else - { - /* This is an option that requires an argument. */ - if (*nextchar != '\0') - { - optarg = nextchar; - /* If we end this ARGV-element by taking the rest as an arg, - we must advance to the next element now. */ - optind++; - } - else if (optind == argc) - { - if (opterr) - { - /* 1003.2 specifies the format of this message. */ - fprintf (stderr, - _("%s: option requires an argument -- %c\n"), - argv[0], c); - } - optopt = c; - if (optstring[0] == ':') - c = ':'; - else - c = '?'; - } - else - /* We already incremented `optind' once; - increment it again when taking next ARGV-elt as argument. */ - optarg = argv[optind++]; - nextchar = NULL; - } - } - return c; - } -} - -int -getopt (argc, argv, optstring) - int argc; - char *const *argv; - const char *optstring; -{ - return _getopt_internal (argc, argv, optstring, - (const struct option *) 0, - (int *) 0, - 0); -} - -#endif /* Not ELIDE_CODE. */ - -#ifdef TEST - -/* Compile with -DTEST to make an executable for use in testing - the above definition of `getopt'. */ - -int -main (argc, argv) - int argc; - char **argv; -{ - int c; - int digit_optind = 0; - - while (1) - { - int this_option_optind = optind ? optind : 1; - - c = getopt (argc, argv, "abc:d:0123456789"); - if (c == -1) - break; - - switch (c) - { - case '0': - case '1': - case '2': - case '3': - case '4': - case '5': - case '6': - case '7': - case '8': - case '9': - if (digit_optind != 0 && digit_optind != this_option_optind) - printf ("digits occur in two different argv-elements.\n"); - digit_optind = this_option_optind; - printf ("option %c\n", c); - break; - - case 'a': - printf ("option a\n"); - break; - - case 'b': - printf ("option b\n"); - break; - - case 'c': - printf ("option c with value `%s'\n", optarg); - break; - - case '?': - break; - - default: - printf ("?? getopt returned character code 0%o ??\n", c); - } - } - - if (optind < argc) - { - printf ("non-option ARGV-elements: "); - while (optind < argc) - printf ("%s ", argv[optind++]); - printf ("\n"); - } - - exit (0); -} - -#endif /* TEST */ diff -Nru oggvideotools-0.8a/win32/getopt_win.h oggvideotools-0.9.1/win32/getopt_win.h --- oggvideotools-0.8a/win32/getopt_win.h 2012-06-02 14:01:57.000000000 +0000 +++ oggvideotools-0.9.1/win32/getopt_win.h 1970-01-01 00:00:00.000000000 +0000 @@ -1,168 +0,0 @@ -/* Declarations for getopt. - Copyright (C) 1989,90,91,92,93,94,96,97,98 Free Software Foundation, Inc. - This file is part of the GNU C Library. - - The GNU C Library is free software; you can redistribute it and/or - modify it under the terms of the GNU Library General Public License as - published by the Free Software Foundation; either version 2 of the - License, or (at your option) any later version. - - The GNU C Library is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - Library General Public License for more details. - - You should have received a copy of the GNU Library General Public - License along with the GNU C Library; see the file COPYING.LIB. If not, - write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, - Boston, MA 02111-1307, USA. */ - -#ifndef _GETOPT_H - -#ifndef __need_getopt -# define _GETOPT_H 1 -#endif - -#ifdef __cplusplus -extern "C" { -#endif - - /* For communication from `getopt' to the caller. - When `getopt' finds an option that takes an argument, - the argument value is returned here. - Also, when `ordering' is RETURN_IN_ORDER, - each non-option ARGV-element is returned here. */ - - extern char *optarg; - - /* Index in ARGV of the next element to be scanned. - This is used for communication to and from the caller - and for communication between successive calls to `getopt'. - - On entry to `getopt', zero means this is the first call; initialize. - - When `getopt' returns -1, this is the index of the first of the - non-option elements that the caller should itself scan. - - Otherwise, `optind' communicates from one call to the next - how much of ARGV has been scanned so far. */ - - extern int optind; - - /* Callers store zero here to inhibit the error message `getopt' prints - for unrecognized options. */ - - extern int opterr; - - /* Set to an option character which was unrecognized. */ - - extern int optopt; - -#ifndef __need_getopt - /* Describe the long-named options requested by the application. - The LONG_OPTIONS argument to getopt_long or getopt_long_only is a vector - of `struct option' terminated by an element containing a name which is - zero. - - The field `has_arg' is: - no_argument (or 0) if the option does not take an argument, - required_argument (or 1) if the option requires an argument, - optional_argument (or 2) if the option takes an optional argument. - - If the field `flag' is not NULL, it points to a variable that is set - to the value given in the field `val' when the option is found, but - left unchanged if the option is not found. - - To have a long-named option do something other than set an `int' to - a compiled-in constant, such as set a value from `optarg', set the - option's `flag' field to zero and its `val' field to a nonzero - value (the equivalent single-letter option character, if there is - one). For long options that have a zero `flag' field, `getopt' - returns the contents of the `val' field. */ - - struct option { -# if defined __STDC__ && __STDC__ - const char *name; -# else - char *name; -# endif - /* has_arg can't be an enum because some compilers complain about - type mismatches in all the code that assumes it is an int. */ - int has_arg; - int *flag; - int val; - }; - - /* Names for the values of the `has_arg' field of `struct option'. */ - -# define no_argument 0 -# define required_argument 1 -# define optional_argument 2 -#endif /* need getopt */ - - - /* Get definitions and prototypes for functions to process the - arguments in ARGV (ARGC of them, minus the program name) for - options given in OPTS. - - Return the option character from OPTS just read. Return -1 when - there are no more options. For unrecognized options, or options - missing arguments, `optopt' is set to the option letter, and '?' is - returned. - - The OPTS string is a list of characters which are recognized option - letters, optionally followed by colons, specifying that that letter - takes an argument, to be placed in `optarg'. - - If a letter in OPTS is followed by two colons, its argument is - optional. This behavior is specific to the GNU `getopt'. - - The argument `--' causes premature termination of argument - scanning, explicitly telling `getopt' that there are no more - options. - - If OPTS begins with `--', then non-option arguments are treated as - arguments to the option '\0'. This behavior is specific to the GNU - `getopt'. */ - -#if defined __STDC__ && __STDC__ -# ifdef __GNU_LIBRARY__ - /* Many other libraries have conflicting prototypes for getopt, with - differences in the consts, in stdlib.h. To avoid compilation - errors, only prototype getopt for the GNU C library. */ - extern int getopt (int __argc, char *const *__argv, const char *__shortopts); -# else /* not __GNU_LIBRARY__ */ - extern int getopt (); -# endif /* __GNU_LIBRARY__ */ - -# ifndef __need_getopt - extern int getopt_long (int __argc, char *const *__argv, const char *__shortopts, - const struct option *__longopts, int *__longind); - extern int getopt_long_only (int __argc, char *const *__argv, - const char *__shortopts, - const struct option *__longopts, int *__longind); - - /* Internal only. Users should not call this directly. */ - extern int _getopt_internal (int __argc, char *const *__argv, - const char *__shortopts, - const struct option *__longopts, int *__longind, - int __long_only); -# endif -#else /* not __STDC__ */ - extern int getopt (); -# ifndef __need_getopt - extern int getopt_long (); - extern int getopt_long_only (); - - extern int _getopt_internal (); -# endif -#endif /* __STDC__ */ - -#ifdef __cplusplus -} -#endif - -/* Make sure we later can get all the definitions and declarations. */ -#undef __need_getopt - -#endif /* getopt.h */