使用django从硬盘播放媒体文件

时间:2012-05-10 03:16:20

标签: django html5

在我的django应用中,我有一个playmedia.html页面,其中html5 video element用于播放媒体文件(video or mp3 audio)。作为第一步,我放了/home/me/django/myapp/media/audio文件夹中的媒体文件,并对<video>

的src属性进行了硬编码
<video id="vid" width="640" height="360" controls="controls">
           <source src="{{MEDIA_URL}}audio/candle.mp3" type="audio/mp3" />       
</video>

设置文件

MEDIA_ROOT = '/home/me/django/myapp/media'
MEDIA_URL = '/site_media/'

通过此设置,当页面加载时,页面中的html5 video player显示已加载mp3文件(在Chrome中,显示蓝色条),我可以使用{{播放音频文件1}} ..我想从player中选择一个mp3文件并让local filesystem播放它。我该怎么做呢?

假设我在目录html5 video中有一个test.mp3 如果我设置src =“/ home / me / music / test.mp3”,播放器会显示没有加载文件。这次没有蓝色条。 此外,服务器输出

/home/me/music/

我认为这可能是因为django不知道路径[10/May/2012 08:38:48] "GET /home/me/music/test.mp3 HTTP/1.1" 404 2191 ,因为它不在上下文中。

有人可以帮我弄清楚如何做到这一点吗?

1 个答案:

答案 0 :(得分:0)

这根本不是关于django,而是关于提供媒体文件的网络服务器(好吧,它有时可能是django的开发服务器)。所以你需要“告诉”webserver在哪里找到这些文件怎么样?取决于服务器。对于django it's in urls,对于大型服务器 - 在配置文件中。

此外,由于安全性,没有简单的方法说“请整理本地文件系统”。您的文件中包含大量私人信息,而外部用户根本无法访问它。