summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorgreg <greg@b3059339-0415-0410-9bf9-f77b7e298cf2>2009-03-05 20:36:39 +0000
committergreg <greg@b3059339-0415-0410-9bf9-f77b7e298cf2>2009-03-05 20:36:39 +0000
commitcc59e2383248be2796d53ac4197f007cd2bdb930 (patch)
tree40231bddf939587b621689d4e0e3154bc6bb6425
parent37f063bfb45fe33239fe8569be4acf2f80bc7174 (diff)
downloadlibass-cc59e2383248be2796d53ac4197f007cd2bdb930.tar.bz2
libass-cc59e2383248be2796d53ac4197f007cd2bdb930.tar.xz
Support a vsfilter special case:
If PlayResX or Y is 1280/1024 respectively and the other PlayRes attribute isn't provided, use 1280/1024 for it. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@28817 b3059339-0415-0410-9bf9-f77b7e298cf2
-rw-r--r--libass/ass_render.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/libass/ass_render.c b/libass/ass_render.c
index 6b8ee70..c01bb74 100644
--- a/libass/ass_render.c
+++ b/libass/ass_render.c
@@ -224,9 +224,15 @@ static void ass_lazy_track_init(void)
} else {
double orig_aspect = (global_settings->aspect * frame_context.height * frame_context.orig_width) /
frame_context.orig_height / frame_context.width;
- if (!track->PlayResY) {
+ if (!track->PlayResY && track->PlayResX == 1280) {
+ track->PlayResY = 1024;
+ mp_msg(MSGT_ASS, MSGL_WARN, MSGTR_LIBASS_PlayResYUndefinedSettingY, track->PlayResY);
+ } else if (!track->PlayResY) {
track->PlayResY = track->PlayResX / orig_aspect + .5;
mp_msg(MSGT_ASS, MSGL_WARN, MSGTR_LIBASS_PlayResYUndefinedSettingY, track->PlayResY);
+ } else if (!track->PlayResX && track->PlayResY == 1024) {
+ track->PlayResX = 1280;
+ mp_msg(MSGT_ASS, MSGL_WARN, MSGTR_LIBASS_PlayResXUndefinedSettingX, track->PlayResX);
} else if (!track->PlayResX) {
track->PlayResX = track->PlayResY * orig_aspect + .5;
mp_msg(MSGT_ASS, MSGL_WARN, MSGTR_LIBASS_PlayResXUndefinedSettingX, track->PlayResX);