tvheadend 사용 목적
외부에서 iptv를 볼 수 없을까, 시간 맞추어 보지 못하는 tv를 개인적 용도로 녹화해 놓고 볼 수 없을까 하는 의문점에서 출발했던 도전기이다. 고로 tvheadend를 사용하면 외부에서 iptv를 볼 수 있고, 시간에 맞추어 녹화를 해서 볼 수 있다.
사용했던 장비 및 환경
- iptv 회선 : KT
- NAS : Synology 215j (DSM 6.0.2-8451 Update 2)
- HTS Tvheadend 4.1.2309
- Python 2.7.12 (시놀로지 기본설치 버전)
인터넷 선 연결 재배치
- 벽에서 나온 인터넷 선을 공유기 WAN 에 연결한다.
- 공유기 1번 포트와 KT iptv 셋톱박스의 WAN 부분과 연결한다.
- 공유기 2번 포트와 NAS를 연결한다.
- 공유기 3번 포트와 PC를 연결한다.
아래는 본인이 직접 연결한 구성도 이다.
공유기 설정 변경 및 연결 확인
- 공유기의 관리 화면으로 들어가서 IPTV 설정하는 부분에 1번 포트를 선택한다.
- IGMP를 사용함으로 변경한다.
- 무선 2.4GHz/5GHz 의 IGMP도 사용함으로 변경한다.
- KT 셋톱박스를 재부팅한다.
- KT iptv가 정상적으로 보이는지 확인한다.
- VOD가 정상적으로 보이는 확인한다.
- PC에서 인터넷이 정상적으로 사용됨을 확인한다.
Tvheadend 설치
NAS로 접속해서 패키지 센터를 실행하여 아려와 같이 패키지 소스를 추가한다.
- 이름 : Tvheadend
- 위치 : http://syno.dierkse.nl/
커뮤니티 카테고리를 선택하면 아래와 같이 Tvheadend-test 패키지가 보인다. 설치버튼을 클릭하여 설치한다.
브라우져로 가서 http://nas_ip:9981 으로 접속해서 정상적으로 화면이 보이는지 확인한다.
공유기 포트포워딩
외부에서 접속할 수 있도록 공유기의 설정에서 9981 포트와 9982 포트를 오픈해 준다. http://ddns:9981 로 접속해서 정상적으로 접속되는지 확인한다.
녹화폴더 지정
녹화를 하려면 아래와 같이 녹화 경로를 지정한다. 물론 사전에 녹화폴더는 만들어져 있어야 하며, 권한 또한 확인해 봐야한다.
KT iptv IP 추출
다음 url 에서 아래 파일을 다운로드 받아 windows에서 압축을 푼다
http://ohhara.sarang.net/omvp/bin/
압축파일에 포함된 WinPcap_4_1_3.exe 파일을 설치한다.
cmd 를 관리자 권한으로 실행 후에 압축을 푼 폴더로 이동하여 setup.bat 파일을 우선 실행한다.
omvs -l 로 이더넷 번호를 확인한다. (보통은 일반적으로 0번, 아래는 노트북에서 했을 때 보인 형태 이다)
kt의 대역대를 확인하여 아래와 같이 실행하면 omvs_out 하위 폴더에 추출된 ip의 그림파일이 보일 것이다. 이미지를 확인하면 어떤 채널인지 육안으로 확인이 가능하다.
Network 등록
tvheadend 로 접속해서 아래와 같이 네트워크를 추가해 준다
EPG 등록
xml 형태의 채널을 등록하기 위해서는 아래와 같이 설정해 준다.
Externrnal: XMLTV를 제외하고 모두 비활성화 시켜준다. Path부분의 경로는 나중에 사용함으로 메모해 준다. 잘려서 보이지 않으나 기본값은 아래와 같을 것이다.
시놀로지는 이미 python 이 설치되어 있으므로 생성한 두개의 파일을 root 권한을 획득하여 python 모듈만 추가하도록한다.
적당한 위치에 아래와 같은 2개의 파일을 같은 위치에 생성한다.
epg2xml.py
Channel.json
이제 생성한 두개을 아래와 같이 실행한다.
이제 다시 tvheadend를 웹으로 접속해서 아래와 같이 EPG가 추가되었는지 확인한다.
채널추가
이제 아래와 같이 채널을 추가한다.
이제 모든 채널을 추가시킨 후에 아래와 같이 보게 되면 모든 모든 설정을 완료한 것이다.
편성표 자동 업데이트
EPG 편성표를 자동으로 업데이트 하려면 시놀로지에서 작업스케줄을 아래와 같이 생성한다.
사용자 정의 스크립트
활용방법
이제 tvheadend 를 지원하는 각종 프로그램을 찾아서 설정하면 활용하는 방법은 다음과 같다.
- kodi의 tvheadend addon
- android or ios 의 tvheadend client
- windows 10의 TVHPlayer
[출처 : http://sky-world.org/wp/2016/11/23/tvheadend-synology-215j-kt-iptv/]