1

私は Video.js で遊んでいて、提供された例で問題に遭遇しました。

html5 video 要素を使用して MP4 (h264) ビデオを指定すると、混乱が生じます。

私が使用する場合(絶対):

<source src="C:\<filsystempath>\Media\oceans-clip.mp4" type='video/mp4' />

問題なく動画が表示されます。しかし、私が使用するとき:

<source src="@Url.Content("~/Media/oceans-clip.mp4")" type='video/mp4' />

ビデオが表示されません。相対パスを使用することが問題であると結論付けますが、ogv ビデオを次のように使用する場合:

<source src="@Url.Content("~/Media/oceans-clip.ogv")" type='video/ogg' />

それは正常に動作します。

もう 1 つの煩わしさ - ビデオがフラッシュ フォールバックに使用されている場合、機能します。

ASP.MVC と video.js を使用しています。localhost を使用してデバッグしています。

完全なビデオ タグ -

<video id="example_video_1" class="video-js vjs-default-skin"
   controls preload="auto" width="640" height="264"
   poster="http://video-js.zencoder.com/oceans-clip.png"
   data-setup='{"example_option":true}'>
<source src="@Url.Content("~/Media/oceans-clip.ogv")" type='video/ogg' /> -- Works
<source src="C:\<filesystempath>\oceans-clip.mp4" type='video/mp4' /> -- Works
<source src="@Url.Content("~/Media/oceans-clip.mp4")" type='video/mp4' /> -- Doesn't work
<source src="http://video-js.zencoder.com/oceans-clip.webm" type='video/webm' />
</video>

問題は、ビデオが相対パスではなく絶対パスで再生されるのはなぜですか?

4

2 に答える 2

2

これ<source src="@Url.Content("~/Media/oceans-clip.mp4")" type='video/mp4' />は次のようなものをレンダリングするためです。

<source src="localhost:8080/Media/oceans-clip.mp4" type='video/mp4' />

そして最初のケースでは、ドライブからファイルを読み込んでいます:

<source src="C:\<filsystempath>\Media\oceans-clip.mp4" type='video/mp4' />
于 2013-08-26T11:17:14.423 に答える