11900e77bac4276f247f80fd06d19316cac598f57Marco Nelissen/* 21900e77bac4276f247f80fd06d19316cac598f57Marco Nelissen * Copyright (C) 2015 The Android Open Source Project 31900e77bac4276f247f80fd06d19316cac598f57Marco Nelissen * 41900e77bac4276f247f80fd06d19316cac598f57Marco Nelissen * Licensed under the Apache License, Version 2.0 (the "License"); 51900e77bac4276f247f80fd06d19316cac598f57Marco Nelissen * you may not use this file except in compliance with the License. 61900e77bac4276f247f80fd06d19316cac598f57Marco Nelissen * You may obtain a copy of the License at 71900e77bac4276f247f80fd06d19316cac598f57Marco Nelissen * 81900e77bac4276f247f80fd06d19316cac598f57Marco Nelissen * http://www.apache.org/licenses/LICENSE-2.0 91900e77bac4276f247f80fd06d19316cac598f57Marco Nelissen * 101900e77bac4276f247f80fd06d19316cac598f57Marco Nelissen * Unless required by applicable law or agreed to in writing, software 111900e77bac4276f247f80fd06d19316cac598f57Marco Nelissen * distributed under the License is distributed on an "AS IS" BASIS, 121900e77bac4276f247f80fd06d19316cac598f57Marco Nelissen * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 131900e77bac4276f247f80fd06d19316cac598f57Marco Nelissen * See the License for the specific language governing permissions and 141900e77bac4276f247f80fd06d19316cac598f57Marco Nelissen * limitations under the License. 151900e77bac4276f247f80fd06d19316cac598f57Marco Nelissen */ 161900e77bac4276f247f80fd06d19316cac598f57Marco Nelissen 171900e77bac4276f247f80fd06d19316cac598f57Marco Nelissen#define LOG_TAG "MediaCodecService" 181900e77bac4276f247f80fd06d19316cac598f57Marco Nelissen//#define LOG_NDEBUG 0 191900e77bac4276f247f80fd06d19316cac598f57Marco Nelissen#include <utils/Log.h> 201900e77bac4276f247f80fd06d19316cac598f57Marco Nelissen 211900e77bac4276f247f80fd06d19316cac598f57Marco Nelissen#include "MediaCodecService.h" 221900e77bac4276f247f80fd06d19316cac598f57Marco Nelissen 231900e77bac4276f247f80fd06d19316cac598f57Marco Nelissennamespace android { 241900e77bac4276f247f80fd06d19316cac598f57Marco Nelissen 251900e77bac4276f247f80fd06d19316cac598f57Marco Nelissensp<IOMX> MediaCodecService::getOMX() { 261900e77bac4276f247f80fd06d19316cac598f57Marco Nelissen 271900e77bac4276f247f80fd06d19316cac598f57Marco Nelissen Mutex::Autolock autoLock(mLock); 281900e77bac4276f247f80fd06d19316cac598f57Marco Nelissen 291900e77bac4276f247f80fd06d19316cac598f57Marco Nelissen if (mOMX.get() == NULL) { 301900e77bac4276f247f80fd06d19316cac598f57Marco Nelissen mOMX = new OMX; 311900e77bac4276f247f80fd06d19316cac598f57Marco Nelissen } 321900e77bac4276f247f80fd06d19316cac598f57Marco Nelissen 331900e77bac4276f247f80fd06d19316cac598f57Marco Nelissen return mOMX; 341900e77bac4276f247f80fd06d19316cac598f57Marco Nelissen} 351900e77bac4276f247f80fd06d19316cac598f57Marco Nelissen 361900e77bac4276f247f80fd06d19316cac598f57Marco Nelissen 371900e77bac4276f247f80fd06d19316cac598f57Marco Nelissenstatus_t MediaCodecService::onTransact(uint32_t code, const Parcel& data, Parcel* reply, 381900e77bac4276f247f80fd06d19316cac598f57Marco Nelissen uint32_t flags) 391900e77bac4276f247f80fd06d19316cac598f57Marco Nelissen{ 401900e77bac4276f247f80fd06d19316cac598f57Marco Nelissen return BnMediaCodecService::onTransact(code, data, reply, flags); 411900e77bac4276f247f80fd06d19316cac598f57Marco Nelissen} 421900e77bac4276f247f80fd06d19316cac598f57Marco Nelissen 431900e77bac4276f247f80fd06d19316cac598f57Marco Nelissen} // namespace android 44