Hi, i'm trying to encode 10 bit HEVC with Intel GPU Accelerated Media SDK plugin, here my command line options
Multi Transcoding Sample Version 220.127.116.112
Preset-controlled parameters (Default):
RateControlMethod: 2 (original preset value: 2)
AdaptiveMaxFrameSize: 16 (original preset value: 0)
AsyncDepth: 10 (original preset value: 4)
BRefType: 2 (original preset value: 0)
EnableBPyramid: 1 (original preset value: 0)
GopRefDist: 4 (original preset value: 0)
TargetUsage: 4 (original preset value: 4)
WeightedBiPred: 1 (original preset value: 0)
WeightedPred: 1 (original preset value: 0)
GopPicSize: 240 (original preset value: 47)
MaxKbps: 12000 (original preset value: 0)
TargetKbps: 5000 (original preset value: 2748)
Pipeline surfaces number (EncPool): 19
Pipeline surfaces number (DecPool): 10
Sample BRC is used
MFX HARDWARE Session 0 API ver 1.25 parameters:
Input video: AVC
Output video: HEVC
MFX dll: C:\Program Files\Intel\Media SDK\libmfxhw64.dll
*** session 0 PASSED (MFX_ERR_NONE) 53.0172 sec, 1000 frames
-i::h264 C:\WORKING (HEVC)\13\T1_Video - English.264 -o::h265 C:\WORKING (HEVC)\LOSTS3E13.hevc -hw -async 10 -pe e5400a06c74d41f5b12d430bbaa23d0b -b 5000 -u balanced -l 1 -vbr -gop_size 240 -dist 4 -num_ref 6 -bref -bpyr -MaxKbps 12000 -ec::p010 -dc::nv12 -w 1920 -h 1080 -WeightedBiPred::default -WeightedPred::default -amfs:on -extbrc:on -pp -sys -n 1000
plugin_loader.h :199 [INFO] MFXBaseUSER_UnLoad(session=0x0000011FF83C6920), sts=0
- Development Tools
- Intel® Media SDK
- Intel® Media Server Studio
- Media Processing
It looks like the problem is you got a blank output, did you check this with hardware accelerated encoding?
I am pretty sure our HW encoder support 10bit but not sure GACC this is why I am asking
Hi Mark i checked with Hardware accelerated and have the same problem, green screen when encoding to 10bit HEVC, it looks like libmfxhw64.dll don't support VPP Hevc 10bit, can u check this for me?
Sure, I will check it later this week since I have other urgent issues.
But just a few analysis:
- It looks like your input is H.264 and it is 8bit, you are assuming our sample could transfer it to 10bit. If yes, this doesn't work. By "support 10bit", we mean our API can accept HEVC 10bit as input and process stream as 10bit in our pipeline.
- I also confirmed our GACC should support 10bit.
- To isolate the problem, you can divide transcoding into decoding, vpp and encoding. Try the same input in 3 samples(sample_decode, sample_vpp and sample_encode) to see which one generates green image.
Can i pipe from sample_decode to sample_encode? How can i do that?
Mark i tryed with sample_decode, decode to yuv 10bit using VPP then encoded with sample_encode and it encoded perfect,
You don't have to pipe stream, you can output as YUV file and use it as the input of sample_encode. Yes, all samples should handle 10bit input and output.
But again, I am not optimistic that sample can take 8bit input and output 10bit by default.