You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: CHANGELOG-avdecc.md
+26Lines changed: 26 additions & 0 deletions
Original file line number
Diff line number
Diff line change
@@ -4,6 +4,32 @@ All notable changes to the Avdecc Library will be documented in this file.
4
4
The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/)
5
5
and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html).
6
6
7
+
## [4.0.0] - 2025-02-18
8
+
### Added
9
+
- Support for JACK_INPUT/JACK_OUTPUT descriptors
10
+
- Support for CONTROL descriptors at AUDIO_UNIT, JACK, STREAM_PORT levels
11
+
-[Support for CONTROL_SELECTOR type for CONTROL descriptors](https://github.com/L-Acoustics/avdecc/issues/128)
12
+
-*numberOfValues* field in the CONTROL descriptor
13
+
- Support for float special values in json dumps (ie. NaN, -inf, +inf)
14
+
- Support for UTF8 file paths
15
+
-[Support for TIMING descriptors](https://github.com/L-Acoustics/avdecc/issues/116)
16
+
-[Support for PTP_INSTANCE/PTP_PORT descriptors](https://github.com/L-Acoustics/avdecc/issues/117)
17
+
- Support for GET_DYNAMIC_INFO command
18
+
- Support for SET/GET_MAX_TRANSIT_TIME command
19
+
- Json schema AEM_Schema.json added to newly created resources/schemas directory
20
+
21
+
### Changed
22
+
- la::avdecc::entity::controller::Delegate is now virtual pure, but a new derivated visitor (with all default implementation) has been added: la::avdecc::entity::controller::DefaultedDelegate
23
+
-[Executor name can be provided when creating an EndStation](https://github.com/L-Acoustics/avdecc/issues/132)
24
+
-*entity::model::validateControlValues* now returns an enum value as well as an error message
25
+
- Mechanism to refresh an entity (same for Configuration change) totally revamped to be more consistent
26
+
- Moved some fields from AVB_INTERFACE.staticModel to AVB_INTERFACE.dynamicModel (fields that should not be part of the static model because they are not considered for entity_model_id)
27
+
28
+
### Fixed
29
+
- Crash when unpacking vendor specific control values
30
+
-[Incorrect linkage for some C bindings methods](https://github.com/L-Acoustics/avdecc/issues/148)
- la::avdecc::entity::model::VirtualEntityBuilder class to help creating virtual entities from EntityModel files
27
+
28
+
### Changed
29
+
- Complete controller entity model refactoring to support descriptors at non-configuration level
30
+
- EntityModelVisitor is now virtual pure, but a new derivated visitor (with all default implementation) has been added: DefaultedEntityModelVisitor
31
+
- la::avdecc::controller::Controller::Observer is now virtual pure, but a new derivated visitor (with all default implementation) has been added: la::avdecc::controller::Controller::DefaultedObserver
32
+
-[Executor name can be provided when creating a Controller](https://github.com/L-Acoustics/avdecc/issues/132)
33
+
- Renamed la::avdecc::controller::Controller::loadEntityModelFile to la::avdecc::controller::Controller::cacheEntityModelFile
34
+
35
+
### Removed
36
+
- Direct access to ClockSource descriptors from the ClockDomain. Will still be enumerated correctly when using the model visitor
37
+
38
+
### Fixed
39
+
- Controller entity model no longer uses pointers to prevent dangling issues when making copies
40
+
- Not flagging a device as non IEEE/Milan compatible, if the library cannot handle a CONTROL type if doesn't support
41
+
- CONTROL values updated by the device itself didn't trigger an update notification
42
+
- DynamicMappings were not being retrieved from the entities
43
+
-[Not flagging some devices as non-1722.1 compatible due to a control value out of bounds](https://github.com/L-Acoustics/avdecc/issues/134)
44
+
-[Detecting Identify Controls at JACK level](https://github.com/L-Acoustics/avdecc/issues/135)
45
+
-[CONTROL descriptors not properly enumerated at JACK level](https://github.com/L-Acoustics/avdecc/issues/139)
46
+
-[CONTROL descriptors not properly attached to the parent descriptor when loaded from file](https://github.com/L-Acoustics/avdecc/issues/140)
47
+
-[Dynamic mappings incorrect when replaced without first being removed](https://github.com/L-Acoustics/avdecc/issues/146)
48
+
- Updating StreamInfo data partially, in case endpoint doesn't send full update
49
+
- isOverLatency diagnostics not properly set if msrpAccumulatedLatency is not set
50
+
-_Media Clock Chain_ not recomputed when a connection changes without disconnecting first
51
+
-[Crash when trying to access unknown localized string](https://github.com/L-Acoustics/avdecc/issues/153)
52
+
- Locales from all configurations are loaded (if defined) for virtual entities
- Checksum of the AEM of a ControlledEntity was incorrectly using some fields that are not part of the AEM (in AVB_INTERFACE descriptor). Introduced checksum v3
55
+
7
56
## [3.4.1] - 2023-01-11
8
57
### Fixed
9
58
-[Crash when trying to get a ControlledEntity during OnPreAdvertise events](https://github.com/L-Acoustics/avdecc/issues/125)
# It should have 3 digits (x.y.z) on main branch, and 4 digits (x.y.z.w) on dev and task branches. The last digit being used as beta label.
11
11
# As soon as an API change occurs in dev or task branch, update the version number by following SemVer rules (so the API breaking changes are not lost/forgotten).
12
12
# Example: 1.5.0 is the upcoming release version (main branch) of current 1.5.0.3 devel version (dev/task) which will be labelled 1.5.0-beta3
13
-
set(LA_AVDECC_VERSION3.4.1)
14
-
set(LA_AVDECC_CONTROLLER_VERSION3.4.1)
15
-
set(LA_AVDECC_C_VERSION3.4.1)
13
+
set(LA_AVDECC_VERSION4.0.0)
14
+
set(LA_AVDECC_CONTROLLER_VERSION4.0.0)
15
+
set(LA_AVDECC_C_VERSION4.0.0)
16
16
17
17
############ Override from command line "CMake -D<OPTION>=TRUE/FALSE/0/1/ON/OFF"
18
18
@@ -23,6 +23,7 @@ option(BUILD_AVDECC_LIB_SHARED_CXX "Build C++ shared library." TRUE)
option(ALLOW_RECV_BIG_AECP_PAYLOADS"Allow receiving AECP payloads bigger than the allowed 524 bytes."TRUE) # Required for Q6 Core devices not splitting AudioMaps into smaller ones, and for Milan devices
53
54
option(ALLOW_SEND_BIG_AECP_PAYLOADS"Allow sending AECP payloads bigger than the allowed 524 bytes."FALSE)
54
55
56
+
############ Override from command line "CMake -D<PARAM>=<VALUE>"
57
+
58
+
# Configuration options
59
+
if(NOTAVDECC_SWIG_LANGUAGES)
60
+
set(AVDECC_SWIG_LANGUAGES"csharp"CACHESTRING"Set the languages to compile as SWIG wrappers."FORCE)
0 commit comments