Como Daniel B diz nos comentários, o problema não é como eu configurei o protocolo, é que o VLC não sabe como usá-lo. A solução é direcionar a saída para um script em lote em vez de um VLC. O script em lote converte a saída em algo utilizável e inicia o VLC.
Eu também decidi não usar "vlc" como o nome do protocolo, porque a interface de linha de comando para vlc usa isso para algumas coisas, em vez disso eu estou usando "cvlc".
Etapas:
- Abra o regedit e navegue até
HKEY_CLASSES_ROOT
. - Clique com o botão direito do mouse em
HKEY_CLASSES_ROOT
e crie uma nova chave chamadacvlc
. - Clique em
cvlc
e abra a entrada(Default)
nela. - Em
(Default)
type"URL:CVLC Protocol"
. - Clique com o botão direito do mouse em
HKEY_CLASSES_ROOT/cvlc
e crie uma nova chave chamadaUrl Protocol
. - Clique com o botão direito do mouse em
HKEY_CLASSES_ROOT/cvlc
e crie uma nova chave chamadaDefault Icon
. - Em
HKEY_CLASSES_ROOT/cvlc/Default Icon
, abra(Default)
e insira"vlc.exe,1"
. - Em
HKEY_CLASSES_ROOT/cvlc
crie uma nova chave chamadashell
, crie uma chave chamadaopen
, crie uma chave chamadacommand
e abra a entrada(Default)
. - No tipo de entrada
"C:\convert.bat" "%1"
. - Abra o Bloco de notas e crie um arquivo de texto que leia:
:: This batch script takes the input and removes 8 characters from the front, and then launches VLC with that altered :: input set as the file path set vlcdata=%1 "C:\Program Files (x86)\Video LAN\VLC Media Player\vlc.exe" "%vlcdata:~8%"
- Salve como todos os arquivos com o nome
convert.bat
atC:\
. - Na primeira vez que você abrir um link no Firefox, será necessário associar esse protocolo ao arquivo bat navegando e escolhendo lembrar no futuro.
- Crie uma pasta chamada
website
na unidadec:
, adicione um arquivo chamadoexample.mp4
e um arquivo HTML chamadoexample.html
. - No tipo de arquivo HTML:
<a href="cvlc:///C:\website\example.mp4">Example Link</a>
.
Notas:
- Como isso usa um script em lote, haverá uma janela de prompt de comando aberta e ela não será fechada até que o VLC o faça.
- Ao usar arquivos locais em hiperlinks, você deve usar um
\
não/
. - Isso funciona no Firefox, mas não no Internet Explorer porque o protocolo não está na lista de protocolos e tipos de arquivo do Windows. Portanto, o Internet Explorer não sabe qual programa usar para isso. Eu encontrei um thread sobre como adicionar um protocolo personalizado para o tipo de arquivo do Windows e lista de associação de protocolo, mas ainda não está resolvido. link