<html><head></head><body><div style="color:#000; background-color:#fff; font-family:HelveticaNeue-Light, Helvetica Neue Light, Helvetica Neue, Helvetica, Arial, Lucida Grande, sans-serif;font-size:16px"><div> Hello,</div><div id="yui_3_16_0_1_1456951391037_3901"><br></div><div id="yui_3_16_0_1_1456951391037_3812" dir="ltr">I've been tasked with building FFMPEG with Cisco's OpenH264. I'm doing this on Ubuntu Linux 64.</div><div id="yui_3_16_0_1_1456951391037_3802" dir="ltr"><br></div><div id="yui_3_16_0_1_1456951391037_3798" dir="ltr">My understanding is that all I need is</div><div id="yui_3_16_0_1_1456951391037_3800" dir="ltr"><br></div><div id="yui_3_16_0_1_1456951391037_3799" dir="ltr">> configure --enable-libopenh264</div><div id="yui_3_16_0_1_1456951391037_3832" dir="ltr">> make</div><div dir="ltr"><br></div><div id="yui_3_16_0_1_1456951391037_3940" dir="ltr">I have 2 questions:</div><div id="yui_3_16_0_1_1456951391037_3821" dir="ltr"><br></div><div id="yui_3_16_0_1_1456951391037_3834" dir="ltr">1) The building process proceeded almost flawlessly, until I hit the errors below. Can anybody suggest a workaround?</div><div id="yui_3_16_0_1_1456951391037_3911" dir="ltr"><br></div><div id="yui_3_16_0_1_1456951391037_3925" dir="ltr">2) I did NOT use either --enable-gpl or --enable-nonfree. I had been using libx264 up to now but want to make sure I will be using Cisco's OpenH264. The way I select H264 is with the code</div><div id="yui_3_16_0_1_1456951391037_3957" dir="ltr"><br></div><div id="yui_3_16_0_1_1456951391037_3958" dir="ltr"> avformat_alloc_output_context2 (&oc,NULL,"mp4",NULL);<br id="yui_3_16_0_1_1456951391037_3956"> oc->oformat->video_codec = AV_CODEC_ID_H264;</div><div id="yui_3_16_0_1_1456951391037_3959" dir="ltr"><br></div><div dir="ltr">This has been working just fine. Once I enable openh264 can I still use the line above to select H264, or is the enumerated type above strictly for libx264? If so, what change should I make to use openh264?</div><div dir="ltr"><br></div><div id="yui_3_16_0_1_1456951391037_3970" dir="ltr">Thanks.</div><div dir="ltr"><br></div><div dir="ltr">Here are the errors:</div><div dir="ltr"><br></div><div id="yui_3_16_0_1_1456951391037_3886" dir="ltr">libavcodec/libopenh264enc.c:54:85: error: Ç SM_AUTO_SLICE Ç undeclared here (not in a function)<br id="yui_3_16_0_1_1456951391037_3839"> { "slice_mode", "set slice mode", OFFSET(slice_mode), AV_OPT_TYPE_INT, { .i64 = SM_AUTO_SLICE }, SM_SINGLE_SLICE, SM_RESERVED, VE, "slice_mode" },<br id="yui_3_16_0_1_1456951391037_3840"> ^<br id="yui_3_16_0_1_1456951391037_3841">libavcodec/libopenh264enc.c:56:87: error: Ç SM_ROWMB_SLICE Ç undeclared here (not in a function)<br id="yui_3_16_0_1_1456951391037_3842"> { "rowmb", "one slice per row of macroblocks", 0, AV_OPT_TYPE_CONST, { .i64 = SM_ROWMB_SLICE }, 0, 0, VE, "slice_mode" },<br id="yui_3_16_0_1_1456951391037_3843"> ^<br id="yui_3_16_0_1_1456951391037_3844">libavcodec/libopenh264enc.c:58:68: error: Ç SM_DYN_SLICE Ç undeclared here (not in a function)<br id="yui_3_16_0_1_1456951391037_3845"> { "dyn", "Dynamic slicing", 0, AV_OPT_TYPE_CONST, { .i64 = SM_DYN_SLICE }, 0, 0, VE, "slice_mode" },<br id="yui_3_16_0_1_1456951391037_3846"> ^<br id="yui_3_16_0_1_1456951391037_3851">libavcodec/libopenh264enc.c:198:28: error: Ç SSpatialLayerConfig Ç has no member named Ç sSliceCfg Ç<br id="yui_3_16_0_1_1456951391037_3852"> param.sSpatialLayers[0].sSliceCfg.uiSliceMode = s->slice_mode;<br id="yui_3_16_0_1_1456951391037_3853"> ^<br id="yui_3_16_0_1_1456951391037_3854">libavcodec/libopenh264enc.c:198:38: error: request for member Ç uiSliceMode Ç in something not a structure or union<br id="yui_3_16_0_1_1456951391037_3855"> param.sSpatialLayers[0].sSliceCfg.uiSliceMode = s->slice_mode;<br id="yui_3_16_0_1_1456951391037_3856"> ^<br id="yui_3_16_0_1_1456951391037_3857">libavcodec/libopenh264enc.c:199:28: error: Ç SSpatialLayerConfig Ç has no member named Ç sSliceCfg Ç<br id="yui_3_16_0_1_1456951391037_3861"> param.sSpatialLayers[0].sSliceCfg.sSliceArgument.uiSliceNum = avctx->slices;<br id="yui_3_16_0_1_1456951391037_3862"> ^<br id="yui_3_16_0_1_1456951391037_3863">libavcodec/libopenh264enc.c:199:38: error: request for member Ç sSliceArgument Ç in something not a structure or union<br id="yui_3_16_0_1_1456951391037_3864"> param.sSpatialLayers[0].sSliceCfg.sSliceArgument.uiSliceNum = avctx->slices;<br id="yui_3_16_0_1_1456951391037_3865"> ^<br id="yui_3_16_0_1_1456951391037_3866">libavcodec/libopenh264enc.c:199:53: error: request for member Ç uiSliceNum Ç in something not a structure or union<br id="yui_3_16_0_1_1456951391037_3867"> param.sSpatialLayers[0].sSliceCfg.sSliceArgument.uiSliceNum = avctx->slices;<br id="yui_3_16_0_1_1456951391037_3868"> ^<br id="yui_3_16_0_1_1456951391037_3869">libavcodec/libopenh264enc.c:204:36: error: Ç SSpatialLayerConfig Ç has no member named Ç sSliceCfg Ç<br id="yui_3_16_0_1_1456951391037_3876"> param.sSpatialLayers[0].sSliceCfg.sSliceArgument.uiSliceSizeConstraint = s->max_nal_size;<br id="yui_3_16_0_1_1456951391037_3877"> ^<br id="yui_3_16_0_1_1456951391037_3878">libavcodec/libopenh264enc.c:204:46: error: request for member Ç sSliceArgument Ç in something not a structure or union<br id="yui_3_16_0_1_1456951391037_3879"> param.sSpatialLayers[0].sSliceCfg.sSliceArgument.uiSliceSizeConstraint = s->max_nal_size;<br id="yui_3_16_0_1_1456951391037_3880"> ^<br id="yui_3_16_0_1_1456951391037_3881">libavcodec/libopenh264enc.c:204:61: error: request for member Ç uiSliceSizeConstraint Ç in something not a structure or union<br id="yui_3_16_0_1_1456951391037_3882"> param.sSpatialLayers[0].sSliceCfg.sSliceArgument.uiSliceSizeConstraint = s->max_nal_size;</div><div id="yui_3_16_0_1_1456951391037_3831" dir="ltr"><br></div><div id="yui_3_16_0_1_1456951391037_3830" dir="ltr"><br></div></div></body></html>