* [FFmpeg-devel] [PATCH v2 1/2] avcodec/vaapi_encode_h264: use is_reference to fill reference_pic_flag
@ 2024-03-05 7:57 tong1.wu-at-intel.com
2024-03-05 7:57 ` [FFmpeg-devel] [PATCH v2 2/2] avcodec/vaapi_encode_h265: " tong1.wu-at-intel.com
0 siblings, 1 reply; 2+ messages in thread
From: tong1.wu-at-intel.com @ 2024-03-05 7:57 UTC (permalink / raw)
To: ffmpeg-devel; +Cc: Tong Wu
From: Tong Wu <tong1.wu@intel.com>
This codec supports FLAG_B_PICTURE_REFERENCES. We need to correctly fill
the reference_pic_flag with is_reference variable instead of 0 for B
frames.
Signed-off-by: Tong Wu <tong1.wu@intel.com>
---
libavcodec/vaapi_encode_h264.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/libavcodec/vaapi_encode_h264.c b/libavcodec/vaapi_encode_h264.c
index 37df9103ae..4a738215c1 100644
--- a/libavcodec/vaapi_encode_h264.c
+++ b/libavcodec/vaapi_encode_h264.c
@@ -759,7 +759,7 @@ static int vaapi_encode_h264_init_picture_params(AVCodecContext *avctx,
vpic->frame_num = hpic->frame_num;
vpic->pic_fields.bits.idr_pic_flag = (pic->type == PICTURE_TYPE_IDR);
- vpic->pic_fields.bits.reference_pic_flag = (pic->type != PICTURE_TYPE_B);
+ vpic->pic_fields.bits.reference_pic_flag = pic->is_reference;
return 0;
}
--
2.41.0.windows.1
_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
To unsubscribe, visit link above, or email
ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".
^ permalink raw reply [flat|nested] 2+ messages in thread
* [FFmpeg-devel] [PATCH v2 2/2] avcodec/vaapi_encode_h265: use is_reference to fill reference_pic_flag
2024-03-05 7:57 [FFmpeg-devel] [PATCH v2 1/2] avcodec/vaapi_encode_h264: use is_reference to fill reference_pic_flag tong1.wu-at-intel.com
@ 2024-03-05 7:57 ` tong1.wu-at-intel.com
0 siblings, 0 replies; 2+ messages in thread
From: tong1.wu-at-intel.com @ 2024-03-05 7:57 UTC (permalink / raw)
To: ffmpeg-devel; +Cc: Tong Wu
From: Tong Wu <tong1.wu@intel.com>
This codec supports FLAG_B_PICTURE_REFERENCES. We need to fill
reference_pic_flag with pic->is_reference.
Signed-off-by: Tong Wu <tong1.wu@intel.com>
---
libavcodec/vaapi_encode_h265.c | 9 +++++----
1 file changed, 5 insertions(+), 4 deletions(-)
diff --git a/libavcodec/vaapi_encode_h265.c b/libavcodec/vaapi_encode_h265.c
index c4aabbf5ed..bbd5e7d872 100644
--- a/libavcodec/vaapi_encode_h265.c
+++ b/libavcodec/vaapi_encode_h265.c
@@ -764,6 +764,7 @@ static int vaapi_encode_h265_init_picture_params(AVCodecContext *avctx,
VAAPIEncodePicture *prev = pic->prev;
VAAPIEncodeH265Picture *hprev = prev ? prev->priv_data : NULL;
VAEncPictureParameterBufferHEVC *vpic = pic->codec_picture_params;
+ int is_ref = pic->is_reference;
int i, j = 0;
if (pic->type == PICTURE_TYPE_IDR) {
@@ -949,22 +950,22 @@ static int vaapi_encode_h265_init_picture_params(AVCodecContext *avctx,
case PICTURE_TYPE_IDR:
vpic->pic_fields.bits.idr_pic_flag = 1;
vpic->pic_fields.bits.coding_type = 1;
- vpic->pic_fields.bits.reference_pic_flag = 1;
+ vpic->pic_fields.bits.reference_pic_flag = is_ref;
break;
case PICTURE_TYPE_I:
vpic->pic_fields.bits.idr_pic_flag = 0;
vpic->pic_fields.bits.coding_type = 1;
- vpic->pic_fields.bits.reference_pic_flag = 1;
+ vpic->pic_fields.bits.reference_pic_flag = is_ref;
break;
case PICTURE_TYPE_P:
vpic->pic_fields.bits.idr_pic_flag = 0;
vpic->pic_fields.bits.coding_type = 2;
- vpic->pic_fields.bits.reference_pic_flag = 1;
+ vpic->pic_fields.bits.reference_pic_flag = is_ref;
break;
case PICTURE_TYPE_B:
vpic->pic_fields.bits.idr_pic_flag = 0;
vpic->pic_fields.bits.coding_type = 3;
- vpic->pic_fields.bits.reference_pic_flag = 0;
+ vpic->pic_fields.bits.reference_pic_flag = is_ref;
break;
default:
av_assert0(0 && "invalid picture type");
--
2.41.0.windows.1
_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
To unsubscribe, visit link above, or email
ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2024-03-05 7:59 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2024-03-05 7:57 [FFmpeg-devel] [PATCH v2 1/2] avcodec/vaapi_encode_h264: use is_reference to fill reference_pic_flag tong1.wu-at-intel.com
2024-03-05 7:57 ` [FFmpeg-devel] [PATCH v2 2/2] avcodec/vaapi_encode_h265: " tong1.wu-at-intel.com
Git Inbox Mirror of the ffmpeg-devel mailing list - see https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
This inbox may be cloned and mirrored by anyone:
git clone --mirror https://master.gitmailbox.com/ffmpegdev/0 ffmpegdev/git/0.git
# If you have public-inbox 1.1+ installed, you may
# initialize and index your mirror using the following commands:
public-inbox-init -V2 ffmpegdev ffmpegdev/ https://master.gitmailbox.com/ffmpegdev \
ffmpegdev@gitmailbox.com
public-inbox-index ffmpegdev
Example config snippet for mirrors.
AGPL code for this site: git clone https://public-inbox.org/public-inbox.git