Index: admin/blog_pref.php
===================================================================
--- admin/blog_pref.php	(revision 3115)
+++ admin/blog_pref.php	(revision 3138)
@@ -264,4 +264,5 @@
 		$blog_settings->system->put('media_video_width',$media_video_width);
 		$blog_settings->system->put('media_video_height',$media_video_height);
+		$blog_settings->system->put('media_flash_fallback',!empty($_POST['media_flash_fallback']));
 		$blog_settings->system->put('media_img_title_pattern',$_POST['media_img_title_pattern']);
 		$blog_settings->system->put('media_img_use_dto_first',!empty($_POST['media_img_use_dto_first']));
@@ -610,4 +611,10 @@
 	'<p class="field"><label for="media_video_height">'.__('Height').'</label> '.
 	form::field('media_video_height',3,3,$blog_settings->system->media_video_height).'</p>'.
+
+	'<h5>'.__('Flash player').'</h5>'.
+	'<p><label for="media_flash_fallback">'.
+	form::checkbox('media_flash_fallback','1',$blog_settings->system->media_flash_fallback).
+	__('Insert Flash player fallback for video (mp4 or m4v) and audio (mp3) media').'</label></p>'.
+	'<p class="form-note info">'.__('For flv video, the Flash player will be anyway inserted.').'</p>'.
 	'</div>'.
 
Index: admin/media.php
===================================================================
--- admin/media.php	(revision 3136)
+++ admin/media.php	(revision 3138)
@@ -832,5 +832,5 @@
 		if ($file_type[0] == 'audio')
 		{
-			$lst .= '<li>'.dcMedia::audioPlayer($f->type,$f->file_url,$core->adminurl->get("admin.home",array('pf' => 'player_mp3.swf'))).'</li>';
+			$lst .= '<li>'.dcMedia::audioPlayer($f->type,$f->file_url,$core->adminurl->get("admin.home",array('pf' => 'player_mp3.swf')),null,$core->blog->settings->system->media_flash_fallback).'</li>';
 		}
 
Index: admin/media_item.php
===================================================================
--- admin/media_item.php	(revision 3112)
+++ admin/media_item.php	(revision 3138)
@@ -379,5 +379,5 @@
 
 		$public_player_style = unserialize($core->blog->settings->themes->mp3player_style);
-		$public_player = dcMedia::audioPlayer($file->type,$file->file_url,$core->blog->getQmarkURL().'pf=player_mp3.swf',$public_player_style);
+		$public_player = dcMedia::audioPlayer($file->type,$file->file_url,$core->blog->getQmarkURL().'pf=player_mp3.swf',$public_player_style,null,$core->blog->settings->system->media_flash_fallback);
 		echo form::hidden('public_player',html::escapeHTML($public_player));
 		echo '</p>';
@@ -419,5 +419,5 @@
 
 		$public_player_style = unserialize($core->blog->settings->themes->flvplayer_style);
-		$public_player = dcMedia::videoPlayer($file->type,$file->file_url,$core->blog->getQmarkURL().'pf=player_flv.swf',$public_player_style);
+		$public_player = dcMedia::videoPlayer($file->type,$file->file_url,$core->blog->getQmarkURL().'pf=player_flv.swf',$public_player_style,null,$core->blog->settings->system->media_flash_fallback);
 		echo form::hidden('public_player',html::escapeHTML($public_player));
 		echo '</p>';
@@ -521,9 +521,11 @@
 if ($file_type[0] == 'audio')
 {
-	echo dcMedia::audioPlayer($file->type,$file->file_url,$core->adminurl->get("admin.home",array('pf' => 'player_mp3.swf')));
+	echo dcMedia::audioPlayer($file->type,$file->file_url,$core->adminurl->get("admin.home",array('pf' => 'player_mp3.swf')),
+		null,$core->blog->settings->system->media_flash_fallback);
 }
 if ($file_type[0] == 'video')
 {
-	echo dcMedia::videoPlayer($file->type,$file->file_url,$core->adminurl->get("admin.home",array('pf' => 'player_flv.swf')));
+	echo dcMedia::videoPlayer($file->type,$file->file_url,$core->adminurl->get("admin.home",array('pf' => 'player_flv.swf')),
+		null,$core->blog->settings->system->media_flash_fallback);
 }
 
Index: inc/core/class.dc.core.php
===================================================================
--- inc/core/class.dc.core.php	(revision 3126)
+++ inc/core/class.dc.core.php	(revision 3138)
@@ -1394,4 +1394,6 @@
 				array('media_video_height','integer',300,
 				'Video height in media manager'),
+				array('media_flash_fallback','boolean',true,
+				'Flash player fallback for audio and video media'),
 				array('nb_post_for_home','integer',20,
 				'Number of entries on first home page'),
Index: inc/core/class.dc.media.php
===================================================================
--- inc/core/class.dc.media.php	(revision 3099)
+++ inc/core/class.dc.media.php	(revision 3138)
@@ -1103,11 +1103,12 @@
 	Returns HTML code for audio player (HTML5 and if possible fallback Flash player)
 
-	@param  type	<b>string</b> 		audio mime type
-	@param	url		<b>string</b>		audio URL to play
-	@param	player	<b>string</b>		Player URL (flash player fallback)
-	@param	args	<b>array</b>		Player parameters (flash player fallback)
+	@param  type		<b>string</b> 		audio mime type
+	@param	url			<b>string</b>		audio URL to play
+	@param	player		<b>string</b>		Player URL (flash player fallback)
+	@param	args		<b>array</b>		Player parameters (flash player fallback)
+	@param  fallback 	<b>boolean</b>		Include Flash player fallback
 	@return	<b>string</b>
 	*/
-	public static function audioPlayer($type,$url,$player=null,$args=null)
+	public static function audioPlayer($type,$url,$player=null,$args=null,$fallback=true)
 	{
 		$audio =
@@ -1115,5 +1116,5 @@
 			'<source src="'.$url.'">';
 
-		if ($type == 'audio/mpeg3') {
+		if ($fallback && $type == 'audio/mpeg3') {
 			// Include Flash player fallback
 			if (!$player) {
@@ -1170,11 +1171,12 @@
 	Returns HTML code for video player (HTML5 and if possible fallback Flash player)
 
-	@param  type	<b>string</b> 		video mime type
-	@param	url		<b>string</b>		video URL to play
-	@param	player	<b>string</b>		Player URL (flash player fallback)
-	@param	args	<b>array</b>		Player parameters (flash player fallback)
+	@param  type		<b>string</b> 		video mime type
+	@param	url			<b>string</b>		video URL to play
+	@param	player		<b>string</b>		Player URL (flash player fallback)
+	@param	args		<b>array</b>		Player parameters (flash player fallback)
+	@param  fallback 	<b>boolean</b>		Include Flash player fallback (if not .flv)
 	@return	<b>string</b>
 	*/
-	public static function videoPlayer($type,$url,$player=null,$args=null)
+	public static function videoPlayer($type,$url,$player=null,$args=null,$fallback=true)
 	{
 		$video = '';
@@ -1198,5 +1200,5 @@
 		}
 
-		if ($type == 'video/x-flv' || $type == 'video/mp4' || $type == 'video/x-m4v')
+		if ($type == 'video/x-flv' || ($fallback && ($type == 'video/mp4' || $type == 'video/x-m4v')))
 		{
 			// Include Flash player fallback
@@ -1256,10 +1258,11 @@
 	Returns HTML code for MP3 player
 
-	@param	url		<b>string</b>		MP3 URL to play
-	@param	player	<b>string</b>		Player URL
+	@param	url			<b>string</b>		MP3 URL to play
+	@param	player		<b>string</b>		Player URL
 	@param	args		<b>array</b>		Player parameters
+	@param  fallback 	<b>boolean</b>		Include Flash player fallback
 	@return	<b>string</b>
 	*/
-	public static function mp3player($url,$player=null,$args=null)
+	public static function mp3player($url,$player=null,$args=null,$fallback=true)
 	{
 		if (!$player) {
@@ -1299,12 +1302,13 @@
 		'<audio controls preload="auto">'.
 		'<source src="'.$url.'" type="audio/mpeg">'.
-		'<object type="application/x-shockwave-flash" '.
-		'data="'.$player.'" '.
-		'width="'.$args['width'].'" height="'.$args['height'].'">'.
-		'<param name="movie" value="'.$player.'" />'.
-		'<param name="wmode" value="transparent" />'.
-		'<param name="FlashVars" value="'.implode('&amp;',$vars).'" />'.
-		__('Embedded Audio Player').
-		'</object>'.
+		($fallback ?
+			'<object type="application/x-shockwave-flash" '.
+			'data="'.$player.'" '.
+			'width="'.$args['width'].'" height="'.$args['height'].'">'.
+			'<param name="movie" value="'.$player.'" />'.
+			'<param name="wmode" value="transparent" />'.
+			'<param name="FlashVars" value="'.implode('&amp;',$vars).'" />'.
+			__('Embedded Audio Player').
+			'</object>' : '').
 		'</audio>';
 	}
Index: inc/dbschema/upgrade.php
===================================================================
--- inc/dbschema/upgrade.php	(revision 3128)
+++ inc/dbschema/upgrade.php	(revision 3138)
@@ -467,12 +467,16 @@
 			}
 
-			if (version_compare($version,'2.9','<'))
+			if (version_compare($version,'2.9','<='))
 			{
 				# Some new settings should be initialized, prepare db queries
 				$strReq = 'INSERT INTO '.$core->prefix.'setting'.
 						' (setting_id,setting_ns,setting_value,setting_type,setting_label)'.
-						' VALUES(\'%s\',\'system\',\'%s\',\'integer\',\'%s\')';
-				$core->con->execute(sprintf($strReq,'media_video_width','400','Media video insertion width'));
-				$core->con->execute(sprintf($strReq,'media_video_height','300','Media video insertion height'));
+						' VALUES(\'%s\',\'system\',\'%s\',\'%s\',\'%s\')';
+				$core->con->execute(
+					sprintf($strReq,'media_video_width','400','integer','Media video insertion width'));
+				$core->con->execute(
+					sprintf($strReq,'media_video_height','300','integer','Media video insertion height'));
+				$core->con->execute(
+					sprintf($strReq,'media_flash_fallback','1','boolean','Flash player fallback for audio and video media'));
 			}
 
Index: locales/fr/main.po
===================================================================
--- locales/fr/main.po	(revision 3136)
+++ locales/fr/main.po	(revision 3138)
@@ -445,4 +445,13 @@
 msgstr "Taille par defaut des vidéos insérées (en pixels)"
 
+msgid "Flash player"
+msgstr "Lecteur Flash"
+
+msgid "Insert Flash player fallback for video (mp4 or m4v) and audio (mp3) media"
+msgstr "Insérer le lecteur Flash de secours pour les médias vidéo (mp4 ou m4v) et audio (mp3)"
+
+msgid "For flv video, the Flash player will be anyway inserted."
+msgstr "Pour les vidéos Flv, le lecteur Flash sera quoi qu'il en soit inséré."
+
 msgid "Default image insertion attributes"
 msgstr "Attributs par défaut pour l'insertion d'image"
