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. _______________________________________________ xorg mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/xorg
