When saving attributes(that it writes JPEG again.), now ExifInterface
generates some uncessary pointer tags which refer to an empty EXIF IFD
group, that makes a warning message by ExifInterface when reading again,
which warns that the value of the pointer tag pointing to is invalid.
Bug: 27583378
Change-Id: Id0170c5644541565c98fe4978284098e6664c395
- In case of giving an argument of the image file name or descriptor,
we created a InputStream at the inside of ExifInterface, close them
properly.
- Developers should take care of closing input streams when they use
input streams since they made those input streams.
Bug: 27636804
Change-Id: I9a3a75b1b55dcb2718a60e14814a04cad939d22c
- Give more explanations on dealing with files failed to process.
- Log and return immediately when handling lost JPEG files.
- Minor fixes in logging.
Bug: 27583378, Bug: 27587980
Change-Id: Id9a3d137e5f173fa0e6313402e5dc482a5efd57c
Prevent developers from using a channelMask that will fail.
Bug: 27721209
Change-Id: I87ad67caedaedf6ed2230165cb1687a2a0b74703
Signed-off-by: Phil Burk <philburk@google.com>
This CL makes ExifInterface determine the data format of rational
numbers and the values which include several components for exif entry
correctly.
Bug: 27614052
Change-Id: Ic3ea64889fad06ef5f636e4635ab7803a9c9ae29
Originally this API is expected to be used some use cases which don't
fit TvView well. e.g. background recording. Removing this from system api
in favor of TvRecodingClient which is introduced in N.
Bug: 25726241
Change-Id: If45fc3e2c5382e7b9e8abf42effebd76fd84b25d
Store device type and address in audio mixes regardless of the
mix route type, no "registration" field.
For LOOP_BACK mixes, assign the REMOTE_SUBMIX device type.
Bug 25448664
Change-Id: I8d59b2fd3e05b1dcf1081ad826f985f5e3e74769
In JPEG, an APP1 section can contain EXIF or XMP. The old code throws an
Exception when XMP APP1 segment is showns.
Bug: 27580432
Change-Id: If42197ea0c33ec4446302c969b42afd3d4b4e3c3
Some JPEG images generated by various camera vendors have wrong offsets
and invalid numbers for indicating the size of components. Instead of
throwing exceptions, this CL makes Exifinterface ignore these cases to
read the information without losing contents already parsed.
Bug: 27583378
Change-Id: Ie8ee0bf49283ef519f4f31c5b8ba78ce3f82fe92
unsubscribe() should accept the Callback used to call subscribe()
as the identifying key for what to unsubscribe, not the options
Bundle used to call subscribe.
Bug: 27384292
Change-Id: I0a5664d35983fcbdb6f9e60fd35acac813daf0c7
In order to maintain compatibility with the old versions of
ExifInterface, non-JPEG image files, for instance, PNG, GIF and so on,
need to be handled by generating an empty result rather than throwing
an exception in the constructor. And corrupted JPG files also should be
handled in the same way.
Bug: 27587980
Change-Id: If33b63c683bfb672999d1abd370a8edf29932ac1
AudioMix: add system method for specifying an AudioDeviceInfo
to be used by this mix. This only works for AudioMix
instance with the RENDER route flag.
Previous dynamic policy implementation didn't enforce
mix route flag check, but only supported LOOP_BACK,
so make LOOP_BACK the default.
When a policy gets registered and the registration ID is
set on each mix, for RENDER mixes use the device
address for registration.
Bug 25448664
Change-Id: If5789d84ff4c4c25a6e81ba1513a39916220498a
As CryptoSession is an inner (non-static) class of MediaDrm,
it's not necessary to pass in a reference of MediaDrm while
creating a CryptoSession instance.
bug: 27607931
Change-Id: Ic3cc03f885d14bc8d93287c918e778550cc21b58
Also prefer AudioManager.AUDIO_SESSION_ID_GENERATE over
AudioSystem.AUDIO_SESSION_ALLOCATE, because
AudioSystem.AUDIO_SESSION_ALLOCATE is @hide.
Bug: 27562099
Change-Id: I5924554feb919db7f2390f5b062faedd515421af