2122 Commits

Author SHA1 Message Date
Andreas Huber
8370be11de Better handling of rtsp connection and disconnection.
Change-Id: Ib126af6c14c5a212a51a5ee3c4a0a7d1860ad167
2010-08-23 11:28:34 -07:00
James Dong
3f51fa78ad Runtime dump support for MediaWriter
Change-Id: I10b2c474de612ee4cef4b7c9eae2ee1dd8c2e895
2010-08-23 10:34:05 -07:00
Chia-chi Yeh
b80e610b07 Merge "Visualizer: replace the FFT implementation with a faster one." into gingerbread 2010-08-22 18:31:15 -07:00
Eric Laurent
a1a96f3570 LVM release 1.05 delivery
- Click have been removed from the HP filter activation in the BassBosst Effect.
- SessionId is now stored as a SessionNo
- Effects now stop being called after a delay
- Unix EOL fixed for .java and .xml
- Updated lines limited to 100 characters.
- Removed the remaining warnings from the wrapper code
- Added reverb

Change-Id: I03a2b3b5ee2286958f4901acc8d9b0daf9e2d7c6
2010-08-20 14:17:41 -07:00
Nipun Kwatra
fb45748a1e setParamMaxFileDurationUs should allow zero time input as per API of setMaxDuration.
according to MediaRecorder::setMaxDuration documentation we should disable duration limit
when zero or negative time is passed. Currently setParamMaxFileDurationUs was treating
zero/negative as an error case. Fixed that.

Change-Id: I468c3bcc74cb5a34ee3e172cef5147550d6be096
2010-08-20 14:06:48 -07:00
James Dong
9767dbf923 Only add 4 bytes offset for the output media buffer when SPS is not received for SW AVC encoder
Change-Id: Ia64c2751b6304e5d5891416bf23ff9b8ec54d5ef
2010-08-19 21:13:35 -07:00
James Dong
0ea4ed3bbb Don't drop a late frame which may lead to missing I frames in the MP4 file
Change-Id: I8fef1454264230c1369561670236eb0a19ae4e76
2010-08-19 18:04:27 -07:00
James Dong
62948fa4de Return error from MPEG4Writer stop() if the check on codec specific data failed
Change-Id: Icbd08eec9b4201facbad56ff2040f0830cfb0115
2010-08-19 14:04:04 -07:00
James Dong
cbd038fe20 Merge "Make MediaWriter stop and pause return errors if necessary" into gingerbread 2010-08-19 13:59:32 -07:00
James Dong
d036662470 Make MediaWriter stop and pause return errors if necessary
o Make the API consistent with SF framework, which the MediaSource
  provides a return status for stop

o Also, helps to convey errors that occurred right when a
  premature stop() is called, leading to a potentially
  mal-formed output file.

Change-Id: I52a932345f38570fdf8ea04d67d73dd94ccd30ef
2010-08-19 13:33:13 -07:00
Andreas Huber
a979ad6739 Support for MP4V-ES packetization format according to RFC3016.
Change-Id: I5e182936c52f9eb80cdcf6132ead03705ee32d61
2010-08-19 11:18:35 -07:00
Andreas Huber
f0ad548461 Merge "In the absence of width/height information in the sdp, extract the dimensions from the avc codec specific data." into gingerbread 2010-08-19 10:54:21 -07:00
Eric Laurent
1aaba885de Merge "Audio Effects: fixed "strength supported" parameter size." into gingerbread 2010-08-19 10:42:36 -07:00
Andreas Huber
eef3c33e56 In the absence of width/height information in the sdp, extract the dimensions from the avc codec specific data.
Change-Id: I98c4194593c7e6e24f6fc339c862245111800293
2010-08-19 10:39:47 -07:00
Andreas Huber
8c192fe990 Merge "Better support for rtsp streamed through VLC. Temporarily make the socket blocking to read all of the session description." into gingerbread 2010-08-19 09:09:12 -07:00
Chia-chi Yeh
58d3bd0810 Visualizer: replace the FFT implementation with a faster one.
This implementation uses fixed points instead of floating points. It
is slightly inaccurate compared to the old one but still perfect for
visualization purpose. It runs 40% faster on passion, 5 times faster
on sholes, and of course 14 times faster on sapphire.

Change-Id: I1e868417bcffda091becf106a7b941d02813faec
2010-08-19 16:05:32 +08:00
Eric Laurent
ba8da2e61b Audio Effects: fixed "strength supported" parameter size.
The "strength supported" parameter for bass boost and virtualizer effect was incorrectly using a
short value whereas it should be an int. This is to comply to the definition of boolean type in OpenSL ES
that is uint32.

Change-Id: I74ccb61dcc70fc9d390524a1ca5bbbd8b13ab1af
2010-08-18 14:31:25 -07:00
Andreas Huber
af063a67b2 Better support for rtsp streamed through VLC. Temporarily make the socket blocking to read all of the session description.
Change-Id: Ibe71f5941485660510e24d714da3865b9c6f89a2
2010-08-18 10:17:18 -07:00
Andreas Huber
4dda6ddb25 Merge "Make the OggExtractor less verbose." into gingerbread 2010-08-18 10:10:14 -07:00
Andreas Huber
08c94b265c Be more lenient when validating ESDS information in mp4 audio tracks. Allow the absence of any codec specific data and assume that the mpeg4 headers are not lying to us.
Change-Id: Ia29b967cbee9eabb21c6c26508b27b379ff9ba17
2010-08-18 09:58:30 -07:00
Andreas Huber
3386c38d59 Make the OggExtractor less verbose.
Change-Id: Ieea5f3fa98d93ca6ad8fa7dcd23054e1cd0b6338
2010-08-16 14:11:40 -07:00
James Dong
eff30e3d1b Change the default time scale for audio/video track during recording
and reduce rounding errors in calculating the sample duration

- Default time scale for tracks other than audio is set to 90000.
- Audio track by default uses the audio sampling rate as the time scale.
- Default movie time scale remains to be 1000.
- The default time scale values will be overwritten by a user-supplied value if exits.

Change-Id: I81b40ed0626ea45e9fd24a89e21a2c5a4a2c3415
2010-08-16 10:38:35 -07:00
James Dong
b72081966d Use audio clock as the reference media clock
o Only do this for realtime applications
o Adjust other track clock based on audio clock
o Assume other track uses wall clock as the media clock
o Use some heuristics to reduce the size of stts box by 2/3.

- also
o Remove one unused key from MetaData.h

Change-Id: Ib9432842627b61795b533508158c25258a527332
2010-08-13 18:12:48 -07:00
James Dong
e95d192fae Mainly fix two mistakes that I made:
1. When the ERROR_END_OF_STREAM is returned from read, the input buffer is not initialized
   release it would lead to crash

2. The mPrevTimestampUs is not initialized and thus fail in the CHECK(mPrevTimestampUs, timeUs)

Change-Id: Id1e51575fb8b3ca48e80547efd3a3a82dfac773b
2010-08-12 16:47:17 -07:00
Mike Dodd
5f96138ba6 Merge "Support getting codec, width, and height in URL for gtalk playback." into gingerbread 2010-08-12 16:45:19 -07:00
Andreas Huber
72ac1f26d7 Fix software avc encoder crash at EOS.
Change-Id: I738dc24556e41ce518b67babeff16cd934c2d1b1
2010-08-12 16:14:29 -07:00
Mike Dodd
8741dfacf2 Support getting codec, width, and height in URL for gtalk playback.
Format is rtsp://gtalk/codec/width/height

For example:
  rtsp://gtalk/H263-1998/320/200

Change-Id: If7c73fea1e1d0de89b22a8f0d12acba1c862d6fe
2010-08-12 16:04:35 -07:00
James Dong
d790c6485a Add lost preview surface detection in the JNI layer
Throws an IOException if this happens rather than crashes

Change-Id: I32bb4c889ae596f992a0d05283c9130a99b2d0d5
2010-08-12 11:59:56 -07:00
Andreas Huber
ae3a1f4595 Merge "Fix the h.263 assembler to properly subset a buffer's range if it already has a range applied." into gingerbread 2010-08-12 11:02:17 -07:00
Andreas Huber
66aa0f3d95 Merge "APacketSource is too verbose." into gingerbread 2010-08-12 11:02:06 -07:00
Andreas Huber
00237b79a0 Fix the h.263 assembler to properly subset a buffer's range if it already has a range applied.
Change-Id: I7cc468a3095537347d86803579001458b62fcadb
2010-08-12 10:58:24 -07:00
James Dong
708ec39c21 Don't send late frames to software encoders for encoding
o Document on what frames will be rejected and what frames will be accepted

Change-Id: I5a5d489ad3d2b50dbb40a0f6e01529312ce81c54
2010-08-12 10:40:58 -07:00
James Dong
45cb3cfacf Merge "Handle large audio lost" into gingerbread 2010-08-12 10:07:51 -07:00
James Dong
b6541f0af8 Merge "Fix a crash due to unnecessary check on the codec config data for H263 video track" into gingerbread 2010-08-12 10:07:38 -07:00
James Dong
581581fe1a Merge "Fix all fd leaks in authoring engine" into gingerbread 2010-08-12 09:13:14 -07:00
Andreas Huber
3f55576e04 APacketSource is too verbose.
Change-Id: I48ca7b070d89e43405d05e5f41e650db587e12b4
2010-08-12 09:07:20 -07:00
James Dong
c6280bce51 Fix all fd leaks in authoring engine
Change-Id: I17798543f9dd41cc8bef6f6086e66932f9f97be8
2010-08-11 17:18:30 -07:00
James Dong
7ae08a6d79 Fix a crash due to unnecessary check on the codec config data for H263 video track
Change-Id: I00e8b65d25731153e4d9be6a443eeed91c8fb605
2010-08-11 15:58:59 -07:00
Andreas Huber
90d1d10427 Merge "This code in CameraSource really should hold the lock." into gingerbread 2010-08-11 13:20:59 -07:00
Andreas Huber
22bd242478 This code in CameraSource really should hold the lock.
Change-Id: I349520a14776bb83b7edb23fc62052b487246d9a
2010-08-11 12:34:32 -07:00
Yu Shan Emily Lau
fd4a7c83b2 Add the a power test case which simply do the audio playback. The actual power measurement will be done by another application.
Change-Id: I51008ffdbe60e7e0b298091eb914b74f2d6731f8
2010-08-10 20:02:07 -07:00
James Dong
afe5305855 Handle large audio lost
Change-Id: I2687ad855aac758946954d0b3fe7aff9f7b5ae7c
2010-08-10 19:59:04 -07:00
Andreas Huber
6fa131105d Remove some obsolete code.
Change-Id: Ic4d21afe3721173d48db44b8ee4f836deee017ad
2010-08-10 13:48:53 -07:00
James Dong
10ed3f7438 Merge "Add input buffer size check for software video encoders" into gingerbread 2010-08-10 13:27:09 -07:00
Andreas Huber
18f0174ff4 Merge "We're now going to ignore timestamps completely in gtalk video conferencing, playing video as soon as it comes in. We also make up fake timestamps in the rtp code, ignoring rtcp SR information to enable early startup." into gingerbread 2010-08-10 12:59:27 -07:00
Andreas Huber
235be391f3 Merge "Many, many developers misread or don't read the http specs and terminate lines with '\n' instead of CRLF '\r\n' as required. Enable the workaround for this by default. Also increase the socket read timeout to 30 secs." into gingerbread 2010-08-10 11:39:38 -07:00
Andreas Huber
f88f84414a We're now going to ignore timestamps completely in gtalk video conferencing, playing video as soon as it comes in. We also make up fake timestamps in the rtp code, ignoring rtcp SR information to enable early startup.
Change-Id: Idc3df74b42000f7a6aa3eae090718dc9d9c4186f
2010-08-10 11:38:18 -07:00
James Dong
e6daea5940 Add input buffer size check for software video encoders
Change-Id: I03953a1245060ed6656a965e1a8a61386126c441
2010-08-10 10:46:11 -07:00
James Dong
f3b7859fc9 Only check the codec specific data when the output buffer contains kKeyIsCodecConfig in MP4 writer
o Assume there is only a single output buffer containing such information.
  This simplifies the logic in MP4 file writer

o Output SPS and PPS in the very first buffer for software AVC encoder
  This is to make AVC encoder work with the MP4 file writer

o Add timestamp value for codec config data

Change-Id: Iad27a04579e6028332429cd0bebd30976041e997
2010-08-10 10:20:15 -07:00
Andreas Huber
aa92ef7a56 Many, many developers misread or don't read the http specs and terminate lines with '\n' instead of CRLF '\r\n' as required. Enable the workaround for this by default. Also increase the socket read timeout to 30 secs.
Change-Id: I51df3b8139b3009565b2271611050700a23cf1d7
2010-08-10 10:10:40 -07:00