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

Side by Side Diff: media/formats/mp2t/es_parser_h264.h

Issue 364823008: Mpeg2TS - estimate duration for video frames. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 6 years, 5 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 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_MP2T_ES_PARSER_H264_H_ 5 #ifndef MEDIA_FORMATS_MP2T_ES_PARSER_H264_H_
6 #define MEDIA_FORMATS_MP2T_ES_PARSER_H264_H_ 6 #define MEDIA_FORMATS_MP2T_ES_PARSER_H264_H_
7 7
8 #include <list> 8 #include <list>
9 #include <utility> 9 #include <utility>
10 10
(...skipping 62 matching lines...) Expand 10 before | Expand all | Expand 10 after
73 bool UpdateVideoDecoderConfig(const H264SPS* sps); 73 bool UpdateVideoDecoderConfig(const H264SPS* sps);
74 74
75 // Callbacks to pass the stream configuration and the frames. 75 // Callbacks to pass the stream configuration and the frames.
76 NewVideoConfigCB new_video_config_cb_; 76 NewVideoConfigCB new_video_config_cb_;
77 EmitBufferCB emit_buffer_cb_; 77 EmitBufferCB emit_buffer_cb_;
78 78
79 // Bytes of the ES stream that have not been emitted yet. 79 // Bytes of the ES stream that have not been emitted yet.
80 scoped_ptr<media::OffsetByteQueue> es_queue_; 80 scoped_ptr<media::OffsetByteQueue> es_queue_;
81 std::list<std::pair<int64, TimingDesc> > timing_desc_list_; 81 std::list<std::pair<int64, TimingDesc> > timing_desc_list_;
82 82
83 // Duration of the last emitted frame.
84 base::TimeDelta last_frame_duration_;
acolwell GONE FROM CHROMIUM 2014/07/03 00:50:58 Remove? This doesn't appear to be used anywhere.
85
83 // H264 parser state. 86 // H264 parser state.
84 // - |current_access_unit_pos_| is pointing to an annexB syncword 87 // - |current_access_unit_pos_| is pointing to an annexB syncword
85 // representing the first NALU of an H264 access unit. 88 // representing the first NALU of an H264 access unit.
86 scoped_ptr<H264Parser> h264_parser_; 89 scoped_ptr<H264Parser> h264_parser_;
87 int64 current_access_unit_pos_; 90 int64 current_access_unit_pos_;
88 int64 next_access_unit_pos_; 91 int64 next_access_unit_pos_;
89 92
90 // Last video decoder config. 93 // Last video decoder config.
91 VideoDecoderConfig last_video_decoder_config_; 94 VideoDecoderConfig last_video_decoder_config_;
95
96 // History of frame PTS.
97 std::list<base::TimeDelta> frame_pts_history_;
98
99 DISALLOW_COPY_AND_ASSIGN(EsParserH264);
92 }; 100 };
93 101
94 } // namespace mp2t 102 } // namespace mp2t
95 } // namespace media 103 } // namespace media
96 104
97 #endif 105 #endif
98 106
OLDNEW
« no previous file with comments | « no previous file | media/formats/mp2t/es_parser_h264.cc » ('j') | media/formats/mp2t/es_parser_h264.cc » ('J')

Powered by Google App Engine
This is Rietveld 408576698