================================================================================
Release version: 3.5.4
Date: 2025-05-06            SW version: 3.5.4               FW version: 3.5.4
SW commit: 407d046357       SW base: a99b5bb8d6
SW full ver: 354R2019       SW tag: T408_XCODER_FFMPEG/LIBXCODER_RELEASE_3.5.4
--------------------------------------------------------------------------------
[LIBXCODER] Add a workaround to handle continuous sequence changes (LGXCOD-3653)
[LIBXCODER] Fix asynchronized audio and video when fail to decode some packets (LGXCOD-3643)
[FFMPEG/OTHER] Initialize custom_sei_passthru variable in parser (LGXCOD-3638)
================================================================================
Release version: 3.5.3
Date: 2024-12-16            SW version: 3.5.3               FW version: 3.5.2
SW commit: a99b5bb8d6       SW base: b59def04f6
SW full ver: 353R2019       SW tag: T408_XCODER_FFMPEG/LIBXCODER_RELEASE_3.5.3
--------------------------------------------------------------------------------
[FFMPEG] First check-in of SCTE-104 support by libklvanc and libklscte35 (LGXCOD-3555)
[LIBAVCODEC/LIBXCODER] Add decoder params 'enableSkipFmtNoneCheck' to skip AV_PIX_FMT_NONE format check (LGXCOD-3632)
================================================================================
Release version: 3.5.2
Date: 2024-10-22            SW version: 3.5.2               FW version: 3.5.2
SW commit: b59def04f6       SW base: 1f143264e0
SW full ver: 352R2019       SW tag: T408_XCODER_FFMPEG/LIBXCODER_RELEASE_3.5.2
--------------------------------------------------------------------------------
[FFMPEG/LIBXCODER/OTHER] Introduce support for Android 14 in Logan
                         Launch ni_rsrc_mon_logan automatically to initialize resources at the start of Android system (LGXCOD-3630)
[LIBXCODER] Add reconf_demo on ni_device_test_logan.c (LGXCOD-3602)
[TOOLS] 1. Support t4xx_auto_upgrade.sh with new nvme-cli version (v2.8)
        2. Implement a version manager for t4xx_auto_upgrade.sh, with the current version set to 1.1 (LGXCOD-3605)
[LIBXCODER] Rename functions to avoid conflicts with Quadra libxcoder when build with static enabled option (LGXCOD-3623)
[LIBXCODER] Correct CRF value type in libxcoder print (LGXCOD-3614)
[LIBXCODER/TOOLS] Support FW logs dump through ni_rsrc_mon tool
                  - Add parameters '-D x' and '-k x'
		          - Fix the wrong LBA of dump FW log
                  - Fix Windows dump FW log tool and change to static compiling(LGXCOD-3615)
================================================================================
Release version: 3.5.1
Date: 2024-07-31            SW version: 3.5.1               FW version: 3.5.1
SW commit: 1f143264e0       SW base: 34e300a194
SW full ver: 351R2019       SW tag: T408_XCODER_FFMPEG/LIBXCODER_RELEASE_3.5.1
--------------------------------------------------------------------------------
[FFMPEG/LIBAVCODEC/LIBXCODER/OTHER] Add decoder params enableVuiInfoPassthru to support encoder VUI info follows decoder (LGXCOD-3581)
[LIBXCODER] Add strict check rule for user_data_type_code when parsing T35_SEI_CLOSED_CAPTION (LGXCOD-3541)
[LIBAVCODEC/LIBXCODER] Support feature that I frame can follow input stream (LGXCOD-3591)
[GSTREAMER] Fix low resolution decoder info error 
            Fix pic_timing lost on first frame
            Fix tee+queue wrong and golden data changed issue 
	    Fix Gstreamer ladder test (LGXCOD-3594, LGXCOD-3595, LGXCOD-3597) 
[LIBXCODER] Add flush buffer in fifo when sequence changes on FFmpeg-n3.1.1 (LGXCOD-3583)
[LIBXCODER] Support temperature query in ni_rsrc_mon_logan with '-o json2' option (LGXCOD-3592)
================================================================================
Release version: 3.5.0
Date: 2024-04-11            SW version: 3.5.0               FW version: 3.5.0
SW commit: 34e300a194       SW base: ea0ab77493
SW full ver: 350R2018       SW tag: T408_XCODER_FFMPEG/LIBXCODER_RELEASE_3.5.0
--------------------------------------------------------------------------------
[OTHER] Add support for GStreamer-1.22.2 (LGXCOD-3586) 
[LIBXCODER] Rename p2p related files and structure names with _logan (LGXCOD-3593)
[LIBXCODER] Skip query write buffer when sending EOS (LGXCOD-3582)
[FFMPEG/LIBAVCODEC/OTHER] Support FFmpeg-n4.4.2
			  - Add base FFmpeg-n4.4.2
                          - apply patch and modify VERSION
                          - add symblinks to source FFmpeg version
                          - update NETINT_FFMPEG_CHANGE_LIST.txt
                          - update release_sw.sh (LGXCOD-3572) 
[LIBXCODER] Fix FD leak issue in Android11 environment (LGXCOD-3574)
================================================================================
Release version: 3.4.0
Date: 2024-02-27            SW version: 3.4.0               FW version: 3.4.0
SW commit: ea0ab77493       SW base: 7ffb06c8d2
SW full ver: 340R2018       SW tag: T408_XCODER_FFMPEG/LIBXCODER_RELEASE_3.4.0
--------------------------------------------------------------------------------
[FFMPEG/OTHER] Add workaround for source stream frame rate probing issue in FFmpeg-n6.1 (LGXCOD-3566)
[FFMPEG/LIBAVCODEC/LIBXCODER/OTHER] Support FFmpeg-n6.1
                                    - resolved port conflicts
                                    - apply max eos query retry to decoder_read_desc
                                    - updated NETINT_FFMPEG_CHANGE_LIST
                                    - updated release_sw.sh (LGXCOD-3558)
[FFMPEG/LIBAVCODEC] Apply n5.1.2 NI patch to n6.1
                    - n5.1.2 patch is applied
                    - ni files are linked
                    - remove Texinfo 7.0 backport (LGXCOD-3558) 
[FFMPEG] Add base ffmpeg n6.1 (LGXCOD-3558)
[FFMPEG] For feature SCTE-35: 
         - Fix for limited playlist size and do not pass through SCTE-35 stream to HLS A/V result segments 
         - Handle auto-return case (LGXCOD-3544)
[TOOLS] Fix FFmpeg-n4.3.1 VS2019/VS2019dll compile error
        - Fix symlink path error
        - Add scte_35.c file compile. (LGXCOD-3554)
[FFMPEG/OTHER] Fix Windows compile error 
               - Fix type mismatch assembler in mathops.h in all FFmpeg versions
               - Add Texinfo version backwards-compatible because of some function removed in Texinfo 7.1 (LGXCOD-3553) 
================================================================================
Release version: 3.3.7
Date: 2024-01-04            SW version: 3.3.7               FW version: 3.3.7
SW commit: 7ffb06c8d2       SW base: 8fd8596ce8
SW full ver: 337R2018       SW tag: T408_XCODER_FFMPEG/LIBXCODER_RELEASE_3.3.7
--------------------------------------------------------------------------------
[FFMPEG/OTHER] Enable xoder-params 'GenHdrs=1' by default in FFmpeg-n3.1.1 to fix segfault (LGXCOD-3549)
[FFMPEG] For feature SCTE-35: 
		 - Fix duplicated events, unmatched event id, inaccurate segmenting, and state setting
		 - Fix duration calculation
         - Handle early arrival of splice info
		 - Add more logging and handling for debugging (LGXCOD-3544, LGXCOD-3530) 
[FFMPEG] Initialize custom SEI to fix the error in the "flags" field parsed by FFprobe in FFmpeg-n4.4 (LGXCOD-3545) 
[FFMPEG] Improve run_ffmpeg.sh and run_ffmpeg_win.sh (LGXTA-7757)
[TOOLS] Add exit code check in cold upgrade nvme command (LGXCOD-3525)
[FFMPEG] Adding return code checker for run_ffmpeg*.sh (LGXTA-7757) 
[FFMPEG] Fix a segfault on HW decoding with "out=hw" in FFmpeg-n3.4.2  (LGXCOD-3523)
================================================================================
Release version: 3.3.6
Date: 2023-11-16            SW version: 3.3.6               FW version: 3.3.6
SW commit: 8fd8596ce8       SW base: 0ece8e6a93
SW full ver: 336R2018       SW tag: T408_XCODER_FFMPEG/LIBXCODER_RELEASE_3.3.6
--------------------------------------------------------------------------------
[LIBXCODER] Fix issue when attempting to open a decoder/encoder device but no available device (LGXCOD-3535)
================================================================================
Release version: 3.3.5
Date: 2023-11-07            SW version: 3.3.5               FW version: 3.3.5
SW commit: 0ece8e6a93       SW base: 5e4e1bed74
SW full ver: 335R2018       SW tag: T408_XCODER_FFMPEG/LIBXCODER_RELEASE_3.3.5
--------------------------------------------------------------------------------
[FFMPEG] Ignore repeated same scte-35 insert events (LGXCOD-3529) 
[FFMPEG/LIBAVCODEC/LIBXCODER/OTHER] Add decoder flush buffer function (LGXCOD-3517, LGXCOD-3531)
[FFMPEG/OTHER] Add scte_35.o to obj dependencies to provide a fix for FFmpeg link failure when in shared lib mode (LGXCOD-3527)
================================================================================
Release version: 3.3.4
Date: 2023-10-31            SW version: 3.3.4               FW version: 3.3.4
SW commit: 5e4e1bed74       SW base: 14306c4a43
SW full ver: 334R2017       SW tag: T408_XCODER_FFMPEG/LIBXCODER_RELEASE_3.3.4
--------------------------------------------------------------------------------
[FFMPEG/LIBXCODER] Support Android arm 32bit (LGXCOD-3524)
[FFMPEG/OTHER] Add SCTE-35 cue-out/in tag insertion to HLS playlist, force IDR at cue-out/in at encoding for FFmpeg-n4.3.1 (LGXCOD-3520) 
[APIEXAMPLES] Improve application 'ni_multi_thread_transcoding' to demo the usage of HW bypass transcoding (LGXCOD-3509)
[FFMPEG] Fix a segfault on HW decoding with "out=hw" 
         Add encoder codec type check to avoid setting other codecs like Subtitle/Audio (LGXCOD-3523)
[LIBXCODER] Change default value of pts_correction_last_dts and pts_correction_last_pts to INT64_MIN (LGXCOD-2576, LGXCOD-3521)
================================================================================
Release version: 3.3.3
Date: 2023-09-21            SW version: 3.3.3               FW version: 3.3.3
SW commit: 14306c4a43       SW base: 3c2887865b
SW full ver: 333R2017       SW tag: T408_XCODER_FFMPEG/LIBXCODER_RELEASE_3.3.3
--------------------------------------------------------------------------------
[LIBAVCODEC] Fix incorrect frame FIFO size (and subsequent coredump) when timebase denominator is very large (LGXCOD-3511)
[LIBAVCODEC/LIBXCODER] Optimize yuv zero copy function during encoding
                       - Add WriteMeta Data LBA
                       - Add SW enc allocate function to allocate ni_frame_t
                       - Rename frame alloc function ni_logan_frame_buffer_alloc_swenc -> ni_logan_frame_zerocopy_buffer_alloc
                       - Avoid zero copy when frame resolution requires padding (LGXCOD-3495) 
[LIBAVCODEC] Add debug log when frame dropped due to AV_PKT_FLAG_DISCARD (LGXCOD-2468)
[LIBXCODER] In official xcoder-params names use hyphens in place of underscores
            There is a function to translate underscore in user input xcoder-params to hyphens (LGXCOD-3506)
[LIBXCODER] Support decimal number for crf with a maximum of two decimal places
			Support reconfig of CRF, ipRatio, pbRatio
            Add xcoder-param "ReconfDemoMode=7" to demonstrate reconfig of CRF, ipRatio, pbRatio (LGXCOD-3471)
[LIBXCODER] Add xcoder-params "ipRatio" and "pbRatio" to set quality factor between I and P frames and between P and B frames during CRF encoding for H265 only (LGXCOD-3480)
[LIBXCODER] Fix a case in libxcoder timestamp handling where first frame PTS/DTS was incorrectly set to 0 when they should be set to NOPTS_VALUE so that FFmpeg may handle their initial TS offsets properly (LGXCOD-2576)
[LIBAVCODEC] Fix a segfault on Android11 in avcodec_open2() function (LGXCOD-3470)
[LIBAVCODEC/LIBXCODER] Fix overcapacity stuck trying to drain during invalid session ID
                       - Quit ffmpeg transcode loop on nvme io failure
                       - Set draining and eos flags at the same time to return AVERROR_EOF in both the ff_xcoder_dec_send() and ff_xcoder_dec_receive() functions (LGXCOD-3499)
[APIEXAMPLES] Add some code comments in apiexamples (LGXCOD-3448)
[LIBXCODER] Add "fLAT" to latency measurement mode to print frame delay (LGXCOD-3484)
================================================================================
Release version: 3.3.1
Date: 2023-08-21            SW version: 3.3.1               FW version: 3.3.1
SW commit: 3c2887865        SW base: 6cf4901a7
SW full ver: 331R2015       SW tag: T408_XCODER_FFMPEG/LIBXCODER_RELEASE_3.3.1
--------------------------------------------------------------------------------
[FFMPEG/LIBXCODER/OTHER] Add P2P (Peer-to-Peer) support (LGXCOD-3415)
================================================================================
Release version: 3.3.0
Date: 2023-07-27            SW version: 3.3.0               FW version: 3.3.0
SW commit: 6cf4901a7        SW base: 6f483c558
SW full ver: 330R2014       SW tag: T408_XCODER_FFMPEG/LIBXCODER_RELEASE_3.3.0
--------------------------------------------------------------------------------
[OTHER] Update NETINT_FFMPEG_CHANGE_LIST.txt for v3.3.0 (steven.zhou)
[LIBXCODER] Add support for new decoder low delay mode that supports streams with B-frames:
            lowDelayMode=0: disable
            lowDelayMode=1: enable low delay mode for in sequence streams (ie. no B-frames)
            lowDelayMode=2: enable new low delay mode for streams with B-frames (LGXCOD-3411)
[LIBXCODER] Fix libxcoder demo app incorrect handling for odd width/height (LGXCOD-3439)
[LIBXCODER] Add ni_logan_device_dec_session_write() to libxcoder demo app to embed H264 headers scan/save as part of decoder sending and flushing (LGXCOD-3438)
[LIBXCODER] Redirect libxcoder ni_log() to Android system log when compiling for Android (LGXCOD-3432)
[LIBXCODER] Add more checks in ni_enc_api_logan.c for session context (LGXCOD-3219)
[FFMPEG/LIBAVCODEC/LIBXCODER] Refactor code from FFmpeg-n3.1.1/libavcodec/nidec_logan.c and FFmpeg-n3.1.1/libavcodec/nicodec_logan.c to libxcoder_logan/source/ni_dec_api_logan.c (LGXCOD-3274)
[LIBAVCODEC] Fix return codes for decoder functions ff_xcoder_logan_dec_send() and ff_xcoder_logan_dec_receive() (LGXCOD-3437)
[LIBXCODER] Fix lack of SEI when forcing IDR (LGXCOD-3419)
[LIBXCODER] Fix file handle leaks in libxcoder caused by unclosed shell commands (LGXCOD-3429)
[LIBXCODER] Add xcoder-param "chromaQpOffset" to tune chroma vs luma quality (LGXCOD-3362)
[LIBAVCODEC/LIBXCODER] Change "-bestload" param in libavcodec decoder/encoders to select by best real time load
                       Previous behavior can be accessed with "-bestmodelload" (LGXCOD-3410)
[LIBXCODER] Limit "crf" value to 0-51 (wu.zhang)
[LIBXCODER] Add xcoder-params "maxFrameSize", "maxFrameSize_Bits", and "maxFrameSize_Bytes" to limit max frame size for H265 encoder
            - "maxFrameSize" sets packet size per frame in bits (eg. maxFrameSize=1000)
            - "maxFrameSize=ratio[#]" can set packet size per frame as a multiple of average frame packet size as determined by encoder (eg. maxFrameSize=ratio[8])
            - Disabled by default
            - Add support for reconfig of maxFrameMode and maxFrameArg (LGXCOD-3375, LGXCOD-3441)
[LIBAVCODEC/LIBXCODER] Add support for new encoder low delay mode that better balances throughput at slight expense to latency:
                       lowDelay=0: disable
                       lowDelay=1: enable low delay mode to drain encoder output buffer every loop
                       lowDelay=2: enable low delay mode to only drain encoder output buffer until number of frame packets buffered is <= gop size (LGXCOD-3403)
[LIBXCODER] Fix null pointer dereference issue caused by ni_logan_rsrc_get_device_context() return NULL
            Fix some free and counter issue on Windows when handling device context (LGXCOD-3397)
[LIBXCODER] Hot fixes from WangSu:
            - Check the encoder output packet size to avoid out of bounds memory access
            - Add more checking for the share memory to avoid coredump (LGXCOD-3359)
[FFMPEG] In build_ffmpeg.sh add warning when building Netint unsupported FFmpeg versions for Windows on MSYS64 (LGXCOD-3392)
[LIBXCODER] Fix a bug in ni_rsrc_mon_logan that creates zombie processes when a basic command to read numa_node system file fails (LGXCOD-3401)
[FFMPEG] Add comment in build_ffmpeg.sh to show '--static' required glibc-static (LGXCOD-3396)
================================================================================
Release version: 3.2.3
Date: 2023-03-26            SW version: 3.2.3               FW version: 3.2.3
SW commit: 6f483c558        SW base: 64df3f5b9
SW full ver: 323R2013       SW tag: T408_XCODER_FFMPEG/LIBXCODER_RELEASE_3.2.3
--------------------------------------------------------------------------------
[FFMPEG] Fix NI decoder compatibility issue with stream_loop enabled
		 Skip sending null packet when stream_loop is enabled (LGXCOD-3364)
[FFMPEG] Fix compiling issue when disable Logan
         1. modify the configure file to fix ni_hwuploader issue
         2. add Logan macro to fix h264/hevc custom SEI passthru issue
         3. remove unnecessary code in yuv444to420 and yuv420to444 filters
         4. support SW custom SEI passthru in FFmpeg-g94cdf82 (LGXCOD-3371)
[LIBXCODER/OTHER] Support for Android9 and Android11 together
                  Add NETINT's customized Android service: nidec.
                  The service use HIDL binderized mode, and build based on AOSP (LGXCOD-3309)
[LIBXCODER] Fix wrong output "ni_rsrc_mon_logan -o json" from python Popen on multi-card (LGXCOD-3345)
[LIBXCODER] Modify predefinition macro usage for OS platform. Change the macro names on MAC and Android to __APPLE__ and __ANDROID__
================================================================================
Release version: 3.2.2
Date: 2023-03-06            SW version: 3.2.2               FW version: 3.2.2
SW commit: 64df3f5b9        SW base: 6031e810b
SW full ver: 322R2013       SW tag: T408_XCODER_FFMPEG/LIBXCODER_RELEASE_3.2.2
--------------------------------------------------------------------------------
[FFMPEG/LIBAVCODEC/LIBXCODER] Codes improvements
                              1. move custom SEI handling to libxcoder;
                              2. split ni_logan_encoder_params_t to ni_logan_encoder_params_t and ni_logan_decoder_params_t;
                              3. remove the support of enable_multi_threaded_nienc;
                              4. remove the support of is_dec_pkt_512_aligned;
                              5. fix some corner bugs when code review;
                              6. refactor nienc_logan.c in FFmpeg-n3.1.1, move some codes to libxcoder new file ni_enc_api_logan.c; (LGXCOD-3219)
[APIEXAMPLES] Modify readme file and help usage for demo ni_kuaishou_multi_transcoding_LGXCOD-2535.c (LGXCOD-2535)
[LIBXCODER] Support two json output formats ('-o json' and '-o json1') for ni_rsrc_mon_logan
            Remove extraneous printouts from ni_rsrc_mon_logan when loglevel is set below 'info' (LGXCOD-3345)
[APIEXAMPLES] Port from quadra to logan for more nuanced apiexample compile support depending on FFmpeg version
              Add support for FFmpeg-n3.4.2 compile for many API examples that did not used to register formats/codecs/filters
              Fix to README for ni_tencent_multithread_encode_LGXCOD-2404
              Fix segfault message when exiting before transcoding starts in ni_transcode_filter.c (LGXCOD-2820, QDFW-2991)
[LIBXCODER] Update help text for libxcoder_logan/configure (LGXCOD-2498)
[FFMPEG] Update the new hevc vps/sps/pps header when sequence changing on FFmpeg-n3.1.1 (LGXCOD-3326)
[OTHER] Update NETINT_FFMPEG_CHANGE_LIST (LGXCOD-3286)
[FFMPEG/TOOLS] For ni_logan_yuv420to444 and ni_logan_yuv444to420 filters, add 'mode' arg to select between different splitting modes
               Old splitting mode=1 has independently viewable output0
               New splitting mode=0 (default) alleviates horizontal joining line in middle of frame when height is not multiple of 32 and bitrate is not high (LGXCOD-3264)
[LIBXCODER] Fix compile issue in android environment (LGXCOD-3312)
[FFMPEG] Move AV_PIX_FMT_NI_LOGAN to the end of the enum list, right before AV_PIX_FMT_NB (LGXCOD-3324)
[LIBXCODER] Add color full range flag check in vui setting (LGXCOD-3322)
[LIBAVCODEC/LIBXCODER] Add limitation of fifo expand size to avoid memory leakage (LGXCOD-3293)
[LIBAVCODEC] Fix ffmpeg stuck issue when decoder sends packets error (LGXCOD-3154)
[FFMPEG] Specify encoder/decoder by NVMe block for NETINT hwupload filter (LGXCOD-3276)
[TOOLS] Fix bug in t4xx_quick_installer.sh where successful installation of libxcoder results in wrong outcome message 
        Remove references to libxcoder old nvme driver as the feature has been removed (LGXCOD-3241)
[FFMPEG/OTHER] Fix software decoding frames drop issue for mpeg and mpegts with NETINT FFmpeg patch (LGXCOD-2603)
[FFMPEG] Add maximum bitrate descriptor in mpegts Program Map Table
         - support '-mpegts_max_bitrate' in mpegts muxer
         - support '-mpegts_max_video_bitrate' in mpegts muxer (LGXCOD-3286)
[LIBXCODER] Add option to select encoder/decoder by NVMe block in xcoder_logan demo (LGXCOD-3277)
================================================================================
Release version: 3.2.1
Date: 2022-12-22            SW version: 3.2.1               FW version: 3.2.0
SW commit: 6031e810b        SW base: b3bd6d2c6
SW full ver: 321R2013       SW tag: T408_XCODER_FFMPEG/LIBXCODER_RELEASE_3.2.1
--------------------------------------------------------------------------------
[APIEXAMPLES] Fix dynamic reconfig of min/max QP in ni_encode_video.c; Add the test file reconfRcMinMax.txt (LGXCOD-3266)
[LIBAVCODEC/LIBXCODER] Add xcoder-params "disableTimingInfo" to provide an option for disabling timing info in VPS/VUI (LGXCOD-3292)
================================================================================
Release version: 3.2.0
Date: 2022-12-05            SW version: 3.2.0               FW version: 3.2.0
SW commit: b3bd6d2c6        SW base: a620e5f7b
SW full ver: 320R2013       SW tag: T408_XCODER_FFMPEG/LIBXCODER_RELEASE_3.2.0
--------------------------------------------------------------------------------
[OTHER] Update NETINT_FFMPEG_CHANGE_LIST.txt for release v3.2.0 (LGXCOD-3202)
[LIBXCODER] Add ni_rsrc_api_logan.h:ni_logan_check_hw_info() to recommend which card to use based on certain parameters (LGXCOD-3218)
[LIBAVCODEC/LIBXCODER] Add option on Windows to select encoder/decoder by NVMe block. eg. "-decname /dev/nvmeXn1", "-encname /dev/nvmeXn1" (LGXCOD-3245)
[LIBAVCODEC] Remove incorrect assignment of avctx->internal->last_pkt_props->duration to frame->pkt_duration during decoding (LGXCOD-3239)
[FFMPEG] Add support for FFmpeg-n5.1.2 (LGXCOD-3242)
[APIEXAMPLES] Fix frame loss in tile encoding/transcoding API examples due to missing encoder flush (LGXCOD-3270)
[LIBXCODER] Fix ni_rsrc_update_logan device selection error on some NVMe multi-path enabled systems when block path is used as input (LGXCOD-3273)
[APIEXAMPLES/FFMPEG/LIBAVCODEC/LIBXCODER] Add support for dynamic reconfig of max delta QP and min/max QP of I/P/B frames during rate control through AVFrameSideData (LGXCOD-3266)
[LIBXCODER] Use ni_logan_device_session_context_init() and ni_logan_device_session_context_clear() for ni_logan_session_context_t (LGXCOD-3269)
[TOOLS] T4xx_quick_installer.sh support for MacOS
        Backport fixes from quadra_quick_installer.sh including nvme-cli version considerations for gcc version >11 (LGXCOD-3241)
[FFMPEG] Fix for lack of NI custom SEI side data size (ni_custom_size) when using SW decoder custom SEI passthru on FFmpeg-n3.4.2 and n3.1.1 (LGXTA-5529)
================================================================================
Release version: 3.1.3
Date: 2022-10-31            SW version: 3.1.3               FW version: 3.1.2
SW commit: a620e5f7b        SW base: 7066705d5
SW full ver: 3.1.3          SW tag: T408_XCODER_FFMPEG/LIBXCODER_RELEASE_3.1.3
--------------------------------------------------------------------------------
[APIEXAMPLES/LIBAVCODEC/LIBXCODER] Add option to select encoder/decoder by NVMe block. eg. "-decname /dev/nvmeXn1", "-encname /dev/nvmeXn1" (LGXCOD-3245)
[LIBXCODER] Set correct search range in rotated_array_binary_search() to find missed PTS when PTS queue is wrapped around  (LGXCOD-3250)
[LIBXCODER] Fix json format for ni_rsrc_mon_logan printout (LGXCOD-3234)
[LIBAVCODEC] Skip profile checking when the profile is unknown (LGXCOD-3258)
[LIBXCODER] Provide option in init_rsrc_logan and ni_rsrc_mon_logan to init no cards if not all cards can be successfully initialized (LGXCOD-3217)
[APIEXAMPLES/LIBAVCODEC/LIBXCODER] Fix a memory leak in nienc frame buffer
                                   Update AVFrame extended_data wild pointer (LGXCOD-3233)
[LIBXCODER] Avoid decoder hang caused by large pic_reorder_delay (LGXCOD-3252)
[FFMPEG] Codec_id is added to better support co-existence of Quadra and Logan in FFmpeg-n5.0 (LGXCOD-3240)
[APIEXAMPLES/LIBXCODER] Add demo ni_transcode_filter.c to demonstrate general filter (LGXCOD-3209)
[APIEXAMPLES] Initialize all AVPacket in stack of apiexamples to {0} (LGXCOD-3230)
================================================================================
Release version: 3.1.1
Date: 2022-09-23            SW version: 3.1.1               FW version: 3.1.1
SW commit: 7066705d5        SW base: 477d2c89f
SW full ver: 3.1.1          SW tag: T408_XCODER_FFMPEG/LIBXCODER_RELEASE_3.1.1
--------------------------------------------------------------------------------
[LIBXCODER] Support json format for ni_rsrc_mon_logan printout (LGXCOD-3234)
[LIBAVCODEC/LIBXCODER] Some struct, const, and functions are renamed to better support co-existence of Quadra and Logan (LGXCOD-3240)
[FFMPEG/LIBAVCODEC/LIBXCODER] Intra refresh reset is accomplished by forcing an IDR with a new parameter intraRefreshResetOnForceIDR=1
                              Adjust repeat header position for intra refresh resetting (LGXCOD-3224)
================================================================================
Release version: 3.1.0
Date: 2022-09-16            SW version: 3.1.0               FW version: 3.1.0
SW commit: 477d2c89f        SW base: 417c4c763
SW full ver: 3.1.0          SW tag: T408_XCODER_FFMPEG/LIBXCODER_RELEASE_3.1.0
--------------------------------------------------------------------------------
[LIBAVCODEC/LIBXCODER] Restore previous session run state on sequence change (LGXCOD-3236)
[APIEXAMPLES] Fix Makefile_external in tools/apiexample (LGXCOD-3237)
[APIEXAMPLES] Fix API example build failure
              Fix unitialized encoded packet (LGXCOD-3230)
[FFMPEG] Fix FFmpeg-n5.0 soft decoding patch (LGXCOD-3229)
[TOOLS] Use new libxcoder binaries path in t4xx_quick_installer.sh (LGXCOD-2685)
[LIBXCODER] Move savePkt to ni_logan_decoder_params_set_value() (LGXCOD-3227)
[FFMPEG/LIBXCODER] Add MacOS libxcode compile (LGXCOD-3179)
[TOOLS] Set warm upgrade fw_activate timeout to 120s (LGXCOD-3222)
[LIBXCODER] Fix h265 VUI size mismatch in HW mode (LGXCOD-3228)
[FFMPEG/LIBAVCODEC/LIBXCODER] XCoder API thread safe (LGXCOD-3220)
[FFMPEG/LIBAVCODEC/OTHER/TOOLS] Add support for FFmpeg-n5.0 (LGXCOD-3216)
[LIBAVCODEC/LIBXCODER] Move parameters to decoder xcoder-params and delete nvme_io_size (LGXCOD-2949)
[LIBXCODER] Fix a bug in Android that exceeded the maximum value of int type (LGXCOD-3212)
[OTHER] Add Adobe Premiere Pro plugin for logan (LGXCOD-3031)
[LIBAVCODEC] Fix custom SEI length issue(LGXCOD-3203)
[FFMPEG] Move libxcoder from FFmpeg GPL library list to permissive library list (LGXCOD-3211)
[FFMPEG] Delete unnecessary log print in FFmpeg-n3.4.2, this log has been removed from FFmpeg-n4.1.3 and later (LGXCOD-3207)
[LIBAVCODEC] Fix multi custom SEI passthrough copy length (LGXCOD-3208)
[LIBAVCODEC/LIBXCODER] Change the framerate detection method, and add the reconfig bitrate with VFR mode. Except FFmpeg-n3.1.1
                       Add ni_transcoding_variable_frame_rate.c to test the VFR feature (LGXCOD-3195)
[FFMPEG/LIBAVCODEC/LIBXCODER/OTHER/TOOLS] Support DLL for MSYS64 build (LGXCOD-3190)
[LIBAVCODEC/LIBXCODER/APIEXAMPLES] Enable explicit HEVC RPL for tile codec
                                   Fix uninitialized SAR value tools/apiexample/ni_hevc_tile_encoding.c (LGXCOD-3151)
[APIEXAMPLES] Add SAR/DAR parameter setting for HEVC tile codec
              Add VS2019 solution for API example (LGXCOD-3145)
[LIBXCODER] Update to make util programs help text consistent (LGXCOD-3193)
================================================================================
Release version: 3.0.0
Date: 2022-07-22            SW version: 3.0.0               FW version: 3.0.0
SW commit: 417c4c763        SW base: b66af8f74
SW full ver: 3.0.0          SW tag: T408_XCODER_FFMPEG/LIBXCODER_RELEASE_3.0.0
--------------------------------------------------------------------------------
[OTHER] Review and update NETINT_FFMPEG_CHANGE_LIST.txt for v3.0.0 (LGXCOD-3197)
[FFMPEG/LIBAVCODEC/LIBXCODER/OTHER] Libxcoder source/header files, resource pool files, executables, API functions, data structs,
                                    consts, etc. are renamed to have a separate libxcoder_logan library to distinguish from libxcoder_quadra
                                    Some struct, const, typedef, and functions such as ni_log can be used in both Quadra and Logan (LGXCOD-3183)
[OTHER] Add Netint Gstreamer patch to git (LGXCOD-3107)
[FFMPEG] Fix FFmpeg compile ARM cross-compile with android NDK (LGXCOD-3188)
[LIBAVCODEC/LIBXCODER] Add a new repeatHeaders mode 2: repeat headers on I frames but not intra refreshed key frames (LGXCOD-3175)
[LIBAVCODEC] Fix a segfault during VFR encoding (LGXCOD-3178)
[LIBAVCODEC] For tile encoding, prepend sequence header for first packet containing key frame (LGXCOD-3063)
[LIBXCODER] Make ni_rsrc_api robust against some failures to get resource (LGXCOD-3165)
[LIBXCODER] Fix race-condition when multiple streams are started at same time causing ni_rsrc_mon crash (LGXCOD-2845)
[LIBXCODER] Refactor of ni_rsrc_init() and ni_rsrc_get_local_device_list()
            Limit resource discovery and parsing to MAX_DEVICE_CNT to prevent segfaults
            Replace NI_MAX_HW_DECODER_COUNT and NI_MAX_HW_ENCODER_COUNT with MAX_DEVICE_CNT
            Fix bug where number of netint cards init'd is reduced by non-netint nvme devices
            Replace MAX_DEVICE_NAME_LEN with NI_MAX_DEVICE_NAME_LEN and move definition to ni_defs.h (LGXCOD-3161)
[APIEXAMPLES] Add to external apiexamples: ni_multi_thread_encode_video.c, ni_multi_thread_transcoding.c, ni_encode_video_dynamic_resoultion.c (LGXCOD-3166)
[LIBAVCODEC/LIBXCODER/TOOLS] Porting of libxcoder API refactor to main develop branch
                             Removed libxcoder non-regular i/o and old nvme driver code and build options
                             Regular i/o macro clean up; libxcoder API update usage ported to ffmpeg 4.4 (LGXCOD-3157)
[OTHER] Update NETINT_FFMPEG_CHANGES_LIST.txt for v2.7.0 (LGXCOD-3170)
[FFMPEG] Fix HEVC multi-slice soft decoding (LGXCOD-3158)
[LIBXCODER] Fix use of b_error in ni_util.c functions (LGXCOD-2769)
[TOOLS] MSVS2019 project improvements
        add install_ffmpeg_headers.sh to copy FFmpeg headers
        add 1-click batch files for installing specific FFmpeg versions
        remove --path from win_symlink_tool.sh as it does not work for windows path backslash
        add check for bash-env before trying to run bash scripts from batch files
        update README.txt
        replace pthread with ni_pthread method
        Add ni_av_codec and ni_bitstream to MSVS2019 project (LGXCOD-3145)
[FFMPEG] Add "--static" option to build_ffmpeg.sh (LGXCOD-2673)
[LIBAVCODEC] Reject unsupported/improper profiles for decoding (LGXCOD-3126)
[LIBAVCODEC] Fix FFmpeg compiling issue with "--nienc_multi_thread" (LGXCOD-3155)
[FFMPEG/LIBXCODER] Support netint SEI passthrough in SW decoding (LGXCOD-3092)
================================================================================
Release version: 2.7.0
Date: 2022-06-27            SW version: 2.7.0               FW version: 2.7.0
SW commit: b66af8f74        SW base: 8fe909c51
SW full ver: 270R2013       SW tag: T408_XCODER_FFMPEG/LIBXCODER_RELEASE_2.7.0
--------------------------------------------------------------------------------
[APIEXAMPLES] Use AVframe linesize for YUV IO (LGXCOD-3156)
[LIBXCODER] Fix android crash bug because pts value out of int64 value range (LGXCOD-3152)
[LIBXCODER] MOV demuxer discards frames due to wrong CTS (LGXCOD-3120)
[APIEXAMPLES/LIBAVCODEC] Use system link for FFmpeg HEVC tile codec files (LGXCOD-3150)
[TOOLS] Use one script 'win10_automated_compiling_ffmpeg.bat' for all MSVS2019 FFmpeg compilation
        Add tools/MSVS2019/win10_download_and_patch_ffmpeg.bat (LGXCOD-3131)
[LIBXCODER/TOOLS] Fix VS2019 compile error (LGXCOD-3140)
[FFMPEG/LIBAVCODEC/LIBXCODER] Netint decoder/encoder GStreamer support, v4.2.1 and newer only, work only with patch gstreamer.ni.patch.20220524 (LGXCOD-3133)
[APIEXAMPLES/FFMPEG/LIBAVCODEC/LIBXCODER/TOOLS] Support libxcoder/FFmpeg DLL build
                                                Add demux list for VS2019 project
                                                Update FFmpeg-n4.3.1 VS2019 config header (LGXCOD-3145)
[APIEXAMPLES/LIBXCODER] Replace NI_MAX_SW_INSTANCE_COUNT with NI_MAX_CONTEXTS_PER_HW_INSTANCE (change from 8 to 32)
                        Use heap instead of stack for ni_device_t or arrays of ni_device_info_t (LGXCOD-3079)
[LIBAVCODEC] Set full range for JPEG encoding (LGXCOD-3138)
================================================================================
Release version: 2.6.3
Date: 2022-05-24            SW version: 2.6.3               FW version: 2.6.3
SW commit: 8fe909c51        SW base: aba9f2c89
SW full ver: 263R2013       SW tag: T408_XCODER_FFMPEG/LIBXCODER_RELEASE_2.6.3
--------------------------------------------------------------------------------
[LIBAVCODEC/LIBXCODER] Fix frame drop with ffmpeg vsync option (LGXCOD-2184)
[LIBAVCODEC/LIBXCODER] Add code to set stream priority with dec/enc param '-set_high_priority 1' (LGXCOD-3108)
[LIBXCODER/OTHER] Use MIT-0 license for libxcoder, add main LICENSE file for libxcoder (LGXCOD-3114)
[LIBXCODER] Refactor some functions which previously had windows and linux versions (LGXCOD-2878)
[TOOLS] Fix bug in t4xx_auto_upgrade.sh where all cards are skipped when using --skip_same_ver_upgrades (LGXCOD-3112)
[LIBXCODER] Fixed an issue where dts_queue was not cleaned up when frames were dropped (LGXCOD-3118)
[LIBXCODER] Modify ni_rsrc_refresh to fix multi-thread calls to it (LGXCOD-3105)
[LIBXCODER] Add DEC error stream retrieval API for VPU recovery (For 2.6) (LGXCOD-3049)
[LIBAVCODEC] 1. VFR doesn't work when coded_picture_number is zero, we use the api_ctx->frame_num to replace the coded_picture_number
             2. Do not reconfig the vui info, when reconfig the bitrate (LGXCOD-3034)
[LIBXCODER] Add Android openMax IL support (LGXCOD-3083)
[LIBXCODER]Fix ni packet copy memcpy issue for dev (LGXCOD-3062)
[LIBXCODER] Change NVME async-io into sync-io for windows (LGXCOD-3086)
[LIBXCODER/TOOLS] Use ni_pthread_*() in libxcoder (LGXCOD-3075)
[FFMPEG/OTHER] Fix mpegts_enc.c first_pcr initialization (LGXCOD-3058)
[APIEXAMPLES] Fix tile codec fps statistics error
              Fix FPS statistics for tile codec (LGXCOD-3072)
[APIEXAMPLES] Fix MP4 container transcoding in API examples (LGXCOD-3063)
[APIEXAMPLES] Support 10bit tile decoding
              Support YUV420P10LE for API examples (LGXCOD-3064)
[LIBXCODER] Change permission for resource pool files on host (LGXCOD-3030)
[LIBAVCODEC] Support yuv bypass sequence change on FFmpeg-n4.4
             Use receive_packet interface for encoder that can decouple with send_frame
             interface. This is good for yuv bypass sequence change feature. (LGXCOD-2932)
[LIBAVCODEC/LIBXCODER] Regularize Coding Standard and Logging Formatting
                       As for FFmpegXcoder the coding style in libavcodec and libxcoder needs to be
                       regularized especially for logging formatting. For instance in the function
                       logging the function names would be printed to trace the running routines.
                       However there are many wrong function names which might be copied carelessly or
                       when the function names have changed, the names in the logging are not changed
                       in time. Therefore we’d better utilize __FUNCTION__ macro to maintain those
                       logging. At last due to the workload, an independent task is necessary to be
                       opened for it. (LGXCOD-3032)
[LIBXCODER] Add encoder stats after encoder session complete (LGXCOD-3025)
[LIBXCODER] Add spec build for RHEL6
            As the requirements from Wangsu client, they are going to run the Xcoder on
            RHEL 6.5 and asking for -fno-exceptions cppflags option in libxcoder Makefile.
            As well they request canceling the union definition in ni_encoder_params_t due
            to their GCC version. Normally the clients would not like to upgrade their
            running environment. So I think we need to maintain a spec build for RHEL 6. (LGXCOD-3021)
[APIEXAMPLES/LIBXCODER] Fix pts issue, and add demo for test (LGXCOD-2942)
[LIBAVCODEC] Fix EOS set by mistake
             The EOS indicator might be lost during decoder VPU recovery and it should be
             restored rightly. As for YUV bypass the original code might set the EOS by
             mistake because of the data flow -- the draining packet might come earlier than
             usual.
             Fix typo in sequence headers packet caching (LGXCOD-2974, LGXCOD-3024)
[APIEXAMPLES] Fix hw yuvbypass issue on encoding example (LGXCOD-2946)
================================================================================
Release version: 2.6.2
Date: 2022-01-30            SW version: 2.6.2               FW version: 2.6.2
SW commit: aba9f2c89        SW base: 4abf15fd9
SW full ver: 262R2012       SW tag: T408_XCODER_FFMPEG/LIBXCODER_RELEASE_2.6.2
--------------------------------------------------------------------------------
[LIBXCODER] Fix union definition for RHEL 6 target
            Add "-fno-exception" build flag for RHEL6 (LGXCOD-3021)
[LIBXCODER] Fix VS2019 debug xcoder_test failure
            Random values in uninitialized array. Need exact variable definition. (LGXCOD-2999)
[LIBXCODER] Fixed a low probability issue, keep_alive thread may conflict with normal VPU recovery process. (LGXCOD-2989)
[LIBXCODER] Fix a memory leak for ni_rsrc_get_device_pool() API (LGXCOD-3006)
[LIBXCODER] Report decoder stats after decoder session completed (LGXCOD-2998)
[LIBAVCODEC] Fix yuvbypass core dump (LGXCOD-3000)
[LIBAVCODEC/LIBXCODER] Fix keep alive timeout issue for FFmpeg-n3.1.1 (LGXCOD-2979)
[LIBAVCODEC] Fix FFmpeg-n4.1.3 segment fault in yuvbypass mode (LGXCOD-2983)
[FFMPEG/OTHER] Change codec id 'hev1' to 'hvc1' in FFmpeg-n3.1.1/libavformat/movenc.c (LGXCOD-2978)
[FFMPEG/LIBAVCODEC/LIBXCODER] Fix sequence change issue in yuvbypass mode (LGXCOD-2897)
[FFMPEG/LIBAVCODEC/LIBXCODER/TOOLS] Develop revb yuv bypass for windows (LGXCOD-2916)
================================================================================
Release version: 2.6.1
Date: 2021-12-23            SW version: 2.6.1               FW version: 2.6.1
SW commit: 4abf15fd9        SW base: 0d5c795d1
SW full ver: 261R2012       SW tag: T408_XCODER_FFMPEG/LIBXCODER_RELEASE_2.6.1
--------------------------------------------------------------------------------
[LIBXCODER] Remove assert for fps_denominator. If fps_denominator is 0 during model load calculation, assume 30fps for model load (LGXCOD-2977)
[LIBAVCODEC/LIBXCODER] Support bitrate control with VFR (LGXCOD-2928)
[LIBAVCODEC] Cache sequence headers to append to first frame after decoder recovery (LGXCOD-2951, LGXCOD-2974)
[FFMPEG/LIBAVCODEC/OTHER] Porting FFmpeg-n3.1.1 to develop (LGXCOD-2947)
[LIBXCODER] Removing libxcoder/MSVS2019/nvme-1.5 as it triggers false positive on gDrive AVscan (QDFW-1567)
[LIBXCODER] Add support for H.265 multi-slice (LGXCOD-2939)
[APIEXAMPLES/LIBXCODER/TOOLS] For bash scripts, use #!/usr/bin/env bash as shebang. Add execute bit (LGXCOD-2927)
[FFMPEG] Fix links to init_rsrc and ni_rsrc_mon in run_ffmpeg.sh (LGXCOD-2935)
[FFMPEG/OTHER] Update NETINT_FFMPEG_CHANGE_LIST.txt for v2.6.0
               Fix unecessary FATE files in FFmpeg-n4.3.2 release patch
               Fix incorrect usage of tabs instead of spaces in FFmpeg/libavfilter/allfilters.c
               Remove '#include "libavformat/avformat.h"' from FFmpeg-n4.2.1/libavcodec/h264_mp4toannexb_bsf.c as it is unecessary (LGXCOD-2930)
================================================================================
Release version: 2.6.0
Date: 2021-11-15            SW version: 2.6.0               FW version: 2.6.0
SW commit: 0d5c795d1        SW base: 26af01871
SW full ver: 260R2012       SW tag: T408_XCODER_FFMPEG/LIBXCODER_RELEASE_2.6.0
--------------------------------------------------------------------------------
[OTHER] Update NETINT_FFMPEG_CHANGE_LIST.txt for v2.6.0 (LGXCOD-2930)
[FFMPEG/LIBAVCODEC/LIBXCODER] Support hw yuv bypass in FFmpeg 3.4.2+
                              modify ni_metadata_enc_bstream_t and ni_encoder_config_t for yuv bypass
                              change NI_FW_ENC_BITSTREAM_META_DATA_SIZE to 40 to match the structure
                              added missing hw_configs for encoders for ffmpeg versions 4.3 onwards
                              modify the loglevel to DEBUG on some prints (LGXCOD-2583)
[LIBXCODER/TOOLS] Implement getopt with Windows API
                  Replace XGetopt with ni_getopt.c (LGXCOD-2875)
[TOOLS] Add list.c into VS2019 build project
        bsf_list.c and parser_list.c are generated during FFmpeg compilation on Linux.
        Therefore we shall add those two files into VS project directory manually. (LGXTA-3165)
[LIBXCODER/TOOLS] Fix Windows compilation
                  Fix FW revision mismatch due to wrong string length calculation;
                  Initialize value for local variable to clear VS2019 build warning. (LGXTA-3120)
[TOOLS] Update t4xx_quick_installer.sh
        Auto-discover available FFmpeg versions in release package to install
        Separate libxcoder and FFmpeg installers
        Prompt offer to remove old libavcodec libraries (LGXCOD-2887)
[TOOLS] T4xx_auto_upgrade.sh: added timestamps to upgrade_log.txt, changed warm upgrade FW rev check to once after all cards are complete nvme reset, updated udevadm command for linux <5.4 and >=5.4 (LGXTA-3202)
[LIBAVCODEC/LIBXCODER] Allow for decoder input packet saving in circular buffer though new --xcoder-params "savePkt=1000" (LGXCOD-2792)
[LIBAVCODEC/LIBXCODER] Fixed incorrect conversion of libavcodec ROI qp offset to libxcoder qp offset (LGXCOD-2508)
[LIBXCODER] Disable assertion in timestamp queue expansion to allow for continuation of decoding even in frame error/drop cases (LGXCOD-2802)
[LIBAVCODEC/LIBXCODER] Add Support for bit depth sequence changes (LGXCOD-1722)
[LIBAVCODEC] Decoder VPU recovery handling flow
             Drop the AVPackets until the next IDR frame after decoder VPU recovery since it
             is not able to decode those AVPackets out without their IDR lost. (LGXTA-1938)
[TOOLS] Fix xcopy invalid path
        The source directory path of xcopy command in batch file should not end up with
        '\' on some systems before Win10. (leo.ma)
[FFMPEG/LIBXCODER] Add android NDK build to libxcoder, FFmpeg-n4.2.1 and n4.3 (LGXCOD-2801)
================================================================================
Release version: 2.5.I
Date: 2021-09-20            SW version: 2.5.I               FW version: 2.5.I
SW commit: 26af018712       SW base: 15ba864b2
SW full ver: 25IR2012       SW tag: T408_XCODER_FFMPEG/LIBXCODER_RELEASE_2.5.I
--------------------------------------------------------------------------------
[FFMPEG/LIBAVCODEC] Support hw yuv bypass (LGXCOD-2583)
[LIBAVCODEC/OTHER] Add cppcheck script and compiling database, and fix the errors from cppcheck (LGXCOD-2726)
[OTHER] Remove entries for FFmpeg-n3.1.1 from NETINT_FFMPEG_CHANGE_LIST.txt (LGXCOD-2402)
[LIBAVCODEC] Change symlinks which previous pointed to previous FFmpeg version to point to FFMpeg-n4.2.1 (LGXCOD-2806)
[FFMPEG/TOOLS] Reduce amount of sample video files in release package (LGXCOD-2295)
[LIBAVCODEC] make symlink for libavcodec/nicodec.c in FFmpeg-n4.3+ (LGXCOD-2811)
[LIBXCODER] Remove errorneously added '#ifdef NI_DEBUG_LATENCY' (LGXCOD-2494)
[OTHER] Add LICENSE.md (LGXCOD-2730)
[LIBAVCODEC/LIBXCODER] Added losslessEnable restrictions (LGXCOD-2785)
[FFMPEG/LIBXCODER/TOOLS] Add FFmpeg-n4.3.1 VS build project
                         Settle the build project directory structure.
                         Improve the automated compilation script.
                         Update FFmpeg-n4.2.1 with new source files in libavfilter and libavcodec.
                         Add setup project as installer. (LGXCOD-2817)
[LIBAVCODEC] Change dtsOffset to 1 when gopIdx is 3 or 7 (LGXCOD-2696)
[FFMPEG/LIBAVCODEC/OTHER] Decoder will use new sps/pps from side_data when sequence changing (LGXCOD-2666)
[FFMPEG/LIBAVCODEC/OTHER] Add FFmpeg-n4.3 at 4b227aee ported from FFmpeg-n4.3.1 (LGXCOD-2796)
[LIBAVCODEC] Fix Windows VS building (LGXCOD-2301)
[LIBAVCODEC] Ignore corrupted decode pkt if exceeding lone SEI buffer size (LGXCOD-2765)
[LIBAVCODEC/LIBXCODER] 1. support multi custom SEIs passthru in single packet;
                       2. check packets and skip SEIs after; (LGXCOD-2703)
[LIBXCODER] Fix an unclosed file descriptor in ni_util.c:ni_search_file() (LGXCOD-2768)
[LIBAVCODEC/LIBXCODER] Param 'level' only support standard levels for 264/265, no others; and remove param `level-idc` (LGXCOD-2478)
[LIBAVCODEC] Reject decode input of wrong pixel formats (LGXCOD-2772)
[LIBXCODER] Fix inability to get block device on Android when nvme multipath is present (LGXCOD-2549)
[LIBAVCODEC/LIBXCODER] Set params and check validation of params in 2 steps to fix the problem of collision when MaxQp/MinQp is setted and another using default value (jack.li)
[APIEXAMPLES/FFMPEG/LIBAVCODEC/OTHER] Add HEVC tile paralellism codec (LGXCOD-2301)
[LIBAVCODEC/LIBXCODER] Move encoder YUV copy from libavcodec to libxcoder, update nienc accordingly, in 4.2.1 and newer only for now; overhaul xcoder utility (LGXCOD-2643)
[LIBXCODER] Modify android compile for security (LGXCOD-2741)
[LIBXCODER/TOOLS] Fix MSVS2019 compilation on Windows (LGXCOD-2764)
[FFMPEG/LIBAVCODEC/OTHER] Add FFmpeg-n4.3.2 (LGXCOD-2748)
[APIEXAMPLES] Add tools/apiexample/libavcodec_app/ (LGXCOD-2532)
[LIBXCODER] Move ni_log functions from ni_util.c to ni_log.c
            change add ability to register custom ni_log() callback
            change ni_log trace level timestamp printouts to compile time flag (configure --with-tracelog_timestamps) (LGXCOD-2712)
[LIBXCODER] Correct XCODER_IO_RW default configuration to be inline with helptext and expectations (LGXCOD-2697)
[LIBXCODER] Fix compile error in libxcoder non-regular-io. Note: FW has not supported non-regular-io since v2.3.0 (LGXCOD-2702)
[LIBXCODER] Add gopPresetIdx 9 to baseline profile (LGXCOD-2704)
[FFMPEG/LIBXCODER] Add and adjust the compilation files in MINGW for ease of use (LGXCOD-2685)
[LIBAVCODEC] When enable xcoder-params "repeatHeaders=1" force repeat header without consideration for container type (LGXCOD-2570)
[LIBXCODER] Fix file descriptor leak for /dev/shm/NI_RETRY_LCK_DECODERS in ni_rsrc_api.cpp:ni_rsrc_unlock() (LGXCOD-2680)
[TOOLS] Add SRIOV VF creation script (LGXCOD-2621)
[FFMPEG] Add FFmpeg-n4.4 (LGXCOD-2578)
[TOOLS] Add dump firmware log tools for windows os (LGXCOD-2371)
[LIBAVCODEC/LIBXCODER] Fixed intraPeriod and gopPresetIdx checking order, moved internal adjustment to after checking, and return error to upper layer for these critical errors (LGXCOD-2629)
[FFMPEG] Add SDL filter to display decoded stream SDL (LGXCOD-2613)
[LIBAVCODEC] Sequence change rework for noautoscale (LGXCOD-2560)
[LIBAVCODEC] Nienc emulation prevention checking in SEI: close caption, pic timing, HDR10+ (LGXCOD-603)
[FFMPEG] Fix the mepgtsenc.c crush issue on ffmpeg-n4.4 (LGXCOD-2597)
================================================================================
Release version: 2.5.5
Date: 2021-05-14            SW version: 2.5.5               FW version: 2.5.5
SW commit: 15ba864b2        SW base: b4eb865fd
SW full ver: 255R1F10       SW tag: T408_XCODER_FFMPEG/LIBXCODER_RELEASE_2.5.5
--------------------------------------------------------------------------------
[FFMPEG/LIBAVCODEC/LIBXCODER/TOOLS] Add FFmpeg-n4.2.1 MSVS2019 project in tools folder (LGXCOD-2436)
[LIBAVCODEC/LIBXCODER] Add support for decoder low_delay mode (LGXCOD-2574)
[TOOLS] Fix bug in t4xx_auto_ugprade.sh when run with bash version >4.2.0 (LGXCOD-2577)
[LIBXCODER] Add session metrics to libxcoder session context (LGXCOD-2558)
[LIBXCODER] Optimize keep alive thread to reduce cumulative time error of many sleep,
            and change sleep interval from 1/2 to 1/3 keep_alive_timeout (LGXCOD-2562)
[FFMPEG/OTHER] Auto enable GenHdrs for asf format output (LGXCOD-2433)
[LIBXCODER] Arg to query libxcoder version in libxcoder executable utilities (LGXCOD-2487)
[LIBAVCODEC/LIBXCODER] Add xcoder-params “cacheROI=1” to have nienc use ROI side data setting for all subsequent frames until next it is changed. Else, ROI data must be inserted into every AVFrame sent to nienc (LGXCOD-2540)
[FFMPEG/OTHER] Set hvc1 as default instead of hev1 for hevc mp4 (FFmpeg-n3.4.2+) (LGXCOD-1434)
[LIBAVCODEC] Optimizations for decoder send packet flow (LGXCOD-2534)
[LIBAVCODEC/LIBXCODER] Update picType values in decode, encode and frame forcing incl. all I-frame types (LGXCOD-2233)
================================================================================
Release version: 2.5.1
Date: 2021-04-13            SW version: 2.5.1               FW version: 2.5.1
SW commit: b4eb865fd        SW base: ce77314a0
SW full ver: 251R1E09       SW tag: T408_XCODER_FFMPEG/LIBXCODER_RELEASE_2.5.1
--------------------------------------------------------------------------------
[LIBXCODER] Modify decoder buffer full handing flow. There is a chance to break out of the loop,
            when getting available write buffer (LGXCOD-2502)
[LIBAVCODEC/LIBXCODER] Encoder VPU recovery handling flow (LGXCOD-2503)
[LIBAVCODEC] Include aspect ratio in VUI only when present in input (LGXCOD-2514)
[LIBAVCODEC/LIBXCODER] Emulation prevention in buffering period SEI; 4.2.1 only (LGXCOD-2493)
[LIBXCODER] Session statistics in instance_status_info and print out (LGXCOD-2459)
[LIBXCODER] Support VS2019 libxcoder SDK building (LGXCOD-2436)
[TOOLS] Re-enable warm upgrade in t4xx_auto_upgrade.sh; replace internal_t4xx_auto_upgrade.sh with t4xx_auto_upgrade.sh (LGXCOD-2507)
[LIBAVCODEC] Reject encode 12 bit YUV and all other unsupported pixel formats; set VUI video_full_range_flag for YUVJ420P pix fmt (LGXCOD-2472, LGXCOD-2475)
[LIBAVCODEC] Fix "dev_xcoder" memory not being freed and add pointer checking (LGXCOD-2497)
[FFMPEG/LIBAVCODEC/LIBXCODER] Add support for custom SEI types. Increase SEI support to 1024B for Encoder and Decoder (LGXCOD-2323, LGXCOD-2452)
[LIBXCODER] Use ni_device_api.c:ni_device_session_context_init() to set default keep_alive_timeout (LGXCOD-2428)
[LIBXCODER] Support to measure latency in Windows (LGXCOD-2480)
[LIBAVCODEC/LIBXCODER] Add decoder low delay mode for in sequence streams (LGXCOD-2425)
[LIBXCODER] Add option checking and modify some comments in ni_rsrc_update (LGXCOD-2198)
[LIBXCODER/OTHER] Update libxcoder Doxygen; Doxygen will auto generate for release packages (LGXCOD-2473)
[FFMPEG/OTHER] Fix playback issues in MKV and first segment of HLS by automatically generating encoder headers before first frame when output is to a MKV/HLS container (LGXCOD-2433)
[LIBXCODER] Add QP param range checking (LGXCOD-2125)
[LIBXCODER] Libxcoder send keep alive cmd at intervals of half of keep_alive_timeout value (LGXCOD-2463)
[LIBAVCODEC] Fix decoder packet lone SEI data causing corruption (LGXCOD-2336)
[LIBAVCODEC/LIBXCODER] Fix wrong typecast struct in encoder_session_open() (LGXCOD-2197)
[LIBAVCODEC/LIBXCODER] Remove deprecated features YUV zero copy feature and decoder input 512B alignment checking (LGXCOD-2369)
[LIBXCODER] Add support for flushing GOP at intraPeriod with new -xcoder-params 'flushGop=1' (LGXCOD-2232)
[LIBXCODER] Fix cases where some error exit conditions from libxcoder does not close device map file handle (LGXCOD-2432)
[LIBXCODER] Add Encoder output partial read (LGXCOD-2368)
[LIBXCODER] Fix a bug on ARM servers when using long term referecen in reconfig file (LGXCOD-2282)
[APIEXAMPLES] Remove unecessary parameter initialization in decoding apiexamples (LGXCOD-2424)
[LIBAVCODEC/LIBXCODER] Add keep alive timeout setting (LGXCOD-2428)
[APIEXAMPLES] Added the api example for dynamically changing resolution when encoding (LGXCOD-2429)
