[Tvheadend 설치로 IPTV 예약 녹화하기] 5. EPG 정보 연결하기

쉐빠질놈 0 146 0 0

EPG 가 무엇인지는 나무위키를 참고하세요.
https://namu.wiki/w/EPG

어렸을 적 TV 프로 녹화하던 기억 나시나요? 신문 한구석에 TV 편성표 확인해서 예약 녹화 되는 비디오에 공 테이프 넣어두고 녹화시간 입력하던 때요. 지금까지 잘 해오셨으면 tvheadend 를 이용해서 충분히 그런 방식의 녹화는 가능합니다만, EPG 정보를 tvheadend 로 불러 올 수 있다면 더 편하게 할 수 있지요.

일단 NAS 에 파이썬이 설치되어 있어야 합니다.

Xpenology 패키지 센터에 들어가서 'python' 을 검색하시면 오른쪽 패키지가 나옵니다. 모두 설치해 주세요.

다음으로 PuTTy를 이용하여 SSH 접속을 합니다. root 계정으로 접속해주세요.
다음과 같이 쉘 명령어를 입력합니다.


> easy_install beautifulsoup > easy_install lxml

여기까지 에러메시지 없이 잘 진행하셨으면 아래 과정은 그냥 생략하시고 그냥 진행하시구요. 혹시 설치 실패했다고 나오거나, 이후 epg2xml.py 를 실행할때 오류를 뿜으면 밑에도 추가로 설치하고 진행하세요.

> wget https://bootstrap.pypa.io/get-pip.py > python get-pip.py > pip install BeautifulSoup4 > pip install lxml


tvheadend 로 들어가셔서 외부 EPG 를 불러오도록 설정해야할 곳이 있습니다.

'설정' - '채널 / EPG' - 'EPG 그래버 모듈' 로 들어가셔서

좌측에 '외부: XMLTV' 라고 쓰여있는걸 누르신 후에,
오른쪽에 '켜짐' 을 체크합니다.

그리고 밑에 '경로:' 에 있는 경로를 메모장 같은 곳에 복사 해두세요. 밑에서 epg2xml 세팅할 때 입력해야합니다.

마지막 으로 '저장' 클릭하셔서 마무리 하시구요.

하기 전에 '채널 묶음' 에 가셔서 기존에 M3U 로 입력했던 채널묶음이 '켜짐' 에 체크 되어있는지 확인 하시구요.

이제 epg2xml 를 다운받아야 합니다. 현재 github 에 올라와 있습니다. 
https://github.com/wonipapa/epg2xml/archive/master.zip
클릭하시면 최신 버젼을 다운 받습니다.

파일을 다운 받고 압축을 푸신 후에 임의의 폴더 (저는 /volume1/video/IPTV/data 에 풀겠습니다) 에 Xpenology의 File Station 등을 이용해서 올려주세요.

업로드 한걸 확인 하셨으면 epg2xml.json 파일을 수정해줍니다. 파일 안에는 epg2xml 동작에 관련된 환경 설정이 저장 되어 있습니다. 몇가지만 수정하시면 됩니다.

"###_COMMENT_###" : "사용하는 ISP 선택 (ALL, KT, LG, SK)", "MyISP": "KT", -> 기본값은 ALL 인데 KT 로 변경했습니다. 본인 ISP 맞게 수정하세요. "###_COMMENT_###" : "### 채널 ID를 , 로 구분하여 입력 ###", "MyChannels" : "60, 110, 111, 122, 164, 97, 129, 208, 281, 207, 216", -> Channel.json 파일을 참고 하셔서 EPG 를 불러올 채널 ID 를 추가로 입력합니다. 기본값은 공중파 5개 채널인데요 저는 제가 추가한 채널에 맞게 종편을 더 추가했습니다. "###_COMMENT_###" : " d - EPG 정보 화면 출력", "###_COMMENT_###" : " o - EPG 정보 파일로 저장", "###_COMMENT_###" : " s - EPG 정보 소켓으로 출력", "output": "s", -> 소켓으로 EPG 정보를 출력할것이기 때문에 s 로 변경 "###_COMMENT_###" : "### epg 데이터 가져오는 기간으로 1에서 7까지 설정가능 ###", "default_fetch_limit" : "5", -> 기본값은 2일이지만, 5일치 정도를 가져오도록 했습니다. "###_COMMENT_###" : "### # External XMLTV 사용시 기본 소켓 이름 (ex: /home/tvheadend/xmltv.sock) ###", "default_xml_socket" : "/volume1/@appstore/tvheadend-testing/var/epggrab/xmltv.sock", -> 위에서 알아낸 xml_socket 주소를 입력해줍니다.

SSH 쉘에서 잘 작동하는지 확인해보시기 바랍니다.

tvheadend 로그를 보면 EPG 가 잘 불러와진걸 확인할 수 있습니다.

매일 자정 무렵에 한번씩 실행되어 EPG 가 하루에 한번 갱신될 수 있도록 등록합니다.

Xpenology DSM 에서 '제어판' - '작업 스케쥴러' - '생성' 을 클릭하시고

스케쥴 탭에서 실행하는 시각 및 반복 간격 등을 설정해주세요.

tvheadend 의 '전자 프로그램 가이드' 탭에서도 현재 상태가 잘 나오고 있음을 확인할 수 있습니다.
다음에는 EPG 를 이용해서 녹화한 파일을 자동 인코딩 하는 과정을 하도록 하겠습니다.

0 Comments
제목
Facebook Twitter GooglePlus KakaoStory NaverBand