[BUG] Progress bar and Encoding speed is wrong
#1
When I encode some videos, its progression is very slow and the remaining time is awfully long. I know it's wrong because it suddenly finishes the job when the progress bar isn't full. The bitrate of output video is less than 3Mbps when the bitrate of another video encoded by HandBrake is 13.8Mbps. I use the same settings: x264, CRF 18, Preset=Slow, Tune=Film. And sometimes its progression is more than 100% such as 120%. So I quit the job because I don't know the exact ending time. Those problems not only affect me to judge the encoding time, but also affect the quality of videos. Thus I'm very confused. Two screenshots of Hybrid are here. https://mega.nz/#F!Y8NziKwL Password: vcobT3Bz0SaiiecdIk-qQw
Reply
#2
Not looking at screenshots.
If you want to provide proper information read: [INFO] Infos needed to fix&reproduce bugs,..]

A progress indication > 120% indicated that Hybrid didn't properly detect the stream length.

Since handbrake by default creates vfr content, my guess is that your output is vfr but mediainfo doesn't detect it as vfr.
(handbrake seems to assume that the output is not intended for further encoding&co, but only for watching -> if you always use handbrake, learn to configure it properly not to output vfr content)
-> try enabling "Config->Automation->On Load->Always extract timecodes from input" and "Config->Automation->Extended Checks->Scan mkv for stretched streams"

Alternatively try enabling: "Config->Internals->Handling->Ignore all input timecodes".

Quote:So I quit the job because I don't know the exact ending time.
Hybrid will encode all the content, so aborting seems like a bad idea.
Quote:Those problems not only affect me to judge the encoding time, but also affect the quality of videos.
no clue why it should the encoding quality when using crf,... -> may be the source is broken somehow, would need a sample of the source which allows me to reproduce the issue to say more or fix this.

Cu Selur

Ps.: Encoding speed is taken from the encoder and shouldn't be wrong,..
Reply
#3
Quote:If you want to provide proper information read


The debug file and the video are both large so I don't want to upload it.

Quote:Since handbrake by default creates vfr content, my guess is that your output is vfr but mediainfo doesn't detect it as vfr.


I always use CFR unless I forget to check the checkbox. And I find that if I use ffmpeg to cut the video, its frame rate changes from 24.000 to 529.112. Thus its frame rate mode becomes VBR after cutting the video. So Hybrid can't handle it correctly. I enable the function"force input to be handled as a constant frame rate" and "Automatically adjust speed to stream frame rate". Then I start encoding the video and it seems that encoding speed(xx fps) and real-time bitrate(I think KBit/s or Kbps is better than kBit/s) is correct, but Progress bar and Remaining time are still wrong. However, HandBrake can automatically handle VFR correctly. Besides, the video encoded by HandBrake can be watched whenever I stop the job and I assume that's why it doesn't support 2Pass Encoding mode.
Reply
#4
Not sure what to do with that information.
Since it seems like you are happy with handbrake stick to handbrake.
Without proper details and a way to reproduce the issue there is nothing I can do.

Cu Selur
Reply
#5
I upload the debug file and the video cutted by ffmpeg(30s) to the link I shared before, I think it's enough for you.
Reply
#6
In the debug output you shared I see a crash of MP4Box during the muxing of:
"C:\PROGRA~1\Hybrid\64bit\MP4Box.exe" -raw 2 "E:\AC2_E3_Trailer.Bluray.AVC.DTS-HD 2.0 [00022].mp4" -out "C:\Users\刘晓东\AppData\Local\Temp\iId_2_aid_0_DELAY_-43ms_00_11_12_1710_01.dts"
where MP4Box complains about:
[31mUnknown audio in track ID 2 - use NHNT

    Error: Feature Not Supported
-> this might be because of the location of the tmp file (change your temp folder), but might also be due to some issue handling the audio data.

Please don't send me a ~480MB DebugOutput which is so large since the debug output is about multiple files and not the one discussed!
This only costs me time reading totally unnecessary data in files which are a pain to navigate due to the size!
-> not looking at the debug output any more since this is simply an insult.

Looking at the sample you provided.
You provided the start of a a lot larger file without adjusting the headers properly.
MediaInfo reports about the file:
Quote:General
Count : 332
Count of stream of this kind : 1
Kind of stream : General
Kind of stream : General
Stream identifier : 0
Unique ID : 150019322158553883606128652218323416238
Unique ID : 150019322158553883606128652218323416238 (0x70DCABA4754E9971FA7FF7F26653B4AE)
Count of video streams : 1
Count of audio streams : 1
Video_Format_List : AVC
Video_Format_WithHint_List : AVC
Codecs Video : AVC
Audio_Format_List : PCM
Audio_Format_WithHint_List : PCM
Audio codecs : PCM
Complete name : c:\Users\Selur\Desktop\X264 Encoding\00001.mkv
Folder name : c:\Users\Selur\Desktop\X264 Encoding
File name extension : 00001.mkv
File name : 00001
File extension : mkv
Format : Matroska
Format : Matroska
Format/Url : https://matroska.org/downloads/windows.html
Format/Extensions usually used : mkv mk3d mka mks
Commercial name : Matroska
Format version : Version 4
File size : 108994367
File size : 104 MiB
File size : 104 MiB
File size : 104 MiB
File size : 104 MiB
File size : 103.9 MiB
Duration : 30624
Duration : 30 s 624 ms
Duration : 30 s 624 ms
Duration : 30 s 624 ms
Duration : 00:00:30.624
Duration : 00:00:30.624
Overall bit rate mode : VBR
Overall bit rate mode : Variable
Overall bit rate : 28472928
Overall bit rate : 28.5 Mb/s
Frame rate : 5194.815
Frame rate : 5 194.815 FPS
Frame count : 159086
IsStreamable : Yes
File creation date : UTC 2019-07-20 06:31:22.550
File creation date (local) : 2019-07-20 08:31:22.550
File last modification date : UTC 2019-07-20 03:50:52.000
File last modification date (local) : 2019-07-20 05:50:52.000
Writing application : Lavf58.22.100
Writing application : Lavf58.22.100
Writing library : Lavf58.22.100
Writing library : Lavf58.22.100
ErrorDetectionType : Per level 1

Video
Count : 377
Count of stream of this kind : 1
Kind of stream : Video
Kind of stream : Video
Stream identifier : 0
StreamOrder : 0
ID : 1
ID : 1
Unique ID : 1
Format : AVC
Format : AVC
Format/Info : Advanced Video Codec
Format/Url : http://developers.videolan.org/x264.html
Commercial name : AVC
Format profile : High@L4.1
Format settings : CABAC / 4 Ref Frames
Format settings, CABAC : Yes
Format settings, CABAC : Yes
Format settings, Reference frames : 4
Format settings, Reference frames : 4 frames
Internet media type : video/H264
Codec ID : V_MPEG4/ISO/AVC
Codec ID/Url : http://ffdshow-tryout.sourceforge.net/
Duration : 30624.000000
Duration : 30 s 624 ms
Duration : 30 s 624 ms
Duration : 30 s 624 ms
Duration : 00:00:30.624
Duration : 00:00:30.624
Bit rate mode : VBR
Bit rate mode : Variable
Bit rate : 26204501
Bit rate : 26.2 Mb/s
Maximum bit rate : 34999296
Maximum bit rate : 35.0 Mb/s
Width : 1920
Width : 1 920 pixels
Height : 1080
Height : 1 080 pixels
Stored_Height : 1088
Sampled_Width : 1920
Sampled_Height : 1080
Pixel aspect ratio : 1.000
Display aspect ratio : 1.778
Display aspect ratio : 16:9
Frame rate mode : VFR
Frame rate mode : Variable
Frame rate : 5194.815
Frame rate : 5 194.815 FPS
Original frame rate : 24.000
Original frame rate : 24.000 FPS
Frame count : 159086
Standard : NTSC
Color space : YUV
Chroma subsampling : 4:2:0
Chroma subsampling : 4:2:0
Bit depth : 8
Bit depth : 8 bits
Scan type : Progressive
Scan type : Progressive
Bits/(Pixel*Frame) : 0.002
Delay : 0
Delay : 00:00:00.000
Delay, origin : Container
Delay, origin : Container
Stream size : 21712342315
Stream size : 20.2 GiB
Stream size : 20 GiB
Stream size : 20 GiB
Stream size : 20.2 GiB
Stream size : 20.22 GiB
Default : Yes
Default : Yes
Forced : No
Forced : No
Buffer size : 29999616
colour_description_present : Yes
colour_description_present_Source : Container / Stream
Color range : Limited
colour_range_Source : Container / Stream
Color primaries : BT.709
colour_primaries_Source : Container / Stream
Transfer characteristics : BT.709
transfer_characteristics_Source : Container / Stream
Matrix coefficients : BT.709
matrix_coefficients_Source : Container / Stream

Audio
Count : 280
Count of stream of this kind : 1
Kind of stream : Audio
Kind of stream : Audio
Stream identifier : 0
StreamOrder : 1
ID : 2
ID : 2
Unique ID : 2
Format : PCM
Format : PCM
Commercial name : PCM
Format settings : Little / Signed
Format settings, Endianness : Little
Format settings, Sign : Signed
Codec ID : A_PCM/INT/LIT
Duration : 30583.000000
Duration : 30 s 583 ms
Duration : 30 s 583 ms
Duration : 30 s 583 ms
Duration : 00:00:30.583
Duration : 00:00:30.583
Bit rate mode : CBR
Bit rate mode : Constant
Bit rate : 1536000
Bit rate : 1 536 kb/s
Channel(s) : 2
Channel(s) : 2 channels
Samples per frame : 1
Sampling rate : 48000
Sampling rate : 48.0 kHz
Samples count : 1467984
Frame rate : 43348.167
Frame rate : 43 348.167 FPS (1 SPF)
Frame count : 1325717
Bit depth : 16
Bit depth : 16 bits
Delay : 3
Delay : 3 ms
Delay : 3 ms
Delay : 3 ms
Delay : 00:00:00.003
Delay, origin : Container
Delay, origin : Container
Delay relative to video : 3
Delay relative to video : 3 ms
Delay relative to video : 3 ms
Delay relative to video : 3 ms
Delay relative to video : 00:00:00.003
Stream size : 1272688320
Stream size : 1.19 GiB
Stream size : 1 GiB
Stream size : 1.2 GiB
Stream size : 1.19 GiB
Stream size : 1.185 GiB
Default : No
Default : No
Forced : No
Forced : No
->
1. stream sizes of Audio&Video are way larger than the actual file size.
2. frame count is reported as "159086"
3. file contains way more time codes than frames (Time code count: 735 vs. frame count: 159086.)
-> Problem with the progress indication is due to the fact that Hybrid assumes that the frame count is correct.
I'll create a dev version for testing which will adjust the frame count to the time code count and send you a link via PM for testing in a few minutes, this should fix the progress indication and the estimated end time for your broken files.

Cu Selur
Reply
#7
Sorry to send that DebugOutput to you but I don't know how to creat a debug file only about single file. Every time it's just created by Hybrid automatically after encoding a video and it becomes larger and larger. Thanks for sharing the dev version and it works fine. However, even I enable "force input to be handled as a constant frame mode", the frame mode of output video is still variable. And I'm wondering how to find the path of log file because the log you set up can't give me the information below.
Quote:x264 [info]: frame I:2225  Avg QP:17.89  size:202763
x264 [info]: frame P:54770 Avg QP:20.84  size:104671
x264 [info]: frame B:102091 Avg QP:21.88  size: 64254
x264 [info]: consecutive B-frames: 13.9%  1.0%  1.8% 83.3%"
Reply
#8
If you want the 'x264 [info]' data, you need to create report files (Config->Internals->Create report file)
If you want Hybrid to convert the vfr input to cfr, your need to enable: 'Config->Input->Decoding->CFR output' + you probably want to enable 'Filtering->Speed Change->Change speed' and set it to the output frame rate you desire.

Cu Selur
Reply
#9
(20.07.2019, 18:53)Selur Wrote: If you want the 'x264 [info]' data, you need to create report files (Config->Internals->Create report file)
If you want Hybrid to convert the vfr input to cfr, your need to enable: 'Config->Input->Decoding->CFR output' + you probably want to enable 'Filtering->Speed Change->Change speed' and set it to the output frame rate you desire.

Cu Selur
Ok, thanks a lot.
Reply
#10
I‘m wondering that when I choose "optimal" in Adaptive b-frame decision, it turns out to be "b-adapt 1" other than "b-adapt 2". And when I cut another film with ffmpeg, the same problem occurs again. The frame rate of cutted video is very large like the video before: 482.631. And Hybrid can't handle it properly, I know there's something wrong with the headers. Can you teach me how to cut the video with ffmpeg correctly? Here's my script.

Quote:ffmpeg  -ss 00:05:00 -t 00:05:00  -accurate_seek -i "G:\00001.mkv"  -map 0:0 -map 0:2 -c copy "G:\CUT\00002.mkv"
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)