Commit Graph

43 Commits

Author SHA1 Message Date
Eric Laurent
1a5149e5d7 Fix issue 3022800.
- Created sub-package android.media.audiofx for audio effects.
- Hid AudioEffect class contructor, methods and variables not needed by
applications
- Added more javadoc comments for AudioEffect Class

Change-Id: Ibbb40d4e714bb248aa32cf82d7763d74efae96d1
2010-09-23 11:04:03 -07:00
Eric Laurent
d09af7d551 Added intents for audio effects control application
Added intents to launch audio effects control panel UI and
communicate playback state from media player applications
to effect control application/service.

Change-Id: Iede23ae11fa9f0802df5f36299dd80ea57eda376
2010-09-14 09:55:30 -07:00
Eric Laurent
17cb280e7f NEW_API: Unhide audio effect APIs.
This change unhides all public APIs for controling audio effects exposed
by the following classes:
- AudioEffect
- BassBoost
- EnvironmentalReverb
- Equalizer
- PresetReverb
- Virtualizer
- Visualizer

Also fixes several problems in javadoc.

Change-Id: I541ee4ad0232312ec720545737cbcdb8c9a82597
2010-08-04 08:31:01 -07:00
Eric Laurent
7070b36549 Added support for auxiliary audio effects to AudioTrack and MediaPlayer.
Added methods to AudioTrack and MediaPlayer java classes to enable use of
auxiliary audio effects. The effect can be attached and detached by specifying its
ID and the send level controlled.

Change-Id: Ie74ff54a453096a742688476f612ce355543b6f3
2010-07-21 06:28:01 -07:00
Eric Laurent
619346f902 Added support for audio sessions in MediaPlayer and AudioTrack.
Audio sessions are used to associate audio effects to particular instances (or groups) of MediaPlayers or AudioTracks.

Change-Id: Ib94eec43241cfcb416590f435ddce7ab39a07640
2010-06-22 17:14:04 -07:00
Andreas Huber
4d61f602bf Switch stagefright's approach to prefetching to the new model. The java MediaPlayer is now notified about rebuffering start/end via info messages.
Change-Id: If8185ba329ce8b6663b1ad39a4efb0ad3be81df2
2010-06-10 15:16:57 -07:00
James Dong
c40209ac60 am 28a92b2e: Merge "Fix a Javadoc to clarify when setAudioStreamType() should be called." into froyo
Merge commit '28a92b2e76a13c18dc23e5239717b122a174182f' into froyo-plus-aosp

* commit '28a92b2e76a13c18dc23e5239717b122a174182f':
  Fix a Javadoc to clarify when setAudioStreamType() should be called.
2010-06-03 11:27:19 -07:00
James Dong
9d96354d70 Fix a Javadoc to clarify when setAudioStreamType() should be called.
bug - 2737926

Change-Id: I8718c3d1a544cf5cb1b7e98b6c24fe0e6d3574ba
2010-06-03 10:37:28 -07:00
The Android Open Source Project
c8652199d1 merge from open-source master
Change-Id: I20fa79289d84a892def9e7f6d6e7026d9de48010
2010-04-28 15:50:56 -07:00
hugh kennedy
c6f8ea4cf2 speling fix
Change-Id: Ia9db6e1c5d1cd31fd028d551cc357a76049ce137
2010-04-28 15:04:10 -04:00
Andreas Huber
fbb3885024 New API on java's MediaPlayer to suspend/resume a session.
related-to-bug: 2231576
2010-02-12 12:44:10 -08:00
Andreas Huber
2564300936 API Extension: Support for optionally specifying a map of extra request headers when specifying the uri of media data to be played.
related-to-bug: 2393577

Original change by Andrei Popescu <andreip@google.com>
2010-01-28 11:52:43 -08:00
gwang@google.com
1509731864 am 521f4f3a: Merge change I3d6cf8aa into eclair
Merge commit '521f4f3af94e3a093a37af887d3e317a526b61a1' into eclair-plus-aosp

* commit '521f4f3af94e3a093a37af887d3e317a526b61a1':
  Fix for bug 2158794. Hide MediaPlayer.invoke() and MediaPlayer.newRequest(), and Fix bad links in ToneGenerator documentation.
2009-10-07 11:57:45 -07:00
Marco Nelissen
38729e69ad am c39d2e3c: Music visualizer support hack. This currently assumes 44k stereo (won\'t crash on other formats, but won\'t give the correct results either), and links statically with libspeex to get FFT data, increasing the size of libmedia by about 45kb.
Merge commit 'c39d2e3c012fb96999991e30659a474f9f30f789' into eclair-plus-aosp

* commit 'c39d2e3c012fb96999991e30659a474f9f30f789':
  Music visualizer support hack.
2009-10-07 11:52:39 -07:00
gwang@google.com
ed2247dc68 am 3e655688: am 521f4f3a: Merge change I3d6cf8aa into eclair
Merge commit '3e655688728e352e51dc9718490589f1bfb8622d' into eclair-mr2-plus-aosp

* commit '3e655688728e352e51dc9718490589f1bfb8622d':
  Fix for bug 2158794. Hide MediaPlayer.invoke() and MediaPlayer.newRequest(), and Fix bad links in ToneGenerator documentation.
2009-10-06 15:53:10 -07:00
gwang@google.com
3b49e9b525 Fix for bug 2158794. Hide MediaPlayer.invoke() and MediaPlayer.newRequest(), and Fix bad links in ToneGenerator documentation. 2009-10-06 14:48:09 -07:00
Marco Nelissen
2c3dc14acb am a97402e1: am c39d2e3c: Music visualizer support hack. This currently assumes 44k stereo (won\'t crash on other formats, but won\'t give the correct results either), and links statically with libspeex to get FFT data, increasing the size of libmedia by about 45kb.
Merge commit 'a97402e1cbadbdc874afa9ffdbd23f1c62fb8177' into eclair-mr2-plus-aosp

* commit 'a97402e1cbadbdc874afa9ffdbd23f1c62fb8177':
  Music visualizer support hack.
2009-10-06 10:03:12 -07:00
Marco Nelissen
c39d2e3c01 Music visualizer support hack.
This currently assumes 44k stereo (won't crash on other formats, but won't give the correct results either), and links statically with libspeex to get FFT data, increasing the size of libmedia by about 45kb.
2009-10-06 08:51:16 -07:00
Jean-Baptiste Queru
e525eef4b8 merge from open-source master 2009-09-16 16:22:13 -07:00
Jean-Baptiste Queru
ea5f767246 Update documentation for getVideoWidth and getVideoHeight.
Ref: http://code.google.com/p/android/issues/detail?id=3024
2009-09-16 15:06:25 -07:00
Jean-Baptiste Queru
85a2c7f1ca merge from open-source master 2009-09-01 11:46:14 -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
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
cf4550c319 donut snapshot 2009-07-21 11:16:54 -07:00
Nicolas Catania
5d55c71198 Basic plumbing to retrieve metadata from the native player.
IMediaPlayer.h
Added a getMetadata method that mirrors the on in MediaPlayer.java.

MediaPlayer.java
Added a native method to get the metadata from the native player.
Parse the parcel into a Metadata object.

Metadata.java
Added a stub to parse the Parcel returned by the native player into
a set of metadata.

android_media_MediaPlayer.cpp
JNI call to forward the getMetadata call.

MediaPlayerService.cpp
MediaPlayerService::Client implements the new getMetadata method added in IMediaPlayer.h
2009-07-10 11:00:42 -07:00
Nicolas Catania
b2c693919b Implemented the metadata changed notification filters.
IMediaPlayer:
new setMetadataFilter method so set a filter (2 lists of allowed and blocked metadata type)
serialized in a Parcel.

MediaPlayer.java/android_media_MediaPlayer.cpp/mediaplayer.cpp
new setMetadataFilter that passes the filter down to the MediaPlayerService's binder interface.

MediaPlayerService.cpp
The Client inner class holds the allowed and blocked metadata types.
These are in 2 vectors that get populated in the setMetadataFilter.

A new shourldDropMetadata method returns true if a type of metadata should be dropped according
to the filters.

The notify method in run the metadata update notifications thru the filter and possibly drop them.
2009-07-09 11:46:02 -07:00
Nicolas Catania
9193e08dc1 New Metadata API for the MediaPlayer.
MediaPlayer.java
New method getMetadata to fetch metadata from the player.
New method setMetadataFilter to filter metadata notification and fetches.

Metadata.java
Added basic interface. Implementation incomplete.
2009-07-08 09:47:29 -07:00
Nicolas Catania
20cb94eeb5 Direct api to the native media player.
MediaPlayer.java has 3 new methods:
* newRequest creates a Parcel that can be used to send data to the
  native player using invoke.
* invoke issues synchronous calls to the native player using opaque
  parcels for the request and reply.

IMediaPlayer.h has 1 new abstract method:
* invoke

The Midi and Vorbis players have a stub for these. So far only PV
makes use of that new feature.

To avoid any copy overhead, the JNI interface uses Parcel as a java
object (no serialization/copy happens at the JNI layer).

The remote interface token is inserted when the Parcel is constructed
in java. That way the parcel is already routable when it reaches
 IMediaPlayer.cpp (proxy). No extra copy is needed there.
2009-06-24 08:22:52 -07:00
Nicolas Catania
32f8277488 Removed trailing whitespaces. 2009-06-11 16:54:48 -07:00
Marco Nelissen
a2df60598a Print a message to the log when a file can't be opened on the client side. 2009-06-09 15:49:23 -07:00
Dave Sparks
8b0b174198 Update MediaPlayer to allow setVideoSurface calls after prepare. Also allow
passing a null surface. The API is now enabled to change the surface while
the video is playing. This could allow orientation changes during playback
or to allow the audio track from a video to play in the background.
NOTE: There are still changes required to pmem driver to allow remapping
shared physical memory into a process in order for this to work. This
change only enables the API to send the appropriate calls when the lower
level code supports it.
2009-05-29 13:51:38 -07:00
Niko Catania
4a0029f95d Automated import from //branches/donutburger/...@141213,141213 2009-03-24 19:51:09 -07:00
The Android Open Source Project
c2ad241504 auto import from //branches/cupcake_rel/...@141571 2009-03-19 23:08:54 -07:00
The Android Open Source Project
105925376f auto import from //branches/cupcake_rel/...@140373 2009-03-18 17:39:46 -07:00
The Android Open Source Project
c39a6e0c51 auto import from //branches/cupcake/...@137873 2009-03-11 12:11:56 -07:00
The Android Open Source Project
9066cfe988 auto import from //depot/cupcake/@135843 2009-03-03 19:31:44 -08:00
The Android Open Source Project
d83a98f4ce auto import from //depot/cupcake/@135843 2009-03-03 18:28:45 -08:00
The Android Open Source Project
076357b856 auto import from //depot/cupcake/@132589 2009-03-03 14:04:24 -08:00
The Android Open Source Project
3dec7d563a auto import from //depot/cupcake/@137055 2009-03-02 22:54:33 -08:00
The Android Open Source Project
d24b8183b9 auto import from //branches/cupcake/...@130745 2009-02-10 15:44:00 -08:00
The Android Open Source Project
f013e1afd1 Code drop from //branches/cupcake/...@124589 2008-12-17 18:05:43 -08:00
The Android Open Source Project
54b6cfa9a9 Initial Contribution 2008-10-21 07:00:00 -07:00