I have already written a little jQuery snippet to resize videos but I came across an article by Chris Coyier with an approach that I thought worked a lot better. Though I did add a few tweaks to it:

<script type="text/javascript">
/* <![CDATA[ */
(function($) {
	// Responsive videos
	var all_videos = $( 'iframe[src^="http://player.vimeo.com"], iframe[src^="http://www.youtube.com"], object, embed' );

	all_videos.each(function() {
		var el = $(this);
			.attr( 'data-aspectRatio', el.height() / el.width() )
			.attr( 'data-oldWidth', el.attr( 'width' ) );
	} );
		.resize( function() {
			all_videos.each( function() {
				var el = $(this),
					newWidth = el.parents( 'p' ).width(),
					oldWidth = el.attr( 'data-oldWidth' );
				if ( oldWidth > newWidth ) {
						.removeAttr( 'height' )
						.removeAttr( 'width' )
						.width( newWidth )
				    		.height( newWidth * el.attr( 'data-aspectRatio' ) );
			} );
		} )
/* ]]> */

Now your videos will only be resized if they are larger than the parent container. In the instance above, I have set the parent container to the paragraph tag surrounding the video (in WordPress, a paragraph tag is automatically added to each paragraph). If your site uses a different container, you can easily change that one line to the tag, ID or class of your parent container.

newWidth = el.parents( '.class-name' ).width(),