You could see the codec candidate in the source code for the different plugins.
- GStreamer
- audio/mpeg
- audio/vorbis
- audio/speex
- audio/GSM
- audio/PCM
- audio/AMR
- audio/AMR-WB
- audio/FLAC
- AudioCapture
- audio/pcm
- audio/pcm
- QNX
- aac
- raw
質問
I'm using QAudioRecorder in Qt to record a voice, here is the sample code.
audioRecorder = new QAudioRecorder;
QAudioEncoderSettings audioSettings;
audioSettings.setCodec("audio/amr"); //here's my question
audioSettings.setQuality(QMultimedia::HighQuality);
audioRecorder->setEncodingSettings(audioSettings);
audioRecorder->setOutputLocation(QUrl::fromLocalFile("test.amr"));
audioRecorder->record();
But I have no idea how to use the setCodec() function
void QAudioEncoderSettings::setCodec(const QString & codec)
How can find out which parameter (such as "audio/amr"
or "audio/x-wav"
) I can use and their exact meanings? Thanks!
解決
You could see the codec candidate in the source code for the different plugins.
他のヒント
You can call supportedAudioCodecs
in the QMediaRecorder
class to get list of supported codecs.
MWE:
QAudioRecorder *recorder = new QAudioRecorder(this);
QStringList codecs_list = recorder->supportedAudioCodecs();
for( int i=0 ; i<codecs_list.count() ; i++ )
{
qDebug() << codecs_list[i];
}