我正在尝试创建一个html页面,用户可以在其中查看电影列表并开始观看。该页面应该在一台特定计算机上本地工作(file
协议,或http://localhost
,如果需要)。
事情是“开始看他们”的一部分。如果我以直截了当的方式(<a href="path/to/movie.mkv">watch it</a>
),它会询问保存文件的位置。
我希望它启动vlc
或文件管理器并打开相应的目录。
我在考虑使用一些非标准扩展创建虚拟文件,并将它们与自定义MIME类型和.desktop
文件相关联。 .desktop
文件应该启动相应的电影。但是我很少或没有经验,它仍然需要先下载它,不是吗?
首选浏览器为chrome
或firefox
。目标操作系统为linux
。
UPD 从this answer判断我想要什么似乎是不可能的。我上面提到的可能有一个解决方法,使浏览器下载一个“快捷方式”(包含电影的路径),而不是整个电影,并将此自定义文件类型与.desktop
文件相关联,这将启动相应的电影。此外,使浏览器自动保存下载和自动打开此类型的文件。但不确定我是否会这样做。
答案 0 :(得分:2)
毕竟,我最终做到了“自定义mime类型”的方式。首先,我没有制作chromium
个mkv
个文件。其次,我认为浏览器不适合观看电影(尽管你可以)。
所以,我会在这里使用chromium
。转到Settings
。滚动到页面底部。点击Show advanced settings...
:
滚动至Downloads
部分:
(可选)取消选中Ask where to save each file before downloading
。创建文件my-movie.movie-shortcut
,其中包含:
path/to/my/movie.mkv
创建并打开包含此文件链接的页面。 (您很可能必须使用Web服务器来提供页面,否则chromium
只会在确定text/plain
mime类型之后打开文件。)单击链接,下载文件,然后(可选)检查Always open files of this type
菜单项:
现在,chromium
很可能会运行xdg-open path/to/file
来打开文件。至少,如果您使xdg-open
工作,它也可以在chromium
中使用。
首先,您需要安装mimetype
。如果未安装,xdg-open
使用file
来确定mime类型。我怀疑file
可以配置为返回自定义mime类型。
然后在/usr/share/mime/globs
添加一行:
text/x-movie-shortcut:*.movie-shortcut
请注意,/usr/share/mime/globs
是自动生成的,因此如果需要,请确保以正确的方式执行此操作。
然后在~/.config/mimeapps.list
到[Default Applications]
部分添加一行:
text/x-movie-shortcut=run-movie.desktop
并创建~/.local/share/applications/run-movie.desktop
:
[Desktop Entry]
Version=1.0
Name=Run Movie
GenericName=Run Movie
Comment=Run Movie
Exec=/home/yuri/bin/run-movie.sh
Icon=vlc
Terminal=false
Type=Application
MimeType=text/x-movie-shortcut
创建~/bin/run-movie.sh
(您可以尝试将命令放入.desktop
文件中):
#!/usr/bin/env bash
set -eu
/usr/bin/vlc --started-from-file "$(cat "$1")"
我正在运行Arch Linux,因此您的里程可能会有所不同。据推测,useful link至少为xfce
。
答案 1 :(得分:0)
您必须在网页中嵌入视频:
<video width="x" height="y" controls>
<source src="movie.mp4" type="video/mp4">
Your browser does not support the video tag.<!--error message for outdated browsers-->
</video>