public VideoBufferManager(AVCodecManager parent, int frame_length, int buffering_frame_limit, int start_frame) { parent_ = parent; video_buffer_list_ = new VideoBufferList(frame_length); buffering_frame_limit_ = buffering_frame_limit; start_frame_ = start_frame; }
public void Close() { for (int i = 0; i < video_buffer_list_.Length; ++i) { if (video_buffer_list_[i] != null) { video_buffer_list_[i].Free(); video_buffer_list_[i] = null; } } video_buffer_list_ = null; foreach (BufferContainer buffer in empty_buffer_stack_) { buffer.Free(); } empty_buffer_stack_.Clear(); empty_buffer_stack_ = new Stack <BufferContainer>(); current_using_frame_num_ = 0; parent_.last_requested_frame_ = 0; }