Commit Graph

167 Commits

Author SHA1 Message Date
Chris Pearce
7dc5ed8d90 Bug 993753 - Don't set media decoders idle while seeking. r=kinetik 2014-04-15 15:01:34 +12:00
Andrea Marchesini
8204cc0528 Bug 987064 - Remove AudioChannelType. r=roc, r=mchen, r=bent 2014-04-10 18:39:20 +01:00
Sotaro Ikeda
efea44f6cd Bug 990310 - Remove SurfaceDescriptor from media and GrallocImage r=nical,cajbir 2014-04-11 06:13:12 -07:00
Vasanthakumar Pandurangan
c9894c6b30 Bug 976172 - Part 1 Changes in MediaOmxDecoder to enable audio offloading r=roc
This adds support in MediaOmxDecoder to dynamically switch between
MediaDecoderStateMachine and AudioOffloadPlayer
2014-04-08 20:59:07 +05:30
Vasanthakumar Pandurangan
6f38564f4e Bug 976172 - Part 2 Enable audio offloading in gecko r=padenot
Implements a new class AudioOffloadPlayer to make use of
Android::AudioTrack class's offloading capability
2014-03-22 18:40:05 +05:30
Matt Woodrow
abb78fae19 Bug 991028 - Remove deprecated IPDL SurfaceDescriptor types. r=nical 2014-04-07 13:32:49 +12:00
Phil Ringnalda
fde12dd0a6 Backed out 4 changesets (bug 991028) for nonunified bustage
CLOSED TREE

Backed out changeset 147581a518c3 (bug 991028)
Backed out changeset e5bacc566e58 (bug 991028)
Backed out changeset 6dc852777a4d (bug 991028)
Backed out changeset 780bec5571b9 (bug 991028)
2014-04-06 21:21:38 -07:00
Matt Woodrow
fbd13c088f Bug 991028 - Remove deprecated IPDL SurfaceDescriptor types. r=nical 2014-04-07 13:32:49 +12: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
Sotaro Ikeda
37c69117b5 Bug 985772 - Remove SurfaceDescriptor around GonkNativeWindow r=nical,pchang,schiu,mikeh,gal 2014-03-31 08:24:28 -07:00
Benjamin Chen
9893d68d5e Bug 984816: RTSP play/pause deadlock issue. 1. Release the monitor when access mReader. 2. Reverse the order in RtspOmxReader::SetIdle(). r=cpearce 2014-03-31 10:18:01 +08: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
Randy Lin
c9dd4c92fe Bug 959490 - [MediaEncoder] Support *.3gp with AMR-NB audio format on certificated application. r=roc 2014-03-19 14:52:45 +08:00
Alfredo Yang
60cb2058ba Bug 975978 - Check display size in OMX backend playback. r=cpearce 2014-03-18 08:20:19 -04:00
John Lin
10519ff8ea Bug 983039 - [Media encoder] Support YV12 GrallocImage in OMXVideoEncoder on B2G. r=roc 2014-03-14 09:43:13 -04:00
Chris Pearce
b099e216ae Bug 983204 - Ensure RTSP OMX reader's decoder is made active during loadmetadata. r=vchang 2014-03-14 13:24:54 +08:00
Wes Kocher
352ea6fe5b Backed out changeset d42a36615c7e (bug 983204) for build bustage on an otherwise CLOSED TREE 2014-03-13 19:35:02 -07:00
Chris Pearce
3e5ffad376 Bug 983204 - Ensure RTSP OMX reader's decoder is made active during loadmetadata. r=vchang 2014-03-14 10:11:02 +08:00
Ehsan Akhgari
178f47f91d Bug 983014 - Move the rest of the -I build flags that stayed in Makefiles because of ANDROID_SOURCE to moz.build; r=mshal 2014-03-13 19:31:18 -04:00
Ehsan Akhgari
933a9eb33e Bug 981290 - Rewrite content/media/omx/Makefile.in in moz.build; r=mshal
--HG--
extra : rebase_source : 168efa0f67252197ef259bb575771b1e87eb98e5
2014-03-10 20:12:37 -04: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
1e42313a2a Bug 973408 - Don't block a decode thread while awaiting resources. r=kinetik 2014-03-11 11:44:09 +08:00
Chris Pearce
9789b23076 Bug 973408 - Remove MediaDecoderStateMachine::GetAmpleVideoFrames(), and MediaOMXStateMachine. r=kinetik 2014-03-11 11:44:08 +08:00
Sotaro Ikeda
d4c5f44335 Bug 977596 - Fix build failure on flatfish r=jmuizelaar 2014-02-27 13:26:22 -08:00
Sotaro Ikeda
c0ff94d478 Bug 957323 - Handle android's fence on gonk r=nical,doublec,pchang 2014-02-24 20:23:41 -08:00
John Lin
6b91d77106 Bug 963458 - Change AVC/H.264 encoder configuration for B2G emulator. r=roc 2014-02-18 08:50:08 -05:00
Benjamin Chen
e9e37f323e Bug 964209 - [RTSP] Implement flags() function and set mExtractor to fix content process crash. r=sworkman 2014-02-07 15:46:26 +08:00
Ms2ger
176399514a Bug 952033 - Part c: Use IntSize and IntRect in VideoData; r=roc 2014-02-09 09:04:38 +01:00
Ben Kelly
d71d6904a9 Bug 960873: Part 4: Make OMX 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
d59e1509d7 Bug 960873: Part 4: Make OMX use AudioCompactor. r=cpearce 2014-02-04 23:10:43 -05:00
Ben Kelly
1f1ea86463 Bug 960873: Part 1: Refactor MediaDecoderReader.h into separate headers. r=cpearce 2014-02-03 20:49:21 -05:00
Benoit Jacob
3ee7a2d643 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
John Lin
30886a7f72 Bug 963502 - [MediaEncoder] OMXAudioEncoder will be out of input buffers if input segment is too big. r=roc 2014-01-29 08:20:55 -05:00
Alfredo Yang
2b2a9d250c Bug 959861 - Check if the media is seekable in MediaOmxReader::ReadMetadata(). r=cdouble 2014-01-22 10:50:23 -05:00
JW Wang
4c6f58a7e3 Bug 916135 - Part 2: Don't call OMXCodec::pause in emulator mode to prevent getting stuck in paused state of OMXCodec. r=cdouble 2013-12-16 16:30:59 +08:00
Sotaro Ikeda
11014e1136 Bug 961405 - Change GraphicBufferLocked as to use AtomicRefCountedWithFinalize. r=nical, r=pchang, r=doublec, r=mikeh 2014-01-21 13:53:48 -05:00
John Lin
7519996813 Bug 879668 - Part 3: Add OMXCodecWrapper. r=roc 2014-01-17 14:29:41 -05:00
John Lin
4b7023299e Bug 879668 - Part 2: Add utility function to convert codec data from OMX AVC/H.264 encoder for MP4 container writer. r=roc 2014-01-17 14:29:20 -05:00
Edwin Flores
c637986ec6 Bug 945864 - Remove buggy MediaOmxReader::GetBuffered method override r=cpearce 2014-01-14 12:38:40 +13:00
Ryan VanderMeulen
02620df6b9 Backed out changesets 7e3a322f9fd6, 91749b627a04, and 69bf31cfafa1 (bug 916135) for Android mochitest failures. 2014-01-07 11:15:00 -05:00
Sotaro Ikeda
6bb9ea150f Bug 948005 - Release reasources in MediaOmxReader's destructor. r=doublec 2014-01-07 09:44:02 -05:00
JW Wang
2e9400827b Bug 916135 - Part 2: Don't call OMXCodec::pause in emulator mode to prevent getting stuck in paused state of OMXCodec. r=doublec 2013-12-16 16:30:59 +08:00
Ms2ger
98586cdbc1 Bug 950143 - Remove the implicit conversion operator from nsIntSize to IntSize; r=roc 2013-12-31 10:06:12 +01:00
Bruce Sun
0e31aa3f5e Bug 947113 - Sync RTSP play & pause with the life time of the decoding thread. r=doublec 2013-12-12 11:21:04 +08:00
Thomas Zimmermann
aa0552cb38 Bug 947905: Release OmxDecoder on main thread
OmxDecoder refers to MediaResource, which must be released on
the main thread. This patch changes the MP3 parser logic to send
a runnable to the main thread for releasing OmxDecoder.
2013-12-12 09:57:56 +01:00
Ethan Tseng
02ae3ae476 Bug 938512 - HTMLMediaElement does not fire loadedmetadata. r=sworkman 2013-11-26 17:25:40 +08:00