Audio Video Interleave
(?????
AVI
; ≪?????? ? ????? ???????????????≫)
RIFF
-
??????????????
?, ?????? ????? ??????????? ?
Microsoft
-? ?????? 1992 ????????
Video for Windows
????????? ????????? ????
????? ??????? AVI ???????????? ????? ? ???? ????? ? ?????? ????????, ??????? ????????? ?????? ?????????????? ????????????, ??? ????? ? ????? ?????? ??????????? ?????????? ????? ??? ??????? AVI ????? ????? ? ?????????? ?????? ?????? ??????? ???????? (???????
DivX
-????? +
WMA
-?????? ??? Indeo-????? +
PCM
- ??????), ?????? ??? ?????, ?? ?? ?????? ? ??????????? ?????????? ??? ????????????? ?????? ?????? DVD-?, AVI ??????? ????????? ?? ????????????? ????????????
????? AVI ??????? ????? ??? ????? ?? ????? ?????? ???????? LIST chunk-??, ????? ????????? ?? ????? ??????? ? ?????????? AVI ??????? ??? ????? ?? ??????? chunk ???????? ??? ????????? chunk-? ????????? ? ??????? ?????????????? ???????????????
AVI-????? ????? ???????????
RIFF
('AVI '
LIST
('hdrl' <????????>)
LIST
('movi' <?????>) ['idx1' <??????>])
AVI ????? ? ????????? ????? ????????? ???? Chunk: ????? ???????????
LIST
('hrdl' 'avih' (< AVI ????? ????????>)
LIST
('strl' <???? 1-? ????????>)
LIST
('strl' <???? 2-? ????????>)
LIST
('odml' < AVI ????? ?????????? ????????>))
????? ??????? ? ???????? ?????????? AVI ????????? ??? ????????? ?????????? ? chunk-?? ? FOURCC 'avih'-??? ????????? ??????????? ? ????????? ?????????? ??? ????? ?????, ?????? ??????? ??????? ??????? ??????, ?????????? ???????????? ? ?????????????? ???????? ????????? ???? ??????? ????????????
typedef
struct
{
DWORD
dwMicroSecPerFrame
;
DWORD
dwMaxBytesPerSec
;
DWORD
dwReserved1
;
DWORD
dwFlags
;
DWORD
dwTotalFrames
;
DWORD
dwInitialFrames
;
DWORD
dwStreams
;
DWORD
dwSuggestedBufferSize
;
DWORD
dwWidth
;
DWORD
dwHeight
;
DWORD
dwReserved
[
4
];
}
MainAVIHeader
;
dwMicroSecPerFrame
-????????? ? ??????? ???? ????????????????? ??????? ??? ????????? ? ??? ????? ??????
dwMaxBytesPerSec
-????? ? ????? ????? ????????? ????????? ??????? ???????????? ????????????? ??? ?????? ????? ? ????? ??????????? ??????? ??????, ????? ????????? ???? ? ??????
dwFlags
-??????????? ? ?????????? ??????????????? ???????. ??????????? ?? ???????????.
??????
|
??????????????
|
AVIF_HASINDEX
|
??????? ?? 'idx1' chunk.
|
AVIF_MUSTUSEINDEX
|
????? ? ?????, ?? ???????, ??? ?? ?? ??????? ??????? ????????? ?????, ???? ? ??????????, ??????? ???????? ???? ?????? ????????? ?????????? ?????????????????
|
AVIF_ISINTERLEAVED
|
????? ? ????? ?????? ? ????? ????????? ????????????????
|
AVIF_WASCAPTUREFILE
|
|
AVIF_COPYRIGHTED
|
????? ? ?????, ?? ????? ????? ? ??????????? ????????????? ?????????? ???????? ? ????????? ??????????
|
dwTotalFrames
- ????? ? ????? ??????? ????????? ?????? ????????
dwStreams
- ????? ? ????? ??????? ??????? ??????? ??????? ?????? ? ????? ???? ????? ???? ????? ?????
dwSuggestedBufferSize
-??????? ? ????? ????????? ????? ???????? ????? ??????? ?????? ??? ????? ???? ? ???? ????????? ????? ???, ??????? ??? ????????????? chunk-?? ??? ??? ??????? ? ????? ??? ??? ??? ?, ????? ???????????? ????? ??????? ?????????? ????????????? ????????? ?????????, ??? ????????? ????????????????????
dwWidth
- ????? ? AVI ????? ?????????????
dwHeight
[7]
-????? ? AVI ????? ??????????????
????? ????????? ???? ??????? ????????????
typedef
struct
{
FOURCC
fccType
;
FOURCC
fccHandler
;
DWORD
dwFlags
;
DWORD
dwPriority
;
DWORD
dwInitialFrames
;
DWORD
dwScale
;
DWORD
dwRate
;
DWORD
dwStart
;
DWORD
dwLength
;
DWORD
dwSuggestedBufferSize
;
DWORD
dwQuality
;
DWORD
dwSampleSize
;
RECT
rcFrame
;
}
AVIStreamHeader
;
????? ?????????? ????????? ???? ??????? ????????????
typedef
struct
{
DWORD
dwTotalFrames
;
}
ODMLExtendedAVIHeader
;
????????????? ?????????
|
---|
| ??????????????
| |
---|
| ???????????????
| |
---|
| ??????? ?????????
| IEC, ISO,
ITU-T,W3C,IETF
| |
---|
| Others
| |
---|
|
---|
| ????????????
| |
---|
| ?????????????
| |
---|
|
?????????? ? ???????????????
| |
---|
|