AcademySoftwareFoundation / AcademySoftwareFoundation/OpenRV

[Bug]: setSourceMedia and setStringProperty(f"{source}.media.movie, ...) corrupts audio if rates are not the same.

Open
#177 3 comments 0 reactions 0 assignees View on GitHub
bug
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

Open the contributing 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

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.