使用avpro的seek方法将视频画面播放到对应帧,尽量使用1920*1080的视频相对流畅。
如果需要正反自由播放序列,在引擎中包体会很大,使用单个视频模拟序列减少包体大小。
using System;
using System.Collections;
using System.Collections.Generic;
using RenderHeads.Media.AVProVideo;
using UnityEngine;
using UnityEngine.EventSystems;
public class MediaDrag : MonoBehaviour
{
public MediaPlayer mp;
public double curFrame;
private double totalFrame;
void Start()
{
UGUIDragHandler.Get(transform).onBeginDrag += OnBeginDragFunc;
UGUIDragHandler.Get(transform).onDrag += OnDragFunc;
UGUIDragHandler.Get(transform).onEndDrag += OnEndDragFunc;
UGUIDragHandler.Get(transform).onDown += OnClickDownFunc;
UGUIDragHandler.Get(transform).onUp += OnClickUpFunc;
}
private Vector2 clickStartPos;
private Vector2 clickEndPos;
private void OnClickDownFunc(GameObject target, PointerEventData eventData)
{
clickStartPos = eventData.position;
}
private void OnClickUpFunc(GameObject target