static void mls_set_frame_rate_or_disable(void* data, const Rational* frameRate) { MultipleMediaSources* multSource = (MultipleMediaSources*)data; MediaSourceElement* ele = &multSource->sources; int i; while (ele != NULL && ele->source != NULL) { msc_set_frame_rate_or_disable(ele->source, frameRate); /* recalculate disabledStreamCount */ ele->disabledStreamCount = 0; for (i = 0; i < ele->numStreams; i++) { if (msc_stream_is_disabled(ele->source, i)) { ele->disabledStreamCount++; } } ele = ele->next; } multSource->maxLength = convert_length(multSource->maxLength, &multSource->maxLengthFrameRate, frameRate); multSource->maxLengthFrameRate = *frameRate; }
static void cps_set_frame_rate_or_disable(void* data, const Rational* frameRate) { ClipSource* clipSource = (ClipSource*)data; msc_set_frame_rate_or_disable(clipSource->targetSource, frameRate); clipSource->start = convert_length(clipSource->start, &clipSource->frameRate, frameRate); clipSource->duration = convert_length(clipSource->duration, &clipSource->frameRate, frameRate); clipSource->frameRate = *frameRate; }