Quantcast
Channel: Intel® Software - Media
Viewing all 2185 articles
Browse latest View live

qsv color conversion yuv to rgb32

$
0
0

Hi , I am using intel ffmpeg plugins with qsv , i need to do color conversion on decoded frame to RGB32 to render it on weston surface . currently i am using swscale for it , but is there any to convert it using qsv or  mediasdk?


Decode acceleration when Intel head is NOT primary display

$
0
0

Hello,

This one has eluded me for sometime and you thoughts are appreciated :)

Our system/product is working great when the Intel display is active, the primary display device and using D3D9_MEMORY under Windows 10.

We also have an AMD graphics device in the system.

If however, we just change the primary display to be one of the AMD output heads (Note, Intel is still an active head in the system)

m_session.InitEx(initPar); fails with unsupported and only software decoding is permitted.

Does Intel acceleration only work if an Intel head is not the primary display device?

Here is our initialisation code, let me know if you require any further information:

initPar.Version.Major = 1;
initPar.Version.Minor = 0;

initPar.Implementation = MFX_IMPL_HARDWARE_ANY;
res = m_session.InitEx(initPar);
if (res < MFX_ERR_NONE)
{
   // now try to fall back to software
   initPar.Implementation = MFX_IMPL_AUTO_ANY;
   res = m_session.InitEx(initPar);
   if (res < MFX_ERR_NONE)
   {
   }
 }

Cheers.

 

FFMpeg not working with MediaSDK 2018Q2.1

$
0
0

Hi,

I have compiled my own distro (using buildroot) that contains all packages for making libmfx working with my Intel Computestick STK2mv64CC.

I have followed the MediaSDK opensource guide (https://software.intel.com/en-us/articles/build-and-debug-open-source-media-stack) and the sample_multi_transcode with h264 is working fine now.

I have then downloaded and compiled version 3.4.2 of FFMpeg, with libmfx enabled. I am now trying to run a basic video transcoding using ffmpeg, without success.

This is the command I tried (using the bunny h264 sample video):

ffmpeg -y -init_hw_device qsv=qsv:MFX_IMPL_hw -hwaccel qsv -hwaccel_device qsv -i /trailer_1080p.mov -c:v h264_qsv -framerate 60 -acodec copy out.mp4

Relevant output lines of ffmpeg:

[h264_qsv @ 0x75d9d0] Using the VBR with lookahead (LA) ratecontrol method
[h264_qsv @ 0x75d9d0] Error initializing the encoder: unsupported (-3)

Error initializing output stream 0:0 -- Error while opening encoder for output stream #0:0 - maybe incorrect parameters such as bit_rate, rate, width or height

I also tested with FFMPeg 3.2.4, 3.4.4.

Any clues on this? Is it possible to get a working ffmpeg call using ffmpeg and QSV?

Thank you for your help,

sample_decode render 640x360 h264 appears green edge

$
0
0

When using sample_decode to render 640x360 h264 stream which encoded by sample_encode, there will be green edge. But when using x264, or using sample_encode with a different resolution, it will be ok.

step to reproduce:

x264 --profile main --preset superfast --tune zerolatency --keyint 25 --vbv-maxrate 1500 --vbv-bufsize 1500 --input-res 640x360 -o x264.h264 camera_move_yuv420p_640_360_25fps.yuv -v

 

sample_encode.exe h264 -nv12 -i camera_move_nv12_640_360_25fps.yuv -o intel.h264 -w 640 -h 360 -r 1 -g 25

 

sample_decode.exe h264 -f 25 -i intel.h264 -r -w 640 -h 360(Green Edge)

 

sample_decode.exe h264 -f 25 -i x264.h264 -r -w 640 -h 360(OK)

---

x264 --profile main --preset superfast --tune zerolatency --keyint 25 --vbv-maxrate 1500 --vbv-bufsize 1500 --input-res 1280x720 -o x264.h264 camera_move_yuv420p_1280_720_25fps.yuv -v

 

sample_encode.exe h264 -nv12 -i camera_move_nv12_1280_720_25fps.yuv -o intel.h264 -w 1280 -h 720 -r 1 -g 25

 

sample_decode.exe h264 -f 25 -i intel.h264 -r -w 1280 -h 720(OK)

 

sample_decode.exe h264 -f 25 -i x264.h264 -r -w 1280 -h 720(OK)

 

---

system: win7 x64/i5 4590

Installation of Intel Parallel Studio XE 2018

$
0
0

Sorry if this is the wrong place to ask as I cannot find the Fortran Support forum.

When installing Intel Parallel Studio XE 2018 can I prevent the de-integration of Intel 2015 and Studio 2013 as I want to maintain that integration for legacy application testing and support?

MFXInit() returns MFX_ERR_UNSUPPORTED on Apollo Lake

$
0
0

Hi,
We have an application running on Apollo lake that uses MSDK. We have the application working on a different platform, but the version we've built for Apollo Lake MR3.1 on yocto fails when calling MFXInit().

mfxVersion ver = {{0,1}};
mfxIMPL impl = MFX_IMPL_AUTO_ANY;
pMFXSession = new MFXVideoSession();
// We call: (Which in turn calls MFXInit(impl, &ver, &m_session))
pMFXSession->Init(impl, &ver);
// And it returns 3, MFX_ERR_UNSUPPORTED

Looking at the documentation, MFX_ERR_UNSUPPORTED should only be returned if either `impl` or `ver` are invalid.
`ver` should be valid for any 1.x version of MSDK
We have the MR3.1 release of MSDK for Apollo Lake with recipe "msdk_16.7.bb". I assume this recipe version is either unrelated to the msdk version, or it means we have version 1.16.7?
`impl` should be valid if we have any available implementation. We have libmfxsw64.so and libmfxhw64.so both in /usr/lib/ and in the same directory as the app.

It seems pretty opaque to me, what could be causing the error. We are passing the same, sensible seeming (at least to me) arguments as the version we have working on a different platform, but on Apollo Lake we get an error. I suspect it's trying to find some library and failing, but which library?

 

server2008 encode h264 MFXVideoENCODE_Init return MFX_WRN_PARTIAL_ACCELERATION

$
0
0

I am using the Intel Media SDK 2017 R1 to use the hardware H264 encoder to encode video.

I have created a sample program to initialize the video session and initialize an encoder using the hardware encoder. I am using Microsoft Visual Studio 2013 for this.If I use the MFX_IMPL_HARDWARE_ANY implementation, I get the MFX_WRN_PARTIAL_ACCELERATION warning, and the encoding process isn't accelerated at all (the GPU usage is at 0%, and the CPU usaget is high when encoding).

My hardware infomation is below:

cpu:i7-6700

mem:32GB

os:windows server2008

intel gpu:hd530 driver version is 21.20.16.4860 (2017.11.15)

 

How to dynamic update input type by intel H264 MFT

$
0
0

 I use Intel Quick Sync Video H.264 Encoder MFT generate H264 frame in async mode.I found MFGetAttributeUINT32 funtion with MFT_SUPPORT_DYNAMIC_FORMAT_CHANGE return true.But i reset input type when screen resolution change using SetInputType function return MF_E_TRANSFORM_CANNOT_CHANGE_MEDIATYPE_WHILE_PROCESSING(0xC00D6D74),

I think this behaviour doesn't apply for the protocol of Microsoft: 

https://docs.microsoft.com/en-us/windows/desktop/medfound/handling-stream-changes

MFT_SUPPORT_DYNAMIC_FORMAT_CHANGE is TRUE
1.The client calls IMFTransform::SetInputType to set the new input type.

2.The MFT validates the input type. If the type is invalid, SetInputType returns MF_E_INVALIDMEDIATYPE or another error code. Otherwise, SetInputType returns S_OK.

3.Assuming the input type is valid, the MFT evaluates whether the output type also changes. If not, streaming continues, and no further action is required.

4.Before the output type changes, the MFT must process any cached input samples, as follows:

a.The MFT does not invalidate its current output type.

b.The MFT produces as much output as it can from the cached input samples.

c.It is optional whether the MFT accepts new input samples while it processes the cached samples. If so, the new input samples will use the new input format, so the MFT must keep track of the point when the format changed.

5.After the MFT processes all of the samples that it received before the input type changed, the IMFTransform::ProcessOutput returns MF_E_TRANSFORM_STREAM_CHANGE.

6.The MFT invalidates its current output type, and updates the list of available output media types.

7.The client negotiates the new output type, as described previously.

 

Although i tried the other way. By sending the MFT_MESSAGE_COMMAND_DRAIN message, reset input type when revice METransformDrainComplete event,and still got a MF_E_TRANSFORM_CANNOT_CHANGE_MEDIATYPE_WHILE_PROCESSING error. In my view, the  component is abnormal.

Development environment:

intel i7 4790 windows7 64bit

mx_mft_h264ve_w7_32.dll ver 4.13.1.11

Attached file is the log information generated by the MFTrace.exe tool.

AttachmentSize
Downloadtext/plainMFTrace_info.txt329.23 KB

How to enable license for HEVC Evaluation

$
0
0

I have HEVC evaluation version installed on CentOS. I have also purchased the Professional license. May I know how to activate the license so that I am able to encode more than 1000 frames?

the question of mfxExtScreenCaptureParam when using screen capture plu-in

$
0
0

 

Hello, thank you very much for checking this question. When I use screen capture plu-in, the mfxExtScreenCaptureParam parameter is not added, and when I add the mfxExtScreenCaptureParam parameter and set it, it will report an error.

without  mfxExtScreenCaptureParam :

//...........mfxExtScreenCaptureParam..............

mfxVideoParam par;

.........................

 mfxExtScreenCaptureParam extScPar;
 mfxExtBuffer *mfxextbuf,*dirtymfxextbuf;
 mfxExtDirtyRect mfxexdirRect;
 memset(&mfxexdirRect, 0, sizeof(mfxexdirRect));
 memset(&mfxextbuf, 0, sizeof(mfxextbuf));
 memset(&extScPar, 0, sizeof(extScPar));
 extScPar.Header.BufferId = MFX_EXTBUFF_SCREEN_CAPTURE_PARAM;
 extScPar.Header.BufferSz = sizeof(mfxExtScreenCaptureParam);
 extScPar.EnableDirtyRect = 1;
 extScPar.DisplayIndex = 0;
 extScPar.EnableCursorCapture = 0;
 mfxextbuf= (mfxExtBuffer*)&extScPar;
 //mfxexdirRect = &mfxextbuf;
 mfxexdirRect.Header.BufferId = MFX_EXTBUFF_DIRTY_RECTANGLES;
 mfxexdirRect.Header.BufferSz = sizeof(mfxExtScreenCaptureParam);
 dirtymfxextbuf = (mfxExtBuffer*)&mfxexdirRect;

// par.NumExtParam = 1;
 //par.ExtParam = &mfxextbuf;
 //...........mfxExtScreenCaptureParam..............
 

 mfxSts = MFXVideoDECODE_Init(mfxSes, &par);

36704 2018-9-12 19:28:26:399     par.Protected=0
36704 2018-9-12 19:28:26:399     par.IOPattern=MFX_IOPATTERN_OUT_VIDEO_MEMORY
36704 2018-9-12 19:28:26:399     par.NumExtParam=0
36704 2018-9-12 19:28:26:399     par.ExtParam=0000000000000000

36704 2018-9-12 19:28:26:399     par.reserved2=0
36704 2018-9-12 19:28:26:399 function: MFXVideoDECODE_Init(84.0707 msec, status=MFX_WRN_PARTIAL_ACCELERATION) -

 

using  mfxExtScreenCaptureParam :

mfxVideoParam par;

..........................

//...........mfxExtScreenCaptureParam..............
 mfxExtScreenCaptureParam extScPar;
 mfxExtBuffer *mfxextbuf,*dirtymfxextbuf;
 mfxExtDirtyRect mfxexdirRect;
 memset(&mfxexdirRect, 0, sizeof(mfxexdirRect));
 memset(&mfxextbuf, 0, sizeof(mfxextbuf));
 memset(&extScPar, 0, sizeof(extScPar));
 extScPar.Header.BufferId = MFX_EXTBUFF_SCREEN_CAPTURE_PARAM;
 extScPar.Header.BufferSz = sizeof(mfxExtScreenCaptureParam);
 extScPar.EnableDirtyRect = 1;
 extScPar.DisplayIndex = 0;
 extScPar.EnableCursorCapture = 0;
 mfxextbuf= (mfxExtBuffer*)&extScPar;
 //mfxexdirRect = &mfxextbuf;
 mfxexdirRect.Header.BufferId = MFX_EXTBUFF_DIRTY_RECTANGLES;
 mfxexdirRect.Header.BufferSz = sizeof(mfxExtScreenCaptureParam);
 dirtymfxextbuf = (mfxExtBuffer*)&mfxexdirRect;

 par.NumExtParam = 1;
 par.ExtParam = &mfxextbuf;
 //...........mfxExtScreenCaptureParam..............
 

 mfxSts = MFXVideoDECODE_Init(mfxSes, &par);

43912 2018-9-12 19:37:54:239     par.Protected=0
43912 2018-9-12 19:37:54:239     par.IOPattern=MFX_IOPATTERN_OUT_VIDEO_MEMORY
43912 2018-9-12 19:37:54:239     par.NumExtParam=1
43912 2018-9-12 19:37:54:239     par.ExtParam=00000070B0CFC7A8
43912 2018-9-12 19:37:54:239     par.ExtParam[0]=00000070B0CFC750
43912 2018-9-12 19:37:54:239     par.ExtParam[0].BufferId=1095779155
43912 2018-9-12 19:37:54:239     par.ExtParam[0].BufferSz=64

43912 2018-9-12 19:37:54:239     par.reserved2=0
43912 2018-9-12 19:37:54:239 function: MFXVideoDECODE_Init(0.0306667 msec, status=MFX_ERR_INVALID_VIDEO_PARAM) -

 

how can i to solve this problem??thankyou for your help!best wishes for u!

 

 

 

1080p hevc video decoded to render with a green edge at the bottom

$
0
0

Media sdk: Intel® Media SDK 2018 R1

System: Win10 64-bit, Core i7-7770

Driver: 24.20.100.6286

when using sample_decode to decode and render, a green edge(8 rows) appears at the bottom of display window. mfxVideoParam.mfx.FrameInfo.Height=1088 ,  mfxVideoParam.mfx.FrameInfo.CropH=1080, it seems to be a  problem here.

But decoding H264 video to render has not green edge.

sample_decode.exe h265 -i Lifting_1080p.hevc -d3d -r -p 15dd936825ad475ea34e35f3f54217a6

 

Does va - opencl interop support 444p surface ?

$
0
0

I am using Intel Media SDK to build a libva - opencl interop program.

 

When I use clCreateFromVA_APIMediaSurfaceINTEL to create a cl_mem object of the plane[0] (or plane[1], plane[2]),

 

the API returns -30 (CL_INVALID_VALUE). So I am wondering that does Media SDK 2018 R1 suport nv12 surfaces only?

 

 

Thanks

RGB4 to H264 Encode Support

$
0
0

Hi,

I noticed in Intel Media SDK 2018 R1 release and its sample code that it can now directly encode from RGB4 to H264 without using VPP.

 m_mfxEncParams.mfx.FrameInfo.FourCC       = pInParams->EncodeFourCC; //=> this I set as MFX_FOURCC_RGB4

I tried this in my PC and it actually worked fine (my PC hw is 6th gen and exposing API version 1.20). But if I try this same code on any old hw PC (3rd gen CPU, exposing API version 1.11) then encoder initialization get fails with error MFX_ERR_INVALID_VIDEO_PARAM.

So I want to know from which API version this RGB4 to h264 direct encode will work? Or if there is any way I can get it working on old HW too?

Note: In earlier SDK version I used to convert RGB4 to NV12 through VPP first and then feeding encoder with NV12 frame, but there is known issue of text color blur in RGB4 to NV12 VPP conversion ( https://software.intel.com/en-us/forums/intel-media-sdk/topic/657754), so I am much interested to use this RGB4 to H264 direct encoding feature).

Sample Decode Crashing doing JPEG decoding with VPP on d3d11

$
0
0

 

The sample decoder is crashing when doing JPEG decoding & a VPP stage for the sample JPEG attached. Its crashing only for d3d11 and works fine in d3d9 & sw modes.

 

To regenerate the crash, just the run the sample decode with the following params (using the sample jpeg file attached) 

 

jpeg -hw -d3d11 -w 960 -h 480 -i ./input/Live-0-210.jpg -o ./output/Live-0-210.yuv

The actual dimension of the jpeg is 1920x960 and the above command attempts to decode the jpeg & scale it to half the original dimensions.

 

Curiously enough, the crash is seen only if a vpp stage is involved. It works fine even in d3d11 if we don't introduce the vpp stage.

 

jpeg -hw -d3d11 -w 1920 -h 960 -i ./input/Live-0-210.jpg -o ./output/Live-0-210.yuv

 

works fine in all modes (d3d, d3d11 & sw)

 

Had tried it on "Intel® Media SDK 2018 R1 - Media Samples 8.3.26.352"

 

Are there any corrections required in the "sample decode" to get this working?

AttachmentSize
Downloadimage/jpegLive-0-210.jpg197.54 KB

tutorial_screen_capture ERROR!!!

$
0
0

hello

   when i using the pluging(mfxplugin64_screen_capture.dll) to capture the desktop

mfxVideoParam par;

.......

 par.mfx.FrameInfo.FourCC = params.fourcc;
    par.mfx.FrameInfo.ChromaFormat = params.chroma_format;
    par.mfx.CodecId = MFX_CODEC_CAPTURE;

//par.NumExtParam = 1;
   // par.ExtParam = &mfxextbuf;

..........

everything works well!

when:

mfxVideoParam par;

.......

 par.mfx.FrameInfo.FourCC = params.fourcc;
    par.mfx.FrameInfo.ChromaFormat = params.chroma_format;
    par.mfx.CodecId = MFX_CODEC_CAPTURE;

par.NumExtParam = 1;
par.ExtParam = &mfxextbuf;

..........

mfxSts = MFXVideoDECODE_Query(mfxSes, &par, &par);

always return MFX_ERR_UNSUPPORTED.

what's the problem with this??how can i to do?

 


advice on sample_encode program tuning for fast encoding speed

$
0
0

Hi there 

I am using media SDK 1.26 and its sample_encode program to do a real-time H.264 streaming application.  I would like to ask for some general advice on how to tune the encoding parameters for fast encoding speed. 

I am encoding at 1280x720 and 1920x1080, using software encoder; the typical frame rate of my application is about 10~15 fps. 

I have selected  MFX_TARGETUSAGE_BEST_SPEED and the input format for encoder is NV12.   What other configuration parameters can I look at to improve the encoding speed?  any suggestion is much appreciated. thank you.

 

MediaServerStudioEssentials2018R1 encounts fatal error: GL/gl.h: No such file or directory”

$
0
0

Instruction

Product version:MediaServerStudioEssentials2018R1

Platform:4  Intel(R) Core(TM) i5-6350HQ CPU @ 2.30GHz;

Linux dps4.centos74 3.10.0-693.el7.x86_64;

00:02.0 VGA compatible controller [0300]: Intel Corporation Iris Pro Graphics 580 [8086:193b] (rev 09)

 

My issue

Firstly, install Media SDK:

enter SDK2018Production16.8/CentOS_7.4.

# install_sdk_CentOS.sh

It executes successfully.

#reboot

 

Then, exec Samples:

# mkdir _build

# cd _build

# cmake ..

# make

Here, I encount a problem which says “/opt/intel/opencl/include/CL/cl.hpp:180:19: fatal error: GL/gl.h: No such file or directory”.

 

I try many methods to solve the above problem.  It seems lack "mesa-libGL-devel".

So I execute the next command to install it.

# yum install mesa-libGL-devel

but it shows a error:

Error: Package: intel-linux-media-16.8-69021.el7.centos.x86_64 (installed)

Requires: libdrm = 2.4.74-69021.el7.centos

Removing: libdrm-2.4.74-69021.el7.centos.x86_64 (installed)

               libdrm = 2.4.74-69021.el7.centos

Updated By: libdrm-2.4.83-2.el7.x86_64 (base)

               libdrm = 2.4.83-2.el7

You could try using --skip-broken to work around the problem

You could try running: rpm -Va --nofiles --nodigest

 

I want to know how to solve it. Thank you.

MFXVideoCORE_SyncOperation is returning MFX_ERR_UNDEFINED_BEHAVIOR

$
0
0

We are developing a decoder based application and we are facing an issue. The issue is similar to this post but we are using only Intel decoder.

We are referring “mediasdk-man.pdf” for our application development. We are following the steps given in “Example 1: Decoding Pseudo Code” for decoding operation. The issue is that when we call “SyncOperation()” API, it is returning “MFX_ERR_UNDEFINED_BEHAVIOR”. We are not able to find-out what is causing this error. There is no error during initialization of the decoder and “DecodeFrameAsync()” API is returning MFX_ERR_NONE.

Could someone help us to understand what is going wrong here? We printed the buffer addresses and they are proper.

Trouble with Intel Media SDK: getting sample_encode programm started

$
0
0

Hello,

I'm completely new to Intel Media SDK and I just tried to run the sample_encode programm with some instructions in the command line.

This is what I typed in:
sample_encode.exe h264 -i example.yuv -o example.h264 -w 1280 -h 1024 -u quality -sw

example.yuv is a file I downloaded from the internet just to test the sample.

And these are my errors:

[ERROR], sts=MFX_ERR_NULL_PTR(-2), CSmplBitstreamWriter::Init, m_fSource pointer is NULL at src\sample_utils.cpp:406

[ERROR], sts=MFX_ERR_NULL_PTR(-2), CEncodingPipeline::InitFileWriter,  failed at src\pipeline_encode.cpp:1178

[ERROR], sts=MFX_ERR_NULL_PTR(-2), CEncodingPipeline::InitFileWriters, InitFileWriter failed at src\pipeline_encode.cpp:1239

[ERROR], sts=MFX_ERR_NULL_PTR(-2), CEncodingPipeline::Init, InitFileWriters failed at src\pipeline_encode.cpp:1419

[ERROR], sts=MFX_ERR_NULL_PTR(-2), wmain, pPipeline->Init failed at src\sample_encode.cpp:1273
Frame number: 0
Encoding fps: -0

I also tried different files and always put them in the folder of the sample_encode.exe-file.

Do you know about these errors and is there any simple error I made?
Or are there any example files you would recommend me to test?
If you need more information please tell me!

Thank you very much for your help!
Andreas

Product version:
Intel Media SDK 2018 R2

Information about the platform I am building on:
OS: Windows 7 Enterprise 64 Bit
Processor: Intel Core(TM) i7-2600 CPU @ 3,40GHz
graphic driver: NVIDIA Quadro 2000, version: 9.18.13.2078

Transcoding error with Croma format rgb4

$
0
0

Hello Sir/Madam,

I am using Media SDK 2017 for Windows 8.0.24.271. I am using sample multitranscoder for transcoding the h264 stream. My hardware is Intel Core i7 -4770 CPU and Operating system is Windows 7.

My objective is work on raw Rgb4 frame. My input is input.h264(1920*1080). When I set -i::h264 input.h264 -o::raw output.raw -dc::rgb4 in transcoder sample. And exe throw m_pmfxDEC-> Init failed error. 

If i don't set below parameter then Transcoding Sample exe is running fine.

-dc::rgb4

Please advice me.

Thanking you,

Dhrumil Sheth

 

Viewing all 2185 articles
Browse latest View live


<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>