조회 수 895 추천 수 0 댓글 3
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄

늘 수고 많으십니다.

 

다름 아니라 이번에 gif 움짤 프리셋을 만들면서 겪게 된 일과 평소 직접 부딪쳤던 문제에 관련해서 질문 및 건의 드리려고 이 글을 작성합니다.

 

1. [구간 설정/잘라내기]와 기타 필터들 간의 관계, 우선순위

 

구간 설정은 FFmpeg의 -ss 와 -t 옵션을 사용하기 쉽게 만들어 놓으신 것으로 이해합니다.

 

이와 비슷하게 잘라내기 역시 crop 필터를 시각적으로 쉽게 적용하도록 만들어 놓으신 것으로 이해하는데,

문제는 이 기능이 어떤 상황에서 기존의 어떤 필터들을 무력화시키는지, 우선순위는 어떻게 되는지 파악하기가 힘들다는 것입니다.

 

우선 [구간 설정/잘라내기]에서의 잘라내기는 [빠른 설정] -> [영상 사이즈 변경] -> [비율변경]의 잘라내기(shanacrop 필터)와는 어떤 관계인지 모르겠습니다.

후자는 F7 필터 리스트와 F8 매개변수 창의 비디오 필터 쪽에 등장하지만, 전자의 경우 매개변수 창에도 나오지 않아서 다른 필터들과의 우선순위 관계가 어떻게 되는지도 알 수 없어 오직 시행착오로 직접 실험해 보는 수밖에 없더군요.

예를 들어, [빠른 설정] -> [영상 사이즈 변경]과 [구간 설정/잘라내기]에서 잘라내기를 동시에 적용시키는 경우 같은 것 말이죠.

 

또 [구간 설정/잘라내기]에서의 잘라내기가 어떤 상황에서 기존의 어떤 필터들을 무력화시키는지, 또는 충돌하는지 분명하지가 않습니다.

이번에 프리셋을 만들면서 fps와 scale을 적용해 보았는데, [구간 설정/잘라내기]에서의 잘라내기를 적용하면 이 두 필터가 무력화되더군요.

그런데 또 split과 palettegenpaletteuse 필터들은 잘 작동합니다.

결과로 예측하건대, 잘라내기가 필터 우선순위가 있는 것도 짐작되구요.

 

수요는 많지 않겠지만, 프리셋 제작에 참고할 수 있게 이런 부분에서 명확한 레퍼런스가 있으면 시행착오를 줄일 수 있겠다는 생각이 듭니다.

 

2. 필터 리스트

 

빌드하시는 FFmpeg 명령어 옵션을 설명서 게시판에 올리셨듯, 샤나인코더에서 사용 가능한 모든 필터들 리스트도 있으면 좋겠습니다.

어떤 필터들은, 예를 들어 paletteuse 같은 경우 F7 필터 리스트에 없는데도 가능하더군요.

프리셋을 제작할 때는 우선 F7을 눌러보고 원하는 필터가 있는지 살펴보는데, 이런 경우엔 직접 맨땅에 헤딩하면서 찾아보는 수밖엔 없습니다.

 

3. 필터그래프 입력/편집 창

 

이 부분은 건의사항입니다.

현재 F7은 필터 체인 옵션인 -vf 만 인식하는데 필터그래프 입력 옵션인 -filter_complex 나 -lavfi 도 인식했으면 좋겠습니다.

물론 GUI로 구현하기 힘든 부분이 있는 것은 알겠습니다만, 장기적으로는 구분자로 쉼표(,)와 콜론(:)만 가능한 필터 체인과 세미콜론(;)과 꺾인 괄호([])까지 사용할 수 있는 필터그래프를 모두 포괄할 수 있는 필터 편집 기능이 있으면 좋겠습니다.

 

※ 추가 건의

프리셋 자료실 게시물 작성에서 HTML 에디터를 적용해 주시면 감사하겠습니다.

프리셋을 올리면서 설명과 사용법, 예제 등을 게시해야 하는데 plain text로 작성하기엔 무리가 많습니다.

 

 

이상 장문의 글 읽어주셔서 감사합니다.

Facebook Twitter Pinterest Kakao
  • ?
    Rina 2019.09.10 18:46

    1. [구간 설정/잘라내기]에서 설정한 잘라내기 값은 로고 설정을 사용하지 않으면 vf를 이용하고 crop 필터를 사용하며 매개변수에서 보이지는 않지만 첫 번째 우선순위로 사용하게 됩니다.

    로고를 사용할 경우 vf가 아닌 filter_complex를 이용하고 crop 필터를 사용하며 마찬가지로 첫 번째 우선순위로 사용하게 됩니다.

    그러므로 현재 샤나인코더에서는 기본적으로 vf를 사용하기 때문에 filter_complex를 따로 사용하게 되면 충돌이 일어나게 됩니다.

    shanacrop 필터는 영상 사이즈 변경에서 비율변경 부분을 잘라내기로 선택했을 때 사용하고 crop 필터로 대체되며,

    shanapad 필터는 영상 사이즈 변경에서 비율변경 부분을 레터박스로 선택했을 때 사용하고 pad 필터로 대체됩니다.

    만약에 잘라내기 설정과 shanacrop 필터를 사용한다면 UI에서 보이는 건 -vf "crop(shanacrop)" 이지만 실제 적용되는건 -vf "crop(잘라내기 옵션),crop(shanacrop)" 이렇게 사용됩니다.

     

    <<참고사항>>

    FFmpeg에서는 "-vf/-af/-filter and -filter_complex cannot be used together for the same stream." -vf/-af/-filter와 -filter_complex를 동일 스트림에서는 함께 사용할 수 없습니다.

    그러므로 현재 샤나인코더에서는 vf와 af를 이용한 필터 구성을 권장하며 filter_complex 이용 시 잘라내기나 기타 샤나인코더 설정 중에서 vf나 af를 사용하는 모든 필터들을 수동으로 구성해야 합니다.

    (비디오 스트림만 filter_complex 구성 시 오디오는 af로 구성 가능)

     

    2. 필터 리스트

    필터 리스트 부분은 FFmpeg 새로운 버전으로 컴파일 시 매번 사용 가능한 필터들을 추가하되,

    앞서 설명한 이유 때문에 filter_complex를 이용하지 않아도 vf와 af를 사용하여 필터링할 수 있는 단순한 필터들만 목록에 표시되게 하였습니다.

    즉, 속성 중에서 VV->V 이런 필터들은 일부로 제외해놓았습니다.

    (이유는 기본적으로 샤나인코더가 vf와 af로 돌아가고 로고 설정을 사용했을 때 vf에 있던 것들을 filter_complex로 명령어를 다시 바꾸기 때문입니다.

    오디오 같은 경우 동일 스트림이 아니기 때문에 로고를 사용한다 해도 af 설정을 사용합니다.)

    그렇지만 사용가능한 필터들은 설명서 게시판에 따로 올려놓겠습니다.

     

    3. 해당 부분은 참고하겠으나 사실 동영상 편집에 가까워지는 부분이기 때문에 기존 샤나인코더에서 어떻게 하면 버그와 문제없이 기능을 추가해야 할까 생각해야 하는 부분입니다.

    기술적으로는 로고 설정 시 filter_complex를 사용하기 때문에 어려운 것은 아니지만 사용자가 복잡하지 않고, 새로운 기능 사용 시 문제가 발생하지 않도록 프로그램 코드를 수정해야 하기 때문에 고민해야 할 부분이 많습니다.

     

    프리셋 게시판의 글쓰기 부분을 자유게시판과 같이 기본 컴포넌트를 사용할 수 있도록 개선했습니다.

    감사합니다.

  • ?
    JKyle 2019.09.11 03:17

    친절하고 자세한 설명 감사 드립니다.

     

    1.

    근데 동일한 -filter_complex 옵션 안에 넣었는데 왜 fps나 scale은 되지 않고 splitpalettegen이나 paletteuse는 되는지 이유를 모르겠습니다.

    paletteuse 같은 경우 속성이 VV -> V 인데도요. split도 V -> VV 구요.

    로고 사용 없는 잘라내기가 -vf 옵션을 따른다면, 같은 -filter_complex 옵션 안에 넣은 모든 필터들이 문제가 생겨야 하지 않을까요?

    그리고 문제가 생기더라도 속성이 V -> VV 인 split이나 VV -> V 인 paletteuse 같은 필터가 더더욱 문제의 소지가 있는 것 아닐까요?

    뭔가 좀 오묘하군요.

    이유를 알고 계신다면 알려 주시면 감사하겠습니다.

     

    참고로, ffmpeg 명령행으로 실행시키면 전혀 문제가 생기지 않습니다. (Zeranoe 64비트 윈도우 용 FFmpeg 4.2 릴리스 버전)

     

    실행 명령어는 다음과 같습니다.

    ffmpeg -hide_banner -i "Li_Zuchi_harvest.mp4_20190909_210308.mp4" -filter_complex "[0:v]fps=10,scale=400:-1:flags=lanczos,split[a][b];[a]palettegen=stats_mode=diff[p];[b][p]paletteuse=new=1:diff_mode=rectangle" -an -y "Li_Zuchi_harvest.mp4_20190909_210308_fps10_scale400_FFmpeg_Zeranoe_4.2_release.gif"

     

    샤나에서도 [구간 설정/잘라내기]를 사용하지 않고 -filter_complex 안에 fps, scale을 넣으면 문제가 생기지는 않습니다.

    대신 버그는 있더군요. fps 변경하면 프레임들의 duration이 균등하지 않게 됩니다. 이건 샤나인코더에서 빌드하신 FFmpeg의 문제인 것 같습니다.

     

     

    그렇지만 역시 crop을 눈으로 보면서 하는 [구간 설정/잘라내기]는 포기하기 힘들 것 같군요. 프리셋 안에 -filter_complex 옵션으로 crop 필터를 넣게 된다면 일반 사용자들에게 난이도가 올라가 잘 사용하지 않게 될 테니까요.

     

    어쨌든, 어떤 부분이 문제가 되는지 분명히 해주셔서 감사합니다.

     

    2.

     

    필터 리스트를 제공해 주신다니 감사 드립니다. FFmpeg 같은 경우 help 메시지로 검색할 수 있지만 샤나인코더의 경우 직접 라이브러리로 빌드해 내장하셔서 필터 특성 파악하기가 불가능해 불편한 면이 있었습니다. 다시 한 번 감사 드립니다.

     

    3.

     

    프로그래밍하시는 입장에서 고민이 많으실 거라 생각됩니다. 어디까지나 많은 사람들이 용이하게 사용하도록 하는 게 목적이시라면 굳이 구현하지 않으셔도 될 것 같네요.

    실제 구현한다 하더라도 얼마나 많은 사람들이 필요성을 느끼게 될지도 의문이구요.

    당연히 전적으로 샤나님 의도하신 대로 하시면 되겠습니다. 그냥 생각해 보시라고 건의 드린 거니 괘념치 않으셔도 괜찮습니다. :)

     

    ※ 프리셋 게시판 에디터 활성 감사 드립니다. (_._)

  • ?
    Rina 2019.09.14 13:58
    다음 버전에서 최신 FFmpeg 빌드 시 확인해봐야겠네요

List of Articles
번호 분류 제목 글쓴이 날짜 조회 수 추천 수
공지 소리를 4가지로 분리하는 샤나보컬리무버 프로그램을 소개합니다. Rina 2024.03.22 1401 3
공지 샤나인코더 통합 검색 기능 개선(샤나인코더 우측 상단에 있는 검색창을 사용해 보세요.) Rina 2021.09.30 16749 2
공지 자유게시판에서는 자유롭게 글을 작성할 수 있지만 다음과 같은 내용은 삭제돼요 Rina 2020.03.18 14546 5
공지 일반 [필독] 질문 전에 반드시 읽으세요!!! 3 file JKyle 2019.09.16 30391 6
공지 일반 [알림] 질문 먹튀하지 마시기 바랍니다 => 본문 변경 금지 23 JKyle 2018.10.12 26025 16
2976 질문 AAC LC 음원을 AC3 2채널로 인코딩할때 질문입니다. 4 PLK 2023.04.20 571 0
2975 질문 혹시 인터페이스만 구버전으로 변경가능한가요? 3 아이브 2023.04.20 491 1
2974 질문 인코딩이 1분에서 5분밖에 안되네요? 1 file vpdle 2023.04.19 694 0
2973 질문 샤나인코더 uninst 다운받는 방법이 있을까요? 1 키읔히흫 2023.04.19 559 0
2972 질문 샤나인코더 재설치가 안되요 해결방법 알려주세요 부탁드립니다. 1 file 키읔히흫 2023.04.19 366 0
2971 질문 파일이 안올라가요 .. 4 file 채여이 2023.04.15 594 0
2970 질문 인코딩 하였던 파일을 다시 인코딩 할 경우 2 키읔히흫 2023.04.14 705 0
2969 질문 인코딩 하면 자막이 이상합니다 1 ㅈㄴㄷ 2023.04.09 629 0
2968 질문 [질문] m4a나 mp3 등 음원파일에 이미지 합치는 방법 [*.m4a(or *.mp3)+*.jpg(or *.png)=*.mp4] 2 샤나하냥 2023.04.09 817 0
2967 질문 8k 영상을 4k로 변환 2 피넛버터 2023.04.06 1091 0
2966 질문 영상자체에 내장된 자막을 인코딩하면 자막이 안나오는데... 2 벨라미 2023.04.05 767 0
2965 질문 안녕하세요 영상 음성 합치기 분리할때 4 file 남이사랑 2023.04.01 817 0
2964 질문 특정 오디오 지연값을 기본으로 설정할 방법이 있을까요? 5 아이브 2023.03.31 420 0
2963 질문 비트레이트를 딱 2000kbps 로 맞추는 방법이 있을까요? 5 file 솔티드카라멜 2023.03.31 931 0
2962 질문 RTX 40번대는 NVENC 품질이 좀 괜찮은가요? 6 1070ti 2023.03.30 1519 0
2961 질문 똑같은 설정을 썼는데 어떤 파일에서 인코딩이 이상하게 됩니다. 2 file 리디형 2023.03.27 618 0
2960 질문 파일명 설정하는 방법 있을까요? 1 seoku 2023.03.25 405 0
2959 질문 인코딩한 파일을 원본파일하고 같은 폴더에 보관할 수 없나요? 3 아지랑이 2023.03.25 497 0
2958 질문 AMD 6700XT HDR 인코딩 문의 합니다. 1 구름둥둥 2023.03.25 550 0
2957 질문 작업 목록 저장 기능이 있을까요? 냥바 2023.03.21 421 2
Board Pagination Prev 1 ... 7 8 9 10 11 12 13 14 15 16 ... 160 Next
/ 160