245 Commits

Author SHA1 Message Date
Andreas Huber
b8de9578dc This hardware video decoder lies about its required input buffer sizes allocating 2.7 MB of memory instead of the required 176 KB... Added another quirk.
related-to-bug: 2281327
2010-02-22 14:58:45 -08: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
Marco Nelissen
8b799a323c Merge "Add support for "album artist" tag." 2010-02-11 13:43:40 -08:00
Marco Nelissen
c5d5ee34d7 Add support for "album artist" tag. 2010-02-11 13:32:04 -08:00
Mathias Agopian
000479f9e3 split libsurfaceflinger_client and libcamera_client out of libui 2010-02-11 13:16:22 -08:00
Andreas Huber
6ed937ebe9 Implementation of stagefright-enabled MediaPlayerService::decode functionality
related-to-bug: 2359268
2010-02-10 10:20:34 -08:00
Marco Nelissen
655306f8a8 Add support for the TPOS/TPA (disc number) id3 tag. 2010-02-08 14:50:19 -08:00
James Dong
e7038ace44 Camcorder profile Java API support
- Use Enum for Quality instead of int
- Use static values() method from Enum, rather than if-else

bug - 2417312
2010-02-04 13:47:36 -08:00
Andreas Huber
70d10c0156 Fix a deadlock caused by the AudioPlayer notifying the observer that the stream had ended at the same time the observer was shutting down the AudioPlayer.
related-to-bug: 2414536
2010-02-03 13:24:26 -08:00
Andreas Huber
b777bf3100 Don't use a HEAD request to determine redirects, instead do a regular GET (since that's always supported), also limit the number of redirects to avoid infinite redirects. Finally, properly handle the end of stream.
related-to-bug: 2403674
2010-02-02 13:54:57 -08:00
Andreas Huber
8cc1b2a32c Properly advertise the content length of the HTTP stream if available.
related-to-bug: 2312941
2010-02-02 10:38:40 -08:00
James Dong
705300b842 Merge "Initial check-in for xml-based encoder capabilities retrieval - Changed the Java API as suggested - Treat /etc/media_profiles.xml as the default xml configurtion file" 2010-02-01 22:48:36 -08:00
James Dong
c371194e4e Initial check-in for xml-based encoder capabilities retrieval
- Changed the Java API as suggested
- Treat /etc/media_profiles.xml as the default xml configurtion file
2010-02-01 22:38:37 -08:00
Andreas Huber
e331c7b2c4 The TI MP3 decoder lies about the number of channels it outputs, add a quirk for that. 2010-02-01 10:53:20 -08:00
Andreas Huber
62eac00850 Properly forward errors returned by AudioTrack up to the player.
related-to-bug: 2300197
2010-01-29 13:24:58 -08:00
Andreas Huber
433c9acaf7 Support the specification of additional HTTP headers in the creation of a DataSource.
related-to-bug: 2393577
2010-01-28 13:04:28 -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
Andreas Huber
46ce847a62 Fix http streaming for shoutcast servers that do not support http ranges.
related-to-bug: 2295438
2010-01-27 16:21:41 -08:00
Eric Laurent
0ebff76e95 Merge "Fix issue 2285561: New AudioFlinger and audio driver API needed for A/V sync" 2010-01-27 14:21:20 -08:00
Andreas Huber
8258879fe8 Merge "Better support for HTTP streaming media content, fixes to the way HTTPDataSource streams the data, prefetcher implementation." 2010-01-27 09:24:43 -08:00
Eric Laurent
0986e7907f Fix issue 2285561: New AudioFlinger and audio driver API needed for A/V sync
Added getRenderPosition() API to IAudioFlinger to retreive number of audio frames
written by AudioFlinger to audio HAL and by DSP to DAC.

Added getRenderPosition() API to AudioHardwareInterface to retreive number of audio frames
written by DSP to DAC.

Exposed AudioTrack::getPosition() to AudioSink() to make it available to media player.

Removed excessive log in AudioHardwareGeneric.
2010-01-26 18:40:39 -08:00
Andreas Huber
b9e63830c6 Better support for HTTP streaming media content, fixes to the way HTTPDataSource streams the data, prefetcher implementation.
related-to-bug: 2295438
2010-01-26 16:20:10 -08:00
Andreas Huber
996dddff64 Support for audio recording into AMR NB/WB files as well as audio tracks in MPEG4 files.
related-to-bug: 2295449
2010-01-26 09:10:33 -08:00
Eric Laurent
473bd77675 Merge "Fix issue 2378022: AudioService should direct volume control to STREAM_VOICE_CALL stream when STREAM_VOICE_CALL stream is active." 2010-01-25 17:16:05 -08:00
Andreas Huber
07bf09da4a Initial checkin of AudioSource and AMRWriter, a pair of classes supporting pure-audio recording in stagefright.
related-to-bug: 2295449
2010-01-25 16:17:40 -08:00
Eric Laurent
23f25cda0c Fix issue 2378022: AudioService should direct volume control to STREAM_VOICE_CALL stream when STREAM_VOICE_CALL stream is active.
Modified AudioService.getActiveStreamType() so that STREAM_VOICE_CALL is selected when a track using this stream
type is playing.

Chanded isMusicActive() for a more generic isStreamActive(stream) method in AudioSystem, IAudioFlinger and AudioFlinger.
2010-01-25 14:00:10 -08:00
Andreas Huber
52733b83a7 The qcom OMX video decoders do not allocate output buffer memory at the time OMX_AllocateBuffer is called, wait until we received the first FILL_BUFFER_DONE notification until we rely on the buffer data ptr. 2010-01-25 11:24:26 -08:00
Andreas Huber
c712b9fe28 Fix no-copy-overhead OMXCodec implementation to actually work. 2010-01-20 15:05:46 -08:00
Andreas Huber
61fa01d47d Merge "Support for 'iTunes-style' metadata in .mp4 and .3gp files." 2010-01-20 11:35:02 -08:00
Eric Laurent
243bf50e1e Merge "Create base class for audio policy manager." 2010-01-20 10:03:36 -08:00
Andreas Huber
c2c9dd3251 Support for 'iTunes-style' metadata in .mp4 and .3gp files.
related-to-bug: 2368967
2010-01-20 09:50:32 -08:00
Andreas Huber
cb6ffa2824 Merge "Avoid unnecessary buffer copying if at all possible, detect if running in the mediaserver process." 2010-01-19 11:43:12 -08:00
Andreas Huber
f1fe064d73 Avoid unnecessary buffer copying if at all possible, detect if running in the mediaserver process. 2010-01-19 10:57:57 -08:00
James Dong
34bbc22cbc Media server death nodification 2010-01-15 18:28:16 -08:00
Andreas Huber
1cb02bf661 Support for determining the mime type of media via metadata extraction. 2010-01-13 11:30:34 -08:00
Andreas Huber
3a3656ce8a More metadata support. 2010-01-13 10:45:49 -08:00
Eric Laurent
cef3cd7948 Create base class for audio policy manager.
First implementations of audio policy manager in Eclair branch have shown that most code is common to all platforms.
Creating AudioPolicyManagerBase base class will improve code maintainability and readability.

Audio policy manager code for platforms using generic audio previously in AudioPolicyManagerGeneric is replaced by AudioPolicyManagerBase.
Audio policy manager test code previously in AudioPolicyManagerGeneric is moved to AudioPolicyManagerBase.

Also added a wake lock for delayed commands in AudioPolicyService.
2010-01-13 09:25:13 -08:00
Andreas Huber
aee3c6394a Squashed commit of the following:
commit f81bb1dac5ef107bb0d7d5d756fb1ffa532ba2cc
Author: Andreas Huber <andih@google.com>
Date:   Mon Jan 11 14:55:56 2010 -0800

    Support for duration metadata, midi and ogg-vorbis files (in mediascanner)

commit 0b1385a0dc156ce27985a1ff757c4c142fd7ec39
Author: Andreas Huber <andih@google.com>
Date:   Mon Jan 11 14:20:45 2010 -0800

    Refactor meta data logic. Container specific metadata is now also returned by the MediaExtractor.

commit f9818dfac39c96e5fefe8c8295e60580692d5990
Author: Andreas Huber <andih@google.com>
Date:   Fri Jan 8 14:26:09 2010 -0800

    A first pass at supporting metadata through ID3 tags.

commit 476e9e253633336ab790f943e2d6c0cd8991d76a
Author: Andreas Huber <andih@google.com>
Date:   Thu Jan 7 15:48:44 2010 -0800

    Initial checkin of ID3 (V2.2 and V2.3) parser for use in stagefright.

related-to-bug: 2295456
2010-01-12 09:14:15 -08:00
Andreas Huber
e4a838051d Reorganize some of the stagefright implementation related to metadata. 2010-01-08 11:54:36 -08:00
Eric Laurent
cf4fc6263c am f31f365a: am eb5ffc23: Merge change Id8e98194 into eclair
Merge commit 'f31f365a7708c931e955670bc6213fdc8f91a87a'

* commit 'f31f365a7708c931e955670bc6213fdc8f91a87a':
  Fix issues 2333450 and 2333559:
2009-12-22 23:46:16 -08:00
Eric Laurent
f31f365a77 am eb5ffc23: Merge change Id8e98194 into eclair
Merge commit 'eb5ffc239b6482b9c1e046f6f5872187043d852c' into eclair-plus-aosp

* commit 'eb5ffc239b6482b9c1e046f6f5872187043d852c':
  Fix issues 2333450 and 2333559:
2009-12-22 23:41:59 -08:00
Eric Laurent
eb14a783be Fix issues 2333450 and 2333559:
Add new config values to AudioSystem::FOR_DOCK force usage to differenciate car and desk docks.
Use a receiver for the sticky Intent.ACTION_DOCK_EVENT in AudioService to detect the type
of dock and select force usage accordingly.
2009-12-22 16:20:46 -08:00
Andreas Huber
b5c6be6db2 am 082e5171: Merge change I895fb7d7 into eclair-mr2
Merge commit '082e51712ab9c9ce94eaee88797bbdbc80b2004d' into eclair-mr2-plus-aosp

* commit '082e51712ab9c9ce94eaee88797bbdbc80b2004d':
  Squashed commit of the following:
2009-12-17 10:23:46 -08:00
Andreas Huber
2ea14e2319 Squashed commit of the following:
commit 144b1c40e9cf08a584c50e1bef7ba3f287e81a4f
Author: Andreas Huber <andih@google.com>
Date:   Wed Dec 16 09:28:23 2009 -0800

    This H264 file shows a certain problem even better.

commit 3245f1f3b7471975aeeb824a756c987abd610f55
Author: Andreas Huber <andih@google.com>
Date:   Wed Dec 16 09:20:08 2009 -0800

    Using only the QA testfiles now.

commit 074817eb3816c5dd70858a3594e3b92d799d873b
Author: Andreas Huber <andih@google.com>
Date:   Tue Dec 15 16:17:39 2009 -0800

    Yay, roles are back again now that the API is in place.

commit 6d847e4932cc38301ae27cb7283b7f1553a95457
Author: Andreas Huber <andih@google.com>
Date:   Tue Dec 15 13:01:20 2009 -0800

    Added commandline option for specifying the random seed for reproducable tests.

commit 62ab37b26336eaa67e49791c41c996acb6acee3f
Author: Andreas Huber <andih@google.com>
Date:   Mon Dec 14 10:53:27 2009 -0800

    When issuing a seek it is important that only the first MediaSource::read call has the seek option.

commit e77c46644b2fb6862bafa3569f7d304252074f1e
Author: Andreas Huber <andih@google.com>
Date:   Mon Dec 7 16:39:07 2009 -0800

    Make sure the tests are actually built, sp<OMXCodec> becomes sp<MediaSource>

commit 6df56915bd55a9445b3c6f953d3cc251d81579b8
Author: Andreas Huber <andih@google.com>
Date:   Thu Dec 3 14:25:36 2009 -0800

    Temporarily disable support for querying the roles of OMX components.

commit 31bb26930df9e3658dea684cedb4b0f1a06a4a88
Author: Andreas Huber <andih@google.com>
Date:   Tue Dec 1 13:36:52 2009 -0800

    Disregard EOS events, slightly change the way the EOS flag on output buffers is handled.

commit 4c382fbc9aebee8197d5988d04378062809e7c48
Author: Andreas Huber <andih@google.com>
Date:   Tue Dec 1 09:37:24 2009 -0800

    New random seek test for the codec tests. Fixed "sticky" end-of-output-buffers flag behaviour in OMXCodec.

commit c762eac3e44309592b61a168d66e091cf609fa03
Author: Andreas Huber <andih@google.com>
Date:   Tue Nov 3 14:13:43 2009 -0800

    Fix a typo.

commit 50540a59b65c7d476b0193c7494cd75895e6ca6d
Author: Andreas Huber <andih@google.com>
Date:   Tue Nov 3 09:48:35 2009 -0800

    Some more fine tuning of the unit tests, make MPEG4Extractor less verbose.

commit 1157a7e52a0636706caa235abe16d2ff8a0b8140
Author: Andreas Huber <andih@google.com>
Date:   Wed Oct 28 12:01:01 2009 -0700

    Changes to the IOMX::listNodes API, this now returns the component's roles as well, unit tests now test all components in all supported roles by default.

commit 30fbf2d8c6cb927689f7ba75eb550a81e9df488a
Author: Andreas Huber <andih@google.com>
Date:   Mon Oct 26 09:45:26 2009 -0700

    Initial check-in of unit tests for OMX components.
2009-12-17 09:28:15 -08:00
Andreas Huber
d934479100 am d980e656: Merge change Ic7e91eee into eclair-mr2
Merge commit 'd980e656baa842592944c6fed371c9b37b2feea9' into eclair-mr2-plus-aosp

* commit 'd980e656baa842592944c6fed371c9b37b2feea9':
  Add a new API to support determining the roles of an OMX component specified by name. Remove unneeded OMXSoftwareCodecsPlugin.
2009-12-15 15:38:40 -08:00
Andreas Huber
c7e91eee2e Add a new API to support determining the roles of an OMX component specified by name. Remove unneeded OMXSoftwareCodecsPlugin. 2009-12-15 15:22:08 -08:00
Andreas Huber
28fdcf93bd am 08945576: Merge change I9ac0777e into eclair-mr2
Merge commit '089455760c05289c1315268a6cb896577ceebc64' into eclair-mr2-plus-aosp

* commit '089455760c05289c1315268a6cb896577ceebc64':
  Initial checkin of software AMR NB encoder based on PV source code.
2009-12-11 15:44:59 -08:00
Andreas Huber
d49b526dd2 Initial checkin of software AMR NB encoder based on PV source code. 2009-12-11 15:09:31 -08:00
Jean-Michel Trivi
899858a396 am 6608bd0d: am 86ed86d2: Merge change I0f73439a into eclair
Merge commit '6608bd0d3af3f9c365b73f8b19d9ec0b7d5ee70b' into eclair-mr2-plus-aosp

* commit '6608bd0d3af3f9c365b73f8b19d9ec0b7d5ee70b':
  Partially fix bug 2111240 Detect docking / undocking event by reporting
2009-12-10 16:58:35 -08:00
Jean-Michel Trivi
6608bd0d3a am 86ed86d2: Merge change I0f73439a into eclair
Merge commit '86ed86d2260932bdf2217b1d8431ac9e04d47534' into eclair-mr2

* commit '86ed86d2260932bdf2217b1d8431ac9e04d47534':
  Partially fix bug 2111240 Detect docking / undocking event by reporting
2009-12-10 16:46:13 -08:00