2060 Commits

Author SHA1 Message Date
James Dong
a7f5e476d5 Merge "Fixed a bug in the query to the supported profiles and levels" into gingerbread 2010-09-16 11:45:01 -07:00
James Dong
dfb89914d4 Fixed a bug in the query to the supported profiles and levels
According to OMX spec, the levels returned is the max level settings.
In fact, we could not enum all the levels.

Change-Id: Ib1cba74100512800a5761c7567894c7ea5b5a452
2010-09-16 11:34:20 -07:00
Andreas Huber
45922df0f2 Sometimes the avc software decoder will signal that a frame is ready but then unexpectedly fail to return the frame... stop asserting on that and return an error instead.
Change-Id: I6c0782b51b57e9be0fd410bd34078dc3c2b088d6
related-to-bug: 3005156
2010-09-16 10:25:34 -07:00
Andreas Huber
8946ab2618 A ThreadedSource wraps around an existing MediaSource and reads output buffers on a separate thread. It's now used for the vpx decoder to decode frames ahead of time to improve playback performance.
Change-Id: I57a798b00adeb2c8056e85aab29a2b57aef00b63
2010-09-16 09:44:40 -07:00
Eric Laurent
37de5da03b Merge "Fix problem in lvm effect bundle wrapper" into gingerbread 2010-09-16 09:04:37 -07:00
Eric Laurent
f0f95b8bc5 Fix problem in lvm effect bundle wrapper
When an effect was deleted while enabled, the count of enabled effects
in the bundle was not decremented. Resulted a state where if another effect
was still enabled, its process function was called only every other time.

Change-Id: I59a0c5b7f50f416a9ecadae297b42912e56ddd51
2010-09-16 09:02:16 -07:00
Andreas Huber
24a2c2b596 Merge "Upgrade to the latest .webm project code." into gingerbread 2010-09-15 16:23:06 -07:00
Andreas Huber
e5f853911c Upgrade to the latest .webm project code.
Change-Id: I645eff9b7c10bf33144977e6093663407af402e2
2010-09-15 15:13:16 -07:00
James Dong
82a39f4aab Merge "Add some explicit error log messages" into gingerbread 2010-09-15 14:51:57 -07:00
James Dong
9f882c0b10 Merge "Fix audio input sample timestamp when audio driver loses audio samples" into gingerbread 2010-09-15 14:51:49 -07:00
Andreas Huber
9909b948ac Merge "Various fixes to improve resilience of the rtsp stack against spurious errors instead of asserting." into gingerbread 2010-09-15 11:25:40 -07:00
Andreas Huber
f3d2bdf73c Various fixes to improve resilience of the rtsp stack against spurious errors instead of asserting.
Change-Id: Idbec5996ed0675c70e911b9c0514961fea099fb4
2010-09-15 11:18:13 -07:00
James Dong
b5024daa6c Add some explicit error log messages
Change-Id: I8a69157b75a67f0d3c19f05775a8cb0629232299
2010-09-14 14:39:32 -07:00
James Dong
7589ebfbfd Fix audio input sample timestamp when audio driver loses audio samples
Change-Id: Ic0f1489f710929af50e7714867ae5153b3242dd8
2010-09-14 13:21:08 -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
27a2fdfb8a Fix volume problems with insert revert
- Use a constant input level to the reverb engine and implement volume control in the
insert reverb. This avoids the volume spikes when an effect that was inserted after
the reverb is disabled or removed.
- Fix clicks (one silent buffer) at the end of the reverb disable period.
- Modified volume management in audioflinger so that the volume ramp is also done by
the insert effect if present when the track is paused (avoids clicks).
- Increased room level for all presets.

Also fixed problems with output stage session (-1):
- effect bundle wrapper was not designed to support session -1
- the permission check in audioflinger for using session -1 failed due to a wrong usage of
getCallingPid()

Change-Id: Id1ff51327263364bf71d3f2668fa5cde4311d84f
2010-09-13 09:08:28 -07:00
James Dong
4709c7faaa Merge "Fixed a copy and paste error" into gingerbread 2010-09-10 11:21:42 -07:00
Eric Laurent
2814ad2557 Merge "LVM release 1.09 delivery" into gingerbread 2010-09-10 10:24:02 -07:00
James Dong
8d3b9100a6 Fixed a copy and paste error
Change java/lang/IOException to java/lang/RuntimeException
since there is no java/lang/IOException while keeping
the signature of the MediaRecorder class
constructor unchanged.

Change-Id: Id9b9aa55db42bef528069ef1e2102038391bc15f
2010-09-10 08:49:14 -07:00
Andreas Huber
4b3d32bb1b TimedEventQueue now explicitly sets its scheduling policy to foreground as it should.
Change-Id: I630c9fb51686d87a4075f01a6d7f6f9139ddcb4b
related-to-bug: 2944452
2010-09-09 16:14:02 -07:00
Eric Laurent
305443c989 LVM release 1.09 delivery
- Reverb:
	- 1 channel mixed has gain zero
	- core componenet now only outputs STEREO samples
	- wrapper now handles only STEREO from the Reverb Core
- Bass Boost:
	- increase scratch memory

Change-Id: I00ae31051cc40a7006fc993420facfeb4d30dc52
2010-09-09 12:02:58 -07:00
Andreas Huber
f3de053c0a Merge "Instead of asserting return a runtime error if the maximum sample size cannot be determined." into gingerbread 2010-09-09 10:13:26 -07:00
James Dong
5c43a7af7b Merge "When 32-bit offset is used, if the requested max file size is greater than the 32-bit offset limit, set the limit to the max 32-bit offset limit." into gingerbread 2010-09-09 10:13:08 -07:00
Andreas Huber
d7f2225e74 Instead of asserting return a runtime error if the maximum sample size cannot be determined.
Change-Id: Icf17ed04323f5415e0f9f1e4fd9f19ca60ce15ac
related-to-bug: 2602446
2010-09-09 10:10:15 -07:00
Andreas Huber
3e0f2be7d6 Instead of asserting, publish no tracks if an MP3Extractor is used on non-mp3 content.
Change-Id: I26db4524c5306bf2346438d2bd359c5cfb95cead
related-to-bug: 2900419
2010-09-09 09:48:41 -07:00
James Dong
a4fb816bd5 When 32-bit offset is used,
if the requested max file size is greater than the 32-bit offset limit,
set the limit to the max 32-bit offset limit.

Change-Id: Ie74cbed98469721d4280a0b87491e888948f0046
2010-09-08 17:56:11 -07:00
James Dong
d353c840ad Merge "HW audio encoder expects timestamp via kKeyTime from each input buffer" into gingerbread 2010-09-08 17:51:59 -07:00
James Dong
d015ccf62b HW audio encoder expects timestamp via kKeyTime from each input buffer
- This fixes media server crashes on droid

Change-Id: I7191cadc5275107425ec3ee3d437b2c5295858dc
2010-09-08 17:28:57 -07:00
Eric Laurent
95d5de0681 Modify type of some environmental reverb parameters
Changed type of decay time, reverb delay and reflections delay parameters
from signed to unsigned int to match OpenSL ES interface definition.

Also fixed some type casts in lvm reverb wrapper.

Change-Id: I5ca5e76a87c2590f01f031f3168355586ef22556
2010-09-08 16:06:18 -07:00
Eric Laurent
7e427934e6 Merge "LVM release 1.08 delivery." into gingerbread 2010-09-03 16:35:54 -07:00
James Dong
9077f8ec93 Merge "Not all audio source has the drift time information" into gingerbread 2010-09-03 15:42:09 -07:00
Eric Laurent
5fa6df6ebf LVM release 1.08 delivery.
- Changed bundle SamplesToExit to 0.1 secs
- Added SamplesToExit to Revreb
- Removed mixer from Core reverb

Change-Id: I675ec22889f20ef35a0ac427600c2654111c397e
2010-09-03 15:22:18 -07:00
Andreas Huber
9fee0b2a02 Ogg files can be tagged to be automatically looping, this setting always overrides the MediaPlayer's setLooping setting.
Change-Id: Ifb564c6cdf6137eac14869f9ca7d471f05a5556a
related-to-bug: 2974691
2010-09-03 14:31:50 -07:00
Andreas Huber
cc4a38c60f Merge "Properly buffer a certain amount of data on streaming sources before finishing prepare()." into gingerbread 2010-09-03 13:46:02 -07:00
Andreas Huber
87ab9cdd0f Properly buffer a certain amount of data on streaming sources before finishing prepare().
Change-Id: I39bf3c6dafcbe003b51dea4795742dcd8548f207
related-to-bug: 2875110
2010-09-03 13:44:42 -07:00
James Dong
3caa71483f Not all audio source has the drift time information
Change-Id: I74e502376348ca4a6ffaa7492bed35c1355e7e62
2010-09-03 12:01:55 -07:00
James Dong
7755cdd696 Remove unused/debugging code from MP4 file writer
o also makes nal length in the recorded file modifiable at runtime

Change-Id: I731b4dde7070d8d9628b36b523a5b2c011c7c2cf
2010-09-03 10:13:19 -07:00
James Dong
cb7e65c6cb Better file size estimate
When the recorded file becomes large, the metadata size can
no longer be ignored. This makes it possible to save the
recorded file when the storage becomes almost full at the
end of the recording session.

Change-Id: Ief038080f825c9946ce550949c03e914aec1e31a
2010-09-02 20:10:00 -07:00
James Dong
4c23815c39 Calculate audio media drift time from AudioSource
The problem was that the time to receive an output buffer
from an audio encoder is different because the encoder does not
need to read from the source for all output buffers. This leads
to large fluctuation in terms of wall clock duration between two
neighboring audio sample outputs from the audio encoder. As a
result, the media time for the video track after adjustment using
the drifting changes wildly sometimes.

This patch addresses this issue by only updating the media drift
time when an audio source input buffer is read. the wall clock
for the audio track is also calculated at the same time when
the input audio buffer is read at AudioSource.

bug - 2959800

Change-Id: I3174aa182f744784b540f0a7198524d4eee8bd7b
2010-09-01 20:45:39 -07:00
Andreas Huber
a2511da9d6 Merge "Better support for buffered streaming of rtsp content, if buffer drops below a certain threshold we will temporarily pause playback until we have sufficient data." into gingerbread 2010-09-01 15:44:46 -07:00
James Dong
d3c1bae4eb Merge "Make sure that if initialization fails, AudioSource still behaves well." into gingerbread 2010-09-01 15:41:10 -07:00
Andreas Huber
4d8f66bce3 Better support for buffered streaming of rtsp content, if buffer drops below a certain threshold we will temporarily pause playback until we have sufficient data.
Change-Id: Ice8564e902e48c89c9c00f6651c5504b3c41fcad
related-to-bug: 2556656
2010-09-01 15:05:28 -07:00
James Dong
a87544b35f Make sure that if initialization fails, AudioSource still behaves well.
Change-Id: I16dfc90bcb8a324d6ee9a38a5a1a31cc094c820a
2010-09-01 14:11:28 -07:00
Andreas Huber
6c33904ad9 Merge "Now that AmrInputStream no longer relies on opencore, make sure it's registered in non-opencore builds." into gingerbread 2010-09-01 13:54:12 -07:00
Andreas Huber
412fc7cdb6 Merge "Keep gtalk video chat specific code consistent with rtsp changes." into gingerbread 2010-09-01 13:39:27 -07:00
Andreas Huber
8d7d413959 Now that AmrInputStream no longer relies on opencore, make sure it's registered in non-opencore builds.
Change-Id: Ia9748691ba60d3c4b5fcaf319ed0b4493d69abc6
related-to-bug: 2963846
2010-09-01 13:27:14 -07:00
Andreas Huber
4dcc6a1020 Properly extract all raw_data_blocks from an ADSP mpeg4 audio buffer.
Change-Id: I15e21eae50beb6057024ea42a7e9bf3b8d8a0603
related-to-bug: 2368598
2010-09-01 12:25:36 -07:00
Andreas Huber
27b9c8ec16 Keep gtalk video chat specific code consistent with rtsp changes.
Change-Id: I5f3f46c2150e16b26674432e427f79c04a69cd8e
2010-09-01 09:27:47 -07:00
Eric Laurent
a92ebfa1cd Audio Effects: fix problems in volume control.
- Fixed click when re-enabling effect during the turn off phase:
make sure the effect states where effect is processed are the same
where volume control is delegated to effect.
- Fixed click when effect is deleted while still active: do not apply
volume ramp if an effect having volume control was just removed from the
effect chain.

Also fixed a crash when PCM dump is enabled in effect bundle wrapper.

Change-Id: Ib562f5cf75c69af75df0e862536262e2514493e4
2010-08-31 15:26:23 -07:00
Andreas Huber
48ac68e1b1 Merge "Support for RFC3640 - mpeg4-generic RTP packet type, AAC-lbr and AAC-hbr." into gingerbread 2010-08-31 14:54:37 -07:00