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

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

Issue 816353010: Implemented HEVC video demuxing and parsing (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Added hevc handling in media/base/android/media_codec_bridge.cc Created 5 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_MP4_STREAM_PARSER_H_ 5 #ifndef MEDIA_FORMATS_MP4_MP4_STREAM_PARSER_H_
6 #define MEDIA_FORMATS_MP4_MP4_STREAM_PARSER_H_ 6 #define MEDIA_FORMATS_MP4_MP4_STREAM_PARSER_H_
7 7
8 #include <set> 8 #include <set>
9 #include <vector> 9 #include <vector>
10 10
(...skipping 54 matching lines...) Expand 10 before | Expand all | Expand 10 after
65 // this offset is no longer needed by the parser. 65 // this offset is no longer needed by the parser.
66 // Returns 'true' on success, 'false' if there was an error. 66 // Returns 'true' on success, 'false' if there was an error.
67 bool ReadAndDiscardMDATsUntil(int64 max_clear_offset); 67 bool ReadAndDiscardMDATsUntil(int64 max_clear_offset);
68 68
69 void ChangeState(State new_state); 69 void ChangeState(State new_state);
70 70
71 bool EmitConfigs(); 71 bool EmitConfigs();
72 bool PrepareAVCBuffer(const AVCDecoderConfigurationRecord& avc_config, 72 bool PrepareAVCBuffer(const AVCDecoderConfigurationRecord& avc_config,
73 std::vector<uint8>* frame_buf, 73 std::vector<uint8>* frame_buf,
74 std::vector<SubsampleEntry>* subsamples) const; 74 std::vector<SubsampleEntry>* subsamples) const;
75 #if defined(USE_PROPRIETARY_CODECS) && defined(ENABLE_HEVC_DEMUXING)
76 bool PrepareHEVCBuffer(const HEVCDecoderConfigurationRecord& hevc_config,
77 std::vector<uint8>* frame_buf,
78 std::vector<SubsampleEntry>* subsamples) const;
79 #endif
75 bool PrepareAACBuffer(const AAC& aac_config, 80 bool PrepareAACBuffer(const AAC& aac_config,
76 std::vector<uint8>* frame_buf, 81 std::vector<uint8>* frame_buf,
77 std::vector<SubsampleEntry>* subsamples) const; 82 std::vector<SubsampleEntry>* subsamples) const;
78 bool EnqueueSample(BufferQueue* audio_buffers, 83 bool EnqueueSample(BufferQueue* audio_buffers,
79 BufferQueue* video_buffers, 84 BufferQueue* video_buffers,
80 bool* err); 85 bool* err);
81 bool SendAndFlushSamples(BufferQueue* audio_buffers, 86 bool SendAndFlushSamples(BufferQueue* audio_buffers,
82 BufferQueue* video_buffers); 87 BufferQueue* video_buffers);
83 88
84 void Reset(); 89 void Reset();
(...skipping 46 matching lines...) Expand 10 before | Expand all | Expand 10 after
131 bool is_audio_track_encrypted_; 136 bool is_audio_track_encrypted_;
132 bool is_video_track_encrypted_; 137 bool is_video_track_encrypted_;
133 138
134 DISALLOW_COPY_AND_ASSIGN(MP4StreamParser); 139 DISALLOW_COPY_AND_ASSIGN(MP4StreamParser);
135 }; 140 };
136 141
137 } // namespace mp4 142 } // namespace mp4
138 } // namespace media 143 } // namespace media
139 144
140 #endif // MEDIA_FORMATS_MP4_MP4_STREAM_PARSER_H_ 145 #endif // MEDIA_FORMATS_MP4_MP4_STREAM_PARSER_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698