[FFmpeg-trac] #6524(undetermined:new): Video filter with relative scaling produces invalid resolutions (not divisible by 2)
FFmpeg
trac at avcodec.org
Fri Jul 14 11:28:02 EEST 2017
#6524: Video filter with relative scaling produces invalid resolutions (not
divisible by 2)
-------------------------------------+-------------------------------------
Reporter: monty | Type: defect
Status: new | Priority: normal
Component: | Version:
undetermined | unspecified
Keywords: | Blocked By:
Blocking: | Reproduced by developer: 0
Analyzed by developer: 0 |
-------------------------------------+-------------------------------------
Tested with ffmpeg-3.3.2-win64-static (and some older versions like in the
error log)
When trying to rescale .mp4 videos with relative size it prodcues invalid
result resolutions which are not divisible by 2.
Input: test_video.mp4 (1280x768, 18 seconds duration)
FFmpeg command line:
ffmpeg -ss 00:09 -i test_video.mp4 -vframes 1 -q:v 2 -vf
scale="'if(lt(a,512/288),512,-1)':'if(lt(a,512/288),-1,288)'"
test_preview.mp4 -y
It should rescale all videos fitting into a box of 512x288
It fails with the following error output:
ffmpeg version N-82324-g872b358 Copyright (c) 2000-2016 the FFmpeg
developers
built with gcc 5.4.0 (GCC)
configuration: --enable-gpl --enable-version3 --disable-w32threads
--enable-dxva2 --enable-libmfx --enable-nvenc --enable-avisynth --enable-
bzlib --enable-libebur128 --enable-fontconfig --enable-frei0r --enable-
gnutls --enable-iconv --enable-libass --enable-libbluray --enable-libbs2b
--enable-libcaca --enable-libfreetype --enable-libgme --enable-libgsm
--enable-libilbc --enable-libmodplug --enable-libmp3lame --enable-
libopencore-amrnb --enable-libopencore-amrwb --enable-libopenh264
--enable-libopenjpeg --enable-libopus --enable-librtmp --enable-
libschroedinger --enable-libsnappy --enable-libsoxr --enable-libspeex
--enable-libtheora --enable-libtwolame --enable-libvidstab --enable-libvo-
amrwbenc --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-
libwebp --enable-libx264 --enable-libx265 --enable-libxavs --enable-
libxvid --enable-libzimg --enable-lzma --enable-decklink --enable-zlib
libavutil 55. 36.100 / 55. 36.100
libavcodec 57. 66.101 / 57. 66.101
libavformat 57. 57.100 / 57. 57.100
libavdevice 57. 2.100 / 57. 2.100
libavfilter 6. 66.100 / 6. 66.100
libswscale 4. 3.100 / 4. 3.100
libswresample 2. 4.100 / 2. 4.100
libpostproc 54. 2.100 / 54. 2.100
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'C:\data\test_video.mp4':
Metadata:
major_brand : mp42
minor_version : 0
compatible_brands: mp42mp41
creation_time : 2013-12-17T09:58:56.000000Z
Duration: 00:00:18.01, start: 0.000000, bitrate: 4962 kb/s
Stream #0:0(eng): Video: h264 (Main) (avc1 / 0x31637661), yuv420p(tv),
1280x768 [SAR 1:1 DAR 5:3], 4830 kb/s, 25 fps, 25 tbr, 25k tbn, 50 tbc
(default)
Metadata:
creation_time : 2013-12-17T09:58:56.000000Z
handler_name : Mainconcept MP4 Video Media Handler
encoder : AVC Coding
Stream #0:1(eng): Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz,
stereo, fltp, 125 kb/s (default)
Metadata:
creation_time : 2013-12-17T09:58:56.000000Z
handler_name : Mainconcept MP4 Sound Media Handler
[libx264 @ 00000000006c9f60] -qscale is ignored, -crf is recommended.
[libx264 @ 00000000006c9f60] height not divisible by 2 (512x307)
Stream mapping:
Stream #0:0 -> #0:0 (h264 (native) -> h264 (libx264))
Stream #0:1 -> #0:1 (aac (native) -> aac (native))
Error while opening encoder for output stream #0:0 - maybe incorrect
parameters such as bit_rate, rate, width or height
Shouldn't the realtive scaling (-1) automatically ensure that the target
resolution is valid (divisible by 2)?.
--
Ticket URL: <https://trac.ffmpeg.org/ticket/6524>
FFmpeg <https://ffmpeg.org>
FFmpeg issue tracker
More information about the FFmpeg-trac
mailing list