Graphics

 View Only
Expand all | Collapse all

Get Data/Content from currently online scene

  • 1.  Get Data/Content from currently online scene

    Posted 07-01-2022 07:15

    Is it possible to pull data from the current played scene in sequencer to the one to be played? I need the scene to know which video is  loaded in the scene that is currently online. So next scene to be played to do animation based on the video loaded in current scene that is online.

    So Slide3 should know which video is in the slide that is online.

    Also I wrote this to get the video name in the current scene, but how to get it from the one that is online?

    dim mat as xpMaterial
    dim layer as xpMaterialLayer
    dim video as xpBaseShader
    dim videoName as String

    Engine.GetMaterialByName("Mat1", mat)
    mat.GetLayer(1,layer)
    layer.GetShaderByName("Video", video)

    videoName = video.FileName



    ------------------------------
    Svetlin Aleksandrov
    Motion Graphic Designer
    Euronews Bulgaria
    ------------------------------


  • 2.  RE: Get Data/Content from currently online scene

    Posted 07-01-2022 07:49
    I have never tried to pull that info from the currently online scene. How is that clip getting selected? Manually? Do they Change or are those ID numbers always plaything those particular videos?

    ------------------------------
    Simon Redmile
    Senior Graphic Programmer & Designer
    Ross Video
    Bristol United Kingdom
    ------------------------------



  • 3.  RE: Get Data/Content from currently online scene

    Posted 07-01-2022 07:58

    Hi Red,

    This scene will be added several times though Inception  with a different video loaded. The problem is that in the studio they can decide to skip a scene or to play them in different order and the animation should stay seamless. Thats why the scene to be played should know what is playing currently so it can make one of 4 animations.

    They are playing it through Remote Sequencer.



    ------------------------------
    Svetlin Aleksandrov
    Motion Graphic Designer
    Euronews Bulgaria
    ------------------------------



  • 4.  RE: Get Data/Content from currently online scene

    Posted 07-01-2022 08:09
    Are those scenes always on the same framebuffer and layer because you could do an OnOnline script that goes and looks for the scene on a particular layer. 

    I've never tried to then find out whats loaded but perhaps you could get the object, pull the material and then the shader and find out, I am just reading the SDK for ideas.

    ------------------------------
    Simon Redmile
    Senior Graphic Programmer & Designer
    Ross Video
    Bristol United Kingdom
    ------------------------------



  • 5.  RE: Get Data/Content from currently online scene

    Posted 07-01-2022 08:15

    Same framebuffer, same layer. As I mention very similar to b2b... or basically it is b2b

    Yeah I'm reading it too, but I'm new to Xpression and also never used VB, so it's a little confussing how exactly to get that online scene :D



    ------------------------------
    Svetlin Aleksandrov
    Motion Graphic Designer
    Euronews Bulgaria
    ------------------------------



  • 6.  RE: Get Data/Content from currently online scene
    Best Answer

    Posted 07-01-2022 08:18
    The online scene I can help with, here's an example where I am copying text from one online scene to another. This is a text object script calling another scene to get its data. 



    dim textparent, textchild as xpTextObject
    dim parent as xpScene
    dim fb as xpOutputFramebuffer

    engine.GetOutputFramebuffer(0, fb)
    fb.GetSceneOnLayer(2, parent)
    parent.GetObjectByName("Combined", textparent)


    self.GetObjectByName("Text1", textchild)


    textchild.text = textparent.text

    ------------------------------
    Simon Redmile
    Senior Graphic Programmer & Designer
    Ross Video
    Bristol United Kingdom
    ------------------------------



  • 7.  RE: Get Data/Content from currently online scene

    Posted 07-01-2022 09:46

    Tnx Red,

    that worked. I was able to pull the full path of the video form the online scene.

    dim fb as xpOutputFrameBuffer
    dim prevScene as xpScene
    dim bg as xpBackgroundObject
    dim mat as xpMaterial
    dim matLayer as xpMaterialLayer
    dim video as xpBaseShader
    dim txt as xpTextObject
    
    
    Engine.GetOutputFrameBuffer(0,fb)
    fb.GetSceneOnLayer(0, prevScene)
    prevScene.GetObjectByName("Video", bg)
    bg.GetMaterial(0, mat)
    mat.GetShader(0, video)
    Self.GetObjectByName("Text1", txt)
    
    txt.Text = video.FileName


    ------------------------------
    Svetlin Aleksandrov
    Motion Graphic Designer
    Euronews Bulgaria
    ------------------------------



  • 8.  RE: Get Data/Content from currently online scene

    Posted 07-01-2022 09:47
    Nice one! Good work!

    ------------------------------
    Simon Redmile
    Senior Graphic Programmer & Designer
    Ross Video
    Bristol United Kingdom
    ------------------------------



  • 9.  RE: Get Data/Content from currently online scene

    Posted 07-04-2022 07:27

    Hey Red,

    I've hit a wall. Everything is working properly from Xpression Sequencer, but when the slides are loaded trough Inception then the script is failing and not working. I've found that you should "Activate" the project on order to work


    but unfortunately that cannot happen cuz  the studio cg operators are working on a remote sequencer and they have no access to Xpression Studio machines.
    Is there any workaround that you can suggest?



    ------------------------------
    Svetlin Aleksandrov
    Motion Graphic Designer
    Euronews Bulgaria
    ------------------------------



  • 10.  RE: Get Data/Content from currently online scene

    Posted 07-04-2022 07:43
    Checking the SDK looks like you can set project to active. 



    Under engine there's a get project property. 


    I think you could probably put a engine.GetProject then set as active? 



    Another option to look at might be changing the script from engine to self.project although it depends where the script is failing, if its before you've got the scene from the framebuffer that could complicate things. 

    Engine.GetMaterial

    to 

    Self.Project.GetMaterial




    ------------------------------
    Simon Redmile
    Senior Graphic Programmer & Designer
    Ross Video
    Bristol United Kingdom
    ------------------------------



  • 11.  RE: Get Data/Content from currently online scene

    Posted 07-04-2022 08:38

    Yup, adding those 2 lines before everything else has solve the problem

    Engine.GetProject(0, project)
    Engine.SetActiveProject(project)

    maybe I will change GetProject to GetProjectByName for the final version

    Tnx Red,

    very fast and helpful responses from you!



    ------------------------------
    Svetlin Aleksandrov
    Motion Graphic Designer
    Euronews Bulgaria
    ------------------------------



  • 12.  RE: Get Data/Content from currently online scene

    Posted 07-04-2022 08:43
    Excellent, pleased I could point you in the right direction. :)

    ------------------------------
    Simon Redmile
    Senior Graphic Programmer & Designer
    Ross Video
    Bristol United Kingdom
    ------------------------------



  • 13.  RE: Get Data/Content from currently online scene

    Posted 07-01-2022 08:11