SVP를 이용한 팟플레이어 60 FPS 재생 (Avisynth)

■ 최종 업데이트: 2018년 3월 5일


■ 변경 내역
- 2017/03/04: 64-bit 팟플레이어 지원 관련 업데이트
- 2017/03/04: 내용 업데이트
- 2016/10/04: SVP 모듈 업데이트
- 2016/07/11: 호환성 문제 개선을 위한 IF 및 SVP 구버전 추가
- 2016/06/14: 내용 및 SVP, Avisynth (MT) 업데이트
- 2016/03/31: 내용 및 AviSynth 스크립트 업데이트
- 2016/03/18: SVP, 스크립트 수정 및 최적화: 성능 및 호환성 개선
- 2016/03/15: Doom9 포럼의 Avisynth MT 추가
- 2016/02/20: 스크립트 업데이트
- 2016/02/16: SVP 옵션 변경 (Smooth)
- 2016/02/16: 인스톨러 방식으로 변경
- 2016/02/16: 기존 글을 바탕으로 재작성

 

※ 참고: 64-비트 팟플레이어에서 SVP 적용을 위해서는 SVP-Flow-Script-Generator를 이용하시기 바랍니다.

※ 참고: AMD Fluid Motion - BFRC를 이용한 팟플레이어 실시간 60 FPS 재생 방법

 

다음 팟플레이어와 AviSynth를 이용한 영상의 실시간 프레임 인터폴레이션(Interpolation, 보간) 적용 재생 방법입니다. 요즘 60 Hz 초과 주사율 디스플레이 사용자들이 늘어나는 추세라 기존 글에서 내용을 추가/보완하여 업데이트했습니다.

 

먼저, 이 글에 등장하는 AviSynth, SVP 그리고 InterFrame이 무엇인지 잘 모르는 분들이 많을 것으로 생각됩니다. 따라서 해당 용어부터 간단히 설명하도록 하겠습니다.

 


[SVP의 동작 원리 (이미지 출처: http://www.svp-team.com/)]

 

▶ 'SVP'는 SmoothVideo Project의 약자이며 프레임 인터폴레이션 기능을 제공합니다. 아래에서 설명하는 방법은 SVP의 플러그인을 추출해 사용하고 있으며, 팟플레이어에서 AviSynth 스크립트를 통해 프레임 인터폴레이션을 제어합니다. SVP 플러그인은 모션 벡터 검색에 사용되는 svpflow1.dll과 프레임 렌더링에 사용되는 SVPFlow2.dll로 구성됩니다. (SVP에서의 GPU 가속은 GPU의 연산 성능을 이용한 하이브리드 형태로 GPU의 하드웨어 디코더를 통한 DXVA 가속과는 다릅니다.)

 

▶ 'Interpolation'은 컴퓨터나 미디어 관련 학과에서 수학했거나 관련 공부를 하신 분이면 알고 계실 것입니다. 보통 번역된 서적에서는 '프레임 보간'이라는 용어로 사용되고 있으며, 간단하게 A와 B 프레임 사이에 중간 값인 새로운 C 프레임을 생성해서 넣어주는 것으로 이해하시면 될 것 같습니다. 이 때 생성되는 프레임의 생성 알고리즘과 속도(성능)가 사용자의 체감 품질에 큰 영향을 주게 됩니다.

 

▶ 'AviSynth'는 프레임서버로 동작하는 비디오 후처리를 위해 사용되는 강력한 도구로 임시 파일의 필요 없이 비디오의 편집과 후처리 기능을 제공합니다. 그래피컬 유저 인터페이스(GUI)를 제공하지는 않지만 텍스트 기반의 스크립트를 사용하여 편집이 가능합니다. AviSynth의 스크립트는 간단하지만 강력하고 효율적으로 조합할 수 있습니다. 또한 오픈 소스 소프트웨어 입니다.

 

▶ 'InterFrame'은 SVP를 간단하게 사용하기 위한 AviSynth 스크립트로 SVP 플러그인을 포함하고 있습니다. 이 글에서 설명한 방법에서는 현시간 기준으로 InterFrame 최신 버전보다 개선된 SVP 플러그인을 추출하여 적용하여 사용하고 있습니다.

 

앞서 언급한 것과 같이 과거에는 이런 작업을 실시간으로 처리한다는 것이 비현실적으로 여겨질 정도로 부담되는 작업이었습니다. 하지만 지금은 강력한 CPU 그리고 다용도로 발전하고 있는 GPU의 파워를 이용해 실시간 처리가 가능해졌습니다.

 

특히, 이번에 소개하는 방법은 성능과 품질면에서 현재 가장 우수한 편이라고 할 수 있습니다.

 


 

SVP로 프레임 인터폴레이션 처리된 영상은 원본(24 FPS)과 비교 시, 최신 상용 TV나 프로젝터에서 제공되는 플루이드 모션 기술과 동급 혹은 그 이상으로 부드러운 느낌을 제공합니다.

 

물론 빠르게 움직이는 영상 등(예: 스포츠, 레이싱)에서는 간혹 계단/깍두기 현상과 같은 문제가 발생하는 등 단점이 없는 것은 아니지만, 현재는 관련 기술이 많이 발전되어 대부분의 영상에서 문제 없이 즐기실 수 있습니다. 또한 단점이 도드라지는 스포츠나 e스포츠, 액션 등의 영상 등에서도 단점보다는 프레임 인터폴레이션으로 인한 장점이 더욱 크기 때문에 개인적으로는 적용을 권하고 있습니다.

 

샘플 영상을 통해 차이를 비교해볼까요?

 

Youtube에 업로드된 60 FPS 영상이기 때문에, 60 FPS 재생을 위해서는 HTML5를 지원하는 웹 브라우저(파이어폭스, 크롬 등) 혹은 Windows 8/8.1/10과 인터넷 익스플로러 11 이상의 웹 브라우저 조합이 필요합니다. 해당 환경이 준비되었다면 우측 하단의 영상 품질 설정에서 720p60 혹은 1080p60을 선택해 재생하시면 됩니다.

 

 

영상에서 원본(24 FPS)과 60 FPS의 차이가 느껴지시나요? 부드러운 동작에 초점을 맞춰 보시면 그 차이를 느끼실 수 있을 것입니다.

 

이번에 설명하는 방법은 '팟플레이어'를 통해 인터넷으로 실시간 재생되는 영상까지도 적용되기 때문에, 그 활용 범위가 매우 넓고 효율적이라고 할 수 있습니다. 시스템에 충분한 성능이 있고 전력 소모에 민감하지 않다면 버터 같이 부드러운 느낌을 포기할 이유가 없겠죠. 다만, 취향에 따라 이질감을 느낄 수도 있습니다.

 

또한 팟플레이어의 기본 옵션에 포함된 자체 프레임 더블러는 가장 기본적인 알고리즘을 이용한 방식으로 SVP와 품질 차이가 있으며, 생성되는 이미지의 품질, 성능, 사용자가 직접 스크립트를 제어할 수 있다는 부분 등 다양한 면에서 AviSynth와 SVP를 이용하는 방식이 우위에 있습니다.

 

그럼 지금부터 팟플레이어에서의 SVP 플러그인 적용 방법에 대해 설명하겠습니다.

 


 

원래 SVP는 아래 이미지와 같이 ffdshow와 SVP Manager를 사용합니다. 하지만 이 글에서는 ffdshow와 SVP Manager를 추가로 설치하지 않고 Avisynth와 SVPflow 그리고 Interframe만 적용하는 방법을 사용할 것입니다.

 

 

다음 팟플레이어에서 SVP 플러그인을 적용하기 위해 필요한 시스템 사양과 설치 방법은 다음과 같습니다.

 

1. 시스템 사양

 

- 운영체제
  └ Microsoft Windows Vista 이상 (Windows 8/8.1/10 권장)

 

- CPU
  └ 최소 사양: 듀얼 코어 2 듀오/쿼드 프로세서
  └ 권장 사양: 인텔 코어 i5나 AMD FX 6000 시리즈 프로세서 이상

 

- GPU
  └ 최소: NVIDIA GeForce 8000 시리즈, AMD Radeon HD 5000 시리즈
  └ 권장: NVIDIA GeForce GTX 600 시리즈 이상 (케플러), AMD Radeon HD 7000 시리즈 이상 (GCN)
  └ AMD iGPU: Llano 이상 (Trinity 이상 권장)
  └ Intel iGPU: Ivy Bridge 이상 (HD Graphics 4000 시리즈 이상 권장)

 

  ※ NVIDIA: 378.49 버전 드라이버를 사용하지 말 것 (공지)

  ※ AMD HD 5000 시리즈 이전 제품: Catalyst 15.7 이하의 드라이버를 사용할 것 (공지)

 

[SVP와 GPU 가속(활용)의 호환성 테이블]

 

[1] 구형 그래픽스 카드에서 지원하는 최신 드라이버는 Catalyst 15.7입니다. 새로운 'Crimson' 드라이버를 설치하지 마세요.
[2] NVIDIA의 OpenCL 2.0 호환 드라이버는 Windows 10에서 문제가 있다고 합니다.
    (http://www.svp-team.com/forum/viewtopic.php?id=2671)
[3] 인텔 HD 그래픽스 4000 이상에서 정상 동작하며, HD 2500 이하는 Full-HD 비디오 처리에 성능이 부족합니다
.

 


 

■ UAC(사용자 계정 컨트롤)을 사용 중인 경우, 우클릭 후 관리자 권한으로 설치하세요.
 일부 시스템에서 드라이버에 따라 하드웨어 가속에 문제가 생기는 경우가 있는 것 같습니다. 이러한 경우 구버전 혹은 신버전의 드라이버를 이용해서도 테스트해보시기 바랍니다. (댓글 참고)
 사용 중 에러가 발생하는 경우 GPU를 사용하지 않는 스크립트나 드라이버나 SVP의 버전을 변경해보시기 바랍니다.

■ 배포 중인 설치 파일은 포터블 방식으로 시스템에 설치로 인한 찌꺼기를 남기지 않으며 제어판의 프로그램 추가/제거에 등록되지 않습니다. InstallFactory로 제작된 파일이기 때문에 일부 백신에서 오진될 수 있으므로 참고하시기 바랍니다.

 

2. 다음 팟플레이어

 

- [주의] 32-bit 팟플레이어만 사용 가능
- 공식 웹사이트: http://cafe.daum.net/pot-tool (다음 카페)
- 최신 공식 버전 (32-bit): http://get.daum.net/PotPlayer/v3/PotPlayerSetup.exe
- 최신 개발자 버전 (32-bit): http://117.52.4.235/beta/PotPlayerSetup.exe
- 설치 방법: 다운로드한 파일을 시스템에 설치합니다. (기본 경로 사용)

 

3. AviSynth Rev.2

 

- 공식 웹사이트: http://avisynth.nl/
- v2.6.0, 공식 버전

- 다운로드:

AviSynth_260.exe

- 설치 방법: 다운로드한 파일을 시스템에 설치합니다. (기본 경로 사용)

 

4. AviSynth MT (Multi-Threaded)

 

- SVP 웹사이트: https://www.svp-team.com/
- v2.6.0.5, SVP Edition - 2016/06/14

- 다운로드:

AviSynth_MT_v2.6.0.5.exe

- 설치경로
  → 32-bit 운영체제(x86): C:\Windows\System32 (설치 시 경로를 직접 지정해주셔야 합니다.)
  → 64-bit 운영체제(x64): C:\Windows\SysWOW64

 

5. InterFrame 및 SVP Flow (플러그인)

 

- 공식 웹사이트: http://www.spirton.com/interframe
- 다운로드 (택1)

- v4.0.0.132/136 - 2016/10/04

InterFrame v2.8.2.1 & SVP v4.0.0.136.exe

- v4.0.0.132/135 - 2016/06/14

InterFrame v2.8.2.1 & SVP v4.0.0.13x.exe

- v1.x - 2013 : 최신 고사양 시스템에서 문제 발생 시 사용

InterFrame v2.5.0 & SVP v1.x.exe

- 설치경로
  → 32-bit 운영체제(x86): C:\Program Files\AviSynth\plugins (설치 시 경로를 직접 지정해주셔야 합니다.)
  → 64-bit 운영체제(x64): C:\Program Files (x86)\AviSynth\plugins

 

6. AviSynth 스크립트

 

- 다운로드

AviSynth_Scripts_20160331.exe (2016/03/31)
- 설치경로

  → 32-bit 운영체제(x86): C:\Program Files\Daum\PotPlayer\AviSynth (설치 시 경로를 직접 지정해주셔야 합니다.)
  → 64-bit 운영체제(x64): C:\Program Files (x86)\Daum\PotPlayer\AviSynth

 

팟플레이어 설정 방법

 

 

내장 OpenCodec 설정을 자신의 시스템 환경에 맞춰 적절하게 조절합니다.

 

 

별도 코덱을 지정해서 사용하는 경우 비디오 코덱을 내장 코덱(기본값)으로 변경합니다.

 

[하드웨어 가속(DXVA)을 설정][DXVA2 Copy-Back]을 동영상을 디코딩할 GPU로 설정합니다.

 

이때, DXVA2 Copy-back은 [DX11] 모드도 사용가능하나, 문제가 발생하는 경우 [DX9]를 선택합니다.

 

 

팟플레이어 환경설정의 [영상][AviSynth] 옵션에서 [AviSynth 필터 사용]에 체크(v)합니다. AviSynth Scripts를 정상적으로 설치했다면 위 스크린샷처럼 SVP 스크립트가 등장하며, 자신의 시스템에 맞추어 그 중 하나를 선택하면 됩니다.

 

1. 60/75/120/144 FPS: 초당 표시될 프레임 수 입니다. 자신의 시스템 혹은 자신의 만족도에 맞춰 선택합니다.

 

2. 보통/빠름/가장 빠름: 시스템의 성능이 부족할 경우 가장 빠름을, 성능이 충분할 경우 보통을 선택합니다.

 

3. GPU 사용: 프레임 렌더링 시 GPU 활용 유무입니다. GPU 성능이 높을수록 유리하지만, 일부 최신 고성능 GPU에선 성능 하락이 나타나는 경우도 있다고 합니다. 따라서 자신의 시스템에 적용해보고 GPU 활용 여부를 판단하시면 되겠습니다. CPU 성능이 충분한 시스템에선 GPU를 사용하지 않는 것이 좋다고 하는데, CPU의 성능이 떨어지거나 소비 전력이 높은 시스템에서는 GPU가 최신/저전력 제품인 경우 GPU를 활용하는 것이 성능과 전력 소모면에서 효율적일 수 있습니다.

 

4. CPU 코어 수에 따른 설정: 라이젠 출시 이후 6 코어 이상의 멀티 코어 프로세서가 많이 출시되었는데, 이 때 위 스크립트에서 #CPUS 부분을 스레드에 맞춰 수정하면 성능 향상 효과가 있다고 합니다.

 

프레임 수가 증가할수록 요구하는 시스템 사양 역시 증가합니다. 60 Hz 디스플레이를 사용하는 경우 주사율을 초과하는 120 FPS 등을 선택해도 요구 사양만 증가할 뿐 이득이 없으므로 기본 설정인 60 FPS를 선택하시면 됩니다.

 

개인적으로 일반적인 시스템 기준 추천하는 권장 프리셋은 [SVP 60 FPS - 빠름 (GPU 사용)]입니다.

 

 

또한 고해상도/고용량 영상, 60 FPS 영상 등 사양 문제가 발생하거나 프레임 인터폴레이션이 필요 없는 경우도 있을 수 있기 때문에, 이럴 경우를 대비해 위와 같이 단축키를 지정해 사용하면 편리합니다. (단축키는 사용자 지정)

 


 

마지막으로 팟플레이어에서 영상을 재생하여 잘 적용되었는지 확인합니다. [Tab] 키를 눌러 재생 정보가 표시될 때, 다음과 같이 60 FPS(혹은 설정한 프레임 수치)가 나오고 있다면 성공적으로 적용된 상태입니다.

 


[60 FPS 이용 예: 다음 팟플레이어에서 동영상 파일 재생]

 


[60 FPS 이용 예: 다음 팟플레이어에서 실시간 방송 시청]

 


[60 FPS 이용 예: 다음 팟플레이어에서 실시간 방송 시청]

 


[60 FPS 이용 예: 다음 팟플레이어에서 Youtube 영상 재생]

 

관련 게시물

이 글에 남겨진 댓글은 682개 입니다.

  1. 이전 댓글 더보기
    • 4코어 4쓰레드에서 이번에 8700으로 넘어오면서 6코어 12쓰레드를 써보니 스크립트에 수정할 부분이 있더군요.
      스크립트 상에 #CPUS 부분 때문에 성능을 못뽑아내고 있었습니다.
      이걸 자신이 쓰고 있는 쓰레드 갯수만큼 수정해야되더군요.
      예를 들면 6코어 12쓰레드의 경우 #CPUS 쓰인 부분을 전부 12로 바꾸시면 되는데 버벅 거리던 영상도 잘 돌아가더군요.

    • 저도 요즘 사용하지 않아서 업데이트가 없는데 우선 말씀하신 부분 추가하겠습니다. 감사합니다.

    • 자세한 설명과 링크 덕분에 쉽게 해냈습니다. 감사합니다. 한가지 궁금한게 svp를 사용하면 svp사용하기 전과 화질 차이가 있을까요? 이론상과 체감상 둘다 알고 싶네요 아무튼 정말 감사합니다

    • 기본적으로 차이는 없습니다. 다만 중간에 생성되는 프레임의 품질은 특성에 따라 좋지 않을 수 있습니다.

    • Script error: there is no function named 'SetMTMode' (popplayer_avisynth_script, line 1)

      상단에 노란글씨로 이런 에러가 뜨면서 안되네요ㅠ
      댓글보고 재설치 해보고 재부팅해보고 다해봤는데도 안되네요
      8600k, gtx1080, 팟플레이어64비트 사용중입니다.

    • 팟플레이어64비트 지우고 32비트로 설치후 다시 해보니 되네요^^; 감사합니다.

    • 잘 해결하셔서 다행이네요.

    • 안녕하세요 설명보고 하는중에 하드웨어 가속 설정(dxva) 부분에서 밑에 d3d11 dxva우선사용이라는 카테고리가 있고 dx9 이나dx11을 설정하는구간에서 dx버전은 없고 d3d9,d3d11이런 종류만 고를수있는데 문제가 무엇일까요 cpu 15 에 그래픽 10603g가입니다

    • 하드웨어 가속에 체크하시고 아래 카피백 설정을 DX9으로 지정하시면 됩니다.

    • SVP 플러그인 프리버전이 배포중지되었나요?
      위 링크에 SVP 플러그인 설치했는데도 AviSynth 프리셋에 SVP 플러그인이 안나오네요..
      지금 SVP 프로4 다운로드중입니다..

    • AviSynth 스크립트를 설치하셔야 팟 플레이어에서 표시됩니다. 설치 과정을 다시 살펴보세요.

    • 32비트로 설치해서 사용하는데
      SVSmoothFps: unable to init GPU-based renderer [code 0x100FF] (C:\{Program Files (x86)\AviSynth\plugins\InterFrame2.avsi, line155) (C:\{Program Files (x86)\AviSynth\plugins\InterFrame2.avsi, line 57) (potplayer_avisynth_script, line7)이라고 뜹니당.. 무슨말인지 도통 모르겠네요..!! GPU사용으로 설정했더니 이렇게 됩니다...

    • GPU 기반의 렌더러를 초기화할 수 없다고 합니다. 그래픽 카드의 드라이버를 업데이트 후 렌더러 관련 설정을 확인해보세요.

    • 64비트 사용자 입니다. AviSynth 설정할때 프리셋이 스크린샷 화면처럼 안나오고 10가지 밖에 안나옵니다. 퍼스트 트루 모션?, 퍼스트 트루 모션
      NOGPU, 오버레이 텍스트 등등...

    • 팟플레이어 64-비트를 사용하시나요? 현재 설치가 잘못된 것이며, 64-비트에서는 https://bare7a.github.io/SVP-Flow-Script-Generator/ 을 참고하셔야 합니다.

    • 안녕하세요 64bit 사용자입니다
      저도 윗분처럼 명시된 주소에서 알려준 방법대로 다 하였으나 마지막에 있는 Go to Video -> AviSynth, enable Use AviSynthFilters and paste your generated AviSynth+ script in the box bellow에서 막혔습니다. 무엇을 해야 하나요?
      AviSynth필터사용을 체크해도 아무런 변화가 생기지 않습니다

    • 생성된 스크립트를 팟 플레이어의 스크립트 창에 붙여 넣은 후, AviSynth 필터 사용을 체크하시면 됩니다.

    • 4790k + 970 사용중인데 위에 언급하신 세팅에서 dx9 > 11로만 바꾸고 적용했는데 별문제 없이 잘 되네요.
      감사합니다.

    • 다 따라했는데 버벅이네요 제 컴터 사양이 i5 8250u에 mx150인데 왜 그런거죠?? 설정도 빠름에 60프레임으로 했구요

    • GPU 사용, 가장 빠름으로 설정해서 사용해보세요. 영상이 고해상도, 고품질인 경우 고사양 시스템에서도 끊김이 발생할 수 있습니다.

    • 그래도 안되네요... svp4 pro 평가판 썼을때는 고품질로 해도 부드러웠는데 ㅠㅠ 도와주세요

    • SVP4로 정상 동작했다면 아마도 설정에 문제가 있는 것 같습니다. 설정에 문제는 없는지 잘 확인해보시고, 마찬가지라면 보다 성능이 우수한 64-bit 플레이어와 적용 방법을 참고하시기 바랍니다.

    • 네 한번 다시해볼게요 답변해주셔서 감사합니다. ㅎㅎ

    • tuning에 animation넣으니까 잘되네요 ㅎㅎ

    • 아무튼 잘 되신다니 다행이네요. 컨픽을 통해 여러 가지 세팅이 가능하니 최적으로 잘 조절해서 만족스러운 사용되시길 바랍니다.

    • Script error: there is no function named 'SetMTMode' (potplayer_avisynth_Script, line1)
      이런 에러가 뜨는게 어떻게 해결하나요?

    • 설치 과정에 빠진 부분이 있을 것 같은데 잘 확인해보세요. 수정된 dll이 설치되지 않은 것 같습니다.

    • 스크립트에서 CPU스레드 수에 맞게 조정할 때요.
      SetMTMode(6, #CPUS)와
      InterFrame(Preset="Faster", Tuning="Smooth", GPU=true, Cores=#CPUS)에서
      6코어 12스레드 CPU인 경우 위 두가지 #CPUS를 모두 12로 바꿔주면 되는건가요??

      +위와 같이 적용하고 영상을 재생해보니 cpu는 10% , gpu는 5% , 메모리는 850mb정도 사용하는데 원래 이렇게 사용량이 적은가요?

    • 위에 남겨진 후기에 따르면 최근의 멀티코어 CPU를 사용할 경우 CPU 수를 스레드에 맞게 변경해주면 성능 향상 효과를 얻을 수 있다고 합니다. 자원 활용도는 설정과 영상의 크기, 품질 등에 따라 차이가 발생합니다.

    • 프로필사진 스레드 질문

      2019.03.02 12:10 신고

      확실히 설정을 '빠름'에서 '보통'으로 변경했더니 cpu사용량이 3-40%정도로 오르네요. 램 사용량도 1기가로 올랐고요. 하지만 별 차이는 못느끼겠어요. 모니터가 구려서 그런걸까요...

      그리고 재생시에 방향키로 앞, 뒤로 이동했을 때 잠깐 버벅이는 현상은 원래 그런거죠? tab키 눌러서 확인해보니 이동할 때 프레임이 잠깐 확 떨어졌다가 다시 60프레임으로 올라가네요.

    • 이동 시의 AviSynth 적용 시점은 탐색 후 일정 시간 후에 처리 부분을 조절하시면 됩니다. 이 부분을 지나치게 낮출 경우 크래시가 발생할 수 있습니다. 기본 값이 1초일 거에요.

    • i5-6600
      gtx1060 3G
      메모리 16G 인데
      avisynth 실행하면 일정시간은 동영상이 60프레임으로 잘 돌아가다가
      그래픽이 깨지고 컴퓨터가 버벅거리거나 멈춥니다
      이 현상은 그래픽카드 사용/비사용 두 설정에서 동일하게 나타나고
      빨리감기를 하면 좀더 빨리 나타납니다
      왜 이런걸까요

    • 해결책을 찾은 것 같습니다
      GTX 10XX 시리즈가 최신 400번대의 드라이버가 문제가 있다고 하네요
      과감히 Avisynth를 포기하고 Vapoursynth로 갈아탔는데 동일한 문제가 발생하고
      이젠 화면이 바둑판처럼 깨지고 화면 먹통되고 난리도 아니었는데
      드라이버를 399.24 버전, 400번대 바로 전 버전의 드라이버를 설치하니 정상작동하네요

    • 댓글 확인이 늦었네요. 제가 현재 SVP를 사용하지 않아서 잘 모르던 부분인데 정보 감사합니다.

*

*