Changeset View
Changeset View
Standalone View
Standalone View
files/ffmpeg4.patch
- This file was added.
| Index: guvcview-src-2.0.5/guvcview/gui_gtk3_callbacks.c | |||||
| =================================================================== | |||||
| --- guvcview-src-2.0.5.orig/guvcview/gui_gtk3_callbacks.c | |||||
| +++ guvcview-src-2.0.5/guvcview/gui_gtk3_callbacks.c | |||||
| @@ -2158,9 +2158,9 @@ | |||||
| gtk_grid_attach (GTK_GRID(table), lbl_me_method, 0, line, 1 ,1); | |||||
| gtk_widget_show (lbl_me_method); | |||||
| - GtkWidget *me_method = gtk_spin_button_new_with_range(1,10,1); | |||||
| + GtkWidget *me_method = gtk_entry_new(); | |||||
| gtk_editable_set_editable(GTK_EDITABLE(me_method),TRUE); | |||||
| - gtk_spin_button_set_value (GTK_SPIN_BUTTON(me_method), defaults->me_method); | |||||
| + gtk_entry_set_text(me_method, defaults->me_method); | |||||
| gtk_grid_attach (GTK_GRID(table), me_method, 1, line, 1 ,1); | |||||
| gtk_widget_show (me_method); | |||||
| @@ -2246,7 +2246,7 @@ | |||||
| defaults->qblur = (float) gtk_spin_button_get_value (GTK_SPIN_BUTTON(qblur)); | |||||
| defaults->subq = gtk_spin_button_get_value_as_int (GTK_SPIN_BUTTON(subq)); | |||||
| defaults->framerefs = gtk_spin_button_get_value_as_int (GTK_SPIN_BUTTON(framerefs)); | |||||
| - defaults->me_method = gtk_spin_button_get_value_as_int (GTK_SPIN_BUTTON(me_method)); | |||||
| + defaults->me_method = gtk_entry_get_text (me_method); | |||||
| defaults->mb_decision = gtk_spin_button_get_value_as_int (GTK_SPIN_BUTTON(mb_decision)); | |||||
| defaults->max_b_frames = gtk_spin_button_get_value_as_int (GTK_SPIN_BUTTON(max_b_frames)); | |||||
| defaults->num_threads = gtk_spin_button_get_value_as_int (GTK_SPIN_BUTTON(num_threads));Index: guvcview-src-2.0.5/guvcview/gui_qt5_callbacks.cpp | |||||
| =================================================================== | |||||
| --- guvcview-src-2.0.5.orig/guvcview/gui_qt5_callbacks.cpp | |||||
| +++ guvcview-src-2.0.5/guvcview/gui_qt5_callbacks.cpp | |||||
| @@ -1590,10 +1590,8 @@ void MainWindow::video_codec_properties( | |||||
| framerefs->setValue(defaults->framerefs); | |||||
| form.addRow(_("framerefs: "), framerefs); | |||||
| /*me method*/ | |||||
| - QSpinBox *me_method = new QSpinBox(&dialog); | |||||
| - me_method->setRange(1, 10); | |||||
| - me_method->setSingleStep(1); | |||||
| - me_method->setValue(defaults->me_method); | |||||
| + QLabel *me_method = new QLabel(&dialog); | |||||
| + me_method->setText(defaults->me_method); | |||||
| form.addRow(_("me method: "), me_method); | |||||
| /*mb decision*/ | |||||
| QSpinBox *mb_decision = new QSpinBox(&dialog); | |||||
| @@ -1645,7 +1643,7 @@ void MainWindow::video_codec_properties( | |||||
| defaults->qblur = qblur->value(); | |||||
| defaults->subq = subq->value(); | |||||
| defaults->framerefs = framerefs->value(); | |||||
| - defaults->me_method = me_method->value(); | |||||
| + defaults->me_method = me_method->text().toLatin1().data(); | |||||
| defaults->mb_decision = mb_decision->value(); | |||||
| defaults->max_b_frames = max_b_frames->value(); | |||||
| defaults->num_threads = num_threads->value(); | |||||
| Index: guvcview-src-2.0.5/gview_encoder/encoder.c | |||||
| =================================================================== | |||||
| --- guvcview-src-2.0.5.orig/gview_encoder/encoder.c | |||||
| +++ guvcview-src-2.0.5/gview_encoder/encoder.c | |||||
| @@ -445,10 +445,8 @@ static encoder_video_context_t *encoder_ | |||||
| #if !LIBAVCODEC_VER_AT_LEAST(56,60) | |||||
| video_codec_data->codec_context->me_method = video_defaults->me_method; | |||||
| #else | |||||
| - if( video_defaults->codec_id == AV_CODEC_ID_H264 && video_defaults->me_method > 4) | |||||
| - video_defaults->me_method = X264_ME_HEX; | |||||
| - | |||||
| - av_dict_set_int(&video_codec_data->private_options, "motion-est", video_defaults->me_method, 0); | |||||
| + if(video_defaults->me_method) | |||||
| + av_dict_set(&video_codec_data->private_options, "motion-est", video_defaults->me_method, 0); | |||||
| #endif | |||||
| #if !LIBAVCODEC_VER_AT_LEAST(57,00) | |||||
| Index: guvcview-src-2.0.5/gview_encoder/gviewencoder.h | |||||
| =================================================================== | |||||
| --- guvcview-src-2.0.5.orig/gview_encoder/gviewencoder.h | |||||
| +++ guvcview-src-2.0.5/gview_encoder/gviewencoder.h | |||||
| @@ -104,7 +104,7 @@ typedef struct _video_codec_t | |||||
| char codec_name[20]; //lavc codec_name | |||||
| int mb_decision; //lavc mb_decision | |||||
| int trellis; //lavc trellis quantization | |||||
| - int me_method; //lavc motion estimation method | |||||
| + const char* me_method; //lavc motion estimation method | |||||
| int mpeg_quant; //lavc mpeg quantization | |||||
| int max_b_frames; //lavc max b frames | |||||
| int num_threads; //lavc num threads | |||||
| Index: guvcview-src-2.0.5/gview_encoder/video_codecs.c | |||||
| =================================================================== | |||||
| --- guvcview-src-2.0.5.orig/gview_encoder/video_codecs.c | |||||
| +++ guvcview-src-2.0.5/gview_encoder/video_codecs.c | |||||
| @@ -97,7 +97,7 @@ static video_codec_t listSupCodecs[] = | |||||
| .codec_name = "none", | |||||
| .mb_decision = 0, | |||||
| .trellis = 0, | |||||
| - .me_method = 0, | |||||
| + .me_method = NULL, | |||||
| .mpeg_quant = 0, | |||||
| .max_b_frames = 0, | |||||
| .num_threads = 0, | |||||
| @@ -133,7 +133,7 @@ static video_codec_t listSupCodecs[] = | |||||
| .codec_name = "mjpeg", | |||||
| .mb_decision = 0, | |||||
| .trellis = 0, | |||||
| - .me_method = ME_EPZS, | |||||
| + .me_method = "epsz", | |||||
| .mpeg_quant = 0, | |||||
| .max_b_frames = 0, | |||||
| .num_threads = 0, | |||||
| @@ -169,7 +169,7 @@ static video_codec_t listSupCodecs[] = | |||||
| .codec_name = "mpeg1video", | |||||
| .mb_decision = FF_MB_DECISION_RD, | |||||
| .trellis = 1, | |||||
| - .me_method = ME_EPZS, | |||||
| + .me_method = "epsz", | |||||
| .mpeg_quant = 0, | |||||
| .max_b_frames = 0, | |||||
| .num_threads = 1, | |||||
| @@ -205,11 +205,11 @@ static video_codec_t listSupCodecs[] = | |||||
| .codec_name = "flv", | |||||
| .mb_decision = FF_MB_DECISION_RD, | |||||
| .trellis = 1, | |||||
| - .me_method = ME_EPZS, | |||||
| + .me_method = "epsz", | |||||
| .mpeg_quant = 0, | |||||
| .max_b_frames = 0, | |||||
| .num_threads = 1, | |||||
| - .flags = CODEC_FLAG_4MV | |||||
| + .flags = AV_CODEC_FLAG_4MV | |||||
| }, | |||||
| { | |||||
| .valid = 1, | |||||
| @@ -241,7 +241,7 @@ static video_codec_t listSupCodecs[] = | |||||
| .codec_name = "wmv1", | |||||
| .mb_decision = FF_MB_DECISION_RD, | |||||
| .trellis = 1, | |||||
| - .me_method = ME_EPZS, | |||||
| + .me_method = "epsz", | |||||
| .mpeg_quant = 0, | |||||
| .max_b_frames = 0, | |||||
| .num_threads = 1, | |||||
| @@ -277,7 +277,7 @@ static video_codec_t listSupCodecs[] = | |||||
| .codec_name = "mpeg2video", | |||||
| .mb_decision = FF_MB_DECISION_RD, | |||||
| .trellis = 1, | |||||
| - .me_method = ME_EPZS, | |||||
| + .me_method = "epsz", | |||||
| .mpeg_quant = 0, | |||||
| .max_b_frames = 0, | |||||
| .num_threads = 1, | |||||
| @@ -313,7 +313,7 @@ static video_codec_t listSupCodecs[] = | |||||
| .codec_name = "msmpeg4v3", | |||||
| .mb_decision = FF_MB_DECISION_RD, | |||||
| .trellis = 1, | |||||
| - .me_method = ME_EPZS, | |||||
| + .me_method = "epsz", | |||||
| .mpeg_quant = 0, | |||||
| .max_b_frames = 0, | |||||
| .num_threads = 1, | |||||
| @@ -349,7 +349,7 @@ static video_codec_t listSupCodecs[] = | |||||
| .codec_name = "mpeg4", | |||||
| .mb_decision = FF_MB_DECISION_RD, | |||||
| .trellis = 1, | |||||
| - .me_method = ME_EPZS, | |||||
| + .me_method = "epsz", | |||||
| .mpeg_quant = 1, | |||||
| .max_b_frames = 0, | |||||
| .num_threads = 1, | |||||
| @@ -385,7 +385,7 @@ static video_codec_t listSupCodecs[] = | |||||
| .codec_name = "libx264", | |||||
| .mb_decision = FF_MB_DECISION_RD, | |||||
| .trellis = 0, | |||||
| - .me_method = X264_ME_HEX, | |||||
| + .me_method = "hex", | |||||
| .mpeg_quant = 1, | |||||
| .max_b_frames = 16, | |||||
| .num_threads = 4, | |||||
| @@ -426,7 +426,7 @@ static video_codec_t listSupCodecs[] = | |||||
| .codec_name = "libx265", | |||||
| .mb_decision = FF_MB_DECISION_RD, | |||||
| .trellis = 0, | |||||
| - .me_method = ME_HEX, | |||||
| + .me_method = "hex", | |||||
| .mpeg_quant = 1, | |||||
| .max_b_frames = 16, | |||||
| .num_threads = 4, | |||||
| @@ -463,7 +463,7 @@ static video_codec_t listSupCodecs[] = | |||||
| .codec_name = "libvpx_vp8", | |||||
| .mb_decision = FF_MB_DECISION_RD, | |||||
| .trellis = 0, | |||||
| - .me_method = ME_HEX, | |||||
| + .me_method = "hex", | |||||
| .mpeg_quant = 1, | |||||
| .max_b_frames = 0, | |||||
| .num_threads = 4, | |||||
| @@ -500,7 +500,7 @@ static video_codec_t listSupCodecs[] = | |||||
| .codec_name = "libvpx_vp9", | |||||
| .mb_decision = FF_MB_DECISION_RD, | |||||
| .trellis = 0, | |||||
| - .me_method = ME_HEX, | |||||
| + .me_method = "hex", | |||||
| .mpeg_quant = 1, | |||||
| .max_b_frames = 16, | |||||
| .num_threads = 4, | |||||
| @@ -537,7 +537,7 @@ static video_codec_t listSupCodecs[] = | |||||
| .codec_name = "libtheora", | |||||
| .mb_decision = FF_MB_DECISION_RD, | |||||
| .trellis = 0, | |||||
| - .me_method = ME_HEX, | |||||
| + .me_method = "hex", | |||||
| .mpeg_quant = 1, | |||||
| .max_b_frames = 0, | |||||
| .num_threads = 4, | |||||
| Index: guvcview-src-2.0.5/gview_v4l2core/uvc_h264.c | |||||
| =================================================================== | |||||
| --- guvcview-src-2.0.5.orig/gview_v4l2core/uvc_h264.c | |||||
| +++ guvcview-src-2.0.5/gview_v4l2core/uvc_h264.c | |||||
| @@ -1039,7 +1039,7 @@ int h264_init_decoder(int width, int hei | |||||
| exit(-1); | |||||
| } | |||||
| - h264_ctx->context->flags2 |= CODEC_FLAG2_FAST; | |||||
| + h264_ctx->context->flags2 |= AV_CODEC_FLAG2_FAST; | |||||
| h264_ctx->context->pix_fmt = AV_PIX_FMT_YUV420P; | |||||
| h264_ctx->context->width = width; | |||||
| h264_ctx->context->height = height; | |||||
Copyright © 2015-2021 Solus Project. The Solus logo is Copyright © 2016-2021 Solus Project. All Rights Reserved.