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

Commit f0d367c5 authored by Hangyu Kuang's avatar Hangyu Kuang Committed by Android (Google) Code Review
Browse files

Merge changes from topic "revert-14534667-conditional-start-CLSCYPWXDT" into sc-dev

* changes:
  Revert^2 "trancoding: lazy-start transcoding service"
  Revert "Conditional start the media.transcoding service."
parents 2779f525 2e1e8d18
Loading
Loading
Loading
Loading
+1 −0
Original line number Original line Diff line number Diff line
@@ -8,4 +8,5 @@ service media.transcoding /apex/com.android.media/bin/mediatranscoding
    ioprio rt 4
    ioprio rt 4
    # Restrict to little cores only with system-background cpuset.
    # Restrict to little cores only with system-background cpuset.
    writepid /dev/cpuset/system-background/tasks
    writepid /dev/cpuset/system-background/tasks
    interface aidl media.transcoding
    disabled
    disabled
+0 −1
Original line number Original line Diff line number Diff line
@@ -35,7 +35,6 @@ cc_binary {
        "android.hardware.media.omx@1.0",
        "android.hardware.media.omx@1.0",
        "libandroidicu",
        "libandroidicu",
        "libfmq",
        "libfmq",
        "libbase",
        "libbinder",
        "libbinder",
        "libhidlbase",
        "libhidlbase",
        "liblog",
        "liblog",
+0 −7
Original line number Original line Diff line number Diff line
@@ -18,7 +18,6 @@
#define LOG_TAG "mediaserver"
#define LOG_TAG "mediaserver"
//#define LOG_NDEBUG 0
//#define LOG_NDEBUG 0


#include <android-base/properties.h>
#include <binder/IPCThreadState.h>
#include <binder/IPCThreadState.h>
#include <binder/ProcessState.h>
#include <binder/ProcessState.h>
#include <binder/IServiceManager.h>
#include <binder/IServiceManager.h>
@@ -43,12 +42,6 @@ int main(int argc __unused, char **argv __unused)
    ResourceManagerService::instantiate();
    ResourceManagerService::instantiate();
    registerExtensions();
    registerExtensions();
    ::android::hardware::configureRpcThreadpool(16, false);
    ::android::hardware::configureRpcThreadpool(16, false);

    if (!android::base::GetBoolProperty("ro.config.low_ram", false)) {
        // Start the media.transcoding service if the device is not low ram
        // device.
        android::base::SetProperty("ctl.start", "media.transcoding");
    }
    ProcessState::self()->startThreadPool();
    ProcessState::self()->startThreadPool();
    IPCThreadState::self()->joinThreadPool();
    IPCThreadState::self()->joinThreadPool();
    ::android::hardware::joinRpcThreadpool();
    ::android::hardware::joinRpcThreadpool();
+4 −4
Original line number Original line Diff line number Diff line
@@ -132,10 +132,10 @@ binder_status_t MediaTranscodingService::dump(int fd, const char** /*args*/, uin
void MediaTranscodingService::instantiate() {
void MediaTranscodingService::instantiate() {
    std::shared_ptr<MediaTranscodingService> service =
    std::shared_ptr<MediaTranscodingService> service =
            ::ndk::SharedRefBase::make<MediaTranscodingService>();
            ::ndk::SharedRefBase::make<MediaTranscodingService>();
    binder_status_t status =
    if (__builtin_available(android __TRANSCODING_MIN_API__, *)) {
            AServiceManager_addService(service->asBinder().get(), getServiceName());
        // Once service is started, we want it to stay even is client side perished.
    if (status != STATUS_OK) {
        AServiceManager_forceLazyServicesPersist(true /*persist*/);
        return;
        (void)AServiceManager_registerLazyService(service->asBinder().get(), getServiceName());
    }
    }
}
}


+1 −1
Original line number Original line Diff line number Diff line
@@ -481,7 +481,7 @@ public:
        // Need thread pool to receive callbacks, otherwise oneway callbacks are
        // Need thread pool to receive callbacks, otherwise oneway callbacks are
        // silently ignored.
        // silently ignored.
        ABinderProcess_startThreadPool();
        ABinderProcess_startThreadPool();
        ::ndk::SpAIBinder binder(AServiceManager_getService("media.transcoding"));
        ::ndk::SpAIBinder binder(AServiceManager_waitForService("media.transcoding"));
        mService = IMediaTranscodingService::fromBinder(binder);
        mService = IMediaTranscodingService::fromBinder(binder);
        if (mService == nullptr) {
        if (mService == nullptr) {
            ALOGE("Failed to connect to the media.trascoding service.");
            ALOGE("Failed to connect to the media.trascoding service.");