diff options
author | Gloria Wang <gwang@google.com> | 2009-10-29 15:46:37 -0700 |
---|---|---|
committer | Gloria Wang <gwang@google.com> | 2009-10-29 15:46:37 -0700 |
commit | dac6a31a33ba53fb93850670cdddd1e6515dadce (patch) | |
tree | ae36b4b259a20b94898c86f612832fee85b1d853 /media/libmediaplayerservice/MediaRecorderClient.cpp | |
parent | f9ae38fa6eafa700b6642ea045c8749df5364cd6 (diff) | |
download | frameworks_av-dac6a31a33ba53fb93850670cdddd1e6515dadce.zip frameworks_av-dac6a31a33ba53fb93850670cdddd1e6515dadce.tar.gz frameworks_av-dac6a31a33ba53fb93850670cdddd1e6515dadce.tar.bz2 |
Dump media recorder PID in dumpsys media.player, and fix minor bugs.
Diffstat (limited to 'media/libmediaplayerservice/MediaRecorderClient.cpp')
-rw-r--r-- | media/libmediaplayerservice/MediaRecorderClient.cpp | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/media/libmediaplayerservice/MediaRecorderClient.cpp b/media/libmediaplayerservice/MediaRecorderClient.cpp index e54f20d..95ee3e4 100644 --- a/media/libmediaplayerservice/MediaRecorderClient.cpp +++ b/media/libmediaplayerservice/MediaRecorderClient.cpp @@ -32,7 +32,10 @@ #include <media/PVMediaRecorder.h> #include <utils/String16.h> +#include <media/AudioTrack.h> + #include "MediaRecorderClient.h" +#include "MediaPlayerService.h" namespace android { @@ -80,6 +83,7 @@ status_t MediaRecorderClient::setVideoSource(int vs) Mutex::Autolock lock(mLock); if (mRecorder == NULL) { LOGE("recorder is not initialized"); + return NO_INIT; } return mRecorder->setVideoSource((video_source)vs); } @@ -93,6 +97,7 @@ status_t MediaRecorderClient::setAudioSource(int as) Mutex::Autolock lock(mLock); if (mRecorder == NULL) { LOGE("recorder is not initialized"); + return NO_INIT; } return mRecorder->setAudioSource((audio_source)as); } @@ -271,15 +276,18 @@ status_t MediaRecorderClient::release() if (mRecorder != NULL) { delete mRecorder; mRecorder = NULL; + wp<MediaRecorderClient> client(this); + mMediaPlayerService->removeMediaRecorderClient(client); } return NO_ERROR; } -MediaRecorderClient::MediaRecorderClient(pid_t pid) +MediaRecorderClient::MediaRecorderClient(const sp<MediaPlayerService>& service, pid_t pid) { LOGV("Client constructor"); mPid = pid; mRecorder = new PVMediaRecorder(); + mMediaPlayerService = service; } MediaRecorderClient::~MediaRecorderClient() |