Changeset 849

Show
Ignore:
Timestamp:
04/18/08 16:45:45 (3 months ago)
Author:
astrange
Message:

Matroska:
Remove some duplicate code and reorder for cosmetics.

Subtitles:
Shadows were sometimes being rendered even if they should have been off.

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • trunk/MatroskaImportPrivate.cpp

    r842 r849  
    615615                 
    616616                mkvTrack.theMedia = GetTrackMedia(mkvTrack.theTrack); 
    617                 mh = GetMediaHandler(mkvTrack.theMedia); 
    618                 MediaSetGraphicsMode(mh, graphicsModePreBlackAlpha, NULL); 
    619                  
     617                mkvTrack.is_vobsub = false; 
     618 
    620619                BeginMediaEdits(mkvTrack.theMedia); 
    621                  
    622                 mkvTrack.is_vobsub = false; 
    623620        } else { 
    624621                Codecprintf(NULL, "MKV: Unsupported subtitle type\n"); 
     
    10821079         
    10831080        if (type == track_subtitle && !is_vobsub) { 
    1084                 if (frame.size > 0) subtitleSerializer->pushLine((const char*)frame.buffer->Buffer(), frame.buffer->Size(), frame.pts, frame.pts + frame.duration); 
    10851081                const char *packet=NULL; size_t size=0; unsigned start=0, end=0; 
     1082                 
     1083                if (frame.size > 0) 
     1084                        subtitleSerializer->pushLine((const char*)frame.buffer->Buffer(), frame.buffer->Size(), frame.pts, frame.pts + frame.duration); 
     1085 
    10861086                packet = subtitleSerializer->popPacket(&size, &start, &end); 
    10871087                if (packet) { 
     
    11881188                 } while (!subtitleSerializer->empty()); 
    11891189                 EndMediaEdits(theMedia); 
    1190         } 
    1191          
    1192         AddSamplesToTrack(); 
    1193 } 
     1190        } else { 
     1191               AddSamplesToTrack(); 
     1192        } 
     1193} 
  • trunk/Subtitles/SubATSUIRenderer.m

    r848 r849  
    921921        BOOL endLayer = NO; 
    922922         
    923         if (div->styleLine->borderStyle == kSubBorderStyleNormal) { 
     923        if (div->styleLine->borderStyle == kSubBorderStyleNormal && firstSpanEx->shadowDist) { 
    924924                if (!(div->render_complexity & renderManualShadows)) { 
    925                         if (firstSpanEx->shadowDist) { 
    926                                 endLayer = YES; 
    927                                 CGContextSetShadowWithColor(c, CGSizeMake(firstSpanEx->shadowDist + .5, -(firstSpanEx->shadowDist + .5)), 0, firstSpanEx->shadowColor); 
    928                                 CGContextBeginTransparencyLayer(c, NULL); 
    929                         } 
     925                        endLayer = YES; 
     926                        CGContextSetShadowWithColor(c, CGSizeMake(firstSpanEx->shadowDist + .5, -(firstSpanEx->shadowDist + .5)), 0, firstSpanEx->shadowColor); 
     927                        CGContextBeginTransparencyLayer(c, NULL); 
    930928                } else DrawTextLines(c, layout, div, breakc, penX, penY, firstSpanEx, kTextLayerShadow); 
    931929        }