495 Commits

Author SHA1 Message Date
Android (Google) Code Review
e1da8be501 Merge change 23835 into eclair
* changes:
  When encountering a .nomedia file, notify the MediaScannerClient, so that it can erase the data column for entries that are in the folder containing the .nomedia file. This prevents us from deleting (via a delete trigger) files when somebody adds a .nomedia file after the fact.
2009-09-03 12:27:26 -07:00
Marco Nelissen
8b04661700 When encountering a .nomedia file, notify the MediaScannerClient,
so that it can erase the data column for entries that are in the
folder containing the .nomedia file. This prevents us from
deleting (via a delete trigger) files when somebody adds a
.nomedia file after the fact.
2009-09-03 11:22:28 -07:00
Eric Laurent
7838887af4 am cabd01f4: Merge change 23798 into eclair
Merge commit 'cabd01f42afd0661d6a29217c62353c2eae3149a' into eclair-plus-aosp

* commit 'cabd01f42afd0661d6a29217c62353c2eae3149a':
  Fix issue 2097083: STREAM_SYSTEM should be at max volume.
2009-09-03 08:02:46 -07:00
Eric Laurent
9d85d5adf9 Fix issue 2097083: STREAM_SYSTEM should be at max volume.
Changed default volume for STREAM_SYSTEM and STREAM_SYSTEM_ENFORCED to the maximum value.
2009-09-03 01:28:26 -07:00
Jean-Baptiste Queru
85a2c7f1ca merge from open-source master 2009-09-01 11:46:14 -07:00
Chih-Chung Chang
a7bdedabf4 Fix 2081525: NPE in MediaScannerService.
Handle the case where the datetime string in jpeg exif is not in the format we expect.

Change-Id: I5462052c3dd723d01bce45f4924137632d081400
2009-09-01 12:23:43 +08:00
Jean-Baptiste Queru
72b1f379d5 donut snapshot 2009-08-31 09:17:57 -07:00
Jaikumar Ganesh
78333dd750 Set Routing to A2DP only when state is Connected.
We were setting the routing to A2DP when the state was Connecting too.
This was incorrect and can cause problems. One such problem was when
handling an incoming connection we set the routing to A2DP before
authorization. And even if authorization succeeds we get out sync with
AVDTP command state.
2009-08-27 11:03:00 -07:00
Eric Laurent
6ee9952bc2 Fix issue 2076322: AudioService, too many stream volume steps.
MAX_STREAM_VOLUME[] now contains the maximum valid index instead of the number of indexes for all stream types.
2009-08-26 05:23:20 -07:00
Dianne Hackborn
e1a7ad23e0 Fix build.
Change-Id: I7a21bc2151fb2a9a1135f676b563f40609bc997b
2009-08-24 18:27:08 -07:00
Dianne Hackborn
4a51c20ce6 I am getting tired of the java doc warnings, so fix them.
Change-Id: I2205eebae419eaf4a0992c9f5b7cd807eb843fe1
2009-08-24 17:37:32 -07:00
Kenny Root
6ab180aa65 Documentation: Clarify that a FileDescriptor must be seekable
In MediaPlayer, methods with an offset specified must be passed a
FileDescriptor that is seekable. This change notes that in the
JavaDoc.
2009-08-24 14:37:11 -07:00
Nick Pelly
a56d1c7219 Fix AudioService on HFP power off due to new Bluetooth API.
HEADSET_STATE_CHANGED_ACTION contains a null BluetoothDevice when the HFP
disconnects.
2009-08-19 15:20:39 -07:00
Nick Pelly
bd022f423a Bluetooth: API change.
Split BluetoothDevice into BluetoothDevice and BluetoothAdapter.

BluetoothAdapter: Represents the local BT adapter. Operations on the local
                  adapter (start a scan, etc).
BluetoothDevice: Represents a remote BT device. Operations on remote devices
                 (pair, connect, etc).

IBluetoothDevice.aidl -> Bluetooth.aidl
BluetoothDeviceService.java -> BluetoothDeviceService.java

TODO:
Javadoc
2009-08-18 08:24:22 -07:00
Chih-Chung Chang
099397cbd0 Fix 1860351: Put datetime in jpeg exif to datetaken field. 2009-08-17 19:43:24 +08:00
Sahil Sachdeva
c9706f0262 DO NOT MERGE, ALready merged to master.
1440173 [NJ-1331] MetaData utility parse the wrong m4a meta data. Changes to Java, application side.
2009-08-14 14:52:23 -07:00
Jared Suttles
5982013cfc Change the number of volume steps from 6 to 7 per Verizon Requirements
Submitted on behalf of Helen Tran <Helen.Tran@motorola.com>
Signed-off-by: Jared Suttles <jared.suttles@motorola.com>
2009-08-13 21:27:55 -07:00
Wu-cheng Li
2ac8c27988 am cb2b2378: Merge change 20729 into donut
Merge commit 'cb2b2378c735e687c15e2af7f908c68ffae5fe90'

* commit 'cb2b2378c735e687c15e2af7f908c68ffae5fe90':
  Fix the bug that EXIF attributes are always cached.
2009-08-11 18:12:00 -07:00
Jean-Baptiste Queru
ac1e59d887 donut snapshot 2009-08-11 13:12:34 -07:00
Wu-cheng Li
b826bf9182 Fix the bug that EXIF attributes are always cached.
b2039501
2009-08-11 23:37:01 +08:00
Eric Laurent
d5603c126a AudioService now differentiates BT headsets and car kits.
The BT headset detection now makes the difference between car kits and headsets, which can be used by audio policy manager.
The headset connection is also detected earlier, that is when the headset is connected and not when the SCO socket is connected as it was the case before. This allows the audio policy manager to suspend A2DP output while ringing if a SCO headset is connected.
2009-08-07 10:31:53 -07:00
Android (Google) Code Review
20b153bffc am 5fd26775: Merge change 9390 into donut
Merge commit '5fd26775bdd14b15058521c82e34b562e0c1e327'

* commit '5fd26775bdd14b15058521c82e34b562e0c1e327':
  Name unknown albums after the folder they're in, similar to how songs
2009-08-03 11:54:18 -07:00
Marco Nelissen
4935d05eaa Untangle MediaPlayer, MediaRecorder, MediaScanner and MediaMetadataRetriever JNI
code, so that creating one of those doesn't initialize all the others. Shaves
a hundred milliseconds or so off music app startup time.
2009-08-03 11:32:30 -07:00
Jean-Baptiste Queru
5c1207be90 donut snapshot 2009-07-31 17:38:20 -07:00
Marco Nelissen
c3c08ba5d6 Name unknown albums after the folder they're in, similar to how songs
with no title metadata are named after the file. Only files that are
in the root of the card will still belong to the "Unknown Album"
2009-07-31 15:02:25 -07:00
Android (Google) Code Review
ed95840681 am dccfaefd: Merge change 9285 into donut
Merge commit 'dccfaefd681a3895f6d4f9eedd106be817e1555d'

* commit 'dccfaefd681a3895f6d4f9eedd106be817e1555d':
  Clear singleton reference during JetPlayer.release()
2009-07-31 07:15:30 -07:00
Phil Dubach
176e650931 Clear singleton reference during JetPlayer.release()
Only one JetPlayer instance is supported at a time. A singleton reference is
created and returned in JetPlayer.getInstance(). When calling release() on the
instance, the corresponding native player is finalized.  Therefore, release()
must also clear the singleton reference, so that any subsequent call to
getInstance() re-initializes the native player.
2009-07-30 17:59:02 -07:00
Jean-Baptiste Queru
a8675f67e3 donut snapshot 2009-07-29 14:25:07 -07:00
Eric Laurent
c42ac9d4d0 Fix issue 2019031: Volume changes have no effect.
Send initStreamVolume() for each stream when media server restarts.
Also added restoring of phone state, device connection state and forced device for communications.
2009-07-29 08:53:03 -07:00
Marco Nelissen
69f593ccb7 Support for selection of silent ringtone from the ringtone picker.
This doesn't actually enable that, but adds the necessary code to make it work when enabled, and cleans up some ringtone related code.
2009-07-28 16:06:38 -07:00
Eric Laurent
3026a023b8 Fix issue 2001517: AudioTrack compatibility issue.
Modified enum values in AudioFormat.java and AudioSystem.h.
Added code for backward compatibility in AudioTrack.java and AudioRecord.java.
2009-07-27 12:21:29 -07:00
Eric Laurent
d25ae67ca8 Fix issue 2004738: Settings Backup Agent consistently throws ArrayIndexOutOfBoundsException during restore.
Use stream alias when accessing VOLUME_SETTINGS array.
2009-07-27 02:12:30 -07:00
Ravi K Yenduri
974ff946d1 Add support for .aac and .asf extensions. 2009-07-24 11:26:30 -07:00
Eric Laurent
a553c25b33 Fix issue 1795088 Improve audio routing code
Initial commit for review.
Integrated comments after patch set 1 review.
Fixed lockup in AudioFlinger::ThreadBase::exit()
Fixed lockup when playing tone with AudioPlocyService startTone()
2009-07-23 06:03:39 -07:00
niko
bc72692780 Added native metadata support.
Metadata.java:
Fixed typo 8k != 8092. The comment was correct though.

In Metadata.h, the new Metadata class is declared in the ns android::media
to limit the chances of conflict with other packages.

The MetadataType in MediaPlayerInterface is gone and moved to Metadata as
an inner typedef.

Similarly the SortedVector<MetadataType> instance have been replace by a
new type Metadata::Filter.

All the keys declared in the java counterpart are also in Metadata.h.

Metadata.cpp:
Contains the implementation of the native metadata packing.

There an associated change in the opencore package that should go in
at the same time as this one.
2009-07-22 15:03:22 -07:00
Jean-Baptiste Queru
cf4550c319 donut snapshot 2009-07-21 11:16:54 -07:00
niko
6fa41bbb56 Minor cleanup in Metadata.java
Use a constant to express the size of a 32bits int.

In MediaPlayerMetadataParserTest, removed unused kTocken constant.
2009-07-20 13:53:29 -07:00
niko
c39173be32 Fixed a bug in the parser.
When we parse the metadata we check that there is enough data in the parcel by checking
 the byte availables and the size in the header.
Since the size is in the header has been read, we should make sure than dataAvailable() >= size - 4

This bug was hidden by some test code which has been removed.
2009-07-20 13:10:01 -07:00
Android (Google) Code Review
3e664221b6 Merge change 7747
* changes:
  Added 3 metadata types for pause/seek forward/seek backward.
2009-07-20 08:26:22 -07:00
Android (Google) Code Review
b8b117e1e7 am a8d5644b: Merge change 7726 into donut
Merge commit 'a8d5644b548263d68e2c9bfff58958b29c3525ff'

* commit 'a8d5644b548263d68e2c9bfff58958b29c3525ff':
  Fix issue 1985479	lots of backup NPEs.
2009-07-19 21:14:40 -07:00
Android (Google) Code Review
a8d5644b54 Merge change 7726 into donut
* changes:
  Fix issue 1985479	lots of backup NPEs.
2009-07-18 02:12:02 -07:00
Android (Google) Code Review
ab6ee15f8c am 474b0f29: Merge change 7686 into donut
Merge commit '474b0f2941430b97b4f24f16f7173e5249ccc8f2'

* commit '474b0f2941430b97b4f24f16f7173e5249ccc8f2':
  MediaScanner: Add check for null object in empty title handling code.
2009-07-17 15:42:59 -07:00
Nicolas Catania
716383a686 Added 3 metadata types for pause/seek forward/seek backward. 2009-07-17 13:26:44 -07:00
Eric Laurent
fd6e4820c6 Fix issue 1985479 lots of backup NPEs.
Check that stream type is not STREAM_BLUETOOTH_SCO before writting to settings.
2009-07-17 12:27:43 -07:00
Android (Google) Code Review
da3785ae9f Merge change 7624
* changes:
  Impl. of the metadata getters.
2009-07-17 12:00:28 -07:00
Mike Lockwood
bdc0e82f9c MediaScanner: Add check for null object in empty title handling code.
Signed-off-by: Mike Lockwood <lockwood@android.com>
2009-07-17 08:17:45 -04:00
Nicolas Catania
cb2e00eedc Impl. of the metadata getters.
In Metadata, implemented the method that unmarshall the data from
a metadata parcel an return java entities.

Add 2 new types of metadata (Boolean and Date) and fixed an issue
in TimedText: the w3c standard specify a duration as well as the
time to be played => added a duration field.

In MetadataParserTest.java:
Moved the util private methods at the bottom of the file.
Added new tests for the getters (GETTERS section)
2009-07-16 18:34:53 -07:00
Android (Google) Code Review
5b3f457845 am 58d19d1f: Merge change 7581 into donut
Merge commit '58d19d1f6321161fdcd10140fe7b9d9053f80bd2'

* commit '58d19d1f6321161fdcd10140fe7b9d9053f80bd2':
  Fix bug that would cause files with blank title tags to not be shown in the music app.
2009-07-16 17:54:27 -07:00
Marco Nelissen
55973f1aad Fix bug that would cause files with blank title tags to not be shown in the music app. 2009-07-16 14:12:11 -07:00
Nicolas Catania
a5ccb22a3d Partial implementation of the parsing of Parcel into Metadata.
In this first cut, a raw parcel is parsed to check that the overall
format is correct.

At the same time, we record the metadata seen and their position in
the parcel for later retrieval using the get* methods.

This means that the 'has' method to check the existence of a metadata
should work.

Removed size and iterator methods. Instead, I added a new method
to give access to the set of keys. The user can make use of the set
to call size(), empty(), iterator() etc...
2009-07-15 13:27:49 -07:00