You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Hello,
Are there any plans to support seeking to a specific frame?
I'm writing a small app that shows a song's Hz spectograph and, and allows play/pausing of the song along with the spectograph. Play/pause works great, but I'd like a way to reset what frame we're reading from. (That would allow to the user to "stop" and set the time to 0, or click on a spot and seek to that spot.)
Great idea! This might be hard to support in some backends, like the ffmpeg one, but that shouldn't stop us from adding it to backends where it's easy/possible.
One thing to remember is that we'll want a consistent story for what happens when you seek too far or backwards, if that's disallowed (silent no-op? immediate exception? exception after trying to read post-seek?).
@sampsyo I think I'd vote for an immediate exception, so that users can take their own action. But also, I investigated the backends and I think it's possible to do with all of them.
I'm gonna try adding it to one of the backends and then submit a PR that we can chat about.
Hello,
Are there any plans to support seeking to a specific frame?
I'm writing a small app that shows a song's Hz spectograph and, and allows play/pausing of the song along with the spectograph. Play/pause works great, but I'd like a way to reset what frame we're reading from. (That would allow to the user to "stop" and set the time to 0, or click on a spot and seek to that spot.)
I found that the OSX AudioToolbox backend has
ExtAudioFileSeek
: https://developer.apple.com/documentation/audiotoolbox/1486821-extaudiofileread?language=objcAnd Python
aifc
has:https://docs.python.org/3.6/library/aifc.html
Backends to investigate:
rawread.py
/aifc
(hasaifc.setpos
)ffmpeg
(has a seek option on command start. Audioread might have to close & restart the channel on seek?)gstdec.py
/Gstreamer
/pygobject
(hasIOChannel.seek
)macca.py
/AudioToolbox
(hasExtAudioFileSeek
)maddec.py
/MAD
/pymad
(hasseek_time
)The text was updated successfully, but these errors were encountered: