1 /*
2 **
3 ** Copyright 2008, The Android Open Source Project
4 **
5 ** Licensed under the Apache License, Version 2.0 (the "License");
6 ** you may not use this file except in compliance with the License.
7 ** You may obtain a copy of the License at
8 **
9 **     http://www.apache.org/licenses/LICENSE-2.0
10 **
11 ** Unless required by applicable law or agreed to in writing, software
12 ** distributed under the License is distributed on an "AS IS" BASIS,
13 ** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 ** See the License for the specific language governing permissions and
15 ** limitations under the License.
16 */
17 
18 // Proxy for media player implementations
19 
20 //#define LOG_NDEBUG 0
21 #define LOG_TAG "MediaDrmService"
22 
23 #include "MediaDrmService.h"
24 #include <binder/IServiceManager.h>
25 #include <utils/Log.h>
26 
27 #ifdef DISABLE_TREBLE_DRM
28 #include <media/Crypto.h>
29 #include <media/Drm.h>
30 #else
31 #include <media/CryptoHal.h>
32 #include <media/DrmHal.h>
33 #endif
34 
35 namespace android {
36 
instantiate()37 void MediaDrmService::instantiate() {
38     defaultServiceManager()->addService(
39             String16("media.drm"), new MediaDrmService());
40 }
41 
makeCrypto()42 sp<ICrypto> MediaDrmService::makeCrypto() {
43 #ifdef DISABLE_TREBLE_DRM
44     return new Crypto;
45 #else
46     return new CryptoHal;
47 #endif
48 }
49 
makeDrm()50 sp<IDrm> MediaDrmService::makeDrm() {
51 #ifdef DISABLE_TREBLE_DRM
52     return new Drm;
53 #else
54     return new DrmHal;
55 #endif
56 }
57 
58 } // namespace android
59