示例#1
0
 /// <summary>
 /// proj parameter is only needed for video clip, to find its abs position
 /// </summary>
 public void UpdateCurrentClipFrameAbsPos(VidkaProj proj)
 {
     CurrentClipFrameAbsPos = null;
     if (CurrentVideoClip != null && proj != null)
     {
         CurrentClipFrameAbsPos = (long?)proj.GetVideoClipAbsFramePositionLeft(CurrentVideoClip);
     }
     else if (CurrentAudioClip != null)
     {
         CurrentClipFrameAbsPos = (long?)CurrentAudioClip.FrameOffset;
     }
 }
示例#2
0
        public static void SetFrameMarker_RightOfVClipJustBefore(this IVidkaOpContext iEditor, VidkaClipVideoAbstract vclip, VidkaProj proj)
        {
            long frameMarker       = proj.GetVideoClipAbsFramePositionLeft(vclip);
            var  rightThreshFrames = proj.SecToFrame(Settings.Default.RightTrimMarkerOffsetSeconds);

            // if clip is longer than RightTrimMarkerOffsetSeconds, we can skip to end-RightTrimMarkerOffsetSeconds
            if (vclip.LengthFrameCalc > rightThreshFrames)
            {
                frameMarker += vclip.LengthFrameCalc - rightThreshFrames;
            }
            iEditor.SetFrameMarker_ShowFrameInPlayer(frameMarker);
        }
示例#3
0
 /// <summary>
 /// There can only be one selected (active) b/w video and audio line, so audio will be set to null
 /// Needs proj to find absolute frame position (CurrentClipFrameAbsPos)
 /// </summary>
 public void SetActiveVideo(VidkaClipVideo active, VidkaProj proj)
 {
     if (CurrentVideoClip != active ||
         CurrentAudioClip != null)
     {
         stateChanged = true;
         originalTimelineSelectionChanged = true;
         SetOriginalTimelinePlaybackMode(false);
     }
     CurrentVideoClip       = active;
     CurrentAudioClip       = null;
     CurrentClipFrameAbsPos = (active != null)
                         ? (long?)proj.GetVideoClipAbsFramePositionLeft(active)
                         : null;
 }
示例#4
0
        public static void SetFrameMarker_LeftOfVClip(this IVidkaOpContext iEditor, VidkaClipVideoAbstract vclip, VidkaProj proj)
        {
            long frameMarker = proj.GetVideoClipAbsFramePositionLeft(vclip);

            iEditor.SetFrameMarker_ShowFrameInPlayer(frameMarker);
        }
示例#5
0
        public static void SetFrameMarker_LeftOfVClip(this ISomeCommonEditorOperations iEditor, VidkaClipVideo vclip, VidkaProj proj)
        {
            long frameMarker = proj.GetVideoClipAbsFramePositionLeft(vclip);

            iEditor.SetFrameMarker_ShowFrameInPlayer(frameMarker);
        }