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 > Video Encoding > New and alternative video codecs

Reply
 
Thread Tools Search this Thread Display Modes
Old 16th October 2018, 12:11   #1141  |  Link
mzso
Registered User
 
Join Date: Oct 2009
Posts: 838
Quote:
Originally Posted by Clare View Post
AV1 Image File Format (AVIF) https://people.xiph.org/~negge/AVIF2018.pdf
Funnily enough there's barely any mention of AVIF. Like 8 pages.
mzso is offline   Reply With Quote
Old 16th October 2018, 16:53   #1142  |  Link
benwaggoner
Moderator
 
Join Date: Jan 2006
Location: Portland, OR
Posts: 2,889
Quote:
Originally Posted by mzso View Post
Funnily enough there's barely any mention of AVIF. Like 8 pages.
Well, everything about intra coding is relevant to AVIF.

It's interesting to see the use of VMAF for still images. I question its relevance, as VMAF was only calibrated on >=24p moving images. Has anyone published any data suggesting VMAF is useful for measuring still images?

Also, the image comparisons versus HEVC don't show the command line. HEVC doesn't have --preset stillimage like x264, but I've tried an adaption of those parameters in x265. I'd expect it would improve the quality of the HEVC (HEIF?) image significantly. I saw some of the new Adobe tools that came out the last few days also include an HEIF exporter, which would be interesting to compare. Looks like fixed QP is being used for both AV1 and HEVC, which is going to be suboptimal for both codecs. Particularly for anything that includes mixed natural/synthetic imagery.

It amused me that it ended with a frames-per-minute graph that doesn't reference frame size, nor whether this is for still only or for temporal encoding. The idea of a still image taking 38 seconds to encode is going to horrify anyone using an image server.
__________________
Ben Waggoner
Principal Video Specialist, Amazon Prime Video

My Compression Book
benwaggoner is offline   Reply With Quote
Old 16th October 2018, 17:08   #1143  |  Link
marcomsousa
Registered User
 
Join Date: Jul 2018
Posts: 47
Quote:
Originally Posted by Clare View Post
AV1 Image File Format (AVIF) https://people.xiph.org/~negge/AVIF2018.pdf
Presentation explained
https://www.youtube.com/watch?v=On9VOnIBSEs
__________________
AV1 win64 VS2017 builds
Last build here | History
I also open source the build scripts at Github: here
marcomsousa is offline   Reply With Quote
Old 16th October 2018, 19:55   #1144  |  Link
marcomsousa
Registered User
 
Join Date: Jul 2018
Posts: 47
Google released today Chrome 70

Chrome 70 adds an AV1 decoder (it's enabled by default) to Chrome Desktop x86-64 based on the official bitstream specification. At this time, support is limited to “Main” profile 0 and does not include encoding capabilities. The supported container is MP4 (ISO-BMFF) (see From raw video to web ready for a brief explanation of containers).

To try AV1:
  • Update your stable Chome just type in the url: chrome://settings/help and restart Chrome
  • Go to the YouTube TestTube page.
  • Select "Prefer AV1 for SD" or "Always Prefer AV1" to get the desired AV1 resolution. Note that at higher resolutions, AV1 is more likely to experience playback performance issues on some devices.
  • Try playing YouTube clips from the AV1 Beta Launch Playlist.
  • Confirm the codec av01 in "Stats for nerds".
__________________
AV1 win64 VS2017 builds
Last build here | History
I also open source the build scripts at Github: here

Last edited by marcomsousa; 16th October 2018 at 20:15.
marcomsousa is offline   Reply With Quote
Old 17th October 2018, 08:19   #1145  |  Link
dapperdan
Registered User
 
Join Date: Aug 2009
Posts: 179
Quote:
Originally Posted by benwaggoner View Post

And things have to get LOTS faster to do the psychovisual and rate control tuning to get AV1 into something that can be practically compared to other encoders/bitstreams. Quality won't matter within an order of magnitude of the current speeds. It's not like anyone is actually delivering in volume 1080p encoded with --preset placebo either!
Netflix already use VP9, which is lacking good rate control and psychovisual tuning, but still delivering higher quality (VMAF) at lower bitrates than their other streams (according to their blog posts) and they have said they'd roll out AV1 when it was within 4-10x slower than VP9. Presumably based on getting higher quality that makes that tradeoff worthwhile for them at that point.
Bitmovin claims their latest encoder release is twice as fast as stock AV1 and 20x slower than VP9 so things don't seem to be that far off AV1 being delivered on a large scale.

They also have the extra bonus of being able to encode their in-house stuff without film grain and add it later, a feature they were keen to have added to AV1.

Last edited by dapperdan; 17th October 2018 at 08:55.
dapperdan is offline   Reply With Quote
Old 17th October 2018, 11:44   #1146  |  Link
mzso
Registered User
 
Join Date: Oct 2009
Posts: 838
Quote:
Originally Posted by dapperdan View Post
Netflix already use VP9, which is lacking good rate control
Is that still true? My ipression these days from youtube are that the bitrates are quite stable. (Might be wrong)

Quote:
Originally Posted by dapperdan View Post
They also have the extra bonus of being able to encode their in-house stuff without film grain and add it later, a feature they were keen to have added to AV1.
Stupidest feature ever. They should have implemented an optional "hellyeahIwantnoiseLOL" decoder feature instead.
mzso is offline   Reply With Quote
Old 17th October 2018, 12:26   #1147  |  Link
LigH
German doom9/Gleitz SuMo
 
LigH's Avatar
 
Join Date: Oct 2001
Location: Germany, rural Altmark
Posts: 5,880
Don't miss the detail that bitrate optimization for streaming mainly means ABR — and the smaller the assumed decoding buffer and allowed preload time, the closer it gets to CBR, which will cause quality fluctuations. Oh, the joy of the VBV model.
__________________

New German Gleitz board
MediaFire: x264 | x265 | VPx | AOM | Xvid
LigH is offline   Reply With Quote
Old 17th October 2018, 13:37   #1148  |  Link
Adonisds
Registered User
 
Join Date: Sep 2018
Posts: 5
Quote:
Originally Posted by Nintendo Maniac 64 View Post
SVP.

Note that there are several variants of it:
  • the old SVP 3.1.7 is free but only works on Windows and with programs like MPC-HC; also it might only work with 32bit media players.
  • the full-featured version of SVP 4 is only free on Linux and works with VLC and mpv.
  • the basic yet free version of SVP 4 which only works on Windows and with programs like MPC-HC much like v3.1.7, but has considerably reduced configuration options compared to both the full-featured version and the old 3.1.7 version.
  • the paid full-featured "Pro" version on Windows and Mac is largely identical to the free version of SVP 4 on Linux, though on Windows it also works with MPC-HC as well as VLC and/or mpv.

One thing to keep in mind is that interpolating to refresh rates that are exact multiples of the source framerate will provide a smoother result with fewer artifacts - e.g. 30fps interpolated to 120Hz (4x) is better than 30fps interpolated to 144Hz (4.8x) - this is most easily accomplished with something like like MPC-HC's or madVR's built-in automatic resolution changer which can be used to change your refresh rate depending on a given video frame rate (though you may need to create a custom resolution in order to access certain refresh rates on your display).
Thanks
Adonisds is offline   Reply With Quote
Old 17th October 2018, 17:32   #1149  |  Link
Phanton_13
Registered User
 
Join Date: May 2002
Posts: 93
Quote:
Originally Posted by mzso View Post
Is that still true? My ipression these days from youtube are that the bitrates are quite stable. (Might be wrong)
Yes, you have to take in consideration that even if the bitrate is quite stable you can can have a bad distribution of it. I found that in vp9 if you limit the maximun quantification between 24-38 the overall quality is boosted without much variation on final bitrate/size (max value to be used depends of bitrate and resolution), basically you prevent the encoding rate control to be fucked sometimes with its corresponding drop in quality.

Last edited by Phanton_13; 17th October 2018 at 17:37.
Phanton_13 is offline   Reply With Quote
Old 17th October 2018, 19:51   #1150  |  Link
benwaggoner
Moderator
 
Join Date: Jan 2006
Location: Portland, OR
Posts: 2,889
Quote:
Originally Posted by dapperdan View Post
Netflix already use VP9, which is lacking good rate control and psychovisual tuning, but still delivering higher quality (VMAF) at lower bitrates than their other streams (according to their blog posts) and they have said they'd roll out AV1 when it was within 4-10x slower than VP9. Presumably based on getting higher quality that makes that tradeoff worthwhile for them at that point.
VMAF has a much better subjective correlation than SSIM, but it is pretty far from perfectly subjectively correlated with double-blind subjective measurements. The risk of any new metric is over-optimizing an encoder for metric scores instead of actual subjective experience. I saw plenty of places where it got things wrong in the previous version; I've not worked extensively with the latest update, though, which has doubtless improved.

Netflix is also going from H.264 to VP9/AV1, so they don't need to beat or even meet HEVC quality to get a worthwhile improvement, of course.

Netflix IS using HEVC for all UHD and HDR encoding AFAIK.

I'm not sure where VP9 versus H.264 quality stands today. I'm running an encoding challenge, and would love to have someone provide best-effort VP9 and even AV1 samples for comparison.

https://forum.doom9.org/showthread.php?t=175776

Quote:
Bitmovin claims their latest encoder release is twice as fast as stock AV1 and 20x slower than VP9 so things don't seem to be that far off AV1 being delivered on a large scale.
That would suggest that stock AV1 is only 40x slower than VP9, which is not my understanding at all. Perhaps they are talking the highest speed mode of their encoder, which would involve some quality degradation. Quality @ Perf is the important thing.

Getting good multithreading into AV1 is going to be really important, since time to market matters for a lot of content. Being able to encode something 8x faster on 16 cores probably doesn't matter for Netflix or YouTube given their chunking and lack of day-after-broadcast content. But it's critical for other markets, and essential for live encoding. Some of the VP9 and AV1 comparisons with x264 and x265 were artificially limited to 1-2 cores. Which makes sense if optimizing for absolute volume of minutes encoded, but understates the speed advantages of x26? for latency-critical tasks.

Quote:
They also have the extra bonus of being able to encode their in-house stuff without film grain and add it later, a feature they were keen to have added to AV1.
That is a pretty huge feature! It was optional for H.264 (only required in HD-DVD decoders, but I don't know of anything authored with it). Random noise is mathematically uncompressible, so this kind of noise synthesis is an extremely promising way to improve quality and compressibility of the most challenging content.

...and will also reveal how much of the apparent detail in film comes from the grain. Older films, particularly, look really soft without the grain, and often just don't have much spatial detail.

But don't underestimate the challenge of the removing grain part; parameterizing it and then reconstructing it on playback are the easy parts. It's way more feasible now than 12 years ago, but it isn't trivial of something that can run 100% automated without messing up sometimes.

Unfortunately production workflows put in film grain much earlier than the encoding stage, so it's already baked in way before it gets to an encoder.
__________________
Ben Waggoner
Principal Video Specialist, Amazon Prime Video

My Compression Book
benwaggoner is offline   Reply With Quote
Old 17th October 2018, 22:29   #1151  |  Link
Mr_Khyron
Member
 
Mr_Khyron's Avatar
 
Join Date: Nov 2002
Location: Sweden
Posts: 103
http://www.socionext.com/en/pr/sn_pr20180831_01e.pdf
Quote:
AV1 Hardware Accelerated Encoder Solution
There will be a demonstration of the world’s first hardware-based implementation of an AV1 encoding system.
AV1 is a new, advanced video data compression standard established by the Alliance for Open Media, a consortium
that includes Socionext, and is capable of compressing data about 30% more effectively than HEVC, whilst keeping the same image quality.
A hardware encoder already?!
Mr_Khyron is offline   Reply With Quote
Old 17th October 2018, 23:16   #1152  |  Link
utack
Registered User
 
Join Date: Apr 2018
Posts: 39
Quote:
Originally Posted by benwaggoner View Post
Random noise [...] will also reveal how much of the apparent detail in film comes from the grain.
Same frame with (from libaom) and without grain (from dav1d)
http://screenshotcomparison.com/comparison/122531
Biggest difference is in the river if you ask me
It is probably even more important when pushing the bitrate even lower in a scene like this
utack is offline   Reply With Quote
Old 17th October 2018, 23:55   #1153  |  Link
Audionut
Registered User
 
Join Date: Nov 2003
Posts: 1,267
Quote:
Originally Posted by benwaggoner View Post
Unfortunately production workflows put in film grain much earlier than the encoding stage, so it's already baked in way before it gets to an encoder.
Sounds like production workflows need overhauling.

I can't recall the specifics, but I do recall some sort of overview on bandwidth statistics, showing that some large percentage of worldwide bandwidth is Netflix.

Grain = bandwidth!
__________________
http://www.7-zip.org/
Audionut is offline   Reply With Quote
Old 18th October 2018, 01:08   #1154  |  Link
benwaggoner
Moderator
 
Join Date: Jan 2006
Location: Portland, OR
Posts: 2,889
Quote:
Originally Posted by Audionut View Post
Sounds like production workflows need overhauling.
Yeah, I'll get on that once I wean the industry off 24p .

Quote:
I can't recall the specifics, but I do recall some sort of overview on bandwidth statistics, showing that some large percentage of worldwide bandwidth is Netflix.
Yeah, the majority of internet traffic is now some sort of video. The public numbers use a wide variety of methodology, and have been known to get it wrong by a factor of 2x.

This is one reason we need to forever push the boundaries of compression efficiency. Once we get to transparent compression quality, we need to keep making the required bandwidth to reach that ever lower. Over my 25 years doing digital video, we've seen ~20% improvement every year in the bandwidth required to achieve a given level of quality. Decent 1080p today takes fewer bits than ugly 320x176 did back in 1995.
__________________
Ben Waggoner
Principal Video Specialist, Amazon Prime Video

My Compression Book
benwaggoner is offline   Reply With Quote
Old 18th October 2018, 01:13   #1155  |  Link
benwaggoner
Moderator
 
Join Date: Jan 2006
Location: Portland, OR
Posts: 2,889
Quote:
Originally Posted by Mr_Khyron View Post
It's a hardware appliance. From the description, it's a fast CPU plus some acceleration. Probably source decode, preprocessing, coarse motion search, frame type selection, weighted prediction, that kind of thing.

ASICs and even GPU-based compression was left behind with HEVC; there are so many different tools a modern codec can use (>2x more in AV1 than HEVC), and GPU's aren't great at the tight inner loops and rapid mode determination required to get good use out of a modern bitstream. Fast individual cores with strong SIMD and L1/2/3 cache run rings around hardware that best works with a one way waterfall cascade of operations.

And CABAC is all about having a few very fast cores. That needs to be done on CPU.

Heck, lots of HW-on-GPU and ASIC encoders don't even have good B-frame support.
__________________
Ben Waggoner
Principal Video Specialist, Amazon Prime Video

My Compression Book
benwaggoner is offline   Reply With Quote
Old 18th October 2018, 01:17   #1156  |  Link
benwaggoner
Moderator
 
Join Date: Jan 2006
Location: Portland, OR
Posts: 2,889
Quote:
Originally Posted by utack View Post
Same frame with (from libaom) and without grain (from dav1d)
http://screenshotcomparison.com/comparison/122531
Biggest difference is in the river if you ask me
It is probably even more important when pushing the bitrate even lower in a scene like this
Good example. And also a good illustration of the challenges with film grain removal. The degrained version also took out the ripples from the water, which were NOT grain. Small details that move stochastically can be very hard to discriminate from grain. It requires some flavor of bidirectional optical flow analysis. Turbulence can be a lot like grain mathematically, but not at all visually.
__________________
Ben Waggoner
Principal Video Specialist, Amazon Prime Video

My Compression Book
benwaggoner is offline   Reply With Quote
Old 20th October 2018, 17:37   #1157  |  Link
Selur
Registered User
 
Selur's Avatar
 
Join Date: Oct 2001
Location: Germany
Posts: 5,836
According to the Wiki (https://en.wikipedia.org/wiki/AV1#Profiles)
av1 high profile should support 4:2:0 with 8bit and 10bit, but:
Code:
ffmpeg -y -loglevel fatal -threads 8 -i "F:\TestClips&Co\files\test.avi" -map 0:0 -an -sn   -vf zscale=rangein=tv:range=tv -pix_fmt yuv420p -vsync 0  -f yuv4mpegpipe - | aomenc --passes=1 --pass=1 --target-bitrate=1500 --end-usage=vbr --profile=1 --cpu-used=3 --undershoot-pct=0 --overshoot-pct=0 --buf-sz=6 --buf-initial-sz=4 --buf-optimal-sz=5 --drop-frame=0 --kf-min-dist=0 --kf-max-dist=250 --auto-alt-ref=1 --arnr-maxframes=7 --arnr-strength=5 --noise-sensitivity=0 --sharpness=0 --static-thresh=0 --tune-content=default --tile-columns=0 --tile-rows=0 --min-gf-interval=0 --max-gf-interval=0 --threads=2 --width=640 --height=352 --i420 --input-bit-depth=8 --bit-depth=8 --row-mt=0 --cdf-update-mode=1 -o "E:\Temp\18_13_01_6710_01.ivf" -
Code:
ffmpeg -y -loglevel fatal -threads 8 -i "F:\TestClips&Co\files\test.avi" -map 0:0 -an -sn   -vf zscale=rangein=tv:range=tv -pix_fmt yuv420p10le -strict -1 -vsync 0  -f yuv4mpegpipe - | aomenc --passes=1 --pass=1 --target-bitrate=1500 --end-usage=vbr --profile=1 --cpu-used=3 --undershoot-pct=0 --overshoot-pct=0 --buf-sz=6 --buf-initial-sz=4 --buf-optimal-sz=5 --drop-frame=0 --kf-min-dist=0 --kf-max-dist=250 --auto-alt-ref=1 --arnr-maxframes=7 --arnr-strength=5 --noise-sensitivity=0 --sharpness=0 --static-thresh=0 --tune-content=default --tile-columns=0 --tile-rows=0 --min-gf-interval=0 --max-gf-interval=0 --threads=2 --width=640 --height=352 --i420 --input-bit-depth=10 --bit-depth=10 --row-mt=0 --cdf-update-mode=1 -o "E:\Temp\18_14_27_4610_01.ivf" -
give me:
Quote:
Profile 1 requires 4:4:4 color format
also av1 professional profile should support 4:2:0 with 8bit, 10bit, 12bit, but:
Code:
ffmpeg -y -loglevel fatal -threads 8 -i "F:\TestClips&Co\files\test.avi" -map 0:0 -an -sn   -vf zscale=rangein=tv:range=tv -pix_fmt yuv420p -vsync 0  -f yuv4mpegpipe - | aomenc --passes=1 --pass=1 --target-bitrate=1500 --end-usage=vbr --profile=2 --cpu-used=3 --undershoot-pct=0 --overshoot-pct=0 --buf-sz=6 --buf-initial-sz=4 --buf-optimal-sz=5 --drop-frame=0 --kf-min-dist=0 --kf-max-dist=250 --auto-alt-ref=1 --arnr-maxframes=7 --arnr-strength=5 --noise-sensitivity=0 --sharpness=0 --static-thresh=0 --tune-content=default --tile-columns=0 --tile-rows=0 --min-gf-interval=0 --max-gf-interval=0 --threads=2 --width=640 --height=352 --i420 --input-bit-depth=8 --bit-depth=8 --row-mt=0 --cdf-update-mode=1 -o "E:\Temp\18_16_01_5510_01.ivf" -
and
Code:
ffmpeg -y -loglevel fatal -threads 8 -i "F:\TestClips&Co\files\test.avi" -map 0:0 -an -sn   -vf zscale=rangein=tv:range=tv -pix_fmt yuv420p10le -strict -1 -vsync 0  -f yuv4mpegpipe - | aomenc --passes=1 --pass=1 --target-bitrate=1500 --end-usage=vbr --profile=2 --cpu-used=3 --undershoot-pct=0 --overshoot-pct=0 --buf-sz=6 --buf-initial-sz=4 --buf-optimal-sz=5 --drop-frame=0 --kf-min-dist=0 --kf-max-dist=250 --auto-alt-ref=1 --arnr-maxframes=7 --arnr-strength=5 --noise-sensitivity=0 --sharpness=0 --static-thresh=0 --tune-content=default --tile-columns=0 --tile-rows=0 --min-gf-interval=0 --max-gf-interval=0 --threads=2 --width=640 --height=352 --i420 --input-bit-depth=10 --bit-depth=10 --row-mt=0 --cdf-update-mode=1 -o "E:\Temp\18_16_44_1810_01.ivf" -
give me:
Quote:
Profile 2 bit-depth < 10 requires 4:2:2 color format

From the looks of it:
Main at least supports:
  • 420 with 8 and 10 bit
High at least supports
  • 444 with 8 and 10 bit
Professional at least supports
  • 420 with 12 bit
  • 422 with 8,10,12 bit
  • 444 with 8,10,12 bit

-> is the wiki wrong of is this a missing feature or bug in aomenc?

Some reliably info would be nice.
(using: av1 - AOMedia Project AV1 Encoder 1.0.0-810-gc9c806a80)

Cu Selur
__________________
Hybrid here in the forum, homepage
Selur is online now   Reply With Quote
Old 20th October 2018, 17:50   #1158  |  Link
nevcairiel
Registered Developer
 
Join Date: Mar 2010
Location: Hamburg/Germany
Posts: 9,758
The spec is slightly vague when it comes to this, but even if it would be technically allowed to encode a lower format in a higher profile, you should never do that. There is absolutely no reason to. It'll just screw everything over.
The only thing the profile controls is chroma/bitdepth, there are no other variables, so pick the one appropriate for your content and don't do anything else.

A very strict reading of the spec might even forbid this, ie. Section 6.4.1 (General sequence header OBU semantics) has a table with allowed features per profile, and it has no "backwards" notes.
So I'll go with that. Its not allowed.
__________________
LAV Filters - open source ffmpeg based media splitter and decoders

Last edited by nevcairiel; 20th October 2018 at 17:57.
nevcairiel is offline   Reply With Quote
Old 20th October 2018, 18:29   #1159  |  Link
Selur
Registered User
 
Selur's Avatar
 
Join Date: Oct 2001
Location: Germany
Posts: 5,836
Looking at https://aomediacodec.github.io/av1-spec/av1-spec.pdf
Quote:
The Main profile supports YUV 4:2:0 or monochrome bitstreams with bit depth equal to 8 or 10.
The High profile further adds support for 4:4:4 bitstreams with the same bit depth constraints.
Finally, the Professional profile extends support over the High profile to also bitstreams with bit depth equal to 12, and also adds support for the 4:2:2 video format.
at page 635 of 665
Thus how I understand it:
Main should support:
  • 4:2:0 at 8bit and 10bit
High should support:
  • 4:2:0 at 8bit and 10bit
  • 4:4:4 at 8bit and 10bit
and Professional should support
  • 4:2:0 at 8bit, 10bit and 12bit
  • 4:2:2 at 8bit, 10bit and 12bit
  • 4:4:4 at 8bit, 10bit and 12bit

Where as aomenc reports:
Quote:
Profile 1 requires 4:4:4 color format
and
Quote:
Profile 2 bit-depth < 10 requires 4:2:2 color format
from the looks of it aomenc has a bug here.

Looking at 6.4.1 I agree with you it should be:
  • Main:
    • 4:0:0 with 8bit
    • 4:2:0 with 8 and 10 bit
  • High:
    • 4:4:4 with 8 and 10 bit
  • Professional:
    • 4:0:0 with 8, 10, 12 bit
    • 4:2:0 with 12bit
    • 4:2:2 with 8, 10, 12 bit
    • 4:4:4 with 8, 10, 12 bit

Cu Selur
__________________
Hybrid here in the forum, homepage
Selur is online now   Reply With Quote
Old 20th October 2018, 20:17   #1160  |  Link
sneaker_ger
Registered User
 
Join Date: Dec 2002
Posts: 5,410
I think they don't want to have one format in different profiles. If I go by what you say I would have the choice to encode 4:2:0 10 bit as either Main or Professional.

So I think this is correct:
Main should support:
Monochrome at 8bit and 10bit
4:2:0 at 8bit and 10bit

High should support:
4:4:4 at 8bit and 10bit

and Professional should support
Monochrome at 12 bit
4:2:0 at 12 bit
4:2:2 at 8bit, 10bit and 12bit
4:4:4 at 12bit

Last edited by sneaker_ger; 20th October 2018 at 20:28.
sneaker_ger is offline   Reply With Quote
Reply

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 16:51.


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