Viadeo Twitter Google Bookmarks ! Facebook Digg del.icio.us MySpace Yahoo MyWeb Blinklist Netvouz Reddit Simpy StumbleUpon Bookmarks Windows Live Favorites 
Logo Documentation Qt ·  Page d'accueil  ·  Toutes les classes  ·  Toutes les fonctions  ·  Vues d'ensemble  · 

Audio Recorder Example

Files:

This example shows how to create a simple audio recorder using the Qt Mobility Multimedia API.

We can easily setup the capture when we create the objects using a QMediaRecorder initialized with a QAudioCaptureSource object.

        audiosource = new QAudioCaptureSource;
        capture = new QMediaRecorder(audiosource);

Then we set up the display of a list of available sources to use

        for(int i = 0; i < audiosource->deviceCount(); i++)
            deviceBox->addItem(audiosource->name(i));

And available codecs

        QStringList codecs = capture->supportedAudioCodecs();
        for(int i = 0; i < codecs.count(); i++)
            codecsBox->addItem(codecs.at(i));

We display a dialog for the user to select the appropriate codec and the input device to capture. Once selected we can use user interface objects like buttons to start and stop the recording and display elapsed time.

        for(int i = 0; i < audiosource->deviceCount(); i++) {
            if(deviceBox->itemText(idx).compare(audiosource->name(i)) == 0)
                audiosource->setSelectedDevice(i);
        }

Then use signals to indicate a change to the output filename, the codec and the audio source.

When the button to record is pushed the toggleRecord() slot will start or stop the recording process using the QMediaRecorder::record() and QMediaRecorder::stop() functions of the QMediaRecorder object.

    void AudioRecorder::toggleRecord()
    {
        if(!active) {
            recTime->setText("0 sec");
            currentTime = 0;
            capture->record();

            button->setText(tr("Stop"));
            active = true;
        } else {
            capture->stop();
            button->setText(tr("Record"));
            active = false;
        }
    }

Cette page est une traduction d'une page de la documentation de Qt, écrite par Nokia Corporation and/or its subsidiary(-ies). Les éventuels problèmes résultant d'une mauvaise traduction ne sont pas imputables à Nokia. Qt qtmobility-1.0-tp
Copyright © 2012 Developpez LLC. Tous droits réservés Developpez LLC. Aucune reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez LLC. Sinon, vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts. Cette page est déposée à la SACD.
Vous avez déniché une erreur ? Un bug ? Une redirection cassée ? Ou tout autre problème, quel qu'il soit ? Ou bien vous désirez participer à ce projet de traduction ? N'hésitez pas à nous contacter ou par MP !
 
 
 
 
Partenaires

Hébergement Web