![]() |
Qt
Internal/Contributor docs for the Qt SDK. Note: These are NOT official API docs; those are found at https://doc.qt.io/
|
The TextureConverter class implements conversion of AVFrame hw textures to textures for rendering by the specified QRhi. Any instance of TextureConverter matches the pair of FFmpeg hw frames context + QRhi. More...
#include <qffmpegtextureconverter_p.h>
Public Member Functions | |
| TextureConverter (QRhi &rhi) | |
| Construct uninitialized texture converter for the specified QRhi. | |
| bool | init (AVFrame &hwFrame) |
| Initializes the instance of the texture converter for the frame context associated with the specified frame. The method tries to initialize the conversion backend during the first call with the specified frame format. If frame format is not changed, the method does nothing even if the first attempt failed. | |
| QVideoFrameTexturesUPtr | createTextures (AVFrame &hwFrame, QVideoFrameTexturesUPtr &oldTextures) |
| Creates video frame textures basing on the current hw frame and the previous textures from the texture pool. We should strive to reuse oldTextures if we can do so. If the method returns null, try createTextureHandles. | |
| QVideoFrameTexturesHandlesUPtr | createTextureHandles (AVFrame &hwFrame, QVideoFrameTexturesHandlesUPtr oldHandles) |
| Creates video frame texture handles basing on the current hw frame and the previous texture handles from the pool. We should strive to reuse oldHandles if we can do so. | |
| bool | isNull () const |
| Indicates whether the texture converter is not initialized or the initialization failed. If hw texture conversion is disabled, it always true. | |
Static Public Member Functions | |
| static void | applyDecoderPreset (AVPixelFormat format, AVCodecContext &codecContext) |
| Applies platform-specific hw texture conversion presets for a decoder. The function is supposed to be invoked for the get_format callback. | |
| static bool | hwTextureConversionEnabled () |
| Indicates whether hw texture conversion is enabled for the application. | |
| static bool | isBackendAvailable (AVFrame &hwFrame, QRhi &rhi) |
| Indicates whether the matching textute converter backend can be created. If isBackendAvailable returns false, instances cannot be initialized with the specified frame. If it returns true, init will attempt to create backend, but it may fail if something goes wrong in the backend. | |
The TextureConverter class implements conversion of AVFrame hw textures to textures for rendering by the specified QRhi. Any instance of TextureConverter matches the pair of FFmpeg hw frames context + QRhi.
Definition at line 70 of file qffmpegtextureconverter_p.h.
| TextureConverter::TextureConverter | ( | QRhi & | rhi | ) |
Construct uninitialized texture converter for the specified QRhi.
Definition at line 76 of file qffmpegtextureconverter.cpp.
|
static |
Applies platform-specific hw texture conversion presets for a decoder. The function is supposed to be invoked for the get_format callback.
Definition at line 127 of file qffmpegtextureconverter.cpp.
| QVideoFrameTexturesHandlesUPtr TextureConverter::createTextureHandles | ( | AVFrame & | hwFrame, |
| QVideoFrameTexturesHandlesUPtr | oldHandles ) |
Creates video frame texture handles basing on the current hw frame and the previous texture handles from the pool. We should strive to reuse oldHandles if we can do so.
Definition at line 97 of file qffmpegtextureconverter.cpp.
| QVideoFrameTexturesUPtr TextureConverter::createTextures | ( | AVFrame & | hwFrame, |
| QVideoFrameTexturesUPtr & | oldTextures ) |
Creates video frame textures basing on the current hw frame and the previous textures from the texture pool. We should strive to reuse oldTextures if we can do so. If the method returns null, try createTextureHandles.
Definition at line 86 of file qffmpegtextureconverter.cpp.
|
static |
Indicates whether hw texture conversion is enabled for the application.
Definition at line 117 of file qffmpegtextureconverter.cpp.
| bool TextureConverter::init | ( | AVFrame & | hwFrame | ) |
Initializes the instance of the texture converter for the frame context associated with the specified frame. The method tries to initialize the conversion backend during the first call with the specified frame format. If frame format is not changed, the method does nothing even if the first attempt failed.
Definition at line 78 of file qffmpegtextureconverter.cpp.
|
static |
Indicates whether the matching textute converter backend can be created. If isBackendAvailable returns false, instances cannot be initialized with the specified frame. If it returns true, init will attempt to create backend, but it may fail if something goes wrong in the backend.
Definition at line 146 of file qffmpegtextureconverter.cpp.
|
inline |
Indicates whether the texture converter is not initialized or the initialization failed. If hw texture conversion is disabled, it always true.
Definition at line 106 of file qffmpegtextureconverter_p.h.