Unity 视频组件 VideoPlayer

组件添加:

        在自己定义的组件下(例如:Panel) 点击 Inspector 面板中的 AddComponent ,输入“VideoPlayer”。


资源

这里 视频资源有两种形式,第一种是 VideoClip ,需要将视频文件拖拽到该属性字段中,便可播放。第二种是URL,需要输入视频的网络地址,如HTTP或RTSP,便可。


渲染方式(常见方式):

  • Render Mode: Render Texture - 视频渲染到一个Render Texture上,然后可以将该纹理应用到任何支持它的对象上。
  •  Render Mode: Material Override 常见得渲染方式,渲染到设置的Renderer上。

音频输出

  1. Audio Output Mode: Audio Source - 使用默认的Audio Source组件播放音频。
  2. Audio Output Mode: Direct - 直接输出音频,绕过Unity的音频系统。

其他

  1. playOnAwake:

    • 如果设置为true,视频会在场景加载完成后自动开始播放。
  2. isLooping:

    • 如果设置为true,视频在播放结束后会自动重新开始。
  3. clip:

    • 视频片段的引用,可以通过这个属性获取或设置当前播放的视频片段。
  4. isPrepared:

    • 表示视频是否已经准备好播放。在视频准备好之前,某些操作(如播放)可能不可用。
  5. prepareCompleted:

    • 一个事件,当视频准备好播放时触发。可以在这里执行播放前的准备操作。
  6. error:

    • 一个事件,当视频播放过程中出现错误时触发。可以用来处理错误情况。

API :

  1. Prepare():

    • 开始异步准备视频播放。在视频准备好后,可以通过prepareCompleted事件来获取准备状态。
  2. Play():

    • 开始播放视频。如果视频已经准备好,会立即播放;如果视频还在准备中,会在准备完成后自动播放。
  3. Pause():

    • 暂停当前播放的视频。
  4. Stop():

    • 停止视频播放,并重置到视频的开始位置。
  5. SetTime(float time):

    • 设置视频播放的当前时间。time参数是视频总时长的百分比。
    • videoPlayer.time = time; // 设置视频的当前时间
  6. GetTime():

    • 获取视频当前的播放时间。
  7. GetDuration():

    • 获取视频的总时长。
  8. SendVideoRenderEvent(VideoRenderEvent event):

    • 用于发送视频渲染事件。这个API可以用来自定义视频渲染的逻辑,例如在视频渲染的不同阶段执行特定的操作。
  9. SetTargetTimeScale(float timeScale):

    • 设置视频播放的速度。timeScale参数可以是大于1、小于1或等于1的值,分别代表加速、减速和正常速度。
  10. SetTargetAudioSource(AudioSource source):

    • 设置视频音频输出的目标Audio Source。
  11. SetTargetTexture(Texture texture):

    • 设置视频渲染的目标纹理。
  12. SetSource(VideoSource source, VideoClip clipOrUrl):

    • 设置视频源和视频片段或URL。需要先设置source,然后再传入相应的clipOrUrl
  13. SetRenderMode(RenderMode renderMode):

    • 设置视频的渲染模式。
  14. SetAudioOutputMode(AudioOutputMode outputMode, AudioSource source):

    • 设置音频输出的模式和目标Audio Source。
  • 23
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值