summaryrefslogtreecommitdiffstats
path: root/media/libmediaplayerservice
Commit message (Collapse)AuthorAgeFilesLines
* StagefrightRecorder: force 64-bit file-offsets for files > 4GBPraveen Chavan2015-10-061-0/+6
| | | | | | | | Enable recording files larger than 4GB by forcing 64-bit file-offsets in the writer, if application indicates max-file-size greater than 4GB. Change-Id: Id1af5bdf3543af156e6d3d80be2e00c7df3b4134 CRs-Fixed: 807377
* libmediaplayerservice:Fix deadlock on gapless start failureYamit Mehta2015-10-061-2/+11
| | | | | | | | | | | | | | | Issue:- Current gapless implementation starts the next clip when MEDIA_PLAYBACK_COMPLETE event for the first clip is recieved by MediaPlayerService. -Even if start for next clip fails, application is notified with MEDIA_INFO_STARTED_AS_NEXT. - This causes the framework to trigger mediaplayer start which again fails as it being for the same clip resulting in a deadlock in the mediaplayer. Fix:- Notify application with MEDIA_INFO_STARTED_AS_NEXT only when start for the next clip is successful. Change-Id: I77c570074c7c98c996122e275161ba88298e56fc
* audio: add support for AMRWB+Sharad Sangle2015-10-061-2/+5
| | | | | | | | | add support for AMRWB+ audio decoding Conflicts: media/libmediaplayerservice/nuplayer/NuPlayerDecoder.cpp Change-Id: I6eedebe93c482150234b4ca1d0472b189c450dc6
* stagefright: Disable AwesomePlayerMingming Yin2015-10-066-380/+1
| | | | | | | | | | | | Permanently remove StagefrightPlayer codebase & remove its entry from MediaPlayerFactory as AwesomePlayer is completely replaced by NuPlayer. Keep the AwesomePlayer codebase to make libstagefright_timedtext available to NuPlayer via libstagefright. Conflicts: media/libmediaplayerservice/MediaPlayerFactory.cpp Change-Id: Idfecdc519919ee940817c7bb515433fc37588bd3
* Stagefright: Make classes customizable and add AV extensionsPraveen Chavan2015-10-067-9/+18
| | | | | | | | | | | Change access modifiers and qualify methods with virtual, to allow extensions. Add facility for loading customizations (Extended classes) dynamically. Conflicts: media/libmediaplayerservice/nuplayer/NuPlayerDriver.cpp Change-Id: Icc8965754fb1c73175a13a9ad24c19665ad60988
* mediaplayerservice: fix 64-bit compliation errorsPraveen Chavan2015-10-065-30/+35
| | | | | | | | | | Use correct format specifiers to fix 64-bit compilation. Conflicts: media/libmediaplayerservice/StagefrightRecorder.cpp media/libstagefright/VideoFrameScheduler.cpp Change-Id: Ic2238db525a23710716558015ca152871b4c549f
* NuPlayerRenderer: Update position of AV stream even after audio EOSPraveen Chavan2015-10-062-1/+7
| | | | | | | | | | | | For AV streams with shorter audio, anchorTime does not update beyond audio EOS causing MediaPlayer.getCurrentPosition to return the same fixed value (progress bar does not update). Allow updating the current position in renderer beyond the anchorTime to update the player's position if audio stream is present. CRs-Fixed: 808073 Change-Id: I75625d24a6c155ff12f27fd0848503657e9219aa
* nuplayer: Fix incorrect audio resume time during seekXavier Varricatt2015-10-061-1/+2
| | | | | | | | | | | | GenericSource uses the timestamp of last video buffer read in readBuffer() to seek audio, due to which audio starts at a later position leading to frame drops. Add change to use the first video sample timestamp to seek audio CRs-Fixed: 780094 Change-Id: I5f2061e67994a3a0330b527bd3164ee04ed04005
* NuPlayer: DEBUG: Notify RENDERING_STARTED event after resumePraveen Chavan2015-10-061-0/+1
| | | | | | | notify MEDIA_INFO_RENDERING_START after resuming from pause, to enable java app to profile resume-latency. Change-Id: I06bd6307511b7dde8f6fe1a2d15009d3a543a318
* NuPlayer: do not create audio decoder if the player is still in shutdown ↵Wei Jia2015-08-281-1/+3
| | | | | | | process. Bug: 23350795 Change-Id: I46b02cf31d7d4447806910a9ecd8c3bda05f2f5b
* NuPlayerRenderer: handle error when resuming an offloaded trackEric Laurent2015-08-121-1/+4
| | | | | | | | | | | Make sure that an offloaded audio track is torn down if start() returns an error in onResume(). This makes sure that a track invalidated due to a potential audio path change while paused is re created on the correct output. Bug: 22256441. Change-Id: I6c7bfec6e7322415daffc0451bab46d0c558522a
* NuPlayer: set video surface directly when NuPlayer has not started yet.Wei Jia2015-08-101-2/+5
| | | | | Bug: 22119956 Change-Id: Ie174f4fc495ab8418993ff7887aaa6ae721c6008
* Merge "NuPlayer:seek handling on kWhatAudioTearDown" into mnc-devRobert Shih2015-08-053-5/+10
|\
| * NuPlayer:seek handling on kWhatAudioTearDownRobert Shih2015-08-053-5/+10
| | | | | | | | | | | | | | | | Restart from previous seek time on kWhatAudioTearDown if mRenderer didn't supply a useful positionUs. Bug: 22662968 Change-Id: Ic21957f676ba25fb92694f71093bed60b630390b
* | stagefright: disable automatic experimentsLajos Molnar2015-07-291-1/+6
|/ | | | | | | allow manually-enabled experiments only in eng and userdebug builds Bug: 20894667 Change-Id: Ie6c93e9482a84ed3aaf6aa0abd909f14cfea4e9b
* Merge "NuPlayerRenderer: prepareForMediaRenderingStart_l on en/disable ↵Robert Shih2015-07-252-2/+10
|\ | | | | | | offload audio" into mnc-dev
| * NuPlayerRenderer: prepareForMediaRenderingStart_l on en/disable offload audioRobert Shih2015-07-242-2/+10
| | | | | | | | | | Bug: 22662910 Change-Id: I8fb4a9fce801295a4b251e27965aef048d217da6
* | MediaPlayerService: prevent audio_attributes_t race conditionsJean-Michel Trivi2015-07-232-5/+22
|/ | | | | | | | | | | | Access to audio attributes fields in Client and AudioOutput was not always locked. Audio attributes field in AudioOutput cannot share the same pointer as Client because it can be indepently accessed. Save the attributes inside AudioOutput instead. Bug 22672670 Change-Id: Ib1002b57b45cea44ff5e6eb115d581dc3beec006
* libmediaplayerservice: propagate caller pid to MediaCodec.Ronghua Wu2015-07-219-18/+27
| | | | | Bug: 22630317 Change-Id: I0337d74f4ef04bf96f2de83f33d98d0d7da47c12
* Merge "MediaRecorder: enable audio for slow motion recording" into mnc-devChong Zhang2015-07-172-40/+59
|\
| * MediaRecorder: enable audio for slow motion recordingChong Zhang2015-07-172-40/+59
| | | | | | | | | | | | bug:22460747 Change-Id: I23f773ecf7b86928a8eacd25a481636e645affbe
* | Merge "RTSP: clear data/eos status before returning from seek" into mnc-devRobert Shih2015-07-172-3/+54
|\ \
| * | RTSP: clear data/eos status before returning from seekRobert Shih2015-07-162-3/+54
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The original RTSP seek implementation involves pausing and restarting a session. This change clears data/eos status after an rtsp session is paused for a seek, and delays the seek to return after data/eos status are cleared. Bug: 22207372 Change-Id: I1bdf65653f90436f7ee5d7fe85eeadc1598a0d56
* | | stagefright: MediaSync: use VideoFrameSchedulerLajos Molnar2015-07-164-584/+1
| |/ |/| | | | | | | | | | | Move VideoFrameScheduler to libstagefright as part of this change. Bug: 22234976 Change-Id: Ib23fb52399cb700a1dcf789e8486b94a3edf9d95
* | Merge "mediaplayer: fix audio attributes override by stream type" into mnc-devEric Laurent2015-07-162-2/+17
|\ \
| * | mediaplayer: fix audio attributes override by stream typeEric Laurent2015-07-152-2/+17
| | | | | | | | | | | | | | | | | | | | | | | | Make sure that when audio attributes are set, the stream type is always derived from them. Bug: 22481669. Change-Id: Ia10c7017eb27e7753faf97a42dd4f44e15f2c986
* | | Merge "NuPlayer: fix handling of teardown event during flushing or shutting ↵Wei Jia2015-07-151-4/+24
|\ \ \ | | | | | | | | | | | | down." into mnc-dev
| * | | NuPlayer: fix handling of teardown event during flushing or shutting down.Wei Jia2015-07-151-4/+24
| | | | | | | | | | | | | | | | | | | | Bug: 22481669 Change-Id: I9114c16c081fd7907508e9c776607d653ae18612
* | | | Merge "NuPlayer: pull more video buffers in advance in GenericSource" into ↵Chong Zhang2015-07-151-1/+5
|\ \ \ \ | |/ / / |/| | | | | | | mnc-dev
| * | | NuPlayer: pull more video buffers in advance in GenericSourceChong Zhang2015-07-141-1/+5
| | |/ | |/| | | | | | | | | | | | | | | | | | | pull 4 video buffers at a time, and start pulling when we're down to 1 buffers to avoid starving the decoder. bug: 22320866 Change-Id: I10914dc092f3830ecb6296e2d9ebf9064ff7a5dc
* | | Merge "NuPlayer: determine audio mode before instantiating audio decoder." ↵Wei Jia2015-07-142-28/+32
|\ \ \ | | | | | | | | | | | | into mnc-dev
| * | | NuPlayer: determine audio mode before instantiating audio decoder.Wei Jia2015-07-142-28/+32
| | |/ | |/| | | | | | | | | | Bug: 22460159 Change-Id: I334c6dc5e1163a462155d251eaa985ff5e3858e6
* | | Merge "nuplayer: use codec->setSurface when possible to avoid seeking" into ↵Lajos Molnar2015-07-145-3/+73
|\ \ \ | | | | | | | | | | | | mnc-dev
| * | | nuplayer: use codec->setSurface when possible to avoid seekingLajos Molnar2015-07-135-3/+73
| |/ / | | | | | | | | | | | | Bug: 22414719 Change-Id: I0442e12af960f86a0fc090b4a469c62ba638a1a0
* | | Merge "NuPlayerRenderer: clear first audio anchor time only when audio is ↵Wei Jia2015-07-141-1/+1
|\ \ \ | |/ / |/| | | | | flushed." into mnc-dev
| * | NuPlayerRenderer: clear first audio anchor time only when audio is flushed.Wei Jia2015-07-131-1/+1
| |/ | | | | | | | | | | Bug: 22228075 Change-Id: I5914d7cfd2fb9c7ca5279964b530a404b20c8764
* | Merge "NuPlayer: seek to current position when changing video surface and ↵Wei Jia2015-07-111-1/+1
|\ \ | | | | | | | | | audio decoder exists." into mnc-dev
| * | NuPlayer: seek to current position when changing video surface and audio ↵Wei Jia2015-07-101-1/+1
| |/ | | | | | | | | | | | | decoder exists. Bug: 22228075 Change-Id: I8b233319f48d2d0a49b44063cd895dc94949a489
* | libmediaplayerservice: Serialize access to AudioOutputAndy Hung2015-07-102-45/+155
|/ | | | | | | | | NuPlayerRenderer may open and close the AudioOutput while MediaPlayerService::Client accesses it. Bug: 20069455 Bug: 22295200 Change-Id: Ic37987c1de1919cf890b2e69778e6df71e7ee7c5
* NuPlayer: disable pre-start preview for audio only sourcesRobert Shih2015-07-072-9/+22
| | | | | Bug: 22117876 Change-Id: I0e00ff8f081d80946cbd19028f1f786c1b8268f3
* Merge "Serialize calls to getFrameAtTime in the mediaserver" into mnc-devMarco Nelissen2015-06-132-0/+4
|\
| * Serialize calls to getFrameAtTime in the mediaserverMarco Nelissen2015-06-122-0/+4
| | | | | | | | | | | | | | to avoid running out of memory. Bug: 21277449 Change-Id: I7210806a24958f38d86aadab0310fc263e4c0edf
* | Merge "stagefright: post audio EOS in NuPlayerRenderer if getPosition fails" ↵Chong Zhang2015-06-122-0/+35
|\ \ | | | | | | | | | into mnc-dev
| * | stagefright: post audio EOS in NuPlayerRenderer if getPosition failsChong Zhang2015-06-122-0/+35
| |/ | | | | | | | | bug: 20071480 Change-Id: I81f2a1fea0daa694a61be7f4a6d70d6847e9f183
* | NuPlayerDriver: add more logging.Wei Jia2015-06-111-1/+2
|/ | | | Change-Id: Ib80a42b4e46b4e2bea02d9a002228a058d1fa211
* NuPlayer: print player stats at the end of playbackPraveen Chavan2015-06-101-8/+27
| | | | | | | Print stats at the end of playback if the shell property persist.debug.sf.stats is set Change-Id: Ie4250bf86b12af75c16f108ca09ad02b3e44fd29
* NuPlayer: Enhance dumpsys statisticsPraveen Chavan2015-06-109-45/+86
| | | | | | | | Account for dropped output-frames (rather than input-frames) in percentage dropped frames. Print mime and component name for each active track Change-Id: I3491d336c696d8ed0fd1503b80afe1df47c787c8
* mediaplayer: remove use-awesomeplayer developer optionLajos Molnar2015-06-101-6/+0
| | | | | Bug: 17108024 Change-Id: Id6429eb58226fe955f091f661fcb2f21a5f6ce5e
* NuPlayerRenderer: discard pending kWhatDrainAudioQueue message when ↵Wei Jia2015-06-101-3/+8
| | | | | | | AudioSink is opened in callback mode. Bug: 21723010 Change-Id: Iddab8c1cbdf87714aa53315feba064fe101d8f98
* Merge "NuPlayerRenderer: change log from ALOGW to ALOGV when audio sink ↵Wei Jia2015-06-091-1/+1
|\ | | | | | | reports WOULD_BLOCK on writing." into mnc-dev