반응형
DSM 6.1.3 기준에서 작성된 글이며, 네트워크는 아래와 같이 구성되어 있음.
TV 채널 IP추출 및 매핑 (PC - Windows)
- omvp를 설치한다.
- http://ohhara.sarang.net/omvp/bin/
- 압축을 풀 때 주의할 점은, 가급적 한글 경로를 포함하지 않는 경로로 해주어야 오동작을 안한다.
- setup.bat 을 실행해준다. (관리자 권한 필요)
- WinPcap_4_1_3.exe 를 실행해준다.
- 명령프롬프트(cmd)를 관리자 권한으로 실행해준다.
- omvp가 설치된 폴더로 이동하여, omvs -l 키워드를 입력하여 본인 PC의 네트워크 디바이스 번호를 찾는다.
- dev_idx 괄호 뒤에 있는 숫자이며, 일반적인 PC의 경우 대부분 0임
- 이제 사전 준비는 끝났고, 사용중인 iptv의 IP대역을 입력하여, omvp에 포함된 omvs라는 프로그램으로 각 채널에 해당하는 ip목록을 수집해주어야 한다.
- IP대역은 여기를 참고하거나, 구글링을 통해 알아내도록 하자.
- IP대역을 알았으면, 명령프롬프트에 아래와 같이 입력해주자.
- omvs -i 0 -j 5 IP대역/24
- omvs_out 이라는 폴더에 여러개의 m3u파일(ip정보)과 여러개의 png파일(ip수집 당시 찍힌 스크린샷)이 저장되게 된다.
- 만약 계속 기다려도, start scanning만 나온다면 PC에서 IPTV로 접속을 하지 못하는 경우이니, 네트워크 구성을 점검해본다.
- 이제 omvs_out폴더에 여러개의 m3u파일의 내용을 합쳐서, 한개의 m3u파일로 만들어주어야 한다.
- m3u파일의 내용을 합쳐서 하나로 만들어준 후, omvp가 설치된 폴더에 omvp.m3u라는 이름으로 변경하여 넣어준 후, omvp.exe 파일을 관리자 권한으로 실행해주면, 실시간으로 채널 확인이 가능하다.
- 합쳐진 m3u파일을 쌀집아저씨라는 능력자분께서 만드신 채널 매핑 프로그램(TvHelper)을 이용하여, 채널을 매핑해준다.
- https://blog.riceworld.info/archives/148 를 참고하여 진행
- 매핑된 m3u파일을 Xpenology의 Webstation 등 http를 이용하여 접근 할 수 있는 위치에 둔다.
Tvheadend 설치 (NAS)
- [패키지센터] - [설정] 메뉴로 이동한다.
- [일반] 탭에서 [신뢰 수준]을 모든 게시자로 변경해준다.
- [패키지 소스] 탭에 아래와 같은 소스를 추가해준다.
- http://syno.dierkse.nl
- 패키지센터에서 [Tvheadend-Testing]을 찾아서 설치한다.
- 설치하고나면, 9981포트(관리용 WEB포트)와, 9982포트(데이터 전송용)가 올라오게 되는데, 두 포트를 상황에 맞게 열어주어야 한다.
Tvheadend 설정 (NAS)
- 기본 설정
- http://IP:9981 로 접속하여, 인증 후 기본적인 설정을 하여 넘긴다.
- [설정] - [일반] - [기본] 탭으로 이동하여 아래 설정 진행
- [사용자 인터페이스 레벨] - [전문가] 로 변경
- [설정] - [일반] - [사용자] 탭으로 이동하여 아래 설정 진행
- 사용자선택 후 [편집] 버튼 클릭
- [스트리밍] 항목에 있는 모든 항목 체크
- [비디오녹화기] 항목에 있는 모든 항목 체크
- [설정] - [채널 / EPG] - [EPG 그래버 모듈]
- XMLTV만 활성화하고 모두 비활성화 해준다.
- XMLTV의 경로를 기억해둔다. (ex: /volume1/@appstore/tvheadend-testing/var/epggrab/xmltv.sock)
Tvheadend EPG 등록 (NAS)
- 사전에 git, python2.x, python module, pip가 설치되어 있어야 한다.
- Xpenology기준으로 Git Server, Python Module을 설치한다.
- 터미널에서 easy_install pip를 입력하여 pip를 설치한다.
- 이제 EPG모듈을 받아와야 하므로, 터미널에서 아래 키워드를 입력한다.
- pip install BeautifulSoup4
- cd epg 등록 모듈을 받을 위치
- /bin/git clone https://github.com/wonipapa/epg2xml
- /bin/git pull
- /usr/bin/python epg모듈을 받은 위치/epg2xml/epg2xml.py -i 통신사 -s XMLTV경로
- ex: /usr/bin/python /volume1/Video/epg2xml/epg2xml.py -i KT -s /volume1/\@appstore/tvheadend-testing/var/epggrab/xmltv.sock
- epg모듈은 현재 날짜 기준으로 이틀치만 받아오므로, 위 명령어를 스크립트로 만들어서, 하루 한 번 스케쥴러로 돌리면 된다.
Tvheadend 추가 설정 (NAS)
- 아래 설정을 진행한다.
- [설정] - [DVB입력] - [네트워크]
- [추가] 버튼을 누르면, 팝업이 발생한다.
- 네트워크 이름을 아무거나 입력
- URL에 매핑과정에서 만들어진 m3u파일의 경로를 넣는다. (전에는 내부 볼륨에 넣어도 참조가 됬었는데, 어느순간부터 http프로토콜을 이용행 참조가 가능해짐;)
- [설정] - [DVB입력] - [먹스]
- m3u을 제대로 참조했다면, 내용들이 추가되어 있을거고, m3u파일에 있는 IP들을 스캔하기 시작한다.
- 스캔은 됬으나, 서비스가 0으로 나오는 항목들은, [편집]을 눌러서 [TSID에 값으로 0 허용]을 체크하고, [스캔 상태]를 [활성]으로 바꿔주면 서비스가 1로 변하는 경우가 있으니 참고한다.
- [설정] - [DVB입력] - [서비스]
- [서비스매핑] - [모든 서비스 매핑] 선택하면, 먹스에 있던 항목들이 채널로 등록되게 된다.
반응형