Giter Club home page Giter Club logo

iptv's Introduction

free5GC IPTV

GitHub release (latest by date) Go Report Card License FOSSA Status Release Download Reop Size PRs Welcome

This is an simple IPTV Server that you can self host on Linux / Windows base on FFmpeg and Go.

This project is maintained by free5GC for validation of IPTV applications in 5G core network.

Installation

Install Dependencies

  • FFmpeg

    sudo apt install -y ffmpeg
  • node.js

    sudo apt-get install nodejs
  • yarn

    sudo apt install -y curl
    curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | sudo apt-key add -
    echo "deb https://dl.yarnpkg.com/debian/ stable main" | sudo tee /etc/apt/sources.list.d/yarn.list
    sudo apt update && sudo apt install yarn
  • npm

    sudo apt-get install python-software-properties
    sudo add-apt-repository ppa:gias-kay-lee/npm
    sudo apt-get update
    sudo apt-get install npm
  • golang

    wget https://dl.google.com/go/go1.12.9.linux-amd64.tar.gz
    sudo tar -C /usr/local -zxvf go1.12.9.linux-amd64.tar.gz
    mkdir -p ~/go/{bin,pkg,src}
    echo 'export GOPATH=$HOME/go' >> ~/.bashrc
    echo 'export GOROOT=/usr/local/go' >> ~/.bashrc
    echo 'export PATH=$PATH:$GOPATH/bin:$GOROOT/bin' >> ~/.bashrc
    echo 'export GO111MODULE=off' >> ~/.bashrc
    source ~/.bashrc

Build Project

  • Install go package

    go get -u github.com/gin-contrib/static
    go get -u github.com/gin-gonic/gin
    go get -u github.com/urfave/cli
    go get -u gopkg.in/yaml.v2
  • Build Web Client

    cd web-client
    yarn install
    yarn build
    cd ..
    vim iptvcfg.conf # Configure iptv details
    mkdir hls        # Create chache folder, default is ./hls
    go run iptv.go

How to watch IPTV

The IPTV channel playlist's location depends on what you configure in iptvcfg.conf's IPTVServer -> ServerAddr

And the playlist's location will be: IPv4:Port/iptv/index.m3u

  1. Generally Using Web to check IPTV channel is an general way to do it. You can use our web to view IPTV channel.

    Open your web browser, goto the ip:port you have configured in iptvcfg.conf's ServerAddr.

  2. On PC You can use:

  3. On Android

  4. On iOS

Contact Information

You can contact [email protected].

License

We are using Apache 2.0 for the project.

FOSSA Status

Release Note

v2020-03-31-01

  • Implement unicast IPTV server
  • Verify IPTV application running on 5G core network

iptv's People

Contributors

dependabot[bot] avatar fossabot avatar free5gc-org avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

iptv's Issues

IPTV Issues

Hi Free5gc team,

I am working on the AF function and I want to deploy IPTV as the application in EAS. I would like to know if IPTV is still working in the free5gc environment and I wonder if there are any installation instructions in the Windows environment cause that I have been trying to install it in Windows with errors, many thanks!

Looking forward to your response, many thanks!

Kind regards,
Amber

AF IPTV does not send register to NRF

Hi,

When I start IPTV server, I don't see any register message sent to NRF via wireshark. I see NRF info in configuration file, I assume this function was developed, is that right?

Thanks,
Trung.

Failed to run "sudo apt-get install python-software-properties" on Ubuntu 18.04

Hi @fossabot ,

Just fail to run this command:

ubuntu@ubuntu-KVM:~$ sudo apt-get install python-software-properties
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Package python-software-properties is not available, but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or
is only available from another source
However the following packages replace it:
  software-properties-common

E: Package 'python-software-properties' has no installation candidate

The correct command should be as below since the package changed from python to python3.https://unix.stackexchange.com/questions/73868/installation-problem-with-python-software-properties

sudo apt-get install --reinstall python3-software-properties

BTW, which linux distro is compatible with this free5gc/IPTV system? It would be good if you can list our supported OS/system.

Thanks,
Vinh

iptv.go fails on debian 11.5

go run iptv.go

github.com/pelletier/go-toml

/root/go/src/github.com/pelletier/go-toml/utf8.go:224:10: syntax error: unexpected b10000000, expecting semicolon or newline or )

golang.org/x/sys/unix

/root/go/src/golang.org/x/sys/unix/syscall.go:83:16: undefined: unsafe.Slice
/root/go/src/golang.org/x/sys/unix/syscall_linux.go:2256:9: undefined: unsafe.Slice
/root/go/src/golang.org/x/sys/unix/syscall_unix.go:118:7: undefined: unsafe.Slice
/root/go/src/golang.org/x/sys/unix/sysvshm_unix.go:33:7: undefined: unsafe.Slice

golang.org/x/net/http2

/root/go/src/golang.org/x/net/http2/client_conn_pool.go:303:6: undefined: errors.Is
/root/go/src/golang.org/x/net/http2/server.go:2757:9: h.Clone undefined (type http.Header has no field or method Clone)
/root/go/src/golang.org/x/net/http2/transport.go:437:30: undefined: errors.Is
/root/go/src/golang.org/x/net/http2/transport.go:437:45: undefined: os.ErrDeadlineExceeded
/root/go/src/golang.org/x/net/http2/transport.go:2131:5: undefined: errors.Is
/root/go/src/golang.org/x/net/http2/transport.go:2135:5: undefined: errors.Is
/root/go/src/golang.org/x/net/http2/transport.go:2139:5: undefined: errors.Is

Failed to run: sudo add-apt-repository ppa:gias-kay-lee/npm

Hi @fossabot ,

I failed to run the command in the title, please help me to fix this.

ubuntu@ubuntu-KVM:~$ lsb_release -a
No LSB modules are available.
Distributor ID:	Ubuntu
Description:	Ubuntu 18.04.3 LTS
Release:	18.04
Codename:	bionic
ubuntu@ubuntu-KVM:~$ uname -ra
Linux ubuntu-KVM 5.0.0-23-generic #24~18.04.1-Ubuntu SMP Mon Jul 29 16:12:28 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux
ubuntu@ubuntu-KVM:~$ sudo add-apt-repository ppa:gias-kay-lee/npm
 NPM is a package manager for Node.js. You can use it to install and publish your Node.js programs. It manages dependencies and does other cool stuff.
---
Official Site - http://npmjs.org/
Upstream - https://github.com/isaacs/npm
---
PPA Maintained by - http://blog.gantrithor.com/
 More info: https://launchpad.net/~gias-kay-lee/+archive/ubuntu/npm
Press [ENTER] to continue or Ctrl-c to cancel adding it.

Hit:1 https://dl.yarnpkg.com/debian stable InRelease
Ign:2 http://ppa.launchpad.net/gias-kay-lee/npm/ubuntu bionic InRelease                                                                      
Hit:3 http://vn.archive.ubuntu.com/ubuntu bionic InRelease                                        
Hit:4 http://security.ubuntu.com/ubuntu bionic-security InRelease                                                        
Hit:5 http://vn.archive.ubuntu.com/ubuntu bionic-updates InRelease                                                       
Hit:6 http://ppa.launchpad.net/teejee2008/ppa/ubuntu bionic InRelease    
Hit:7 http://vn.archive.ubuntu.com/ubuntu bionic-backports InRelease     
**Err:8 http://ppa.launchpad.net/gias-kay-lee/npm/ubuntu bionic Release         
  404  Not Found [IP: 91.189.95.83 80]
Reading package lists... Done                      
E: The repository 'http://ppa.launchpad.net/gias-kay-lee/npm/ubuntu bionic Release' does not have a Release file.
N: Updating from such a repository can't be done securely, and is therefore disabled by default.
N: See apt-secure(8) manpage for repository creation and user configuration details.**

Thanks.
Vinh

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.