encx265: unknown option '--frame-dup'

HandBrake for Windows support
Forum rules
An Activity Log is required for support requests. Please read How-to get an activity log? for details on how and why this should be provided.
Post Reply
bennyutzer
Posts: 2
Joined: Sun Mar 26, 2023 6:16 pm

encx265: unknown option '--frame-dup'

Post by bennyutzer »

Description of problem or question:

i am using handbrake 1.3.3 to convert recorded videos to H265 using the x265 encoder.
because my source video has significant stuttering (eg double frames), i want to use the x265 option --frame-dup, to remove those double frames. when applying it in the handbrake GUI, i get the following message in the encoding log file:

encx265: unknown option '--frame-dup'

is this option supported, or am i using it wrong? please advise on how to use this right.

option details taken from here:
https://x265.readthedocs.io/en/stable/c ... -frame-dup


Steps to reproduce the problem (If Applicable):

added screenshots to show my settings

https://imgur.com/a/ak1bjL4


HandBrake version (e.g., 1.0.0):

1.3.3


Operating system and version (e.g., Ubuntu 16.04 LTS, macOS 10.13 High Sierra, Windows 10 Creators Update):

Microsoft Windows NT 6.1.7601 Service Pack 1


HandBrake Activity Log ***required*** (see How-to get an activity log)

Code: Select all

HandBrake 1.3.3 (2020061300)
OS: Microsoft Windows NT 6.1.7601 Service Pack 1
CPU: AMD Ryzen 5 1600 Six-Core Processor            
Ram: 32699 MB, 
GPU Information:
  Radeon RX 590 Series - 27.20.20913.2000
Screen: 1920x1080
Temp Dir: C:\Users\Administrator\AppData\Local\Temp\
Install Dir: D:\HandBrake
Data Dir: C:\Users\Administrator\AppData\Roaming\HandBrake

-------------------------------------------


# Starting Encode ...

[07:44:22] base preset: moinsTV (Modified)
[19:44:22] hb_init: starting libhb thread
[19:44:22] Starting work at: Sun Mar 26 19:44:22 2023
[19:44:22] 1 job(s) to process
[19:44:22] json job:
{
  "Audio": {
    "AudioList": [
      {
        "DRC": 0.0,
        "Encoder": "copy:aac",
        "Gain": 0.0,
        "Mixdown": -1,
        "NormalizeMixLevel": false,
        "Samplerate": 0,
        "Track": 0,
        "DitherMethod": 0
      }
    ],
    "CopyMask": [
      "copy:aac",
      "copy:ac3",
      "copy:dtshd",
      "copy:dts",
      "copy:eac3",
      "copy:flac",
      "copy:mp3",
      "copy:truehd"
    ],
    "FallbackEncoder": "ac3"
  },
  "Destination": {
    "ChapterList": [
      {
        "Name": "Kapitel 1"
      }
    ],
    "ChapterMarkers": true,
    "AlignAVStart": false,
    "File": "F:\\captures\\test.mkv",
    "Mp4Options": {
      "IpodAtom": false,
      "Mp4Optimize": false
    },
    "Mux": "av_mkv"
  },
  "Filters": {
    "FilterList": [
      {
        "ID": 2,
        "Settings": {}
      },
      {
        "ID": 4,
        "Settings": {
          "mode": "7"
        }
      },
      {
        "ID": 3,
        "Settings": {
          "block-height": "16",
          "block-thresh": "40",
          "block-width": "16",
          "filter-mode": "2",
          "mode": "3",
          "motion-thresh": "1",
          "spatial-metric": "2",
          "spatial-thresh": "1"
        }
      },
      {
        "ID": 12,
        "Settings": {
          "crop-bottom": "0",
          "crop-left": "0",
          "crop-right": "0",
          "crop-top": "0",
          "height": "1080",
          "width": "1920"
        }
      },
      {
        "ID": 6,
        "Settings": {
          "mode": "2",
          "rate": "27000000/1080000"
        }
      }
    ]
  },
  "PAR": {
    "Num": 1,
    "Den": 1
  },
  "Metadata": {},
  "SequenceID": 0,
  "Source": {
    "Angle": 1,
    "Range": {
      "Type": "time",
      "Start": 242100000,
      "End": 246510000
    },
    "Title": 1,
    "Path": "F:\\captures\\source.mp4"
  },
  "Subtitle": {
    "Search": {
      "Burn": false,
      "Default": false,
      "Enable": false,
      "Forced": false
    },
    "SubtitleList": []
  },
  "Video": {
    "Encoder": "x265_12bit",
    "Level": "auto",
    "TwoPass": false,
    "Turbo": false,
    "ColorMatrixCode": 0,
    "Options": "--frame-dup",
    "Preset": "fast",
    "Profile": "main12",
    "Quality": 22.0,
    "Tune": "psnr",
    "QSV": {
      "Decode": false,
      "AsyncDepth": 0
    }
  }
}
[19:44:22] CPU:
[19:44:22]  - logical processor count: 12
[19:44:22] Intel Quick Sync Video support: no
[19:44:22] hb_scan: path=F:\captures\source.mp4, title_index=1
udfread ERROR: ECMA 167 Volume Recognition failed
src/libbluray/disc/disc.c:323: failed opening UDF image F:\captures\source.mp4
src/libbluray/disc/disc.c:424: error opening file BDMV\index.bdmv
src/libbluray/disc/disc.c:424: error opening file BDMV\BACKUP\index.bdmv
src/libbluray/bluray.c:2585: nav_get_title_list(F:\captures\source.mp4\) failed
[19:44:22] bd: not a bd - trying as a stream/file instead
libdvdnav: Using dvdnav version 6.0.1
libdvdread: Encrypted DVD support unavailable.
libdvdread:DVDOpenFileUDF:UDFFindFile /VIDEO_TS/VIDEO_TS.IFO failed
libdvdread:DVDOpenFileUDF:UDFFindFile /VIDEO_TS/VIDEO_TS.BUP failed
libdvdread: Can't open file VIDEO_TS.IFO.
libdvdnav: vm: failed to read VIDEO_TS.IFO
[19:44:22] dvd: not a dvd - trying as a stream/file instead
Input #0, matroska,webm, from 'F:\captures\source.mp4':
  Metadata:
    ENCODER         : Lavf58.76.100
  Duration: 00:45:39.73, start: 0.000000, bitrate: 136460 kb/s
    Stream #0:0: Video: hevc (Main), yuv420p(tv), 1920x1080 [SAR 1:1 DAR 16:9], 25 fps, 25 tbr, 1k tbn, 25 tbc (default)
    Metadata:
      DURATION        : 00:45:39.720000000
    Stream #0:1: Audio: aac (LC), 48000 Hz, stereo, fltp (default)
    Metadata:
      DURATION        : 00:45:39.728000000
[19:44:22] scan: decoding previews for title 1
[19:44:22] scan: audio 0x1: aac, rate=48000Hz, bitrate=1 Unknown (AAC LC) (2.0 ch)
[19:44:24] scan: 10 previews, 1920x1080, 25.000 fps, autocrop = 0/0/0/0, aspect 16:9, PAR 1:1
[19:44:24] scan: supported video decoders: avcodec qsv
[19:44:24] libhb: scan thread found 1 valid title(s)
[19:44:24] Starting Task: Encoding Pass
[19:44:24] Skipping crop/scale filter
[19:44:24] work: only 1 chapter, disabling chapter markers
[19:44:24] job configuration:
[19:44:24]  * source
[19:44:24]    + F:\captures\source.mp4
[19:44:24]    + title 1, start 00:44:50.00 stop 00:45:39.00
[19:44:24]    + container: matroska,webm
[19:44:24]    + data rate: 136460 kbps
[19:44:24]  * destination
[19:44:24]    + F:\captures\test.mkv
[19:44:24]    + container: Matroska (libavformat)
[19:44:24]  * video track
[19:44:24]    + decoder: hevc
[19:44:24]    + filters
[19:44:24]      + Detelecine (pullup) ()
[19:44:24]      + Comb Detect (mode=3:spatial-metric=2:motion-thresh=1:spatial-thresh=1:filter-mode=2:block-thresh=40:block-width=16:block-height=16)
[19:44:24]      + Decomb (mode=39)
[19:44:24]      + Framerate Shaper (mode=2:rate=27000000/1080000)
[19:44:24]        + frame rate: 25.000 fps -> peak rate limited to 25.000 fps
[19:44:24]    + Output geometry
[19:44:24]      + storage dimensions: 1920 x 1080
[19:44:24]      + pixel aspect ratio: 1 : 1
[19:44:24]      + display dimensions: 1920 x 1080
[19:44:24]    + encoder: H.265 12-bit (libx265)
[19:44:24]      + preset:  fast
[19:44:24]      + tune:    psnr
[19:44:24]      + options: --frame-dup
[19:44:24]      + profile: main12
[19:44:24]      + level:   auto
[19:44:24]      + quality: 22.00 (RF)
[19:44:24]      + color profile: 1-1-1
[19:44:24]  * audio track 1
[19:44:24]    + decoder: Unknown (AAC LC) (2.0 ch) (track 1, id 0x1)
[19:44:24]      + samplerate: 48000 Hz
[19:44:24]    + AAC Passthru
[19:44:25] sync: expecting 1250 video frames
[19:44:25] encx265: unknown option '--frame-dup'
x265 [info]: HEVC encoder version 3.2.1+1-b5c86a64bbbe
x265 [info]: build info [Windows][GCC 9.2.0][64 bit] 12bit
x265 [info]: using cpu capabilities: MMX2 SSE2Fast LZCNT SSSE3 SSE4.2 AVX FMA3 BMI2 AVX2
x265 [info]: Main 12 profile, Level-4 (Main tier)
x265 [info]: Thread pool created using 12 threads
x265 [info]: Slices                              : 1
x265 [info]: frame threads / pool features       : 3 / wpp(17 rows)
x265 [info]: Coding QT: max CU size, min CU size : 64 / 8
x265 [info]: Residual QT: max TU size, max depth : 32 / 1 inter / 1 intra
x265 [info]: ME / range / subpel / merge         : hex / 57 / 2 / 2
x265 [info]: Keyframe min / max / scenecut / bias: 25 / 250 / 40 / 5.00
x265 [info]: Lookahead / bframes / badapt        : 15 / 4 / 0
x265 [info]: b-pyramid / weightp / weightb       : 1 / 1 / 0
x265 [info]: References / ref-limit  cu / depth  : 3 / on / on
x265 [info]: AQ: mode / str / qg-size / cu-tree  : 2 / 0.0 / 32 / 1
x265 [info]: Rate Control / qCompress            : CRF-22.0 / 0.60
x265 [info]: tools: rd=2 rskip signhide tmvp fast-intra strong-intra-smoothing
x265 [info]: tools: lslices=6 deblock sao
[19:44:25] sync: first pts video is 0
[19:44:25] sync: "Kapitel 1" (1) at frame 1 time 0
[19:44:25] sync: first pts audio 0x1 is 990
[19:45:34] reader: done. 1 scr changes
[19:45:35] sync: reached video pts 4410000, exiting early
[19:45:35] sync: reached audio 0x1 pts 4411230, exiting early
[19:45:37] work: average encoding speed for job is 17.134047 fps
[19:45:37] comb detect: heavy 0 | light 11 | uncombed 1213 | total 1224
[19:45:37] decomb: deinterlaced 0 | blended 11 | unfiltered 1213 | total 1224
[19:45:37] vfr: 1222 frames output, 2 dropped and 0 duped for CFR/PFR
[19:45:37] vfr: lost time: 10800 (0 frames)
[19:45:37] vfr: gained time: 10800 (4 frames) (0 not accounted for)
[19:45:37] aac-decoder done: 2331 frames, 0 decoder errors
[19:45:37] hevc-decoder done: 1243 frames, 0 decoder errors
[19:45:37] sync: got 1225 frames, 1250 expected
[19:45:37] sync: framerate min 25.000 fps, max 25.000 fps, avg 25.000 fps
x265 [info]: frame I:      6, Avg QP:22.97  kb/s: 15784.70  PSNR Mean: Y:47.457 U:52.222 V:52.211
x265 [info]: frame P:    242, Avg QP:23.71  kb/s: 14443.35  PSNR Mean: Y:44.208 U:51.647 V:50.927
x265 [info]: frame B:    974, Avg QP:29.75  kb/s: 2678.88   PSNR Mean: Y:41.980 U:51.093 V:50.386
x265 [info]: Weighted P-Frames: Y:22.3% UV:12.0%
x265 [info]: consecutive B-frames: 1.6% 0.0% 0.4% 0.0% 98.0%
encoded 1222 frames in 72.43s (16.87 fps), 5073.02 kb/s, Avg QP:28.52, Global PSNR: 44.550
[19:45:37] mux: track 0, 1222 frames, 31001023 bytes, 5057.26 kbps, fifo 512
[19:45:37] mux: track 1, 2297 frames, 1910068 bytes, 311.59 kbps, fifo 1024
[19:45:37] Finished work at: Sun Mar 26 19:45:37 2023
[19:45:37] libhb: work result = 0

# Encode Completed ...

thanks in advance for any helpful advice.
Deleted User 11865

Re: encx265: unknown option '--frame-dup'

Post by Deleted User 11865 »

(1) use "frame-dup=1" (without quotes) in the advanced options box

(2) I'm not sure HandBrake is set up to support the encoder changing a frame's duration, even if the above enables the option, it may mess up A/V sync, you'll have to try and check for yourself
bennyutzer
Posts: 2
Joined: Sun Mar 26, 2023 6:16 pm

Re: encx265: unknown option '--frame-dup'

Post by bennyutzer »

thanks for the advice. i just tried the following:

frame-dup=1
frame-dup 1
frame-dup
--frame-dup=1
--frame-dup 1
--frame-dup

all of which produced the same error message (encx265: unknown option 'frame-dup'), and the resulting file was also exactly the same size, meaning the encoding process did not change.

i used a credit sequence where the stuttering is especially pronounced as a test case, and none of the options changed anything about the appearance of the video.

am i missing something here? are there any commands that work in this options box? is there some other way to do this?
Deleted User 11865

Re: encx265: unknown option '--frame-dup'

Post by Deleted User 11865 »

Probably the old x265 in HandBrake 1.3.3 doesn't even have this option anyway.
Deleted User 11865

Re: encx265: unknown option '--frame-dup'

Post by Deleted User 11865 »

Even then (when using a more recent version of HandBrake), you have to enable VBV and HRD signaling, and then it just crashes for me. You'll have to use x265 through other means (not HandBrake) if you really want to make use of that feature.
Post Reply