Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Olive has no sound support #4

Closed
itsmattkc opened this issue Jan 29, 2018 · 5 comments
Closed

Olive has no sound support #4

itsmattkc opened this issue Jan 29, 2018 · 5 comments
Assignees

Comments

@itsmattkc
Copy link
Contributor

itsmattkc commented Jan 29, 2018

Even if audio clips are in the timeline, Olive makes no sound.

@itsmattkc
Copy link
Contributor Author

Sound files now play in Olive but they only play when no video is attached from the same source. There either needs to be a way to synchronize the video frame retrieval with the audio frame retrieval, or opening a separate format context for the audio (this solution could also address #21)

@itsmattkc itsmattkc reopened this Feb 12, 2018
@itsmattkc
Copy link
Contributor Author

WAV files also don't work. FFmpeg, despite reporting the channel count in its stderr output, does not seem to place them in its AVCodecContext struct, so when Olive tries to retrieve this value and pass it to libswresample, it crashes. Clearly the channel count has to be retrieved from elsewhere.

@itsmattkc
Copy link
Contributor Author

itsmattkc commented Feb 12, 2018

Additionally, sample rate conversions (e.g. 44100Hz clip in a 48000Hz sequence) are surprisingly low quality, despite passing through swresample for that specific purpose. There must either be an option for higher quality resampling or Olive will have to use libsoxr instead.

This of course might also be a flaw in Olive's sample/byte count detection and have nothing to do with FFmpeg specifically.

@itsmattkc
Copy link
Contributor Author

WAV files work now due to a workaround/fallback that uses the "channel count" to detect the "channel layout" (i.e. 2 channels defaults to stereo).

@itsmattkc
Copy link
Contributor Author

Olive now officially supports all codecs, sample rates, and format types that FFmpeg supports. Issues that are still present are no seeking support (sound can't detect moving around the timeline), and there is still major slowdown and glitches when video and audio are playing from the same sources.

Once seeking is implemented, I will consider this issue finally(!) closed, and address the second issue in #21

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant