You've already forked FFmpeg
							
							
				mirror of
				https://github.com/FFmpeg/FFmpeg.git
				synced 2025-10-30 23:18:11 +02:00 
			
		
		
		
	dxva2: Log errors verbosely
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
This commit is contained in:
		
				
					committed by
					
						 Luca Barbato
						Luca Barbato
					
				
			
			
				
	
			
			
			
						parent
						
							5b2b23f2d6
						
					
				
				
					commit
					9d80b1ae95
				
			| @@ -50,10 +50,13 @@ int ff_dxva2_commit_buffer(AVCodecContext *avctx, | |||||||
|     void     *dxva_data; |     void     *dxva_data; | ||||||
|     unsigned dxva_size; |     unsigned dxva_size; | ||||||
|     int      result; |     int      result; | ||||||
|  |     HRESULT hr; | ||||||
|  |  | ||||||
|     if (FAILED(IDirectXVideoDecoder_GetBuffer(ctx->decoder, type, |     hr = IDirectXVideoDecoder_GetBuffer(ctx->decoder, type, | ||||||
|                                               &dxva_data, &dxva_size))) { |                                         &dxva_data, &dxva_size); | ||||||
|         av_log(avctx, AV_LOG_ERROR, "Failed to get a buffer for %d\n", type); |     if (FAILED(hr)) { | ||||||
|  |         av_log(avctx, AV_LOG_ERROR, "Failed to get a buffer for %d: 0x%x\n", | ||||||
|  |                type, hr); | ||||||
|         return -1; |         return -1; | ||||||
|     } |     } | ||||||
|     if (size <= dxva_size) { |     if (size <= dxva_size) { | ||||||
| @@ -69,8 +72,12 @@ int ff_dxva2_commit_buffer(AVCodecContext *avctx, | |||||||
|         av_log(avctx, AV_LOG_ERROR, "Buffer for type %d was too small\n", type); |         av_log(avctx, AV_LOG_ERROR, "Buffer for type %d was too small\n", type); | ||||||
|         result = -1; |         result = -1; | ||||||
|     } |     } | ||||||
|     if (FAILED(IDirectXVideoDecoder_ReleaseBuffer(ctx->decoder, type))) { |  | ||||||
|         av_log(avctx, AV_LOG_ERROR, "Failed to release buffer type %d\n", type); |     hr = IDirectXVideoDecoder_ReleaseBuffer(ctx->decoder, type); | ||||||
|  |     if (FAILED(hr)) { | ||||||
|  |         av_log(avctx, AV_LOG_ERROR, | ||||||
|  |                "Failed to release buffer type %d: 0x%x\n", | ||||||
|  |                type, hr); | ||||||
|         result = -1; |         result = -1; | ||||||
|     } |     } | ||||||
|     return result; |     return result; | ||||||
| @@ -142,14 +149,16 @@ int ff_dxva2_common_end_frame(AVCodecContext *avctx, Picture *pic, | |||||||
|     exec.NumCompBuffers      = buffer_count; |     exec.NumCompBuffers      = buffer_count; | ||||||
|     exec.pCompressedBuffers  = buffer; |     exec.pCompressedBuffers  = buffer; | ||||||
|     exec.pExtensionData      = NULL; |     exec.pExtensionData      = NULL; | ||||||
|     if (FAILED(IDirectXVideoDecoder_Execute(ctx->decoder, &exec))) { |     hr = IDirectXVideoDecoder_Execute(ctx->decoder, &exec); | ||||||
|         av_log(avctx, AV_LOG_ERROR, "Failed to execute\n"); |     if (FAILED(hr)) { | ||||||
|  |         av_log(avctx, AV_LOG_ERROR, "Failed to execute: 0x%x\n", hr); | ||||||
|         result = -1; |         result = -1; | ||||||
|     } |     } | ||||||
|  |  | ||||||
| end: | end: | ||||||
|     if (FAILED(IDirectXVideoDecoder_EndFrame(ctx->decoder, NULL))) { |     hr = IDirectXVideoDecoder_EndFrame(ctx->decoder, NULL); | ||||||
|         av_log(avctx, AV_LOG_ERROR, "Failed to end frame\n"); |     if (FAILED(hr)) { | ||||||
|  |         av_log(avctx, AV_LOG_ERROR, "Failed to end frame: 0x%x\n", hr); | ||||||
|         result = -1; |         result = -1; | ||||||
|     } |     } | ||||||
|  |  | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user