Commit Graph

108 Commits

Author SHA1 Message Date
Mike Hommey
09b5ae9027 Bug 935857 - Replace MOZ_RTSP with proper NECKO_PROTOCOL handling. r=gps,r=vchang 2013-11-12 07:52:33 +09:00
Ms2ger
b63b756490 Bug 931404 - Move LOCAL_INCLUDES to moz.build in content/; r=gps 2013-11-11 09:04:06 +01:00
Sotaro Ikeda
a65953798c Bug 929005 - Change from android::Vector to android::List. r=doublec 2013-11-08 09:09:46 -05:00
Bruce Sun
101ba61301 Bug 933091 - Re-enable MP3FrameParser to parse MP3 duration. r=sotaro, r=doublec 2013-11-01 11:02:53 +08:00
Sotaro Ikeda
723dc24f51 Bug 932076 - Add check for MediaExtractor creation failure. r=doublec 2013-10-30 15:41:07 -04:00
Cykesiopka
d2f6b7333c Bug 914270 - Part 1: Simple/Automated moves. r=joey 2013-10-24 18:51:00 +01: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
Brian O'Keefe
9c9d71fddb Bug 928709 - Convert chromium-config.mk to mozbuild, r=mshal 2013-10-02 13:17:55 -04: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
Carsten "Tomcat" Book
f1d2ae53bc Merge mozilla-central to mozilla-inbound 2013-10-18 14:13:10 +02:00
Peter Chang
f2befa9556 Bug 922510 - Extend GonkNativeWindow to support android JB 4.2.2, r=sotaro,gps 2013-10-18 10:42:43 +08:00
Sotaro Ikeda
49db7bff2e Bug 925381 - Fix mpeg4 video seek failure. r=nical, r=doublec 2013-10-17 11:09:15 -04:00
Benjamin Chen
bc3881208c Bug 831645 - part2, Rtsp media resource and decoder. r=roc, doublec, sworkman, khuey, gps 2013-09-23 17:53:36 +08:00
Benjamin Chen
9271e5abf6 Bug 831645 - Part1, Add Rtsp protocol and streaming protocol interface. r=jduell.mcbugs, sworkman 2013-09-23 18:12:11 +08:00
Sotaro Ikeda
6b8ac29249 Bug 923848 - Reuse mp3 file format check result. r=doublec 2013-10-14 07:37:09 -04:00
Thomas Zimmermann
8460dccbe6 Bug 924678: Stop MP3 parser if decoder got cleared, r=doublec
If the decoder has been cleaned up, there is no point in further
parsing the MP3 file. This patch makes the I/O logic stop in that
case.

The patch also fixes a bug where the beginning of an MP3 chunk was
parsed multiple times if the chunk is larger than 4 GiB.

--HG--
extra : rebase_source : d247ed3995991d362c51a0666274e9de3b90b7d2
2013-10-14 10:38:48 +02:00
Thomas Zimmermann
b19d671b9b Bug 924678: Explicitly clear OmxDecoder::mDecoder, r=doublec
The MediaDecoderStateMachine frees the Decoder during its own
shutdown. If the the MediaDecoderStateMachine for an MP3 file
gets cleaned up before the MP3 frame parser is finished, the
OmxDecoder operates with an invalid Decoder.

With this patch, the MediaDecoderStateMachine informs the
OmxDecoder to clear the decoder field. The MP3 parser logic
detects this case and returns.

--HG--
extra : rebase_source : 0a00de3cf7b95ede77408e5d43cccbcd706750cd
2013-10-14 10:38:17 +02:00
Sotaro Ikeda
d9445e9be6 Bug 922334 - Add zero division check and prevent unncecessary mp3 parsing r=doublec 2013-10-03 10:53:21 +02:00
Sotaro Ikeda
da4c2d6c78 Bug 914870 - Reduce mp3 parse chunk buffer size to 32KiB. r=doublec 2013-10-01 08:06:57 -04:00
Matthew Gregan
609f3ce232 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
Chris Pearce
03b4450f4b 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
Sotaro Ikeda
422e8f19e2 Bug 871364 - Support GonkNativeWindow on gonk-JB r=jmuizelaar,mwu,doublec,mikeh,glandium 2013-09-12 11:40:26 +02:00
Chris Pearce
bd28d7d80f Bug 910897 - Use MP3FrameParser in DirectShow in order to calculate the duration. r=padenot 2013-09-10 12:45:33 +12:00
Chris Pearce
9a6ec47677 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
Chris Pearce
cb69dfe1b0 Bug 910996 - Move MP3FrameParser out of B2G specific code, so it can be used on other platforms. r=padenot
--HG--
rename : content/media/omx/MP3FrameParser.cpp => content/media/MP3FrameParser.cpp
rename : content/media/omx/MP3FrameParser.h => content/media/MP3FrameParser.h
2013-09-09 09:47:29 +12:00
Ehsan Akhgari
210ba12d7c Bug 912702 - Minimize the #includes in content/media; r=roc 2013-09-05 16:25:17 -04:00
Ehsan Akhgari
45746b149c 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
66abd6bfb5 Bug 912702 - Minimize the #includes in content/media; r=roc 2013-09-04 17:58:14 -04:00
Mike Hommey
f8bc7fa754 Bug 912293 - Remove now redundant boilerplate from Makefile.in. r=gps 2013-09-05 09:01:46 +09:00
Brian O'Keefe
d118b95a0d Bug 875934 - Move LIBRARY_NAME to moz.build, batch 3; r=mshal 2013-08-15 09:02:09 -04:00
Ms2ger
6d473220dc Bug 883284 - Part b: Move LIBXUL_LIBRARY into moz.build (a-c); r=joey 2013-08-22 08:55:59 +02:00
Thomas Zimmermann
05b11eda62 Bug 831224: Use multi-threaded I/O for reading and processing MP3 frames, r=padenot
Reading large MP3 files from a slow medium, such as an SD card, takes
several seconds. This is too long for interactive applications like the
music app.

With this patch, the OmxDecoder reads large MP3 file in smaller chunks
and hands over each chunk individually to the MP3 parser. Reading the
file is done in the I/O thread, which is allowed to block, parsing is
done on the main thread.

The current chunk size is 8 MiB, which is small enough to not cause any
delay.
2013-05-06 20:07:29 +02:00
Thomas Zimmermann
a9843f607d Bug 831224: Parse MP3 frame headers in OmxDecoder, r=padenot
On FirefoxOS, the Android libraries estimate the duration of MP3 streams
by examining the first MP3 frame header. This only works for streams with
constant bit rate. For streams with variable bit rate, a too short or too
long duration is computed.

This patch adds support for parsing MP3 frame headers. The decoder handles
file streams by reading them at once at the beginning and parsing them
immediately. Network streams are updated when a new fragment arrives.
2013-01-24 13:38:32 +01:00
Thomas Zimmermann
902c13e3db Bug 831224: Added MP3 frame parser, r=padenot
MP3 streams consist of small frames, with each frame containing the
audio data of a few hundred milliseconds. The actual duration of the
encoded audio can among frames.

Each frame consists of a 4-byte frame header, some optional extra
information, and the audio data. The MP3 frame parser walks over the
content of an MP3 stream, computes the duration of each frame from
the frame header, and sums them up to the streams complete duration.

The MP3 frame parser does not decode the actual audio data.
2013-05-03 09:44:02 +02:00
Thomas Zimmermann
2a301b9526 Bug 831224: Remove trailing whitespaces, r=padenot 2013-01-24 13:38:32 +01:00
Ed Morley
86d33773fb Backed out changeset 303ba353d785 (bug 831224) for turning bug 897108 permaorange 2013-08-08 10:00:26 -07:00
Ed Morley
648f49bf94 Backed out changeset 3cfe2793f157 (bug 831224) 2013-08-08 09:59:52 -07:00
Ed Morley
ed38f85777 Backed out changeset e334b3139e2a (bug 831224) 2013-08-08 09:59:45 -07:00
Ed Morley
b7e276529b Backed out changeset 909cddbd5af9 (bug 831224) 2013-08-08 09:59:42 -07:00
Thomas Zimmermann
c78497c07a Bug 831224: Use multi-threaded I/O for reading and processing MP3 frames, r=padenot
Reading large MP3 files from a slow medium, such as an SD card, takes
several seconds. This is too long for interactive applications like the
music app.

With this patch, the OmxDecoder reads large MP3 file in smaller chunks
and hands over each chunk individually to the MP3 parser. Reading the
file is done in the I/O thread, which is allowed to block, parsing is
done on the main thread.

The current chunk size is 8 MiB, which is small enough to not cause any
delay.

--HG--
extra : rebase_source : 4effb86db481c405a97760cd98f4218dde42104d
2013-05-06 20:07:29 +02:00
Thomas Zimmermann
5632b9f96e Bug 831224: Parse MP3 frame headers in OmxDecoder, r=padenot
On FirefoxOS, the Android libraries estimate the duration of MP3 streams
by examining the first MP3 frame header. This only works for streams with
constant bit rate. For streams with variable bit rate, a too short or too
long duration is computed.

This patch adds support for parsing MP3 frame headers. The decoder handles
file streams by reading them at once at the beginning and parsing them
immediately. Network streams are updated when a new fragment arrives.

--HG--
extra : rebase_source : bffb9447a5fdba4145e83f5aeb3c2accfb7872d6
2013-01-24 13:38:32 +01:00
Thomas Zimmermann
4574d05406 Bug 831224: Added MP3 frame parser, r=padenot
MP3 streams consist of small frames, with each frame containing the
audio data of a few hundred milliseconds. The actual duration of the
encoded audio can among frames.

Each frame consists of a 4-byte frame header, some optional extra
information, and the audio data. The MP3 frame parser walks over the
content of an MP3 stream, computes the duration of each frame from
the frame header, and sums them up to the streams complete duration.

The MP3 frame parser does not decode the actual audio data.

--HG--
extra : rebase_source : 1b101d8f9bf73e62672933d0f5d20253d7b25491
2013-05-03 09:44:02 +02:00
Thomas Zimmermann
8458373204 Bug 831224: Remove trailing whitespaces, r=padenot
--HG--
extra : rebase_source : e04ddb59ab953550d988924670c96b73bf7909f2
2013-01-24 13:38:32 +01:00
Peter Chang
a38cfef9d8 Bug 894262 - Merge GonkIOSurfaceImage to GrallocImage, r=nical, kanru 2013-07-25 10:13:35 +08:00
Sotaro Ikeda
6e47b2e86f Bug 896374 - Fix infinite loop in MediaResourceManagerService::cancelClientLocked(). r=doublec 2013-07-24 08:55:30 -04:00
Sotaro Ikeda
be9402b476 Bug 891445 - Fix incorrect pointer comparison. r=doublec 2013-07-12 17:27:17 -04:00
Trevor Saunders
f33ade0d68 bug 887483 - remove a bunch of useless assignments to FORCE_STATIC_LIB implied by LIBXUL_LIBRARY=1 r=mshal 2013-07-11 11:06:34 -04:00
Sotaro Ikeda
c3d49a4e85 Bug 889238 - Add error handling to OMXCodecProxy. r=doublec 2013-07-07 16:33:57 -04:00