A few simplifications/improvements for H.264. A lot of commits, but they should be small and hopefully easy to review.
The long-term goal here is:
Remove uses of unwraps() by using sounder data types, e.g. enums when it is relevant,
Remove borrow_mut access of the RefCell in the DPB, in the hope to eventually get rid of it (we already had crashes due to the borrow rules being violated at runtime),
Make the code easier to understand by using more self-evident types and idiomatic Rust code.
None of these goals are entirely completed by this PR, but it hopefully gets us closer and can serve as inspiration for doing similar for in H.265.
A few simplifications/improvements for H.264. A lot of commits, but they should be small and hopefully easy to review.
The long-term goal here is:
borrow_mut
access of theRefCell
in the DPB, in the hope to eventually get rid of it (we already had crashes due to the borrow rules being violated at runtime),None of these goals are entirely completed by this PR, but it hopefully gets us closer and can serve as inspiration for doing similar for in H.265.