Lines 1-4
Link Here
|
1 |
--- src/FFmpegWriter.cpp.orig 2020-06-18 10:04:32 UTC |
1 |
--- src/FFmpegWriter.cpp.orig 2020-09-11 02:37:02 UTC |
2 |
+++ src/FFmpegWriter.cpp |
2 |
+++ src/FFmpegWriter.cpp |
3 |
@@ -172,7 +172,7 @@ void FFmpegWriter::SetVideoOptions(bool has_video, std |
3 |
@@ -172,7 +172,7 @@ void FFmpegWriter::SetVideoOptions(bool has_video, std |
4 |
AVCodec *new_codec; |
4 |
AVCodec *new_codec; |
Lines 21-27
Link Here
|
21 |
#else // not ffmpeg 3 |
21 |
#else // not ffmpeg 3 |
22 |
new_codec = avcodec_find_encoder_by_name(codec.c_str()); |
22 |
new_codec = avcodec_find_encoder_by_name(codec.c_str()); |
23 |
#endif // HAVE_HW_ACCEL |
23 |
#endif // HAVE_HW_ACCEL |
24 |
@@ -554,6 +554,7 @@ void FFmpegWriter::SetOption(StreamType stream, std::s |
24 |
@@ -556,6 +556,7 @@ void FFmpegWriter::SetOption(StreamType stream, std::s |
25 |
else { |
25 |
else { |
26 |
av_opt_set_int(c->priv_data, "crf", std::min(std::stoi(value),63), 0); |
26 |
av_opt_set_int(c->priv_data, "crf", std::min(std::stoi(value),63), 0); |
27 |
} |
27 |
} |
Lines 29-35
Link Here
|
29 |
case AV_CODEC_ID_HEVC : |
29 |
case AV_CODEC_ID_HEVC : |
30 |
c->bit_rate = 0; |
30 |
c->bit_rate = 0; |
31 |
if (strstr(info.vcodec.c_str(), "svt_hevc") != NULL) { |
31 |
if (strstr(info.vcodec.c_str(), "svt_hevc") != NULL) { |
32 |
@@ -562,6 +563,8 @@ void FFmpegWriter::SetOption(StreamType stream, std::s |
32 |
@@ -564,6 +565,8 @@ void FFmpegWriter::SetOption(StreamType stream, std::s |
33 |
av_opt_set_int(c->priv_data, "forced-idr",1,0); |
33 |
av_opt_set_int(c->priv_data, "forced-idr",1,0); |
34 |
} |
34 |
} |
35 |
break; |
35 |
break; |
Lines 38-44
Link Here
|
38 |
} |
38 |
} |
39 |
#endif |
39 |
#endif |
40 |
} else { |
40 |
} else { |
41 |
@@ -1447,7 +1450,7 @@ void FFmpegWriter::open_video(AVFormatContext *oc, AVS |
41 |
@@ -1456,7 +1459,7 @@ void FFmpegWriter::open_video(AVFormatContext *oc, AVS |
42 |
adapter_num = openshot::Settings::Instance()->HW_EN_DEVICE_SET; |
42 |
adapter_num = openshot::Settings::Instance()->HW_EN_DEVICE_SET; |
43 |
fprintf(stderr, "\n\nEncodiing Device Nr: %d\n", adapter_num); |
43 |
fprintf(stderr, "\n\nEncodiing Device Nr: %d\n", adapter_num); |
44 |
if (adapter_num < 3 && adapter_num >=0) { |
44 |
if (adapter_num < 3 && adapter_num >=0) { |
Lines 47-53
Link Here
|
47 |
snprintf(adapter,sizeof(adapter),"/dev/dri/renderD%d", adapter_num+128); |
47 |
snprintf(adapter,sizeof(adapter),"/dev/dri/renderD%d", adapter_num+128); |
48 |
// Maybe 127 is better because the first card would be 1?! |
48 |
// Maybe 127 is better because the first card would be 1?! |
49 |
adapter_ptr = adapter; |
49 |
adapter_ptr = adapter; |
50 |
@@ -1455,17 +1458,21 @@ void FFmpegWriter::open_video(AVFormatContext *oc, AVS |
50 |
@@ -1464,17 +1467,21 @@ void FFmpegWriter::open_video(AVFormatContext *oc, AVS |
51 |
adapter_ptr = NULL; |
51 |
adapter_ptr = NULL; |
52 |
#elif defined(__APPLE__) |
52 |
#elif defined(__APPLE__) |
53 |
adapter_ptr = NULL; |
53 |
adapter_ptr = NULL; |