• Products
  • Solutions
  • Made with Unity
  • Learning
  • Support & Services
  • Community
  • Asset Store
  • Get Unity

UNITY ACCOUNT

You need a Unity Account to shop in the Online and Asset Stores, participate in the Unity Community and manage your license portfolio. Login Create account
  • Blog
  • Forums
  • Answers
  • Evangelists
  • User Groups
  • Beta Program
  • Advisory Panel

Navigation

  • Home
  • Products
  • Solutions
  • Made with Unity
  • Learning
  • Support & Services
  • Community
    • Blog
    • Forums
    • Answers
    • Evangelists
    • User Groups
    • Beta Program
    • Advisory Panel

Unity account

You need a Unity Account to shop in the Online and Asset Stores, participate in the Unity Community and manage your license portfolio. Login Create account

Language

  • Chinese
  • Spanish
  • Japanese
  • Korean
  • Portuguese
  • Ask a question
  • Spaces
    • Default
    • Help Room
    • META
    • Moderators
    • Topics
    • Questions
    • Users
    • Badges
  • Home /
avatar image
1
Question by harschell · Jun 08, 2017 at 12:23 PM · unity 5streamingsupportvideo streaming

Does videoPlayer.url supports playing live video from hosted url?

I'm following this sample code to play video from unity docs VideoPlayer and also came to this via google search. I'm using Unity 5.6.1f1

This code - > works fine when i play video from local file system or by assigning video clip in editor.

   using System.Collections;
     using System.Collections.Generic;
     using UnityEngine;
     using UnityEngine.UI;
     using UnityEngine.Video;
     
     public class StreamVideo : MonoBehaviour {
     
         public RawImage image;
     
         //public VideoClip videoToPlay;
     
         private VideoPlayer videoPlayer;
         private VideoSource videoSource;
     
         private AudioSource audioSource;
         
         // Use this for initialization
         void Start () {
             Application.runInBackground = true;
             StartCoroutine(playVideo());
         }
     
         IEnumerator playVideo()
         {
           
             //Add VideoPlayer to the GameObject
             videoPlayer = gameObject.AddComponent<VideoPlayer>();
     
             //Add AudioSource
             audioSource = gameObject.AddComponent<AudioSource>();
     
             //Disable Play on Awake for both Video and Audio
             videoPlayer.playOnAwake = false;
             audioSource.playOnAwake = false;
             audioSource.Pause();
     
             //We want to play from video clip not from url
             
           //videoPlayer.source = VideoSource.VideoClip;
     
             // Vide clip from Url
             videoPlayer.source = VideoSource.Url;
             videoPlayer.url = "http://www.quirksmode.org/html5/videos/big_buck_bunny.mp4";
     
     
             //Set Audio Output to AudioSource
             videoPlayer.audioOutputMode = VideoAudioOutputMode.AudioSource;
     
             //Assign the Audio from Video to AudioSource to be played
             videoPlayer.EnableAudioTrack(0, true);
             videoPlayer.SetTargetAudioSource(0, audioSource);
     
             //Set video To Play then prepare Audio to prevent Buffering
             //videoPlayer.clip = videoToPlay;
             videoPlayer.Prepare();
     
             //Wait until video is prepared
             WaitForSeconds waitTime = new WaitForSeconds(1);
             while (!videoPlayer.isPrepared)
             {
                 Debug.Log("Preparing Video");
                 //Prepare/Wait for 5 sceonds only
                 yield return waitTime;
                 //Break out of the while loop after 5 seconds wait
                 break;
             }
     
             Debug.Log("Done Preparing Video");
     
             //Assign the Texture from Video to RawImage to be displayed
             image.texture = videoPlayer.texture;
     
             //Play Video
             videoPlayer.Play();
     
             //Play Sound
             audioSource.Play();
     
             Debug.Log("Playing Video");
             while (videoPlayer.isPlaying)
             {
                 Debug.LogWarning("Video Time: " + Mathf.FloorToInt((float)videoPlayer.time));
                 yield return null;
             }
             Debug.Log("Done Playing Video");
         }
     }

But when I enable, it doesn't play video.

 videoPlayer.url = "http://www.quirksmode.org/html5/videos/big_buck_bunny.mp4";
 

Nothing happens... So my question is **does it even supports playing video from url say http://www.quirksmode.org/html5/videos/big_buck_bunny.mp4?**

Comment
Add comment
10 |3000 characters needed characters left characters exceeded
▼
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Viewable by all users

1 Reply

· Add your reply
  • Sort: 
avatar image
3
Best Answer

Answer by jpetus34 · Jun 19, 2017 at 02:49 PM

@harschell yes, just add this script to whatever object you want the video to play on:

 using System.Collections;
 using System.Collections.Generic;
 using UnityEngine;
 using UnityEngine.Video;

 public class VideoController : MonoBehaviour {

 public GameObject tv;
 public Renderer rend;
 public Material on;
 public Material off;
 private bool isPlaying;
 private VideoPlayer videoPlayer;
 private AudioSource audioSource;

 // Use this for initialization
 void Start () {
      
     videoPlayer = gameObject.AddComponent<VideoPlayer>();

     //Add AudioSource
     audioSource = gameObject.AddComponent<AudioSource>();

     //Disable Play on Awake for both Video and Audio
     videoPlayer.playOnAwake = false;
     audioSource.playOnAwake = false;
     audioSource.Pause();

     // Video clip from Url
     videoPlayer.source = VideoSource.Url;
     videoPlayer.url = "http://www.quirksmode.org/html5/videos/big_buck_bunny.mp4";
                 
     //Set Audio Output to AudioSource
     videoPlayer.audioOutputMode = VideoAudioOutputMode.AudioSource;

     //Assign the Audio from Video to AudioSource to be played
     videoPlayer.EnableAudioTrack(0, true);

     videoPlayer.SetTargetAudioSource(0, audioSource);

     //Set video To Play then prepare Audio to prevent Buffering        
     videoPlayer.Prepare();
     
     //Play Video
     videoPlayer.Play();

     //Play Sound
     audioSource.Play();
 }
 
 // Update is called once per frame
 void Update () {
     isPlaying = videoPlayer.isPlaying;
     if (isPlaying)
     {
         rend.material = on;
     }
     else
     {
         rend.material = off;
     }
     
 }
 }

Note: the on/off are just materials I use to set the color of my tv object to make it look off when the tv is not playing the video. Hope this helps, it works fine for me.

Comment
Add comment · Show 3 · Share
10 |3000 characters needed characters left characters exceeded
▼
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Viewable by all users
avatar image Anne-Pier · Jan 31, 2018 at 03:29 PM 0
Share

Works great but I have a question, if I put this script on a UI element, it won't work. Any fix for this or do you know why this won't work? Thanks.

avatar image Trejkaz · Jun 03, 2018 at 11:49 PM 0
Share

Why even use a script? If you just wire up the VideoPlayer correctly, it should just start with the URL simply set into the player.

avatar image Seve2 · Jul 27 at 07:34 AM 0
Share

What gameobject do I add to the Tv and Rend option in the inspector panel

Your answer

Hint: You can notify a user about this post by typing @username

Up to 2 attachments (including images) can be used with a maximum of 524.3 kB each and 1.0 MB total.

Welcome to Unity Answers

The best place to ask and answer questions about development with Unity.

To help users navigate the site we have posted a site navigation guide.

If you are a new user to Unity Answers, check out our FAQ for more information.

Make sure to check out our Knowledge Base for commonly asked Unity questions.

If you are a moderator, see our Moderator Guidelines page.

We are making improvements to UA, see the list of changes.



Follow this Question

Answers Answers and Comments

134 People are following this question.

avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image

Related Questions

Video Player URL Stream Dropbox Video in Android Has Bug, but works fine in editor 0 Answers

Does Unity 5.5 support touch and multi touch gestures on Windows 8.1 and 10 standalone touch screen device? 2 Answers

Unity 5 will run normally in Win10? 2 Answers

Remove Unity Services Linking 2 Answers

How to view IP camera on HoloLens? 1 Answer

  • Anonymous
  • Sign in
  • Create
  • Ask a question
  • Spaces
  • Default
  • Help Room
  • META
  • Moderators
  • Explore
  • Topics
  • Questions
  • Users
  • Badges