TVSetting HAL 0.2.0
 
Loading...
Searching...
No Matches
tvSettings.h
Go to the documentation of this file.
1/*
2* If not stated otherwise in this file or this component's LICENSE file the
3* following copyright and licenses apply:
4*
5* Copyright 2016 RDK Management
6*
7* Licensed under the Apache License, Version 2.0 (the "License" );
8* you may not use this file except in compliance with the License.
9* You may obtain a copy of the License at
10*
11* http://www.apache.org/licenses/LICENSE-2.0
12*
13* Unless required by applicable law or agreed to in writing, software
14* distributed under the License is distributed on an "AS IS" BASIS,
15* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16* See the License for the specific language governing permissions and
17* limitations under the License.
18*/
19/**
20 * @addtogroup HPK Hardware Porting Kit
21 * @{
22 * @par The Hardware Porting Kit
23 * HPK is the next evolution of the well-defined Hardware Abstraction Layer
24 * (HAL), but augmented with more comprehensive documentation and test suites
25 * that OEM or SOC vendors can use to self-certify their ports before taking
26 * them to RDKM for validation or to an operator for final integration and
27 * deployment. The Hardware Porting Kit effectively enables an OEM and/or SOC
28 * vendor to self-certify their own Video Accelerator devices, with minimal RDKM
29 * assistance.
30 *
31 */
32
33/**
34 * @addtogroup TV_Settings TV Settings Module
35 * @{
36 */
37
38
39/**
40* @addtogroup TV_Settings_HAL TV Settings HAL
41* @{
42*/
43
44/**
45* @defgroup TV_Settings_H TV Settings Header
46* @{
47*/
48#ifndef _TV_SETTINGS_H
49#define _TV_SETTINGS_H
50#include <stdbool.h>
51#include <string>
52#include "tvError.h"
53#include "tvTypes.h"
54#include <vector>
55#ifdef __cplusplus
56extern "C"
57{
58#endif
59#define MAX_STRING_SIZE (15)
60#define CONTROL_COUNT (2)
61#define PIC_MODES_SUPPORTED_MAX (15)
62#define PIC_MODE_NAME_MAX (25)
63#define DIMMING_MODE_NAME_SIZE (25)
64#define DIMMING_MODE_MAX (10)
65#define GAIN_MIN (0)
66#define GAIN_MAX (2047)
67#define OFFSET_MIN (-1024)
68#define OFFSET_MAX (1024)
69#define BACKLIGHT_CURVE_MAX_INDEX (101)
70#define EXPECTED_FILE_SIZE (512)
71#define GENERIC_MODE_CONFIG_FILE "/etc/tv/allmodes.conf"
72
73typedef void (*tvVideoFormatChangeCB)(tvVideoHDRFormat_t format,void *userData);
74
75typedef void (*tvVideoContentChangeCB)(tvContentType_t mode,void *userData);
76
77typedef struct pic_modes{
79 short int value;
81
87
93
101
108
114
115#ifndef __BL_PARA__
116#define __BL_PARA__
121#endif
122
129
130/**
131 * @brief Initialises TV Settings HAL
132 *
133 * This function is used to initialize the TV Setting HAL APIs.
134 * All dependent vendor specific driver modules for implementing TV Settings HAL
135 * are expected to be initialised when this call return successfully. Calling TvInit() API
136 * more than once without a TvTerm() API call should return failure. Any TV Settings
137 * HAL API called before TvInit() API should return failure.
138 *
139 *
140 * @return tvError_t
141 *
142 * @retval tvERROR_NONE - Success
143 * @retval tvERROR_INVALID_STATE - Interface is already initialized
144 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
145 * @see TvTerm()
146 *
147 */
149/**
150 * @brief Sync the calibrated data to driver
151 *
152 * This function is to read the calibration data from serialization area and sync to driver during init.
153 *
154 * @return tvError_t
155 *
156 * @retval tvERROR_NONE - Success
157 * @retval tvERROR_INVALID_PARAM - Input parameter is invalid
158 * @retval tvERROR_INVALID_STATE - Interface is not initialized
159 * @retval tvERROR_OPERATION_NOT_SUPPORTED - Operation is not supported
160 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
161 *
162 * @pre TvInit() should be called before calling this API
163 */
165
166/**
167 * @brief De-initialises TV Settings HAL
168 *
169 * This function should terminate the TV Settings HAL APIs.
170 * All dependent vendor specific driver modules for implementing TV Settings HAL
171 * are expected to be terminated when this call return successfully. Calling TvTerm() API
172 * more than once without a TvInit() API call should return failure. Any TV Settings
173 * HAL API called after TvTerm() and before TvInit() API should return failure.
174 *
175 * @return tvError_t
176 *
177 * @retval tvERROR_NONE - Success
178 * @retval tvERROR_INVALID_STATE - Interface is already terminated
179 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
180 *
181 */
183/**
184 * @brief Gets the current selected picture Mode
185 *
186 * This function will get the current selected picture mode for current pirmary video source and primary video format.
187 *
188 * @param[out] pictureMode - Current picture mode. Valid values are as per values
189 * returned by ::pic_modes_t.name parmaeter from GetTVSupportedPictureModes API.
190 * The size of string will be PIC_MODE_NAME_MAX.
191 *
192 * @return tvError_t
193 *
194 * @retval tvERROR_NONE - Success
195 * @retval tvERROR_INVALID_PARAM - Parameter is invalid
196 * @retval tvERROR_INVALID_STATE - Interface is not initialized
197 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
198 *
199 * @pre TvInit() should be called before calling this API
200 *
201 * @see SetTVPictureMode()
202 */
203tvError_t GetTVPictureMode(char *pictureMode);
204/**
205 * @brief Sets the Picture Mode
206 *
207 * This function updates the picture mode and reloads all the associated picture properties for the picture mode. This applies
208 * to current selected primary video source and primary video format, if successful the association of picture mode to the
209 * current video source and current primary video format is saved in override picture profile database. The associated
210 * picture mode and all the associated picture properties will be reloaded again when the current video source and current
211 * primary video format are selected in future.
212 *
213 * @param[in] pictureMode - Picture mode to be set.Valid values are as per values
214 * returned by ::pic_modes_t.name parmaeter from GetTVSupportedPictureModes API.
215 * The size of string will be PIC_MODE_NAME_MAX.
216 *
217 * @return tvError_t
218 *
219 * @retval tvERROR_NONE - Success
220 * @retval tvERROR_INVALID_PARAM - Input parameter is invalid
221 * @retval tvERROR_INVALID_STATE - Interface is not initialized
222 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
223 *
224 * @pre TvInit() should be called before calling this API
225 *
226 * @see GetTVPictureMode()
227 */
228tvError_t SetTVPictureMode(const char * pictureMode);
229/**
230 * @brief Gets the current backlight value
231 *
232 * This function gets the current backlight value for the primary video source selected,
233 * primary video format played and picture mode selected.
234 *
235 * @param[out] backlight - Current backlight value. Valid range is (0 - 100)
236 *
237 * @return tvError_t
238 *
239 * @retval tvERROR_NONE - Success
240 * @retval tvERROR_INVALID_PARAM - Parameter is invalid
241 * @retval tvERROR_INVALID_STATE - Interface is not initialized
242 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
243 *
244 * @pre TvInit() should be called before calling this API
245 *
246 * @see SetBacklight()
247 */
248tvError_t GetBacklight(int *backlight);
249/**
250 * @brief Sets the backlight value in the backlight hardware
251 *
252 * This function updates the new backlight value to hardware. The change is applied for current primary video source selected,
253 * video format played and picture mode selected
254 *
255 * @param[in] backlight - Backlight value to be set. Valid range is (0 - 100)
256 *
257 * @return tvError_t
258 *
259 * @retval tvERROR_NONE - Success
260 * @retval tvERROR_INVALID_PARAM - Input parameter is invalid
261 * @retval tvERROR_INVALID_STATE - Interface is not initialized
262 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
263 *
264 * @pre TvInit() should be called before calling this API
265 *
266 * @see GetBacklight()
267 */
268tvError_t SetBacklight(int backlight);
269/**
270 * @brief Sets the brightness value to driver register(s)
271 *
272 * This function updates the new brightness value to hardware. The change is applied for current primary video source selected,
273 * video format played and picture mode selected
274 *
275 * @param[in] brightness - Brightness value to be set. Valid range is (0 - 100)
276 *
277 * @return tvError_t
278 *
279 * @retval tvERROR_NONE - Success
280 * @retval tvERROR_INVALID_PARAM - Input parameter is invalid
281 * @retval tvERROR_INVALID_STATE - Interface is not initialized
282 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
283 *
284 * @pre TvInit() should be called before calling this API
285 *
286 * @see GetBrightness()
287 */
288tvError_t SetBrightness(int brightness);
289/**
290 * @brief Gets the current brightness value
291 *
292 * This function gets the current brightness value for the primary video source selected,
293 * primary video format played and picture mode selected.
294 *
295 * @param[out] brightness - Current brightness value. Valid range is (0 - 100)
296 *
297 * @return tvError_t
298 *
299 * @retval tvERROR_NONE - Success
300 * @retval tvERROR_INVALID_PARAM - Parameter is invalid
301 * @retval tvERROR_INVALID_STATE - Interface is not initialized
302 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
303 *
304 * @pre TvInit() should be called before calling this API
305 *
306 * @see SetBrightness()
307 */
308tvError_t GetBrightness(int *brightness);
309/**
310 * @brief Sets the contrast value to driver register(s)
311 *
312 * This function updates the new contrast value to hardware. The change is applied for current primary video source selected,
313 * video format played and picture mode selected.
314 *
315 * @param[in] contrast - Contrast value to be set.Valid range is (0 - 100)
316 *
317 * @return tvError_t
318 *
319 * @retval tvERROR_NONE - Success
320 * @retval tvERROR_INVALID_PARAM - Input parameter is invalid
321 * @retval tvERROR_INVALID_STATE - Interface is not initialized
322 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
323 *
324 * @pre TvInit() should be called before calling this API
325 *
326 * @see GetContrast()
327 */
328tvError_t SetContrast(int contrast);
329/**
330 * @brief Gets the current contrast value
331 *
332 * This function gets the current contrast value for the primary video source selected,
333 * primary video format played and picture mode selected.
334 *
335 * @param[out] contrast - Current contrast value. Valid range is (0 - 100)
336 *
337 * @return tvError_t
338 *
339 * @retval tvERROR_NONE - Success
340 * @retval tvERROR_INVALID_PARAM - Parameter is invalid
341 * @retval tvERROR_INVALID_STATE - Interface is not initialized
342 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
343 *
344 * @pre TvInit() should be called before calling this API
345 *
346 * @see SetContrast()
347 */
348tvError_t GetContrast(int *contrast);
349/**
350 * @brief Sets the sharpness value to driver register(s)
351 *
352 * This function updates the new sharpness value to hardware. The change is applied for current primary video source selected,
353 * video format played and picture mode selected
354 *
355 * @param[in] sharpness - Sharpness value to be set. Valid range is (0 - 100)
356 *
357 * @return tvError_t
358 *
359 * @retval tvERROR_NONE - Success
360 * @retval tvERROR_INVALID_PARAM - Input parameter is invalid
361 * @retval tvERROR_INVALID_STATE - Interface is not initialized
362 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
363 *
364 * @pre TvInit() should be called before calling this API
365 *
366 * @see GetSharpness()
367 */
368tvError_t SetSharpness(int sharpness);
369/**
370 * @brief Gets the current sharpness value
371 *
372 * This function gets the current sharpness value for the primary video source selected,
373 * primary video format played and picture mode selected.
374 *
375 * @param[out] sharpness - Current sharpness value. Valid range is (0 - 100)
376 *
377 * @return tvError_t
378 *
379 * @retval tvERROR_NONE - Success
380 * @retval tvERROR_INVALID_PARAM - Parameter is invalid
381 * @retval tvERROR_INVALID_STATE - Interface is not initialized
382 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
383 *
384 * @pre TvInit() should be called before calling this API
385 *
386 * @see SetSharpness()
387 */
388tvError_t GetSharpness(int *sharpness);
389/**
390 * @brief Sets the saturation value to driver register(s)
391 *
392 * This function updates the new saturation value to hardware. The change is applied for current primary video source selected,
393 * video format played and picture mode selected
394 *
395 * @param[in] saturation - Saturation value to be set. Valid range is (0 - 100)
396 *
397 * @return tvError_t
398 *
399 * @retval tvERROR_NONE - Success
400 * @retval tvERROR_INVALID_PARAM - Parameter is invalid
401 * @retval tvERROR_INVALID_STATE - Interface is not initialized
402 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
403 *
404 * @pre TvInit() should be called before calling this API
405 *
406 * @see GetSaturation()
407 */
408tvError_t SetSaturation(int saturation);
409/**
410 * @brief Gets the current saturation value
411 *
412 * This function gets the current saturation value for the primary video source selected,
413 * primary video format played and picture mode selected.
414 *
415 * @param[out] saturation - Current saturation value. Valid range is (0 - 100)
416 *
417 * @return tvError_t
418 *
419 * @retval tvERROR_NONE - Success
420 * @retval tvERROR_INVALID_PARAM - Parameter is invalid
421 * @retval tvERROR_INVALID_STATE - Interface is not initialized
422 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
423 *
424 * @pre TvInit() should be called before calling this API
425 *
426 * @see SetSaturation()
427 */
428tvError_t GetSaturation(int *saturation);
429/**
430 * @brief Sets the hue value to driver register(s)
431 *
432 * This function updates the new hue value to hardware. The change is applied for current primary video source selected,
433 * video format played and picture mode selected
434 *
435 * @param[in] hue - Hue value to be set. Valid range is (0 - 100)
436 *
437 * @return tvError_t
438 *
439 * @retval tvERROR_NONE - Success
440 * @retval tvERROR_INVALID_PARAM - Input parameter is invalid
441 * @retval tvERROR_INVALID_STATE - Interface is not initialized
442 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
443 *
444 * @pre TvInit() should be called before calling this API
445 *
446 * @see GetHue()
447 */
449/**
450 * @brief Gets the current hue value
451 *
452 * This function gets the current hue value for the primary video source selected,
453 * primary video format played and picture mode selected.
454 *
455 * @param[out] hue - Current hue value. Valid range (0 - 100)
456 *
457 * @return tvError_t
458 *
459 * @retval tvERROR_NONE - Success
460 * @retval tvERROR_INVALID_PARAM - Parameter is invalid
461 * @retval tvERROR_INVALID_STATE - Interface is not initialized
462 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
463 *
464 * @pre TvInit() should be called before calling this API
465 *
466 * @see SetHue()
467 */
469/**
470 * @brief Sets the color temperature to driver register(s)
471 *
472 * This function updates the new color temperature value to hardware. The change is applied for current primary video source selected,
473 * video format played and picture mode selected
474 *
475 * @param[in] colorTemp - Color temperature value to be set. Valid value will be a member of ::tvColorTemp_t
476 *
477 * @return tvError_t
478 *
479 * @retval tvERROR_NONE - Success
480 * @retval tvERROR_INVALID_PARAM - Input parameter is invalid
481 * @retval tvERROR_INVALID_STATE - Interface is not initialized
482 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
483 *
484 * @pre TvInit() should be called before calling this API
485 *
486 * @see GetColorTemperature()
487 */
489/**
490 * @brief Gets the current color temperature
491 *
492 * This function gets the current colour temperature value for the primary video source selected,
493 * primary video format played and picture mode selected.
494 *
495 * @param[out] colorTemp - Current color temperature. Valid value will be a member of ::tvColorTemp_t
496 *
497 * @return tvError_t
498 *
499 * @retval tvERROR_NONE - Success
500 * @retval tvERROR_INVALID_PARAM - Parameter is invalid
501 * @retval tvERROR_INVALID_STATE - Interface is not initialized
502 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
503 *
504 * @pre TvInit() should be called before calling this API
505 *
506 * @see SetColorTemperature()
507 */
509/**
510 * @brief Sets the aspect ratio
511 *
512 * This function updates the new aspect ratio value to hardware. The change is applied for current primary video source selected,
513 * video format played and picture mode selected
514 *
515 * @param[in] dispMode - Aspect ratio value to be set. Valid value will be a member of ::tvDisplayMode_t
516 *
517 * @return tvError_t
518 *
519 * @retval tvERROR_NONE - Success
520 * @retval tvERROR_INVALID_PARAM - Input parameter is invalid
521 * @retval tvERROR_INVALID_STATE - Interface is not initialized
522 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
523 *
524 * @pre TvInit() should be called before calling this API
525 *
526 * @see GetAspectRatio()
527 */
529/**
530 * @brief Gets the current aspect ratio
531 *
532 * This function gets the current aspect ratio for the primary video source selected,
533 * primary video format played and picture mode selected.
534 *
535 * @param[out] dispMode - Aspect ratio value. Valid value will be a member of ::tvDisplayMode_t
536 *
537 * @return tvError_t
538 *
539 * @retval tvERROR_NONE - Success
540 * @retval tvERROR_INVALID_PARAM - Parameter is invalid
541 * @retval tvERROR_INVALID_STATE - Interface is not initialized
542 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
543 *
544 * @pre TvInit() should be called before calling this API
545 *
546 * @see SetAspectRatio()
547 */
549/**
550 * @brief Gets the current tint value
551 *
552 * This function gets the current tint value for the primary video
553 * source selected,primary video format played and picture mode selected
554 *
555 * @return tvError_t
556 *
557 * @retval tvERROR_NONE - Success
558 * @retval tvERROR_INVALID_PARAM - Input parameter is invalid
559 * @retval tvERROR_INVALID_STATE - Interface is not initialized
560 * @retval tvERROR_OPERATION_NOT_SUPPORTED - Operation is not supported
561 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
562 *
563 * @pre TvInit() should be called before calling this API
564 */
566/**
567 * @brief Sets the tint value to driver register(s)
568 *
569 * This function updates the new tint value to hardware. The change is applied for current primary video source selected,
570 * video format played and picture mode selected.
571 *
572 * @return tvError_t
573 *
574 * @retval tvERROR_NONE - Success
575 * @retval tvERROR_INVALID_PARAM - Input parameter is invalid
576 * @retval tvERROR_INVALID_STATE - Interface is not initialized
577 * @retval tvERROR_OPERATION_NOT_SUPPORTED - Operation is not supported
578 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
579 *
580 * @pre TvInit() should be called before calling this API
581 */
583
584/**
585 * @brief Gets the supported backlight modes
586 *
587 * This function returns all supported backlight modes for the TV
588 * The output has the bitwise OR-ed value of all the supported backlight modes (tvBacklightMode_t).
589 *
590 * @param[out] blModes - Supported backlight modes. Valid values will be members of ::tvBacklightMode_t
591 *
592 * @return tvError_t
593 *
594 * @retval tvERROR_NONE - Success
595 * @retval tvERROR_INVALID_PARAM - Parameter is invalid
596 * @retval tvERROR_INVALID_STATE - Interface is not initialized
597 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
598 *
599 * @pre TvInit() should be called before calling this API
600 *
601 * @see GetCurrentBacklightMode(),SetCurrentBacklightMode()
602 */
604/**
605 * @brief Gets current blacklight mode
606 *
607 * This function gets the current backlight mode.
608 *
609 * @param[out] blMode - Current backlight mode. Valid value will be a member of ::tvBacklightMode_t
610 * If more than one value is received then INVALID_PARAM is returned.
611 *
612 * @return tvError_t
613 *
614 * @retval tvERROR_NONE - Success
615 * @retval tvERROR_INVALID_PARAM - Parameter is invalid
616 * @retval tvERROR_INVALID_STATE - Interface is not initialized
617 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
618 *
619 * @pre TvInit() should be called before calling this API
620 *
621 * @see GetSupportedBacklightModes(),SetCurrentBacklightMode()
622 */
624/**
625 * @brief Sets the backlight mode
626 *
627 * This function sets the backlight mode.
628 *
629 * @param[in] blMode - Backlight mode to be set. Valid value can be one of the member of ::tvBacklightMode_t".
630 * If more than one value is bitwise OR-ed and passed then the function should return invalid param.
631 *
632 * @return tvError_t
633 *
634 * @retval tvERROR_NONE - Success
635 * @retval tvERROR_INVALID_PARAM - Input parameter is invalid
636 * @retval tvERROR_INVALID_STATE - Interface is not initialized
637 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
638 *
639 * @pre TvInit() should be called before calling this API
640 *
641 * @see GetSupportedBacklightModes(),GetCurrentBacklightMode()
642 */
644/**
645 * @brief Gets current video format. To be deprecated soon.
646 * @note SOC vendors can stub these ODM functions and mark it as weak
647 *
648 * This function gets the video format value of the current primary video played on TV
649 *
650 * @return tvVideoHDRFormat_t
651 *
652 * @retval tvVideoHDRFormat_SDR - SDR format
653 * @retval tvVideoHDRFormat_HLG - HLG Format
654 * @retval tvVideoHDRFormat_HDR10 - HDR10 format
655 * @retval tvVideoHDRFormat_HDR10PLUS - HDR10 plus format
656 * @retval tvVideoHDRFormat_DV - DV format.
657 *
658 * @pre tvInit() should be called before calling this API
659 */
661/**
662 * @brief Gets the current video resolution
663 *
664 * This function gets the video resolution of the current primary video played on TV
665 *
666 * @param[out] res - Resolution
667 *
668 * @return tvError_t
669 *
670 * @retval tvERROR_NONE - Success
671 * @retval tvERROR_INVALID_PARAM - Input parameter is invalid
672 * @retval tvERROR_INVALID_STATE - Interface is not initialized
673 * @retval tvERROR_OPERATION_NOT_SUPPORTED - Operation is not supported
674 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
675 *
676 * @pre TvInit() should be called before calling this API
677 */
679/**
680 * @brief Gets current video framerate
681 *
682 * This function gets the video frame rate of the current primary video played on TV
683 *
684 * @param[out] format - Format
685 *
686 * @return tvError_t
687 *
688 * @retval tvERROR_NONE - Success
689 * @retval tvERROR_INVALID_PARAM - Input parameter is invalid
690 * @retval tvERROR_INVALID_STATE - Interface is not initialized
691 * @retval tvERROR_OPERATION_NOT_SUPPORTED - Operation is not supported
692 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
693 *
694 * @pre TvInit() should be called before calling this API
695 */
697/**
698 * @brief Sets wake-up configuration
699 * @note SOC vendors can stub these ODM functions and mark it as weak
700 *
701 * This function enables/disables the specific deepsleep wake-up source
702 *
703 * @param[in] src_type - Wakeup source type. Valid value will be a member of ::tvWakeupSrcType_t
704 * @param[in] value - Enable/disable wakeup source to be set ( 0 for @a disable and 1 for @a enable )
705 *
706 * @return tvError_t
707 *
708 * @retval tvERROR_NONE - Success
709 * @retval tvERROR_INVALID_PARAM - Input parameter is invalid
710 * @retval tvERROR_INVALID_STATE - Interface is not initialized
711 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, write failure, etc
712 *
713 * @pre TvInit() should be called before calling this API
714*/
715tvError_t setWakeupConfig(const tvWakeupSrcType_t src_type, const bool value);
716
717/**
718 * @brief Sets the RGB values of RGB pattern
719 *
720 * This function sets the primary color level at 8bit resolution(0 - 255). This pattern is processed via PQ pipeline @
721 * elemennts before it reaches the panel.
722 *
723 * @param[in] r - Red level of input pattern to be set. Valid range is (0 - 255)
724 * @param[in] g - Green level of input pattern to be set. Valid range is (0 - 255)
725 * @param[in] b - Blue level of input pattern to be set. Valid range is (0 - 255)
726 *
727 * @return tvError_t
728 *
729 * @retval tvERROR_NONE - Success
730 * @retval tvERROR_INVALID_PARAM - Input parameter is invalid
731 * @retval tvERROR_INVALID_STATE - Interface is not initialized
732 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
733 *
734 * @pre TvInit() should be called before calling this API
735 */
736tvError_t SetRGBPattern(int r,int g, int b) ;
737/**
738 * @brief Gets the current RGB values of the RGB pattern.
739 *
740 * This function gets the current primary color level(0 - 255) of the RGB pattern.
741 *
742 * @param[out] r - Red level of input pattern. Valid range is (0 - 255)
743 * @param[out] g - Green level of input pattern. Valid range is (0 - 255)
744 * @param[out] b - Blue level of input pattern. Valid range is (0 - 255)
745 *
746 * @return tvError_t
747 *
748 * @retval tvERROR_NONE - Success
749 * @retval tvERROR_INVALID_PARAM - Parameter is invalid
750 * @retval tvERROR_INVALID_STATE - Interface is not initialized
751 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
752 *
753 * @pre TvInit() should be called before calling this API
754 */
755tvError_t GetRGBPattern(int *r,int *g,int *b);
756/**
757 * @brief Sets the gray pattern value
758 *
759 * This function sets the various gray pattern levels. Should bypass all PQ elements @n
760 * and display the full screen grey pattern.
761 *
762 * @param[in] YUVValue - Gray level of input pattern to be set. Valid range is (0 - 255)
763 *
764 * @return tvError_t
765 *
766 * @retval tvERROR_NONE - Success
767 * @retval tvERROR_INVALID_PARAM - Input parameter is invalid
768 * @retval tvERROR_INVALID_STATE - Interface is not initialized
769 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
770 *
771 * @pre TvInit() and SetGammaPatternMode(true) should be called before calling this API
772 * @see SetGammaPatternMode()
773 */
775/**
776 * @brief Gets the current gray pattern value
777 *
778 * This function gets the current gray pattern level
779 *
780 * @param[out] YUVValue - Gray level of input pattern. Valid range is (0 - 255)
781 *
782 * @return tvError_t
783 *
784 * @retval tvERROR_NONE - Success
785 * @retval tvERROR_INVALID_PARAM - Parameter is invalid
786 * @retval tvERROR_INVALID_STATE - Interface is not initialized
787 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
788 *
789 * @pre TvInit() should be called before calling this API
790 */
792/**
793 * @brief Set the rgain value.
794 *
795 * This function sets the rgain value for specfic color temperature.
796 *
797 * @param[in] colorTemp - color temperature
798 * @param[in] rgain - rgain
799 *
800 * @return tvError_t
801 *
802 * @retval tvERROR_NONE - Success
803 * @retval tvERROR_INVALID_PARAM - Input parameter is invalid
804 * @retval tvERROR_INVALID_STATE - Interface is not initialized
805 * @retval tvERROR_OPERATION_NOT_SUPPORTED - Operation is not supported
806 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
807 *
808 * @pre TvInit() should be called before calling this API
809 */
811/**
812 * @brief Get the ggain value.
813 *
814 * This function gets the ggain value for specfic color temperature.
815 *
816 * @param[in] colorTemp - color temperature
817 * @param[in] rgain - rgain
818 *
819 * @return tvError_t
820 *
821 * @retval tvERROR_NONE - Success
822 * @retval tvERROR_INVALID_PARAM - Input parameter is invalid
823 * @retval tvERROR_INVALID_STATE - Interface is not initialized
824 * @retval tvERROR_OPERATION_NOT_SUPPORTED - Operation is not supported
825 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
826 *
827 * @pre TvInit() should be called before calling this API
828 */
830/**
831 * @brief Set the ggain value.
832 *
833 * This function sets the ggain value for specfic color temperature.
834 *
835 * @param[in] colorTemp - color temperature
836 * @param[in] ggain - ggain
837 *
838 * @return tvError_t
839 *
840 * @retval tvERROR_NONE - Success
841 * @retval tvERROR_INVALID_PARAM - Input parameter is invalid
842 * @retval tvERROR_INVALID_STATE - Interface is not initialized
843 * @retval tvERROR_OPERATION_NOT_SUPPORTED - Operation is not supported
844 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
845 *
846 * @pre TvInit() should be called before calling this API
847 */
849/**
850 * @brief Get the ggain value.
851 *
852 * This function gets the ggain value for specfic color temperature.
853 *
854 * @param[in] colorTemp - color temperature
855 * @param[in] ggain - ggain
856 *
857 * @return tvError_t
858 *
859 * @retval tvERROR_NONE - Success
860 * @retval tvERROR_INVALID_PARAM - Input parameter is invalid
861 * @retval tvERROR_INVALID_STATE - Interface is not initialized
862 * @retval tvERROR_OPERATION_NOT_SUPPORTED - Operation is not supported
863 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
864 *
865 * @pre TvInit() should be called before calling this API
866 */
868/**
869 * @brief Set the bgain value.
870 *
871 * This function sets the bgain value for specfic color temperature.
872 *
873 * @param[in] colorTemp - Color Temperature
874 * @param[in] bgain - Bgain value
875 *
876 * @return tvError_t
877 *
878 * @retval tvERROR_NONE - Success
879 * @retval tvERROR_INVALID_PARAM - Input parameter is invalid
880 * @retval tvERROR_INVALID_STATE - Interface is not initialized
881 * @retval tvERROR_OPERATION_NOT_SUPPORTED - Operation is not supported
882 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
883 *
884 * @pre TvInit() should be called before calling this API
885 */
887/**
888 * @brief Get the bgain value.
889 *
890 * This function gets the bgain value for specfic color temperature.
891 *
892 * @param[in] colorTemp - Color Temperature
893 * @param[out] bgain - bgain
894 *
895 * @return tvError_t
896 *
897 * @retval tvERROR_NONE - Success
898 * @retval tvERROR_INVALID_PARAM - Input parameter is invalid
899 * @retval tvERROR_INVALID_STATE - Interface is not initialized
900 * @retval tvERROR_OPERATION_NOT_SUPPORTED - Operation is not supported
901 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
902 *
903 * @pre TvInit() should be called before calling this API
904 */
906/**
907 * @brief Set the rpostoffset value.
908 *
909 * This function sets the rpostoffset value for specfic color temperature.
910 *
911 * @param[in] colorTemp - Color Temperature
912 * @param[in] rpostoffset - rpostoffset
913 *
914 * @return tvError_t
915 *
916 * @retval tvERROR_NONE - Success
917 * @retval tvERROR_INVALID_PARAM - Input parameter is invalid
918 * @retval tvERROR_INVALID_STATE - Interface is not initialized
919 * @retval tvERROR_OPERATION_NOT_SUPPORTED - Operation is not supported
920 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
921 *
922 * @pre TvInit() should be called before calling this API
923 */
925/**
926 * @brief Get the rpostoffset value.
927 *
928 * This function gets the rpostoffset value for specfic color temperature.
929 *
930 * @param[in] colorTemp - Color Temperature
931 * @param[in] rpostoffset - rpostoffset
932 *
933 * @return tvError_t
934 *
935 * @retval tvERROR_NONE - Success
936 * @retval tvERROR_INVALID_PARAM - Input parameter is invalid
937 * @retval tvERROR_INVALID_STATE - Interface is not initialized
938 * @retval tvERROR_OPERATION_NOT_SUPPORTED - Operation is not supported
939 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
940 *
941 * @pre TvInit() should be called before calling this API
942 */
944/**
945 * @brief Set the gpostoffset value.
946 *
947 * This function sets the gpostoffset value for specfic color temperature.
948 *
949 * @param[in] colorTemp - Color Temperature
950 * @param[out] gpostoffset - gpostoffset
951 *
952 * @return tvError_t
953 *
954 * @retval tvERROR_NONE - Success
955 * @retval tvERROR_INVALID_PARAM - Input parameter is invalid
956 * @retval tvERROR_INVALID_STATE - Interface is not initialized
957 * @retval tvERROR_OPERATION_NOT_SUPPORTED - Operation is not supported
958 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
959 *
960 * @pre TvInit() should be called before calling this API
961 */
963/**
964 * @brief Get the gpostoffset value.
965 *
966 * This function gets the gpostoffset value for specfic color temperature.
967 *
968 * @param[in] colorTemp - Color Temperature
969 * @param[in] gpostoffset - gpostoffset
970 *
971 * @return tvError_t
972 *
973 * @retval tvERROR_NONE - Success
974 * @retval tvERROR_INVALID_PARAM - Input parameter is invalid
975 * @retval tvERROR_INVALID_STATE - Interface is not initialized
976 * @retval tvERROR_OPERATION_NOT_SUPPORTED - Operation is not supported
977 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
978 *
979 * @pre TvInit() should be called before calling this API
980 */
982/**
983 * @brief Set the bpostoffset value.
984 *
985 * This function sets the bpostoffset value for specfic color temperature.
986 *
987 * @param[in] colorTemp - Color Temperature
988 * @param[out] bpostoffset - bpostoffset
989 *
990 * @return tvError_t
991 *
992 * @retval tvERROR_NONE - Success
993 * @retval tvERROR_INVALID_PARAM - Input parameter is invalid
994 * @retval tvERROR_INVALID_STATE - Interface is not initialized
995 * @retval tvERROR_OPERATION_NOT_SUPPORTED - Operation is not supported
996 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
997 *
998 * @pre TvInit() should be called before calling this API
999 */
1001/**
1002 * @brief Get the gpostoffset value.
1003 *
1004 * This function gets the gpostoffset value for specfic color temperature.
1005 *
1006 * @param[in] colorTemp - Color Temperature
1007 * @param[in] bpostoffset - bpostoffset
1008 *
1009 * @return tvError_t
1010 *
1011 * @retval tvERROR_NONE - Success
1012 * @retval tvERROR_INVALID_PARAM - Input parameter is invalid
1013 * @retval tvERROR_INVALID_STATE - Interface is not initialized
1014 * @retval tvERROR_OPERATION_NOT_SUPPORTED - Operation is not supported
1015 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
1016 *
1017 * @pre TvInit() should be called before calling this API
1018 */
1020
1021/**
1022 * @brief Gets the supported picture modes and their count
1023 *
1024 * This function get the array of picture modes supported and their count
1025 *
1026 * @param[out] pictureModes - List of available picture modes. Valid values are as per values returned by pic_modes_t.name and pic_modes_t.values parameter.
1027 * @param[out] count - Count of supported picture modes. Maximum possile value is PIC_MODES_SUPPORTED_MAX. Min is 1.
1028 *
1029 * @return tvError_t
1030 *
1031 * @retval tvERROR_NONE - Success
1032 * @retval tvERROR_INVALID_PARAM - Parameter is invalid
1033 * @retval tvERROR_INVALID_STATE - Interface is not initialized
1034 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
1035 *
1036 * @pre TvInit() should be called before calling this API
1037 */
1038tvError_t GetTVSupportedPictureModes(pic_modes_t *pictureModes[],unsigned short *count);
1039/**
1040 * @brief Registers the video format change callback
1041 *
1042 * This function registers a callback for video format change event.
1043 * Once registered, the callback function will be called by the TV Settings HAL implementation
1044 * whenever the system detects a change in video format of the primary video currently played.
1045 *
1046 * @param[in] cbData - Callback data. Please refer ::tvVideoFormatCallbackData
1047 *
1048 * @pre TvInit() should be called before calling this API
1049 */
1051/**
1052 * @brief Registers the VideoContent FMM change callback
1053 *
1054 * This function registers a callback for the playback Filmmaker mode change event.
1055 * Once registered, the callback function will be called by the TV Settings HAL implementation
1056 * When the system detects SEI content_type 0x01 and content_subtype 0x00, the FMM enter event is raised.
1057 * When the system detects SEI content_type is other than 0x01 or content_subtype is other than 0x00, the FMM exit event is raised.
1058 * This applies only to IP video sources and Tuner video sources.
1059 *
1060 * @param[in] cbData - Callback data. Please refer::tvVideoContentCallbackData
1061 *
1062 *
1063 * @pre TvInit() should be called before calling this API
1064 */
1066/**
1067 * @brief tv Video Resolution ChangeCB
1068 *
1069 *
1070 * @pre TvInit() should be called before calling this API
1071 */
1072typedef void (*tvVideoResolutionChangeCB)(tvResolutionParam_t resolutionStruct,void *userData);
1078
1079/**
1080 * @brief Registers the Video resolution change callback.
1081 *
1082 * This function registers a callback for playback content video resolution change event.
1083 * Once registered, the callback function will be called by the TV Settings HAL implementation
1084 * whenever the system detects resolution change for the primary video currently played.
1085 *
1086 * @param[in] cbData - Callback data. Please refer ::tvVideoResolutionCallbackData
1087 *
1088 *
1089 * @pre TvInit() should be called before calling this API
1090 */
1092/**
1093 * @brief tv Video FrameRate Change CB
1094 *
1095 *
1096 * @pre TvInit() should be called before calling this API
1097 */
1098typedef void (*tvVideoFrameRateChangeCB)(tvVideoFrameRate_t frameRate,void *userData);
1104
1105/**
1106 * @brief Registers the Video framerate change callback
1107 *
1108 * This function registers a callback for playback content video frame rate change event.
1109 * Once registered, the callback function will be called by the TV Settings HAL implementation
1110 * whenever the system detects frame rate change for the primary video currently played.
1111 *
1112 * @param[in] cbData - Callback function. Please refer ::tvVideoFrameRateCallbackData
1113 *
1114 *
1115 * @pre TvInit() should be called before calling this API
1116 */
1118/**
1119 * @brief Gets the supported DV modes and their count
1120 *
1121 * This function returns the supported Dolby Vision modes and their count
1122 *
1123 * @param[out] dvModes - hdr 10 modes
1124 * @param[in] count - count
1125 *
1126 *
1127 * @return tvError_t
1128 *
1129 * @retval tvERROR_NONE - Success
1130 * @retval tvERROR_INVALID_PARAM - Input parameter is invalid
1131 * @retval tvERROR_INVALID_STATE - Interface is not initialized
1132 * @retval tvERROR_OPERATION_NOT_SUPPORTED - Operation is not supported
1133 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
1134 *
1135 * @pre TvInit() should be called before calling this API
1136 */
1137tvError_t GetTVSupportedDVModes(pic_modes_t *dvModes[],unsigned short *count);
1138
1139/**
1140 * @brief Sets dolby vision mode. To be deprecated soon.
1141 * @note SOC vendors can stub these ODM functions and mark it as weak
1142 *
1143 * This function sets the Dolby vision mode in Dolby vision core.
1144 * The change takes effect for current primary video source selected, primary video format if handled via Dolby vision core
1145 * and picture mode selected, but not saved for future use. The value is discarded if primary video format or
1146 * primary video source or picture mode changes.
1147 *
1148 * @param[in] dolbyMode - Dolby vision mode to be set. Valid values can be one of the
1149 * strings from ::pic_modes_t.name parameter returned by GetTVSupportedDolbyVisionModesODM
1150 *
1151 * @return tvError_t
1152 *
1153 * @retval tvERROR_NONE - Success
1154 *
1155 * @retval tvERROR_INVALID_PARAM - Input parameter is invalid
1156 * @retval tvERROR_INVALID_STATE - Interface is not initialized
1157 * @retval tvERROR_OPERATION_NOT_SUPPORTED - Operation is not supported
1158 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
1159 *
1160 * @pre tvInit() should be called before calling this API
1161 *
1162 * @see GetTVDolbyVisionMode()
1163 */
1164tvError_t SetTVDolbyVisionMode(const char * dolbyMode);
1165/**
1166 * @brief Gets the current current dolby vision mode
1167 *
1168 * This function gets the current Dolby vision mode value for the primary video source selected,
1169 * primary video format played and picture mode selected.
1170 *
1171 * @param[out] dolbyMode - Current Dolby vision mode. Valid values are member of ::tvDolbyMode_t
1172 *
1173 * @return tvError_t
1174 *
1175 * @retval tvERROR_NONE - Success
1176 * @retval tvERROR_INVALID_STATE - Interface is not initialized
1177 * @retval tvERROR_INVALID_PARAM - Parameter is invalid
1178 * @retval tvERROR_OPERATION_NOT_SUPPORTED - Operation is not supported
1179 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
1180 *
1181 * @pre TvInit() should be called before calling this API
1182 *
1183 * @see SetTVDolbyVisionMode()
1184 */
1186/**
1187 * @brief Sets the HLG mode. To be deprecated soon.
1188 * @note SOC vendors can stub these ODM functions and mark it as weak
1189 *
1190 * This function sets the HLG mode in Dolby vision core.
1191 * The change takes effect for current primary video source selected, primary video format if handled via Dolby vision core
1192 * and picture mode selected, but not saved for future use. The value is discarded if primary video format or
1193 * primary video source or picture mode changes.
1194 *
1195 * @param[in] hlgMode - HLG mode to be set. Valid values can be one of the
1196 * strings from ::pic_modes_t.name parameter returned by GetTVSupportedHLGModesODM
1197 *
1198 *
1199 * @return tvError_t
1200 *
1201 * @retval tvERROR_NONE - Success
1202 *
1203 * @retval tvERROR_INVALID_PARAM - Input parameter is invalid
1204 * @retval tvERROR_INVALID_STATE - Interface is not initialized
1205 * @retval tvERROR_OPERATION_NOT_SUPPORTED - Operation is not supported
1206 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
1207 *
1208 * @pre tvInit() should be called before calling this API
1209 */
1210tvError_t SetTVHLGMode(const char * hlgMode);
1211/**
1212 * @brief Sets the HDR10 mode. To be deprecated soon.
1213 * @note SOC vendors can stub these ODM functions and mark it as weak
1214 *
1215 * This function sets the HDR10 mode in Dolby vision core.
1216 * The change takes effect for current primary video source selected, primary video format if handled via Dolby vision core
1217 * and picture mode selected, but not saved for future use. The value is discarded if primary video format or
1218 * primary video source or picture mode changes.
1219 *
1220 * @param[in] hdr10Mode - HDR10 mode to be set. Valid values can be one of the
1221 * strings from ::pic_modes_t.name parameter returned by GetTVSupportedHDR10ModesODM
1222 *
1223 * @return tvError_t
1224 *
1225 * @retval tvERROR_NONE - Success
1226 * @retval tvERROR_INVALID_PARAM - Input parameter is invalid
1227 * @retval tvERROR_INVALID_STATE - Interface is not initialized
1228 * @retval tvERROR_OPERATION_NOT_SUPPORTED - Operation is not supported
1229 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
1230 *
1231 * @pre tvInit() should be called before calling this API
1232 */
1233tvError_t SetTVHDR10Mode(const char * hdr10Mode);
1234/**
1235 * @brief Gets the current current HLG mode
1236 *
1237 * This function gets the current HLG mode value for the primary video source selected,
1238 * primary video format played and picture mode selected.
1239 *
1240 * @param[out] hlgMode - HLG mode to get
1241 *
1242 * @return tvError_t
1243 *
1244 * @retval tvERROR_NONE - Success
1245 * @retval tvERROR_INVALID_PARAM - Input parameter is invalid
1246 * @retval tvERROR_INVALID_STATE - Interface is not initialized
1247 * @retval tvERROR_OPERATION_NOT_SUPPORTED - Operation is not supported
1248 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
1249 *
1250 * @pre TvInit() should be called before calling this API
1251 */
1253/**
1254 * @brief Gets the current current HDR10 mode
1255 *
1256 * This function gets the current HDR10 mode value for the primary video source selected,
1257 * primary video format played and picture mode selected.
1258 *
1259 * @param[out] hdr10Mode - HDR mode to get
1260 *
1261 * @return tvError_t
1262 *
1263 * @retval tvERROR_NONE - Success
1264 * @retval tvERROR_INVALID_PARAM - Input parameter is invalid
1265 * @retval tvERROR_INVALID_STATE - Interface is not initialized
1266 * @retval tvERROR_OPERATION_NOT_SUPPORTED - Operation is not supported
1267 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
1268 *
1269 * @pre TvInit() should be called before calling this API
1270 */
1271tvError_t GetTVHDR10Mode(char *hdr10Mode);
1272/**
1273 * @brief Gets the supported HLG modes and their count. To be deprecated soon.
1274 * @note SOC vendors can stub these ODM functions and mark it as weak
1275 *
1276 * This function returns the supported HLG modes and their count
1277 *
1278 * @param[out] dvModes[] - List of available HLG modes. Refer ::pic_modes_t and ::tvDolbyMode_t @n
1279 * Valid values are "dark" and & "bright" for ::pic_modes_t.name @n
1280 * Valid values are member of ::tvDolbyMode_t tvHLGMode_Dark and ::tvDolbyMode_t tvHLGMode_Bright @n
1281 * for ::pic_modes_t.value.
1282 * @param[out] count - Count of supported HLG modes. Max and min is 2
1283 *
1284 * @return tvError_t
1285 *
1286 * @retval tvERROR_NONE - Success
1287 * @retval tvERROR_INVALID_PARAM - Input parameter is invalid
1288 * @retval tvERROR_OPERATION_NOT_SUPPORTED - Operation is not supported
1289 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
1290 *
1291 * @pre tvInit() should be called before calling this API
1292 */
1293tvError_t GetTVSupportedHLGModes(pic_modes_t *dvModes[],unsigned short *count);
1294/**
1295 * @brief Gets the supported HDR10 modes and their count. To be deprecated soon.
1296 * @note SOC vendors can stub these ODM functions and mark it as weak
1297 *
1298 * This function returns the supported HDR10 modes and their count
1299 *
1300 * @param[out] dvModes[] - List of available HDR10 modes. Refer ::pic_modes_t and ::tvDolbyMode_t @n
1301 * Valid values are "dark" and & "bright" for ::pic_modes_t.name @n
1302 * Valid values are member of ::tvDolbyMode_t tvHDR10Mode_Dark and ::tvDolbyMode_t tvHDR10Mode_Bright @n
1303 * for ::pic_modes_t.value.
1304 * @param[out] count - Count of supported HDR10 modes. Max and min is 2
1305 *
1306 * @return tvError_t
1307 *
1308 * @retval tvERROR_NONE - Success
1309 * @retval tvERROR_INVALID_PARAM - Input parameter is invalid
1310 * @retval tvERROR_OPERATION_NOT_SUPPORTED - Operation is not supported
1311 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
1312 *
1313 * @pre tvInit() should be called before calling this API
1314 */
1315tvError_t GetTVSupportedHDR10Modes(pic_modes_t *dvModes[],unsigned short *count);
1316
1317/**
1318 * @brief Sets the dynamic contrast
1319 *
1320 * This function updates the dynamic contrast state to PQ module. The change takes effect for current
1321 * primary video source selected, video format played and picture mode selected, but not saved in picture profile database.
1322 * The value is discarded and default value from picture profile database is used when primary video format
1323 * or primary video source or picture mode changes.
1324 *
1325 * @param[in] dynamicContrastEnable - Dynamic contrast enable flag value (valid values are "enabled" for enable and "disabled" for disable)
1326 *
1327 * @return tvError_t
1328 *
1329 * @retval tvERROR_NONE - Success
1330 * @retval tvERROR_INVALID_PARAM - Input parameter is invalid
1331 * @retval tvERROR_INVALID_STATE - Interface is not initialized
1332 * @retval tvERROR_OPERATION_NOT_SUPPORTED - Operation is not supported
1333 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
1334 *
1335 * @pre TvInit() should be called before calling this API
1336 *
1337 * @see GetDynamicContrast()
1338 */
1339tvError_t SetDynamicContrast(const char *dynamicContrastEnable);
1340/**
1341 * @brief Gets the current Dynamic contrast mode
1342 *
1343 * This function gets the current dynamic contrast value for the primary video source selected,
1344 * primary video format played and picture mode selected.
1345 *
1346 * @param[out] isDynamicContrastEnabled - Current dynamic contrast mode flag value. (valid values are "enabled" for enable and "disabled" for disable)
1347 *
1348 * @return tvError_t
1349 *
1350 * @retval tvERROR_NONE - Success
1351 * @retval tvERROR_INVALID_PARAM - Parameter is invalid
1352 * @retval tvERROR_INVALID_STATE - Interface is not initialized
1353 * @retval tvERROR_OPERATION_NOT_SUPPORTED - Operation is not supported
1354 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
1355 *
1356 * @pre TvInit() should be called before calling this API
1357 *
1358 * @see SetDynamicContrast()
1359 */
1360tvError_t GetDynamicContrast(char *isDynamicContrastEnabled);
1361/**
1362 * @brief Sets or saves the rgain value
1363 *
1364 * This function sets or saves the rgain value for a specfic color temperature and video source. If it is set operation (saveOnly=0) @n
1365 * the rgb gain and offset for the specified colour temperature will be loaded in white balance module and @n
1366 * the new red gain value from this API will be updated, but not saved in picture profile database.
1367 * The value is discarded and default value from picture profile database is used when primary video format
1368 * or primary video source or picture mode changes.
1369 * If it is save operation (saveOnly =1) then the rgain will be saved for the specific video source and colour temperature. The saved
1370 * rgain value will be automatically applied in white balance module when the colour temperaure choice is made as result of
1371 * picture mode change or primary video format change or primary video source change.
1372 *
1373 * @param[in] colorTemp - Color temperature value to be save/set. Valid value will be a member of ::tvColorTemp_t
1374 * @param[in] rgain - Rgain Value to be set. Valid range is (0 - 2047)
1375 * @param[in] sourceId - SourceId value.
1376 * @param[in] saveOnly - Save=1 / Set=0 ( @a 0 for rgain value will be applied to PQ HW. i.e changes can be visible immediately on screen
1377 * @a 1 for rgain value will be saved and applied later i.e changes not visible immediately for current video)
1378 *
1379 * @return tvError_t
1380 *
1381 * @retval tvERROR_NONE - Success
1382 * @retval tvERROR_INVALID_STATE - Interface is not initialized
1383 * @retval tvERROR_INVALID_PARAM - Input parameter is invalid
1384 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
1385 *
1386 * @pre TvInit() should be called before calling this API
1387 */
1388tvError_t SetColorTemp_Rgain_onSource(tvColorTemp_t colorTemp, int rgain,int sourceId, int saveOnly);
1389/**
1390 * @brief Gets the current rgain value.
1391 *
1392 * This function gets the current rgain value for a specific color temperature and source offset.
1393 *
1394 * @param[in] colorTemp - Color temperature value. Valid value will be a member of ::tvColorTemp_t
1395 * @param[out] rgain - Rgain Value. Valid range is (0 - 2047)
1396 * @param[in] sourceId - SourceId value.
1397 *
1398 * @return tvError_t
1399 *
1400 * @retval tvERROR_NONE - Success
1401 * @retval tvERROR_INVALID_STATE - Interface is not initialized
1402 * @retval tvERROR_INVALID_PARAM - Input parameter is invalid
1403 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
1404 *
1405 * @pre TvInit() should be called before calling this API
1406 */
1407tvError_t GetColorTemp_Rgain_onSource(tvColorTemp_t colorTemp, int* rgain,int sourceId);
1408/**
1409 * @brief Sets or saves the ggain value
1410 *
1411 * This function sets or saves the ggain value for a specfic color temperature and video source. If it is set operation (saveOnly=0) @n
1412 * the rgb gain and offset for the specified colour temperature will be loaded in white balance module and @n
1413 * the new green gain value from this API will be updated, but not saved in picture profile database.
1414 * The value is discarded and default value from picture profile database is used when primary video format
1415 * or primary video source or picture mode changes.
1416 * If it is save operation (saveOnly =1) then the ggain will be saved for the specific video source and colour temperature. The saved
1417 * ggain value should be automatically applied in white balance module when the colour temperaure choice is made as result of
1418 * picture mode change or primary video format change or primary video source change.
1419 *
1420 * @param[in] colorTemp - Color temperature value to be save/set. Valid value will be a member of ::tvColorTemp_t
1421 * @param[in] ggain - Ggain Value to be set. Valid range is (0 - 2047)
1422 * @param[in] sourceId - SourceId value.
1423 * @param[in] saveOnly - Save=1 / Set=0 ( @a 0 for ggain value will be applied to PQ HW. i.e changes can be visible immediately on screen
1424 * @a 1 for ggain value will be saved and applied later i.e changes not visible immediately for current video)
1425 *
1426 * @return tvError_t
1427 *
1428 * @retval tvERROR_NONE - Success
1429 * @retval tvERROR_INVALID_STATE - Interface is not initialized
1430 * @retval tvERROR_INVALID_PARAM - Input parameter is invalid
1431 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
1432 *
1433 * @pre TvInit() should be called before calling this API
1434 */
1435tvError_t SetColorTemp_Ggain_onSource(tvColorTemp_t colorTemp, int ggain,int sourceId, int saveOnly);
1436/**
1437 * @brief Gets the current ggain value for a specfic color temperature and source
1438 *
1439 * This function gets the ggain value for a specfic color temperature and source.
1440 *
1441 * @param[in] colorTemp - Color temperature value. Valid value will be a member of ::tvColorTemp_t
1442 * @param[out] ggain - Ggain Value. Valid range is (0 - 2047)
1443 * @param[in] sourceId - SourceId value.
1444 *
1445 * @return tvError_t
1446 *
1447 * @retval tvERROR_NONE - Success
1448 * @retval tvERROR_INVALID_STATE - Interface is not initialized
1449 * @retval tvERROR_INVALID_PARAM - Input parameter is invalid
1450 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
1451 *
1452 * @pre TvInit() should be called before calling this API
1453 */
1454tvError_t GetColorTemp_Ggain_onSource(tvColorTemp_t colorTemp, int* ggain,int sourceId);
1455/**
1456 * @brief Sets or saves the bgain value
1457 *
1458 * This function sets or saves the bgain value for a specfic color temperature and video source. If it is set operation (saveOnly=0) @n
1459 * the rgb gain and offset for the specified colour temperature will be loaded in white balance module and @n
1460 * the new bgain gain value from this API will be updated, but not saved in picture profile database.
1461 * The value is discarded and default value from picture profile database is used when primary video format
1462 * or primary video source or picture mode changes.
1463 * If it is save operation (saveOnly =1) then the bgain will be saved for the specific video source and colour temperature. The saved
1464 * bgain value will be automatically applied in white balance module when the colour temperaure choice is made as result of
1465 * picture mode change or primary video format change or primary video source change.
1466 *
1467 * @param[in] colorTemp - Color temperature value to be save/set. Valid value will be a member of ::tvColorTemp_t
1468 * @param[in] bgain - Bgain Value to be set. Valid range is (0 - 2047)
1469 * @param[in] sourceId - SourceId value.
1470 * @param[in] saveOnly - Save=1 / Set=0 ( @a 0 for bgain value will be applied to PQ HW. i.e changes can be visible immediately on screen
1471 * @a 1 for bgain value will be saved and applied later i.e changes not visible immediately for current video)
1472 *
1473 * @return tvError_t
1474 *
1475 * @retval tvERROR_NONE - Success
1476 * @retval tvERROR_INVALID_STATE - Interface is not initialized
1477 * @retval tvERROR_INVALID_PARAM - Input parameter is invalid
1478 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
1479 *
1480 * @pre TvInit() should be called before calling this API
1481 */
1482tvError_t SetColorTemp_Bgain_onSource(tvColorTemp_t colorTemp, int bgain,int sourceId, int saveOnly);
1483/**
1484 * @brief Gets the current bgain value for a specfic color temperature and source
1485 *
1486 * This function gets the bgain value for a specfic color temperature and source
1487 *
1488 * @param[in] colorTemp - Color temperature value. Valid value will be a member of ::tvColorTemp_t
1489 * @param[out] bgain - Bgain Value. Valid range is (0 - 2047)
1490 * @param[in] sourceId - SourceId value.
1491 *
1492 * @return tvError_t
1493 *
1494 * @retval tvERROR_NONE - Success
1495 * @retval tvERROR_INVALID_STATE - Interface is not initialized
1496 * @retval tvERROR_INVALID_PARAM - Input parameter is invalid
1497 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
1498 *
1499 * @pre TvInit() should be called before calling this API
1500 */
1501tvError_t GetColorTemp_Bgain_onSource(tvColorTemp_t colorTemp, int* bgain,int sourceId);
1502/**
1503 * @brief Sets or saves the rpostoffset value
1504 *
1505 * This function sets or saves the rpostoffset value for a specfic color temperature and video source. If it is set operation (saveOnly=0) @n
1506 * the rgb gain and offset for the specified colour temperature will be loaded in white balance module and @n
1507 * the new rpostoffset gain value from this API will be updated, but not saved in picture profile database.
1508 * The value is discarded and default value from picture profile database is used when primary video format
1509 * or primary video source or picture mode changes.
1510 * If it is save operation (saveOnly =1) then the rpostoffset will be saved for the specific video source and colour temperature. The saved
1511 * rpostoffset value should be automatically applied in white balance module when the colour temperaure choice is made as result of
1512 * picture mode change or primary video format change or primary video source change.
1513 *
1514 * @param[in] colorTemp - Color temperature value to be save/set. Valid value will be a member of ::tvColorTemp_t
1515 * @param[in] rpostoffset - Rpostoffset Value to be set. Valid range is (-1024 to +1023)
1516 * @param[in] sourceId - SourceId value.
1517 * @param[in] saveOnly - Save=1 / Set=0 ( @a 0 for rpostoffset value will be applied to PQ HW. i.e changes can be visible immediately on screen
1518 * @a 1 for rpostoffset value will be saved and applied later i.e changes not visible immediately for current video)
1519 *
1520 * @return tvError_t
1521 *
1522 * @retval tvERROR_NONE - Success
1523 * @retval tvERROR_INVALID_STATE - Interface is not initialized
1524 * @retval tvERROR_INVALID_PARAM - Input parameter is invalid
1525 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
1526 *
1527 * @pre TvInit() should be called before calling this API
1528 */
1529tvError_t SetColorTemp_R_post_offset_onSource(tvColorTemp_t colorTemp, int rpostoffset,int sourceId, int saveOnly);
1530/**
1531 * @brief Gets the current rpostoffset value
1532 *
1533 * This function gets the current rpostoffset value for a specfic color temperature and source.
1534 *
1535 * @param[in] colorTemp - Color temperature value. Valid value will be a member of ::tvColorTemp_t
1536 * @param[out] rpostoffset - Rpostoffset Value. Valid range is (-1024 to +1023)
1537 * @param[in] sourceId - SourceId value.
1538 *
1539 * @return tvError_t
1540 * @retval tvERROR_NONE - Success
1541 * @retval tvERROR_INVALID_STATE - Interface is not initialized
1542 * @retval tvERROR_INVALID_PARAM - Input parameter is invalid
1543 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
1544 *
1545 * @pre TvInit() should be called before calling this API
1546 */
1547tvError_t GetColorTemp_R_post_offset_onSource(tvColorTemp_t colorTemp, int* rpostoffset,int sourceId);
1548/**
1549 * @brief Sets or saves the gpostoffset value
1550 *
1551 * This function sets or saves the gpostoffset value for a specfic color temperature and video source. If it is set operation (saveOnly=0) @n
1552 * the rgb gain and offset for the specified colour temperature will be loaded in white balance module and @n
1553 * the new gpostoffset gain value from this API will be updated, but not saved in picture profile database.
1554 * The value is discarded and default value from picture profile database is used when primary video format
1555 * or primary video source or picture mode changes.
1556 * If it is save operation (saveOnly =1) then the gpostoffset will be saved for the specific video source and colour temperature. The saved
1557 * gpostoffset value should be automatically applied in white balance module when the colour temperaure choice is made as result of
1558 * picture mode change or primary video format change or primary video source change.
1559 *
1560 * @param[in] colorTemp - Color temperature value to be save/set. Valid value will be a member of ::tvColorTemp_t
1561 * @param[in] gpostoffset - Gpostoffset Value to be set. Valid range is (-1024 to +1023)
1562 * @param[in] sourceId - SourceId value.
1563 * @param[in] saveOnly - Save=1 / Set=0 ( @a 0 for gpostoffset value will be applied to PQ HW. i.e changes can be visible immediately on screen
1564 * @a 1 for gpostoffset value will be saved and applied later i.e changes not visible immediately for current video)
1565 *
1566 * @return tvError_t
1567 * @retval tvERROR_NONE - Success
1568 * @retval tvERROR_INVALID_STATE - Interface is not initialized
1569 * @retval tvERROR_INVALID_PARAM - Input parameter is invalid
1570 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
1571 *
1572 * @pre TvInit() should be called before calling this API
1573 */
1574tvError_t SetColorTemp_G_post_offset_onSource(tvColorTemp_t colorTemp, int gpostoffset,int sourceId, int saveOnly);
1575/**
1576 * @brief Gets the current gpostoffset value for a specfic color temperature and source
1577 *
1578 * This function gets the gpostoffset value for a specfic color temperature and source.
1579 *
1580 * @param[in] colorTemp - Color temperature value. Valid value will be a member of ::tvColorTemp_t
1581 * @param[out] gpostoffset - Gpostoffset Value. Valid range is (-1024 to +1023)
1582 * @param[in] sourceId - SourceId value.
1583 *
1584 * @return tvError_t
1585 *
1586 * @retval tvERROR_NONE - Success
1587 * @retval tvERROR_INVALID_STATE - Interface is not initialized
1588 * @retval tvERROR_INVALID_PARAM - Input parameter is invalid
1589 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
1590 *
1591 * @pre TvInit() should be called before calling this API
1592 */
1593tvError_t GetColorTemp_G_post_offset_onSource(tvColorTemp_t colorTemp, int* gpostoffset,int sourceId);
1594/**
1595 * @brief Sets or saves the bpostoffset value
1596 *
1597 * This function sets or saves the bpostoffset value for a specfic color temperature and video source. If it is set operation (saveOnly=0) @n
1598 * the rgb gain and offset for the specified colour temperature will be loaded in white balance module and @n
1599 * the new bpostoffset gain value from this API will be updated, but not saved in picture profile database.
1600 * The value is discarded and default value from picture profile database is used when primary video format
1601 * or primary video source or picture mode changes.
1602 * If it is save operation (saveOnly =1) then the bpostoffset will be saved for the specific video source and colour temperature. The saved
1603 * bpostoffset value should be automatically applied in white balance module when the colour temperaure choice is made as result of
1604 * picture mode change or primary video format change or primary video source change.
1605 *
1606 * @param[in] colorTemp - Color temperature value to be save/set. Valid value will be a member of ::tvColorTemp_t
1607 * @param[in] bpostoffset - Bpostoffset Value to be set. Valid range is (-1024 to +1023)
1608 * @param[in] sourceId - SourceId value.
1609 * @param[in] saveOnly - Save=1 / Set=0 ( @a 0 for bpostoffset value will be applied to PQ HW. i.e changes can be visible immediately on screen
1610 * @a 1 for bpostoffset value will be saved and applied later i.e changes not visible immediately for current video)
1611 *
1612 * @return tvError_t
1613 * @retval tvERROR_NONE - Success
1614 * @retval tvERROR_INVALID_STATE - Interface is not initialized
1615 * @retval tvERROR_INVALID_PARAM - Input parameter is invalid
1616 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
1617 *
1618 * @pre TvInit() should be called before calling this API
1619 */
1620tvError_t SetColorTemp_B_post_offset_onSource(tvColorTemp_t colorTemp, int bpostoffset,int sourceId, int saveOnly);
1621/**
1622 * @brief Gets the current bpostoffset value for a specfic color temperature and source
1623 *
1624 * This function gets the bpostoffset value for a specfic color temperature and source
1625 *
1626 * @param[in] colorTemp - Color temperature value. Valid value will be a member of ::tvColorTemp_t
1627 * @param[out] bpostoffset - Bpostoffset Value. Valid range is (-1024 to +1023)
1628 * @param[in] sourceId - SourceId value.
1629 *
1630 * @return tvError_t
1631 * @retval tvERROR_NONE - Success
1632 * @retval tvERROR_INVALID_STATE - Interface is not initialized
1633 * @retval tvERROR_INVALID_PARAM - Input parameter is invalid
1634 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
1635 *
1636 * @pre TvInit() should be called before calling this API
1637 */
1638tvError_t GetColorTemp_B_post_offset_onSource(tvColorTemp_t colorTemp, int* bpostoffset,int sourceId);
1639/**
1640 * @brief Sets the white balance control. To be deprecated soon.
1641 * @note SOC vendors can stub these ODM functions and mark it as weak
1642 *
1643 * This function sets the white balance for a specific source, color, color temperature and control.
1644 *
1645 * @param[in] inputSrc - Source of input to be set. Valid values are ( "HDMI", "TV", "AV" )
1646 * @param[in] colorTemp - Color temperature value to be set. Valid values are ( "custom", "normal", "cool", "warm" )
1647 * @param[in] color - Color to be set. Valid values are ( "red", "blue", "green" )
1648 * @param[in] ctrl - Control to be set. Valid values are ( "gain", "offset" )
1649 * @param[in] value - Values to be set for the specific control. Valid range : for gain is ( 0 to 2047 ), for offset is ( -1024 to 1024 )
1650 *
1651 * @return tvError_t
1652 *
1653 * @retval tvERROR_NONE - Success
1654 * @retval tvERROR_INVALID_PARAM - Input parameter is invalid
1655 * @retval tvERROR_INVALID_STATE - When the input value is not valid
1656 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
1657 *
1658 * @pre tvInit() should be called before calling this API
1659 */
1660tvError_t setWBctrl(char *inputSrc, char *colorTemp,char *color, char *ctrl, int value);
1661/**
1662 * @brief Gets the current white balance control.
1663 *
1664 * This function gets the white balance for a specific source, color, color temperature and control.
1665 *
1666 * @param[in] inputSrc - Input source
1667 * @param[in] colortemp - color temperature value
1668 * @param[in] color - color values (red, blue or green)
1669 * @param[in] ctrl - control values (gain or offset)
1670 * @param[in] value - pointer to store value which will be returned by driver
1671 *
1672 * @return tvError_t
1673 *
1674 * @retval tvERROR_NONE - Success
1675 * @retval tvERROR_INVALID_PARAM - Input parameter is invalid
1676 * @retval tvERROR_INVALID_STATE - Interface is not initialized
1677 * @retval tvERROR_OPERATION_NOT_SUPPORTED - Operation is not supported
1678 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
1679 *
1680 * @pre TvInit() should be called before calling this API
1681 */
1682tvError_t getWBctrl(char *inputSrc, char *colortemp, char *color, char *ctrl, int *value);
1683/**
1684 * @brief Gets the current white balance info. To be deprecated soon.
1685 * @note SOC vendors can stub these ODM functions and mark it as weak
1686 *
1687 * This function gets the White balance info into the vectors
1688 *
1689 * @param[out] params - WB info param. Valid values for : wbControls is ( "gain", "offset" ), wbGain is (0 to 2047), wbOffset is (-1024 to 1024))
1690 * @param[out] selector - Selector vector. Valid values are ( "color temp", "input" )
1691 * @param[out] colorTmp - Color temperature vector. Valid values are ( "custom", "normal", "cool", "warm" )
1692 * @param[out] input - Input source vector. Valid values are ( "TV", "HDMI", "AV" )
1693 *
1694 * @return tvError_t
1695 *
1696 * @retval tvERROR_NONE - Success
1697 * @retval tvERROR_INVALID_PARAM - Input parameter is invalid
1698 * @retval tvERROR_INVALID_STATE - When the input value is not valid
1699 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
1700 *
1701 * @pre tvInit() should be called before calling this API
1702 */
1703tvError_t getWbInfo(getWBInfo_t* params, std::vector<std::string> &selector, std::vector<std::string> &colorTmp, std::vector<std::string> &input);
1704/**
1705 * @brief Enable/disable WB mode.
1706 *
1707 * This function enables or disables white balance mode.
1708 *
1709 * @param[in] value - value
1710 *
1711 * @return tvError_t
1712 *
1713 * @retval tvERROR_NONE - Success
1714 * @retval tvERROR_INVALID_PARAM - Input parameter is invalid
1715 * @retval tvERROR_INVALID_STATE - Interface is not initialized
1716 * @retval tvERROR_OPERATION_NOT_SUPPORTED - Operation is not supported
1717 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
1718 *
1719 * @pre TvInit() should be called before calling this API
1720 */
1722/**
1723 * @brief Gets the supported Component colors
1724 *
1725 * This function gets the supported component colors. @n
1726 * The output has the bitwise OR-ed value of all the supported colors (tvDataComponentColor_t).
1727 *
1728 * @param[out] blComponentColor - Bit wise OR-ed value for supported component colors. Please refer ::tvDataComponentColor_t
1729 *
1730 * @return tvError_t
1731 *
1732 * @retval tvERROR_NONE - Success
1733 * @retval tvERROR_INVALID_PARAM - Parameter is invalid
1734 * @retval tvERROR_INVALID_STATE - Interface is not initialized
1735 * @retval tvERROR_OPERATION_NOT_SUPPORTED - Operation is not supported
1736 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
1737 *
1738 * @pre TvInit() should be called before calling this API
1739 */
1741/**
1742 * @brief Sets current component saturation
1743 *
1744 * This function updates the component saturation value to hardware. The change is applied for current primary video source selected,
1745 * video format played and picture mode selected
1746 *
1747 * @param[in] blSaturationColor - Component color. Valid value will be one of the member of ::tvDataComponentColor_t.
1748 * If more than one value is bitwise OR-ed and passed then the function should return invalid param.
1749 * @param[in] saturation - Saturation value to be set. Valid range is (0 - 100)
1750 *
1751 * @return tvError_t
1752 *
1753 * @retval tvERROR_NONE - Success
1754 * @retval tvERROR_INVALID_PARAM - Input parameter is invalid
1755 * @retval tvERROR_INVALID_STATE - Interface is not initialized
1756 * @retval tvERROR_OPERATION_NOT_SUPPORTED - Operation is not supported
1757 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
1758 *
1759 * @pre TvInit() and SetCMSState() should be called before calling this API
1760 *
1761 * @see SetCMSState()
1762 */
1764/**
1765 * @brief Gets current component saturation
1766 *
1767 * This function returns the current component saturation for the specific color, for the primary video source selected,
1768 * primary video format played and picture mode selected.
1769 *
1770 * @param[in] blSaturationColor - Component color. Valid value will be a member of ::tvDataComponentColor_t
1771 * @param[out] saturation - Saturation value of the color. Valid range is (0 - 100)
1772 *
1773 * @return tvError_t
1774 *
1775 * @retval tvERROR_NONE - Success
1776 * @retval tvERROR_INVALID_PARAM - Input parameter is invalid
1777 * @retval tvERROR_INVALID_STATE - Interface is not initialized
1778 * @retval tvERROR_OPERATION_NOT_SUPPORTED - Operation is not supported
1779 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
1780 *
1781 * @pre TvInit() should be called before calling this API
1782 */
1784/**
1785 * @brief Sets current component hue
1786 *
1787 * This function updates the component hue value to hardware. The change is applied for current primary video source selected,
1788 * video format played and picture mode selected
1789 *
1790 * @param[in] blHueColor - Component color. Valid value will be a member of ::tvDataComponentColor_t
1791 * @param[in] hue - Hue value to be set. Valid range is (0 - 100)
1792 *
1793 * @return tvError_t
1794 *
1795 * @retval tvERROR_NONE - Success
1796 * @retval tvERROR_INVALID_PARAM - Input parameter is invalid
1797 * @retval tvERROR_INVALID_STATE - Interface is not initialized
1798 * @retval tvERROR_OPERATION_NOT_SUPPORTED - Operation is not supported
1799 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
1800 *
1801 * @pre TvInit() and SetCMSState() should be called before calling this API
1802 *
1803 * @see SetCMSState()
1804 */
1806/**
1807 * @brief Gets current component hue
1808 *
1809 * This function returns the current component hue for the specific color, for the primary video source selected,
1810 * primary video format played and picture mode selected.
1811 *
1812 * @param[in] blHueColor - Component color. Valid value will be a member of ::tvDataComponentColor_t
1813 * @param[out] hue - Hue value of the color. Valid range is (0 - 100)
1814 *
1815 * @return tvError_t
1816 *
1817 * @retval tvERROR_NONE - Success
1818 * @retval tvERROR_INVALID_PARAM - Input parameter is invalid
1819 * @retval tvERROR_INVALID_STATE - Interface is not initialized
1820 * @retval tvERROR_OPERATION_NOT_SUPPORTED - Operation is not supported
1821 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
1822 *
1823 * @pre TvInit() should be called before calling this API
1824 */
1826/**
1827 * @brief Sets the current component luma value
1828 *
1829 * This function updates the component luma value to hardware. The change is applied for current primary video source selected,
1830 * video format played and picture mode selected
1831 *
1832 * @param[in] blLumaColor - Component color. Valid value will be a member of ::tvDataComponentColor_t
1833 * @param[in] Luma - Luma value to be set. Valid range is (0 - 30)
1834 *
1835 * @return tvError_t
1836 *
1837 * @retval tvERROR_NONE - Success
1838 * @retval tvERROR_INVALID_PARAM - Input parameter is invalid
1839 * @retval tvERROR_INVALID_STATE - Interface is not initialized
1840 * @retval tvERROR_OPERATION_NOT_SUPPORTED - Operation is not supported
1841 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
1842 *
1843 * @pre TvInit() and SetCMSState() should be called before calling this API
1844 *
1845 * @see SetCMSState()
1846 */
1848/**
1849 * @brief Gets the current component luma
1850 *
1851 * This function returns the current component luma for the specific color, for the primary video source selected,
1852 * primary video format played and picture mode selected.
1853 *
1854 * @param[in] blLumaColor - Component color. Valid value will be a member of ::tvDataComponentColor_t
1855 * @param[out] Luma - Luma value of the color. Valid range is (0 - 30)
1856 *
1857 * @return tvError_t
1858 *
1859 * @retval tvERROR_NONE - Success
1860 * @retval tvERROR_INVALID_PARAM - Input parameter is invalid
1861 * @retval tvERROR_INVALID_STATE - Interface is not initialized
1862 * @retval tvERROR_OPERATION_NOT_SUPPORTED - Operation is not supported
1863 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
1864 *
1865 * @pre TvInit() should be called before calling this API
1866 */
1868/**
1869 * @brief Gets supported backlight dimming modes of the system. To be deprecated soon.
1870 *
1871 * This function returns all the supported backlight dimming modes.
1872 *
1873 * @param[out] dimmingModes - array of dimming modes names. Valid values are "fixed", "local" and "global"
1874 * @param[out] count - Count of supported dimming modes. Min should be 1
1875 *
1876 * @return tvError_t
1877 *
1878 * @retval tvERROR_NONE - Success
1879 * @retval tvERROR_INVALID_PARAM - Input parameter is invalid
1880 * @retval tvERROR_INVALID_STATE - Interface is not initialized
1881 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
1882 *
1883 * @pre tvInit() should be called before calling this API
1884 */
1885tvError_t GetTVSupportedDimmingModes(char **dimmingModes,unsigned short *count);
1886/**
1887 * @brief Sets the backlight dimming mode.
1888 *
1889 * This function updates the new dimming mode to hardware. The change is applied for current primary video source selected,
1890 * video format played and picture mode selected.
1891 * If peak brightness capablity of the panel changes as a result of dimming mode change reload the edid accordingly
1892 * to update VSVDB string if video format currently playing is handled via Dolby Vision core.
1893 *
1894 * @param[in] dimmingMode - Dimming mode to be set. Valid values are ( "local", "fixed", "global" )
1895 *
1896 * @return tvError_t
1897 *
1898 * @retval tvERROR_NONE - Success
1899 * @retval tvERROR_INVALID_PARAM - Input parameter is invalid
1900 * @retval tvERROR_INVALID_STATE - Interface is not initialized
1901 * @retval tvERROR_OPERATION_NOT_SUPPORTED - Operation is not supported
1902 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
1903 *
1904 * @pre TvInit() should be called before calling this API
1905 * @todo: instead of char* use tvDimmingMode_t enum
1906 */
1907tvError_t SetTVDimmingMode(const char *dimmingMode);
1908/**
1909 * @brief Get TV Backlight Global Factor
1910 *
1911 * This function get the current applied Backlight Global Factor
1912 *
1913 * @param[out] value - value
1914 *
1915 * @return tvError_t
1916 *
1917 * @retval tvERROR_NONE - Success
1918 * @retval tvERROR_INVALID_PARAM - Input parameter is invalid
1919 * @retval tvERROR_INVALID_STATE - Interface is not initialized
1920 * @retval tvERROR_OPERATION_NOT_SUPPORTED - Operation is not supported
1921 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
1922 *
1923 * @pre TvInit() should be called before calling this API
1924 */
1926/**
1927 * @brief Set TV Backlight Global Factor
1928 *
1929 * This function controls the backlight through backlight global factor.
1930 *
1931 * @param[in] value - value
1932 * @param[in] rangeMidPointValue - Range Mid point value
1933 *
1934 * @return tvError_t
1935 *
1936 * @retval tvERROR_NONE - Success
1937 * @retval tvERROR_INVALID_PARAM - Input parameter is invalid
1938 * @retval tvERROR_INVALID_STATE - Interface is not initialized
1939 * @retval tvERROR_OPERATION_NOT_SUPPORTED - Operation is not supported
1940 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
1941 *
1942 * @pre TvInit() should be called before calling this API
1943 */
1944tvError_t SetTVBacklightGlobalFactor(int value, int rangeMidPointValue);
1945/**
1946 * @brief Get TV Picture Mode Index
1947 *
1948 * This function returns the current selected picture mode index value.
1949 *
1950 * @param[in] pictureMode - Picture Mode
1951 *
1952 * @return tvError_t
1953 *
1954 * @retval tvERROR_NONE - Success
1955 * @retval tvERROR_INVALID_PARAM - Input parameter is invalid
1956 * @retval tvERROR_INVALID_STATE - Interface is not initialized
1957 * @retval tvERROR_OPERATION_NOT_SUPPORTED - Operation is not supported
1958 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
1959 *
1960 * @pre TvInit() should be called before calling this API
1961 */
1962tvPictureMode_t GetTVPictureModeIndex(const char * pictureMode);
1963/**
1964 * @brief Get Current Content Format
1965 *
1966 * This function gets the video format value of the current primary video played on TV
1967 *
1968 * @return tvVideoHDRFormat_t
1969 *
1970 * @retval HDR format
1971 *
1972 * @pre TvInit() should be called before calling this API
1973 */
1975/**
1976 * @brief Get Supported Content Formats
1977 *
1978 * This function returns all the supported content formats.
1979 *
1980 * @param[out] contentFormats - content formats
1981 * @param[out] numberOfFormats - number Of Formats
1982 *
1983 * @return tvError_t
1984 *
1985 * @retval tvERROR_NONE - Success
1986 * @retval tvERROR_INVALID_PARAM - Input parameter is invalid
1987 * @retval tvERROR_INVALID_STATE - Interface is not initialized
1988 * @retval tvERROR_OPERATION_NOT_SUPPORTED - Operation is not supported
1989 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
1990 *
1991 * @pre TvInit() should be called before calling this API
1992 */
1993tvError_t GetSupportedContentFormats(unsigned int * contentFormats,unsigned short *numberOfFormats);
1994/**
1995 * @brief Reset Brightness
1996 *
1997 * This function reset Brightness value to default value for all formats (or) current format.
1998 *
1999 * @param[in] defaultValue - Default values
2000 * @param[in] resetForAllFormats - reset for all formats
2001 *
2002 * @return tvError_t
2003 *
2004 * @retval tvERROR_NONE - Success
2005 * @retval tvERROR_INVALID_STATE - Interface is not initialized
2006 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
2007 *
2008 * @pre TvInit() should be called before calling this API
2009 */
2010tvError_t ResetBrightness(int defaultValue,bool resetForAllFormats);
2011/**
2012 * @brief Reset Contrast
2013 *
2014 * This function reset Contrast value to default value for all formats (or) current format.
2015 *
2016 * @param[in] defaultValue - Default values
2017 * @param[in] resetForAllFormats - reset for all formats
2018 *
2019 * @return tvError_t
2020 *
2021 * @retval tvERROR_NONE - Success
2022 * @retval tvERROR_INVALID_STATE - Interface is not initialized
2023 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
2024 *
2025 * @pre TvInit() should be called before calling this API
2026 */
2027tvError_t ResetContrast(int defaultValue,bool resetForAllFormats);
2028/**
2029 * @brief Reset Sharpness
2030 *
2031 * This function reset Sharpness value to default value for all formats (or) current format.
2032 *
2033 * @param[in] defaultValue - Default values
2034 * @param[in] resetForAllFormats - reset for all formats
2035 *
2036 * @return tvError_t
2037 *
2038 * @retval tvERROR_NONE - Success
2039 * @retval tvERROR_INVALID_STATE - Interface is not initialized
2040 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
2041 *
2042 * @pre TvInit() should be called before calling this API
2043 */
2044tvError_t ResetSharpness(int defaultValue,bool resetForAllFormats);
2045/**
2046 * @brief Reset Saturation
2047 *
2048 * This function reset Saturation value to default value for all formats (or) current format.
2049 *
2050 * @param[in] defaultValue - Default values
2051 * @param[in] resetForAllFormats - reset for all formats
2052 *
2053 * @return tvError_t
2054 *
2055 * @retval tvERROR_NONE - Success
2056 * @retval tvERROR_INVALID_STATE - Interface is not initialized
2057 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
2058 *
2059 * @pre TvInit() should be called before calling this API
2060 */
2061tvError_t ResetSaturation(int defaultValue,bool resetForAllFormats);
2062/**
2063 * @brief Reset Hue
2064 *
2065 * This function reset Hue value to default value for all formats (or) current format.
2066 *
2067 * @param[in] defaultValue - Default values
2068 * @param[in] resetForAllFormats - reset for all formats
2069 *
2070 * @return tvError_t
2071 *
2072 * @retval tvERROR_NONE - Success
2073 * @retval tvERROR_INVALID_STATE - Interface is not initialized
2074 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
2075 *
2076 * @pre TvInit() should be called before calling this API
2077 */
2078tvError_t ResetHue(int defaultValue,bool resetForAllFormats);
2079/**
2080 * @brief Reset Backlight
2081 *
2082 * This function reset Backlight value to default value for all formats (or) current format.
2083 *
2084 * @param[in] defaultValue - Default values
2085 * @param[in] resetForAllFormats - reset for all formats
2086 *
2087 * @return tvError_t
2088 *
2089 * @retval tvERROR_NONE - Success
2090 * @retval tvERROR_INVALID_STATE - Interface is not initialized
2091 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
2092 *
2093 * @pre TvInit() should be called before calling this API
2094 */
2095tvError_t ResetBacklight(int defaultValue,bool resetForAllFormats);
2096/**
2097 * @brief Reset Color Tempearture
2098 *
2099 * This function reset Color Tempearture value to default value for all formats (or) current format.
2100 *
2101 * @param[in] defaultValue - Default values
2102 * @param[in] resetForAllFormats - reset for all formats
2103 *
2104 * @return tvError_t
2105 *
2106 * @retval tvERROR_NONE - Success
2107 * @retval tvERROR_INVALID_STATE - Interface is not initialized
2108 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
2109 *
2110 * @pre TvInit() should be called before calling this API
2111 */
2112tvError_t ResetColorTemperature(int defaultValue,bool resetForAllFormats);
2113/**
2114 * @brief Reset Component Saturation
2115 *
2116 * This function reset Component Saturation value to default value for all formats (or) current format.
2117 *
2118 * @param[in] color - saturation color
2119 * @param[in] defaultValue - Default values
2120 *
2121 * @return tvError_t
2122 *
2123 * @retval tvERROR_NONE - Success
2124 * @retval tvERROR_INVALID_STATE - Interface is not initialized
2125 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
2126 *
2127 * @pre TvInit() should be called before calling this API
2128 */
2129tvError_t ResetComponentSaturation(int color,int defaultValue);
2130/**
2131 * @brief Reset Component Luma
2132 *
2133 * This function reset Component luma value to default value for all formats (or) current format.
2134 *
2135 * @param[in] color - Luma color
2136 * @param[in] defaultValue - Default values
2137 *
2138 * @return tvError_t
2139 *
2140 * @retval tvERROR_NONE - Success
2141 * @retval tvERROR_INVALID_STATE - Interface is not initialized
2142 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
2143 *
2144 * @pre TvInit() should be called before calling this API
2145 */
2146tvError_t ResetComponentLuma(int color,int defaultValue);
2147/**
2148 * @brief Reset Component hue
2149 *
2150 * This function reset Component Hue value to default value for all formats (or) current format.
2151 *
2152 * @param[in] color - Hue color
2153 * @param[in] defaultValue - default value
2154 *
2155 * @return tvError_t
2156 *
2157 * @retval tvERROR_NONE - Success
2158 * @retval tvERROR_INVALID_STATE - Interface is not initialized
2159 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
2160 *
2161 * @pre TvInit() should be called before calling this API
2162 */
2163tvError_t ResetComponentHue(int color,int defaultValue);
2164/**
2165 * @brief Check if current format is SDR.
2166 *
2167 * This function checks whether the current content format is SDR or not.
2168 *
2169 * @return bool
2170 *
2171 * @retval True or False
2172 *
2173 * @pre TvInit() should be called before calling this API
2174 */
2176/**
2177 * @brief Returns Panel ID information. To be deprecated soon.
2178 * @note SOC vendors can stub these ODM functions and mark it as weak
2179 *
2180 * This function returns the panel ID string.
2181 *
2182 * @param[out] panelid - Panel ID string to be returned.
2183 *
2184 * @return int - Valid values can be member of ::tvVideoHDRFormat_t
2185 *
2186 * @retval 0 - Success
2187 * @retval -1 - General failure.
2188 *
2189 * @pre tvInit() should be called before calling this API
2190 */
2191int GetPanelID(char* panelid);
2192/**
2193 * @brief Get the default panel ID
2194 *
2195 * This function return the default panelid.
2196 *
2197 * @param[out] panelID - Panel ID
2198 *
2199 *
2200 * @pre TvInit() should be called before calling this API
2201 */
2202void GetDefaultPanelID(char *panelID);
2203/**
2204 * @brief Saves the color temperature value
2205 *
2206 * This function saves the color temperature value in picture profile database for the specific picture mode, primary video format type
2207 * and primary video source. The saved color temperature value should be applied automatically by whenever the
2208 * specified picture mode is selected, specified primary video format is played and specified primary video source is selected.
2209 * There will be no change in current color temperature value applied in PQ module.
2210 *
2211 * @param[in] sourceInput - Source input value.
2212 * @param[in] pq_mode - Picture mode index.
2213 * @param[in] hdr_type - hdr format type value.
2214 * @param[in] value - Value of the color temperature to be set. Valid value will be member of ::tvColorTemp_t
2215 *
2216 * @return tvError_t
2217 *
2218 * @retval tvERROR_NONE - Success
2219 * @retval tvERROR_INVALID_PARAM - Input parameter is invalid
2220 * @retval tvERROR_INVALID_STATE - Interface is not initialized
2221 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
2222 *
2223 * @pre TvInit() should be called before calling this API
2224 */
2225tvError_t SaveColorTemperature(int sourceInput, int pq_mode,int hdr_type,int value);
2226/**
2227 * @brief Saves the backlight value.
2228 *
2229 * This function saves the backlight value in picture profile database for the specific picture mode, primary video format type
2230 * and primary video source. The saved backlight value should be applied automatically whenever the
2231 * specified picture mode is selected, specified primary video format is played and specified primary video source is selected.
2232 * There will be no change in current backlight value in backlight HW.
2233 *
2234 * @param[in] sourceInput - Source input value.
2235 * @param[in] pq_mode - Picture mode index.
2236 * @param[in] hdr_type - hdr format type value.
2237 * @param[in] value - Value of the backlight to be set. Valid range is (0 - 100)
2238 *
2239 * @return tvError_t
2240 *
2241 * @retval tvERROR_NONE - Success
2242 * @retval tvERROR_INVALID_PARAM - Input parameter is invalid
2243 * @retval tvERROR_INVALID_STATE - Interface is not initialized
2244 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
2245 *
2246 * @pre TvInit() should be called before calling this API
2247 */
2248tvError_t SaveBacklight(int sourceInput, int pq_mode,int hdr_type,int value);
2249/**
2250 * @brief Saves the contrast value
2251 *
2252 * This function saves the contrast value in picture profile database for the specific picture mode, primary video format type
2253 * and primary video source. The saved contrast value should be applied automatically by whenever the
2254 * specified picture mode is selected, specified primary video format is played and specified primary video source is selected.
2255 * There will be no change in current contrast value applied in PQ module.
2256 *
2257 * @param[in] sourceInput - Source input value.
2258 * @param[in] pq_mode - Picture mode index.
2259 * @param[in] hdr_type - hdr format type value.
2260 * @param[in] value - Value of the contrast to be set. Valid range is (0 - 100)
2261 *
2262 * @return tvError_t
2263 *
2264 * @retval tvERROR_NONE - Success
2265 * @retval tvERROR_INVALID_PARAM - Input parameter is invalid
2266 * @retval tvERROR_INVALID_STATE - Interface is not initialized
2267 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
2268 *
2269 * @pre TvInit() should be called before calling this API
2270 */
2271tvError_t SaveContrast(int sourceInput, int pq_mode,int hdr_type,int value);
2272/**
2273 * @brief Saves the saturation value
2274 *
2275 * This function saves the sharpness value in picture profile database for the specific picture mode, primary video format type
2276 * and primary video source. The saved saturation value should be applied automatically by whenever the
2277 * specified picture mode is selected, specified primary video format is played and specified primary video source is selected.
2278 * There will be no change in current saturation value applied in PQ module.
2279 *
2280 * @param[in] sourceInput - Source input value.
2281 * @param[in] pq_mode - Picture mode index.
2282 * @param[in] hdr_type - hdr format type value.
2283 * @param[in] value - Value of the saturation to be set. Valid range is (0 - 100)
2284 *
2285 * @return tvError_t
2286 *
2287 * @retval tvERROR_NONE - Success
2288 * @retval tvERROR_INVALID_PARAM - Input parameter is invalid
2289 * @retval tvERROR_INVALID_STATE - Interface is not initialized
2290 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
2291 *
2292 * @pre TvInit() should be called before calling this API
2293 */
2294tvError_t SaveSaturation(int sourceInput, int pq_mode,int hdr_type,int value);
2295/**
2296 * @brief Saves the sharpness value
2297 *
2298 * This function saves the sharpness value in picture profile database for the specific picture mode, primary video format type
2299 * and primary video source. The saved sharpness value should be applied automatically by whenever the
2300 * specified picture mode is selected, specified primary video format is played and specified primary video source is selected.
2301 * There will be no change in current sharpness value applied in PQ module.
2302 *
2303 * @param[in] sourceInput - Source input value.
2304 * @param[in] pq_mode - Picture mode index.
2305 * @param[in] hdr_type - hdr format type value.
2306 * @param[in] value - Value of the sharpness to be set. Valid range is (0 - 100)
2307 *
2308 * @return tvError_t
2309 *
2310 * @retval tvERROR_NONE - Success
2311 * @retval tvERROR_INVALID_PARAM - Input parameter is invalid
2312 * @retval tvERROR_INVALID_STATE - Interface is not initialized
2313 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
2314 *
2315 * @pre TvInit() should be called before calling this API
2316 */
2317tvError_t SaveSharpness(int sourceInput, int pq_mode,int hdr_type,int value);
2318/**
2319 * @brief Saves the brightness value
2320 *
2321 * This function saves the brightness value in picture profile database for the specific picture mode, primary video format type
2322 * and primary video source. The saved brightness value should be applied automatically by whenever the
2323 * specified picture mode is selected, specified primary video format is played and specified primary video source is selected.
2324 * There will be no change in current brightness value applied in PQ module.
2325 *
2326 * @param[in] sourceInput - Source input value.
2327 * @param[in] pq_mode - Picture mode index.
2328 * @param[in] hdr_type - hdr format type value.
2329 * @param[in] value - Value of the brightness to be set. Valid range is (0 - 100)
2330 *
2331 * @return tvError_t
2332 *
2333 * @retval tvERROR_NONE - Success
2334 * @retval tvERROR_INVALID_PARAM - Input parameter is invalid
2335 * @retval tvERROR_INVALID_STATE - Interface is not initialized
2336 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
2337 *
2338 * @pre TvInit() should be called before calling this API
2339 */
2340tvError_t SaveBrightness(int sourceInput, int pq_mode,int hdr_type,int value);
2341/**
2342 * @brief Saves the hue value
2343 *
2344 * This function saves the hue value in picture profile database for the specific picture mode, primary video format type
2345 * and primary video source. The saved hue value should be applied automatically by whenever the
2346 * specified picture mode is selected, specified primary video format is played and specified primary video source is selected.
2347 * There will be no change in current hue value applied in PQ module.
2348 *
2349 * @param[in] sourceInput - Source input value.
2350 * @param[in] pq_mode - Picture mode index.
2351 * @param[in] hdr_type - hdr type value.
2352 * @param[in] value - Value of the hue to be set. Valid range is (0 - 100)
2353 *
2354 * @return tvError_t
2355 *
2356 * @retval tvERROR_NONE - Success
2357 * @retval tvERROR_INVALID_PARAM - Input parameter is invalid
2358 * @retval tvERROR_INVALID_STATE - Interface is not initialized
2359 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
2360 *
2361 * @pre TvInit() should be called before calling this API
2362 */
2363tvError_t SaveHue(int sourceInput, int pq_mode,int hdr_type,int value);
2364/**
2365 * @brief Saves the DynamicBacklight mode
2366 *
2367 * This function saves the backlight dimming mode(DynamicBacklight) in picture profile database for the specific picture mode, primary video format type
2368 * and primary video source. The saved backlight dimming mode should be applied automatically whenever the
2369 * specified picture mode is selected, specified primary video format is played and specified primary video source is selected.
2370 * There will be no change in current backlight dimming mode.
2371 * If peak brightness capablity of the panel changes as a result of dimming mode change in future reload the edid accordingly
2372 * to update VSVDB string if current video format is handled via Dolby Vision core.
2373 *
2374 * @param[in] sourceInput - Source input value.
2375 * @param[in] pq_mode - Picture mode index.
2376 * @param[in] hdr_type - hdr type value.
2377 * @param[in] value - Value of the DynamicBacklight(tvDimmingMode_t)
2378 *
2379 * @return tvError_t
2380 *
2381 * @retval tvERROR_NONE - Success
2382 * @retval tvERROR_INVALID_STATE - Interface is not initialized
2383 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
2384 *
2385 * @pre TvInit() should be called before calling this API
2386 */
2387tvError_t SaveDynamicBacklight(int sourceInput, int pq_mode,int hdr_type,int value);
2388/**
2389 * @brief Saves the DisplayMode value
2390 *
2391 * This function saves the aspect ratio(DisplayMode) value in picture profile database for the specific picture mode, primary video format type
2392 * and primary video source. The saved aspect ratio value should be applied automatically by whenever the
2393 * specified picture mode is selected, specified primary video format is played and specified primary video source is selected.
2394 * There will be no change in current aspect ratio value applied in PQ module.
2395 *
2396 * @param[in] sourceInput - Source input value.
2397 * @param[in] pq_mode - Picture mode index.
2398 * @param[in] hdr_type - hdr type value.
2399 * @param[in] value - Value of AspectRatio(tvDisplayMode_t)
2400 *
2401 * @return tvError_t
2402 *
2403 * @retval tvERROR_NONE - Success
2404 * @retval tvERROR_INVALID_STATE - Interface is not initialized
2405 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
2406 *
2407 * @pre TvInit() should be called before calling this API
2408 */
2409tvError_t SaveDisplayMode(int sourceInput, int pq_mode,int hdr_type,int value);
2410/**
2411 * @brief Save the CMS value
2412 *
2413 * This function saves the CMS value in picture profile database for the specific picture mode, primary video format type
2414 * and primary video source. The saved hue value should be applied automatically by whenever the
2415 * specified picture mode is selected, specified primary video format is played, specified primary video source is selected
2416 * and the CMS state is enabled for that combination.
2417 * There will be no change in current CMS value applied in PQ module.
2418 *
2419 * @param[in] sourceInput - Source input value.
2420 * @param[in] pq_mode - Picture mode index.
2421 * @param[in] hdr_type - hdr type value.
2422 * @param[in] tunnel_type - tunnel type value.
2423 * @param[in] color_type - Color type value.
2424 * @param[in] value - Value of the CMS to be set.
2425 *
2426 * @return tvError_t
2427 *
2428 * @retval tvERROR_NONE - Success
2429 * @retval tvERROR_INVALID_PARAM - Input parameter is invalid
2430 * @retval tvERROR_INVALID_STATE - Interface is not initialized
2431 * @retval tvERROR_OPERATION_NOT_SUPPORTED - Operation is not supported
2432 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
2433 *
2434 * @pre TvInit() should be called before calling this API
2435 */
2436tvError_t SaveCMS(int sourceInput, int pq_mode,int hdr_type,int tunnel_type,int color_type,int value);
2437/**
2438 * @brief Saves the dolby mode value
2439 *
2440 * This function saves the dolby mode value in picture profile database for the specific picture mode, primary video format type
2441 * and primary video source. The saved dolby mode value should be applied automatically by whenever the
2442 * specified picture mode is selected, specified primary video format(if handled via Dolby core) is played
2443 * and specified primary video source is selected. There will be no change in current dolby mode value in Dolby Vision core.
2444 *
2445 * @param[in] sourceInput - Source input value.
2446 * @param[in] pq_mode - Picture mode index.
2447 * @param[in] hdr_type - hdr type value.
2448 * @param[in] value - Value of the CMS to be set.
2449 *
2450 * @return tvError_t
2451 *
2452 * @retval tvERROR_NONE - Success
2453 * @retval tvERROR_INVALID_PARAM - Input parameter is invalid
2454 * @retval tvERROR_INVALID_STATE - Interface is not initialized
2455 * @retval tvERROR_OPERATION_NOT_SUPPORTED - Operation is not supported
2456 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
2457 *
2458 * @pre TvInit() should be called before calling this API
2459 */
2460tvError_t SaveDolbyMode(int sourceInput, int pq_mode,int hdr_type,int value);
2461/**
2462 * @brief GetNumberOfModesupported
2463 *
2464 * This function returns the number of supported picture modes.
2465 *
2466 * @return int
2467 *
2468 * @retval numberModesSupported
2469 *
2470 * @pre TvInit() should be called before calling this API
2471 */
2473/**
2474 * @brief Get current PQ Mode index.
2475 *
2476 * This function returns the current PQ index value.
2477 *
2478 * @return int
2479 *
2480 * @retval picModeValue
2481 *
2482 * @pre TvInit() should be called before calling this API
2483 */
2485/**
2486 * @brief Get All Supported PicMode Index
2487 *
2488 * This function gets all the supported picture mode index.
2489 *
2490 * @param[out] pic_mode_index
2491 *
2492 * @pre TvInit() should be called before calling this API
2493 */
2494void GetAllSupportedPicModeIndex(int pic_mode_index[]);
2495/**
2496 * @brief Gets the current CMS default value. To be deprecated soon.
2497 *
2498 * This function returns the default CMS value
2499 *
2500 * @param[out] color_tunel_type - color_tunel_type.
2501 *
2502 * @return int
2503 *
2504 * @retval 15 - Luma default value
2505 * @retval 50 - Hue or saturation default value
2506 * @retval -1 - Input parameter is invalid
2507 *
2508 * @pre tvInit() should be called before calling this API
2509 */
2510int GetCMSDefault(tvCMS_tunel_t color_tunel_type);
2511/**
2512 * @brief Get Dolby Mode Index
2513 *
2514 * This function returns the dolby mode index.
2515 *
2516 * @param[in] dolbyMode
2517 *
2518 * @return int
2519 *
2520 * @retval Dolbymode value
2521 *
2522 * @pre TvInit() should be called before calling this API
2523 */
2524int GetDolbyModeIndex(const char * dolbyMode);
2525/**
2526 * @brief Returns ::tvhdr_type_t enum for given ::tvVideoHDRFormat_t enum. To be deprecated soon.
2527 *
2528 * This function converts the video format to HDR format.
2529 *
2530 * @param[in] videoFormat - Video format. Valid values can be member of ::tvVideoHDRFormat_t
2531 *
2532 * @return int - Valid values can be member of ::tvhdr_type_t
2533 *
2534 * @pre tvInit() should be called before calling this API
2535 */
2537/**
2538 * @brief Convert TV color to vendor color.
2539 *
2540 * This function converts the TV color to Vendor color value
2541 *
2542 * @param[in] blComponentColor - blComponentColor
2543 *
2544 * @return int
2545 *
2546 * @retval component color
2547 *
2548 * @pre TvInit() should be called before calling this API
2549 */
2551/**
2552 * @brief Convert HDR to content format.
2553 *
2554 * This function converts the vendor HDR format to tv format value.
2555 *
2556 * @param[in] hdrFormat - hdrformat
2557 *
2558 * @return int
2559 *
2560 * @retval hdr format
2561 *
2562 * @pre TvInit() should be called before calling this API
2563 */
2565/**
2566 * @brief Get Custom mode index.
2567 *
2568 * This function return the custom pqmode index
2569 *
2570 * @return int
2571 *
2572 * @retval pic mode values
2573 *
2574 * @pre TvInit() should be called before calling this API
2575 */
2577
2578/**
2579 * @brief Sets and save's the CMS state
2580 *
2581 * This function enable or disable the CMS state. The change is applied for current primary video source selected,
2582 * video format played and picture mode selected and if successful will be saved in override picture profile database.
2583 * The saved CMS state value should be applied automatically whenever the current picture mode, current primary video format
2584 *
2585 * @param[in] tunelType - Tunnel Type
2586 * @param[in] colorType - Color Type
2587 * @param[in] componentState - Component State
2588 *
2589 * @return tvError_t
2590 *
2591 * @retval tvERROR_NONE - Success
2592 * @retval tvERROR_INVALID_STATE - Interface is not initialized
2593 * @retval tvERROR_OPERATION_NOT_SUPPORTED - Operation is not supported
2594 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
2595 *
2596 * @pre TvInit() should be called before calling this API
2597 */
2599/**
2600 * @brief Check the given WB values are default or not
2601 *
2602 * This function checks if the white balance parameters are equal to default value.
2603 *
2604 * @param[in] wbvalue - wb value
2605 *
2606 * @return bool
2607 *
2608 * @retval True or false
2609 *
2610 * @pre TvInit() should be called before calling this API
2611 */
2613/**
2614 * @brief Get WB RGB type.
2615 *
2616 * This function gets the white balance RGB type for specific color and control value.
2617 *
2618 * @param[in] color - color
2619 * @param[in] ctrl - ctrl
2620 *
2621 * @return int
2622 *
2623 * @retval rgb_type
2624 *
2625 * @pre TvInit() should be called before calling this API
2626 */
2627int GetWBRgbType(const char *color, const char * ctrl);
2628/**
2629 * @brief Get WB values on init.
2630 *
2631 * This function gets the user white balance value on init.
2632 *
2633 * @return tvDataColor_t
2634 *
2635 * @retval wb values
2636 *
2637 * @pre TvInit() should be called before calling this API
2638 */
2640/**
2641 * @brief Check WB values are equal.
2642 *
2643 * This function checks if two white balance values are same.
2644 *
2645 * @param[in] wbvalueThis - value this
2646 * @param[in] wbvalueThat - value that
2647 *
2648 * @return bool
2649 *
2650 * @retval True or False
2651 *
2652 * @pre TvInit() should be called before calling this API
2653 */
2654bool areEqual(tvDataColor_t wbvalueThis,tvDataColor_t wbvalueThat);
2655/**
2656 * @brief Set Color Temperature User
2657 *
2658 * This function update RGB(WhiteBalance) values for user colortemperature
2659 *
2660 * @param[in] rgbType - rgb type
2661 * @param[in] value - value
2662 *
2663 * @return tvError_t
2664 *
2665 * @retval tvERROR_NONE - Success
2666 * @retval tvERROR_INVALID_PARAM - Input parameter is invalid
2667 * @retval tvERROR_INVALID_STATE - Interface is not initialized
2668 * @retval tvERROR_OPERATION_NOT_SUPPORTED - Operation is not supported
2669 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
2670 *
2671 * @pre TvInit() should be called before calling this API
2672 */
2673tvError_t SetColorTemperatureUser(int rgbType, int value);
2674/**
2675 * @brief Saves the color temperature to driver cache. To be deprecated soon.
2676 *
2677 * This function saves the color temperature for user to driver cache file
2678 *
2679 * @param[in] rgbType - RGB type. Valid value will be a member of ::tvRGBType_t
2680 * @param[in] value - Color temperature value to be set. Valid range : for gain (0 to 2047) , for offset (-1024 to 1024)
2681 *
2682 * @return tvError_t
2683 *
2684 * @retval tvERROR_NONE - Success
2685 * @retval tvERROR_INVALID_PARAM - Input parameter is invalid
2686 * @retval tvERROR_INVALID_STATE - Interface is not initialized
2687 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
2688 *
2689 * @pre tvInit() should be called before calling this API
2690 */
2691tvError_t SaveColorTemperatureUser(int rgbType, int value);
2692/**
2693 * @brief Set backlight info.
2694 *
2695 * This function updates the backlight curve details to HAL
2696 *
2697 * @param[in] backlightDefaults - backlightDefaults to set
2698 *
2699 * @return tvError_t
2700 *
2701 * @retval tvERROR_NONE - Success
2702 * @retval tvERROR_INVALID_PARAM - Input parameter is invalid
2703 * @retval tvERROR_INVALID_STATE - Interface is not initialized
2704 * @retval tvERROR_OPERATION_NOT_SUPPORTED - Operation is not supported
2705 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
2706 *
2707 * @pre TvInit() should be called before calling this API
2708 */
2710/**
2711 * @brief Get Driver BL value for current format.
2712 *
2713 * This function returns the driver equivalent backlight for current backlight value.
2714 *
2715 * @param[in] backlight - Backlight
2716 *
2717 * @return tvError_t
2718 *
2719 * @retval tvERROR_NONE - Success
2720 * @retval tvERROR_INVALID_PARAM - Input parameter is invalid
2721 * @retval tvERROR_INVALID_STATE - Interface is not initialized
2722 * @retval tvERROR_OPERATION_NOT_SUPPORTED - Operation is not supported
2723 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
2724 *
2725 * @pre TvInit() should be called before calling this API
2726 */
2728/**
2729 * @brief Get HLG mode Index.
2730 *
2731 * This function returns HLG mode index.
2732 *
2733 * @param[in] hlgMode - hlg mode
2734 *
2735 * @return tvError_t
2736 *
2737 * @retval tvERROR_NONE - Success
2738 * @retval tvERROR_INVALID_PARAM - Input parameter is invalid
2739 * @retval tvERROR_INVALID_STATE - Interface is not initialized
2740 * @retval tvERROR_OPERATION_NOT_SUPPORTED - Operation is not supported
2741 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
2742 *
2743 * @pre TvInit() should be called before calling this API
2744 */
2745int GetHLGModeIndex(const char * hlgMode);
2746/**
2747 * @brief Get HDR10 mode index.
2748 *
2749 * This function returns HDR10 mode index.
2750 *
2751 * @param[in] hdr10Mode - hdr10mode
2752 *
2753 * @return tvError_t
2754 *
2755 * @retval tvERROR_NONE - Success
2756 * @retval tvERROR_INVALID_PARAM - Input parameter is invalid
2757 * @retval tvERROR_INVALID_STATE - Interface is not initialized
2758 * @retval tvERROR_OPERATION_NOT_SUPPORTED - Operation is not supported
2759 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
2760 *
2761 * @pre TvInit() should be called before calling this API
2762 */
2763int GetHDR10ModeIndex(const char * hdr10Mode);
2764
2765/**
2766 * @brief Sets the backlight fade settings
2767 *
2768 * This function will fade the backlight between 2 different backlight values specified in a given duration.
2769 * It will only set and does'nt save the value.
2770 * The function call is asynchronous and expected to return immediately after initiating the fading process.
2771 * If there is change in backlight value due to SetBacklight API call or a change initiated due to
2772 * picture mode change or primary video source change or primary video format change, the fading stops instantly
2773 * and system jumps to the new backlight value.
2774 *
2775 * @param[in] from - Percentage of current backlight value from where fade starts. Valid range is (0 - 100)
2776 * - If the value is <100 then before fade starts the backlight will jump to the from % of the currently @n
2777 * set backlight value.
2778 * @param[in] to - Percentage of current backlight value where fade ends. Valid range is (0 - 100)
2779 * @param[in] duration - Time duration for which the backlight needs to be faded to reach new value. Valid range is (0 - 10000 ms)
2780 *
2781 * @return tvError_t
2782 *
2783 * @retval tvERROR_NONE - Success
2784 * @retval tvERROR_INVALID_PARAM - Input parameter is invalid
2785 * @retval tvERROR_INVALID_STATE - Interface is not initialized
2786 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
2787 *
2788 * @pre TvInit() should be called before calling this API
2789 */
2790tvError_t SetBacklightFade(int from,int to,int duration);
2791/**
2792 * @brief Reads PQ capability information sections from the specified file. To be deprecated soon.
2793 * @note SOC vendors can stub these ODM functions and mark it as weak
2794 *
2795 * This function reads PQ capability information sections from the specified file. The file format is predefined and a template file is supplied by RDK.
2796 *
2797 * @param[in] file - The name of the file from which PQ capability information sections need to be read.
2798 * @param[out] cpybuffer - The return buffer (max size 512 bytes), where PQ capability information sections are copied to.
2799 * @param[in] searchstring - Heading of the section.
2800 *
2801 * @return tvError_t
2802 *
2803 * @retval tvERROR_NONE - Success
2804 * @retval tvERROR_INVALID_PARAM - Input parameter is invalid
2805 * @retval tvERROR_INVALID_STATE - Interface is not initialized
2806 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
2807 *
2808 * @pre tvInit() should be called before calling this API
2809 */
2810tvError_t ReadAllModeConfigfile(const char *file, char *cpybuffer, const char *searchstring);
2811/**
2812 * @brief Parse buffer and return string values & total count
2813 *
2814 * This function parses the buffer returned through ReadAllModeConfigfile() and returns the string value and their count.
2815 *
2816 * @param[in] buffer - Buffer to split
2817 * @param[in] availableModes - avilable modes
2818 * @param[out] totalcount - total count
2819 *
2820 *
2821 * @pre TvInit() should be called before calling this API
2822 */
2823void splitstringsfrombuffer(char *buffer, char *availableModes, unsigned short *totalcount);
2824/**
2825 * @brief Parse buffer and return string values,index & total count
2826 *
2827 * This function parses the buffer returned through ReadAllModeConfigfile() and returns the string value,index and their count.
2828 *
2829 * @param[in] buffer - Buffer to split
2830 * @param[in] availableModes - avilable modes
2831 * @param[out] totalcount - total count
2832 *
2833 * @pre TvInit() should be called before calling this API
2834 */
2835void splitstringsandvaluefrombuffer(char *buffer, pic_modes_t *availableModes[], unsigned short *totalcount);
2836/**
2837 * @brief Enable or disable gamma mode.
2838 *
2839 * This function enables or disables the gamma mode.
2840 *
2841 * @param[in] mode - Mode
2842 *
2843 * @return tvError_t
2844 *
2845 * @retval tvERROR_NONE - Success
2846 * @retval tvERROR_INVALID_PARAM - Input parameter is invalid
2847 * @retval tvERROR_INVALID_STATE - Interface is not initialized
2848 * @retval tvERROR_OPERATION_NOT_SUPPORTED - Operation is not supported
2849 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
2850 *
2851 * @pre TvInit() should be called before calling this API
2852 */
2854
2855/**
2856 * @brief Sets the local dimming level
2857 *
2858 * This function updates the new local dimming level to hardware. The change is applied for current primary video source selected,
2859 * video format played and picture mode selected and if successful will be saved in override picture profile database.
2860 * The saved local dimming level value should be applied automatically whenever the current picture mode, current primary video format
2861 * If peak brightness capablity of the panel changes as a result of local dimming level change reload the edid accordingly
2862 * to update VSVDB string if current video format is handled via Dolby Vision core.
2863 *
2864 * @param[in] localDimmingLevel - Dimming level to set.
2865 *
2866 * @return tvError_t
2867 *
2868 * @retval tvERROR_NONE - Success
2869 * @retval tvERROR_INVALID_PARAM - Input parameter is invalid
2870 * @retval tvERROR_INVALID_STATE - Interface is not initialized
2871 * @retval tvERROR_OPERATION_NOT_SUPPORTED - Operation is not supported
2872 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
2873 *
2874 * @pre TvInit() should be called before calling this API
2875 */
2876tvError_t SetLocalDimmingLevel(int localDimmingLevel);
2877/**
2878 * @brief Gets the current dimming level
2879 *
2880 * This function gets the current local dimming level for the primary video source selected,
2881 * primary video format played and picture mode selected.
2882 *
2883 * @param[out] localDimmingLevel - Current Dimming level returned.
2884 *
2885 * @return tvError_t
2886 *
2887 * @retval tvERROR_NONE - Success
2888 * @retval tvERROR_INVALID_PARAM - Parameter is invalid
2889 * @retval tvERROR_INVALID_STATE - Interface is not initialized
2890 * @retval tvERROR_OPERATION_NOT_SUPPORTED - Operation is not supported
2891 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
2892 *
2893 * @pre TvInit() should be called before calling this API
2894 */
2895tvError_t GetLocalDimmingLevel(int *localDimmingLevel);
2896/**
2897 * @brief Saves local dimming level.
2898 *
2899 * This function saves the local dimming level in picture profile database for the specific picture mode, primary video format type
2900 * and primary video source. The saved local dimming level should be applied automatically whenever the
2901 * specified picture mode is selected, specified primary video format is played and specified primary video source is selected.
2902 * There will be no change in current local dimming level applied in local dimming module.
2903 * If peak brightness capablity of the panel changes as a result of local dimming level change in future reload the edid accordingly
2904 * to update VSVDB string if current video format is handled via Dolby Vision core.
2905 *
2906 * @param[in] sourceInput - Source input value.
2907 * @param[in] pq_mode - Picture mode index.
2908 * @param[in] hdr_type - hdr type value.
2909 * @param[in] value - Value of the local dimming level to be set.
2910 *
2911 * @return tvError_t
2912 *
2913 * @retval tvERROR_NONE - Success
2914 * @retval tvERROR_INVALID_PARAM - Input parameter is invalid
2915 * @retval tvERROR_INVALID_STATE - Interface is not initialized
2916 * @retval tvERROR_OPERATION_NOT_SUPPORTED - Operation is not supported
2917 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
2918 *
2919 * @pre TvInit() should be called before calling this API
2920 */
2921tvError_t SaveLocalDimmingLevel(int sourceInput, int pq_mode,int hdr_type,int value);
2922/**
2923 * @brief Switch EDID
2924 *
2925 * This Function updates the EDID for given picture mode
2926 *
2927 * @param[in] pqmode - picture quality mode
2928 *
2929 * @pre TvInit() should be called before calling this API
2930 */
2931void SwitchEDID(int pqmode);
2932/**
2933 * @brief Set the EDID and dimming level
2934 *
2935 * This function Update EDID and set dimming level for current Picture mode
2936 *
2937 * @param[in] dimmingLevel - Dimming level
2938 *
2939 * @return tvError_t
2940 *
2941 * @retval tvERROR_NONE - Success
2942 * @retval tvERROR_INVALID_PARAM - Input parameter is invalid
2943 * @retval tvERROR_INVALID_STATE - Interface is not initialized
2944 * @retval tvERROR_OPERATION_NOT_SUPPORTED - Operation is not supported
2945 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
2946 *
2947 * @pre TvInit() should be called before calling this API
2948 */
2950/**
2951 * @brief Get LDIM and EDID level
2952 *
2953 * This function gets the LDIM and EDID level for given video format and dimmingMode
2954 *
2955 * @param[in] dimmingMode - Dimming mode
2956 * @param[in] format - Format
2957 * @param[out] dimmingLevel - Dimming Level
2958 * @param[out] edidLevel - EDID level
2959 *
2960 *
2961 * @pre TvInit() should be called before calling this API
2962 */
2963void GetLDIMAndEDIDLevel(int dimmingMode,int format,int *dimmingLevel, int *edidLevel);
2964
2965/**
2966 * @brief Saves the low latency index
2967 *
2968 * This function saves the low latency index in picture profile database for the specific picture mode, primary video format type
2969 * and primary video source. The saved low latency index should be applied automatically by whenever the
2970 * specified picture mode is selected, specified primary video format is played and specified primary video source is selected.
2971 * There will be no change in low latency index value applied in PQ module.
2972 *
2973 * @param[in] sourceInput - Source input value.
2974 * @param[in] pq_mode - Picture mode index.
2975 * @param[in] hdr_type - hdr value.
2976 * @param[in] value - Value of the low latency index to be set. Valid values are ( 0, 1 )
2977 *
2978 * @return tvError_t
2979 *
2980 * @retval tvERROR_NONE - Success
2981 * @retval tvERROR_INVALID_PARAM - Input parameter is invalid
2982 * @retval tvERROR_INVALID_STATE - Interface is not initialized
2983 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
2984 *
2985 * @pre TvInit() should be called before calling this API
2986 */
2987tvError_t SaveLowLatencyState( int sourceInput, int pq_mode,int hdr_type,int value );
2988/**
2989 * @brief Sets the low latency state to driver register(s)
2990 *
2991 * This function updates the new low latency state value to hardware. The change is applied for current primary video source selected,
2992 * video format played and picture mode selected and if successful will be saved in override picture profile database.
2993 * The saved low latency state value should be applied automatically whenever the current picture mode, current primary video format
2994 *
2995 * @param[in] lowLatencyIndex - Value of the low latency index to be set. Valid values are ( 0 for disable, 1 for enable)
2996 *
2997 * @return tvError_t
2998 *
2999 * @retval tvERROR_NONE - Success
3000 * @retval tvERROR_INVALID_PARAM - Input parameter is invalid
3001 * @retval tvERROR_INVALID_STATE - Interface is not initialized
3002 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
3003 *
3004 * @pre TvInit() should be called before calling this API
3005 */
3006tvError_t SetLowLatencyState( int lowLatencyIndex );
3007/**
3008 * @brief Gets the current low latency state
3009 *
3010 * This function gets the current low latency value for the primary video source selected,
3011 * primary video format played and picture mode selected.
3012 *
3013 * @param[out] lowlatencystate - Current low latency index value. Valid values are ( 0, 1 )
3014 *
3015 * @return tvError_t
3016 *
3017 * @retval tvERROR_NONE - Success
3018 * @retval tvERROR_INVALID_PARAM - Parameter is invalid
3019 * @retval tvERROR_INVALID_STATE - Interface is not initialized
3020 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
3021 *
3022 * @pre TvInit() should be called before calling this API
3023 */
3024tvError_t GetLowLatencyState(int *lowlatencystate);
3025/**
3026 * @brief Sets the gamma calibrated values to gamma HW for current selected colour temperature.
3027 *
3028 * This function sets the gamma calibrated values(0 - 1023) for the primary colors to gamma Hardware
3029 * for the current selected colour temperature, but they are not saved in picture profile database. The gamma values
3030 * will be discarded and default value from picture profile database is used on colour temperature value change as a result of picture mode change or primary video source
3031 * change or primary vidoe format change.
3032 *
3033 * @param[in] pData_R - Array of gamma red values. Valid range is (0 - 1023)
3034 * @param[in] pData_G - Array of gamma green values. Valid range is (0 - 1023)
3035 * @param[in] pData_B - Array of gamma blue values. Valid range is (0 - 1023)
3036 * @param[in] size - Common size of each array. Valid range is (0 - 256)
3037 *
3038 * @return tvError_t
3039 *
3040 * @retval tvERROR_NONE - Success
3041 * @retval tvERROR_INVALID_PARAM - Input parameter is invalid
3042 * @retval tvERROR_INVALID_STATE - Interface is not initialized
3043 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
3044 *
3045 * @pre TvInit() should be called before calling this API
3046 */
3047tvError_t SetGammaTable(unsigned short *pData_R, unsigned short *pData_G, unsigned short *pData_B, unsigned short size);
3048/**
3049 * @brief Gets the current gamma calibrated values from gamma HW for current selected colour temperature.
3050 *
3051 * This function gets the current gamma calibrated values(0 - 65535) for the primary colors for a current color temperature.
3052 *
3053 * @param[in] colortemp - Color temperature.
3054 * @param[out] pData_R - Array of gamma red values. Valid range is (0 - 1023)
3055 * @param[out] pData_G - Array of gamma green values. Valid range is (0 - 1023)
3056 * @param[out] pData_B - Array of gamma blue values. Valid range is (0 - 1023)
3057 * @param[in] size - Common size of each array. Valid range is (0 - 256)
3058 *
3059 * @return tvError_t
3060 *
3061 * @retval tvERROR_NONE - Success
3062 * @retval tvERROR_INVALID_PARAM - Input parameter is invalid
3063 * @retval tvERROR_INVALID_STATE - Interface is not initialized
3064 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
3065 *
3066 * @pre TvInit() should be called before calling this API
3067 */
3068tvError_t GetGammaTable(int colortemp, unsigned short *pData_R, unsigned short *pData_G, unsigned short *pData_B, unsigned short size);
3069/**
3070 * @brief Saves the gamma calibrated values.s
3071 *
3072 * This function saves the gamma calibrated values in picture profile database for the primary colors for a specific color temperature.
3073 * The saved gamma calibrated values will be automatically applied when the specified colour temperature choice is made
3074 * as a result of picture mode change or primary video source change or primary vidoe format change.
3075 *
3076 * @param[in] colortemp - Color temperature. Valid value will be member of ::tvColorTemp_t
3077 * @param[out] pData_R - Array of gamma red values. Valid range is (0 - 1023)
3078 * @param[out] pData_G - Array of gamma green values. Valid range is (0 - 1023)
3079 * @param[out] pData_B - Array of gamma blue values. Valid range is (0 - 1023)
3080 * @param[out] size - Common size of each array. Valid range is (0 - 256)
3081 *
3082 * @return tvError_t
3083 *
3084 * @retval tvERROR_NONE - Success
3085 * @retval tvERROR_INVALID_PARAM - Input parameter is invalid
3086 * @retval tvERROR_INVALID_STATE - Interface is not initialized
3087 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
3088 *
3089 * @pre TvInit() should be called before calling this API
3090 */
3091tvError_t SaveGammaTable(int colortemp, unsigned short *pData_R, unsigned short *pData_G, unsigned short *pData_B, unsigned short size);
3092
3093/**
3094 * @brief Sets the gamma pattern
3095 *
3096 * This function sets the primary color level at 10bit resolution( 0 - 1023 ). Should bypass all PQ elements @n
3097 * and display the full screen pattern of the primary colour passed. This function will only set and does'nt save the value.
3098 *
3099 * @param[in] is_10_bit - Value to check if red/green/blue paramter is 10 bit resolution or 8 bit resolution. @n
3100 * Valid values are ( @a 0 for is 10 bit, @a 1 for 8 bit). If 8 bit resolution is passed @n
3101 * values should be converted to 10 bit by 2 bit left shift and then used.
3102 * @param[in] R_Value - Red level of input pattern. Valid range is ( 0 - 1023 for 10 bit and 0 to 255 for 8 bit )
3103 * @param[in] G_Value - Green level of input pattern. Valid range is ( 0 - 1023 for 10 bit and 0 to 255 for 8 bit )
3104 * @param[in] B_Value - Blue level of input pattern. Valid range is ( 0 - 1023 for 10 bit and 0 to 255 for 8 bit )
3105 *
3106 * @return tvError_t
3107 *
3108 * @retval tvERROR_NONE - Success
3109 * @retval tvERROR_INVALID_PARAM - Input parameter is invalid
3110 * @retval tvERROR_INVALID_STATE - Interface is not initialized
3111 * @retval tvERROR_GENERAL - Underlying failures - SoC, memory, etc
3112 *
3113 * @pre TvInit() and SetGammaPatternMode(true) should be called before calling this API
3114 *
3115 * @see SetGammaPatternMode()
3116 */
3117tvError_t SetGammaPattern(int is_10_bit, int R_Value, int G_Value, int B_Value);
3118#ifdef __cplusplus
3119}
3120#endif
3121
3122#endif // End of _TV_SETTINGS_H
3123
3124/** @} */ // End of TV_Settings_H
3125/** @} */ // End of TV_Settings_HAL
3126/** @} */ // End of TV_Settings
3127/** @} */ // End of HPK
tvError_t
Definition tvError.h:57
tvError_t SetColorTemp_Bgain_onSource(tvColorTemp_t colorTemp, int bgain, int sourceId, int saveOnly)
Sets or saves the bgain value.
tvError_t GetCurrentComponentLuma(tvDataComponentColor_t blLumaColor, int *Luma)
Gets the current component luma.
tvError_t ResetBrightness(int defaultValue, bool resetForAllFormats)
Reset Brightness.
tvError_t SaveDolbyMode(int sourceInput, int pq_mode, int hdr_type, int value)
Saves the dolby mode value.
tvError_t ResetSaturation(int defaultValue, bool resetForAllFormats)
Reset Saturation.
tvError_t GetColorTemp_G_post_offset_onSource(tvColorTemp_t colorTemp, int *gpostoffset, int sourceId)
Gets the current gpostoffset value for a specfic color temperature and source.
tvError_t ResetComponentHue(int color, int defaultValue)
Reset Component hue.
tvError_t GetLocalDimmingLevel(int *localDimmingLevel)
Gets the current dimming level.
int GetWBRgbType(const char *color, const char *ctrl)
Get WB RGB type.
bool isWBUserDfault(tvDataColor_t wbvalue)
Check the given WB values are default or not.
tvError_t SetColorTemp_Ggain_onSource(tvColorTemp_t colorTemp, int ggain, int sourceId, int saveOnly)
Sets or saves the ggain value.
tvError_t SetBacklightFade(int from, int to, int duration)
Sets the backlight fade settings.
tvError_t setWakeupConfig(const tvWakeupSrcType_t src_type, const bool value)
Sets wake-up configuration.
input_source_offset_e
Definition tvSettings.h:102
tvError_t GetColorTemp_Bgain_onSource(tvColorTemp_t colorTemp, int *bgain, int sourceId)
Gets the current bgain value for a specfic color temperature and source.
tvError_t SetColorTemp_B_post_offset(tvColorTemp_t colorTemp, int bpostoffset)
Set the bpostoffset value.
int GetCMSDefault(tvCMS_tunel_t color_tunel_type)
Gets the current CMS default value. To be deprecated soon.
#define PIC_MODE_NAME_MAX
Definition tvSettings.h:62
void GetAllSupportedPicModeIndex(int pic_mode_index[])
Get All Supported PicMode Index.
tvError_t GetBrightness(int *brightness)
Gets the current brightness value.
tvError_t SetAspectRatio(tvDisplayMode_t dispMode)
Sets the aspect ratio.
tvError_t ResetComponentLuma(int color, int defaultValue)
Reset Component Luma.
tvError_t GetAspectRatio(tvDisplayMode_t *dispMode)
Gets the current aspect ratio.
tvError_t SaveBrightness(int sourceInput, int pq_mode, int hdr_type, int value)
Saves the brightness value.
struct pic_modes pic_modes_t
tvError_t SaveSharpness(int sourceInput, int pq_mode, int hdr_type, int value)
Saves the sharpness value.
tvError_t GetCurrentBacklightMode(tvBacklightMode_t *blMode)
Gets current blacklight mode.
tvError_t GetColorTemp_G_post_offset(tvColorTemp_t colorTemp, int *gpostoffset)
Get the gpostoffset value.
void SwitchEDID(int pqmode)
Switch EDID.
int GetHDR10ModeIndex(const char *hdr10Mode)
Get HDR10 mode index.
tvError_t SaveSaturation(int sourceInput, int pq_mode, int hdr_type, int value)
Saves the saturation value.
int GetHLGModeIndex(const char *hlgMode)
Get HLG mode Index.
tvError_t SetGammaMode(int mode)
Enable or disable gamma mode.
tvError_t GetVideoResolution(tvResolutionParam_t *res)
Gets the current video resolution.
#define MAX_STRING_SIZE
Definition tvSettings.h:59
tvError_t GetTVSupportedHDR10Modes(pic_modes_t *dvModes[], unsigned short *count)
Gets the supported HDR10 modes and their count. To be deprecated soon.
tvError_t tvSD3toCriSyncInit()
Sync the calibrated data to driver.
int GetPanelID(char *panelid)
Returns Panel ID information. To be deprecated soon.
tvError_t SetTVHLGMode(const char *hlgMode)
Sets the HLG mode. To be deprecated soon.
int GetCustomPQModeIndex(void)
Get Custom mode index.
tvError_t ResetColorTemperature(int defaultValue, bool resetForAllFormats)
Reset Color Tempearture.
tvError_t GetColorTemp_Rgain_onSource(tvColorTemp_t colorTemp, int *rgain, int sourceId)
Gets the current rgain value.
tvError_t SetBacklight(int backlight)
Sets the backlight value in the backlight hardware.
tvError_t getWbInfo(getWBInfo_t *params, std::vector< std::string > &selector, std::vector< std::string > &colorTmp, std::vector< std::string > &input)
Gets the current white balance info. To be deprecated soon.
tvError_t SetColorTemp_R_post_offset_onSource(tvColorTemp_t colorTemp, int rpostoffset, int sourceId, int saveOnly)
Sets or saves the rpostoffset value.
tvError_t GetColorTemp_R_post_offset_onSource(tvColorTemp_t colorTemp, int *rpostoffset, int sourceId)
Gets the current rpostoffset value.
tvError_t SetCurrentComponentHue(tvDataComponentColor_t blHueColor, int hue)
Sets current component hue.
tvError_t GetSaturation(int *saturation)
Gets the current saturation value.
tvVideoHDRFormat_t GetCurrentContentFormat(void)
Get Current Content Format.
tvError_t GetTVSupportedHLGModes(pic_modes_t *dvModes[], unsigned short *count)
Gets the supported HLG modes and their count. To be deprecated soon.
tvError_t SaveHue(int sourceInput, int pq_mode, int hdr_type, int value)
Saves the hue value.
tvError_t SaveDisplayMode(int sourceInput, int pq_mode, int hdr_type, int value)
Saves the DisplayMode value.
tvError_t GetTVSupportedPictureModes(pic_modes_t *pictureModes[], unsigned short *count)
Gets the supported picture modes and their count.
tvDataColor_t GetUSerWBValueOnInit(void)
Get WB values on init.
tvError_t SetColorTemp_Bgain(tvColorTemp_t colorTemp, int bgain)
Set the bgain value.
tvError_t ResetHue(int defaultValue, bool resetForAllFormats)
Reset Hue.
tvError_t SetColorTemp_G_post_offset(tvColorTemp_t colorTemp, int gpostoffset)
Set the gpostoffset value.
tvError_t ResetSharpness(int defaultValue, bool resetForAllFormats)
Reset Sharpness.
int GetDriverEquivalentBLForCurrentFmt(int backlight)
Get Driver BL value for current format.
tvError_t GetDynamicContrast(char *isDynamicContrastEnabled)
Gets the current Dynamic contrast mode.
int ConvertVideoFormatToHDRFormat(tvVideoHDRFormat_t videoFormat)
Returns tvhdr_type_t enum for given tvVideoHDRFormat_t enum. To be deprecated soon.
void RegisterVideoResolutionChangeCB(tvVideoResolutionCallbackData &cbData)
Registers the Video resolution change callback.
tvError_t SaveDynamicBacklight(int sourceInput, int pq_mode, int hdr_type, int value)
Saves the DynamicBacklight mode.
tvError_t tvInit()
Initialises TV Settings HAL.
tvError_t SetGammaTable(unsigned short *pData_R, unsigned short *pData_G, unsigned short *pData_B, unsigned short size)
Sets the gamma calibrated values to gamma HW for current selected colour temperature.
tvPictureMode_t GetTVPictureModeIndex(const char *pictureMode)
Get TV Picture Mode Index.
tvError_t SaveCMS(int sourceInput, int pq_mode, int hdr_type, int tunnel_type, int color_type, int value)
Save the CMS value.
tvError_t SetTVPictureMode(const char *pictureMode)
Sets the Picture Mode.
tvError_t GetCurrentComponentSaturation(tvDataComponentColor_t blSaturationColor, int *saturation)
Gets current component saturation.
tvError_t SaveBacklight(int sourceInput, int pq_mode, int hdr_type, int value)
Saves the backlight value.
tvError_t GetSupportedBacklightModes(int *blModes)
Gets the supported backlight modes.
void splitstringsfrombuffer(char *buffer, char *availableModes, unsigned short *totalcount)
Parse buffer and return string values & total count.
struct tvBacklightInfo_s tvBacklightInfo_t
tvError_t GetContrast(int *contrast)
Gets the current contrast value.
tvError_t SetBrightness(int brightness)
Sets the brightness value to driver register(s)
tvError_t GetRGBPattern(int *r, int *g, int *b)
Gets the current RGB values of the RGB pattern.
tvError_t GetGammaTable(int colortemp, unsigned short *pData_R, unsigned short *pData_G, unsigned short *pData_B, unsigned short size)
Gets the current gamma calibrated values from gamma HW for current selected colour temperature.
tvError_t GetCurrentVideoFormat(tvVideoHDRFormat_t *format)
Gets current video format. To be deprecated soon.
tvError_t GetColorTemp_Ggain_onSource(tvColorTemp_t colorTemp, int *ggain, int sourceId)
Gets the current ggain value for a specfic color temperature and source.
int ConvertTVColorToVendorColor(tvDataComponentColor_t blComponentColor)
Convert TV color to vendor color.
#define CONTROL_COUNT
Definition tvSettings.h:60
tvError_t GetColorTemperature(tvColorTemp_t *colorTemp)
Gets the current color temperature.
bool areEqual(tvDataColor_t wbvalueThis, tvDataColor_t wbvalueThat)
Check WB values are equal.
tvError_t enableWBmode(bool value)
Enable/disable WB mode.
struct getWBInfo getWBInfo_t
int ConvertHDRFormatToContentFormat(tvhdr_type_t hdrFormat)
Convert HDR to content format.
tvError_t setWBctrl(char *inputSrc, char *colorTemp, char *color, char *ctrl, int value)
Sets the white balance control. To be deprecated soon.
tvError_t SetLowLatencyState(int lowLatencyIndex)
Sets the low latency state to driver register(s)
tvError_t ResetBacklight(int defaultValue, bool resetForAllFormats)
Reset Backlight.
tvError_t GetBacklight(int *backlight)
Gets the current backlight value.
tvError_t GetTVSupportedDimmingModes(char **dimmingModes, unsigned short *count)
Gets supported backlight dimming modes of the system. To be deprecated soon.
tvError_t GetTVPictureMode(char *pictureMode)
Gets the current selected picture Mode.
int GetDolbyModeIndex(const char *dolbyMode)
Get Dolby Mode Index.
tvError_t GetCurrentComponentHue(tvDataComponentColor_t blHueColor, int *hue)
Gets current component hue.
tvError_t SetContrast(int contrast)
Sets the contrast value to driver register(s)
tvError_t ResetContrast(int defaultValue, bool resetForAllFormats)
Reset Contrast.
tvError_t ResetComponentSaturation(int color, int defaultValue)
Reset Component Saturation.
tvError_t GetTVSupportedDVModes(pic_modes_t *dvModes[], unsigned short *count)
Gets the supported DV modes and their count.
tvError_t GetLowLatencyState(int *lowlatencystate)
Gets the current low latency state.
tvError_t SetSaturation(int saturation)
Sets the saturation value to driver register(s)
tvError_t GetTVHLGMode(char *hlgMode)
Gets the current current HLG mode.
tvError_t SetBacklightInfo(tvBacklightInfo_t *backlightDefaults)
Set backlight info.
tvError_t SetColorTemperature(tvColorTemp_t colorTemp)
Sets the color temperature to driver register(s)
tvError_t SaveContrast(int sourceInput, int pq_mode, int hdr_type, int value)
Saves the contrast value.
tvError_t SetTVBacklightGlobalFactor(int value, int rangeMidPointValue)
Set TV Backlight Global Factor.
tvError_t SetColorTemp_G_post_offset_onSource(tvColorTemp_t colorTemp, int gpostoffset, int sourceId, int saveOnly)
Sets or saves the gpostoffset value.
tvError_t GetTVHDR10Mode(char *hdr10Mode)
Gets the current current HDR10 mode.
void RegisterVideoFrameRateChangeCB(tvVideoFrameRateCallbackData &cbData)
Registers the Video framerate change callback.
tvError_t SetTVDimmingMode(const char *dimmingMode)
Sets the backlight dimming mode.
tvError_t SetColorTemp_R_post_offset(tvColorTemp_t colorTemp, int rpostoffset)
Set the rpostoffset value.
tvError_t SetColorTemp_Ggain(tvColorTemp_t colorTemp, int ggain)
Set the ggain value.
struct bl_para_s bl_para_t
tvError_t SetCurrentComponentSaturation(tvDataComponentColor_t blSaturationColor, int saturation)
Sets current component saturation.
tvError_t GetHue(int *hue)
Gets the current hue value.
tvError_t SaveLocalDimmingLevel(int sourceInput, int pq_mode, int hdr_type, int value)
Saves local dimming level.
tvError_t ReadAllModeConfigfile(const char *file, char *cpybuffer, const char *searchstring)
Reads PQ capability information sections from the specified file. To be deprecated soon.
tvError_t SetColorTemp_Rgain(tvColorTemp_t colorTemp, int rgain)
Set the rgain value.
tvError_t tvTerm()
De-initialises TV Settings HAL.
tvError_t SetGammaPattern(int is_10_bit, int R_Value, int G_Value, int B_Value)
Sets the gamma pattern.
tvError_t SaveColorTemperatureUser(int rgbType, int value)
Saves the color temperature to driver cache. To be deprecated soon.
tvError_t GetColorTemp_B_post_offset(tvColorTemp_t colorTemp, int *bpostoffset)
Get the gpostoffset value.
tvError_t SetTint(int tint)
Sets the tint value to driver register(s)
tvError_t GetTVDolbyVisionMode(char *dolbyMode)
Gets the current current dolby vision mode.
tvError_t GetTint(int *tint)
Gets the current tint value.
tvError_t SetSharpness(int sharpness)
Sets the sharpness value to driver register(s)
tvError_t SaveGammaTable(int colortemp, unsigned short *pData_R, unsigned short *pData_G, unsigned short *pData_B, unsigned short size)
Saves the gamma calibrated values.s.
void RegisterVideoFormatChangeCB(tvVideoFormatCallbackData &cbData)
Registers the video format change callback.
#define BACKLIGHT_CURVE_MAX_INDEX
Definition tvSettings.h:69
enum input_source_offset_e input_source_offset_t
tvError_t SetCMSState(tvCMS_tunel_t tunelType, tvcomponent_color_type_t colorType, tvcomponent_state_t componentState)
Sets and save's the CMS state.
tvError_t GetColorTemp_Bgain(tvColorTemp_t colorTemp, int *bgain)
Get the bgain value.
tvError_t GetSupportedComponentColor(int *blComponentColor)
Gets the supported Component colors.
void(* tvVideoResolutionChangeCB)(tvResolutionParam_t resolutionStruct, void *userData)
tv Video Resolution ChangeCB
Definition tvSettings.h:1072
void(* tvVideoFormatChangeCB)(tvVideoHDRFormat_t format, void *userData)
Definition tvSettings.h:73
tvError_t GetTVBacklightGlobalFactor(int *value)
Get TV Backlight Global Factor.
tvError_t SetColorTemperatureUser(int rgbType, int value)
Set Color Temperature User.
tvError_t GetGrayPattern(int *YUVValue)
Gets the current gray pattern value.
int GetCurrentPQIndex(void)
Get current PQ Mode index.
tvError_t SetColorTemp_B_post_offset_onSource(tvColorTemp_t colorTemp, int bpostoffset, int sourceId, int saveOnly)
Sets or saves the bpostoffset value.
void RegisterVideoContentChangeCB(tvVideoContentCallbackData &cbData)
Registers the VideoContent FMM change callback.
tvError_t SetHue(int hue)
Sets the hue value to driver register(s)
void splitstringsandvaluefrombuffer(char *buffer, pic_modes_t *availableModes[], unsigned short *totalcount)
Parse buffer and return string values,index & total count.
tvError_t SetCurrentComponentLuma(tvDataComponentColor_t blLumaColor, int Luma)
Sets the current component luma value.
tvError_t SetDynamicContrast(const char *dynamicContrastEnable)
Sets the dynamic contrast.
tvError_t UpdateEDIDAndSetDimmingLevel(int dimmingLevel)
Set the EDID and dimming level.
tvError_t GetColorTemp_Ggain(tvColorTemp_t colorTemp, int *ggain)
Get the ggain value.
tvError_t SetGrayPattern(int YUVValue)
Sets the gray pattern value.
tvError_t SaveColorTemperature(int sourceInput, int pq_mode, int hdr_type, int value)
Saves the color temperature value.
tvError_t GetColorTemp_B_post_offset_onSource(tvColorTemp_t colorTemp, int *bpostoffset, int sourceId)
Gets the current bpostoffset value for a specfic color temperature and source.
tvError_t GetSharpness(int *sharpness)
Gets the current sharpness value.
bool isCurrentHDRTypeIsSDR(void)
Check if current format is SDR.
tvError_t SetColorTemp_Rgain_onSource(tvColorTemp_t colorTemp, int rgain, int sourceId, int saveOnly)
Sets or saves the rgain value.
tvError_t GetVideoFrameRate(tvVideoFrameRate_t *format)
Gets current video framerate.
tvError_t SaveLowLatencyState(int sourceInput, int pq_mode, int hdr_type, int value)
Saves the low latency index.
void(* tvVideoFrameRateChangeCB)(tvVideoFrameRate_t frameRate, void *userData)
tv Video FrameRate Change CB
Definition tvSettings.h:1098
tvError_t SetTVDolbyVisionMode(const char *dolbyMode)
Sets dolby vision mode. To be deprecated soon.
void GetDefaultPanelID(char *panelID)
Get the default panel ID.
tvError_t GetColorTemp_R_post_offset(tvColorTemp_t colorTemp, int *rpostoffset)
Get the rpostoffset value.
void GetLDIMAndEDIDLevel(int dimmingMode, int format, int *dimmingLevel, int *edidLevel)
Get LDIM and EDID level.
tvError_t SetCurrentBacklightMode(tvBacklightMode_t blMode)
Sets the backlight mode.
tvError_t GetSupportedContentFormats(unsigned int *contentFormats, unsigned short *numberOfFormats)
Get Supported Content Formats.
tvError_t SetRGBPattern(int r, int g, int b)
Sets the RGB values of RGB pattern.
tvError_t SetLocalDimmingLevel(int localDimmingLevel)
Sets the local dimming level.
fp_mfrColorTemp_t
Definition tvSettings.h:94
tvError_t GetColorTemp_Rgain(tvColorTemp_t colorTemp, int *rgain)
Get the ggain value.
int GetNumberOfModesupported(void)
GetNumberOfModesupported.
void(* tvVideoContentChangeCB)(tvContentType_t mode, void *userData)
Definition tvSettings.h:75
tvError_t SetTVHDR10Mode(const char *hdr10Mode)
Sets the HDR10 mode. To be deprecated soon.
tvError_t getWBctrl(char *inputSrc, char *colortemp, char *color, char *ctrl, int *value)
Gets the current white balance control.
@ TV_OFFSET_NEW
Definition tvSettings.h:104
@ AV_OFFSET_NEW
Definition tvSettings.h:105
@ HDMI_OFFSET_NEW
Definition tvSettings.h:103
@ MAX_OFFSET_NEW
Definition tvSettings.h:106
@ mfrColorTemp_USER
Definition tvSettings.h:98
@ mfrColorTemp_COLD
Definition tvSettings.h:96
@ mfrColorTemp_STANDARD
Definition tvSettings.h:95
@ mfrColorTemp_WARM
Definition tvSettings.h:97
@ mfrColorTemp_MAX
Definition tvSettings.h:99
enum tvcomponent_state_e tvcomponent_state_t
Enumeration defining the TV component state.
enum tvhdr_type_e tvhdr_type_t
Enumeration defining the TV hdr type.
tvVideoHDRFormat_t
Enumeration defining the TV video HDR format.
Definition tvTypes.h:83
tvVideoFrameRate_t
Enumeration defining supported types of frame rates.
Definition tvTypes.h:152
tvContentType_t
Enumeration defining the supported FMM modes.
Definition tvTypes.h:63
tvColorTemp_t
Enumeration defining supported color temperature.
Definition tvTypes.h:181
tvDisplayMode_t
Enumeration defining supported display modes.
Definition tvTypes.h:167
tvWakeupSrcType_t
Enumeration defining supported wakeup source types.
Definition tvTypes.h:192
tvDataComponentColor_t
Enumeration defining supported TV component colors.
Definition tvTypes.h:250
enum tvCMS_tunel_e tvCMS_tunel_t
Enumeration defining the TV CMS tunel.
tvBacklightMode_t
Enumeration defining the supported backlight modes.
Definition tvTypes.h:72
enum tvcomponent_color_type_e tvcomponent_color_type_t
Enumeration defining the TV component color type.
short int tvPictureMode_t
Definition tvTypes.h:55
Structure defining supported parameters in tv color.
Definition tvTypes.h:208
Definition tvSettings.h:117
int mBacklightHDR
Definition tvSettings.h:119
int mBacklightSDR
Definition tvSettings.h:118
Definition tvSettings.h:109
char wbGain[CONTROL_COUNT][MAX_STRING_SIZE]
Definition tvSettings.h:111
char wbControls[CONTROL_COUNT][MAX_STRING_SIZE]
Definition tvSettings.h:110
char wbOffset[CONTROL_COUNT][MAX_STRING_SIZE]
Definition tvSettings.h:112
Definition tvSettings.h:77
char name[PIC_MODE_NAME_MAX]
Definition tvSettings.h:78
short int value
Definition tvSettings.h:79
Definition tvSettings.h:123
int defaultBLHDR
Definition tvSettings.h:127
int defaultBLSDR
Definition tvSettings.h:126
int hdrBLCurve[BACKLIGHT_CURVE_MAX_INDEX]
Definition tvSettings.h:125
int sdrBLCurve[BACKLIGHT_CURVE_MAX_INDEX]
Definition tvSettings.h:124
Enumeration defining the TV resolution paramater.
Definition tvTypes.h:142
Definition tvSettings.h:89
tvVideoContentChangeCB cb
Definition tvSettings.h:91
void * userdata
Definition tvSettings.h:90
Definition tvSettings.h:83
tvVideoFormatChangeCB cb
Definition tvSettings.h:85
void * userdata
Definition tvSettings.h:84
Definition tvSettings.h:1100
tvVideoFrameRateChangeCB cb
Definition tvSettings.h:1102
void * userdata
Definition tvSettings.h:1101
Definition tvSettings.h:1074
tvVideoResolutionChangeCB cb
Definition tvSettings.h:1076
void * userdata
Definition tvSettings.h:1075