Resuming on 231-7, India added 103 runs before losing their last three wickets to fold in the fifth over after the lunch break.
Ajinkya Rahane (127) fell after registering his fifth test century, while fellow overnight batsman Ravichandran Ashwin scored 56 runs in a late order cameo.
Kyle Abbott dismissed Ashwin and Ishant Sharma in three balls to claim five for 40, while off-spinner Dane Piedt finished with 4-117.
India lead the four-match series 2-0. – ReutersSouth African seamer Kyle Abbott grabbed five wickets as India was bowled out for 334 on the second day of the final Test.
Original source: India dismissed for 334