Log in

View Full Version : Alliance for Open Media codecs


Pages : 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 [44] 45 46 47 48 49 50 51 52

Rumbah
5th May 2020, 22:41
Did you enable Powershell script execution?

stax76
5th May 2020, 23:03
For non-free codes you have to build it yourself then, because the resultant binary will be unredistributable. Anyone distributes that binary (like what Patman is doing) is illegal.

Which codec?

mzso
6th May 2020, 10:45
Did you enable Powershell script execution?

I don't know what that entails. I ran the .bat in powershell.

Rumbah
6th May 2020, 16:25
I don't know what that entails. I ran the .bat in powershell.

Then that might be the problem. Nowadays Powershell blocks scripts by default. And the bat file calls a .ps1 script.

You can test it by callingGet-ExecutionPolicyin Powershell.

If it says restricted you have to change it.

You have to open a Powershell window as Administrator and set the policy to unrestricted with Set-ExecutionPolicy Unrestricted
Then you can close it and try to start them MABS bat again. (I just tested MABS and on the first run it got stuck but closing it and then starting it again it downloaded everything and worked)

You can set the setting back to restricted in an admin shell by Set-ExecutionPolicy Restricted

But generally you don't have to worry much as this whole blocking thing is no security feature. There are many ways to circumvent it and it's more for admins to not hurt themselves by accident.


PS: If you only build for yourself you can try replacing "-mtune=generic" with "-march=native" in media-autobuild_suite.bat to optimize for your CPU.

LigH
8th May 2020, 07:57
MPC-HC v1.5.5

Are you sure? My current version is 1.9.2, released by clsid (https://github.com/clsid2/mpc-hc/releases).

hajj_3
8th May 2020, 09:32
Are you sure? My current version is 1.9.2, released by clsid (https://github.com/clsid2/mpc-hc/releases).

oh, i mean't MPC-BE, sorry about that.

marcomsousa
10th May 2020, 23:46
If you don't want to compile your self ffmpeg and all you have already here a docker image with that: https://hub.docker.com/r/singhkays/ffmpeg-av1-libaom (updated every day)
ARG nasm_version=2.14.02
ARG x264_version=master
ARG x265_version=3.2.1
ARG libvpx_version=v1.8.2
ARG fdk_aac_version=v2.0.1
ARG lame_version=3.100
ARG opus_version=v1.3.1
ARG libaom_version=master
ARG vmaf_version=v1.3.15
ARG ffmpeg_version=4.2.2

If you want to compile you self you have here the script: https://github.com/singhkays/docker-ffmpeg-av1-libaom/blob/master/Dockerfile (Ubuntu Bionic)

mzso
11th May 2020, 14:37
Then that might be the problem. Nowadays Powershell blocks scripts by default. And the bat file calls a .ps1 script.

You can test it by callingGet-ExecutionPolicyin Powershell.

If it says restricted you have to change it.

You have to open a Powershell window as Administrator and set the policy to unrestricted with Set-ExecutionPolicy Unrestricted
Then you can close it and try to start them MABS bat again. (I just tested MABS and on the first run it got stuck but closing it and then starting it again it downloaded everything and worked)

You can set the setting back to restricted in an admin shell by Set-ExecutionPolicy Restricted

But generally you don't have to worry much as this whole blocking thing is no security feature. There are many ways to circumvent it and it's more for admins to not hurt themselves by accident.


PS: If you only build for yourself you can try replacing "-mtune=generic" with "-march=native" in media-autobuild_suite.bat to optimize for your CPU.

I did that. It still failed at the first step with the same error:
PS E:\autobuild\media-autobuild_suite-master_2020-05-02> .\media-autobuild_suite.bat
-------------------------------------------------------------------------------

- Download and install msys2 basic system

-------------------------------------------------------------------------------
-------------------------------------------------------------------------------

- Downloading and unpacking msys2 basic system

-------------------------------------------------------------------------------
The Win32 internal error "Egy rendszerhez csatlakoztatott eszköz nem működik" 0x1F occurred while writing to the cons
ole output buffer at the current cursor position. Contact Microsoft Customer Support Services.

'7za' is not recognized as an internal or external command,
operable program or batch file.
PS E:\autobuild\media-autobuild_suite-master_2020-05-02>

Greenhorn
11th May 2020, 20:44
I've experienced the same problem in the past.

Either it's got an invisible dependency on 7Zip, or it's trying to download MinGW and failing, without retrying on failure.

Rumbah
13th May 2020, 16:22
I did that. It still failed at the first step with the same error:
PS E:\autobuild\media-autobuild_suite-master_2020-05-02> .\media-autobuild_suite.bat
-------------------------------------------------------------------------------

- Download and install msys2 basic system

-------------------------------------------------------------------------------
-------------------------------------------------------------------------------

- Downloading and unpacking msys2 basic system

-------------------------------------------------------------------------------
The Win32 internal error "Egy rendszerhez csatlakoztatott eszköz nem működik" 0x1F occurred while writing to the cons
ole output buffer at the current cursor position. Contact Microsoft Customer Support Services.

'7za' is not recognized as an internal or external command,
operable program or batch file.
PS E:\autobuild\media-autobuild_suite-master_2020-05-02>

Are you on a NTFS drive? You need NTFS.

If that does not help just open a github issue with the required log files. They help pretty fast.

hajj_3
17th May 2020, 20:12
DXVA Checker 4.3.0 has been updated to add support for AV1.

Changelog:

Added the following alternative names of Decoder Device
AV1_VLD_Profile0
AV1_VLD_Profile1
AV1_VLD_Profile2
AV1_VLD_12bit_Profile2
AV1_VLD_12bit_Profile2_420
Minor fix

nevcairiel
18th May 2020, 08:17
Added the following alternative names of Decoder Device
AV1_VLD_Profile0
AV1_VLD_Profile1
AV1_VLD_Profile2
AV1_VLD_12bit_Profile2
AV1_VLD_12bit_Profile2_420


AV1 support was added to DXVA (Microsofts hardware acceleration API) in the Windows 10 2004 SDK update, hence where those come from. But no indication of hardware that uses them quite yet.
The other typical structures to convey codec information to the hardware are still suspiciously absent however, so it may not be fully finalized.

LigH
18th May 2020, 08:19
Your build is the last implementation dor VPx?

Will post new releases of VPx, AOM, etc. when time permits ... maybe today?

mzso
18th May 2020, 09:07
Are you on a NTFS drive? You need NTFS.
Yes, I am.

Sagittaire
18th May 2020, 12:04
Will post new releases of VPx, AOM, etc. when time permits ... maybe today?

I can find recente realise for x265, aom ... but not for VPx

hajj_3
19th May 2020, 10:37
Libaom v2.0.0 "Applejack" has been released: https://aomedia.googlesource.com/aom/+/refs/tags/v2.0.0

First official release of libaom.
This release includes new real-time mode and SVC support.
- Upgrading:
AOM_SET_POSTPROC, AOM_CODEC_CAP_POSTPROC and AOM_CODEC_USE_POSTPROC are
removed.
AOM_SET_DBG_* is removed.
Multi-resolution encoding is removed.
put_frame and put_slice callbacks are removed.
- Enhancements:
Full-sweep document update for codec controls.

LigH
19th May 2020, 11:01
Sorry for the delay: A bug in shaderc blocked the suite until I disabled mpv temporarily... / VPx is here (https://forum.doom9.org/showthread.php?p=1912629#post1912629).

The media-autobuild suite did not yet build an aomenc binary that reports itself as v2.0.0, maybe a merge to master is missing?

New uploads: (MSYS2; MinGW32 / MinGW64: GCC 10.1.0)

AOM v1.0.0-errata1-avif-893-g9c38f3b0f (https://www.mediafire.com/file/nt60ej3kez3gu0y/aom_v1.0.0-errata1-avif-893-g9c38f3b0f.7z/file)

rav1e 0.3.0 (02018bf / 2020-05-19) (https://www.mediafire.com/file/lhzqyc2yba6dw91/rav1e_0.3.0_2020-05-19_02018bf.7z/file)

dav1d 0.7.0 (cbe05cf / 2020-05-19) (https://www.mediafire.com/file/w4z9snnnoi0406f/dav1d_0.7.0_2020-05-19_cbe05cf.7z/file)

marcomsousa
19th May 2020, 20:25
I generated one time build for libaom v2.0.0 stable branch.
https://ci.appveyor.com/project/marcomsousa/build-aom/builds/32987143/artifacts

stax76
20th May 2020, 08:42
I generated one time build for libaom v2.0.0 stable branch.
https://ci.appveyor.com/project/marcomsousa/build-aom/builds/32987143/artifacts

Thanks for the build.

Has this encoder something like a github repo?

It seems there is absolutely no version information provided by the encoder.

LigH
20th May 2020, 08:56
If you use the media-autobuild suite:
In the media-suite_compile.sh you can read that it is downloaded from https://aomedia.googlesource.com/aom by a helper function do_vcs() in media-suite_helper.sh which handles a variety of methods.

Apparently there is a git repo behind this URL, which appears as website with an own design in a browser. There are branches (MABS uses the "master" branch usually) and tags. Their relation is not very obvious, though. I am not sure but I believe there was an additional shell script which collects required information to store the version information as "tag+updatecount" in a header file...

stax76
20th May 2020, 09:55
Thanks for the info LigH, so no issue tracker. Maybe a developer reads here and bookmarks this post as feature request, I would like to suggest providing version info, examples:


Desktop> x265 --help
x265 [info]: HEVC encoder version 3.3+27-g4780a8d99
x265 [info]: build info [Windows][GCC 11.0.0][64 bit] 8bit+10bit+12bit

Syntax: x265 [options] infile [-o] outfile
infile can be YUV or Y4M
outfile is raw HEVC bitstream

Executable Options:
-h/--help Show this help text and exit
--fullhelp Show all options and exit
-V/--version Show version info and exit



Desktop> nvencc64 --help
NVEncC (x64) 5.01 (r1507) by rigaya, May 7 2020 12:04:16 (VC 1916/Win/avx2)
[NVENC API v9.1, CUDA 10.1]
reader: raw, y4m, avi, avs, vpy, avsw, avhw [H.264/AVC, H.265/HEVC, MPEG2, VP8, VP9, VC-1, MPEG1, MPEG4]
Usage: NVEncC.exe [Options] -i <input file> -o <output file>

Input can be avi, avs, raw YUV, YUV4MPEG2(y4m).
When Input is in raw format, fps, input-res is required.

Ouput format will be in raw H.264/AVC or H.265/HEVC ES.

Example:
NVEncC -i "<avsfilename>" -o "<outfilename>"
avs2pipemod -y4mp "<avsfile>" | NVEncC --y4m -i - -o "<outfilename>"

Information Options:
-h,-? --help print help
-v,--version print version info

marcomsousa
20th May 2020, 10:30
Thanks for the build.

Has this encoder something like a github repo?
It seems there is absolutely no version information provided by the encoder.

Encoder git repo: https://aomedia.googlesource.com/aom/+/refs/tags/v2.0.0

Build script for vs2019 git repo: https://github.com/marcomsousa/build_aom

In every libaom commit (in master branch) a build is automatically generated: https://ci.appveyor.com/project/marcomsousa/build-aom/history
Now it goes with v2.0.0-255-ge0be17e7f



The version you can see if you perform:
aomenc.exe --help
(...)
Included encoders:
av1 - AOMedia Project AV1 Encoder 2.0.0 (default)
Use --codec to switch to a non-default encoder.


aomenc.exe --help
(...)
Included encoders:
av1 - AOMedia Project AV1 Encoder 2.0.0-255-ge0be17e7f (default)
Use --codec to switch to a non-default encoder.

hydra3333
20th May 2020, 10:33
no issue tracker.
is this it ?
https://bugs.chromium.org/p/aomedia/issues/list
google look at and respond in it, eg by addressing a couple of very trivial things I may have raised.

LigH
20th May 2020, 15:17
There must have been a merge in the meantime.

AOM v2.0.0-255-ge0be17e7f (https://www.mediafire.com/file/pfpmduhd8xuh79l/aom_v2.0.0-255-ge0be17e7f.7z/file)

And yes, the bug tracker should match.

benwaggoner
21st May 2020, 22:35
AV1 support was added to DXVA (Microsofts hardware acceleration API) in the Windows 10 2004 SDK update, hence where those come from. But no indication of hardware that uses them quite yet.
The other typical structures to convey codec information to the hardware are still suspiciously absent however, so it may not be fully finalized.
There aren't any GPUs out or (IIRC) announced with HW AV1 decode. I'm confident they're being worked on, of course, although it's speculation as to when, which, and how universally across product lines.

birdie
22nd May 2020, 16:04
Looks like Tiger Lake will be the first x86 uArch to support AV1 HW decoding:

https://pbs.twimg.com/media/EYn7NM0VAAEnkO8?format=png&name=orig
https://pbs.twimg.com/media/EYn7f9BUEAAs-Io?format=png&name=orig
https://pbs.twimg.com/media/EYn72cxUEAgq_zV?format=png&name=orig
https://pbs.twimg.com/media/EYn8WKXU0AAV42f?format=png&name=orig


I do hope NVIDIA will support it as well in Ampere.

Yups
22nd May 2020, 16:50
I was hoping for encoding as well but it seems not so easy to implement. Is it correct that Gen12 only supports 4K video decoding?

Blue_MiSfit
22nd May 2020, 18:05
Source for those captures?

Yups
22nd May 2020, 18:32
Momomo_us posted this: https://twitter.com/momomo_us/status/1263818639423074304

He didn't reveal the original source.

benwaggoner
22nd May 2020, 18:56
Looks like Tiger Lake will be the first x86 uArch to support AV1 HW decoding:

https://pbs.twimg.com/media/EYn7NM0VAAEnkO8?format=png&name=orig
https://pbs.twimg.com/media/EYn7f9BUEAAs-Io?format=png&name=orig
https://pbs.twimg.com/media/EYn72cxUEAgq_zV?format=png&name=orig
https://pbs.twimg.com/media/EYn8WKXU0AAV42f?format=png&name=orig

I do hope NVIDIA will support it as well in Ampere.
Looks like a good media unit for a non-discreet GPU. I think 12-bit HEVC decode is new as well. I wonder what use cases the 12-bit support is; NVidia has had it for a few years as well. I can see it being used for high-bitrate mezzanine files or something. Can't imagine a 12-bit VP9 scenario, though.

I note they don't list bit depths for AV1. Does that imply 8-bit only? They don't list it for AVC either, does Intel support >8-bit AVC decode, or only with more advanced codecs.

Yups
22nd May 2020, 19:07
I note they don't list bit depths for AV1. Does that imply 8-bit only? They don't list it for AVC either, does Intel support >8-bit AVC decode, or only with more advanced codecs.


There are bit depths listed but it's not clear to me. One the left it says profile0 (8 bit and 10 bit 4:2:0) 4k60 video, 16K still. The text on the right side is confusing. Intel only supports 8 bit for AVC by the way.

hajj_3
22nd May 2020, 19:37
Looks like a good media unit for a non-discreet GPU. I think 12-bit HEVC decode is new as well. I wonder what use cases the 12-bit support is; NVidia has had it for a few years as well. I can see it being used for high-bitrate mezzanine files or something. Can't imagine a 12-bit VP9 scenario, though.

I note they don't list bit depths for AV1. Does that imply 8-bit only?

12bit av1 with rocket lake, tiger lake and their standalone graphics card:

https://cdn.wccftech.com/wp-content/uploads/2020/03/Intel-12th-Generation-Rocket-Lake-S-Desktop-CPU-Lineup-Platform-Details-1480x720.jpg

Yups
22nd May 2020, 19:50
12bit av1 with rocket lake, tiger lake and their standalone graphics card:


This is an RKL-S slide, you can never know if there is a newer decoder build in for RKL-S because it comes about half a year later than TGL-U. Also this slide isn't as detailed as today's leak, it could be a mistake there. 12 bit HEVC but not for AV1, it could be.

Yups
22nd May 2020, 20:41
10 bit sure but do we really need 12 bit?

Beelzebubu
23rd May 2020, 00:09
it would be disappointing if they didn't support 8K, 12-bit and 4:4:4 like VP9 hardware decoder does in Gen12/Xe.

It says profile 0 only, which is 4:2:0 and 8+10bit only. 4:4:4 is profile 1, 12-bit is profile 2 (along with 4:2:2 for 8+10bit).

benwaggoner
23rd May 2020, 01:43
10 bit sure but do we really need 12 bit?
Dolby Vision is internally 12-bit, and does tricks with dual layers or a non-backwards compatible base layer and metadata to reconstruct the video in an internal 12-bit format. If we had 12-bit decoders when DoVi was coming out, we'd probably just have a HDR-12 base layer + metadata.

Only current use of 12-bit for anything I can think of is in intermediate post production or high end mezzanine formats like J2K IMF.

soresu
23rd May 2020, 08:10
Dolby Vision is internally 12-bit, and does tricks with dual layers or a non-backwards compatible base layer and metadata to reconstruct the video in an internal 12-bit format. If we had 12-bit decoders when DoVi was coming out, we'd probably just have a HDR-12 base layer + metadata.

Only current use of 12-bit for anything I can think of is in intermediate post production or high end mezzanine formats like J2K IMF.

Isn't all this pointless when hardly any TVs actually support 12 bit though?

Yups
23rd May 2020, 12:25
It says profile 0 only, which is 4:2:0 and 8+10bit only. 4:4:4 is profile 1, 12-bit is profile 2 (along with 4:2:2 for 8+10bit).


Even in this leak there is a discrepancy. In the table there is 10 bit for video but the text says it's 8 bit for video. I'm keen to believe the table in this case but not sure. In the RKL-S slide there is 12 bit AV1, it could be just a mistake (confused with 12 Bit HEVC), it could refer to still image or it could be that the Gen12LP in RKL-S uses a newer decoding unit than TGL-U.

Beelzebubu
23rd May 2020, 19:50
Even in this leak there is a discrepancy. In the table there is 10 bit for video but the text says it's 8 bit for video.

I think you're misreading a table converted to text. The table says "profile 0 (8-bit and 10-bit 4:2:0) 4k60 video, 16k still (HW decode)". The text says "AV1 codec support<newline>Profile 0 (10-bit 4:2:0)<tab>16k (still picture)<newline>Profile 0 (8-bit 4:2:0)<tab>4k x 2k (video)". I inserted the <tab> because it matches what the table says: 4k60 (4k x 2k) video, 16k still (picture) and each supporting profile 0 (8-bit & 10-bit, 4:2:0).

Sagittaire
23rd May 2020, 20:41
aomenc --denoise-noise-level= does the same as a FFT denoiser + examples/noise_model + aomenc --film-grain-table=.

Well seem not work. I have denoise but seem not have FGM in output.

You have command line exemple?

Beelzebubu
23rd May 2020, 20:54
Well seem not work. I have denoise but seem not have FGM in output.

Please show your commandlines.

Sagittaire
23rd May 2020, 21:15
Please show your commandlines.

for exemple.

aomenc.exe -o ToS-1000.ivf C:\ToS_1920x800_xdither.y4m --ivf --i420 --width=1920 --height=800 --fps=25000/1000 --passes=2 --pass=1 --fpf=stats.log --target-bitrate=960 --maxsection-pct=4000 --buf-sz=12000 --buf-initial-sz=8000 --buf-optimal-sz=10000 --end-usage=vbr --cpu-used=3 --verbose --tune=ssim --psnr --q-hist=30 --bit-depth=10 --bias-pct=75 --kf-max-dist=120 --aq-mode=2 --test-decode=fatal --limit=1332 --skip=214 --denoise-noise-level=25

aomenc.exe -o ToS-1000.ivf C:\ToS_1920x800_xdither.y4m --ivf --i420 --width=1920 --height=800 --fps=25000/1000 --passes=2 --pass=2 --fpf=stats.log --target-bitrate=960 --maxsection-pct=4000 --buf-sz=12000 --buf-initial-sz=8000 --buf-optimal-sz=10000 --end-usage=vbr --cpu-used=3 --verbose --tune=ssim --psnr --q-hist=30 --bit-depth=10 --bias-pct=75 --kf-max-dist=120 --aq-mode=2 --test-decode=fatal --limit=1332 --skip=214 --denoise-noise-level=25

the noise is dithering. Perhaps not adapted denoising value for that? I try with --denoise-noise-level=5,10,50 and no result.

Beelzebubu
24th May 2020, 03:42
for exemple.



the noise is dithering. Perhaps not adapted denoising value for that? I try with --denoise-noise-level=5,10,50 and no result.

Dithering should be fine. Does --help include a description for --denoise-noise-level? It might be built without CONFIG_DENOISE (in which case the --help output will be missing also). Otherwise I'm not entirely sure, it has worked fine for me. Does it work on 8-bit material?

Sagittaire
25th May 2020, 23:58
Dithering should be fine. Does --help include a description for --denoise-noise-level? It might be built without CONFIG_DENOISE (in which case the --help output will be missing also). Otherwise I'm not entirely sure, it has worked fine for me. Does it work on 8-bit material?

well seem work only if you have noise_model.exe in same directory than aomenc.exe ... ?

benwaggoner
26th May 2020, 01:50
Isn't all this pointless when hardly any TVs actually support 12 bit though?
Certainly for the moment, yes. Perhaps 12-bit could become a default with VVC or AV2.

soresu
26th May 2020, 17:42
Oh man, the new Cortex X1 CPU core has twice the NEON units of the A78 and previous Axx cores.

At 4x 128 bit units that's some real grunt for an off the shelf design, should be noice for encoding.

mzso
17th June 2020, 09:41
What kind of beast of a computer would you need to play 8k AV1?
I wanted to check out a few 8k videos on Youtube, but I accidentally downloaded AV1 streams, and the videos ate up my R5 1600. Even VP9 did...
I wonder if any mere mortal will have such a machine in the next decade.

ChaosKing
17th June 2020, 11:28
Beast machine? You used the wrong player!
In my browser it is almost smooth, with some dopped frames
In mpv it is perfect with ~ 55% cpu

My pc: ryzen 2600 (no oc) + gtx 1070
8K Video: https://www.youtube.com/watch?v=ChOhcHD8fBA

huhn
17th June 2020, 11:36
your GPU can decode this video...

ChaosKing
17th June 2020, 12:58
gtx 1070 does not have a HW AV1 decoder...
And mpv uses the dav1d decoder which works on cpu only.