• Skip to content
  • Skip to link menu
KDE 3.5 API Reference
  • KDE API Reference
  • @topname@
  • Sitemap
  • Contact Us
 

arts

kconverttest.cc

00001 #include <stdio.h>
00002 
00003 #include <qfile.h>
00004 #include <qobject.h>
00005 
00006 #include <klocale.h>
00007 #include <kaboutdata.h>
00008 #include <kcmdlineargs.h>
00009 #include <kapplication.h>
00010 
00011 #include <flowsystem.h>
00012 #include <kplayobject.h>
00013 #include <kartsdispatcher.h>
00014 #include <kplayobjectfactory.h>
00015 #include <kaudioconverter.h>
00016 #include "kconverttest.moc"
00017 
00018 using namespace std;
00019 using namespace Arts;
00020 
00021 static KCmdLineOptions options[] =
00022 {
00023     { "+[URL]", I18N_NOOP("URL to open"), 0 },
00024     KCmdLineLastOption
00025 };
00026 
00027 KConvertTest::KConvertTest()
00028 {
00029 }
00030 
00031 void KConvertTest::slotRawStreamStart()
00032 {
00033 //  cout << "[START]\n\n" << endl;
00034 }
00035 
00036 void KConvertTest::slotNewBlockSize(long blockSize)
00037 {
00038     m_blockSize = blockSize;
00039 }
00040 
00041 void KConvertTest::slotNewBlockPointer(long blockPointer)
00042 {
00043     m_blockPointer = blockPointer;
00044 }
00045 
00046 void KConvertTest::slotNewData()
00047 {
00048     fwrite((void *) m_blockPointer, 1, m_blockSize, stdout);
00049 }
00050 
00051 void KConvertTest::slotRawStreamFinished()
00052 {
00053 //  cout << "\n\n[END]" << endl;
00054 }
00055 
00056 int main(int argc, char **argv)
00057 {
00058     KAboutData aboutData("kconverttest", I18N_NOOP("KConvertTest"), I18N_NOOP("0.1"), "", KAboutData::License_GPL, "");
00059                               
00060     KCmdLineArgs::init(argc, argv, &aboutData);
00061     KCmdLineArgs::addCmdLineOptions(options);   
00062     KApplication app;
00063 
00064     KCmdLineArgs *args = KCmdLineArgs::parsedArgs();
00065 
00066     KURL url;
00067     
00068     if(args->count())
00069         url = args->arg(0);
00070     else
00071         exit(1);
00072 
00073     args->clear();
00074 
00075     KConvertTest *get = new KConvertTest();
00076 
00077     KArtsDispatcher dispatcher;
00078     KAudioConverter converter;
00079 
00080     // FIXME: crashes
00081     // converter.setup(44100);
00082     converter.requestPlayObject(url);
00083 
00084     QObject::connect(&converter, SIGNAL(rawStreamStart()), get, SLOT(slotRawStreamStart()));
00085 
00086     QObject::connect(&converter, SIGNAL(newBlockSize(long)), get, SLOT(slotNewBlockSize(long)));
00087     QObject::connect(&converter, SIGNAL(newBlockPointer(long)), get, SLOT(slotNewBlockPointer(long)));
00088     QObject::connect(&converter, SIGNAL(newData()), get, SLOT(slotNewData()));
00089     
00090     QObject::connect(&converter, SIGNAL(rawStreamFinished()), get, SLOT(slotRawStreamFinished()));
00091 
00092     converter.start();
00093 
00094     app.exec();
00095 }
00096 

arts

Skip menu "arts"
  • Main Page
  • Class Hierarchy
  • Alphabetical List
  • Class List
  • File List
  • Class Members

@topname@

Skip menu "@topname@"
  •     kdnssd-avahi
  • arts
  • dcop
  • dnssd
  • interfaces
  •     interface
  •     library
  •   kspeech
  •   ktexteditor
  • kabc
  • kate
  • kcmshell
  • kdecore
  • kded
  • kdefx
  • kdeprint
  • kdesu
  • kdeui
  • kdoctools
  • khtml
  • kimgio
  • kinit
  • kio
  •   bookmarks
  •   httpfilter
  •   kfile
  •   kio
  •   kioexec
  •   kpasswdserver
  •   kssl
  • kioslave
  •   http
  • kjs
  • kmdi
  •   kmdi
  • knewstuff
  • kparts
  • kresources
  • kspell2
  • kunittest
  • kutils
  • kwallet
  • libkmid
  • libkscreensaver
Generated for @topname@ by doxygen 1.5.5
This website is maintained by Adriaan de Groot and Allen Winter.
KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V. | Legal