Selur's Little Message Board
[HELP] Video Qualität wird schlechter über zeit - Printable Version

+- Selur's Little Message Board (https://forum.selur.net)
+-- Forum: Hybrid - Support (https://forum.selur.net/forum-1.html)
+--- Forum: Probleme und Fragen (https://forum.selur.net/forum-4.html)
+--- Thread: [HELP] Video Qualität wird schlechter über zeit (/thread-137.html)



Video Qualität wird schlechter über zeit - Amigo - 30.10.2017

Ich Habe ein seltsames Problem, das einfach nicht verschwinden will. 
Ich starte die encodierung, Die ersten Frames sehen noch gut aus, bis nach kurzer zeit (3 min in video) man schon die ersten macro blöcke sieht, und allgemein das bild immer stetig schlechter wird seid dem ersten Frame, bis das ganze bild nur noch aus farbigen Quadraten besteht.

Ich hoffe man versteht was ich meine, wo könnte der fehler liegen?
Evtl gut zu erwähnen: je nach x265 einstellung, kommt es früher bzw später zu offensichtlichen macro blöcken

Ich benutzte die neuste Hybrid version mit vapoursynth und x265.

x256:
x265 --input - --output-depth 10 --y4m --me umh --subme 3 --merange 20 --limit-modes --rect --no-open-gop --bframes 12 --ref 6 --rc-lookahead 25 --qpmax 42 --crf 14.00 --rc-grain --cbqpoffs -2 --crqpoffs -2 --nr-intra 768 --nr-inter 768 --qpfile GENERATED_QP_FILE --psy-rd 2.50 --rdoq-level 2 --psy-rdoq 10.00 --aq-motion --aq-mode 3 --deblock=-1:-1 --limit-sao --range limited --colormatrix bt709 --output "E:\Videos\Scrubs\Staffel 5\13 - Mein Leidensgenosse_new.265"

nochmal x265 wo der negative effekt früher auftritt:
x265 --pmode --pme --input - --output-depth 10 --y4m --ctu 32 --limit-tu 3 --max-tu-size 8 --me umh --subme 3 --merange 16 --limit-modes --rect --no-rskip --no-temporal-mvp --bframes 12 --weightb --ref 6 --rc-lookahead 50 --qpstep 1 --qpmax 42 --crf 14.00 --rc-grain --ipratio 1.1 --pbratio 1.0 --nr-intra 864 --nr-inter 864 --rd 4 --limit-refs 1 --psy-rd 4.00 --rdoq-level 2 --psy-rdoq 10.00 --qcomp 0.5 --aq-motion --aq-mode 3 --aq-strength 1.11 --deblock=-2:-2 --no-sao --range limited --colormatrix bt709 --output "E:\Videos\Scrubs\Staffel 5\13 - Mein Leidensgenosse_new.265"

Vapousynth:
# Imports
import os
import sys
import ctypes
Dllref = ctypes.windll.LoadLibrary("C:/Program Files/Hybrid/vsfilters/Support/libfftw3f-3.dll")
# Loading Support Files
Dllref = ctypes.windll.LoadLibrary("C:/Program Files/Hybrid/vsfilters/Support/OpenCL.dll")
import vapoursynth as vs
core = vs.get_core()
# Import scripts folder
scriptPath = 'C:/Program Files/Hybrid/vsscripts'
sys.path.append(os.path.abspath(scriptPath))
# Loading Plugins
core.std.LoadPlugin(path="C:/Program Files/Hybrid/vsfilters/DegrainFilter/DeGrainMedian/libdegrainmedian.dll")
core.std.LoadPlugin(path="C:/Program Files/Hybrid/vsfilters/GrainFilter/AddGrain/AddGrain.dll")
core.std.LoadPlugin(path="C:/Program Files/Hybrid/vsfilters/DenoiseFilter/FFT3DFilter/vsfft3dfilter.dll")
core.std.LoadPlugin(path="C:/Program Files/Hybrid/vsfilters/DenoiseFilter/DFTTest/DFTTest.dll")
core.std.LoadPlugin(path="C:/Program Files/Hybrid/vsfilters/DenoiseFilter/KNLMeansCL/KNLMeansCL.dll")
core.std.LoadPlugin(path="C:/Program Files/Hybrid/vsfilters/ResizeFilter/NNEDI3/libnnedi3.dll")
core.std.LoadPlugin(path="C:/Program Files/Hybrid/vsfilters/Support/libmvtools.dll")
core.std.LoadPlugin(path="C:/Program Files/Hybrid/vsfilters/Support/temporalsoften.dll")
core.std.LoadPlugin(path="C:/Program Files/Hybrid/vsfilters/Support/scenechange.dll")
core.std.LoadPlugin(path="C:/Program Files/Hybrid/vsfilters/Support/fmtconv.dll")
core.avs.LoadPlugin(path="C:/Program Files/Hybrid/vsfilters/SourceFilter/DGDecNV/DGDecodeNV.dll")
# Import scripts
import mvsfunc as mvsfunc
import finesharp as finesharp
import havsfunc as havsfunc
# Loading E:\Videos\Scrubs\Staffel 5\13 - Mein Leidensgenosse.mkv using DGSource
clip = core.avs.DGSource("E:/Videos/Scrubs/Staffel 5/mkv_985060540cbaf4229a791766056164b7_14604.dgi",fieldop=2)
# making sure input color matrix is set as 709
clip = core.resize.Point(clip, matrix_in_s="709")
# Making sure input color range is set to TV (limited) range.
clip = core.std.SetFrameProp(clip=clip, prop="_ColorRange", intval=1)
# with preset 'Very Slow' and 'Placebo' QTGMC is limited to 8bit YUV/GRAY only due to FF3dFilter
# setting field order to what QTGMC should assume
clip = core.std.SetFrameProp(clip=clip, prop="_FieldBased", intval=1)
# Deinterlacing using QTGMC
clip = havsfunc.QTGMC(Input=clip, Preset="Very Slow", TFF=False, InputType=0, TR2=1, Sharpness=0.2, SourceMatch=3, Lossless=2)
clip = clip[::2]
# adjusting color matrix from 470bg to 709
clip = core.resize.Bicubic(clip=clip, matrix_in_s="470bg", matrix_s="709", range_in=0, range=0)
# Color Adjustment
clip = core.std.Levels(clip=clip, min_out=0, max_out=255, gamma=1.01)
# cropping the video to 692x568
clip = core.std.CropRel(clip=clip, left=14, right=14, top=4, bottom=4)
# rainbow removal using LUTDeRainbow
clip = havsfunc.LUTDeRainbow(input=clip)
clip = core.dgm.DegrainMedian(clip=clip, interlaced=False, norow=False, opt=True)
# denoising using DFTTest
clip = core.dfttest.DFTTest(clip=clip, sigma=2.00, sigma2=2.00, swin=11, twin=5)
# sharpening using FineSharp
clip = finesharp.sharpen(clip=clip, sstr=1.20, xstr=0.17, lstr=0.49)
# resizing to 720x540
clip = core.fmtc.resample(clip=clip, kernel="blackmanminlobe", w=720, h=540, interlaced=False, interlacedd=False)
# Anti Aliasing using DAA
clip = havsfunc.daa(clip)
# adjusting output color from: YUV420P16 to YUV444P10
clip = core.resize.Bicubic(clip=clip, format=vs.YUV444P10)
# Output
clip.set_output()

PS:
Kann man eigentlich Bicubic ändern?:
# adjusting output color from: YUV420P16 to YUV444P10
clip = core.resize.Bicubic(clip=clip, format=vs.YUV444P10)



RE: Video Qualität wird schlechter über zeit - Selur - 30.10.2017

Quote:Kann man eigentlich Bicubic ändern?
Aktuell nicht, ist aber angedacht. Da nur die Farbraumkonvertierungsroutinen verwendet werden macht das Resizerwechseln wenig Sinn.
(Wird demnächst unter: 'Filtering->Vapoursynth->Misc->Color Resizer', änderbar sein)

Zu deinem merkwürdigen Makoroblock Problem:
  • Ist dein Rechner oder die Grafikkarte übertaktet?
  • Tritt der Effekt auch auf wenn Du x264 verwendest? (um zu wissen ob es am Filtering oder am Encoder liegt)
Was beim zweiten x265 Aufruf auffällt, ist dass Du open gop verwendest.
-> Was benutzt Du als Decoder?

Noch nie von so einem Problem gehört. Smile

Cu Selur


RE: Video Qualität wird schlechter über zeit - Amigo - 30.10.2017

Quote:Aktuell nicht, ist aber angedacht. Da nur die Farbraumkonvertierungsroutinen verwendet werden macht das Resizerwechseln wenig Sinn.

(Wird demnächst unter: 'Filtering->Vapoursynth->Misc->Color Resizer', änderbar sein)


Hört sich gut an Smile Hast du ein qualitäts unterschied bemerkt bsw mit blackman?

Quote:
  • Ist dein Rechner oder die Grafikkarte übertaktet?
  • Tritt der Effekt auch auf wenn Du x264 verwendest? (um zu wissen ob es am Filtering oder am Encoder liegt)
-> Was benutzt Du als Decoder?


Nein beides auf standart takt (i5-6500 leider kein k)
Nein mit bsw x264 gibt es keine probleme, bzw keine gefunden; Ich lasse das video grade mit default medium x265 laufen und es scheint keine probleme zu geben; also liegt es definitiv an meiner command line
Momentan nur MPV auf dem pc, plane aber für die zukunft (zb Neuer TV mit usb festplatte) da gerade TV's nicht immer alle parameter mögen

Haha das dachte ich mir fast, google konnte auch überhaupt nicht helfen
Es ist sogar schlimmer geworden, ich habe das video mit fehlerhaften command line nochmal laufen lassen, und es hat sich irgendwan beim scenen wechsel aufgehängt und nur noch ein frame encoded, also video 5min ---> still image
Und Beide monitore sind auch kurz aus gegangen


RE: Video Qualität wird schlechter über zeit - Horst Girtew - 30.10.2017

Kannst ja mal spaßeshalber den Taskmanager öffnen und CPU- sowie gegebenenfalls auch GPU-Last während des Encodens beobachten.


RE: Video Qualität wird schlechter über zeit - Amigo - 31.10.2017

(30.10.2017, 16:00)Horst Girtew Wrote: Kannst ja mal spaßeshalber den Taskmanager öffnen und CPU- sowie gegebenenfalls auch GPU-Last während des Encodens beobachten.

Die CPU auslastung ist konstant bei 100%; allerdings ist das bei allen meinen codierung der fall und sonst läuft alles gut. (aber am besten guck ich nochmal mit den Ressoucenmanger)
Aber ich denk auch, das mein PC an der stelle ein schluckauf hatte, und ist deswegen bei dem einen bild gehängt hat.
Es könnte auch ein CPU oder mainboard bug sein; Aber das mit den macro blöcken ist immer noch sehr komisch. 

Läuft für Macro Block ein eigener Thread? Evtl hat der auch kein platzt mehr, und drosselt sich selbst


RE: Video Qualität wird schlechter über zeit - Selur - 01.11.2017

Nein mit bsw x264 gibt es keine probleme, bzw keine gefunden; Ich lasse das video grade mit default medium x265 laufen und es scheint keine probleme zu geben; also liegt es definitiv an meiner command line
Okay. Wenn der Effekt mit x264 nicht auftritt liegt es schon mal am Encoder. (Und nicht an Vapoursynth, der Grafikkarte oder irgendwelchen Treibern.)
Mit 'default medium x265'
x265 --input - --y4m --crf 18.00 --qpfile GENERATED_QP_FILE --range limited --output OUTPUTFILE
tritt der Effekt nicht auf, aber mit:
x265 --input - --output-depth 10 --y4m --me umh --subme 3 --merange 20 --limit-modes --rect --no-open-gop --bframes 12 --ref 6 --rc-lookahead 25 --qpmax 42 --crf 14.00 --rc-grain --cbqpoffs -2 --crqpoffs -2 --nr-intra 768 --nr-inter 768 --qpfile GENERATED_QP_FILE --psy-rd 2.50 --rdoq-level 2 --psy-rdoq 10.00 --aq-motion --aq-mode 3 --deblock=-1:-1 --limit-sao --range limited --colormatrix bt709 --output "E:\Videos\Scrubs\Staffel 5\13 - Mein Leidensgenosse_new.265"
und mit:
x265 --pmode --pme --input - --output-depth 10 --y4m --ctu 32 --limit-tu 3 --max-tu-size 8 --me umh --subme 3 --merange 16 --limit-modes --rect --no-rskip --no-temporal-mvp --bframes 12 --weightb --ref 6 --rc-lookahead 50 --qpstep 1 --qpmax 42 --crf 14.00 --rc-grain --ipratio 1.1 --pbratio 1.0 --nr-intra 864 --nr-inter 864 --rd 4 --limit-refs 1 --psy-rd 4.00 --rdoq-level 2 --psy-rdoq 10.00 --qcomp 0.5 --aq-motion --aq-mode 3 --aq-strength 1.11 --deblock=-2:-2 --no-sao --range limited --colormatrix bt709 --output "E:\Videos\Scrubs\Staffel 5\13 - Mein Leidensgenosse_new.265"
noch stärker.

Würde spontan empfehlen, dass Du einen kleinen Teil mehrfach reencodest, bei dem Du den Effekt nachstellen kannst.
Sprich mit den Default Settings anfangen und die einzelnen Optionen einzeln hinzufügen und gucken welche den Effekt bei Dir triggert.

Hab versucht das hier nachzustellen, aber bei mir tritt der Effekt nicht auf. Sad

Cu Selur