Commit Graph

296 Commits

Author SHA1 Message Date
Jean-Yves Avenard
4fbbd1bf55 Bug 1185115 - Ensure we have enough memory to allocate required capacity. r=kentuckyfriedtakahe
CLOSED TREE
2015-08-04 13:43:17 -04:00
Jean-Yves Avenard
c723b29dfe Bug 1183196: [MSE] P2. Do not ignore tracks other than the first one. r=kentuckyfriedtakahe
When used in the MP4ContainerParser, the MoofParser set the trackID as 0 ; indicating that all tracks are to be parsed. However it set later the trackID to the first one found, causing to ignore all following tracks.
2015-07-30 20:42:44 +10:00
Bobby Holley
106e778c81 Bug 1188696 - Hoist nsRefPtr.h into MFBT. r=froydnj 2015-07-29 10:44:59 -07:00
Ehsan Akhgari
7904f7befa Bug 1188212 - Fix more constructors in media; r=cpearce 2015-07-28 08:53:33 -04:00
Jean-Yves Avenard
bb47ae29cd Bug 1186149: P1. Allow both first sample flags flag and sample flags simultaneously. r=kentuckyfriedtakahe 2015-07-28 14:11:04 +10:00
Jean-Yves Avenard
967a832978 Bug 1186718 - Ensure ESDS have valid size. r=kentuckyfriedtakahe 2015-07-27 16:25:17 -04:00
Jean-Yves Avenard
c9960234e9 Bug 1185115 - Ensure we have enough memory to allocate required capacity. r=kentuckyfriedtakahe 2015-07-27 11:27:34 -04:00
Alfredo Yang
6a1fdeeabf Bug 1163486 - Remove MP4Reader. r=jya 2015-07-21 02:48:00 +02:00
Carsten "Tomcat" Book
e44524600a Backed out changeset 1704ea727e81 (bug 1163486) for at least b2g bustage 2015-07-21 08:42:54 +02:00
Alfredo Yang
0df19709d3 Bug 1163486 - Remove MP4Reader. r=jya 2015-07-20 19:25:00 +02:00
Jean-Yves Avenard
1f19e04196 Bug 1144107 - Part 4: Prevent assert when hitting EOS. r=kentuckyfriedtakahe
this would occur if we attempt to read exactly the end of the array.
2015-07-14 09:21:27 -04:00
Jean-Yves Avenard
bef64e7dcc Bug 1144107 - Part 3: Prevent int overflow in sort. r=kentuckyfriedtakahe 2015-07-14 09:21:27 -04:00
Jean-Yves Avenard
efdccbe58d Bug 1144107 - Part 2: Prevent uin32_t overflow. r=kentuckyfriedtakahe 2015-07-14 09:21:27 -04:00
Jean-Yves Avenard
ca60c26e6c Bug 1144107 - Part 1: Mark tracks with no samples table as invalid. r=kentuckyfriedtakahe 2015-07-14 09:21:27 -04:00
Robert O'Callahan
262e47491d Bug 1143575. Add RefBase #include to stagefright stubs. r=cpearce 2015-05-12 15:36:19 +12:00
Ralph Giles
9ca7f3231f Bug 1179885 - Update rust mp4parser gtest. r=k17e
Switch to stdio for reading the file snippet. I can't figure
out how to cleanly read a minimum subset into a vector with
ifstream. Previously we were asking it to read zero bytes,
so the argument validation in read_box_from_buffer() was
rejecting the data without trying to parse it.

With this and the v0.0.9 changes to catch eof, we can remove
the expected fail on the street.mp4 test.
2015-07-02 14:12:14 -07:00
Ralph Giles
ceac1e9238 Bug 1179885 - Update rust mp4parser to v0.0.9. r=k17e
Source from https://notabug.org/rillian/mp4parse-rust

Modified to use byteorder as a local mod instead of an
extern crate, per bug 1175322.
2015-07-02 14:12:13 -07:00
Ralph Giles
8cd889ebff Bug 1177029 - Use stdint.h instead of cstdint. r=kinetik
Clang can't find this on my MacOS X machine.
2015-06-24 00:23:00 -07:00
Jean-Yves Avenard
e22321e24f Bug 1174577: P1. Have Init segment range only include the first moov. r=kentuckyfriedtakahe 2015-06-19 16:45:15 +10:00
Ralph Giles
67b2696acc Bug 1175322 - Add gtests for rust mp4 metadata parser. r=k17e
Add a null buffer test.
Add a street.mp4 test.

We have trouble parsing gizmo.mp4, and the dom/media/gtest
already exposes the file, which is confusing since we apparently
can't have duplicates in TEST_HARNESS_FILES.

The street.mp4 test always fails because we don't catch
the eof in the rust code.
2015-06-16 15:52:00 -07:00
Ralph Giles
b783a8bf9c Bug 1175322 - Import byteorder crate. r=k17e
This is the source of Andrew Gallant's byteorder crate,
used end the MIT license.

It has been slightly modified to re-export the new sub-module
so it can be built as a mod inside our MP4Metadata crate since
we don't currently support crate dependencies.
2015-06-16 15:51:00 -07:00
Ralph Giles
c9c268497e Bug 1175322 - Import mp4parse v0.0.8 source. r=k17e
Source from https://notabug.org/rillian/mp4parse-rust
2015-06-16 15:50:00 -07:00
Ralph Giles
d4b0fb86e9 Bug 1174356 - Add missing MediaData include. r=jya
Needed for separate compilation of MP4Metadata.h in unit tests.
2015-06-15 08:53:00 -07:00
Birunthan Mohanathas
175f707fc8 Bug 1174220 - Part 2: Use MediaByteBuffer instead of MediaLargeByteBuffer. r=jya
All MediaLargeByteBuffer calls already include the `mozilla::fallible`
parameter so we can safely replace MediaLargeByteBuffer with MediaByteBuffer.
2015-06-14 21:37:13 -07:00
Jean-Yves Avenard
afcbfc9b48 Bug 1171330: P14. Add ContainerParser::FirstCompleteMediaHeader() method. r=kentuckyfriedtakahe 2015-06-11 16:27:15 +10:00
Jean-Yves Avenard
306c867b10 Bug 1171330: P1. Add ContainerParser::MediaSegmentRange() method. r=kentuckyfriedtakahe
And add abilities to MoofParser to indicate if a media segment is complete.
In MP4 a media segment is made of a moof atom followed by one (or more) mdat
atoms.
2015-06-11 15:49:49 +10:00
Birunthan Mohanathas
8aaa6ae83e Bug 968520 - Add mozilla::fallible to more FallibleTArray calls. r=froydnj
This calls were already fallible due to their type (FallibleTArray). This
commit merely makes that fact visible at the call site.
2015-06-10 14:30:41 -07:00
Jean-Yves Avenard
9b86221a9f Bug 1171067: Part2. Properly hande box size marked as 0. r=kentuckyfriedtakahe
This indicates that the box goes to the end of the file.
2015-06-10 19:38:13 +10:00
Jean-Yves Avenard
a91eb477eb Bug 1171067: Properly read 64bits header's size. r=kentuckyfriedtakahe 2015-06-10 19:38:13 +10:00
Jean-Yves Avenard
cd1eb1d1b9 Bug 1168040: P3. MP4 dts must use the same timeline as pts. r=kentuckyfriedtakahe 2015-06-10 19:38:13 +10:00
Jean-Yves Avenard
6106267244 Bug 1168040: Part2. Properly handle MP4 time offset in MoofParser. r=kentuckyfriedtakahe 2015-06-10 19:38:13 +10:00
Jean-Yves Avenard
33abc1b31e Bug 1168040: Part1. Properly handle MP4 starting offset. r=kentuckyfriedtakahe 2015-06-10 19:38:13 +10:00
Jean-Yves Avenard
c3b56c2f02 Bug 1171629: Use fallible array to store MP4 samples index. r=kentuckyfriedtakahe 2015-06-10 19:38:13 +10:00
Eugen Sawin
3d3cc48ffe Bug 1166779 - Rebase MP3 demuxer on MediaDataDemuxer interface. r=kinetik 2015-06-05 14:34:19 +02:00
Eric Rahm
29f00ac208 Bug 1165515 - Part 13-2: Replace usage of PRLogModuleLevel and PR_LOG_*. rs=froydnj
This is straightforward mapping of PR_LOG levels to their LogLevel
counterparts:
  PR_LOG_ERROR   -> LogLevel::Error
  PR_LOG_WARNING -> LogLevel::Warning
  PR_LOG_WARN    -> LogLevel::Warning
  PR_LOG_INFO    -> LogLevel::Info
  PR_LOG_DEBUG   -> LogLevel::Debug
  PR_LOG_NOTICE  -> LogLevel::Debug
  PR_LOG_VERBOSE -> LogLevel::Verbose

Instances of PRLogModuleLevel were mapped to a fully qualified
mozilla::LogLevel, instances of PR_LOG levels in #defines were mapped to a
fully qualified mozilla::LogLevel::* level, and all other instances were
mapped to us a shorter format of LogLevel::*.

Bustage for usage of the non-fully qualified LogLevel were fixed by adding
|using mozilla::LogLevel;| where appropriate.
2015-06-03 15:25:57 -07:00
Carsten "Tomcat" Book
e2f82674b8 Backed out 14 changesets (bug 1165515) for linux x64 e10s m2 test failures
Backed out changeset d68dcf2ef372 (bug 1165515)
Backed out changeset 7c3b45a47811 (bug 1165515)
Backed out changeset b668b617bef2 (bug 1165515)
Backed out changeset d0916e1283a2 (bug 1165515)
Backed out changeset ac4dc7489942 (bug 1165515)
Backed out changeset e9632ce8bc65 (bug 1165515)
Backed out changeset c16d215cc7e4 (bug 1165515)
Backed out changeset e4d474f3c51a (bug 1165515)
Backed out changeset d87680bf9f7c (bug 1165515)
Backed out changeset b3c0a45ba99e (bug 1165515)
Backed out changeset 9370fa197674 (bug 1165515)
Backed out changeset 50970d668ca1 (bug 1165515)
Backed out changeset ffa4eb6d24b9 (bug 1165515)
Backed out changeset 5fcf1203cc1d (bug 1165515)
2015-06-02 13:05:56 +02:00
Eric Rahm
18bd3de863 Bug 1165515 - Part 13-2: Replace usage of PRLogModuleLevel and PR_LOG_*. rs=froydnj
This is straightforward mapping of PR_LOG levels to their LogLevel
counterparts:
  PR_LOG_ERROR   -> LogLevel::Error
  PR_LOG_WARNING -> LogLevel::Warning
  PR_LOG_WARN    -> LogLevel::Warning
  PR_LOG_INFO    -> LogLevel::Info
  PR_LOG_DEBUG   -> LogLevel::Debug
  PR_LOG_NOTICE  -> LogLevel::Debug
  PR_LOG_VERBOSE -> LogLevel::Verbose

Instances of PRLogModuleLevel were mapped to a fully qualified
mozilla::LogLevel, instances of PR_LOG levels in #defines were mapped to a
fully qualified mozilla::LogLevel::* level, and all other instances were
mapped to us a shorter format of LogLevel::*.

Bustage for usage of the non-fully qualified LogLevel were fixed by adding
|using mozilla::LogLevel;| where appropriate.
2015-06-01 22:17:33 -07:00
Wes Kocher
bd796581dc Backed out 14 changesets (bug 1165515) for b2g mochitest-6 permafail CLOSED TREE
Backed out changeset 9b97e2aa2ed9 (bug 1165515)
Backed out changeset 150606c022a2 (bug 1165515)
Backed out changeset 4e875a488349 (bug 1165515)
Backed out changeset 467e7feeb546 (bug 1165515)
Backed out changeset d6b6cc373197 (bug 1165515)
Backed out changeset 0615265b593c (bug 1165515)
Backed out changeset fafd1dce9f08 (bug 1165515)
Backed out changeset d1df869245f9 (bug 1165515)
Backed out changeset 6876a7c63611 (bug 1165515)
Backed out changeset b7841c94a9a3 (bug 1165515)
Backed out changeset e5e3617f7c73 (bug 1165515)
Backed out changeset 39be3db95978 (bug 1165515)
Backed out changeset 0ec74176f8de (bug 1165515)
Backed out changeset 5b928dd10d71 (bug 1165515)
2015-06-01 17:57:58 -07:00
Eric Rahm
ae32743ed2 Bug 1165515 - Part 13-2: Replace usage of PRLogModuleLevel and PR_LOG_*. rs=froydnj
This is straightforward mapping of PR_LOG levels to their LogLevel
counterparts:
  PR_LOG_ERROR   -> LogLevel::Error
  PR_LOG_WARNING -> LogLevel::Warning
  PR_LOG_WARN    -> LogLevel::Warning
  PR_LOG_INFO    -> LogLevel::Info
  PR_LOG_DEBUG   -> LogLevel::Debug
  PR_LOG_NOTICE  -> LogLevel::Debug
  PR_LOG_VERBOSE -> LogLevel::Verbose

Instances of PRLogModuleLevel were mapped to a fully qualified
mozilla::LogLevel, instances of PR_LOG levels in #defines were mapped to a
fully qualified mozilla::LogLevel::* level, and all other instances were
mapped to us a shorter format of LogLevel::*.

Bustage for usage of the non-fully qualified LogLevel were fixed by adding
|using mozilla::LogLevel;| where appropriate.
2015-06-01 14:31:01 -07:00
Birunthan Mohanathas
399e0c3be3 Bug 968520 - Add mozilla::fallible to FallibleTArray::AppendElements calls. r=froydnj 2015-05-28 11:07:43 -07:00
Jean-Yves Avenard
4dc728204b Bug 1163227: Part7. Never do blocking read if we don't have data. r=kentuckyfriedtakahe 2015-05-25 15:09:16 +10:00
Eric Rahm
ccf1ec07c6 Bug 1165515 - Part 1: Convert PR_LOG to MOZ_LOG. r=froydnj 2015-05-21 13:22:04 -07:00
Eric Rahm
c5e63515bf Bug 1165518 - Part 2: Replace prlog.h with Logging.h. rs=froydnj 2015-05-19 11:15:34 -07:00
David Major
43ed497db0 Bug 1119072: Backed out ce3638e6a659 since it's no longer needed with VS2015RC. rs=cpearce 2015-05-18 16:25:21 -04:00
Birunthan Mohanathas
c316215317 Bug 968520 - Add mozilla::fallible to Fallible{Auto,}TArray::SetLength calls. r=froydnj 2015-05-18 13:50:35 -07:00
Eric Rahm
5dba223914 Bug 1164622 - Part 1: Remove instances of #ifdef PR_LOGGING in media. r=froydnj
PR_LOGGING is now always defined, we can remove #ifdefs checking for it.
2015-05-14 10:13:24 -07:00
Eugen Sawin
6875d494b4 Bug 1093815 - Remove ambiguous typedefs. r=kinetik
---
 media/libstagefright/binding/include/demuxer/TrackDemuxer.h    | 4 ++--
 media/libstagefright/binding/include/mp4_demuxer/DecoderData.h | 1 -
 2 files changed, 2 insertions(+), 3 deletions(-)
2015-05-13 15:15:43 +02:00
Eugen Sawin
10546516a1 Bug 1093815 - Add MP3 track demuxer. r=kinetik
---
 media/libstagefright/binding/MP3TrackDemuxer.cpp   | 755 +++++++++++++++++++++
 .../binding/include/mp4_demuxer/MP3TrackDemuxer.h  | 380 +++++++++++
 media/libstagefright/moz.build                     |   2 +
 3 files changed, 1137 insertions(+)
 create mode 100644 media/libstagefright/binding/MP3TrackDemuxer.cpp
 create mode 100644 media/libstagefright/binding/include/mp4_demuxer/MP3TrackDemuxer.h
2015-05-13 15:15:36 +02:00
Jean-Yves Avenard
4e426e8b6a Bug 1159027: Part4. Include ftyp box when parsing init segment. r=kentuckyfriedtakahe 2015-05-11 20:57:37 +10:00
Jean-Yves Avenard
c1dc4a31b2 Bug 1159027: Part2. Extend BufferStream to work with external buffer array. r=kentuckyfriedtakahe
Also make BufferStream::AppendBytes fallible
2015-05-11 20:54:59 +10:00