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 > High Efficiency Video Coding (HEVC)

Reply
 
Thread Tools Search this Thread Display Modes
Old 23rd April 2016, 11:35   #3601  |  Link
James Freeman
Registered User
 
Join Date: Sep 2013
Posts: 919
Thanks.

I can't find a intermediate codec that can do 10bit 4:2:2 AND 4K in AVI.
Any suggestion?
__________________
System: i7 3770K, GTX660, Win7 64bit, Panasonic ST60, Dell U2410.
James Freeman is offline   Reply With Quote
Old 23rd April 2016, 15:47   #3602  |  Link
birdie
Artem S. Tashkinov
 
birdie's Avatar
 
Join Date: Dec 2006
Posts: 337
Um, do you mean container? Or encoder? The best encoder has always been ffmpeg.
birdie is offline   Reply With Quote
Old 24th April 2016, 01:58   #3603  |  Link
MeteorRain
結城有紀
 
Join Date: Dec 2003
Location: NJ; OR; Shanghai
Posts: 894
Quote:
Originally Posted by James Freeman View Post
Thanks.

I can't find a intermediate codec that can do 10bit 4:2:2 AND 4K in AVI.
Any suggestion?
Try main422-10 profile.

Also AVI is a tricky choice. Like fit a car with some bicycle tires.
__________________
Projects
x265 - Yuuki-Asuna-mod Download / GitHub
TS - ADTS AAC Splitter | LATM AAC Splitter | BS4K-ASS
Neo AviSynth+ filters - F3KDB | FFT3D | DFTTest | MiniDeen | Temporal Median
MeteorRain is offline   Reply With Quote
Old 24th April 2016, 09:59   #3604  |  Link
Magik Mark
Registered User
 
Join Date: Dec 2014
Posts: 666
Is it advisable to finish encoding first before using the computer for other applications? Will the quality of the encodes affected if cpu load starts shifting for other apps?


Sent from my iPhone using Tapatalk
__________________
Asus ProArt Z790 - 13th Gen Intel i9 - RTX 3080 - DDR5 64GB Predator - LG OLED C9 - Yamaha A3030 - Windows 11 x64 - PotPlayerr - Lav - MadVR
Magik Mark is offline   Reply With Quote
Old 24th April 2016, 10:25   #3605  |  Link
birdie
Artem S. Tashkinov
 
birdie's Avatar
 
Join Date: Dec 2006
Posts: 337
Encoding/decoding are a strict mathematical process. In theory, if your CPU/RAM/HDD don't falter during work, the output will always be the same regardless of your workflow. Make sure you run your encoder at the lowest CPU priority of you may experience significant lags.
birdie is offline   Reply With Quote
Old 24th April 2016, 12:35   #3606  |  Link
James Freeman
Registered User
 
Join Date: Sep 2013
Posts: 919
Quote:
Originally Posted by MeteorRain View Post
Try main422-10 profile.
Also AVI is a tricky choice. Like fit a car with some bicycle tires.
main422-10 is restricted to 1080p in After Effects, plus the file size is HUGE.

Anyway I found a AVI lossless encoder named Lagarith, it makes the file around 20 times smaller in 4:2:0 8bit, than Uncompressed RGB 8bit.
I can export straight to YV12 (4:2:0) YUY2 (4:2:2) or RGB in any resolution.

Another thing I found that AE dithers down from any higher bit depth, so the 32bit workflow is dithered down to 8bit at export.
My experience with madVR tells my that properly dithered 8bit is indistinguishable from 12bit (as read by i1 Display Pro).

When I encode with x265 I specify --input-depth 10, I guess that a dithered 8bit file inside a 10bit file would be perfectly fine.
Not true 10bit but still smooth as silk.
__________________
System: i7 3770K, GTX660, Win7 64bit, Panasonic ST60, Dell U2410.

Last edited by James Freeman; 24th April 2016 at 12:53.
James Freeman is offline   Reply With Quote
Old 24th April 2016, 13:46   #3607  |  Link
Motenai Yoda
Registered User
 
Motenai Yoda's Avatar
 
Join Date: Jan 2010
Posts: 709
mmm I'm not sure but IIRC 32bit in AE refers to all channel in a RGB behaviour, which is roughtly the same as 8bit in the single channel YUV one.
Also Lagarith is very slow with HD stuff, way better UtVideo or MagicYUV
__________________
powered by Google Translator
Motenai Yoda is offline   Reply With Quote
Old 24th April 2016, 14:53   #3608  |  Link
James Freeman
Registered User
 
Join Date: Sep 2013
Posts: 919
Quote:
Originally Posted by Motenai Yoda View Post
mmm I'm not sure but IIRC 32bit in AE refers to all channel in a RGB behaviour, which is roughtly the same as 8bit in the single channel YUV one.
Also Lagarith is very slow with HD stuff, way better UtVideo or MagicYUV
No, 32bit Floating per channel, there is also 16bit and 8bit.
AE dithers down to 8bit if the workflow is in higher bit depth.

UtVideo, is EXACTLY what I needed, fast and efficient. thank you!

AE will not let me export as 10bit (with any codec that is not from adobe) in AVI no matter what.
Dithered 8bit looks as good as 12bit anyway.
__________________
System: i7 3770K, GTX660, Win7 64bit, Panasonic ST60, Dell U2410.

Last edited by James Freeman; 24th April 2016 at 14:57.
James Freeman is offline   Reply With Quote
Old 25th April 2016, 08:41   #3609  |  Link
LigH
German doom9/Gleitz SuMo
 
LigH's Avatar
 
Join Date: Oct 2001
Location: Germany, rural Altmark
Posts: 6,752
Starting from a crf+preset combo is certainly a good idea. The developers spend some efforts in making presets a good all-purpose set of parameters. But slow presets will cost a lot of time, and even more if your CPU does not support AVX(2).

The "grain" tuning is meant to retain especially strong grain (think of "300"). Test on your own whether or not it is required and good-looking for your material... and expect some bitrate demand.
__________________

New German Gleitz board
MediaFire: x264 | x265 | VPx | AOM | Xvid

Last edited by LigH; 25th April 2016 at 08:45.
LigH is offline   Reply With Quote
Old 25th April 2016, 13:55   #3610  |  Link
dipje
Registered User
 
Join Date: Oct 2014
Posts: 268
Quote:
Originally Posted by James Freeman View Post
Thanks.

I can't find a intermediate codec that can do 10bit 4:2:2 AND 4K in AVI.
Any suggestion?
There are threads about questions like that. In .AVI is a problem though. Personally I'm using Vapoursynth and AfterEffects (and other tools) and happily go in and out through things like ProRes, DNXHD, DPX sequences and / or .EXR with PIZ compression.

Can't Cineform do 4K? I know it can do yuv422p10.. (just tested, my After Effects can export Cineform in 4K). Grassvaley HQX also seems to work in 4K alright.

It are both codecs that can be stored in AVI, although I can't think of any program that can interface properly with it. You could try going from Vapoursynth YUV422P10 (V210 fourcc) open it with virtualdub and from there save in one of two formats.

But honestly, there is a reason that all video editing packages seem to prefer Mov for this stuff. Avi is tricky enough already to store modern 8-bit stuff in, let alone 10p, 12p, 12p + alpha or other more 'cinema' style formats.
dipje is offline   Reply With Quote
Old 25th April 2016, 14:57   #3611  |  Link
James Freeman
Registered User
 
Join Date: Sep 2013
Posts: 919
I realized that HEVC main10 output chroma subsampling has to be equal to the input, in raw YUV (uncompressed), so it has to be 10bit 4:2:0 uncompressed first.

If it is Lossless (compressed) I have to push it to HEVC through Avisynth with avs4x265 so only AVI is optional.
I want to export from AE in 10bit 4:2:0 4K (P010), MOV or AVI so that I can encode with HEVC.

Any idea?
__________________
System: i7 3770K, GTX660, Win7 64bit, Panasonic ST60, Dell U2410.

Last edited by James Freeman; 25th April 2016 at 15:39.
James Freeman is offline   Reply With Quote
Old 25th April 2016, 19:25   #3612  |  Link
benwaggoner
Moderator
 
Join Date: Jan 2006
Location: Portland, OR
Posts: 4,750
Quote:
Originally Posted by dipje View Post
There are threads about questions like that. In .AVI is a problem though. Personally I'm using Vapoursynth and AfterEffects (and other tools) and happily go in and out through things like ProRes, DNXHD, DPX sequences and / or .EXR with PIZ compression.

Can't Cineform do 4K? I know it can do yuv422p10.. (just tested, my After Effects can export Cineform in 4K). Grassvaley HQX also seems to work in 4K alright.

It are both codecs that can be stored in AVI, although I can't think of any program that can interface properly with it. You could try going from Vapoursynth YUV422P10 (V210 fourcc) open it with virtualdub and from there save in one of two formats.

But honestly, there is a reason that all video editing packages seem to prefer Mov for this stuff. Avi is tricky enough already to store modern 8-bit stuff in, let alone 10p, 12p, 12p + alpha or other more 'cinema' style formats.
The AVI format itself is fine for this kind of use, and has the advantage of being simpler, unlike QuickTime files which in theory are Turing Complete . And with the deprecation of QuickTime for Windows with a serious security flaw in the final version, Everyone not on Mac is going to have to use other implementations.

I've had AVI files >200 GB without any issues.

v210 is always good. Cineform absolutely works for UHD. Sometimes the stock DirectShow version doesn't work well, but the BlackMagic codec version does, and is broadly compatible. DNxHR is promising, and doesn't have the locked-down frame rates and frame sizes of DNxHD.

What we're lacking is a good codec that supports all the HDR metadata. The only thing I know of is just using a high-bitrate HEVC. HEVC-Intra with WPP could make a very good mezzanine codec: 10 and 12 bit support, and better efficiency than anything else. With WPP reasonably fast decoding on multicore systems, and with hardware decoders coming it'll be blazing fast. I can certainly get the same quality as ProRes at half the bitrate.
__________________
Ben Waggoner
Principal Video Specialist, Amazon Prime Video

My Compression Book
benwaggoner is offline   Reply With Quote
Old 25th April 2016, 23:17   #3613  |  Link
stax76
Registered User
 
stax76's Avatar
 
Join Date: Jun 2002
Location: On thin ice
Posts: 6,837
It seems x265 fails on Unicode file names, no problem with x264, QSVEncC, NVEncC or ffmpeg.

Quote:
------------------------------------------------------------
Encoding video using x265 1.9+140 x64 multi lib 8/10/12 bit
------------------------------------------------------------

@echo off
CHCP 65001
"C:\Program Files (x86)\VapourSynth\core64\vspipe.exe" D:\Пред_temp\Пред.vpy - --y4m | D:\Projekte\GitHub\staxrip\bin\Apps\x265\x265_ml.exe --crf 22 --frames 1301 --y4m --output D:\Пред_temp\Пред_out.hevc -

cmd.exe /C call "D:\Пред_temp\Пред_encode.bat"

Aktive Codepage: 65001.
y4m [info]: 1280x720 fps 30000/1001 i420p8 unknown frame count
x265 [error]: failed to open output file <D:\????_temp\????_out.hevc> for writing
Error: fwrite() call failed when writing frame: 1, plane: 0, line: 11, errno: 22
Output 9 frames in 0.04 seconds (218.50 fps)

------------------------------------------------------------
Error Encoding video using x265 1.9+140 x64 multi lib 8/10/12 bit
------------------------------------------------------------

Encoding video using x265 1.9+140 x64 multi lib 8/10/12 bit failed with exit code: 1 (0x1)

The exit code might be a system error code: STATUS_WAIT_1

The exit code might be a system error code: Unzulässige Funktion.

Aktive Codepage: 65001.
y4m [info]: 1280x720 fps 30000/1001 i420p8 unknown frame count
x265 [error]: failed to open output file <D:\????_temp\????_out.hevc> for writing
Error: fwrite() call failed when writing frame: 1, plane: 0, line: 11, errno: 22
Output 9 frames in 0.04 seconds (218.50 fps)
stax76 is offline   Reply With Quote
Old 26th April 2016, 02:16   #3614  |  Link
f81ccx
Registered User
 
Join Date: Feb 2016
Posts: 2
ffmpeg x265 thread pool

Has anyone been able to get thread pool paramaters to work with ffmpeg?

I've tried passing in x265-params pools=16,16 as well as pools=+,+, but I only ever get a single thread pool instead of the 2 pools that I expect.

Machine:

Intel Xeon E5-2670 x2, Fedora 23. Lastest static build of ffmpeg that includes x265 version 1.9+141-02d79be487d7

Command line:
Code:
ffmpeg -i source.mov -c:v libx265 -preset veryslow -x265-params crf=20:pools=16,16 test.mkv
Output:
x265 [info]: HEVC encoder version 1.9+141-02d79be487d7
x265 [info]: build info [Linux][GCC 5.3.1][64 bit] 10bit
x265 [info]: using cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.2 AVX
x265 [info]: Main 4:2:2 10 profile, Level-4 (Main tier)
x265 [info]: Thread pool created using 16 threads
x265 [info]: frame threads / pool features : 6 / wpp(17 rows)
x265 [info]: Coding QT: max CU size, min CU size : 64 / 8
x265 [info]: Residual QT: max TU size, max depth : 32 / 3 inter / 3 intra
x265 [info]: ME / range / subpel / merge : star / 57 / 4 / 4
x265 [info]: Keyframe min / max / scenecut : 24 / 250 / 40
x265 [info]: Lookahead / bframes / badapt : 40 / 8 / 2
x265 [info]: b-pyramid / weightp / weightb : 1 / 1 / 1
x265 [info]: References / ref-limit cu / depth : 5 / off / on
x265 [info]: AQ: mode / str / qg-size / cu-tree : 1 / 1.0 / 32 / 1
x265 [info]: Rate Control / qCompress : CRF-20.0 / 0.60
x265 [info]: tools: rect amp limit-modes rd=6 psy-rd=2.00 rdoq=2 psy-rdoq=1.00
x265 [info]: tools: signhide tmvp b-intra strong-intra-smoothing deblock sao
f81ccx is offline   Reply With Quote
Old 26th April 2016, 08:07   #3615  |  Link
LigH
German doom9/Gleitz SuMo
 
LigH's Avatar
 
Join Date: Oct 2001
Location: Germany, rural Altmark
Posts: 6,752
Welcome to doom9...

So you have only one single physical CPU? I believe thread pools are meant to support the physical separation of multi-socket systems, but may require explicit NUMA support, depending on the OS.
__________________

New German Gleitz board
MediaFire: x264 | x265 | VPx | AOM | Xvid
LigH is offline   Reply With Quote
Old 26th April 2016, 09:50   #3616  |  Link
Ma
Registered User
 
Join Date: Feb 2015
Posts: 326
Quote:
Originally Posted by f81ccx View Post
Has anyone been able to get thread pool paramaters to work with ffmpeg?
[...]
Intel Xeon E5-2670 x2, Fedora 23. Lastest static build of ffmpeg that includes x265 version 1.9+141-02d79be487d7
For Linux you should compile x265 with ENABLE_LIBNUMA (it is ON by default).
Ma is offline   Reply With Quote
Old 26th April 2016, 20:40   #3617  |  Link
f81ccx
Registered User
 
Join Date: Feb 2016
Posts: 2
Quote:
Originally Posted by LigH View Post
Welcome to doom9...

So you have only one single physical CPU? I believe thread pools are meant to support the physical separation of multi-socket systems, but may require explicit NUMA support, depending on the OS.
My system is a Dual Xeon E5-2670.

I'll have a go at building ffmpeg from scratch, making sure libnuma is included.
f81ccx is offline   Reply With Quote
Old 26th April 2016, 22:11   #3618  |  Link
Ma
Registered User
 
Join Date: Feb 2015
Posts: 326
Quote:
Originally Posted by stax76 View Post
It seems x265 fails on Unicode file names, no problem with x264, QSVEncC, NVEncC or ffmpeg.
Yes, it fails. You can try attached patch for output file.
Attached Files
File Type: txt utf16_output.patch.txt (7.0 KB, 69 views)
Ma is offline   Reply With Quote
Old 26th April 2016, 22:23   #3619  |  Link
stax76
Registered User
 
stax76's Avatar
 
Join Date: Jun 2002
Location: On thin ice
Posts: 6,837
Do you by chance have a 8/10/12 bit multilib build?
stax76 is offline   Reply With Quote
Old 26th April 2016, 22:49   #3620  |  Link
Ma
Registered User
 
Join Date: Feb 2015
Posts: 326
Quote:
Originally Posted by stax76 View Post
Do you by chance have a 8/10/12 bit multilib build?
www.msystem.waw.pl/x265/utf16_output.7z

It is only output file fixed (remains: input y4m + yuv and stat file).
Ma 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 12:36.


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