1 diff -ur msopenh264-1.1.1/src/msopenh264dec.cpp msopenh264-1.2.1/src/msopenh264dec.cpp
2 --- msopenh264-1.1.1/src/msopenh264dec.cpp 2015-09-23 15:14:22.000000000 +0200
3 +++ msopenh264-1.2.1/src/msopenh264dec.cpp 2016-10-19 17:32:52.000000000 +0200
5 #include "msopenh264dec.h"
6 #include "mediastreamer2/msticker.h"
8 +#include "wels/codec_ver.h"
11 MSOpenH264Decoder::MSOpenH264Decoder(MSFilter *f)
12 : mFilter(f), mDecoder(0), mUnpacker(0), mSPS(0), mPPS(0), mYUVMsg(0),
14 mUnpacker=rfc3984_new();
16 SDecodingParam params = { 0 };
17 +#if (OPENH264_MAJOR == 1) && (OPENH264_MINOR >=6)
19 params.eOutputColorFormat = videoFormatI420;
21 params.uiTargetDqLayer = (unsigned char) -1;
22 params.eEcActiveIdc = ERROR_CON_FRAME_COPY_CROSS_IDR;
23 params.sVideoProperty.size = sizeof(params.sVideoProperty);
24 - params.sVideoProperty.eVideoBsType = VIDEO_BITSTREAM_DEFAULT;
25 + params.sVideoProperty.eVideoBsType = VIDEO_BITSTREAM_AVC;
26 long ret = mDecoder->Initialize(¶ms);
28 ms_error("OpenH264 decoder: Failed to initialize: %li", ret);
29 diff -ur msopenh264-1.1.1/src/msopenh264enc.cpp msopenh264-1.2.1/src/msopenh264enc.cpp
30 --- msopenh264-1.1.1/src/msopenh264enc.cpp 2015-09-23 15:14:22.000000000 +0200
31 +++ msopenh264-1.2.1/src/msopenh264enc.cpp 2017-07-20 15:56:32.000000000 +0200
33 #include "msopenh264enc.h"
34 #include "mediastreamer2/msticker.h"
35 #include "wels/codec_app_def.h"
37 +#include "wels/codec_ver.h"
39 //static const int RC_MARGIN = 10000; // bits per sec
42 params.sSpatialLayers[0].fFrameRate = mVConf.fps;
43 params.sSpatialLayers[0].iSpatialBitrate = targetBitrate;
44 params.sSpatialLayers[0].iMaxSpatialBitrate = maxBitrate;
46 +#if (OPENH264_MAJOR == 1) && (OPENH264_MINOR >=6)
47 + params.sSpatialLayers[0].sSliceArgument.uiSliceMode = SM_SIZELIMITED_SLICE;
48 + params.sSpatialLayers[0].sSliceArgument.uiSliceSizeConstraint = ms_factory_get_payload_max_size(mFilter->factory);
50 params.sSpatialLayers[0].sSliceCfg.uiSliceMode = SM_DYN_SLICE;
51 params.sSpatialLayers[0].sSliceCfg.sSliceArgument.uiSliceSizeConstraint = ms_factory_get_payload_max_size(mFilter->factory);
54 + //params.sSpatialLayers[0].sSliceCfg.uiSliceMode = SM_AUTO_SLICE;
55 ret = mEncoder->InitializeExt(¶ms);
57 ms_error("OpenH264 encoder: Failed to initialize: %d", ret);
58 --- msopenh264-1.1.1/src/msopenh264enc.h~ 2015-09-23 15:14:22.000000000 +0200
59 +++ msopenh264-1.1.1/src/msopenh264enc.h 2018-09-29 13:18:20.730187249 +0200
60 @@ -21,7 +21,6 @@ Foundation, Inc., 59 Temple Place - Suit
61 #include "mediastreamer2/msfilter.h"
62 #include "mediastreamer2/msvideo.h"
63 #include "mediastreamer2/rfc3984.h"
64 -#include "mediastreamer2/videostarter.h"
65 #include "wels/codec_api.h"
66 #include "msopenh264.h"