Граф коммитов

61 Коммитов

Автор SHA1 Сообщение Дата
Simon Giesecke 88ead5d627 Bug 1613985 - Use default for equivalent-to-default constructors/destructors in dom/media. r=padenot
Differential Revision: https://phabricator.services.mozilla.com/D65178

--HG--
extra : moz-landing-system : lando
2020-03-04 15:39:20 +00:00
atul ramkrishnan 8d9da461e2 Bug 1603099 - Remove unused declaration in VideoFrameContainer.cpp r=jya
Differential Revision: https://phabricator.services.mozilla.com/D56990

--HG--
extra : moz-landing-system : lando
2020-01-06 12:05:15 +00:00
Andreas Pehrson 78c9444d74 Bug 1536156 - Make VideoFrameContainer::ClearFutureFrames keep the current frame instead of the first frame. r=padenot
Depends on D54117

Differential Revision: https://phabricator.services.mozilla.com/D54301

--HG--
extra : moz-landing-system : lando
2019-11-22 15:48:06 +00:00
Sylvestre Ledru 7c309095ea Bug 1519636 - Reformat recent changes to the Google coding style r=Ehsan
Please note that it is the first reformat with clang-format 9
I only saw a fix in the .mm file

# ignore-this-changeset

Differential Revision: https://phabricator.services.mozilla.com/D49056

--HG--
extra : moz-landing-system : lando
2019-10-21 14:13:44 +00:00
Paul Adenot 09ea1ff867 Bug 1575638 - Determine whether or not hard panning should be performed on OSX outside the audio callback. r=kinetik
Differential Revision: https://phabricator.services.mozilla.com/D47283

--HG--
extra : moz-landing-system : lando
2019-10-11 15:45:18 +00:00
John Lin aeb8b64dbe Bug 1509316 - p1: move composite listening out of VideoData/VideoSink. r=jya,mattwoodrow
On Android, decoded buffers need to be send back to MediaCodec in order to be
rendered and/or recycled. The current mechanism introduced in bug 1299068 only
works for playback(VideoData/VideoSink) but not WebRTC(VideoFrame/VideoOutput).
Move the callback to SurfaceTextureImage because VideoData and VideoFrame both
own that when using MediaCodec, and move the notification to VideoFrameContainer
for both VideoSink and VideoOutput pass frames there for compositing.

Differential Revision: https://phabricator.services.mozilla.com/D45771

--HG--
extra : moz-landing-system : lando
2019-10-09 23:08:12 +00:00
Dorel Luca c18b81f79f Backed out 3 changesets (bug 1509316) for MDA failures on dom/media/tests/mochitest/test_peerConnection_captureStream_canvas_2d.html
Backed out changeset d64c35b9c211 (bug 1509316)
Backed out changeset 817f14af91f0 (bug 1509316)
Backed out changeset b4bee18bb499 (bug 1509316)
2019-09-27 23:31:51 +03:00
John Lin 01cc36b53b Bug 1509316 - p1: move composite listening out of VideoData/VideoSink. r=jya,mattwoodrow
On Android, decoded buffers need to be send back to MediaCodec in order to be
rendered and/or recycled. The current mechanism introduced in bug 1299068 only
works for playback(VideoData/VideoSink) but not WebRTC(VideoFrame/VideoOutput).
Move the callback to SurfaceTextureImage because VideoData and VideoFrame both
own that when using MediaCodec, and move the notification to VideoFrameContainer
for both VideoSink and VideoOutput pass frames there for compositing.

Differential Revision: https://phabricator.services.mozilla.com/D45771

--HG--
extra : moz-landing-system : lando
2019-09-27 03:01:49 +00:00
Dan Minor 082a390c61 Bug 1356046 - Remove expired media telemetry; r=jya,alwu,bryce
This removes all telemetry which expired in Firefox 69 or earlier, with the
exceptions of the following, which we plan to renew:
* AUDIO_TRACK_SILENCE_PROPORTION
* MEDIA_AUTOPLAY_WOULD_BE_ALLOWED_COUNT
* MEDIA_AUTOPLAY_WOULD_NOT_BE_ALLOWED_COUNT
* MEDIACACHESTREAM_LENGTH_KB
* MEDIA_MKV_CANPLAY_REQUESTED
* MEDIA_PAGE_COUNT
* MEDIA_PAGE_HAD_MEDIA_COUNT
* VIDEO_DROPPED_FRAMES_PROPORTION
* VIDEO_PLAY_TIME
* VIDEO_HIDDEN_PLAY_TIME
* VIDEO_HIDDEN_PLAY_TIME_PERCENTAGE
* VIDEO_INFERRED_DECODE_SUSPEND_PERCENTAGE
* VIDEO_INTER_KEYFRAME_AVERAGE_MS
* VIDEO_INTER_KEYFRAME_MAX_MS
* VIDEO_SUSPEND_RECOVERY_TIME_MS
* VIDEO_VP9_BENCHMARK_FPS
* WEB_AUDIO_BECOMES_AUDIBLE_TIME
* WEBVTT_TRACK_KINDS

Differential Revision: https://phabricator.services.mozilla.com/D37313

--HG--
extra : moz-landing-system : lando
2019-08-02 18:17:45 +00:00
arthur.iakab 7aef316861 Backed out changeset b8661a3b5dc2 (bug 1356046) for causing buid bustages on HTMLMediaElement.cpp CLOSED TREE 2019-08-02 19:00:45 +03:00
Dan Minor a13ff75b20 Bug 1356046 - Remove expired media telemetry; r=jya,alwu,bryce
This removes all telemetry which expired in Firefox 69 or earlier, with the
exceptions of the following, which we plan to renew:
* AUDIO_TRACK_SILENCE_PROPORTION
* MEDIA_AUTOPLAY_WOULD_BE_ALLOWED_COUNT
* MEDIA_AUTOPLAY_WOULD_NOT_BE_ALLOWED_COUNT
* MEDIACACHESTREAM_LENGTH_KB
* MEDIA_MKV_CANPLAY_REQUESTED
* MEDIA_PAGE_COUNT
* MEDIA_PAGE_HAD_MEDIA_COUNT
* VIDEO_DROPPED_FRAMES_PROPORTION
* VIDEO_PLAY_TIME
* VIDEO_HIDDEN_PLAY_TIME
* VIDEO_HIDDEN_PLAY_TIME_PERCENTAGE
* VIDEO_INFERRED_DECODE_SUSPEND_PERCENTAGE
* VIDEO_INTER_KEYFRAME_AVERAGE_MS
* VIDEO_INTER_KEYFRAME_MAX_MS
* VIDEO_SUSPEND_RECOVERY_TIME_MS
* VIDEO_VP9_BENCHMARK_FPS
* WEB_AUDIO_BECOMES_AUDIBLE_TIME
* WEBVTT_TRACK_KINDS

Differential Revision: https://phabricator.services.mozilla.com/D37313

--HG--
extra : moz-landing-system : lando
2019-08-02 15:37:59 +00:00
Andreas Pehrson a4bbc0fffb Bug 1423253 - Move VideoSegment-specific logic out of VideoFrameContainer. r=padenot
It is only used in one place. Can just as well be inlined there.

Differential Revision: https://phabricator.services.mozilla.com/D22925

--HG--
extra : moz-landing-system : lando
2019-03-22 11:45:31 +00:00
Sylvestre Ledru 4aa92e3091 Bug 1519636 - Reformat recent changes to the Google coding style r=Ehsan
# ignore-this-changeset

Differential Revision: https://phabricator.services.mozilla.com/D22514
2019-03-13 10:19:06 +01:00
sotaro e7cc92c95a Bug 1516834 - Check if CopyData succeeded r=nical
When CopyData failed, an image does not have valid data. It should not be used.

Differential Revision: https://phabricator.services.mozilla.com/D19746
2019-02-19 09:12:47 +09:00
Sylvestre Ledru 804b8b8883 Bug 1204606 - Reformat of dom/media r=jya
# skip-blame

Differential Revision: https://phabricator.services.mozilla.com/D12251

--HG--
extra : moz-landing-system : lando
2018-11-19 13:25:37 +00:00
Andreas Pehrson f78f8582c7 Bug 1471588 - Trace track and stream media consumers. r=padenot
MozReview-Commit-ID: DDkVUEHi0dg

--HG--
extra : rebase_source : d05a30ae43fe1e26d11c6a75a6b47dc6cf8d9b71
2018-06-27 18:25:49 +02:00
Chris Peterson 37efe4d0e6 Bug 1428535 - Add missing override specifiers to overridden virtual functions. r=froydnj
MozReview-Commit-ID: DCPTnyBooIe

--HG--
extra : rebase_source : cfec2d96faeb11656d86d760a34e0a04cacddb13
extra : intermediate-source : 6176724d63788b0fe8caa3f91607c2d93dbaa7ec
extra : source : eebbb0600447f9b64aae3bcd47b4be66c02a51ea
2017-11-05 19:37:28 -08:00
Chris Pearce 8bddf869cf Bug 1416663 - Move Gecko/HTMLMediaElement specific stuff out of VideoFrameContainer. r=jwwang
MozReview-Commit-ID: 4giNMi8qsTZ

--HG--
extra : rebase_source : 0f9e33c3704aa3925635d2290a5e18f9eebd2b74
2017-11-13 16:09:23 +13:00
Jonathan Watt 341ea5e4f1 Bug 1401356, part 2 - Rename nsSVGEffects to SVGObserverUtils. r=longsonr 2017-08-30 15:58:31 +01:00
Jonathan Watt 0e4feb75d3 Bug 1401356, part 1 - Rename nsSVGEffects.h/.cpp to SVGObserverUtils.h/.cpp. r=longsonr
--HG--
rename : layout/svg/nsSVGEffects.cpp => layout/svg/SVGObserverUtils.cpp
rename : layout/svg/nsSVGEffects.h => layout/svg/SVGObserverUtils.h
2017-08-30 14:14:46 +01:00
Matt Woodrow 781ec6ffa1 Bug 1388162 - Add a Destroy function to nsDisplayItem to use instead of manually invoking the destructor, this will allow us to recycle them in the future. r=mstange
* * *
[mq]: fix

MozReview-Commit-ID: LUXZAIL73BJ
2017-08-07 16:07:43 +12:00
Sebastian Hengst 7f85daeb2a Backed out changeset e9985564e081 (bug 1388162) for failing chrome's test_animation_performance_warning.html | preserve-3d transform. r=backout 2017-08-10 14:40:20 +02:00
Matt Woodrow 95f2e31f88 Bug 1388162 - Add a Destroy function to nsDisplayItem to use instead of manually invoking the destructor, this will allow us to recycle them in the future. r=mstange 2017-08-07 16:07:43 +12:00
JW Wang 21dc253e76 Bug 1377025. P2 - dispatch intrinsic size changes to the main thread. r=cpearce
So we can remove the use of mMutex from InvalidateWithFlags().

MozReview-Commit-ID: 75pHDM5xYYb

--HG--
extra : rebase_source : e39e1a3e4c796b8163b0c9b1bfeec048e6fb06f0
2017-06-29 10:27:38 +08:00
JW Wang 2545c614c0 Bug 1377025. P1 - dispatch image size changes to the main thread so mImageSizeChanged is for main thread only. r=cpearce
MozReview-Commit-ID: 6rpxjSVAY2h

--HG--
extra : rebase_source : e441d96e6e18c7891a6236d7909357248dad3bd6
2017-06-28 23:04:49 +08:00
JW Wang 5a222af5cc Bug 1366640 - add a telemetry probe to debug main thread hang in VideoFrameContainer. r=cpearce,francois
MozReview-Commit-ID: 6crTtq1IeD9

--HG--
extra : rebase_source : 106afd126a00c63ce866781917d178aa17c29781
extra : source : 31e57a8b0c07f4053341d0f046db994b4476fd83
2017-05-19 12:37:37 +08:00
JW Wang 3c60a97e1f Bug 1343458 - Label runnables in dom/media/VideoFrameContainer.cpp. r=cpearce
MozReview-Commit-ID: D0QTbA4UwAZ

--HG--
extra : rebase_source : fa35324fc7e37b54f05f1ddb864a19c51a6cbec9
extra : intermediate-source : e48b7e6127698005749086d8ee9d94ec4fb39ae6
extra : source : 6b8a2a5d9984828d60b2777b2fa5f305340e3219
2017-03-01 14:49:37 +08:00
Andreas Pehrson a3e93b2fcf Bug 1273314 - Fix VideoFrameContainer logging. r=jesup
MozReview-Commit-ID: KYHhy7yUHpK

--HG--
extra : rebase_source : 1e50727cc24a93e20576ecead05e264aeb9e3378
2016-10-06 11:37:47 +02:00
Sotaro Ikeda 8cffca6531 Bug 1299415 - Clear ImageContainer cached resources When VideoSink pause playing r=jwwang 2016-09-04 23:38:43 -07:00
ctai 2c69985ffe Bug 1201363 - Call MediaStreamVideoSink::setCurrentFrames in SourceMediaStream::AppendToTrack. r=jesup
In this patch, we first deal with the case of MediaElement. Now we replace |PlayVideo| with |VideoFrameContainer::SetCurrentFrames| in |SourceMediaStream::AppendToTrack|. The MSG use TimeStamp::Now() for the TimeStamp of each video frame in most of case except MediaElement case. Becasue the MediaElement has its own VideoQueue, we need to calucalte the correct Timestamp based on the StartTimeStamp of this MediaStream and the elpased time of the video frame in DecodedStream.

MozReview-Commit-ID: 2bm2AHkFXHu

--HG--
extra : transplant_source : %3D%AA%00%CE%A3SV5%8F%84%96%AC%E2%D9%10%EC%85%07N%DF
2016-07-25 10:01:26 +08:00
ctai 5918cfba5b Bug 1201363 - Adding base class MediaStreamVideoSink and changing VideoFrameContainer to be inherited from MediaStreamVideoSink. r=jesup
MediaStreamVideoSink is the base class of VideoFrameContainer, CaptureTask(ImageCapture), MediaStreamVideoRecorderSink(MediaRecoreder) and PipelineVideoSink(WebRTC-MediaPipelineTransmit). In this patch, I change VideoFrameContainer only. The rest of cases will be changed in latter patches of this bug.

MozReview-Commit-ID: JNUke3fyCoN

--HG--
extra : transplant_source : %0A%C7q%F3Md%0CO%8C%5DH%90%BBvp%9E%F0%DA%CD%CB
2015-12-24 10:43:28 +08:00
Sebastian Hengst 9a11ee24d8 Backed out changeset b531c8bff6e9 (bug 1201363) for timeout in GTest VP8VideoTrackEncoder.FrameEncode. r=backout 2016-08-03 19:33:55 +02:00
Sebastian Hengst f4671c3b11 Backed out changeset 4111e388bd90 (bug 1201363) 2016-08-03 19:33:25 +02:00
ctai a3cc6128d3 Bug 1201363 - Call MediaStreamVideoSink::setCurrentFrames in SourceMediaStream::AppendToTrack. r=jesup
In this patch, we first deal with the case of MediaElement. Now we replace |PlayVideo| with |VideoFrameContainer::SetCurrentFrames| in |SourceMediaStream::AppendToTrack|. The MSG use TimeStamp::Now() for the TimeStamp of each video frame in most of case except MediaElement case. Becasue the MediaElement has its own VideoQueue, we need to calucalte the correct Timestamp based on the StartTimeStamp of this MediaStream and the elpased time of the video frame in DecodedStream.

MozReview-Commit-ID: 2bm2AHkFXHu

--HG--
extra : amend_source : 7b9c51dcb4046c6c807d1cf1e48bef301e45fa8e
2016-07-25 10:01:26 +08:00
ctai b761a4f52b Bug 1201363 - Adding base class MediaStreamVideoSink and changing VideoFrameContainer to be inherited from MediaStreamVideoSink. r=jesup
MediaStreamVideoSink is the base class of VideoFrameContainer, CaptureTask(ImageCapture), MediaStreamVideoRecorderSink(MediaRecoreder) and PipelineVideoSink(WebRTC-MediaPipelineTransmit). In this patch, I change VideoFrameContainer only. The rest of cases will be changed in latter patches of this bug.

MozReview-Commit-ID: JNUke3fyCoN

--HG--
extra : amend_source : 7899e95e8a57b2465a854f95d86261a1c1d7277b
2015-12-24 10:43:28 +08:00
Carsten "Tomcat" Book 02adb43791 Backed out changeset 726ee2bcfdef (bug 1201363) for static build bustage 2016-08-02 12:54:13 +02:00
Carsten "Tomcat" Book 27cb7f4d79 Backed out changeset 06c0a7eb7bc6 (bug 1201363) 2016-08-02 12:53:53 +02:00
ctai edeaa48113 Bug 1201363 - Call MediaStreamVideoSink::setCurrentFrames in SourceMediaStream::AppendToTrack. r=jesup
In this patch, we first deal with the case of MediaElement. Now we replace |PlayVideo| with |VideoFrameContainer::SetCurrentFrames| in |SourceMediaStream::AppendToTrack|. The MSG use TimeStamp::Now() for the TimeStamp of each video frame in most of case except MediaElement case. Becasue the MediaElement has its own VideoQueue, we need to calucalte the correct Timestamp based on the StartTimeStamp of this MediaStream and the elpased time of the video frame in DecodedStream.

MozReview-Commit-ID: 2bm2AHkFXHu

--HG--
extra : transplant_source : %C4n%D7a%10%CFK%D5%F2%DC%10%08%C2%24%EC%11%13J%DB%5D
2016-07-25 10:01:26 +08:00
ctai 43c3c04482 Bug 1201363 - Adding base class MediaStreamVideoSink and changing VideoFrameContainer to be inherited from MediaStreamVideoSink. r=jesup
MediaStreamVideoSink is the base class of VideoFrameContainer, CaptureTask(ImageCapture), MediaStreamVideoRecorderSink(MediaRecoreder) and PipelineVideoSink(WebRTC-MediaPipelineTransmit). In this patch, I change VideoFrameContainer only. The rest of cases will be changed in latter patches of this bug.

MozReview-Commit-ID: JNUke3fyCoN

--HG--
extra : transplant_source : %89%C8%0F%3B%EF%93%7C%BC%DAQ%19%196%19D%8Fu%EF%3B%11
2015-12-24 10:43:28 +08:00
Sotaro Ikeda f35a68e9f9 Bug 1282341 - Add ImageContainer::ClearCachedResources() r=nical 2016-06-27 18:25:01 -07:00
Andreas Pehrson e899edc733 Bug 1208371 - Ensure a media element's ImageContainer is protected when playing a stream. r=mt,jesup
HTMLMediaElement needs special protection when playing a stream since its
ImageContainer can outlive the video track of a stream.

Consider for instance when a (cross-origin) video track is removed from a
DOMMediaStream by a user and the remaining video track (non-CORS) does not yet
contain any actual video frames. The HTMLMediaElement will display a frame from
the removed track but the DOMMediaStream's principal has been updated to not
include the principal from the removed track.

With this patch we handle this by letting VideoFrameContainer notify
HTMLMediaElement when it has flushed out all video frames belonging to a
certain PrincipalHandle. I.e., when a new PrincipalHandle has been applied to the
underlying ImageContainer.

MozReview-Commit-ID: LvIZPl6Rdgj

--HG--
extra : rebase_source : cfbad5e5e7f43af4da4bfc213494b7b8e22cde17
2016-02-04 09:27:09 +08:00
Birunthan Mohanathas d7371d07d0 Bug 1235261 - Part 1: Rename nsAutoTArray to AutoTArray. r=froydnj 2016-02-02 17:36:30 +02:00
Phil Ringnalda d381b4bca6 Back out 7 changesets (bug 1235261) for cpptest failures in TestTArray
CLOSED TREE

Backed out changeset d66c3f19a210 (bug 1235261)
Backed out changeset 467d945426bb (bug 1235261)
Backed out changeset 32b61df13142 (bug 1235261)
Backed out changeset c50bb8ed4196 (bug 1235261)
Backed out changeset 0ff0fa6fe81f (bug 1235261)
Backed out changeset df70e89669da (bug 1235261)
Backed out changeset 064969357fc9 (bug 1235261)
2016-01-31 10:10:57 -08:00
Birunthan Mohanathas 373593275e Bug 1235261 - Part 1: Rename nsAutoTArray to AutoTArray. r=froydnj 2016-01-31 17:12:12 +02:00
Nicholas Nethercote 842dd1cf5a Bug 1207741 - Remove gfxIntSize. r=nical.
gfxIntSize is just a typedef of gfx::IntSize, so this is very mechanical. The
only tricky part is deciding for each occurrence whether to replace it with
IntSize, gfx::IntSize or mozilla::gfx::IntSize; in all cases I went with the
shortest one that worked given the existing "using namespace" declarations.

--HG--
extra : rebase_source : 67fd15f87222b16defa70ef795c6d77dfacf1c36
2015-09-23 11:49:05 -07:00
Robert O'Callahan 6abd4c751d Bug 1200099. Stop using a distinct mPlaybackStream to play a media stream through an HTMLMediaElement. r=jwwang
--HG--
extra : commitid : 3xsVxxZxINX
extra : rebase_source : 7c51fb071f9f303919ece13ff44d7a9a4cc438a9
2015-08-31 23:33:53 +12:00
Birunthan Mohanathas a8939590de Bug 1182996 - Fix and add missing namespace comments. rs=ehsan
The bulk of this commit was generated by running:

  run-clang-tidy.py \
    -checks='-*,llvm-namespace-comment' \
    -header-filter=^/.../mozilla-central/.* \
    -fix
2015-07-13 08:25:42 -07:00
Robert O'Callahan dfcb554e90 Bug 1143575. Introduce VideoFrameContainer::SetCurrentFrames. r=cpearce
--HG--
extra : commitid : 4LVwP1fIQyg
extra : rebase_source : 1dc5321ad82ccafc07596d708791d9501c2b8d29
2015-03-30 18:11:37 +13:00
Robert O'Callahan 1c6ae84e38 Bug 1143575. Introduce VideoFrameContainer::ClearCurrentFrame(size), and don't increment mFrameID when clearing frames. r=cpearce
--HG--
extra : commitid : A813gqmskNT
extra : rebase_source : 3bc1790cb98779b8ab55dc3373fd79cdbdcab014
2015-03-30 17:51:32 +13:00
Robert O'Callahan 9fa98a0f8d Bug 1143575. Let ImageContainer::SetCurrentImages accept multiple images. r=nical
--HG--
extra : commitid : 4THtxHGR1j1
extra : rebase_source : b97186838e57bbe50599b9d1cc37f433994d3b00
2015-05-25 14:33:35 +12:00