Merge commit '2b4f1f4cb814f7a7df8d2cb9fcb5210bfe7999c7'
* commit '2b4f1f4cb814f7a7df8d2cb9fcb5210bfe7999c7':
Disable 10secs forward/backward seeking for rtsp as seek is a very expensive operation there. Decouple the 10sec forward/backward button functionality from seekbar functionality.
o updated comments and streamlined the logic in
checkVideoSize() and checkFrameRate() as suggested
Change-Id: I49d04ac7998d4a215997aa63555dfb6e814e38d3
Added a method to expose the audio session id at AudioSink interface
so that the AudioPlayer in stagefright can retrieve it.
Also:
- Fixed audio effect send level not being initialized in mediaplayer.
- Fixed compilation error when LOGV is enabled in mediaplayer JNI
Change-Id: I4bb55454fd63d646e0e677692d737c4843fb05fb
The dump function whitelists several directories as filters to the output.
The mount point changed for SD card in Froyo, and we started filtering files
that were open on the SD card. This fix changes the filter for the SD card,
and adds the directory for data files as well.
Change-Id: I61b67c3d11d93dbd530e8b3566000e79bc037137
If the frame capture interval is large, read will block for a long time.
Due to the way the mediaRecorder framework works, a stop() call from
mediaRecorder waits until the read returns, causing a long wait for
stop() to return. To avoid this, we return a copy of the last read
frame with the same time stamp if a frame is not available quickly.
This keeps the read() call from blocking too long. This method is
triggered when startQuickReadReturns() is called on
CameraSourceTimeLapse.
In the still camera case, also using waitRelative on Condition
instaed of sleeping, so that we can wake it up.
Also for the idle check instead of sleeping, we now wait on a
condition variable, which is woken up when the last takePicture
callback gets called.
Change-Id: Ia74386e175536aee0f44ae2f8b114c353d3d72f5
- Check that time lapse mode is on when using auxiliary video recording.
- Check that auxiliary video size is strictly less than the main video
size.
Change-Id: Ic49d25e6ac30f6f885ce4f5fb38dbe0cc7bc1be1
CameraSourceTimeLapse now decides whether to use still or video
camera automatically. It checks if the passed in size is a valid
preview size and if it is, then uses the video camera else uses
the still camera.
Removed from StagefrightRecorder the support to set parameter
useStillCameraForTimeLapse.
Change-Id: I71f5b0fc7080ca524792381efe918d22e41a7f36
Added support for passing width, height and video bitrate
for the auxiliary video.
Also setting encoder level depending on the video size and bitrate.
Change-Id: I4a90046853f67287c3e7e6babc75b4827f0c3e73
added setAuxiliaryOutputFile to allow setting of an auxiliary output file.
Also added the JNI support.
Change-Id: I8c3335192bd6f7fcbfdfc8552cfd0848f2ad2a5d
- Added setOutputFileAuxiliary to pass the auxiliary file descriptor. The java
interface through JNI will be checked in next.
- renamed setupCameraSource to setupCamera as the function just sets the camera.
- Added setupCameraSource which sets up the camera source. This functionality
was in setupVideoEncoder before.
- setupVideoEncoder now takes in a cameraSource instead of creating it on it
own.
- Refactored startMPEG4Recording() to use setupMPEG4Recording,
setupMPEG4MetaData.
- setupMPEG4Recording() takes in file descriptor, bitrates to setup a mpeg4
writer. This function can be called multiple times to setup multiple
writers.
- Added setupMPEG4MetaData() for setting up the meta data for mpeg4 writer.
startMPEG4Recording() now calls setupMPEG4Recording, setupMPEG4MetaData for
each recording session.
Change-Id: I07f5334a1ff8e12a36f58e94129fcfa6add2208b
Merge commit '9aa05ec2cd6bc592074c7bd08d22db46649c7f12'
* commit '9aa05ec2cd6bc592074c7bd08d22db46649c7f12':
Reverse the default setting of media.stagefright.enable-{rtsp,record} in preparation for building without opencore.
Merge commit '701b710c194181765616520f6d89d450b4b6c1f5'
* commit '701b710c194181765616520f6d89d450b4b6c1f5':
setParamMaxFileDurationUs should allow zero time input as per API of setMaxDuration.
This change makes the camera HAL interface take an ANativeWindow interface from
which all the camera preview buffers will be allocated. The framework code
running in application processes now passes a Surface object rather than an
ISurface to the camera server via Binder when setting the preview surface. The
camera server then forwards that Surface object (which implements the
ANativeWindow interface) to the camera HAL, which uses it to communicate with
SurfaceFlinger to allocate the camera preview buffers.
Change-Id: Ie438f721559cd7de5e4f848a26d96360dda07b5f
commit 35cc68814a9537c31fde146e171e7b0bbdfe211e
Author: Andreas Huber <andih@google.com>
Date: Mon Aug 16 08:48:42 2010 -0700
Only enable support for yuv to yuv conversion on passion, where it's available, use the slower yuv->rgb565 path everywhere else.
commit d8ac5a8814103e60d11d2acf61997fc31a1dc58d
Author: Andreas Huber <andih@google.com>
Date: Fri Aug 13 13:56:44 2010 -0700
The software renderer takes over all rendering, converting from yuv to yuv if possible and rgb565 otherwise.
commit 684972074b74318bdcb826ed9b5b0864d2d2e273
Author: Andreas Huber <andih@google.com>
Date: Fri Aug 13 09:34:35 2010 -0700
A first shot at supporting the new rendering APIs.
Change-Id: Iea9b32856da46950501f1a700f616b5feac710fd
Merge commit 'c8d2fa704abebdbf0bd8aac185216dc068950217'
* commit 'c8d2fa704abebdbf0bd8aac185216dc068950217':
Make MediaWriter stop and pause return errors if necessary
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
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
Merge commit 'f54da15b7c3fa55268451c485544e831832fdf15'
* commit 'f54da15b7c3fa55268451c485544e831832fdf15':
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
Since HD resolution may not be supported by the video camera,
don't set preivew using the HD size. The app should have set the
preview already, just use that.
Change-Id: I2f8e89bf2c7440f7bc8db7e4a228f4c8250d92b4
Merge commit '1f513d8821670a33d6361ea521b6756163a3f9bf'
* commit '1f513d8821670a33d6361ea521b6756163a3f9bf':
Support for Gtalk video, includes AMR/H.263 assembler and packetization support, extensions to MediaRecorder to stream via RTP over a pair of UDP sockets as well as various fixes to the RTP implementation.
Merge commit 'd152c1c7534a80b84f6b389efa8a410ea359b3eb'
* commit 'd152c1c7534a80b84f6b389efa8a410ea359b3eb':
Replace CHECK with a failure return value when mCamera->setParameters() fails
This will allow apps to make the decision of whether to use still image mode or
video mode for time lapse capture.
- setTimeLapseParameters now takes in a useStillCameraForTimeLapse parameter.
- Added support in StagefrightRecorder for passing through this parameter.
Change-Id: Iafbcb76f9a7903118ea5eb822c81008619630f03
Merge commit 'e915b0ef5d574022dfeffc9b2b61e21c1433c89c'
* commit 'e915b0ef5d574022dfeffc9b2b61e21c1433c89c':
Lower the lower bound for max file duration check
- default interleave duration is set to 1 second
This can dramatically reduce the memory usage
by the MP4 file writer.
Change-Id: Ia3ff202cabfcd2d3f183065d31e4596617c2dded
added setTimeLapseParameters() to MediaRecorder.java and SetParameter support
in StagefrightRecorder to allow enabling time lapse and setting the corresponding
parameters.
Change-Id: I509040aa71f8d3fc37337b0894a81d9c0fd7a40a
Merge commit '34161132030254bac7dd64c9713832e2f961a061'
* commit '34161132030254bac7dd64c9713832e2f961a061':
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