Commit Graph

129 Commits

Author SHA1 Message Date
Ehsan Akhgari
8b978389de Bug 1061252 - Fix more bad implicit constructors in media code; r=roc 2014-09-02 09:46:56 -04:00
Nathan Froyd
12c76f15f7 Bug 1042878 - part 2 - move MOZ_CAIRO_CFLAGS et al additions to C*FLAGS into moz.build; r=glandium 2014-07-24 11:55:33 -04:00
JW Wang
c1d232a768 Bug 1034957 - don't spin decode task queue waiting for audio frames since it hangs with gstreamer 1.0. r=cpearce 2014-07-30 20:58:00 +02:00
Mike Hommey
bc5d6801bb Bug 1041860 - Avoid setting FINAL_LIBRARY to libraries that further use a FINAL_LIBRARY. r=mshal 2014-07-23 08:37:51 +09:00
Sotaro Ikeda
5a8464afe1 Bug 1027809 - Use gst_video_format_get_component_width() r=edwin 2014-07-07 06:42:24 -07:00
Eric Phan
297a9b2844 Bug 1015985 - Set decoder seekable members outside of ReadMetadata by StateMachine. r=cpearce 2014-06-23 22:08:34 +12:00
Edwin Flores
3e5c8092c5 Bug 977089 - Don't pass ID3 headers to GStreamer r=cpearce 2014-05-08 15:49:31 +12:00
Birunthan Mohanathas
c85411f987 Bug 997208 - Remove unnecessary nullptr checks before deleting in content/media. r=cajbir 2014-04-17 09:23:16 -04:00
Chris Pearce
b12df215bb 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
Jan Beich
7b04ea5fdd Bug 989112 - Lazily reference to gst_event_type_get_name() to unbreak --enable-debug. r=alessandro.d 2014-03-28 10:36:48 -04:00
Ed Morley
7a428f481b Backed out changeset 00fa39c23b44 (bug 778077) for reftest failures 2014-03-28 12:31:29 +00:00
Chris Pearce
eefc2c2db6 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
7fb1a235f6 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
7bc425d1e8 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
Jan Beich
a4d8236090 Bug 984064 - Unbreak --enable-gstreamer=1.0 after bug 967364. r=khuey 2014-03-16 15:34:14 -04:00
Kyle Huey
fe6c4e28d6 Bug 967364: Rename already_AddRefed::get to take. r=bsmedberg 2014-03-15 12:00:15 -07:00
Nathan Froyd
fb7c786978 Bug 978105 - convert content/ to use Endian.h; r=smaug 2014-02-26 20:20:15 -05:00
Alfredo Yang
1599acb8ce Bug 976510 - Calculate display size according to pixel aspect-ratio. r=cpearce 2014-03-05 08:47:45 -05:00
Chris Pearce
31baca752d Bug 975928 - Use our estimate for MP3 duration rather than GStreamer's for buffered range end when fully buffered in MP3/GStreamer. r=alessandro.d 2014-02-26 13:36:54 +13:00
Alex Xu
2f5201d33b Bug 967927 - Fix Clang build warning in gstreamer. r=eflores 2014-02-25 08:40:54 -05:00
Ryan VanderMeulen
76aac23414 Backed out changeset d22ac63d67f1 (bug 967927) for bustage.
CLOSED TREE
2014-02-24 10:56:37 -05:00
Alex Xu
0f87ca573e Bug 967927 - Fix Clang build warning in gstreamer. r=eflores 2014-02-24 10:22:59 -05:00
JW Wang
d8bb46397f Bug 949346 - 1. print this pointer in nspr logs for debugging when there are 2 GStreamerReader running concurrently 2. Parse MP3 headers before kicking off the gstreamer pipeline such that there are no concurrent stream operations which could screw the state machine of gstreamer. r=alessandro.d 2014-02-20 08:32:19 +08:00
Ryan VanderMeulen
0428b78c2f Backed out changeset 183380b99514 (bug 874806) for frequent mochitest asserts.
CLOSED TREE
2014-02-19 14:15:19 -05:00
Alessandro Decina
2506904086 Bug 973744 - Remove matroska seek hack in the gstreamer media backend. r=edwin 2014-02-19 11:30:09 -05:00
Alessandro Decina
e5171718f2 Bug 874806 - GStreamerReader::PlayBinSourceSetupCb() doesn't need to do a bogus read anymore. r=cpearce 2014-02-18 08:59:32 -05:00
Alessandro Decina
3920571033 Bug 973379 - GStreamerReader::ReadMetadata()'s element config loop should break on error to avoid timeout. r=edwin 2014-02-18 11:28:04 +13:00
Chris Pearce
7c0659c348 Bug 973139 - Don't treat EOS of one stream as EOS of all streams when decoding with GStreamer. r=alessandro.d 2014-02-15 22:32:12 +13:00
Alessandro Decina
d89db4179d Bug 806917 - Add support for GStreamer 1.0. r=edwin, r=gps 2014-02-11 09:22:45 -05:00
Ms2ger
d9ed6641c7 Bug 952033 - Part c: Use IntSize and IntRect in VideoData; r=roc 2014-02-09 09:04:38 +01:00
Ben Kelly
b315beba4d Bug 960873: Part 5: Make gstreamer use AudioCompactor. r=cpearce 2014-02-05 18:11:25 -05:00
Alessandro Decina
7ce36c7636 Bug 959007 - Firefox crashes when starting html5 web player. r=cpearce, r=edwin 2014-02-05 17:46:04 -05:00
Phil Ringnalda
e4e5b2d6eb 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
82e0901439 Bug 960873: Part 5: Make gstreamer use AudioCompactor. r=cpearce 2014-02-04 23:10:43 -05:00
Benoit Jacob
757acc5d48 Bug 964442 - Make CreateImage just take a plain format parameter - r=jrmuizel 2014-01-30 17:58:51 -05:00
Benoit Jacob
684ce17489 Bug 962784 - Convert ImageTypes.h to typed enums - r=jrmuizel
find content/media media/webrtc gfx/layers gfx/tests dom/camera dom/plugins image/src layout/base -type f | grep -v 'gfx/layers/ImageTypes.h' | xargs sed -i 's/\(^\|[^A-Za-z0-9_]\)\(GRALLOC_PLANAR_YCBCR\|PLANAR_YCBCR\|SHARED_RGB\|CAIRO_SURFACE\|MAC_IOSURFACE\|REMOTE_IMAGE_BITMAP\|SHARED_TEXTURE\|REMOTE_IMAGE_DXGI_TEXTURE\|D3D9_RGB32_TEXTURE\)\($\|[^A-Za-z0-9_]\)/\1ImageFormat::\2\3/g'

find content/media media/webrtc gfx/layers gfx/tests dom/camera dom/plugins image/src layout/base -type f | grep -v 'gfx/layers/ImageTypes.h' | xargs sed -i 's|ImageFormat\:\:ImageFormat|ImageFormat|g'

find content/media media/webrtc gfx/layers gfx/tests dom/camera dom/plugins image/src layout/base -type f | xargs sed -i 's/\(^\|[^A-Za-z0-9_]\)STEREO_MODE_\(MONO\|LEFT_RIGHT\|RIGHT_LEFT\|BOTTOM_TOP\|TOP_BOTTOM\)\($\|[^A-Za-z0-9_]\)/\1StereoMode::\2\3/g'

find content/media media/webrtc gfx/layers gfx/tests dom/camera dom/plugins image/src layout/base -type f | grep -v 'gfx/layers/ImageTypes.h' | xargs sed -i 's|StereoMode\:\:StereoMode|StereoMode|g'
2014-01-30 17:58:49 -05:00
Edwin Flores
74c1422fc6 Bug 918135 - Use MP3FrameParser in GStreamer backend for MP3 duration estimation r=cpearce
This patch adds support for our home-grown MP3 frame parser to the GStreamer
backend so that our duration estimation is consistent across all platforms.
2013-12-03 10:25:28 +13:00
Matthew Gregan
88bb7f29c1 Bug 939662 - Remove "using namespace mozilla::dom;" from MediaDecoder.h and fix fallout. r=cpearce 2013-11-18 17:22:47 +13:00
Phil Ringnalda
9958c63251 Back out 4fd2bf2ec8db (bug 939662) for Windows build bustage
CLOSED TREE
2013-11-18 21:34:48 -08:00
Matthew Gregan
bae6b8b955 Bug 939662 - Remove "using namespace mozilla::dom;" from MediaDecoder.h and fix fallout. r=cpearce
--HG--
extra : rebase_source : 922db8de8e9103e3001c26f23ed7402efa8237f5
2013-11-18 17:22:47 +13:00
Mike Hommey
2812d11fce 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
e06d795c71 Bug 939074 - Remove most LIBXUL_LIBRARY. rs=gps 2013-11-19 11:48:10 +09:00
Mike Hommey
e80e877ab7 Bug 939044 - Remove most definitions of MODULE. r=mshal 2013-11-19 11:47:39 +09:00
Mike Hommey
ffe0380912 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
b63b756490 Bug 931404 - Move LOCAL_INCLUDES to moz.build in content/; r=gps 2013-11-11 09:04:06 +01:00
Bill Gianopoulos
680e43e635 Bug 931428 - Include NullPtr.h in GStreamerLoader.cpp; r=ehsan 2013-10-26 20:42:34 -04:00
Chris Pearce
1041c1b5d2 Bug 930829 - Add MediaData class as base for VideoData and AudioData to simplify writing a generic stream decoder. r=kinetik 2013-10-25 15:44:58 +13:00
Mike Hommey
b000a846c2 Bug 929905 - Consolidate sources in moz.build. r=gps 2013-10-25 08:23:05 +09:00
Mike Hommey
3fa7456cd6 Bug 913268 - Make CPP_SOURCES a StrictOrderingOnAppendList. r=mshal 2013-10-24 08:00:23 +09:00
Birunthan Mohanathas
a058382a85 Bug 784739 - Switch from NULL to nullptr in content/; r=ehsan
--HG--
extra : rebase_source : 9237726507e8002479616a98a82646a763932507
2013-10-23 16:34:10 -04:00