We have developed a method to decompose seismic records into atomic events, each defined by a smooth phase function and a smooth amplitude function. This decomposition is intrinsically nonlinear and calls for a nonconvex least-squares optimization formulation, along the lines of full-waveform inversion. To overcome the lack of convexity, we have developed an iterative refinement-expansion scheme to initialize and track the phase and amplitude for each atomic event. For short, we called the method phase tracking. The initialization is carried out by applying multiple signal classification to a few seed traces in which events can be separated and identified by their arrival times and amplitudes. We then construct the initial solution at the seed traces using linear phase functions from the arrival times and constant amplitude functions, assuming the medium is mostly dispersion free. We refine this initial solution to account for dispersion and imperfect knowledge of the wavelet at the seed traces by fitting the observed data using a gradient descent method. The resulting phase and amplitude functions are then carefully expanded across the traces in an adequately smooth way to match the whole data record. We have evaluated the proposed method on two synthetic records and a field record. Because the parametrization of the seismic events is physically meaningful, it also enables a simple form of bandwidth extension of the observed shot record to unobserved low and high frequencies. We tested this procedure on the same shot records. Bandwidth extension is in principle helpful to initialize full-waveform inversion with frequency sweeps and enhanced its resolution.