Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit b2487f03 authored by Marco Nelissen's avatar Marco Nelissen
Browse files

Extractor service

Run extractors in a separate process. Currently all data is copied through a
binder transaction, and WVMExtractor is still run in the mediaserver process.

Change-Id: Ic5dbce87126dd321ad792f4dd540c2ff6b068d13
parent f8e21a06
Loading
Loading
Loading
Loading
+3 −3
Original line number Diff line number Diff line
@@ -35,7 +35,7 @@ LOCAL_SRC_FILES:= \
        record.cpp

LOCAL_SHARED_LIBRARIES := \
	libstagefright liblog libutils libbinder libstagefright_foundation
	libstagefright libmedia liblog libutils libbinder libstagefright_foundation

LOCAL_C_INCLUDES:= \
	frameworks/av/media/libstagefright \
@@ -59,7 +59,7 @@ LOCAL_SRC_FILES:= \
        recordvideo.cpp

LOCAL_SHARED_LIBRARIES := \
	libstagefright liblog libutils libbinder libstagefright_foundation
	libstagefright libmedia liblog libutils libbinder libstagefright_foundation

LOCAL_C_INCLUDES:= \
	frameworks/av/media/libstagefright \
@@ -84,7 +84,7 @@ LOCAL_SRC_FILES:= \
        audioloop.cpp

LOCAL_SHARED_LIBRARIES := \
	libstagefright liblog libutils libbinder libstagefright_foundation
	libstagefright libmedia liblog libutils libbinder libstagefright_foundation

LOCAL_C_INCLUDES:= \
	frameworks/av/media/libstagefright \
+2 −2
Original line number Diff line number Diff line
@@ -109,7 +109,7 @@ int main(int argc, char* argv[])
        meta->setInt32(kKeyMaxInputSize, maxInputSize);
    }

    sp<MediaSource> encoder = OMXCodec::Create(
    sp<IMediaSource> encoder = OMXCodec::Create(
            client.interface(),
            meta, true /* createEncoder */,
            source);
@@ -128,7 +128,7 @@ int main(int argc, char* argv[])
        writer->stop();
    } else {
        // otherwise decode to speaker
        sp<MediaSource> decoder = OMXCodec::Create(
        sp<IMediaSource> decoder = OMXCodec::Create(
                client.interface(),
                meta, false /* createEncoder */,
                encoder);
+1 −1
Original line number Diff line number Diff line
@@ -325,7 +325,7 @@ int main(int /* argc */, char ** /* argv */) {
    encMeta->setInt32(kKeyMaxInputSize, 8192);
    encMeta->setInt32(kKeyBitRate, kAudioBitRate);

    sp<MediaSource> encoder =
    sp<IMediaSource> encoder =
        OMXCodec::Create(client.interface(), encMeta, true, audioSource);

    encoder->start();
+1 −1
Original line number Diff line number Diff line
@@ -299,7 +299,7 @@ int main(int argc, char **argv) {
        enc_meta->setInt32(kKeyVideoProfile, profile);
    }

    sp<MediaSource> encoder =
    sp<IMediaSource> encoder =
        OMXCodec::Create(
                client.interface(), enc_meta, true /* createEncoder */, source,
                0, preferSoftwareCodec ? OMXCodec::kPreferSoftwareCodecs : 0);
+2 −2
Original line number Diff line number Diff line
@@ -118,7 +118,7 @@ protected:
                    DataSource::CreateFromURI(
                            NULL /* httpService */, mURI.c_str());

                sp<MediaExtractor> extractor =
                sp<IMediaExtractor> extractor =
                    MediaExtractor::Create(dataSource);

                for (size_t i = 0; i < extractor->countTracks(); ++i) {
@@ -264,7 +264,7 @@ private:
    sp<Surface> mSurface;
    bool mRenderToSurface;
    sp<ACodec> mCodec;
    sp<MediaSource> mSource;
    sp<IMediaSource> mSource;
    bool mIsVorbis;

    Vector<sp<ABuffer> > mCSD;
Loading