Loading media/libmedia/IMediaRecorder.cpp +29 −1 Original line number Diff line number Diff line Loading @@ -65,7 +65,7 @@ enum { GET_ROUTED_DEVICE_ID, ENABLE_AUDIO_DEVICE_CALLBACK, GET_ACTIVE_MICROPHONES, GET_PORT_ID, }; class BpMediaRecorder: public BpInterface<IMediaRecorder> Loading Loading @@ -407,6 +407,23 @@ public: return status; } status_t getPortId(audio_port_handle_t *portId) { ALOGV("getPortId"); if (portId == nullptr) { return BAD_VALUE; } Parcel data, reply; data.writeInterfaceToken(IMediaRecorder::getInterfaceDescriptor()); status_t status = remote()->transact(GET_PORT_ID, data, &reply); if (status != OK || (status = (status_t)reply.readInt32()) != NO_ERROR) { *portId = AUDIO_PORT_HANDLE_NONE; return status; } *portId = (audio_port_handle_t)reply.readInt32(); return NO_ERROR; } }; IMPLEMENT_META_INTERFACE(MediaRecorder, "android.media.IMediaRecorder"); Loading Loading @@ -661,6 +678,17 @@ status_t BnMediaRecorder::onTransact( return NO_ERROR; } case GET_PORT_ID: { ALOGV("GET_PORT_ID"); CHECK_INTERFACE(IMediaRecorder, data, reply); audio_port_handle_t portId; status_t status = getPortId(&portId); reply->writeInt32(status); if (status == NO_ERROR) { reply->writeInt32(portId); } return NO_ERROR; } default: return BBinder::onTransact(code, data, reply, flags); } Loading media/libmedia/include/media/IMediaRecorder.h +1 −1 Original line number Diff line number Diff line Loading @@ -73,7 +73,7 @@ public: virtual status_t enableAudioDeviceCallback(bool enabled) = 0; virtual status_t getActiveMicrophones( std::vector<media::MicrophoneInfo>* activeMicrophones) = 0; virtual status_t getPortId(audio_port_handle_t *portId) = 0; }; // ---------------------------------------------------------------------------- Loading media/libmedia/include/media/MediaRecorderBase.h +1 −0 Original line number Diff line number Diff line Loading @@ -72,6 +72,7 @@ struct MediaRecorderBase { virtual status_t enableAudioDeviceCallback(bool enabled) = 0; virtual status_t getActiveMicrophones( std::vector<media::MicrophoneInfo>* activeMicrophones) = 0; virtual status_t getPortId(audio_port_handle_t *portId) const = 0; Loading media/libmedia/include/media/mediarecorder.h +1 −0 Original line number Diff line number Diff line Loading @@ -264,6 +264,7 @@ public: status_t getRoutedDeviceId(audio_port_handle_t *deviceId); status_t enableAudioDeviceCallback(bool enabled); status_t getActiveMicrophones(std::vector<media::MicrophoneInfo>* activeMicrophones); status_t getPortId(audio_port_handle_t *portId) const; private: void doCleanUp(); Loading media/libmedia/mediarecorder.cpp +11 −0 Original line number Diff line number Diff line Loading @@ -842,4 +842,15 @@ status_t MediaRecorder::getActiveMicrophones(std::vector<media::MicrophoneInfo>* return mMediaRecorder->getActiveMicrophones(activeMicrophones); } status_t MediaRecorder::getPortId(audio_port_handle_t *portId) const { ALOGV("getPortId"); if (mMediaRecorder == NULL) { ALOGE("media recorder is not initialized yet"); return INVALID_OPERATION; } return mMediaRecorder->getPortId(portId); } } // namespace android Loading
media/libmedia/IMediaRecorder.cpp +29 −1 Original line number Diff line number Diff line Loading @@ -65,7 +65,7 @@ enum { GET_ROUTED_DEVICE_ID, ENABLE_AUDIO_DEVICE_CALLBACK, GET_ACTIVE_MICROPHONES, GET_PORT_ID, }; class BpMediaRecorder: public BpInterface<IMediaRecorder> Loading Loading @@ -407,6 +407,23 @@ public: return status; } status_t getPortId(audio_port_handle_t *portId) { ALOGV("getPortId"); if (portId == nullptr) { return BAD_VALUE; } Parcel data, reply; data.writeInterfaceToken(IMediaRecorder::getInterfaceDescriptor()); status_t status = remote()->transact(GET_PORT_ID, data, &reply); if (status != OK || (status = (status_t)reply.readInt32()) != NO_ERROR) { *portId = AUDIO_PORT_HANDLE_NONE; return status; } *portId = (audio_port_handle_t)reply.readInt32(); return NO_ERROR; } }; IMPLEMENT_META_INTERFACE(MediaRecorder, "android.media.IMediaRecorder"); Loading Loading @@ -661,6 +678,17 @@ status_t BnMediaRecorder::onTransact( return NO_ERROR; } case GET_PORT_ID: { ALOGV("GET_PORT_ID"); CHECK_INTERFACE(IMediaRecorder, data, reply); audio_port_handle_t portId; status_t status = getPortId(&portId); reply->writeInt32(status); if (status == NO_ERROR) { reply->writeInt32(portId); } return NO_ERROR; } default: return BBinder::onTransact(code, data, reply, flags); } Loading
media/libmedia/include/media/IMediaRecorder.h +1 −1 Original line number Diff line number Diff line Loading @@ -73,7 +73,7 @@ public: virtual status_t enableAudioDeviceCallback(bool enabled) = 0; virtual status_t getActiveMicrophones( std::vector<media::MicrophoneInfo>* activeMicrophones) = 0; virtual status_t getPortId(audio_port_handle_t *portId) = 0; }; // ---------------------------------------------------------------------------- Loading
media/libmedia/include/media/MediaRecorderBase.h +1 −0 Original line number Diff line number Diff line Loading @@ -72,6 +72,7 @@ struct MediaRecorderBase { virtual status_t enableAudioDeviceCallback(bool enabled) = 0; virtual status_t getActiveMicrophones( std::vector<media::MicrophoneInfo>* activeMicrophones) = 0; virtual status_t getPortId(audio_port_handle_t *portId) const = 0; Loading
media/libmedia/include/media/mediarecorder.h +1 −0 Original line number Diff line number Diff line Loading @@ -264,6 +264,7 @@ public: status_t getRoutedDeviceId(audio_port_handle_t *deviceId); status_t enableAudioDeviceCallback(bool enabled); status_t getActiveMicrophones(std::vector<media::MicrophoneInfo>* activeMicrophones); status_t getPortId(audio_port_handle_t *portId) const; private: void doCleanUp(); Loading
media/libmedia/mediarecorder.cpp +11 −0 Original line number Diff line number Diff line Loading @@ -842,4 +842,15 @@ status_t MediaRecorder::getActiveMicrophones(std::vector<media::MicrophoneInfo>* return mMediaRecorder->getActiveMicrophones(activeMicrophones); } status_t MediaRecorder::getPortId(audio_port_handle_t *portId) const { ALOGV("getPortId"); if (mMediaRecorder == NULL) { ALOGE("media recorder is not initialized yet"); return INVALID_OPERATION; } return mMediaRecorder->getPortId(portId); } } // namespace android