OLD | NEW |
1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 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_CAST_FRAMER_FRAME_ID_MAP_H_ | 5 #ifndef MEDIA_CAST_FRAMER_FRAME_ID_MAP_H_ |
6 #define MEDIA_CAST_FRAMER_FRAME_ID_MAP_H_ | 6 #define MEDIA_CAST_FRAMER_FRAME_ID_MAP_H_ |
7 | 7 |
8 #include <map> | 8 #include <map> |
9 #include <set> | 9 #include <set> |
10 | 10 |
(...skipping 46 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
57 bool FrameExists(uint32 frame_id) const; | 57 bool FrameExists(uint32 frame_id) const; |
58 uint32 NewestFrameId() const; | 58 uint32 NewestFrameId() const; |
59 | 59 |
60 void RemoveOldFrames(uint32 frame_id); | 60 void RemoveOldFrames(uint32 frame_id); |
61 void Clear(); | 61 void Clear(); |
62 | 62 |
63 // Identifies the next frame to be released (rendered). | 63 // Identifies the next frame to be released (rendered). |
64 bool NextContinuousFrame(uint32* frame_id) const; | 64 bool NextContinuousFrame(uint32* frame_id) const; |
65 uint32 LastContinuousFrame() const; | 65 uint32 LastContinuousFrame() const; |
66 | 66 |
67 bool NextAudioFrameAllowingMissingFrames(uint32* frame_id) const; | 67 bool NextFrameAllowingSkippingFrames(uint32* frame_id) const; |
68 bool NextVideoFrameAllowingSkippingFrames(uint32* frame_id) const; | 68 bool HaveMultipleDecodableFrames() const; |
69 | 69 |
70 int NumberOfCompleteFrames() const; | 70 int NumberOfCompleteFrames() const; |
71 void GetMissingPackets(uint32 frame_id, | 71 void GetMissingPackets(uint32 frame_id, |
72 bool last_frame, | 72 bool last_frame, |
73 PacketIdSet* missing_packets) const; | 73 PacketIdSet* missing_packets) const; |
74 | 74 |
75 private: | 75 private: |
76 bool ContinuousFrame(FrameInfo* frame) const; | 76 bool ContinuousFrame(FrameInfo* frame) const; |
77 bool DecodableVideoFrame(FrameInfo* frame) const; | 77 bool DecodableFrame(FrameInfo* frame) const; |
78 | 78 |
79 FrameMap frame_map_; | 79 FrameMap frame_map_; |
80 bool waiting_for_key_; | 80 bool waiting_for_key_; |
81 uint32 last_released_frame_; | 81 uint32 last_released_frame_; |
82 uint32 newest_frame_id_; | 82 uint32 newest_frame_id_; |
83 | 83 |
84 DISALLOW_COPY_AND_ASSIGN(FrameIdMap); | 84 DISALLOW_COPY_AND_ASSIGN(FrameIdMap); |
85 }; | 85 }; |
86 | 86 |
87 } // namespace cast | 87 } // namespace cast |
88 } // namespace media | 88 } // namespace media |
89 | 89 |
90 #endif // MEDIA_CAST_FRAMER_FRAME_ID_MAP_H_ | 90 #endif // MEDIA_CAST_FRAMER_FRAME_ID_MAP_H_ |
OLD | NEW |