tomeshnet / ipfs-live-streaming

Like HTTP live streaming, but with IPFS which is maybe better?
GNU General Public License v3.0
449 stars 74 forks source link

Disable IPNS and fixes for ipfs restart #32

Closed benhylau closed 6 years ago

benhylau commented 6 years ago

This addresses everything in https://github.com/tomeshnet/ipfs-live-streaming/issues/29

benhylau commented 6 years ago

Tested and streaming nicely 📺 give it a try :)

Outputs:

digital_ocean_droplets = [
    rtmp-server:             active,
    ipfs-server:             active,
    ipfs-mirror instance(s): 1,
    active
]
dns_records = [
                      mesh.world = 138.197.140.126,
          rtmp-server.mesh.world = 167.99.185.19,
          ipfs-server.mesh.world = 138.197.140.126,
    {
        ipfs-mirror-0.mesh.world = 138.197.129.84
    },
          private.rtmp-server.mesh.world = 10.137.104.3,
          private.ipfs-server.mesh.world = 10.137.96.1,
    {
        private.ipfs-mirror-0.mesh.world = 10.137.200.68
    },
          v6.rtmp-server.mesh.world = 2604:a880:0cad:00d0:0000:0000:000f:0001,
          v6.ipfs-server.mesh.world = 2604:a880:0cad:00d0:0000:0000:034c:d001,
    {
        v6.ipfs-mirror-0.mesh.world = 2604:a880:0cad:00d0:0000:0000:002a:2001
    },
         openvpn.publish.mesh.world = 10.10.10.1,
       yggdrasil.publish.mesh.world = fd03:465f:e90c:c633:5550:e0ae:e2f1:3e10
]
private_urls = [
    RTMP publish (.keys/client.conf):    rtmp://10.10.10.1:1935/live,
    RTMP publish (.keys/yggdrasil.conf): rtmp://[fd03:465f:e90c:c633:5550:e0ae:e2f1:3e10]:1935/live
]
public_urls = [
    RTMP stream:                rtmp://rtmp-server.mesh.world/live,
    HLS stream (origin):        http://mesh.world/live.m3u8,
    HLS stream (mirror-N):      http://ipfs-mirror-N.mesh.world/live.m3u8,
    IPNS HLS stream (origin):   http://mesh.world:8080/ipns/QmfF1FG9mfPPnapxUxooFX2VdZBHzRKcHMTDAQBwc2DSf8,
    IPNS HLS stream (mirror-N): http://ipfs-mirror-N.mesh.world:8080/ipns/QmfF1FG9mfPPnapxUxooFX2VdZBHzRKcHMTDAQBwc2DSf8,
    Video player (origin):      http://mesh.world,
    Video player (mirror-N):    http://ipfs-mirror-N.mesh.world,
    Video player (debug):       http://mesh.world?url=live.m3u8
]
ssh_access = [
    rtmp-server:   ssh -i .keys/id_rsa root@rtmp-server.mesh.world,
    ipfs-server:   ssh -i .keys/id_rsa root@ipfs-server.mesh.world,
    ipfs-mirror-N: ssh -i .keys/id_rsa root@ipfs-mirror-N.mesh.world
]
benhylau commented 6 years ago

Also tried restarting IPFS and ffmpeg, both did not corrupt our playlist. Sometimes restarting ffmpeg requires pause/play on the player, but not a page reload. I also observe jitter soon after ffmpeg restart, consistent what @darkdrgn2k's observation.