summaryrefslogtreecommitdiff
path: root/media/libstagefright
AgeCommit message (Collapse)Author
2013-04-22Fixed the wrong timestamps issue about camera recordingJun Tian
On emulator, the camera video recording crashes randomly. It's caused by wrong timestamp when encoding the video frame. The element of the vector is erased before accessing it. Therefore, when reading the timestamp from the element, the memory of the element has been changed. Change-Id: I9750417fbb9dc4697ccae1e78e286b23925d3764 Signed-off-by: Panfeng Chang <panfengx.chang@intel.com> Signed-off-by: Jun Tian <jun.j.tian@intel.com>
2013-03-12Fix for crash if no content in DESCRIBE responseXuefei Chen
If DESCRIBE response is received with status 200 but no content, MyHandler will still set content data for session description parsing. This will cause NULL Pointer crash. This fix checks whether DESCRIBE response has content before parsing session description. Change-Id: I114ae6fd54ce804e61718f62618ca9008425a433
2013-02-27Merge "SoftAMR: Signal the right frame format"Andreas Huber
2013-02-27Merge "SoftVorbis: Set the right encoding in the port definition"Andreas Huber
2013-02-27Merge "MPEG4Writer: Write a zero-length compressor string"Andreas Huber
2013-02-17SoftAMR: Signal the right frame formatMartin Storsjo
The correct enum for the format used is OMX_AUDIO_AMRFrameFormatFSF, which is the same as is used in amrnb/enc/SoftAMRNBEncoder.cpp, amrwbenc/SoftAMRWBEncoder.cpp and in OMXCodec and ACodec. The OMX_AUDIO_AMRFrameFormatConformance enum refers to an odd file format only used for conformance tests, not used in the wild. Change-Id: Idc395fc1d4969e33453522d6ec6526876438c526
2013-01-31SoftVorbis: Set the right encoding in the port definitionMartin Storsjo
Previously, it set the encoding type to AAC, which is just a typo. Change-Id: I2dcae1f579e9feb0b35b6f5d334028c534275042
2013-01-31MPEG4Writer: Write a zero-length compressor stringMartin Storsjo
The first byte is the number of bytes in the string to display, the rest is the actual string (see ISO/IEC 14496-12:2008 page 29, compressorname in VisualSampleEntry) to display. Currently, all 31 space characters are displayed in certain players (such as Apple QuickTime Player) instead of the plain codec name (e.g. "H.264"). By writing the string length properly, the actual content of the remaining 31 bytes is ignored instead of displayed. Change-Id: I7f93a8966d74a4e86abc46c3dcb70f71780d9cd6
2012-12-21am b54cedab: Merge "Use default values when MPEG4 audio config parsing fails."James Dong
* commit 'b54cedabdf0261211241e2f3af09c75cffd911ed': Use default values when MPEG4 audio config parsing fails.
2012-12-20Merge "Use default values when MPEG4 audio config parsing fails."James Dong
2012-12-20am df9cce64: Merge "Allow multichannel FLAC files"Glenn Kasten
* commit 'df9cce649d9ac1f4446f613c54191e7c4d646f07': Allow multichannel FLAC files
2012-12-20Merge "Allow multichannel FLAC files"Glenn Kasten
2012-12-17am f38259cf: Merge "Fix bug in WAVExtractor for 24-bit per sample wav"Glenn Kasten
* commit 'f38259cfe5566914a49f5b0f8b11aa6a951d667a': Fix bug in WAVExtractor for 24-bit per sample wav
2012-12-17Merge "Fix bug in WAVExtractor for 24-bit per sample wav"Glenn Kasten
2012-12-14am 0cd75629: Merge "Match new paths and organization in external/libvpx"Jean-Baptiste Queru
* commit '0cd75629a8f7a6bd47b2abc6dd8d9f66e70d76a4': Match new paths and organization in external/libvpx
2012-12-14am 409542cd: Merge "FileSource: FILE is not closed"Marco Nelissen
* commit '409542cdaf72d8983043f2746d9d916ee1566a80': FileSource: FILE is not closed
2012-12-14Merge "Match new paths and organization in external/libvpx"Jean-Baptiste Queru
2012-12-14FileSource: FILE is not closedYou Kim
Add destructor to call fclose. Change-Id: I765c56236f8df58af998439492b0b955ab57606f
2012-12-12Match new paths and organization in external/libvpxJohann
See I2c0a87b0fc049e855e21f455b806287b578091de Change-Id: Iec8566bce0a4763a9a17b4a46f15aa39b5bcd141
2012-12-06am 03425d9c: Merge "Fix bad checks that causes crash when streaming H.263 ↵Andreas Huber
content." * commit '03425d9cf7f22cf400c13cda60d3e91f0fd48d6e': Fix bad checks that causes crash when streaming H.263 content.
2012-12-05Merge "Fix bad checks that causes crash when streaming H.263 content."Andreas Huber
2012-12-03am f00d40c7: Merge "Memory leak solved in MPEG4Extractor::parseChunk for ↵Andreas Huber
cover art" * commit 'f00d40c716fd4741fa56dd2b59813227658e50f2': Memory leak solved in MPEG4Extractor::parseChunk for cover art
2012-12-03Merge "Memory leak solved in MPEG4Extractor::parseChunk for cover art"Andreas Huber
2012-12-03Fix bad checks that causes crash when streaming H.263 content.Roger1 Jonsson
Remove checks that causes crash for rtsp streamed h.263 content with certain values in the RTP payload header: Remove zero check for the five reserved bits in the payload header. According to RFC 4629 these bits MUST be ignored by receivers. Remove zero-check for the VRC (Video Redundancy Coding) bit, skip packet instead. Remove zero-check for the PLEN bits (extra picture header), skip packet instead. Remove zero-check for the PEBIT bits (extra picture header), skip packet instead. Remove corresponding zero check for the four resreved bits in the AMR payload header. According to RFC 4867 these bits MUST be ignored by receivers. Change-Id: I7fc21d69a19d23da24f9267623c338d415ef1387
2012-11-30Fix bug in WAVExtractor for 24-bit per sample wavcong.zhou
support stereo/multichannel 24-bit format kMaxFrameSize is fixed to 32768. When converting 24-bit to 16-bit, number of samlpes is maxBytesToRead /3. In this case, if the maxBytesToRead is not multiple of 3, pcm data is messed when converting. Bug:7630939 Change-Id: I0ea1b53eb1272a8d83b63815fc0a05b73cef75f1
2012-11-29am b64def9a: Merge "[wfd] Support a low(er) power state by triggering ↵Andreas Huber
PAUSE/RESUME." into jb-mr1.1-dev * commit 'b64def9a555bfbf533a2da41ba0189b9842a76fb': [wfd] Support a low(er) power state by triggering PAUSE/RESUME.
2012-11-29am e5aed03d: Enable retransmission of UDP packets in case we want to use itAndreas Huber
* commit 'e5aed03d30ea0ce49728873c5b74f89ba05a9541': Enable retransmission of UDP packets in case we want to use it
2012-11-29am 79c56d3f: Merge "Reduce the frequency of IDR frames and add intra-fresh ↵James Dong
mode support for WiFi display" into jb-mr1.1-dev * commit '79c56d3f17d3193a0a86eb3c9bfdea90b89ae3f9': Reduce the frequency of IDR frames and add intra-fresh mode support for WiFi display
2012-11-29am 0dbe5a93: Added optional intra macroblock refresh support for encodingJames Dong
* commit '0dbe5a9321b24b6883fbb2fe97cd9d525128b0b5': Added optional intra macroblock refresh support for encoding
2012-11-29am 031c93df: Merge "Bug fix for the MediaPlayer::prepare() api."Marco Nelissen
* commit '031c93df74621dc2149876dc377aedee8930547f': Bug fix for the MediaPlayer::prepare() api.
2012-11-29Merge "Bug fix for the MediaPlayer::prepare() api."Marco Nelissen
2012-11-29Merge "[wfd] Support a low(er) power state by triggering PAUSE/RESUME." into ↵Andreas Huber
jb-mr1.1-dev
2012-11-29Enable retransmission of UDP packets in case we want to use itAndreas Huber
in our upcoming wfd _sink_ implementation. Change-Id: I4509c30d5a7b992bc841b73d63db902bbcf8f76a related-to-bug: 7638155
2012-11-29[wfd] Support a low(er) power state by triggering PAUSE/RESUME.Andreas Huber
Change-Id: Ibe42bfa73816bbfeb7e652d435254d0171b89727 related-to-bug: 7638150
2012-11-29am 251c04b1: Merge "Unsolicited server responses cause RTSP streaming to crash"Andreas Huber
* commit '251c04b1f3d048f541832c93347c6604b314e0ea': Unsolicited server responses cause RTSP streaming to crash
2012-11-29Unsolicited server responses cause RTSP streaming to crashLena Magnusson
If the set up of the RTSP stream contains an incorrect or otherwise problematic URL, some servers will send an unsolicited server response that contains a negative number in the sequence number (CSeq) field. This negative value is not returned from the function findPendingRequest(), so the check in notifyResponseListener() will not work. Instead there will be a crash when 0 is used as the index to find a matching request/response pair that doesn’t exist. The fix is to return the received sequence number also when it is an unsolicited server-client message. Change-Id: Iedaba8a63dece7b43bce007069baefbfd10970b8
2012-11-28Merge "Reduce the frequency of IDR frames and add intra-fresh mode support ↵James Dong
for WiFi display" into jb-mr1.1-dev
2012-11-28Reduce the frequency of IDR frames and add intra-fresh mode support for WiFi ↵James Dong
display The time interval between periodic neighboring IDR frames is increased from 1 second to 15 seconds. o related-to-bug: 7524791 Change-Id: Ic32f37448f952f329549eda5e73637ee3b02f046
2012-11-28Added optional intra macroblock refresh support for encodingJames Dong
o related-to-bug: 7524791 Change-Id: I95ac4ee925e2dbeb00b3cfb2e29c611698c5cc9f
2012-11-28am b7c8e918: Add support for HLS playlists of type \'event\'.Andreas Huber
* commit 'b7c8e91880463ff4981e3e53e98e45d68e2fe374': Add support for HLS playlists of type 'event'.
2012-11-27Bug fix for the MediaPlayer::prepare() api.Dylan Powers
For an MP3 source, within the prepare command, ID3 tags are checked in search of gapless playback info. This causes problems for streamed sources. If ID3v2 tags aren't present, then a check is done for ID3v1 tags. This results in a read command that asks the cache to jump to the end of the file, and subsequently make an extra http call to request those bytes. For a streamed source, this causes the file to not be downloaded automatically when MediaPlayer::prepare() is called, and causes stuttering and extra buffering time to be needed when start() is finally called. The solution is to ignore the ID3v1 tags as the gapless info would never exist there, and only check for ID3v2 tags. Change-Id: I7d1b94cffbfe7c38ca094834dedbc92a58855e20
2012-11-27Add support for HLS playlists of type 'event'.Andreas Huber
related-to-bug: 6870049 Squashed commit of the following: commit eee2f3ba6bb7335f4e285632726db85645669929 Author: Andreas Huber <andih@google.com> Date: Tue Nov 27 15:02:01 2012 -0800 Make everything a lot less verbose by default. Change-Id: I884d7a7901aa1e7d4ff590f065ca57a79d2af8b3 commit 6bbdb837ed5bd88008e45efb8faf595e4051ba26 Author: Andreas Huber <andih@google.com> Date: Tue Nov 27 14:34:46 2012 -0800 HLS now properly signals media time changes at discontinuities including the start of playback (which may not necessarily be at time 0 if the playlist is of type 'event' and hasn't completed yet). Change-Id: I5ab747d024f9b8d0df72a4e06a12ebb29f62802e commit 1555589832b1878a144a976a643e1af4d61f877c Author: Andreas Huber <andih@google.com> Date: Tue Nov 27 14:32:28 2012 -0800 As part of a time discontinuity, clients of IStreamListener can now signal the corresponding media time after the discontinuity, i.e. the first PTS timestamp following the discontinuity will be considered equivalent to the specified media time and media buffers timestamped accordingly. Change-Id: Id7db7679b7faa6efd6270620ff52e34e884f3e92 commit 5c24c605c073a11c426d025b1e7478fc1ad8365a Author: Andreas Huber <andih@google.com> Date: Tue Nov 27 13:00:56 2012 -0800 NuPlayer sources now expose flags() and can announce that duration may change (increase) dynamically, in which case duration will be polled at 1 second intervals and communicated to the upper layers. Change-Id: I45102909b7a19eed0dda576747e3814d742a0eea commit ecb71de8e281e61971a2cd73e7161a97540bc357 Author: Andreas Huber <andih@google.com> Date: Tue Nov 27 12:57:47 2012 -0800 Stop caching duration in MediaPlayer, duration could increase dynamically. Change-Id: I7bb2f16c0abe49debdf45c776d2266aa069d7791 commit 544aec5823e6d7a3e97e15b6b23546616bcd343e Author: Andreas Huber <andih@google.com> Date: Tue Nov 27 08:46:28 2012 -0800 An attempt to add support for "event" style HLS playlists. Change-Id: I3dfb2e801ecaff8f5d8bdb3a4fca1b18aeeb2c60 Change-Id: I48cf7f65a654d33f2f49ded74f8be22aed9e3b98
2012-11-27am 5768fa03: Merge "Crash in android::MyHandler::parsePlayResponse"Andreas Huber
* commit '5768fa034ede834656697d3612c525595ff85ef9': Crash in android::MyHandler::parsePlayResponse
2012-11-27Merge "Crash in android::MyHandler::parsePlayResponse"Andreas Huber
2012-11-27Crash in android::MyHandler::parsePlayResponsePatric Frederiksen
This fix handles problems with several asynchronous calls within streaming. This case is when the phone has sent a request to the server and while the response is being sent back by the server the request is aborted by the user. The fix is an if case that checks if we have aborted while waiting for a response from the server. If we have aborted we should ignore the late response instead of continuing. Change-Id: I1264bb992f6abcaee1f10a89479e08b54a95e3c2
2012-11-26am 79fd6853: Merge "MediaCodec: Add a method for getting the component name"Andreas Huber
* commit '79fd685323e34e0fde22d17fd6848d33f171f4ae': MediaCodec: Add a method for getting the component name
2012-11-26Merge "MediaCodec: Add a method for getting the component name"Andreas Huber
2012-11-20am 2da6e4ae: Merge "Avoid memory leaks when handling metadata strings"Marco Nelissen
* commit '2da6e4ae488896df10b22166b0aa0b2cc15492f1': Avoid memory leaks when handling metadata strings
2012-11-20Avoid memory leaks when handling metadata stringsDavid Williams
Don't duplicate strings when retrieveing metadata from media files. As any requests for metadata strings would pass through the binder, this would cause the reference to the duplicate string to be lost, causing a memory leak as the duplicate would not be freed. Change-Id: I2593733472b1bb589bc502b2c11080f581015bb5
2012-11-20am 7013209c: Merge "Handle large AVCC chunks"Andreas Huber
* commit '7013209cdf393b3d958ddd46ed50394349378826': Handle large AVCC chunks