From 5111f0927624a00a302b72de3ea6d2120df0f00e Mon Sep 17 00:00:00 2001 From: Serhio Date: Thu, 25 Aug 2022 21:57:27 +0300 Subject: [PATCH 1/5] ar0330_dc support (#407) --- .../files/script/load_hisilicon | 12 +-- .../files/sensor/config/ar0330_i2c_dc_3M.ini | 76 ++++++++++++++++++ .../files/sensor/libsns_ar0330_dc.so | Bin 0 -> 20620 bytes 3 files changed, 82 insertions(+), 6 deletions(-) create mode 100644 general/package/hisilicon-osdrv-hi3516av100/files/sensor/config/ar0330_i2c_dc_3M.ini create mode 100644 general/package/hisilicon-osdrv-hi3516av100/files/sensor/libsns_ar0330_dc.so diff --git a/general/package/hisilicon-osdrv-hi3516av100/files/script/load_hisilicon b/general/package/hisilicon-osdrv-hi3516av100/files/script/load_hisilicon index 01e7a3da..e4934ca4 100755 --- a/general/package/hisilicon-osdrv-hi3516av100/files/script/load_hisilicon +++ b/general/package/hisilicon-osdrv-hi3516av100/files/script/load_hisilicon @@ -216,12 +216,6 @@ insert_sns() { devmem 0x2003002c 32 0x90007 # sensor unreset, clk 37.125MHz, VI 250MHz ;; - ar0330) - devmem 0x200f0050 32 0x2 # i2c0_scl - devmem 0x200f0054 32 0x2 # i2c0_sda - - devmem 0x2003002c 32 0xB0007 # sensor unreset, clk 27MHz, VI 250MHz - ;; ov5658) devmem 0x200f0050 32 0x2 # i2c0_scl devmem 0x200f0054 32 0x2 # i2c0_sda @@ -240,6 +234,12 @@ insert_sns() { devmem 0x2003002c 32 0xB0007 # sensor unreset, clk 27MHz, VI 250MHz ;; + ar0330 | ar0330_i2c_dc) + devmem 0x200f0050 32 0x2 # i2c0_scl + devmem 0x200f0054 32 0x2 # i2c0_sda + + devmem 0x2003002c 32 0xE0007 # sensor unreset, clk 24MHz, VI 250MHz + ;; os05a) devmem 0x200f0050 32 0x2 # i2c0_scl devmem 0x200f0054 32 0x2 # i2c0_sda diff --git a/general/package/hisilicon-osdrv-hi3516av100/files/sensor/config/ar0330_i2c_dc_3M.ini b/general/package/hisilicon-osdrv-hi3516av100/files/sensor/config/ar0330_i2c_dc_3M.ini new file mode 100644 index 00000000..cacc354d --- /dev/null +++ b/general/package/hisilicon-osdrv-hi3516av100/files/sensor/config/ar0330_i2c_dc_3M.ini @@ -0,0 +1,76 @@ +[sensor] +Sensor_type=ar0330 +Mode=WDR_MODE_NONE +DllFile=libsns_ar0330_dc.so + +[mode] +input_mode=INPUT_MODE_CMOS_33V +dev_attr=0 + +[isp_image] +Isp_FrameRate=25 +Isp_Bayer=BAYER_GRBG + +[vi_dev] +Input_mod=VI_MODE_DIGITAL_CAMERA +Work_mod =0 ;VI_WORK_MODE_1Multiplex = 0 + ;VI_WORK_MODE_2Multiplex, + ;VI_WORK_MODE_4Multiplex +Combine_mode =0 ;Y/C composite or separation mode + ;VI_COMBINE_COMPOSITE = 0 /*Composite mode */ + ;VI_COMBINE_SEPARATE, /*Separate mode */ +Comp_mode =0 ;Component mode (single-component or dual-component) + ;VI_COMP_MODE_SINGLE = 0, /*single component mode */ + ;VI_COMP_MODE_DOUBLE = 1, /*double component mode */ +Clock_edge =1 ;Clock edge mode (sampling on the rising or falling edge) + ;VI_CLK_EDGE_SINGLE_UP=0, /*rising edge */ + ;VI_CLK_EDGE_SINGLE_DOWN, /*falling edge */ +Mask_num =2 ;Component mask +Mask_0 =0xFFC0000 +Mask_1 =0x0 +Scan_mode = 1;VI_SCAN_INTERLACED = 0 + ;VI_SCAN_PROGRESSIVE, +Data_seq =2 ;data sequence (ONLY for YUV format) + ;----2th component U/V sequence in bt1120 + ; VI_INPUT_DATA_VUVU = 0, + ; VI_INPUT_DATA_UVUV, + ;----input sequence for yuv + ; VI_INPUT_DATA_UYVY = 0, + ; VI_INPUT_DATA_VYUY, + ; VI_INPUT_DATA_YUYV, + ; VI_INPUT_DATA_YVYU + +Vsync =1 ; vertical synchronization signal + ;VI_VSYNC_FIELD = 0, + ;VI_VSYNC_PULSE, +VsyncNeg=0 ;Polarity of the vertical synchronization signal + ;VI_VSYNC_NEG_HIGH = 0, + ;VI_VSYNC_NEG_LOW /*if VIU_VSYNC_E +Hsync =0 ;Attribute of the horizontal synchronization signal + ;VI_HSYNC_VALID_SINGNAL = 0, + ;VI_HSYNC_PULSE, +HsyncNeg =0 ;Polarity of the horizontal synchronization signal + ;VI_HSYNC_NEG_HIGH = 0, + ;VI_HSYNC_NEG_LOW +VsyncValid =1 ;Attribute of the valid vertical synchronization signal + ;VI_VSYNC_NORM_PULSE = 0, + ;VI_VSYNC_VALID_SINGAL, +VsyncValidNeg =0;Polarity of the valid vertical synchronization signal + ;VI_VSYNC_VALID_NEG_HIGH = 0, + ;VI_VSYNC_VALID_NEG_LOW +Timingblank_HsyncHfb =0 ;Horizontal front blanking width +Timingblank_HsyncAct =2048 ;Horizontal effetive width +Timingblank_HsyncHbb =0 ;Horizontal back blanking width +Timingblank_VsyncVfb =0 ;Vertical front blanking height +Timingblank_VsyncVact =1536 ;Vertical effetive width +Timingblank_VsyncVbb=0 ;Vertical back blanking height +Timingblank_VsyncVbfb =0 ;Even-field vertical front blanking height(interlace, invalid progressive) +Timingblank_VsyncVbact=0 ;Even-field vertical effetive width(interlace, invalid progressive) +Timingblank_VsyncVbbb =0 ;Even-field vertical back blanking height(interlace, invalid progressive) +DataPath=1 +InputDataType=1 ;VI_DATA_TYPE_YUV = 0,VI_DATA_TYPE_RGB = 1, +DataRev =FALSE ;Data reverse. FALSE = 0; TRUE = 1 +DevRect_x=0 +DevRect_y=0 +DevRect_w=2048 +DevRect_h=1536 diff --git a/general/package/hisilicon-osdrv-hi3516av100/files/sensor/libsns_ar0330_dc.so b/general/package/hisilicon-osdrv-hi3516av100/files/sensor/libsns_ar0330_dc.so new file mode 100644 index 0000000000000000000000000000000000000000..589c47d6ef12ae155709df214c5938462528f90e GIT binary patch literal 20620 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 literal 0 HcmV?d00001 From 21853a19d1fb79562cf992639c0ea22f5d1cf33b Mon Sep 17 00:00:00 2001 From: Paul Philippov Date: Fri, 26 Aug 2022 00:41:29 -0400 Subject: [PATCH 2/5] With correct path to mounted partition. (#411) --- general/overlay/usr/sbin/sysupgrade | 29 ++++++++++++++++++++++------- 1 file changed, 22 insertions(+), 7 deletions(-) diff --git a/general/overlay/usr/sbin/sysupgrade b/general/overlay/usr/sbin/sysupgrade index ac0f21c6..e3e2317e 100755 --- a/general/overlay/usr/sbin/sysupgrade +++ b/general/overlay/usr/sbin/sysupgrade @@ -3,7 +3,7 @@ # OpenIPC.org | v.20220824 # -scr_version=1.0.4 +scr_version=1.0.5 args=" $@" @@ -130,11 +130,21 @@ self_update() { } check_sdcard() { - if mount | grep /mnt/mmc >/dev/null; then - echo_c 31 "\nCannot upgrade! There is a mounted SD card in the slot!" - echo_c 37 "Please remove the card from the slot and restart sysupgrade." - exit 1 - fi + echo_c 33 "\nUnmounting SD card" + stoplist="autoupdate-kernel.img autoupdate-rootfs.img autoupdate-uboot.img" + while [ -n "$(mount | grep /mnt/mmc)" ]; do + _d=$(mount | grep /mnt/mmc | tail -1 | awk '{print $3}') + echo_c 34 "$_d" + for _f in $stoplist; do + echo "- checking for ${_d}/${_f}" + if [ -f "${_d}/${_f}" ]; then + echo_c 31 "\nCannot upgrade! Recovery file ${_d}/${_f} found on the mounted SD card!" + echo_c 37 "Please remove the card from the slot and restart sysupgrade." + exit 1 + fi + done; unset _f + umount $_d + done; unset _d } create_lock() { @@ -190,6 +200,7 @@ Where: --force_all do not validate anything -n, --wipe_overlay wipe overlay partition -x, --no_reboot do not reboot after updating + -z, --no_update do not update self -h, --help display this help and exit " } @@ -266,6 +277,10 @@ for i in "$@"; do skip_reboot=1 shift ;; + -z | --no_update) + skip_selfupdate=1 + shift + ;; *) print_sysinfo echo_c 37 "\nUnknown option: $1" @@ -283,7 +298,7 @@ print_sysinfo echo_c 37 "\nTry '$(basename "$0") --help' for options." && exit 0 -self_update +[ "1" != "$skip_selfupdate" ] && self_update check_sdcard From a58da4c366650f706b670d69e9b253b0ec0aa49b Mon Sep 17 00:00:00 2001 From: Serhio Date: Fri, 26 Aug 2022 09:56:58 +0300 Subject: [PATCH 3/5] libsns_ar0330_dc.so: changed sensor address, thanks @dimerr (#412) --- .../files/sensor/libsns_ar0330_dc.so | Bin 20620 -> 20620 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/general/package/hisilicon-osdrv-hi3516av100/files/sensor/libsns_ar0330_dc.so b/general/package/hisilicon-osdrv-hi3516av100/files/sensor/libsns_ar0330_dc.so index 589c47d6ef12ae155709df214c5938462528f90e..9908a2973e34555290f58cf4ac5351341083cecf 100644 GIT binary patch delta 23 dcmeBK$k?-xal-^9MuW{0mCg$TsYEkvDFA832lxO0 delta 23 dcmeBK$k?-xal-^9Mup82mCg$TsYEkvDFA4d2iO1r From 8d06e76b160e10a2c7fced08efc3452f8b205b38 Mon Sep 17 00:00:00 2001 From: Dmitry Ilyin Date: Fri, 26 Aug 2022 16:46:00 +0300 Subject: [PATCH 4/5] Add CI build checks for ensure PRs don't break anything (#410) --- .github/workflows/matrix_build.yml | 14 ++++++++++++++ Makefile | 4 +++- .../board/s3l/kernel/patches/20_fix_gcc8.patch | 1 + 3 files changed, 18 insertions(+), 1 deletion(-) create mode 120000 br-ext-chip-ambarella/board/s3l/kernel/patches/20_fix_gcc8.patch diff --git a/.github/workflows/matrix_build.yml b/.github/workflows/matrix_build.yml index e68c7eca..a3674b6d 100644 --- a/.github/workflows/matrix_build.yml +++ b/.github/workflows/matrix_build.yml @@ -468,3 +468,17 @@ jobs: TG_HEADER=$(echo -e "\r\nCommit: $GIT_HASH \r\nBranch: $BRANCH \r\nTag: $TAG_NAME \r\n\r\n\xE2\x9C\x85 GitHub Actions") curl $TG_OPTIONS -H "Content-Type: multipart/form-data" -X POST https://api.telegram.org/bot$TG_TOKEN/sendDocument \ -F chat_id=$TG_CHANNEL -F document="@$NORFW_PATH" -F caption="$TG_HEADER" + + ci-build-check: + if: always() && github.event.pull_request + runs-on: ubuntu-latest + name: CI Build Check + needs: [buildroot] + steps: + - run: | + result="${{ needs.buildroot.result }}" + if [[ $result == "success" || $result == "skipped" ]]; then + exit 0 + else + exit 1 + fi diff --git a/Makefile b/Makefile index 2d3c9d41..78cc8c0f 100644 --- a/Makefile +++ b/Makefile @@ -48,7 +48,9 @@ clean: prepare: $(BR_DIR) $(ROOT_DIR)/buildroot-$(BR_VER).tar.gz: - wget -O $@ --header="Host: buildroot.org" --no-check-certificate https://buildroot.org/downloads/buildroot-$(BR_VER).tar.gz + wget -O $@ -nv \ + --retry-connrefused --continue --timeout=15 \ + http://buildroot.org/downloads/buildroot-$(BR_VER).tar.gz $(BR_DIR): $(ROOT_DIR)/buildroot-$(BR_VER).tar.gz tar -C $(ROOT_DIR) -xf buildroot-$(BR_VER).tar.gz diff --git a/br-ext-chip-ambarella/board/s3l/kernel/patches/20_fix_gcc8.patch b/br-ext-chip-ambarella/board/s3l/kernel/patches/20_fix_gcc8.patch new file mode 120000 index 00000000..66ce4243 --- /dev/null +++ b/br-ext-chip-ambarella/board/s3l/kernel/patches/20_fix_gcc8.patch @@ -0,0 +1 @@ +../../../../../patches/linux/3.10.x/gcc8_err_encountered.patch \ No newline at end of file From c1e3205a48754a61782ade9c05330246a36362be Mon Sep 17 00:00:00 2001 From: Igor Zalatov Date: Fri, 26 Aug 2022 22:52:11 +0300 Subject: [PATCH 5/5] Add experimental package ffmpeg-openipc (#403) --- .github/CODEOWNERS | 1 + br-ext-chip-fullhan/Config.in | 1 + br-ext-chip-fullhan/external.mk | 1 + br-ext-chip-fullhan/package/ffmpeg-openipc | 1 + br-ext-chip-goke/Config.in | 1 + br-ext-chip-goke/external.mk | 1 + br-ext-chip-goke/package/ffmpeg-openipc | 1 + br-ext-chip-grainmedia/Config.in | 1 + br-ext-chip-grainmedia/external.mk | 1 + br-ext-chip-grainmedia/package/ffmpeg-openipc | 1 + br-ext-chip-hisilicon/Config.in | 1 + br-ext-chip-hisilicon/external.mk | 1 + br-ext-chip-hisilicon/package/ffmpeg-openipc | 1 + br-ext-chip-ingenic/Config.in | 1 + br-ext-chip-ingenic/external.mk | 1 + br-ext-chip-ingenic/package/ffmpeg-openipc | 1 + br-ext-chip-sigmastar/Config.in | 1 + br-ext-chip-sigmastar/external.mk | 1 + br-ext-chip-sigmastar/package/ffmpeg-openipc | 1 + br-ext-chip-xiongmai/Config.in | 1 + br-ext-chip-xiongmai/external.mk | 1 + br-ext-chip-xiongmai/package/ffmpeg-openipc | 1 + ...-x86-yuv2rgb-Fix-build-without-SSSE3.patch | 43 ++++++++++ ...264-skip-decode-if-pic-has-no-slices.patch | 36 ++++++++ .../0003-libavutil-Fix-mips-build.patch | 72 ++++++++++++++++ ...igure-add-extralibs-to-extralibs_xxx.patch | 47 +++++++++++ general/package/ffmpeg-openipc/Config.in | 8 ++ .../package/ffmpeg-openipc/ffmpeg-openipc.mk | 83 +++++++++++++++++++ 28 files changed, 311 insertions(+) create mode 120000 br-ext-chip-fullhan/package/ffmpeg-openipc create mode 120000 br-ext-chip-goke/package/ffmpeg-openipc create mode 120000 br-ext-chip-grainmedia/package/ffmpeg-openipc create mode 120000 br-ext-chip-hisilicon/package/ffmpeg-openipc create mode 120000 br-ext-chip-ingenic/package/ffmpeg-openipc create mode 120000 br-ext-chip-sigmastar/package/ffmpeg-openipc create mode 120000 br-ext-chip-xiongmai/package/ffmpeg-openipc create mode 100644 general/package/ffmpeg-openipc/0001-swscale-x86-yuv2rgb-Fix-build-without-SSSE3.patch create mode 100644 general/package/ffmpeg-openipc/0002-avcodec-vaapi_h264-skip-decode-if-pic-has-no-slices.patch create mode 100644 general/package/ffmpeg-openipc/0003-libavutil-Fix-mips-build.patch create mode 100644 general/package/ffmpeg-openipc/0004-configure-add-extralibs-to-extralibs_xxx.patch create mode 100644 general/package/ffmpeg-openipc/Config.in create mode 100644 general/package/ffmpeg-openipc/ffmpeg-openipc.mk diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS index 3df7fb5b..f81bfcd5 100644 --- a/.github/CODEOWNERS +++ b/.github/CODEOWNERS @@ -10,3 +10,4 @@ * @cronyx * @dimerr * @widgetii +* @themactep diff --git a/br-ext-chip-fullhan/Config.in b/br-ext-chip-fullhan/Config.in index e68fa036..6a22252b 100644 --- a/br-ext-chip-fullhan/Config.in +++ b/br-ext-chip-fullhan/Config.in @@ -5,6 +5,7 @@ source "$BR2_EXTERNAL_FULLHAN_PATH/package/fullhan_patcher/Config.in" source "$BR2_EXTERNAL_FULLHAN_PATH/package/aura-httpd/Config.in" source "$BR2_EXTERNAL_FULLHAN_PATH/package/dropbear-openipc/Config.in" source "$BR2_EXTERNAL_FULLHAN_PATH/package/fdk-aac-openipc/Config.in" +source "$BR2_EXTERNAL_FULLHAN_PATH/package/ffmpeg-openipc/Config.in" source "$BR2_EXTERNAL_FULLHAN_PATH/package/fwprintenv-openipc/Config.in" source "$BR2_EXTERNAL_FULLHAN_PATH/package/ipctool/Config.in" source "$BR2_EXTERNAL_FULLHAN_PATH/package/json-c-openipc/Config.in" diff --git a/br-ext-chip-fullhan/external.mk b/br-ext-chip-fullhan/external.mk index e959fc4a..badf7d1f 100644 --- a/br-ext-chip-fullhan/external.mk +++ b/br-ext-chip-fullhan/external.mk @@ -5,6 +5,7 @@ include $(BR2_EXTERNAL_FULLHAN_PATH)/package/fullhan_patcher/fullhan_patcher.mk include $(BR2_EXTERNAL_FULLHAN_PATH)/package/aura-httpd/aura-httpd.mk include $(BR2_EXTERNAL_FULLHAN_PATH)/package/dropbear-openipc/dropbear-openipc.mk include $(BR2_EXTERNAL_FULLHAN_PATH)/package/fdk-aac-openipc/fdk-aac-openipc.mk +include $(BR2_EXTERNAL_FULLHAN_PATH)/package/ffmpeg-openipc/ffmpeg-openipc.mk include $(BR2_EXTERNAL_FULLHAN_PATH)/package/fwprintenv-openipc/fwprintenv-openipc.mk include $(BR2_EXTERNAL_FULLHAN_PATH)/package/ipctool/ipctool.mk include $(BR2_EXTERNAL_FULLHAN_PATH)/package/json-c-openipc/json-c-openipc.mk diff --git a/br-ext-chip-fullhan/package/ffmpeg-openipc b/br-ext-chip-fullhan/package/ffmpeg-openipc new file mode 120000 index 00000000..65b4b0b9 --- /dev/null +++ b/br-ext-chip-fullhan/package/ffmpeg-openipc @@ -0,0 +1 @@ +../../general/package/ffmpeg-openipc \ No newline at end of file diff --git a/br-ext-chip-goke/Config.in b/br-ext-chip-goke/Config.in index 105c556f..031f9635 100644 --- a/br-ext-chip-goke/Config.in +++ b/br-ext-chip-goke/Config.in @@ -5,6 +5,7 @@ source "$BR2_EXTERNAL_GOKE_PATH/package/ax-agent/Config.in" source "$BR2_EXTERNAL_GOKE_PATH/package/baresip-openipc/Config.in" source "$BR2_EXTERNAL_GOKE_PATH/package/dropbear-openipc/Config.in" source "$BR2_EXTERNAL_GOKE_PATH/package/fdk-aac-openipc/Config.in" +source "$BR2_EXTERNAL_GOKE_PATH/package/ffmpeg-openipc/Config.in" source "$BR2_EXTERNAL_GOKE_PATH/package/fwprintenv-openipc/Config.in" source "$BR2_EXTERNAL_GOKE_PATH/package/goke-osdrv-gk710x/Config.in" source "$BR2_EXTERNAL_GOKE_PATH/package/goke-osdrv-gk7205v200/Config.in" diff --git a/br-ext-chip-goke/external.mk b/br-ext-chip-goke/external.mk index d39d2224..2465bb3b 100644 --- a/br-ext-chip-goke/external.mk +++ b/br-ext-chip-goke/external.mk @@ -5,6 +5,7 @@ include $(BR2_EXTERNAL_GOKE_PATH)/package/ax-agent/ax-agent.mk include $(BR2_EXTERNAL_GOKE_PATH)/package/baresip-openipc/baresip-openipc.mk include $(BR2_EXTERNAL_GOKE_PATH)/package/dropbear-openipc/dropbear-openipc.mk include $(BR2_EXTERNAL_GOKE_PATH)/package/fdk-aac-openipc/fdk-aac-openipc.mk +include $(BR2_EXTERNAL_GOKE_PATH)/package/ffmpeg-openipc/ffmpeg-openipc.mk include $(BR2_EXTERNAL_GOKE_PATH)/package/fwprintenv-openipc/fwprintenv-openipc.mk include $(BR2_EXTERNAL_GOKE_PATH)/package/goke-osdrv-gk710x/goke-osdrv-gk710x.mk include $(BR2_EXTERNAL_GOKE_PATH)/package/goke-osdrv-gk7205v200/goke-osdrv-gk7205v200.mk diff --git a/br-ext-chip-goke/package/ffmpeg-openipc b/br-ext-chip-goke/package/ffmpeg-openipc new file mode 120000 index 00000000..65b4b0b9 --- /dev/null +++ b/br-ext-chip-goke/package/ffmpeg-openipc @@ -0,0 +1 @@ +../../general/package/ffmpeg-openipc \ No newline at end of file diff --git a/br-ext-chip-grainmedia/Config.in b/br-ext-chip-grainmedia/Config.in index dfabefbe..c6e69f4e 100644 --- a/br-ext-chip-grainmedia/Config.in +++ b/br-ext-chip-grainmedia/Config.in @@ -4,6 +4,7 @@ source "$BR2_EXTERNAL_GRAINMEDIA_PATH/package/grainmedia_patcher/Config.in" source "$BR2_EXTERNAL_GRAINMEDIA_PATH/package/aura-httpd/Config.in" source "$BR2_EXTERNAL_GRAINMEDIA_PATH/package/dropbear-openipc/Config.in" source "$BR2_EXTERNAL_GRAINMEDIA_PATH/package/fdk-aac-openipc/Config.in" +source "$BR2_EXTERNAL_GRAINMEDIA_PATH/package/ffmpeg-openipc/Config.in" source "$BR2_EXTERNAL_GRAINMEDIA_PATH/package/fwprintenv-openipc/Config.in" source "$BR2_EXTERNAL_GRAINMEDIA_PATH/package/ipctool/Config.in" source "$BR2_EXTERNAL_GRAINMEDIA_PATH/package/json-c-openipc/Config.in" diff --git a/br-ext-chip-grainmedia/external.mk b/br-ext-chip-grainmedia/external.mk index 5889496b..a1754c5b 100644 --- a/br-ext-chip-grainmedia/external.mk +++ b/br-ext-chip-grainmedia/external.mk @@ -4,6 +4,7 @@ include $(BR2_EXTERNAL_GRAINMEDIA_PATH)/package/grainmedia_patcher/grainmedia_pa include $(BR2_EXTERNAL_GRAINMEDIA_PATH)/package/aura-httpd/aura-httpd.mk include $(BR2_EXTERNAL_GRAINMEDIA_PATH)/package/dropbear-openipc/dropbear-openipc.mk include $(BR2_EXTERNAL_GRAINMEDIA_PATH)/package/fdk-aac-openipc/fdk-aac-openipc.mk +include $(BR2_EXTERNAL_GRAINMEDIA_PATH)/package/ffmpeg-openipc/ffmpeg-openipc.mk include $(BR2_EXTERNAL_GRAINMEDIA_PATH)/package/fwprintenv-openipc/fwprintenv-openipc.mk include $(BR2_EXTERNAL_GRAINMEDIA_PATH)/package/ipctool/ipctool.mk include $(BR2_EXTERNAL_GRAINMEDIA_PATH)/package/json-c-openipc/json-c-openipc.mk diff --git a/br-ext-chip-grainmedia/package/ffmpeg-openipc b/br-ext-chip-grainmedia/package/ffmpeg-openipc new file mode 120000 index 00000000..65b4b0b9 --- /dev/null +++ b/br-ext-chip-grainmedia/package/ffmpeg-openipc @@ -0,0 +1 @@ +../../general/package/ffmpeg-openipc \ No newline at end of file diff --git a/br-ext-chip-hisilicon/Config.in b/br-ext-chip-hisilicon/Config.in index a541fcda..d2fe948b 100644 --- a/br-ext-chip-hisilicon/Config.in +++ b/br-ext-chip-hisilicon/Config.in @@ -7,6 +7,7 @@ source "$BR2_EXTERNAL_HISILICON_PATH/package/baresip-openipc/Config.in" source "$BR2_EXTERNAL_HISILICON_PATH/package/dropbear-openipc/Config.in" source "$BR2_EXTERNAL_HISILICON_PATH/package/f2fs-tools-openipc/Config.in" source "$BR2_EXTERNAL_HISILICON_PATH/package/fdk-aac-openipc/Config.in" +source "$BR2_EXTERNAL_HISILICON_PATH/package/ffmpeg-openipc/Config.in" source "$BR2_EXTERNAL_HISILICON_PATH/package/fwprintenv-openipc/Config.in" source "$BR2_EXTERNAL_HISILICON_PATH/package/gdbserver-lite/Config.in" source "$BR2_EXTERNAL_HISILICON_PATH/package/hisi_gpio/Config.in" diff --git a/br-ext-chip-hisilicon/external.mk b/br-ext-chip-hisilicon/external.mk index 70180b37..037f826c 100644 --- a/br-ext-chip-hisilicon/external.mk +++ b/br-ext-chip-hisilicon/external.mk @@ -7,6 +7,7 @@ include $(BR2_EXTERNAL_HISILICON_PATH)/package/baresip-openipc/baresip-openipc.m include $(BR2_EXTERNAL_HISILICON_PATH)/package/dropbear-openipc/dropbear-openipc.mk include $(BR2_EXTERNAL_HISILICON_PATH)/package/f2fs-tools-openipc/f2fs-tools-openipc.mk include $(BR2_EXTERNAL_HISILICON_PATH)/package/fdk-aac-openipc/fdk-aac-openipc.mk +include $(BR2_EXTERNAL_HISILICON_PATH)/package/ffmpeg-openipc/ffmpeg-openipc.mk include $(BR2_EXTERNAL_HISILICON_PATH)/package/fwprintenv-openipc/fwprintenv-openipc.mk include $(BR2_EXTERNAL_HISILICON_PATH)/package/gdbserver-lite/gdbserver-lite.mk include $(BR2_EXTERNAL_HISILICON_PATH)/package/hisi_gpio/hisi_gpio.mk diff --git a/br-ext-chip-hisilicon/package/ffmpeg-openipc b/br-ext-chip-hisilicon/package/ffmpeg-openipc new file mode 120000 index 00000000..65b4b0b9 --- /dev/null +++ b/br-ext-chip-hisilicon/package/ffmpeg-openipc @@ -0,0 +1 @@ +../../general/package/ffmpeg-openipc \ No newline at end of file diff --git a/br-ext-chip-ingenic/Config.in b/br-ext-chip-ingenic/Config.in index d78de0f7..197551b0 100644 --- a/br-ext-chip-ingenic/Config.in +++ b/br-ext-chip-ingenic/Config.in @@ -7,6 +7,7 @@ source "$BR2_EXTERNAL_INGENIC_PATH/package/aura-httpd/Config.in" source "$BR2_EXTERNAL_INGENIC_PATH/package/ax-agent/Config.in" source "$BR2_EXTERNAL_INGENIC_PATH/package/dropbear-openipc/Config.in" source "$BR2_EXTERNAL_INGENIC_PATH/package/fdk-aac-openipc/Config.in" +source "$BR2_EXTERNAL_INGENIC_PATH/package/ffmpeg-openipc/Config.in" source "$BR2_EXTERNAL_INGENIC_PATH/package/fwprintenv-openipc/Config.in" source "$BR2_EXTERNAL_INGENIC_PATH/package/i2c-telemetry/Config.in" source "$BR2_EXTERNAL_INGENIC_PATH/package/ipctool/Config.in" diff --git a/br-ext-chip-ingenic/external.mk b/br-ext-chip-ingenic/external.mk index 89245106..bd4a6830 100644 --- a/br-ext-chip-ingenic/external.mk +++ b/br-ext-chip-ingenic/external.mk @@ -7,6 +7,7 @@ include $(BR2_EXTERNAL_INGENIC_PATH)/package/aura-httpd/aura-httpd.mk include $(BR2_EXTERNAL_INGENIC_PATH)/package/ax-agent/ax-agent.mk include $(BR2_EXTERNAL_INGENIC_PATH)/package/dropbear-openipc/dropbear-openipc.mk include $(BR2_EXTERNAL_INGENIC_PATH)/package/fdk-aac-openipc/fdk-aac-openipc.mk +include $(BR2_EXTERNAL_INGENIC_PATH)/package/ffmpeg-openipc/ffmpeg-openipc.mk include $(BR2_EXTERNAL_INGENIC_PATH)/package/fwprintenv-openipc/fwprintenv-openipc.mk include $(BR2_EXTERNAL_INGENIC_PATH)/package/i2c-telemetry/i2c-telemetry.mk include $(BR2_EXTERNAL_INGENIC_PATH)/package/ipctool/ipctool.mk diff --git a/br-ext-chip-ingenic/package/ffmpeg-openipc b/br-ext-chip-ingenic/package/ffmpeg-openipc new file mode 120000 index 00000000..65b4b0b9 --- /dev/null +++ b/br-ext-chip-ingenic/package/ffmpeg-openipc @@ -0,0 +1 @@ +../../general/package/ffmpeg-openipc \ No newline at end of file diff --git a/br-ext-chip-sigmastar/Config.in b/br-ext-chip-sigmastar/Config.in index 42421d60..a2943395 100644 --- a/br-ext-chip-sigmastar/Config.in +++ b/br-ext-chip-sigmastar/Config.in @@ -4,6 +4,7 @@ source "$BR2_EXTERNAL_SIGMASTAR_PATH/package/aura-httpd/Config.in" source "$BR2_EXTERNAL_SIGMASTAR_PATH/package/baresip-openipc/Config.in" source "$BR2_EXTERNAL_SIGMASTAR_PATH/package/dropbear-openipc/Config.in" source "$BR2_EXTERNAL_SIGMASTAR_PATH/package/fdk-aac-openipc/Config.in" +source "$BR2_EXTERNAL_SIGMASTAR_PATH/package/ffmpeg-openipc/Config.in" source "$BR2_EXTERNAL_SIGMASTAR_PATH/package/fwprintenv-openipc/Config.in" source "$BR2_EXTERNAL_SIGMASTAR_PATH/package/gdbserver-lite/Config.in" source "$BR2_EXTERNAL_SIGMASTAR_PATH/package/ipctool/Config.in" diff --git a/br-ext-chip-sigmastar/external.mk b/br-ext-chip-sigmastar/external.mk index b71b2c83..c33fc459 100644 --- a/br-ext-chip-sigmastar/external.mk +++ b/br-ext-chip-sigmastar/external.mk @@ -4,6 +4,7 @@ include $(BR2_EXTERNAL_SIGMASTAR_PATH)/package/aura-httpd/aura-httpd.mk include $(BR2_EXTERNAL_SIGMASTAR_PATH)/package/baresip-openipc/baresip-openipc.mk include $(BR2_EXTERNAL_SIGMASTAR_PATH)/package/dropbear-openipc/dropbear-openipc.mk include $(BR2_EXTERNAL_SIGMASTAR_PATH)/package/fdk-aac-openipc/fdk-aac-openipc.mk +include $(BR2_EXTERNAL_SIGMASTAR_PATH)/package/ffmpeg-openipc/ffmpeg-openipc.mk include $(BR2_EXTERNAL_SIGMASTAR_PATH)/package/fwprintenv-openipc/fwprintenv-openipc.mk include $(BR2_EXTERNAL_SIGMASTAR_PATH)/package/gdbserver-lite/gdbserver-lite.mk include $(BR2_EXTERNAL_SIGMASTAR_PATH)/package/ipctool/ipctool.mk diff --git a/br-ext-chip-sigmastar/package/ffmpeg-openipc b/br-ext-chip-sigmastar/package/ffmpeg-openipc new file mode 120000 index 00000000..65b4b0b9 --- /dev/null +++ b/br-ext-chip-sigmastar/package/ffmpeg-openipc @@ -0,0 +1 @@ +../../general/package/ffmpeg-openipc \ No newline at end of file diff --git a/br-ext-chip-xiongmai/Config.in b/br-ext-chip-xiongmai/Config.in index 042360fe..e14af9a8 100644 --- a/br-ext-chip-xiongmai/Config.in +++ b/br-ext-chip-xiongmai/Config.in @@ -3,6 +3,7 @@ source "$BR2_EXTERNAL_XIONGMAI_PATH/package/xiongmai_patcher/Config.in" source "$BR2_EXTERNAL_XIONGMAI_PATH/package/aura-httpd/Config.in" source "$BR2_EXTERNAL_XIONGMAI_PATH/package/dropbear-openipc/Config.in" source "$BR2_EXTERNAL_XIONGMAI_PATH/package/fdk-aac-openipc/Config.in" +source "$BR2_EXTERNAL_XIONGMAI_PATH/package/ffmpeg-openipc/Config.in" source "$BR2_EXTERNAL_XIONGMAI_PATH/package/fwprintenv-openipc/Config.in" source "$BR2_EXTERNAL_XIONGMAI_PATH/package/ipctool/Config.in" source "$BR2_EXTERNAL_XIONGMAI_PATH/package/json-c-openipc/Config.in" diff --git a/br-ext-chip-xiongmai/external.mk b/br-ext-chip-xiongmai/external.mk index ed252c8e..13610fff 100644 --- a/br-ext-chip-xiongmai/external.mk +++ b/br-ext-chip-xiongmai/external.mk @@ -3,6 +3,7 @@ include $(BR2_EXTERNAL_XIONGMAI_PATH)/package/xiongmai_patcher/xiongmai_patcher. include $(BR2_EXTERNAL_XIONGMAI_PATH)/package/aura-httpd/aura-httpd.mk include $(BR2_EXTERNAL_XIONGMAI_PATH)/package/dropbear-openipc/dropbear-openipc.mk include $(BR2_EXTERNAL_XIONGMAI_PATH)/package/fdk-aac-openipc/fdk-aac-openipc.mk +include $(BR2_EXTERNAL_XIONGMAI_PATH)/package/ffmpeg-openipc/ffmpeg-openipc.mk include $(BR2_EXTERNAL_XIONGMAI_PATH)/package/fwprintenv-openipc/fwprintenv-openipc.mk include $(BR2_EXTERNAL_XIONGMAI_PATH)/package/ipctool/ipctool.mk include $(BR2_EXTERNAL_XIONGMAI_PATH)/package/json-c-openipc/json-c-openipc.mk diff --git a/br-ext-chip-xiongmai/package/ffmpeg-openipc b/br-ext-chip-xiongmai/package/ffmpeg-openipc new file mode 120000 index 00000000..65b4b0b9 --- /dev/null +++ b/br-ext-chip-xiongmai/package/ffmpeg-openipc @@ -0,0 +1 @@ +../../general/package/ffmpeg-openipc \ No newline at end of file diff --git a/general/package/ffmpeg-openipc/0001-swscale-x86-yuv2rgb-Fix-build-without-SSSE3.patch b/general/package/ffmpeg-openipc/0001-swscale-x86-yuv2rgb-Fix-build-without-SSSE3.patch new file mode 100644 index 00000000..951ce418 --- /dev/null +++ b/general/package/ffmpeg-openipc/0001-swscale-x86-yuv2rgb-Fix-build-without-SSSE3.patch @@ -0,0 +1,43 @@ +From bf8eae2d30a205bb76ac625e04c0351106981b9e Mon Sep 17 00:00:00 2001 +From: Parker Ernest <@> +Date: Sun, 23 Feb 2020 13:22:42 +0100 +Subject: [PATCH] swscale/x86/yuv2rgb: Fix build without SSSE3 + +commit fc6a5883d6af8cae0e96af84dda0ad74b360a084 breaks build on +x86_64 CPUs which do not have SSSE3, e.g. AMD Phenom-II + +Signed-off-by: Michael Niedermayer +[bernd.kuhls@t-online.de: + - retrieved from upstream patchwork: + https://patchwork.ffmpeg.org/project/ffmpeg/patch/20200223122256.23402-1-michael@niedermayer.cc/ +] +Signed-off-by: Bernd Kuhls +[yann.morin.1998@free.fr: fix reference top patchwork and SoB order] +Signed-off-by: Yann E. MORIN +--- + libswscale/x86/yuv2rgb.c | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/libswscale/x86/yuv2rgb.c b/libswscale/x86/yuv2rgb.c +index c12e88cbb5..4791e5b93a 100644 +--- a/libswscale/x86/yuv2rgb.c ++++ b/libswscale/x86/yuv2rgb.c +@@ -83,6 +83,7 @@ av_cold SwsFunc ff_yuv2rgb_init_x86(SwsContext *c) + #if HAVE_X86ASM + int cpu_flags = av_get_cpu_flags(); + ++#if HAVE_SSSE3 + if (EXTERNAL_SSSE3(cpu_flags)) { + switch (c->dstFormat) { + case AV_PIX_FMT_RGB32: +@@ -111,6 +112,7 @@ av_cold SwsFunc ff_yuv2rgb_init_x86(SwsContext *c) + return yuv420_rgb15_ssse3; + } + } ++#endif + + if (EXTERNAL_MMXEXT(cpu_flags)) { + switch (c->dstFormat) { +-- +2.26.2 + diff --git a/general/package/ffmpeg-openipc/0002-avcodec-vaapi_h264-skip-decode-if-pic-has-no-slices.patch b/general/package/ffmpeg-openipc/0002-avcodec-vaapi_h264-skip-decode-if-pic-has-no-slices.patch new file mode 100644 index 00000000..2892df9d --- /dev/null +++ b/general/package/ffmpeg-openipc/0002-avcodec-vaapi_h264-skip-decode-if-pic-has-no-slices.patch @@ -0,0 +1,36 @@ +From 2c6b3f357331e203ad87214984661c40704aceb7 Mon Sep 17 00:00:00 2001 +From: Rainer Hochecker +Date: Sat, 26 Jan 2019 19:48:35 +0100 +Subject: [PATCH] avcodec/vaapi_h264: skip decode if pic has no slices + +This fixes / workarounds https://bugs.freedesktop.org/show_bug.cgi?id=105368. +It was hit frequently when watching h264 channels received via DVB-X. +Corresponding kodi bug: https://github.com/xbmc/xbmc/issues/15704 + +Downloaded from Kodi ffmpeg repo: +https://github.com/xbmc/FFmpeg/commit/2c6b3f357331e203ad87214984661c40704aceb7 + +Patch was sent upstream: +http://ffmpeg.org/pipermail/ffmpeg-devel/2019-March/240863.html + +Signed-off-by: Bernd Kuhls +--- + libavcodec/vaapi_h264.c | 5 +++++ + 1 file changed, 5 insertions(+) + +diff --git a/libavcodec/vaapi_h264.c b/libavcodec/vaapi_h264.c +index dd2a6571604..e521a05c4ff 100644 +--- a/libavcodec/vaapi_h264.c ++++ b/libavcodec/vaapi_h264.c +@@ -314,6 +314,11 @@ static int vaapi_h264_end_frame(AVCodecContext *avctx) + H264SliceContext *sl = &h->slice_ctx[0]; + int ret; + ++ if (pic->nb_slices == 0) { ++ ret = AVERROR_INVALIDDATA; ++ goto finish; ++ } ++ + ret = ff_vaapi_decode_issue(avctx, pic); + if (ret < 0) + goto finish; diff --git a/general/package/ffmpeg-openipc/0003-libavutil-Fix-mips-build.patch b/general/package/ffmpeg-openipc/0003-libavutil-Fix-mips-build.patch new file mode 100644 index 00000000..8b81e669 --- /dev/null +++ b/general/package/ffmpeg-openipc/0003-libavutil-Fix-mips-build.patch @@ -0,0 +1,72 @@ +From 6e8daf0d502a2a822f1f08f42368d7d676dc1a9e Mon Sep 17 00:00:00 2001 +From: Bernd Kuhls +Date: Sun, 6 Jun 2021 08:54:53 +0200 +Subject: [PATCH] libavutil: Fix mips build + +Check for sys/auxv.h because not all toolchains contain this header. + +Fixes https://trac.ffmpeg.org/ticket/9138 + +Patch sent upstream: +http://ffmpeg.org/pipermail/ffmpeg-devel/2021-June/281272.html + +Signed-off-by: Bernd Kuhls +--- + configure | 2 ++ + libavutil/mips/cpu.c | 6 +++--- + 2 files changed, 5 insertions(+), 3 deletions(-) + +diff --git a/configure b/configure +index 6bfd98b384..773a7d516c 100755 +--- a/configure ++++ b/configure +@@ -2161,6 +2161,7 @@ HEADERS_LIST=" + opencv2_core_core_c_h + OpenGL_gl3_h + poll_h ++ sys_auxv_h + sys_param_h + sys_resource_h + sys_select_h +@@ -6218,6 +6219,7 @@ check_func_headers VideoToolbox/VTCompressionSession.h VTCompressionSessionPrepa + check_headers windows.h + check_headers X11/extensions/XvMClib.h + check_headers asm/types.h ++check_headers sys/auxv.h + + # it seems there are versions of clang in some distros that try to use the + # gcc headers, which explodes for stdatomic +diff --git a/libavutil/mips/cpu.c b/libavutil/mips/cpu.c +index 59619d54de..19196de50b 100644 +--- a/libavutil/mips/cpu.c ++++ b/libavutil/mips/cpu.c +@@ -19,7 +19,7 @@ + #include "libavutil/cpu.h" + #include "libavutil/cpu_internal.h" + #include "config.h" +-#if defined __linux__ || defined __ANDROID__ ++#if (defined __linux__ || defined __ANDROID__) && HAVE_SYS_AUXV_H + #include + #include + #include +@@ -28,7 +28,7 @@ + #include "libavutil/avstring.h" + #endif + +-#if defined __linux__ || defined __ANDROID__ ++#if (defined __linux__ || defined __ANDROID__) && HAVE_SYS_AUXV_H + + #define HWCAP_LOONGSON_CPUCFG (1 << 14) + +@@ -105,7 +105,7 @@ static int cpu_flags_cpuinfo(void) + + int ff_get_cpu_flags_mips(void) + { +-#if defined __linux__ || defined __ANDROID__ ++#if (defined __linux__ || defined __ANDROID__) && HAVE_SYS_AUXV_H + if (cpucfg_available()) + return cpu_flags_cpucfg(); + else +-- +2.29.2 + diff --git a/general/package/ffmpeg-openipc/0004-configure-add-extralibs-to-extralibs_xxx.patch b/general/package/ffmpeg-openipc/0004-configure-add-extralibs-to-extralibs_xxx.patch new file mode 100644 index 00000000..dbc19c1c --- /dev/null +++ b/general/package/ffmpeg-openipc/0004-configure-add-extralibs-to-extralibs_xxx.patch @@ -0,0 +1,47 @@ +From 0c288853630b7b4e004774c39945d4a804afcfa8 Mon Sep 17 00:00:00 2001 +From: Fabrice Fontaine +Date: Fri, 6 Aug 2021 09:17:20 +0200 +Subject: [PATCH] configure: add extralibs to extralibs_xxx + +Add extralibs to extralibs_xxx (e.g. extralibs_avformat) to allow +applications such as motion to retrieve ffmpeg dependencies such as +-latomic through pkg-config + +Signed-off-by: Fabrice Fontaine +[Upstream status: not upstreamable] +--- + configure | 18 +++++++++--------- + 1 file changed, 9 insertions(+), 9 deletions(-) + +diff --git a/configure b/configure +index 0bb3a7cf2b..3bda99e415 100755 +--- a/configure ++++ b/configure +@@ -7602,15 +7602,15 @@ rpath=$(enabled rpath && echo "-Wl,-rpath,\${libdir}") + source_path=${source_path} + LIBPREF=${LIBPREF} + LIBSUF=${LIBSUF} +-extralibs_avutil="$avutil_extralibs" +-extralibs_avcodec="$avcodec_extralibs" +-extralibs_avformat="$avformat_extralibs" +-extralibs_avdevice="$avdevice_extralibs" +-extralibs_avfilter="$avfilter_extralibs" +-extralibs_avresample="$avresample_extralibs" +-extralibs_postproc="$postproc_extralibs" +-extralibs_swscale="$swscale_extralibs" +-extralibs_swresample="$swresample_extralibs" ++extralibs_avutil="$avutil_extralibs $extralibs" ++extralibs_avcodec="$avcodec_extralibs $extralibs" ++extralibs_avformat="$avformat_extralibs $extralibs" ++extralibs_avdevice="$avdevice_extralibs $extralibs" ++extralibs_avfilter="$avfilter_extralibs $extralibs" ++extralibs_avresample="$avresample_extralibs $extralibs" ++extralibs_postproc="$postproc_extralibs $extralibs" ++extralibs_swscale="$swscale_extralibs $extralibs" ++extralibs_swresample="$swresample_extralibs $extralibs" + EOF + + for lib in $LIBRARY_LIST; do +-- +2.30.2 + diff --git a/general/package/ffmpeg-openipc/Config.in b/general/package/ffmpeg-openipc/Config.in new file mode 100644 index 00000000..56f795d1 --- /dev/null +++ b/general/package/ffmpeg-openipc/Config.in @@ -0,0 +1,8 @@ +config BR2_PACKAGE_FFMPEG_OPENIPC + bool "ffmpeg-openipc" + default n + help + FFmpeg is a complete, cross-platform solution to record, + convert and stream audio and video. + + http://www.ffmpeg.org diff --git a/general/package/ffmpeg-openipc/ffmpeg-openipc.mk b/general/package/ffmpeg-openipc/ffmpeg-openipc.mk new file mode 100644 index 00000000..2f682869 --- /dev/null +++ b/general/package/ffmpeg-openipc/ffmpeg-openipc.mk @@ -0,0 +1,83 @@ +################################################################################ +# +# ffmpeg-openipc | updated 2022.08.10 +# +################################################################################ + +FFMPEG_OPENIPC_VERSION = 4.4.2 +FFMPEG_OPENIPC_SOURCE = ffmpeg-$(FFMPEG_OPENIPC_VERSION).tar.xz +FFMPEG_OPENIPC_SITE = http://ffmpeg.org/releases +FFMPEG_OPENIPC_INSTALL_STAGING = NO + +FFMPEG_OPENIPC_LICENSE = LGPL-2.1+, libjpeg license +FFMPEG_OPENIPC_LICENSE_FILES = LICENSE.md COPYING.LGPLv2.1 + +FFMPEG_OPENIPC_CONF_OPTS = \ + --prefix=/usr \ + --disable-everything \ + --disable-x86asm --disable-w32threads --disable-os2threads --disable-alsa --disable-appkit \ + --disable-avfoundation --disable-bzlib --disable-coreimage --disable-iconv --disable-libxcb \ + --disable-libxcb-shm --disable-libxcb-xfixes --disable-libxcb-shape --disable-lzma \ + --disable-asm --disable-sndio --disable-sdl2 --disable-xlib --disable-zlib --disable-amf \ + --disable-audiotoolbox --disable-cuda --disable-cuvid --disable-d3d11va --disable-dxva2 \ + --disable-nvdec --disable-nvenc --disable-v4l2-m2m --disable-vaapi --disable-vdpau --disable-videotoolbox \ + --disable-avdevice --disable-swscale --disable-postproc --disable-doc --disable-runtime-cpudetect \ + --disable-bsfs --disable-iconv --disable-ffprobe --enable-gpl --enable-version3 --enable-pthreads \ + \ + --disable-swresample \ + --disable-avdevice \ + --disable-filters \ + --disable-encoders \ + --disable-decoders --enable-decoder=h264,hevc \ + --disable-muxers --enable-muxer=rtsp \ + --disable-demuxers --enable-demuxer=rtsp \ + --disable-parsers --enable-parser=h264,hevc \ + --disable-protocols --enable-protocol=file,tcp \ + --disable-programs --enable-ffmpeg --enable-small + + +FFMPEG_OPENIPC_DEPENDENCIES += host-pkgconf + +# Default to --cpu=generic for MIPS architecture, in order to avoid a +# warning from ffmpeg's configure script. +ifeq ($(BR2_mips)$(BR2_mipsel)$(BR2_mips64)$(BR2_mips64el),y) +FFMPEG_OPENIPC_CONF_OPTS += --cpu=generic +else ifneq ($(GCC_TARGET_CPU),) +FFMPEG_OPENIPC_CONF_OPTS += --cpu="$(GCC_TARGET_CPU)" +else ifneq ($(GCC_TARGET_ARCH),) +FFMPEG_OPENIPC_CONF_OPTS += --cpu="$(GCC_TARGET_ARCH)" +endif + +FFMPEG_OPENIPC_CFLAGS = $(TARGET_CFLAGS) + +ifeq ($(BR2_TOOLCHAIN_HAS_GCC_BUG_85180),y) +FFMPEG_OPENIPC_CONF_OPTS += --disable-optimizations +FFMPEG_OPENIPC_CFLAGS += -O0 +endif + +FFMPEG_OPENIPC_CONF_ENV += CFLAGS="$(FFMPEG_OPENIPC_CFLAGS)" + +# Override FFMPEG_OPENIPC_CONFIGURE_CMDS: FFmpeg does not support --target and others +define FFMPEG_OPENIPC_CONFIGURE_CMDS + (cd $(FFMPEG_OPENIPC_SRCDIR) && rm -rf config.cache && \ + $(TARGET_CONFIGURE_OPTS) \ + $(TARGET_CONFIGURE_ARGS) \ + $(FFMPEG_OPENIPC_CONF_ENV) \ + ./configure \ + --enable-cross-compile \ + --cross-prefix=$(TARGET_CROSS) \ + --sysroot=$(STAGING_DIR) \ + --host-cc="$(HOSTCC)" \ + --arch=$(BR2_ARCH) \ + --target-os="linux" \ + --pkg-config="$(PKG_CONFIG_HOST_BINARY)" \ + $(FFMPEG_OPENIPC_CONF_OPTS) \ + ) +endef + +define FFMPEG_OPENIPC_REMOVE_EXAMPLE_SRC_FILES + rm -rf $(TARGET_DIR)/usr/share/ffmpeg/examples +endef +FFMPEG_OPENIPC_POST_INSTALL_TARGET_HOOKS += FFMPEG_OPENIPC_REMOVE_EXAMPLE_SRC_FILES + +$(eval $(autotools-package))