History

lavc/vaapi_encode: Add hardware config metadata

These encoders all accept VAAPI surfaces in a hardware frames context.

Mark Thompson committed 6 years ago

Commit 344e6c31 parent 5a1ff448 files · +14 −0Browse files

Unified · Split

8 files
  1. libavcodec/vaapi_encode.c +5 −0
  2. libavcodec/vaapi_encode.h +3 −0
  3. libavcodec/vaapi_encode_h264.c +1 −0
  4. libavcodec/vaapi_encode_h265.c +1 −0
  5. libavcodec/vaapi_encode_mjpeg.c +1 −0
  6. libavcodec/vaapi_encode_mpeg2.c +1 −0
  7. libavcodec/vaapi_encode_vp8.c +1 −0
  8. libavcodec/vaapi_encode_vp9.c +1 −0
libavcodec/vaapi_encode.c+5−0
@@ -27,6 +27,11 @@ · 26 unmodified lines
2727 #include "vaapi_encode.h"
2828 #include "avcodec.h"
2929
30+const AVCodecHWConfigInternal *ff_vaapi_encode_hw_configs[] = {
31+ HW_CONFIG_ENCODER_FRAMES(VAAPI, VAAPI),
32+ NULL,
33+};
34+
3035 static const char * const picture_type_name[] = { "IDR", "I", "P", "B" };
3136
3237 static int vaapi_encode_make_packed_header(AVCodecContext *avctx,
libavcodec/vaapi_encode.h+3−0
@@ -31,6 +31,7 @@ · 30 unmodified lines
3131 #include "libavutil/hwcontext_vaapi.h"
3232
3333 #include "avcodec.h"
34+#include "hwconfig.h"
3435
3536 struct VAAPIEncodeType;
3637 struct VAAPIEncodePicture;
@@ -44,6 +45,8 @@ enum { · 7 unmodified lines
4445 MAX_PARAM_BUFFER_SIZE = 1024,
4546 };
4647
48+extern const AVCodecHWConfigInternal *ff_vaapi_encode_hw_configs[];
49+
4750 enum {
4851 PICTURE_TYPE_IDR = 0,
4952 PICTURE_TYPE_I = 1,
libavcodec/vaapi_encode_h264.c+1−0
@@ -1361,5 +1361,6 @@ AVCodec ff_h264_vaapi_encoder = { · 1360 unmodified lines
13611361 AV_PIX_FMT_VAAPI,
13621362 AV_PIX_FMT_NONE,
13631363 },
1364+ .hw_configs = ff_vaapi_encode_hw_configs,
13641365 .wrapper_name = "vaapi",
13651366 };
libavcodec/vaapi_encode_h265.c+1−0
@@ -1297,5 +1297,6 @@ AVCodec ff_hevc_vaapi_encoder = { · 1296 unmodified lines
12971297 AV_PIX_FMT_VAAPI,
12981298 AV_PIX_FMT_NONE,
12991299 },
1300+ .hw_configs = ff_vaapi_encode_hw_configs,
13001301 .wrapper_name = "vaapi",
13011302 };
libavcodec/vaapi_encode_mjpeg.c+1−0
@@ -570,5 +570,6 @@ AVCodec ff_mjpeg_vaapi_encoder = { · 569 unmodified lines
570570 AV_PIX_FMT_VAAPI,
571571 AV_PIX_FMT_NONE,
572572 },
573+ .hw_configs = ff_vaapi_encode_hw_configs,
573574 .wrapper_name = "vaapi",
574575 };
libavcodec/vaapi_encode_mpeg2.c+1−0
@@ -707,5 +707,6 @@ AVCodec ff_mpeg2_vaapi_encoder = { · 706 unmodified lines
707707 AV_PIX_FMT_VAAPI,
708708 AV_PIX_FMT_NONE,
709709 },
710+ .hw_configs = ff_vaapi_encode_hw_configs,
710711 .wrapper_name = "vaapi",
711712 };
libavcodec/vaapi_encode_vp8.c+1−0
@@ -262,5 +262,6 @@ AVCodec ff_vp8_vaapi_encoder = { · 261 unmodified lines
262262 AV_PIX_FMT_VAAPI,
263263 AV_PIX_FMT_NONE,
264264 },
265+ .hw_configs = ff_vaapi_encode_hw_configs,
265266 .wrapper_name = "vaapi",
266267 };
libavcodec/vaapi_encode_vp9.c+1−0
@@ -296,5 +296,6 @@ AVCodec ff_vp9_vaapi_encoder = { · 295 unmodified lines
296296 AV_PIX_FMT_VAAPI,
297297 AV_PIX_FMT_NONE,
298298 },
299+ .hw_configs = ff_vaapi_encode_hw_configs,
299300 .wrapper_name = "vaapi",
300301 };

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t