e00E / obs-amf

GNU General Public License v2.0
90 stars 13 forks source link

Confused by settings #9

Open maksimz1 opened 2 years ago

maksimz1 commented 2 years ago

Hi so I my problem is that I am not really sure what is the meaning of most settings and I don't understand much in video encoding and those settings are all confusing me (example: I choose CBR and i can still see all the settings for CQP)

Can you maybe show me good settings that i will judt copy or a photo explaining each of the settings there? I would really appreciate that

e00E commented 2 years ago

This is a shortcoming of this project currently. The settings are taken directly from the AMF api which is documented here in encode_api and encode_hevc pdf.

It would be nice to group the settings into normal and expert, add more explanatory text, hide settings that do not make sense together.

For your specific question the answer is that settings related to CQP are ignored when you use CBR mode. The defaults are generally reasonable but you might want to adjust the GOP size (h265) or IDR Period (h264) which is sometimes called keyframe interval. Enabling "Variance Based Adaptive Quantization" (VBAQ) could improve quality a bit but I haven't tested it in detail.

maksimz1 commented 2 years ago

Thanks for replying! I will try those settings and let you know of the result :) But I started facing another problem with instability which I need help with... I got this crash log that you can look at, I tried putting random settings cuz I didn't understand what affects what, but my recording crashes when I switch windows from the fullscreen program that I tried to record (minecraft)

22:36:12.817: Starting recording due to hotkey 22:36:12.838: amftest: SetProperty Usage 0 22:36:12.838: amftest: SetProperty Profile 100 22:36:12.838: amftest: SetProperty ProfileLevel 42 22:36:12.838: amftest: SetProperty LowLatencyInternal false 22:36:12.838: amftest: SetProperty RateControlMethod 0 22:36:12.838: amftest: SetProperty TargetBitrate 10000000 22:36:12.838: amftest: SetProperty PeakBitrate 30000000 22:36:12.838: amftest: SetProperty RateControlSkipFrameEnable false 22:36:12.838: amftest: SetProperty MinQP 18 22:36:12.839: amftest: SetProperty MaxQP 46 22:36:12.839: amftest: SetProperty QPI 20 22:36:12.839: amftest: SetProperty QPP 20 22:36:12.839: amftest: SetProperty QPB 20 22:36:12.839: amftest: SetProperty VBVBufferSize 20000000 22:36:12.839: amftest: SetProperty InitialVBVBufferFullness 64 22:36:12.839: amftest: SetProperty EnforceHRD false 22:36:12.839: amftest: SetProperty RateControlPreanalysisEnable false 22:36:12.839: amftest: SetProperty EnableVBAQ false 22:36:12.839: amftest: SetProperty FillerDataEnable false 22:36:12.839: amftest: SetProperty MaxNumRefFrames 4 22:36:12.839: amftest: SetProperty HeaderInsertionSpacing 0 22:36:12.839: amftest: SetProperty IDRPeriod 120 22:36:12.839: amftest: SetProperty SlicesPerFrame 1 22:36:12.839: amftest: SetProperty DeBlockingFilter true 22:36:12.839: amftest: SetProperty CABACEnable 0 22:36:12.839: amftest: SetProperty ScanType 0 22:36:12.839: amftest: SetProperty QualityPreset 0 22:36:12.839: amftest: SetProperty HalfPixel true 22:36:12.839: amftest: SetProperty QuarterPixel true 22:36:12.839: amftest: SetProperty ColorBitDepth 16 22:36:12.839: amftest: SetProperty FrameRate (240 / 1) 22:36:12.839: amftest: SetProperty InColorProfile 7 22:36:12.839: amftest: SetProperty InColorTransferChar 13 22:36:12.839: amftest: SetProperty InColorPrimaries 0 22:36:12.839: amftest: SetProperty OutColorProfile 7 22:36:12.839: amftest: SetProperty OutColorTransferChar 13 22:36:12.839: amftest: SetProperty OutColorPrimaries 0 22:36:12.842: [CoreAudio AAC: 'Track1']: settings: 22:36:12.842: mode: AAC 22:36:12.842: bitrate: 160 22:36:12.842: sample rate: 48000 22:36:12.842: cbr: on 22:36:12.842: output buffer: 1536 22:36:12.843: [CoreAudio AAC: 'Track2']: settings: 22:36:12.843: mode: AAC 22:36:12.843: bitrate: 160 22:36:12.843: sample rate: 48000 22:36:12.843: cbr: on 22:36:12.843: output buffer: 1536 22:36:12.852: ==== Recording Start =============================================== 22:36:12.852: [ffmpeg muxer: 'adv_file_output'] Writing file 'C:/Users/mrmax/Videos/BedWars Clips/2022-02-24 22-36-12.mkv'... 22:36:15.547: amftest: send_frame_to_encoder: SubmitInput: 25 22:36:15.547: Error encoding with encoder 'recording_h264' 22:36:15.550: [ffmpeg muxer: 'adv_file_output'] Output of file 'C:/Users/mrmax/Videos/BedWars Clips/2022-02-24 22-36-12.mkv' stopped 22:36:15.550: Output 'adv_file_output': stopping 22:36:15.550: Output 'adv_file_output': Total frames output: 0 22:36:15.550: Output 'adv_file_output': Total drawn frames: 647 22:36:15.550: ==== Recording Stop ================================================ 22:36:31.018: Starting recording due to hotkey 22:36:31.021: encoder 'recording_h264': Cannot set the scaled resolution while the encoder is active 22:36:31.022: [CoreAudio AAC: 'Track1']: settings: 22:36:31.022: mode: AAC 22:36:31.022: bitrate: 160 22:36:31.022: sample rate: 48000 22:36:31.022: cbr: on 22:36:31.022: output buffer: 1536 22:36:31.023: [CoreAudio AAC: 'Track2']: settings: 22:36:31.023: mode: AAC 22:36:31.023: bitrate: 160 22:36:31.023: sample rate: 48000 22:36:31.023: cbr: on 22:36:31.023: output buffer: 1536 22:36:31.031: ==== Recording Start =============================================== 22:36:31.031: [ffmpeg muxer: 'adv_file_output'] Writing file 'C:/Users/mrmax/Videos/BedWars Clips/2022-02-24 22-36-31.mkv'... 22:36:32.142: amftest: send_frame_to_encoder: SubmitInput: 25 22:36:32.142: Error encoding with encoder 'recording_h264' 22:36:32.146: [ffmpeg muxer: 'adv_file_output'] Output of file 'C:/Users/mrmax/Videos/BedWars Clips/2022-02-24 22-36-31.mkv' stopped 22:36:32.146: Output 'adv_file_output': stopping 22:36:32.146: Output 'adv_file_output': Total frames output: 0 22:36:32.146: Output 'adv_file_output': Total drawn frames: 251 (267 attempted) 22:36:32.146: Output 'adv_file_output': Number of lagged frames due to rendering lag/stalls: 16 (6.0%) 22:36:32.146: Video stopped, number of skipped frames due to encoding lag: 12/264 (4.5%) 22:36:32.146: ==== Recording Stop ================================================

What can be causing such crashes? Those crashes with the same error messages also sometime happen if the game becomes more intensive or there is much going on. and also if I press finish recording and then switch out of the game window before it fully stopped, it crashes

e00E commented 2 years ago

This crash is the same error as https://github.com/e00E/obs-amf/issues/10 which has been fixed.