7 #ifndef PACKAGER_MEDIA_BASE_TRICK_PLAY_HANDLER_H_
8 #define PACKAGER_MEDIA_BASE_TRICK_PLAY_HANDLER_H_
10 #include "packager/media/base/media_handler.h"
43 Status Process(std::unique_ptr<StreamData> stream_data)
override;
49 friend class TrickPlayHandlerTest;
53 Status ProcessCachedStreamData(
54 size_t output_stream_index,
55 std::deque<std::shared_ptr<StreamData>>* cached_stream_data);
62 Status ProcessOneStreamData(
size_t output_stream_index,
63 const std::shared_ptr<StreamData>& stream_data);
71 uint32_t total_key_frames_ = 0;
76 int64_t prev_sample_end_timestamp_ = 0;
85 std::vector<std::deque<std::shared_ptr<StreamData>>> cached_stream_data_;
91 #endif // PACKAGER_MEDIA_BASE_TRICK_PLAY_HANDLER_H_