oblock CurrMbAddr is equal to 1, disable_deblocking_filter_ide for the slice that contains the macroblock CurrMbAddr is equal to 2 and the macroblock mbAddrA is not available. Otherwise, the variable filterLeftMbEdgeFlag is set equal to 1. The variable filterTopMbEdgeFlag is derived as follows: If any of the following conditions are true, the variable filterTopMbEdgeFlag is set equal to 0: MbaffFrameFlag is equal to 0 and CurrMbAddr is less than PicWidthInMbs, MbaffFrameFlag is equal to 1, ( CurrMbAddr >>1) is less than PicWidthInMbs, and the macroblock CurrMbAddr is a field macroblock, MbaffFrameFlag is equal to 1, ( CurrMbAddr >>1) is less than PicWidthInMbs, the macroblock CurrMbAddr is a frame macroblock, and CurrMbAddr % 2 is equal to 0, Rec. ITU-T H.264 (01/2012) disable_deblocking_filter_ide for the slice that contains the macroblock CurrMbAddr is equal to 1, disable_deblocking_filter_ide for the slice that contains the macroblock CurrMbAddr is equal to 2 and the macroblock mbAddrB is not available. Otherwise, the variable filterTopMbEdgeFlag is set equal to 1. Given the variables fieldMbInFrameFlag, filterInternalEdgesFlag, filterLeftMbEdgeFlag and filterTopMbEdgeFlag the deblocking filtering is controlled as follows: a. When filterLeftMbEdgeFlag is equal to 1, the left vertical luma edge is filtered by invoking the process specified in clause 8.7.1 with chromaEdgeFlag =0, verticalEdgeFlag = 1, fieldModeInFrameFilteringFlag = fieldMbInFrameFlag, and (xEk, yEk) = (0, k) with k = 0..15 as the inputs and S' as the output. b. When filterInternalEdgesFlag is equal to 1, the filtering of the internal vertical luma edges is specified by the following ordered steps: When transform_size_8x8_flag is equal to 0, the process specified in clause 8.7.1 is invoked with chromaEdgeFlag = 0, verticalEdgeFlag=1, fieldModeInFrameFilteringFlag = fieldMbInFrameFlag, and (xEk, yEk)=(4,k) with k = 0..15 as the inputs and S'L as the output. ii. The process specified in clause 8.7.1 is invoked with chromaEdgeFlag = 0, verticalEdge