In this paper, the output synchronization (OS) problem of heterogeneous linear multi-agent systems (MASs) with input delays is addressed. Agents may have different state dimensions and different dynamics. A finite-time observer (FO) is firstly proposed to estimate the uncertain leader's system dynamics. Then, based on the above FO, an adaptive observer (AO) is designed to estimate leader's state information. Thirdly, a novel state predictor is proposed to tackle the input delay effect based on the above AO and output regulation theory. After that, a third observer is designed to estimate the above state predictor so that the controller can be implemented in reality. The stability analysis is performed via Lyapunov stability theory with sufficient conditions derived in terms of an algebraic Riccati equation. The main achievement of this work is the construction of an observer-based fully distributed controller (FDC) which relies on local information only and does not require knowledge of the leader's dynamics or global graph information. As a result, such an approach can be implemented to large-scale systems. Finally, the effectiveness of the proposed FDC is verified via simulations and the influence of the system's graph structure on the convergence rate of the FDC is discussed.