summaryrefslogtreecommitdiffstats
path: root/media/libstagefright/wifi-display/source/Converter.cpp
Commit message (Collapse)AuthorAgeFilesLines
* MediaBuffer: ABuffer will release MediaBuffer when it's destructed.Wei Jia2014-09-191-36/+13
| | | | | Bug: 17454455 Change-Id: Ia423bcc2e1fa39137f114eac44912ed15357bb99
* Use changed MediaCodec.PARAMETER_KEY_VIDEO_BITRATE valueLajos Molnar2013-09-171-1/+1
| | | | | | Change-Id: I157bcafbf705865e66c81517b1eab10c3daa039e Signed-off-by: Lajos Molnar <lajos@google.com> Bug: 10461617
* Minor tweaks to DirectRenderer and ConverterAndreas Huber2013-07-191-24/+115
| | | | | | | | Converter now supports automatic prepending of SPS/PPS to IDR frames (h264) as well as using the encoder in "surface-input" mode. The new features are all opt-in and should not affect existing clients. Change-Id: I543cf1d31ba068c1a01ab4e6814ac8d817b63faa
* Converter now takes the desired _output_ format instead of theAndreas Huber2013-06-121-28/+19
| | | | | | input format, allowing control over the type of encoding. Change-Id: Iaaa1a825f447ea130e373bbd8e5dc96f2762db18
* wifi-display: add support for metadata mode on encoder outputChong Zhang2013-05-171-6/+45
| | | | | | | | pass buffer_handle_t from encoder output to HDCP encryptor input Bug: 8968123 Change-Id: Iea8007ce568641e213fd2e3cf6947a6f7a95746c
* Fix miracast source code to ignore the encoder output format changeAndreas Huber2013-05-011-0/+7
| | | | | | | it doesn't care about. Change-Id: Iec1594775a98b0c1aba662cc9f08652d2f8d4805 related-to-bug: 8616651
* Adapt frame rate instead of keeping that constant and tweaking bitrateAndreas Huber2013-03-261-17/+5
| | | | Change-Id: I889abbbe1237e1a8fdd7135cdc91a2e9728ff39b
* In "special" mode we now establish a UDP RTCP channel in addition to theAndreas Huber2013-03-251-0/+17
| | | | | | | | TCP RTP channel and provide feedback on the latency of arriving packets from the sink back to the source. This information is then used to throttle video bitrate. Change-Id: Ic589a3cb65e4893a3ff67de947da6063d32a1c6e
* Attempt to recover from network stalls by dropping frames on the source side.Andreas Huber2013-03-131-0/+18
| | | | Change-Id: I5f9eb4f5acb624a9e5bc0087801fb5a4a9ade35c
* Refactoring: Rename SurfaceTextureClient to SurfaceMathias Agopian2013-02-151-1/+1
| | | | Change-Id: I4e8a8b20914cb64edc37abe68233fbc9f2b5d830
* Allow for dynamic reconfiguration of the video bitrate usedAndreas Huber2013-02-071-0/+14
| | | | | | to encode video while running as a wfd source. Change-Id: I44f7b2350c88fc5807047c61bfe594ef8fa79275
* Properly release any MediaBuffer references associated with theAndreas Huber2012-12-201-19/+41
| | | | | | | | encoder input buffers on shutdown. This worked fine before for an orderly shutdown but didn't release all references in case of error. Change-Id: I0ea3eb26da76fbeb33cadf58d237b0c68a86ac4a related-to-bug: 7893090
* Reduce the frequency of IDR frames and add intra-fresh mode support for WiFi ↵James Dong2012-11-281-1/+18
| | | | | | | | | | 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
* Various improvements of wifi display codeAndreas Huber2012-11-131-6/+40
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - manually prepend SPS/PPS if encoder doesn't support it - latency improvements - support for "our" method of optional RTP retransmission - improvements to the wfd commandline tool for testing - make it easier to turn on/off suspension of the video pipeline on idle - fixes an issue where an error during encryption would cause a SEGV - add HDCP descriptor if necessary Squashed commit of the following: commit 1115be0ebb3b885b4f1b7dba56761ca013d0ec4a Author: Andreas Huber <andih@google.com> Date: Fri Nov 9 11:32:23 2012 -0800 Better shutdown of wfd -l sessions. Change-Id: Id898a14ae21efd3b065b00a729830063d39195a7 commit 0e7d106dfe4eb6e2640b0b66c65deaba265f7ff0 Author: Andreas Huber <andih@google.com> Date: Thu Nov 8 16:38:55 2012 -0800 No more sending delay, create rtp packets upfront. Change-Id: I809a225f664fdb485c7d9a49a27886601a6a26b2 commit d399e8571b77353d59afb57508dfd2a82c1ef93a Author: Andreas Huber <andih@google.com> Date: Thu Nov 8 14:19:43 2012 -0800 Restore AudioSource buffer size, factor out TimeSeries, make suspending video optional. Change-Id: Ifdfe4d447b901e714abf52856b4641d1d55a5d41 commit f8b649f0b8f917d59f4b8a2e8e6d7db61a684a78 Author: Andreas Huber <andih@google.com> Date: Thu Nov 8 09:34:06 2012 -0800 Pull 480 frames at a time from AudioSource/AudioRecord Change-Id: I1e215abd329faec3da026631122c0f4c800c0ac4 commit 1bc13452eb35eebbba00f5da93fa86535be5db59 Author: Andreas Huber <andih@google.com> Date: Thu Nov 8 08:50:30 2012 -0800 fixed bitrate traffic simulation Change-Id: Ic5efb7cbb0b5d3b4917bc77b8ba73d447249e695 commit 016cdff18e74bdc631a5679e97192645ed095aa2 Author: Andreas Huber <andih@google.com> Date: Wed Nov 7 14:00:03 2012 -0800 resurrected "our" style of retransmission. Change-Id: I34d757aba67428437cb39b8293a9651750ad20d9 commit 384cf1a3c8fb4ec410bdf8fa5722c298e6028f3e Author: Andreas Huber <andih@google.com> Date: Tue Nov 6 09:38:55 2012 -0800 Changes to make wfd work on manta. Change-Id: I7a4e00cf16581fe2146edd1b359af195774090e4 commit 9628f24b22b35f28630d99dda3614babf51bc07e Author: Andreas Huber <andih@google.com> Date: Wed Nov 7 09:15:44 2012 -0800 Patch up rtp timestamps to more accurately measure network jitter. Change-Id: I9502a4615575f97f98a215a13131a89a6ae93c6d commit 7c891a1a24f08bbd50f55be13f7d05f43e807eb8 Author: Andreas Huber <andih@google.com> Date: Tue Nov 6 09:37:24 2012 -0800 Additions to the "wfd" tool to create a local wfd source. Change-Id: I99558653a70fdc703f9d13990b3ce1c4d3ae227a Change-Id: Ia94c63fc390f597014531073485f0cfc53b3418a
* Make video encoders' bitrate mode (constant, variable, ...) configurableAndreas Huber2012-11-011-0/+3
| | | | | | | | through the desired output format. Configure the video encoder to use constant bitrate mode for WFD. Change-Id: Id7bd619598153c13448a9c5acd69d80f8a01f333 related-to-bug: 7459597
* Various tweaks to wfdAndreas Huber2012-10-311-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | related-to-bug: 7426218 Squashed commit of the following: commit 1553f1a1c66af998674168f7f7a3be23fcb0c794 Author: Andreas Huber <andih@google.com> Date: Tue Oct 30 15:51:27 2012 -0700 Add LPCM, AVC and AVC HRD descriptors as necessary. Change-Id: Ibc836fced0fe37e8a25574c2295e886765b9ea6f commit 4e74db61d2d31ebe239acbdec8f110f88016a4ea Author: Andreas Huber <andih@google.com> Date: Tue Oct 30 15:50:52 2012 -0700 added copyright headers to Sender.{cpp,h} Change-Id: If615ccb8767e32bd83ed1f0f669acc39a72489f6 commit 7144bf8ae68c5cdb8faa6e219547aabbd750f04e Author: Andreas Huber <andih@google.com> Date: Tue Oct 30 15:50:25 2012 -0700 Reenable suspension of the RepeaterSource Change-Id: I765338fcde89c65e4b69be45a5949eba6bcdcf6f commit 812164bcfa0699821d7d8eefcc0dff96b2e2cd08 Author: Andreas Huber <andih@google.com> Date: Tue Oct 30 14:03:50 2012 -0700 Add 2 stuffing bytes to the PES headers for audio tracks. Change-Id: I8b9c634f6a565ab7fa7ecdb610f7d8557e0b139b commit a084a741a63015d47c92d99fcd8b980fe615dc7d Author: Andreas Huber <andih@google.com> Date: Tue Oct 30 13:19:38 2012 -0700 Fix PCM audio packetization in WFD. Change-Id: I99a435f9fe6b4397f24d6c22afae5ae2505ffc14 commit c5cb9369585f701f34bce41534940d5f9b59248f Author: Andreas Huber <andih@google.com> Date: Tue Oct 30 13:19:12 2012 -0700 Support extraction of PCM audio from transport streams. Change-Id: I28a0516756ebcb5587325b6588df013ac871ffb9 commit b0a0512300ae037d6b39c2d04952d34b5fc12b2d Author: Andreas Huber <andih@google.com> Date: Tue Oct 30 08:54:13 2012 -0700 disable suspend of the RepeaterSource Change-Id: Ibf42a98185b0567f817ae582a82e6580f95d3d40 commit 4330e8b7668dc92a6d882b5622c0697cf292d04c Author: Andreas Huber <andih@google.com> Date: Mon Oct 29 14:11:25 2012 -0700 Better handling of datagrams in ANetworkSession reduce unnecessary copy overhead. Change-Id: I2ed8c767274ba07764f03e8d4913041168e5755f commit a44e73c322ba3f2c336f7cc4e1d63d3a74faa75d Author: Andreas Huber <andih@google.com> Date: Mon Oct 29 11:14:47 2012 -0700 Network traffic is now handled on a separate thread. Audio and video are queued to ensure proper A/V interleaving. Scheduled packet sends according to capture timestamps to reduce send-jitter. Change-Id: Ibd6357c1e663086cf87bec0a98f8e54dfdfaa0e5 related-to-bug: 7426218 Change-Id: Ia440129d656c35814abf18df06da50b73d5bb554
* Increase bitrate now that other issues have been resolved.Dave Burke2012-10-261-1/+1
| | | | | Bug: 7426218 Change-Id: I67dfa1e4b85f326f355ad0ec5b6c699e87b45564
* Optionally emit LPCM audio instead of using AAC in wifi display codeAndreas Huber2012-10-041-9/+145
| | | | | | | | | | | | related-to-bug: 7248248 May decrease power usage at the cost of significantly increasing audio bitrate. Use "adb shell setprop media.wfd.use-pcm-audio true" to turn it on (must be done before connecting). Change-Id: I7ebeadf3209e01522a2644948287b23d7c383c7e
* Drop video bitrate to 2.5mbps.Dave Burke2012-10-031-1/+1
| | | | | | | | | We have too much corruption/loss at higher bitrates. Reviewed quality trade-off with jdong@. We can increase in the future if we have a better packet loss concealment solution. Bug: 7241844 Change-Id: I3b500a9c3a4429e834fb4c5ca04164d4e106fa9e
* Better power savings with wifi display code.Andreas Huber2012-10-031-6/+33
| | | | | | | | No more polling the encoder for work to do, the encoder instead notifies if there's activity. Change-Id: Ia707211b4f5c5a6e6b70d750233d204a2d6bb778 related-to-bug: 7248248
* Increase polling frequency again temporarily to fix A/V issuesAndreas Huber2012-10-031-14/+15
| | | | | | | | Fixes a bug in the silence detection and increases the timeout after which we enter "silent mode" to 10 secs. Change-Id: I802b058f054becd5c377186664437f7b3970193f related-to-bug: 7248248
* Enable silence detection and don't driver the audio encoderAndreas Huber2012-10-021-12/+68
| | | | | | | | or send any audio out over the network if we've seen at least one second of silence. Change-Id: Ic2bca4ce7d55bd246283dc669f5f5cb6106d88ea related-to-bug: 7248248
* Now back to 30fps, suspend updates if surface flinger didn't send usAndreas Huber2012-10-021-1/+1
| | | | | | | any new frames for one second or longer. Change-Id: I1c2ec349b0a4b7c4eb9dcdde483362ec87dd69fa related-to-bug: 7248248
* Increase converter polling interval.Andreas Huber2012-10-021-1/+1
| | | | | Change-Id: I455005086a63c70883a71e189753a117b195f22f related-to-bug: 7248248
* Take advantage of the hardware encoder's ability to prepend SPS/PPSAndreas Huber2012-10-021-1/+1
| | | | | | | to IDR frames instead of doing it manually. Change-Id: I994cfbd6539013406dd610393ba1f0b9a0dbf4d5 related-to-bug: 7245308
* Use incremental updates sent by surface flingerAndreas Huber2012-10-011-1/+1
| | | | | | | instead of running at a fixed framerate. Change-Id: Ia3f36aa449e2e952bf3263ffbb709a9b79b09c26 related-to-bug: 7266398
* Even cleaner shutdown.Andreas Huber2012-09-281-4/+0
| | | | | Change-Id: I5a76f83db3a5e43f55eb4e04269d890c2015bae7 related-to-bug: 7247918
* Tell the encoder to emit SPS/PPS before IDR frames in wifi display code.Andreas Huber2012-09-281-0/+8
| | | | | Change-Id: Ic40e09b66784dd2e370d30b688d50561a47ab85a related-to-bug: 7245308
* Various improvements to a cleaner shutdown of the wifi display connection.Andreas Huber2012-09-281-30/+75
| | | | | Change-Id: Id029a89939e53c2bd1d20e572d3975ec2795c239 related-to-bug: 7247918
* Tune WFD audio bitrate (did some listening tests).Dave Burke2012-09-271-1/+1
| | | | | | Bug: 7241844 Change-Id: I5243f7a771871e650c6c2f380e0e81e7671c7bac
* Tune iframe interval to 1sec.Dave Burke2012-09-261-1/+1
| | | | | | Bug: 7241844 Change-Id: Iae0d73ecc680f6fa69d82ee2e8fac18ebece7782
* 720p24 i-frames every 2 secs.Andreas Huber2012-09-261-2/+2
| | | | | | related-to-bug: 7239971 Change-Id: I4cbf7e9b878b180b0683656e9e8c0a6bb18e06dc
* Add some more logging, reduce startup delay to 1 sec.Andreas Huber2012-09-251-0/+4
| | | | Change-Id: Ic24a3d9e3e645288411efb46f7004d89e7a0a4b7
* Tune video bitrate to 5 mbps.Dave Burke2012-09-241-1/+1
| | | | Change-Id: Ieb7ab1675db6fb21087a1258465f866ecdc5475b
* Tune video bitrate to 2.5 MBPS.Dave Burke2012-09-201-2/+1
| | | | | | Temporary workaround for buggy firmware (desired is 5 MBPS). Change-Id: I9fb0af31ca07c9bfdc6f790b7c98ca546eaf2985
* Support IDR requests in wifi display, MediaCodec and ACodec.Andreas Huber2012-09-131-0/+21
| | | | Change-Id: I596cf8dd61b63465437f78413186fad2be287244
* Better video bandwidth utilization by not lying about the frame rate.Andreas Huber2012-09-131-1/+1
| | | | | | log network bandwidth used (for data traffic). Change-Id: I043018624b3f02d94fa9c0cb9d15a6b2f2bd2eab
* Various improvements to cleanly shutdown a wfd session.Andreas Huber2012-09-131-0/+4
| | | | Change-Id: I86f0a27d7e8eb96200153bab847a862f21a19d13
* Audio and video bitrate are now configurable through system propertiesAndreas Huber2012-09-131-2/+23
| | | | | | | | | adb shell setprop media.wfd.audio-bitrate 64000 adb shell setprop media.wfd.video-bitrate 10000000 are the defaults. Change-Id: Ib4d700748bdac2adffc6e7e31aff9c9f998e20f0
* Various improvements to the wifi display implementation.Andreas Huber2012-09-121-1/+1
| | | | | | | | Using a MediaPuller now, audio and video on their separate threads. No more flushing the RTP stream on audio tracks, since it wastes too much of a full size UDP packet. Change-Id: I53346b4aea739c3142da13bd179428503a3c98b0
* Configure the SurfaceMediaSource to emit the same number of buffersAndreas Huber2012-09-041-0/+4
| | | | | | | as the video encoder allocates for its input. Do this before connecting the bufferqueue through surface flinger. Change-Id: Ibc81db1359afe2d88fdb75b23fadae65c8a6f7cc
* Transmit frames at a higher frame rate for smoother updates, increaseAndreas Huber2012-08-301-2/+2
| | | | | | video bandwidth to 5 Mbit/sec. Change-Id: Ieb9051b0f29d5a20004d1b3befdb745bc67769c7
* Initial checkin of support for acting as a wifi display sourceAndreas Huber2012-08-291-0/+281
Change-Id: I08f17efa0c7d007e17408feb7d4fbef0a19f531a