Andrew, I am still testing the interlace_aspect_autodetect-11.patch (or 12, now I can not remember). I got 1 crash but I can not reproduce it yet so maybe it was there before the patch anyway. Do not waste time looking at the patch until I can confirm or deny. Thanks, Phyllis ********************************************************************** Thread 622 "ci" received signal SIGSEGV, Segmentation fault. [Switching to Thread 0x7ffd71fc3700 (LWP 25673)] 0x0000000000b116c3 in FFMPEG::ff_video_mpeg_color_range (this=0x7ffe90006340, stream=1) at ffmpeg.C:3612 3612 return ffvideo[stream]->st->codecpar->color_range == AVCOL_RANGE_MPEG ? 1 : 0; Missing separate debuginfos, use: dnf debuginfo-install OpenEXR-libs-2.3.0-5.fc32.x86_64 alsa-lib-1.2.3.2-1.fc32.x86_64 bzip2-libs-1.0.8-2.fc32.x86_64 dbus-libs-1.12.20-1.fc32.x86_64 elfutils-libelf-0.181-1.fc32.x86_64 expat-2.2.8-2.fc32.x86_64 flac-libs-1.3.3-2.fc32.x86_64 fontconfig-2.13.92-9.fc32.x86_64 freetype-2.10.2-1.fc32.x86_64 gsm-1.0.18-6.fc32.x86_64 ilmbase-2.3.0-4.fc32.x86_64 jbigkit-libs-2.1-18.fc32.x86_64 libICE-1.0.10-3.fc32.x86_64 libSM-1.2.3-5.fc32.x86_64 libX11-1.6.12-1.fc32.x86_64 libX11-xcb-1.6.12-1.fc32.x86_64 libXau-1.0.9-3.fc32.x86_64 libXcursor-1.2.0-2.fc32.x86_64 libXdamage-1.1.5-2.fc32.x86_64 libXext-1.3.4-3.fc32.x86_64 libXfixes-5.0.3-11.fc32.x86_64 libXft-2.3.3-3.fc32.x86_64 libXi-1.7.10-3.fc32.x86_64 libXinerama-1.1.4-5.fc32.x86_64 libXrender-0.9.10-11.fc32.x86_64 libXtst-1.2.3-11.fc32.x86_64 libXv-1.0.11-11.fc32.x86_64 libXxf86vm-1.1.4-13.fc32.x86_64 libasyncns-0.8-18.fc32.x86_64 libdrm-2.4.102-1.fc32.x86_64 libedit-3.1-32.20191231cvs.fc32.x86_64 libffi-3.1-24.fc32.x86_64 libgcc-10.2.1-1.fc32.x86_64 libgcrypt-1.8.5-3.fc32.x86_64 libglvnd-1.3.2-1.fc32.x86_64 libglvnd-glx-1.3.2-1.fc32.x86_64 libgpg-error-1.36-3.fc32.x86_64 libpng-1.6.37-3.fc32.x86_64 libsndfile-1.0.28-12.fc32.x86_64 libstdc++-10.2.1-1.fc32.x86_64 libusbx-1.0.23-1.fc32.x86_64 libuuid-2.35.2-1.fc32.x86_64 libvdpau-1.4-2.fc32.x86_64 libxcb-1.13.1-4.fc32.x86_64 llvm-libs-10.0.1-4.fc32.x86_64 lz4-libs-1.9.1-2.fc32.x86_64 mesa-dri-drivers-20.1.9-1.fc32.x86_64 mesa-libGL-20.1.9-1.fc32.x86_64 mesa-libGLU-9.0.1-2.fc32.x86_64 mesa-libglapi-20.1.9-1.fc32.x86_64 numactl-libs-2.0.12-4.fc32.x86_64 pcre2-10.35-7.fc32.x86_64 pulseaudio-libs-13.99.1-4.fc32.x86_64 sssd-client-2.3.1-2.fc32.x86_64 xz-libs-5.2.5-1.fc32.x86_64 (gdb)
On Wed, Nov 18, 2020 at 9:49 AM Andrew Randrianasulu via Cin < [email protected]> wrote: > So, I grep'ed ffmpeg-4.3 sources and apparently thise falgs consumed by > few encoders outside of mpeg2/4: > > guest@slax:/dev/shm/cinelerra/cinelerra-5.1/cinelerra$ grep > 'AV_CODEC_FLAG_INTERLACED_DCT' ../thirdparty/ffmpeg-4.3/libav > libavcodec/ libavdevice/ libavfilter/ libavformat/ libavresample/ > libavutil/ > guest@slax:/dev/shm/cinelerra/cinelerra-5.1/cinelerra$ grep > 'AV_CODEC_FLAG_INTERLACED_DCT' ../thirdparty/ffmpeg-4.3/libavcodec/*.c > ../thirdparty/ffmpeg-4.3/libavcodec/cuviddec.c: avctx->flags |= > AV_CODEC_FLAG_INTERLACED_DCT; > ../thirdparty/ffmpeg-4.3/libavcodec/cuviddec.c: avctx->flags &= > ~AV_CODEC_FLAG_INTERLACED_DCT; > ../thirdparty/ffmpeg-4.3/libavcodec/dnxhddata.c: interlaced == > !!(avctx->flags & AV_CODEC_FLAG_INTERLACED_DCT) && > ../thirdparty/ffmpeg-4.3/libavcodec/dnxhdenc.c: if (avctx->flags & > AV_CODEC_FLAG_INTERLACED_DCT) { > ../thirdparty/ffmpeg-4.3/libavcodec/dvenc.c: if (s->avctx->flags & > AV_CODEC_FLAG_INTERLACED_DCT) { > ../thirdparty/ffmpeg-4.3/libavcodec/libx264.c: x4->params.b_interlaced > = avctx->flags & AV_CODEC_FLAG_INTERLACED_DCT; > ../thirdparty/ffmpeg-4.3/libavcodec/libxavs.c: x4->params.b_interlaced > = avctx->flags & AV_CODEC_FLAG_INTERLACED_DCT; > ../thirdparty/ffmpeg-4.3/libavcodec/mpegvideo_enc.c: if > ((s->avctx->flags & (AV_CODEC_FLAG_INTERLACED_DCT | > AV_CODEC_FLAG_INTERLACED_ME)) && > ../thirdparty/ffmpeg-4.3/libavcodec/mpegvideo_enc.c: > s->progressive_sequence = !(avctx->flags & (AV_CODEC_FLAG_INTERLACED_DCT | > ../thirdparty/ffmpeg-4.3/libavcodec/mpegvideo_enc.c: if > (s->avctx->flags & AV_CODEC_FLAG_INTERLACED_DCT) { > ../thirdparty/ffmpeg-4.3/libavcodec/mpegvideo_enc.c: if > (s->avctx->flags & AV_CODEC_FLAG_INTERLACED_DCT) { > ../thirdparty/ffmpeg-4.3/libavcodec/nvenc.c: if (ret < 1 && > avctx->flags & AV_CODEC_FLAG_INTERLACED_DCT) { > ../thirdparty/ffmpeg-4.3/libavcodec/nvenc.c: if (avctx->flags & > AV_CODEC_FLAG_INTERLACED_DCT) { > ../thirdparty/ffmpeg-4.3/libavcodec/nvenc.c: if (avctx->flags & > AV_CODEC_FLAG_INTERLACED_DCT) { > ../thirdparty/ffmpeg-4.3/libavcodec/pngenc.c: s->is_progressive = > !!(avctx->flags & AV_CODEC_FLAG_INTERLACED_DCT); > ../thirdparty/ffmpeg-4.3/libavcodec/proresenc_anatoliy.c: > ctx->is_interlaced = !!(avctx->flags & AV_CODEC_FLAG_INTERLACED_DCT); > ../thirdparty/ffmpeg-4.3/libavcodec/proresenc_kostya.c: if > (avctx->flags & AV_CODEC_FLAG_INTERLACED_DCT) > ../thirdparty/ffmpeg-4.3/libavcodec/proresenc_kostya.c: int interlaced > = !!(avctx->flags & AV_CODEC_FLAG_INTERLACED_DCT); > ../thirdparty/ffmpeg-4.3/libavcodec/qsvenc.c: if (avctx->flags & > AV_CODEC_FLAG_INTERLACED_DCT) { > guest@slax:/dev/shm/cinelerra/cinelerra-5.1/cinelerra$ grep > 'AV_CODEC_FLAG_INTERLACED_ME' ../thirdparty/ffmpeg-4.3/libavcodec/*.c > ../thirdparty/ffmpeg-4.3/libavcodec/huffyuvenc.c: s->interlaced = > avctx->flags & AV_CODEC_FLAG_INTERLACED_ME ? 1 : 0; > ../thirdparty/ffmpeg-4.3/libavcodec/motion_est.c: if > ((s->avctx->flags & AV_CODEC_FLAG_INTERLACED_ME) > ../thirdparty/ffmpeg-4.3/libavcodec/motion_est.c: if > ((s->avctx->flags & AV_CODEC_FLAG_INTERLACED_ME) > ../thirdparty/ffmpeg-4.3/libavcodec/motion_est.c: if (s->avctx->flags & > AV_CODEC_FLAG_INTERLACED_ME) { > ../thirdparty/ffmpeg-4.3/libavcodec/mpegvideo.c: (s->avctx->flags & > AV_CODEC_FLAG_INTERLACED_ME)) { > ../thirdparty/ffmpeg-4.3/libavcodec/mpegvideo_enc.c: if > ((s->avctx->flags & (AV_CODEC_FLAG_INTERLACED_DCT | > AV_CODEC_FLAG_INTERLACED_ME)) && > ../thirdparty/ffmpeg-4.3/libavcodec/mpegvideo_enc.c: > AV_CODEC_FLAG_INTERLACED_ME) || > ../thirdparty/ffmpeg-4.3/libavcodec/mpegvideo_enc.c: if > (s->avctx->flags & AV_CODEC_FLAG_INTERLACED_ME) { > ../thirdparty/ffmpeg-4.3/libavcodec/mpegvideo_enc.c: if > (s->avctx->flags & AV_CODEC_FLAG_INTERLACED_ME) { > ../thirdparty/ffmpeg-4.3/libavcodec/mpegvideo_enc.c: if > (s->avctx->flags & AV_CODEC_FLAG_INTERLACED_ME) { > > > So, reworked this section again ... basically only excluding mjpeg codec > case from setting those flags, instead of whilelisting mpeg2/4 only > > Strangely ffv1/avi shows interlace (with my patch) if source was Top Field > First and not showing it if source was Bottom Field First ..:/ > > dv file re-encoded as dv_ntsc.avi shows bff correctly, it seems. > mp4 container with h264 also gets it right now .... > mpeg2 works (but not sure if field order correct or now ..I'm confused by > ffmpeg source :/) > mkv seems to work (but it was working before) > > https://cloud.mail.ru/public/5AM1/275yC576u > > How to test those 'tb/bb/tt/bt' cases? There must be some artificial > picture clearly showing if I did it wrong ..Not found it yet. > > > > > -- > Cin mailing list > [email protected] > https://lists.cinelerra-gg.org/mailman/listinfo/cin >
-- Cin mailing list [email protected] https://lists.cinelerra-gg.org/mailman/listinfo/cin

