In this paper, we propose adversarial predictive coding (APC), a novel method for detecting abnormal events. Abnormal event detection (AED) is to identify unobserved events from a given training dataset consisting of normal events, and it is considered as one of the most important objectives in developing intelligent surveillance systems. Given videos and motion flows of normal events, the APC derives a normal event model by applying an adversarial prediction approach on the jointly learnt latent feature space from the videos and motion flows. Since latent space requires more abstracted and noise-free information than the raw data space, the APC can derive a more discriminative model for normal events compared with other deep learning-based AED methods which directly apply uni-modal losses such as mean square error and cross-entropy to low-level data such as video frames. We demonstrate the effectiveness of our method in detecting abnormal events using UCSD-Ped, Avenue, and UCF-Crime datasets. The experimental results show that the APC surpass the existing state-of-the-art AED methods by deriving a more discriminative model for normal events.