Commit Graph

108 Commits

Author SHA1 Message Date
Ryan VanderMeulen
340794d0a9 Backed out 2 changesets (bug 1332619) by request.
Backed out changeset 08d0dccfb2c3 (bug 1332619)
Backed out changeset a406da1d258c (bug 1332619)

--HG--
extra : rebase_source : 0b6a5f2623967fe35eaa60941571feb3e91fecb5
2017-01-23 11:25:11 -05:00
Andreas Pehrson
a5241b52b4 Bug 1332619 - Fix missed duration when skipping a frame in VP8TrackEncoder. r=jesup
MozReview-Commit-ID: GpXUHfUj5v2

--HG--
extra : rebase_source : 1d5b57956e4968225bb6f66f343fce5cf8d89837
extra : source : 146fbe89eafb1b57e33bc1e1eb675512c971d532
2017-01-20 15:47:04 +01:00
Phil Ringnalda
0fae2ed52a Backed out 2 changesets (bug 1332619) for frequent Win8 gtest failures in VP8VideoTrackEncoder.SkippedFrames
Backed out changeset 9ea8e4f2edae (bug 1332619)
Backed out changeset 123099d23df5 (bug 1332619)
2017-01-20 20:02:57 -08:00
Andreas Pehrson
151590b2b2 Bug 1332619 - Fix missed duration when skipping a frame in VP8TrackEncoder. r=jesup
MozReview-Commit-ID: GpXUHfUj5v2

--HG--
extra : rebase_source : 07871e9be0a8f67fe986f6caf63c336f65eec1fe
extra : source : 146fbe89eafb1b57e33bc1e1eb675512c971d532
2017-01-20 15:47:04 +01:00
Andreas Pehrson
c6a1810522 Bug 1332598 - Make per-frame logs in VP8TrackEncoder verbose. r=jesup
MozReview-Commit-ID: HzpUlWjnAEW

--HG--
extra : rebase_source : 1b261b4c160f65cc0262460f0654d635e1aae78c
extra : source : 3c7a9fca1a5703e3ca6349a5da625ec87c2755c5
2017-01-18 15:01:47 +01:00
Andreas Pehrson
94d46cd57d Bug 1332585 - Protect TrackEncoder members from races. r=jesup
mCanceled is one member which is protected only in a couple of places.

I hit a MOZ_CRASH without this in a gtest, but I'm not sure if we haven't seen
it in release by chance or by design.

MozReview-Commit-ID: 61KpjaBDyhB

--HG--
extra : rebase_source : 4ab032ee2963cd7e94d19b8428e6405ffa59332e
extra : source : 06b2f8307ad0c96197e75d2e147e660d8085afc7
2017-01-20 17:00:02 +01:00
Andreas Pehrson
192e6bf31b Bug 1332585 - Fix first frame duration being counted twice. r=jesup
MozReview-Commit-ID: HdHs1rpVUJK

--HG--
extra : rebase_source : eb44c91e3a80f0210d461adebe2c623799422bf9
extra : source : b4b284c0bce5f2eb6844eef78f1f7d445057b84b
2017-01-20 11:50:07 +01:00
Andreas Pehrson
5f2b360d48 Bug 1332584 - Use time conversion utils from VideoUtils. r=jesup
MozReview-Commit-ID: 7AVeGp5akfx

--HG--
extra : rebase_source : 5c514995c65ffcc0d7b23298260a5ca322d9d356
extra : source : ea6b4f40dcbeaec6f81f26ec95483f844a37b2ca
2017-01-20 18:59:46 +01:00
Andreas Pehrson
9951d0cd88 Bug 1332584 - Append last frame on EOS in VideoTrackEncoder. r=jesup
MozReview-Commit-ID: LARhY0LAEtG

--HG--
extra : rebase_source : 9f08a9a7fab52f14a8f140711fb9355d8039cd79
extra : source : 72bcbe049bcbca33e613508f5a63e691c0110ee4
2017-01-20 18:29:26 +01:00
Andreas Pehrson
a4b74c9907 Bug 1330918 - Add VideoTrackEncoder::AppendVideoSegment logs. r=jesup
MozReview-Commit-ID: FwG0EHuaxpW

--HG--
extra : rebase_source : 03d8df55b25a401c9bc7027eced1bf2f73898205
2017-01-18 19:28:32 +01:00
Andreas Pehrson
6a29cdbd49 Bug 1330918 - Use timestamps for frames in VideoTrackEncoder. r=bechen,jesup
This makes VideoTrackEncoder use timestamps when it passes frames to
VP8TrackEncoder. It also rewrites the chunks' durations and bases them on said
timestamps. This should mean that VP8TrackEncoder can continue passing durations
to the encoder as it does today.

MozReview-Commit-ID: GaUsF5PR4ZN

--HG--
extra : rebase_source : 4206afe24fce0d9c0aa7137ea04d8a28f30191d7
2017-01-19 15:14:02 +01:00
Wes Kocher
d8bf77ced9 Backed out 2 changesets (bug 1330918) for frequent gtest failures a=backout
Backed out changeset aedd9a68f2c0 (bug 1330918)
Backed out changeset b2d8a93a50a8 (bug 1330918)

MozReview-Commit-ID: FhQrvvYY8LQ
2017-01-18 15:21:44 -08:00
Andreas Pehrson
d3cd678596 Bug 1330918 - Add VideoTrackEncoder::AppendVideoSegment logs. r=jesup
MozReview-Commit-ID: FwG0EHuaxpW

--HG--
extra : rebase_source : 67f448fb8c8d8c8a035a6c13f395b2864a45c8ac
2017-01-18 19:28:32 +01:00
Andreas Pehrson
da30868674 Bug 1330918 - Use timestamps for frames in VideoTrackEncoder. r=bechen,jesup
This makes VideoTrackEncoder use timestamps when it passes frames to
VP8TrackEncoder. It also rewrites the chunks' durations and bases them on said
timestamps. This should mean that VP8TrackEncoder can continue passing durations
to the encoder as it does today.

MozReview-Commit-ID: GaUsF5PR4ZN

--HG--
extra : rebase_source : 763a71a4327ce0505efc7732c3eda93c48667b01
2017-01-18 20:08:23 +01:00
Andreas Pehrson
3ccb36801b Bug 1330676 - Use VBR in VP8TrackEncoder. r=bechen,derf
MozReview-Commit-ID: AvezDCrOIuZ

--HG--
extra : rebase_source : e4b3cac00a407e0f58eafc7f9c7125747916731d
2017-01-12 17:13:13 +01:00
Andreas Pehrson
bbb3d58dc1 Bug 1231848 - Encode every frame as it comes in to VP8TrackEncoder. r=bechen,jesup
MozReview-Commit-ID: HZOcj9bqY0A

--HG--
extra : rebase_source : 503b49ae1279c07deef1a549064bedee5c0050bf
2017-01-12 12:19:34 +01:00
Andreas Pehrson
b1d79c9b17 Bug 1231848 - Do not write framerate metadata to webm container in MediaRecorder. r=bechen,jesup,rillian
MozReview-Commit-ID: 2lehFGZTPxh

--HG--
extra : rebase_source : e9d416f33ff3b2c909417080654b0dbc9f7b39f9
2017-01-13 09:00:55 +01:00
Andreas Pehrson
a5d36270ea Bug 1322745 - Rewrite VP8TrackEncoder::GetSourceSurface and make it self contained. r=mchiang
MozReview-Commit-ID: IWKVFeGpXDp

--HG--
extra : rebase_source : d7aff6f553a5752007519a509f9da2e68a60ef2c
2016-12-09 10:46:01 -10:00
Ehsan Akhgari
d5d66e16c9 Bug 1311214 - Remove b2g OMX encoder/decoder; r=cpearce 2016-10-19 17:44:31 -04:00
ctai
1d7c721cfc Bug 1300871 - Rollback to use original duration in video case. r=jesup
MozReview-Commit-ID: 2gK8vvBKtkC

--HG--
extra : rebase_source : 1e1d2f01a1f39685365a7df061eba53c094eb10d
2016-09-08 13:46:48 +08:00
Chia-hung Tai
4e56e311ea Bug 1299714 - Add back the missing timeout protection back to |VideoTrackEncoder::Init|. r=jesup,pehrsons
MozReview-Commit-ID: AhgikMTvxAE

--HG--
extra : rebase_source : b580eedeb493397d988954d3dbde15f9a16d4bc3
2016-09-01 11:51:11 +08:00
Munro Mengjue Chiang
c8fa8d35f8 Bug 1272877 - dispatch GetAsSourceSurface() to main thread to prevent assert; r=jesup
MozReview-Commit-ID: 7Y5cuNFw8sm

--HG--
extra : rebase_source : a418c6baa2e2ecb52155dc9f7a1320b41acd3b6b
2016-08-23 15:45:23 +08:00
Randell Jesup
b21f1c6ba5 Bug 1294753: encode all available audio on each cycle instead of one 'packet' r=rillian
Also fixes some accesses to mEndOfStream outside the monitor
2016-08-18 00:31:11 -04:00
Randell Jesup
612d7d1f4b Backed out changeset 09d9b633e335 (bug 1294753) 2016-08-18 02:21:43 -04:00
Randell Jesup
56574d1bf8 Bug 1294753: encode all available audio on each cycle instead of one 'packet' r=rillian 2016-08-18 00:31:11 -04:00
Chia-hung Tai
e759836a63 Bug 1201363 - MediaStreamVideoSink for MediaRecorder case. r=jesup
Add MediaStreamVideoRecorderSink into MediaEncorder. In this patch, I still keep use duration to pass to TrackEncoders. Don't want to make this bug too big and out of control. We can file a new bug to change TrackEncoders use TimeStamp only.

MozReview-Commit-ID: KGftzulZynj

--HG--
extra : transplant_source : %E9%22B%90%D6%CF%08%12X%D1%E2%17%90%99%B2%91%24B%EA%1D
2016-06-15 16:48:44 +01:00
Sebastian Hengst
253063065c Backed out changeset 64b256cf2807 (bug 1201363) 2016-08-03 19:33:24 +02:00
Chia-hung Tai
7d3f0cf614 Bug 1201363 - MediaStreamVideoSink for MediaRecorder case. r=jesup
Add MediaStreamVideoRecorderSink into MediaEncorder. In this patch, I still keep use duration to pass to TrackEncoders. Don't want to make this bug too big and out of control. We can file a new bug to change TrackEncoders use TimeStamp only.

MozReview-Commit-ID: KGftzulZynj

--HG--
extra : amend_source : 90fd7ddab4ecda4b95cd77c705cfb29692782de9
2016-06-15 16:48:44 +01:00
Carsten "Tomcat" Book
1d6d29d0c6 Backed out changeset 5b926a6a6e4e (bug 1201363) 2016-08-02 12:53:49 +02:00
Chia-hung Tai
fa18690dd9 Bug 1201363 - MediaStreamVideoSink for MediaRecorder case. r=jesup
Add MediaStreamVideoRecorderSink into MediaEncorder. In this patch, I still keep use duration to pass to TrackEncoders. Don't want to make this bug too big and out of control. We can file a new bug to change TrackEncoders use TimeStamp only.

MozReview-Commit-ID: KGftzulZynj

--HG--
extra : transplant_source : %3A%8Dv%85%A3%D8Y%99%D6%BB%A1%0A%BB%DE%806%C1yV%28
2016-06-15 16:48:44 +01:00
Chris Peterson
3bc5c811b1 Bug 1290644 Remove VS2010 workaround in dom/media/. r=ayang 2016-07-30 20:41:09 -07:00
Tom Tromey
5538d692d3 Bug 1286877 - do not set c-basic-offset for python-mode; r=gps
This removes the unnecessary setting of c-basic-offset from all
python-mode files.

This was automatically generated using

    perl -pi -e 's/; *c-basic-offset: *[0-9]+//'

... on the affected files.

The bulk of these files are moz.build files but there a few others as
well.

MozReview-Commit-ID: 2pPf3DEiZqx

--HG--
extra : rebase_source : 0a7dcac80b924174a2c429b093791148ea6ac204
2016-07-14 10:16:42 -06:00
ctai
fd36b32d94 Bug 1266646 - Move group of MediaStreamListener to a new header file. r=pehrsons
This can reduce the include header dependency. MediaStreamVideoSink will inherit from DirectMediaStreamTrackListener. But we can't use forward declaration on MediaStreamListener because the usage of nsTArray<RefPtr<MediaStreamVideoSink>>.

MozReview-Commit-ID: 328s4Kw9NvW

--HG--
extra : transplant_source : %D2%18%E3%3B%0C%D8%F04%F3%EB%EB%A0%A7%8B%B1%A9%AB%97rY
2016-06-30 15:07:48 +08:00
ctai
533acf2e59 Bug 1266646 - Rename MediaStreamDirectListener and MediaStreamTrackDirectListener to DirectMediaStreamListener and DirectMediaStreamTrackListener respectively. r=pehrsons
Rename those two function to better name alignment with AddDirectListener and AddDirectTrackListener.

MozReview-Commit-ID: 6QY08oyih1X

--HG--
extra : transplant_source : %5C%1C%23%AC%D7%0D%97%24%CB%ED%8E%D5%60/%5E%07%F2%85Z%DA
2016-04-29 11:45:25 +08:00
Sebastian Hengst
f310d4012a Backed out changeset c89b8cc657b2 (bug 1266646) 2016-06-13 21:23:53 +02:00
ctai
4b40fd1bc1 Bug 1266646 - Rename MediaStreamDirectListener and MediaStreamTrackDirectListener to DirectMediaStreamListener and DirectMediaStreamTrackListener respectively. r=jesup,pehrsons
Rename those two function to better name alignment with AddDirectListener and AddDirectTrackListener.

MozReview-Commit-ID: 6QY08oyih1X

--HG--
extra : rebase_source : e0f2ac5de75d54a870f5a99f08505e40aa0696d9
2016-04-29 11:45:25 +08:00
Jonathan Watt
b15368cfcb Bug 1279451 - Remove a lot of unnecessary includes of nsAutoPtr.h. rs=sparky 2016-06-07 21:10:18 +01:00
ctai
e55d14cd55 Bug 1278027 - Reuse some codes of MediaEncoder::NotifyQueuedTrackChanges in MediaEncoder::NotifyQueuedAudioData. r=jesup
MozReview-Commit-ID: JBRdxD1wA4c

--HG--
extra : transplant_source : %F1%8BN%F2%0D%07%88%E3%239%C6%B8%3A%5EB%1A%AC%CE%FA%9D
2016-06-07 12:25:04 +08:00
Chris Peterson
11ef78ae89 Bug 1275016 - Rename Endian.h to EndianUtils.h to avoid #include confusion with Android's endian.h stdlib header. r=froydnj
--HG--
rename : mfbt/Endian.h => mfbt/EndianUtils.h
2016-05-22 13:31:11 -07:00
ctai
7e0671d483 Bug 1266647 - Clean NotifyQueuedTrackChange to only notify when command is track create and track end. r=jesup r=pehrsons
MozReview-Commit-ID: 4Pp3xHeBIW4

--HG--
extra : transplant_source : %D4c%13P%82Y%04%FA%0E%9D%9C%97%91%AAH%FCI%C3u_
2016-05-04 16:08:44 +08:00
ctai
8fcb64e480 Bug 1266644 - Rename StreamBuffer to StreamTracks. r=jesup r=pehrsons
Rename StreamBuffer to StreamTracks. We still need a place to keep the track information in every MediaStream, even the StreamBuffer::Track::mSegment is empty.

--HG--
rename : dom/media/StreamBuffer.cpp => StreamTracks.cpp
rename : dom/media/StreamBuffer.h => StreamTracks.h
2016-01-26 10:49:01 +08:00
bechen
d83a7ef916 Bug 1261007 - Part 3 - Remove the same/redundant code of checking the unique image. r=jolin
MozReview-Commit-ID: ByLCFShcN8q

--HG--
extra : transplant_source : %A0d%BA%13%5D%2C%FEOFF%8B%A9%DF%C0L1%AE%A0%AE%F4
2016-04-18 14:31:02 +08:00
bechen
7f96be6bff Bug 1261007 - Part 1 - Force to send video sample into encoder if we got the same video sample more than 1 seconds. Enable testcases. r=jolin
MozReview-Commit-ID: GXFZVqDUChM

--HG--
extra : transplant_source : %E0%D9JK%EF%A3%7C%F1%E25%DC%09%A1El%22P/%20%9F
2016-04-13 17:10:55 +08:00
Andreas Pehrson
be74876e25 Bug 1208371 - Add PrincipalHandle to MediaChunks. r=mt,jesup
PrincipalHandle is a thread safe pointer to a holder of (the main-thread-only
nsIPrincipal) that can be passed around the MSG.

A MediaStreamTrack whose source has just updated its principal, sets the new
principal aside (as its "pending principal"), and combines the new principal
into its current principal.

Then the source starts passing the new principal to the MediaStreamGraph as
a PrincipalHandle.

Changes to a track's PrincipalHandle on the MSG will be surfaced through the
MediaStreamTrackListener API. These changes are dispatched to main thread
and compared to a MediaStreamTrack's pending principal. In case of a match
the track knows the correct principal is flowing and can move the pending
principal to be the current principal and update any main thread principal
observers.

MozReview-Commit-ID: D0JXGWhQFFU

--HG--
extra : rebase_source : 296e269bb46fc5a85a9c3f90dfc0dc40e53572bc
2016-04-06 14:56:44 +02:00
bechen
fd7bde80bb Bug 1215115 - part2: Mux opus into webm, remove bitdepth. r=rillian
MozReview-Commit-ID: 7D74vONbkFP

--HG--
extra : transplant_source : 2%AA%C8%F34%1E%CF%3C%9B%88%AC%AD%9F-%DC%7C%FE%B1m%5D
2016-04-01 11:04:00 +08:00
bechen
3c837a6b1a Bug 1215115 - part1: Replace the vorbis by opus in MediaEncoder and also reomve the VorbisTrackEncoder files. r=rillian
MozReview-Commit-ID: Kjf96Nk2pPk

--HG--
extra : transplant_source : .3QTH%88%84%1B%B7%3B%06%B6%06mB%B8%BBB%BA%18
2016-03-30 18:03:05 +08:00
Randell Jesup
20b96bf233 Bug 1257318: Pass TRACK_EVENT_ENDED events through to the TrackEncoders r=padenot
MozReview-Commit-ID: 4b6p27YrHEw

--HG--
extra : rebase_source : c608431a3bed2dff6c08881e2bc5a8deac470a48
2016-03-19 10:37:42 -04:00
Randell Jesup
9f6c2b2c00 Bug 1257318: Make recorder.pause()/resume() work with DirectListeners r=padenot
MozReview-Commit-ID: FrqlK7DqmIZ

--HG--
extra : rebase_source : 3e23500131fc0edbb17f8fe65e9adbe8365e992a
2016-03-19 01:04:50 -04:00
Randell Jesup
2de5a1de8e Bug 1257318: Move MediaRecorder to use DirectListeners wherever possible. r=roc
--HG--
extra : rebase_source : 5350255f08a3409568f6f4501f32111a7525df5b
2016-03-19 16:53:51 -04:00
Benjamin Chen
c258d7a911 Bug 1243611 - When EOS, call vpx_codec_encode correctly. r=rillian
MozReview-Commit-ID: IzrDAOD11r9

--HG--
extra : rebase_source : 31fd4b8f4e6b24b63864e93f6484a87f325f3f34
2016-02-26 16:07:29 +08:00