Repository navigation
LivLiv Player 0.2.0
The first public release of LivLiv Player: a lightweight 2.5D character player for the web, with lip sync and webcam face tracking. It comes with 21 featured characters, ready to use.
What's in it
Playerplays a LivLiv model (a.livlivfile, or its folder) on a<canvas>with WebGL2: layered 2D art that turns its head with depth. No dependencies; about 34 KB gzipped for the core, idle motion included.- Idle motion: breathing, blinking, and following the pointer with the eyes and head.
setExpression(),act()(nod,shake,tilt,hop,shy,away),lookAt()andblink()on top. - Lip sync (
@livliv-dev/player/voice): from the microphone, aMediaStream, an<audio>or<video>element, or clips queued withspeech.say(). - Face tracking (
@livliv-dev/player/tracking): webcam tracking with MediaPipe, in the browser. Camera images stay on the device; API.md has the networking details. - VRM and PNGTuber characters (
@livliv-dev/player/body,/vrm,/png): the same API, lip sync and face tracking included. VRM 0.x and 1.0 needthreeand@pixiv/three-vrm, both optional.
(Corrected after release: the package name is @livliv-dev/player. These notes first used a name that is not ours on npm.)
- Format 4:
.livlivandmodel.jsonv4, described in FORMAT.md with a JSON Schema inschema/. Packages exported before v4 still play. - Untrusted files: sizes, layer counts, paths and ZIP entries are checked before anything reaches the GPU, and the readers are fuzz-tested. Limits are in API.md.
- Examples:
example/demo.html(expressions, actions, microphone, camera),gallery.html(all 21 characters),png.html,vrm.html.
Featured characters
21 characters in characters/, each with four expressions (smile, shy, angry, sad). None of them are under the Apache License.
- 18 are LivLiv's own, carefully made with AI: free for personal, non-commercial use with credit ("Characters: LivLiv (livliv.ai)"); no selling or AI training. For commercial use, ask by email (admin@livliv.ai). They carry a small LivLiv mark in the bottom-right corner. Nana is LivLiv's mascot. Full terms: characters/LICENSE.md.
- Kujira, Kujira Q and Pen come from other people's work. That license doesn't cover them, and LivLiv can't grant commercial use for them. Their sources, credits and terms: characters/CREDITS.md.
Install
Not on npm yet: build from this repository (npm install && npm run build) and import dist/index.js.
Requirements
WebGL2 and ES2023: Chrome / Edge 97+, Firefox 104+, Safari 15.4+. Tested on current desktop browsers, not yet on real phones (corrected: this line first said "on desktop and mobile"). The tests need Node 22.18 or newer; CI draws every featured character in headless Chromium.
License
Code: Apache License 2.0. Featured characters: characters/LICENSE.md and characters/CREDITS.md. Neither covers the LivLiv name and logos.
中文:LivLiv Player 的第一个公开版本。超轻量的 2.5D 网页角色播放器,支持口型同步和摄像头面捕,VRM 和 PNGTuber 角色用同一套接口;附带 21 个精选角色,每个都有四种表情。其中 18 个是我们精心制作的(AI 参与制作),个人非商业使用免费,请署名;Kujira、Kujira Q、Pen 来自别人的作品,来源和条款见 characters/CREDITS.md。详见 README.zh-CN.md。
日本語:LivLiv Player の最初の公開バージョンです。リップシンクと Web カメラのフェイストラッキングに対応した軽量の Web 向けキャラクタープレイヤーで、VRM と PNGTuber も同じ API で再生できます。厳選キャラクター 21 体つき(表情は各 4 種)。うち 18 体は AI を使って丁寧に作ったもので、個人の非商用利用は無料、クレジット表記が必要です。Kujira、Kujira Q、Pen は他の方の作品がもとで、出典と条件は characters/CREDITS.md にあります。詳しくは README.ja.md へ。