CoreAVC

CoreAVC was a proprietary codec for decoding the H.264/MPEG-4 AVC (Advanced Video Coding) video format.

In 2010, when CoreAVC was a software-only decoder, it was one of the fastest software decoders, but still slower than hardware-based ones. CoreAVC supports all H.264 Profiles except for 4:2:2 and 4:4:4.

From 2009, CoreAVC introduced support to two forms of GPU hardware acceleration for H.264 decoding on Windows: CUDA (Nvidia only, in 2009) and DXVA (Nvidia and ATI GPUs, in 2011).

CoreAVC was included as a part of the CorePlayer Multimedia Framework and was being used in the now defunct desktop client by Joost a system that was distributing videos over the Internet using peer-to-peer TV technology.

CoreAVC-For-Linux DMCA complaint 
An open-source project named CoreAVC-For-Linux hosted at Google Code patches the loader code in the open source media player program MPlayer and allows it to use the Windows only CoreAVC DirectShow filter in free software environments. It does not include CoreAVC, but simply allows MPlayer to make use of it. This project also contains patches to use the proprietary codec in MythTV, open source software for Home Theater Personal Computers and the media player xine.

In May 2008 the CoreAVC-For-Linux project was taken down by Google due to a DMCA complaint. There was speculation about this DMCA complaint, because the project as a wrapper did not use any copyrighted material, but maybe reverse engineering techniques were used without prior permission, which CoreCodec, Inc. interpreted as a violation of the DMCA. CoreCodec has stated that reverse engineering was the reason, and it was in error and has apologized to the community.

CoreAVC-For-Linux is now back online and is recognized and supported by CoreCodec. Despite this, the project's future is currently in doubt as the developer stated they are quite busy and do not have enough time to continue working on it. The developer is currently requesting help from any developers interested in contributing to the project.

Multi-platform support 
In early 2008, due to popular demand, CoreCodec ported the until then Windows-only to a plethora of platforms and CPU architectures. CoreAVC is now supported on the operating systems Windows, macOS and Linux, as well as mobile-embedded operating systems like Palm OS, Symbian, Windows CE and Windows Mobile - although the Linux version is not available as retail but only for OEMs. CoreAVC runs not only on 32-bit and 64-bit x86, but also on PowerPC (including AltiVec support), ARM9, ARM11 and MIPS. As for GPUs, supported are Intel 2700G, ATI Imageon, Marvell Monahan, (limited) Qualcomm QTv.

In February 2009, CoreCodec released an update to CoreAVC that implemented support for Nvidia CUDA. CUDA allows selected Nvidia graphics cards to assist in the decoding of video. In March 2011, CoreCodec introduced support for DXVA. Like CUDA, DXVA allows ATI and NVIDIA based graphics cards to assist in the decoding of video.

References

External links 
  
 CoreCodec, Inc.
 CorePlayer (multi-platform) 
 Doom9.org Discussion on CoreAVC
 Openlaw - the current US law and Reverse Engineering
 coreavc-for-linux - Google Code

Codecs
Multimedia
Linux media players
MacOS media players
Windows media players
Symbian software