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

Side by Side Diff: content/common/gpu/media/h264_dpb.h

Issue 119153002: Move H264Parser and H264BitReader to media/filters. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 6 years, 11 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 | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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 // This file contains an implementation of an H.264 Decoded Picture Buffer 5 // This file contains an implementation of an H.264 Decoded Picture Buffer
6 // used in H264 decoders. 6 // used in H264 decoders.
7 7
8 #ifndef CONTENT_COMMON_GPU_MEDIA_H264_DPB_H_ 8 #ifndef CONTENT_COMMON_GPU_MEDIA_H264_DPB_H_
9 #define CONTENT_COMMON_GPU_MEDIA_H264_DPB_H_ 9 #define CONTENT_COMMON_GPU_MEDIA_H264_DPB_H_
10 10
11 #include <vector> 11 #include <vector>
12 12
13 #include "base/basictypes.h" 13 #include "base/basictypes.h"
14 #include "base/memory/scoped_vector.h" 14 #include "base/memory/scoped_vector.h"
15 #include "content/common/gpu/media/h264_parser.h" 15 #include "media/filters/h264_parser.h"
16 16
17 namespace content { 17 namespace content {
18 18
19 // A picture (a frame or a field) in the H.264 spec sense. 19 // A picture (a frame or a field) in the H.264 spec sense.
20 // See spec at http://www.itu.int/rec/T-REC-H.264 20 // See spec at http://www.itu.int/rec/T-REC-H.264
21 struct H264Picture { 21 struct H264Picture {
22 enum Field { 22 enum Field {
23 FIELD_NONE, 23 FIELD_NONE,
24 FIELD_TOP, 24 FIELD_TOP,
25 FIELD_BOTTOM, 25 FIELD_BOTTOM,
(...skipping 22 matching lines...) Expand all
48 // Does memory management op 5 needs to be executed after this 48 // Does memory management op 5 needs to be executed after this
49 // picture has finished decoding? 49 // picture has finished decoding?
50 bool mem_mgmt_5; 50 bool mem_mgmt_5;
51 51
52 Field field; 52 Field field;
53 53
54 // Values from slice_hdr to be used during reference marking and 54 // Values from slice_hdr to be used during reference marking and
55 // memory management after finishing this picture. 55 // memory management after finishing this picture.
56 bool long_term_reference_flag; 56 bool long_term_reference_flag;
57 bool adaptive_ref_pic_marking_mode_flag; 57 bool adaptive_ref_pic_marking_mode_flag;
58 H264DecRefPicMarking ref_pic_marking[H264SliceHeader::kRefListSize]; 58 media::H264DecRefPicMarking
59 ref_pic_marking[media::H264SliceHeader::kRefListSize];
59 60
60 typedef std::vector<H264Picture*> PtrVector; 61 typedef std::vector<H264Picture*> PtrVector;
61 }; 62 };
62 63
63 // DPB - Decoded Picture Buffer. 64 // DPB - Decoded Picture Buffer.
64 // Stores decoded pictures that will be used for future display 65 // Stores decoded pictures that will be used for future display
65 // and/or reference. 66 // and/or reference.
66 class H264DPB { 67 class H264DPB {
67 public: 68 public:
68 H264DPB(); 69 H264DPB();
(...skipping 58 matching lines...) Expand 10 before | Expand all | Expand 10 after
127 private: 128 private:
128 Pictures pics_; 129 Pictures pics_;
129 size_t max_num_pics_; 130 size_t max_num_pics_;
130 131
131 DISALLOW_COPY_AND_ASSIGN(H264DPB); 132 DISALLOW_COPY_AND_ASSIGN(H264DPB);
132 }; 133 };
133 134
134 } // namespace content 135 } // namespace content
135 136
136 #endif // CONTENT_COMMON_GPU_MEDIA_H264_DPB_H_ 137 #endif // CONTENT_COMMON_GPU_MEDIA_H264_DPB_H_
OLDNEW
« no previous file with comments | « content/common/gpu/media/h264_bit_reader_unittest.cc ('k') | content/common/gpu/media/h264_parser.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698