Commit graph

774 commits

Author SHA1 Message Date
dvdsk
7473837814
add test checking for #578 2024-05-23 13:10:37 +02:00
dvdsk
749a4845a2
check if any sound is playing before waiting for seek result 2024-05-23 13:07:09 +02:00
dvdsk
11221a8609
fixes typo in test 2024-05-05 10:46:02 +02:00
dvdsk
97cff09fe2
Fixes two clippy lint issues
Clippy updated and has a new lint regarding clone efficiency. This was
not yet a thing when the previous version was prepared.
2024-05-05 10:39:56 +02:00
dvdsk
50f0177b74
Merge branch 'master' of github.com:RustAudio/rodio 2024-05-05 10:29:28 +02:00
dvdsk
2eb6246884
release 0.18.0 2024-05-05 10:28:50 +02:00
David Kleingeld
149443717f
Merge pull request #575 from senlizishi/document
Add comment about Sink and OutputStream
2024-04-22 11:00:33 +02:00
weixubin
0b1bdb9bfa fix 2024-04-22 16:56:59 +08:00
weixubin
934b1c0525 Add comment about Sink and OutputStream 2024-04-22 16:20:14 +08:00
David Kleingeld
a618afccf9
Merge pull request #574 from RustAudio/fix_cpal_version
The cpal version requirement is too low causing #573
2024-04-21 17:26:01 +02:00
dvdsk
1d15760f3e
The cpal version requirement is too low causing #573
Specifically cpal changed `SupportedStreamConfigRange` and made it Copy.
As that relaxes the requirements on it its a non breaking change. Rodio was
then refactored to remove the now no longer needed `.clone()` in 77c5c54. That
clone however is still needed for Rodio users with a lower cpal version. This
commit fixes that by requiring a higher cpal version.
2024-04-21 12:52:29 +02:00
David Kleingeld
a9045662b2
Merge pull request #572 from hamirmahal/refactor/replace-archived-action-with-similar-functionality
refactor: replace archived action
2024-04-20 10:36:26 +02:00
Hamir Mahal
799ed85f87
refactor: replace archived action 2024-04-20 00:57:02 -07:00
David Kleingeld
e51594892a
Merge pull request #570 from hamirmahal/fix/usage-of-deprecated-version-of-nodejs
fix: usage of `deprecated` version of `Node.js`
2024-04-16 21:35:29 +02:00
Hamir Mahal
e036e43fe5
fix: usage of deprecated version of Node.js 2024-04-16 11:06:13 -07:00
David Kleingeld
cefb123311
Merge pull request #568 from YXL76/patch-1
fix: no variant found for `source::SeekError`
2024-04-13 20:09:24 +02:00
兰陈昕
85c35c317c
Update mod.rs 2024-04-13 23:15:41 +08:00
dvdsk
818f557466
docs(changelog) adds missing entry to changelog 2024-04-06 13:06:31 +02:00
David Kleingeld
d103517b19
Merge pull request #513 from dvdsk/seek_runtime_err
Implements Seek
2024-04-06 12:34:48 +02:00
dvdsk
1ed1197cfd
style, removes a needless clone()
Was needed before a cargo update call. Update to cpal made the type
copy though.
2024-04-06 12:14:08 +02:00
dvdsk
bbc8f00a34
update changelog 2024-04-06 12:11:19 +02:00
dvdsk
b49b22af88
Merge branch 'master' into seek_runtime_err 2024-04-06 12:08:41 +02:00
dvdsk
a4d167f9ec
fix(seek) conditional compilation 2024-04-06 12:07:31 +02:00
dvdsk
34366fe656
style clippy fixes 2024-04-06 12:02:51 +02:00
David Kleingeld
2a7b351345
Merge pull request #565 from RustAudio/add_unreleased_section_to_changelog
The changelog is now in 'keep a changelog' format
2024-04-06 12:01:00 +02:00
dvdsk
6f1f44f04a
Merge branch 'master' into seek_runtime_err 2024-04-06 12:00:17 +02:00
dvdsk
7cf0451a1e
fix(seek/delay) seek < delay duration ate up the delay 2024-04-05 15:14:06 +02:00
dvdsk
aa0880ddee
seek/error symphonia seekerror is now more precise 2024-04-05 13:59:40 +02:00
dvdsk
6034af32fe
fix(decoder/symphonia) seek is no longer off 2024-04-05 13:31:29 +02:00
dvdsk
40a9447fa1
refactor(decoder/sympthonia) use for loop instead loop + match & escape
More readable, prep for using the same lines in new refine_position fn.
Since that is already pretty complex this needed to be made simpler.

This code retries on all errors not only decode errors. Retries will not
work on anything else then a decode error however they also wont cause
any problems. Not checking the result does however make the code
simpler.
2024-04-05 13:28:16 +02:00
dvdsk
1fcf4b8363
test(seek) made channel order more brittle 2024-04-05 12:16:06 +02:00
dvdsk
a52a41bd86
refactor(decoder/symphonia) logic reorderd 2024-04-04 23:47:47 +02:00
dvdsk
f846cdf38d
fix(seek) hound(wav) now keeps channel order consistent 2024-04-04 23:36:01 +02:00
dvdsk
7eb13be288
(tests) use rstest to refactor and expand seek test
This adds two dependencies, they are only needed for the test suite.
Compile time will not increase for users. The extra overhead when
running the test suite is worth it imho. The test file is significantly
shorter and there is less code duplication. A run time solution would
decrease the test interface (you would have to manually find out which
params caused the test).
2024-04-04 21:22:53 +02:00
dvdsk
26e9db7b87
remove seek support for (lewton) vorbis
seek is broken, https://github.com/RustAudio/lewton/issues/73.
We could work around it by:
 - using unsafe to create an instance of Self
 - use mem::swap to turn the &mut self into a mut self
 - take out the underlying Read+Seek
 - make a new self and seek

If this issue is fixed use the implementation in
commit: 3bafe32388
2024-04-04 12:54:09 +02:00
dvdsk
3bafe32388
refactor(seek) explain why seek to sample works 2024-04-03 14:04:59 +02:00
dvdsk
4e14b0acea
Vorbis actually can be implemented since the sample rate is constant
This reverts commit 80add81532.
2024-04-03 13:49:10 +02:00
dvdsk
80add81532
removes seeking from vorbis decoder, can not be implemented 2024-04-03 13:08:21 +02:00
dvdsk
5562241f39
commit to save work on vorbis try_seek 2024-04-03 13:02:30 +02:00
dvdsk
1c821362fd
fix(seek) vorbis decoder now respects channel order 2024-04-03 12:40:59 +02:00
dvdsk
04c6957dac
test(seek) improve channel order test 2024-04-03 11:54:47 +02:00
dvdsk
9ae1c5501a
test(seek) add test for channel order 2024-04-03 11:45:54 +02:00
dvdsk
d0fce09bb0
fix(seek) vorbis decoder crashing when seeking 2024-04-03 11:45:17 +02:00
dvdsk
67612b573e
(seek/test) adds failing test for seeking in exausted source 2024-04-02 12:59:22 +02:00
dvdsk
2e9d680afb
(seek/test) fixes duration calc in test 2024-04-02 12:29:55 +02:00
dvdsk
c60819e47d
seek tests finds beep in stereo test file 2024-04-02 12:08:51 +02:00
David Kleingeld
e0485beb06
Merge pull request #559 from ideka/fix-channel-upscaling
Fix channel count upscaling
2024-04-01 21:00:30 +02:00
dvdsk
766fbbf1fa
implement try_seek for SamplesBuffer 2024-04-01 14:16:56 +02:00
Gerardo Marset
2f3daa9e6c Fix size_hint bug, improve size_hint test 2024-03-31 05:02:30 +01:00
dvdsk
de650fe2a7
The changelog is now in 'keep a changelog' format
Mainly because it means we get an unreleased section.his will save
maintainers time when releasing lowering the barrier to cut a release
which in turn helps out users waiting for fixes/new features. I decided
not to change the old entries to the keepachangelog format, simply
because it is a lot of work and I do not see an advantage.

I would like to also automate checking if the changelog was edited.
Since this would further lower the workload on maintainers. The
responsibility of editing the changelog will then squarly fall on the
Contributor of the PR. That should give maintainers more time to review
PR's.
2024-03-28 21:51:42 +01:00