2016-03-07 70 views
0

需要您的幫助。 我正在做簡單的應用程序(我也是Unity3d的新手),它從IP攝像頭獲取視頻並將其顯示到Texture2D上。 視頻格式是MJPG。 對於簡單的jpg圖像下面的代碼工作正常,但是當我嘗試顯示MJPG時,我只是得到灰色屏幕。捕獲並顯示來自IP攝像頭源的視頻(Unity3d + c#)

我在代碼中犯了錯誤嗎?

public class testVid : MonoBehaviour { 

    //public string uri = "http://24.172.4.142/mjpg/video.mjpg"; //url for example 
    public Texture2D cam; 
    public void Start() { 
     cam = new Texture2D(1, 1, TextureFormat.RGB24, false); 
     StartCoroutine(Fetch()); 
    } 

    public IEnumerator Fetch() { 
     while(true) { 
      Debug.Log("loading... " + Time.realtimeSinceStartup); 
      WWWForm form = new WWWForm(); 
      WWW www = new WWW("http://24.172.4.142/mjpg/video.mjpg"); 
      yield return www; 
      if(!string.IsNullOrEmpty(www.error)) 
       throw new UnityException(www.error); 
      www.LoadImageIntoTexture(cam); 
     } 
    } 
    public void OnGUI() { 
     GUI.DrawTexture(new Rect(0, 0, Screen.width, Screen.height), cam); 
    } 
} 

回答

0

我用這個插件https://www.assetstore.unity3d.com/en/#!/content/15580

  • 腳本添加到遊戲對象
  • 設置視頻的URL腳本
  • 創建熄滅的一種新型材料的2D
  • 將這些材料添加到檢查器中的電影腳本中
  • 然後將相同的材料分配給您的遊戲對象
    想要顯示視頻(例如四方)

希望它有幫助

相關問題