MCPcopy Create free account
hub / github.com/audeering/opensmile / openSLRecOpen

Function openSLRecOpen

src/android/openslesSource.cpp:772–905  ·  view source on GitHub ↗

Open the OpenSL ES device for input

Source from the content-addressed store, hash-verified

770
771// Open the OpenSL ES device for input
772SLresult openSLRecOpen(opensl_stream2 *p) {
773 SLresult result;
774 SLuint32 sr = p->sr;
775 SLuint32 channels = p->inchannels;
776 SLuint32 presetValue0 = p->microphoneSource_;
777 // default: SL_ANDROID_RECORDING_PRESET_VOICE_RECOGNITION;
778 SLuint32 presetValue = presetValue0;
779 SLuint32 presetSize = 2*sizeof(SLuint32); // intentionally too big
780 SMILE_MSG(3, "openslesSource: recording: slrecopen");
781 if (channels){
782 switch (sr){
783 case 8000:
784 sr = SL_SAMPLINGRATE_8;
785 break;
786 case 11025:
787 sr = SL_SAMPLINGRATE_11_025;
788 break;
789 case 16000:
790 sr = SL_SAMPLINGRATE_16;
791 break;
792 case 22050:
793 sr = SL_SAMPLINGRATE_22_05;
794 break;
795 case 24000:
796 sr = SL_SAMPLINGRATE_24;
797 break;
798 case 32000:
799 sr = SL_SAMPLINGRATE_32;
800 break;
801 case 44100:
802 sr = SL_SAMPLINGRATE_44_1;
803 break;
804 case 48000:
805 sr = SL_SAMPLINGRATE_48;
806 break;
807 case 64000:
808 sr = SL_SAMPLINGRATE_64;
809 break;
810 case 88200:
811 sr = SL_SAMPLINGRATE_88_2;
812 break;
813 case 96000:
814 sr = SL_SAMPLINGRATE_96;
815 break;
816 case 192000:
817 sr = SL_SAMPLINGRATE_192;
818 break;
819 default:
820 return -1;
821 }
822 SMILE_MSG(3, "openslesSource: recording: sr constant = %i", sr);
823 // configure audio source
824 //SLDataLocator_IODevice loc_dev = {SL_DATALOCATOR_IODEVICE, SL_IODEVICE_AUDIOINPUT,
825 // SL_DEFAULTDEVICEID_AUDIOINPUT, NULL};
826 SLDataLocator_IODevice loc_dev;
827 loc_dev.locatorType = SL_DATALOCATOR_IODEVICE;
828 loc_dev.deviceType = SL_IODEVICE_AUDIOINPUT;
829 loc_dev.deviceID = SL_DEFAULTDEVICEID_AUDIOINPUT;

Callers 1

Calls

no outgoing calls

Tested by

no test coverage detected