[FFmpeg-trac] #4980(undetermined:new): yuv444 conversion in 1080p video of x265 native format broken?
FFmpeg
trac at avcodec.org
Mon Nov 2 11:41:37 CET 2015
#4980: yuv444 conversion in 1080p video of x265 native format broken?
-------------------------------------+-------------------------------------
Reporter: psteinb | Type: defect
Status: new | Priority: normal
Component: | Version:
undetermined | unspecified
Keywords: x265 | Blocked By:
Blocking: | Reproduced by developer: 0
Analyzed by developer: 0 |
-------------------------------------+-------------------------------------
Summary of the bug:
Lossless roundtrips of 1080p yuv444 videos yields output video that does
not match the input.
This is a continuation from
https://bitbucket.org/multicoreware/x265/issues/197/yuv444p-lossless-
roundtrip-for-1080p
as the x265 devs don't think their app yields a problem. I post it here as
a bug report.
How to reproduce:
Use
http://ultravideo.cs.tut.fi/video/Jockey_1920x1080_30fps_420_8bit_AVC_MP4.mp4
as input video
{{{
$ ffmpeg -report -i Jockey_1920x1080_30fps_420_8bit_AVC_MP4.mp4 -pix_fmt
yuv444p Jockey_1920x1080_30fps_444_8bit_AVC_MP4.yuv
ffmpeg started on 2015-11-02 at 11:35:19
Report written to "ffmpeg-20151102-113519.log"
ffmpeg version n2.8 Copyright (c) 2000-2015 the FFmpeg developers
built with gcc 4.8.3 (GCC) 20140911 (Red Hat 4.8.3-9)
configuration: --prefix=/home/steinbac/software/ffmpeg/2.8-x265master
--enable-libx265 --enable-libx264 --enable-gpl --enable-shared
libavutil 54. 31.100 / 54. 31.100
libavcodec 56. 60.100 / 56. 60.100
libavformat 56. 40.101 / 56. 40.101
libavdevice 56. 4.100 / 56. 4.100
libavfilter 5. 40.101 / 5. 40.101
libswscale 3. 1.101 / 3. 1.101
libswresample 1. 2.101 / 1. 2.101
libpostproc 53. 3.100 / 53. 3.100
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from
'Jockey_1920x1080_30fps_420_8bit_AVC_MP4.mp4':
Metadata:
major_brand : isom
minor_version : 512
compatible_brands: isomiso2avc1mp41
encoder : Lavf55.9.100
Duration: 00:00:20.00, start: 0.000000, bitrate: 2961 kb/s
Stream #0:0(und): Video: h264 (High) (avc1 / 0x31637661), yuv420p,
1920x1080, 2959 kb/s, 30 fps, 30 tbr, 15360 tbn, 60 tbc (default)
Metadata:
handler_name : VideoHandler
File 'Jockey_1920x1080_30fps_444_8bit_AVC_MP4.yuv' already exists.
Overwrite ? [y/N] y
Output #0, rawvideo, to 'Jockey_1920x1080_30fps_444_8bit_AVC_MP4.yuv':
Metadata:
major_brand : isom
minor_version : 512
compatible_brands: isomiso2avc1mp41
encoder : Lavf56.40.101
Stream #0:0(und): Video: rawvideo (444P / 0x50343434), yuv444p,
1920x1080, q=2-31, 200 kb/s, 30 fps, 30 tbn, 30 tbc (default)
Metadata:
handler_name : VideoHandler
encoder : Lavc56.60.100 rawvideo
Stream mapping:
Stream #0:0 -> #0:0 (h264 (native) -> rawvideo (native))
Press [q] to stop, [?] for help
frame= 600 fps= 97 q=-0.0 Lsize= 3645000kB time=00:00:20.00
bitrate=1492992.0kbits/s
video:3645000kB audio:0kB subtitle:0kB other streams:0kB global
headers:0kB muxing overhead: 0.000000%
$ x265 --lossless --preset=ultrafast --input-depth 8 --input-res 1920x1080
--fps 30 --input-csp i444 Jockey_1920x1080_30fps_444_8bit_AVC_MP4.yuv
Jockey_1920x1080_30fps_444_8bit_AVC_MP4_lrt.hevc
yuv [info]: 1920x1080 fps 30000/1000 i444p8 frames 0 - 599 of 600
raw [info]: output file: Jockey_1920x1080_30fps_444_8bit_AVC_MP4_lrt.hevc
x265 [info]: HEVC encoder version 1.8+43-04575a459a16
x265 [info]: build info [Linux][GCC 4.8.3][64 bit] 8bit
x265 [info]: using cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.2 AVX AVX2
FMA3 LZCNT BMI2
x265 [info]: Main 4:4:4 profile, Level-8.5 (Main tier)
x265 [info]: Thread pool 0 using 16 threads on numa nodes 0,1
x265 [info]: frame threads / pool features : 5 / wpp(34 rows)
x265 [info]: Coding QT: max CU size, min CU size : 32 / 16
x265 [info]: Residual QT: max TU size, max depth : 32 / 1 inter / 1 intra
x265 [info]: ME / range / subpel / merge : dia / 57 / 0 / 2
x265 [info]: Keyframe min / max / scenecut : 25 / 250 / 0
x265 [info]: Cb/Cr QP Offset : 6 / 6
x265 [info]: Lookahead / bframes / badapt : 5 / 3 / 0
x265 [info]: b-pyramid / weightp / weightb : 1 / 0 / 0
x265 [info]: References / ref-limit cu / depth : 1 / 0 / 0
x265 [info]: Rate Control : Lossless
x265 [info]: tools: rd=2 psy-rd=0.30 early-skip tmvp fast-intra
x265 [info]: tools: strong-intra-smoothing deblock
x265 [info]: frame I: 3, Avg QP:4.00 kb/s: 349666.56
x265 [info]: frame P: 149, Avg QP:4.00 kb/s: 339413.76
x265 [info]: frame B: 448, Avg QP:4.00 kb/s: 220238.56
x265 [info]: consecutive B-frames: 0.7% 1.3% 0.7% 97.4%
x265 [info]: lossless compression ratio 1.99::1
encoded 600 frames in 29.57s (20.29 fps), 250480.88 kb/s, Avg QP:4.00
$ ffmpeg -report -i Jockey_1920x1080_30fps_444_8bit_AVC_MP4_lrt.hevc
-pix_fmt yuv444p Jockey_1920x1080_30fps_444_8bit_AVC_MP4_lrt.yuv
$ md5sum Jockey_1920x1080_30fps_444*yuv
bc55e7201dc65f6cc542dabd4dc50ba9
Jockey_1920x1080_30fps_444_8bit_AVC_MP4_lrt.yuv
a5218f68414d8956e6e69bdb48301228
Jockey_1920x1080_30fps_444_8bit_AVC_MP4.yuv
}}}
--
Ticket URL: <https://trac.ffmpeg.org/ticket/4980>
FFmpeg <https://ffmpeg.org>
FFmpeg issue tracker
More information about the FFmpeg-trac
mailing list