private void StartPlaybackOfClip(VidkaClipVideoAbstract clip, long? frameOffsetCustom = null)
{
mutex.CurClipMarkerStartPos = mutex.Proj.GetVideoClipAbsFramePositionLeft(clip);
if (frameOffsetCustom.HasValue)
mutex.CurClipMarkerStartPos += frameOffsetCustom.Value - clip.FrameStartNoEase;
var curAbsSec = mutex.Proj.FrameToSec(mutex.CurClipMarkerStartPos);
var ppFrameStart = clip.GetPlaybackFrameStart(frameOffsetCustom);
var ppFrameEnd = clip.GetPlaybackFrameEnd(frameOffsetCustom);
var clipSecStart = mutex.Proj.FrameToSec(ppFrameStart);
var clipSecEnd = mutex.Proj.FrameToSec(ppFrameEnd);
mutex.CurPlayerStartPositionSec = clipSecStart;
mutex.CurStopPositionSec = clipSecEnd;
editor.SetCurrentVideoClip_ForceRepaint(clip);
var doMute = (clip.HasCustomAudio || clip.IsMuted);
//if (clip.HasCustomAudio)
// playerAudio.PlayAudioClip(clip.CustomAudioFilename, clip.CustomAudioOffset + clipSecStart, clip.CustomAudioOffset + clipSecEnd);
player.PlayVideoClip(clip.FileName, clipSecStart, clipSecEnd, doMute);
//playerAudio.PauseAll();
playerAudio.SynchCurrentAudioClips(curAbsSec);
}