생초보를 위한 sjva 안내서 - 3 파일 처리

생초보를 위한 sjva 안내서 - 3 파일 처리

12 nova 14 3828 10 0

파일 처리

SJVA는 아마 Soju6Jan Video Assistant의 약자일 겁니다. 이름에서 알 수 있는 것처럼 미디어 관리에 특화된 기능을 가지고 있으며, 이러한 기능은 처음부터 서로 연동하여 작동하도록 만들어졌습니다. 단일 기능으로도 의미가 있지만 한 기능이 다른 기능의 기반이 된다는 것을 기억하고 글을 읽어주세요.


파일 처리 기능은 미디어 종류별 처리 기능입니다. 여기에서는 영화 처리에 대해 설명하고 나중에 AV 파일 처리에 대해 다룹니다. TV쇼 처리는 제가 전혀 사용하지 않는 관계로 링크 파일처리 -국내TV파일처리 FAQ로 대신하겠습니다.


파일처리 >> 영화

이 기능은 지정한 다운로드 폴더에 있는 영화 파일이나 영화 파일이 포함된 폴더를 영화 DB에서 검색하여 확인한 "영화 제목 (연도)" 폴더에 포함된 영화 파일로 바꾸고 아래와 같이 분류된 대상 폴더로 이동하는 기능입니다.

sjva 대상 폴더 구조
├── imdb
├── kor
├── kor_vod
├── no_movie
├── sub_o
├── sub_x
└── vod


예를 들어 설명하면 다운로드 경로에 영화A를 포함하는 폴더B가 있다고 가정합니다.

다운로드 경로
└── 폴더B
      └── 영화A


파일 처리 기능은 먼저 폴더B 또는 영화A의 이름을 사용하여 영화 DB를 검색하여 "영화 제목 (연도)" 정보를 파악합니다. 그런 다음 파악된 영화 DB 정보와 자막의 종류, 영화 파일 이름에서 추측되는 출처의 유형을 통해 sjva 대상 폴더 구조 중 하나 아래에 "영화 제목 (연도)" 폴더를 만들고 영화A를 이동합니다. 예를 들어, 영화A의 출처가 vod이고 해외 영화라고 판단되면 아래와 같이 이동됩니다.

sjva 대상 폴더 구조
├── imdb
├── kor
├── kor_vod
├── no_movie
├── sub_o
├── sub_x
└── vod

     └── 영화 제목 (연도)

              └── 영화A


이 과정이 다운로드 경로의 모든 폴더와 파일 각각에 대해 실행됩니다. 이 과정에서 영화A의 이름은 바뀌지 않으며, "영화 제목 (연도)" 폴더의 형태는 설정에서 사용자 지정할 수 있습니다.


이 과정을 이해한 후 sjva의 설정을 보면 그리 어렵지 않게 설정할 수 있을 것입니다.

jrcEzlTGToVfGu2dhrUt00rcCh2uemZTkOZOiaC1dHjvcp5uhyIWs5TKVrJfzr4-aiRCg2sipO-MQE2EmPyI-MTBhZgCIeKEJwwxghXb6nCN3Fj-thP0mgJqYZr8iN8MPm4dHUCp


중요한 것은 파일 처리 기능의 분류 기준입니다. 다음은 영화 파일처리 & 다운로드 & 에이전트 – Soju6jan에서 발췌한 것입니다.

sjva 대상 폴더 구조
├── imdb
├── kor
├── kor_vod
├── no_movie
├── sub_o
├── sub_x
└── vod


  • imdb - 다음 DB에서 검색되지 않지만, 영문 제목으로 imdb에서 검색된 영화

  • kor - 한국영화. 출처가 VOD가 아닌경우

  • kor_vod - 한국영화. 출처 VOD

  • sub_o : sub_x 에 있는 영화 중 자막과 같이 있는 영화가 이동. 모든 파일처리 후 이동하며, 폴더안에 하나의 동영상과, 하나의 srt 파일이 있는 경우 동영상 파일명으로 srt 파일명을 변경 ToDo 한 영화의 자막이 여러 개 있는 상황에서 동영상이 등록되면 어떻게 되는지?

  • sub_x - 한국 영화가 아니며 자막이 없는 영화(출처가 VOD가 아닌 경우) 또는 자막 파일만 있는 경우 이동

  • vod - 한국 영화가 아니며 출처가 VOD


no_movie 폴더는 위 분류 기준에 맞지 않는 영화들이 이동되는 폴더입니다.

  • no_year - 연도 없음

  • unknown - 알 수 없음

  • no_meta - 영화 검색 실패

  • sub - 영화 검색 실패한 자막들(검색에 성공한 자막은 영화 파일이 없더라도 sub_x에 있음)


각 폴더의 분류 기준이 명확하게 이해되시나요? 궁금한 것이 있더라도 분류된 결과를 보면 쉽게 이해할 수 있으니 일단 파일 처리를 해 보시길 바랍니다. ;-)


분류 결과는 파일처리 >> 영화의 [목록]에서 확인할 수 있습니다.


보시면 아시겠지만 실제로 plex 미디어 라이브러리에 등록할 수 있는 폴더는 kor, kor_vod, sub_o, vod입니다. 아울러 다운로드 경로에 자막 파일을 저장하면 자동으로 분류되고 재수가 좋은 경우 sub_x에 있던 파일이 sub_o로 간다는 것을 알 수 있습니다. ;-)

 

미디어 관리

Plex 미디어 서버 지원 기능입니다.


Plex 등록 및 플러그인 설치

이 기능을 사용하려면 먼저 PLEX > PLEX 메뉴의 설정 탭에서 Plex 미디어 서버를 등록해야 합니다. 

5BVjKIHisymPrG-tN2113BJe0OuwxkTZ782A6viCBseKhMtXlu7DuLe-XsuinSp4CR0C4rcNUXqYle16k6GNJy92iqpxJ1B7CAk7CT4nFwBknalVqwXXTz8EXRnjPRZyhFegIfcM


등록 방법은 간단합니다. 

  1. Plex IDPlex PW를 입력하고 서버목록을 클릭하여 서버 목록을 얻습니다.

  2. 서버 목록에서 사용할 서버를 선택하고 서버확인을 클릭하여 접속 주소를 가져옵니다.

  3. 가져온 Plex URL과 Plex Token을 사용하여 접속되는지 확인하기 위해 접속확인을 클릭합니다.

  4. 이후 플러그인 자동 설치 등에 SJVA 플러그인이 필요합니다. 아직 설치하지 않았다면 지금 SJVA 플러그인 다운로드 단추를 클릭하여 다운로드하여 설치합니다(아래 SJVA 번들 폴더 구조 참조). 설치한 후 plex 미디어 서버를 다시 시작해야 합니다.

  5. 설치가 완료되었으면 SJVA 플러그인 확인을 클릭하여 연결되는지 확인합니다. 플러그인 버전을 알려주는 확인 알림이 나타나야 합니다.

  6. 이 과정을 완료했으면 저장을 클릭합니다.

 

SJVA 번들 폴더 구조

plex 미디어 서버에 기능을 추가하는 역할을 하는 플러그인은 plex 미디어 서버 설치 위치의 Plex Media Server/Plug-ins 폴더에 설치해야 합니다. 이 위치는 플랫폼마다 다릅니다. 정확한 위치는 How do I find the Plug-Ins folder?Where is the Plex Media Server data directory located? 페이지를 참조하시면 됩니다.


SJVA 번들 폴더의 이름은 SJVA.bundle-master가 아니라 SJVA.bundle입니다. 그리고 가끔 압축을 푸는 과정에서 SJVA.bundle-master 폴더 안에 SJVA.bundle 폴더가 또 포함된 상태로 풀립니다. 아래와 같이 SJVA.bundle 폴더가 Plug-ins 폴더 바로 아래에 와야 합니다.


Plex Media Server/Plug-ins/SJVA.bundle
├── Contents
│   ├── Code
│   │ ├── __init__.py
│   │ ├── base.py
│   │ ├── entity.py
│   │ ├── file_manager.py
│   │ ├── lc.py
│   │ ├── plugin.py
│   │ ├── scan_queue.py
│   │ ├── sjva_pms_handle.py
│   │ ├── tvh.py
│   │ └── version.py
│   ├── DefaultPrefs.json
│   ├── Info.plist
│   └── Resources
│       └── icon-default.png
└── pms
    ├── gdrive.py
    ├── plex_db.py
    ├── pms_global.py
    ├── pms_watchdog.py
    ├── requirement.txt
    ├── sjva_pms.py
    └── sqlite3.exe


셸에서 작업한다면 대충 아래와 같은 식으로 작업하면 됩니다. 


먼저 임시 위치에서 다운로드한 파일의 압축을 풉니다.

root@venus:/mnt/sata/tmp# unzip SJVA.bundle-master.zip


폴더 구조를 확인합니다.

root@venus:/mnt/sata/tmp# tree -L 2
├── SJVA.bundle-master
│   ├── README.md
│   ├── SJVA.bundle
│   └── plugin_list.json
└── SJVA.bundle-master.zip


SJVA.bundle-master 폴더 안에 SJVA.bundle 폴더가 있습니다. 다음과 같은 방식으로 꺼냅니다.


root@venus:/mnt/sata/tmp# mv SJVA.bundle-master/SJVA.bundle ./
root@venus:/mnt/sata/tmp# tree -L 2
├── SJVA.bundle
│   ├── Contents
│   └── pms
├── SJVA.bundle-master
│   ├── README.md
│   └── plugin_list.json
└── SJVA.bundle-master.zip


필요 없는 파일과 폴더를 삭제합니다.


root@venus:/mnt/sata/tmp# rm -rf SJVA.bundle-master
root@venus:/mnt/sata/tmp# rm SJVA.bundle-master.zip 


불필요하게 자세하게 설명하는 이유는 모든 플러그인 설치에서 이 실수가 빈번하게 발생하기 때문입니다. 꼭 하위 폴더 확인하셔서 맞게 풀어주세요.

 

SJVA 플러그인 설치

SJVA 번들을 설치했으면 이제 SJVA 플러그인(스캐너와 에이전트)을 설치할 수 있습니다.
예전 기능에 대한 설명이지만, Plex SJVA 플러그인 페이지도 참고하시구요.


PLEX >> PLEX 메뉴의 플러그인 탭에서 Scanner / Agent 설치 하위 탭으로 이동합니다.
[설치 지원 목록 로딩] 단추를 클릭합니다. 아래와 같이 설치 가능한 스캐너/에이전트 목록이 나타납니다.


3ho8OMx8y8ooXbNCPdXEJreHoLeGxszCG_AiuaGywvH-XB8j7gLXmiEQrTeaDMcYz2S4H3EGnO0kzOgaVJk1cD9rM7-5HYR4tB5E6-Bf52m9fCvkM4K7vri7Mi8UTZy1JCh6L8BA 


필요한 항목 오른쪽에 있는 [설치] 단추를 클릭하여 설치하면 됩니다. 필요한 것 쭉 설치하시고 다시 [설치 확인] 단추를 쭉 클릭하여 설치 확인하신 후 이상 없이 다 설치되었으면 plex 미디어 서버 한 번 다시 시작해 주세요.


구글 드라이브 마운트해서 사용하시는 분들은 Plex Series Scanner Patch 꼭 설치하시기 바랍니다. TV 쇼 스캔할 때 아래와 같이 스캐너를 Plex Series Scanner Patch로 바꾸세요. 

bRQbtZwdTIZ96PopidJuk_7loUT9kR_UnjlQYRXzeutor7RccWIWCm7q3b1JNvy2AIWlAOobOJ9BHkmqpJzOggzKezzNxe0eMdRCcV4Y4tAtv3pZpqTr4YOgM1nQfrUHWx5U4UeH


이게 왜 필요한지는 PLEX 팁 – Soju6jan에 잘 설명되어 있습니다. 스캐너의 역할에 대해서도 자세히 설명되어 있으니 꼭 읽어보시길.


 

14 Comments
11 부키 01.23 00:22  
좋은정보 감사합니다. ^^;
4 소니아 01.23 01:38  
항상 좋은 정보 감사합니다.
9 masterK 01.23 09:34  
잘읽었습니다. 감사합니다.
7 한비광 01.23 11:47  
읽어보는 저야 참 편하지만 이렇게 설명해주는건 어려운 일인데 너무 감사합니다.
8 화연a 01.23 22:10  
감사합니다
8 prop 01.23 22:23  
좋은 글 감사합니다. 긴가민가한 부분도 있었는데 잘 알고 갑니다.
9 아기꾸꾸 01.23 23:23  
감사합니다.
11 SjDrOiD89 01.25 12:20  
좋은 정보 감사합니다.

Congratulation! You win the 7 Lucky Point!

4 SSMD 01.26 08:04  
감사합니다!! 잘 보고 따라가고 있습니당!!
6 ysdad 02.02 19:45  
좋은 정보 감사합니다.

저같이 처음 설치하거나 잘 모르는 사용자를 위해 덧붙여둡니다.
(시놀로지 716+ 기준입니다.)

1. plug-in 폴더가 file station에서 안보이는 경우 : 사용자 권한설정에서 volume1/Plex폴더 권한을 확인해 주십시오

Plex Token 확인시
1. 접속확인은 플렉스 미디어 서버에 라이브러리가 등록되어 있어야 합니다. 저는 나중에 하려고 안했더니 접속확인이 안되더군요.
2. SJVA 플러그인 확인 : 플러그인 폴더에 넣어 두신 다음 플렉스 미디어 서버 재시작후 확인해야 합니다. 

제가 잘 몰라서 너무 초보적인 사항이긴 하지만, 기록해 두니 도움되시는 분들이 있었으면 좋겠습니다.
12 nova 02.02 21:01  
정보 감사합니다. 헤놀을 하나 만들고 며칠 사용해보니 시놀로지 사용자들이 어려워하는 이유, 그리고 시놀로지 사용자들과 저 같이 일반 리눅스 서버 사용자들이 대화가 잘 안되는 이유도 어렴풋이 알 것 같더군요. 스크립트 하나 만들려고 nano를 설치하려고 봤더니 optware를 설치해야 해서 '뭐야?' 그랬는데 DSM 안에 스크립트 편집기가 있고 rclone 설정 파일을 명령줄에서 올리려고 zmodem 설치하려고 하다가 역시 optware여서 WinSCP 써야 하나 하다가 보니 파일 스테이션에서 업로드하면 되고... 두 세계가 생각하는 방식이 많이 달라지겠더라구요 ;-)
그 간격을 메우고 싶어서 헤놀 하나 만들었네요. rclone, sjva 관련 글 몇 개 쓸 예정입니다. ;-)

Congratulation! You win the 19 Lucky Point!

5 마굳간 02.07 18:21  
영화는 TV쇼와 다르게 rclone 관련 설정이 없는데요.
폴더별로 분류를 하고 어떻게 구글드라이브로 파일처리가 가능한가요?
12 nova 02.23 16:43  
rclone으로 구글 드라이브를 마운트해서 로컬 폴더처럼 관리하는 것입니다.
4 MissFlash 05.10 12:12  
덕분에 파일정리 개념을 잘 이해했습니다. 감사합니다. ^^
Category
State
  • 현재 접속자 14(5) 명
  • 오늘 방문자 171 명
  • 어제 방문자 793 명
  • 최대 방문자 1,331 명
  • 전체 방문자 138,695 명
  • 전체 게시물 62,494 개
  • 전체 댓글수 7,897 개
  • 전체 회원수 3,149 명
Facebook Twitter GooglePlus KakaoStory NaverBand