Ò»¡¢linuxÏà¹ØËµÃ÷: 1. ÿÌ×linux so¶ÔÓ¦µÄ±àÒ빤¾ßÁ´ÈçÏ£º # arm926-uclibc for BU1 C500 # arm-openwrt-linux-muslgnueabi for BU2 Tina2.0 # arm-openwrt-linux-muslgnueabi-v for v5 # arm-openwrt-linux-uclibc for BU2 R16 so_dir: arm926-uclibc host: arm-linux toolchain_dir: uclibc_arm926_static so_dir: arm-linux-gnueabi host: arm-linux-gnueabi toolchain_dir: external-toolchain so_dir: arm-linux-gnueabihf host: arm-linux-gnueabihf toolchain_dir: ϵͳ×Ô´ø so_dir: arm-none-linux-gnueabi host: arm-none-linux-gnueabi toolchain_dir: ϵͳ×Ô´ø so_dir: arm-openwrt-linux-muslgnueabi host: arm-openwrt-linux toolchain_dir: OpenWrt-Toolchain-sunxi_gcc-5.2.0_musl-1.1.12_eabi.Linux-x86_64 so_dir: arm-openwrt-linux-uclibc host: arm-openwrt-linux toolchain_dir: toolchain_arm_uClibc so_dir: arm-linux-gnueabihf-linaro host: arm-linux-gnueabihf toolchain_dir: gcc-linaro-arm-linux-gnueabihf-4.8-2014.01_linux so_dir: arm-aarch64-openwrt-linux host: aarch64-openwrt-linux toolchain_dir: toolchain-sunxi-tina2.0-64 so_dir: arm-openwrt-linux-muslgnueabi-v5 host: arm-openwrt-linux-muslgnueabi toolchain_dir: linux-x86 2.±àÒë²½ÖèÈçÏ£¨ÒÔarm926-uclibcΪÀý£©£º 2.1 export±àÒ빤¾ßÁ´£º TOOLS_CHAIN=/home/user/workspace/tools_chain/ export PATH=${TOOLS_CHAIN}/uclibc_arm926_static/bin:$PATH 2.2. ÔËÐÐautomakeµÄÏà¹Ø¹¤¾ß£º./bootstrap 2.3. ÅäÖÃmakefile£º 2.3.1 ģʽ£º./configure --prefix=INSTALL_PATH --host=HOST_NAME LDFLAGS="-LSO_PATH" 2.3.2 ʾÀý£º./configure --prefix=/home/user/workspace/libcedarc/install --host=arm-linux LDFLAGS="-L/home/user/workspace/libcedarc/lib/arm926-uclibc" 2.3.3 ÌØ±ð˵Ã÷£ºÈç¹ûÄÚºËÓõÄÊÇlinux3.10, Ôò±ØÐë¼ÓÉÏflag£ºCFLAGS="-DCONF_KERNEL_VERSION_3_10" CPPFLAGS="-DCONF_KERNEL_VERSION_3_10" ¼´£º./configure --prefix=/home/user/workspace/libcedarc/install --host=arm-linux CFLAGS="-DCONF_KERNEL_VERSION_3_10" CPPFLAGS="-DCONF_KERNEL_VERSION_3_10" LDFLAGS="-L/home/user/workspace/libcedarc/lib/arm926-uclibc" 2.4 ±àÒ룺make ; make install ¶þ¡¢°æ±¾¸Ä¶¯ËµÃ÷£º 1). CedarC-v1.0.4 1. ÌØ±ð˵Ã÷£º 1.1 cameraÄ£¿éÏà¹Ø£º( >=android7.0µÄƽ̨ÐèÒª½øÐÐÈçÏÂÐÞ¸Ä,ÆäËûƽ̨±£³Ö֮ǰµÄ×ö·¨) Ð޸ĵÄÔ­Òò£ºa.omxºÍandroid framework¶¼Ã»ÓжÔNV21ºÍNV12ÕâÁ½ÖÖͼÏñ¸ñʽ½øÐÐϸ·Ö£¬¶¼ÊÇÓÃOMX_COLOR_FormatYUV420SemiPlanar ½øÐбíʾ£¬OMX_COLOR_FormatYUV420SemiPlanar¼´¿ÉÒÔ±íʾNV21£¬Ò²¿ÉÒÔ±íʾNV12£» b.¶øACodec½«OMX_COLOR_FormatYUV420SemiPlanarÓÃ×÷NV12£¬camera½«OMX_COLOR_FormatYUV420SemiPlanarÓÃÓÚNV21£¬ ֮ǰµÄ×ö·¨ÊÇomx_vencͨ¹ý½ø³ÌµÄ°üÃû½øÐÐÇø·Ö¼æÈÝ£¬Èôµ÷ÓÃÕßÊÇACodec£¬ÔòÓÃ×÷NV12£¬Èôµ÷ÓÃÕßÊÇcamera£¬ÔòÓÃ×÷ NV21£» c.android7.0ÒòΪȨÏÞ¹ÜÀíµÄÔ­Òò£¬ÎÞ·¨»ñÈ¡µ½½ø³ÌµÄ°üÃû£¬ËùÒÔÎÞ·¨ÔÚomx_venc½øÐмæÈÝ£¬Ö»ÄÜÔÚÉϲãcaller²ã½øÐÐ ¼æÈÝ£¬¶øcts»á¶ÔACodecµÄ½Ó¿Ú½øÐвâÊÔ£¬Èô¸Ä¶¯ACodec£¬Ôò»áÏìÓ¦µ½cts²âÊÔ£¬ËùÒÔÖ»ÄÜÐÞ¸Äcamera d.Ð޸ĵÄÔ­ÔòΪ£ºÀ©Õ¹Í¼Ïñ¸ñʽµÄö¾ÙÀàÐ͵ijÉÔ±±äÁ¿OMX_COLOR_FormatYVU420SemiPlanar£¬ÓÃÓÚ±íʾNV21£» ¼´ OMX_COLOR_FormatYUV420SemiPlanar --> NV12 OMX_COLOR_FormatYVU420SemiPlanar --> NV21 Ð޸ĵĵط½£º a. ͬ²½Í·Îļþ£ºÍ¬²½openmax/omxcore/inc/OMX_IVCommon.h µ½./native/include/media/openmax/OMX_IVCommon.h b. cameraÄ£¿éÔÚµ÷ÓÃopenmax/venc±àÂë½Ó¿ÚʱÐèÒª½øÐÐÐ޸ģº ÐÞ¸Äǰ NV21 --> OMX_COLOR_FormatYUV420SemiPlanar£¬ Ð޸ĺó NV21 --> OMX_COLOR_FormatYVU420SemiPlanar; 1.2 ¼ÓÔØ½âÂë¿âµÄ˵Ã÷£º ֮ǰ¼ÓÔØ½âÂë¿âµÄ²Ù×÷ÔÚvdecoder.cÕâÒ»²ã½øÐУ¬ÎªÁËÌá¸ßÁé»îÐÔ£¬´Óv1.0.4ºó °Ñ¼ÓÔØ½âÂë¿âµÄ²Ù×÷·Åµ½Éϲãµ÷ÓÃÕß½øÐУ¬Éϲã¿Éµ÷ÓÃvdecoder.cµÄAddVDPlugin½Ó¿ÚĬÈÏ ¼ÓÔØËùÓеÄ×Ó½âÂ룬»òÕß²ÎÕÕÈçÏ´úÂë°´Ðè¼ÓÔØ£º static void InitVDLib(const char *lib) { void *libFd = NULL; if(lib == NULL) { loge(" open lib == NULL "); return; } libFd = dlopen(lib, RTLD_NOW); VDPluginFun *PluginInit = NULL; if (libFd == NULL) { loge("dlopen '%s' fail: %s", lib, dlerror()); return ; } PluginInit = (VDPluginFun*)dlsym(libFd, "CedarPluginVDInit"); if (PluginInit == NULL) { logw("Invalid plugin, CedarPluginVDInit not found."); return; } logd("vdecoder open lib: %s", lib); PluginInit(); /* init plugin */ return ; } static void AddVDLib(void) { InitVDLib("/system/lib/libawh265.so"); InitVDLib("/system/lib/libawh265soft.so"); InitVDLib("/system/lib/libawh264.so"); InitVDLib("/system/lib/libawmjpeg.so"); InitVDLib("/system/lib/libawmjpegplus.so"); InitVDLib("/system/lib/libawmpeg2.so"); InitVDLib("/system/lib/libawmpeg4base.so"); InitVDLib("/system/lib/libawmpeg4normal.so"); InitVDLib("/system/lib/libawmpeg4vp6.so"); InitVDLib("/system/lib/libawmpeg4dx.so"); InitVDLib("/system/lib/libawmpeg4h263.so"); InitVDLib("/system/lib/libawvp8.so"); return; } 2. ¸Ä¶¯µãÈçÏ£º 2.1 openmax:venc add p_skip interface 2.2 h265:fix the HevcDecodeNalSps and HevcInitialFBM 2.3 h264:refactor the H264ComputeOffset 2.4 mjpeg scale+rotateµÄÐÞÕý 2.5 vdcoder/h265: add the code of parser HDR info 2.6 vdecoder/h265: add the process of error-frame 2.7 vdecoder/h264: make sure pMbNeighborInfoBuf is 16K-align to fix mbaff function 2.8 openmax/vdec: remove cts-flag 2.9 openmax/venc: remove cts-flag 2.10 detection a complete frame bitstream and crop the stuff zero data 2.11 vdecoder/h265:fix the bug that the pts of keyFrame is error when seek 2.12 openmax/inc: adjust the define of struct 2.13 vencoder: add lock for vencoderOpen() 2.14 vdecoder/ALMOST decoders:fix rotate and scaledown 2.15 vdecoder/h265:fix the process of searching the start-code when sbm cycles 2.16 vdecoder/h265:fix the bug when request fbm fail after fbm initial 2.17 vdecoder/h265:improve the process when poc is abnormal 2.18 cedarc: unify the release of android and linux 2.19 vdecoder/avs: make mbInfoBuf to 16K align 2).CedarC-v1.0.5 1. ¸Ä¶¯µãÈçÏ£º 1.1.configure.ac:fix the config for linux compiling 1.2.openmax/venc: revert mIsFromCts on less than android_7.0 platfrom 1.3.vdecoder/h265soft:make h265soft be compatible with AndroidN 1.4.cedarc: merge the submit of cedarc-release 1.5.vdecoder/h265:use the flag "bSkipBFrameIfDelay" 1.6.vdecoder:fix the buffer size for thumbnail mode 1.7.cedarc: fix compile error of linux 1.8.omx:venc add fence for androidN 1.9.openmax:fix some erros 1.10.omx_venc: add yvu420sp for omx_venc init 1.11.videoengine:add 2k limit for h2 1.12.cedarc: add the toolschain of arm-openwrt-linux-muslgnueabi for v5 1.13.cedarc: ½â¾ö0x1663 mpeg4 ²¥·Å»¨ÆÁµÄÎÊÌâ 1.14.vdecoder: fix compile error of soft decoder for A83t 1.15.omx_vdec: fix the -1 bug for cts 1.16.ÐÞ¸Ämpeg2 »ñÈ¡ve versionµÄ·½Ê½ 1.17.vencoder: fix for input addrPhy check 1.18.cedarc: merge the submit of cedarc-release 3). CedarC-v1.1 1. ÌØ±ð˵Ã÷£º 1.1 v1.1¼¯³ÉÁËH6-dev¿ª·¢·ÖÖ§µÄÐ޸ijɹû£»Ôö¼ÓÁËh265 10bitºÍafbc¹¦ÄÜ£¬´Ë¹¦ÄÜÐè cedarxÆ¥ÅäÐ޸쬷ñÔòÎÞ·¨¶ÀÁ¢ÉúЧ£» 1.2 v1.1 ¹Ø±ÕÁËÓÃÓÚÉêÇëÎïÀíÁ¬ÐøÄÚ´æµÄmemory½Ó¿Ú£¬ÉϲãÈôÐèÒªÉêÇëÎïÀíÄڴ棬ÐèÄ£¿é ÄÚ²¿ÊµÏÖmemoryµÄ½Ó¿Ú»òµ÷ÓÃÆäËû½Ó¿Ú£» 1.3 Ôö¼ÓÁËVideoDecoderGetVeIommuAddrºÍVideoDecoderFreeVeIommuAddrÕâÁ½¸ö½Ó¿Ú£¬ÓÃÓÚ ¶ÔiommuµÄbuffer½øÐаó¶¨Óë½â°ó¶¨²Ù×÷¡£ 2. ¸Ä¶¯µãÈçÏ£º 2.1 Ôö¼Óh265 10bitºÍafbc¹¦ÄܵÄÖ§³Ö£» 2.2 Ôö¼Óvp9 Ó²¼þ½âÂëÇý¶¯£» 2.3 Ôö¼Ó¶Ôiommu buffer¹ÜÀíµÄÖ§³Ö£» 2.4 ¶ÔveÄ£¿é½øÐÐÁËÖØ¹¹£» 2.5 ¶ÔsbmÄ£¿é½øÐÐÁËÖØ¹¹£» 2.6 memory½Ó¿Ú²»ÔÙ¶ÔÍ⿪·Å¡£ 4). CedarC-v1.1.1 1. ¸Ä¶¯µãÈçÏ£º 1.1 µ÷Õûcedarc-release£¬Ä¿Ç°release³öÀ´µÄcedarc¿ÉÊÊÓÃÓÚËùÓÐandroidºÍlinxuƽ̨£» 1.2 vdecoder/Vp8:process the case of showFrm 1.3 vdecoder/h265: increase the size of HEVC_LOCAL_SBM_BUF_SIZE 1.4 vdecoder/videoengine: add the function of checkAlignStride 1.5 vdecoder/h265: set proc info 1.6 vdecoder/sbm: ÐÞ¸ÄH265 sbmFrame ·ÃÎÊÔ½½çµÄbug 5). CedarC-v1.1.2 1. ¸Ä¶¯µãÈçÏ£º 1.1 vdecoder/h264: set proc info 1.2 vdecoder/mjpge: set proc info 1.3 vdecoder: improve function of savePicture 1.4 vencoder: fix for jpeg get phy_addr and androidN get chroma addr 1.5 ÔÚfbmInfoÖÐÌí¼ÓoffsetµÄÐÅÏ¢ 1.6 openmax/vdec: set mCropEnable to false on linux 1.7 ²ÉÓÃÊôÐÔ¼ì²âµÄ·½Ê½À´È·¶¨ÄÚ´æµÄʹÓ÷½Ê½ 1.8 unmap the fbm buffer when native window changed 1.9 vp8 return the alterframe error for 'ÐÂÏɺ×ÉñÕë.mkv' 6). CedarC-v1.1.3 1.1 vdecoder: change the 6k range 1.2 openmax:venc: fix for recorder 1.3 vdecoder: fix the bug for initializeVideoDecoder fails 1.4 vdecoder/h265Soft: fix the bug: crash when seek the video H265_test.mkv 1.5 ve: control phyOffset in ve module 1.6 use iomem.type to check iommu mode 1.7 vdecoder: add nBufFd when call FbmReturnReleasePicture 1.8 openmax: load the libawwmv3.so when init 1.9 vdecoder/VP9:reset some parameter for Vp9HwdecoderReset() 1.10 ve: dynamic set dram high channal 7). CedarC-v1.1.4 1.1 vencoder: add for thumb write back func 1.2 vencoder:fix for set thumb write back scaler dynamic 1.3 vencoder: fix for only thumb write back no encode 1.4 Ð޸ļì²âÓ²¼þbusyµÄ״̬λµÄµÈ´ýʱ¼ä 1.5 vdecoder/sbmFrame: fix the error video 720P_V_.HEVC_AAC_2M_15F.mkv 8). CedarC-v1.1.6 1. ¸Ä¶¯µãÈçÏ£º 1.1 vdecoder/h264:after reset,the first frame pts is same to the last bitstream 1.2 h265:fix the bug of parse-extradata 1.3 ÐÞ¸ÄH264 Ìø²¥ºóptsÒì³£µÄbug 1.4 vdecoder: add lock for VideoEngineCreate 1.5 fix gts test fail 1.6 vdecoder/vc1: fix the bug: error when seek 1.7 µ÷ÕûH264´úÂë¼Ü¹¹£¬Çå³ý×îºóһ֡ûÓнâÂëµÄbug 1.8 openmax/vdec: not support metadata buffer 1.9 ve: fix for getIcVersion when other process is reseting ve 1.10 openmax/vdec: open mem-ops when use 1.11 vdecoder/h264/distinguish SbmReturnStream of stream and frame for resolution change 1.12 omx:venc: fix for recorder of h6-kk44-iommu 1.13 openmax/vdec: support afbc function 1.14 h264:fix the progress of erro 1.15 openmax/vdec: plus timeout to 5s 2.ÌØ±ð˵Ã÷: 2.1 mediacodecͨ·¶Ôafbc¹¦ÄܵÄÖ§³Ö afbc¹¦ÄܵÄÖ§³ÖÉæ¼°µ½Á½¸öÄ£¿é£¬ÆäÒ»ÊÇcedarc/openmaxÄ£¿éµÄÐ޸쬴ËÄ£¿éµÄÐÞ¸ÄÒÑÍê³É£¬½« cedarcµÄ´úÂë¸üе½cedarc-v1.1.6»ò¸üа汾¼´¿É£» Æä¶þÊÇframework²ãµÄÐ޸ģ¬Ä¿Ç°framework²ãµÄpatchÖ»¼¯³Éµ½H6µÄ·½°¸ÉÏ£¬ÈôÆäËû·½°¸Òª¼¯³Éafbc µÄ¹¦ÄÜ£¬¿ÉÕÒAL3µÄÍõϲÍûÌṩframework_patch. 9). CedarC-v1.1.7 1. ¸Ä¶¯µãÈçÏ£º 1.1. vdecoder/avs:the case of diff pts > 2s for TvStream 1.2. vencoder:jpeg fix for exif buffer memory leak 1.3. h264:fix the bug of frameStream-end 1.4. vdecoder: fix the bug when get memops 1.5. vdecoder/h264:u16 to s32 1.6. vdecoder: add iptv-info for h264 and h265 1.7. vdecoder/fbm: avoid memory leak 1.8. ½â¾öH8 ´ó°×öè.mp4²¥·Å»¨ÆÁµÄÎÊÌâ 1.9. vdecoder/sbmH264: surpport secure video 1.10. °´ÕÕH264µÄ·Ö±æÂÊÀ´ÉêÇëDram buffer µÄ´óС 1.11. ÐÞÕýsurface Çл»Ê±£¬²¥·ÅA026.mpeg4¹ÒסµÄÎÊÌâ 1.12. secure ģʽÏÂÖ§³Öiommu 1.13. H265 µÄve ƵÂÊÔÚH6Éϵ÷ÕûΪ696MHZ 1.14. memory: fix for get phy_addr 0 when is iommu mode 1.15. H264 Ìí¼ÓÈí¼þ½âÍ·ÐÅÏ¢µÄ´úÂë 1.16. openmax/vdec: increase the input-buffer-size to 6 MB 1.17. vdecoder: optimize the policy of set vefreq 1.18. ÔÚmpeg2½âÂëÆ÷ÖÐÌí¼Ó´íÎóÖ¡µÄʶ±ð 1.19. omx:venc: fix for gpu buf 1.20. vdecoder/avs/fix the flag of bIsProgressive 1.21. openmax/vdec: support native-handle 1.22. Ìí¼Óve ƵÂÊÅäÖÃÏî 1.23. vdecoder: not get the veLock with the softDecoder case 10). CedarC-v1.1.7 -- patch-002 1. ¸Ä¶¯µãÈçÏ£º 1.1. ÐÞ¸ÄH264¼ÆËãdram bufferµÄ·½Ê½ 1.2. ÐÞ¸ÄT3 mpeg4v2µÄ½âÂ뷽ʽ,´Ë¸ñʽVE²»Ö§³ÖÓ²½â 1.3. ¼æÈÝwidewine ģʽÏÂextradata µÄ´¦Àí 1.4. vdecoder/H264/decoder one frame then return 1.5. ¼æÈÝparser´«´íwidthºÍheightµÄcase 1.6. openmax/vdec: add the policy of LIMIT_STREAM_NUM 1.7. videoengine:fix the specificdat value 1.8. videoengine: fix the ve unlock in VideoEngineReopen 1.9. openmax/vdec: add the function of di 1.10. vdecoder/H264:resolution change for online video 1.11. ÐÞÕýûÓлñÈ¡µ½fbm ÐÅϢʱ,½âÂëÆ÷¾Í½ÓÊÕµ½eos±ê¼Ç¶ø²»ÄÜÕý³£Í˳öµÄbug 1.12. openmax/vdec: remove bCalledByOmxFlag 1.13. h265: fix the bug decoding the slcieRps as numOfRefs is outoff range 1.14. openmax/vdec: not init decoder in the status of idle 10). CedarC-v1.1.7 -- patch-003 1. ¸Ä¶¯µãÈçÏ£º 1.1 ÐÞ¸´h264 cts failed 1.2 openmax/vdec: reset MAX_NUM_OUT_BUFFERS from 15 to 4 as it consume too much buffer 1.3 h265: fix the pts of eos frame for gts 1.4 fbm: fix the value of pMetaData 1.5 ÐÞ¸Ämpeg2 pt2.vob ±ÀÀ£µÄbug 10). CedarC-v1.1.7 -- patch-004 1. ¸Ä¶¯µãÈçÏ£º 1.1 openmax/vdec: fix the process of decoding the last frame which size changes 1.2 h265: fix the bug of decoding extraData 1.3 fbm: add code for allocating metadata buffer for linux 1.4 di not support 4K stream, for 4K interlace stream, ve does scaledown 1.5 vdecoder: limit nVbvBufferSize to [1 MB, 32MB] 1.6 openmax/vdec: increase OMX_VIDEO_DEC_INPUT_BUFFER_SIZE_SECURE from 256 KB to 1 MB 1.7 ÐÞ¸ÄH264Òò¶ªÖ¡µ¼ÖµÄpts ¼ÆËã³ö´íµÄÎÊÌâ 1.8 vdecoder:add the decIpVersion for T7 1.9 vdecoder/h264:add reset parameters of H264ResetDecoderParams() 1.10 openMAX: Adapt DI process with two input di pictures to the platform of H3 1.11 openmax/vdec: just set nv21 format in di-function case 1.12 demo: add vencDem to cedarc 1.13 support the field structure of vc1 frame packed mode 1.14 demo:demoVencoder: fix for style error 1.15 config: add config file of T7 platform 11). CedarC-v1.1.8 1. ¸Ä¶¯µãÈçÏ£º 1.1. ÐÞÕýmp4normal ËõÂÔͼģʽÏÂûÓÐspecialdataʱ,ÎÞ·¨½âÂëµÄbug 1.2. ÐÞÕýmpeg4Normal ½ìËõÂÔͼµÄbug 1.3. Ö§³Ömjpeg444µÄ½âÂë 1.4. vdecoder: fix the bug when sbm inits failed 1.5. vdecoder:fix for VC1. Be compatible to 64 bit system 1.6. ÐÞ¸´0x1663²¥·Åmpeg4Îļþ»¨ÆÁµÄÎÊÌâ 1.7. cdcUtil: fix ion handle for linux4.4 1.8. »Ö¸´vbv buffer size µÄÉèÖ÷½Ê½ 1.9. omx:venc: fix for h265 enc error 1.10. vdecoder:A63 upgrade,Mpeg1/2/4 addr register 1.11. vdecoder:catch DDR value for H265 1.12. ÐÞÕý²¥·Å05_100M.ts ÊÓÆµpts ³ö´íµÄÎÊÌâ 1.13. cedarc:avs:add support for sun8iw7p1 1.14. 1708 оƬµÄmjpeg µ÷ÓÃmjpegPlus 1.15. vdecoder/h265:protecting nFrameDuration 1.16. vdecoder/sbm: fix bug: crash when length of stream is 0 1.17. Ìí¼Óandoido µÄÖ§³Ö 1.18. ÐÞ¸ÄH265µÄ¶ªÖ¡»úÖÆ 1.19. cedarc:avs_plus:fix avs_plus unsupport error on chip-1680 1.20. cedarc/log: dynamic show log by property_get 1.21. cedarc: compile so in system/lib/ and system/vendor/lib 1.22. vdecoder/fbm: reduce frmbuf_c_size of afbc 11). CedarC-v1.1.9 1. ¸Ä¶¯µãÈçÏ£º 1.1 ÐÞ¸ÄlinuxĿ¼¿âÃû³Æ£º ÐÞ¸Äǰ Ð޸ĺó arm-linux-gnueabi arm-linux-gnueabi arm-linux-gnueabihf arm-linux-gnueabihf arm-none-linux-gnueabi arm-none-linux-gnueabi arm-linux-gnueabihf-linaro toolchain-sunxi-aarch64-glibc arm926-uclibc toolchain-sunxi-aarch64-musl arm-aarch64-openwrt-linux toolchain-sunxi-arm9-glibc arm-openwrt-linux-muslgnueabi toolchain-sunxi-arm9-musl arm-openwrt-linux-muslgnueabi-v5 toolchain-sunxi-arm-glibc arm-openwrt-linux-uclibc toolchain-sunxi-arm-musl ˵Ã÷£ºÐÞ¸ÄÔ­ÒòΪ£º¸ù¾ÝBU1×îÐÂÌṩµÄ¹¤¾ßÁ´½øÐÐÕûÀí£» Ç°Ãæ3Ì×ΪÓõñȽ϶àµÄ±àÒ빤¾ßÁ´£¬ÊÊÓÃÓÚ¸÷¸öBUµÄ·½°¸¿ª·¢£» ºóÃæ6Ì×ΪBU1ÌṩµÄ¹¤¾ßÁ´±àÒë³öÀ´µÄso£¬Èç¹ûÆäËûBUÐèҪʹÓ㬽¨ÒéÏÈÓëcedarcÇý¶¯×éµÄͬÊ£¨ÈçÍõϲÍû/ÁõСÑࣩ½øÐйµÍ¨Á˽⣻ 1.2 ÐÞ¸Älinux soÃû³Æ£º ÐÞ¸Äǰ Ð޸ĺó libcdc_vd_avs.so libawavs.so libcdc_vd_h264.so libawh264.so libcdc_vd_h265.so libawh265.so libcdc_vd_mjpeg.so libawmjpeg.so libcdc_vd_mjpegs.so libawmjpegplus.so libcdc_vd_mpeg2.so libawmpeg2.so libcdc_vd_mpeg4base.so libawmpeg4base.so libcdc_vd_mpeg4dx.so libawmpeg4dx.so libcdc_vd_mpeg4h263.so libawmpeg4h263.so libcdc_vd_mpeg4normal.so libawmpeg4normal.so libcdc_vd_mpeg4vp6.so libawmpeg4vp6.so libcdc_vd_vp8.so libawvp8.so libcdc_vd_vp9Hw.so libawvp9Hw.so libcdc_vd_wmv3.so libawwmv3.so libcdc_vencoder.so libvencoder.so libcdc_ve.so libVE.so libcdc_videoengine.so libvideoengine.so ˵Ã÷£ºÐÞ¸Älinux soµÄÃû³ÆµÄÔ­ÒòÖ÷ÒªÊÇΪÁËÓë androidƽ̨µÄsoÃû³ÆÒ»Ö¡£ 12). CedarC-v1.1.10 1. ¸Ä¶¯µãÈçÏ£º 1.1 Ö§³Ö android P ϵͳ£» 1.2 ¼æÈÝ android P gms²âÊÔ£» 1.3 ¼æÈÝÖØ¹¹ºóµÄopenmaxÄ£¿é£» 1.4 fix bugs¡£ 2. ÌØ±ð˵Ã÷£º 2.1 ½«±àÂëÆ÷µÄ½Ó¿Ú²ã´úÂë½øÐпªÔ´: ±ÕÔ´£º½«Õû¸öencoderÄ£¿é±àÒë³ÉÒ»¸öso: libvendoer.so; ¿ªÔ´£º½«encoderÄ£¿é·Ö¸î³ÉÈý¸ö×ÓÄ£¿é£ºlibvendoer.so / libvenc_base.so / libvenc_codec.so; libvendoer.so / libvenc_base.so¡¡Á½¸ö×ÓÄ£¿é½øÐпªÔ´£¬libvenc_codec.soΪ±ÕÔ´²¿·Ö¡£ ¡¡¡¡Ê¹Ó÷½·¨µÄ¸Ä±ä£º±ÕԴʱÊÊÓñàÂëÆ÷Ö»ÐèÁ´½ÓÒ»¸öso¼´¿É£¬¿ªÔ´ºóÐèÒªÁ´½ÓÈý¸öso . 12). CedarC-v1.2.0 1. ¸Ä¶¯µãÈçÏ£º 1.1 Ìí¼ÓCdcMalloc.c£¬ÓÃÓÚ¼ì²âmallocµÄÄÚ´æÊÇ·ñ´æÔÚй©ÏÖÏó£» 1.2 Ìí¼Ósysfs»úÖÆ£¬¿Éͨ¹ýcat veµÄ½Úµãʵʱ²é¿´sbm/fbm/vdecoder/ÄÚ´æµÈÐÅÏ¢£» 1.3 Ìí¼Ó¶¯Ì¬debug»úÖÆ£¬Í¨¹ýÐÞ¸ÄÅäÖÃÎļþcedarc.confʵÏÖ(ÐÞ¸ÄÅäÖÃÎļþºó£¬ÐèÒªkillµôÏà¹ØµÄ½ø³ÌÈçmediaserver²Å»áÉúЧ)£» 1.4 ¶ÀÁ¢³ö±àÂëÆ÷ispµÄ¹¦Äܽӿڣ¬Ê¹ÓÃÕ߿ɵ¥¶Àµ÷ÓÃVideoEncIspFunction½Ó¿Ú£» 1.5 fix bugs¡£