1 / 19

TVML ( TV program Making Language )

Gotland University, Sweden Feb. 16 , 201 2. TVML ( TV program Making Language ). Masaki HAYASHI. What is TVML?. TVML ( TV program Making Language ) →A language to describe full TV program TVML Player →Interprets a TVML script and generates a TV program in real-time.

hisa
Download Presentation

TVML ( TV program Making Language )

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Gotland University, Sweden Feb. 16, 2012 TVML ( TV program Making Language ) Masaki HAYASHI

  2. What is TVML? • TVML ( TV program Making Language ) →A language to describe full TV program TVML Player →Interprets a TVML scriptand generates a TV program in real-time Ref: HTML and Web browser

  3. Don't forget ... Text data camera: closeup ( target=A ) character: bow ( name=A ) character: talk ( name=A , text=“Hello everybody, how’s going?”) character: talk ( name=B , text=“Awful”) camera: closeup ( target=A ) character: look ( name=A, target=B ) character: talk ( name=A , text=“What’s happening?”) camera: closeup ( target=B ) …… TVML Player そんなあなたとあの街この街 Visualize TVML

  4. Example of TVML camera: closeup ( target= Bob) character: talk ( name = Bob, text = "Hello world.") To make a character "Bob" speak "Hello world." right after a camera focuses on Bob. > TVML is event driven

  5. Event format character: talk ( name = Bob, text = "Hello" ) Parameters Event type Command character movie camera title set superprop soundlight drawing Specify how the command will be performed

  6. TV Production vs. TVML ■Studio shotStudio set: setProp: propActor: characterLight: lightCamera: camera ■SuperimposeText, image: super ■Art workDrawing work: drawing ■Video clip Video playback:movieStudio monitor:prop ■SoundSound effect: soundAudio mixing: sound ■Static image (Telop, ticker)Text, image, figure: titleFlip: prop

  7. Parameters character: bow ( name = A ) character: bow ( name = A, speed=2.0, level=20 ) • Parameters are not necessarily placed in particular order. • If parameter is omitted, default is used.

  8. Simultaneous action character: bow ( name = Bob) character: bow ( name = Mary ) character: talk ( name = Bob, text = “Hello.") (Mary bows after Bob finishes bowing) character: bow ( name = Bob, wait=no ) character: bow ( name = Mary ) character: talk ( name = Bob, text = “Hello.") (Mary start bowing right after Bob start bowing --> bow at the same time) Realize simultaneous action to use an action event as a state event by setting 'no' to the parameter 'wait'.

  9. Structure of a TVML script // This is a test script by hayashi skipscript(switch=on) // Write a setup segment skipscript(switch=off) // Program begins in action from here camera: closeup(what = Bob) character: talk(name=Bob, text="Today I'm...") ............................. end() // End of the program, black out and no sound

  10. CG Setup SET set: openmodel( name=Hall, filename="Set\hall\hall.obj" ) set: change( name=Hall ) ・Open CG daa file and name it and change to the set ・Could be"C:\Program Files\T2VPlayer\Datafiles\Set\hall\hall.obj" CHARACTER character: openmodel( model=MEI, filename="Character\mei\mei.bm" ) character: casting( name=A, model=MEI ) ・Open TVML character file and name it as a model name ・Name a character in a script and bind the model name to the character Anywhere in a script

  11. CG Setup LIGHT light: flat( name=L1, r=0.70, g=0.70, b=0.70, vx=-1.0, vy=1.0, vz=1.0 ) light: point( name=L2, r=0.9, g=0.9, b=0.9, x=0.0, y=1.5, z=-2.0 ) ・Flat light, Point light and Spot light are available ・Enable to turn on/off the named light CAMERA camera: position( name=CamA, ry=50, rx=10, rz=0, x=5.0, y=1.0, z=3.0, vangle=45.0 ) camera: switch( name=CamA ) ・Setup a camera and name it and set position, orientation and view angle ・Enable to switch and move the named camera

  12. CG Setup PROP prop: openmodel( name=Guitar, filename="Prop\guitar\guitar.obj" ) prop: position( name=Guitar, x=0.5, y=1, z=1.5, rx=0, ry=0, rz=0, scale=1.5 ) prop: visible( name=Guitar, switch=off ) ・Open CG data fil and name it ・Set position, orientation and scale of the camera ・Enable to make it visible/invisible prop: move( name=Guitar, x=3, y=2, z=1, tspeed=3.5s ) prop:openimageplate( name, filename, hsize, vsize, aspect) prop: attach(name, target, joint, switch, x, y, z, rx, ry, rz, scale ) ・Enable to move by specifying the destination ・Enable to use image and movie 2D plate in the 3D world as prop ・Enable to attach a prop to a joint of a character, etc.

  13. Character animation example SPEAK character: talk(name=A, text="Am I speaking in synthesized voice?") character: talkfile(name=A, filename="testsound.mp3") ・Lipsync is automatically done with TTS ・You can change speed, pitch and volume of TTS speach ・Enable to use audio data file (mp3) to make a character speakwith auto lipsync

  14. Character animation example PRE-DEFINED MOVEMENTS character: walk(name=A, x=1.0, z=2.5) character: sit(name=A) ・walk, stop, sit, step, turn, jump, bow, look, gaze, tumble, shake, etc. POSE COMMAND character: definepose(name=A, pose=P1, joint=UpperArm, rx=45.0, rz=-32.0) character: pose(name=A, pose=P1) ・Give rotation angle of a specified joit, and call it to move the character MOCAP COMMAND(motion capture) character: openmocap(motion=MC1, filename="test.bvh" ) character: mocap(name=A, motion=MC1) ・Open BVH data file and name it then call it to give the motion

  15. Other commands MOVIE movie: open ( name=M1, filename="some.mpg" ) movie: play( name=M1 ) ・Open movie data file (avi, mpg) and name it ・Control the movie by commands such as play、stop、pause ・You can put a movie plate in 3D space by "prop:openmovieplate()" SOUND sound: open ( name=S1, filename="thing.mp3" ) sound: play( name=S1 ) sound: fade( name=S1, level=bg ) sound: level( name=S1, level=-14.5dB ) ・Open sound data file (mp3, wav) and name it ・Control the sound by commands such as play、stop、pause ・Enable to use audio mixer function such as fadeand level control

  16. Other commands TITLE title: on ( bg="back.jpg", text="TEST IMAGE" ) title: off( ) ・Instant title display to display image data and a text SUPER super: on ( text="This is it", x=35%, y=40% ) super: off( ) ・Instant superimpose to display given text at a certain position ↑Those are instant version of title & super. If you need more complex ones use "drawing" commands

  17. Other commands DRAWING drawing: openbase ( name=D1, x=0, y=0, width=30%, height=20%, color=aacc66) drawing: display ( name=D1 ) ・Define a base-plane and display it drawing : settext ( name=T1, parent=D1, text="This is it", x=35%, y=40% ) ・Display texts drawing : settimage ( name=T1, parent=D1, filenbame="picture.jpg", x=35%, y=40% ) ・Display image files

  18. Other commands DRAWING drawing: move(name=D1, x=30,speed=10s) ・You can move the base-plane

  19. FIN http://t2vlab.jp/en Download for T2V Player & SDK Contact hayasim77@gmail.com (Dr. Hayashi)

More Related