react-native-alpha-video 0.0.0-stage → 1.0.1

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 (283) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +908 -2
  3. package/THIRD_PARTY_NOTICES.md +30 -0
  4. package/android/av1/build.gradle +67 -0
  5. package/android/av1/consumer-rules.pro +4 -0
  6. package/android/av1/src/main/cpp/Av1Codec_jni.cpp +8 -0
  7. package/android/av1/src/main/cpp/CMakeLists.txt +34 -0
  8. package/android/av1/src/main/java/dev/mediacache/alphavideo/av1/Av1Codec.java +21 -0
  9. package/android/build.gradle +90 -0
  10. package/android/consumer-rules.pro +2 -0
  11. package/android/gradle.properties +1 -0
  12. package/android/publish.gradle +82 -0
  13. package/android/settings.gradle +5 -0
  14. package/android/src/main/AndroidManifest.xml +1 -0
  15. package/android/src/main/cpp/CMakeLists.txt +59 -0
  16. package/android/src/main/java/dev/mediacache/alphavideo/AlphaVideoCodecs.java +73 -0
  17. package/android/src/main/java/dev/mediacache/alphavideo/AlphaVideoView.java +1982 -0
  18. package/android/src/main/java/dev/mediacache/alphavideo/BufferedDualStreamPlayer.java +978 -0
  19. package/android/src/main/java/dev/mediacache/alphavideo/Fetcher.java +37 -0
  20. package/android/src/main/java/dev/mediacache/alphavideo/HttpFetcher.java +156 -0
  21. package/android/src/main/java/dev/mediacache/alphavideo/MediaCodecColor.java +47 -0
  22. package/android/src/main/java/dev/mediacache/alphavideo/MediaCodecDecoders.java +135 -0
  23. package/android/src/main/java/dev/mediacache/alphavideo/RangeSourceLink.java +54 -0
  24. package/android/src/main/java/dev/mediacache/alphavideo/SourceReader.java +174 -0
  25. package/android/src/main/java/dev/mediacache/alphavideo/SurfaceTextureVideoDecoder.java +802 -0
  26. package/android/src/main/java/dev/mediacache/alphavideo/WebMAlphaPlayerNative.java +95 -0
  27. package/android/src/main/java/dev/mediacache/alphavideo/WebMFrame.java +54 -0
  28. package/android/src/main/java/dev/mediacache/alphavideo/WebMSource.java +160 -0
  29. package/android/src/rangesource/java/dev/mediacache/alphavideo/AppDataSource.java +50 -0
  30. package/android/vpx/build.gradle +67 -0
  31. package/android/vpx/consumer-rules.pro +4 -0
  32. package/android/vpx/src/main/cpp/CMakeLists.txt +34 -0
  33. package/android/vpx/src/main/cpp/VpxCodec_jni.cpp +8 -0
  34. package/android/vpx/src/main/java/dev/mediacache/alphavideo/vpx/VpxCodec.java +21 -0
  35. package/codecs/av1/Dav1dDecoderPlugin.cpp +157 -0
  36. package/codecs/av1/Dav1dDecoderPlugin.h +17 -0
  37. package/codecs/vpx/VpxDecoderPlugin.cpp +103 -0
  38. package/codecs/vpx/VpxDecoderPlugin.h +17 -0
  39. package/cpp/AlphaDemuxer.cpp +984 -0
  40. package/cpp/AlphaDemuxer.h +123 -0
  41. package/cpp/AlphaVideoDecoderPlugin.h +84 -0
  42. package/cpp/Av1SequenceHeader.cpp +175 -0
  43. package/cpp/Av1SequenceHeader.h +25 -0
  44. package/cpp/ByteSource.cpp +116 -0
  45. package/cpp/ByteSource.h +59 -0
  46. package/cpp/RangeSourceClient.h +40 -0
  47. package/cpp/VideoDecoder.cpp +157 -0
  48. package/cpp/VideoDecoder.h +83 -0
  49. package/cpp/WebMAlphaPlayer.cpp +1666 -0
  50. package/cpp/WebMAlphaPlayer.h +389 -0
  51. package/cpp/WebMAlphaPlayer_jni.cpp +1380 -0
  52. package/cpp/YuvToRgb.cpp +39 -0
  53. package/cpp/YuvToRgb.h +40 -0
  54. package/ios/Sources/AlphaVideo/AlphaVideoCodecs.mm +63 -0
  55. package/ios/Sources/AlphaVideo/AlphaVideoInternal.h +70 -0
  56. package/ios/Sources/AlphaVideo/AlphaVideoPlayer.mm +994 -0
  57. package/ios/Sources/AlphaVideo/AlphaVideoSource.mm +476 -0
  58. package/ios/Sources/AlphaVideo/AlphaVideoView.mm +374 -0
  59. package/ios/Sources/AlphaVideo/include/AlphaVideo.h +303 -0
  60. package/ios/Sources/AlphaVideoAV1/AlphaVideoAV1Codec.mm +16 -0
  61. package/ios/Sources/AlphaVideoAV1/include/AlphaVideoAV1.h +18 -0
  62. package/ios/Sources/AlphaVideoVPX/AlphaVideoVPXCodec.mm +16 -0
  63. package/ios/Sources/AlphaVideoVPX/include/AlphaVideoVPX.h +17 -0
  64. package/lib/commonjs/AlphaVideoView.js +187 -0
  65. package/lib/commonjs/AlphaVideoView.js.map +1 -0
  66. package/lib/commonjs/AlphaVideoViewNativeComponent.js +47 -0
  67. package/lib/commonjs/AlphaVideoViewNativeComponent.js.map +1 -0
  68. package/lib/commonjs/AlphaVideoViewNativeComponent.web.js +11 -0
  69. package/lib/commonjs/AlphaVideoViewNativeComponent.web.js.map +1 -0
  70. package/lib/commonjs/NativeAlphaVideoModule.js +10 -0
  71. package/lib/commonjs/NativeAlphaVideoModule.js.map +1 -0
  72. package/lib/commonjs/NativeAlphaVideoModule.web.js +9 -0
  73. package/lib/commonjs/NativeAlphaVideoModule.web.js.map +1 -0
  74. package/lib/commonjs/WebPlayer.js +12 -0
  75. package/lib/commonjs/WebPlayer.js.map +1 -0
  76. package/lib/commonjs/WebPlayer.web.js +115 -0
  77. package/lib/commonjs/WebPlayer.web.js.map +1 -0
  78. package/lib/commonjs/index.js +124 -0
  79. package/lib/commonjs/index.js.map +1 -0
  80. package/lib/module/AlphaVideoView.js +187 -0
  81. package/lib/module/AlphaVideoView.js.map +1 -0
  82. package/lib/module/AlphaVideoViewNativeComponent.js +47 -0
  83. package/lib/module/AlphaVideoViewNativeComponent.js.map +1 -0
  84. package/lib/module/AlphaVideoViewNativeComponent.web.js +11 -0
  85. package/lib/module/AlphaVideoViewNativeComponent.web.js.map +1 -0
  86. package/lib/module/NativeAlphaVideoModule.js +10 -0
  87. package/lib/module/NativeAlphaVideoModule.js.map +1 -0
  88. package/lib/module/NativeAlphaVideoModule.web.js +9 -0
  89. package/lib/module/NativeAlphaVideoModule.web.js.map +1 -0
  90. package/lib/module/WebPlayer.js +12 -0
  91. package/lib/module/WebPlayer.js.map +1 -0
  92. package/lib/module/WebPlayer.web.js +115 -0
  93. package/lib/module/WebPlayer.web.js.map +1 -0
  94. package/lib/module/index.js +124 -0
  95. package/lib/module/index.js.map +1 -0
  96. package/lib/typescript/react-native/src/AlphaVideoView.d.ts +189 -0
  97. package/lib/typescript/react-native/src/AlphaVideoView.d.ts.map +1 -0
  98. package/lib/typescript/react-native/src/AlphaVideoViewNativeComponent.d.ts +109 -0
  99. package/lib/typescript/react-native/src/AlphaVideoViewNativeComponent.d.ts.map +1 -0
  100. package/lib/typescript/react-native/src/AlphaVideoViewNativeComponent.web.d.ts +5 -0
  101. package/lib/typescript/react-native/src/AlphaVideoViewNativeComponent.web.d.ts.map +1 -0
  102. package/lib/typescript/react-native/src/NativeAlphaVideoModule.d.ts +21 -0
  103. package/lib/typescript/react-native/src/NativeAlphaVideoModule.d.ts.map +1 -0
  104. package/lib/typescript/react-native/src/NativeAlphaVideoModule.web.d.ts +3 -0
  105. package/lib/typescript/react-native/src/NativeAlphaVideoModule.web.d.ts.map +1 -0
  106. package/lib/typescript/react-native/src/WebPlayer.d.ts +3 -0
  107. package/lib/typescript/react-native/src/WebPlayer.d.ts.map +1 -0
  108. package/lib/typescript/react-native/src/WebPlayer.web.d.ts +9 -0
  109. package/lib/typescript/react-native/src/WebPlayer.web.d.ts.map +1 -0
  110. package/lib/typescript/react-native/src/index.d.ts +77 -0
  111. package/lib/typescript/react-native/src/index.d.ts.map +1 -0
  112. package/licenses/dav1d-COPYING.txt +23 -0
  113. package/licenses/libvpx-LICENSE.txt +31 -0
  114. package/licenses/libvpx-PATENTS.txt +23 -0
  115. package/licenses/libwebm-LICENSE.txt +30 -0
  116. package/licenses/libwebm-PATENTS.txt +23 -0
  117. package/package.json +152 -4
  118. package/prebuilt/android/arm64-v8a/lib/libdav1d.a +0 -0
  119. package/prebuilt/android/arm64-v8a/lib/libvpx.a +0 -0
  120. package/prebuilt/android/armeabi-v7a/lib/libdav1d.a +0 -0
  121. package/prebuilt/android/armeabi-v7a/lib/libvpx.a +0 -0
  122. package/prebuilt/android/x86_64/lib/libdav1d.a +0 -0
  123. package/prebuilt/android/x86_64/lib/libvpx.a +0 -0
  124. package/prebuilt/include/dav1d/common.h +94 -0
  125. package/prebuilt/include/dav1d/data.h +117 -0
  126. package/prebuilt/include/dav1d/dav1d.h +329 -0
  127. package/prebuilt/include/dav1d/headers.h +440 -0
  128. package/prebuilt/include/dav1d/picture.h +157 -0
  129. package/prebuilt/include/dav1d/version.h +50 -0
  130. package/prebuilt/include/vpx/vp8.h +136 -0
  131. package/prebuilt/include/vpx/vp8dx.h +228 -0
  132. package/prebuilt/include/vpx/vpx_codec.h +475 -0
  133. package/prebuilt/include/vpx/vpx_decoder.h +365 -0
  134. package/prebuilt/include/vpx/vpx_frame_buffer.h +83 -0
  135. package/prebuilt/include/vpx/vpx_image.h +209 -0
  136. package/prebuilt/include/vpx/vpx_integer.h +40 -0
  137. package/prebuilt/ios/lib/libdav1d.a +0 -0
  138. package/prebuilt/ios/lib/libvpx.a +0 -0
  139. package/prebuilt/ios-simulator/include/dav1d/common.h +94 -0
  140. package/prebuilt/ios-simulator/include/dav1d/data.h +117 -0
  141. package/prebuilt/ios-simulator/include/dav1d/dav1d.h +329 -0
  142. package/prebuilt/ios-simulator/include/dav1d/headers.h +440 -0
  143. package/prebuilt/ios-simulator/include/dav1d/picture.h +157 -0
  144. package/prebuilt/ios-simulator/include/dav1d/version.h +50 -0
  145. package/prebuilt/ios-simulator/include/vpx/vp8.h +136 -0
  146. package/prebuilt/ios-simulator/include/vpx/vp8dx.h +228 -0
  147. package/prebuilt/ios-simulator/include/vpx/vpx_codec.h +475 -0
  148. package/prebuilt/ios-simulator/include/vpx/vpx_decoder.h +365 -0
  149. package/prebuilt/ios-simulator/include/vpx/vpx_frame_buffer.h +83 -0
  150. package/prebuilt/ios-simulator/include/vpx/vpx_image.h +209 -0
  151. package/prebuilt/ios-simulator/include/vpx/vpx_integer.h +40 -0
  152. package/prebuilt/ios-simulator/lib/libdav1d.a +0 -0
  153. package/prebuilt/ios-simulator/lib/libvpx.a +0 -0
  154. package/react-native/android/CMakeLists.txt +14 -0
  155. package/react-native/android/build.gradle +113 -0
  156. package/react-native/android/src/main/AndroidManifest.xml +1 -0
  157. package/react-native/android/src/main/java/dev/mediacache/alphavideo/reactnative/AlphaVideoModule.java +102 -0
  158. package/react-native/android/src/main/java/dev/mediacache/alphavideo/reactnative/AlphaVideoPackage.java +50 -0
  159. package/react-native/android/src/main/java/dev/mediacache/alphavideo/reactnative/AlphaVideoViewManager.java +317 -0
  160. package/react-native/android/src/newarch/java/dev/mediacache/alphavideo/reactnative/AlphaVideoModuleSpec.java +10 -0
  161. package/react-native/android/src/newarch/java/dev/mediacache/alphavideo/reactnative/AlphaVideoViewManagerSpec.java +23 -0
  162. package/react-native/android/src/norangesource/java/dev/mediacache/alphavideo/AppDataSource.java +15 -0
  163. package/react-native/android/src/oldarch/java/dev/mediacache/alphavideo/reactnative/AlphaVideoModuleSpec.java +30 -0
  164. package/react-native/android/src/oldarch/java/dev/mediacache/alphavideo/reactnative/AlphaVideoViewManagerSpec.java +61 -0
  165. package/react-native/ios/RNAlphaVideoViewComponentView.mm +173 -0
  166. package/react-native/ios/RNAlphaVideoViewManager.mm +147 -0
  167. package/react-native/src/AlphaVideoView.tsx +329 -0
  168. package/react-native/src/AlphaVideoViewNativeComponent.ts +132 -0
  169. package/react-native/src/AlphaVideoViewNativeComponent.web.ts +5 -0
  170. package/react-native/src/NativeAlphaVideoModule.ts +22 -0
  171. package/react-native/src/NativeAlphaVideoModule.web.ts +2 -0
  172. package/react-native/src/WebPlayer.tsx +7 -0
  173. package/react-native/src/WebPlayer.web.tsx +87 -0
  174. package/react-native/src/index.tsx +144 -0
  175. package/react-native-alpha-video.podspec +99 -0
  176. package/react-native.config.js +12 -0
  177. package/scripts/build_codecs_android.sh +246 -0
  178. package/scripts/build_codecs_ios.sh +31 -0
  179. package/scripts/build_codecs_ios_device.sh +210 -0
  180. package/scripts/build_codecs_ios_simulator.sh +256 -0
  181. package/scripts/build_wasm.sh +230 -0
  182. package/scripts/build_xcframework.sh +49 -0
  183. package/scripts/fetch-prebuilt.sh +48 -0
  184. package/scripts/package_release.sh +107 -0
  185. package/scripts/publish-android.sh +85 -0
  186. package/scripts/vendor_range_source.sh +47 -0
  187. package/third_party/libwebm/AUTHORS.TXT +5 -0
  188. package/third_party/libwebm/LICENSE.TXT +30 -0
  189. package/third_party/libwebm/PATENTS.TXT +23 -0
  190. package/third_party/libwebm/README.md +7 -0
  191. package/third_party/libwebm/webm_parser/include/webm/buffer_reader.h +138 -0
  192. package/third_party/libwebm/webm_parser/include/webm/callback.h +363 -0
  193. package/third_party/libwebm/webm_parser/include/webm/dom_types.h +1781 -0
  194. package/third_party/libwebm/webm_parser/include/webm/element.h +208 -0
  195. package/third_party/libwebm/webm_parser/include/webm/file_reader.h +103 -0
  196. package/third_party/libwebm/webm_parser/include/webm/id.h +1085 -0
  197. package/third_party/libwebm/webm_parser/include/webm/istream_reader.h +99 -0
  198. package/third_party/libwebm/webm_parser/include/webm/reader.h +94 -0
  199. package/third_party/libwebm/webm_parser/include/webm/status.h +166 -0
  200. package/third_party/libwebm/webm_parser/include/webm/webm_parser.h +133 -0
  201. package/third_party/libwebm/webm_parser/src/ancestory.cc +334 -0
  202. package/third_party/libwebm/webm_parser/src/ancestory.h +83 -0
  203. package/third_party/libwebm/webm_parser/src/audio_parser.h +84 -0
  204. package/third_party/libwebm/webm_parser/src/bit_utils.cc +26 -0
  205. package/third_party/libwebm/webm_parser/src/bit_utils.h +24 -0
  206. package/third_party/libwebm/webm_parser/src/block_additions_parser.h +30 -0
  207. package/third_party/libwebm/webm_parser/src/block_group_parser.h +71 -0
  208. package/third_party/libwebm/webm_parser/src/block_header_parser.cc +76 -0
  209. package/third_party/libwebm/webm_parser/src/block_header_parser.h +65 -0
  210. package/third_party/libwebm/webm_parser/src/block_more_parser.h +32 -0
  211. package/third_party/libwebm/webm_parser/src/block_parser.cc +285 -0
  212. package/third_party/libwebm/webm_parser/src/block_parser.h +126 -0
  213. package/third_party/libwebm/webm_parser/src/bool_parser.h +95 -0
  214. package/third_party/libwebm/webm_parser/src/buffer_reader.cc +110 -0
  215. package/third_party/libwebm/webm_parser/src/byte_parser.h +144 -0
  216. package/third_party/libwebm/webm_parser/src/callback.cc +155 -0
  217. package/third_party/libwebm/webm_parser/src/chapter_atom_parser.h +42 -0
  218. package/third_party/libwebm/webm_parser/src/chapter_display_parser.h +34 -0
  219. package/third_party/libwebm/webm_parser/src/chapters_parser.h +28 -0
  220. package/third_party/libwebm/webm_parser/src/cluster_parser.h +48 -0
  221. package/third_party/libwebm/webm_parser/src/colour_parser.h +55 -0
  222. package/third_party/libwebm/webm_parser/src/content_enc_aes_settings_parser.h +32 -0
  223. package/third_party/libwebm/webm_parser/src/content_encoding_parser.h +38 -0
  224. package/third_party/libwebm/webm_parser/src/content_encodings_parser.h +30 -0
  225. package/third_party/libwebm/webm_parser/src/content_encryption_parser.h +37 -0
  226. package/third_party/libwebm/webm_parser/src/cue_point_parser.h +38 -0
  227. package/third_party/libwebm/webm_parser/src/cue_track_positions_parser.h +39 -0
  228. package/third_party/libwebm/webm_parser/src/cues_parser.h +27 -0
  229. package/third_party/libwebm/webm_parser/src/date_parser.cc +72 -0
  230. package/third_party/libwebm/webm_parser/src/date_parser.h +64 -0
  231. package/third_party/libwebm/webm_parser/src/ebml_parser.h +48 -0
  232. package/third_party/libwebm/webm_parser/src/edition_entry_parser.h +35 -0
  233. package/third_party/libwebm/webm_parser/src/element_parser.h +102 -0
  234. package/third_party/libwebm/webm_parser/src/file_reader.cc +142 -0
  235. package/third_party/libwebm/webm_parser/src/float_parser.cc +77 -0
  236. package/third_party/libwebm/webm_parser/src/float_parser.h +65 -0
  237. package/third_party/libwebm/webm_parser/src/id_element_parser.cc +49 -0
  238. package/third_party/libwebm/webm_parser/src/id_element_parser.h +56 -0
  239. package/third_party/libwebm/webm_parser/src/id_parser.cc +75 -0
  240. package/third_party/libwebm/webm_parser/src/id_parser.h +45 -0
  241. package/third_party/libwebm/webm_parser/src/info_parser.h +44 -0
  242. package/third_party/libwebm/webm_parser/src/int_parser.h +121 -0
  243. package/third_party/libwebm/webm_parser/src/istream_reader.cc +133 -0
  244. package/third_party/libwebm/webm_parser/src/master_parser.cc +298 -0
  245. package/third_party/libwebm/webm_parser/src/master_parser.h +230 -0
  246. package/third_party/libwebm/webm_parser/src/master_value_parser.h +533 -0
  247. package/third_party/libwebm/webm_parser/src/mastering_metadata_parser.h +57 -0
  248. package/third_party/libwebm/webm_parser/src/parser.h +34 -0
  249. package/third_party/libwebm/webm_parser/src/parser_utils.cc +34 -0
  250. package/third_party/libwebm/webm_parser/src/parser_utils.h +64 -0
  251. package/third_party/libwebm/webm_parser/src/projection_parser.h +40 -0
  252. package/third_party/libwebm/webm_parser/src/recursive_parser.h +93 -0
  253. package/third_party/libwebm/webm_parser/src/seek_head_parser.h +27 -0
  254. package/third_party/libwebm/webm_parser/src/seek_parser.h +37 -0
  255. package/third_party/libwebm/webm_parser/src/segment_parser.cc +86 -0
  256. package/third_party/libwebm/webm_parser/src/segment_parser.h +53 -0
  257. package/third_party/libwebm/webm_parser/src/simple_tag_parser.h +37 -0
  258. package/third_party/libwebm/webm_parser/src/size_parser.cc +56 -0
  259. package/third_party/libwebm/webm_parser/src/size_parser.h +43 -0
  260. package/third_party/libwebm/webm_parser/src/skip_callback.h +63 -0
  261. package/third_party/libwebm/webm_parser/src/skip_parser.cc +59 -0
  262. package/third_party/libwebm/webm_parser/src/skip_parser.h +35 -0
  263. package/third_party/libwebm/webm_parser/src/slices_parser.h +30 -0
  264. package/third_party/libwebm/webm_parser/src/tag_parser.h +37 -0
  265. package/third_party/libwebm/webm_parser/src/tags_parser.h +27 -0
  266. package/third_party/libwebm/webm_parser/src/targets_parser.h +35 -0
  267. package/third_party/libwebm/webm_parser/src/time_slice_parser.h +30 -0
  268. package/third_party/libwebm/webm_parser/src/track_entry_parser.h +65 -0
  269. package/third_party/libwebm/webm_parser/src/tracks_parser.h +27 -0
  270. package/third_party/libwebm/webm_parser/src/unknown_parser.cc +49 -0
  271. package/third_party/libwebm/webm_parser/src/unknown_parser.h +38 -0
  272. package/third_party/libwebm/webm_parser/src/var_int_parser.cc +71 -0
  273. package/third_party/libwebm/webm_parser/src/var_int_parser.h +56 -0
  274. package/third_party/libwebm/webm_parser/src/video_parser.h +122 -0
  275. package/third_party/libwebm/webm_parser/src/virtual_block_parser.cc +72 -0
  276. package/third_party/libwebm/webm_parser/src/virtual_block_parser.h +69 -0
  277. package/third_party/libwebm/webm_parser/src/void_parser.cc +49 -0
  278. package/third_party/libwebm/webm_parser/src/void_parser.h +41 -0
  279. package/third_party/libwebm/webm_parser/src/webm_parser.cc +282 -0
  280. package/third_party/range-source/LICENSE +21 -0
  281. package/third_party/range-source/README.md +8 -0
  282. package/third_party/range-source/include/range_source.h +395 -0
  283. package/third_party/range-source/include/range_source_download.h +309 -0
@@ -0,0 +1,1085 @@
1
+ // Copyright (c) 2016 The WebM project authors. All Rights Reserved.
2
+ //
3
+ // Use of this source code is governed by a BSD-style license
4
+ // that can be found in the LICENSE file in the root of the source
5
+ // tree. An additional intellectual property rights grant can be found
6
+ // in the file PATENTS. All contributing project authors may
7
+ // be found in the AUTHORS file in the root of the source tree.
8
+ #ifndef INCLUDE_WEBM_ID_H_
9
+ #define INCLUDE_WEBM_ID_H_
10
+
11
+ #include <cstdint>
12
+
13
+ /**
14
+ \file
15
+ A full enumeration of WebM's EBML IDs.
16
+ */
17
+
18
+ namespace webm {
19
+
20
+ /**
21
+ \addtogroup PUBLIC_API
22
+ @{
23
+ */
24
+
25
+ /**
26
+ An EBML ID for a WebM element.
27
+
28
+ The enum names correspond to the element names from the Matroska and WebM
29
+ specifications. See those specifications for further information on each
30
+ element.
31
+ */
32
+ // For the WebM spec and element info, see:
33
+ // http://www.webmproject.org/docs/container/
34
+ // http://www.webmproject.org/docs/webm-encryption/#42-new-matroskawebm-elements
35
+ // http://matroska.org/technical/specs/index.html
36
+ enum class Id : std::uint32_t {
37
+ // The MatroskaID alias links to the WebM and Matroska specifications.
38
+ // The WebMID alias links to the WebM specification.
39
+ // The WebMTable alias produces a table given the following arguments:
40
+ // Type, Level, Mandatory, Multiple, Recursive, Value range, Default value
41
+
42
+ /**
43
+ \MatroskaID{EBML} element ID.
44
+
45
+ \WebMTable{Master, 0, Yes, Yes, No, , }
46
+ */
47
+ kEbml = 0x1A45DFA3,
48
+
49
+ /**
50
+ \MatroskaID{EBMLVersion} element ID.
51
+
52
+ \WebMTable{Unsigned integer, 1, Yes, No, No, , 1}
53
+ */
54
+ kEbmlVersion = 0x4286,
55
+
56
+ /**
57
+ \MatroskaID{EBMLReadVersion} element ID.
58
+
59
+ \WebMTable{Unsigned integer, 1, Yes, No, No, , 1}
60
+ */
61
+ kEbmlReadVersion = 0x42F7,
62
+
63
+ /**
64
+ \MatroskaID{EBMLMaxIDLength} element ID.
65
+
66
+ \WebMTable{Unsigned integer, 1, Yes, No, No, , 4}
67
+ */
68
+ kEbmlMaxIdLength = 0x42F2,
69
+
70
+ /**
71
+ \MatroskaID{EBMLMaxSizeLength} element ID.
72
+
73
+ \WebMTable{Unsigned integer, 1, Yes, No, No, , 8}
74
+ */
75
+ kEbmlMaxSizeLength = 0x42F3,
76
+
77
+ /**
78
+ \MatroskaID{DocType} element ID.
79
+
80
+ \WebMTable{ASCII string, 1, Yes, No, No, , matroska}
81
+ */
82
+ kDocType = 0x4282,
83
+
84
+ /**
85
+ \MatroskaID{DocTypeVersion} element ID.
86
+
87
+ \WebMTable{Unsigned integer, 1, Yes, No, No, , 1}
88
+ */
89
+ kDocTypeVersion = 0x4287,
90
+
91
+ /**
92
+ \MatroskaID{DocTypeReadVersion} element ID.
93
+
94
+ \WebMTable{Unsigned integer, 1, Yes, No, No, , 1}
95
+ */
96
+ kDocTypeReadVersion = 0x4285,
97
+
98
+ /**
99
+ \MatroskaID{Void} element ID.
100
+
101
+ \WebMTable{Binary, g, No, No, No, , }
102
+ */
103
+ kVoid = 0xEC,
104
+
105
+ /**
106
+ \MatroskaID{Segment} element ID.
107
+
108
+ \WebMTable{Master, 0, Yes, Yes, No, , }
109
+ */
110
+ kSegment = 0x18538067,
111
+
112
+ /**
113
+ \MatroskaID{SeekHead} element ID.
114
+
115
+ \WebMTable{Master, 1, No, Yes, No, , }
116
+ */
117
+ kSeekHead = 0x114D9B74,
118
+
119
+ /**
120
+ \MatroskaID{Seek} element ID.
121
+
122
+ \WebMTable{Master, 2, Yes, Yes, No, , }
123
+ */
124
+ kSeek = 0x4DBB,
125
+
126
+ /**
127
+ \MatroskaID{SeekID} element ID.
128
+
129
+ \WebMTable{Binary, 3, Yes, No, No, , }
130
+ */
131
+ kSeekId = 0x53AB,
132
+
133
+ /**
134
+ \MatroskaID{SeekPosition} element ID.
135
+
136
+ \WebMTable{Unsigned integer, 3, Yes, No, No, , 0}
137
+ */
138
+ kSeekPosition = 0x53AC,
139
+
140
+ /**
141
+ \MatroskaID{Info} element ID.
142
+
143
+ \WebMTable{Master, 1, Yes, Yes, No, , }
144
+ */
145
+ kInfo = 0x1549A966,
146
+
147
+ /**
148
+ \MatroskaID{TimecodeScale} element ID.
149
+
150
+ \WebMTable{Unsigned integer, 2, Yes, No, No, , 1000000}
151
+ */
152
+ kTimecodeScale = 0x2AD7B1,
153
+
154
+ /**
155
+ \MatroskaID{Duration} element ID.
156
+
157
+ \WebMTable{Float, 2, No, No, No, > 0, 0}
158
+ */
159
+ kDuration = 0x4489,
160
+
161
+ /**
162
+ \MatroskaID{DateUTC} element ID.
163
+
164
+ \WebMTable{Date, 2, No, No, No, , 0}
165
+ */
166
+ kDateUtc = 0x4461,
167
+
168
+ /**
169
+ \MatroskaID{Title} element ID.
170
+
171
+ \WebMTable{UTF-8 string, 2, No, No, No, , }
172
+ */
173
+ kTitle = 0x7BA9,
174
+
175
+ /**
176
+ \MatroskaID{MuxingApp} element ID.
177
+
178
+ \WebMTable{UTF-8 string, 2, Yes, No, No, , }
179
+ */
180
+ kMuxingApp = 0x4D80,
181
+
182
+ /**
183
+ \MatroskaID{WritingApp} element ID.
184
+
185
+ \WebMTable{UTF-8 string, 2, Yes, No, No, , }
186
+ */
187
+ kWritingApp = 0x5741,
188
+
189
+ /**
190
+ \MatroskaID{Cluster} element ID.
191
+
192
+ \WebMTable{Master, 1, No, Yes, No, , }
193
+ */
194
+ kCluster = 0x1F43B675,
195
+
196
+ /**
197
+ \MatroskaID{Timecode} element ID.
198
+
199
+ \WebMTable{Unsigned integer, 2, Yes, No, No, , 0}
200
+ */
201
+ kTimecode = 0xE7,
202
+
203
+ /**
204
+ \MatroskaID{PrevSize} element ID.
205
+
206
+ \WebMTable{Unsigned integer, 2, No, No, No, , 0}
207
+ */
208
+ kPrevSize = 0xAB,
209
+
210
+ /**
211
+ \MatroskaID{SimpleBlock} element ID.
212
+
213
+ \WebMTable{Binary, 2, No, Yes, No, , }
214
+ */
215
+ kSimpleBlock = 0xA3,
216
+
217
+ /**
218
+ \MatroskaID{BlockGroup} element ID.
219
+
220
+ \WebMTable{Master, 2, No, Yes, No, , }
221
+ */
222
+ kBlockGroup = 0xA0,
223
+
224
+ /**
225
+ \MatroskaID{Block} element ID.
226
+
227
+ \WebMTable{Binary, 3, Yes, No, No, , }
228
+ */
229
+ kBlock = 0xA1,
230
+
231
+ /**
232
+ \MatroskaID{BlockVirtual} (deprecated) element ID.
233
+
234
+ \WebMTable{Binary, 3, No, No, No, , }
235
+ */
236
+ kBlockVirtual = 0xA2,
237
+
238
+ /**
239
+ \MatroskaID{BlockAdditions} element ID.
240
+
241
+ \WebMTable{Master, 3, No, No, No, , }
242
+ */
243
+ kBlockAdditions = 0x75A1,
244
+
245
+ /**
246
+ \MatroskaID{BlockMore} element ID.
247
+
248
+ \WebMTable{Master, 4, Yes, Yes, No, , }
249
+ */
250
+ kBlockMore = 0xA6,
251
+
252
+ /**
253
+ \MatroskaID{BlockAddID} element ID.
254
+
255
+ \WebMTable{Unsigned integer, 5, Yes, No, No, Not 0, 1}
256
+ */
257
+ kBlockAddId = 0xEE,
258
+
259
+ /**
260
+ \MatroskaID{BlockAdditional} element ID.
261
+
262
+ \WebMTable{Binary, 5, Yes, No, No, , }
263
+ */
264
+ kBlockAdditional = 0xA5,
265
+
266
+ /**
267
+ \MatroskaID{BlockDuration} element ID.
268
+
269
+ \WebMTable{Unsigned integer, 3, No, No, No, , DefaultDuration}
270
+ */
271
+ kBlockDuration = 0x9B,
272
+
273
+ /**
274
+ \MatroskaID{ReferenceBlock} element ID.
275
+
276
+ \WebMTable{Signed integer, 3, No, Yes, No, , 0}
277
+ */
278
+ kReferenceBlock = 0xFB,
279
+
280
+ /**
281
+ \MatroskaID{DiscardPadding} element ID.
282
+
283
+ \WebMTable{Signed integer, 3, No, No, No, , 0}
284
+ */
285
+ kDiscardPadding = 0x75A2,
286
+
287
+ /**
288
+ \MatroskaID{Slices} (deprecated).
289
+
290
+ \WebMTable{Master, 3, No, No, No, , }
291
+ */
292
+ kSlices = 0x8E,
293
+
294
+ /**
295
+ \MatroskaID{TimeSlice} (deprecated) element ID.
296
+
297
+ \WebMTable{Master, 4, No, Yes, No, , }
298
+ */
299
+ kTimeSlice = 0xE8,
300
+
301
+ /**
302
+ \MatroskaID{LaceNumber} (deprecated) element ID.
303
+
304
+ \WebMTable{Unsigned integer, 5, No, No, No, , 0}
305
+ */
306
+ kLaceNumber = 0xCC,
307
+
308
+ /**
309
+ \MatroskaID{Tracks} element ID.
310
+
311
+ \WebMTable{Master, 1, No, Yes, No, , }
312
+ */
313
+ kTracks = 0x1654AE6B,
314
+
315
+ /**
316
+ \MatroskaID{TrackEntry} element ID.
317
+
318
+ \WebMTable{Master, 2, Yes, Yes, No, , }
319
+ */
320
+ kTrackEntry = 0xAE,
321
+
322
+ /**
323
+ \MatroskaID{TrackNumber} element ID.
324
+
325
+ \WebMTable{Unsigned integer, 3, Yes, No, No, Not 0, 0}
326
+ */
327
+ kTrackNumber = 0xD7,
328
+
329
+ /**
330
+ \MatroskaID{TrackUID} element ID.
331
+
332
+ \WebMTable{Unsigned integer, 3, Yes, No, No, Not 0, 0}
333
+ */
334
+ kTrackUid = 0x73C5,
335
+
336
+ /**
337
+ \MatroskaID{TrackType} element ID.
338
+
339
+ \WebMTable{Unsigned integer, 3, Yes, No, No, 1-254, 0}
340
+ */
341
+ kTrackType = 0x83,
342
+
343
+ /**
344
+ \MatroskaID{FlagEnabled} element ID.
345
+
346
+ \WebMTable{Unsigned integer, 3, Yes, No, No, 0-1, 1}
347
+ */
348
+ kFlagEnabled = 0xB9,
349
+
350
+ /**
351
+ \MatroskaID{FlagDefault} element ID.
352
+
353
+ \WebMTable{Unsigned integer, 3, Yes, No, No, 0-1, 1}
354
+ */
355
+ kFlagDefault = 0x88,
356
+
357
+ /**
358
+ \MatroskaID{FlagForced} element ID.
359
+
360
+ \WebMTable{Unsigned integer, 3, Yes, No, No, 0-1, 0}
361
+ */
362
+ kFlagForced = 0x55AA,
363
+
364
+ /**
365
+ \MatroskaID{FlagLacing} element ID.
366
+
367
+ \WebMTable{Unsigned integer, 3, Yes, No, No, 0-1, 1}
368
+ */
369
+ kFlagLacing = 0x9C,
370
+
371
+ /**
372
+ \MatroskaID{DefaultDuration} element ID.
373
+
374
+ \WebMTable{Unsigned integer, 3, No, No, No, Not 0, 0}
375
+ */
376
+ kDefaultDuration = 0x23E383,
377
+
378
+ /**
379
+ \MatroskaID{Name} element ID.
380
+
381
+ \WebMTable{UTF-8 string, 3, No, No, No, , }
382
+ */
383
+ kName = 0x536E,
384
+
385
+ /**
386
+ \MatroskaID{Language} element ID.
387
+
388
+ \WebMTable{ASCII string, 3, No, No, No, , eng}
389
+ */
390
+ kLanguage = 0x22B59C,
391
+
392
+ /**
393
+ \MatroskaID{CodecID} element ID.
394
+
395
+ \WebMTable{ASCII string, 3, Yes, No, No, , }
396
+ */
397
+ kCodecId = 0x86,
398
+
399
+ /**
400
+ \MatroskaID{CodecPrivate} element ID.
401
+
402
+ \WebMTable{Binary, 3, No, No, No, , }
403
+ */
404
+ kCodecPrivate = 0x63A2,
405
+
406
+ /**
407
+ \MatroskaID{CodecName} element ID.
408
+
409
+ \WebMTable{UTF-8 string, 3, No, No, No, , }
410
+ */
411
+ kCodecName = 0x258688,
412
+
413
+ /**
414
+ \MatroskaID{CodecDelay} element ID.
415
+
416
+ \WebMTable{Unsigned integer, 3, No, No, No, , 0}
417
+ */
418
+ kCodecDelay = 0x56AA,
419
+
420
+ /**
421
+ \MatroskaID{SeekPreRoll} element ID.
422
+
423
+ \WebMTable{Unsigned integer, 3, Yes, No, No, , 0}
424
+ */
425
+ kSeekPreRoll = 0x56BB,
426
+
427
+ /**
428
+ \MatroskaID{Video} element ID.
429
+
430
+ \WebMTable{Master, 3, No, No, No, , }
431
+ */
432
+ kVideo = 0xE0,
433
+
434
+ /**
435
+ \MatroskaID{FlagInterlaced} element ID.
436
+
437
+ \WebMTable{Unsigned integer, 4, Yes, No, No, 0-1, 0}
438
+ */
439
+ kFlagInterlaced = 0x9A,
440
+
441
+ /**
442
+ \MatroskaID{StereoMode} element ID.
443
+
444
+ \WebMTable{Unsigned integer, 4, No, No, No, , 0}
445
+ */
446
+ kStereoMode = 0x53B8,
447
+
448
+ /**
449
+ \MatroskaID{AlphaMode} element ID.
450
+
451
+ \WebMTable{Unsigned integer, 4, No, No, No, , 0}
452
+ */
453
+ kAlphaMode = 0x53C0,
454
+
455
+ /**
456
+ \MatroskaID{PixelWidth} element ID.
457
+
458
+ \WebMTable{Unsigned integer, 4, Yes, No, No, Not 0, 0}
459
+ */
460
+ kPixelWidth = 0xB0,
461
+
462
+ /**
463
+ \MatroskaID{PixelHeight} element ID.
464
+
465
+ \WebMTable{Unsigned integer, 4, Yes, No, No, Not 0, 0}
466
+ */
467
+ kPixelHeight = 0xBA,
468
+
469
+ /**
470
+ \MatroskaID{PixelCropBottom} element ID.
471
+
472
+ \WebMTable{Unsigned integer, 4, No, No, No, , 0}
473
+ */
474
+ kPixelCropBottom = 0x54AA,
475
+
476
+ /**
477
+ \MatroskaID{PixelCropTop} element ID.
478
+
479
+ \WebMTable{Unsigned integer, 4, No, No, No, , 0}
480
+ */
481
+ kPixelCropTop = 0x54BB,
482
+
483
+ /**
484
+ \MatroskaID{PixelCropLeft} element ID.
485
+
486
+ \WebMTable{Unsigned integer, 4, No, No, No, , 0}
487
+ */
488
+ kPixelCropLeft = 0x54CC,
489
+
490
+ /**
491
+ \MatroskaID{PixelCropRight} element ID.
492
+
493
+ \WebMTable{Unsigned integer, 4, No, No, No, , 0}
494
+ */
495
+ kPixelCropRight = 0x54DD,
496
+
497
+ /**
498
+ \MatroskaID{DisplayWidth} element ID.
499
+
500
+ \WebMTable{Unsigned integer, 4, No, No, No, Not 0, PixelWidth}
501
+ */
502
+ kDisplayWidth = 0x54B0,
503
+
504
+ /**
505
+ \MatroskaID{DisplayHeight} element ID.
506
+
507
+ \WebMTable{Unsigned integer, 4, No, No, No, Not 0, PixelHeight}
508
+ */
509
+ kDisplayHeight = 0x54BA,
510
+
511
+ /**
512
+ \MatroskaID{DisplayUnit} element ID.
513
+
514
+ \WebMTable{Unsigned integer, 4, No, No, No, , 0}
515
+ */
516
+ kDisplayUnit = 0x54B2,
517
+
518
+ /**
519
+ \MatroskaID{AspectRatioType} element ID.
520
+
521
+ \WebMTable{Unsigned integer, 4, No, No, No, , 0}
522
+ */
523
+ kAspectRatioType = 0x54B3,
524
+
525
+ /**
526
+ \MatroskaID{FrameRate} (deprecated) element ID.
527
+
528
+ \WebMTable{Float, 4, No, No, No, > 0, 0}
529
+ */
530
+ kFrameRate = 0x2383E3,
531
+
532
+ /**
533
+ \MatroskaID{Colour} element ID.
534
+
535
+ \WebMTable{Master, 4, No, No, No, , }
536
+ */
537
+ kColour = 0x55B0,
538
+
539
+ /**
540
+ \MatroskaID{MatrixCoefficients} element ID.
541
+
542
+ \WebMTable{Unsigned integer, 5, No, No, No, , 2}
543
+ */
544
+ kMatrixCoefficients = 0x55B1,
545
+
546
+ /**
547
+ \MatroskaID{BitsPerChannel} element ID.
548
+
549
+ \WebMTable{Unsigned integer, 5, No, No, No, , 0}
550
+ */
551
+ kBitsPerChannel = 0x55B2,
552
+
553
+ /**
554
+ \MatroskaID{ChromaSubsamplingHorz} element ID.
555
+
556
+ \WebMTable{Unsigned integer, 5, No, No, No, , 0}
557
+ */
558
+ kChromaSubsamplingHorz = 0x55B3,
559
+
560
+ /**
561
+ \MatroskaID{ChromaSubsamplingVert} element ID.
562
+
563
+ \WebMTable{Unsigned integer, 5, No, No, No, , 0}
564
+ */
565
+ kChromaSubsamplingVert = 0x55B4,
566
+
567
+ /**
568
+ \MatroskaID{CbSubsamplingHorz} element ID.
569
+
570
+ \WebMTable{Unsigned integer, 5, No, No, No, , 0}
571
+ */
572
+ kCbSubsamplingHorz = 0x55B5,
573
+
574
+ /**
575
+ \MatroskaID{CbSubsamplingVert} element ID.
576
+
577
+ \WebMTable{Unsigned integer, 5, No, No, No, , 0}
578
+ */
579
+ kCbSubsamplingVert = 0x55B6,
580
+
581
+ /**
582
+ \MatroskaID{ChromaSitingHorz} element ID.
583
+
584
+ \WebMTable{Unsigned integer, 5, No, No, No, , 0}
585
+ */
586
+ kChromaSitingHorz = 0x55B7,
587
+
588
+ /**
589
+ \MatroskaID{ChromaSitingVert} element ID.
590
+
591
+ \WebMTable{Unsigned integer, 5, No, No, No, , 0}
592
+ */
593
+ kChromaSitingVert = 0x55B8,
594
+
595
+ /**
596
+ \MatroskaID{Range} element ID.
597
+
598
+ \WebMTable{Unsigned integer, 5, No, No, No, , 0}
599
+ */
600
+ kRange = 0x55B9,
601
+
602
+ /**
603
+ \MatroskaID{TransferCharacteristics} element ID.
604
+
605
+ \WebMTable{Unsigned integer, 5, No, No, No, , 2}
606
+ */
607
+ kTransferCharacteristics = 0x55BA,
608
+
609
+ /**
610
+ \MatroskaID{Primaries} element ID.
611
+
612
+ \WebMTable{Unsigned integer, 5, No, No, No, , 2}
613
+ */
614
+ kPrimaries = 0x55BB,
615
+
616
+ /**
617
+ \MatroskaID{MaxCLL} element ID.
618
+
619
+ \WebMTable{Unsigned integer, 5, No, No, No, , 0}
620
+ */
621
+ kMaxCll = 0x55BC,
622
+
623
+ /**
624
+ \MatroskaID{MaxFALL} element ID.
625
+
626
+ \WebMTable{Unsigned integer, 5, No, No, No, , 0}
627
+ */
628
+ kMaxFall = 0x55BD,
629
+
630
+ /**
631
+ \MatroskaID{MasteringMetadata} element ID.
632
+
633
+ \WebMTable{Master, 5, No, No, No, , }
634
+ */
635
+ kMasteringMetadata = 0x55D0,
636
+
637
+ /**
638
+ \MatroskaID{PrimaryRChromaticityX} element ID.
639
+
640
+ \WebMTable{Float, 6, No, No, No, 0-1, 0}
641
+ */
642
+ kPrimaryRChromaticityX = 0x55D1,
643
+
644
+ /**
645
+ \MatroskaID{PrimaryRChromaticityY} element ID.
646
+
647
+ \WebMTable{Float, 6, No, No, No, 0-1, 0}
648
+ */
649
+ kPrimaryRChromaticityY = 0x55D2,
650
+
651
+ /**
652
+ \MatroskaID{PrimaryGChromaticityX} element ID.
653
+
654
+ \WebMTable{Float, 6, No, No, No, 0-1, 0}
655
+ */
656
+ kPrimaryGChromaticityX = 0x55D3,
657
+
658
+ /**
659
+ \MatroskaID{PrimaryGChromaticityY} element ID.
660
+
661
+ \WebMTable{Float, 6, No, No, No, 0-1, 0}
662
+ */
663
+ kPrimaryGChromaticityY = 0x55D4,
664
+
665
+ /**
666
+ \MatroskaID{PrimaryBChromaticityX} element ID.
667
+
668
+ \WebMTable{Float, 6, No, No, No, 0-1, 0}
669
+ */
670
+ kPrimaryBChromaticityX = 0x55D5,
671
+
672
+ /**
673
+ \MatroskaID{PrimaryBChromaticityY} element ID.
674
+
675
+ \WebMTable{Float, 6, No, No, No, 0-1, 0}
676
+ */
677
+ kPrimaryBChromaticityY = 0x55D6,
678
+
679
+ /**
680
+ \MatroskaID{WhitePointChromaticityX} element ID.
681
+
682
+ \WebMTable{Float, 6, No, No, No, 0-1, 0}
683
+ */
684
+ kWhitePointChromaticityX = 0x55D7,
685
+
686
+ /**
687
+ \MatroskaID{WhitePointChromaticityY} element ID.
688
+
689
+ \WebMTable{Float, 6, No, No, No, 0-1, 0}
690
+ */
691
+ kWhitePointChromaticityY = 0x55D8,
692
+
693
+ /**
694
+ \MatroskaID{LuminanceMax} element ID.
695
+
696
+ \WebMTable{Float, 6, No, No, No, 0-9999.99, 0}
697
+ */
698
+ kLuminanceMax = 0x55D9,
699
+
700
+ /**
701
+ \MatroskaID{LuminanceMin} element ID.
702
+
703
+ \WebMTable{Float, 6, No, No, No, 0-999.9999, 0}
704
+ */
705
+ kLuminanceMin = 0x55DA,
706
+
707
+ /**
708
+ \WebMID{Projection} element ID.
709
+
710
+ \WebMTable{Master, 5, No, No, No, , }
711
+ */
712
+ kProjection = 0x7670,
713
+
714
+ /**
715
+ \WebMID{ProjectionType} element ID.
716
+
717
+ \WebMTable{Unsigned integer, 6, Yes, No, No, , 0}
718
+ */
719
+ kProjectionType = 0x7671,
720
+
721
+ /**
722
+ \WebMID{ProjectionPrivate} element ID.
723
+
724
+ \WebMTable{Binary, 6, No, No, No, , }
725
+ */
726
+ kProjectionPrivate = 0x7672,
727
+
728
+ /**
729
+ \WebMID{ProjectionPoseYaw} element ID.
730
+
731
+ \WebMTable{Float, 6, Yes, No, No, , 0}
732
+ */
733
+ kProjectionPoseYaw = 0x7673,
734
+
735
+ /**
736
+ \WebMID{ProjectionPosePitch} element ID.
737
+
738
+ \WebMTable{Float, 6, Yes, No, No, , 0}
739
+ */
740
+ kProjectionPosePitch = 0x7674,
741
+
742
+ /**
743
+ \WebMID{ProjectionPoseRoll} element ID.
744
+
745
+ \WebMTable{Float, 6, Yes, No, No, , 0}
746
+ */
747
+ kProjectionPoseRoll = 0x7675,
748
+
749
+ /**
750
+ \MatroskaID{Audio} element ID.
751
+
752
+ \WebMTable{Master, 3, No, No, No, , }
753
+ */
754
+ kAudio = 0xE1,
755
+
756
+ /**
757
+ \MatroskaID{SamplingFrequency} element ID.
758
+
759
+ \WebMTable{Float, 4, Yes, No, No, > 0, 8000}
760
+ */
761
+ kSamplingFrequency = 0xB5,
762
+
763
+ /**
764
+ \MatroskaID{OutputSamplingFrequency} element ID.
765
+
766
+ \WebMTable{Float, 4, No, No, No, > 0, SamplingFrequency}
767
+ */
768
+ kOutputSamplingFrequency = 0x78B5,
769
+
770
+ /**
771
+ \MatroskaID{Channels} element ID.
772
+
773
+ \WebMTable{Unsigned integer, 4, Yes, No, No, Not 0, 1}
774
+ */
775
+ kChannels = 0x9F,
776
+
777
+ /**
778
+ \MatroskaID{BitDepth} element ID.
779
+
780
+ \WebMTable{Unsigned integer, 4, No, No, No, Not 0, 0}
781
+ */
782
+ kBitDepth = 0x6264,
783
+
784
+ /**
785
+ \MatroskaID{ContentEncodings} element ID.
786
+
787
+ \WebMTable{Master, 3, No, No, No, , }
788
+ */
789
+ kContentEncodings = 0x6D80,
790
+
791
+ /**
792
+ \MatroskaID{ContentEncoding} element ID.
793
+
794
+ \WebMTable{Master, 4, Yes, Yes, No, , }
795
+ */
796
+ kContentEncoding = 0x6240,
797
+
798
+ /**
799
+ \MatroskaID{ContentEncodingOrder} element ID.
800
+
801
+ \WebMTable{Unsigned integer, 5, Yes, No, No, , 0}
802
+ */
803
+ kContentEncodingOrder = 0x5031,
804
+
805
+ /**
806
+ \MatroskaID{ContentEncodingScope} element ID.
807
+
808
+ \WebMTable{Unsigned integer, 5, Yes, No, No, Not 0, 1}
809
+ */
810
+ kContentEncodingScope = 0x5032,
811
+
812
+ /**
813
+ \MatroskaID{ContentEncodingType} element ID.
814
+
815
+ \WebMTable{Unsigned integer, 5, Yes, No, No, , 0}
816
+ */
817
+ kContentEncodingType = 0x5033,
818
+
819
+ /**
820
+ \MatroskaID{ContentEncryption} element ID.
821
+
822
+ \WebMTable{Master, 5, No, No, No, , }
823
+ */
824
+ kContentEncryption = 0x5035,
825
+
826
+ /**
827
+ \MatroskaID{ContentEncAlgo} element ID.
828
+
829
+ \WebMTable{Unsigned integer, 6, No, No, No, , 0}
830
+ */
831
+ kContentEncAlgo = 0x47E1,
832
+
833
+ /**
834
+ \MatroskaID{ContentEncKeyID} element ID.
835
+
836
+ \WebMTable{Binary, 6, No, No, No, , }
837
+ */
838
+ kContentEncKeyId = 0x47E2,
839
+
840
+ /**
841
+ \WebMID{ContentEncAESSettings} element ID.
842
+
843
+ \WebMTable{Master, 6, No, No, No, , }
844
+ */
845
+ kContentEncAesSettings = 0x47E7,
846
+
847
+ /**
848
+ \WebMID{AESSettingsCipherMode} element ID.
849
+
850
+ \WebMTable{Unsigned integer, 7, Yes, No, No, 1, 1}
851
+ */
852
+ kAesSettingsCipherMode = 0x47E8,
853
+
854
+ /**
855
+ \MatroskaID{Cues} element ID.
856
+
857
+ \WebMTable{Master, 1, No, No, No, , }
858
+ */
859
+ kCues = 0x1C53BB6B,
860
+
861
+ /**
862
+ \MatroskaID{CuePoint} element ID.
863
+
864
+ \WebMTable{Master, 2, Yes, Yes, No, , }
865
+ */
866
+ kCuePoint = 0xBB,
867
+
868
+ /**
869
+ \MatroskaID{CueTime} element ID.
870
+
871
+ \WebMTable{Unsigned integer, 3, Yes, No, No, , 0}
872
+ */
873
+ kCueTime = 0xB3,
874
+
875
+ /**
876
+ \MatroskaID{CueTrackPositions} element ID.
877
+
878
+ \WebMTable{Master, 3, Yes, Yes, No, , }
879
+ */
880
+ kCueTrackPositions = 0xB7,
881
+
882
+ /**
883
+ \MatroskaID{CueTrack} element ID.
884
+
885
+ \WebMTable{Unsigned integer, 4, Yes, No, No, Not 0, 0}
886
+ */
887
+ kCueTrack = 0xF7,
888
+
889
+ /**
890
+ \MatroskaID{CueClusterPosition} element ID.
891
+
892
+ \WebMTable{Unsigned integer, 4, Yes, No, No, , 0}
893
+ */
894
+ kCueClusterPosition = 0xF1,
895
+
896
+ /**
897
+ \MatroskaID{CueRelativePosition} element ID.
898
+
899
+ \WebMTable{Unsigned integer, 4, No, No, No, , 0}
900
+ */
901
+ kCueRelativePosition = 0xF0,
902
+
903
+ /**
904
+ \MatroskaID{CueDuration} element ID.
905
+
906
+ \WebMTable{Unsigned integer, 4, No, No, No, , 0}
907
+ */
908
+ kCueDuration = 0xB2,
909
+
910
+ /**
911
+ \MatroskaID{CueBlockNumber} element ID.
912
+
913
+ \WebMTable{Unsigned integer, 4, No, No, No, Not 0, 1}
914
+ */
915
+ kCueBlockNumber = 0x5378,
916
+
917
+ /**
918
+ \MatroskaID{Chapters} element ID.
919
+
920
+ \WebMTable{Master, 1, No, No, No, , }
921
+ */
922
+ kChapters = 0x1043A770,
923
+
924
+ /**
925
+ \MatroskaID{EditionEntry} element ID.
926
+
927
+ \WebMTable{Master, 2, Yes, Yes, No, , }
928
+ */
929
+ kEditionEntry = 0x45B9,
930
+
931
+ /**
932
+ \MatroskaID{ChapterAtom} element ID.
933
+
934
+ \WebMTable{Master, 3, Yes, Yes, Yes, , }
935
+ */
936
+ kChapterAtom = 0xB6,
937
+
938
+ /**
939
+ \MatroskaID{ChapterUID} element ID.
940
+
941
+ \WebMTable{Unsigned integer, 4, Yes, No, No, Not 0, 0}
942
+ */
943
+ kChapterUid = 0x73C4,
944
+
945
+ /**
946
+ \MatroskaID{ChapterStringUID} element ID.
947
+
948
+ \WebMTable{UTF-8 string, 4, No, No, No, , }
949
+ */
950
+ kChapterStringUid = 0x5654,
951
+
952
+ /**
953
+ \MatroskaID{ChapterTimeStart} element ID.
954
+
955
+ \WebMTable{Unsigned integer, 4, Yes, No, No, , 0}
956
+ */
957
+ kChapterTimeStart = 0x91,
958
+
959
+ /**
960
+ \MatroskaID{ChapterTimeEnd} element ID.
961
+
962
+ \WebMTable{Unsigned integer, 4, No, No, No, , 0}
963
+ */
964
+ kChapterTimeEnd = 0x92,
965
+
966
+ /**
967
+ \MatroskaID{ChapterDisplay} element ID.
968
+
969
+ \WebMTable{Master, 4, No, Yes, No, , }
970
+ */
971
+ kChapterDisplay = 0x80,
972
+
973
+ /**
974
+ \MatroskaID{ChapString} element ID.
975
+
976
+ \WebMTable{UTF-8 string, 5, Yes, No, No, , }
977
+ */
978
+ kChapString = 0x85,
979
+
980
+ /**
981
+ \MatroskaID{ChapLanguage} element ID.
982
+
983
+ \WebMTable{ASCII string, 5, Yes, Yes, No, , eng}
984
+ */
985
+ kChapLanguage = 0x437C,
986
+
987
+ /**
988
+ \MatroskaID{ChapCountry} element ID.
989
+
990
+ \WebMTable{ASCII string, 5, No, Yes, No, , }
991
+ */
992
+ kChapCountry = 0x437E,
993
+
994
+ /**
995
+ \MatroskaID{Tags} element ID.
996
+
997
+ \WebMTable{Master, 1, No, Yes, No, , }
998
+ */
999
+ kTags = 0x1254C367,
1000
+
1001
+ /**
1002
+ \MatroskaID{Tag} element ID.
1003
+
1004
+ \WebMTable{Master, 2, Yes, Yes, No, , }
1005
+ */
1006
+ kTag = 0x7373,
1007
+
1008
+ /**
1009
+ \MatroskaID{Targets} element ID.
1010
+
1011
+ \WebMTable{Master, 3, Yes, No, No, , }
1012
+ */
1013
+ kTargets = 0x63C0,
1014
+
1015
+ /**
1016
+ \MatroskaID{TargetTypeValue} element ID.
1017
+
1018
+ \WebMTable{Unsigned integer, 4, No, No, No, , 50}
1019
+ */
1020
+ kTargetTypeValue = 0x68CA,
1021
+
1022
+ /**
1023
+ \MatroskaID{TargetType} element ID.
1024
+
1025
+ \WebMTable{ASCII string, 4, No, No, No, , }
1026
+ */
1027
+ kTargetType = 0x63CA,
1028
+
1029
+ /**
1030
+ \MatroskaID{TagTrackUID} element ID.
1031
+
1032
+ \WebMTable{Unsigned integer, 4, No, Yes, No, , 0}
1033
+ */
1034
+ kTagTrackUid = 0x63C5,
1035
+
1036
+ /**
1037
+ \MatroskaID{SimpleTag} element ID.
1038
+
1039
+ \WebMTable{Master, 3, Yes, Yes, Yes, , }
1040
+ */
1041
+ kSimpleTag = 0x67C8,
1042
+
1043
+ /**
1044
+ \MatroskaID{TagName} element ID.
1045
+
1046
+ \WebMTable{UTF-8 string, 4, Yes, No, No, , }
1047
+ */
1048
+ kTagName = 0x45A3,
1049
+
1050
+ /**
1051
+ \MatroskaID{TagLanguage} element ID.
1052
+
1053
+ \WebMTable{ASCII string, 4, Yes, No, No, , und}
1054
+ */
1055
+ kTagLanguage = 0x447A,
1056
+
1057
+ /**
1058
+ \MatroskaID{TagDefault} element ID.
1059
+
1060
+ \WebMTable{Unsigned integer, 4, Yes, No, No, 0-1, 1}
1061
+ */
1062
+ kTagDefault = 0x4484,
1063
+
1064
+ /**
1065
+ \MatroskaID{TagString} element ID.
1066
+
1067
+ \WebMTable{UTF-8 string, 4, No, No, No, , }
1068
+ */
1069
+ kTagString = 0x4487,
1070
+
1071
+ /**
1072
+ \MatroskaID{TagBinary} element ID.
1073
+
1074
+ \WebMTable{Binary, 4, No, No, No, , }
1075
+ */
1076
+ kTagBinary = 0x4485,
1077
+ };
1078
+
1079
+ /**
1080
+ @}
1081
+ */
1082
+
1083
+ } // namespace webm
1084
+
1085
+ #endif // INCLUDE_WEBM_ID_H_