* match a couple h264-reader semantic changes. E.g., decode_nal now
expects the full NALU including header byte.
* adjust test data in depacketize_parameter_change. The SDP parameters
I used were invalid in a way caught only by the new h264-reader crate.
That's not the intended scenario, so use different parameters. But
mention the accidental scenario in CHANGELOG.md.
* initialize logging in h264 tests to ease debugging problems like the
bullet above.
* in AAC code, match h264-reader's switch from bitreader to
bitstream-io. This keeps dependencies down, in addition to the reasons
for h264-reader's switch, described here:
7a02a3b7bd
As described in #47 and #58: revamp this type to keep the full raw
packet, and provide accessors rather than raw fields. It's also
smaller now, which is nice.
As listed in #47.
This improves throughput in the client/h264 benchmark by about 20%,
I think because we copy fewer bytes around. CodecItem went from 256
bytes to 176.
* support setting transport to UDP
* breaking change: use new PacketContext rather than RtspMessageContext
in places where an RTP/RTCP packet is expected, as it can now be over
UDP instead of via RTSP interleaved data
* send teardown, which is important with UDP sessions. (It also will
help somewhat with Reolink TCP.) Along the way, make Session Unpin
so that teardown can consume it without tripping over tokio::pin!().
* refactor to shrink the amount of data used by Session and how much
gets memmoved around on the stack, instead of further growing it.
Because of missing RTCP RR and reorder buffer support, this is only
appropriate for using on a LAN. That's enough for me right now.