henry-rodrick / hlsjs-ipfs-loader

A js-ipfs loader for the hls.js JavaScript HLS client
MIT License
60 stars 31 forks source link

If the m3u8 file contains #EXT-X-KEY, the URI will be converted to an IPFS request! #21

Open gluneau opened 3 years ago

gluneau commented 3 years ago

The file master.m3u8 contains the URI to the encryption key #EXT-X-KEY:METHOD=AES-128,URI="https://hlsbook.net/enc.key",IV=0xecd0d06eaf884d8226c33928e87efa33

Here is the error in the console:

Error: File not found: Qma4qsd4h5PY7YmxHgva1w68FMcPv4c8fBR5LjUwfzZEzq/enc.key
    at getFile (index.js:125)

In a context where a video is encrypted, it does not make sense to include the key in the ipfs directory itself. The URI should remain https and not become ipfs.

vaultec81 commented 3 years ago

At present hlsjs-ipfs-loader does not support any external URLs. This is something I've been thinking about implement, but at present it isn't implemented.

up_the_irons commented 1 year ago

I have fetching from external URLs working in my fork; specifically I needed the key included in EXT-X-KEY to be fetched externally, not over IPFS. The commit that implements that is here: https://github.com/up_the_irons/hlsjs-ipfs-loader/commit/098d23347dbc772b659fefc8f0a8bad260fdfbcf