Welcome to Doom9's Forum, THE in-place to be for everyone interested in DVD conversion.

Before you start posting please read the forum rules. By posting to this forum you agree to abide by the rules.

 

Go Back   Doom9's Forum > Capturing and Editing Video > Avisynth Usage

Reply
 
Thread Tools Search this Thread Display Modes
Old 10th August 2024, 23:42   #2981  |  Link
tormento
Acid fr0g
 
tormento's Avatar
 
Join Date: May 2002
Location: Italy
Posts: 2,823
Why is a mistery to me.

When, sometimes when high GPU usage is required.
__________________
@turment on Telegram
tormento is offline   Reply With Quote
Old 12th August 2024, 15:22   #2982  |  Link
LouieChuckyMerry
Registered User
 
LouieChuckyMerry's Avatar
 
Join Date: Feb 2014
Posts: 409
Quote:
Originally Posted by tormento View Post
Try with v0lt’s VirtualDub2. Avspmod is a bit picky sometimes.
Please, where would I find v0lt's VirtualDub2?
LouieChuckyMerry is offline   Reply With Quote
Old 12th August 2024, 15:38   #2983  |  Link
Guest
Guest
 
Posts: n/a
Quote:
Originally Posted by LouieChuckyMerry View Post
Please, where would I find v0lt's VirtualDub2?
Surely you've heard of Google ???

https://forum.videohelp.com/threads/...2-Fork-By-v0lt

https://github.com/v0lt/VirtualDub2
  Reply With Quote
Old 12th August 2024, 16:19   #2984  |  Link
LouieChuckyMerry
Registered User
 
LouieChuckyMerry's Avatar
 
Join Date: Feb 2014
Posts: 409
FTLOY: Thanks for that. I did search for it but couldn't find it. Honest. It was late night-early morning and I was rather, er, happy, though, so probably not thinking clearly enough.
LouieChuckyMerry is offline   Reply With Quote
Old 15th August 2024, 21:24   #2985  |  Link
tormento
Acid fr0g
 
tormento's Avatar
 
Join Date: May 2002
Location: Italy
Posts: 2,823
@dogway

This bug is true, easily reproducible.

Get a UHD, Dovi or whatever, enough that it has a PQ stream.

Use:

SetFilterMTMode("DEFAULT_MT_MODE", 2)
LoadPlugin("D:\Eseguibili\Media\DGDecNV\DGDecodeNV.dll")
LoadPlugin("D:\Eseguibili\Media\DGCube\DGCube.dll")
DGSource("M:\In 4k\Mad Max - Furiosa\furiosa_804p.dgi",ct=276,cb=276,cl=0,cr=0)
z_ConvertFormat(width=1920, height=804, pixel_type="RGBP16", colorspace_op="2020:st2084:2020:limited=>rgb:st2084:2020:full", resample_filter_uv="Spline64", dither_type="error_diffusion", use_props=0)
DGCube("D:\Programmi\Media\AviSynth+\cube\PQ_to_HLG.cube", in="full", lut="full", out="full")
z_ConvertFormat(pixel_type="YUV420P10", colorspace_op="rgb:std-b67:2020:full=>2020:std-b67:2020:limited", resample_filter_uv="Spline64", dither_type="error_diffusion", use_props=0)
SMDegrain (tr=3, thSAD=300, truemotion=false, contrasharp=false, PreFilter=6, plane=4, chroma=true, mode="MDegrain")
Prefetch(2,6)


You can find the appropriate LUT in FranceBB github page.

It will give you alternating corrupted and black frames.

It doesn't work for prefilter=6 but it does for 7 and 8. Perhaps a KNLMeansCL bug, not yours.
__________________
@turment on Telegram
tormento is offline   Reply With Quote
Old 22nd August 2024, 16:54   #2986  |  Link
Lucky38
Registered User
 
Join Date: Mar 2024
Posts: 26
@Dogway

Will SMDgrain work better with this release of mvtools https://github.com/DTL2020/mvtools/releases? or it can't adavange new feature?
Lucky38 is offline   Reply With Quote
Old 29th August 2024, 18:56   #2987  |  Link
Emulgator
Big Bit Savings Now !
 
Emulgator's Avatar
 
Join Date: Feb 2007
Location: close to the wall
Posts: 1,750
Some quickfixes on FillMissing 2.03
Code:
# FillMissing
# Based on script created by Did�e
# Based on script created by Did�e
# Modified by John Meyer on June 29, 2011
# Further modification on June 8, 2013
# Tdecimate modifications on October 26, 2021
# v1.10 - Updated and Sanitized                      by Dogway on   Mar 05, 2019
# v1.21 - Updated and Sanitized                      by Dogway on   May 18, 2021
# v1.30 - Further optimized (dcycle from DeJump)     by Dogway on   Jul 15, 2021
# v1.31 - Optimize for HBD                           by Dogway on   Aug 15, 2021
# v1.32 - Remove GrunT dependency                    by Dogway on   Oct 02, 2021
# v1.40 - BWmask bugfixes                            by Dogway on   Oct 28, 2021
# v1.41 - Rebase with latest FrameRateConverter      by Dogway on   Jan 10, 2022
# v2.00 - Replace with RIFEwrap and hence an EX mod  by Dogway on   Feb 18, 2023
# v2.01 - Add 'sc=false' to RIFEwrap to force MI     by Dogway on   Feb 18, 2024
# v2.02 - Fix gpuid  to gpu_id for RIFEwrap uses gpuid internally  by Emulgator on Aug 28, 2024
# v2.03 - Fix for bitdepths >8bpc: Downconvert BWMask input to 8 bit and expand mask output afterwards to source bitness for ex_merge    by Emulgator on Aug 29, 2024
#
# Dependencies:
#   ExTools 10.4
#   ResizersPack 12.1
#   TransformsPack 2.2.1
#   TIVTC
#
#
# - Create interpolated frames at 2x original frame rate using RIFE
# - Detect jumps
# - Create white mask at each jump point; black mask for all other frames
# - Repeat each frame of original video and use mask to "choose" between original video, or motion estimated video
# - Decimate exactly 50% to get back to original frame rate.
# - This decimation removes the dup frames from the original video and also the dups created by repeating each frame of original video
# - However, at each point where motion-estimated frame was inserted, no decimation occurs. Thus, if dups=drops, and the drop happens
#   within < "cycle" (TDecimate parameter) of the dup, the dup will be removed and the drop will be filled.
# - If no drops or dups occur within "cycle," then no motion estimation happens, and decimation merely gets back to original,
#   unchanged video.


function FillMissing(clip source, float "JumpThresh", bool "Fast", int "dcycle", bool "Show", int "gpu_id", bool "debug") {

    source

    fs  = propNumElements("_ColorRange")  > 0 ? \
          propGetInt     ("_ColorRange") == 0 : isRGB(source)

    JumpThresh = Default(JumpThresh,0.8)   # Threshold for detecting jumps. Increase to catch more jumps. Should always be less than 1.0
    Fast       = Default(Fast,     true)   # true for fast mode
    dcycle     = Default(dcycle,     20)   # Decimation cycle
    showdot    = Default(Show,    false)   # true for troubleshooting; otherwise, false
    gpu_id      = Default(gpu_id,       0)   # ID for the GPU to use
    Debug      = Default(Debug,   false)   # true for troubleshooting; otherwise, false

    double = RIFEwrap(showdot ? Subtitle("***") : last, model=Fast ? 22 : 46, sc=false, gpuid=gpu_id)

    # Remove comment from ShowMetrics, and change "return final" to "return test" to look at metrics in order to determine proper JumpThresh
    src8   = ConvertBits(8, dither=-1, fulls=fs)
    test   = ShowMetrics(src8)

    # Generate a white or black frame, depending on frame difference
    Black  = BlankClip( src8, Color_yuv=$000000, channels=0 )
    White  = BlankClip( src8, Color_yuv=$FFFFFF, channels=0 )

    # This function returns a white clip whenever a big jump is detected; otherwise a black clip is returned
    # Each YDiff must eliminate Ydiff=0 (duplicate) from moving average
    BWMask = ScriptClip(src8, function [src8,JumpThresh,Black,White] () {
            YDif1 = YDifferenceToNext(src8,2)
            YDif1 = YDif1 < 0.2 ? YDifferenceToNext(src8,3)  : YDif1

            YDif2 = YDifferenceToNext(src8,1)
            YDif2 = YDif2 < 0.2 ? YDifferenceToNext(src8,2)  : YDif2

            YDif3 = YDifferenceToNext(src8,-1)
            YDif3 = YDif3 < 0.2 ? YDifferenceToNext(src8,-2) : YDif3

            YDif4 = YDifferenceToNext(src8,-2)
            YDif4 = YDif4 < 0.2 ? YDifferenceToNext(src8,-3) : YDif4

            ((YDif1 + YDif2 + YDif3 + YDif4) * 0.25 ) / (YDifferenceToNext(src8,-1) + 0.01) <= JumpThresh ? White : Black
            })

    # Generate the 2x framerate mask needed to choose the motion-estimated frames
    themask = Interleave(Black,trim(BWMask,1,0)).ConvertBits(BitsPerComponent(source))
    
    # Merge double framerate from original with motion-esimated frames, but only where there are jumps
    # (i.e., original frames are used except at jump points)
    ex_merge(Interleave(source,source), double, themask, luma=false, UV=3)

    # Decimate half of all frames (set to twice the length of "normal" dup/drop cycle)
    RequestLinear(clim=100)
    dcycle = dcycle+dcycle%2
    final  = TDecimate(display=false, mode=1, cycleR=dcycle/2, cycle=dcycle, vfrDec=1, sdlim=0 )


    return debug ? test : final }

#----------------
# This function displays the YDiff value that will be used for detecting big jumps
# Each YDiff must eliminate Ydiff=0 (duplicate) from moving average

function ShowMetrics (clip c, float "jumpthresh") {

    ScriptClip(c, function [c] () {

        YDif1 = YDifferenceToNext(2)
        YDif1 = YDif1 < 0.2 ? YDifferenceToNext(3)  : YDif1

        YDif2 = YDifferenceToNext(1)
        YDif2 = YDif2 < 0.2 ? YDifferenceToNext(2)  : YDif2

        YDif3 = YDifferenceToNext(-1)
        YDif3 = YDif3 < 0.2 ? YDifferenceToNext(-2) : YDif3

        YDif4 = YDifferenceToNext(-2)
        YDif4 = YDif4 < 0.2 ? YDifferenceToNext(-3) : YDif4

        YDiff = ((YDif1 + YDif2 + YDif3 + YDif4) * 0.25 ) / (YDifferenceToNext(-1) + 0.01)

        Subtitle("Probability of frozen Frame= "+String(YDiff),y=26)
    } )
         Subtitle("JumpThreshold= "+String(jumpthresh),y=12)
    }
__________________
"To bypass shortcuts and find suffering...is called QUALity" (Die toten Augen von Friedrichshain)
"Data reduction ? Yep, Sir. We're that issue working on. Synce invntoin uf lingöage..."
Emulgator is online now   Reply With Quote
Old 3rd September 2024, 14:27   #2988  |  Link
rgr
Registered User
 
Join Date: Jun 2022
Posts: 109
1. A link would be useful.
2. RIFE has two parameters for detecting and handling scene changes: sc and sc1. The latter is probably even more useful.
rgr is offline   Reply With Quote
Old 4th September 2024, 20:45   #2989  |  Link
Lucky38
Registered User
 
Join Date: Mar 2024
Posts: 26
Hi All,

i'm look help with issue i have got: Source file is HDR with DolbyVision prof 8.1 and when i do resize 2160p -> 1080p i have got strange "halo" on man's head
https://imgur.com/a/AMFxDq7

this is my avisynth call:

SetFilterMTMode("DEFAULT_MT_MODE", 2)
SetMemoryMax()
SetCacheMode(0)
ConvertBits(16)
deep_resize(1920)
SMDegrain(mode="TemporalSoften", tr=2, thSAD=300, thSCD2 = 100, prefilter=0, contrasharp=false, limits=false, refinemotion=true, LFR=true, DCTFlicker=true, Chroma=true, Truemotion=false, Search=3, pel=1)
ex_unsharp(0.3,Fc=width()/1.5,safe=true) # Remove some of the dreamy look
ex_unsharp(0.8,Fc=width()*1.6,safe=true) # Extra fine sharpness
GradFun3plus(thr=0.35, radius=10, mask=2, thr_det=2, elast=2, smode=0, UV=3)
ConvertBits(10,dither=1)
Prefetch(8,12)

no idea why its happening....

edit:

This call (default falues from StaxRip) give me the same result:


ConvertBits(16)
Spline16Resize(1920, 804)
SMDegrain(tr=2, thSAD=300, prefilter=-1, contrasharp=true, refinemotion=true)
LSFmod(defaults="slow", strength=100, Smode=5, Smethod=3, kernel=11, secure=true, Szrp=16, Spwr=4, SdmpLo=4, SdmpHi=48, Lmode=4, overshoot=1, undershoot=1, Overshoot2=1, Undershoot2=1, soft=-2, soothe=true, keep=20, edgemode=0, edgemaskHQ=true, ss_x=1.50, ss_y=1.50, dest_x=1920, dest_y=804, show=false, screenW=1280, screenH=1024)
ConvertToStacked()
GradFun3(thr=0.5, radius=12, mode=6, smode=1)
ConvertFromStacked()
Prefetch(8)

Last edited by Lucky38; 4th September 2024 at 20:55.
Lucky38 is offline   Reply With Quote
Old 5th September 2024, 01:12   #2990  |  Link
Guest
Guest
 
Posts: n/a
Quote:
Originally Posted by Lucky38 View Post
Hi All,

i'm look help with issue i have got: Source file is HDR with DolbyVision prof 8.1 and when i do resize 2160p -> 1080p i have got strange "halo" on man's head
https://imgur.com/a/AMFxDq7

this is my avisynth call:

SetFilterMTMode("DEFAULT_MT_MODE", 2)
SetMemoryMax()
SetCacheMode(0)
ConvertBits(16)
deep_resize(1920)
SMDegrain(mode="TemporalSoften", tr=2, thSAD=300, thSCD2 = 100, prefilter=0, contrasharp=false, limits=false, refinemotion=true, LFR=true, DCTFlicker=true, Chroma=true, Truemotion=false, Search=3, pel=1)
ex_unsharp(0.3,Fc=width()/1.5,safe=true) # Remove some of the dreamy look
ex_unsharp(0.8,Fc=width()*1.6,safe=true) # Extra fine sharpness
GradFun3plus(thr=0.35, radius=10, mask=2, thr_det=2, elast=2, smode=0, UV=3)
ConvertBits(10,dither=1)
Prefetch(8,12)

no idea why its happening....

edit:

This call (default falues from StaxRip) give me the same result:


ConvertBits(16)
Spline16Resize(1920, 804)
SMDegrain(tr=2, thSAD=300, prefilter=-1, contrasharp=true, refinemotion=true)
LSFmod(defaults="slow", strength=100, Smode=5, Smethod=3, kernel=11, secure=true, Szrp=16, Spwr=4, SdmpLo=4, SdmpHi=48, Lmode=4, overshoot=1, undershoot=1, Overshoot2=1, Undershoot2=1, soft=-2, soothe=true, keep=20, edgemode=0, edgemaskHQ=true, ss_x=1.50, ss_y=1.50, dest_x=1920, dest_y=804, show=false, screenW=1280, screenH=1024)
ConvertToStacked()
GradFun3(thr=0.5, radius=12, mode=6, smode=1)
ConvertFromStacked()
Prefetch(8)
I certainly wouldn't call that a "halo", looks like some kid has scribbled around his head with a pencil....strange.

It would be interesting if you could post a sample of this video, so it can be tried by others.
  Reply With Quote
Old 5th September 2024, 08:53   #2991  |  Link
Lucky38
Registered User
 
Join Date: Mar 2024
Posts: 26
Quote:
Originally Posted by FTLOY View Post
I certainly wouldn't call that a "halo", looks like some kid has scribbled around his head with a pencil....strange.

It would be interesting if you could post a sample of this video, so it can be tried by others.
this is the sample

https://mega.nz/file/QIgm0JyZ#NJIcrq...x8ot1k9VxNLoA4

edit/update:

Deep resize use only with this deep_resize(1920) gives the same issue. changing settings to default for x265 and use old version of it x265-3.5+156+14-df2e4c31e-.Mod-by-Patman.-x64-avx2-msvc1937.7z do not solve issue.

Last edited by Lucky38; 5th September 2024 at 09:28.
Lucky38 is offline   Reply With Quote
Old 5th September 2024, 11:36   #2992  |  Link
Guest
Guest
 
Posts: n/a
Quote:
Originally Posted by Lucky38 View Post
this is the sample

https://mega.nz/file/QIgm0JyZ#NJIcrq...x8ot1k9VxNLoA4

edit/update:

Deep resize use only with this deep_resize(1920) gives the same issue. changing settings to default for x265 and use old version of it x265-3.5+156+14-df2e4c31e-.Mod-by-Patman.-x64-avx2-msvc1937.7z do not solve issue.
I have downloaded the sample, and it certainly hasn't got many issues, and certainly no "scribble" line around the guy's head.

What movie is that ??

To be clear, what is it that you're trying to achieve with this conversion ??

Some degraining & resizing down to 1080p ??

What app(s) do you prefer to use ?? (You mentioned StaxRip)
  Reply With Quote
Old 5th September 2024, 11:53   #2993  |  Link
Lucky38
Registered User
 
Join Date: Mar 2024
Posts: 26
Quote:
Originally Posted by FTLOY View Post
I have downloaded the sample, and it certainly hasn't got many issues, and certainly no "scribble" line around the guy's head.

What movie is that ??

To be clear, what is it that you're trying to achieve with this conversion ??

Some degraining & resizing down to 1080p ??

What app(s) do you prefer to use ?? (You mentioned StaxRip)
hi,

this is andor s01e01

i would like to do some degraining & resizing down to 1080p and sharpening using Staxrip.

when i do degrain, sharpening for 2160p this "scribble" is little visible when you go frame by frame.... When you encode with resize only looks more visible...

I use x265 medium in crf 18-20 (with custom settings) for both 2160/1080 but when i set crf 14 for 1080 it looks better..

have you downscale it during your test?

edit:

with LFR=false, DCTFlicker=false i see it when playing frame by frame but it is less visible compare to LFR=true, DCTFlicker=true

edit 2:

this setting --rskip 2 --rskip-edge-threshold 2 from x265 also highight this problem... without it is less noticable

Last edited by Lucky38; 5th September 2024 at 13:00.
Lucky38 is offline   Reply With Quote
Old 5th September 2024, 13:28   #2994  |  Link
Guest
Guest
 
Posts: n/a
Quote:
Originally Posted by Lucky38 View Post

edit:

with LFR=false, DCTFlicker=false i see it when playing frame by frame but it is less visible compare to LFR=true, DCTFlicker=true

edit 2:

this setting --rskip 2 --rskip-edge-threshold 2 from x265 also highight this problem... without it is less noticable
Having a closer look at your sample, I don't think much needs to be done to it, some of those "calls" are possibly not required, and it's messing up what should be a simple degrain & resize.

I will have a play with it in a few days...
  Reply With Quote
Old 5th September 2024, 14:02   #2995  |  Link
Boulder
Pig on the wing
 
Boulder's Avatar
 
Join Date: Mar 2002
Location: Finland
Posts: 5,804
Quote:
ConvertToStacked()
GradFun3(thr=0.5, radius=12, mode=6, smode=1)
ConvertFromStacked()
I don't think those Convert.. calls are needed. Use Dogway's GradFun3Plus instead of the old GradFun3.
__________________
And if the band you're in starts playing different tunes
I'll see you on the dark side of the Moon...
Boulder is offline   Reply With Quote
Old 5th September 2024, 17:17   #2996  |  Link
Lucky38
Registered User
 
Join Date: Mar 2024
Posts: 26
Quote:
Originally Posted by Boulder View Post
I don't think those Convert.. calls are needed. Use Dogway's GradFun3Plus instead of the old GradFun3.

hi,

yes i know... i used old one to see if this issue could be related to some filters.... normally i use only Dogway's filters....

this is my last call and results:

SetFilterMTMode("DEFAULT_MT_MODE", 2)
SetMemoryMax()
SetCacheMode(0)
ConvertBits(16)
deep_resize(1920)
SMDegrain(tr=2, thSAD=350, thSCD2 = 100, prefilter=0, contrasharp=false, rfilter=3, LFR=false, DCTFlicker=false)
ex_unsharp(0.3,Fc=width()/1.5,safe=true) # Remove some of the dreamy look
ex_unsharp(1.0,Fc=width()*2.0,safe=true) # Extra fine sharpness
GradFun3plus(thr=0.35, radius=10, mask=2, thr_det=2, elast=2, smode=0, UV=3)
ConvertBits(10,dither=1)
Prefetch(8,12)

https://mega.nz/file/hEYkFYKR#HVMjjn...7B7etJFtoosrxQ

x265:

--crf 18 --output-depth 10 --profile main10 --rd 4 --refine-mv 1 --aq-mode 3 --vbv-bufsize 17500 --vbv-maxrate 18000 --subme 5 --me star --max-merge 5 --weightb --bframes 6 --rc-lookahead 80 --ref 6 --min-keyint 23 --no-open-gop --master-display "G(8500,39850)B(6550,2300)R(35400,14600)WP(15635,16450)L(10000000,1)" --hdr10 --colorprim bt2020 --colormatrix bt2020nc --transfer smpte2084 --range limited --chromaloc 2 --dolby-vision-profile 8.1 --dolby-vision-rpu "E:\_temp\HDRDVmetadata.rpu" --repeat-headers --aud --hrd --limit-sao --selective-sao 4 --no-strong-intra-smoothing

and avs+ [INFO]: AviSynth+ 3.7.3 (r4003, 3.7, x86_64)

Last edited by Lucky38; 5th September 2024 at 17:37.
Lucky38 is offline   Reply With Quote
Old 5th September 2024, 18:48   #2997  |  Link
Boulder
Pig on the wing
 
Boulder's Avatar
 
Join Date: Mar 2002
Location: Finland
Posts: 5,804
I think you should try removing the filters one by one to see which one triggers what you see.
__________________
And if the band you're in starts playing different tunes
I'll see you on the dark side of the Moon...
Boulder is offline   Reply With Quote
Old 5th September 2024, 19:16   #2998  |  Link
Lucky38
Registered User
 
Join Date: Mar 2024
Posts: 26
Quote:
Originally Posted by Boulder View Post
I think you should try removing the filters one by one to see which one triggers what you see.
i have alredy do in this way...

as i stated few post above during resizing to 1080p this issue accures more ( noticable ) than in 2160p...

strange think is that this issue is present only for this actor head...
next actor does not have this issue closly in his head....

this is my observation in his head motion...
Lucky38 is offline   Reply With Quote
Old 5th September 2024, 19:20   #2999  |  Link
Boulder
Pig on the wing
 
Boulder's Avatar
 
Join Date: Mar 2002
Location: Finland
Posts: 5,804
One thing is to change the resizer. Just try a regular Spline36Resize to see if it has the same effect. It's possible that the resampling kernel selected by deep_resize is not good for your source.
__________________
And if the band you're in starts playing different tunes
I'll see you on the dark side of the Moon...
Boulder is offline   Reply With Quote
Old 5th September 2024, 19:40   #3000  |  Link
Lucky38
Registered User
 
Join Date: Mar 2024
Posts: 26
Quote:
Originally Posted by Boulder View Post
One thing is to change the resizer. Just try a regular Spline36Resize to see if it has the same effect. It's possible that the resampling kernel selected by deep_resize is not good for your source.
thx for sugestion...

x265 settings are the same like i have posted above...
my standard avisynth call with replaced resizer:

SetFilterMTMode("DEFAULT_MT_MODE", 2)
SetMemoryMax()
SetCacheMode(0)
ConvertBits(16)
Spline36Resize(1920, 804)
SMDegrain(tr=2, thSAD=350, thSCD2 = 100, prefilter=0, contrasharp=false, rfilter=3, LFR=false, DCTFlicker=false)
ex_unsharp(0.3,Fc=width()/1.5,safe=true) # Remove some of the dreamy look
ex_unsharp(1.0,Fc=width()*2.0,safe=true) # Extra fine sharpness
GradFun3plus(thr=0.35, radius=10, mask=2, thr_det=2, elast=2, smode=0, UV=3)
ConvertBits(10,dither=1)
Prefetch(8,12)

results:

https://mega.nz/file/INIWBCSK#ptokbQ...m6SXh3bv1_1Bt4

i still see this issue....
Lucky38 is offline   Reply With Quote
Reply

Tags
avisynth, dogway, filters, hbd, packs

Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT +1. The time now is 19:14.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2024, vBulletin Solutions Inc.