index
:
libass
0.10.2
0.17.1-branch
checkasm
ci
configure
constness
coverity_scan
coverity_verbose_test
explicit-ts-tagging
master
no-iconv
pthreads
rgba
scan-build
split_ass_render_event
a portable subtitle renderer for the ASS/SSA (Advanced Substation Alpha/Substation Alpha) subtitle format
summary
refs
log
tree
commit
diff
stats
log msg
author
committer
range
path:
root
/
libass
/
ass_render.c
Commit message (
Expand
)
Author
Age
Files
Lines
*
api: limit resolutions to be representable in a single ASS_Image
Oneric
2023-10-16
1
-1
/
+1
*
render: avoid overflow on BorderStyle=4 img allocation
Oneric
2023-10-08
1
-1
/
+1
*
ass_render: charge the bitmap cache for its OutlineHashValue
rcombs
2023-02-18
1
-1
/
+7
*
ass_render: charge composite cache for the BitmapRefs
rcombs
2023-02-18
1
-0
/
+1
*
Minimize rounding error in clip rectangle coordinates
Oleg Oshmyan
2023-02-09
1
-10
/
+10
*
ass_layout_res: ensure it is at least 1x1
Oleg Oshmyan
2023-02-09
1
-4
/
+4
*
bitmap_engine: switch to dynamic vtable
Dr.Smile
2022-12-04
1
-23
/
+23
*
rasterizer: deduplicate tile functions
Dr.Smile
2022-12-04
1
-1
/
+5
*
Switch to a new CPU flag infrastructure
Dr.Smile
2022-12-04
1
-12
/
+1
*
Introduce LayoutRes{X,Y} script headers
Dr.Smile
2022-11-28
1
-4
/
+8
*
Use compatible blur parameters on anamorphic video
Oleg Oshmyan
2022-11-16
1
-9
/
+12
*
Support different Gaussian blur radii along the two axes
Dr.Smile
2022-11-16
1
-7
/
+10
*
ass_render: set user_override_style.Name during init
rcombs
2022-11-15
1
-2
/
+2
*
ass_render: mover rasterizer into RenderContext
rcombs
2022-11-15
1
-7
/
+7
*
ass_render: move shaper member to RenderContext
rcombs
2022-11-15
1
-10
/
+10
*
ass_render: add setup_shaper() function
rcombs
2022-11-15
1
-9
/
+16
*
ass_render: add text_info_done function
rcombs
2022-11-15
1
-5
/
+10
*
ass_render: add text_info_init function
rcombs
2022-11-15
1
-11
/
+20
*
ass_shaper: move cache ownership to the renderer
rcombs
2022-11-15
1
-2
/
+4
*
ass_render: take RenderContext* in render_and_combine_glyphs()
rcombs
2022-11-15
1
-15
/
+20
*
ass_render: take RenderContext* in ass_render_event()
rcombs
2022-11-15
1
-3
/
+3
*
ass_render: get text_info from state
rcombs
2022-11-15
1
-1
/
+1
*
ass_render: take RenderContext* in init_render_context()
rcombs
2022-11-15
1
-36
/
+38
*
ass_render: setup renderer/text_info on RenderContext in ass_renderer_init
rcombs
2022-11-15
1
-2
/
+3
*
ass_render: take RenderContext* in parse_events()
rcombs
2022-11-15
1
-4
/
+4
*
ass_render: use state local in parse_events()
rcombs
2022-11-15
1
-36
/
+36
*
ass_render: take RenderContext* in split_style_runs()
rcombs
2022-11-15
1
-7
/
+8
*
ass_render: take RenderContext* in retrieve_glyphs()
rcombs
2022-11-15
1
-8
/
+9
*
ass_render: take RenderContext* in preliminary_layout()
rcombs
2022-11-15
1
-5
/
+5
*
ass_render: take RenderContext* in wrap_lines_smart()
rcombs
2022-11-15
1
-34
/
+39
*
ass_render: take RenderContext* in reorder_text()
rcombs
2022-11-15
1
-4
/
+5
*
ass_render: take RenderContext* in align_lines()
rcombs
2022-11-15
1
-6
/
+6
*
ass_render: take RenderContext* in apply_baseline_shear()
rcombs
2022-11-15
1
-3
/
+4
*
ass_render: take RenderContext* in calculate_rotation_params()
rcombs
2022-11-15
1
-9
/
+10
*
ass_render: take RenderContext* in add_background()
rcombs
2022-11-15
1
-7
/
+8
*
ass_render: take RenderContext* in render_text()
rcombs
2022-11-15
1
-31
/
+35
*
ass_render: take RenderContext* in [xy]2scr(_(left|right|top|sub))
rcombs
2022-11-15
1
-19
/
+24
*
ass_render: replace render_priv->state with state
rcombs
2022-11-15
1
-53
/
+53
*
ass_parse: take RenderContext* in process_karaoke_effects()
rcombs
2022-11-15
1
-2
/
+3
*
ass_parse: take RenderContext* in parse_tags()
rcombs
2022-11-15
1
-1
/
+1
*
ass_render: take RenderContext* in reset_render_context()
rcombs
2022-11-15
1
-32
/
+32
*
ass_render: take RenderContext* in init_font_scale()
rcombs
2022-11-15
1
-16
/
+17
*
ass_render: move (font|border|blur)_scale to RenderContext
rcombs
2022-11-15
1
-32
/
+32
*
ass_render: take RenderContext* in handle_selective_style_overrides()
rcombs
2022-11-15
1
-8
/
+9
*
ass_render: take RenderContext* in free_render_context
rcombs
2022-11-15
1
-14
/
+15
*
ass_render: add text_info member to RenderContext
rcombs
2022-11-15
1
-0
/
+1
*
ass_parse: take RenderContext* in get_next_char()
rcombs
2022-11-15
1
-1
/
+2
*
ass_parse: take RenderContext* in apply_transition_effects()
rcombs
2022-11-15
1
-1
/
+1
*
ass_parse: take RenderContext in update_font()
rcombs
2022-11-15
1
-1
/
+1
*
ass_render: add renderer pointer to RenderContext
rcombs
2022-11-15
1
-0
/
+1
*
refactor: prefix all internal API with ass_
Oneric
2022-10-22
1
-50
/
+50
*
parse: replace mult_alpha and change_alpha exports
Oneric
2022-10-22
1
-4
/
+1
*
refactor: move and static'fy some internal functions
Oneric
2022-10-22
1
-0
/
+28
*
Implement v4++'s \kt tag
Oneric
2022-10-14
1
-0
/
+3
*
render: do not default PAR based on PlayRes
Oneric
2022-10-07
1
-1
/
+2
*
Rename orig_{width,height} and font_scale_x
Oneric
2022-09-24
1
-26
/
+26
*
Fix scaling in x direction
Oleg Oshmyan
2022-09-24
1
-32
/
+49
*
render: improve storage res fallback when PAR is set
Oneric
2022-09-24
1
-1
/
+15
*
render: simplify storage resolution checks
Oneric
2022-09-09
1
-10
/
+14
*
wrap_lines: fix unsafe reallocation
Oneric
2022-08-19
1
-5
/
+12
*
wrap_lines: consistently account for whitespace trimming
Oneric
2022-08-19
1
-3
/
+8
*
refactor: split out trailing space rewind
Oneric
2022-08-19
1
-4
/
+15
*
wrap_lines: update s2 when linebreak moves
Oneric
2022-08-19
1
-0
/
+1
*
wrap_lines: do not merge linebreaks
Oneric
2022-08-19
1
-5
/
+4
*
Add WRAP_UNICODE feature
Oneric
2022-08-19
1
-15
/
+60
*
Move event_text to text_info
Oneric
2022-08-19
1
-2
/
+6
*
refactor: split up wrap_lines_smart
Oneric
2022-08-19
1
-52
/
+63
*
render: fix div by zero in fix_glyph_scaling
Oneric
2022-07-13
1
-0
/
+4
*
render: avoid crash on negative Fontsize
Oneric
2022-05-01
1
-1
/
+1
*
render: avoid UB on left shifts
Oneric
2022-04-26
1
-2
/
+4
*
asm/x86: check highest supported leaf for cpuid
Oneric
2022-03-17
1
-2
/
+4
*
renderer: fix handling of empty clip outlines
Dr.Smile
2022-02-17
1
-3
/
+1
*
Reset baseline shear for each run, like VSFilter, or whole lines
Oleg Oshmyan
2022-02-14
1
-3
/
+5
*
Run bidi on each glyph run in isolation by default, like VSFilter
Oleg Oshmyan
2022-02-14
1
-0
/
+2
*
Consistently use x86 asm code if we've built it
Oleg Oshmyan
2022-02-12
1
-1
/
+1
*
Round BorderStyle 4 box size equally in all directions
Oleg Oshmyan
2022-02-12
1
-4
/
+4
*
Refactor track features to bitflags
Oneric
2021-12-14
1
-1
/
+1
*
renderer: eliminate FT_Glyph
Dr.Smile
2021-10-05
1
-12
/
+9
*
renderer: consolidate processing of glyph decoration flags
Dr.Smile
2021-10-05
1
-8
/
+4
*
rasterizer: use correct memory alignment instead of magic number
Dr.Smile
2021-09-26
1
-2
/
+1
*
Add strikeout/underline to ASS_Outline, not FreeType-owned memory
Oleg Oshmyan
2021-09-22
1
-0
/
+4
*
renderer: use complementary equations for \clip and \iclip
Dr.Smile
2021-09-14
1
-3
/
+3
*
fontselect: save library and ftlibrary in ASS_FontSelector
Oleg Oshmyan
2021-07-10
1
-2
/
+2
*
quantize_transform: set whole *pos struct to enable assignment-copy
Oleg Oshmyan
2021-05-02
1
-2
/
+4
*
Skip glyphs with \fscx0 or \fscy0 after layout
Oleg Oshmyan
2021-04-29
1
-0
/
+2
*
Delay \fay baseline shear until last text layout step
Oleg Oshmyan
2021-04-29
1
-12
/
+22
*
reorder_text: tweak code style
Oleg Oshmyan
2021-04-29
1
-4
/
+4
*
Ignore glyphs[0].pos.y in compute_string_bbox
Oleg Oshmyan
2021-04-29
1
-1
/
+1
*
Fix embedded and memory fonts
Oneric
2021-04-22
1
-0
/
+6
*
Make argument order uniform between bitmap functions
Dr.Smile
2021-04-21
1
-3
/
+3
*
Make alignment and padding of all bitmaps consistent
Dr.Smile
2021-04-21
1
-3
/
+3
*
quantize_transform: Reword explanatory comment
Oneric
2021-03-28
1
-18
/
+21
*
Eliminate accidental trigraphs
Oneric
2021-03-28
1
-3
/
+3
*
Replace M_PI
Oneric
2021-03-28
1
-3
/
+3
*
Print libass version
Oneric
2021-03-26
1
-0
/
+4
*
Do not apply \fsp to vector drawings
Oleg Oshmyan
2021-03-25
1
-3
/
+5
*
parsing: use string references for font family and drawing text
Dr.Smile
2021-02-22
1
-29
/
+21
*
ass_render: fix aliasing when 1a=0 but 3a>0
rcombs
2021-02-13
1
-1
/
+2
*
Treat zero-area events as explicitly positioned
Oneric
2020-10-31
1
-2
/
+4
*
Don't carry xbord width across events
Oneric
2020-10-31
1
-0
/
+1
*
Fix \kf speed in anamorphic video
Oleg Oshmyan
2020-10-27
1
-1
/
+2
*
Improve \kf position rounding
Oleg Oshmyan
2020-10-27
1
-1
/
+1
*
Fix shifted \kf position with rectangular \iclip
Oleg Oshmyan
2020-10-27
1
-0
/
+1
*
Fix \kf fill positioning
Oleg Oshmyan
2020-10-27
1
-3
/
+16
*
Delay angle conversion to radians until the last moment
Oleg Oshmyan
2020-10-27
1
-4
/
+8
*
Handle \k0 \ko0 \kf0 \K0 like VSFilter
Oleg Oshmyan
2020-10-27
1
-1
/
+6
*
Drop the now-useless, previously-broken first_pos_x
Oleg Oshmyan
2020-10-27
1
-3
/
+2
*
process_karaoke_effects: honor starts_new_run
Oleg Oshmyan
2020-10-27
1
-3
/
+3
*
Handle strdup-fails regardinging FontFamily
Oneric
2020-10-27
1
-5
/
+7
*
ass_render: Replace Segment with Rect
Oneric
2020-10-22
1
-34
/
+34
*
Return bool from ass_shaper_shape
Oleg Oshmyan
2020-10-22
1
-1
/
+1
*
Make harfbuzz a hard dependency; closes #199
rcombs
2020-10-22
1
-4
/
+0
*
Split glyph runs early
Oleg Oshmyan
2020-10-19
1
-40
/
+46
*
Ignore font substitution when splitting combined bitmaps
Oleg Oshmyan
2020-10-18
1
-2
/
+0
*
Fix Scroll effects with rectangle \clip/\iclip
Oleg Oshmyan
2020-10-18
1
-2
/
+10
*
Fix Scroll effect coordinates
Oleg Oshmyan
2020-10-18
1
-2
/
+3
*
Support Banner/Scroll effects with \pos/\move
Oleg Oshmyan
2020-10-18
1
-34
/
+33
*
Support line breaks with Banner effect
Oleg Oshmyan
2020-10-18
1
-12
/
+5
*
ass_render_event: simplify clip conversion to screen coordinates
Oleg Oshmyan
2020-10-18
1
-53
/
+15
*
Scale everything from script resolution if storage size is unknown
Oleg Oshmyan
2020-10-15
1
-3
/
+1
*
outline: fix overflows in outline processing
Dr.Smile
2020-10-08
1
-2
/
+6
*
Ignore metrics of trimmable whitespace on nonblank lines
Oleg Oshmyan
2020-09-19
1
-8
/
+29
*
Use bool and true/false assignments for GlyphInfo::skip
Oleg Oshmyan
2020-09-19
1
-5
/
+5
*
Don't halve nonempty line height even if wholly invisible
Oleg Oshmyan
2020-09-19
1
-1
/
+1
*
render: match VSFilter's behavior when painting fill in shadow/border
rcombs
2020-08-30
1
-10
/
+27
*
Disable bidi bracket matching unless enabled via ASS_Feature
Oleg Oshmyan
2020-07-14
1
-0
/
+5
*
shaper: drop prealloc parameter of ass_shaper_new
Oleg Oshmyan
2020-07-12
1
-1
/
+1
*
Perform 3D transforms relative to shadow position
Oleg Oshmyan
2020-07-08
1
-2
/
+5
*
Take border into account during collision detection
Oneric
2020-07-05
1
-8
/
+26
*
Refactor: Avoid code duplication in measure_text
Oneric
2020-07-05
1
-6
/
+11
*
Match *VSF's shift direction for \an(4|5|6)
Oneric
2020-07-05
1
-1
/
+1
*
Fix incorrect collision detection coordinates with anamorphic video
Oleg Oshmyan
2020-07-05
1
-1
/
+1
*
renderer: fix default aspect ratio calculation
Oleg Oshmyan
2020-07-05
1
-4
/
+4
*
renderer: fix subtitles to full screen frame iff use_margins
Oleg Oshmyan
2020-07-05
1
-44
/
+48
*
renderer: remove bogus clip rect for unclipped subtitles
wm4
2020-07-05
1
-0
/
+6
*
ass_render: fix crash on parse_events failure after a drawing
rcombs
2020-05-27
1
-1
/
+3
*
render: silence a couple LLVM static analyzer warnings
rcombs
2020-05-26
1
-4
/
+4
*
render: handle failure to realloc max_glyphs
rcombs
2020-05-26
1
-10
/
+14
*
render: handle more allocation failures in ass_renderer_init
rcombs
2020-05-26
1
-12
/
+19
*
render: allow passing null to ass_renderer_done
rcombs
2020-05-26
1
-0
/
+3
*
render: silence warning
Rodger Combs
2019-11-07
1
-1
/
+1
*
renderer: fix incorrect deallocation
Dr.Smile
2019-09-26
1
-5
/
+4
*
Fix bunch of UB
Dr.Smile
2019-05-21
1
-2
/
+4
*
renderer: synchronize glyph motion to help composite cache
Dr.Smile
2019-05-20
1
-14
/
+29
*
outline: rearrange allocations
Dr.Smile
2019-05-20
1
-8
/
+4
*
Move outline transformations to ass_outline.c
Dr.Smile
2019-05-20
1
-21
/
+8
*
renderer: quantize blur radius and shadow offset
Dr.Smile
2019-05-20
1
-8
/
+64
*
renderer: eliminate use of bitmap pointers as mode flags
Dr.Smile
2019-05-20
1
-42
/
+23
*
renderer: correctly handle case of small but nonzero \bord
Dr.Smile
2019-05-20
1
-1
/
+4
*
renderer: rearrange render flags
Dr.Smile
2019-05-20
1
-19
/
+28
*
bitmap: make ass_synth_blur() work on single bitmap
Dr.Smile
2019-05-20
1
-2
/
+3
*
bitmap: remove level of indirection in bitmap functions
Dr.Smile
2019-05-20
1
-113
/
+115
*
renderer: improve usability of rectangle_combine()
Dr.Smile
2019-05-20
1
-6
/
+6
*
renderer: improve handling of subpixel shift
Dr.Smile
2019-05-20
1
-33
/
+41
*
renderer: implement correct error estimation for stroking
Dr.Smile
2019-05-20
1
-74
/
+109
*
renderer: move outline stroking immediately before rasterization
Dr.Smile
2019-05-20
1
-64
/
+56
*
Consolidate and quantize all transformations
Dr.Smile
2019-05-20
1
-352
/
+487
*
renderer: fix potential memory leak
Dr.Smile
2019-05-19
1
-1
/
+3
*
font: extract transformation from ass_font_get_glyph()
Dr.Smile
2019-05-19
1
-9
/
+9
*
drawing: extract transformation from parsing
Dr.Smile
2019-05-19
1
-28
/
+38
*
cache: construct cache values only from corresponding keys
Dr.Smile
2019-05-19
1
-318
/
+313
*
renderer: rewrite measure_text() to correctly account for leading newlines
Dr.Smile
2019-05-19
1
-31
/
+22
*
font: remove dependency on symbol codes
Dr.Smile
2019-05-19
1
-3
/
+5
*
renderer: use C99 features in some functions
Dr.Smile
2019-05-19
1
-37
/
+30
*
drawing: separate drawing text reading from outline construction
Dr.Smile
2019-05-19
1
-51
/
+46
*
Eliminate advance.y from drawings and glyphs
Dr.Smile
2019-05-19
1
-12
/
+8
*
drawing: remove unnecessary fields from ASS_Drawing struct
Dr.Smile
2019-05-19
1
-2
/
+0
*
font: remove unused field
Dr.Smile
2019-05-19
1
-2
/
+1
*
render: simplify detection of hard overrides
Dr.Smile
2018-01-21
1
-7
/
+7
*
parse_tags: handle argumentless \t inside \t() like VSFilter
Oleg Oshmyan
2018-01-08
1
-1
/
+1
*