Support mode enforcement (-force) in BASOP framework
The task involves implementing the -force
command-line option within the BASOP framework to enable specific mode enforcement. This is divided into two stages:
1. Static Mode Enforcement
Integrate static mode enforcement using the -force
encoder command-line option. This will allow users to specify and enforce a particular mode (ACELP/TCX/HQ, speech/music, TD/DFT stereo) directly during the encoding process. The static enforcement ensures the encoder adheres to the specified mode throughout the process without dynamic changes.
2. Dynamic Mode Enforcement with Debugging
Extend the mode enforcement functionality by enabling the following:
-
Mode Decision Writing: Use the
dbgwrite()
function to write mode decisions made by the encoder into a binary output file. This provides a mechanism to log and store mode decisions for further analysis or replication. -
Mode Decision Reading: Use the
dbgread()
function to read mode decisions from the previously generated binary file. This ensures that the encoder can replicate a specific mode decision process by following the pre-recorded decisions.
By implementing these stages, the framework will support both static and dynamic mode enforcement with robust debugging and reproducibility capabilities.