반응형

[QNAP] TS-251 TVHeadend VAAPI (HW가속) 사용

이 포스팅은 Notion에서 작성되었으며 다음추천인 링크를 통해 가입하시면 $10 Credit을 얻으실 수 있습니다(저에게는 $5 Credit이 쌓입니다)
Notion 가입 Link

필요사항

  • Codex Pack ( App Center )
  • QPython2 ( Qnap Club )
  • TVHeadend (Qnap Forum )
  • Ubunutu 18.04 Docker with Container Station ( App Center )

설치 및 실행

TVHeadend의 기본 QPKG파일들은 QNAP Forum에서 배포하고 있어 쉽게 사용이 가능하지만
VAAPI가속을 지원하지 않아 CPU Transcoding만 사용가능하여 x86_64기반의 NAS에서도 하드웨어
가속 기능을 사용하지 못하게 되어있다.

QNAP Fourm에 Codex Pack를 사용하도록 컴파일하여 사용 가능한 방법이 포스팅 되어있어 참고하여 정리해본다.

우선 설치되어있는 TVHeadend는 App Center에서 정지시켜 준다. 그 후
Ubuntu 18.04 Docker에서 다음 과 같은 Script를 수행하여 Compile한다
여기서 QPKG_DIR는 각자 TVHeadend qpkg 설치 되어있는 경로로 변경한다

#!/bin/bash
QPKG_DIR=/share/CACHEDEV2_DATA/.qpkg/TVHeadend

apt update
apt install -y pkg-config gettext libssl-dev zlib1g-dev \
wget git-core liburiparser-dev python-requests cmake libpcre3-dev libdvbcsa-dev \
libva-dev

git clone https://github.com/tvheadend/tvheadend.git
cd tvheadend

echo './configure --disable-avahi --enable-bundle --disable-dbus_1 --enable-hdhomerun_client --enable-libfdkaac --enable-vaapi' >> myconf.sh
/bin/bash myconf.sh

make -j

mkdir -p ../qpkg/bin/libc

cp build.linux/tvheadend ../qpkg/bin/

ldd build.linux/tvheadend | grep "=> /" | awk '{print $3}'| xargs -I '{}' cp -v '{}' ../qpkg/bin/libc

rm ../qpkg/bin/libc/libva.so.2 ../qpkg/bin/libc/libva-drm.so.2
#2020-01 추가 Libva버전이 안맞아서 기존 폴더에있던것도 삭제
rm $QPKG_DIR/bin/libc/libva.so.2 $QPKG_DIR/bin/libc/libva-drm.so.2

cp /lib/x86_64-linux-gnu/ld-2.27.so ../qpkg/bin/libc/tvh-loader

cp -rf ../qpkg/* $QPKG_DIR/.

그리고 QPKG_DIR 내의 TVHeadend.sh 에서 Start TVHeadend로 주석되어 있는 위치를 찾아 다음과 같이 수정해 준다.

# Start TVHeadend
        CODEX_QPKG_NAME="CodexPack"
        CODEX_INSTALL_PATH=$(/sbin/getcfg -f $CONF $CODEX_QPKG_NAME Install_Path)
        /usr/bin/env ${TVH_CMDLINE_PREFIX} \
                LIBVA_DRIVERS_PATH=${CODEX_INSTALL_PATH}/opt/cdx/lib/dri \
                ${QPKG_DIR}/bin/libc/tvh-loader \
                --library-path ${QPKG_DIR}/bin/libc:${CODEX_INSTALL_PATH}/opt/cdx/lib:${CODEX_INSTALL_PATH}/usr/lib/x86_64-linux-gnu \
                ${QPKG_DIR}/bin/tvheadend --config ${QPKG_DIR}/config \
                --user admin --group administrators \
                ${CMDLINE_OPTS} ${TVH_CMDLINE_POSTFIX}

이후 TVHeadend를 다시 수행하면 VAAPI 드라이버를 사용 가능하게 됩니다.
혹시 문제가 있을경우 다음 명령어를 통하여 디버그 메세지를 확인해 보시기 바랍니다

$QPKG_DIR/TVHeadend.sh debug start

TVHeadend Setting 및 VAAPI 코덱 설정들은 검색을 해보시면 잘 정리되어있는 블로그들이 많으니 참고하시기 바랍니다

반응형

'Software > QNAP TS-251' 카테고리의 다른 글

[Plex] URL을 통해 라이브러리 Scan  (4) 2020.02.10
[QNAP] VIM Static Build  (0) 2020.01.16
[QNAP] TS-251 Ubuntu VNC Docker 설치  (0) 2019.06.07
[QNAP] TS-251 Showdown 설치  (0) 2019.05.18
[QNAP] TS-251 Flexget Setup  (0) 2019.04.25
반응형

[QNAP] TS-251 Ubuntu VNC Docker 설치

이 포스팅은 Notion에서 작성되었으며 다음추천인 링크를 통해 가입하시면 $10 Credit을 얻으실 수 있습니다(저에게는 $5 Credit이 쌓입니다)
Notion 가입 Link

필요사항

  • Container Station ( App Center )

설치 및 실행

QNAP의 경우 Conainter Station에서 Docker들이 관리된다.
SSH로 NAS에 접근하여 다음과 같은 Script 를 통해 Docker 설치를 진행하면
VNC를 통해 접근가능한 Ubuntu Image를 설치할 수있다.

사용법은 다음과 같다
./install.sh <VNC접근 비밀번호>

    install.sh

    #!/bin/bash
    if [ "$#" -ne 1 ]; then
      echo "Usage>install.sh <VNCPASSWROD>"
      exit 1
    fi


    mycmd="docker run -d --name ubuntu \
    -p 6080:80 \
    -p 5900:5900 \
    -e VNC_PASSWORD="$1" \
    -e RESOLUTION=1920x1080 \
    -v /dev/shm:/dev/shm \
    -v /share:/share \
    --device "/dev/dri:/dev/dri" \
    dorowu/ubuntu-desktop-lxde-vnc"

    echo ${mycmd}
    ${mycmd}

5900 포트를 통해 VNC접근을 시도하면 성공적으로 사용할수 있다.

반응형

'Software > QNAP TS-251' 카테고리의 다른 글

[QNAP] VIM Static Build  (0) 2020.01.16
[QNAP] TS-251 TVHeadend VAAPI (HW가속) 사용  (0) 2019.06.07
[QNAP] TS-251 Showdown 설치  (0) 2019.05.18
[QNAP] TS-251 Flexget Setup  (0) 2019.04.25
[QNAP] TS-251 TVHeadend + HW Transcoding  (0) 2018.12.19
반응형

이 포스팅은 Notion에서 작성되었으며 다음추천인 링크를 통해 가입하시면 $10 Credit을 얻으실 수 있습니다(저에게는 $5 Credit이 쌓입니다)
Notion 가입 Link

Requirement

  • QTransmission (QNAP Club)
  • QPython3(QNAP Club)

환경 설정

~/.barshrc에 다음 Path를 추가하여 Python 환경을 사용한다

CONF=/etc/config/[qpkg.conf](qpkg.conf)  
QPKG_NAME="QPython3"  
QPKG_ROOT=`/sbin/getcfg $QPKG_NAME Install_Path -f ${CONF}`  
export PYPATH=${QPKG_ROOT}/bin

Flexget 설치

다음과 같은 과정을 통해 진행되었다. Python Version과 Path는 본인에 맞게 수정해야 한다
Pip Install과정에서 Disk Usage관련 메세지가 발생하여 /share/my/flexget 폴더에 다운로드 및 빌드를 하여 사용하였다.

https://flexget.com/InstallWizard/Linux

/bin/bash
$PYPATH/pip3 install -U setuptools
$PYPATH/pip3 install virtualenv
cd /share/my #Install 하고싶은 Root DIR
$PYPATH/virtualenv flexget
cd flexget
source bin/activate
pip3 install pytest-runner
pip3 install transmissionrpc
pip3 install flexget --cache-dir=/share/my/flexget/cache --build-dir=/share/my/flexget/build

스케쥴링

https://flexget.com/InstallWizard/Linux/Scheduling

한시간에 한번씩 flexget을 수행하기 위해 스케쥴링에 등록하여 준다.

#export EDITOR=vim
#crontab -e
vim /etc/config/crontab
#VIM 상에서 아래 한줄을 추가해 준다
20 * * * * LC_ALL=en_US.UTF-8 /share/my/flexget/bin/flexget -c /share/my/flexget/config.yml --cron execute

설정

설정은 Flexget 공식 사이트를 참조하여 본인 RSS및 관련설정에 맞게 진행하면된다.

https://flexget.com/Configuration

그리구 구글링해보면 여러 블로그들을 확인 할 수 있으니 참고하시길

https://awesometic.tistory.com/85
https://taking.kr/blog/archives/5395.html

반응형
반응형

요즘 거의 대부분의 가정에서  IPTV 사용하고 있다. 이런 IPTV 외부에서 볼수 있도록 해주는 서비스가 바로 TVHeadend이다.  QNAP TVHeadend 설정하고 안드로이드 KODI앱과 플러그인을 통해 Streaming하는 법을 포스팅 해본다.

 

 

  1. QNAP TVHeadend 설치

 

QNAP Form TVHeadend Thread - https://forum.qnap.com/viewtopic.php?f=276&t=109573

위의 링크를 통해 다운로드 사이트로 이동 가능하다.

 

 

자신의 QNAP 모델에 맞는 버전을 다운로드한다. 251 경우 x86_64 버전을 다운하였다.

 

다운로드한 파일을 NAS특정 폴더로 옮긴 SSH 혹은 Telnet 통하여 접속한다.

필자는 XSHELL 5 사용중에 있다.

 

SSH 통하여 다운로드 받을 폴더에 접근하여 Unzip 명령어로 압축을 풀어준다

 

Shell> unzip TVHead*.zip

 

그후 다음과 같은 명령어를 통하여 설치를 진행한다.

Shell> NO_TUNER=1 /bin/sh TVHeadend_0.8.7.1_x86_64.qpkg

 

이제 QNAP관리페이지 에서 설치완료된 TVHeadend 확인할 수있다

 

 

  1. 공유기 포트 포워딩 설정

공유기 별로 포트포워딩 설정을 진행해 주어야 외부에서 TVHeadend 접근이 가능하다. 공유기 포트포워딩 설정에서 9981, 9982포트를 오픈해 주도록 한다.

 

  1. TVHeadend 계정설정(0.8.7.1 기준)

 

기본으로 설치되어 있는 상태는 누구든지 TVHeadend 접근할수 있도록 되어있는 상태이다. 이는 보안상 매우 안좋은 상태이기 때문에 계정 설정을 먼저 진행해준다.

TVHeadend관리 페이지를 실행한다.

http://nasip or 도메인:9981 접근하면 만날 있다.

 

 

계정생성

Configuration --> Users --> Passwords 순서로 클릭하여 탭을 오픈하고

Add 버튼을 클릭하여 새로 사용할 사용자 ID/Password 입력해준다.

새로운 계정이 생성되었으면 * 되어있는 라인을 클릭한 Delete해준다.

 

 

권한설정

그리고 Access Entries 탭으로 들어가서 방금 생성한 계정의 권한을 설정하여준다. 마찬가지로 Add 클릭후 유저네임 입력후 각각의 권한을 주면 된다.

 

 

이로써 사용을 위한 계정 세팅을 모두 마무리하였다.

다음부터 TVHeadend 페이지 접근을 시도하게되면 ID/PW 묻게되는데 위에 설정한 계정을 입력하면 접근 가능하다.

 

 

  1. IPTV연결 Channel추가 + Android KODI 설정

이부분은 나스모에님 블로그가 너무도 정리가 잘되어있어서 해당 블로그 포스팅을 참고하기 바란다.

Tvheadend IPTV 채널 등록하기 <https://nas.moe/archives/858>

omvs 프로그램을 이용한 K* (O***h) IPTV 주소 따는 방법 <https://nas.moe/archives/1433>

Tvheadend IPTV 방송사 로고 넣기 <https://nas.moe/archives/1088>

Kodi (XBMC) Tvheadend IPTV 방송 시청하기 <https://nas.moe/archives/1073>

 

해당 진행 Configuration --> Channel/EPG/Channel 제대로 등록이 되어있어야 KODI 다른 클라이언트에서 접근이 가능한것으로 보입니다. KODI 제대로 되지 않으시는 분들은 해당 내용 작성 되어있는지 확인 바랍니다.

Add --> service에서 앞에 등록한 채널 하나를 고른뒤 Create해주시면 됩니다.

 


반응형

'Software > QNAP TS-251' 카테고리의 다른 글

[QNAP] TS-251 Flexget Setup  (0) 2019.04.25
[QNAP] TS-251 TVHeadend + HW Transcoding  (0) 2018.12.19
[QNAP] TS-251 초기 Setting 정리  (2) 2018.12.18
[QNAP] TS-251 - Enpass 설정법  (4) 2017.01.15
[QNAP][PLEX] Plex Server 자막 관련  (1) 2016.04.06
반응형

Password 관리용 툴들은 요즘 여러가지가 존재한다. Lastpass, keepass 등등~ 하지만 그중 Enpass 새로 Setup하여 사용하기로 마음먹고 관련 세팅들을 진행하였다.

Enpass Dropbbox, Google Drive등등 많은 클라우드를 통해 key파일들을 공유 가능하지만 그중 QNAP nas 활용한 webdav서버를 통해 DB관리를 하는 방법에 대하여 작성해 보았다.

 

QNAP Webdav 설정

 

Webdav설정을 위해서는 Qnap관리 페이지에 관리자 계정으로 로그인을 수행해야한다.

 

  1. 제어판 --> 애플리케이션 서버 --> 웹서버
  2. 서버 활성화 WebDAV 사용check 해준다.
  3. WebDAV폴더별 접근 권한을 공유폴더 접근권한과 같게 하고 싶으면 공유폴더 권한 선택 WebDAV 권한을 별도로 주고 싶으면 WebDAV권한 선택한다

 

 

 

  1. 3에서 WebDAV권한  선택한 경우 다음과 같이 폴더별 WebDAV권한을 설정해 주어야 한다.


 

 

Enpass 설정

Enpass 다음의 다운로드 링크에서 받을 있다


Enpass다운로드 링크

 

  1. 새로운 계정 파일생성

다음과 같이 선택하여 새로운 계정 파일을 새로 생성한다

 

  1. 마스터 비밀번호 생성

마스터 비밀번호를 입력하여 준다. 마스터 비밀번호는 Enpass사용시 모든 비밀번호를 확인하기 이전에 입력하는 키값으로

유출되지 않도록 매우 조심해야 한다.

 

  1. WebDAV 동기화 설정
    1. 도구 --> 설정 --> 동기화
    2. 다음과 동기화 --> WebDAV/ownCloud
    3. URL http://QNAP서버주소orIP/공유폴더
    4. 사용자 명과 비밀번호에 해당 계정정보를 입력하여 준다.

 

 

이제 NAS 위와 같은 과정을통해 NAS 계정 파일들을 저장하고 동기화 되어 스마트 폰과 같은 다른 기기에서도 같은 계정 파일을

공유 하여 사용할 수있다.

 

 

  1. Android Enpass + WebDAV 사용시 주의점

Enpass 윈도우용은 무료이지만 안드로이드 용은 별도의 결제를 진행한 후에 사용할 있다.

Enpass 안드로이드 사용 세팅 문제가 되는 부분이 있어 추가하여본다.

안드로이드 동기화 Setting진행시 URL제일 마지막에 / 닫아주어야 WebDAV링크를 제대로 인식하고 접근한다.

URL http://QNAP서버주소orIP/공유폴더/

 

반응형

+ Recent posts