#8937 closed defect (invalid)
Incorrect color when decoding h264 file
Reported by: | iss | Owned by: | |
---|---|---|---|
Priority: | normal | Component: | undetermined |
Version: | unspecified | Keywords: | |
Cc: | Blocked By: | ||
Blocking: | Reproduced by developer: | no | |
Analyzed by developer: | no |
Description
Summary of the bug:
When converting attached file, colors are different to what I see when I play it with ffplay. Ffplay displays correct colors.
This has been reported to us as a bug, but I don't see any obvious issue in our code and I get same result when converting to png file. So I figured this could be ffmpeg bug.
How to reproduce:
% ffmpeg -i incorrect_color_h264.mp4 -frames 1 out.png % ffplay incorrect_color_h264.mp4
Full console output:
$ ./ffmpeg.exe -v 9 -loglevel 99 -i incorrect_color_h264.mp4 -frames 0 out.png ffmpeg version N-99577-g2b5e18a953 Copyright (c) 2000-2020 the FFmpeg developers built with gcc 9.3-win32 (GCC) 20200320 configuration: --prefix=/ffbuild/prefix --pkg-config-flags=--static --pkg-config=pkg-config --cross-prefix=x86_64-w64-mingw32- --arch=x86_64 --target-os=mingw32 --enable-gpl --enable-version3 --disable-debug --enable-iconv --enable-zlib --enable-libxml2 --enable-libfreetype --enable-libfribidi --enable-gmp --enable-lzma --enable-fontconfig --enable-opencl --enable-libvmaf --enable-vulkan --enable-libvorbis --enable-amf --enable-libaom --enable-avisynth --enable-libdav1d --enable-libdavs2 --enable-ffnvcodec --enable-cuda-llvm --enable-libglslang --enable-libass --enable-libbluray --enable-libmp3lame --enable-libopus --enable-libtheora --enable-libvpx --enable-libwebp --enable-libmfx --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-librav1e --enable-schannel --enable-sdl2 --enable-libsoxr --enable-libsrt --enable-libsvtav1 --enable-libtwolame --enable-libuavs3d --enable-libvidstab --enable-libx264 --enable-libx265 --enable-libxavs2 --enable-libxvid --enable-libzimg --extra-cflags=-DLIBTWOLAME_STATIC --extra-cxxflags= --extra-ldflags=-pthread --extra-libs=-lgomp libavutil 56. 60.100 / 56. 60.100 libavcodec 58.111.101 / 58.111.101 libavformat 58. 62.100 / 58. 62.100 libavdevice 58. 11.102 / 58. 11.102 libavfilter 7. 87.100 / 7. 87.100 libswscale 5. 8.100 / 5. 8.100 libswresample 3. 8.100 / 3. 8.100 libpostproc 55. 8.100 / 55. 8.100 Splitting the commandline. Reading option '-v' ... matched as option 'v' (set logging level) with argument '9'. Reading option '-loglevel' ... matched as option 'loglevel' (set logging level) with argument '99'. Reading option '-i' ... matched as input url with argument 'incorrect_color_h264.mp4'. Reading option '-frames' ... matched as option 'frames' (set the number of frames to output) with argument '0'. Reading option 'out.png' ... matched as output url. Finished splitting the commandline. Parsing a group of options: global . Applying option v (set logging level) with argument 9. Successfully parsed a group of options. Parsing a group of options: input url incorrect_color_h264.mp4. Successfully parsed a group of options. Opening an input file: incorrect_color_h264.mp4. [NULL @ 0000020c2dcb4cc0] Opening 'incorrect_color_h264.mp4' for reading [file @ 0000020c2dcb60c0] Setting default whitelist 'file,crypto,data' Probing mov,mp4,m4a,3gp,3g2,mj2 score:100 size:2048 Probing mp3 score:1 size:2048 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] Format mov,mp4,m4a,3gp,3g2,mj2 probed with size=2048 and score=100 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] type:'ftyp' parent:'root' sz: 24 8 259628 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] ISO: File Type Major Brand: mp42 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] type:'uuid' parent:'root' sz: 40 32 259628 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] type:'mdat' parent:'root' sz: 258018 72 259628 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] type:'moov' parent:'root' sz: 1546 258090 259628 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] type:'mvhd' parent:'moov' sz: 108 8 1538 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] time scale = 30000 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] type:'trak' parent:'moov' sz: 1361 116 1538 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] type:'tkhd' parent:'trak' sz: 92 8 1353 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] type:'mdia' parent:'trak' sz: 1261 100 1353 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] type:'mdhd' parent:'mdia' sz: 32 8 1253 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] type:'hdlr' parent:'mdia' sz: 45 40 1253 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] ctype=[0][0][0][0] [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] stype=vide [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] type:'minf' parent:'mdia' sz: 1176 85 1253 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] type:'vmhd' parent:'minf' sz: 20 8 1168 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] type:'dinf' parent:'minf' sz: 36 28 1168 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] type:'dref' parent:'dinf' sz: 28 8 28 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] Unknown dref type 0x206c7275 size 12 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] type:'stbl' parent:'minf' sz: 1112 64 1168 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] type:'stsd' parent:'stbl' sz: 152 8 1104 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] size=136 4CC=avc1 codec_type=0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] type:'avcC' parent:'stsd' sz: 50 8 50 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] type:'stts' parent:'stbl' sz: 24 160 1104 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] track[0].stts.entries = 1 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] sample_count=204, sample_duration=1000 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] type:'stsc' parent:'stbl' sz: 28 184 1104 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] track[0].stsc.entries = 1 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] type:'stsz' parent:'stbl' sz: 836 212 1104 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] sample_size = 0 sample_count = 204 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] type:'stco' parent:'stbl' sz: 20 1048 1104 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] type:'stss' parent:'stbl' sz: 44 1068 1104 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] keyframe_count = 7 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 0, offset 50, dts 0, size 11106, distance 0, keyframe 1 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 1, offset 2bb2, dts 1000, size 240, distance 1, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 2, offset 2ca2, dts 2000, size 31, distance 2, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 3, offset 2cc1, dts 3000, size 18, distance 3, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 4, offset 2cd3, dts 4000, size 18, distance 4, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 5, offset 2ce5, dts 5000, size 18, distance 5, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 6, offset 2cf7, dts 6000, size 18, distance 6, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 7, offset 2d09, dts 7000, size 18, distance 7, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 8, offset 2d1b, dts 8000, size 18, distance 8, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 9, offset 2d2d, dts 9000, size 2490, distance 9, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 10, offset 36e7, dts 10000, size 10096, distance 10, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 11, offset 5e57, dts 11000, size 5609, distance 11, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 12, offset 7440, dts 12000, size 8154, distance 12, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 13, offset 941a, dts 13000, size 13015, distance 13, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 14, offset c6f1, dts 14000, size 1446, distance 14, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 15, offset cc97, dts 15000, size 1193, distance 15, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 16, offset d140, dts 16000, size 1193, distance 16, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 17, offset d5e9, dts 17000, size 1193, distance 17, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 18, offset da92, dts 18000, size 1193, distance 18, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 19, offset df3b, dts 19000, size 1193, distance 19, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 20, offset e3e4, dts 20000, size 1193, distance 20, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 21, offset e88d, dts 21000, size 1193, distance 21, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 22, offset ed36, dts 22000, size 1193, distance 22, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 23, offset f1df, dts 23000, size 1193, distance 23, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 24, offset f688, dts 24000, size 1193, distance 24, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 25, offset fb31, dts 25000, size 1193, distance 25, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 26, offset ffda, dts 26000, size 1193, distance 26, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 27, offset 10483, dts 27000, size 1193, distance 27, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 28, offset 1092c, dts 28000, size 1193, distance 28, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 29, offset 10dd5, dts 29000, size 1193, distance 29, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 30, offset 1127e, dts 30000, size 15553, distance 0, keyframe 1 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 31, offset 14f3f, dts 31000, size 1142, distance 1, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 32, offset 153b5, dts 32000, size 541, distance 2, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 33, offset 155d2, dts 33000, size 541, distance 3, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 34, offset 157ef, dts 34000, size 541, distance 4, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 35, offset 15a0c, dts 35000, size 541, distance 5, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 36, offset 15c29, dts 36000, size 541, distance 6, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 37, offset 15e46, dts 37000, size 541, distance 7, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 38, offset 16063, dts 38000, size 541, distance 8, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 39, offset 16280, dts 39000, size 541, distance 9, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 40, offset 1649d, dts 40000, size 541, distance 10, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 41, offset 166ba, dts 41000, size 541, distance 11, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 42, offset 168d7, dts 42000, size 541, distance 12, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 43, offset 16af4, dts 43000, size 541, distance 13, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 44, offset 16d11, dts 44000, size 541, distance 14, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 45, offset 16f2e, dts 45000, size 541, distance 15, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 46, offset 1714b, dts 46000, size 541, distance 16, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 47, offset 17368, dts 47000, size 541, distance 17, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 48, offset 17585, dts 48000, size 541, distance 18, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 49, offset 177a2, dts 49000, size 541, distance 19, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 50, offset 179bf, dts 50000, size 541, distance 20, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 51, offset 17bdc, dts 51000, size 541, distance 21, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 52, offset 17df9, dts 52000, size 541, distance 22, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 53, offset 18016, dts 53000, size 541, distance 23, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 54, offset 18233, dts 54000, size 541, distance 24, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 55, offset 18450, dts 55000, size 541, distance 25, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 56, offset 1866d, dts 56000, size 541, distance 26, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 57, offset 1888a, dts 57000, size 541, distance 27, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 58, offset 18aa7, dts 58000, size 541, distance 28, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 59, offset 18cc4, dts 59000, size 541, distance 29, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 60, offset 18ee1, dts 60000, size 15553, distance 0, keyframe 1 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 61, offset 1cba2, dts 61000, size 1142, distance 1, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 62, offset 1d018, dts 62000, size 541, distance 2, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 63, offset 1d235, dts 63000, size 541, distance 3, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 64, offset 1d452, dts 64000, size 541, distance 4, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 65, offset 1d66f, dts 65000, size 541, distance 5, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 66, offset 1d88c, dts 66000, size 541, distance 6, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 67, offset 1daa9, dts 67000, size 541, distance 7, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 68, offset 1dcc6, dts 68000, size 541, distance 8, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 69, offset 1dee3, dts 69000, size 541, distance 9, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 70, offset 1e100, dts 70000, size 541, distance 10, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 71, offset 1e31d, dts 71000, size 541, distance 11, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 72, offset 1e53a, dts 72000, size 541, distance 12, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 73, offset 1e757, dts 73000, size 541, distance 13, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 74, offset 1e974, dts 74000, size 541, distance 14, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 75, offset 1eb91, dts 75000, size 541, distance 15, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 76, offset 1edae, dts 76000, size 541, distance 16, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 77, offset 1efcb, dts 77000, size 541, distance 17, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 78, offset 1f1e8, dts 78000, size 541, distance 18, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 79, offset 1f405, dts 79000, size 541, distance 19, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 80, offset 1f622, dts 80000, size 541, distance 20, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 81, offset 1f83f, dts 81000, size 541, distance 21, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 82, offset 1fa5c, dts 82000, size 541, distance 22, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 83, offset 1fc79, dts 83000, size 541, distance 23, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 84, offset 1fe96, dts 84000, size 541, distance 24, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 85, offset 200b3, dts 85000, size 541, distance 25, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 86, offset 202d0, dts 86000, size 541, distance 26, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 87, offset 204ed, dts 87000, size 541, distance 27, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 88, offset 2070a, dts 88000, size 541, distance 28, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 89, offset 20927, dts 89000, size 541, distance 29, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 90, offset 20b44, dts 90000, size 15553, distance 0, keyframe 1 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 91, offset 24805, dts 91000, size 1142, distance 1, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 92, offset 24c7b, dts 92000, size 541, distance 2, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 93, offset 24e98, dts 93000, size 541, distance 3, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 94, offset 250b5, dts 94000, size 541, distance 4, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 95, offset 252d2, dts 95000, size 541, distance 5, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 96, offset 254ef, dts 96000, size 541, distance 6, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 97, offset 2570c, dts 97000, size 541, distance 7, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 98, offset 25929, dts 98000, size 541, distance 8, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 99, offset 25b46, dts 99000, size 541, distance 9, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 100, offset 25d63, dts 100000, size 541, distance 10, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 101, offset 25f80, dts 101000, size 541, distance 11, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 102, offset 2619d, dts 102000, size 541, distance 12, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 103, offset 263ba, dts 103000, size 541, distance 13, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 104, offset 265d7, dts 104000, size 541, distance 14, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 105, offset 267f4, dts 105000, size 541, distance 15, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 106, offset 26a11, dts 106000, size 541, distance 16, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 107, offset 26c2e, dts 107000, size 541, distance 17, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 108, offset 26e4b, dts 108000, size 541, distance 18, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 109, offset 27068, dts 109000, size 541, distance 19, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 110, offset 27285, dts 110000, size 541, distance 20, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 111, offset 274a2, dts 111000, size 541, distance 21, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 112, offset 276bf, dts 112000, size 541, distance 22, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 113, offset 278dc, dts 113000, size 541, distance 23, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 114, offset 27af9, dts 114000, size 541, distance 24, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 115, offset 27d16, dts 115000, size 541, distance 25, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 116, offset 27f33, dts 116000, size 541, distance 26, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 117, offset 28150, dts 117000, size 541, distance 27, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 118, offset 2836d, dts 118000, size 541, distance 28, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 119, offset 2858a, dts 119000, size 541, distance 29, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 120, offset 287a7, dts 120000, size 15553, distance 0, keyframe 1 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 121, offset 2c468, dts 121000, size 1142, distance 1, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 122, offset 2c8de, dts 122000, size 541, distance 2, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 123, offset 2cafb, dts 123000, size 541, distance 3, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 124, offset 2cd18, dts 124000, size 541, distance 4, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 125, offset 2cf35, dts 125000, size 541, distance 5, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 126, offset 2d152, dts 126000, size 541, distance 6, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 127, offset 2d36f, dts 127000, size 541, distance 7, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 128, offset 2d58c, dts 128000, size 541, distance 8, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 129, offset 2d7a9, dts 129000, size 541, distance 9, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 130, offset 2d9c6, dts 130000, size 541, distance 10, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 131, offset 2dbe3, dts 131000, size 541, distance 11, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 132, offset 2de00, dts 132000, size 541, distance 12, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 133, offset 2e01d, dts 133000, size 541, distance 13, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 134, offset 2e23a, dts 134000, size 541, distance 14, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 135, offset 2e457, dts 135000, size 541, distance 15, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 136, offset 2e674, dts 136000, size 541, distance 16, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 137, offset 2e891, dts 137000, size 541, distance 17, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 138, offset 2eaae, dts 138000, size 541, distance 18, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 139, offset 2eccb, dts 139000, size 541, distance 19, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 140, offset 2eee8, dts 140000, size 541, distance 20, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 141, offset 2f105, dts 141000, size 541, distance 21, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 142, offset 2f322, dts 142000, size 541, distance 22, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 143, offset 2f53f, dts 143000, size 541, distance 23, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 144, offset 2f75c, dts 144000, size 541, distance 24, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 145, offset 2f979, dts 145000, size 541, distance 25, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 146, offset 2fb96, dts 146000, size 541, distance 26, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 147, offset 2fdb3, dts 147000, size 541, distance 27, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 148, offset 2ffd0, dts 148000, size 541, distance 28, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 149, offset 301ed, dts 149000, size 541, distance 29, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 150, offset 3040a, dts 150000, size 15553, distance 0, keyframe 1 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 151, offset 340cb, dts 151000, size 1142, distance 1, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 152, offset 34541, dts 152000, size 541, distance 2, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 153, offset 3475e, dts 153000, size 541, distance 3, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 154, offset 3497b, dts 154000, size 541, distance 4, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 155, offset 34b98, dts 155000, size 541, distance 5, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 156, offset 34db5, dts 156000, size 541, distance 6, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 157, offset 34fd2, dts 157000, size 541, distance 7, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 158, offset 351ef, dts 158000, size 541, distance 8, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 159, offset 3540c, dts 159000, size 541, distance 9, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 160, offset 35629, dts 160000, size 541, distance 10, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 161, offset 35846, dts 161000, size 541, distance 11, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 162, offset 35a63, dts 162000, size 541, distance 12, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 163, offset 35c80, dts 163000, size 541, distance 13, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 164, offset 35e9d, dts 164000, size 541, distance 14, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 165, offset 360ba, dts 165000, size 541, distance 15, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 166, offset 362d7, dts 166000, size 541, distance 16, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 167, offset 364f4, dts 167000, size 541, distance 17, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 168, offset 36711, dts 168000, size 541, distance 18, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 169, offset 3692e, dts 169000, size 541, distance 19, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 170, offset 36b4b, dts 170000, size 541, distance 20, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 171, offset 36d68, dts 171000, size 541, distance 21, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 172, offset 36f85, dts 172000, size 541, distance 22, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 173, offset 371a2, dts 173000, size 541, distance 23, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 174, offset 373bf, dts 174000, size 541, distance 24, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 175, offset 375dc, dts 175000, size 541, distance 25, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 176, offset 377f9, dts 176000, size 541, distance 26, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 177, offset 37a16, dts 177000, size 541, distance 27, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 178, offset 37c33, dts 178000, size 541, distance 28, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 179, offset 37e50, dts 179000, size 541, distance 29, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 180, offset 3806d, dts 180000, size 15553, distance 0, keyframe 1 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 181, offset 3bd2e, dts 181000, size 1142, distance 1, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 182, offset 3c1a4, dts 182000, size 541, distance 2, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 183, offset 3c3c1, dts 183000, size 541, distance 3, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 184, offset 3c5de, dts 184000, size 541, distance 4, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 185, offset 3c7fb, dts 185000, size 541, distance 5, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 186, offset 3ca18, dts 186000, size 541, distance 6, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 187, offset 3cc35, dts 187000, size 541, distance 7, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 188, offset 3ce52, dts 188000, size 541, distance 8, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 189, offset 3d06f, dts 189000, size 541, distance 9, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 190, offset 3d28c, dts 190000, size 541, distance 10, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 191, offset 3d4a9, dts 191000, size 541, distance 11, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 192, offset 3d6c6, dts 192000, size 541, distance 12, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 193, offset 3d8e3, dts 193000, size 541, distance 13, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 194, offset 3db00, dts 194000, size 541, distance 14, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 195, offset 3dd1d, dts 195000, size 541, distance 15, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 196, offset 3df3a, dts 196000, size 541, distance 16, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 197, offset 3e157, dts 197000, size 541, distance 17, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 198, offset 3e374, dts 198000, size 541, distance 18, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 199, offset 3e591, dts 199000, size 541, distance 19, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 200, offset 3e7ae, dts 200000, size 541, distance 20, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 201, offset 3e9cb, dts 201000, size 541, distance 21, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 202, offset 3ebe8, dts 202000, size 541, distance 22, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] AVIndex stream 0, sample 203, offset 3ee05, dts 203000, size 541, distance 23, keyframe 0 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] type:'udta' parent:'moov' sz: 69 1477 1538 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] type:'meta' parent:'udta' sz: 53 8 61 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] type:'hdlr' parent:'meta' sz: 33 8 41 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] ctype=[0][0][0][0] [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] stype=mdir [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] type:'ilst' parent:'meta' sz: 8 41 41 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] type:'Xtra' parent:'udta' sz: 8 61 61 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] on_parse_exit_offset=259628 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] Before avformat_find_stream_info() pos: 259628 bytes read:34314 seeks:1 nb_streams:1 [h264 @ 0000020c2dcc7280] nal_unit_type: 7(SPS), nal_ref_idc: 3 [h264 @ 0000020c2dcc7280] nal_unit_type: 8(PPS), nal_ref_idc: 3 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] stream 0, sample 0, dts 0 [h264 @ 0000020c2dcc7280] nal_unit_type: 9(AUD), nal_ref_idc: 0 [h264 @ 0000020c2dcc7280] nal_unit_type: 6(SEI), nal_ref_idc: 0 Last message repeated 1 times [h264 @ 0000020c2dcc7280] nal_unit_type: 5(IDR), nal_ref_idc: 3 [h264 @ 0000020c2dcc7280] Format yuv420p chosen by get_format(). [h264 @ 0000020c2dcc7280] Reinit context to 1920x1088, pix_fmt: yuv420p [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] All info found [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] stream 0: start_time: 0 duration: 6.8 [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] format: start_time: 0 duration: 6.8 (estimate from stream) bitrate=305 kb/s [mov,mp4,m4a,3gp,3g2,mj2 @ 0000020c2dcb4cc0] After avformat_find_stream_info() pos: 11186 bytes read:67082 seeks:2 frames:1 Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'incorrect_color_h264.mp4': Metadata: major_brand : mp42 minor_version : 0 compatible_brands: mp41isom creation_time : 2020-09-28T23:10:48.000000Z Duration: 00:00:06.80, start: 0.000000, bitrate: 305 kb/s Stream #0:0(und), 1, 1/30000: Video: h264 (Constrained Baseline), 1 reference frame (avc1 / 0x31637661), yuv420p(left), 1920x1080 (1920x1088) [SAR 1:1 DAR 16:9], 0/1, 303 kb/s, 30 fps, 30 tbr, 30k tbn, 60 tbc (default) Metadata: creation_time : 2020-09-28T23:10:48.000000Z handler_name : VideoHandler encoder : AVC Coding Successfully opened the file. Parsing a group of options: output url out.png. Applying option frames (set the number of frames to output) with argument 0. Successfully parsed a group of options. Opening an output file: out.png. Successfully opened the file. detected 16 logical cores [h264 @ 0000020c2dcbdcc0] nal_unit_type: 7(SPS), nal_ref_idc: 3 [h264 @ 0000020c2dcbdcc0] nal_unit_type: 8(PPS), nal_ref_idc: 3 Stream mapping: Stream #0:0 -> #0:0 (h264 (native) -> png (native)) Press [q] to stop, [?] for help No more output streams to write to, finishing. Finishing stream 0:0 without any data written to it. [graph 0 input from stream 0:0 @ 0000020c2dce0cc0] Setting 'video_size' to value '1920x1080' [graph 0 input from stream 0:0 @ 0000020c2dce0cc0] Setting 'pix_fmt' to value '0' [graph 0 input from stream 0:0 @ 0000020c2dce0cc0] Setting 'time_base' to value '1/30000' [graph 0 input from stream 0:0 @ 0000020c2dce0cc0] Setting 'pixel_aspect' to value '1/1' [graph 0 input from stream 0:0 @ 0000020c2dce0cc0] Setting 'frame_rate' to value '30/1' [graph 0 input from stream 0:0 @ 0000020c2dce0cc0] w:1920 h:1080 pixfmt:yuv420p tb:1/30000 fr:30/1 sar:1/1 [format @ 0000020c2e52f480] Setting 'pix_fmts' to value 'rgb24|rgba|rgb48be|rgba64be|pal8|gray|ya8|gray16be|ya16be|monob' [auto_scaler_0 @ 0000020c2dd8e8c0] Setting 'flags' to value 'bicubic' [auto_scaler_0 @ 0000020c2dd8e8c0] w:iw h:ih flags:'bicubic' interl:0 [format @ 0000020c2e52f480] auto-inserting filter 'auto_scaler_0' between the filter 'Parsed_null_0' and the filter 'format' [AVFilterGraph @ 0000020c2dcbe280] query_formats: 4 queried, 2 merged, 1 already done, 0 delayed [auto_scaler_0 @ 0000020c2dd8e8c0] picking rgb24 out of 10 ref:yuv420p alpha:0 [auto_scaler_0 @ 0000020c2dd8e8c0] w:1920 h:1080 fmt:yuv420p sar:1/1 -> w:1920 h:1080 fmt:rgb24 sar:1/1 flags:0x4 Output #0, image2, to 'out.png': Metadata: major_brand : mp42 minor_version : 0 compatible_brands: mp41isom encoder : Lavf58.62.100 Stream #0:0(und), 0, 1/30: Video: png, 1 reference frame, rgb24(left), 1920x1080 [SAR 1:1 DAR 16:9], 0/1, q=2-31, 200 kb/s, 30 fps, 30 tbn, 30 tbc (default) Metadata: creation_time : 2020-09-28T23:10:48.000000Z handler_name : VideoHandler encoder : Lavc58.111.101 png frame= 0 fps=0.0 q=0.0 Lsize=N/A time=00:00:00.00 bitrate=N/A speed= 0x video:0kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: unknown Input file #0 (incorrect_color_h264.mp4): Input stream #0:0 (video): 0 packets read (0 bytes); 0 frames decoded; Total: 0 packets (0 bytes) demuxed Output file #0 (out.png): Output stream #0:0 (video): 0 frames encoded; 0 packets muxed (0 bytes); Total: 0 packets (0 bytes) muxed Output file is empty, nothing was encoded (check -ss / -t / -frames parameters if used) 0 frames successfully decoded, 0 decoding errors [AVIOContext @ 0000020c2dcbe340] Statistics: 67082 bytes read, 2 seeks
Attachments (3)
Change History (14)
by , 4 years ago
Attachment: | incorrect_color_h264.mp4 added |
---|
follow-up: 2 comment:1 by , 4 years ago
It appears to me that ffplay
shows wrong colours but ffmpeg
creates a correct output: Why do you think the expected_result.png
file is correct / how did you produce it?
comment:2 by , 4 years ago
Replying to cehoyos:
It appears to me that
ffplay
shows wrong colours butffmpeg
creates a correct output: Why do you think theexpected_result.png
file is correct / how did you produce it?
I think that expected result is correct, because it shows correct in most players I tested (web browser, VLC, ffplay, even windows thumbnail looks like expected_result.png
)
Unfortunately I can't tell how the file was created, it was provided as sample for bug report - see https://developer.blender.org/T81307
Perhaps not quite useful information is, that I have converted pFrame
buffer data to RGB (I did this manually for 2 pixels) and the darker color was different to either of those results. There is good chance I did not do this correctly though, I am not used to other pixel formats than our RGBA.
This was my sample for darker pixel:
pFrame->data[0][100] pFrame->data[1][100] pFrame->data[2][100]
And lighter pixel:
pFrame->data[0][0] pFrame->data[1][0] pFrame->data[2][0]
I used this util to convert values https://www.mikekohn.net/file_formats/yuv_rgb_converter.php
comment:3 by , 4 years ago
web browser, VLC, ffplay,
This is not true. thumbnail is actually actual_result.png.
follow-up: 5 comment:4 by , 4 years ago
We've recorded the pattern video with OBS Studio (recording program) from our display.
This was our first post.
https://blenderartists.org/t/big-color-problem-with-video-editing/
This was our second post.
https://developer.blender.org/T81307
We've contacted four days ago Prof. Dr.-Ing. Jörn Ostermann at https://www.mpegstandards.org for this color problem. Unfortunately couldn't help much.
comment:5 by , 4 years ago
Replying to 3DLight:
We've recorded the pattern video with OBS Studio (recording program) from our display.
But you don't have a YUV420 display, do you?
Note that all information has to be posted here in the ticket (except for large sample files), please do not use other external resources.
From a quick look, the attached file does not contain the necessary information to decide how it should be displayed: Given that you apparently control the input file, why don't you add the missing information when creating the file?
follow-up: 7 comment:6 by , 4 years ago
Do you mean color format with YUV420 display?
Our Display:
Bit depth: 8-bit
Color format: RGB
Color space: Standard dynamic range (SDR)
Here is another user who tested this:
https://blenderartists.org/t/big-color-problem-with-video-editing/1255975/7
Quote: "It’s like the color management of video files (mp4 files at least) is broken."
comment:7 by , 4 years ago
Replying to 3DLight:
Color format: RGB
Then why are you recording in yuv420?
Please run ffmpeg -i
on any mp4 file you find and compare with the attached input file: You will see that most files contain information about the colourspace that is missing from the file you created.
follow-up: 9 comment:8 by , 4 years ago
We don't know why it's missing. We don't have that know-how for this.
comment:9 by , 4 years ago
Replying to 3DLight:
We don't know why it's missing. We don't have that know-how for this.
read this https://trac.ffmpeg.org/wiki/colorspace
comment:10 by , 4 years ago
Resolution: | → invalid |
---|---|
Status: | new → closed |
Well, because it is 1920x1080, it is automatically promoted to BT.709 and limited range. But not in ffmpeg.
So, use ffmpeg -i incorrect_color_h264.mp4 -c copy -colorspace bt709 -color_primaries bt709 -color_trc bt709 out.mp4 to set all the stuff and then when you will do out.png it will be good.
comment:11 by , 4 years ago
Thanks for looking into this and sorry for wasting your time. Next time I will try to do more research, but I was out of ideas this time.
Sample media