tvml ( tv program making language ) masaki hayashi gotland university, sweden feb. 16, 2012

19
TVML ( TV program Making Language ) Masaki HAYASHI University, Sweden 2012

Upload: tracey-craig

Post on 17-Dec-2015

221 views

Category:

Documents


2 download

TRANSCRIPT

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

TVML( TV program Making Language )

Masaki HAYASHI

Gotland University, SwedenFeb. 16, 2012

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

What is TVML?

Ref: HTML and Web browser

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

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

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 )……

Text data

TVML Visualize

TVML Player

そんなあなたとあの街この街

Don't forget ...

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

Example of TVML

To make a character "Bob" speak "Hello world." right after a camera focuses on Bob.

camera: closeup ( target= Bob)character: talk ( name = Bob, text = "Hello world.")

> TVML is event driven

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

Event format

character movie

camera title set superprop soundlight drawing

character: talk ( name = Bob, text = "Hello" )

Event type Command Parameters

Specify how the command will be performed

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

TV Production vs. TVML

■Studio shot  Studio set:set  Prop: prop  Actor: character  Light: light  Camera: camera

■Video clip   Video playback:

movie   Studio monitor:prop

■Static image (Telop, ticker)  Text, image, figure:

title  Flip:

prop

■Superimpose  Text, image:super

■Sound  Sound effect:sound  Audio mixing:sound

■Art work  Drawing work:drawing

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

Parameters

character: bow ( name = A )

Parameters are not necessarily placed in particular order.

If parameter is omitted, default is used.    

character: bow ( name = A, speed=2.0, level=20 )

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

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'.

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

// This is a test script by hayashi

skipscript(switch=on)  // Write a setup segmentskipscript(switch=off)

// Program begins in action from herecamera: closeup(what = Bob)character: talk(name=Bob, text="Today I'm...").............................

end() // End of the program, black out and no sound

Structure of a TVML script

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

CG Setup

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: 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

SET

CHARACTER

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

CG Setup

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: 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

LIGHT

CAMERA

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

CG Setup

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

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.

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

Character animation example

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

SPEAK

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

Character animation example

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.

PRE-DEFINED MOVEMENTS

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

POSE COMMAND

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

MOCAP COMMAND(motion capture)

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

Other commands

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()"

MOVIE

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 fade and level

control

SOUND

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

title: on ( bg="back.jpg", text="TEST IMAGE" )title: off( )

・ Instant title display to display image data and a text

TITLE

super: on ( text="This is it", x=35%, y=40% )super: off( )

・ Instant superimpose to display given text at a certain position

SUPER

↑ Those are instant version of title & super. If you need more complex ones use "drawing" commands

Other commands

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

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

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

Other commands

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

drawing: move(name=D1, x=30,speed=10s )

・ You can move the base-plane

DRAWING

Other commands

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

Download for T2V Player & SDK

http://t2vlab.jp/en

FIN

     [email protected] (Dr. Hayashi)

Contact