AcademySoftwareFoundation / AcademySoftwareFoundation/OpenRV
[Bug]: setSourceMedia and setStringProperty(f"{source}.media.movie, ...) corrupts audio if rates are not the same.
- Dominant language
- C++
- Stars
- 764
- Forks
- 246
- Avg merge
- 6d 12h
- Merged PRs (30d)
- 13
Description
### What happened?
When rates don't perfectly align between the prior media and the new media when setting a new source media (either through the API call or direct property change), audio will become corrupted. In some cases it sounds stuttery (such as very close match, think floating point math diferences) and in other cases (like 24fps to 30fps) the audio plays briefly and cuts out entirely.
For instance, create media with a movieproc (`solid,start=1,end=100,fps=24,width=1920,height=1080.movieproc`) then try swapping the media after the fact with a 30fps clip.
### List all the operating systems versions where this is happening
Windows 10
### On what computer hardware is this happening?
Threadripper 64 core, RTX 2080ti
### Relevant console log output
```shell
N/A
```
### Environment variables
N/A
### Extra information
_No response_
### Code of Conduct
- [X] I agree to follow this project's Code of Conduct
Contributor guide
Research direction
Reproduce the issue with a 24fps movieproc, then swap in a 30fps clip through setSourceMedia and setStringProperty for the source media. Trace those entry points and compare audio behavior when the rates differ; done means audio remains continuous and free of stutter or cutoff after the media swap.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp
- Domain
- audio-video-rtc
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 42/100