@quicktvui/ai 1.0.7 → 1.0.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1379) hide show
  1. package/package.json +1 -1
  2. package/rules/.clinerules +28 -4
  3. package/rules/.cursorrules +28 -4
  4. package/rules/.github/copilot-instructions.md +28 -4
  5. package/rules/.source/hippy/extend_views/CoverFlowHorizontalView.java +203 -0
  6. package/rules/.source/hippy/extend_views/CoverFlowVerticalView.java +203 -0
  7. package/rules/.source/hippy/extend_views/CoverFlowViewController.java +195 -0
  8. package/rules/.source/hippy/extend_views/EngineRootView.java +125 -0
  9. package/rules/.source/hippy/extend_views/ExtendTag.java +83 -0
  10. package/rules/.source/hippy/extend_views/FocusSearchHelper.java +124 -0
  11. package/rules/.source/hippy/extend_views/IRecyclerItemView.java +12 -0
  12. package/rules/.source/hippy/extend_views/JSEventHandleView.java +5 -0
  13. package/rules/.source/hippy/extend_views/MarqueeRelayManager.java +133 -0
  14. package/rules/.source/hippy/extend_views/MarqueeRelayTextView.java +211 -0
  15. package/rules/.source/hippy/extend_views/ProgressBarView.java +83 -0
  16. package/rules/.source/hippy/extend_views/ProgressBarViewController.java +145 -0
  17. package/rules/.source/hippy/extend_views/SeekBarView.java +104 -0
  18. package/rules/.source/hippy/extend_views/SeekBarViewController.java +218 -0
  19. package/rules/.source/hippy/extend_views/StateImageView.java +149 -0
  20. package/rules/.source/hippy/extend_views/StateImageViewController.java +34 -0
  21. package/rules/.source/hippy/extend_views/TVButtonView.java +314 -0
  22. package/rules/.source/hippy/extend_views/TVButtonViewController.java +89 -0
  23. package/rules/.source/hippy/extend_views/TVTextView.java +684 -0
  24. package/rules/.source/hippy/extend_views/TVViewActor.java +811 -0
  25. package/rules/.source/hippy/extend_views/TVViewActorHost.java +6 -0
  26. package/rules/.source/hippy/extend_views/TVViewActor/346/216/245/345/205/245.md +66 -0
  27. package/rules/.source/hippy/extend_views/TemplateUtil.java +336 -0
  28. package/rules/.source/hippy/extend_views/TextButtonNode.java +47 -0
  29. package/rules/.source/hippy/extend_views/TextViewController.java +377 -0
  30. package/rules/.source/hippy/extend_views/fastlist/CenterFlyInAnimator.java +96 -0
  31. package/rules/.source/hippy/extend_views/fastlist/ChildOnScreenScroller.java +548 -0
  32. package/rules/.source/hippy/extend_views/fastlist/ClonedViewTag.java +17 -0
  33. package/rules/.source/hippy/extend_views/fastlist/EventDeliverer.java +55 -0
  34. package/rules/.source/hippy/extend_views/fastlist/FastAdapter.java +4683 -0
  35. package/rules/.source/hippy/extend_views/fastlist/FastAdapterUtil.java +982 -0
  36. package/rules/.source/hippy/extend_views/fastlist/FastFlexNode.java +48 -0
  37. package/rules/.source/hippy/extend_views/fastlist/FastFlexView.java +873 -0
  38. package/rules/.source/hippy/extend_views/fastlist/FastFlexViewController.java +130 -0
  39. package/rules/.source/hippy/extend_views/fastlist/FastItemNode.java +67 -0
  40. package/rules/.source/hippy/extend_views/fastlist/FastItemView.java +306 -0
  41. package/rules/.source/hippy/extend_views/fastlist/FastItemViewController.java +106 -0
  42. package/rules/.source/hippy/extend_views/fastlist/FastListModule.java +95 -0
  43. package/rules/.source/hippy/extend_views/fastlist/FastListNode.java +90 -0
  44. package/rules/.source/hippy/extend_views/fastlist/FastListView.java +2466 -0
  45. package/rules/.source/hippy/extend_views/fastlist/FastListViewController.java +1038 -0
  46. package/rules/.source/hippy/extend_views/fastlist/FastListView/346/270/262/346/237/223/346/265/201/347/250/213/345/233/276.graffle +0 -0
  47. package/rules/.source/hippy/extend_views/fastlist/FastPendingView.java +47 -0
  48. package/rules/.source/hippy/extend_views/fastlist/ItemDecorations.java +71 -0
  49. package/rules/.source/hippy/extend_views/fastlist/ItemStoreNode.java +64 -0
  50. package/rules/.source/hippy/extend_views/fastlist/ItemStoreView.java +13 -0
  51. package/rules/.source/hippy/extend_views/fastlist/ItemStoreViewController.java +45 -0
  52. package/rules/.source/hippy/extend_views/fastlist/ListItemHolder.java +7 -0
  53. package/rules/.source/hippy/extend_views/fastlist/ListViewControlProp.java +41 -0
  54. package/rules/.source/hippy/extend_views/fastlist/MouseRecycleView.java +509 -0
  55. package/rules/.source/hippy/extend_views/fastlist/OnFastItemClickListener.java +12 -0
  56. package/rules/.source/hippy/extend_views/fastlist/OnFastItemFocusChangeListener.java +9 -0
  57. package/rules/.source/hippy/extend_views/fastlist/OnFastScrollStateChangedListener.java +7 -0
  58. package/rules/.source/hippy/extend_views/fastlist/PendingListNode.java +18 -0
  59. package/rules/.source/hippy/extend_views/fastlist/PendingViewController.java +13 -0
  60. package/rules/.source/hippy/extend_views/fastlist/PostHandlerView.java +6 -0
  61. package/rules/.source/hippy/extend_views/fastlist/PostTaskHolder.java +20 -0
  62. package/rules/.source/hippy/extend_views/fastlist/ReplaceChildController.java +105 -0
  63. package/rules/.source/hippy/extend_views/fastlist/ReplaceChildView.java +312 -0
  64. package/rules/.source/hippy/extend_views/fastlist/TVListView.java +3692 -0
  65. package/rules/.source/hippy/extend_views/fastlist/TemplateCodeParser.java +247 -0
  66. package/rules/.source/hippy/extend_views/fastlist/Utils.java +572 -0
  67. package/rules/.source/hippy/extend_views/fastlist/ViewTag.java +317 -0
  68. package/rules/.source/hippy/extend_views/fastlist/VirtualListView.java +8 -0
  69. package/rules/.source/hippy/extend_views/fastlist/diff/FastListDataBindingHelper.java +320 -0
  70. package/rules/.source/hippy/extend_views/fastlist/diff/KeyDiffHelper.java +289 -0
  71. package/rules/.source/hippy/extend_views/fastlist/diff/NoKeyDiffHelper.java +278 -0
  72. package/rules/.source/hippy/extend_views/tag/FontTag.java +53 -0
  73. package/rules/.source/hippy/extend_views/tag/HtmlTag.java +191 -0
  74. package/rules/.source/hippy/extend_views/tag/HtmlTagHandler.java +185 -0
  75. package/rules/.source/hippy/extend_views/tag/SpanTag.java +160 -0
  76. package/rules/.source/hippy/extend_views/tag/TextFontSpan.java +102 -0
  77. package/rules/.source/hippy/extend_views/waterfall/Chunk.java +10 -0
  78. package/rules/.source/hippy/extend_views/waterfall/ChunkGroup.java +5 -0
  79. package/rules/.source/hippy/extend_views/waterfall/Section.java +4 -0
  80. package/rules/.source/hippy/extend_views/waterfall/Tabs.java +5 -0
  81. package/rules/.source/hippy/extend_views/waterfall/WaterfallUtils.java +26 -0
  82. package/rules/.source/hippy/hippy_uimanager/ControllerHolder.java +30 -0
  83. package/rules/.source/hippy/hippy_uimanager/ControllerManager.java +651 -0
  84. package/rules/.source/hippy/hippy_uimanager/ControllerRegistry.java +102 -0
  85. package/rules/.source/hippy/hippy_uimanager/ControllerUpdateManger.java +252 -0
  86. package/rules/.source/hippy/hippy_uimanager/CustomControllerHelper.java +425 -0
  87. package/rules/.source/hippy/hippy_uimanager/DiffUtils.java +526 -0
  88. package/rules/.source/hippy/hippy_uimanager/ExtendViewGroup.java +36 -0
  89. package/rules/.source/hippy/hippy_uimanager/HippyCustomViewCreator.java +29 -0
  90. package/rules/.source/hippy/hippy_uimanager/HippyGroupController.java +83 -0
  91. package/rules/.source/hippy/hippy_uimanager/HippyViewBase.java +27 -0
  92. package/rules/.source/hippy/hippy_uimanager/HippyViewController.java +2189 -0
  93. package/rules/.source/hippy/hippy_uimanager/HippyViewEvent.java +52 -0
  94. package/rules/.source/hippy/hippy_uimanager/IHippyZIndexViewGroup.java +24 -0
  95. package/rules/.source/hippy/hippy_uimanager/InternalExtendViewUtil.java +395 -0
  96. package/rules/.source/hippy/hippy_uimanager/ListItemRenderNode.java +143 -0
  97. package/rules/.source/hippy/hippy_uimanager/ListViewRenderNode.java +44 -0
  98. package/rules/.source/hippy/hippy_uimanager/MatrixUtil.java +470 -0
  99. package/rules/.source/hippy/hippy_uimanager/NativeGestureDispatcher.java +349 -0
  100. package/rules/.source/hippy/hippy_uimanager/NativeGestureProcessor.java +188 -0
  101. package/rules/.source/hippy/hippy_uimanager/PullFooterRenderNode.java +43 -0
  102. package/rules/.source/hippy/hippy_uimanager/PullHeaderRenderNode.java +43 -0
  103. package/rules/.source/hippy/hippy_uimanager/RenderManager.java +304 -0
  104. package/rules/.source/hippy/hippy_uimanager/RenderNode.java +533 -0
  105. package/rules/.source/hippy/hippy_uimanager/StateView.java +17 -0
  106. package/rules/.source/hippy/hippy_uimanager/TransformUtil.java +125 -0
  107. package/rules/.source/hippy/hippy_uimanager/ViewGroupDrawingOrderHelper.java +108 -0
  108. package/rules/.source/hippy/hippy_uimanager/ViewStateProvider.java +10 -0
  109. package/rules/.source/hippy/hippy_views/audioview/AudioPlayManager.java +457 -0
  110. package/rules/.source/hippy/hippy_views/audioview/AudioView.java +225 -0
  111. package/rules/.source/hippy/hippy_views/audioview/AudioViewController.java +135 -0
  112. package/rules/.source/hippy/hippy_views/common/CommonBackgroundDrawable.java +58 -0
  113. package/rules/.source/hippy/hippy_views/common/CommonBorder.java +37 -0
  114. package/rules/.source/hippy/hippy_views/custom/HippyCustomPropsController.java +61 -0
  115. package/rules/.source/hippy/hippy_views/hippylist/HippyRecyclerListAdapter.java +399 -0
  116. package/rules/.source/hippy/hippy_views/hippylist/HippyRecyclerView.java +378 -0
  117. package/rules/.source/hippy/hippy_views/hippylist/HippyRecyclerViewController.java +187 -0
  118. package/rules/.source/hippy/hippy_views/hippylist/HippyRecyclerViewHolder.java +39 -0
  119. package/rules/.source/hippy/hippy_views/hippylist/HippyRecyclerViewWrapper.java +134 -0
  120. package/rules/.source/hippy/hippy_views/hippylist/NodePositionHelper.java +55 -0
  121. package/rules/.source/hippy/hippy_views/hippylist/PreloadHelper.java +54 -0
  122. package/rules/.source/hippy/hippy_views/hippylist/PullFooterEventHelper.java +61 -0
  123. package/rules/.source/hippy/hippy_views/hippylist/PullHeaderEventHelper.java +127 -0
  124. package/rules/.source/hippy/hippy_views/hippylist/RecyclerViewEventHelper.java +394 -0
  125. package/rules/.source/hippy/hippy_views/image/HippyContentDrawable.java +113 -0
  126. package/rules/.source/hippy/hippy_views/image/HippyImageView.java +1608 -0
  127. package/rules/.source/hippy/hippy_views/image/HippyImageViewController.java +382 -0
  128. package/rules/.source/hippy/hippy_views/image/IImageStateListener.java +7 -0
  129. package/rules/.source/hippy/hippy_views/list/ChildOnScreenScroller.java +255 -0
  130. package/rules/.source/hippy/hippy_views/list/HippyListAdapter.java +647 -0
  131. package/rules/.source/hippy/hippy_views/list/HippyListItemView.java +162 -0
  132. package/rules/.source/hippy/hippy_views/list/HippyListItemViewController.java +45 -0
  133. package/rules/.source/hippy/hippy_views/list/HippyListView.java +915 -0
  134. package/rules/.source/hippy/hippy_views/list/HippyListViewController.java +622 -0
  135. package/rules/.source/hippy/hippy_views/list/HippyRecycler.java +31 -0
  136. package/rules/.source/hippy/hippy_views/list/IRecycleItemTypeChange.java +23 -0
  137. package/rules/.source/hippy/hippy_views/list/ItemDecorations.java +70 -0
  138. package/rules/.source/hippy/hippy_views/list/NegativeLongKeyFlinger.java +156 -0
  139. package/rules/.source/hippy/hippy_views/list/NodeHolder.java +34 -0
  140. package/rules/.source/hippy/hippy_views/list/RecycleViewFlinger.java +126 -0
  141. package/rules/.source/hippy/hippy_views/list/TVRecyclerView.java +2070 -0
  142. package/rules/.source/hippy/hippy_views/list/TVSingleLineListView.java +15 -0
  143. package/rules/.source/hippy/hippy_views/modal/HippyModalHostManager.java +102 -0
  144. package/rules/.source/hippy/hippy_views/modal/HippyModalHostView.java +597 -0
  145. package/rules/.source/hippy/hippy_views/modal/ModalHostHelper.java +46 -0
  146. package/rules/.source/hippy/hippy_views/modal/ModalStyleNode.java +34 -0
  147. package/rules/.source/hippy/hippy_views/modal/RequestCloseEvent.java +32 -0
  148. package/rules/.source/hippy/hippy_views/modal/ShowEvent.java +31 -0
  149. package/rules/.source/hippy/hippy_views/navigator/Navigator.java +126 -0
  150. package/rules/.source/hippy/hippy_views/navigator/NavigatorController.java +120 -0
  151. package/rules/.source/hippy/hippy_views/refresh/HippyPullFooterView.java +47 -0
  152. package/rules/.source/hippy/hippy_views/refresh/HippyPullFooterViewController.java +65 -0
  153. package/rules/.source/hippy/hippy_views/refresh/HippyPullHeaderView.java +39 -0
  154. package/rules/.source/hippy/hippy_views/refresh/HippyPullHeaderViewController.java +104 -0
  155. package/rules/.source/hippy/hippy_views/refresh/RefreshWrapper.java +237 -0
  156. package/rules/.source/hippy/hippy_views/refresh/RefreshWrapperController.java +62 -0
  157. package/rules/.source/hippy/hippy_views/refresh/RefreshWrapperItemController.java +39 -0
  158. package/rules/.source/hippy/hippy_views/refresh/RefreshWrapperItemView.java +26 -0
  159. package/rules/.source/hippy/hippy_views/scroll/HippyHorizontalScrollView.java +500 -0
  160. package/rules/.source/hippy/hippy_views/scroll/HippyOnScrollHelper.java +39 -0
  161. package/rules/.source/hippy/hippy_views/scroll/HippyScrollView.java +46 -0
  162. package/rules/.source/hippy/hippy_views/scroll/HippyScrollViewController.java +178 -0
  163. package/rules/.source/hippy/hippy_views/scroll/HippyScrollViewEventHelper.java +92 -0
  164. package/rules/.source/hippy/hippy_views/scroll/HippyVerticalScrollView.java +522 -0
  165. package/rules/.source/hippy/hippy_views/text/HippyTextView.java +512 -0
  166. package/rules/.source/hippy/hippy_views/text/HippyTextViewController.java +77 -0
  167. package/rules/.source/hippy/hippy_views/textinput/HippyTextInput.java +668 -0
  168. package/rules/.source/hippy/hippy_views/textinput/HippyTextInputController.java +528 -0
  169. package/rules/.source/hippy/hippy_views/textinput/TextInputNode.java +115 -0
  170. package/rules/.source/hippy/hippy_views/videoview/APEZProvider.java +287 -0
  171. package/rules/.source/hippy/hippy_views/videoview/APKExpansionSupport.java +82 -0
  172. package/rules/.source/hippy/hippy_views/videoview/PivotPoint.java +13 -0
  173. package/rules/.source/hippy/hippy_views/videoview/ScalableType.java +34 -0
  174. package/rules/.source/hippy/hippy_views/videoview/ScalableVideoView.java +265 -0
  175. package/rules/.source/hippy/hippy_views/videoview/ScaleManager.java +191 -0
  176. package/rules/.source/hippy/hippy_views/videoview/Size.java +19 -0
  177. package/rules/.source/hippy/hippy_views/videoview/VideoHippyView.java +917 -0
  178. package/rules/.source/hippy/hippy_views/videoview/VideoHippyViewController.java +236 -0
  179. package/rules/.source/hippy/hippy_views/videoview/ZipResourceFile.java +427 -0
  180. package/rules/.source/hippy/hippy_views/view/CardRootView.java +28 -0
  181. package/rules/.source/hippy/hippy_views/view/CustomLayoutView.java +10 -0
  182. package/rules/.source/hippy/hippy_views/view/CustomNodeView.java +5 -0
  183. package/rules/.source/hippy/hippy_views/view/DialogViewGroup.java +113 -0
  184. package/rules/.source/hippy/hippy_views/view/HippyViewGroup.java +2042 -0
  185. package/rules/.source/hippy/hippy_views/view/HippyViewGroupController.java +583 -0
  186. package/rules/.source/hippy/hippy_views/view/WindowRoot.java +5 -0
  187. package/rules/.source/hippy/hippy_views/viewpager/HippyViewPager.java +308 -0
  188. package/rules/.source/hippy/hippy_views/viewpager/HippyViewPagerAdapter.java +148 -0
  189. package/rules/.source/hippy/hippy_views/viewpager/HippyViewPagerController.java +246 -0
  190. package/rules/.source/hippy/hippy_views/viewpager/HippyViewPagerItem.java +27 -0
  191. package/rules/.source/hippy/hippy_views/viewpager/HippyViewPagerItemController.java +42 -0
  192. package/rules/.source/hippy/hippy_views/viewpager/ViewPagerPageChangeListener.java +114 -0
  193. package/rules/.source/hippy/hippy_views/viewpager/event/HippyPageItemExposureEvent.java +40 -0
  194. package/rules/.source/hippy/hippy_views/viewpager/event/HippyPageScrollEvent.java +43 -0
  195. package/rules/.source/hippy/hippy_views/viewpager/event/HippyPageScrollStateChangedEvent.java +42 -0
  196. package/rules/.source/hippy/hippy_views/viewpager/event/HippyPageSelectedEvent.java +42 -0
  197. package/rules/.source/hippy/hippy_views/webview/HippyWebView.java +160 -0
  198. package/rules/.source/hippy/hippy_views/webview/HippyWebViewBridge.java +20 -0
  199. package/rules/.source/hippy/hippy_views/webview/HippyWebViewController.java +103 -0
  200. package/rules/.source/hippy/hippy_views/webview/HippyWebViewInner.java +77 -0
  201. package/rules/.source/sdk/app/src/main/java/com/quicktvui/sample/SampleApplication.java +1 -0
  202. package/rules/.source/sdk/app/src/main/java/com/quicktvui/sample/base/BaseActivity.java +1 -0
  203. package/rules/.source/sdk/app/src/main/java/com/quicktvui/sample/base/BaseApplication.java +1 -0
  204. package/rules/.source/sdk/app/src/main/java/com/quicktvui/sample/test_reg/Test2Module.java +1 -0
  205. package/rules/.source/sdk/app/src/main/java/com/quicktvui/sample/test_reg/TestALastpolloInit.java +1 -0
  206. package/rules/.source/sdk/app/src/main/java/com/quicktvui/sample/test_reg/TestApolloInit.java +1 -0
  207. package/rules/.source/sdk/app/src/main/java/com/quicktvui/sample/test_reg/TestCacheInit.java +1 -0
  208. package/rules/.source/sdk/app/src/main/java/com/quicktvui/sample/test_reg/TestComponent.java +1 -0
  209. package/rules/.source/sdk/app/src/main/java/com/quicktvui/sample/test_reg/TestKotlinInit.kt +1 -0
  210. package/rules/.source/sdk/app/src/main/java/com/quicktvui/sample/test_reg/TestModule.java +1 -0
  211. package/rules/.source/sdk/app/src/main/java/com/quicktvui/sample/test_reg/TestModule2.kt +1 -0
  212. package/rules/.source/sdk/app/src/main/java/com/quicktvui/sample/test_reg/TestModule3.java +1 -0
  213. package/rules/.source/sdk/app/src/main/java/com/quicktvui/sample/test_reg/TestViewController.java +25 -0
  214. package/rules/.source/sdk/app/src/main/java/com/quicktvui/sample/test_reg/TestViewGroupController.java +24 -0
  215. package/rules/.source/sdk/app/src/main/java/com/quicktvui/sample/ui/EsAppActivity.java +1 -0
  216. package/rules/.source/sdk/app/src/main/java/com/quicktvui/sample/ui/FocusButton.java +1 -0
  217. package/rules/.source/sdk/app/src/main/java/com/quicktvui/sample/ui/MainActivity.java +1 -0
  218. package/rules/.source/sdk/base/sdk-base/src/main/java/com/quicktvui/sdk/base/Constants.java +13 -0
  219. package/rules/.source/sdk/base/sdk-base/src/main/java/com/quicktvui/sdk/base/EsCallback.java +6 -0
  220. package/rules/.source/sdk/base/sdk-base/src/main/java/com/quicktvui/sdk/base/EsEmptyCallback.java +9 -0
  221. package/rules/.source/sdk/base/sdk-base/src/main/java/com/quicktvui/sdk/base/EsEventPacket.java +19 -0
  222. package/rules/.source/sdk/base/sdk-base/src/main/java/com/quicktvui/sdk/base/EsException.java +55 -0
  223. package/rules/.source/sdk/base/sdk-base/src/main/java/com/quicktvui/sdk/base/EsNativeEventCallback.java +8 -0
  224. package/rules/.source/sdk/base/sdk-base/src/main/java/com/quicktvui/sdk/base/EsPromise.java +15 -0
  225. package/rules/.source/sdk/base/sdk-base/src/main/java/com/quicktvui/sdk/base/EsProvider.java +8 -0
  226. package/rules/.source/sdk/base/sdk-base/src/main/java/com/quicktvui/sdk/base/EsSimplePromise.java +27 -0
  227. package/rules/.source/sdk/base/sdk-base/src/main/java/com/quicktvui/sdk/base/EsSingleCallback.java +9 -0
  228. package/rules/.source/sdk/base/sdk-base/src/main/java/com/quicktvui/sdk/base/IDiskCacheManager.java +19 -0
  229. package/rules/.source/sdk/base/sdk-base/src/main/java/com/quicktvui/sdk/base/IEsAutoInit.java +1 -0
  230. package/rules/.source/sdk/base/sdk-base/src/main/java/com/quicktvui/sdk/base/IEsInfo.java +18 -0
  231. package/rules/.source/sdk/base/sdk-base/src/main/java/com/quicktvui/sdk/base/IEsRemoteEventCallback.java +11 -0
  232. package/rules/.source/sdk/base/sdk-base/src/main/java/com/quicktvui/sdk/base/IEsTraceable.java +7 -0
  233. package/rules/.source/sdk/base/sdk-base/src/main/java/com/quicktvui/sdk/base/ISoManager.java +31 -0
  234. package/rules/.source/sdk/base/sdk-base/src/main/java/com/quicktvui/sdk/base/ITakeOverKeyEventListener.java +17 -0
  235. package/rules/.source/sdk/base/sdk-base/src/main/java/com/quicktvui/sdk/base/PromiseHolder.java +66 -0
  236. package/rules/.source/sdk/base/sdk-base/src/main/java/com/quicktvui/sdk/base/args/EsArray.java +215 -0
  237. package/rules/.source/sdk/base/sdk-base/src/main/java/com/quicktvui/sdk/base/args/EsMap.java +287 -0
  238. package/rules/.source/sdk/base/sdk-base/src/main/java/com/quicktvui/sdk/base/component/EsComponent.java +14 -0
  239. package/rules/.source/sdk/base/sdk-base/src/main/java/com/quicktvui/sdk/base/component/EsComponentAttribute.java +15 -0
  240. package/rules/.source/sdk/base/sdk-base/src/main/java/com/quicktvui/sdk/base/component/IEsComponent.java +21 -0
  241. package/rules/.source/sdk/base/sdk-base/src/main/java/com/quicktvui/sdk/base/component/IEsComponentView.java +8 -0
  242. package/rules/.source/sdk/base/sdk-base/src/main/java/com/quicktvui/sdk/base/core/EsProxy.java +313 -0
  243. package/rules/.source/sdk/base/sdk-base/src/main/java/com/quicktvui/sdk/base/core/IEsProxy.java +243 -0
  244. package/rules/.source/sdk/base/sdk-base/src/main/java/com/quicktvui/sdk/base/cover/IEsCoverView.java +26 -0
  245. package/rules/.source/sdk/base/sdk-base/src/main/java/com/quicktvui/sdk/base/display/IDisplayManager.java +19 -0
  246. package/rules/.source/sdk/base/sdk-base/src/main/java/com/quicktvui/sdk/base/image/IEsImageLoader.java +17 -0
  247. package/rules/.source/sdk/base/sdk-base/src/main/java/com/quicktvui/sdk/base/model/LocalCacheInfo.java +88 -0
  248. package/rules/.source/sdk/base/sdk-base/src/main/java/com/quicktvui/sdk/base/model/ScreenInfo.java +12 -0
  249. package/rules/.source/sdk/base/sdk-base/src/main/java/com/quicktvui/sdk/base/model/ThirdEvent.java +13 -0
  250. package/rules/.source/sdk/base/sdk-base/src/main/java/com/quicktvui/sdk/base/module/IEsModule.java +15 -0
  251. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/EsAPIProvider.java +32 -0
  252. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/EsAppContext.java +13 -0
  253. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/EsData.java +597 -0
  254. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/EsKitInitCallback.java +15 -0
  255. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/EsKitInitCallbackProxy.java +41 -0
  256. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/EsKitStatus.java +14 -0
  257. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/EsManager.java +26 -0
  258. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/EsStartParam.java +17 -0
  259. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/IEsManager.java +83 -0
  260. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/InitConfig.java +287 -0
  261. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/adapter/DefaultHippyLogAdapter.java +27 -0
  262. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/adapter/DefaultRpkLoaderAdapter.java +1 -0
  263. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/adapter/EsApiAdapter.java +22 -0
  264. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/adapter/EsEngineExceptionHandlerAdapter.java +31 -0
  265. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/adapter/EsImageLoaderAdapter.java +141 -0
  266. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/adapter/EsSoLoaderAdapter.java +22 -0
  267. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/adapter/HttpsAdapter.java +1 -0
  268. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/adapter/ProxyHttpAdapter.java +36 -0
  269. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/assets/AssetBundleManager.java +347 -0
  270. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/assets/AssetData.java +39 -0
  271. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/assets/AssetLoadCallback.java +33 -0
  272. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/callback/EsAppLifeCallback.java +19 -0
  273. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/callback/EsAppLifeCallbackImpl.java +60 -0
  274. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/callback/EsAppLifeCallbackImplProxy.java +74 -0
  275. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/card/ESCardBean.java +35 -0
  276. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/card/ESCardCache.java +40 -0
  277. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/card/ESCardCallBack.java +40 -0
  278. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/card/ESCardCallBackAdapter.java +53 -0
  279. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/card/ESCardCallBackImpl.java +50 -0
  280. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/card/ESCardGroupController.java +187 -0
  281. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/card/ESCardGroupView.java +102 -0
  282. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/card/ESCardManager.java +102 -0
  283. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/card/ESCardView.java +716 -0
  284. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/card/ESCardViewComponent.java +190 -0
  285. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/card/WebFrameView.java +125 -0
  286. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/component/BaseHippyViewController.java +30 -0
  287. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/component/CommonViewController.java +290 -0
  288. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/component/EsCommonComponent.java +129 -0
  289. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/component/IOverrideMethods.java +60 -0
  290. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/db/EsDBHelper.java +119 -0
  291. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/db/Migration1_2.java +31 -0
  292. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/db/entity/RpkEntity.java +141 -0
  293. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/display/ESDisplayManager.java +41 -0
  294. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/engine/ESEvents.java +42 -0
  295. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/engine/ESInstanceContext.java +16 -0
  296. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/engine/EsEngine.java +212 -0
  297. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/engine/EsEnginePool.java +262 -0
  298. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/engine/RuntimeManager.java +94 -0
  299. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/entity/DeviceInfo.java +62 -0
  300. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/entity/InfoEntity.java +13 -0
  301. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/ext/loadproxy/IEsRpkLoadProxy.java +43 -0
  302. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/ext/log/ILogCallback.java +10 -0
  303. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/ext/log/LogAdapterFactory.java +14 -0
  304. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/ext/package.info +0 -0
  305. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/fragment/EsBaseFragment.java +11 -0
  306. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/fragment/EsFragment.java +181 -0
  307. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/fragment/EsFragmentManager.java +227 -0
  308. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/fragment/EsPageFragment.java +75 -0
  309. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/fragment/IEsFragmentMgr.java +41 -0
  310. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/interceptor/EsDefaultInterceptor.java +8 -0
  311. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/interceptor/IEsInterceptor.java +41 -0
  312. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/interceptor/LaunchEsPageInterceptor.java +15 -0
  313. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/internal/AbsEsImageLoader.java +9 -0
  314. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/internal/ApiProviderProxy.java +32 -0
  315. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/internal/BaseHandlerThread.java +76 -0
  316. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/internal/Constants.java +394 -0
  317. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/internal/EsAppLoadHandlerImpl.java +221 -0
  318. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/internal/EsAppLoadHandlerImplV2.java +326 -0
  319. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/internal/EsComponentManager.java +347 -0
  320. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/internal/EsConfigManager.java +81 -0
  321. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/internal/EsContainerTaskV2.java +714 -0
  322. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/internal/EsContentProvider.java +166 -0
  323. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/internal/EsContext.java +354 -0
  324. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/internal/EsContextFinder.java +61 -0
  325. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/internal/EsDiskCacheManager.java +266 -0
  326. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/internal/EsManagerInner.java +463 -0
  327. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/internal/EsPromiseProxy.java +49 -0
  328. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/internal/EsProxyImpl.java +474 -0
  329. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/internal/EsViewManager.java +838 -0
  330. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/internal/EsViewRecord.java +63 -0
  331. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/internal/IEsAppLoadCallback.java +38 -0
  332. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/internal/IEsAppLoadHandler.java +36 -0
  333. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/internal/IEsViewer.java +32 -0
  334. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/internal/SampleAnimatorListener.java +28 -0
  335. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/internal/loader/AbstractLoader.java +135 -0
  336. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/internal/loader/ApiRpkLoader.java +1 -0
  337. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/internal/loader/AssetsRpkLoader.java +79 -0
  338. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/internal/loader/DebugRpkLoader.java +43 -0
  339. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/internal/loader/FileRpkLoader.java +63 -0
  340. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/internal/loader/HttpRpkLoader.java +61 -0
  341. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/internal/loader/IRpkLoader.java +65 -0
  342. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/internal/loader/NexusRpkLoader.java +175 -0
  343. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/internal/loader/RecordInfo.java +37 -0
  344. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/internal/loader/RpkInfo.java +136 -0
  345. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/internal/loader/RpkLoaderFactory.java +60 -0
  346. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/internal/loader/RpkVersion.java +54 -0
  347. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/internal/loader/TaskEntity.java +57 -0
  348. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/jsview/JsSlotView.java +353 -0
  349. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/jsview/JsSlotViewManager.java +363 -0
  350. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/jsview/RecyclerViewHandlerImpl.java +60 -0
  351. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/jsview/SlotModule.java +1 -0
  352. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/jsview/chutil/GenericMotionUtil.java +26 -0
  353. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/jsview/chutil/MouseUtil.java +107 -0
  354. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/jsview/slot/SlotRootView.java +39 -0
  355. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/jsview/slot/SlotRootViewController.java +50 -0
  356. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/jsview/slot/SlotView.java +89 -0
  357. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/jsview/slot/SlotViewController.java +84 -0
  358. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/mdns/NsdRegisterHelper.java +56 -0
  359. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/mediasession/BaseMediaSessionPlayerService.java +104 -0
  360. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/mediasession/EsMediaController.java +111 -0
  361. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/mediasession/EsMediaPlayerService.java +39 -0
  362. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/mediasession/callback/EsCommonMediaSessionCallback.java +374 -0
  363. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/mediasession/manager/IServiceManager.java +16 -0
  364. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/mediasession/manager/ServiceManagerFactory.java +21 -0
  365. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/mediasession/manager/impl/MCommonServiceImpl.java +95 -0
  366. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/mediasession/module/EsMediaSessionModule.java +61 -0
  367. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/module/AppUsageModule.java +170 -0
  368. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/module/CommonModule.java +27 -0
  369. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/module/CommonModuleInfo.java +96 -0
  370. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/module/EsNativeModule.java +878 -0
  371. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/pm/EsPageController.java +49 -0
  372. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/pm/EsPageView.java +202 -0
  373. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/pm/EsRouterController.java +63 -0
  374. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/pm/EsRouterView.java +113 -0
  375. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/pm/IEsPageView.java +20 -0
  376. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/pm/InnerProvider.java +37 -0
  377. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/pm/PageModule.java +37 -0
  378. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/protocol/EsProtocolDispatcher.java +114 -0
  379. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/protocol/EsStartTarget.java +37 -0
  380. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/protocol/Protocol_1.java +78 -0
  381. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/protocol/Protocol_2.java +345 -0
  382. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/sf/UsageManager.java +98 -0
  383. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/sf/db/UsageDbHelper.java +97 -0
  384. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/sf/db/dao/UsageRecordDao.java +34 -0
  385. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/sf/db/entity/UsageRecord.java +96 -0
  386. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/sf/strategy/DefaultStrategyImpl.java +100 -0
  387. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/sf/strategy/IUsageStrategy.java +23 -0
  388. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/tookit/DefaultWindowManager.java +46 -0
  389. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/tookit/ESToolkitManager.java +182 -0
  390. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/tookit/IESToolkit.java +22 -0
  391. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/tookit/ToolkitUseCase.java +22 -0
  392. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/udp/AbstractUdpServer.java +102 -0
  393. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/udp/EsUdpServer.java +177 -0
  394. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/udp/UdpServerConfig.java +28 -0
  395. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/ui/BrowserBaseActivity.java +224 -0
  396. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/ui/BrowserBaseFullActivity.java +118 -0
  397. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/ui/BrowserProxyActivity.java +122 -0
  398. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/ui/BrowserStandardActivity.java +14 -0
  399. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/ui/BrowserStandardNoThemeActivity.java +14 -0
  400. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/ui/BrowserStandardTransparentActivity.java +14 -0
  401. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/ui/IHippyManager.java +36 -0
  402. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/ui/normal/single/instance/BrowserSingleInstanceActivity0.java +9 -0
  403. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/ui/normal/single/instance/BrowserSingleInstanceActivity1.java +9 -0
  404. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/ui/normal/single/instance/BrowserSingleInstanceActivity2.java +9 -0
  405. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/ui/normal/single/instance/BrowserSingleInstanceActivity3.java +9 -0
  406. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/ui/normal/single/instance/BrowserSingleInstanceActivity4.java +9 -0
  407. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/ui/normal/single/task/BrowserSingleTaskActivity0.java +9 -0
  408. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/ui/normal/single/task/BrowserSingleTaskActivity1.java +9 -0
  409. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/ui/normal/single/task/BrowserSingleTaskActivity2.java +9 -0
  410. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/ui/normal/single/task/BrowserSingleTaskActivity3.java +9 -0
  411. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/ui/normal/single/task/BrowserSingleTaskActivity4.java +9 -0
  412. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/ui/normal/single/top/BrowserSingleTopActivity0.java +9 -0
  413. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/ui/normal/single/top/BrowserSingleTopActivity1.java +9 -0
  414. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/ui/normal/single/top/BrowserSingleTopActivity2.java +9 -0
  415. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/ui/normal/single/top/BrowserSingleTopActivity3.java +9 -0
  416. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/ui/normal/single/top/BrowserSingleTopActivity4.java +9 -0
  417. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/ui/notheme/single/instance/BrowserSingleInstanceActivity0.java +9 -0
  418. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/ui/notheme/single/instance/BrowserSingleInstanceActivity1.java +9 -0
  419. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/ui/notheme/single/instance/BrowserSingleInstanceActivity2.java +9 -0
  420. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/ui/notheme/single/instance/BrowserSingleInstanceActivity3.java +9 -0
  421. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/ui/notheme/single/instance/BrowserSingleInstanceActivity4.java +9 -0
  422. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/ui/notheme/single/task/BrowserSingleTaskActivity0.java +9 -0
  423. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/ui/notheme/single/task/BrowserSingleTaskActivity1.java +9 -0
  424. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/ui/notheme/single/task/BrowserSingleTaskActivity2.java +9 -0
  425. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/ui/notheme/single/task/BrowserSingleTaskActivity3.java +9 -0
  426. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/ui/notheme/single/task/BrowserSingleTaskActivity4.java +9 -0
  427. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/ui/notheme/single/top/BrowserSingleTopActivity0.java +9 -0
  428. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/ui/notheme/single/top/BrowserSingleTopActivity1.java +9 -0
  429. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/ui/notheme/single/top/BrowserSingleTopActivity2.java +9 -0
  430. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/ui/notheme/single/top/BrowserSingleTopActivity3.java +9 -0
  431. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/ui/notheme/single/top/BrowserSingleTopActivity4.java +9 -0
  432. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/ui/pg/BasePageLoader.java +20 -0
  433. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/ui/pg/FragmentPageLoader.java +273 -0
  434. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/ui/pg/IPageLoader.java +44 -0
  435. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/ui/pg/RootFragmentView.java +499 -0
  436. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/ui/pg/SubFragmentView.java +85 -0
  437. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/ui/result/PermissionActivityResultHandler.java +132 -0
  438. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/ui/wm/AbstractWindowManager.java +120 -0
  439. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/utils/Am.java +397 -0
  440. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/utils/AutoUtils.java +1 -0
  441. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/utils/CommonUtils.java +150 -0
  442. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/utils/CpuAbiUtils.java +280 -0
  443. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/utils/CrashHandler.java +40 -0
  444. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/utils/DebugLog.java +28 -0
  445. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/utils/DefaultLifecycleObserver.java +35 -0
  446. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/utils/DexUtil.java +75 -0
  447. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/utils/ESExecutors.java +73 -0
  448. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/utils/EsDataFactory.java +76 -0
  449. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/utils/EsDecode.java +37 -0
  450. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/utils/EsIntent.java +40 -0
  451. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/utils/EsNativeEvent.java +63 -0
  452. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/utils/EskitLazyInitHelper.java +20 -0
  453. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/utils/FullScreenUtils.java +73 -0
  454. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/utils/HomeKeyReceiver.java +52 -0
  455. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/utils/HttpRequestUtils.java +30 -0
  456. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/utils/KeyEventUtil.java +71 -0
  457. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/utils/MapperUtils.java +491 -0
  458. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/utils/NetworkSpeedMonitor.java +68 -0
  459. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/utils/NexusRepo.java +70 -0
  460. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/utils/ObjectUtils.java +49 -0
  461. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/utils/ParameterizedTypeImpl.java +23 -0
  462. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/utils/PathHelper.java +23 -0
  463. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/utils/PermissionRequestHelper.java +81 -0
  464. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/utils/PluginUtils.java +71 -0
  465. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/utils/ReflectExecutor.java +77 -0
  466. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/utils/SlotUtils.java +97 -0
  467. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/utils/SpUtils.java +184 -0
  468. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/utils/TaskProgressManager.java +104 -0
  469. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/utils/TimeCheckUtil.java +45 -0
  470. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/utils/UcDeviceUtils.java +95 -0
  471. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/utils/UploadLogKeyDispatcher.java +33 -0
  472. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/views/DebugFocusHelper.java +90 -0
  473. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/views/DebugFocusRoot.java +195 -0
  474. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/views/DebugFocusView.java +65 -0
  475. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/views/EsDefaultCoverView.java +726 -0
  476. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/views/EsGrayFrameLayout.java +65 -0
  477. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/views/EsProgressLoadingView.java +103 -0
  478. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/views/LoadingDrawable.java +1 -0
  479. package/rules/.source/sdk/core/sdk-core/src/main/java/com/quicktvui/sdk/core/views/MyButton.java +55 -0
  480. package/rules/.source/sdk/plugin/compiler/src/main/java/com/quicktvui/sdk/compiler/AnnotationProcessor.java +46 -0
  481. package/rules/.source/sdk/plugin/compiler/src/main/java/com/quicktvui/sdk/compiler/processor/AbstractProcessor.java +1 -0
  482. package/rules/.source/sdk/plugin/compiler/src/main/java/com/quicktvui/sdk/compiler/processor/ESKitAutoInitProcessor.java +1 -0
  483. package/rules/.source/sdk/plugin/compiler/src/main/java/com/quicktvui/sdk/compiler/processor/ESKitAutoRegisterProcessor.java +217 -0
  484. package/rules/.source/sdk/plugin/compiler/src/main/java/com/quicktvui/sdk/compiler/processor/IProcessor.java +12 -0
  485. package/rules/.source/sdk/plugin/compiler/src/main/java/com/quicktvui/sdk/compiler/utils/Utils.java +78 -0
  486. package/rules/.source/sdk/support/audio-record/src/main/java/com/quicktvui/support/media/audio/mp3/AndroidMP3Encoder.java +19 -0
  487. package/rules/.source/sdk/support/audio-record/src/main/java/com/quicktvui/support/media/audio/mp3/AudioRecorderHandler.java +128 -0
  488. package/rules/.source/sdk/support/audio-record/src/main/java/com/quicktvui/support/media/audio/mp3/AudioRecorderMp3.java +267 -0
  489. package/rules/.source/sdk/support/audio-record/src/main/java/com/quicktvui/support/media/audio/mp3/AudioRecorderMp3Manager.java +140 -0
  490. package/rules/.source/sdk/support/audio-record/src/main/java/com/quicktvui/support/media/audio/mp3/EncodeBuffer.java +27 -0
  491. package/rules/.source/sdk/support/audio-record/src/main/java/com/quicktvui/support/record/ESAudioRecordModule.java +231 -0
  492. package/rules/.source/sdk/support/audio-record/src/main/java/com/quicktvui/support/record/assist/QueueProcessingType.java +8 -0
  493. package/rules/.source/sdk/support/audio-record/src/main/java/com/quicktvui/support/record/assist/deque/BlockingDeque.java +617 -0
  494. package/rules/.source/sdk/support/audio-record/src/main/java/com/quicktvui/support/record/assist/deque/Deque.java +550 -0
  495. package/rules/.source/sdk/support/audio-record/src/main/java/com/quicktvui/support/record/assist/deque/LIFOLinkedBlockingDeque.java +42 -0
  496. package/rules/.source/sdk/support/audio-record/src/main/java/com/quicktvui/support/record/assist/deque/LinkedBlockingDeque.java +1190 -0
  497. package/rules/.source/sdk/support/audio-record/src/main/java/com/quicktvui/support/record/core/AudioRecordConfiguration.java +168 -0
  498. package/rules/.source/sdk/support/audio-record/src/main/java/com/quicktvui/support/record/core/AudioRecorderListener.java +11 -0
  499. package/rules/.source/sdk/support/audio-record/src/main/java/com/quicktvui/support/record/core/AudioRecorderStatus.java +49 -0
  500. package/rules/.source/sdk/support/audio-record/src/main/java/com/quicktvui/support/record/core/AudioRecorderStatusEnum.java +14 -0
  501. package/rules/.source/sdk/support/audio-record/src/main/java/com/quicktvui/support/record/core/AudioRecorderType.java +35 -0
  502. package/rules/.source/sdk/support/audio-record/src/main/java/com/quicktvui/support/record/core/BaseAudioRecorderManager.java +90 -0
  503. package/rules/.source/sdk/support/audio-record/src/main/java/com/quicktvui/support/record/core/DefaultConfigurationFactory.java +80 -0
  504. package/rules/.source/sdk/support/audio-record/src/main/java/com/quicktvui/support/record/core/IAudioRecorder.java +23 -0
  505. package/rules/.source/sdk/support/audio-record/src/main/java/com/quicktvui/support/record/core/naming/FileNameGenerator.java +9 -0
  506. package/rules/.source/sdk/support/audio-record/src/main/java/com/quicktvui/support/record/core/naming/HashCodeFileNameGenerator.java +11 -0
  507. package/rules/.source/sdk/support/audio-record/src/main/java/com/quicktvui/support/record/core/naming/Md5FileNameGenerator.java +32 -0
  508. package/rules/.source/sdk/support/audio-record/src/main/java/com/quicktvui/support/record/core/naming/NoOpFileNameGenerator.java +14 -0
  509. package/rules/.source/sdk/support/audio-record/src/main/java/com/quicktvui/support/record/pcm/PCMFormat.java +32 -0
  510. package/rules/.source/sdk/support/audio-record/src/main/java/com/quicktvui/support/record/utils/Preconditions.java +442 -0
  511. package/rules/.source/sdk/support/audio-record/src/main/java/com/quicktvui/support/record/utils/StorageUtils.java +162 -0
  512. package/rules/.source/sdk/support/audio-record/src/main/java/com/quicktvui/support/record/wav/AudioRecordListener.java +11 -0
  513. package/rules/.source/sdk/support/audio-record/src/main/java/com/quicktvui/support/record/wav/AudioRecordStreamListener.java +5 -0
  514. package/rules/.source/sdk/support/audio-record/src/main/java/com/quicktvui/support/record/wav/AudioRecorder.java +360 -0
  515. package/rules/.source/sdk/support/audio-record/src/main/java/com/quicktvui/support/record/wav/FileUtil.java +122 -0
  516. package/rules/.source/sdk/support/audio-record/src/main/java/com/quicktvui/support/record/wav/PCMToWAVTask.java +63 -0
  517. package/rules/.source/sdk/support/audio-record/src/main/java/com/quicktvui/support/record/wav/PcmToWav.java +193 -0
  518. package/rules/.source/sdk/support/audio-record/src/main/java/com/quicktvui/support/record/wav/RecordTask.java +103 -0
  519. package/rules/.source/sdk/support/audio-record/src/main/java/com/quicktvui/support/record/wav/WaveHeader.java +66 -0
  520. package/rules/.source/sdk/support/audio-record/src/main/java/cpp/AndroidMP3Encoder.cpp +57 -0
  521. package/rules/.source/sdk/support/audio-record/src/main/java/cpp/AndroidMP3Encoder.h +20 -0
  522. package/rules/.source/sdk/support/audio-record/src/main/java/cpp/CMakeLists.txt +18 -0
  523. package/rules/.source/sdk/support/audio-record/src/main/java/cpp/lame-3.100.tar.gz +0 -0
  524. package/rules/.source/sdk/support/audio-record/src/main/java/cpp/lamemp3/VbrTag.c +1050 -0
  525. package/rules/.source/sdk/support/audio-record/src/main/java/cpp/lamemp3/VbrTag.h +82 -0
  526. package/rules/.source/sdk/support/audio-record/src/main/java/cpp/lamemp3/bitstream.c +1073 -0
  527. package/rules/.source/sdk/support/audio-record/src/main/java/cpp/lamemp3/bitstream.h +44 -0
  528. package/rules/.source/sdk/support/audio-record/src/main/java/cpp/lamemp3/encoder.c +555 -0
  529. package/rules/.source/sdk/support/audio-record/src/main/java/cpp/lamemp3/encoder.h +153 -0
  530. package/rules/.source/sdk/support/audio-record/src/main/java/cpp/lamemp3/fft.c +331 -0
  531. package/rules/.source/sdk/support/audio-record/src/main/java/cpp/lamemp3/fft.h +35 -0
  532. package/rules/.source/sdk/support/audio-record/src/main/java/cpp/lamemp3/gain_analysis.c +468 -0
  533. package/rules/.source/sdk/support/audio-record/src/main/java/cpp/lamemp3/gain_analysis.h +113 -0
  534. package/rules/.source/sdk/support/audio-record/src/main/java/cpp/lamemp3/id3tag.c +1839 -0
  535. package/rules/.source/sdk/support/audio-record/src/main/java/cpp/lamemp3/id3tag.h +65 -0
  536. package/rules/.source/sdk/support/audio-record/src/main/java/cpp/lamemp3/l3side.h +95 -0
  537. package/rules/.source/sdk/support/audio-record/src/main/java/cpp/lamemp3/lame-analysis.h +95 -0
  538. package/rules/.source/sdk/support/audio-record/src/main/java/cpp/lamemp3/lame.c +2602 -0
  539. package/rules/.source/sdk/support/audio-record/src/main/java/cpp/lamemp3/lame.h +1400 -0
  540. package/rules/.source/sdk/support/audio-record/src/main/java/cpp/lamemp3/lame_global_flags.h +186 -0
  541. package/rules/.source/sdk/support/audio-record/src/main/java/cpp/lamemp3/lameerror.h +26 -0
  542. package/rules/.source/sdk/support/audio-record/src/main/java/cpp/lamemp3/machine.h +196 -0
  543. package/rules/.source/sdk/support/audio-record/src/main/java/cpp/lamemp3/mpglib_interface.c +477 -0
  544. package/rules/.source/sdk/support/audio-record/src/main/java/cpp/lamemp3/newmdct.c +1073 -0
  545. package/rules/.source/sdk/support/audio-record/src/main/java/cpp/lamemp3/newmdct.h +27 -0
  546. package/rules/.source/sdk/support/audio-record/src/main/java/cpp/lamemp3/presets.c +390 -0
  547. package/rules/.source/sdk/support/audio-record/src/main/java/cpp/lamemp3/psymodel.c +2111 -0
  548. package/rules/.source/sdk/support/audio-record/src/main/java/cpp/lamemp3/psymodel.h +64 -0
  549. package/rules/.source/sdk/support/audio-record/src/main/java/cpp/lamemp3/quantize.c +1974 -0
  550. package/rules/.source/sdk/support/audio-record/src/main/java/cpp/lamemp3/quantize.h +38 -0
  551. package/rules/.source/sdk/support/audio-record/src/main/java/cpp/lamemp3/quantize_pvt.c +1047 -0
  552. package/rules/.source/sdk/support/audio-record/src/main/java/cpp/lamemp3/quantize_pvt.h +127 -0
  553. package/rules/.source/sdk/support/audio-record/src/main/java/cpp/lamemp3/reservoir.c +289 -0
  554. package/rules/.source/sdk/support/audio-record/src/main/java/cpp/lamemp3/reservoir.h +34 -0
  555. package/rules/.source/sdk/support/audio-record/src/main/java/cpp/lamemp3/set_get.c +2181 -0
  556. package/rules/.source/sdk/support/audio-record/src/main/java/cpp/lamemp3/set_get.h +119 -0
  557. package/rules/.source/sdk/support/audio-record/src/main/java/cpp/lamemp3/tables.c +558 -0
  558. package/rules/.source/sdk/support/audio-record/src/main/java/cpp/lamemp3/tables.h +95 -0
  559. package/rules/.source/sdk/support/audio-record/src/main/java/cpp/lamemp3/takehiro.c +1322 -0
  560. package/rules/.source/sdk/support/audio-record/src/main/java/cpp/lamemp3/util.c +968 -0
  561. package/rules/.source/sdk/support/audio-record/src/main/java/cpp/lamemp3/util.h +635 -0
  562. package/rules/.source/sdk/support/audio-record/src/main/java/cpp/lamemp3/vbrquantize.c +1525 -0
  563. package/rules/.source/sdk/support/audio-record/src/main/java/cpp/lamemp3/vbrquantize.h +28 -0
  564. package/rules/.source/sdk/support/audio-record/src/main/java/cpp/lamemp3/version.c +245 -0
  565. package/rules/.source/sdk/support/audio-record/src/main/java/cpp/lamemp3/version.h +68 -0
  566. package/rules/.source/sdk/support/brightness/src/main/java/com/quicktvui/support/brightness/ESBrightnessModule.java +133 -0
  567. package/rules/.source/sdk/support/canvas/src/main/java/com/quicktvui/support/canvas/Action.java +18 -0
  568. package/rules/.source/sdk/support/canvas/src/main/java/com/quicktvui/support/canvas/CanvasActionHandler.java +285 -0
  569. package/rules/.source/sdk/support/canvas/src/main/java/com/quicktvui/support/canvas/CanvasContext.java +184 -0
  570. package/rules/.source/sdk/support/canvas/src/main/java/com/quicktvui/support/canvas/CanvasImageLoadRenderAction.java +53 -0
  571. package/rules/.source/sdk/support/canvas/src/main/java/com/quicktvui/support/canvas/CanvasManager.java +468 -0
  572. package/rules/.source/sdk/support/canvas/src/main/java/com/quicktvui/support/canvas/CanvasNode.java +28 -0
  573. package/rules/.source/sdk/support/canvas/src/main/java/com/quicktvui/support/canvas/CanvasRenderAction.java +39 -0
  574. package/rules/.source/sdk/support/canvas/src/main/java/com/quicktvui/support/canvas/CanvasRenderActionProcessor.java +62 -0
  575. package/rules/.source/sdk/support/canvas/src/main/java/com/quicktvui/support/canvas/CanvasSyncRenderAction.java +23 -0
  576. package/rules/.source/sdk/support/canvas/src/main/java/com/quicktvui/support/canvas/CanvasView.java +19 -0
  577. package/rules/.source/sdk/support/canvas/src/main/java/com/quicktvui/support/canvas/CanvasViewContainer.java +49 -0
  578. package/rules/.source/sdk/support/canvas/src/main/java/com/quicktvui/support/canvas/CanvasWaitChannel.java +59 -0
  579. package/rules/.source/sdk/support/canvas/src/main/java/com/quicktvui/support/canvas/Constants.java +9 -0
  580. package/rules/.source/sdk/support/canvas/src/main/java/com/quicktvui/support/canvas/ESCanvasController.java +370 -0
  581. package/rules/.source/sdk/support/canvas/src/main/java/com/quicktvui/support/canvas/annotation/CanvasField.java +16 -0
  582. package/rules/.source/sdk/support/canvas/src/main/java/com/quicktvui/support/canvas/annotation/CanvasMethod.java +16 -0
  583. package/rules/.source/sdk/support/canvas/src/main/java/com/quicktvui/support/canvas/annotation/Extension.java +59 -0
  584. package/rules/.source/sdk/support/canvas/src/main/java/com/quicktvui/support/canvas/bridge/ActivityStateListener.java +21 -0
  585. package/rules/.source/sdk/support/canvas/src/main/java/com/quicktvui/support/canvas/bridge/ApplicationContext.java +118 -0
  586. package/rules/.source/sdk/support/canvas/src/main/java/com/quicktvui/support/canvas/bridge/Callback.java +37 -0
  587. package/rules/.source/sdk/support/canvas/src/main/java/com/quicktvui/support/canvas/bridge/IPage.java +13 -0
  588. package/rules/.source/sdk/support/canvas/src/main/java/com/quicktvui/support/canvas/bridge/RenderEventCallback.java +76 -0
  589. package/rules/.source/sdk/support/canvas/src/main/java/com/quicktvui/support/canvas/bridge/Response.java +191 -0
  590. package/rules/.source/sdk/support/canvas/src/main/java/com/quicktvui/support/canvas/bridge/SimpleActivityStateListener.java +32 -0
  591. package/rules/.source/sdk/support/canvas/src/main/java/com/quicktvui/support/canvas/canvas2d/CSSFont.java +246 -0
  592. package/rules/.source/sdk/support/canvas/src/main/java/com/quicktvui/support/canvas/canvas2d/CanvasContextRendering2D.java +1462 -0
  593. package/rules/.source/sdk/support/canvas/src/main/java/com/quicktvui/support/canvas/canvas2d/CanvasContextState.java +243 -0
  594. package/rules/.source/sdk/support/canvas/src/main/java/com/quicktvui/support/canvas/canvas2d/CanvasGradient.java +101 -0
  595. package/rules/.source/sdk/support/canvas/src/main/java/com/quicktvui/support/canvas/canvas2d/CanvasPath.java +196 -0
  596. package/rules/.source/sdk/support/canvas/src/main/java/com/quicktvui/support/canvas/canvas2d/CanvasView2D.java +186 -0
  597. package/rules/.source/sdk/support/canvas/src/main/java/com/quicktvui/support/canvas/canvas2d/Circle.java +65 -0
  598. package/rules/.source/sdk/support/canvas/src/main/java/com/quicktvui/support/canvas/canvas2d/LinearGradient.java +40 -0
  599. package/rules/.source/sdk/support/canvas/src/main/java/com/quicktvui/support/canvas/canvas2d/Parser.java +1564 -0
  600. package/rules/.source/sdk/support/canvas/src/main/java/com/quicktvui/support/canvas/canvas2d/RadialGradient.java +167 -0
  601. package/rules/.source/sdk/support/canvas/src/main/java/com/quicktvui/support/canvas/constants/Attributes.java +682 -0
  602. package/rules/.source/sdk/support/canvas/src/main/java/com/quicktvui/support/canvas/executors/ConcurrentExecutor.java +59 -0
  603. package/rules/.source/sdk/support/canvas/src/main/java/com/quicktvui/support/canvas/executors/DelayedExecutor.java +10 -0
  604. package/rules/.source/sdk/support/canvas/src/main/java/com/quicktvui/support/canvas/executors/Executor.java +14 -0
  605. package/rules/.source/sdk/support/canvas/src/main/java/com/quicktvui/support/canvas/executors/Executors.java +99 -0
  606. package/rules/.source/sdk/support/canvas/src/main/java/com/quicktvui/support/canvas/executors/Future.java +17 -0
  607. package/rules/.source/sdk/support/canvas/src/main/java/com/quicktvui/support/canvas/executors/FutureImpl.java +32 -0
  608. package/rules/.source/sdk/support/canvas/src/main/java/com/quicktvui/support/canvas/executors/ScheduledExecutor.java +15 -0
  609. package/rules/.source/sdk/support/canvas/src/main/java/com/quicktvui/support/canvas/executors/ScheduledExecutorImpl.java +49 -0
  610. package/rules/.source/sdk/support/canvas/src/main/java/com/quicktvui/support/canvas/executors/UiExecutor.java +102 -0
  611. package/rules/.source/sdk/support/canvas/src/main/java/com/quicktvui/support/canvas/image/CanvasBitmap.java +123 -0
  612. package/rules/.source/sdk/support/canvas/src/main/java/com/quicktvui/support/canvas/image/CanvasImage.java +109 -0
  613. package/rules/.source/sdk/support/canvas/src/main/java/com/quicktvui/support/canvas/image/CanvasImageCache.java +119 -0
  614. package/rules/.source/sdk/support/canvas/src/main/java/com/quicktvui/support/canvas/image/CanvasImageHelper.java +665 -0
  615. package/rules/.source/sdk/support/canvas/src/main/java/com/quicktvui/support/canvas/image/CanvasImageLoader.java +132 -0
  616. package/rules/.source/sdk/support/canvas/src/main/java/com/quicktvui/support/canvas/image/ImageData.java +12 -0
  617. package/rules/.source/sdk/support/canvas/src/main/java/com/quicktvui/support/canvas/render/DocAnimator.java +166 -0
  618. package/rules/.source/sdk/support/canvas/src/main/java/com/quicktvui/support/canvas/runtime/HapEngine.java +101 -0
  619. package/rules/.source/sdk/support/canvas/src/main/java/com/quicktvui/support/canvas/utils/BitmapUtils.java +242 -0
  620. package/rules/.source/sdk/support/canvas/src/main/java/com/quicktvui/support/canvas/utils/CardThemeUtils.java +79 -0
  621. package/rules/.source/sdk/support/canvas/src/main/java/com/quicktvui/support/canvas/utils/ColorUtil.java +542 -0
  622. package/rules/.source/sdk/support/canvas/src/main/java/com/quicktvui/support/canvas/utils/DigestUtils.java +27 -0
  623. package/rules/.source/sdk/support/canvas/src/main/java/com/quicktvui/support/canvas/utils/DisplayUtil.java +157 -0
  624. package/rules/.source/sdk/support/canvas/src/main/java/com/quicktvui/support/canvas/utils/FloatUtil.java +54 -0
  625. package/rules/.source/sdk/support/canvas/src/main/java/com/quicktvui/support/canvas/utils/IntegerUtil.java +23 -0
  626. package/rules/.source/sdk/support/canvas/src/main/java/com/quicktvui/support/canvas/utils/StringUtils.java +21 -0
  627. package/rules/.source/sdk/support/canvas/src/main/java/com/quicktvui/support/canvas/utils/ThreadUtils.java +47 -0
  628. package/rules/.source/sdk/support/chart/src/main/java/com/quicktvui/support/chart/BarChartView.java +170 -0
  629. package/rules/.source/sdk/support/chart/src/main/java/com/quicktvui/support/chart/ESBarChartViewComponent.java +162 -0
  630. package/rules/.source/sdk/support/chart/src/main/java/com/quicktvui/support/chart/ESLineChartViewComponent.java +209 -0
  631. package/rules/.source/sdk/support/chart/src/main/java/com/quicktvui/support/chart/LineChartView.java +160 -0
  632. package/rules/.source/sdk/support/chart/src/main/java/com/quicktvui/support/chart/chart/BarChart.java +470 -0
  633. package/rules/.source/sdk/support/chart/src/main/java/com/quicktvui/support/chart/chart/BaseBarChart.java +382 -0
  634. package/rules/.source/sdk/support/chart/src/main/java/com/quicktvui/support/chart/chart/BaseLineChart.java +156 -0
  635. package/rules/.source/sdk/support/chart/src/main/java/com/quicktvui/support/chart/chart/LinesChart.java +465 -0
  636. package/rules/.source/sdk/support/chart/src/main/java/com/quicktvui/support/chart/chart/anim/AngleEvaluator.java +22 -0
  637. package/rules/.source/sdk/support/chart/src/main/java/com/quicktvui/support/chart/chart/bean/BarBean.java +26 -0
  638. package/rules/.source/sdk/support/chart/src/main/java/com/quicktvui/support/chart/chart/bean/DataPoint.java +49 -0
  639. package/rules/.source/sdk/support/chart/src/main/java/com/quicktvui/support/chart/chart/bean/FocusInfo.java +35 -0
  640. package/rules/.source/sdk/support/chart/src/main/java/com/quicktvui/support/chart/chart/utils/DensityUtil.java +60 -0
  641. package/rules/.source/sdk/support/chart/src/main/java/com/quicktvui/support/chart/chart/utils/FontUtil.java +40 -0
  642. package/rules/.source/sdk/support/chart/src/main/java/com/quicktvui/support/chart/chart/utils/LogUtil.java +85 -0
  643. package/rules/.source/sdk/support/chart/src/main/java/com/quicktvui/support/chart/chart/utils/NumberFormatUtil.java +60 -0
  644. package/rules/.source/sdk/support/core/src/main/java/com/quicktvui/support/core/AutoInit.java +1 -0
  645. package/rules/.source/sdk/support/core/src/main/java/com/quicktvui/support/core/component/animation/AnimationValueType.java +7 -0
  646. package/rules/.source/sdk/support/core/src/main/java/com/quicktvui/support/core/component/animation/AnimationView.java +1322 -0
  647. package/rules/.source/sdk/support/core/src/main/java/com/quicktvui/support/core/component/animation/AnimationViewComponent.java +1000 -0
  648. package/rules/.source/sdk/support/core/src/main/java/com/quicktvui/support/core/component/es/ESView.java +30 -0
  649. package/rules/.source/sdk/support/core/src/main/java/com/quicktvui/support/core/component/es/ESViewComponent.java +49 -0
  650. package/rules/.source/sdk/support/core/src/main/java/com/quicktvui/support/core/component/image/TransitionImageComponent.java +95 -0
  651. package/rules/.source/sdk/support/core/src/main/java/com/quicktvui/support/core/component/image/TransitionImageView.java +261 -0
  652. package/rules/.source/sdk/support/core/src/main/java/com/quicktvui/support/core/component/loading/LoadingDrawable.java +253 -0
  653. package/rules/.source/sdk/support/core/src/main/java/com/quicktvui/support/core/component/loading/LoadingView.java +13 -0
  654. package/rules/.source/sdk/support/core/src/main/java/com/quicktvui/support/core/component/loading/LoadingViewComponent.java +58 -0
  655. package/rules/.source/sdk/support/core/src/main/java/com/quicktvui/support/core/component/progress/ESProgressWheelComponent.java +422 -0
  656. package/rules/.source/sdk/support/core/src/main/java/com/quicktvui/support/core/component/progress/ProgressWheel.java +625 -0
  657. package/rules/.source/sdk/support/core/src/main/java/com/quicktvui/support/core/component/progressbar/ESProgressBarViewComponent.java +254 -0
  658. package/rules/.source/sdk/support/core/src/main/java/com/quicktvui/support/core/component/progressbar/TVProgressBarView.java +12 -0
  659. package/rules/.source/sdk/support/core/src/main/java/com/quicktvui/support/core/component/progressbar/TVProgressBarViewComponent.java +206 -0
  660. package/rules/.source/sdk/support/core/src/main/java/com/quicktvui/support/core/component/qr/QrCodeComponent.java +186 -0
  661. package/rules/.source/sdk/support/core/src/main/java/com/quicktvui/support/core/component/qr/QrCodeFactory.java +180 -0
  662. package/rules/.source/sdk/support/core/src/main/java/com/quicktvui/support/core/component/rangeseekbar/ESHorizontalSeekBarViewComponent.java +1424 -0
  663. package/rules/.source/sdk/support/core/src/main/java/com/quicktvui/support/core/component/rangeseekbar/ESVerticalSeekBarViewComponent.java +122 -0
  664. package/rules/.source/sdk/support/core/src/main/java/com/quicktvui/support/core/component/rangeseekbar/OnRangeChangedListener.java +9 -0
  665. package/rules/.source/sdk/support/core/src/main/java/com/quicktvui/support/core/component/rangeseekbar/OnRangeFocusListener.java +6 -0
  666. package/rules/.source/sdk/support/core/src/main/java/com/quicktvui/support/core/component/rangeseekbar/RangeSeekBar.java +1462 -0
  667. package/rules/.source/sdk/support/core/src/main/java/com/quicktvui/support/core/component/rangeseekbar/SavedState.java +49 -0
  668. package/rules/.source/sdk/support/core/src/main/java/com/quicktvui/support/core/component/rangeseekbar/SeekBar.java +833 -0
  669. package/rules/.source/sdk/support/core/src/main/java/com/quicktvui/support/core/component/rangeseekbar/SeekBarState.java +13 -0
  670. package/rules/.source/sdk/support/core/src/main/java/com/quicktvui/support/core/component/rangeseekbar/Utils.java +182 -0
  671. package/rules/.source/sdk/support/core/src/main/java/com/quicktvui/support/core/component/rangeseekbar/VerticalRangeSeekBar.java +267 -0
  672. package/rules/.source/sdk/support/core/src/main/java/com/quicktvui/support/core/component/rangeseekbar/VerticalSeekBar.java +139 -0
  673. package/rules/.source/sdk/support/core/src/main/java/com/quicktvui/support/core/component/seekbar/ESSeekBarViewComponent.java +374 -0
  674. package/rules/.source/sdk/support/core/src/main/java/com/quicktvui/support/core/component/seekbar/TVSeekBarView.java +49 -0
  675. package/rules/.source/sdk/support/core/src/main/java/com/quicktvui/support/core/component/seekbar/TVSeekBarViewComponent.java +229 -0
  676. package/rules/.source/sdk/support/core/src/main/java/com/quicktvui/support/core/component/surfaceview/ESSurfaceView.java +13 -0
  677. package/rules/.source/sdk/support/core/src/main/java/com/quicktvui/support/core/component/surfaceview/ESSurfaceViewComponent.java +31 -0
  678. package/rules/.source/sdk/support/core/src/main/java/com/quicktvui/support/core/device/DeviceIdGenerator.java +135 -0
  679. package/rules/.source/sdk/support/core/src/main/java/com/quicktvui/support/core/device/DeviceIdManager.java +61 -0
  680. package/rules/.source/sdk/support/core/src/main/java/com/quicktvui/support/core/device/DeviceTypeGenerator.java +19 -0
  681. package/rules/.source/sdk/support/core/src/main/java/com/quicktvui/support/core/device/DeviceTypeManager.java +63 -0
  682. package/rules/.source/sdk/support/core/src/main/java/com/quicktvui/support/core/device/ESRuntimeSPConstants.java +8 -0
  683. package/rules/.source/sdk/support/core/src/main/java/com/quicktvui/support/core/device/IDeviceGenerator.java +10 -0
  684. package/rules/.source/sdk/support/core/src/main/java/com/quicktvui/support/core/device/RuntimeDeviceModule.java +70 -0
  685. package/rules/.source/sdk/support/core/src/main/java/com/quicktvui/support/core/module/activity/AndroidActivityModule.java +46 -0
  686. package/rules/.source/sdk/support/core/src/main/java/com/quicktvui/support/core/module/audio/AndroidAudioModule.java +190 -0
  687. package/rules/.source/sdk/support/core/src/main/java/com/quicktvui/support/core/module/broadcast/ESBroadcastModule.java +369 -0
  688. package/rules/.source/sdk/support/core/src/main/java/com/quicktvui/support/core/module/develop/AndroidDevelopManager.java +62 -0
  689. package/rules/.source/sdk/support/core/src/main/java/com/quicktvui/support/core/module/develop/AndroidDevelopModule.java +103 -0
  690. package/rules/.source/sdk/support/core/src/main/java/com/quicktvui/support/core/module/develop/Develop.java +85 -0
  691. package/rules/.source/sdk/support/core/src/main/java/com/quicktvui/support/core/module/device/AndroidDevice.java +410 -0
  692. package/rules/.source/sdk/support/core/src/main/java/com/quicktvui/support/core/module/device/AndroidDeviceManager.java +166 -0
  693. package/rules/.source/sdk/support/core/src/main/java/com/quicktvui/support/core/module/device/AndroidDeviceModule.java +313 -0
  694. package/rules/.source/sdk/support/core/src/main/java/com/quicktvui/support/core/module/device/DeviceModule.java +75 -0
  695. package/rules/.source/sdk/support/core/src/main/java/com/quicktvui/support/core/module/es/ESModule.java +289 -0
  696. package/rules/.source/sdk/support/core/src/main/java/com/quicktvui/support/core/module/file/AndroidFileModule.java +622 -0
  697. package/rules/.source/sdk/support/core/src/main/java/com/quicktvui/support/core/module/log/ESLogModule.java +59 -0
  698. package/rules/.source/sdk/support/core/src/main/java/com/quicktvui/support/core/module/mmap/AndroidMMapModule.java +219 -0
  699. package/rules/.source/sdk/support/core/src/main/java/com/quicktvui/support/core/module/mmap/MMapManager.java +350 -0
  700. package/rules/.source/sdk/support/core/src/main/java/com/quicktvui/support/core/module/mmap/MMapMode.java +8 -0
  701. package/rules/.source/sdk/support/core/src/main/java/com/quicktvui/support/core/module/mmap/MMapSharedData.java +44 -0
  702. package/rules/.source/sdk/support/core/src/main/java/com/quicktvui/support/core/module/mmap/MMapSharedDataType.java +15 -0
  703. package/rules/.source/sdk/support/core/src/main/java/com/quicktvui/support/core/module/network/AndroidNetworkManager.java +168 -0
  704. package/rules/.source/sdk/support/core/src/main/java/com/quicktvui/support/core/module/network/AndroidNetworkModule.java +162 -0
  705. package/rules/.source/sdk/support/core/src/main/java/com/quicktvui/support/core/module/network/AndroidNetworkReceiver.java +52 -0
  706. package/rules/.source/sdk/support/core/src/main/java/com/quicktvui/support/core/module/permission/AndroidPermissionModule.java +224 -0
  707. package/rules/.source/sdk/support/core/src/main/java/com/quicktvui/support/core/module/power/AndroidPowerManager.java +48 -0
  708. package/rules/.source/sdk/support/core/src/main/java/com/quicktvui/support/core/module/power/AndroidPowerModule.java +61 -0
  709. package/rules/.source/sdk/support/core/src/main/java/com/quicktvui/support/core/module/sp/AndroidSharedPreferencesManager.java +119 -0
  710. package/rules/.source/sdk/support/core/src/main/java/com/quicktvui/support/core/module/sp/AndroidSharedPreferencesModule.java +197 -0
  711. package/rules/.source/sdk/support/core/src/main/java/com/quicktvui/support/core/module/sqlite/EsSqliteModule.java +380 -0
  712. package/rules/.source/sdk/support/core/src/main/java/com/quicktvui/support/core/module/storage/AndroidStorageManager.java +68 -0
  713. package/rules/.source/sdk/support/core/src/main/java/com/quicktvui/support/core/module/storage/AndroidStorageModule.java +252 -0
  714. package/rules/.source/sdk/support/core/src/main/java/com/quicktvui/support/core/module/toast/ESToastModule.java +62 -0
  715. package/rules/.source/sdk/support/core/src/main/java/com/quicktvui/support/core/module/toast/ToastModule.java +385 -0
  716. package/rules/.source/sdk/support/core/src/main/java/com/quicktvui/support/core/module/usb/AndroidUsbDeviceManager.java +233 -0
  717. package/rules/.source/sdk/support/core/src/main/java/com/quicktvui/support/core/module/usb/AndroidUsbDeviceModule.java +230 -0
  718. package/rules/.source/sdk/support/core/src/main/java/com/quicktvui/support/core/module/usb/AndroidUsbDeviceReceiver.java +31 -0
  719. package/rules/.source/sdk/support/core/src/main/java/com/quicktvui/support/core/nativeevent/BaseChangeObserver.java +54 -0
  720. package/rules/.source/sdk/support/core/src/main/java/com/quicktvui/support/core/nativeevent/BatteryChangeObserver.java +177 -0
  721. package/rules/.source/sdk/support/core/src/main/java/com/quicktvui/support/core/nativeevent/BluetoothChangeObserver.java +83 -0
  722. package/rules/.source/sdk/support/core/src/main/java/com/quicktvui/support/core/nativeevent/NativeEventReceiverManager.java +107 -0
  723. package/rules/.source/sdk/support/core/src/main/java/com/quicktvui/support/core/nativeevent/NetworkChangeObserver.java +134 -0
  724. package/rules/.source/sdk/support/core/src/main/java/com/quicktvui/support/core/nativeevent/TimeChangeObserver.java +46 -0
  725. package/rules/.source/sdk/support/core/src/main/java/com/quicktvui/support/core/nativeevent/UsbChangeObserver.java +168 -0
  726. package/rules/.source/sdk/support/core/src/main/java/com/quicktvui/support/core/utils/BundleMapper.java +215 -0
  727. package/rules/.source/sdk/support/core/src/main/java/com/quicktvui/support/core/utils/GradientDrawableUtils.java +105 -0
  728. package/rules/.source/sdk/support/data-group/src/main/java/com/quicktvui/support/data/group/ESGroupData.java +49 -0
  729. package/rules/.source/sdk/support/data-group/src/main/java/com/quicktvui/support/data/group/ESGroupDataModule.java +291 -0
  730. package/rules/.source/sdk/support/data-group/src/main/java/com/quicktvui/support/data/group/ESGroupDataType.java +15 -0
  731. package/rules/.source/sdk/support/data-group/src/main/java/com/quicktvui/support/data/group/ESGroupMode.java +8 -0
  732. package/rules/.source/sdk/support/data-group/src/main/java/com/quicktvui/support/data/group/ESSharedDataManager.java +526 -0
  733. package/rules/.source/sdk/support/data-shared/src/main/java/com/quicktvui/support/data/shared/ESSharedData.java +44 -0
  734. package/rules/.source/sdk/support/data-shared/src/main/java/com/quicktvui/support/data/shared/ESSharedDataManager.java +388 -0
  735. package/rules/.source/sdk/support/data-shared/src/main/java/com/quicktvui/support/data/shared/ESSharedDataModule.java +218 -0
  736. package/rules/.source/sdk/support/data-shared/src/main/java/com/quicktvui/support/data/shared/ESSharedDataType.java +15 -0
  737. package/rules/.source/sdk/support/data-shared/src/main/java/com/quicktvui/support/data/shared/ESSharedMode.java +8 -0
  738. package/rules/.source/sdk/support/device-info/src/main/java/com/quicktvui/support/device/info/ESDeviceInfoModule.java +988 -0
  739. package/rules/.source/sdk/support/device-info/src/main/java/com/quicktvui/support/device/info/SysInfo.java +24128 -0
  740. package/rules/.source/sdk/support/device-info/src/main/java/com/quicktvui/support/device/info/SysInfoSingleTon.java +98 -0
  741. package/rules/.source/sdk/support/device-info/src/main/java/com/quicktvui/support/device/info/model/beans/ApplicationBean.java +93 -0
  742. package/rules/.source/sdk/support/device-info/src/main/java/com/quicktvui/support/device/info/model/beans/CpuBean.java +41 -0
  743. package/rules/.source/sdk/support/device-info/src/main/java/com/quicktvui/support/device/info/model/beans/InputBean.java +69 -0
  744. package/rules/.source/sdk/support/device-info/src/main/java/com/quicktvui/support/device/info/model/beans/PartitionsBean.java +124 -0
  745. package/rules/.source/sdk/support/device-info/src/main/java/com/quicktvui/support/device/info/model/beans/SimBean.java +91 -0
  746. package/rules/.source/sdk/support/device-info/src/main/java/com/quicktvui/support/device/info/model/beans/StorageBean.java +180 -0
  747. package/rules/.source/sdk/support/device-info/src/main/java/com/quicktvui/support/device/info/model/beans/USBBean.java +48 -0
  748. package/rules/.source/sdk/support/device-info/src/main/java/com/quicktvui/support/device/info/model/beans/XposedHookBean.java +98 -0
  749. package/rules/.source/sdk/support/device-info/src/main/java/com/quicktvui/support/device/info/model/info/AppInfo.java +50 -0
  750. package/rules/.source/sdk/support/device-info/src/main/java/com/quicktvui/support/device/info/model/info/AppListInfo.java +42 -0
  751. package/rules/.source/sdk/support/device-info/src/main/java/com/quicktvui/support/device/info/model/info/BatteryInfo.java +26 -0
  752. package/rules/.source/sdk/support/device-info/src/main/java/com/quicktvui/support/device/info/model/info/BluetoothInfo.java +50 -0
  753. package/rules/.source/sdk/support/device-info/src/main/java/com/quicktvui/support/device/info/model/info/BuildInfo.java +35 -0
  754. package/rules/.source/sdk/support/device-info/src/main/java/com/quicktvui/support/device/info/model/info/CameraInfo.java +1327 -0
  755. package/rules/.source/sdk/support/device-info/src/main/java/com/quicktvui/support/device/info/model/info/DebugInfo.java +25 -0
  756. package/rules/.source/sdk/support/device-info/src/main/java/com/quicktvui/support/device/info/model/info/DeviceInfo.java +26 -0
  757. package/rules/.source/sdk/support/device-info/src/main/java/com/quicktvui/support/device/info/model/info/EmulatorInfo.java +57 -0
  758. package/rules/.source/sdk/support/device-info/src/main/java/com/quicktvui/support/device/info/model/info/HardwareInfo.java +32 -0
  759. package/rules/.source/sdk/support/device-info/src/main/java/com/quicktvui/support/device/info/model/info/HookInfo.java +26 -0
  760. package/rules/.source/sdk/support/device-info/src/main/java/com/quicktvui/support/device/info/model/info/InputInfo.java +170 -0
  761. package/rules/.source/sdk/support/device-info/src/main/java/com/quicktvui/support/device/info/model/info/MapsInfo.java +49 -0
  762. package/rules/.source/sdk/support/device-info/src/main/java/com/quicktvui/support/device/info/model/info/MediaCodecInfo.java +29 -0
  763. package/rules/.source/sdk/support/device-info/src/main/java/com/quicktvui/support/device/info/model/info/NetWorkInfo.java +150 -0
  764. package/rules/.source/sdk/support/device-info/src/main/java/com/quicktvui/support/device/info/model/info/OthersInfo.java +75 -0
  765. package/rules/.source/sdk/support/device-info/src/main/java/com/quicktvui/support/device/info/model/info/PartitionsInfo.java +93 -0
  766. package/rules/.source/sdk/support/device-info/src/main/java/com/quicktvui/support/device/info/model/info/RootInfo.java +25 -0
  767. package/rules/.source/sdk/support/device-info/src/main/java/com/quicktvui/support/device/info/model/info/SOCInfo.java +101 -0
  768. package/rules/.source/sdk/support/device-info/src/main/java/com/quicktvui/support/device/info/model/info/StoreInfo.java +31 -0
  769. package/rules/.source/sdk/support/device-info/src/main/java/com/quicktvui/support/device/info/model/info/SystemInfo.java +57 -0
  770. package/rules/.source/sdk/support/device-info/src/main/java/com/quicktvui/support/device/info/model/info/ThermalInfo.java +54 -0
  771. package/rules/.source/sdk/support/device-info/src/main/java/com/quicktvui/support/device/info/model/info/USBInfo.java +146 -0
  772. package/rules/.source/sdk/support/device-info/src/main/java/com/quicktvui/support/device/info/model/info/VirtualAppInfo.java +145 -0
  773. package/rules/.source/sdk/support/device-info/src/main/java/com/quicktvui/support/device/info/model/info/WifiInfo.java +52 -0
  774. package/rules/.source/sdk/support/device-info/src/main/java/com/quicktvui/support/device/info/utils/ApplicationUtils.java +18 -0
  775. package/rules/.source/sdk/support/device-info/src/main/java/com/quicktvui/support/device/info/utils/BatteryUtils.java +190 -0
  776. package/rules/.source/sdk/support/device-info/src/main/java/com/quicktvui/support/device/info/utils/CommandUtils.java +173 -0
  777. package/rules/.source/sdk/support/device-info/src/main/java/com/quicktvui/support/device/info/utils/Constants.java +12 -0
  778. package/rules/.source/sdk/support/device-info/src/main/java/com/quicktvui/support/device/info/utils/DebugUtils.java +117 -0
  779. package/rules/.source/sdk/support/device-info/src/main/java/com/quicktvui/support/device/info/utils/DecimalUtils.java +94 -0
  780. package/rules/.source/sdk/support/device-info/src/main/java/com/quicktvui/support/device/info/utils/DensityUtils.java +427 -0
  781. package/rules/.source/sdk/support/device-info/src/main/java/com/quicktvui/support/device/info/utils/DeviceUtils.java +315 -0
  782. package/rules/.source/sdk/support/device-info/src/main/java/com/quicktvui/support/device/info/utils/EmulatorUtils.java +422 -0
  783. package/rules/.source/sdk/support/device-info/src/main/java/com/quicktvui/support/device/info/utils/FileUtils.java +69 -0
  784. package/rules/.source/sdk/support/device-info/src/main/java/com/quicktvui/support/device/info/utils/FormatTools.java +29 -0
  785. package/rules/.source/sdk/support/device-info/src/main/java/com/quicktvui/support/device/info/utils/GatewayUtils.java +380 -0
  786. package/rules/.source/sdk/support/device-info/src/main/java/com/quicktvui/support/device/info/utils/HashUtils.java +61 -0
  787. package/rules/.source/sdk/support/device-info/src/main/java/com/quicktvui/support/device/info/utils/HexUtils.java +43 -0
  788. package/rules/.source/sdk/support/device-info/src/main/java/com/quicktvui/support/device/info/utils/HookUtils.java +147 -0
  789. package/rules/.source/sdk/support/device-info/src/main/java/com/quicktvui/support/device/info/utils/LogUtils.java +274 -0
  790. package/rules/.source/sdk/support/device-info/src/main/java/com/quicktvui/support/device/info/utils/MemoryUtils.java +93 -0
  791. package/rules/.source/sdk/support/device-info/src/main/java/com/quicktvui/support/device/info/utils/NetWorkUtils.java +579 -0
  792. package/rules/.source/sdk/support/device-info/src/main/java/com/quicktvui/support/device/info/utils/OaidUtils.java +48 -0
  793. package/rules/.source/sdk/support/device-info/src/main/java/com/quicktvui/support/device/info/utils/RootUtils.java +219 -0
  794. package/rules/.source/sdk/support/device-info/src/main/java/com/quicktvui/support/device/info/utils/SdUtils.java +298 -0
  795. package/rules/.source/sdk/support/device-info/src/main/java/com/quicktvui/support/device/info/utils/SocUtils.java +287 -0
  796. package/rules/.source/sdk/support/device-info/src/main/java/com/quicktvui/support/device/info/utils/SystemConfigUtils.java +53 -0
  797. package/rules/.source/sdk/support/device-info/src/main/java/com/quicktvui/support/device/info/utils/ThreadPoolUtils.java +89 -0
  798. package/rules/.source/sdk/support/device-info/src/main/java/com/quicktvui/support/device/info/utils/TimeUtils.java +20 -0
  799. package/rules/.source/sdk/support/device-info/src/main/java/com/quicktvui/support/device/info/utils/XposedHookUtils.java +138 -0
  800. package/rules/.source/sdk/support/download/src/main/java/com/quicktvui/support/download/DefaultConfigurationFactory.java +56 -0
  801. package/rules/.source/sdk/support/download/src/main/java/com/quicktvui/support/download/Download.java +111 -0
  802. package/rules/.source/sdk/support/download/src/main/java/com/quicktvui/support/download/DownloadConfiguration.java +74 -0
  803. package/rules/.source/sdk/support/download/src/main/java/com/quicktvui/support/download/DownloadError.java +9 -0
  804. package/rules/.source/sdk/support/download/src/main/java/com/quicktvui/support/download/DownloadListener.java +7 -0
  805. package/rules/.source/sdk/support/download/src/main/java/com/quicktvui/support/download/DownloadManager.java +201 -0
  806. package/rules/.source/sdk/support/download/src/main/java/com/quicktvui/support/download/DownloadMessage.java +34 -0
  807. package/rules/.source/sdk/support/download/src/main/java/com/quicktvui/support/download/DownloadParams.java +24 -0
  808. package/rules/.source/sdk/support/download/src/main/java/com/quicktvui/support/download/DownloadProgress.java +34 -0
  809. package/rules/.source/sdk/support/download/src/main/java/com/quicktvui/support/download/DownloadState.java +15 -0
  810. package/rules/.source/sdk/support/download/src/main/java/com/quicktvui/support/download/DownloadStatus.java +46 -0
  811. package/rules/.source/sdk/support/download/src/main/java/com/quicktvui/support/download/DownloadTask.java +370 -0
  812. package/rules/.source/sdk/support/download/src/main/java/com/quicktvui/support/download/ESDownloadModule.java +376 -0
  813. package/rules/.source/sdk/support/download/src/main/java/com/quicktvui/support/download/FileDigest.java +47 -0
  814. package/rules/.source/sdk/support/download/src/main/java/com/quicktvui/support/download/HttpRequest.java +3201 -0
  815. package/rules/.source/sdk/support/download/src/main/java/com/quicktvui/support/download/IDownloadTask.java +16 -0
  816. package/rules/.source/sdk/support/download/src/main/java/com/quicktvui/support/download/StorageUtils.java +162 -0
  817. package/rules/.source/sdk/support/gif-view/src/main/java/com/quicktvui/giflibrary/GifDecoder.java +32 -0
  818. package/rules/.source/sdk/support/gif-view/src/main/java/com/quicktvui/giflibrary/GifDrawableTranscoder.java +22 -0
  819. package/rules/.source/sdk/support/gif-view/src/main/java/com/quicktvui/giflibrary/GifImageLoader.java +22 -0
  820. package/rules/.source/sdk/support/gif-view/src/main/java/com/quicktvui/giflibrary/GifModule.java +28 -0
  821. package/rules/.source/sdk/support/gif-view/src/main/java/com/quicktvui/giflibrary/GifSoftwareLayerSetter.java +45 -0
  822. package/rules/.source/sdk/support/gif-view/src/main/java/com/quicktvui/rastermill/FrameSequence.java +148 -0
  823. package/rules/.source/sdk/support/gif-view/src/main/java/com/quicktvui/rastermill/FrameSequenceDrawable.java +381 -0
  824. package/rules/.source/sdk/support/gif-view/src/main/java/com/quicktvui/support/gif/ESGifViewComponent.java +49 -0
  825. package/rules/.source/sdk/support/gif-view/src/main/java/com/quicktvui/support/gif/GifView.java +24 -0
  826. package/rules/.source/sdk/support/install-manager/src/main/java/com/quicktvui/support/install/manager/ESInstallManagerModule.java +143 -0
  827. package/rules/.source/sdk/support/log/src/main/java/com/quicktvui/support/log/ESLog.java +1029 -0
  828. package/rules/.source/sdk/support/log/src/main/java/com/quicktvui/support/log/LogConfiguration.java +662 -0
  829. package/rules/.source/sdk/support/log/src/main/java/com/quicktvui/support/log/LogItem.java +72 -0
  830. package/rules/.source/sdk/support/log/src/main/java/com/quicktvui/support/log/LogLevel.java +168 -0
  831. package/rules/.source/sdk/support/log/src/main/java/com/quicktvui/support/log/LogUtils.java +173 -0
  832. package/rules/.source/sdk/support/log/src/main/java/com/quicktvui/support/log/Logger.java +1331 -0
  833. package/rules/.source/sdk/support/log/src/main/java/com/quicktvui/support/log/flattener/ClassicFlattener.java +36 -0
  834. package/rules/.source/sdk/support/log/src/main/java/com/quicktvui/support/log/flattener/DefaultFlattener.java +40 -0
  835. package/rules/.source/sdk/support/log/src/main/java/com/quicktvui/support/log/flattener/Flattener.java +37 -0
  836. package/rules/.source/sdk/support/log/src/main/java/com/quicktvui/support/log/flattener/Flattener2.java +37 -0
  837. package/rules/.source/sdk/support/log/src/main/java/com/quicktvui/support/log/flattener/PatternFlattener.java +372 -0
  838. package/rules/.source/sdk/support/log/src/main/java/com/quicktvui/support/log/formatter/FormatException.java +78 -0
  839. package/rules/.source/sdk/support/log/src/main/java/com/quicktvui/support/log/formatter/Formatter.java +34 -0
  840. package/rules/.source/sdk/support/log/src/main/java/com/quicktvui/support/log/formatter/border/BorderFormatter.java +36 -0
  841. package/rules/.source/sdk/support/log/src/main/java/com/quicktvui/support/log/formatter/border/DefaultBorderFormatter.java +99 -0
  842. package/rules/.source/sdk/support/log/src/main/java/com/quicktvui/support/log/formatter/message/json/DefaultJsonFormatter.java +55 -0
  843. package/rules/.source/sdk/support/log/src/main/java/com/quicktvui/support/log/formatter/message/json/JsonFormatter.java +25 -0
  844. package/rules/.source/sdk/support/log/src/main/java/com/quicktvui/support/log/formatter/message/object/BundleFormatter.java +40 -0
  845. package/rules/.source/sdk/support/log/src/main/java/com/quicktvui/support/log/formatter/message/object/IntentFormatter.java +40 -0
  846. package/rules/.source/sdk/support/log/src/main/java/com/quicktvui/support/log/formatter/message/object/ObjectFormatter.java +28 -0
  847. package/rules/.source/sdk/support/log/src/main/java/com/quicktvui/support/log/formatter/message/throwable/DefaultThrowableFormatter.java +31 -0
  848. package/rules/.source/sdk/support/log/src/main/java/com/quicktvui/support/log/formatter/message/throwable/ThrowableFormatter.java +25 -0
  849. package/rules/.source/sdk/support/log/src/main/java/com/quicktvui/support/log/formatter/message/xml/DefaultXmlFormatter.java +63 -0
  850. package/rules/.source/sdk/support/log/src/main/java/com/quicktvui/support/log/formatter/message/xml/XmlFormatter.java +25 -0
  851. package/rules/.source/sdk/support/log/src/main/java/com/quicktvui/support/log/formatter/stacktrace/DefaultStackTraceFormatter.java +50 -0
  852. package/rules/.source/sdk/support/log/src/main/java/com/quicktvui/support/log/formatter/stacktrace/StackTraceFormatter.java +25 -0
  853. package/rules/.source/sdk/support/log/src/main/java/com/quicktvui/support/log/formatter/thread/DefaultThreadFormatter.java +29 -0
  854. package/rules/.source/sdk/support/log/src/main/java/com/quicktvui/support/log/formatter/thread/ThreadFormatter.java +25 -0
  855. package/rules/.source/sdk/support/log/src/main/java/com/quicktvui/support/log/interceptor/AbstractFilterInterceptor.java +51 -0
  856. package/rules/.source/sdk/support/log/src/main/java/com/quicktvui/support/log/interceptor/BlacklistTagsFilterInterceptor.java +71 -0
  857. package/rules/.source/sdk/support/log/src/main/java/com/quicktvui/support/log/interceptor/Interceptor.java +46 -0
  858. package/rules/.source/sdk/support/log/src/main/java/com/quicktvui/support/log/interceptor/WhitelistTagsFilterInterceptor.java +71 -0
  859. package/rules/.source/sdk/support/log/src/main/java/com/quicktvui/support/log/internal/DefaultsFactory.java +157 -0
  860. package/rules/.source/sdk/support/log/src/main/java/com/quicktvui/support/log/internal/Platform.java +114 -0
  861. package/rules/.source/sdk/support/log/src/main/java/com/quicktvui/support/log/internal/SystemCompat.java +28 -0
  862. package/rules/.source/sdk/support/log/src/main/java/com/quicktvui/support/log/internal/printer/file/backup/BackupStrategyWrapper.java +50 -0
  863. package/rules/.source/sdk/support/log/src/main/java/com/quicktvui/support/log/internal/printer/file/backup/BackupUtil.java +77 -0
  864. package/rules/.source/sdk/support/log/src/main/java/com/quicktvui/support/log/internal/util/ObjectToStringUtil.java +238 -0
  865. package/rules/.source/sdk/support/log/src/main/java/com/quicktvui/support/log/internal/util/StackTraceUtil.java +120 -0
  866. package/rules/.source/sdk/support/log/src/main/java/com/quicktvui/support/log/module/ESLoggerModule.java +332 -0
  867. package/rules/.source/sdk/support/log/src/main/java/com/quicktvui/support/log/printer/AndroidPrinter.java +145 -0
  868. package/rules/.source/sdk/support/log/src/main/java/com/quicktvui/support/log/printer/ConsolePrinter.java +55 -0
  869. package/rules/.source/sdk/support/log/src/main/java/com/quicktvui/support/log/printer/Printer.java +41 -0
  870. package/rules/.source/sdk/support/log/src/main/java/com/quicktvui/support/log/printer/PrinterSet.java +42 -0
  871. package/rules/.source/sdk/support/log/src/main/java/com/quicktvui/support/log/printer/RemotePrinter.java +32 -0
  872. package/rules/.source/sdk/support/log/src/main/java/com/quicktvui/support/log/printer/SystemPrinter.java +24 -0
  873. package/rules/.source/sdk/support/log/src/main/java/com/quicktvui/support/log/printer/file/FilePrinter.java +399 -0
  874. package/rules/.source/sdk/support/log/src/main/java/com/quicktvui/support/log/printer/file/backup/AbstractBackupStrategy.java +33 -0
  875. package/rules/.source/sdk/support/log/src/main/java/com/quicktvui/support/log/printer/file/backup/BackupStrategy.java +33 -0
  876. package/rules/.source/sdk/support/log/src/main/java/com/quicktvui/support/log/printer/file/backup/BackupStrategy2.java +69 -0
  877. package/rules/.source/sdk/support/log/src/main/java/com/quicktvui/support/log/printer/file/backup/FileSizeBackupStrategy.java +45 -0
  878. package/rules/.source/sdk/support/log/src/main/java/com/quicktvui/support/log/printer/file/backup/FileSizeBackupStrategy2.java +52 -0
  879. package/rules/.source/sdk/support/log/src/main/java/com/quicktvui/support/log/printer/file/backup/NeverBackupStrategy.java +32 -0
  880. package/rules/.source/sdk/support/log/src/main/java/com/quicktvui/support/log/printer/file/clean/CleanStrategy.java +19 -0
  881. package/rules/.source/sdk/support/log/src/main/java/com/quicktvui/support/log/printer/file/clean/FileLastModifiedCleanStrategy.java +29 -0
  882. package/rules/.source/sdk/support/log/src/main/java/com/quicktvui/support/log/printer/file/clean/NeverCleanStrategy.java +16 -0
  883. package/rules/.source/sdk/support/log/src/main/java/com/quicktvui/support/log/printer/file/naming/ChangelessFileNameGenerator.java +44 -0
  884. package/rules/.source/sdk/support/log/src/main/java/com/quicktvui/support/log/printer/file/naming/DateFileNameGenerator.java +51 -0
  885. package/rules/.source/sdk/support/log/src/main/java/com/quicktvui/support/log/printer/file/naming/FileNameGenerator.java +39 -0
  886. package/rules/.source/sdk/support/log/src/main/java/com/quicktvui/support/log/printer/file/naming/LevelFileNameGenerator.java +38 -0
  887. package/rules/.source/sdk/support/log/src/main/java/com/quicktvui/support/log/printer/file/writer/SimpleWriter.java +137 -0
  888. package/rules/.source/sdk/support/log/src/main/java/com/quicktvui/support/log/printer/file/writer/Writer.java +72 -0
  889. package/rules/.source/sdk/support/log/src/main/java/com/quicktvui/support/log/printer/flattener/DefaultLogFlattener.java +26 -0
  890. package/rules/.source/sdk/support/log/src/main/java/com/quicktvui/support/log/printer/flattener/LogFlattener.java +26 -0
  891. package/rules/.source/sdk/support/long-image/src/main/java/com/quicktvui/support/longimage/ESLongImageViewComponent.java +732 -0
  892. package/rules/.source/sdk/support/long-image/src/main/java/com/quicktvui/support/longimage/decoder/CompatDecoderFactory.java +49 -0
  893. package/rules/.source/sdk/support/long-image/src/main/java/com/quicktvui/support/longimage/decoder/DecoderFactory.java +23 -0
  894. package/rules/.source/sdk/support/long-image/src/main/java/com/quicktvui/support/longimage/decoder/ImageDecoder.java +31 -0
  895. package/rules/.source/sdk/support/long-image/src/main/java/com/quicktvui/support/longimage/decoder/ImageRegionDecoder.java +62 -0
  896. package/rules/.source/sdk/support/long-image/src/main/java/com/quicktvui/support/longimage/decoder/ImageSource.java +262 -0
  897. package/rules/.source/sdk/support/long-image/src/main/java/com/quicktvui/support/longimage/decoder/ImageViewState.java +42 -0
  898. package/rules/.source/sdk/support/long-image/src/main/java/com/quicktvui/support/longimage/decoder/SkiaImageDecoder.java +107 -0
  899. package/rules/.source/sdk/support/long-image/src/main/java/com/quicktvui/support/longimage/decoder/SkiaImageRegionDecoder.java +171 -0
  900. package/rules/.source/sdk/support/long-image/src/main/java/com/quicktvui/support/longimage/decoder/SkiaPooledImageRegionDecoder.java +476 -0
  901. package/rules/.source/sdk/support/long-image/src/main/java/com/quicktvui/support/longimage/utils/LongImageEventUtils.java +34 -0
  902. package/rules/.source/sdk/support/long-image/src/main/java/com/quicktvui/support/longimage/utils/LongImageLoader.java +180 -0
  903. package/rules/.source/sdk/support/long-image/src/main/java/com/quicktvui/support/longimage/utils/luban/Checker.java +196 -0
  904. package/rules/.source/sdk/support/long-image/src/main/java/com/quicktvui/support/longimage/utils/luban/CompressionPredicate.java +19 -0
  905. package/rules/.source/sdk/support/long-image/src/main/java/com/quicktvui/support/longimage/utils/luban/Engine.java +90 -0
  906. package/rules/.source/sdk/support/long-image/src/main/java/com/quicktvui/support/longimage/utils/luban/InputStreamAdapter.java +34 -0
  907. package/rules/.source/sdk/support/long-image/src/main/java/com/quicktvui/support/longimage/utils/luban/InputStreamProvider.java +18 -0
  908. package/rules/.source/sdk/support/long-image/src/main/java/com/quicktvui/support/longimage/utils/luban/Luban.java +388 -0
  909. package/rules/.source/sdk/support/long-image/src/main/java/com/quicktvui/support/longimage/utils/luban/OnCompressListener.java +21 -0
  910. package/rules/.source/sdk/support/long-image/src/main/java/com/quicktvui/support/longimage/utils/luban/OnRenameListener.java +22 -0
  911. package/rules/.source/sdk/support/long-image/src/main/java/com/quicktvui/support/longimage/view/ESLongImageView.java +306 -0
  912. package/rules/.source/sdk/support/long-image/src/main/java/com/quicktvui/support/longimage/view/SubsamplingScaleImageView.java +3245 -0
  913. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/AsyncUpdates.java +54 -0
  914. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/Cancellable.java +6 -0
  915. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/FontAssetDelegate.java +40 -0
  916. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/ImageAssetDelegate.java +14 -0
  917. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/L.java +123 -0
  918. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/Lottie.java +26 -0
  919. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/LottieAnimationView.java +1447 -0
  920. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/LottieComposition.java +385 -0
  921. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/LottieCompositionFactory.java +716 -0
  922. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/LottieConfig.java +135 -0
  923. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/LottieDrawable.java +1740 -0
  924. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/LottieImageAsset.java +79 -0
  925. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/LottieListener.java +8 -0
  926. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/LottieLogger.java +17 -0
  927. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/LottieOnCompositionLoadedListener.java +5 -0
  928. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/LottieProperty.java +223 -0
  929. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/LottieResult.java +55 -0
  930. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/LottieTask.java +185 -0
  931. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/LottieTaskIdleListener.java +11 -0
  932. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/OnCompositionLoadedListener.java +15 -0
  933. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/PerformanceTracker.java +97 -0
  934. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/RenderMode.java +41 -0
  935. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/SimpleColorFilter.java +20 -0
  936. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/TextDelegate.java +116 -0
  937. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/animation/AnimatorLister.java +35 -0
  938. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/animation/LPaint.java +60 -0
  939. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/animation/content/BaseStrokeContent.java +412 -0
  940. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/animation/content/CompoundTrimPathContent.java +22 -0
  941. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/animation/content/Content.java +9 -0
  942. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/animation/content/ContentGroup.java +269 -0
  943. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/animation/content/DrawingContent.java +11 -0
  944. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/animation/content/EllipseContent.java +134 -0
  945. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/animation/content/FillContent.java +194 -0
  946. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/animation/content/GradientFillContent.java +316 -0
  947. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/animation/content/GradientStrokeContent.java +181 -0
  948. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/animation/content/GreedyContent.java +19 -0
  949. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/animation/content/KeyPathElementContent.java +6 -0
  950. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/animation/content/MergePathsContent.java +123 -0
  951. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/animation/content/ModifierContent.java +4 -0
  952. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/animation/content/PathContent.java +7 -0
  953. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/animation/content/PolystarContent.java +332 -0
  954. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/animation/content/RectangleContent.java +180 -0
  955. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/animation/content/RepeaterContent.java +155 -0
  956. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/animation/content/RoundedCornersContent.java +225 -0
  957. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/animation/content/ShapeContent.java +98 -0
  958. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/animation/content/ShapeModifierContent.java +7 -0
  959. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/animation/content/StrokeContent.java +77 -0
  960. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/animation/content/TrimPathContent.java +75 -0
  961. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/animation/content/package-info.java +6 -0
  962. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/animation/keyframe/BaseKeyframeAnimation.java +356 -0
  963. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/animation/keyframe/ColorKeyframeAnimation.java +46 -0
  964. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/animation/keyframe/DropShadowKeyframeAnimation.java +100 -0
  965. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/animation/keyframe/FloatKeyframeAnimation.java +45 -0
  966. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/animation/keyframe/GradientColorKeyframeAnimation.java +22 -0
  967. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/animation/keyframe/IntegerKeyframeAnimation.java +46 -0
  968. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/animation/keyframe/KeyframeAnimation.java +11 -0
  969. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/animation/keyframe/MaskKeyframeAnimation.java +40 -0
  970. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/animation/keyframe/PathKeyframe.java +40 -0
  971. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/animation/keyframe/PathKeyframeAnimation.java +46 -0
  972. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/animation/keyframe/PointKeyframeAnimation.java +41 -0
  973. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/animation/keyframe/ScaleKeyframeAnimation.java +40 -0
  974. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/animation/keyframe/ShapeKeyframeAnimation.java +42 -0
  975. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/animation/keyframe/SplitDimensionPathKeyframeAnimation.java +105 -0
  976. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/animation/keyframe/TextKeyframeAnimation.java +47 -0
  977. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/animation/keyframe/TransformKeyframeAnimation.java +336 -0
  978. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/animation/keyframe/ValueCallbackKeyframeAnimation.java +49 -0
  979. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/animation/keyframe/package-info.java +6 -0
  980. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/animation/package-info.java +6 -0
  981. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/manager/FontAssetManager.java +129 -0
  982. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/manager/ImageAssetManager.java +151 -0
  983. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/manager/package-info.java +6 -0
  984. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/model/CubicCurveData.java +91 -0
  985. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/model/DocumentData.java +76 -0
  986. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/model/Font.java +52 -0
  987. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/model/FontCharacter.java +49 -0
  988. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/model/KeyPath.java +243 -0
  989. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/model/KeyPathElement.java +41 -0
  990. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/model/LottieCompositionCache.java +50 -0
  991. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/model/Marker.java +37 -0
  992. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/model/MutablePair.java +57 -0
  993. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/model/animatable/AnimatableColorValue.java +18 -0
  994. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/model/animatable/AnimatableFloatValue.java +19 -0
  995. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/model/animatable/AnimatableGradientColorValue.java +55 -0
  996. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/model/animatable/AnimatableIntegerValue.java +18 -0
  997. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/model/animatable/AnimatablePathValue.java +36 -0
  998. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/model/animatable/AnimatablePointValue.java +20 -0
  999. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/model/animatable/AnimatableScaleValue.java +24 -0
  1000. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/model/animatable/AnimatableShapeValue.java +21 -0
  1001. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/model/animatable/AnimatableSplitDimensionPathValue.java +37 -0
  1002. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/model/animatable/AnimatableTextFrame.java +18 -0
  1003. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/model/animatable/AnimatableTextProperties.java +20 -0
  1004. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/model/animatable/AnimatableTransform.java +111 -0
  1005. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/model/animatable/AnimatableValue.java +15 -0
  1006. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/model/animatable/BaseAnimatableValue.java +39 -0
  1007. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/model/animatable/package-info.java +6 -0
  1008. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/model/content/BlurEffect.java +16 -0
  1009. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/model/content/CircleShape.java +52 -0
  1010. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/model/content/ContentModel.java +14 -0
  1011. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/model/content/GradientColor.java +70 -0
  1012. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/model/content/GradientFill.java +84 -0
  1013. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/model/content/GradientStroke.java +110 -0
  1014. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/model/content/GradientType.java +6 -0
  1015. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/model/content/Mask.java +42 -0
  1016. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/model/content/MergePaths.java +74 -0
  1017. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/model/content/PolystarShape.java +111 -0
  1018. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/model/content/RectangleShape.java +58 -0
  1019. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/model/content/Repeater.java +52 -0
  1020. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/model/content/RoundedCorners.java +32 -0
  1021. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/model/content/ShapeData.java +110 -0
  1022. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/model/content/ShapeFill.java +63 -0
  1023. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/model/content/ShapeGroup.java +42 -0
  1024. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/model/content/ShapePath.java +45 -0
  1025. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/model/content/ShapeStroke.java +125 -0
  1026. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/model/content/ShapeTrimPath.java +76 -0
  1027. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/model/content/package-info.java +6 -0
  1028. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/model/layer/BaseLayer.java +693 -0
  1029. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/model/layer/CompositionLayer.java +236 -0
  1030. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/model/layer/ImageLayer.java +112 -0
  1031. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/model/layer/Layer.java +227 -0
  1032. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/model/layer/NullLayer.java +22 -0
  1033. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/model/layer/ShapeLayer.java +66 -0
  1034. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/model/layer/SolidLayer.java +93 -0
  1035. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/model/layer/TextLayer.java +619 -0
  1036. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/model/layer/package-info.java +6 -0
  1037. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/network/DefaultLottieFetchResult.java +73 -0
  1038. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/network/DefaultLottieNetworkFetcher.java +21 -0
  1039. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/network/FileExtension.java +27 -0
  1040. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/network/LottieFetchResult.java +36 -0
  1041. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/network/LottieNetworkCacheProvider.java +21 -0
  1042. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/network/LottieNetworkFetcher.java +20 -0
  1043. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/network/NetworkCache.java +200 -0
  1044. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/network/NetworkFetcher.java +152 -0
  1045. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/parser/AnimatablePathValueParser.java +96 -0
  1046. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/parser/AnimatableTextPropertiesParser.java +78 -0
  1047. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/parser/AnimatableTransformParser.java +167 -0
  1048. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/parser/AnimatableValueParser.java +88 -0
  1049. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/parser/BlurEffectParser.java +69 -0
  1050. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/parser/CircleShapeParser.java +60 -0
  1051. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/parser/ColorParser.java +47 -0
  1052. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/parser/ContentModelParser.java +109 -0
  1053. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/parser/DocumentDataParser.java +110 -0
  1054. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/parser/DropShadowEffect.java +42 -0
  1055. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/parser/DropShadowEffectParser.java +88 -0
  1056. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/parser/FloatParser.java +17 -0
  1057. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/parser/FontCharacterParser.java +81 -0
  1058. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/parser/FontParser.java +49 -0
  1059. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/parser/GradientColorParser.java +267 -0
  1060. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/parser/GradientFillParser.java +100 -0
  1061. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/parser/GradientStrokeParser.java +163 -0
  1062. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/parser/IntegerParser.java +16 -0
  1063. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/parser/JsonUtils.java +121 -0
  1064. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/parser/KeyframeParser.java +373 -0
  1065. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/parser/KeyframesParser.java +84 -0
  1066. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/parser/LayerParser.java +292 -0
  1067. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/parser/LottieCompositionMoshiParser.java +270 -0
  1068. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/parser/MaskParser.java +68 -0
  1069. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/parser/MergePathsParser.java +42 -0
  1070. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/parser/PathKeyframeParser.java +27 -0
  1071. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/parser/PathParser.java +18 -0
  1072. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/parser/PointFParser.java +35 -0
  1073. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/parser/PolystarShapeParser.java +91 -0
  1074. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/parser/RectangleShapeParser.java +59 -0
  1075. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/parser/RepeaterParser.java +57 -0
  1076. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/parser/RoundedCornersParser.java +47 -0
  1077. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/parser/ScaleXYParser.java +31 -0
  1078. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/parser/ShapeDataParser.java +103 -0
  1079. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/parser/ShapeFillParser.java +69 -0
  1080. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/parser/ShapeGroupParser.java +55 -0
  1081. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/parser/ShapePathParser.java +52 -0
  1082. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/parser/ShapeStrokeParser.java +130 -0
  1083. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/parser/ShapeTrimPathParser.java +61 -0
  1084. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/parser/ValueParser.java +10 -0
  1085. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/parser/moshi/JsonDataException.java +39 -0
  1086. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/parser/moshi/JsonEncodingException.java +30 -0
  1087. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/parser/moshi/JsonReader.java +493 -0
  1088. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/parser/moshi/JsonScope.java +99 -0
  1089. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/parser/moshi/JsonUtf8Reader.java +1046 -0
  1090. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/parser/moshi/LinkedHashTreeMap.java +868 -0
  1091. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/parser/moshi/package-info.java +6 -0
  1092. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/parser/package-info.java +6 -0
  1093. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/utils/BaseLottieAnimator.java +117 -0
  1094. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/utils/GammaEvaluator.java +64 -0
  1095. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/utils/LogcatLogger.java +52 -0
  1096. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/utils/Logger.java +36 -0
  1097. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/utils/LottieThreadFactory.java +27 -0
  1098. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/utils/LottieTrace.java +42 -0
  1099. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/utils/LottieValueAnimator.java +330 -0
  1100. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/utils/MeanCalculator.java +26 -0
  1101. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/utils/MiscUtils.java +113 -0
  1102. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/utils/Utils.java +321 -0
  1103. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/utils/package-info.java +6 -0
  1104. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/value/Keyframe.java +199 -0
  1105. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/value/LottieFrameInfo.java +65 -0
  1106. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/value/LottieInterpolatedFloatValue.java +22 -0
  1107. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/value/LottieInterpolatedIntegerValue.java +22 -0
  1108. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/value/LottieInterpolatedPointValue.java +27 -0
  1109. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/value/LottieInterpolatedValue.java +28 -0
  1110. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/value/LottieRelativeFloatValueCallback.java +39 -0
  1111. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/value/LottieRelativeIntegerValueCallback.java +32 -0
  1112. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/value/LottieRelativePointValueCallback.java +52 -0
  1113. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/value/LottieValueCallback.java +90 -0
  1114. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/value/ScaleXY.java +36 -0
  1115. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottie/value/SimpleLottieValueCallback.java +10 -0
  1116. package/rules/.source/sdk/support/lottie-view/src/main/java/quicktvui/support/lottieview/ESLottieViewComponent.java +373 -0
  1117. package/rules/.source/sdk/support/network-speed/src/main/java/com/quicktvui/support/network/speed/ESNetworkSpeedModule.java +134 -0
  1118. package/rules/.source/sdk/support/network-speed/src/main/java/com/quicktvui/support/network/speed/util/FormatTools.java +29 -0
  1119. package/rules/.source/sdk/support/player-async/src/main/java/com/quicktvui/support/asyncplayer/ESAsyncPlayerModule.java +96 -0
  1120. package/rules/.source/sdk/support/player-audio-android/src/main/java/com/quicktvui/support/player/audio/android/ESAndroidAudioPlayer.java +484 -0
  1121. package/rules/.source/sdk/support/player-audio-android/src/main/java/com/quicktvui/support/player/audio/android/ESAndroidAudioPlayerModule.java +346 -0
  1122. package/rules/.source/sdk/support/player-audio-android/src/main/java/com/quicktvui/support/player/audio/android/ESAndroidAudioPlayerServiceModule.java +638 -0
  1123. package/rules/.source/sdk/support/player-audio-android/src/main/java/com/quicktvui/support/player/audio/android/ESAudioPlayerService.java +470 -0
  1124. package/rules/.source/sdk/support/player-audio-ijk/src/main/java/com/quicktvui/support/player/audio/bean/PlayInfoBean.java +48 -0
  1125. package/rules/.source/sdk/support/player-audio-ijk/src/main/java/com/quicktvui/support/player/audio/ijk/ESAudioPlayerService.java +528 -0
  1126. package/rules/.source/sdk/support/player-audio-ijk/src/main/java/com/quicktvui/support/player/audio/ijk/ESIJKAudioPlayer.java +827 -0
  1127. package/rules/.source/sdk/support/player-audio-ijk/src/main/java/com/quicktvui/support/player/audio/ijk/ESIJKAudioPlayerModule.java +438 -0
  1128. package/rules/.source/sdk/support/player-audio-ijk/src/main/java/com/quicktvui/support/player/audio/ijk/ESIJKAudioPlayerModule2.java +498 -0
  1129. package/rules/.source/sdk/support/player-audio-ijk/src/main/java/com/quicktvui/support/player/audio/ijk/ESIJKAudioPlayerServiceModule.java +655 -0
  1130. package/rules/.source/sdk/support/player-audio-ijk/src/main/java/com/quicktvui/support/player/audio/utils/Settings.java +28 -0
  1131. package/rules/.source/sdk/support/player-audio-soundpool/src/main/java/com/quicktvui/support/player/audio/soundpool/ESSoundPoolAudioPlayerModule.java +191 -0
  1132. package/rules/.source/sdk/support/player-audio-soundpool/src/main/java/com/quicktvui/support/player/audio/soundpool/Sound.java +52 -0
  1133. package/rules/.source/sdk/support/player-audio-soundpool/src/main/java/com/quicktvui/support/player/audio/soundpool/SoundCache.java +125 -0
  1134. package/rules/.source/sdk/support/player-audio-soundpool/src/main/java/com/quicktvui/support/player/audio/soundpool/SoundPoolManager.java +567 -0
  1135. package/rules/.source/sdk/support/player-ijk/src/main/java/com/quicktvui/support/player/ijk/aspect/IJKAspectRatioMapper.java +78 -0
  1136. package/rules/.source/sdk/support/player-ijk/src/main/java/com/quicktvui/support/player/ijk/component/ADPlayerComponent.java +46 -0
  1137. package/rules/.source/sdk/support/player-ijk/src/main/java/com/quicktvui/support/player/ijk/component/IJKPlayerComponent.java +323 -0
  1138. package/rules/.source/sdk/support/player-ijk/src/main/java/com/quicktvui/support/player/ijk/module/ESPlayerIJKModule.java +96 -0
  1139. package/rules/.source/sdk/support/player-ijk/src/main/java/com/quicktvui/support/player/ijk/module/VideoModule.java +181 -0
  1140. package/rules/.source/sdk/support/player-ijk/src/main/java/com/quicktvui/support/player/ijk/player/AssetDataSource.java +67 -0
  1141. package/rules/.source/sdk/support/player-ijk/src/main/java/com/quicktvui/support/player/ijk/player/FileMediaDataSource.java +56 -0
  1142. package/rules/.source/sdk/support/player-ijk/src/main/java/com/quicktvui/support/player/ijk/player/IRenderView.java +97 -0
  1143. package/rules/.source/sdk/support/player-ijk/src/main/java/com/quicktvui/support/player/ijk/player/IjkLibManager.java +215 -0
  1144. package/rules/.source/sdk/support/player-ijk/src/main/java/com/quicktvui/support/player/ijk/player/IjkMediaOption.java +64 -0
  1145. package/rules/.source/sdk/support/player-ijk/src/main/java/com/quicktvui/support/player/ijk/player/IjkVideoPlayer.java +1487 -0
  1146. package/rules/.source/sdk/support/player-ijk/src/main/java/com/quicktvui/support/player/ijk/player/IjkVideoView.java +1796 -0
  1147. package/rules/.source/sdk/support/player-ijk/src/main/java/com/quicktvui/support/player/ijk/player/MeasureHelper.java +420 -0
  1148. package/rules/.source/sdk/support/player-ijk/src/main/java/com/quicktvui/support/player/ijk/player/MediaPlayerCompat.java +66 -0
  1149. package/rules/.source/sdk/support/player-ijk/src/main/java/com/quicktvui/support/player/ijk/player/RawDataSourceProvider.java +66 -0
  1150. package/rules/.source/sdk/support/player-ijk/src/main/java/com/quicktvui/support/player/ijk/player/SurfaceRenderView.java +308 -0
  1151. package/rules/.source/sdk/support/player-ijk/src/main/java/com/quicktvui/support/player/ijk/player/TextureRenderView.java +364 -0
  1152. package/rules/.source/sdk/support/player-ijk/src/main/java/com/quicktvui/support/player/ijk/service/MediaPlayerService.java +67 -0
  1153. package/rules/.source/sdk/support/player-ijk/src/main/java/com/quicktvui/support/player/ijk/setting/Settings.java +162 -0
  1154. package/rules/.source/sdk/support/player-ijk/src/main/java/com/quicktvui/support/player/ijk/utils/AudioChannelType.java +24 -0
  1155. package/rules/.source/sdk/support/player-ijk/src/main/java/com/quicktvui/support/player/ijk/utils/CommonUtils.java +53 -0
  1156. package/rules/.source/sdk/support/player-ijk/src/main/java/com/quicktvui/support/player/ijk/utils/DeviceUtil.java +98 -0
  1157. package/rules/.source/sdk/support/player-ijk/src/main/java/com/quicktvui/support/player/ijk/utils/DisplayAndDecodeTools.java +166 -0
  1158. package/rules/.source/sdk/support/player-ijk/src/main/java/com/quicktvui/support/player/ijk/utils/FFConcatUtils.java +102 -0
  1159. package/rules/.source/sdk/support/player-ijk/src/main/java/com/quicktvui/support/player/ijk/utils/FormatTools.java +32 -0
  1160. package/rules/.source/sdk/support/player-ijk/src/main/java/com/quicktvui/support/player/ijk/utils/MetadataUtils.java +150 -0
  1161. package/rules/.source/sdk/support/player-ijk/src/main/java/com/quicktvui/support/player/ijk/utils/PlayerThreadTools.java +97 -0
  1162. package/rules/.source/sdk/support/player-ijk/src/main/java/com/quicktvui/support/player/ijk/utils/StorageUtils.java +159 -0
  1163. package/rules/.source/sdk/support/player-ijk/src/main/java/com/quicktvui/support/player/ijk/utils/TimedHelper.java +233 -0
  1164. package/rules/.source/sdk/support/player-manager/src/main/java/com/quicktvui/support/player/manager/Constants.java +6 -0
  1165. package/rules/.source/sdk/support/player-manager/src/main/java/com/quicktvui/support/player/manager/aspect/AspectRatio.java +46 -0
  1166. package/rules/.source/sdk/support/player-manager/src/main/java/com/quicktvui/support/player/manager/aspect/AspectRatioManager.java +105 -0
  1167. package/rules/.source/sdk/support/player-manager/src/main/java/com/quicktvui/support/player/manager/aspect/AspectRatioSettingMapper.java +44 -0
  1168. package/rules/.source/sdk/support/player-manager/src/main/java/com/quicktvui/support/player/manager/base/ESBaseFrameLayout.java +82 -0
  1169. package/rules/.source/sdk/support/player-manager/src/main/java/com/quicktvui/support/player/manager/base/IPlayerRootView.java +10 -0
  1170. package/rules/.source/sdk/support/player-manager/src/main/java/com/quicktvui/support/player/manager/base/PlayerBaseView.java +750 -0
  1171. package/rules/.source/sdk/support/player-manager/src/main/java/com/quicktvui/support/player/manager/callback/CallbackNotifier.java +277 -0
  1172. package/rules/.source/sdk/support/player-manager/src/main/java/com/quicktvui/support/player/manager/component/PlayerBaseComponent.java +1150 -0
  1173. package/rules/.source/sdk/support/player-manager/src/main/java/com/quicktvui/support/player/manager/decode/Decode.java +45 -0
  1174. package/rules/.source/sdk/support/player-manager/src/main/java/com/quicktvui/support/player/manager/definition/Definition.java +48 -0
  1175. package/rules/.source/sdk/support/player-manager/src/main/java/com/quicktvui/support/player/manager/log/PLog.java +497 -0
  1176. package/rules/.source/sdk/support/player-manager/src/main/java/com/quicktvui/support/player/manager/log/PLogDefaultLoggingDelegate.java +149 -0
  1177. package/rules/.source/sdk/support/player-manager/src/main/java/com/quicktvui/support/player/manager/log/PLoggingDelegate.java +161 -0
  1178. package/rules/.source/sdk/support/player-manager/src/main/java/com/quicktvui/support/player/manager/log/logging.pro +5 -0
  1179. package/rules/.source/sdk/support/player-manager/src/main/java/com/quicktvui/support/player/manager/log/package-info.java +11 -0
  1180. package/rules/.source/sdk/support/player-manager/src/main/java/com/quicktvui/support/player/manager/manager/PlayerConfiguration.java +494 -0
  1181. package/rules/.source/sdk/support/player-manager/src/main/java/com/quicktvui/support/player/manager/model/ADPositionType.java +32 -0
  1182. package/rules/.source/sdk/support/player-manager/src/main/java/com/quicktvui/support/player/manager/model/IPlayerDimension.java +25 -0
  1183. package/rules/.source/sdk/support/player-manager/src/main/java/com/quicktvui/support/player/manager/model/IVideoUrl.java +51 -0
  1184. package/rules/.source/sdk/support/player-manager/src/main/java/com/quicktvui/support/player/manager/model/PlayerDimensionModel.java +166 -0
  1185. package/rules/.source/sdk/support/player-manager/src/main/java/com/quicktvui/support/player/manager/model/VideoUrlModel.java +113 -0
  1186. package/rules/.source/sdk/support/player-manager/src/main/java/com/quicktvui/support/player/manager/player/IPlayer.java +308 -0
  1187. package/rules/.source/sdk/support/player-manager/src/main/java/com/quicktvui/support/player/manager/player/IPlayerCallback.java +127 -0
  1188. package/rules/.source/sdk/support/player-manager/src/main/java/com/quicktvui/support/player/manager/player/PlayerConstant.java +30 -0
  1189. package/rules/.source/sdk/support/player-manager/src/main/java/com/quicktvui/support/player/manager/player/PlayerError.java +85 -0
  1190. package/rules/.source/sdk/support/player-manager/src/main/java/com/quicktvui/support/player/manager/player/PlayerInfo.java +70 -0
  1191. package/rules/.source/sdk/support/player-manager/src/main/java/com/quicktvui/support/player/manager/player/PlayerStatus.java +56 -0
  1192. package/rules/.source/sdk/support/player-manager/src/main/java/com/quicktvui/support/player/manager/player/PlayerStatusEnum.java +54 -0
  1193. package/rules/.source/sdk/support/player-manager/src/main/java/com/quicktvui/support/player/manager/player/PlayerStatusParams.java +21 -0
  1194. package/rules/.source/sdk/support/player-manager/src/main/java/com/quicktvui/support/player/manager/player/PlayerType.java +15 -0
  1195. package/rules/.source/sdk/support/player-manager/src/main/java/com/quicktvui/support/player/manager/setting/PlayerSetting.java +146 -0
  1196. package/rules/.source/sdk/support/player-manager/src/main/java/com/quicktvui/support/player/manager/utils/Preconditions.java +442 -0
  1197. package/rules/.source/sdk/support/player-manager/src/main/java/com/quicktvui/support/player/manager/utils/ScreenUtils.java +121 -0
  1198. package/rules/.source/sdk/support/player-manager/src/main/java/com/quicktvui/support/player/manager/volume/IPlayerVolume.java +12 -0
  1199. package/rules/.source/sdk/support/player-manager/src/main/java/com/quicktvui/support/player/manager/volume/PlayerVolumeModel.java +69 -0
  1200. package/rules/.source/sdk/support/rippleview/src/main/java/com/quicktvui/support/rippleview/ESRippleViewComponent.java +40 -0
  1201. package/rules/.source/sdk/support/rippleview/src/main/java/com/quicktvui/support/rippleview/RippleView.java +208 -0
  1202. package/rules/.source/sdk/support/socket-io/src/main/java/com/quicktvui/support/socketio/IEsSocketIOModule.java +24 -0
  1203. package/rules/.source/sdk/support/socket-io/src/main/java/com/quicktvui/support/socketio/SocketIOClientImpl.java +165 -0
  1204. package/rules/.source/sdk/support/socket-io/src/main/java/com/quicktvui/support/socketio/SocketIoModule.java +161 -0
  1205. package/rules/.source/sdk/support/subtitle-converter/src/main/java/com/quicktvui/support/subtitle/converter/ESSubtitleModule.java +567 -0
  1206. package/rules/.source/sdk/support/subtitle-converter/src/main/java/com/quicktvui/support/subtitle/converter/FileUtils.java +1259 -0
  1207. package/rules/.source/sdk/support/subtitle-converter/src/main/java/com/quicktvui/support/subtitle/converter/IOClass.java +134 -0
  1208. package/rules/.source/sdk/support/subtitle-converter/src/main/java/com/quicktvui/support/subtitle/converter/ISubtitleControl.java +64 -0
  1209. package/rules/.source/sdk/support/subtitle-converter/src/main/java/com/quicktvui/support/subtitle/converter/SubtitleClickListener.java +16 -0
  1210. package/rules/.source/sdk/support/subtitle-converter/src/main/java/com/quicktvui/support/subtitle/converter/subtitleFile/Caption.java +27 -0
  1211. package/rules/.source/sdk/support/subtitle-converter/src/main/java/com/quicktvui/support/subtitle/converter/subtitleFile/FatalParsingException.java +25 -0
  1212. package/rules/.source/sdk/support/subtitle-converter/src/main/java/com/quicktvui/support/subtitle/converter/subtitleFile/FormatASS.java +613 -0
  1213. package/rules/.source/sdk/support/subtitle-converter/src/main/java/com/quicktvui/support/subtitle/converter/subtitleFile/FormatSCC.java +1063 -0
  1214. package/rules/.source/sdk/support/subtitle-converter/src/main/java/com/quicktvui/support/subtitle/converter/subtitleFile/FormatSRT.java +209 -0
  1215. package/rules/.source/sdk/support/subtitle-converter/src/main/java/com/quicktvui/support/subtitle/converter/subtitleFile/FormatSTL.java +654 -0
  1216. package/rules/.source/sdk/support/subtitle-converter/src/main/java/com/quicktvui/support/subtitle/converter/subtitleFile/FormatTTML.java +539 -0
  1217. package/rules/.source/sdk/support/subtitle-converter/src/main/java/com/quicktvui/support/subtitle/converter/subtitleFile/FormatVTT.java +227 -0
  1218. package/rules/.source/sdk/support/subtitle-converter/src/main/java/com/quicktvui/support/subtitle/converter/subtitleFile/Region.java +5 -0
  1219. package/rules/.source/sdk/support/subtitle-converter/src/main/java/com/quicktvui/support/subtitle/converter/subtitleFile/Style.java +161 -0
  1220. package/rules/.source/sdk/support/subtitle-converter/src/main/java/com/quicktvui/support/subtitle/converter/subtitleFile/SubtitleResult.java +16 -0
  1221. package/rules/.source/sdk/support/subtitle-converter/src/main/java/com/quicktvui/support/subtitle/converter/subtitleFile/SubtitleText.java +42 -0
  1222. package/rules/.source/sdk/support/subtitle-converter/src/main/java/com/quicktvui/support/subtitle/converter/subtitleFile/Time.java +209 -0
  1223. package/rules/.source/sdk/support/subtitle-converter/src/main/java/com/quicktvui/support/subtitle/converter/subtitleFile/TimedTextFileFormat.java +65 -0
  1224. package/rules/.source/sdk/support/subtitle-converter/src/main/java/com/quicktvui/support/subtitle/converter/subtitleFile/TimedTextObject.java +161 -0
  1225. package/rules/.source/sdk/support/subtitle-converter/src/main/java/com/quicktvui/support/subtitle/converter/ui/ESSubtitleView.java +152 -0
  1226. package/rules/.source/sdk/support/subtitle-converter/src/main/java/com/quicktvui/support/subtitle/converter/ui/ESSubtitleViewComponent.java +189 -0
  1227. package/rules/.source/sdk/support/subtitle-converter/src/main/java/com/quicktvui/support/subtitle/converter/ui/ESSubtitleViewController.java +172 -0
  1228. package/rules/.source/sdk/support/subtitle-converter/src/main/java/com/quicktvui/support/subtitle/converter/ui/StrokeTextView.java +116 -0
  1229. package/rules/.source/sdk/support/subtitle-converter/src/main/java/com/quicktvui/support/subtitle/converter/ui/SubtitleTextView.java +70 -0
  1230. package/rules/.source/sdk/support/subtitle-converter/src/main/java/com/quicktvui/support/subtitle/converter/ui/SubtitleView.java +299 -0
  1231. package/rules/.source/sdk/support/subtitle-converter/src/main/java/com/quicktvui/support/subtitle/converter/universalchardet/CharsetListener.java +51 -0
  1232. package/rules/.source/sdk/support/subtitle-converter/src/main/java/com/quicktvui/support/subtitle/converter/universalchardet/Constants.java +74 -0
  1233. package/rules/.source/sdk/support/subtitle-converter/src/main/java/com/quicktvui/support/subtitle/converter/universalchardet/EncodingDetectorInputStream.java +118 -0
  1234. package/rules/.source/sdk/support/subtitle-converter/src/main/java/com/quicktvui/support/subtitle/converter/universalchardet/EncodingDetectorOutputStream.java +82 -0
  1235. package/rules/.source/sdk/support/subtitle-converter/src/main/java/com/quicktvui/support/subtitle/converter/universalchardet/FileCharsetConverter.java +30 -0
  1236. package/rules/.source/sdk/support/subtitle-converter/src/main/java/com/quicktvui/support/subtitle/converter/universalchardet/ReaderFactory.java +144 -0
  1237. package/rules/.source/sdk/support/subtitle-converter/src/main/java/com/quicktvui/support/subtitle/converter/universalchardet/UnicodeBOMInputStream.java +297 -0
  1238. package/rules/.source/sdk/support/subtitle-converter/src/main/java/com/quicktvui/support/subtitle/converter/universalchardet/UniversalDetector.java +394 -0
  1239. package/rules/.source/sdk/support/subtitle-converter/src/main/java/com/quicktvui/support/subtitle/converter/universalchardet/prober/Big5Prober.java +137 -0
  1240. package/rules/.source/sdk/support/subtitle-converter/src/main/java/com/quicktvui/support/subtitle/converter/universalchardet/prober/CharsetProber.java +181 -0
  1241. package/rules/.source/sdk/support/subtitle-converter/src/main/java/com/quicktvui/support/subtitle/converter/universalchardet/prober/EUCJPProber.java +145 -0
  1242. package/rules/.source/sdk/support/subtitle-converter/src/main/java/com/quicktvui/support/subtitle/converter/universalchardet/prober/EUCKRProber.java +135 -0
  1243. package/rules/.source/sdk/support/subtitle-converter/src/main/java/com/quicktvui/support/subtitle/converter/universalchardet/prober/EUCTWProber.java +136 -0
  1244. package/rules/.source/sdk/support/subtitle-converter/src/main/java/com/quicktvui/support/subtitle/converter/universalchardet/prober/EscCharsetProber.java +136 -0
  1245. package/rules/.source/sdk/support/subtitle-converter/src/main/java/com/quicktvui/support/subtitle/converter/universalchardet/prober/GB18030Prober.java +135 -0
  1246. package/rules/.source/sdk/support/subtitle-converter/src/main/java/com/quicktvui/support/subtitle/converter/universalchardet/prober/HebrewProber.java +212 -0
  1247. package/rules/.source/sdk/support/subtitle-converter/src/main/java/com/quicktvui/support/subtitle/converter/universalchardet/prober/Latin1Prober.java +201 -0
  1248. package/rules/.source/sdk/support/subtitle-converter/src/main/java/com/quicktvui/support/subtitle/converter/universalchardet/prober/MBCSGroupProber.java +173 -0
  1249. package/rules/.source/sdk/support/subtitle-converter/src/main/java/com/quicktvui/support/subtitle/converter/universalchardet/prober/SBCSGroupProber.java +185 -0
  1250. package/rules/.source/sdk/support/subtitle-converter/src/main/java/com/quicktvui/support/subtitle/converter/universalchardet/prober/SJISProber.java +144 -0
  1251. package/rules/.source/sdk/support/subtitle-converter/src/main/java/com/quicktvui/support/subtitle/converter/universalchardet/prober/SingleByteCharsetProber.java +187 -0
  1252. package/rules/.source/sdk/support/subtitle-converter/src/main/java/com/quicktvui/support/subtitle/converter/universalchardet/prober/UTF8Prober.java +133 -0
  1253. package/rules/.source/sdk/support/subtitle-converter/src/main/java/com/quicktvui/support/subtitle/converter/universalchardet/prober/contextanalysis/EUCJPContextAnalysis.java +97 -0
  1254. package/rules/.source/sdk/support/subtitle-converter/src/main/java/com/quicktvui/support/subtitle/converter/universalchardet/prober/contextanalysis/JapaneseContextAnalysis.java +255 -0
  1255. package/rules/.source/sdk/support/subtitle-converter/src/main/java/com/quicktvui/support/subtitle/converter/universalchardet/prober/contextanalysis/SJISContextAnalysis.java +93 -0
  1256. package/rules/.source/sdk/support/subtitle-converter/src/main/java/com/quicktvui/support/subtitle/converter/universalchardet/prober/distributionanalysis/Big5DistributionAnalysis.java +962 -0
  1257. package/rules/.source/sdk/support/subtitle-converter/src/main/java/com/quicktvui/support/subtitle/converter/universalchardet/prober/distributionanalysis/CharDistributionAnalysis.java +116 -0
  1258. package/rules/.source/sdk/support/subtitle-converter/src/main/java/com/quicktvui/support/subtitle/converter/universalchardet/prober/distributionanalysis/EUCJPDistributionAnalysis.java +67 -0
  1259. package/rules/.source/sdk/support/subtitle-converter/src/main/java/com/quicktvui/support/subtitle/converter/universalchardet/prober/distributionanalysis/EUCKRDistributionAnalysis.java +630 -0
  1260. package/rules/.source/sdk/support/subtitle-converter/src/main/java/com/quicktvui/support/subtitle/converter/universalchardet/prober/distributionanalysis/EUCTWDistributionAnalysis.java +459 -0
  1261. package/rules/.source/sdk/support/subtitle-converter/src/main/java/com/quicktvui/support/subtitle/converter/universalchardet/prober/distributionanalysis/GB2312DistributionAnalysis.java +508 -0
  1262. package/rules/.source/sdk/support/subtitle-converter/src/main/java/com/quicktvui/support/subtitle/converter/universalchardet/prober/distributionanalysis/JISDistributionAnalysis.java +585 -0
  1263. package/rules/.source/sdk/support/subtitle-converter/src/main/java/com/quicktvui/support/subtitle/converter/universalchardet/prober/distributionanalysis/SJISDistributionAnalysis.java +79 -0
  1264. package/rules/.source/sdk/support/subtitle-converter/src/main/java/com/quicktvui/support/subtitle/converter/universalchardet/prober/sequence/BulgarianModel.java +193 -0
  1265. package/rules/.source/sdk/support/subtitle-converter/src/main/java/com/quicktvui/support/subtitle/converter/universalchardet/prober/sequence/CyrillicModel.java +194 -0
  1266. package/rules/.source/sdk/support/subtitle-converter/src/main/java/com/quicktvui/support/subtitle/converter/universalchardet/prober/sequence/GreekModel.java +194 -0
  1267. package/rules/.source/sdk/support/subtitle-converter/src/main/java/com/quicktvui/support/subtitle/converter/universalchardet/prober/sequence/HebrewModel.java +217 -0
  1268. package/rules/.source/sdk/support/subtitle-converter/src/main/java/com/quicktvui/support/subtitle/converter/universalchardet/prober/sequence/Ibm855Model.java +73 -0
  1269. package/rules/.source/sdk/support/subtitle-converter/src/main/java/com/quicktvui/support/subtitle/converter/universalchardet/prober/sequence/Ibm866Model.java +73 -0
  1270. package/rules/.source/sdk/support/subtitle-converter/src/main/java/com/quicktvui/support/subtitle/converter/universalchardet/prober/sequence/Koi8rModel.java +73 -0
  1271. package/rules/.source/sdk/support/subtitle-converter/src/main/java/com/quicktvui/support/subtitle/converter/universalchardet/prober/sequence/Latin5BulgarianModel.java +72 -0
  1272. package/rules/.source/sdk/support/subtitle-converter/src/main/java/com/quicktvui/support/subtitle/converter/universalchardet/prober/sequence/Latin5Model.java +73 -0
  1273. package/rules/.source/sdk/support/subtitle-converter/src/main/java/com/quicktvui/support/subtitle/converter/universalchardet/prober/sequence/Latin7Model.java +73 -0
  1274. package/rules/.source/sdk/support/subtitle-converter/src/main/java/com/quicktvui/support/subtitle/converter/universalchardet/prober/sequence/MacCyrillicModel.java +73 -0
  1275. package/rules/.source/sdk/support/subtitle-converter/src/main/java/com/quicktvui/support/subtitle/converter/universalchardet/prober/sequence/SequenceModel.java +95 -0
  1276. package/rules/.source/sdk/support/subtitle-converter/src/main/java/com/quicktvui/support/subtitle/converter/universalchardet/prober/sequence/ThaiModel.java +239 -0
  1277. package/rules/.source/sdk/support/subtitle-converter/src/main/java/com/quicktvui/support/subtitle/converter/universalchardet/prober/sequence/Win1251BulgarianModel.java +73 -0
  1278. package/rules/.source/sdk/support/subtitle-converter/src/main/java/com/quicktvui/support/subtitle/converter/universalchardet/prober/sequence/Win1251Model.java +72 -0
  1279. package/rules/.source/sdk/support/subtitle-converter/src/main/java/com/quicktvui/support/subtitle/converter/universalchardet/prober/sequence/Win1253Model.java +72 -0
  1280. package/rules/.source/sdk/support/subtitle-converter/src/main/java/com/quicktvui/support/subtitle/converter/universalchardet/prober/statemachine/Big5SMModel.java +111 -0
  1281. package/rules/.source/sdk/support/subtitle-converter/src/main/java/com/quicktvui/support/subtitle/converter/universalchardet/prober/statemachine/CodingStateMachine.java +75 -0
  1282. package/rules/.source/sdk/support/subtitle-converter/src/main/java/com/quicktvui/support/subtitle/converter/universalchardet/prober/statemachine/EUCJPSMModel.java +115 -0
  1283. package/rules/.source/sdk/support/subtitle-converter/src/main/java/com/quicktvui/support/subtitle/converter/universalchardet/prober/statemachine/EUCKRSMModel.java +111 -0
  1284. package/rules/.source/sdk/support/subtitle-converter/src/main/java/com/quicktvui/support/subtitle/converter/universalchardet/prober/statemachine/EUCTWSMModel.java +115 -0
  1285. package/rules/.source/sdk/support/subtitle-converter/src/main/java/com/quicktvui/support/subtitle/converter/universalchardet/prober/statemachine/GB18030SMModel.java +114 -0
  1286. package/rules/.source/sdk/support/subtitle-converter/src/main/java/com/quicktvui/support/subtitle/converter/universalchardet/prober/statemachine/HZSMModel.java +113 -0
  1287. package/rules/.source/sdk/support/subtitle-converter/src/main/java/com/quicktvui/support/subtitle/converter/universalchardet/prober/statemachine/ISO2022CNSMModel.java +116 -0
  1288. package/rules/.source/sdk/support/subtitle-converter/src/main/java/com/quicktvui/support/subtitle/converter/universalchardet/prober/statemachine/ISO2022JPSMModel.java +118 -0
  1289. package/rules/.source/sdk/support/subtitle-converter/src/main/java/com/quicktvui/support/subtitle/converter/universalchardet/prober/statemachine/ISO2022KRSMModel.java +117 -0
  1290. package/rules/.source/sdk/support/subtitle-converter/src/main/java/com/quicktvui/support/subtitle/converter/universalchardet/prober/statemachine/PkgInt.java +117 -0
  1291. package/rules/.source/sdk/support/subtitle-converter/src/main/java/com/quicktvui/support/subtitle/converter/universalchardet/prober/statemachine/SJISSMModel.java +114 -0
  1292. package/rules/.source/sdk/support/subtitle-converter/src/main/java/com/quicktvui/support/subtitle/converter/universalchardet/prober/statemachine/SMModel.java +93 -0
  1293. package/rules/.source/sdk/support/subtitle-converter/src/main/java/com/quicktvui/support/subtitle/converter/universalchardet/prober/statemachine/UCS2BESMModel.java +120 -0
  1294. package/rules/.source/sdk/support/subtitle-converter/src/main/java/com/quicktvui/support/subtitle/converter/universalchardet/prober/statemachine/UTF8SMModel.java +141 -0
  1295. package/rules/.source/sdk/support/swiper-view/src/main/java/com/quicktvui/support/swiper/ESSwiperSlideViewComponent.java +46 -0
  1296. package/rules/.source/sdk/support/swiper-view/src/main/java/com/quicktvui/support/swiper/SwiperView.java +48 -0
  1297. package/rules/.source/sdk/support/ui/icon-view/src/main/java/quicktvui/support/ui/icon/ESAppIconView.java +42 -0
  1298. package/rules/.source/sdk/support/ui/icon-view/src/main/java/quicktvui/support/ui/icon/ESAppIconViewComponent.java +112 -0
  1299. package/rules/.source/sdk/support/ui/image/src/main/java/com/quicktvui/support/ui/image/canvas/ESCanvasParamsUtils.java +117 -0
  1300. package/rules/.source/sdk/support/ui/image/src/main/java/com/quicktvui/support/ui/image/canvas/ESPaint.java +60 -0
  1301. package/rules/.source/sdk/support/ui/image/src/main/java/com/quicktvui/support/ui/image/canvas/ESPaintAction.java +7 -0
  1302. package/rules/.source/sdk/support/ui/image/src/main/java/com/quicktvui/support/ui/image/canvas/ESPath.java +109 -0
  1303. package/rules/.source/sdk/support/ui/image/src/main/java/com/quicktvui/support/ui/image/canvas/ESPathAction.java +10 -0
  1304. package/rules/.source/sdk/support/ui/image/src/main/java/com/quicktvui/support/ui/image/canvas/PorterDuffUtils.java +49 -0
  1305. package/rules/.source/sdk/support/ui/image/src/main/java/com/quicktvui/support/ui/image/crop/ESCroppedImageView.java +285 -0
  1306. package/rules/.source/sdk/support/ui/image/src/main/java/com/quicktvui/support/ui/image/crop/ESCroppedImageViewComponent.java +102 -0
  1307. package/rules/.source/sdk/support/ui/playmarkview/src/main/java/com/quicktvui/support/ui/playmarkview/ESPlayMarkViewComponent.java +104 -0
  1308. package/rules/.source/sdk/support/ui/playmarkview/src/main/java/com/quicktvui/support/ui/playmarkview/PlayMarkView.java +319 -0
  1309. package/rules/.source/sdk/support/ui/src/main/java/com/quicktvui/support/ui/DensityUtils.java +57 -0
  1310. package/rules/.source/sdk/support/ui/src/main/java/com/quicktvui/support/ui/ScreenAdapt.java +33 -0
  1311. package/rules/.source/sdk/support/ui/src/main/java/com/quicktvui/support/ui/ScreenUtils.java +112 -0
  1312. package/rules/.source/sdk/support/ui/src/main/java/com/quicktvui/support/ui/ViewUtil.java +17 -0
  1313. package/rules/.source/sdk/support/ui/src/main/java/com/quicktvui/support/ui/item/HippyBaseFrameLayout.java +97 -0
  1314. package/rules/.source/sdk/support/ui/src/main/java/com/quicktvui/support/ui/item/HomeItemView.java +1564 -0
  1315. package/rules/.source/sdk/support/ui/src/main/java/com/quicktvui/support/ui/item/ItemFrame.java +188 -0
  1316. package/rules/.source/sdk/support/ui/src/main/java/com/quicktvui/support/ui/item/ItemFrameComponent.java +58 -0
  1317. package/rules/.source/sdk/support/ui/src/main/java/com/quicktvui/support/ui/item/ItemViewComponent.java +157 -0
  1318. package/rules/.source/sdk/support/ui/src/main/java/com/quicktvui/support/ui/item/RippleView.java +257 -0
  1319. package/rules/.source/sdk/support/ui/src/main/java/com/quicktvui/support/ui/item/RippleViewComponent.java +91 -0
  1320. package/rules/.source/sdk/support/ui/src/main/java/com/quicktvui/support/ui/item/TitleFocusComponent.java +42 -0
  1321. package/rules/.source/sdk/support/ui/src/main/java/com/quicktvui/support/ui/item/TitleNormalComponent.java +46 -0
  1322. package/rules/.source/sdk/support/ui/src/main/java/com/quicktvui/support/ui/item/TitleView.java +522 -0
  1323. package/rules/.source/sdk/support/ui/src/main/java/com/quicktvui/support/ui/item/TitleViewFocus.java +370 -0
  1324. package/rules/.source/sdk/support/ui/src/main/java/com/quicktvui/support/ui/largelist/AdvanceCenterScroller.java +132 -0
  1325. package/rules/.source/sdk/support/ui/src/main/java/com/quicktvui/support/ui/largelist/EasyListView.java +420 -0
  1326. package/rules/.source/sdk/support/ui/src/main/java/com/quicktvui/support/ui/largelist/EventSender.java +89 -0
  1327. package/rules/.source/sdk/support/ui/src/main/java/com/quicktvui/support/ui/largelist/FocusWatcher.java +66 -0
  1328. package/rules/.source/sdk/support/ui/src/main/java/com/quicktvui/support/ui/largelist/GroupItem.java +40 -0
  1329. package/rules/.source/sdk/support/ui/src/main/java/com/quicktvui/support/ui/largelist/GroupItemPresenter.kt +90 -0
  1330. package/rules/.source/sdk/support/ui/src/main/java/com/quicktvui/support/ui/largelist/ItemView.java +218 -0
  1331. package/rules/.source/sdk/support/ui/src/main/java/com/quicktvui/support/ui/largelist/LargeListComponent.java +115 -0
  1332. package/rules/.source/sdk/support/ui/src/main/java/com/quicktvui/support/ui/largelist/LargeListViewGroup.java +1383 -0
  1333. package/rules/.source/sdk/support/ui/src/main/java/com/quicktvui/support/ui/largelist/LazyDataItem.java +10 -0
  1334. package/rules/.source/sdk/support/ui/src/main/java/com/quicktvui/support/ui/largelist/LoadingItem.java +8 -0
  1335. package/rules/.source/sdk/support/ui/src/main/java/com/quicktvui/support/ui/largelist/LoadingPresenter.java +59 -0
  1336. package/rules/.source/sdk/support/ui/src/main/java/com/quicktvui/support/ui/largelist/MyTemplateHelper.kt +35 -0
  1337. package/rules/.source/sdk/support/ui/src/main/java/com/quicktvui/support/ui/largelist/NumberEpisodeItemPresenter.java +160 -0
  1338. package/rules/.source/sdk/support/ui/src/main/java/com/quicktvui/support/ui/largelist/PendingItemView.java +7 -0
  1339. package/rules/.source/sdk/support/ui/src/main/java/com/quicktvui/support/ui/largelist/StandItemViewPresenter.java +108 -0
  1340. package/rules/.source/sdk/support/ui/src/main/java/com/quicktvui/support/ui/largelist/Template.java +44 -0
  1341. package/rules/.source/sdk/support/ui/src/main/java/com/quicktvui/support/ui/largelist/TemplateBean.java +6 -0
  1342. package/rules/.source/sdk/support/ui/src/main/java/com/quicktvui/support/ui/largelist/TemplateHelper.kt +128 -0
  1343. package/rules/.source/sdk/support/ui/src/main/java/com/quicktvui/support/ui/largelist/TemplateItem.kt +83 -0
  1344. package/rules/.source/sdk/support/ui/src/main/java/com/quicktvui/support/ui/largelist/TemplateItemPresenterSelector.java +36 -0
  1345. package/rules/.source/sdk/support/ui/src/main/java/com/quicktvui/support/ui/largelist/TemplatePresenter.java +13 -0
  1346. package/rules/.source/sdk/support/ui/src/main/java/com/quicktvui/support/ui/largelist/TemplateUtil.java +339 -0
  1347. package/rules/.source/sdk/support/ui/src/main/java/com/quicktvui/support/ui/largelist/TextEpisodeItemHostView.java +128 -0
  1348. package/rules/.source/sdk/support/ui/src/main/java/com/quicktvui/support/ui/selectseries/ESSelectSeriesController.java +156 -0
  1349. package/rules/.source/sdk/support/ui/src/main/java/com/quicktvui/support/ui/selectseries/EventSender.java +89 -0
  1350. package/rules/.source/sdk/support/ui/src/main/java/com/quicktvui/support/ui/selectseries/SelectSeriesViewGroup.java +1024 -0
  1351. package/rules/.source/sdk/support/ui/src/main/java/com/quicktvui/support/ui/selectseries/bean/LazyDataItem.java +10 -0
  1352. package/rules/.source/sdk/support/ui/src/main/java/com/quicktvui/support/ui/selectseries/bean/MyData.java +33 -0
  1353. package/rules/.source/sdk/support/ui/src/main/java/com/quicktvui/support/ui/selectseries/bean/PageData.java +5 -0
  1354. package/rules/.source/sdk/support/ui/src/main/java/com/quicktvui/support/ui/selectseries/bean/Param.java +192 -0
  1355. package/rules/.source/sdk/support/ui/src/main/java/com/quicktvui/support/ui/selectseries/bean/TemplateItem.kt +31 -0
  1356. package/rules/.source/sdk/support/ui/src/main/java/com/quicktvui/support/ui/selectseries/components/GroupListView.java +49 -0
  1357. package/rules/.source/sdk/support/ui/src/main/java/com/quicktvui/support/ui/selectseries/components/LargeListView.java +402 -0
  1358. package/rules/.source/sdk/support/ui/src/main/java/com/quicktvui/support/ui/selectseries/presenters/CustomItemViewPresenter.java +133 -0
  1359. package/rules/.source/sdk/support/ui/src/main/java/com/quicktvui/support/ui/selectseries/presenters/GroupItemPresenter.kt +123 -0
  1360. package/rules/.source/sdk/support/ui/src/main/java/com/quicktvui/support/ui/selectseries/utils/MyCustomHelper.java +468 -0
  1361. package/rules/.source/sdk/support/ui/src/main/java/com/quicktvui/support/ui/selectseries/utils/MyTemplateHelper.kt +18 -0
  1362. package/rules/.source/sdk/support/ui/src/main/java/com/quicktvui/support/ui/selectseries/utils/TemplateHelper.kt +88 -0
  1363. package/rules/.source/sdk/support/ui/src/main/java/com/quicktvui/support/ui/selectseries/utils/TemplateUtil.java +415 -0
  1364. package/rules/.source/sdk/support/ui/src/main/java/com/quicktvui/support/ui/swiftlist/SwiftListComponent.java +104 -0
  1365. package/rules/.source/sdk/support/ui/src/main/java/com/quicktvui/support/ui/swiftlist/SwiftListView.java +563 -0
  1366. package/rules/.source/sdk/support/upload/src/main/java/quicktvui/support/upload/ESUploadModule.java +307 -0
  1367. package/rules/.source/sdk/support/upload/src/main/java/quicktvui/support/upload/UploadManager.java +136 -0
  1368. package/rules/.source/sdk/support/websocket/src/main/java/quicktvui/support/websocket/IEsWebSocketModule.java +24 -0
  1369. package/rules/.source/sdk/support/websocket/src/main/java/quicktvui/support/websocket/WebSocketClient.java +63 -0
  1370. package/rules/.source/sdk/support/websocket/src/main/java/quicktvui/support/websocket/WebSocketImpl.java +55 -0
  1371. package/rules/.source/sdk/support/websocket/src/main/java/quicktvui/support/websocket/WebSocketModule.java +114 -0
  1372. package/rules/.source/sdk/support/webview/src/main/java/com/quicktvui/support/webview/ESWebView.java +235 -0
  1373. package/rules/.source/sdk/support/webview/src/main/java/com/quicktvui/support/webview/ESWebViewComponent.java +1181 -0
  1374. package/rules/.source/sdk/support/x5webview/src/main/java/com/quicktvui/support/x5webview/ESX5WebView.java +352 -0
  1375. package/rules/.source/sdk/support/x5webview/src/main/java/com/quicktvui/support/x5webview/ESX5WebViewComponent.java +1190 -0
  1376. package/rules/.windsurfrules +28 -4
  1377. package/rules/AGENTS.md +28 -4
  1378. package/rules/CLAUDE.md +28 -3
  1379. package/rules/GEMINI.md +26 -3
@@ -0,0 +1,1525 @@
1
+ /*
2
+ * MP3 quantization
3
+ *
4
+ * Copyright (c) 1999-2000 Mark Taylor
5
+ * Copyright (c) 2000-2012 Robert Hegemann
6
+ *
7
+ * This library is free software; you can redistribute it and/or
8
+ * modify it under the terms of the GNU Library General Public
9
+ * License as published by the Free Software Foundation; either
10
+ * version 2 of the License, or (at your option) any later version.
11
+ *
12
+ * This library is distributed in the hope that it will be useful,
13
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
14
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15
+ * Library General Public License for more details.
16
+ *
17
+ * You should have received a copy of the GNU Library General Public
18
+ * License along with this library; if not, write to the
19
+ * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
20
+ * Boston, MA 02111-1307, USA.
21
+ */
22
+
23
+ /* $Id: vbrquantize.c,v 1.142 2012/02/07 13:36:35 robert Exp $ */
24
+
25
+ #ifdef HAVE_CONFIG_H
26
+ # include <config.h>
27
+ #endif
28
+
29
+
30
+ #include "lame.h"
31
+ #include "machine.h"
32
+ #include "encoder.h"
33
+ #include "util.h"
34
+ #include "vbrquantize.h"
35
+ #include "quantize_pvt.h"
36
+
37
+
38
+ struct algo_s;
39
+ typedef struct algo_s algo_t;
40
+
41
+ typedef void (*alloc_sf_f)(const algo_t *, const int *, const int *, int);
42
+
43
+ typedef uint8_t (*find_sf_f)(const FLOAT *, const FLOAT *, FLOAT, unsigned int, uint8_t);
44
+
45
+ struct algo_s {
46
+ alloc_sf_f alloc;
47
+ find_sf_f find;
48
+ const FLOAT *xr34orig;
49
+ lame_internal_flags *gfc;
50
+ gr_info *cod_info;
51
+ int mingain_l;
52
+ int mingain_s[3];
53
+ };
54
+
55
+
56
+
57
+ /* Remarks on optimizing compilers:
58
+ *
59
+ * the MSVC compiler may get into aliasing problems when accessing
60
+ * memory through the fi_union. declaring it volatile does the trick here
61
+ *
62
+ * the calc_sfb_noise_* functions are not inlined because the intel compiler
63
+ * optimized executeables won't work as expected anymore
64
+ */
65
+
66
+ #ifdef _MSC_VER
67
+ # if _MSC_VER < 1400
68
+ # define VOLATILE volatile
69
+ # else
70
+ # define VOLATILE
71
+ # endif
72
+ #else
73
+ # define VOLATILE
74
+ #endif
75
+
76
+ typedef VOLATILE union {
77
+ float f;
78
+ int i;
79
+ } fi_union;
80
+
81
+
82
+ #ifdef TAKEHIRO_IEEE754_HACK
83
+ #define DOUBLEX double
84
+ #else
85
+ #define DOUBLEX FLOAT
86
+ #endif
87
+
88
+ #define MAGIC_FLOAT_def (65536*(128))
89
+ #define MAGIC_INT_def 0x4b000000
90
+
91
+ #ifdef TAKEHIRO_IEEE754_HACK
92
+ #else
93
+ /*********************************************************************
94
+ * XRPOW_FTOI is a macro to convert floats to ints.
95
+ * if XRPOW_FTOI(x) = nearest_int(x), then QUANTFAC(x)=adj43asm[x]
96
+ * ROUNDFAC= -0.0946
97
+ *
98
+ * if XRPOW_FTOI(x) = floor(x), then QUANTFAC(x)=asj43[x]
99
+ * ROUNDFAC=0.4054
100
+ *********************************************************************/
101
+ # define QUANTFAC(rx) adj43[rx]
102
+ # define ROUNDFAC_def 0.4054f
103
+ # define XRPOW_FTOI(src, dest) ((dest) = (int)(src))
104
+ #endif
105
+
106
+ static int const MAGIC_INT = MAGIC_INT_def;
107
+ #ifndef TAKEHIRO_IEEE754_HACK
108
+ static DOUBLEX const ROUNDFAC = ROUNDFAC_def;
109
+ #endif
110
+ static DOUBLEX const MAGIC_FLOAT = MAGIC_FLOAT_def;
111
+
112
+
113
+ inline static float
114
+ vec_max_c(const float *xr34, unsigned int bw) {
115
+ float xfsf = 0;
116
+ unsigned int i = bw >> 2u;
117
+ unsigned int const remaining = (bw & 0x03u);
118
+
119
+ while (i-- > 0) {
120
+ if (xfsf < xr34[0]) {
121
+ xfsf = xr34[0];
122
+ }
123
+ if (xfsf < xr34[1]) {
124
+ xfsf = xr34[1];
125
+ }
126
+ if (xfsf < xr34[2]) {
127
+ xfsf = xr34[2];
128
+ }
129
+ if (xfsf < xr34[3]) {
130
+ xfsf = xr34[3];
131
+ }
132
+ xr34 += 4;
133
+ }
134
+ switch (remaining) {
135
+ case 3:
136
+ if (xfsf < xr34[2]) xfsf = xr34[2];
137
+ case 2:
138
+ if (xfsf < xr34[1]) xfsf = xr34[1];
139
+ case 1:
140
+ if (xfsf < xr34[0]) xfsf = xr34[0];
141
+ default:
142
+ break;
143
+ }
144
+ return xfsf;
145
+ }
146
+
147
+
148
+ inline static uint8_t
149
+ find_lowest_scalefac(const FLOAT xr34) {
150
+ uint8_t sf_ok = 255;
151
+ uint8_t sf = 128, delsf = 64;
152
+ uint8_t i;
153
+ FLOAT const ixmax_val = IXMAX_VAL;
154
+ for (i = 0; i < 8; ++i) {
155
+ FLOAT const xfsf = ipow20[sf] * xr34;
156
+ if (xfsf <= ixmax_val) {
157
+ sf_ok = sf;
158
+ sf -= delsf;
159
+ } else {
160
+ sf += delsf;
161
+ }
162
+ delsf >>= 1;
163
+ }
164
+ return sf_ok;
165
+ }
166
+
167
+
168
+ inline static void
169
+ k_34_4(DOUBLEX x[4], int l3[4]) {
170
+ #ifdef TAKEHIRO_IEEE754_HACK
171
+ fi_union fi[4];
172
+
173
+ assert(x[0] <= IXMAX_VAL && x[1] <= IXMAX_VAL && x[2] <= IXMAX_VAL && x[3] <= IXMAX_VAL);
174
+ x[0] += MAGIC_FLOAT;
175
+ fi[0].f = x[0];
176
+ x[1] += MAGIC_FLOAT;
177
+ fi[1].f = x[1];
178
+ x[2] += MAGIC_FLOAT;
179
+ fi[2].f = x[2];
180
+ x[3] += MAGIC_FLOAT;
181
+ fi[3].f = x[3];
182
+ fi[0].f = x[0] + adj43asm[fi[0].i - MAGIC_INT];
183
+ fi[1].f = x[1] + adj43asm[fi[1].i - MAGIC_INT];
184
+ fi[2].f = x[2] + adj43asm[fi[2].i - MAGIC_INT];
185
+ fi[3].f = x[3] + adj43asm[fi[3].i - MAGIC_INT];
186
+ l3[0] = fi[0].i - MAGIC_INT;
187
+ l3[1] = fi[1].i - MAGIC_INT;
188
+ l3[2] = fi[2].i - MAGIC_INT;
189
+ l3[3] = fi[3].i - MAGIC_INT;
190
+ #else
191
+ assert(x[0] <= IXMAX_VAL && x[1] <= IXMAX_VAL && x[2] <= IXMAX_VAL && x[3] <= IXMAX_VAL);
192
+ XRPOW_FTOI(x[0], l3[0]);
193
+ XRPOW_FTOI(x[1], l3[1]);
194
+ XRPOW_FTOI(x[2], l3[2]);
195
+ XRPOW_FTOI(x[3], l3[3]);
196
+ x[0] += QUANTFAC(l3[0]);
197
+ x[1] += QUANTFAC(l3[1]);
198
+ x[2] += QUANTFAC(l3[2]);
199
+ x[3] += QUANTFAC(l3[3]);
200
+ XRPOW_FTOI(x[0], l3[0]);
201
+ XRPOW_FTOI(x[1], l3[1]);
202
+ XRPOW_FTOI(x[2], l3[2]);
203
+ XRPOW_FTOI(x[3], l3[3]);
204
+ #endif
205
+ }
206
+
207
+
208
+ /* do call the calc_sfb_noise_* functions only with sf values
209
+ * for which holds: sfpow34*xr34 <= IXMAX_VAL
210
+ */
211
+
212
+ static FLOAT
213
+ calc_sfb_noise_x34(const FLOAT *xr, const FLOAT *xr34, unsigned int bw, uint8_t sf) {
214
+ DOUBLEX x[4];
215
+ int l3[4];
216
+ const FLOAT sfpow = pow20[sf + Q_MAX2]; /*pow(2.0,sf/4.0); */
217
+ const FLOAT sfpow34 = ipow20[sf]; /*pow(sfpow,-3.0/4.0); */
218
+
219
+ FLOAT xfsf = 0;
220
+ unsigned int i = bw >> 2u;
221
+ unsigned int const remaining = (bw & 0x03u);
222
+
223
+ while (i-- > 0) {
224
+ x[0] = sfpow34 * xr34[0];
225
+ x[1] = sfpow34 * xr34[1];
226
+ x[2] = sfpow34 * xr34[2];
227
+ x[3] = sfpow34 * xr34[3];
228
+
229
+ k_34_4(x, l3);
230
+
231
+ x[0] = fabsf(xr[0]) - sfpow * pow43[l3[0]];
232
+ x[1] = fabsf(xr[1]) - sfpow * pow43[l3[1]];
233
+ x[2] = fabsf(xr[2]) - sfpow * pow43[l3[2]];
234
+ x[3] = fabsf(xr[3]) - sfpow * pow43[l3[3]];
235
+ xfsf += (x[0] * x[0] + x[1] * x[1]) + (x[2] * x[2] + x[3] * x[3]);
236
+
237
+ xr += 4;
238
+ xr34 += 4;
239
+ }
240
+ if (remaining) {
241
+ x[0] = x[1] = x[2] = x[3] = 0;
242
+ switch (remaining) {
243
+ case 3:
244
+ x[2] = sfpow34 * xr34[2];
245
+ case 2:
246
+ x[1] = sfpow34 * xr34[1];
247
+ case 1:
248
+ x[0] = sfpow34 * xr34[0];
249
+ }
250
+
251
+ k_34_4(x, l3);
252
+ x[0] = x[1] = x[2] = x[3] = 0;
253
+
254
+ switch (remaining) {
255
+ case 3:
256
+ x[2] = fabsf(xr[2]) - sfpow * pow43[l3[2]];
257
+ case 2:
258
+ x[1] = fabsf(xr[1]) - sfpow * pow43[l3[1]];
259
+ case 1:
260
+ x[0] = fabsf(xr[0]) - sfpow * pow43[l3[0]];
261
+ }
262
+ xfsf += (x[0] * x[0] + x[1] * x[1]) + (x[2] * x[2] + x[3] * x[3]);
263
+ }
264
+ return xfsf;
265
+ }
266
+
267
+
268
+ struct calc_noise_cache {
269
+ int valid;
270
+ FLOAT value;
271
+ };
272
+
273
+ typedef struct calc_noise_cache calc_noise_cache_t;
274
+
275
+
276
+ static uint8_t
277
+ tri_calc_sfb_noise_x34(const FLOAT *xr, const FLOAT *xr34, FLOAT l3_xmin, unsigned int bw,
278
+ uint8_t sf, calc_noise_cache_t *did_it) {
279
+ if (did_it[sf].valid == 0) {
280
+ did_it[sf].valid = 1;
281
+ did_it[sf].value = calc_sfb_noise_x34(xr, xr34, bw, sf);
282
+ }
283
+ if (l3_xmin < did_it[sf].value) {
284
+ return 1;
285
+ }
286
+ if (sf < 255) {
287
+ uint8_t const sf_x = sf + 1;
288
+ if (did_it[sf_x].valid == 0) {
289
+ did_it[sf_x].valid = 1;
290
+ did_it[sf_x].value = calc_sfb_noise_x34(xr, xr34, bw, sf_x);
291
+ }
292
+ if (l3_xmin < did_it[sf_x].value) {
293
+ return 1;
294
+ }
295
+ }
296
+ if (sf > 0) {
297
+ uint8_t const sf_x = sf - 1;
298
+ if (did_it[sf_x].valid == 0) {
299
+ did_it[sf_x].valid = 1;
300
+ did_it[sf_x].value = calc_sfb_noise_x34(xr, xr34, bw, sf_x);
301
+ }
302
+ if (l3_xmin < did_it[sf_x].value) {
303
+ return 1;
304
+ }
305
+ }
306
+ return 0;
307
+ }
308
+
309
+
310
+ /**
311
+ * Robert Hegemann 2001-05-01
312
+ * calculates quantization step size determined by allowed masking
313
+ */
314
+ static int
315
+ calc_scalefac(FLOAT l3_xmin, int bw) {
316
+ FLOAT const c = 5.799142446; /* 10 * 10^(2/3) * log10(4/3) */
317
+ return 210 + (int) (c * log10f(l3_xmin / bw) - .5f);
318
+ }
319
+
320
+ static uint8_t
321
+ guess_scalefac_x34(const FLOAT *xr, const FLOAT *xr34, FLOAT l3_xmin, unsigned int bw,
322
+ uint8_t sf_min) {
323
+ int const guess = calc_scalefac(l3_xmin, bw);
324
+ if (guess < sf_min) return sf_min;
325
+ if (guess >= 255) return 255;
326
+ (void) xr;
327
+ (void) xr34;
328
+ return guess;
329
+ }
330
+
331
+
332
+ /* the find_scalefac* routines calculate
333
+ * a quantization step size which would
334
+ * introduce as much noise as is allowed.
335
+ * The larger the step size the more
336
+ * quantization noise we'll get. The
337
+ * scalefactors are there to lower the
338
+ * global step size, allowing limited
339
+ * differences in quantization step sizes
340
+ * per band (shaping the noise).
341
+ */
342
+
343
+ static uint8_t
344
+ find_scalefac_x34(const FLOAT *xr, const FLOAT *xr34, FLOAT l3_xmin, unsigned int bw,
345
+ uint8_t sf_min) {
346
+ calc_noise_cache_t did_it[256];
347
+ uint8_t sf = 128, sf_ok = 255, delsf = 128, seen_good_one = 0, i;
348
+ memset(did_it, 0, sizeof(did_it));
349
+ for (i = 0; i < 8; ++i) {
350
+ delsf >>= 1;
351
+ if (sf <= sf_min) {
352
+ sf += delsf;
353
+ } else {
354
+ uint8_t const bad = tri_calc_sfb_noise_x34(xr, xr34, l3_xmin, bw, sf, did_it);
355
+ if (bad) { /* distortion. try a smaller scalefactor */
356
+ sf -= delsf;
357
+ } else {
358
+ sf_ok = sf;
359
+ sf += delsf;
360
+ seen_good_one = 1;
361
+ }
362
+ }
363
+ }
364
+ /* returning a scalefac without distortion, if possible
365
+ */
366
+ if (seen_good_one > 0) {
367
+ sf = sf_ok;
368
+ }
369
+ if (sf <= sf_min) {
370
+ sf = sf_min;
371
+ }
372
+ return sf;
373
+ }
374
+
375
+
376
+
377
+ /***********************************************************************
378
+ *
379
+ * calc_short_block_vbr_sf()
380
+ * calc_long_block_vbr_sf()
381
+ *
382
+ * Mark Taylor 2000-??-??
383
+ * Robert Hegemann 2000-10-25 made functions of it
384
+ *
385
+ ***********************************************************************/
386
+
387
+ /* a variation for vbr-mtrh */
388
+ static int
389
+ block_sf(algo_t *that, const FLOAT l3_xmin[SFBMAX], int vbrsf[SFBMAX], int vbrsfmin[SFBMAX]) {
390
+ FLOAT max_xr34;
391
+ const FLOAT *const xr = &that->cod_info->xr[0];
392
+ const FLOAT *const xr34_orig = &that->xr34orig[0];
393
+ const int *const width = &that->cod_info->width[0];
394
+ const char *const energy_above_cutoff = &that->cod_info->energy_above_cutoff[0];
395
+ unsigned int const max_nonzero_coeff = (unsigned int) that->cod_info->max_nonzero_coeff;
396
+ uint8_t maxsf = 0;
397
+ int sfb = 0, m_o = -1;
398
+ unsigned int j = 0, i = 0;
399
+ int const psymax = that->cod_info->psymax;
400
+
401
+ assert(that->cod_info->max_nonzero_coeff >= 0);
402
+
403
+ that->mingain_l = 0;
404
+ that->mingain_s[0] = 0;
405
+ that->mingain_s[1] = 0;
406
+ that->mingain_s[2] = 0;
407
+ while (j <= max_nonzero_coeff) {
408
+ unsigned int const w = (unsigned int) width[sfb];
409
+ unsigned int const m = (unsigned int) (max_nonzero_coeff - j + 1);
410
+ unsigned int l = w;
411
+ uint8_t m1, m2;
412
+ if (l > m) {
413
+ l = m;
414
+ }
415
+ max_xr34 = vec_max_c(&xr34_orig[j], l);
416
+
417
+ m1 = find_lowest_scalefac(max_xr34);
418
+ vbrsfmin[sfb] = m1;
419
+ if (that->mingain_l < m1) {
420
+ that->mingain_l = m1;
421
+ }
422
+ if (that->mingain_s[i] < m1) {
423
+ that->mingain_s[i] = m1;
424
+ }
425
+ if (++i > 2) {
426
+ i = 0;
427
+ }
428
+ if (sfb < psymax &&
429
+ w > 2) { /* mpeg2.5 at 8 kHz doesn't use all scalefactors, unused have width 2 */
430
+ if (energy_above_cutoff[sfb]) {
431
+ m2 = that->find(&xr[j], &xr34_orig[j], l3_xmin[sfb], l, m1);
432
+ #if 0
433
+ if (0) {
434
+ /** Robert Hegemann 2007-09-29:
435
+ * It seems here is some more potential for speed improvements.
436
+ * Current find method does 11-18 quantization calculations.
437
+ * Using a "good guess" may help to reduce this amount.
438
+ */
439
+ uint8_t guess = calc_scalefac(l3_xmin[sfb], l);
440
+ DEBUGF(that->gfc, "sfb=%3d guess=%3d found=%3d diff=%3d\n", sfb, guess, m2,
441
+ m2 - guess);
442
+ }
443
+ #endif
444
+ if (maxsf < m2) {
445
+ maxsf = m2;
446
+ }
447
+ if (m_o < m2 && m2 < 255) {
448
+ m_o = m2;
449
+ }
450
+ } else {
451
+ m2 = 255;
452
+ maxsf = 255;
453
+ }
454
+ } else {
455
+ if (maxsf < m1) {
456
+ maxsf = m1;
457
+ }
458
+ m2 = maxsf;
459
+ }
460
+ vbrsf[sfb] = m2;
461
+ ++sfb;
462
+ j += w;
463
+ }
464
+ for (; sfb < SFBMAX; ++sfb) {
465
+ vbrsf[sfb] = maxsf;
466
+ vbrsfmin[sfb] = 0;
467
+ }
468
+ if (m_o > -1) {
469
+ maxsf = m_o;
470
+ for (sfb = 0; sfb < SFBMAX; ++sfb) {
471
+ if (vbrsf[sfb] == 255) {
472
+ vbrsf[sfb] = m_o;
473
+ }
474
+ }
475
+ }
476
+ return maxsf;
477
+ }
478
+
479
+
480
+ /***********************************************************************
481
+ *
482
+ * quantize xr34 based on scalefactors
483
+ *
484
+ * block_xr34
485
+ *
486
+ * Mark Taylor 2000-??-??
487
+ * Robert Hegemann 2000-10-20 made functions of them
488
+ *
489
+ ***********************************************************************/
490
+
491
+ static void
492
+ quantize_x34(const algo_t *that) {
493
+ DOUBLEX x[4];
494
+ const FLOAT *xr34_orig = that->xr34orig;
495
+ gr_info *const cod_info = that->cod_info;
496
+ int const ifqstep = (cod_info->scalefac_scale == 0) ? 2 : 4;
497
+ int *l3 = cod_info->l3_enc;
498
+ unsigned int j = 0, sfb = 0;
499
+ unsigned int const max_nonzero_coeff = (unsigned int) cod_info->max_nonzero_coeff;
500
+
501
+ assert(cod_info->max_nonzero_coeff >= 0);
502
+ assert(cod_info->max_nonzero_coeff < 576);
503
+
504
+ while (j <= max_nonzero_coeff) {
505
+ int const s =
506
+ (cod_info->scalefac[sfb] + (cod_info->preflag ? pretab[sfb] : 0)) * ifqstep
507
+ + cod_info->subblock_gain[cod_info->window[sfb]] * 8;
508
+ uint8_t const sfac = (uint8_t)(cod_info->global_gain - s);
509
+ FLOAT const sfpow34 = ipow20[sfac];
510
+ unsigned int const w = (unsigned int) cod_info->width[sfb];
511
+ unsigned int const m = (unsigned int) (max_nonzero_coeff - j + 1);
512
+ unsigned int i, remaining;
513
+
514
+ assert((cod_info->global_gain - s) >= 0);
515
+ assert(cod_info->width[sfb] >= 0);
516
+ j += w;
517
+ ++sfb;
518
+
519
+ i = (w <= m) ? w : m;
520
+ remaining = (i & 0x03u);
521
+ i >>= 2u;
522
+
523
+ while (i-- > 0) {
524
+ x[0] = sfpow34 * xr34_orig[0];
525
+ x[1] = sfpow34 * xr34_orig[1];
526
+ x[2] = sfpow34 * xr34_orig[2];
527
+ x[3] = sfpow34 * xr34_orig[3];
528
+
529
+ k_34_4(x, l3);
530
+
531
+ l3 += 4;
532
+ xr34_orig += 4;
533
+ }
534
+ if (remaining) {
535
+ int tmp_l3[4];
536
+ x[0] = x[1] = x[2] = x[3] = 0;
537
+ switch (remaining) {
538
+ case 3:
539
+ x[2] = sfpow34 * xr34_orig[2];
540
+ case 2:
541
+ x[1] = sfpow34 * xr34_orig[1];
542
+ case 1:
543
+ x[0] = sfpow34 * xr34_orig[0];
544
+ }
545
+
546
+ k_34_4(x, tmp_l3);
547
+
548
+ switch (remaining) {
549
+ case 3:
550
+ l3[2] = tmp_l3[2];
551
+ case 2:
552
+ l3[1] = tmp_l3[1];
553
+ case 1:
554
+ l3[0] = tmp_l3[0];
555
+ }
556
+
557
+ l3 += remaining;
558
+ xr34_orig += remaining;
559
+ }
560
+ }
561
+ }
562
+
563
+
564
+ static const uint8_t max_range_short[SBMAX_s * 3] = {
565
+ 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
566
+ 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7,
567
+ 0, 0, 0
568
+ };
569
+
570
+ static const uint8_t max_range_long[SBMAX_l] = {
571
+ 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 0
572
+ };
573
+
574
+ static const uint8_t max_range_long_lsf_pretab[SBMAX_l] = {
575
+ 7, 7, 7, 7, 7, 7, 3, 3, 3, 3, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
576
+ };
577
+
578
+
579
+ /*
580
+ sfb=0..5 scalefac < 16
581
+ sfb>5 scalefac < 8
582
+
583
+ ifqstep = ( cod_info->scalefac_scale == 0 ) ? 2 : 4;
584
+ ol_sf = (cod_info->global_gain-210.0);
585
+ ol_sf -= 8*cod_info->subblock_gain[i];
586
+ ol_sf -= ifqstep*scalefac[gr][ch].s[sfb][i];
587
+ */
588
+
589
+ static void
590
+ set_subblock_gain(gr_info *cod_info, const int mingain_s[3], int sf[]) {
591
+ const int maxrange1 = 15, maxrange2 = 7;
592
+ const int ifqstepShift = (cod_info->scalefac_scale == 0) ? 1 : 2;
593
+ int *const sbg = cod_info->subblock_gain;
594
+ unsigned int const psymax = (unsigned int) cod_info->psymax;
595
+ unsigned int psydiv = 18;
596
+ int sbg0, sbg1, sbg2;
597
+ unsigned int sfb, i;
598
+ int min_sbg = 7;
599
+
600
+ if (psydiv > psymax) {
601
+ psydiv = psymax;
602
+ }
603
+ for (i = 0; i < 3; ++i) {
604
+ int maxsf1 = 0, maxsf2 = 0, minsf = 1000;
605
+ /* see if we should use subblock gain */
606
+ for (sfb = i; sfb < psydiv; sfb += 3) { /* part 1 */
607
+ int const v = -sf[sfb];
608
+ if (maxsf1 < v) {
609
+ maxsf1 = v;
610
+ }
611
+ if (minsf > v) {
612
+ minsf = v;
613
+ }
614
+ }
615
+ for (; sfb < SFBMAX; sfb += 3) { /* part 2 */
616
+ int const v = -sf[sfb];
617
+ if (maxsf2 < v) {
618
+ maxsf2 = v;
619
+ }
620
+ if (minsf > v) {
621
+ minsf = v;
622
+ }
623
+ }
624
+
625
+ /* boost subblock gain as little as possible so we can
626
+ * reach maxsf1 with scalefactors
627
+ * 8*sbg >= maxsf1
628
+ */
629
+ {
630
+ int const m1 = maxsf1 - (maxrange1 << ifqstepShift);
631
+ int const m2 = maxsf2 - (maxrange2 << ifqstepShift);
632
+
633
+ maxsf1 = Max(m1, m2);
634
+ }
635
+ if (minsf > 0) {
636
+ sbg[i] = minsf >> 3;
637
+ } else {
638
+ sbg[i] = 0;
639
+ }
640
+ if (maxsf1 > 0) {
641
+ int const m1 = sbg[i];
642
+ int const m2 = (maxsf1 + 7) >> 3;
643
+ sbg[i] = Max(m1, m2);
644
+ }
645
+ if (sbg[i] > 0 && mingain_s[i] > (cod_info->global_gain - sbg[i] * 8)) {
646
+ sbg[i] = (cod_info->global_gain - mingain_s[i]) >> 3;
647
+ }
648
+ if (sbg[i] > 7) {
649
+ sbg[i] = 7;
650
+ }
651
+ if (min_sbg > sbg[i]) {
652
+ min_sbg = sbg[i];
653
+ }
654
+ }
655
+ sbg0 = sbg[0] * 8;
656
+ sbg1 = sbg[1] * 8;
657
+ sbg2 = sbg[2] * 8;
658
+ for (sfb = 0; sfb < SFBMAX; sfb += 3) {
659
+ sf[sfb + 0] += sbg0;
660
+ sf[sfb + 1] += sbg1;
661
+ sf[sfb + 2] += sbg2;
662
+ }
663
+ if (min_sbg > 0) {
664
+ for (i = 0; i < 3; ++i) {
665
+ sbg[i] -= min_sbg;
666
+ }
667
+ cod_info->global_gain -= min_sbg * 8;
668
+ }
669
+ }
670
+
671
+
672
+ /*
673
+ ifqstep = ( cod_info->scalefac_scale == 0 ) ? 2 : 4;
674
+ ol_sf = (cod_info->global_gain-210.0);
675
+ ol_sf -= ifqstep*scalefac[gr][ch].l[sfb];
676
+ if (cod_info->preflag && sfb>=11)
677
+ ol_sf -= ifqstep*pretab[sfb];
678
+ */
679
+ static void
680
+ set_scalefacs(gr_info *cod_info, const int *vbrsfmin, int sf[], const uint8_t *max_range) {
681
+ const int ifqstep = (cod_info->scalefac_scale == 0) ? 2 : 4;
682
+ const int ifqstepShift = (cod_info->scalefac_scale == 0) ? 1 : 2;
683
+ int *const scalefac = cod_info->scalefac;
684
+ int const sfbmax = cod_info->sfbmax;
685
+ int sfb;
686
+ int const *const sbg = cod_info->subblock_gain;
687
+ int const *const window = cod_info->window;
688
+ int const preflag = cod_info->preflag;
689
+
690
+ if (preflag) {
691
+ for (sfb = 11; sfb < sfbmax; ++sfb) {
692
+ sf[sfb] += pretab[sfb] * ifqstep;
693
+ }
694
+ }
695
+ for (sfb = 0; sfb < sfbmax; ++sfb) {
696
+ int const gain = cod_info->global_gain - (sbg[window[sfb]] * 8)
697
+ - ((preflag ? pretab[sfb] : 0) * ifqstep);
698
+
699
+ if (sf[sfb] < 0) {
700
+ int const m = gain - vbrsfmin[sfb];
701
+ /* ifqstep*scalefac >= -sf[sfb], so round UP */
702
+ scalefac[sfb] = (ifqstep - 1 - sf[sfb]) >> ifqstepShift;
703
+
704
+ if (scalefac[sfb] > max_range[sfb]) {
705
+ scalefac[sfb] = max_range[sfb];
706
+ }
707
+ if (scalefac[sfb] > 0 && (scalefac[sfb] << ifqstepShift) > m) {
708
+ scalefac[sfb] = m >> ifqstepShift;
709
+ }
710
+ } else {
711
+ scalefac[sfb] = 0;
712
+ }
713
+ }
714
+ for (; sfb < SFBMAX; ++sfb) {
715
+ scalefac[sfb] = 0; /* sfb21 */
716
+ }
717
+ }
718
+
719
+
720
+ #ifndef NDEBUG
721
+
722
+ static int
723
+ checkScalefactor(const gr_info *cod_info, const int vbrsfmin[SFBMAX]) {
724
+ int const ifqstep = cod_info->scalefac_scale == 0 ? 2 : 4;
725
+ int sfb;
726
+ for (sfb = 0; sfb < cod_info->psymax; ++sfb) {
727
+ const int s =
728
+ ((cod_info->scalefac[sfb] +
729
+ (cod_info->preflag ? pretab[sfb] : 0)) * ifqstep) +
730
+ cod_info->subblock_gain[cod_info->window[sfb]] * 8;
731
+
732
+ if ((cod_info->global_gain - s) < vbrsfmin[sfb]) {
733
+ /*
734
+ fprintf( stdout, "sf %d\n", sfb );
735
+ fprintf( stdout, "min %d\n", vbrsfmin[sfb] );
736
+ fprintf( stdout, "ggain %d\n", cod_info->global_gain );
737
+ fprintf( stdout, "scalefac %d\n", cod_info->scalefac[sfb] );
738
+ fprintf( stdout, "pretab %d\n", (cod_info->preflag ? pretab[sfb] : 0) );
739
+ fprintf( stdout, "scale %d\n", (cod_info->scalefac_scale + 1) );
740
+ fprintf( stdout, "subgain %d\n", cod_info->subblock_gain[cod_info->window[sfb]] * 8 );
741
+ fflush( stdout );
742
+ exit(-1);
743
+ */
744
+ return 0;
745
+ }
746
+ }
747
+ return 1;
748
+ }
749
+
750
+ #endif
751
+
752
+
753
+ /******************************************************************
754
+ *
755
+ * short block scalefacs
756
+ *
757
+ ******************************************************************/
758
+
759
+ static void
760
+ short_block_constrain(const algo_t *that, const int vbrsf[SFBMAX],
761
+ const int vbrsfmin[SFBMAX], int vbrmax) {
762
+ gr_info *const cod_info = that->cod_info;
763
+ lame_internal_flags const *const gfc = that->gfc;
764
+ SessionConfig_t const *const cfg = &gfc->cfg;
765
+ int const maxminsfb = that->mingain_l;
766
+ int mover, maxover0 = 0, maxover1 = 0, delta = 0;
767
+ int v, v0, v1;
768
+ int sfb;
769
+ int const psymax = cod_info->psymax;
770
+
771
+ for (sfb = 0; sfb < psymax; ++sfb) {
772
+ assert(vbrsf[sfb] >= vbrsfmin[sfb]);
773
+ v = vbrmax - vbrsf[sfb];
774
+ if (delta < v) {
775
+ delta = v;
776
+ }
777
+ v0 = v - (4 * 14 + 2 * max_range_short[sfb]);
778
+ v1 = v - (4 * 14 + 4 * max_range_short[sfb]);
779
+ if (maxover0 < v0) {
780
+ maxover0 = v0;
781
+ }
782
+ if (maxover1 < v1) {
783
+ maxover1 = v1;
784
+ }
785
+ }
786
+ if (cfg->noise_shaping == 2) {
787
+ /* allow scalefac_scale=1 */
788
+ mover = Min(maxover0, maxover1);
789
+ } else {
790
+ mover = maxover0;
791
+ }
792
+ if (delta > mover) {
793
+ delta = mover;
794
+ }
795
+ vbrmax -= delta;
796
+ maxover0 -= mover;
797
+ maxover1 -= mover;
798
+
799
+ if (maxover0 == 0) {
800
+ cod_info->scalefac_scale = 0;
801
+ } else if (maxover1 == 0) {
802
+ cod_info->scalefac_scale = 1;
803
+ }
804
+ if (vbrmax < maxminsfb) {
805
+ vbrmax = maxminsfb;
806
+ }
807
+ cod_info->global_gain = vbrmax;
808
+
809
+ if (cod_info->global_gain < 0) {
810
+ cod_info->global_gain = 0;
811
+ } else if (cod_info->global_gain > 255) {
812
+ cod_info->global_gain = 255;
813
+ }
814
+ {
815
+ int sf_temp[SFBMAX];
816
+ for (sfb = 0; sfb < SFBMAX; ++sfb) {
817
+ sf_temp[sfb] = vbrsf[sfb] - vbrmax;
818
+ }
819
+ set_subblock_gain(cod_info, &that->mingain_s[0], sf_temp);
820
+ set_scalefacs(cod_info, vbrsfmin, sf_temp, max_range_short);
821
+ }
822
+ assert(checkScalefactor(cod_info, vbrsfmin));
823
+ }
824
+
825
+
826
+ /******************************************************************
827
+ *
828
+ * long block scalefacs
829
+ *
830
+ ******************************************************************/
831
+
832
+ static void
833
+ long_block_constrain(const algo_t *that, const int vbrsf[SFBMAX], const int vbrsfmin[SFBMAX],
834
+ int vbrmax) {
835
+ gr_info *const cod_info = that->cod_info;
836
+ lame_internal_flags const *const gfc = that->gfc;
837
+ SessionConfig_t const *const cfg = &gfc->cfg;
838
+ uint8_t const *max_rangep;
839
+ int const maxminsfb = that->mingain_l;
840
+ int sfb;
841
+ int maxover0, maxover1, maxover0p, maxover1p, mover, delta = 0;
842
+ int v, v0, v1, v0p, v1p, vm0p = 1, vm1p = 1;
843
+ int const psymax = cod_info->psymax;
844
+
845
+ max_rangep = cfg->mode_gr == 2 ? max_range_long : max_range_long_lsf_pretab;
846
+
847
+ maxover0 = 0;
848
+ maxover1 = 0;
849
+ maxover0p = 0; /* pretab */
850
+ maxover1p = 0; /* pretab */
851
+
852
+ for (sfb = 0; sfb < psymax; ++sfb) {
853
+ assert(vbrsf[sfb] >= vbrsfmin[sfb]);
854
+ v = vbrmax - vbrsf[sfb];
855
+ if (delta < v) {
856
+ delta = v;
857
+ }
858
+ v0 = v - 2 * max_range_long[sfb];
859
+ v1 = v - 4 * max_range_long[sfb];
860
+ v0p = v - 2 * (max_rangep[sfb] + pretab[sfb]);
861
+ v1p = v - 4 * (max_rangep[sfb] + pretab[sfb]);
862
+ if (maxover0 < v0) {
863
+ maxover0 = v0;
864
+ }
865
+ if (maxover1 < v1) {
866
+ maxover1 = v1;
867
+ }
868
+ if (maxover0p < v0p) {
869
+ maxover0p = v0p;
870
+ }
871
+ if (maxover1p < v1p) {
872
+ maxover1p = v1p;
873
+ }
874
+ }
875
+ if (vm0p == 1) {
876
+ int gain = vbrmax - maxover0p;
877
+ if (gain < maxminsfb) {
878
+ gain = maxminsfb;
879
+ }
880
+ for (sfb = 0; sfb < psymax; ++sfb) {
881
+ int const a = (gain - vbrsfmin[sfb]) - 2 * pretab[sfb];
882
+ if (a <= 0) {
883
+ vm0p = 0;
884
+ vm1p = 0;
885
+ break;
886
+ }
887
+ }
888
+ }
889
+ if (vm1p == 1) {
890
+ int gain = vbrmax - maxover1p;
891
+ if (gain < maxminsfb) {
892
+ gain = maxminsfb;
893
+ }
894
+ for (sfb = 0; sfb < psymax; ++sfb) {
895
+ int const b = (gain - vbrsfmin[sfb]) - 4 * pretab[sfb];
896
+ if (b <= 0) {
897
+ vm1p = 0;
898
+ break;
899
+ }
900
+ }
901
+ }
902
+ if (vm0p == 0) {
903
+ maxover0p = maxover0;
904
+ }
905
+ if (vm1p == 0) {
906
+ maxover1p = maxover1;
907
+ }
908
+ if (cfg->noise_shaping != 2) {
909
+ maxover1 = maxover0;
910
+ maxover1p = maxover0p;
911
+ }
912
+ mover = Min(maxover0, maxover0p);
913
+ mover = Min(mover, maxover1);
914
+ mover = Min(mover, maxover1p);
915
+
916
+ if (delta > mover) {
917
+ delta = mover;
918
+ }
919
+ vbrmax -= delta;
920
+ if (vbrmax < maxminsfb) {
921
+ vbrmax = maxminsfb;
922
+ }
923
+ maxover0 -= mover;
924
+ maxover0p -= mover;
925
+ maxover1 -= mover;
926
+ maxover1p -= mover;
927
+
928
+ if (maxover0 == 0) {
929
+ cod_info->scalefac_scale = 0;
930
+ cod_info->preflag = 0;
931
+ max_rangep = max_range_long;
932
+ } else if (maxover0p == 0) {
933
+ cod_info->scalefac_scale = 0;
934
+ cod_info->preflag = 1;
935
+ } else if (maxover1 == 0) {
936
+ cod_info->scalefac_scale = 1;
937
+ cod_info->preflag = 0;
938
+ max_rangep = max_range_long;
939
+ } else if (maxover1p == 0) {
940
+ cod_info->scalefac_scale = 1;
941
+ cod_info->preflag = 1;
942
+ } else {
943
+ assert(0); /* this should not happen */
944
+ }
945
+ cod_info->global_gain = vbrmax;
946
+ if (cod_info->global_gain < 0) {
947
+ cod_info->global_gain = 0;
948
+ } else if (cod_info->global_gain > 255) {
949
+ cod_info->global_gain = 255;
950
+ }
951
+ {
952
+ int sf_temp[SFBMAX];
953
+ for (sfb = 0; sfb < SFBMAX; ++sfb) {
954
+ sf_temp[sfb] = vbrsf[sfb] - vbrmax;
955
+ }
956
+ set_scalefacs(cod_info, vbrsfmin, sf_temp, max_rangep);
957
+ }
958
+ assert(checkScalefactor(cod_info, vbrsfmin));
959
+ }
960
+
961
+
962
+ static void
963
+ bitcount(const algo_t *that) {
964
+ int rc = scale_bitcount(that->gfc, that->cod_info);
965
+
966
+ if (rc == 0) {
967
+ return;
968
+ }
969
+ /* this should not happen due to the way the scalefactors are selected */
970
+ ERRORF(that->gfc, "INTERNAL ERROR IN VBR NEW CODE (986), please send bug report\n");
971
+ exit(-1);
972
+ }
973
+
974
+
975
+ static int
976
+ quantizeAndCountBits(const algo_t *that) {
977
+ quantize_x34(that);
978
+ that->cod_info->part2_3_length = noquant_count_bits(that->gfc, that->cod_info, 0);
979
+ return that->cod_info->part2_3_length;
980
+ }
981
+
982
+
983
+ static int
984
+ tryGlobalStepsize(const algo_t *that, const int sfwork[SFBMAX],
985
+ const int vbrsfmin[SFBMAX], int delta) {
986
+ FLOAT const xrpow_max = that->cod_info->xrpow_max;
987
+ int sftemp[SFBMAX], i, nbits;
988
+ int gain, vbrmax = 0;
989
+ for (i = 0; i < SFBMAX; ++i) {
990
+ gain = sfwork[i] + delta;
991
+ if (gain < vbrsfmin[i]) {
992
+ gain = vbrsfmin[i];
993
+ }
994
+ if (gain > 255) {
995
+ gain = 255;
996
+ }
997
+ if (vbrmax < gain) {
998
+ vbrmax = gain;
999
+ }
1000
+ sftemp[i] = gain;
1001
+ }
1002
+ that->alloc(that, sftemp, vbrsfmin, vbrmax);
1003
+ bitcount(that);
1004
+ nbits = quantizeAndCountBits(that);
1005
+ that->cod_info->xrpow_max = xrpow_max;
1006
+ return nbits;
1007
+ }
1008
+
1009
+
1010
+ static void
1011
+ searchGlobalStepsizeMax(const algo_t *that, const int sfwork[SFBMAX],
1012
+ const int vbrsfmin[SFBMAX], int target) {
1013
+ gr_info const *const cod_info = that->cod_info;
1014
+ const int gain = cod_info->global_gain;
1015
+ int curr = gain;
1016
+ int gain_ok = 1024;
1017
+ int nbits = LARGE_BITS;
1018
+ int l = gain, r = 512;
1019
+
1020
+ assert(gain >= 0);
1021
+ while (l <= r) {
1022
+ curr = (l + r) >> 1;
1023
+ nbits = tryGlobalStepsize(that, sfwork, vbrsfmin, curr - gain);
1024
+ if (nbits == 0 || (nbits + cod_info->part2_length) < target) {
1025
+ r = curr - 1;
1026
+ gain_ok = curr;
1027
+ } else {
1028
+ l = curr + 1;
1029
+ if (gain_ok == 1024) {
1030
+ gain_ok = curr;
1031
+ }
1032
+ }
1033
+ }
1034
+ if (gain_ok != curr) {
1035
+ curr = gain_ok;
1036
+ nbits = tryGlobalStepsize(that, sfwork, vbrsfmin, curr - gain);
1037
+ }
1038
+ }
1039
+
1040
+
1041
+ static int
1042
+ sfDepth(const int sfwork[SFBMAX]) {
1043
+ int m = 0;
1044
+ unsigned int i, j;
1045
+ for (j = SFBMAX, i = 0; j > 0; --j, ++i) {
1046
+ int const di = 255 - sfwork[i];
1047
+ if (m < di) {
1048
+ m = di;
1049
+ }
1050
+ assert(sfwork[i] >= 0);
1051
+ assert(sfwork[i] <= 255);
1052
+ }
1053
+ assert(m >= 0);
1054
+ assert(m <= 255);
1055
+ return m;
1056
+ }
1057
+
1058
+
1059
+ static void
1060
+ cutDistribution(const int sfwork[SFBMAX], int sf_out[SFBMAX], int cut) {
1061
+ unsigned int i, j;
1062
+ for (j = SFBMAX, i = 0; j > 0; --j, ++i) {
1063
+ int const x = sfwork[i];
1064
+ sf_out[i] = x < cut ? x : cut;
1065
+ }
1066
+ }
1067
+
1068
+
1069
+ static int
1070
+ flattenDistribution(const int sfwork[SFBMAX], int sf_out[SFBMAX], int dm, int k, int p) {
1071
+ unsigned int i, j;
1072
+ int x, sfmax = 0;
1073
+ if (dm > 0) {
1074
+ for (j = SFBMAX, i = 0; j > 0; --j, ++i) {
1075
+ int const di = p - sfwork[i];
1076
+ x = sfwork[i] + (k * di) / dm;
1077
+ if (x < 0) {
1078
+ x = 0;
1079
+ } else {
1080
+ if (x > 255) {
1081
+ x = 255;
1082
+ }
1083
+ }
1084
+ sf_out[i] = x;
1085
+ if (sfmax < x) {
1086
+ sfmax = x;
1087
+ }
1088
+ }
1089
+ } else {
1090
+ for (j = SFBMAX, i = 0; j > 0u; --j, ++i) {
1091
+ x = sfwork[i];
1092
+ sf_out[i] = x;
1093
+ if (sfmax < x) {
1094
+ sfmax = x;
1095
+ }
1096
+ }
1097
+ }
1098
+ return sfmax;
1099
+ }
1100
+
1101
+
1102
+ static int
1103
+ tryThatOne(algo_t const *that, const int sftemp[SFBMAX], const int vbrsfmin[SFBMAX], int vbrmax) {
1104
+ FLOAT const xrpow_max = that->cod_info->xrpow_max;
1105
+ int nbits = LARGE_BITS;
1106
+ that->alloc(that, sftemp, vbrsfmin, vbrmax);
1107
+ bitcount(that);
1108
+ nbits = quantizeAndCountBits(that);
1109
+ nbits += that->cod_info->part2_length;
1110
+ that->cod_info->xrpow_max = xrpow_max;
1111
+ return nbits;
1112
+ }
1113
+
1114
+
1115
+ static void
1116
+ outOfBitsStrategy(algo_t const *that, const int sfwork[SFBMAX], const int vbrsfmin[SFBMAX],
1117
+ int target) {
1118
+ int wrk[SFBMAX];
1119
+ int const dm = sfDepth(sfwork);
1120
+ int const p = that->cod_info->global_gain;
1121
+ int nbits;
1122
+
1123
+ /* PART 1 */
1124
+ {
1125
+ int bi = dm / 2;
1126
+ int bi_ok = -1;
1127
+ int bu = 0;
1128
+ int bo = dm;
1129
+ for (;;) {
1130
+ int const sfmax = flattenDistribution(sfwork, wrk, dm, bi, p);
1131
+ nbits = tryThatOne(that, wrk, vbrsfmin, sfmax);
1132
+ if (nbits <= target) {
1133
+ bi_ok = bi;
1134
+ bo = bi - 1;
1135
+ } else {
1136
+ bu = bi + 1;
1137
+ }
1138
+ if (bu <= bo) {
1139
+ bi = (bu + bo) / 2;
1140
+ } else {
1141
+ break;
1142
+ }
1143
+ }
1144
+ if (bi_ok >= 0) {
1145
+ if (bi != bi_ok) {
1146
+ int const sfmax = flattenDistribution(sfwork, wrk, dm, bi_ok, p);
1147
+ nbits = tryThatOne(that, wrk, vbrsfmin, sfmax);
1148
+ }
1149
+ return;
1150
+ }
1151
+ }
1152
+
1153
+ /* PART 2: */
1154
+ {
1155
+ int bi = (255 + p) / 2;
1156
+ int bi_ok = -1;
1157
+ int bu = p;
1158
+ int bo = 255;
1159
+ for (;;) {
1160
+ int const sfmax = flattenDistribution(sfwork, wrk, dm, dm, bi);
1161
+ nbits = tryThatOne(that, wrk, vbrsfmin, sfmax);
1162
+ if (nbits <= target) {
1163
+ bi_ok = bi;
1164
+ bo = bi - 1;
1165
+ } else {
1166
+ bu = bi + 1;
1167
+ }
1168
+ if (bu <= bo) {
1169
+ bi = (bu + bo) / 2;
1170
+ } else {
1171
+ break;
1172
+ }
1173
+ }
1174
+ if (bi_ok >= 0) {
1175
+ if (bi != bi_ok) {
1176
+ int const sfmax = flattenDistribution(sfwork, wrk, dm, dm, bi_ok);
1177
+ nbits = tryThatOne(that, wrk, vbrsfmin, sfmax);
1178
+ }
1179
+ return;
1180
+ }
1181
+ }
1182
+
1183
+ /* fall back to old code, likely to be never called */
1184
+ searchGlobalStepsizeMax(that, wrk, vbrsfmin, target);
1185
+ }
1186
+
1187
+
1188
+ static int
1189
+ reduce_bit_usage(lame_internal_flags *gfc, int gr, int ch
1190
+ #if 0
1191
+ , const FLOAT xr34orig[576], const FLOAT l3_xmin[SFBMAX], int maxbits
1192
+ #endif
1193
+ ) {
1194
+ SessionConfig_t const *const cfg = &gfc->cfg;
1195
+ gr_info *const cod_info = &gfc->l3_side.tt[gr][ch];
1196
+ /* try some better scalefac storage
1197
+ */
1198
+ best_scalefac_store(gfc, gr, ch, &gfc->l3_side);
1199
+
1200
+ /* best huffman_divide may save some bits too
1201
+ */
1202
+ if (cfg->use_best_huffman == 1)
1203
+ best_huffman_divide(gfc, cod_info);
1204
+ return cod_info->part2_3_length + cod_info->part2_length;
1205
+ }
1206
+
1207
+
1208
+ int
1209
+ VBR_encode_frame(lame_internal_flags *gfc, const FLOAT xr34orig[2][2][576],
1210
+ const FLOAT l3_xmin[2][2][SFBMAX], const int max_bits[2][2]) {
1211
+ SessionConfig_t const *const cfg = &gfc->cfg;
1212
+ int sfwork_[2][2][SFBMAX];
1213
+ int vbrsfmin_[2][2][SFBMAX];
1214
+ algo_t that_[2][2];
1215
+ int const ngr = cfg->mode_gr;
1216
+ int const nch = cfg->channels_out;
1217
+ int max_nbits_ch[2][2] = {{0, 0},
1218
+ {0, 0}};
1219
+ int max_nbits_gr[2] = {0, 0};
1220
+ int max_nbits_fr = 0;
1221
+ int use_nbits_ch[2][2] = {{MAX_BITS_PER_CHANNEL + 1, MAX_BITS_PER_CHANNEL + 1},
1222
+ {MAX_BITS_PER_CHANNEL + 1, MAX_BITS_PER_CHANNEL + 1}};
1223
+ int use_nbits_gr[2] = {MAX_BITS_PER_GRANULE + 1, MAX_BITS_PER_GRANULE + 1};
1224
+ int use_nbits_fr = MAX_BITS_PER_GRANULE + MAX_BITS_PER_GRANULE;
1225
+ int gr, ch;
1226
+ int ok, sum_fr;
1227
+
1228
+ /* set up some encoding parameters
1229
+ */
1230
+ for (gr = 0; gr < ngr; ++gr) {
1231
+ max_nbits_gr[gr] = 0;
1232
+ for (ch = 0; ch < nch; ++ch) {
1233
+ max_nbits_ch[gr][ch] = max_bits[gr][ch];
1234
+ use_nbits_ch[gr][ch] = 0;
1235
+ max_nbits_gr[gr] += max_bits[gr][ch];
1236
+ max_nbits_fr += max_bits[gr][ch];
1237
+ that_[gr][ch].find = (cfg->full_outer_loop < 0) ? guess_scalefac_x34
1238
+ : find_scalefac_x34;
1239
+ that_[gr][ch].gfc = gfc;
1240
+ that_[gr][ch].cod_info = &gfc->l3_side.tt[gr][ch];
1241
+ that_[gr][ch].xr34orig = xr34orig[gr][ch];
1242
+ if (that_[gr][ch].cod_info->block_type == SHORT_TYPE) {
1243
+ that_[gr][ch].alloc = short_block_constrain;
1244
+ } else {
1245
+ that_[gr][ch].alloc = long_block_constrain;
1246
+ }
1247
+ } /* for ch */
1248
+ }
1249
+ /* searches scalefactors
1250
+ */
1251
+ for (gr = 0; gr < ngr; ++gr) {
1252
+ for (ch = 0; ch < nch; ++ch) {
1253
+ if (max_bits[gr][ch] > 0) {
1254
+ algo_t *that = &that_[gr][ch];
1255
+ int *sfwork = sfwork_[gr][ch];
1256
+ int *vbrsfmin = vbrsfmin_[gr][ch];
1257
+ int vbrmax;
1258
+
1259
+ vbrmax = block_sf(that, l3_xmin[gr][ch], sfwork, vbrsfmin);
1260
+ that->alloc(that, sfwork, vbrsfmin, vbrmax);
1261
+ bitcount(that);
1262
+ } else {
1263
+ /* xr contains no energy
1264
+ * l3_enc, our encoding data, will be quantized to zero
1265
+ * continue with next channel
1266
+ */
1267
+ }
1268
+ } /* for ch */
1269
+ }
1270
+ /* encode 'as is'
1271
+ */
1272
+ use_nbits_fr = 0;
1273
+ for (gr = 0; gr < ngr; ++gr) {
1274
+ use_nbits_gr[gr] = 0;
1275
+ for (ch = 0; ch < nch; ++ch) {
1276
+ algo_t const *that = &that_[gr][ch];
1277
+ if (max_bits[gr][ch] > 0) {
1278
+ memset(&that->cod_info->l3_enc[0], 0, sizeof(that->cod_info->l3_enc));
1279
+ (void) quantizeAndCountBits(that);
1280
+ } else {
1281
+ /* xr contains no energy
1282
+ * l3_enc, our encoding data, will be quantized to zero
1283
+ * continue with next channel
1284
+ */
1285
+ }
1286
+ use_nbits_ch[gr][ch] = reduce_bit_usage(gfc, gr, ch);
1287
+ use_nbits_gr[gr] += use_nbits_ch[gr][ch];
1288
+ } /* for ch */
1289
+ use_nbits_fr += use_nbits_gr[gr];
1290
+ }
1291
+
1292
+ /* check bit constrains
1293
+ */
1294
+ if (use_nbits_fr <= max_nbits_fr) {
1295
+ ok = 1;
1296
+ for (gr = 0; gr < ngr; ++gr) {
1297
+ if (use_nbits_gr[gr] > MAX_BITS_PER_GRANULE) {
1298
+ /* violates the rule that every granule has to use no more
1299
+ * bits than MAX_BITS_PER_GRANULE
1300
+ */
1301
+ ok = 0;
1302
+ }
1303
+ for (ch = 0; ch < nch; ++ch) {
1304
+ if (use_nbits_ch[gr][ch] > MAX_BITS_PER_CHANNEL) {
1305
+ /* violates the rule that every gr_ch has to use no more
1306
+ * bits than MAX_BITS_PER_CHANNEL
1307
+ *
1308
+ * This isn't explicitly stated in the ISO docs, but the
1309
+ * part2_3_length field has only 12 bits, that makes it
1310
+ * up to a maximum size of 4095 bits!!!
1311
+ */
1312
+ ok = 0;
1313
+ }
1314
+ }
1315
+ }
1316
+ if (ok) {
1317
+ return use_nbits_fr;
1318
+ }
1319
+ }
1320
+
1321
+ /* OK, we are in trouble and have to define how many bits are
1322
+ * to be used for each granule
1323
+ */
1324
+ {
1325
+ ok = 1;
1326
+ sum_fr = 0;
1327
+
1328
+ for (gr = 0; gr < ngr; ++gr) {
1329
+ max_nbits_gr[gr] = 0;
1330
+ for (ch = 0; ch < nch; ++ch) {
1331
+ if (use_nbits_ch[gr][ch] > MAX_BITS_PER_CHANNEL) {
1332
+ max_nbits_ch[gr][ch] = MAX_BITS_PER_CHANNEL;
1333
+ } else {
1334
+ max_nbits_ch[gr][ch] = use_nbits_ch[gr][ch];
1335
+ }
1336
+ max_nbits_gr[gr] += max_nbits_ch[gr][ch];
1337
+ }
1338
+ if (max_nbits_gr[gr] > MAX_BITS_PER_GRANULE) {
1339
+ float f[2] = {0.0f, 0.0f}, s = 0.0f;
1340
+ for (ch = 0; ch < nch; ++ch) {
1341
+ if (max_nbits_ch[gr][ch] > 0) {
1342
+ f[ch] = sqrt(sqrt(max_nbits_ch[gr][ch]));
1343
+ s += f[ch];
1344
+ } else {
1345
+ f[ch] = 0;
1346
+ }
1347
+ }
1348
+ for (ch = 0; ch < nch; ++ch) {
1349
+ if (s > 0) {
1350
+ max_nbits_ch[gr][ch] = MAX_BITS_PER_GRANULE * f[ch] / s;
1351
+ } else {
1352
+ max_nbits_ch[gr][ch] = 0;
1353
+ }
1354
+ }
1355
+ if (nch > 1) {
1356
+ if (max_nbits_ch[gr][0] > use_nbits_ch[gr][0] + 32) {
1357
+ max_nbits_ch[gr][1] += max_nbits_ch[gr][0];
1358
+ max_nbits_ch[gr][1] -= use_nbits_ch[gr][0] + 32;
1359
+ max_nbits_ch[gr][0] = use_nbits_ch[gr][0] + 32;
1360
+ }
1361
+ if (max_nbits_ch[gr][1] > use_nbits_ch[gr][1] + 32) {
1362
+ max_nbits_ch[gr][0] += max_nbits_ch[gr][1];
1363
+ max_nbits_ch[gr][0] -= use_nbits_ch[gr][1] + 32;
1364
+ max_nbits_ch[gr][1] = use_nbits_ch[gr][1] + 32;
1365
+ }
1366
+ if (max_nbits_ch[gr][0] > MAX_BITS_PER_CHANNEL) {
1367
+ max_nbits_ch[gr][0] = MAX_BITS_PER_CHANNEL;
1368
+ }
1369
+ if (max_nbits_ch[gr][1] > MAX_BITS_PER_CHANNEL) {
1370
+ max_nbits_ch[gr][1] = MAX_BITS_PER_CHANNEL;
1371
+ }
1372
+ }
1373
+ max_nbits_gr[gr] = 0;
1374
+ for (ch = 0; ch < nch; ++ch) {
1375
+ max_nbits_gr[gr] += max_nbits_ch[gr][ch];
1376
+ }
1377
+ }
1378
+ sum_fr += max_nbits_gr[gr];
1379
+ }
1380
+ if (sum_fr > max_nbits_fr) {
1381
+ {
1382
+ float f[2] = {0.0f, 0.0f}, s = 0.0f;
1383
+ for (gr = 0; gr < ngr; ++gr) {
1384
+ if (max_nbits_gr[gr] > 0) {
1385
+ f[gr] = sqrt(max_nbits_gr[gr]);
1386
+ s += f[gr];
1387
+ } else {
1388
+ f[gr] = 0;
1389
+ }
1390
+ }
1391
+ for (gr = 0; gr < ngr; ++gr) {
1392
+ if (s > 0) {
1393
+ max_nbits_gr[gr] = max_nbits_fr * f[gr] / s;
1394
+ } else {
1395
+ max_nbits_gr[gr] = 0;
1396
+ }
1397
+ }
1398
+ }
1399
+ if (ngr > 1) {
1400
+ if (max_nbits_gr[0] > use_nbits_gr[0] + 125) {
1401
+ max_nbits_gr[1] += max_nbits_gr[0];
1402
+ max_nbits_gr[1] -= use_nbits_gr[0] + 125;
1403
+ max_nbits_gr[0] = use_nbits_gr[0] + 125;
1404
+ }
1405
+ if (max_nbits_gr[1] > use_nbits_gr[1] + 125) {
1406
+ max_nbits_gr[0] += max_nbits_gr[1];
1407
+ max_nbits_gr[0] -= use_nbits_gr[1] + 125;
1408
+ max_nbits_gr[1] = use_nbits_gr[1] + 125;
1409
+ }
1410
+ for (gr = 0; gr < ngr; ++gr) {
1411
+ if (max_nbits_gr[gr] > MAX_BITS_PER_GRANULE) {
1412
+ max_nbits_gr[gr] = MAX_BITS_PER_GRANULE;
1413
+ }
1414
+ }
1415
+ }
1416
+ for (gr = 0; gr < ngr; ++gr) {
1417
+ float f[2] = {0.0f, 0.0f}, s = 0.0f;
1418
+ for (ch = 0; ch < nch; ++ch) {
1419
+ if (max_nbits_ch[gr][ch] > 0) {
1420
+ f[ch] = sqrt(max_nbits_ch[gr][ch]);
1421
+ s += f[ch];
1422
+ } else {
1423
+ f[ch] = 0;
1424
+ }
1425
+ }
1426
+ for (ch = 0; ch < nch; ++ch) {
1427
+ if (s > 0) {
1428
+ max_nbits_ch[gr][ch] = max_nbits_gr[gr] * f[ch] / s;
1429
+ } else {
1430
+ max_nbits_ch[gr][ch] = 0;
1431
+ }
1432
+ }
1433
+ if (nch > 1) {
1434
+ if (max_nbits_ch[gr][0] > use_nbits_ch[gr][0] + 32) {
1435
+ max_nbits_ch[gr][1] += max_nbits_ch[gr][0];
1436
+ max_nbits_ch[gr][1] -= use_nbits_ch[gr][0] + 32;
1437
+ max_nbits_ch[gr][0] = use_nbits_ch[gr][0] + 32;
1438
+ }
1439
+ if (max_nbits_ch[gr][1] > use_nbits_ch[gr][1] + 32) {
1440
+ max_nbits_ch[gr][0] += max_nbits_ch[gr][1];
1441
+ max_nbits_ch[gr][0] -= use_nbits_ch[gr][1] + 32;
1442
+ max_nbits_ch[gr][1] = use_nbits_ch[gr][1] + 32;
1443
+ }
1444
+ for (ch = 0; ch < nch; ++ch) {
1445
+ if (max_nbits_ch[gr][ch] > MAX_BITS_PER_CHANNEL) {
1446
+ max_nbits_ch[gr][ch] = MAX_BITS_PER_CHANNEL;
1447
+ }
1448
+ }
1449
+ }
1450
+ }
1451
+ }
1452
+ /* sanity check */
1453
+ sum_fr = 0;
1454
+ for (gr = 0; gr < ngr; ++gr) {
1455
+ int sum_gr = 0;
1456
+ for (ch = 0; ch < nch; ++ch) {
1457
+ sum_gr += max_nbits_ch[gr][ch];
1458
+ if (max_nbits_ch[gr][ch] > MAX_BITS_PER_CHANNEL) {
1459
+ ok = 0;
1460
+ }
1461
+ }
1462
+ sum_fr += sum_gr;
1463
+ if (sum_gr > MAX_BITS_PER_GRANULE) {
1464
+ ok = 0;
1465
+ }
1466
+ }
1467
+ if (sum_fr > max_nbits_fr) {
1468
+ ok = 0;
1469
+ }
1470
+ if (!ok) {
1471
+ /* we must have done something wrong, fallback to 'on_pe' based constrain */
1472
+ for (gr = 0; gr < ngr; ++gr) {
1473
+ for (ch = 0; ch < nch; ++ch) {
1474
+ max_nbits_ch[gr][ch] = max_bits[gr][ch];
1475
+ }
1476
+ }
1477
+ }
1478
+ }
1479
+
1480
+ /* we already called the 'best_scalefac_store' function, so we need to reset some
1481
+ * variables before we can do it again.
1482
+ */
1483
+ for (ch = 0; ch < nch; ++ch) {
1484
+ gfc->l3_side.scfsi[ch][0] = 0;
1485
+ gfc->l3_side.scfsi[ch][1] = 0;
1486
+ gfc->l3_side.scfsi[ch][2] = 0;
1487
+ gfc->l3_side.scfsi[ch][3] = 0;
1488
+ }
1489
+ for (gr = 0; gr < ngr; ++gr) {
1490
+ for (ch = 0; ch < nch; ++ch) {
1491
+ gfc->l3_side.tt[gr][ch].scalefac_compress = 0;
1492
+ }
1493
+ }
1494
+
1495
+ /* alter our encoded data, until it fits into the target bitrate
1496
+ */
1497
+ use_nbits_fr = 0;
1498
+ for (gr = 0; gr < ngr; ++gr) {
1499
+ use_nbits_gr[gr] = 0;
1500
+ for (ch = 0; ch < nch; ++ch) {
1501
+ algo_t const *that = &that_[gr][ch];
1502
+ use_nbits_ch[gr][ch] = 0;
1503
+ if (max_bits[gr][ch] > 0) {
1504
+ int *sfwork = sfwork_[gr][ch];
1505
+ int const *vbrsfmin = vbrsfmin_[gr][ch];
1506
+ cutDistribution(sfwork, sfwork, that->cod_info->global_gain);
1507
+ outOfBitsStrategy(that, sfwork, vbrsfmin, max_nbits_ch[gr][ch]);
1508
+ }
1509
+ use_nbits_ch[gr][ch] = reduce_bit_usage(gfc, gr, ch);
1510
+ assert(use_nbits_ch[gr][ch] <= max_nbits_ch[gr][ch]);
1511
+ use_nbits_gr[gr] += use_nbits_ch[gr][ch];
1512
+ } /* for ch */
1513
+ use_nbits_fr += use_nbits_gr[gr];
1514
+ }
1515
+
1516
+ /* check bit constrains, but it should always be ok, iff there are no bugs ;-)
1517
+ */
1518
+ if (use_nbits_fr <= max_nbits_fr) {
1519
+ return use_nbits_fr;
1520
+ }
1521
+
1522
+ ERRORF(gfc, "INTERNAL ERROR IN VBR NEW CODE (1313), please send bug report\n"
1523
+ "maxbits=%d usedbits=%d\n", max_nbits_fr, use_nbits_fr);
1524
+ exit(-1);
1525
+ }