Werner Lemberg
04728a8bbe
Fixes from the stable branch:
...
* include/freetype/config/ftoption.h (FT_CONFIG_OPTION_OLD_CALCS):
Removed.
[FT_CONFIG_OPTION_OLD_CALCS]: Removed.
* include/freetype/internal/ftcalc.h, src/base/ftcalc.c
[FT_CONFIG_OPTION_OLD_CALCS]: Removed.
* src/base/fttrigon.c (FT_Vector_Length): Change algorithm to match
output of FreeType 1.
* src/pshinter/pshglob.c (psh_globals_scale_widths): Fixed a small
bug that created un-even stem widths when hinting Postscript fonts.
formatting, updating copyright
2002-04-02 14:50:31 +00:00
Werner Lemberg
91db04cb9c
* src/truetype/ttgload.c: 16bit fixes.
...
(TT_Load_Simple_Glyph): Improve debug messages.
(load_truetype_glyph): Remove dead code.
* src/truetype/ttinterp.c: 16bit fixes.
* src/truetype/ttobjs.c: Ditto.
* include/freetype/ftsnames.h, include/freetype/internal/sfnt.h,
src/cff/cffload.h, src/psaux/psobjs.h, src/truetype/ttinterp.[ch],
src/sfnt/ttpost.h: s/index/idx/.
formatting, copyright updates.
2002-04-01 14:25:28 +00:00
Werner Lemberg
b7b163cb07
* src/sfnt/ttcmap.c: 16bit fixes (0xFFFF -> 0xFFFFU).
...
* src/sfnt/ttcmap0.c: 16bit fixes.
(TT_Build_CMaps): Simplify debug messages.
(tt_cmap12_char_next): Fix offset.
* src/sfnt/ttload.c (TT_Load_Names, TT_Load_CMap): Fix debug
messages.
(TT_Load_OS2): 16bit fix.
2002-03-31 18:48:24 +00:00
Werner Lemberg
48c984b5bb
* src/cff/cffdrivr.c (cff_get_glyph_name): Fix debug message.
...
* src/cff/cffobjs.c (CFF_Driver_Init, CFF_Driver_Done)
[TT_CONFIG_OPTION_EXTEND_ENGINE]: Removed.
* src/cff/sfobjs.c (SFNT_Load_Face)
[TT_CONFIG_OPTION_EXTEND_ENGINE]: Ditto.
* src/truetype/ttobjs.c (TT_Init_Driver, TT_Done_Driver)
[TT_CONFIG_OPTION_EXTEND_ENGINE]: Ditto.
* src/truetype/ttdriver.c, src/truetype/ttobjs.c,
src/truetype/ttobjs.h: Renaming driver functions to the
FT_<Subject>_<Action> scheme:
TT_Init_Driver => TT_Driver_Init
TT_Done_Driver => TT_Driver_Done
TT_Init_Face => TT_Face_Init
TT_Done_Face => TT_Face_Done
TT_Init_Size => TT_Size_Init
TT_Done_Size => TT_Size_Done
TT_Reset_Size => TT_Size_Reset
2002-03-30 16:41:09 +00:00
David Turner
56054f310b
fixing the function that computes an ASCII face name
2002-03-30 16:32:47 +00:00
David Turner
d76050abd7
removing compiler warnings
2002-03-30 16:14:48 +00:00
Werner Lemberg
2282f341d6
* src/sfnt/sfdriver.c (get_sfnt_postscript_name): Fix serious typos.
2002-03-28 14:21:15 +00:00
Werner Lemberg
1305f2616d
* include/freetype/internal/psaux.h (PSAux_ServiceRec): Fix
...
compiler warnings.
* include/freetype/internal/t1types.h (T1_FaceRec): Use `const' for
some members.
* src/base/ftapi.c (FT_New_Memory_Stream): Fix typos.
* src/psaux/t1cmap.c (t1_cmap_std_init, t1_cmap_unicode_init): Add
cast.
(t1_cmap_{standard,expert,custom,unicode}_class_rec): Use
`FT_CALLBACK_TABLE_DEF'.
* src/psaux/t1cmap.h: Updated.
* src/sfnt/ttcmap0.c (TT_Build_CMaps): Use `ft_encoding_none'
instead of zero.
* src/type1/t1objs.c (T1_Face_Init): Use casts.
2002-03-28 08:07:16 +00:00
David Turner
94dbf7f022
fixed a small bug in FT_CMaps support
2002-03-26 02:38:39 +00:00
David Turner
2ded2c1d30
* src/base/ftobjs.c, src/sfnt/ttcmap0.c, src/type1/t1objs.c:
...
various fixes to make the FT_CMaps support work correctly
(more tests are still needed)
2002-03-22 22:37:40 +00:00
David Turner
ed54f28e4a
various fixes to the FT_CMaps support
2002-03-22 17:09:52 +00:00
David Turner
fd88e7c7c8
* include/freetype/internal/ftobjs.h,
...
src/sfnt/Jamfile, src/sfnt/rules.mk,
src/sfnt/sfnt.c, src/sfnt/sfobjs.c,
src/sfnt/ttload.c, src/sfnt/ttcmap0.c, src/sfnt/ttcmap0.h:
updated the SFNT charmap support to use FT_CMaps
2002-03-22 15:02:38 +00:00
David Turner
e459d742e6
* include/freetype/internal/ftmemory.h, and a lot of other files !!:
...
changed the names of memory macros. Examples:
MEM_Set => FT_MEM_SET
MEM_Copy => FT_MEM_COPY
MEM_Move => FT_MEM_MOVE
ALLOC => FT_ALLOC
FREE => FT_FREE
REALLOC = >FT_REALLOC
FT_NEW was introduced to allocate a new object from a _typed_
pointer..
note that ALLOC_ARRAY and REALLOC_ARRAY have been replaced
by FT_NEW_ARRAY and FT_RENEW_ARRAY which take _typed_ pointer
arguments.
This results in _lots_ of sources being changed, but makes the
code more generic and less error-prone..
2002-03-22 13:52:37 +00:00
David Turner
a890c29cb0
* include/freetype/internal/ftstream.h,
...
src/base/ftstream.c, src/cff/cffload.c, src/pcf/pcfread.c,
src/sfnt/ttcmap.c, src/sfnt/ttcmap0.c, src/sfnt/ttload.c,
src/sfnt/ttpost.c, src/sfnt/ttsbit.c,
src/truetype/ttgload.c, src/truetype/ttpload.c,
src/winfonts/winfnt.c:
changed the definitions of stream macros. Examples:
NEXT_Byte => FT_NEXT_BYTE
NEXT_Short => FT_NEXT_SHORT
NEXT_UShortLE => FT_NEXT_USHORT_LE
READ_Short => FT_READ_SHORT
GET_Long => FT_GET_LONG
etc..
also introduced the FT_PEEK_XXXX functions..
2002-03-22 12:55:23 +00:00
David Turner
7d3a26425b
* renaming stream macros. Examples:
...
FILE_Skip => FT_STREAM_SKIP
FILE_Read => FT_STREAM_READ
ACCESS_Frame => FT_FRAME_ENTER
FORGET_Frame => FT_FRAME_EXIT
etc...
2002-03-20 10:49:31 +00:00
David Turner
678e0d46cd
* src/sfnt/sfdriver.c (get_sfnt_postscript_name): fixed memory leak
2002-03-20 10:47:38 +00:00
David Turner
b5713c54c3
* include/freetype/internal/psglobals.h (removed),
...
include/freetype/internal/pshints.h,
src/pshinter/pshglob.h: removing obsolete file
* include/freetype/internal/tttypes.h,
include/freetype/internal/sfnt.h,
src/base/ftnames.c, src/cff/cffdrivr.c,
src/sfnt/*.c, src/truetype/*.c: updated SFNT/TrueType type
definitions
2002-03-14 11:26:29 +00:00
Werner Lemberg
0d9165e1d6
* src/base/ftdbgmem.c (ft_mem_table_resize, ft_mem_table_new,
...
ft_mem_table_set, ft_mem_debug_alloc, ft_mem_debug_free,
ft_mem_debug_realloc, ft_mem_debug_done, FT_Alloc_Debug,
FT_Realloc_Debug, FT_Free_Debug): Fix compiler warnings.
* src/base/ftcalc.c (FT_MulFix): Ditto.
* src/cff/cffdrivr.c (cff_get_name_index): Ditto.
* src/cff/cffobjs.c (CFF_Size_Get_Global_Funcs, CFF_Size_Init,
CFF_GlyphSlot_Init): Ditto.
* src/cid/cidobjs.c (CID_GlyphSlot_Init,
CID_Size_Get_Globals_Funcs): Ditto.
* src/type1/t1objs.c (T1_Size_Get_Globals_Funcs, T1_GlyphSlot_Init):
Ditto.
* src/pshinter/pshmod.c (pshinter_interface): Use `static const'.
* src/winfonts/winfnt.c (FNT_Get_Next_Char): Remove unused
variables.
* include/freetype/internal/psaux.h (T1_Builder_Funcs): Renamed
to...
(T1_Builder_FuncsRec): This.
(T1_Builder_Funcs): New typedef.
(PSAux_Interface): Remove compiler warnings.
* src/psaux/psauxmod.c (t1_builder_funcs), src/psaux/psobjs.h
(t1_builder_funcs): Updated.
* src/pshinter/pshglob.h (PSH_Blue_Align): Replaced with ...
(PSH_BLUE_ALIGN_{NONE,TOP,BOT}): New defines.
(PSH_AlignmentRec): Updated.
* include/freetype/internal/ftstream.h (GET_Char, GET_Byte): Fix
typo.
* include/freetype/internal/ftgloadr.h (FT_SubGlyph): Ditto.
* src/base/ftstream (FT_Get_Char): Rename to...
(FT_Stream_Get_Char): This.
* src/base/ftnames.c (FT_Get_Sfnt_Name): s/index/idx/ -- `index' is
a built-in function in gcc, causing warning messages with gcc 3.0.
* src/autohint/ahglyph.c (ah_outline_load): Ditto.
* src/autohint/ahglobal.c (ah_hinter_compute_blues): Ditto.
* src/cache/ftcmanag.c (ftc_family_table_alloc,
ftc_family_table_free, FTC_Manager_Done, FTC_Manager_Register_Cache):
Ditto.
* src/cff/cffload.c (cff_new_index, cff_done_index,
cff_explicit_index, CFF_Access_Element, CFF_Forget_Element,
CFF_Get_Name, CFF_Get_String, CFF_Load_SubFont, CFF_Load_Font,
CFF_Done_Font): Ditto.
* src/psaux/psobjs.c (PS_Table_Add, PS_Parser_LoadField): Ditto.
* src/psaux/t1decode.c (T1_Decoder_Parse_Charstrings): Ditto.
* src/pshinter/pshrec.c (ps_mask_test_bit, ps_mask_clear_bit,
ps_mask_set_bit, ps_dimension_add_t1stem, ps_hints_t1stem3,
* src/pshinter/pshalgo1.c (psh1_hint_table_record,
psh1_hint_table_record_mask, psh1_hint_table_activate_mask): Ditto.
* src/pshinter/pshalgo2.c (psh2_hint_table_record,
psh2_hint_table_record_mask, psh2_hint_table_activate_mask): Ditto.
* src/sfnt/ttpost.c (Load_Format_20, Load_Format_25,
TT_Get_PS_Name): Ditto.
* src/truetype/ttgload.c (TT_Get_Metrics, Get_HMetrics,
load_truetype_glyph): Ditto.
* src/type1/t1load.c (parse_subrs, T1_Open_Face): Ditto.
* src/type1/t1afm.c (T1_Get_Kerning): Ditto.
* include/freetype/cache/ftcmanag.h (ftc_family_table_free): Ditto.
2002-03-07 21:59:59 +00:00
David Turner
28ea6f67c3
* src/sfnt/ttload.c (TT_Load_Names), src/sfnt/sfobjs.c (Get_Name),
...
src/sfnt/sfdriver.c (get_sfnt_postscript_name): Fixed the loader so
that it accepts broken fonts like "foxjump.ttf", which made FreeType
crash when trying to load them.
Also improved the name table parser to be able to load
Windows-encoded entries before Macintosh or Unicode ones, since it
seems some fonts don't have reliable values here anyway.
2002-03-05 16:12:57 +00:00
David Turner
bc82f1bbef
* include/freetype/ftconfig.h: changed FT_LOCAL xxxx to FT_LOCAL( xxxx )
...
everywhere in the source. Sames goes for FT_LOCAL_DEF xxxx translated
into FT_LOCAL_DEF( xxxxx )
2002-03-01 02:26:22 +00:00
David Turner
4e7eeeec7b
yet another logical transformation of the internals to make them
...
more consistent and understandable..
mainly, changing things like PS_Table => PS_TableRec + *PS_Table
2002-02-28 16:10:29 +00:00
David Turner
c03d9cf5cd
* src/sfnt/ttload.c (TT_Load_Names): simplifying and securing the
...
names table loader. Invalid individual name entries are now handled
correctly. This allows the loading of very buggy fonts like
"foxjump.ttf" without allocating tons of memory and causing crashes..
2002-02-27 23:10:19 +00:00
David Turner
617a2e1c3c
adding several experimental sources:
...
- OpenType Layout validation and parsing (common tables)
- Type 1 charmap processing
2002-02-27 21:25:47 +00:00
David Turner
53b3fa1da5
* renaming stream functions to the FT_Subject_Action scheme:
...
FT_Seek_Stream => FT_Stream_Seek
FT_Skip_Stream => FT_Stream_Skip
FT_Read_Stream => FT_Stream_Read
FT_Read_Stream_At => FT_Stream_Read_At
FT_Access_Frame => FT_Stream_Enter_Frame
FT_Forget_Frame => FT_Stream_Exit_Frame
FT_Extract_Frame => FT_Stream_Extract_Frame
FT_Release_Frame => FT_Stream_Release_Frame
FT_Get_XXXX => FT_Stream_Get_XXXX
FT_Read_XXXX => FT_Stream_Read_XXXX
note also that:
FT_New_Stream( filename, stream ) =>
FT_Stream_Open( stream, filename )
(the function doesn't create the FT_Stream structure, it simply
initializes it for reading)
FT_New_Memory_Stream( library, FT_Byte* base, size, stream ) =>
FT_Stream_Open_Memory( stream, const FT_Byte* base, size )
FT_Done_Stream => FT_Stream_Close
note that the name of the stream methods, defined in
"include/freetype/ftsystem.h" have also been changed without
problems:
FT_Stream_IO => FT_Stream_IOFunc
FT_Stream_Close => FT_Stream_CloseFunc
2002-02-24 05:26:57 +00:00
David Turner
4a23351091
renaming "ft_glyph_own_bitmap" into "FT_GLYPH_OWN_BITMAP"
2002-02-24 02:39:08 +00:00
David Turner
23ce5d4575
adding new & experimental charmap processor
2002-02-22 18:28:11 +00:00
Werner Lemberg
b5349a9b75
* builds/freetype.mk (FT_CFLAGS): Use $(INCLUDE_FLAGS) first.
...
* src/cache/ftccache.c (ftc_cache_resize): Mark `error' as unused
to avoid compiler warning.
* src/cff/cffload.c (CFF_Get_String): Ditto.
* src/cff/cffobjs.c (CFF_StrCopy): Ditto.
* src/psaux/psobjs.c (PS_Table_Done): Ditto.
* src/pcf/pcfread.c (pcf_seek_to_table_type): Ditto.
* src/sfnt/sfdriver.c (get_sfnt_postscript_name): Ditto.
(pcf_get_bitmaps): The same for `sizebitmaps'.
* src/psaux/t1decode.c (T1_Decode_Parse_Charstrings): The same for
`orig_y'.
(t1operator_seac): Comment out more dead code.
* src/pshinter/pshalgo2.c (ps2_hints_apply): Add `DEBUG_HINTER'
conditional.
* src/truetype/ttgload.c (TT_Process_Simple_Glyph,
load_truetype_glyph): Add `TT_CONFIG_OPTION_BYTECODE_INTERPRETER'
conditional.
2002-02-19 16:30:15 +00:00
Werner Lemberg
60a1fab094
some cleaning
2002-02-08 06:23:50 +00:00
David Turner
27f6a05ed5
support for embedded fonts in PDF documents. These
...
often do not have a 'cmap', 'post' and 'name' table and
were not loaded by FreeType previously..
(thanks to Derek B. Noonburgs from XPDF)
2002-02-06 13:59:25 +00:00
David Turner
cae232d4f4
removing compiler warnings
2002-02-06 11:22:01 +00:00
Werner Lemberg
0f7c2f1aa5
Adding the function `FT_Get_Next_Char', doing the obvious thing
...
w.r.t. the selected charmap.
* include/freetype/freetype.h: Add prototype.
* include/freetype/internal/ftdriver.h: Add `FTDriver_getNextChar'
typedef.
(FT_Driver_Class): Use it.
* include/freetype/internal/psnames.h: Add `PS_Next_Unicode_Func'
typedef.
(PSNames_Interface): Use it.
* include/freetype/internal/tttypes.h: Add `TT_CharNext_Func'
typedef.
(TT_CMapTable): Use it.
* src/base/ftobjs.c (FT_Get_Next_Char): New function, implementing
high-level API.
* src/cff/cffdrivr.c (cff_get_next_char): New function.
(cff_driver_class): Add it.
* src/cid/cidriver.c (Cid_Get_Next_Char): New function.
(t1cid_driver_class): Add it.
* src/pcf/pcfdriver.c (PCF_Get_Next_Char): New function.
(pcf_driver_class): Add it.
* src/psnames/psmodule.c (PS_Next_Unicode): New function.
(psnames_interface): Add it.
* src/sfnt/ttcmap.c (code_to_next0, code_to_next2, code_to_next4,
code_to_next6, code_to_next_8_12, code_to_next_10): New auxiliary
functions.
(TT_CharMap_Load): Use them.
* src/truetype/ttdriver.c (Get_Next_Char): New function.
(tt_driver_class): Add it.
* src/type1/t1driver.c (Get_Next_Char): New function.
(t1_driver_class): Add it.
* src/winfnt/winfnt.c (FNT_Get_Next_Char): New function.
(winfnt_driver_class): Add it.
* src/pcf/pcfread.c (pcf_load_font): For now, report Unicode for
Unicode and Latin 1 encodings.
2002-02-04 20:55:58 +00:00
Werner Lemberg
8880f2c14d
* src/cache/ftccache.c (ftc_node_done, ftc_node_destroy): Fix
...
compilation warnings.
* src/base/descrip.mms (OBJS): Add `ftmm.obj'.
* src/cache/descrip.mms (ftcache.obj): Dependencies added.
2002-01-25 16:05:39 +00:00
Werner Lemberg
3975e2e1f5
Formatting.
2002-01-09 21:01:18 +00:00
David Turner
f86709a15b
* src/base/ftobjs.c, src/base/ftoutln.c, src/cache/ftccmap.c,
...
src/cff/cffload.c, src/cff/cffobjs.c, src/pshinter/pshalgo2.c,
src/sfnt/ttload.c, src/sfnt/ttsbit.c: removing small compiler
warnings (in pedantic compilation modes)
2002-01-07 10:04:09 +00:00
Werner Lemberg
0d535112fd
Formatting.
...
CFF encoding tables moved back from cffload.c to cffload.h.
2001-12-19 22:26:12 +00:00
David Turner
8772845cdb
* src/sfnt/sfobjs.c (SFNT_Load_Face): make the "post" and "name"
...
tables optional to load PCL fonts properly
2001-12-19 14:59:23 +00:00
Werner Lemberg
04bfe312a5
* src/sfnt/ttload.c (TT_Load_Generic_Header): Typos.
2001-12-11 14:09:06 +00:00
Werner Lemberg
c3b2160869
Formatting.
...
Cleaning up of ChangeLog.
* docs/license.txt: s/X Windows/X Window System/.
* src/raster/ftraster.c: Fix definition condition of MEM_Set().
* src/smooth/ftgrays.c (M_Y): Change value to 192.
* src/base/ftdbgmem.c (ft_mem_table_destroy): Fix printf() parameter.
Remove unused variable.
* src/cache/ftcimage.c (ftc_image_node_init,
ftc_image_node_compare): Remove unused variables.
* src/cache/ftcsbits.c (ftc_sbit_node_weight): Remove unused
variable.
* src/raster/ftraster.c (MEM_Set): Move definition down to avoid
compiler warning.
* src/autohint/ahhint.c (ah_hinter_hint_edges): Use UNUSED() to
avoid compiler warnings.
* src/pcf/pcfread.c (tableNames): Use `const'.
(pcf_read_TOC): Change counter name to avoid compiler warning.
Use `const'.
* src/pshinter/pshrec.c (ps_hints_close): Remove redundant
declaration.
* src/pshinter/pshalgo1.c (psh1_hint_table_init): Rename variables
to avoid shadowing.
* src/pshinter/pshalgo2.c (psh2_hint_table_activate_mask): Ditto.
* src/type1/t1objs.h: Remove double declarations of `T1_Size_Init()'
and `T1_Size_Done()'.
2001-12-05 01:22:05 +00:00
David Turner
23bcde193e
implementing a new function named "FT_Get_Postscript_Name" to
...
retrieve a face's "unique" Postscript name
2001-10-17 13:48:10 +00:00
Werner Lemberg
20abe742a7
* src/sfnt/ttcmap.c (code_to_index2): Handle code values with
...
hi-byte == 0 correctly.
* builds/link-std.mk ($(PROJECT_LIBRARY)): Fix typo.
2001-09-10 13:11:52 +00:00
Werner Lemberg
bcf8d4b497
* src/sfnt/ttload.c (TT_Load_CMap): Fix frame length of
...
`cmap_rec_fields'.
* include/freetype/fterrors.h [!FT_CONFIG_OPTION_USE_MODULE_ERRORS]:
Undefine FT_ERR_BASE before defining again.
2001-08-24 23:11:34 +00:00
Werner Lemberg
5dea44438f
Updating to OpenType 1.3.
...
* include/freetype/internal/tttypes.h (TT_CMap0, TT_CMap2, TT_CMap4,
TT_CMap6): Adding field `language'.
(TT_CMapTable): Removing field `language'.
Type of `length' field changed to FT_ULong.
Adding fields for cmaps format 8, 10, and 12.
(TT_CMapGroup): New auxiliary structure.
(TT_CMap8_12, TT_CMap10): New structures.
* include/freetype/tttables.h (TT_HoriHeader, TT_VertHeader):
Removed last element of `Reserved' array.
* include/freetype/ttnameid.h (TT_PLATFORM_CUSTOM, TT_MS_ID_UCS_4,
TT_NAME_ID_CID_FINDFONT_NAME): New macros.
* src/sfnt/ttcmap.c (TT_CharMap_Load): Updated loading of `language'
field to the new structures.
Fixed freeing of arrays in case of unsuccessful loads.
Added support for loading format 8, 10, and 12 cmaps.
(TT_CharMap_Free): Added support for freeing format 8, 10, and 12
cmaps.
(code_to_index4): Small improvement.
(code_to_index6): Ditto.
(code_to_index8_12, code_to_index10): New functions.
* src/sfnt/ttload.c (TT_Load_Metrics_Header): Updated to new
structure.
(TT_Load_CMap): Ditto.
* src/sfnt/sfobjs.c (tt_encodings): Add MS UCS4 table (before MS
Unicode).
* src/type1/t1driver.c (t1_get_name_index): Fix compiler warning.
2001-08-13 11:44:29 +00:00
Werner Lemberg
36af3ea62b
* include/freetype/internal/psaux.h (PS_Table): Use FT_Offset for
...
`cursor' and `capacity'.
* src/psaux/psobjc.c (reallocate_t1_table): Use FT_Long for second
parameter.
(PS_Table_Add): Use FT_Offset for `new_size'.
* src/base/ftsynth.c: Include ftcalc.h unconditionally.
2001-07-17 12:37:54 +00:00
Werner Lemberg
415235df1b
finishing function header formatting
...
updating copyrights
2001-06-28 17:49:10 +00:00
Werner Lemberg
52005c3042
formatting
2001-06-27 23:25:46 +00:00
Werner Lemberg
f814d0fafe
First round in converting
...
type foo ( ... )
to
type
foo ( ... )
Other minor formatting issues.
2001-06-27 16:18:10 +00:00
David Turner
9a554eb2d6
the SFNT Kerning table loader now ensures that the table is correctly
...
sorted.
2001-06-27 12:40:46 +00:00
David Turner
dee781342b
* include/freetype/ftconfig.h, src/*/*.c: changed the definition and
...
uses of the FT_CALLBACK_DEF macro in order to support 16-bit compilers
2001-06-27 09:26:46 +00:00
Werner Lemberg
8eb0353fec
Formatting.
2001-06-19 23:03:41 +00:00
David Turner
61f0685683
* include/freetype/fterrors.h: updated some of the error macros to
...
simplify Werner's latest tricks :o)
2001-06-19 13:41:59 +00:00