In this thesis, we present a Bayesian machine learning framework for signal processing, based on variational message passing. The developed framework and its open-source software implementation allow building generative models using a set of building blocks, and doing inference on them using variational message passing. The capabilities of the framework are being demonstrated on several applications, such as speech denoising and image segmentation. The main contribution of this work is the newly developed framework that incorporates means for model specification, probabilistic inference and model comparison, and focuses on solving signal processing tasks. The framework is capable of working with multivariate continuous data, and is expandable enough to solve complex real-world problems.