Skip to content

Commit

Permalink
v1.3.1
Browse files Browse the repository at this point in the history
  • Loading branch information
Lijun-Yu committed Jul 30, 2020
1 parent f781626 commit 691de2c
Show file tree
Hide file tree
Showing 4 changed files with 15 additions and 10 deletions.
17 changes: 9 additions & 8 deletions avi_r/reader.py
Original file line number Diff line number Diff line change
Expand Up @@ -319,18 +319,19 @@ def _reorder(self):
self.reorder_buffer = []
for frame in self._decode():
if frame.key_frame:
for reordered_frame in sorted(
self.reorder_buffer, key=lambda f: f.frame_id):
yield reordered_frame
yield from sorted(
self.reorder_buffer, key=lambda f: f.frame_id)
self.reorder_buffer = [frame]
else:
self.reorder_buffer.append(frame)
assert self.reorder_buffer[0].frame.key_frame
if len(self.reorder_buffer) == 1 and \
frame.frame_id == self.reorder_buffer[0].frame_id + 1:
yield self.reorder_buffer[0]
self.reorder_buffer[0] = frame
else:
self.reorder_buffer.append(frame)
if len(self.reorder_buffer) > 0:
self.reorder_buffer = sorted(
yield from sorted(
self.reorder_buffer, key=lambda f: f.frame_id)
for f in self.reorder_buffer:
yield f

def _decode(self):
for packet in self._container.demux():
Expand Down
4 changes: 4 additions & 0 deletions docs/version.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,9 @@
# Version History

## AVI-R v1.3.1

* Optimized reorder buffer for faster random access.

## AVI-R v1.3

* Fix memory leak with explicit `close` method.
Expand Down
2 changes: 1 addition & 1 deletion setup.py
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@

setuptools.setup(
name='avi-r',
version='1.3',
version='1.3.1',
author='Lijun Yu',
author_email='lijun@lj-y.com',
description='A robust reader for avi videos.',
Expand Down
2 changes: 1 addition & 1 deletion tests/test.py
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@
'2018-03-11.16-25-00.16-30-00.school.G639.avi', # bidirectional
'2018-03-11.11-35-00.11-40-00.school.G299.avi', # frame id misorder
'2018-03-11.11-35-00.11-40-00.school.G330.avi',
'2018-03-12.10-05-00.10-10-00.hospital.G436.avi' # first frame fail
'2018-03-12.10-05-00.10-10-00.hospital.G436.avi', # first frame fail
]


Expand Down

0 comments on commit 691de2c

Please sign in to comment.