991 Commits

Author SHA1 Message Date
Marco Nelissen
aaacd001fb Merge "Expand mediaextractor dumpsys" into nyc-dev 2016-04-07 17:26:19 +00:00
Jaesung Chung
fd3446e0aa Fix build
Change-Id: I38aa2f70fef3cb5b4a6fe42a3e4aa8e0a16e6fe0
2016-04-06 21:44:13 +09:00
Andy Hung
9a99629eaa Merge "Stop SoundPool decode if NdkMediaCodec returns null buffers" into nyc-dev 2016-03-30 17:06:18 +00:00
Andy Hung
0474773aab Stop SoundPool decode if NdkMediaCodec returns null buffers
Also increase error checking.

Bug: 27346228
Change-Id: Ib94505f852344298f88a3fdcbd65ca8031084188
2016-03-29 15:43:02 -07:00
Daichi Hirono
1337deb6ea Update the comment of MtpDevice#getObjectSizeLong
BUG=27805369

Change-Id: I63762fedf540e89e9ca811a143cb178881ef1830
2016-03-28 04:37:14 +00:00
Marco Nelissen
73c74698d0 Expand mediaextractor dumpsys
Bug: 22775369
Change-Id: I87452084bb5405280c48085fb909aa247055ea01
2016-03-25 09:33:13 -07:00
Daichi Hirono
787821bce4 Add getObjectSizeLong hidden API to MtpDevice class.
In the MTP spec, the object size is stored in MtpObjectInfo as unsigned
32-bit integer and fetched by the getObjectInfo operation. For the
objects that are more than 4GB, the object size is provided as one of
extra properties, which are fetched by different operation.

The CL adds to getObjectSizeLong hidden method to Java MtpDevice class
so that client code can obtain 4GB+ object size.

BUG=27805369

Change-Id: I8a5b85c8db39734f00e49709c61b271eb48ff33d
2016-03-25 20:06:13 +09:00
Glenn Kasten
58ae278294 Merge "Use audio_session_t consistently" into nyc-dev 2016-03-17 14:22:53 +00:00
Lajos Molnar
bd4acc2f9b Merge "media: don't expose private keys in MediaFormat" into nyc-dev 2016-03-15 19:22:28 +00:00
Yin-Chia Yeh
7b79090252 Camera: fix expectation of BLOB buffer size
Bug: 27340302
Change-Id: I7f40065661d06bba210c3cb888598623fad0e56c
2016-03-14 16:17:38 -07:00
Lajos Molnar
c04399feab media: don't expose private keys in MediaFormat
Bug: 25684127
Change-Id: Ie263d290037633291b791ca78ba7cf4d6b3de9c8
2016-03-14 14:07:22 -07:00
Glenn Kasten
33b840444f Use audio_session_t consistently
Also prefer AudioManager.AUDIO_SESSION_ID_GENERATE over
AudioSystem.AUDIO_SESSION_ALLOCATE, because
AudioSystem.AUDIO_SESSION_ALLOCATE is @hide.

Bug: 27562099
Change-Id: I5924554feb919db7f2390f5b062faedd515421af
2016-03-10 10:35:49 -08:00
Jaesung Chung
6e08d2b082 ExifInterface: add RAW input stream support
And also the following things are included:

- Remove mInputStream.
- Update javadoc accordingly.

Bug: 11224701
Change-Id: I30b4c29ac800ae396fca8f6b2c2c0f68028a44b3
2016-03-09 17:22:11 +09:00
Zhijun He
0ab416269a ImageReader/Writer: refactor and cleanup
Below changes are included:
* Defer the buffer lock to Image#getPlanes call. This will save quite a bit
CPU cycles associated with lock buffer if the application doesn't really
want to access the data.
* Refactor the code: move some common code to some utility class, and use
one unified consumer (BufferItemConsumer) in ImageReader native implementation.
The code refactoring will also make it easier to support non-opaque image
attach/detach.

Bug: 22356918
Bug: 19962027
Change-Id: I4fb865b0ea3deb6650afc64c32a5906f30e8ccbd
2016-03-08 13:21:36 -08:00
Jeff Tinker
b849eeab26 Merge "Add error code to MediaCodec.CryptoException" into nyc-dev 2016-03-07 18:18:10 +00:00
Jeff Tinker
d393216f8a Add error code to MediaCodec.CryptoException
Added a code to represent unsupported operations

bug: 25929554
Change-Id: Id8bfa092f29de073db19c4d7444f89249ea2cdd5
2016-03-05 11:53:23 -08:00
Jeff Tinker
e883f6c299 Merge "Fix uninitialized crypto pattern" into nyc-dev 2016-03-04 01:35:55 +00:00
Jeff Tinker
e872ac45f7 Fix uninitialized crypto pattern
Apps built against an older API don't have the recently
added pattern field in MediaCodec.CryptoInfo which causes
the crypto pattern fields to be uninitialized.  This change
ensures the pattern is initialized in all cases.

bug: 27477422
Change-Id: I5796bf5fbca93dba5bf9a2b74c1c6638b9e90f65
2016-03-03 15:47:09 -08:00
Lajos Molnar
7c7fef1585 media: correctly return cached size for MediaDataSource
Bug: 27431229
Change-Id: I884e43960789c139b48964deba8f56b3bc3ba590
2016-03-02 17:05:10 -08:00
Eino-Ville Talvala
5d2d7788f1 Camera2: Switch to auto-gen C++ binder interfaces
- Move camera AIDL files to frameworks/av
 - Update makefiles to point to new AIDL locations
 - Adjust camera2 implementation to match modifications to AIDL needed
   for native AIDL auto-generation
 - Move Surface.aidl to frameworks/native to allow use in
   native AIDL. Use android::view::Surface in Surface JNI to
   serialize Surface objects to ensure parceling compatibility.
 - Adjust service binder tests to new interface

Bug: 25091611
Change-Id: I85b817374b34a4540fa145328dbe4bbf7f746baf
2016-03-01 17:15:17 -08:00
Daichi Hirono
300efaa0ea Merge "Fix argument type in MtpDatabase#getObjectPropertyValue." into nyc-dev 2016-03-01 08:36:28 +00:00
Daichi Hirono
486ad2e73c Fix argument type in MtpDatabase#getObjectPropertyValue.
In MTP code, we use jint for ID (e.g. object handle) and code (property
code). But getObjectPropertyValue takes jlong and it causes missing
property values in Java code. Previously we passed the long value to
Map<Integer, MtpPropertyGroup>#get(Integer) and the compiler somehow
accepted the code. However it actually takes Long at runtime, so the
properties are never found.

BUG=26437284
Change-Id: I79defd325ea5d20c4dce84d891d984e24abcacc5
2016-03-01 16:49:08 +09:00
Yujie Qin
42d8b7d7ab Merge "Use new API from PIEX" into nyc-dev 2016-02-29 08:21:52 +00:00
Jaesung Chung
596e1d3b7a Merge "Revert "Revert "ExifInterface: switch from using jhead to java implementation""" into nyc-dev 2016-02-25 14:14:28 +00:00
Jaesung Chung
15ef59e081 Revert "Revert "ExifInterface: switch from using jhead to java implementation""
This reverts commit 3c233ee291cfe1b765184920b6b7a69cb1bb82d9.

Bug: 27349581
Change-Id: Ib9f687e79ec36692fa7505ba3852099eb3e44573
2016-02-25 14:13:10 +00:00
Sungsoo Lim
b21622d477 Merge "Revert "ExifInterface: switch from using jhead to java implementation"" into nyc-dev 2016-02-25 11:50:43 +00:00
Sungsoo Lim
3c233ee291 Revert "ExifInterface: switch from using jhead to java implementation"
This reverts commit bf24c9fcb3e66b25c90c0cd51f8bf4f401f6c3d6.

Change-Id: Id278e831a9c03f615208fd6eab51c65f7bb019eb
2016-02-25 11:48:10 +00:00
Jaesung Chung
9ad5278e2b Merge "ExifInterface: switch from using jhead to java implementation" into nyc-dev 2016-02-25 05:35:54 +00:00
Jaesung Chung
bf24c9fcb3 ExifInterface: switch from using jhead to java implementation
Bug: 26044456, Bug: 11224701
Change-Id: I881ef0ead24bcec76c0fa5a7dd0b74cc71c77285
2016-02-25 10:57:27 +09:00
Yujie Qin
01f6390ff4 Use new API from PIEX
Bug: 26894354
Change-Id: I7080c6ec4a45a746652ab226e63490a0baa1c359
2016-02-23 17:15:50 +01:00
Zhijun He
9cc3f881df ImageReader: override the flexible YUV compatible formats
For gralloc HAL v0.1 devices, if the producer buffer format is NV21 or YV12,
the returned flexFormat will be NV21 or YV12, which causes CTS failure
for ImageReader decoder test. This change overrides the NV21 or YV12 image
formats to HAL_PIXEL_FORMAT_YCbCr_420_888 for such case. With this, the
ImageReader will work for the devices with older gralloc HAL implementations
for HAL_PIXEL_FORMAT_YCbCr_420_888 compatible formats.

Bug: 27136665
Change-Id: Ib4722f1f8dc20ad6561088755e4ab9d2e68f1b47
2016-02-17 17:24:04 -08:00
Jeff Tinker
dc614f86a5 Add mediadrm service
Part of media security hardening

This is an intermediate step toward moving
mediadrm to a new service separate from mediaserver.
This first step allows mediadrmservice to run based
on the system property media.mediadrmservice.enable
so it can be selectively enabled on devices that
support using native_handles for secure buffers.

bug: 22990512
Change-Id: I9af073d8383f25657938d07be90c21c0dc6126b7
2016-02-12 20:23:45 -08:00
Wei Jia
f202143597 Merge "MediaDataSource: add getFlags()" 2016-01-28 19:22:28 +00:00
Anton Daubert
8f7a8f1eba Fix the initialize of PreviewImageData to its default values.
Bug: 26762780, 26837999
Change-Id: Ifc268beb84903576b8c82681fddf2f51ffc4a2ec
2016-01-28 13:52:46 +01:00
Daichi Hirono
376c5a8d34 Merge "Implement MtpDevice#getPartialObject64 in Java API." 2016-01-28 04:46:16 +00:00
Daichi Hirono
c8718b57b7 Merge "Add varietions of MtpDevice's mehtods using long." 2016-01-28 02:56:34 +00:00
Daichi Hirono
e0e6654a31 Add varietions of MtpDevice's mehtods using long.
BUG=26525304

Change-Id: I0a0b187910cf498720d8e7b8fbe9b0590e67e65e
2016-01-28 11:54:57 +09:00
Daichi Hirono
038832b900 Implement MtpDevice#getPartialObject64 in Java API.
BUG=26703522

Change-Id: I08510e3a179b7dc8bf247a9e997dc8a160138fc2
2016-01-28 11:19:55 +09:00
Jaesung Chung
9f774342aa Merge "Fix GpsTimeStamp format string" 2016-01-28 00:53:34 +00:00
Wei Jia
fbc164ba3c MediaDataSource: add getFlags()
Bug: 26533748
Change-Id: I980b833da47b54d94ecc5fedbd75ce69e59925fb
2016-01-27 14:26:03 -08:00
Jaesung Chung
04e18bb2fa Fix GpsTimeStamp format string
Bug: 26816278
Change-Id: If3694ec44f5a5d6109c1895eac305d0a1a7e1ca2
2016-01-28 01:31:18 +09:00
Jaesung Chung
d4c505c9b4 Fix build
Change-Id: I91e10406da341e226180b14dd2446cadbdab5684
2016-01-28 01:16:56 +09:00
Jaesung Chung
800133d4eb Merge "Enable reading a thumbnail from RAW image files in MtpDatabase" 2016-01-27 11:52:34 +00:00
Jaesung Chung
8409c0691f Enable reading a thumbnail from RAW image files in MtpDatabase
Also introduce new supported RAW image file formats, PEF and SRW.

RAW image file formats are not defined in PTP 1.2 specification except
for DNG. They are mostly built on top of TIFF or TIFF/EP. (Fuji's RAF
is the exception).

In this CL, image file formats are classified newly as below:

DNG: dng
TIFF: cr2, nrw, arw, rw2, orf, pef, srw
TIFF/EP: nef
Unknown Image Formats(FORMAT_DEFINED): wbmap, webp, raf

I referred to the following documents for defining MTP formats of RAW
images:

* http://www.rags-int-inc.com/PhotoTechStuff/RawStandards/RawSummary.html
* https://en.wikipedia.org/wiki/Raw_image_format

Bug: 26552863, Bug: 26626825
Change-Id: Ia218f6320c4c1ff051a23ca0060ceac46134b0d7
2016-01-27 18:40:36 +09:00
Yin-Chia Yeh
e76958297a Merge "ImageReader: fix missing pixel stride" 2016-01-25 02:26:11 +00:00
Daichi Hirono
148954a657 Add eventsSupported property to MtpDeviceInfo.
The property provides the set of event code that are supported by
MtpDevice.

BUG=26147375

Change-Id: I54be75e4bb52ddfe9aba8630538ddd32d1a641c8
2016-01-25 10:47:01 +09:00
Yin-Chia Yeh
b99a7f1359 ImageReader: fix missing pixel stride
Change-Id: Ie34cb51fee90e2d5624663fa23da4093fec435e2
2016-01-22 18:02:58 -08:00
Jaesung Chung
1c78b60a49 Merge "ExifInterface: add support for reading metadata from RAW images" 2016-01-19 00:37:13 +00:00
Jaesung Chung
fe968dfc12 ExifInterface: add support for reading metadata from RAW images
This CL depends on piex (github.com/google/piex),
which is owned by Google Photos's RAW team.

piex is capable of reading EXIF data that contains
metadata, and finding the positions in an image of
thumbnail and preview images from RAW images.

piex supports DNG, CR2, NEF, NRW, ARW, RW2, ORF
and RAF image file formats.

ExifInterface gets thumbnail and metadata information
from the above RAW image formats via piex.

Bug: 26177215
Change-Id: I529f8032bcb2a9d3d9e857ff1365a26a4f040066
2016-01-18 22:14:57 +09:00
Daichi Hirono
cc1251b9b2 Merge "Change offset and size arguments of MtpDevice#getPartialObject to Java long." 2016-01-14 02:28:45 +00:00