Advanced Streaming Format (ASF)

Download Report

Transcript Advanced Streaming Format (ASF)

Advanced Streaming Format
(ASF)
By Hung-Chin Wang
What is ASF ?
An extensible file format
 be composed of one or more media streams
 include specification of some commonly
used media types
 support the transmission of “ live content ”
 over a wide variety of network and
protocols

ASF Features (1)

Extensible Media Types
– easy to define new media types

Component Download
– Stream-specific information in the file header

Scalable Media Types
– provide information for clients to interpret
scalability options
ASF Features (2)

Multiple Languages
– support multiple languages
Author-specified Stream Prioritization
 Bibliographic Information

File Format Organization(1)

ASF Object definition
– the base unit of organization - ASF Object
– store in little-endian byte order
16 Bytes
8 Bytes
Object ID
Object Size
Object Data
?? Bytes
File Format Organization(2)

High-level File Structure
– three top-level objects



Header Object
Data Object
Index Object
Header Object
File Properties Object
Stream Properties Object 1
...
Stream Properties Object N
<Other Header Objects>
Data Object
Data Unit
...
Data Unit
Index Object
<Other Objects>
File Format Organization(3)

ASF Header Object
–
–
–
–
–
–
–
File Properties Object
Stream Properties Object
Language List Object
Content Description Object
Maker Object
Index Parameters Object
…………
File Format Organization(4)

ASF Data Object
– data units ( contain all multimedia data )

ASF Index Object

Example
File Properties Object
Object Structure:
Field Name
Object ID
Object Size
File ID
Creation Date
Content Expiration Date
Last Send Time
Play Duration
Flags
Live Flag
Huge Data Units
Flag
Reserved
Minimum Bit Rate
Maximum Bit Rate
Average Data Unit Size
Maximum Data Unit
Size
Total Data Units
Stream Count
Field Type
GUID
UINT
GUID
FILETIME
FILETIME
UINT
UINT
UINT
Size (bits)
128
64
128
64
64
64
64
32
1 (LSB)
1
UINT
UINT
UINT
UINT
30
32
32
32
32
UINT
UINT
32
16
Stream Properties Object
Object Structure:
Fiel d Name
Object ID
Object Size
Stream Type
Start Time
End Time
Average Bit Rate
Maximu m Bit Rate
Average Data Unit Size
Maximu m Data Unit Size
Prero ll
Flags
Reliab le Flag
Recordable Flag
Seekable Flag
Presentation Time Flags
Reserved
Presentation Time Delta
Presentation Time Nu merator
Presentation Time Deno minator
Stream Nu mber
Stream Language ID Index
Stream Name Count
Stream Names
MIME Type Length
MIME Type
Type-Specific Data Length
Type-Specific Data
Fiel d Type
GUID
UINT
GUID
UINT
UINT
UINT
UINT
UINT
UINT
UINT
UINT
UINT
UINT
UINT
UINT
UINT
UINT
See below
UINT
ASCII (UINT8)
UINT
UINT8
Size (bits)
128
64
128
64
64
32
32
32
32
32
32
1 (LSB)
1
1
2
27
0 or 32
0 or 32
0 or 32
16
16
16
?
8
?
16
?
Language List Object
Object Structure:
Field Name
Object ID
Object Size
Language ID Count
Language ID Records
Field Type
GUID
UINT
UINT
See below
Size (bits)
128
64
16
?
Language ID Record :
Field Name
Language ID Length
Language ID
Field Type
UINT
ASCII (UINT8)
Size (bits)
8
?
Standard ASF Media Types
Audio Media Type
 Video Media Type
 Image Media Type
 Timecode Media Type
 Text Media Type
 MIDI Media Type
 Command Media Type
 Media-Objects(Hotspot) Media Type

Index Parameters Object

Index Type
– Nearest Data Unit
– Nearest Object
– Nearest Clean Point
Object Structure:
Field Name
Object ID
Object Size
Index Entry Time
Interval
Index Specifier Count
Index Specifiers
Index Specifier:
Field Name
Stream Number
Index Type
Field Type
GUID
UINT
UINT
Size (bits)
128
64
32
UINT
See below
16
?
Field Type
UINT
UINT
Size (bits)
16
16
ASF Data Unit Definition
Fiel d Name
Data Un it Length
Stream Nu mber
Send Time
Data Un it Flags
Extended Flags
Clean Point
Frag ment
Frag ment Size
Grouped Data
Reserved
Object Nu mber
Presentation Time
Offset Into Object
Object Size
Extension Data
Data Un it Data
Fiel d Type
UINT
UINT
UINT
UINT
UINT
UINT
UINT
UINT
UINT8
UINT8
Size (bits)
16 or 32
16
32
8 or 32
1 (LSB)
1
1
1
1
3
8
0, 16, 32
0, 16, 32
0, 16, 32
?
?
Index Object
Object Structure:
Field Name
Object ID
Object Size
Index Entry Time Interval
Index Specifier Count
Index Specifiers
Index Block Count
Index Blocks
Field Type
GUID
UINT
UINT
UINT
See Section 5.14
UINT
See below
Size (bits)
128
64
32
16
?
32
?
Index Block:
Field Name
Block Position
Index Entry Count
Index Entries
Field Type
UINT
UINT
See below
Size (bits)
64
32
?
Index Entry:
Field Name
Offsets
Field Type
UINT32
Size (bits)
?
Script Command Object
Object Structure:
Field Name
Object ID
Object Size
Type Count
Command Count
Types
Commands
Field Type
GUID
UINT
UINT
UINT
See below
See below
Size (bits)
128
64
16
16
?
?
Type:
Field Name
Type Name Length
Type Name
Field Type
UINT
Unicode (UINT16)
Size (bits)
16
?
Command:
Field Name
Presentation Time
Type Index
Command Name Length
Command Name
Field Type
UINT
UINT
UINT
Unicode (UINT16)
Size (bits)
32
16
16
?
Maker Object
Object Structure:
Field Name
Object ID
Object Size
Index Specifier Count
Marker Count
Index Specifiers
Markers
Field Type
GUID
UINT
UINT
UINT
See Section 5.14
See below
Size (bits)
128
64
16
16
?
?
Marker:
Field Name
Presentation Time
Offsets
Marker Name Count
Marker Names
Field Type
UINT
UINT64
UINT
See below
Size (bits)
32
?
16
?
Marker Name:
Field Name
Language ID Index
Marker Name Length
Marker Name
Field Type
UINT
UINT
Unicode (UINT16)
Size (bits)
16
16
?
Other ASF Header SubObjects
Component Download Object
 Stream Group Object
 Scalable Object
 Mutual Exclusion Object
 ……...

Conclusion

如何將 media file 轉變成 asf 的檔案格式
Thanks

Everyone