summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rwxr-xr-xlibvideoeditor/vss/stagefrightshells/src/VideoEditorBuffer.c6
-rw-r--r--media/libstagefright/MediaCodec.cpp3
-rw-r--r--media/libstagefright/codecs/avc/enc/src/bitstream_io.cpp4
-rw-r--r--media/libstagefright/codecs/avc/enc/src/sad_mb_offset.h4
-rw-r--r--services/camera/libcameraservice/CameraService.cpp2
5 files changed, 13 insertions, 6 deletions
diff --git a/libvideoeditor/vss/stagefrightshells/src/VideoEditorBuffer.c b/libvideoeditor/vss/stagefrightshells/src/VideoEditorBuffer.c
index 98919d2..f4cfa7c 100755
--- a/libvideoeditor/vss/stagefrightshells/src/VideoEditorBuffer.c
+++ b/libvideoeditor/vss/stagefrightshells/src/VideoEditorBuffer.c
@@ -53,6 +53,7 @@ M4OSA_ERR VIDEOEDITOR_BUFFER_allocatePool(VIDEOEDITOR_BUFFER_Pool** ppool,
{
M4OSA_ERR lerr = M4NO_ERROR;
VIDEOEDITOR_BUFFER_Pool* pool;
+ M4OSA_UInt32 index;
ALOGV("VIDEOEDITOR_BUFFER_allocatePool : ppool = 0x%x nbBuffers = %d ",
ppool, nbBuffers);
@@ -79,6 +80,11 @@ M4OSA_ERR VIDEOEDITOR_BUFFER_allocatePool(VIDEOEDITOR_BUFFER_Pool** ppool,
goto VIDEOEDITOR_BUFFER_allocatePool_Cleanup;
}
+ for (index = 0; index < nbBuffers; index++)
+ {
+ pool->pNXPBuffer[index].pData = M4OSA_NULL;
+ }
+
ALOGV("VIDEOEDITOR_BUFFER_allocatePool : Allocating Pool name buffer");
pool->poolName = M4OSA_NULL;
pool->poolName = (M4OSA_Char*)M4OSA_32bitAlignedMalloc(
diff --git a/media/libstagefright/MediaCodec.cpp b/media/libstagefright/MediaCodec.cpp
index ff71170..d28322f 100644
--- a/media/libstagefright/MediaCodec.cpp
+++ b/media/libstagefright/MediaCodec.cpp
@@ -1118,7 +1118,8 @@ void MediaCodec::onMessageReceived(const sp<AMessage> &msg) {
CHECK(msg->senderAwaitsResponse(&replyID));
if ((mState != STARTED && mState != FLUSHING)
- || (mFlags & kFlagStickyError)) {
+ || (mFlags & kFlagStickyError)
+ || mOutputFormat == NULL) {
sp<AMessage> response = new AMessage;
response->setInt32("err", INVALID_OPERATION);
diff --git a/media/libstagefright/codecs/avc/enc/src/bitstream_io.cpp b/media/libstagefright/codecs/avc/enc/src/bitstream_io.cpp
index ed9fd8e..0e3037f 100644
--- a/media/libstagefright/codecs/avc/enc/src/bitstream_io.cpp
+++ b/media/libstagefright/codecs/avc/enc/src/bitstream_io.cpp
@@ -275,7 +275,7 @@ AVCEnc_Status AVCBitstreamUseOverrunBuffer(AVCEncBitstream* stream, int numExtra
// allocate new overrun Buffer
if (encvid->overrunBuffer)
{
- encvid->avcHandle->CBAVC_Free((uint32*)encvid->avcHandle->userData,
+ encvid->avcHandle->CBAVC_Free(encvid->avcHandle->userData,
encvid->overrunBuffer);
}
@@ -314,7 +314,7 @@ AVCEnc_Status AVCBitstreamUseOverrunBuffer(AVCEncBitstream* stream, int numExtra
// copy from the old buffer to new buffer
memcpy(encvid->overrunBuffer, stream->overrunBuffer, stream->write_pos);
// free old buffer
- encvid->avcHandle->CBAVC_Free((uint32*)encvid->avcHandle->userData,
+ encvid->avcHandle->CBAVC_Free(encvid->avcHandle->userData,
stream->overrunBuffer);
// assign pointer to new buffer
diff --git a/media/libstagefright/codecs/avc/enc/src/sad_mb_offset.h b/media/libstagefright/codecs/avc/enc/src/sad_mb_offset.h
index d5d4a42..5bc5c86 100644
--- a/media/libstagefright/codecs/avc/enc/src/sad_mb_offset.h
+++ b/media/libstagefright/codecs/avc/enc/src/sad_mb_offset.h
@@ -296,9 +296,9 @@ __asm__ volatile("LDR %0, [%1], #16": "=&r"(x12), "=r"(blk));
#if (NUMBER==3)
goto LOOP_SAD3;
#elif (NUMBER==2)
-goto LOOP_SAD2;
+ goto LOOP_SAD2;
#elif (NUMBER==1)
-goto LOOP_SAD1;
+ goto LOOP_SAD1;
#endif
}
diff --git a/services/camera/libcameraservice/CameraService.cpp b/services/camera/libcameraservice/CameraService.cpp
index bf07f8b..385be50 100644
--- a/services/camera/libcameraservice/CameraService.cpp
+++ b/services/camera/libcameraservice/CameraService.cpp
@@ -721,9 +721,9 @@ void CameraService::Client::stopRecording() {
Mutex::Autolock lock(mLock);
if (checkPidAndHardware() != NO_ERROR) return;
- mCameraService->playSound(SOUND_RECORDING);
disableMsgType(CAMERA_MSG_VIDEO_FRAME);
mHardware->stopRecording();
+ mCameraService->playSound(SOUND_RECORDING);
mPreviewBuffer.clear();
}