Commit Graph

49 Commits

Author SHA1 Message Date
Birunthan Mohanathas
617866f602 Bug 1026535 - Fix mismatched class/struct tags. r=ehsan 2014-06-18 17:57:51 -07:00
Chris Pearce
a8e52798ff Bug 778077 - Implement HTMLMediaElement.fastSeek(time). r=cajbir
Implement HTMLMediaElement.fastSeek(), basically by changing all the
MediaDecoderReader::Seek() overrides to not call
MediaDecoderReader::DecodeToTarget(), and have MediaDecoderReader::DecodeSeek()
call DecodeToTarget() if we're doing an accurate (non-fast) seek.

Update gizmo.mp4 to have a keyframe every second, instead of only 1 keyframe at
the start of stream. This makes the unit test I added more useful for mp4...

I pushed most of the seek target clamping logic in MediaDecoder up into
HTMLMediaElement, so that we're clamping in fewer places. Note
MediaDecoderStateMachine::Seek() still sanity checks the seek target.

We have to update the currentTime/MediaDecoder playback position after a seek
completes now, rather than assuming the seek always got it exactly right.

Removed those pesky assertions about seek target lying in the first frame after
seek, since actually sometimes the media doesn't have samples for all streams
after a seek (either due to the media being encoded like that, or because of a
bug in the platform's decoder, not entirely sure).

Green: https://tbpl.mozilla.org/?tree=Try&rev=b028258565e2
* * *
Bug 778077 - Fix up MediaOMXReader fastseek to ensure audio stream stays in sync with video stream. r=cajbir
2014-04-01 16:39:04 +13:00
Ed Morley
9d7a5cff30 Backed out changeset 00fa39c23b44 (bug 778077) for reftest failures 2014-03-28 12:31:29 +00:00
Chris Pearce
c9cd61eb5d Bug 778077 - Implement HTMLMediaElement.fastSeek(time). r=cajbir
Implement HTMLMediaElement.fastSeek(), basically by changing all the
MediaDecoderReader::Seek() overrides to not call
MediaDecoderReader::DecodeToTarget(), and have MediaDecoderReader::DecodeSeek()
call DecodeToTarget() if we're doing an accurate (non-fast) seek.

Update gizmo.mp4 to have a keyframe every second, instead of only 1 keyframe at
the start of stream. This makes the unit test I added more useful for mp4...

I pushed most of the seek target clamping logic in MediaDecoder up into
HTMLMediaElement, so that we're clamping in fewer places. Note
MediaDecoderStateMachine::Seek() still sanity checks the seek target.

We have to update the currentTime/MediaDecoder playback position after a seek
completes now, rather than assuming the seek always got it exactly right.

Removed those pesky assertions about seek target lying in the first frame after
seek, since actually sometimes the media doesn't have samples for all streams
after a seek (either due to the media being encoded like that, or because of a
bug in the platform's decoder, not entirely sure).

Green: https://tbpl.mozilla.org/?tree=Try&rev=b028258565e2
2014-03-28 22:36:10 +13:00
Phil Ringnalda
1a6280a756 Backed out 2 changesets (bug 778077, bug 631058)
CLOSED TREE

Backed out changeset dda301682977 (bug 631058)
Backed out changeset 25b633e7dcd5 (bug 778077)
2014-03-27 21:50:02 -07:00
Chris Pearce
b26d467d58 Bug 778077 - Implement HTMLMediaElement.fastSeek(time). r=cajbir
Implement HTMLMediaElement.fastSeek(), basically by changing all the
MediaDecoderReader::Seek() overrides to not call
MediaDecoderReader::DecodeToTarget(), and have MediaDecoderReader::DecodeSeek()
call DecodeToTarget() if we're doing an accurate (non-fast) seek.

Update gizmo.mp4 to have a keyframe every second, instead of only 1 keyframe at
the start of stream. This makes the unit test I added more useful for mp4...

I pushed most of the seek target clamping logic in MediaDecoder up into
HTMLMediaElement, so that we're clamping in fewer places. Note
MediaDecoderStateMachine::Seek() still sanity checks the seek target.

We have to update the currentTime/MediaDecoder playback position after a seek
completes now, rather than assuming the seek always got it exactly right.

Removed those pesky assertions about seek target lying in the first frame after
seek, since actually sometimes the media doesn't have samples for all streams
after a seek (either due to the media being encoded like that, or because of a
bug in the platform's decoder, not entirely sure).

Green: https://tbpl.mozilla.org/?tree=Try&rev=b028258565e2
2014-03-28 15:50:28 +13:00
Chris Pearce
517140e405 Bug 973408 - Set MediaDecoderReaders idle when they're not decoding. r=kinetik 2014-03-11 11:44:10 +08:00
Chris Pearce
235ecad631 Bug 978647 - Properly handle EOF in DirectShow backend. r=edwin 2014-03-03 19:57:10 +13:00
Jacek Caban
d58401494a Bug 970429 - Don't allow using INITGUID in unified sources. r=Ehsan 2014-02-12 10:59:05 +01:00
Ben Kelly
e3b94f8fc2 Bug 969826: Correctly track number of samples copied in DirectShowCopy. r=cpearce 2014-02-08 16:43:49 -08:00
Ben Kelly
4bb9074683 Bug 960873: Part 6: Make DirectShow use AudioCompactor. r=cpearce 2014-02-05 18:11:25 -05:00
Phil Ringnalda
1af4f7e752 Backed out 6 changesets (bug 960873) for Win64 build bustage
Backed out changeset 33d8989841ac (bug 960873)
Backed out changeset 6c9e404aeb3f (bug 960873)
Backed out changeset 36c8b10b0a31 (bug 960873)
Backed out changeset 29c36a7acfb0 (bug 960873)
Backed out changeset 6e3966e0eb40 (bug 960873)
Backed out changeset 612db692256b (bug 960873)
2014-02-05 09:28:14 -08:00
Ben Kelly
d4056edd6e Bug 960873: Part 6: Make DirectShow use AudioCompactor. r=cpearce 2014-02-04 23:10:43 -05:00
Birunthan Mohanathas
89f96b243e Bug 828300 - Replace NS_ARRAY_LENGTH with mozilla::ArrayLength/MOZ_ARRAY_LENGTH. r=ehsan 2014-01-30 13:26:54 -05:00
Ehsan Akhgari
f21c910fc1 Bug 950506 - Part 2: Build content/media/directshow in unified mode; r=roc 2013-12-15 19:00:54 -05:00
Ehsan Akhgari
a6c4451cc2 Bug 950506 - Part 1: Rename the LOG macro to DIRECTSHOW_LOG in SourceFilter.cpp 2013-12-16 13:08:53 -05:00
Brian Smith
409af7fddc Back out cset caa78bef50e3 (bug 950506) for build failure on Windows when warnings are treated as errors 2013-12-16 00:39:13 -08:00
Ehsan Akhgari
75fa61048b Bug 950506 - Build content/media/directshow in unified mode; r=roc 2013-12-15 19:00:54 -05:00
Chris Pearce
a38ebff6ab Bug 945947 - Re-enable DirectShow for MP3 playback on Vista and later. r=ajones
We disabled MP3 playback on Windows using DirectShow as the duration was
being incorrectly reported. While DirectShow was disabled, we supported
MP3 playback via Windows Media Foundation, and we still used DirectShow
on WinXP. Now that bug 918135 has landed the duration calculation has
been fixed, so we can re-enable DirectShow for MP3 playback for all
Windows versions. This enables us to avoid suffering from bug 882537 for
MP3 on Windows.
2013-12-04 13:47:39 +13:00
Edwin Flores
a38947e2a0 Bug 918135 - Windows-specific changes for MP3FrameParser refactor r=cpearce 2013-12-03 10:25:27 +13:00
Masatoshi Kimura
aec068d530 Bug 925599 - Replace WinUtils::GetWindowsVersion() and GetWindowsServicePackVersion(). r=jimm 2013-11-22 12:35:42 +09:00
Mike Hommey
931cb49886 Bug 939632 - Remove LIBRARY_NAME for leaf libraries. r=gps
Landing on a CLOSED TREE.
2013-11-19 11:50:54 +09:00
Mike Hommey
db9e5129bc Bug 939074 - Remove most LIBXUL_LIBRARY. rs=gps 2013-11-19 11:48:10 +09:00
Mike Hommey
f0d1cd1e10 Bug 939044 - Remove most definitions of MODULE. r=mshal 2013-11-19 11:47:39 +09:00
Mike Hommey
f81885e53b Bug 935881 - Use FINAL_LIBRARY for all (fake) libraries that end up linked in a single other library. r=gps 2013-11-19 11:47:14 +09:00
Ms2ger
84b1d4041e Bug 931404 - Move LOCAL_INCLUDES to moz.build in content/; r=gps 2013-11-11 09:04:06 +01:00
Mike Hommey
f1c0c07862 Bug 929905 - Consolidate sources in moz.build. r=gps 2013-10-25 08:23:05 +09:00
Chris Pearce
f0ba2895fb Bug 930372 - Use WMF instead of DirectShow for MP3 decoding on Vista and later, to avoid regressing duration calculation. r=padenot 2013-10-25 09:43:17 +13:00
Mike Hommey
5072f65f8c Bug 913268 - Make CPP_SOURCES a StrictOrderingOnAppendList. r=mshal 2013-10-24 08:00:23 +09:00
Birunthan Mohanathas
3560f05e45 Bug 784739 - Switch from NULL to nullptr in content/; r=ehsan
--HG--
extra : rebase_source : 9237726507e8002479616a98a82646a763932507
2013-10-23 16:34:10 -04:00
Chris Pearce
9b05726bb3 Bug 928765 - Create MediaDecoderReader::GetBuffered() base implementation that estimates buffered ranges, so that subclasses do have to keep reimplementing the estimation. r=doublec 2013-10-21 16:31:05 +13:00
Mike Hommey
6a714831b9 Bug 922460 - Kill media/webrtc/shared_libs.mk. r=ted
--HG--
rename : media/webrtc/shared_libs.mk => layout/media/webrtc/Makefile.in
2013-10-11 08:15:24 +09:00
Matthew Gregan
8d51f7a552 Bug 920867 - Split VideoInfo into Video and Audio objects, then encapsulate in new MediaInfo object. r=cpearce 2013-09-27 17:22:38 +12:00
Jacek Caban
ddecf48680 Bug 919513 - content/media/directshow fails to compile on GCC. r=cpearce 2013-09-24 10:41:00 +02:00
Chris Pearce
499a20ae5f Bug 915957 - Move MediaDecoder::NotifyBytesConsumed() calls into MediaResource, so we don't need to remember to do them in all decoder backends. r=kinetik 2013-09-18 15:37:23 +12:00
Chris Pearce
5f3cb23252 Bug 915958 - Automatically Finish() MediaQueues, so that each backend doesn't need to remember to do it. r=edwin 2013-09-13 14:33:54 +12:00
Makoto Kato
50b74641b7 Bug 914567 - Cannot build directshow code by VS2013RC. r=cpearce 2013-09-11 10:35:03 +09:00
Chris Pearce
c438f19ab9 Bug 910897 - Use MP3FrameParser in DirectShow in order to calculate the duration. r=padenot 2013-09-10 12:45:33 +12:00
Chris Pearce
128925efa5 Bug 910966 - Use MP3FrameParser in DirectShow's SourceFilter, to more accurately determine the offset of the first MP3 frame. This enables us to only pass the MP3 data into DirectShow, which can't handle large ID3v2 tags. r=padenot 2013-09-09 09:47:54 +12:00
Ehsan Akhgari
3b48889d78 Bug 912702 - Minimize the #includes in content/media; r=roc 2013-09-05 16:25:17 -04:00
Ehsan Akhgari
22fac42fb0 Backed out changeset 2f15518f566e (bug 912702) because of B2G JB Emulator build bustage
--HG--
extra : rebase_source : 6c01ad3bc2f91b0e7e3edab84aedbfe064310a8b
2013-09-05 13:29:38 -04:00
Ehsan Akhgari
2ce2ec0cdb Bug 912702 - Minimize the #includes in content/media; r=roc 2013-09-04 17:58:14 -04:00
Mike Hommey
05b3f24e0e Bug 912293 - Remove now redundant boilerplate from Makefile.in. r=gps 2013-09-05 09:01:46 +09:00
Chris Pearce
359627843e Bug 908862 - Strip ID3 tags before we expose MP3 data to DirectShow, to work around bugs in its MP3 decoder. r=padenot 2013-08-29 10:53:03 +12:00
Brian O'Keefe
0ee041b9fd Bug 875934 - Move LIBRARY_NAME to moz.build, batch 3; r=mshal 2013-08-15 09:02:09 -04:00
Ms2ger
fa65b962f6 Bug 883284 - Part b: Move LIBXUL_LIBRARY into moz.build (a-c); r=joey 2013-08-22 08:55:59 +02:00
Ms2ger
66214743ad Bug 882859 - Part b: Move FAIL_ON_WARNINGS into moz.build; r=joey+gps 2013-08-22 08:55:59 +02:00
Chris Pearce
c01b531087 Bug 861693 - Makefile and moz.build changes required for DirectShow audio backend. r=gps 2013-08-13 16:49:25 +12:00
Chris Pearce
d265de7ebd Bug 861693 - DirectShow MP3 decoder HTML5 audio backend for Windows. r=padenot 2013-08-13 16:49:25 +12:00