눈 내린 세상

Asus ac1900 (ac68u -멀린펌) 내부 epg 설치 및 실행 본문

NAS(asus AC1900 = rt-AC68U)/epg설정

Asus ac1900 (ac68u -멀린펌) 내부 epg 설치 및 실행

녹은눈사람 2018. 3. 10. 18:00

목적.

1. tvheadend에 내부 epg 그랩을 통해 epg를 설정하여 프로그램 가이드를 나오게 한다.

2. python 이용.

3. 외부 epg의 경우 자동 업데이트가 간혹 되지 않는 경우가 있어 그를 대체하고자 한다.


준비 사항.

1. epg2xml-master.zip

(Channel.json, epg2xml.json, epg2xml.py 이 세개 파일만 사용)

출처 : https://github.com/wonipapa/epg2xml

2. tv_grab_file

3 .py 파일을 실행시키기 위해선 다음과 같이 설치가 필요.


외부 epg를 설정하고 싶다면 http://snowsooner.tistory.com/4 

내부 epg의 장점은 다중 크론 행간을 통해 epg 업데이트가 편하다. 그리고 설정이 외부에 비해 간편한 편이다. 다만 몇몇 채널의 epg가 누락이 잘 된다. 즉 오류가 꽤 있다.

외부 epg의 경우 epg가 누락되더라도 수동으로 설정해 줄 수 있다. 다만 설정이 좀 더 까다롭다.

나의 경우 외부 epg로 받아오다가 한번씩 epg의 업데이트가 안 되는 경우가 있어 내부 epg를 사용중이다. 몇몇 채널의 epg가 누락 됐지만 잘 보지 않는 채널이라 별 문제 없이 사용하고 있다.


putty 실행.

-설치

opkg install python-light python-pip python-requests python-lxml

기존에 설치해뒀기에 이미 설치 돼있다고 나온다.

설치가 안 돼있다면 설치가 진행될 것이고. 만약 설치가 제대로 되지 않는다면 일단 건너 뛰고 아래 작업들을 먼저해본 후 다시 시도해본다.

그래도 안 된다면 수동으로 다운 받은 후 직접 설치할 수도 있다.

-pip다운로드
wget https://bootstrap.pypa.io/get-pip.py
-pip 인스톨러설치
python get-pip.py
뷰티플소프설치
pip install BeautifulSoup4
-lxml설치 
pip install lxml
requests 에러 나면 다음을 설치
pip install requests




준비사항 1에서 다운받은 epg2xml-master.zip의 압축을 푼다.

Channel. json 은 채널 id가 저장된 파일이고

epg2xml.json 파일을 다음과 같이 수정해줘야 된다.

.json 파일은 텍스트 편집기로도 수정할 수 있지만

editplus 라는 프로그램을 추천한다. ( https://www.editplus.com/kr/ 여기서 평가판을 다운받으면 된다.)

"MyISP" : "자신의 iptv 통신사를 입력(KT, LG, SK중 하나)"

"MyChannels" : " 채널 id 정보" e.g)채널 id, kbs1 = 110, kbs2 = 111, mbc = 122

채널 id 정보는 channel.json이 저장돼 있고.

tvhelper 라는 채널 매핑기를 이용할 수도 있다.

다만 tvhelper는 png 파일을 기준으로 매핑되므로 m3u파일을 수정할 순 없다.

(tvhelper 사용법 및 다운 https://blog.riceworld.info/archives/148)


수정을 완료 했다면 폴더째로 엔트웨어에 넣어준다.

winscp로 넣어도 좋고.

나의 경우 win키+r로 실행을 불러내어

\\192.168.1.1

입력하여 폴더를 열어서 넣어줬다.

정확한 경로는 /tmp/mnt/owl(나의 기본폴더)/entware-ng.arm/epg2xml-master 이다.

여기서 epg2xml-master의 이름은 자신이 편한대로 수정가능하다.

수정한다면 epg2xml-master 대신 자신이 수정한 걸로 전부 바꿔주면 된다.


이제 tv_grab_ 파일을 수정한다.(tv_grab_file의 이름은 file 부분만 수정해줄 수 있다. tv_grab_ 여긴 수정하면 안 된다.)

tv_grab_file 을 다운받아 기본 텍스트 편집기 혹은 editplus 등의 프로그램으로 열어서 다음과 같이 수정한다.

cd /opt/epg2xml-master

/opt/bin/python epg2xml.py 

수정하고 저장한다.


winscp를 이용하여

tvgrab 파일을 /opt/bin/ 이 폴더에 넣어준다.

/opt/bin 폴더에 수정한 tv_grab_file을 넣어준다.

tv_grab_file을 오른쪽 마우스를 이용해 속성으로 들어간다.

권한을 위와 같이 설정한다.

777로 모든 권한을 줘도 되지만 일반적으로 755의 권한을 준다.

7 소유자 rwx 권한/ 5 그룹 rx 권한/ 5 기타 rx 권한

권한을 주는 과정은 putty 에서 chmod 755 를 이용해도 된다.(winscp가 없다면)



epg 그래버 모듈 설정.

사용자 인터페이스 레벨이 기초 혹은 고급이면 다음과 같이 epg 그래버 모듈탭이 존재하지 않는다.

그래서 사용자 인터페이스 레벨을 전문가로 만들어줘야한다.


설정 - 사용자 - 접근항목 - 자신의 사용자 계정 선택 - 편집

만약 자신이 사용자 계저을 만들지 않았다면 밑에 *을 선택하고 편집하면 된다.


보기 수준을 전문가로 설정하면 전문가 설정을 할 수 있다.

전문가 설정에 있는 사용자 인터페이스 레벨을 전문가로 설정 후 저장.

그리고 tvheadend 웹을 닫았다 다시 켜거나

사용자 계정에서 로그아웃 했다가 다시 로그인 해준다.


그럼 다음과 같이 설정 - 채널/epg 탭 아래에 EPG 그래버 모듈이 추가됐음을 확인할 수 있다.


이제 EPG 설정.

tvheadend로 가서

설정 - 채널/epg - epg 그래버 모듈

내부 xmltv - 켜짐에 체크 - 왼쪽 상단에 저장

설정 - 채널/epg - epg그래버

내부 그래버 - 크론 다중 행간

0 1 * * *

0 9 * * *

이렇게 해두면 매일 01시, 09시에 내부 epg를 작동해 epg를 불러온다.

시간대를 바꾸고 싶다면 앞에 숫자를 바꿔주면 된다.

크론 다중 행간의 사용법은

http://docs.tvheadend.org/webui/config_epggrab/

확인하면 된다.

* * * * *

첫번째 *은 분(0-59)을 / 두번째 *은 시(0-23)를.

세번째 *은 일(1-31), 네번째 *은 월(1-12), 다섯번째 *은 요일(0-6)을..

원하는 대로 수정을 했다면 왼쪽 상단 저장을 누르고 내부 epg 그래버 다시 시작을 눌러주면 된다.


오른쪽 하단을 ㅅ을 누르게 되면 위와같이 로그가 뜨는데 저런식으로 뜨면 성공.

잠시 기다리면 위와 같이 전자 프로그램 가이드에 등록됨.

Comments