Anime4000 / IFME

Powerful x265 GUI Encoder
https://x265.github.io/
GNU General Public License v2.0
239 stars 53 forks source link

error: x265 multi pass target bitrate --pass 2 #229

Closed longwu9t closed 6 days ago

longwu9t commented 1 week ago

…… [DEBG] Command Line: "C:\proApp\IFME\Plugins\ffmpeg64\ffmpeg" -hide_banner -v error -i "D:\vdo\cat.mkv" -map 0:0 -pix_fmt yuv420p -vf scale=720:1280:flags=lanczos,fps=30 -strict -1 -f yuv4mpegpipe - | "c:\proApp\encoders\x265.exe" --y4m - -f 252 --input-depth 8 --output-depth 8 --input-csp i420 -p medium -t ssim --bitrate 500 --pass 2 -o raw-v0000_und.h265 [vost#0:0/wrapped_avframe @ 0000024364a65780] Error submitting a packet to the muxer: Broken pipe ……

longwu9t commented 1 week ago

x265 [info]: HEVC encoder version 3.6+27-8787e8702 x265 [info]: build info [Windows][GCC 13.3.0][64 bit] 10bit x265 [info]: using cpu capabilities: MMX2 SSE2Fast LZCNT SSSE3 SSE4.2 AVX FMA3 BMI2 AVX2 x265 [info]: Main 10 profile, Level-3.1 (Main tier) x265 [info]: Thread pool created using 8 threads x265 [info]: Slices : 1 x265 [info]: frame threads / pool features : 3 / wpp(12 rows) x265 [error]: 2nd pass has more frames than 1st pass (121 vs 119) x265 [error]: x265_encoder_open() failed for Enc, x265 [error]: Failure generating stream headers in x265 [vost#0:0/wrapped_avframe @ 000002122fb29980] Error submitting a packet to the muxer: Broken pipe Last message repeated 1 times [out#0/yuv4mpegpipe @ 000002122fa9f400] Error muxing a packet [out#0/yuv4mpegpipe @ 000002122fa9f400] Task finished with error code: -32 (Broken pipe) [out#0/yuv4mpegpipe @ 000002122fa9f400] Terminating thread with return code -32 (Broken pipe) [out#0/yuv4mpegpipe @ 000002122fa9f400] Error writing trailer: Broken pipe [out#0/yuv4mpegpipe @ 000002122fa9f400] Error closing file: Broken pipe

longwu9t commented 1 week ago

x264 Multi pass, Target bitrate (kbps) The same problem exists

Anime4000 commented 1 week ago

I see, for 5 pass, way it should pass is 1, 3, 3, 3, 2 I'll check why multipass wrong

EDIT: error was x265 [error]: 2nd pass has more frames than 1st pass (121 vs 119)

I guess need to ignore frame count (no % progress)

Anime4000 commented 1 week ago

possible fix:

  1. Ignore Frame Count, this will not show total progress and ETA
  2. Indexing video first, FFmpeg will play and count how many REAL total frame and keep total progress and ETA

which one do you like? for Indexing fix, it will delay and take time to indexing first instead of guessing

longwu9t commented 1 week ago

as you wish

Anime4000 commented 1 week ago

I think most safest is ignore Frame Count, no ETA, try this IFME_try8.2.3.zip

longwu9t commented 1 week ago

new version works fine! thanks!!!

Anime4000 commented 6 days ago

Alright! releasing 8.2.3