Changes in this release:
-
1c0a880 wifi-atbm6062x: update package vewr
-
09a6edb Adding wake word support to ESPHome and both BLE exp devices
-
082cb2f Add thingino-esphome package
-
c22ee6b Update eufy_t8410c_t31x_sc3338_atbm6031x_ble.config
-
bcc352a Adding Eufy T8410C E220 BLE support
-
6046e21 add ble support for Wuuk Y510 in new exp profile
-
7c92566 Update WIFI_SSV6158_VERSION to latest commit Adds a fix for bluetooth
-
9d76bd8 Add files via upload
-
14ec531 eufy t8410c: fix wifi module name
-
f95e332 spi-tmi8152: use modules.d/ instead of modules
-
ea51609 tapo c200: use thingino-motors directly
-
a4a8eb4 package: thingino-motors: remove dependency on sdk
-
4fbb976 updated lightnvr build requirements
-
5657408 cleanup: drop editorconfig. use formatters and linters instead
-
d0f8976 cleanup: sensor select makefile never fruited and the idea is meh
-
2e2c647 remove yandex disk
-
543b115 cleanup: remove retired modules
-
5ddc7d7 buildroot: bump
-
837846e timelapse: refactor to json config
-
59e03da package/thingino-onvif: update to 44296ba Update thingino-onvif from 74f99a6 to 44296ba Hash change: 74f99a6abd97db472c5c961f1b03dacb40130cc4 -> 44296bad9a1146b343cf75938c413120d6089eb1 Changelog: 25829c3: handle diagonal motion in a single move 44296ba: add test utils and artifacts
-
f9127b8 package/thingino-ffmpeg: update to d01608e Update thingino-ffmpeg from 1120b3d to d01608e Hash change: 1120b3db302165d7ed40df1473e6ae84db61c0f8 -> d01608e0222a04b5743446f200284d486524b355 Changelog: 0b0cb7c: lavf/movenc: improve AVdh atom generation for DNxHD/DNxHR 06b04da: lavf/mxfenc: require pixel format to be set for video streams cfcd996: lavf/mxfenc: remove cdci pixel format specific values from stream context 1cd3f61: lavf/mxfenc: correctly add jpeg2000 subdescriptor reference in cdci, factorize 48c6b8a: lavf/mxfenc: fix return value to int64_t 548bdee: lavf/mxfenc: factorize cdci descriptor functions 7f7335e: lavf/mxfenc: fix muxing for DNxHD/DNxHR 444 7e8ef2d: configure: Add mxpeg->hpeldsp dependency 3115c0c: lavc/aarch64: Fix addp overflow in ff_pred16x16_plane_neon_10 00e4361: avutil/csp: add av_csp_approximate_eotf_gamma() a2b47cc: avcodec/{png,mov}enc: use EOTF gamma approximation for gAMA chunk 20f59bf: fftools/ffmpeg: use enum VideoSyncMethod instead of int c597d8c: avcodec/aacpsdsp: add restrict to function pointers to match declarations 9ad2083: avcodec/pixblockdsp: be consistent about restrict use in ff_{get,diff}_pixels fe425d9: avcodec/cbs*: remove redundant const, it's already in typedef 0cd9992: avcodec/put_bits: add explicit cast to suppress MSVC warning 49cfafe: avcodec/rectangle: use uintptr_t for integer pointer type ddeec52: avcodec/x86/idctdsp: add restrict to match function pointer types 9a9edd8: configure: Remove 3dnow 7b5b299: avutil/x86/cpu: Remove 3dnow flags, macros 3e69541: avutil/tests/audio_fifo: don't print trailing spaces 8d16f85: avutil/tests/fifo: don't print trailing spaces c819e59: avutil/tests/dict: don't print trailing spaces 63bb620: avutil/tests/hash: don't print trailing spaces dd4c524: api-h264-test: indent output df7b6b2: tests/fate/filter-atempo: remove leftover ref file 51762c9: tests/ref/fate/iirfilter: remove leftover ref file c5edd12: tests/ref/fate: remove leftover mapchan ref files 25fe410: tests/fate/api: fix fate-lavf-flv test d77f917: ffbuild/common: silence DEPCXX output 016d767: lavfi: add drawvg video filter. d9853e6: avfilter/Makefile: fix dependency for drawvg test defd5f3: Changelog: fix ordering for drawvg entry f5f72b4: Fix incorrect extraction of Origin 9195af7: proresdec: allocate private memory for hwaccel pictures 987368e: avcodec/prores: adapt hwaccel code for slice-based accelerators 3fd55d9: avcodec/proresdec: save slice width parameter in codec context 98412ed: lavc: add a ProRes Vulkan hwaccel 23df9d4: avcodec/prores: add parser d01608e: avcodec/proresdec: Remove unused hwaccel_last_picture_private
-
17cb1ef package/prudynt-t: update to e548748 Update prudynt-t from 00b8ef6 to e548748 Hash change: 00b8ef62745f9f357984fe430dc52bac8f2515a5 -> e548748106c38a55de9a566de888e01f285c8bf8 Changelog: e548748: Comprehensive HAL audit fixes and improvements
-
bc117a9 prudynt-t: Fix T20 compilation - add compile-time guards for set_hue Update to commit 00b8ef6 which fixes compilation for T20 platforms. The IMP_ISP_Tuning_SetBcshHue function doesn't exist on T10/T20/T21/T30. Added compile-time guards to prevent compilation errors on platforms that don't have the function. Platforms with hue support: - T23, T31, C100: IMP_ISP_Tuning_SetBcshHue(val) - T40, T41: IMP_ISP_Tuning_SetBcshHue(IMPVI_MAIN, &val) - T10, T20, T21, T30: Function doesn't exist (returns 0)
-
97bdd9a prudynt-t: Fix T31 compilation errors Update to commit f317949 which fixes compilation for T31 platforms. Fixes: - Added missing imp_hal.hpp include to IMPFramesource.cpp - Added compile-time check for aecChn field in IMPAudio.cpp (field doesn't exist on T31, only on T40/T41) The aecChn field is part of IMPAudioIChnParam struct on T40/T41 but not on T31, so we need a compile-time check in addition to the runtime capability check.
-
cf86e4c prudynt-t: Fix capability initialization nesting Update to commit b3648d2 which fixes the has_framesource_chn_rotate capability initialization. The capability was incorrectly nested inside the OSD capability #else block. Fixed the #endif nesting so it's properly initialized for all platforms. This eliminates the 'missing initializer' compiler warning.
-
33eccf0 prudynt-t: Abstract ISP sensor management API differences in HAL Update to commit dffe537 which adds HAL wrappers for ISP sensor management. Added hal::isp functions to abstract IMPVI_MAIN parameter differences: - add_sensor() - wraps IMP_ISP_AddSensor - enable_sensor() - wraps IMP_ISP_EnableSensor - disable_sensor() - wraps IMP_ISP_DisableSensor - del_sensor() - wraps IMP_ISP_DelSensor Reduced platform checks in IMPSystem.cpp from 5 to 1.
-
a381959 prudynt-t: Abstract rotation capability instead of platform check Update to commit e20c7dc which adds has_framesource_chn_rotate capability. Instead of checking 'defined(PLATFORM_T31)', the code now checks for the meaningful capability 'has_framesource_chn_rotate'. This makes the code self-documenting and easier to maintain. IMPFramesource.cpp is now 100% clean of platform checks!
-
391b066 prudynt-t: Simplify nonsensical platform check Update to commit ac49a1c which simplifies a confusing platform check. Changed '#if defined(PLATFORM_T31) && !defined(PLATFORM_C100)' to just '#if defined(PLATFORM_T31)' since only one platform can be defined at a time. The '&& !defined(PLATFORM_C100)' was redundant and confusing.
-
b33b4bb prudynt-t: Replace platform checks with capability checks in JsonAPI Update to commit c907644 which makes JsonAPI.cpp 100% clean of platform checks. All compile-time #ifdef PLATFORM_ checks replaced with runtime hal::caps() capability checks. JSON API endpoints are now dynamically available based on platform capabilities. This completes the JsonAPI HAL migration - no more platform checks!
-
8eda021 prudynt-t: Consolidate all type compatibility defines in HAL Update to commit 92ac9fd which completes the HAL consolidation: - Removed duplicate type compatibility defines from all files - Centralized all defines in imp_hal.hpp - Updated JPEGWorker to use encoder HAL functions - Added necessary includes to headers Platform check reduction: - Started with 99 PLATFORM_ checks - Reduced to 36 (64% reduction) Remaining checks are acceptable: - Config.hpp: Compile-time defaults - IMPEncoder.cpp: Deep RC configuration - IMPSystem.cpp: Sensor initialization - JPEGWorker.cpp: Wraparound handling - Others: Minor initialization differences All type compatibility and API abstraction now centralized in HAL.
-
18f7621 prudynt-t: Add encoder HAL and move type compatibility to HAL Update to commit 4f4b8b9 which adds encoder initialization HAL functions and moves type compatibility defines to the HAL header. Changes: - Added encoder initialization helper functions to HAL - Moved IMPEncoderCHNAttr/IMPEncoderCHNStat typedefs to HAL - Removed duplicate typedef from IMPEncoder.cpp The remaining platform checks in IMPEncoder.cpp are deep implementation details for RC configuration and are best left as-is. All major platform-specific code is now abstracted through the HAL.
-
2dd4a32 prudynt-t: Add encoder HAL to abstract stream pack API differences Update to commit cc92190 which adds hal::encoder namespace to abstract platform-specific differences in video encoder stream pack APIs. Changes: - Added encoder HAL functions to abstract stream pack data access - Removed all platform #ifdef checks from VideoWorker.cpp - Centralized encoder API differences in imp_hal.cpp The encoder HAL abstracts: - Stream pack data pointer differences (virAddr+offset vs pack[i].virAddr) - NAL type field name differences (nalType vs dataType) This completes the HAL abstraction - all platform-specific code is now centralized in the HAL layer.
-
b0f329b prudynt-t: Update to ede39f4 - complete HAL capabilities system Final update with working platform capabilities system: - Fixed g_caps field order to match PlatformCaps struct - Added missing caps() function implementation - All platform-specific #ifdef checks now replaced with caps() checks - Successfully builds for T40 platform The HAL now provides a clean, centralized way to handle platform differences across all Ingenic SoCs (T10/T20/T21/T23/T30/T31/C100/T40/T41). Tested: wyze_cam3pro_nor_t40xp_gc4653_rtl8192fs builds successfully
-
c5ba85d prudynt-t: Update to latest t40-hal-support with platform capabilities Update to commit cf4ced5 which adds comprehensive platform capability system to replace scattered #ifdef checks throughout the codebase. Changes in this update: - Extended PlatformCaps struct with audio, ISP, OSD, and system capabilities - All platform-specific code now uses caps().has_feature checks - Added compile-time guards for platform-specific ISP functions - Centralized all platform differences in imp_hal.cpp Note: Build currently has field order issue in g_caps initialization that needs to be fixed in next commit.
-
ceb3fed prudynt-t: Add T40/T41 support via HAL abstraction Switch to t40-hal-support branch which implements proper hardware abstraction layer for ISP tuning functions. Changes: - Add hal::isp namespace with platform-abstracted ISP functions - Handle T40/T41 API differences (IMPVI_NUM, pointer parameters) - Centralize platform-specific code in imp_hal.cpp - Disable unsupported T40 features gracefully Branch: t40-hal-support Commit: 134bc8a6188583c90ffb8139446813523f54fc64 Tested on: wyze_cam3pro_nor_t40xp_gc4653_rtl8192fs
-
c54698f fix newline
-
41a83dd reorder to avoid problems when /opt fails to mount
-
2fb1f50 package/thingino-ffmpeg: update to 1120b3d Update thingino-ffmpeg from dc39a57 to 1120b3d Hash change: dc39a576ad8c489bf229c4acdf5c347b1dd264b2 -> 1120b3db302165d7ed40df1473e6ae84db61c0f8 Changelog: 27f5561: movenc: Fix sample clustering for hybrid_fragmented+delay_moov e442128: movenc: Make sure to flush the delayed moov atom for hybrid fragmented 05b8608: avcodec/x86/mpegvideoencdsp_init: Fix left shift of negative number edf5b77: avcodec/vvc: fix false alarm of missing ref on RASL 535d404: ffmpeg: unbreak max_error_rate application 0e8cff5: avformat/whip: add DTLS active role support cb5e201: avformat/whip: cleanup the redundant variable 0eb572f: avcodec/liblc3dec: support sample format negotiation and planar layout. 1120b3d: avcodec/liblc3enc: support packed float (AV_SAMPLE_FMT_FLT) input.
-
0a8ad87 package/libhelix-aac: update to d6184e0 Update libhelix-aac from e2f215c to d6184e0 Hash change: e2f215cea3a2b13419555e9ce4edcd3018a40c4a -> d6184e08977c0f15f1b09eeee119b238ce562383 Changelog: 291cff2: Add block-based I2S write on Pico (#789) 3e099fe: Don't skip CI, my son. 7d99e6b: BREAKING: Re-port MIDI, faster, lower memory, ESP32 support (#790) 11576fe: Update version 5cb3ef5: Fix typo in README 41b96ef: Increase MIDI speed by 20% by saturating at end (#792) 5a0375f: Speed MIDI decode 11%-64% with approximated powf (#793) c075b39: Properly timeout for ESP32 I2S writes (#794) d6184e0: Update version
-
1b88e4d package/ingenic-sdk: update to 0d59fc0 Update ingenic-sdk from 3a857c8 to 0d59fc0 Hash change: 3a857c8a7b75e80f182ea1faca0b611767508c15 -> 0d59fc0ef51398dd4fcad3f258ec018a8023b71f Changelog: 37b38f0: sensor-src/t23: normalize chip_id usage to SENSOR_CHIP_ID macros 0d59fc0: do not bail out on the first not ready device, continue scanning
-
1753a58 fix modprobe_args
-
253a0b9 check that the spi character device exists
-
9ae9510 only use tcu_channels param in gpio driven motors
-
93a0620 web ui: remove arbitrary rotation from the streamer form
-
f98aec6 buildroot: bump
-
c880156 formatting
-
8d4da34 make onvif compatible with spi motor cam c200
-
fc84b25 add tcu channels for pwm module
-
c5209f9 define tcu channel in module parameters
-
b438621 package/ingenic-sdk: update to 3a857c8 Update ingenic-sdk from 0efe05b to 3a857c8 Hash change: 0efe05b557258dd72d91a64d3f9037702967b17e -> 3a857c8a7b75e80f182ea1faca0b611767508c15 Changelog: 6a2a597: add IQ files harvested from stock images that differ from provided in sdk 341bb56: reuse global variables instead of hardcoded values c874324: TCU channel arbitration + configurable allocation 3a857c8: docs: update PWM README to reflect channel selection via Kbuild/params, motor coordination, and tcu_alloc arbitration; add references to docs/tcu_ownership.md
-
eb3feed set timezone from DHCP using
tzselect -
0892a06 buildroot: bump
-
4846128 udhcp client - setup timezone, skip if is same as current
-
c607faa udhcp client - setup timezone (option 101) from dhcp server
-
82d034f package/thingino-ffmpeg: update to dc39a57 Update thingino-ffmpeg from 51d3c4b to dc39a57 Hash change: 51d3c4b4b62691736172120c5d728e6c400d69c9 -> dc39a576ad8c489bf229c4acdf5c347b1dd264b2 Changelog: dc39a57: avcodec/pngenc: include EXIF buffer in max_packet_size
-
b671625 package/spi-tmi8152: update to f20ad43 Update spi-tmi8152 from 388d710 to f20ad43 Hash change: 388d7105c47f1021c972910d3a674309f4c8285c -> f20ad43e85de17cd90b339479dcd00335f8dbd0e Changelog: f20ad43: update position based on actual chip movement
-
b7606bf package/libhelix-aac: update to e2f215c Update libhelix-aac from 25c6165 to e2f215c Hash change: 25c6165b3d7f40d5d59e38dac82db4cef5cf905e -> e2f215cea3a2b13419555e9ce4edcd3018a40c4a Changelog: 7704d78: Add ConsumeSamples to Null output (#787) e2f215c: Add version defines (#788)
-
52b09a9 freetype: bump
-
a696730 buildroot: bump
-
0bc2140 Add ATBM6062CU driver and experimental profile for aoqee c1 with that driver
-
148ebb8 allow negative pos values
-
7108be3 hide gpio settings in webui if motor is spi
-
cd1d0b0 onvif-simple-server: restore pristine upstream sources dependencies
-
3b09229 webui: add mjpeg stream guard
-
b2213f2 prudynt, webui, onvif: move files heavily dependent on prudynt to prudynt package
-
3583cfe ffmpeg: address compilation warnings
-
fc0b8f2 package/thingino-onvif: update to 74f99a6 Update thingino-onvif from abc5fe2 to 74f99a6 Hash change: abc5fe2a29f3c4dff3c8b017086617114cba3d19 -> 74f99a6abd97db472c5c961f1b03dacb40130cc4 Changelog: 74f99a6: docs: onvif imaging service spec
-
ae89fd6 package/thingino-ffmpeg: update to 51d3c4b Update thingino-ffmpeg from cd4b017 to 51d3c4b Hash change: cd4b01707dd8275fb6f77e9a4d5ddd6fb02eaeef -> 51d3c4b4b62691736172120c5d728e6c400d69c9 Changelog: 94948bd: avfilter/vf_noise: Make private context smaller 6a53a4e: avfilter/vf_noise: Don't write beyond end-of-array ece623b: avfilter/vf_noise: Fix race with very tall images 214b52d: avfilter/vf_noise: Avoid cast adfec0f: avfilter/x86/vf_noise: Make line_noise_avg_mmx() match C function 3ba570d: avfilter/x86/vf_noise: Port line_noise funcs to SSE2 b1f2eea: avfilter/vf_noise: Deduplicate option flags a45d30a: avutil/hwcontext_vulkan: always enable baseline usage flags 36896af: movenc: Make the hybrid_fragmented mode more robust 3fac2d8: avfilter/vf_nlmeans_vulkan: rewrite filter 2e12b32: libavfilter/vf_nlmeans_vulkan: clean up naming 71ff349: libavfilter/vf_nlmeans_vulkan: lower strength min 26dee5b: libavfilter/vf_nlmeans_vulkan: reverse img_bar 7d65ce7: libavfilter/vf_nlmeans_vulkan: clean up defaults e8213f7: libavfilter/vf_nlmeans_vulkan: amend doc 62d43ba: libavfilter/vf_nlmeans_vulkan: fix str defaults 20051ed: avcodec/vulkan_encode_av1: fix level index 20c4608: avcodec/x86/me_cmp: Add SSE2 sad 8,16 xy2 functions 69a7000: avcodec/x86/me_cmp: Remove MMXEXT functions overridden by SSE2 d91b155: avcodec/x86/me_cmp: Replace MMXEXT size 16 funcs by unaligned SSE2 funcs ed007ad: avcodec/x86/fpel: Port ff_put_pixels8_mmx() to SSE2 d19b7c2: avcodec/d3d12va_encode: D3D12 H264 encoding support 4666c1e: libavcodec/cbs_apv_syntax_template: limit tile to 2gb d43f190: MAINTAINERS: libtheoraenc seems unmaintained 51f0f2d: tools/target_dec_fuzzer: Adjust threshold for interplay video 8988734: tools/target_dec_fuzzer: Adjust threshold for CAVS b132c17: tools/target_dec_fuzzer: Adjust threshold for qdraw 56ef66d: tools/target_dec_fuzzer: Adjust threshold for CRI 388e6fb: avcodec/ffv1enc: Consider variation in slice sizes 51d3c4b: tools/target_dec_fuzzer: Adjust threshold for PIXLET
-
09d646e package/libhelix-aac: update to 25c6165 Update libhelix-aac from 7ea583f to 25c6165 Hash change: 7ea583ff376638a2c9994f73bc8d270729b6ad30 -> 25c6165b3d7f40d5d59e38dac82db4cef5cf905e Changelog: 25c6165: Fix PDM compiles for older SOCs (#786)
-
aaf7e00 package/ingenic-sdk: update to 0efe05b Update ingenic-sdk from be5af39 to 0efe05b Hash change: be5af39a46e6f239b895dc8ffddc6ddabe15d05e -> 0efe05b557258dd72d91a64d3f9037702967b17e Changelog: 9bdb13f: pwm: fix coredump 0efe05b: pwm: add channels for socs that support more
-
7c759f4 webui: wording, layout
-
87b63e7 webui: add a button to restore prudynt config directly from the configuration page
-
db5712a add nino editor
-
f3b240c wireguard: address compilation warnings.
-
7339621 busybox: install applets to /bin, create a minimalist system structure
-
7f8a762 busybox: address compilation warnings
-
3861b8d makefile: formatting
-
b66c716 formatting
-
a99d4e3 tapo c200: fix homing
-
6c37a0a cameras: move Tapo C200 to supported
-
1389313 Merge branch 'master' into tapo_c200
-
6b53f81 add project-wide .clang-format
-
5fc2bb6 telegrambot: parse updates onto the original config base.
-
4c5a468 telegrambot: increase message buffer to match telegram limits
-
ffe01aa no need for rw on squashfs
-
e6ba816 update tapo c200 experimental profile
-
085eab4 ignore gpio variables if motor is spi
-
54eae19 use daynight daemon by default
-
bdcde8e Update pwm-ctrl brightness validation
-
4146d90 make ircut/daynight daemon conditional on soc
-
08af23f resize overlay from 224k to 288k
-
dbf85fe prudynt: switch to the version without websockets and external imp-control
-
487fb62 telegrambot: installs web ui files if selected
-
2a4f22a jsonpath: select only where needed
-
b2a8bdc telegrambot: does not need jsonpath anymore
-
30cc1d7 webui: center the content of wait page vertically
-
0b638d1 service: add status of the service
-
21569d7 drop support of yandex disk
-
9dcf27a makefile: add auggie onboarding helpers
-
9c2088b buildroot: bump
-
bd99fed telegrambot: rewrite in C and replace shell version.
-
0bc6926 package/thingino-onvif: update to abc5fe2 Update thingino-onvif from 83f172c to abc5fe2 Hash change: 83f172c87135121528efb39efe9e33cc566a303f -> abc5fe2a29f3c4dff3c8b017086617114cba3d19 Changelog: ec0235c: correct domain for relay outputs 71adeec: accumulate full request content before processing 42aa3d7: better handling of renew requests without message id 2b1bf33: add onvif specs on PTZ abc5fe2: expand ptz support, add preset tour, move and start tracking
-
382d748 package/thingino-jct: update to 3a10312 Update thingino-jct from 061376c to 3a10312 Hash change: 061376cec5e1347d8d52875443939ba3497f9966 -> 3a10312e0dac74028d72ca02cc8d7244aa860036 Changelog: 6493f83: better handling of escaped strings in pretty-print 80b1c86: add json path traversing functionality 3a10312: fix(serialize): print exact integers without scientific notation in JSON output
-
Detect exact int64 within double's precise range and emit as integer
-
Preserve %g for non-integers to avoid misleading expansions
-
Affects all outputs, including 'path' results
Refs: JSONPath UX feedback
- ab0181c package/thingino-ffmpeg: update to cd4b017 Update thingino-ffmpeg from 6f1ab82 to cd4b017 Hash change: 6f1ab828d3da168d28c65c03b80ad89a61c19d06 -> cd4b01707dd8275fb6f77e9a4d5ddd6fb02eaeef Changelog: d96f8d3: avcodec/x86/h264_qpel: Don't instantiate unused functions 10d3479: avcodec/h263dec: Avoid redundant branch dad06a4: avcodec/Makefile: Remove h263 decoder->mpeg4videodec.o dependency ce9d181: avcodec/mjpegdec: Remove unnecessary reloads f84e060: avcodec/x86/hpeldsp: Add SSE2 of {avg,put} no_rnd xy2 with blocksize 16 4c55724: avcodec/x86/hpeldsp: Add ff_put_no_rnd_pixels8_xy2_ssse3() 36f9220: avcodec/x86/hpeldsp: Improve ff_{avg,put}_pixels8_xy2_ssse3() 10e9672: avcodec/d3d12va_encode: use macros to set QP range and max frame size 0bc54cd: fftools/opt_common: add long-form license option 5d9a392: tests/checkasm: Add VP3 loop filter test e3ca57a: avcodec/x86/vp3dsp: Port loop filters to SSE2 5823ab3: avcodec/vp3dsp: Remove unused flags parameter from ff_vp3dsp_init() 31f0749: avcodec/vp3: Optimize alignment check away when possible b0c77e5: lavc/vvc: Store RefStruct references to referenced PSs/headers in slice a24e0f5: avcodec/x86/hpeldsp_init: Remove check for inline mmx 6b961f5: avformat/mov: fix missing video size when some decoders are disabled 0c6b7f9: swscale/output: Fix integer overflow in yuv2ya16_X_c_template() 566e903: swscale/output: Fix unsigned cast position in yuv2* ce499eb: tests/checkasm/mpegvideoencdsp: Add test for add_8x8basis cffd029: avcodec/x86/mpegvideoencdsp_init: Don't use slow path unnecessarily f4a87d8: avcodec/x86/mpegvideoencdsp_init: Use xmm registers in SSSE3 functions dcb28ed: avfilter/x86/vf_spp: Port store_slice to SSE2 74a3c1d: avfilter/x86/vf_pullup: Port pullup functions to SSE2, SSSE3 2e1d702: avformat/dump: fix log level passed to av_log when printing stream group side data 0de3b1f: avformat/mov: don't shift sidx_pts cd4b017: Revert "avformat/movenc: sidx earliest_presentation_time is applied after editlist"
- 3e7693f package/spi-tmi8152: update to 388d710 Update spi-tmi8152 from c162c6b to 388d710 Hash change: c162c6b1f57f8fe9cc03ac7e2cb09498a3dd24f9 -> 388d7105c47f1021c972910d3a674309f4c8285c Changelog: 50be777: add motor driver 388d710: don't disable the chip during operation
- 4ebd3a8 package/lightnvr: update to 6e209ff Update lightnvr from 179a0bb to 6e209ff Hash change: 179a0bb25d7c2571dfbdf9cb8b6dd39d933cad26 -> 6e209ff87757c8f4c70a8258b7452a8d950bfabd Changelog: af84df9: Fix HLS and solve memory leak double free when port already in use. 6e209ff: Check pt better fix for HLS
- 9122387 package/libhelix-aac: update to 7ea583f Update libhelix-aac from 36dde3c to 7ea583f Hash change: 36dde3c85c1bdd41ef282f2e9b4e727bc3e6c3c0 -> 7ea583ff376638a2c9994f73bc8d270729b6ad30 Changelog: f1d74df: Rewrite OPUS driver, no extra libs, update (#780) 2f5cc2a: Remove unneeded opus.h files (#781) 724b6d6: Update version 058e131: Remove 8-bit handling in output, promote WAV/FLAC to 16 (#782) e0143bb: ESP IDF 6.0 compat, update I2S, DAC, ULP (#783) 3032072: Add ESP32 PDM 1-bit output support (#784) 7ea583f: Update version
- 178775e telegrambot: rewrite in C, extract to a package
- f8bbd8f Add jooan_a12_t23n_sc2336_eth_tbm6132bu camera
- 2244d9b webui: link to plain js file
- 01cb9be webui: de-duplicate image.cgi, replace with a symlink to already existing one in web ui
- b93bb01 buildroot: bump
- 843cd2f webui: check for element presence before manipulation
- 111513f webui/portal: do not compress assets
- 777df78 mosquitto: extract libwebsockets support to an explicit key
- 4e2e997 formatting
- 7856c53 formatting
- 755e190 inprove package hash checker script to handle stash pop issues
- 258bc6d libcurl: bump to 8.16
- 458d79b Add openimpo override package option
- b6625d0 Check pt
- dc678fe Fix the oversized lightnvr build
- 4415180 Fix the go2rtc compilation
- c907666 buildroot: bump
- 5422881 sounds: set correct permissions on the directory
- 5b823b5 portal: use uncompressed assets
- eb11efc makefile: add information about SDK and libc
- 8b02f6c formatting
- 45ec44b uboot: bump to handle new latest 2025.10
- b0af540 buildroot: bump
- fbfdea0 update patch files
- db28aa8 Merge branch 'master' into feature-mqtt-send-msg-and-snap
- 775d550 Refactor MQTT message sending error handling
- 6ebc37d clean up
- 17d428b package/ingenic-sdk: update to be5af39 Update ingenic-sdk from 1e854ca to be5af39 Hash change: 1e854ca18d679e6c6051abfe1bec9be4ede93aaf -> be5af39a46e6f239b895dc8ffddc6ddabe15d05e Changelog: f7caa3d: cg1084: fix and extend LUT, port to T20 (thanks to @Oldsnakes) 9815b6c: strip executable bit from non-executable files 8293355: ignore IDE configs be5af39: merge IQ files for T23 SoC, add stock files provided by users
- c9e446e Indentation
- 4eedd83 tabs in help output
- 9d85d26 Preserving tabs
- 805aab9 Added support for selecting what to send via FTP (snaps, videos or both).
- a4929e2 retire bare modules due to low repeatability. use hardware information directly in camera defconfig.
- 8b6b6ab applied review comments: remove file from overlay, remove br tags in paragraph.
- 6dd265d package/thingino-onvif: update to 83f172c Update thingino-onvif from 6a78ac9 to 83f172c Hash change: 6a78ac993cdf1fe98d1fb22103680d62b26a749e -> 83f172c87135121528efb39efe9e33cc566a303f Changelog: cdd6205: fix motion alarm for Scrypted and hopefully elsewhere. add GetHostname and GetEndpointReference. enhance subscription handling with events debouncing. correct authentication and pre-auth zoning. set default DHCP value to true. 83f172c: add docs and tests
- 589630f package/thingino-live555: update to 73f015a Update thingino-live555 from 96b8a02 to 73f015a Hash change: 96b8a028ca5eee5ba2083d5e51492144b25ff273 -> 73f015a0c13e97cd9be49af07e7779961a327699 Changelog: b569cb9: address compilation warnings 73f015a: formatting, trailing spaces
- cc07769 package/thingino-jct: update to 061376c Update thingino-jct from 4ba5051 to 061376c Hash change: 4ba5051c28013b6c860c115ff27502afefa02757 -> 061376cec5e1347d8d52875443939ba3497f9966 Changelog: 061376c: add shorthand filename recognition
- 8c8aa55 package/thingino-ffmpeg: update to 6f1ab82 Update thingino-ffmpeg from 00225e9 to 6f1ab82 Hash change: 00225e9ebc943fdec451f826e342c821489a81f3 -> 6f1ab828d3da168d28c65c03b80ad89a61c19d06 Changelog: ef60d5a: general: fix warning 'av_malloc_array' sizes specified with 'sizeof' in the earlier argument and not in the later argument [-Wcalloc-transposed-args] 8e07882: avcodec/exr: check ac_size c911e00: avcodec/exr: Round dc_w/h up 7896cc6: avcodec/exr: Check that DWA has 3 channels ec2fe94: avcodec/cavs: Remove unused parameter cc2e2f1: avcodec/x86/cavsdsp: Fix vertical qpel motion compensation 5459823: tests/checkasm: Add CAVS qpel test 74a88c0: avcodec/x86/cavsdsp: Add SSE2 mc20 horizontal motion compensation 6500989: avcodec/x86/cavs_qpel: Add SSE2 vertical motion compensation ad498f9: avcodec/x86/cavsdsp: Remove MMXEXT Qpeldsp 378d5bb: avcodec/x86/fpel: Add blocksize x blocksize avg/put functions 4377aff: avcodec/hevc/refs: don't unconditionally discard non-IRAP frames if no IRAP frame was seen before 086597a: avutil/attributes: don't force format checking to gnu_printf on mingw build afad332: avutil/attributes: use __has_attribute to test for format attribute 9034ca3: avformat/flacdec: fix self assign warning 3a8ea78: avutil/attributes: add AV_HAS_ATTRIBUTE 67b28ac: avcodec/sanm: codec23 improvements d18c25f: avcodec/sanm: codec21 improvements da4b884: avcodec/sanm: codec1 improvements dfe4a06: avcodec/sanm: codec31 improvements 24ce42b: avcodec/sanm: codec4 improvements 72e6206: avcodec/sanm: partially fix codec48 f98cd66: avcodec/sanm: codec47: read the small codebook 043dafc: avcodec/sanm: codec37/47/48 size checks de7db62: avcodec/sanm: rename process_block to codec47_block 75b6937: avcodec/sanm: reset rotate_code every iteration 4d5e87e: Revert "avcodec/sanm: Check w,h,left,top" 49c552d: avcodec/sanm: restructure SANM like the other block codecs b1a7f8b: avcodec/sanm: factor out the ANIM decoding into separate function 2ef26c3: avcodec/sanm: implement BL16 subcodecs 1 and 7 3945d10: avcodec/sanm: remove unused SANMFrameHeader 7c205b5: avcodec/sanm: rename motion_vectors[] table to c47_mv[] a0c4dfc: avcodec/sanm: handle FTCH on video start b7e55ef: avcodec/sanm: per-fobj GetByteContext dd875f5: avcodec/sanm: invalidate STOR data when subversion changes d618577: avcodec/sanm: check codec48 subblock mv index b99b7a6: avcodec/sanm: change codec37 opcode FE to 4 2x2 blocks 0802044: avcodec/sanm: codec48: reimplement block scaling 70b0471: avcodec/sanm: distrust dimensions for ANIM in decode_init 556cef2: avcodec/sanm: enforce SANM min and max sizes at decode_init() 5f1f5dd: avcodec/sanm: guard against image area growing larger than buffer 4316914: avcodec/sanm: codec37: comp1: guard against invalid mv index b6a9c46: avcodec/sanm: reimplement XPAL algorithm identical to DOS smush engine a108be2: avcodec/sanm: for ANIM codecs with own buffers, really check dimensions 0eb58e4: avcodec/sanm: codec20 left/top offset support 9e72b2f: avcodec/sanm: codec37/47/48 updates d7d97ea: avcodec/sanm: partially fix codec48 for Making Magic 72df8f2: avcodec/sanm: implement 3 blits for codec37/47/48 c46c1cb: avcodec/sanm: remove rotate_code context member aa91ae2: avcodec/sanm: minor comment and size detection changes aba84db: avformat/whip: add WHIP_US_PER_MS macro to replace 1000 469aad3: avformat/whip: add ICE consent freshness support b3793d9: avformat/whip: pass through buffer_size option to udp ec0a04d: avformat/whip: remind user increase -buffer_size 76b13ca: avformat/whip: check the peer whether is ice lite bc6164e: avformat/whip: remove WHIP_STATE_DTLS_CONNECTING b43f8de: avformat/whip: add macros to replace magic number a934d48: doc/muxers: correct default pkt_size value of whip d448d6d: avcodec/hevc/sei: prevent storing a potentially bogus num_ref_displays value in HEVCSEITDRDI 8e01bff: avcodec/hevc/sei: don't attempt to use stale values in HEVCSEITDRDI 41c1684: avcodec/hevc/sei: don't attempt to use stale values in HEVCSEITimeCode eab3b68: avcodec/exif: avoid printing errors for makernote non-IFD parsing 6f1ab82: libavfilter/vf_libplacebo: add
temperatureoption - 595cd06 package/spi-tmi8152: update to c162c6b Update spi-tmi8152 from 4283328 to c162c6b Hash change: 428332863abedcdf88f8d5adfd25274b9e805f80 -> c162c6b1f57f8fe9cc03ac7e2cb09498a3dd24f9 Changelog: c162c6b: add uaccess header just in case
- 3074ed2 package/prudynt-t: update to b3ef6b2 Update prudynt-t from eabbf88 to b3ef6b2 Hash change: eabbf885e789797d290ca36c2142919f94ef6ab6 -> b3ef6b2f8508cfa74cdd7197eacc5e51ce0c1e75 Changelog: 2104c22: enhance LogMsg to handle more types 3f2303e: throw an error if failed to initialize audio 760b39d: make two-way audio opt-in 82cf116: clean up, formatting b3ef6b2: strive for clean compilation building locally
- 0fc6fc3 package/libhelix-aac: update to 36dde3c Update libhelix-aac from 9dee301 to 36dde3c Hash change: 9dee3010c1c6acd6603523ead5a38284cf451127 -> 36dde3c85c1bdd41ef282f2e9b4e727bc3e6c3c0 Changelog: ae685b1: Use arduino-cli to build examples, avoid bitrot (#765) 39188b8: Scan MP3 for header, avoid multiple burst errors (#764) 4130931: Remove error when ULP included on 8266/Pico (#767) df171f5: Add stale issue tracker GH action (#766) 18796ab: Up GH action operations efcb98a: ESP32-S3 has no DAC (#490) acc4dc4: Add CodeQL GH action (#768) b09bad5: Fix stale acction warnings 402278a: Potential fix for code scanning alert no. 9: Array offset used before range check (#769) 0699450: Pin GH actions to SHA (#770) a3e6f97: Add auto-release GH action d9e1ea7: Don't set I2S rate unless it's different (#771) 297943c: Update version b63c284: Tell AudioOutputMixer the rate for the next sample (#129) 6bc8f56: For I2S, only enable mclkPin if it's actually used (#772) 15f9a65: AudioOutputInternalDAC unitialized variable fix (#773) 81ebc8a: Fix Talkie output on ESP32 (#774) c5613c5: Add PWM/NoDAC filter and amp examples (#775) b4e7695: Rename helper fcn stack->stackenter for MAD (#777) 5cab5b3: Fix div/0 error after WDT in ULP (#778) 94f6879: Add include for rtc_io_reg.h in AudioOutputULP.cpp 8fe0911: ESP32 AudioOutputULP fixes (#579) 1255a42: Mixer stubs produce 16b, avoid 8b WAV issues (#776) c19a615: Add Werror, etc. to CI process (#779) 36dde3c: Update README, ESP32 is supported
- ee41e81 buildroot: bump
- f48b318 jsonfilter: rename to jsonpath, as it should be
- a8f0bdd sensor IQ management in webui
- 8602d59 send2ntfy: use default values for host and port if not set
- 23564aa init: add script to mount/unmount NFS share
- d6c17e4 daynight: switch to jct for json config. rewrite log levels to words.
- 1ffb617 vbuffer/record: use data from config
- 43a2406 ltrace requires glibc or uclibc
- 9671d93 cameras: add models from stable branch
- 4bb8b93 cameras: add GNCC GC2 variant with T31L
- 7b0eb98 timezone full name match, limit to one result
- 92f0735 busybox: add fold for wcurl
- 454ac63 init: use just cat for reading timezone list
- 8b17c23 jsonfilter is slow
- 4585eeb rename jooan q3r config, add ethernet
- 7867972 update buildroot
- 47686d1 update packages
- d93ac7c gdb: make it compile with gcc15
- 42597e7 add missing ircut package
- 9740449 webui: pick up changes from stable - ungzip assets - skip validation when disabling services - rewrite send2 scripts
- 73ecaff busybox: ask to timezone options from DHCP server
- 90dbd0b jct: bump
- 084393d spi-tmi8152: bump
- 9cf8023 onvif simple server: bump
- 81cc354 wifi-atbm6062: update repo commit
- 194dd32 firmware-stable: split notify-completion into finalize-release and notify-completion Created new finalize-release job that handles: - Generating release notes from commits - Marking release as latest - Converting from prerelease to full release Updated notify-completion to only handle notifications, matching the pattern established with prepare-release/notify-begin for better separation of concerns. Job flow is now: - prepare-release: Create tag and release - finalize-release: Add notes and mark as latest - notify-begin/notify-completion: Only handle notifications
- 7022e0b firmware-stable: remove unnecessary GROUP parameter from make source The GROUP=github parameter is not needed for make source command. Simplify to just use BOARD and WORKFLOW parameters.
- fd88780 firmware-stable: improve cache fallback condition Check both if release was found AND if download succeeded. This handles: - No cache release exists (release_found != 'true') - Release exists but download failed (download_succeeded != 'true') Makes the logic more explicit and comprehensive.
- b8e62db firmware-stable: add fallback source download when cache missing Add conditional step to download buildroot sources using 'make source' when the dl-cache is not available or download failed. This ensures builds can continue even without the cached sources, preventing build failures when the cache release is missing.
- cd96d99 firmware-stable: restore release upload step in buildroot job Add back the step to upload firmware artifacts to GitHub release. This was accidentally removed when fixing artifact pollution. The buildroot job needs to upload the firmware .bin files and checksums to the release, matching the behavior in firmware-x86_64.yaml.
- 47ac87b firmware-stable: fix release artifacts pollution Remove redundant artifact upload from notify-completion job that was uploading all build components (rootfs, uImage, etc) to the release. The buildroot jobs already upload the correct files (.bin and checksums) to the release. This matches the behavior in firmware-x86_64.yaml.
- bd91923 firmware-stable: remove redundant watchdog job The watchdog job was redundant as individual buildroot jobs already handle error notifications and the notify-completion job provides summary notifications. Also fixed syntax error from missing fi statement.
- 305a6db webui: do not convert time to local timezone, display it in the camera timezeone instead
- 45c3d66 timezones: timezone data updated from the IANA Time Zone Database version 2025b (released March 22, 2025) Changes Made: 1. Mexico - DST Abolished (October 30, 2022) Six Mexican timezone entries were updated to remove Daylight Saving Time: • America/Mexico_City: CST6CDT,M4.1.0,M10.5.0 → CST6 (no DST) • America/Monterrey: CST6CDT,M4.1.0,M10.5.0 → CST6 (no DST) • America/Merida: CST6CDT,M4.1.0,M10.5.0 → CST6 (no DST) • America/Chihuahua: MST7MDT,M4.1.0,M10.5.0 → CST6 (changed to CST, no DST) • America/Mazatlan: MST7MDT,M4.1.0,M10.5.0 → MST7 (no DST) • America/Bahia_Banderas: CST6CDT,M4.1.0,M10.5.0 → CST6 (no DST) Note: Mexican border municipalities (Tijuana, Matamoros, Ciudad Juarez, Ojinaga) still observe DST following US rules - these were not changed. 2. Paraguay - Permanent Standard Time (October 2024) • America/Asuncion: <-04>4<-03>,M10.1.0/0,M3.4.0/0 → <-03>3 (permanent UTC-3, no DST)
- 8e5a97e onvif: bump
- 8e4aaa5 send4ntfy: print the actual command
- 33bc2ca send2ntfy: add script description
- ad7b050 scripts: make git hash updater to create a commit package with changes
- 9022598 wifi: update ws73v100 module name
- a40f1a8 makefile: add missing packages includes, clean up
- 1b7e75c web ui: pick up changes from stable branch
- 4f95d74 prudynt: remove json-c from dependencies
- c2cf474 onvif: use jct and mxml
- b979f7f prudynt: use jct instead of json-c
- f411be4 add a package for mxml v4.0.4
- 8137dc2 formatting
- 6f898d1 busybox: add stats
- d0fc280 busybox: remove wget
- d8993bb libwebsockets: bump
- bb793b4 Fix error output in telegrambot
- 5d80980 Fix badge link format in README.md
- bb3738c Update firmware compilation status badge.
- 7f690da disable two-way audio for low-memory devices
- 809a71e Change pre-release creation to regular release
- 8c81e3b Change fetch-depth to 0 in firmware-stable.yml
- 5b2244f tzselect: add non-interactive mode with partial matching
- 231d75c add short descriptions to scripts
- 73f73f6 add thingino streamer to the tree