am c6a16327
: am 3c16154a
: am 2723e092
: Merge "Better handling of codec initialization failure in the player and thumbnail extractor. Return a runtime error instead of asserting if the software MPEG4/H.263 decoder fails to initialize." into froyo
This commit is contained in:
@ -75,7 +75,12 @@ static void playSource(OMXClient *client, const sp<MediaSource> &source) {
|
||||
}
|
||||
}
|
||||
|
||||
rawSource->start();
|
||||
status_t err = rawSource->start();
|
||||
|
||||
if (err != OK) {
|
||||
fprintf(stderr, "rawSource returned error %d (0x%08x)\n", err, err);
|
||||
return;
|
||||
}
|
||||
|
||||
if (gPlaybackAudio) {
|
||||
AudioPlayer *player = new AudioPlayer(NULL);
|
||||
|
@ -822,7 +822,12 @@ status_t AwesomePlayer::initVideoDecoder() {
|
||||
CHECK(mVideoTrack->getFormat()->findInt32(kKeyWidth, &mVideoWidth));
|
||||
CHECK(mVideoTrack->getFormat()->findInt32(kKeyHeight, &mVideoHeight));
|
||||
|
||||
mVideoSource->start();
|
||||
status_t err = mVideoSource->start();
|
||||
|
||||
if (err != OK) {
|
||||
mVideoSource.clear();
|
||||
return err;
|
||||
}
|
||||
}
|
||||
|
||||
return mVideoSource != NULL ? OK : UNKNOWN_ERROR;
|
||||
|
@ -120,7 +120,11 @@ static VideoFrame *extractVideoFrameWithCodecFlags(
|
||||
return NULL;
|
||||
}
|
||||
|
||||
decoder->start();
|
||||
status_t err = decoder->start();
|
||||
if (err != OK) {
|
||||
LOGW("OMXCodec::start returned error %d (0x%08x)\n", err, err);
|
||||
return NULL;
|
||||
}
|
||||
|
||||
// Read one output buffer, ignore format change notifications
|
||||
// and spurious empty buffers.
|
||||
@ -134,7 +138,6 @@ static VideoFrame *extractVideoFrameWithCodecFlags(
|
||||
}
|
||||
|
||||
MediaBuffer *buffer = NULL;
|
||||
status_t err;
|
||||
do {
|
||||
if (buffer != NULL) {
|
||||
buffer->release();
|
||||
|
@ -120,9 +120,16 @@ status_t M4vH263Decoder::start(MetaData *) {
|
||||
vol_size = 0;
|
||||
|
||||
}
|
||||
CHECK_EQ(PV_TRUE, PVInitVideoDecoder(
|
||||
mHandle, vol_data, &vol_size, 1, mWidth, mHeight, mode));
|
||||
|
||||
Bool success = PVInitVideoDecoder(
|
||||
mHandle, vol_data, &vol_size, 1, mWidth, mHeight, mode);
|
||||
if (vol_data[0]) free(vol_data[0]);
|
||||
|
||||
if (success != PV_TRUE) {
|
||||
LOGW("PVInitVideoDecoder failed. Unsupported content?");
|
||||
return ERROR_UNSUPPORTED;
|
||||
}
|
||||
|
||||
MP4DecodingMode actualMode = PVGetDecBitstreamMode(mHandle);
|
||||
CHECK_EQ(mode, actualMode);
|
||||
|
||||
|
Reference in New Issue
Block a user