Successfully reported this slideshow.
.

.

YALMS Basics

M.Zhanikeev, H.Koide -- maratishe@gmail.com --

YALMS: A Data Structure for Storage and Replay of Mult...
.

.

YALMS Basics
.
YALMS...
.
... stands for

Yet Another Lecture Management System
• a new generaction -- HTML5- and cl...
.

.

YALMS Roadmap
2013.07・ET研

YALMS: Intro

2013.11・IN研

YALMS.cloud
clouds groupdrive
sync
2013.09・ET研

YALMS.annotati...
.

.

YALMS.format : Objectives

M.Zhanikeev, H.Koide -- maratishe@gmail.com --

YALMS: A Data Structure for Storage and R...
.

.

YALMS.format Objectives
single .yalms file
◦ official components: AV for audiovideo, S for slides or screen capture ...
.

.

Objectives ... Visuallly
HTML5
Step 1: Record

A
V
YALMS
Robot

Lecturer
Files

M.Zhanikeev, H.Koide -- maratishe@gm...
.

.

YALMS vs... : Related Works

M.Zhanikeev, H.Koide -- maratishe@gmail.com --

YALMS: A Data Structure for Storage and...
.

.

YALMS.format vs Multimedia System
.
Traditional Multimedia System
.
• powerfull back-end
• HTTP streaming in realtim...
.

.

YALMS.format vs SMIL
5:
6:<par>
7:
<video src="joe-video"/>
8:
<text src="http://www.example.com/joe-text"/>
9:
<seq...
.

.

YALMS.format in Browser

M.Zhanikeev, H.Koide -- maratishe@gmail.com --

YALMS: A Data Structure for Storage and Rep...
.

.

HTML5 Functionality
Browser
Abilities

Traditional
JSON, BSON

HTML5
Flash

WebSockets
Adaptive Streaming?

?

Binar...
.

.

HTML5: the SaveAs Function
•

NOTE: JS now natively can save binary chunks to local filesystem

M.Zhanikeev, H.Koide...
.

.

YALMS.format : Design

M.Zhanikeev, H.Koide -- maratishe@gmail.com --

YALMS: A Data Structure for Storage and Repla...
.

.

YALMS.format : Design
YALMS
Robot
Step 1: Record

A
V

A
V

•
Step 2: Add PDF

C

S

Watch
Watch
scene
filesystem ch...
.

.

YALMS.format : Events
1.

SE : screen capture events
◦ screen capture is video, so -- scene changes

2.

CE : binary...
.

.

1
2
3
4
5

Block border types
Fixed minimal size
Scene change (I-Frame)
Page change
New File(s)
New File Diff(s)

Bl...
.

.

YALMS.format Robot and Screen
Browser

A
V

Get binary
YALMS
Robot
HTML5
File API

CE
SE PE
or

Auto “download file”...
.

.

Wrapup

M.Zhanikeev, H.Koide -- maratishe@gmail.com --

YALMS: A Data Structure for Storage and Replay of Multimedia...
.

.

Wrapup
working version at 02
• release plan: end of March
•

◦ the entire package will be offered as open source

02...
.

.

That’s all, thank you ...

M.Zhanikeev, H.Koide -- maratishe@gmail.com --

YALMS: A Data Structure for Storage and R...
.

.

[01] MEXT (2013)
The enPiT Project
http://www.enpit.jp
[02] myself (2013)
Homepage of the YALMS.format Subproject
ht...
.

.

[06] M.Zhanikeev+1 (2013)
YALMS: Yet Another Lecture Management System
IEICE ET研究会
[07] M.Zhanikeev+1 (2013)
...Auto...
.

.

[11] M.Zhanikeev+0 (2013)
Experiments with application throughput in a browser with full HTML5 support
IEICE ComEx
[...
.

.

[16]

(2013)
Xdelta Project Page
http://xdelta.org/

[17] IETF (2002)
The VCDIFF Generic Differencing and Compressio...
YALMS: A Data Structure for Storage and Replay of Multimedia Content in Digital Classes
Upcoming SlideShare
Loading in …5
×

YALMS: A Data Structure for Storage and Replay of Multimedia Content in Digital Classes

348 views

Published on

Content in digital classes -- a loosely defined aggregation of audiovideo, screen capture, slides, notes and complimentary files -- needs a standard format for storage and replay. The closest to this objective is SMIL -- a language which can describe the timeline of complex multimedia sessions. The format presented in this paper is part of the larger YALMS educational software and goes one step further than SMIL. The proposed format supports realtime recording, partial updates of content, and finally replay of the entire class. Recording and updates require a server as backend but the class can be replayed directly from storage by a web application.

Published in: Technology, Business
  • Be the first to comment

  • Be the first to like this

YALMS: A Data Structure for Storage and Replay of Multimedia Content in Digital Classes

  1. 1. . . YALMS Basics M.Zhanikeev, H.Koide -- maratishe@gmail.com -- YALMS: A Data Structure for Storage and Replay of Multimedia Content -- http://tinyurl.com/marat140116 -- 2 /21 2/21
  2. 2. . . YALMS Basics . YALMS... . ... stands for Yet Another Lecture Management System • a new generaction -- HTML5- and cloud-based LMS 06 • • • one function: video annotation robot 07 another function: Group Drive -- a P2P version of cloud storage 08 high-performance multimedia system based on multicore, SSD, etc. 09 06 M.Zhanikeev+1 "YALMS: Yet Another Lecture Management System" IEICE ET研究会 (2013) 07 M.Zhanikeev+1 "...Automatic Slicing of Screen Capture Video using Slide PDFs" IEICE ET研究会 (2013) 08 M.Zhanikeev+1 "YALMS: A Group Drive API for Cloud-Based Classrooms" IEICE IN研究会 (2013) 09 M.Zhanikeev+1 "...Solid State Drives in Rich Multimedia Content Processing, Storage and Streaming" ITE-MMS研究会 (2013) M.Zhanikeev, H.Koide -- maratishe@gmail.com -- YALMS: A Data Structure for Storage and Replay of Multimedia Content -- http://tinyurl.com/marat140116 -- 3 /21 3/21
  3. 3. . . YALMS Roadmap 2013.07・ET研 YALMS: Intro 2013.11・IN研 YALMS.cloud clouds groupdrive sync 2013.09・ET研 YALMS.annotation 2014.1・LOIS研 PDF video annotation YALMS.format 2014.01・ET研 recording replay storage multimedia YALMS.streaming DASH Adaptive HTML5 2013.10・ITE-MMS研 YALMS.hiperf SSD multicore YALMS.done! M.Zhanikeev, H.Koide -- maratishe@gmail.com -- YALMS: A Data Structure for Storage and Replay of Multimedia Content -- http://tinyurl.com/marat140116 -- 4 /21 4/21
  4. 4. . . YALMS.format : Objectives M.Zhanikeev, H.Koide -- maratishe@gmail.com -- YALMS: A Data Structure for Storage and Replay of Multimedia Content -- http://tinyurl.com/marat140116 -- 5 /21 5/21
  5. 5. . . YALMS.format Objectives single .yalms file ◦ official components: AV for audiovideo, S for slides or screen capture video, C is 1. pack all the contents of a lecture into a ◦ audiovideo, slides, files and versioning, etc. for files and versioning 2. replay .yalms files in a browser in standalone mode ◦ directly from .yalms file -- no backend system M.Zhanikeev, H.Koide -- maratishe@gmail.com -- YALMS: A Data Structure for Storage and Replay of Multimedia Content -- http://tinyurl.com/marat140116 -- 6 /21 6/21
  6. 6. . . Objectives ... Visuallly HTML5 Step 1: Record A V YALMS Robot Lecturer Files M.Zhanikeev, H.Koide -- maratishe@gmail.com -- Viewers C S Step 2: Add PDF Long-Term Storage YALMS Robot S Lecturer YALMS: A Data Structure for Storage and Replay of Multimedia Content -- http://tinyurl.com/marat140116 -- 7 /21 7/21
  7. 7. . . YALMS vs... : Related Works M.Zhanikeev, H.Koide -- maratishe@gmail.com -- YALMS: A Data Structure for Storage and Replay of Multimedia Content -- http://tinyurl.com/marat140116 -- 8 /21 8/21
  8. 8. . . YALMS.format vs Multimedia System . Traditional Multimedia System . • powerfull back-end • HTTP streaming in realtime . . YALMS.format . • .yalms file is a binary file -- can be stored anywhere ◦ like in cloud storage • . no streaming, the file is simply traversed using exiting APIs ◦ any RESTful API, cloud storage, local filesystem M.Zhanikeev, H.Koide -- maratishe@gmail.com -- YALMS: A Data Structure for Storage and Replay of Multimedia Content -- http://tinyurl.com/marat140116 -- 9 /21 9/21
  9. 9. . . YALMS.format vs SMIL 5: 6:<par> 7: <video src="joe-video"/> 8: <text src="http://www.example.com/joe-text"/> 9: <seq> 10: <audio src="rtsp://www.example.com/joe-audio"/> 11: <audio src="tim-audio"/> 12: </seq> 13:</par> 14: 15: jow-audio • close but not enough • need to pack actual content into the file tim-audio joe-text joe-video M.Zhanikeev, H.Koide -- maratishe@gmail.com -- YALMS: A Data Structure for Storage and Replay of Multimedia Content -- http://tinyurl.com/marat140116 -- 10 /21 10/21
  10. 10. . . YALMS.format in Browser M.Zhanikeev, H.Koide -- maratishe@gmail.com -- YALMS: A Data Structure for Storage and Replay of Multimedia Content -- http://tinyurl.com/marat140116 -- 11 /21 11/21
  11. 11. . . HTML5 Functionality Browser Abilities Traditional JSON, BSON HTML5 Flash WebSockets Adaptive Streaming? ? Binary Blob ByteArray WebWorkers structuredCopy New Chrome feature M.Zhanikeev, H.Koide -- maratishe@gmail.com -- passByRef postData( data, [ data]) YALMS: A Data Structure for Storage and Replay of Multimedia Content -- http://tinyurl.com/marat140116 -- 12 /21 12/21
  12. 12. . . HTML5: the SaveAs Function • NOTE: JS now natively can save binary chunks to local filesystem M.Zhanikeev, H.Koide -- maratishe@gmail.com -- YALMS: A Data Structure for Storage and Replay of Multimedia Content -- http://tinyurl.com/marat140116 -- 13 /21 13/21
  13. 13. . . YALMS.format : Design M.Zhanikeev, H.Koide -- maratishe@gmail.com -- YALMS: A Data Structure for Storage and Replay of Multimedia Content -- http://tinyurl.com/marat140116 -- 14 /21 14/21
  14. 14. . . YALMS.format : Design YALMS Robot Step 1: Record A V A V • Step 2: Add PDF C S Watch Watch scene filesystem change M.Zhanikeev, H.Koide -- maratishe@gmail.com -- • events are specific to each content type X SE SE Lecturer even-driven packing • events are used to CE Lecturer PE cut .YALMS files into blocks S YALMS.format Annotation YALMS: A Data Structure for Storage and Replay of Multimedia Content -- http://tinyurl.com/marat140116 -- 15 /21 15/21
  15. 15. . . YALMS.format : Events 1. SE : screen capture events ◦ screen capture is video, so -- scene changes 2. CE : binary file diffs ◦ there are 3. LibXDiff 15 and Xdelta 16, the latter is preferred PE : page events -- replaces SE ◦ blocks based on page changes 15 "LibXDiff" http://www.xmailserver.org/xdiff.html (2013) 16 "Xdelta Project Page" http://xdelta.org/ (2013) M.Zhanikeev, H.Koide -- maratishe@gmail.com -- YALMS: A Data Structure for Storage and Replay of Multimedia Content -- http://tinyurl.com/marat140116 -- 16 /21 16/21
  16. 16. . . 1 2 3 4 5 Block border types Fixed minimal size Scene change (I-Frame) Page change New File(s) New File Diff(s) Block border Head Bytes .YALMS File Design 0 4 8 12 offset Bits 8 16 24 Block Header Design seqno flags Offset Block length in bytes Block 1: type(3) + offset(29) ... (the same for all blocks) Block 1 (binary data) ... … Tail The First Lecture.yalms Time M.Zhanikeev, H.Koide -- maratishe@gmail.com -- The entire file YALMS: A Data Structure for Storage and Replay of Multimedia Content -- http://tinyurl.com/marat140116 -- 17 /21 17/21
  17. 17. . . YALMS.format Robot and Screen Browser A V Get binary YALMS Robot HTML5 File API CE SE PE or Auto “download file” M.Zhanikeev, H.Koide -- maratishe@gmail.com -- Screen A V VIDEO PNG S C MISC. “download” on click YALMS: A Data Structure for Storage and Replay of Multimedia Content -- http://tinyurl.com/marat140116 -- 18 /21 18/21
  18. 18. . . Wrapup M.Zhanikeev, H.Koide -- maratishe@gmail.com -- YALMS: A Data Structure for Storage and Replay of Multimedia Content -- http://tinyurl.com/marat140116 -- 19 /21 19/21
  19. 19. . . Wrapup working version at 02 • release plan: end of March • ◦ the entire package will be offered as open source 02 myself "Homepage of the YALMS.format Subproject" https://github.com/maratishe/yalms.format (2013) M.Zhanikeev, H.Koide -- maratishe@gmail.com -- YALMS: A Data Structure for Storage and Replay of Multimedia Content -- http://tinyurl.com/marat140116 -- 20 /21 20/21
  20. 20. . . That’s all, thank you ... M.Zhanikeev, H.Koide -- maratishe@gmail.com -- YALMS: A Data Structure for Storage and Replay of Multimedia Content -- http://tinyurl.com/marat140116 -- 21 /21 21/21
  21. 21. . . [01] MEXT (2013) The enPiT Project http://www.enpit.jp [02] myself (2013) Homepage of the YALMS.format Subproject https://github.com/maratishe/yalms.format [03] W3C (2013) Synchronized Multimedia Integration Language (SMIL 3.0) http://www.w3.org/TR/SMIL/ [04] W3C (2013) HTML5: W3C Working Draft http://www.w3.org/TR/html5/ [05] W3C (2013) File API: W3C Working Draft www.w3.org/TR/FileAPI M.Zhanikeev, H.Koide -- maratishe@gmail.com -- YALMS: A Data Structure for Storage and Replay of Multimedia Content -- http://tinyurl.com/marat140116 -- 21 /21 21/21
  22. 22. . . [06] M.Zhanikeev+1 (2013) YALMS: Yet Another Lecture Management System IEICE ET研究会 [07] M.Zhanikeev+1 (2013) ...Automatic Slicing of Screen Capture Video using Slide PDFs IEICE ET研究会 [08] M.Zhanikeev+1 (2013) YALMS: A Group Drive API for Cloud-Based Classrooms IEICE IN研究会 [09] M.Zhanikeev+1 (2013) ...Solid State Drives in Rich Multimedia Content Processing, Storage and Streaming ITE-MMS研究会 [10] M.Zhanikeev+0 (2013) ...Content Aggregation in Browsers using Recent Advances in HTML5 COMPSAC M.Zhanikeev, H.Koide -- maratishe@gmail.com -- YALMS: A Data Structure for Storage and Replay of Multimedia Content -- http://tinyurl.com/marat140116 -- 21 /21 21/21
  23. 23. . . [11] M.Zhanikeev+0 (2013) Experiments with application throughput in a browser with full HTML5 support IEICE ComEx [12] H.Pucha+3 (2008) Adaptive File Transfers for Diverse Environments USENIX [13] D.Frey+2 (2012) Probabilistic Deduplication for Cluster-Based Storage Systems 3rd ACM SoCC [14] D.Meyer+1 (2012) A Study of Practical Deduplication ACM Transactions on Storage (TOS) [15] (2013) LibXDiff http://www.xmailserver.org/xdiff.html M.Zhanikeev, H.Koide -- maratishe@gmail.com -- YALMS: A Data Structure for Storage and Replay of Multimedia Content -- http://tinyurl.com/marat140116 -- 21 /21 21/21
  24. 24. . . [16] (2013) Xdelta Project Page http://xdelta.org/ [17] IETF (2002) The VCDIFF Generic Differencing and Compression Data Format RFC3284 M.Zhanikeev, H.Koide -- maratishe@gmail.com -- YALMS: A Data Structure for Storage and Replay of Multimedia Content -- http://tinyurl.com/marat140116 -- 21 /21 21/21

×