高通Vuforia:識別之後立即播放視頻

原文:http://blog.csdn.net/ggtaas/article/details/40261421

很多人問使用VideoPlayback案例,怎麼實現拍攝到圖片之後立即播放視頻?這個Vuforia已經很好地幫我們考慮到了,在視頻的load方法中可以通過傳入的參數改變。

在Android中

該方法爲:

publicboolean load(String filename, MEDIA_TYPE requestedType,

        boolean playOnTextureImmediately, intseekPosition)

在iOS中

該方法爲:

// Load a movie

-   (BOOL)load:(NSString*)filename playImmediately:

(BOOL)playOnTextureImmediately fromPosition:(float)seekPosition

 

參數是playOnTextureImmediately

 

在Unity3d中

該方法爲:

    /// <summary>
    /// Loads a local or remote movie file
    /// </summary>
    public bool Load(string filename, MediaType requestedType, bool playOnTextureImmediately, float seekPosition)
    {
        SetFilename(filename);
        return videoPlayerLoad(mFilename, (int) requestedType, playOnTextureImmediately, seekPosition);
    }

             

修改:

在Android中:

在VideoPlaybackRender.java類中onSurfaceCreated方法中:

  if (mLoadRequested[i])

                {

                   mVideoPlayerHelper[i].load(mMovieName[i],

                        mCanRequestType[i],mShouldPlayImmediately[i],

                        mSeekPosition[i]);

                    mLoadRequested[i] = false;

                }

將這個傳入的參數設置爲true即可。

在iOS中:

同樣也是在OpenGL渲染類中實現。

VideoPlaybackEAGLView.mm類中prepare方法中,

if (NO == [player load:filename playImmediately:NO fromPosition:videoPlaybackTime[i]]) {

            NSLog(@"Failed to load media");

       }

將playImmediately設置成YES即可。

 

在unity3d中:

修改視頻渲染類VideoPlaybackBehaviour中,

// Load the video
            if (mVideoPlayer.Load(m_path, mMediaType, false0) == false)
            {
                Debug.Log("Could not load video '" + m_path + "' for media type " + mMediaType);
                HandleStateChange(VideoPlayerHelper.MediaState.ERROR);
                this.enabled = false;
                return;
            }

mVideoPlayer.Load(m_path, mMediaType, false0)第三個參修改true

發佈了11 篇原創文章 · 獲贊 1 · 訪問量 9萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章