Штатно это реализуется в микросхеме которая стоит внутри наушников.
Если гонять звук с микрофона в андроид и потом обратно в уши, будет большая задержка. Не говоря о том что окружающий звук будет монофонический.
Теоретически нужно приложение миксер, которое может складывать звук из двух источников, то есть в системе создаётся виртуальный выход, туда идёт звук из твоего медиплеера, далее миксер прибавляет туда звук с микрофона и передаёт на реальный выход наушников.
Но я навскидку не припоминаю чтобы в андроиде можно было просто так создавать виртуальные входы и управлять перенаправлением звука.
Ради прикола можно аналоговым способом, раньше такое было популярно.
чтото вроде этого:
www.radiolamp.ru/shem/unch/89 плюс усилитель звука.