Opened 4 years ago

Closed 3 years ago

#8757 closed enhancement (fixed)

libavformat/avisynth.c does not set interlacing and field order

Reported by: emcodem Owned by:
Priority: wish Component: avformat
Version: git-master Keywords: avisynth
Cc: harald.jordan78@gmail.com Blocked By:
Blocking: Reproduced by developer: no
Analyzed by developer: no

Description

Summary of the bug:
When using avisynth source (.avs files), the interlacement and field order is not being set. I believe st->codec->field_order could be set around line 120 in avisynth.c, based on the avisynth values:
int avs_is_field_based
int avs_is_parity_known
int avs_is_bff
int avs_is_tff

How to reproduce:
ffmpeg:

% ffprobe.exe -read_intervals "%+#2" -show_entries "frame=interlaced_frame,tff" -pretty -print_format json -of json   test.avs

avisynth test.avs script:

colorbarshd()
assumefieldbased()
assumetff()

Change History (8)

comment:1 by emcodem, 4 years ago

Cc: harald.jordan78@gmail.com added

comment:2 by Carl Eugen Hoyos, 4 years ago

Is this issue not reproducible with ffmpeg, the application?
Please test current FFmpeg git head and provide the (ffmpeg) command line you tested together with the complete, uncut console output to make this a valid ticket.

comment:3 by emcodem, 4 years ago

Sure you can also see that the interlacing is not set using ffmpeg itself. Sorry, I should have already learned that you want full console output from reading tickets over the last years. Thought that using ffprobe makes it more obvious. Below we see that there is no interlacing defined in Stream #0:0. I hope using the latest nightly build from zeranoe is fine!

C:\Users\b>C:\Users\b\Downloads\ffmpeg-20200623-ce297b4-win64-static\bin\ffmpeg.exe -i C:\Users\b\Downloads\ffmpeg-20200623-ce297b4-win64-static\bin\interlaced.avs
ffmpeg version git-2020-06-23-ce297b4 Copyright (c) 2000-2020 the FFmpeg developers
  built with gcc 9.3.1 (GCC) 20200621
  configuration: --enable-gpl --enable-version3 --enable-sdl2 --enable-fontconfig --enable-gnutls --enable-iconv --enable-libass --enable-libdav1d --enable-libbluray --enable-libfreetype --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-libopus --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libsrt --enable-libtheora --enable-libtwolame --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxml2 --enable-libzimg --enable-lzma --enable-zlib --enable-gmp --enable-libvidstab --enable-libvmaf --enable-libvorbis --enable-libvo-amrwbenc --enable-libmysofa --enable-libspeex --enable-libxvid --enable-libaom --enable-libgsm --disable-w32threads --enable-libmfx --enable-ffnvcodec --enable-cuda-llvm --enable-cuvid --enable-d3d11va --enable-nvenc --enable-nvdec --enable-dxva2 --enable-avisynth --enable-libopenmpt --enable-amf
  libavutil      56. 55.100 / 56. 55.100
  libavcodec     58. 93.100 / 58. 93.100
  libavformat    58. 47.100 / 58. 47.100
  libavdevice    58. 11.100 / 58. 11.100
  libavfilter     7. 86.100 /  7. 86.100
  libswscale      5.  8.100 /  5.  8.100
  libswresample   3.  8.100 /  3.  8.100
  libpostproc    55.  8.100 / 55.  8.100
Guessed Channel Layout for Input Stream #0.1 : stereo
Input #0, avisynth, from 'C:\Users\b\Downloads\ffmpeg-20200623-ce297b4-win64-static\bin\interlaced.avs':
  Duration: 01:00:00.00, start: 0.000000, bitrate: N/A
    Stream #0:0: Video: rawvideo (444P / 0x50343434), yuv444p, 1288x720, 29.97 fps, 29.97 tbr, 29.97 tbn, 29.97 tbc
    Stream #0:1: Audio: pcm_f32le, 48000 Hz, stereo, flt, 3072 kb/s
Last edited 4 years ago by Carl Eugen Hoyos (previous) (diff)

comment:4 by Carl Eugen Hoyos, 4 years ago

Keywords: avisynth added
Priority: normalwish
Version: unspecifiedgit-master

comment:5 by emcodem, 3 years ago

Cc: emcodem@ffastrans.com added

comment:6 by emcodem, 3 years ago

Cc: emcodem@ffastrans.com added

comment:7 by emcodem, 3 years ago

Cc: emcodem@ffastrans.com removed

comment:8 by Balling, 3 years ago

Resolution: fixed
Status: newclosed
Note: See TracTickets for help on using tickets.