Commit Graph

8 Commits (68461866d806d9ceee03d70049b75ca6e492aa8a)

Author SHA1 Message Date
_ 68461866d8 🐛 bug: popping is gone
It was a combination of two bugs:

1. For some reason, libswresample sometimes returns more data than you need.
Like, it'll return X samples but _more than_ 8X bytes, for f32 stereo.

2. I wasn't supposed to be calling `flush`. I should have been calling
`run` with a dummy frame. This isn't intuitive to me, and it required
me to construct a dummy frame and keep it around in my code. I think
this is pretty inelegant. And looking at the ffmpeg code, I think it's
a flaw in the API design of the `ffmpeg_next` crate. I may ask them
about it in the future.
2021-11-13 11:23:10 -06:00
_ 9c3368f28b 🚧 wip: I might have fixed the popping.
I was not supposed to be calling `flush` in the first place
2021-11-13 11:05:32 -06:00
_ e6c157b556 👕 refactor: took apart the decoder and put it back together as an iterator
popping is still there
2021-11-13 10:31:58 -06:00
_ 9292f0767e 🚧 still trying to debug the popping. I've narrowed it down. 2021-11-13 02:42:31 +00:00
_ 3f5be609ea it's good and seamless except for that dang popping! 2021-11-13 01:11:11 +00:00
_ 336c94e39c 🐛 bug: yep sure enough I wasn't flushing the resampler properly.
I feel like I've done this _exact_ project 3 times now
2021-11-13 00:34:02 +00:00
_ 096b5aeb65 👕 refactor: use decoder module 2021-11-12 23:56:38 +00:00
_ 722821e2c4 👕 refactor: extract decoder module 2021-11-12 23:51:56 +00:00