2016-09-20 3 views
3

반투명으로 h264 비디오에 png 워터 마크 (알파 채널 포함)를 추가하려고합니다. 오버레이 필터를 사용하여 워터 마크를 비디오에 추가 할 수있었습니다.ffmpeg 다른 크기의 반투명 워터 마크 (png) 추가

ffmpeg -y -i input.mp4 -i watermark.png -filter_complex "[0][1] overlay=0:0" -c:v libx264 -an output.mp4 

그러나 오버레이 필터는 투명 옵션을 제공하지 않습니다. 그래서 블렌드 필터를 사용하려고했습니다. 그러나 원점 분해능을 사용하면 오류 메시지가 나옵니다.

ffmpeg -y -i input.mp4 -i watermark.png -filter_complex "[0][1]blend=all_mode=overlay:all_opacity=0.3" -c:v libx264 -an output.mp4 

출력 :

libavutil  55. 28.100/55. 28.100 
    libavcodec  57. 48.101/57. 48.101 
    libavformat 57. 41.100/57. 41.100 
    libavdevice 57. 0.101/57. 0.101 
    libavfilter  6. 47.100/6. 47.100 
    libavresample 3. 0. 0/3. 0. 0 
    libswscale  4. 1.100/4. 1.100 
    libswresample 2. 1.100/2. 1.100 
    libpostproc 54. 0.100/54. 0.100 
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'input.mp4': 
    Metadata: 
    major_brand  : isom 
    minor_version : 512 
    compatible_brands: isomiso2avc1mp41 
    encoder   : Lavf57.41.100 
    Duration: 00:00:45.08, start: 0.000000, bitrate: 1872 kb/s 
    Stream #0:0(und): Video: h264 (Baseline) (avc1/0x31637661), yuv420p, 1920x1080, 1869 kb/s, 29.72 fps, 30 tbr, 16k tbn, 32k tbc (default) 
    Metadata: 
     handler_name : VideoHandler 
Input #1, png_pipe, from 'watermark.png': 
    Duration: N/A, bitrate: N/A 
    Stream #1:0: Video: png, rgba(pc), 64x64, 25 tbr, 25 tbn, 25 tbc 
[Parsed_blend_0 @ 00750600] First input link top parameters (size 1920x1080, SAR 0:1) do not match the corresponding second input link bottom parameters (64x64, SAR 0:1) 
[Parsed_blend_0 @ 00750600] Failed to configure output pad on Parsed_blend_0 
Error configuring complex filters. 
Invalid argument 

결과는 매개 변수를 일부 확인 문제처럼 보인다. 그래서 블렌딩 전에 워터 마크의 크기를 조정하려고했습니다.

ffmpeg -y -i input.mp4 -i watermark.png -filter_complex "[0:0]scale=1920x1080[a]; [1:0]scale=1920x1080[b]; [a][b]blend=all_mode=overlay:all_opacity=0.3" -c:v libx264 -an output.mp4 

FFMPEG는 이러한 매개 변수와 함께 작동합니다. 그러나 워터 마크가 뻗어 있었기 때문에 결과는 예상하지 못했습니다. 투명도가있는 비디오에 스트레칭하지 않고도 워터 마크를 다른 해상도로 혼합 할 수 있습니까?

다음은 테스트 파일입니다. (는 FFmpeg 버전 3.1.2) https://drive.google.com/open?id=0B2X3VLS01TogdHVJZ2I1ZC1GUUU https://drive.google.com/open?id=0B2X3VLS01TogbjhuZTlBOFFpN1k

+0

전에 LUT 필터를 사용하여, 나는 단지의 .PNG 편집 50 %로 감소 불투명도, .png로 다시 저장하여 사용했습니다. 큰 일을했습니다 –

답변

3

내 오버레이 워터 마크의 불투명도를 줄이기 위해, 다른 사람을 위해 오버레이

ffmpeg -y -i input.mp4 -i watermark.png -filter_complex 
      "[1]lut=a=val*0.3[a];[0][a]overlay=0:0" 
     -c:v libx264 -an output.mp4 
+0

고마워요. 이게 정말 도움이됩니다. – Archer