Don't overwrite user-defined aspect ratio settings
commit35a62a5e6025c6807e1bdf86dd9abbc6fea74808
authorwm4 <wm4@nowhere>
Mon, 18 Mar 2013 23:15:17 +0000 (19 00:15 +0100)
committerwm4 <wm4@nowhere>
Fri, 29 Mar 2013 21:58:31 +0000 (29 22:58 +0100)
treed73799c2a71f4d86aba847f9ffcd7d4a47f4f14b
parent5c9efa109eb9027334b730a42471ee1ec2ed4c9a
Don't overwrite user-defined aspect ratio settings

ass_set_storage_size() overwrote the user-defined aspect ratio set with
ass_set_aspect_ratio(). Change it so that if ass_set_aspect_ratio() is
used, the ass_set_storage_size() parameters are not used for any aspect
ratio calculations. (The storage size is still used for calculating the
blur scale.) This simplifies the code as well, because the aspect ratio
is now centrally calculated in ass_start_frame().

Update the doxygen. Make it clear that ass_set_storage_size() will be
used for aspect ratio calculation, unless ass_set_aspect_ratio() is
used. Also mention what libass actually does with the dar and sar
parameters: it uses them to calculate a pixel aspect ratio, nothing
else.

Explicitly allow resetting the storage size with w=h=0. Document that
it's allowed to remove the user defined aspect ratio by setting a pixel
aspedct ratio of 0.

See issue 6.
libass/ass.h
libass/ass_render.c
libass/ass_render.h
libass/ass_render_api.c