AMDs new AMDXvBA library
Corbin Simpson
mostawesomedude at gmail.com
Wed Nov 5 03:05:25 PST 2008
Torgeir Veimo wrote:
> I had a quick look at the libAMDXvBA.so.1.0 library that comes with
> the latest fglrx driver from AMD (Catalyst v8.10) with gdb and it
> seems to be a quite comprehensive library implemented in C++.
>
> There are quite a good number of classes, with names such as
> R600CmdBuf, R600ColorEnchanceFilter, R600Plane,
> R600SubstreamBlendFilter, R600UpSampleShader, ShaderManager,
> Subpicture, but much more interesting are classes such as
> UVDBufferPool, UVDCodec, UVDCodecH264, UVDCodecMpeg2, UVDCodecVC1,
> UVDCodecVLD, etc.
>
> Am wondering if someone on the list with connections to AMD knows
> when / if header files will be made available for this library?
>
>
> Here's a sample output from gdb. It's easy to get the list by starting
> gdb as 'gdb libAMDXvBA.so.1.0' then typing Break ' and press tab for
> autocompletion.
>
> XvBADecodeLinux::CreateCompressedBuffers(DeviceLinux const*, int,
> XVBA_BUFFER_DESCRIPTOR**, CompressedBuffer**)
> XvBADecodeLinux::CreateDecodeBuffers(XvBADecodeData*)
> XvBADecodeLinux::DecodePicture(DeviceLinux const*, unsigned int,
> XVBA_BUFFER_DESCRIPTOR**)
> XvBADecodeLinux::DestroyDecodeBuffers(unsigned int,
> XVBA_BUFFER_DESCRIPTOR*)
> XvBADecodeLinux::EndDecodePicture(DeviceLinux const*)
> XvBADecodeLinux::StartDecodePicture(DeviceLinux const*, XvMCSurface
> const*)
> XvBADecodeLinuxH264::Create(DeviceLinux*, XvMCContext const*,
> XvBADecodeLinux**)
> XvBADecodeLinuxH264::CreateCompressedBuffer(DeviceLinux const*,
> XVBA_BUFFER_DESCRIPTOR const*, CompressedBuffer**)
> XvBADecodeLinuxH264::FillPicParamsBuffer(xvba_picture_descriptor
> const*, MMD_PicParams_H264*)
> XvBADecodeLinuxH264::Init(DeviceLinux*, XvMCContext const*)
> XvBADecodeLinuxH264::Release(DeviceLinux const*)
> XvBADecodeLinuxMPEG2::ConvertCreateDecodeBuffers(XVBA_BUFFER, int*,
> int*)
> XvBADecodeLinuxMPEG2::Create(DeviceLinux*, XvMCContext const*,
> XvBADecodeLinux**)
> XvBADecodeLinuxMPEG2::CreateCompressedBuffer(DeviceLinux const*,
> XVBA_BUFFER_DESCRIPTOR const*, CompressedBuffer**)
> XvBADecodeLinuxMPEG2::StartDecodePicture(DeviceLinux const*,
> XvMCSurface const*)
> XvBADecodeLinuxVC1::Create(DeviceLinux*, XvMCContext const*,
> XvBADecodeLinux**)
> XvBADecodeLinuxVC1::CreateCompressedBuffer(DeviceLinux const*,
> XVBA_BUFFER_DESCRIPTOR const*, CompressedBuffer**)
> XvBADecodeLinuxVC1::FillPicParamsBuffer(xvba_picture_descriptor const*)
> XvBADecodeLinuxVC1::Release(DeviceLinux const*)
> XvBADecodeLinuxVC1::StartDecodePicture(DeviceLinux const*, XvMCSurface
> const*)
> XvBADecodeLinuxVLD::ConvertCreateDecodeBuffers(XVBA_BUFFER, int*, int*)
> XvMCDecodeLinux::Create(DeviceLinux*, XvMCContext const*,
> XvMCDecodeLinux**)
> XvMCDecodeLinux::CreateBlocks(XvMCContext const*, unsigned int,
> XvMCBlockArray*)
> XvMCDecodeLinux::CreateMacroBlocks(XvMCContext const*, unsigned int,
> XvMCMacroBlockArray*)
> XvMCDecodeLinux::DestroyBlocks(XvMCBlockArray*)
> XvMCDecodeLinux::DestroyMacroBlocks(XvMCMacroBlockArray*)
> XvMCDecodeLinux::FillInterMCControlBuffer(XvMCMacroBlock const*, short
> const*, bool, unsigned int)
> XvMCDecodeLinux::FillIntraMCControlBuffer(XvMCMacroBlock const*, short
> const*)
> XvMCDecodeLinux::FillPicParamsBuffer(unsigned int, XvMCSurface const*,
> XvMCSurface const*, XvMCSurface const*, unsigned int)
> XvMCDecodeLinux::Init(DeviceLinux*, XvMCContext const*)
> XvMCDecodeLinux::PackIdct(short const*, int)
> XvMCDecodeLinux::Release(DeviceLinux const*)
> XvMCDecodeLinux::RenderSurface(DeviceLinux const*, unsigned int,
> XvMCSurface const*, XvMCSurface const*, XvMCSurface const*, unsigned
> int, unsigned int, unsigned int, XvMCMacroBlockArray const*,
> XvMCBlockArray const*)
Hmm. No idea, really. Our AMD contacts are busy trying to clear r600
docs for the public at the moment, so UVD and UVD2 stuff will have to wait.
~ C.
More information about the xorg
mailing list