Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1423)

Side by Side Diff: media/formats/mp4/box_definitions.h

Issue 1735003004: Implement reading of media track info from WebM and MP4 containers (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@demuxer-tracks2
Patch Set: Mark WebMStreamParser with MEDIA_EXPORT to allow usage in unit tests Created 4 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef MEDIA_FORMATS_MP4_BOX_DEFINITIONS_H_ 5 #ifndef MEDIA_FORMATS_MP4_BOX_DEFINITIONS_H_
6 #define MEDIA_FORMATS_MP4_BOX_DEFINITIONS_H_ 6 #define MEDIA_FORMATS_MP4_BOX_DEFINITIONS_H_
7 7
8 #include <stddef.h> 8 #include <stddef.h>
9 #include <stdint.h> 9 #include <stdint.h>
10 10
(...skipping 145 matching lines...) Expand 10 before | Expand all | Expand 10 after
156 struct MEDIA_EXPORT Edit : Box { 156 struct MEDIA_EXPORT Edit : Box {
157 DECLARE_BOX_METHODS(Edit); 157 DECLARE_BOX_METHODS(Edit);
158 158
159 EditList list; 159 EditList list;
160 }; 160 };
161 161
162 struct MEDIA_EXPORT HandlerReference : Box { 162 struct MEDIA_EXPORT HandlerReference : Box {
163 DECLARE_BOX_METHODS(HandlerReference); 163 DECLARE_BOX_METHODS(HandlerReference);
164 164
165 TrackType type; 165 TrackType type;
166 std::string name;
166 }; 167 };
167 168
168 struct MEDIA_EXPORT AVCDecoderConfigurationRecord : Box { 169 struct MEDIA_EXPORT AVCDecoderConfigurationRecord : Box {
169 DECLARE_BOX_METHODS(AVCDecoderConfigurationRecord); 170 DECLARE_BOX_METHODS(AVCDecoderConfigurationRecord);
170 171
171 // Parses AVCDecoderConfigurationRecord data encoded in |data|. 172 // Parses AVCDecoderConfigurationRecord data encoded in |data|.
172 // Note: This method is intended to parse data outside the MP4StreamParser 173 // Note: This method is intended to parse data outside the MP4StreamParser
173 // context and therefore the box header is not expected to be present 174 // context and therefore the box header is not expected to be present
174 // in |data|. 175 // in |data|.
175 // Returns true if |data| was successfully parsed. 176 // Returns true if |data| was successfully parsed.
(...skipping 93 matching lines...) Expand 10 before | Expand all | Expand 10 after
269 // including some that are required to be present in the BMFF spec. This 270 // including some that are required to be present in the BMFF spec. This
270 // includes the 'stts', 'stsc', and 'stco' boxes, which must contain no 271 // includes the 'stts', 'stsc', and 'stco' boxes, which must contain no
271 // samples in order to be compliant files. 272 // samples in order to be compliant files.
272 SampleDescription description; 273 SampleDescription description;
273 SampleGroupDescription sample_group_description; 274 SampleGroupDescription sample_group_description;
274 }; 275 };
275 276
276 struct MEDIA_EXPORT MediaHeader : Box { 277 struct MEDIA_EXPORT MediaHeader : Box {
277 DECLARE_BOX_METHODS(MediaHeader); 278 DECLARE_BOX_METHODS(MediaHeader);
278 279
280 std::string language() const;
281
279 uint64_t creation_time; 282 uint64_t creation_time;
280 uint64_t modification_time; 283 uint64_t modification_time;
281 uint32_t timescale; 284 uint32_t timescale;
282 uint64_t duration; 285 uint64_t duration;
286 uint16_t language_code;
283 }; 287 };
284 288
285 struct MEDIA_EXPORT MediaInformation : Box { 289 struct MEDIA_EXPORT MediaInformation : Box {
286 DECLARE_BOX_METHODS(MediaInformation); 290 DECLARE_BOX_METHODS(MediaInformation);
287 291
288 SampleTable sample_table; 292 SampleTable sample_table;
289 }; 293 };
290 294
291 struct MEDIA_EXPORT Media : Box { 295 struct MEDIA_EXPORT Media : Box {
292 DECLARE_BOX_METHODS(Media); 296 DECLARE_BOX_METHODS(Media);
(...skipping 141 matching lines...) Expand 10 before | Expand all | Expand 10 after
434 std::vector<TrackFragment> tracks; 438 std::vector<TrackFragment> tracks;
435 std::vector<ProtectionSystemSpecificHeader> pssh; 439 std::vector<ProtectionSystemSpecificHeader> pssh;
436 }; 440 };
437 441
438 #undef DECLARE_BOX 442 #undef DECLARE_BOX
439 443
440 } // namespace mp4 444 } // namespace mp4
441 } // namespace media 445 } // namespace media
442 446
443 #endif // MEDIA_FORMATS_MP4_BOX_DEFINITIONS_H_ 447 #endif // MEDIA_FORMATS_MP4_BOX_DEFINITIONS_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698