Videos can be great to illustrate your content. There are many plugins out there for embedding videos in a post/page. Some of them can be used to embed videos from video-sharing sites (e.g. YouTube, Vimeo). Some plugins also support self-hosted video embedding. Fortunately, This feature is now available in WordPress (it was added as of WordPress 3.6).
Embedding Video From Media Library
In order to upload a video to your WordPress Media Library click on the Add Media button of the post/page you are currently viewing.
Once the video has been uploaded select Embed Media Player and hit Insert into page.
Additionally, you can customize some video attributes by clicking on the Edit icon,
Preload: It defines how the video should be loaded when the page loads. The default value is “metadata”(only metadata should be loaded), “none”(video should not be loaded), “auto”(video should be loaded entirely).
Autoplay: It causes the video to automatically play when the page loads. The default value is “off”.
Loop: It causes the video to loop to beginning when finished.
Poster: It defines image to show as placeholder before the video plays.
Embedding Video From URL
If the video is hosted in a custom directory on your server or a remote server you can directly paste the URL into the Insert from URL field.
Embedding Video Using a Plugin
Easy Video player is a WordPress plugin which allows you embed video using flowplayer.
WP eStore is a popular plugin for selling video or any type of media in WordPress.