Actually that is not quite right. Intel HD Graphics actually exist on the same die as the CPU chip and so are trully "embedded". There are no graphics cards per se. In recent years we have seen the speed of these embedded GPU's increase rapidly from the early HD2000/3000 combinations to the current leader being the Iris Pro HD5200. The media SDK enables (amongst other things) the offloading of H264 encoding/decoding tasks to the onboard GPU thus relieving the CPU to carry on other tasks. If implemented properly within say a VMS, these CPU's have the ability to support many more cameras than previously possible.
At the moment I am not aware of any VMS's supporting this technology but I am happy (and relieved) to be proven wrong.
The comment above regarding QSV technology is perfectly correct. Intel HD Graphics with QSV support is truly embedded into the Intel i3, i5, i7 processors. To make this concept easier to understand we usually refer to Intel HD Graphics as the ‘graphics core’ of the Intel processor.
We (ISS) are having an excellent experience with QSV technology and can confirm this technology suits CCTV applications very well. We first introduced QSV support 10 months ago as a feature of SecurOS MediaClient (our new operator interface). Now we have QSV support fully production-level on both client and server side, and use QSV specifically to decompress the h264 stream.
To highlight the benefits of this technology, provided are some numbers from our testing. For ‘extreme’ tests we used an entry level mini-PC Intel DC3217BY (Core i3-3217U, 1.8GHz) with a built-in video card. On this mini-PC, we are able to display 162 channels of video on 2 Full-HD screens (20 fps). This is when we use Axis cameras with dualstream support (MediaClient has stream auto-select feature). When we disable stream the auto-select feature, we are able to decompress and display 32 Full-HD streams. On the same mini-PC with QSV support disabled, we can hardly decompress 2-3 Full-HD steams. For another example, we can take our VideoWall controller. It also shares the same QSV support and is powered with the i7 processor plus a dedicated set of video cards. On live tests, our VideoWall controller can display up to 288 video streams (Axis, 20 fps) on 8 HD screens merged into single desktop.
Currently we are implementing video compression to h264 format using QSV. This is to be used for the transcoding feature of SecurOS RTSP-server -- without overloading the CPU. We can then provide steams from legacy and other ‘special’ cameras to external systems and web/mobile clients.
The only limitation of QSV technology that we see is that it is not yet implemented for major multi-core server platforms. We do not have any problems when we recommend i5 or i7 based PCs as workstations. But many of our installations are sizable systems using blade servers and virtualization. Unfortunately, for those configurations QSV cannot be currently used.
Let me know if you need any additional information about QSV technology implementation.
I have been using the QSV SDK since the very begining as the Handbrake community was one of the first to gain access to the SDK. (We also have a lot of Intel NUC's) While it is certainly true that MAJOR multicore server CPUs are not supported, don't rule out the entry level Xeon E3-1200 v3 range. The challenge is to be able to find a Server specific motherboard that supports the onboard graphics feature as most manufacturers use their own "onboard" graphics solution.
I also would say that QSV offers an excellent development and operational environment for any VMS.
Peter, when you refer to your Intel NUC DC3217BY (Core i3-3217U, 1.8GHz) you mention a "built in graphics card". Have you added an after market mini-pcie graphics card or are you simply referring to the embedded Intel HD Graphics 4000 GPU on the i3-3217U?
With the imminent release of the new Broadwell range of processors we will see the introduction of the next generation of embedded GPU's with the HD6300 Pro at the top. The HD6300 will have 3x to 4x the performance of your HD4000. I am also expecting to see a new range of NUC's in the next month or so. This is all fantastic news for VMS vendors who make use of QSV.
Are there any other Vendors out there that makes use of QSV?
Chris, I was actually trying to say that we used Intel NUC as it came from the factory. No additional video card (graphics card) was used for our tests.
We are looking forward to new Intel processors too: we strongly believe in QSV technology. We are also contacting Intel to see what their plans for the server platforms are.
Is this technology similar to NVIDIA encoding/decoding solution?
I will ping exacq and milestone this week. try and give feed back.
To my knowledge, the only VMS besides ISS that attempted to optimize to QuickSync was Network Optix. I have investigated many others. Most have no idea what I am talking about when I ask.
You can get at QuickSync with ffmpeg, Media Player Plus, LAV, ffdshow, and of course 32 bit versions of VLC. You might be able to get some VMS to use Quicksync if they use one of these interface layers.
Note that there may be some tweaks required in order to enable quicksync...enable projector (virtual display) if you only have on-board graphics.
You can use QuickSync in unison with other GPU cards like CUDA. Let QuickSync do h.264 decode and GPU do the rendering of graphic output.
QuickSync has lots of potential.
In the past few weeks I have been testing the new Axis P1428-E 4K camera at a Motor Sport track in Australia. At first pass, the results I was getting were poor with frame drops and what appeared to be motion shudder. At first I thought it might be the camera (even the web-based live viewer had problems) but then I ran the 64bit version of VLC using RTSP and received perfect 30fps streams (VLC has an excellent H264 decoder). After about a day of trialing three different VMS vendors I suddenly came to the conclusion that all of them single thread their decoding tasks. Even though I had plenty of CPU resources, I could see that a single core of each CPU was running at 100% while the other cores were basically idle. Decoding a 4K image at 30fps requires lots of resources so single threading decoding becomes a deal breaker.
At Intel's recommendation, I purchased an Intel i7 4790K which currently has the fastest single core of any Intel CPU's. While my problems didn't go away, the results were certainly 100% better and supported my theory that many VMS vendors are currently single threading this vital task.
I won't mention which vendors I used as, for the moment at least, it is not impacting 99.9% of environments where VMS's are in play but it won't be long before 4K becomes the new 1080P and this problem will have to be addressed. Implementing QSV (or for that matter any GPU based decoder technology) is the logical solution but it will need to happen soon.
For what its worth, the P1428-E is an excellent 4K camera and at the $999 RRP Axis is planning to sell it at I feel it will be the beginning of a new era for IP Camera technology. Digital zooming when you have 4K to play with is a dream. Sure, it doesn't have many of the refinements of other Axis Cameras but when you only have one camera to capture a massive target area, it is the only game in town.
[Note: Poster is from Intel]
From an Intel perspective, manufacturers and ISVs are increasingly taking advantage of QSV for video surveillance applications and seeing performance improvements. The hardware acceleration of video en/de/transcode and video processing improves application performance while simultaneously freeing up the CPU for other/additional workloads. Intel continues to focus on GPU enhancements for media applications. (Details on Intel QSV) Also a critical element of QSV is the Media SDK which makes it easy for developers to optimize applications for Intel® HD Graphics' fixed-function hardware acceleration.
Contact me (firstname.lastname@example.org) if more information is needed.
We've tried it to improve performance of the VMS client.
It worked well.
-it's windows only ( strange policy from Intel)
-Intel HD video card must be in use( meaning that monitor must be connected to it).
- it slows down video card
- at some point ( if you try to use multiple video decoders to decode multiple cameras ) it does not work and we did not find a way to find out the limits via API/SDK. So we did not know in advance if next decoder should be hardware or software...
If it works, it works great!
Intel's QSV is rather impressive with its transcoding and encoding performance but it is only for certain intel processors. Nvidia's CUDA is as well. However both are closed and does not support a wide number of platforms (Linux, AMD, ARM etc).
I would figure VMS developers would target OpenCL, which is more open hence the name. OpenCL harnesses the parallel nature of GPUs, it isn't just limited to dedicated GPUs but also benefits from on die GPUs from intel and amd as well. Almost all CPUs nowadays come with on board graphics and is also supported on ARM processors.
This might not be as beneficial on the Client VMS side as they use more graphics rendering APIs (DirectX, OpemGL, but more for the server side for computation. The server side could benefit by using for encoding, transcoding or even other task for example LPR functions.
You can also see that Apples new Mac Pros are also heading this direction as their new builds use strictly AMD firepro cards for rendering.