Replies: 2 comments 3 replies
-
The rate of a Clip's source_range and the rate of the Media Reference don't need to match. If you want your composition to have a consistent rate, then you can ensure that all of your Clips' source_ranges are all using the desired rate. When the media doesn't match that, then it is up to the playback tool or renderer to determine what to do. Depending on the context and the desired outcome, it might make sense to resample the media (dropping or repeating frames as needed) or do some blending operation. Different NLEs handle this in different ways, so OTIO doesn't force one way of resolving it.
In systems that are completely frame-based, the common strategy is to conform all input media to a consistent rate so that everything lines up on frames before composition is done (e.g. the transition case you described). In systems that are time-based then the media can be sampled at the output rate - similar to spatial sampling when stretching a bitmap to fit a different resolution.
This temporal re-sampling may already be happening in many programs due to monitor refresh rates. For example, if you play 24fps media on a 90Hz monitor, then some frames are shown longer than others (since 90/24 = 3.75), but on a 72Hz monitor they are consistent (since 72/24 = 3)
…---
Joshua Minor (he-him)
Pixar Studio Tools Story/Editorial/VR Previs Tech Lead
***@***.***
On Jun 1, 2022, at 7:33 AM, Gonzalo Garramuño ***@***.***> wrote:
My player (mrViewer) currently works with frames, not time. Movies and sequences have fps control for playback ( and a play_fps to play at different speed ).
My question is how can I deal with different rates in source_ranges when they do not match the fps of the movie files.
Currently, when transitioning from a movie with a certain fps ( say 30 ) and the same rate in the source range and a transition also of rate 30 and another movie of fps ( say 23.976 ) and its source range of rate 30, too, I seem like I need to adjust the start and end frames to compensate for the source range rate (which overrides the movies' fps). That works fine.
However, when the transition and playback is involved, the movie fps of the files seems like it needs to be respected (am I right?) and thus I have to play back the two clips at different fps.
The problem is that when the transition ends, the frame where it ends in the movie file of fps of 23.976 no longer matches the source range of rate 30 and thus I get an offset in the timeline.
If I force the clip of fps 23.976 to play at a rate 30 then the timeline and transition matches, but of course my clip plays too fast.
Hope this makes sense.
—
Reply to this email directly, view it on GitHub <#1320>, or unsubscribe <https://github.com/notifications/unsubscribe-auth/AABJM75LIMF3DNB5NV4LIDTVM5YFNANCNFSM5XRPNYUQ>.
You are receiving this because you are subscribed to this thread.
|
Beta Was this translation helpful? Give feedback.
0 replies
Answer selected by
jminor
-
@ggarra13 did that answer help resolve your question about varying rates? |
Beta Was this translation helpful? Give feedback.
3 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
My player (mrViewer) currently works with frames, not time. Movies and sequences have fps control for playback ( and a play_fps to play at different speed ).
My question is how can I deal with different rates in source_ranges when they do not match the fps of the movie files.
Currently, when transitioning from a movie with a certain fps ( say 30 ) and the same rate in the source range and a transition also of rate 30 and another movie of fps ( say 23.976 ) and its source range of rate 30, too, I seem like I need to adjust the start and end frames to compensate for the source range rate (which overrides the movies' fps). That works fine.
However, when the transition and playback is involved, the movie fps of the files seems like it needs to be respected (am I right?) and thus I have to play back the two clips at different fps.
The problem is that when the transition ends, the frame where it ends in the movie file of fps of 23.976 no longer matches the source range of rate 30 and thus I get an offset in the timeline.
If I force the clip of fps 23.976 to play at a rate 30 then the timeline and transition matches, but of course my clip plays too fast.
Hope this makes sense.
Beta Was this translation helpful? Give feedback.
All reactions