Files
ArtPlayer/refactor/baselines/danmuku-resources-validation.json

59511 lines
1.9 MiB
Plaintext

{
"schemaVersion": 1,
"task": "PKG-DANMUKU-05",
"status": "done",
"capturedAt": "2026-09-13T12:43:51.757Z",
"baselineCommit": "12332df221597bacdeafd222fa70716031586e4e",
"units": [
{
"format": "source",
"tests": 159,
"implementationDependent": 101,
"common": {
"internalWorker": 18,
"numericHistory": 3,
"settingHistory": 18,
"directHeatmapWithHistoryComparisons": 14,
"directRenderer": 5
},
"file": "refactor/.cache/danmuku05-candidate-source-final.log",
"sha256": "310fe7266bc1330d793f798b89c17209988dcf47f1a75d662a38f6dbb5650c75"
},
{
"format": "main",
"tests": 159,
"implementationDependent": 101,
"common": {
"internalWorker": 18,
"numericHistory": 3,
"settingHistory": 18,
"directHeatmapWithHistoryComparisons": 14,
"directRenderer": 5
},
"file": "refactor/.cache/danmuku05-candidate-main-final.log",
"sha256": "0e14b6c5c1ed7986f9798ea7b5fff615d204f7a71b62ab5eac2a9a9d6e9a42cb"
},
{
"format": "legacy",
"tests": 159,
"implementationDependent": 101,
"common": {
"internalWorker": 18,
"numericHistory": 3,
"settingHistory": 18,
"directHeatmapWithHistoryComparisons": 14,
"directRenderer": 5
},
"file": "refactor/.cache/danmuku05-candidate-legacy-final.log",
"sha256": "b28abc1227d02bf91db3254e3fcf0f47e96666dc940908a6c772e602b4422b8a"
}
],
"completeSuite": {
"tests": 245,
"file": "refactor/.cache/danmuku05-suite-final.log",
"sha256": "57e26ae87c9f3cb4171dd181d11f7a8a754b05cfe95fc36ff17efcd686492a92"
},
"browsers": [
{
"format": "source",
"tests": 138,
"workers": 2,
"file": "refactor/.cache/danmuku05-browser-source-resource-final/report.json",
"sha256": "b389088a846451291a921ea094b0d22d16e6a74362febaf24107b26e8f62fb62",
"run": {
"file": "refactor/.cache/danmuku05-browser-source-resource-final/run.log",
"sha256": "9252f9a11a81835b068fb24d21a001202391386f1991f41e29c17237cd473df4"
},
"specs": [
{
"file": "refactor/.cache/danmuku05-browser-source-resource-final/danmuku-input.spec.js",
"sha256": "37a96982ea7bf2fb99df5e4d829ce1c3f512145092a440586c2d5ad7d0a2d6f3"
},
{
"file": "refactor/.cache/danmuku05-browser-source-resource-final/danmuku-scheduler.spec.js",
"sha256": "ee67bc0f204f1f9090859ed9d1d0cfecc545129fff6278d2f17140b009390519"
},
{
"file": "refactor/.cache/danmuku05-browser-source-resource-final/danmuku-resources.spec.js",
"sha256": "f0d09e962cb422a66bd644c52268aff8f288606ae9c93676fa979539743f9c6b"
}
],
"archiveResultsRoot": "refactor/.cache/danmuku05-browser-source-resource-final/results",
"originalResultsRoot": "refactor/.cache/browser/results",
"versions": [
"chromium: 153.0.8010.12",
"firefox: 155.0",
"webkit: 26.6"
],
"cases": [
{
"title": "Danmuku input native Worker startup failure falls back locally (published)",
"browser": "chromium",
"durationMs": 445,
"observations": [
{
"name": "danmuku-native-worker-fault",
"value": {
"queue": [
{
"text": "FALLBACK",
"time": 0,
"mode": 1
}
],
"workers": [
{
"url": "blob:http://127.0.0.1:8084/ac8b8c16-1427-495a-ba03-0ce7b60d0e0c",
"terminated": 1,
"replies": []
}
],
"urls": [
"blob:http://127.0.0.1:8084/7015dc70-160c-44ea-842b-a976969f2628",
"blob:http://127.0.0.1:8084/ac8b8c16-1427-495a-ba03-0ce7b60d0e0c"
],
"revoked": [
"",
"blob:http://127.0.0.1:8084/ac8b8c16-1427-495a-ba03-0ce7b60d0e0c",
"blob:http://127.0.0.1:8084/7015dc70-160c-44ea-842b-a976969f2628"
],
"errors": [],
"fault": "Test replaces only the newly created native parser Worker script with a thrown startup Error; fetch, fallback parser and error dispatch remain real."
}
}
]
},
{
"title": "Danmuku input native parser cleanup and rejected fetch (published)",
"browser": "chromium",
"durationMs": 271,
"observations": [
{
"name": "danmuku-native-parser",
"value": {
"parsed": [
{
"text": "A & B",
"time": 0,
"mode": 0,
"color": "#ff",
"userID": "user",
"rowID": 456
},
{
"text": "TOP",
"time": 2,
"mode": 2,
"color": "#ffffff",
"userID": "u",
"rowID": 789
}
],
"emptyIdentity": true,
"beforeDestroy": 2,
"rejection": "TypeError: Failed to fetch",
"parserWorkers": [
{
"url": "blob:http://127.0.0.1:8084/3281f15b-4fd0-4b40-958d-e76d60af9056",
"terminated": 1,
"replies": [
{
"danmus": [
{
"text": "A & B",
"time": 0,
"mode": 0,
"fontSize": 25,
"color": "#ff",
"timestamp": 123,
"pool": 0,
"userID": "user",
"rowID": 456,
"style": {}
},
{
"text": "TOP",
"time": 2,
"mode": 2,
"fontSize": 20,
"color": "#ffffff",
"timestamp": 124,
"pool": 0,
"userID": "u",
"rowID": 789,
"style": {}
}
],
"id": 1
}
]
},
{
"url": "blob:http://127.0.0.1:8084/713d0063-371e-4fa7-8eaf-a7fece601d35",
"terminated": 1,
"replies": [
{
"danmus": [],
"id": 2
}
]
}
],
"urls": [
"blob:http://127.0.0.1:8084/b3653858-14d5-48ee-847d-488e9dd43a66",
"blob:http://127.0.0.1:8084/3281f15b-4fd0-4b40-958d-e76d60af9056",
"blob:http://127.0.0.1:8084/713d0063-371e-4fa7-8eaf-a7fece601d35"
],
"revoked": [
"",
"blob:http://127.0.0.1:8084/3281f15b-4fd0-4b40-958d-e76d60af9056",
"blob:http://127.0.0.1:8084/713d0063-371e-4fa7-8eaf-a7fece601d35"
],
"workers": [
{
"url": "blob:http://127.0.0.1:8084/b3653858-14d5-48ee-847d-488e9dd43a66",
"terminated": 1,
"replies": []
},
{
"url": "blob:http://127.0.0.1:8084/3281f15b-4fd0-4b40-958d-e76d60af9056",
"terminated": 1,
"replies": [
{
"danmus": [
{
"text": "A & B",
"time": 0,
"mode": 0,
"fontSize": 25,
"color": "#ff",
"timestamp": 123,
"pool": 0,
"userID": "user",
"rowID": 456,
"style": {}
},
{
"text": "TOP",
"time": 2,
"mode": 2,
"fontSize": 20,
"color": "#ffffff",
"timestamp": 124,
"pool": 0,
"userID": "u",
"rowID": 789,
"style": {}
}
],
"id": 1
}
]
},
{
"url": "blob:http://127.0.0.1:8084/713d0063-371e-4fa7-8eaf-a7fece601d35",
"terminated": 1,
"replies": [
{
"danmus": [],
"id": 2
}
]
}
],
"events": [
{
"name": "show"
},
{
"name": "config"
},
{
"name": "reset"
},
{
"name": "loaded",
"count": 0
},
{
"name": "loaded",
"count": 2
},
{
"name": "loaded",
"count": 2
},
{
"name": "error",
"error": "TypeError: Failed to fetch"
},
{
"name": "destroy"
}
]
}
}
]
},
{
"title": "Danmuku input replacement append and destruction (published)",
"browser": "chromium",
"durationMs": 310,
"observations": [
{
"name": "danmuku-native-input-ownership",
"value": {
"initialEvents": [
"show",
"config",
"reset",
"loaded"
],
"latestIdentity": true,
"oldIdentity": true,
"destroyedIdentity": true,
"queue": [
{
"text": "new",
"time": 0
},
{
"text": "append B",
"time": 0.5
},
{
"text": "append A",
"time": 0.5
}
],
"finalQueue": [
"new",
"append B",
"append A"
],
"loadedBefore": 4,
"loadedAfter": 4,
"events": [
{
"name": "show"
},
{
"name": "config"
},
{
"name": "reset"
},
{
"name": "loaded",
"count": 0
},
{
"name": "show"
},
{
"name": "config"
},
{
"name": "show"
},
{
"name": "config"
},
{
"name": "reset"
},
{
"name": "loaded",
"count": 1
},
{
"name": "loaded",
"count": 2
},
{
"name": "loaded",
"count": 3
},
{
"name": "destroy"
}
]
}
}
]
},
{
"title": "Danmuku config callback replacement and validation (published)",
"browser": "chromium",
"durationMs": 252,
"observations": [
{
"name": "danmuku-native-config",
"value": {
"unchangedIdentity": true,
"count": 2,
"unchangedCount": 2,
"unchangedOption": true,
"filterIdentity": true,
"error": "Error: [Type Error]: 'option.speed' require 'number' type, but got 'string'",
"receiver": [
true,
true
],
"emittedIdentity": true,
"input": {
"text": "included",
"time": 0,
"mode": 0,
"style": {},
"color": "#FFFFFF"
},
"queue": [
{
"text": "included",
"time": 0
}
]
}
}
]
},
{
"title": "Danmuku input native Worker startup failure falls back locally (candidate)",
"browser": "chromium",
"durationMs": 366,
"observations": [
{
"name": "danmuku-native-worker-fault",
"value": {
"queue": [
{
"text": "FALLBACK",
"time": 0,
"mode": 1
}
],
"workers": [
{
"url": "blob:http://127.0.0.1:8084/80a66902-2bd7-4d54-9638-9b9e44edf34b",
"terminated": 1,
"replies": []
}
],
"urls": [
"blob:http://127.0.0.1:8084/f1141647-a0ee-4dd9-a678-f577a8d5f0a7",
"blob:http://127.0.0.1:8084/80a66902-2bd7-4d54-9638-9b9e44edf34b"
],
"revoked": [
"blob:http://127.0.0.1:8084/80a66902-2bd7-4d54-9638-9b9e44edf34b",
"blob:http://127.0.0.1:8084/f1141647-a0ee-4dd9-a678-f577a8d5f0a7"
],
"errors": [],
"fault": "Test replaces only the newly created native parser Worker script with a thrown startup Error; fetch, fallback parser and error dispatch remain real."
}
}
]
},
{
"title": "Danmuku input native parser cleanup and rejected fetch (candidate)",
"browser": "chromium",
"durationMs": 322,
"observations": [
{
"name": "danmuku-native-parser",
"value": {
"parsed": [
{
"text": "A & B",
"time": 0,
"mode": 0,
"color": "#ff",
"userID": "user",
"rowID": 456
},
{
"text": "TOP",
"time": 2,
"mode": 2,
"color": "#ffffff",
"userID": "u",
"rowID": 789
}
],
"emptyIdentity": true,
"beforeDestroy": 2,
"rejection": "TypeError: Failed to fetch",
"parserWorkers": [
{
"url": "blob:http://127.0.0.1:8084/3f969185-5cd7-475c-be1c-8a2e34ac6ce5",
"terminated": 1,
"replies": [
{
"danmus": [
{
"text": "A & B",
"time": 0,
"mode": 0,
"fontSize": 25,
"color": "#ff",
"timestamp": 123,
"pool": 0,
"userID": "user",
"rowID": 456,
"style": {}
},
{
"text": "TOP",
"time": 2,
"mode": 2,
"fontSize": 20,
"color": "#ffffff",
"timestamp": 124,
"pool": 0,
"userID": "u",
"rowID": 789,
"style": {}
}
],
"id": 1
}
]
},
{
"url": "blob:http://127.0.0.1:8084/00df37e2-23dc-4ca0-bde2-88800cf7316c",
"terminated": 1,
"replies": [
{
"danmus": [],
"id": 2
}
]
}
],
"urls": [
"blob:http://127.0.0.1:8084/139220c6-868a-45d2-a0e6-c507b2dce7d1",
"blob:http://127.0.0.1:8084/3f969185-5cd7-475c-be1c-8a2e34ac6ce5",
"blob:http://127.0.0.1:8084/00df37e2-23dc-4ca0-bde2-88800cf7316c"
],
"revoked": [
"blob:http://127.0.0.1:8084/3f969185-5cd7-475c-be1c-8a2e34ac6ce5",
"blob:http://127.0.0.1:8084/00df37e2-23dc-4ca0-bde2-88800cf7316c"
],
"workers": [
{
"url": "blob:http://127.0.0.1:8084/139220c6-868a-45d2-a0e6-c507b2dce7d1",
"terminated": 1,
"replies": []
},
{
"url": "blob:http://127.0.0.1:8084/3f969185-5cd7-475c-be1c-8a2e34ac6ce5",
"terminated": 1,
"replies": [
{
"danmus": [
{
"text": "A & B",
"time": 0,
"mode": 0,
"fontSize": 25,
"color": "#ff",
"timestamp": 123,
"pool": 0,
"userID": "user",
"rowID": 456,
"style": {}
},
{
"text": "TOP",
"time": 2,
"mode": 2,
"fontSize": 20,
"color": "#ffffff",
"timestamp": 124,
"pool": 0,
"userID": "u",
"rowID": 789,
"style": {}
}
],
"id": 1
}
]
},
{
"url": "blob:http://127.0.0.1:8084/00df37e2-23dc-4ca0-bde2-88800cf7316c",
"terminated": 1,
"replies": [
{
"danmus": [],
"id": 2
}
]
}
],
"events": [
{
"name": "show"
},
{
"name": "config"
},
{
"name": "reset"
},
{
"name": "loaded",
"count": 0
},
{
"name": "loaded",
"count": 2
},
{
"name": "loaded",
"count": 2
},
{
"name": "error",
"error": "TypeError: Failed to fetch"
},
{
"name": "destroy"
}
]
}
}
]
},
{
"title": "Danmuku input replacement append and destruction (candidate)",
"browser": "chromium",
"durationMs": 295,
"observations": [
{
"name": "danmuku-native-input-ownership",
"value": {
"initialEvents": [
"show",
"config",
"reset",
"loaded"
],
"latestIdentity": true,
"oldIdentity": true,
"destroyedIdentity": true,
"queue": [
{
"text": "new",
"time": 0
},
{
"text": "append B",
"time": 0.5
},
{
"text": "append A",
"time": 0.5
}
],
"finalQueue": [
"new",
"append B",
"append A"
],
"loadedBefore": 4,
"loadedAfter": 4,
"events": [
{
"name": "show"
},
{
"name": "config"
},
{
"name": "reset"
},
{
"name": "loaded",
"count": 0
},
{
"name": "show"
},
{
"name": "config"
},
{
"name": "show"
},
{
"name": "config"
},
{
"name": "reset"
},
{
"name": "loaded",
"count": 1
},
{
"name": "loaded",
"count": 2
},
{
"name": "loaded",
"count": 3
},
{
"name": "destroy"
}
]
}
}
]
},
{
"title": "Danmuku config callback replacement and validation (candidate)",
"browser": "chromium",
"durationMs": 293,
"observations": [
{
"name": "danmuku-native-config",
"value": {
"unchangedIdentity": true,
"count": 2,
"unchangedCount": 2,
"unchangedOption": true,
"filterIdentity": true,
"error": "Error: [Type Error]: 'option.speed' require 'number' type, but got 'string'",
"receiver": [
true,
true
],
"emittedIdentity": true,
"input": {
"text": "included",
"time": 0,
"mode": 0,
"style": {},
"color": "#FFFFFF"
},
"queue": [
{
"text": "included",
"time": 0
}
]
}
}
]
},
{
"title": "Danmuku input native Worker startup failure falls back locally (published)",
"browser": "firefox",
"durationMs": 1949,
"observations": [
{
"name": "danmuku-native-worker-fault",
"value": {
"queue": [
{
"text": "FALLBACK",
"time": 0,
"mode": 1
}
],
"workers": [
{
"url": "blob:http://127.0.0.1:8084/f9d27a39-5884-4483-9487-2c5870c43e4f",
"terminated": 1,
"replies": []
}
],
"urls": [
"blob:http://127.0.0.1:8084/81d97485-577f-4efb-add7-6e18f796cadb",
"blob:http://127.0.0.1:8084/f9d27a39-5884-4483-9487-2c5870c43e4f"
],
"revoked": [
"",
"blob:http://127.0.0.1:8084/f9d27a39-5884-4483-9487-2c5870c43e4f",
"blob:http://127.0.0.1:8084/81d97485-577f-4efb-add7-6e18f796cadb"
],
"errors": [],
"fault": "Test replaces only the newly created native parser Worker script with a thrown startup Error; fetch, fallback parser and error dispatch remain real."
}
}
]
},
{
"title": "Danmuku input native parser cleanup and rejected fetch (published)",
"browser": "firefox",
"durationMs": 669,
"observations": [
{
"name": "danmuku-native-parser",
"value": {
"parsed": [
{
"text": "A & B",
"time": 0,
"mode": 0,
"color": "#ff",
"userID": "user",
"rowID": 456
},
{
"text": "TOP",
"time": 2,
"mode": 2,
"color": "#ffffff",
"userID": "u",
"rowID": 789
}
],
"emptyIdentity": true,
"beforeDestroy": 2,
"rejection": "TypeError: NetworkError when attempting to fetch resource.",
"parserWorkers": [
{
"url": "blob:http://127.0.0.1:8084/8f0977cf-4317-4938-aa01-c405a49d09de",
"terminated": 1,
"replies": [
{
"danmus": [
{
"text": "A & B",
"time": 0,
"mode": 0,
"fontSize": 25,
"color": "#ff",
"timestamp": 123,
"pool": 0,
"userID": "user",
"rowID": 456,
"style": {}
},
{
"text": "TOP",
"time": 2,
"mode": 2,
"fontSize": 20,
"color": "#ffffff",
"timestamp": 124,
"pool": 0,
"userID": "u",
"rowID": 789,
"style": {}
}
],
"id": 1
}
]
},
{
"url": "blob:http://127.0.0.1:8084/b7e21127-5e68-4b2c-92cd-30abbd5fd125",
"terminated": 1,
"replies": [
{
"danmus": [],
"id": 2
}
]
}
],
"urls": [
"blob:http://127.0.0.1:8084/7a6b574b-d7fa-4470-bdd4-bd6c5d44f889",
"blob:http://127.0.0.1:8084/8f0977cf-4317-4938-aa01-c405a49d09de",
"blob:http://127.0.0.1:8084/b7e21127-5e68-4b2c-92cd-30abbd5fd125"
],
"revoked": [
"",
"blob:http://127.0.0.1:8084/8f0977cf-4317-4938-aa01-c405a49d09de",
"blob:http://127.0.0.1:8084/b7e21127-5e68-4b2c-92cd-30abbd5fd125"
],
"workers": [
{
"url": "blob:http://127.0.0.1:8084/7a6b574b-d7fa-4470-bdd4-bd6c5d44f889",
"terminated": 1,
"replies": []
},
{
"url": "blob:http://127.0.0.1:8084/8f0977cf-4317-4938-aa01-c405a49d09de",
"terminated": 1,
"replies": [
{
"danmus": [
{
"text": "A & B",
"time": 0,
"mode": 0,
"fontSize": 25,
"color": "#ff",
"timestamp": 123,
"pool": 0,
"userID": "user",
"rowID": 456,
"style": {}
},
{
"text": "TOP",
"time": 2,
"mode": 2,
"fontSize": 20,
"color": "#ffffff",
"timestamp": 124,
"pool": 0,
"userID": "u",
"rowID": 789,
"style": {}
}
],
"id": 1
}
]
},
{
"url": "blob:http://127.0.0.1:8084/b7e21127-5e68-4b2c-92cd-30abbd5fd125",
"terminated": 1,
"replies": [
{
"danmus": [],
"id": 2
}
]
}
],
"events": [
{
"name": "show"
},
{
"name": "config"
},
{
"name": "reset"
},
{
"name": "loaded",
"count": 0
},
{
"name": "loaded",
"count": 2
},
{
"name": "loaded",
"count": 2
},
{
"name": "error",
"error": "TypeError: NetworkError when attempting to fetch resource."
},
{
"name": "destroy"
}
]
}
}
]
},
{
"title": "Danmuku input replacement append and destruction (published)",
"browser": "firefox",
"durationMs": 645,
"observations": [
{
"name": "danmuku-native-input-ownership",
"value": {
"initialEvents": [
"show",
"config",
"reset",
"loaded"
],
"latestIdentity": true,
"oldIdentity": true,
"destroyedIdentity": true,
"queue": [
{
"text": "new",
"time": 0
},
{
"text": "append B",
"time": 0.5
},
{
"text": "append A",
"time": 0.5
}
],
"finalQueue": [
"new",
"append B",
"append A"
],
"loadedBefore": 4,
"loadedAfter": 4,
"events": [
{
"name": "show"
},
{
"name": "config"
},
{
"name": "reset"
},
{
"name": "loaded",
"count": 0
},
{
"name": "show"
},
{
"name": "config"
},
{
"name": "show"
},
{
"name": "config"
},
{
"name": "reset"
},
{
"name": "loaded",
"count": 1
},
{
"name": "loaded",
"count": 2
},
{
"name": "loaded",
"count": 3
},
{
"name": "destroy"
}
]
}
}
]
},
{
"title": "Danmuku config callback replacement and validation (published)",
"browser": "firefox",
"durationMs": 484,
"observations": [
{
"name": "danmuku-native-config",
"value": {
"unchangedIdentity": true,
"count": 2,
"unchangedCount": 2,
"unchangedOption": true,
"filterIdentity": true,
"error": "Error: [Type Error]: 'option.speed' require 'number' type, but got 'string'",
"receiver": [
true,
true
],
"emittedIdentity": true,
"input": {
"text": "included",
"time": 0,
"mode": 0,
"style": {},
"color": "#FFFFFF"
},
"queue": [
{
"text": "included",
"time": 0
}
]
}
}
]
},
{
"title": "Danmuku input native Worker startup failure falls back locally (candidate)",
"browser": "firefox",
"durationMs": 2217,
"observations": [
{
"name": "danmuku-native-worker-fault",
"value": {
"queue": [
{
"text": "FALLBACK",
"time": 0,
"mode": 1
}
],
"workers": [
{
"url": "blob:http://127.0.0.1:8084/49e4de27-a694-486e-a755-5c3af2736f28",
"terminated": 1,
"replies": []
}
],
"urls": [
"blob:http://127.0.0.1:8084/69270c58-7982-45d8-b6e7-911aedf10ede",
"blob:http://127.0.0.1:8084/49e4de27-a694-486e-a755-5c3af2736f28"
],
"revoked": [
"blob:http://127.0.0.1:8084/49e4de27-a694-486e-a755-5c3af2736f28",
"blob:http://127.0.0.1:8084/69270c58-7982-45d8-b6e7-911aedf10ede"
],
"errors": [],
"fault": "Test replaces only the newly created native parser Worker script with a thrown startup Error; fetch, fallback parser and error dispatch remain real."
}
}
]
},
{
"title": "Danmuku input native parser cleanup and rejected fetch (candidate)",
"browser": "firefox",
"durationMs": 538,
"observations": [
{
"name": "danmuku-native-parser",
"value": {
"parsed": [
{
"text": "A & B",
"time": 0,
"mode": 0,
"color": "#ff",
"userID": "user",
"rowID": 456
},
{
"text": "TOP",
"time": 2,
"mode": 2,
"color": "#ffffff",
"userID": "u",
"rowID": 789
}
],
"emptyIdentity": true,
"beforeDestroy": 2,
"rejection": "TypeError: NetworkError when attempting to fetch resource.",
"parserWorkers": [
{
"url": "blob:http://127.0.0.1:8084/5b2e5d2a-e5cc-4386-96a4-08a39f5d6959",
"terminated": 1,
"replies": [
{
"danmus": [
{
"text": "A & B",
"time": 0,
"mode": 0,
"fontSize": 25,
"color": "#ff",
"timestamp": 123,
"pool": 0,
"userID": "user",
"rowID": 456,
"style": {}
},
{
"text": "TOP",
"time": 2,
"mode": 2,
"fontSize": 20,
"color": "#ffffff",
"timestamp": 124,
"pool": 0,
"userID": "u",
"rowID": 789,
"style": {}
}
],
"id": 1
}
]
},
{
"url": "blob:http://127.0.0.1:8084/9d3addc7-1764-4e31-8f2f-20d8919888dd",
"terminated": 1,
"replies": [
{
"danmus": [],
"id": 2
}
]
}
],
"urls": [
"blob:http://127.0.0.1:8084/ef6f4d03-2679-45ff-82f9-b8e43ee5068b",
"blob:http://127.0.0.1:8084/5b2e5d2a-e5cc-4386-96a4-08a39f5d6959",
"blob:http://127.0.0.1:8084/9d3addc7-1764-4e31-8f2f-20d8919888dd"
],
"revoked": [
"blob:http://127.0.0.1:8084/5b2e5d2a-e5cc-4386-96a4-08a39f5d6959",
"blob:http://127.0.0.1:8084/9d3addc7-1764-4e31-8f2f-20d8919888dd"
],
"workers": [
{
"url": "blob:http://127.0.0.1:8084/ef6f4d03-2679-45ff-82f9-b8e43ee5068b",
"terminated": 1,
"replies": []
},
{
"url": "blob:http://127.0.0.1:8084/5b2e5d2a-e5cc-4386-96a4-08a39f5d6959",
"terminated": 1,
"replies": [
{
"danmus": [
{
"text": "A & B",
"time": 0,
"mode": 0,
"fontSize": 25,
"color": "#ff",
"timestamp": 123,
"pool": 0,
"userID": "user",
"rowID": 456,
"style": {}
},
{
"text": "TOP",
"time": 2,
"mode": 2,
"fontSize": 20,
"color": "#ffffff",
"timestamp": 124,
"pool": 0,
"userID": "u",
"rowID": 789,
"style": {}
}
],
"id": 1
}
]
},
{
"url": "blob:http://127.0.0.1:8084/9d3addc7-1764-4e31-8f2f-20d8919888dd",
"terminated": 1,
"replies": [
{
"danmus": [],
"id": 2
}
]
}
],
"events": [
{
"name": "show"
},
{
"name": "config"
},
{
"name": "reset"
},
{
"name": "loaded",
"count": 0
},
{
"name": "loaded",
"count": 2
},
{
"name": "loaded",
"count": 2
},
{
"name": "error",
"error": "TypeError: NetworkError when attempting to fetch resource."
},
{
"name": "destroy"
}
]
}
}
]
},
{
"title": "Danmuku input replacement append and destruction (candidate)",
"browser": "firefox",
"durationMs": 455,
"observations": [
{
"name": "danmuku-native-input-ownership",
"value": {
"initialEvents": [
"show",
"config",
"reset",
"loaded"
],
"latestIdentity": true,
"oldIdentity": true,
"destroyedIdentity": true,
"queue": [
{
"text": "new",
"time": 0
},
{
"text": "append B",
"time": 0.5
},
{
"text": "append A",
"time": 0.5
}
],
"finalQueue": [
"new",
"append B",
"append A"
],
"loadedBefore": 4,
"loadedAfter": 4,
"events": [
{
"name": "show"
},
{
"name": "config"
},
{
"name": "reset"
},
{
"name": "loaded",
"count": 0
},
{
"name": "show"
},
{
"name": "config"
},
{
"name": "show"
},
{
"name": "config"
},
{
"name": "reset"
},
{
"name": "loaded",
"count": 1
},
{
"name": "loaded",
"count": 2
},
{
"name": "loaded",
"count": 3
},
{
"name": "destroy"
}
]
}
}
]
},
{
"title": "Danmuku config callback replacement and validation (candidate)",
"browser": "firefox",
"durationMs": 436,
"observations": [
{
"name": "danmuku-native-config",
"value": {
"unchangedIdentity": true,
"count": 2,
"unchangedCount": 2,
"unchangedOption": true,
"filterIdentity": true,
"error": "Error: [Type Error]: 'option.speed' require 'number' type, but got 'string'",
"receiver": [
true,
true
],
"emittedIdentity": true,
"input": {
"text": "included",
"time": 0,
"mode": 0,
"style": {},
"color": "#FFFFFF"
},
"queue": [
{
"text": "included",
"time": 0
}
]
}
}
]
},
{
"title": "Danmuku input native Worker startup failure falls back locally (published)",
"browser": "webkit",
"durationMs": 1471,
"observations": [
{
"name": "danmuku-native-worker-fault",
"value": {
"queue": [
{
"text": "FALLBACK",
"time": 0,
"mode": 1
}
],
"workers": [
{
"url": "blob:http://127.0.0.1:8084/dc22ab6c-d50f-4b39-939f-38b907489f5f",
"terminated": 1,
"replies": []
}
],
"urls": [
"blob:http://127.0.0.1:8084/18d77cb7-4759-4d7f-b5a3-81a2695c01f3",
"blob:http://127.0.0.1:8084/dc22ab6c-d50f-4b39-939f-38b907489f5f"
],
"revoked": [
"",
"blob:http://127.0.0.1:8084/dc22ab6c-d50f-4b39-939f-38b907489f5f",
"blob:http://127.0.0.1:8084/18d77cb7-4759-4d7f-b5a3-81a2695c01f3"
],
"errors": [],
"fault": "Test replaces only the newly created native parser Worker script with a thrown startup Error; fetch, fallback parser and error dispatch remain real."
}
}
]
},
{
"title": "Danmuku input native parser cleanup and rejected fetch (published)",
"browser": "webkit",
"durationMs": 1536,
"observations": [
{
"name": "danmuku-native-parser",
"value": {
"parsed": [
{
"text": "A & B",
"time": 0,
"mode": 0,
"color": "#ff",
"userID": "user",
"rowID": 456
},
{
"text": "TOP",
"time": 2,
"mode": 2,
"color": "#ffffff",
"userID": "u",
"rowID": 789
}
],
"emptyIdentity": true,
"beforeDestroy": 2,
"rejection": "TypeError: Load failed",
"parserWorkers": [
{
"url": "blob:http://127.0.0.1:8084/b3023e13-bd88-4f98-bbf9-e0eab9a228f7",
"terminated": 1,
"replies": [
{
"danmus": [
{
"text": "A & B",
"time": 0,
"mode": 0,
"fontSize": 25,
"color": "#ff",
"timestamp": 123,
"pool": 0,
"userID": "user",
"rowID": 456,
"style": {}
},
{
"text": "TOP",
"time": 2,
"mode": 2,
"fontSize": 20,
"color": "#ffffff",
"timestamp": 124,
"pool": 0,
"userID": "u",
"rowID": 789,
"style": {}
}
],
"id": 1
}
]
},
{
"url": "blob:http://127.0.0.1:8084/e978d3e9-6e7e-4eba-8445-82947af0b787",
"terminated": 1,
"replies": [
{
"danmus": [],
"id": 2
}
]
}
],
"urls": [
"blob:http://127.0.0.1:8084/f1cae22f-6deb-4523-bf4d-39e25fd95fcf",
"blob:http://127.0.0.1:8084/b3023e13-bd88-4f98-bbf9-e0eab9a228f7",
"blob:http://127.0.0.1:8084/e978d3e9-6e7e-4eba-8445-82947af0b787"
],
"revoked": [
"",
"blob:http://127.0.0.1:8084/b3023e13-bd88-4f98-bbf9-e0eab9a228f7",
"blob:http://127.0.0.1:8084/e978d3e9-6e7e-4eba-8445-82947af0b787"
],
"workers": [
{
"url": "blob:http://127.0.0.1:8084/f1cae22f-6deb-4523-bf4d-39e25fd95fcf",
"terminated": 1,
"replies": []
},
{
"url": "blob:http://127.0.0.1:8084/b3023e13-bd88-4f98-bbf9-e0eab9a228f7",
"terminated": 1,
"replies": [
{
"danmus": [
{
"text": "A & B",
"time": 0,
"mode": 0,
"fontSize": 25,
"color": "#ff",
"timestamp": 123,
"pool": 0,
"userID": "user",
"rowID": 456,
"style": {}
},
{
"text": "TOP",
"time": 2,
"mode": 2,
"fontSize": 20,
"color": "#ffffff",
"timestamp": 124,
"pool": 0,
"userID": "u",
"rowID": 789,
"style": {}
}
],
"id": 1
}
]
},
{
"url": "blob:http://127.0.0.1:8084/e978d3e9-6e7e-4eba-8445-82947af0b787",
"terminated": 1,
"replies": [
{
"danmus": [],
"id": 2
}
]
}
],
"events": [
{
"name": "show"
},
{
"name": "config"
},
{
"name": "reset"
},
{
"name": "loaded",
"count": 0
},
{
"name": "loaded",
"count": 2
},
{
"name": "loaded",
"count": 2
},
{
"name": "error",
"error": "TypeError: Load failed"
},
{
"name": "destroy"
}
]
}
}
]
},
{
"title": "Danmuku input replacement append and destruction (published)",
"browser": "webkit",
"durationMs": 1446,
"observations": [
{
"name": "danmuku-native-input-ownership",
"value": {
"initialEvents": [
"show",
"config",
"reset",
"loaded"
],
"latestIdentity": true,
"oldIdentity": true,
"destroyedIdentity": true,
"queue": [
{
"text": "new",
"time": 0
},
{
"text": "append B",
"time": 0.5
},
{
"text": "append A",
"time": 0.5
}
],
"finalQueue": [
"new",
"append B",
"append A"
],
"loadedBefore": 4,
"loadedAfter": 4,
"events": [
{
"name": "show"
},
{
"name": "config"
},
{
"name": "reset"
},
{
"name": "loaded",
"count": 0
},
{
"name": "show"
},
{
"name": "config"
},
{
"name": "show"
},
{
"name": "config"
},
{
"name": "reset"
},
{
"name": "loaded",
"count": 1
},
{
"name": "loaded",
"count": 2
},
{
"name": "loaded",
"count": 3
},
{
"name": "destroy"
}
]
}
}
]
},
{
"title": "Danmuku config callback replacement and validation (published)",
"browser": "webkit",
"durationMs": 1150,
"observations": [
{
"name": "danmuku-native-config",
"value": {
"unchangedIdentity": true,
"count": 2,
"unchangedCount": 2,
"unchangedOption": true,
"filterIdentity": true,
"error": "Error: [Type Error]: 'option.speed' require 'number' type, but got 'string'",
"receiver": [
true,
true
],
"emittedIdentity": true,
"input": {
"text": "included",
"time": 0,
"mode": 0,
"style": {},
"color": "#FFFFFF"
},
"queue": [
{
"text": "included",
"time": 0
}
]
}
}
]
},
{
"title": "Danmuku input native Worker startup failure falls back locally (candidate)",
"browser": "webkit",
"durationMs": 1521,
"observations": [
{
"name": "danmuku-native-worker-fault",
"value": {
"queue": [
{
"text": "FALLBACK",
"time": 0,
"mode": 1
}
],
"workers": [
{
"url": "blob:http://127.0.0.1:8084/8147e44f-5701-4553-9add-3f1cb73b7215",
"terminated": 1,
"replies": []
}
],
"urls": [
"blob:http://127.0.0.1:8084/a6b273ae-bf74-45a6-8c36-47d43ec724c4",
"blob:http://127.0.0.1:8084/8147e44f-5701-4553-9add-3f1cb73b7215"
],
"revoked": [
"blob:http://127.0.0.1:8084/8147e44f-5701-4553-9add-3f1cb73b7215",
"blob:http://127.0.0.1:8084/a6b273ae-bf74-45a6-8c36-47d43ec724c4"
],
"errors": [],
"fault": "Test replaces only the newly created native parser Worker script with a thrown startup Error; fetch, fallback parser and error dispatch remain real."
}
}
]
},
{
"title": "Danmuku input native parser cleanup and rejected fetch (candidate)",
"browser": "webkit",
"durationMs": 1521,
"observations": [
{
"name": "danmuku-native-parser",
"value": {
"parsed": [
{
"text": "A & B",
"time": 0,
"mode": 0,
"color": "#ff",
"userID": "user",
"rowID": 456
},
{
"text": "TOP",
"time": 2,
"mode": 2,
"color": "#ffffff",
"userID": "u",
"rowID": 789
}
],
"emptyIdentity": true,
"beforeDestroy": 2,
"rejection": "TypeError: Load failed",
"parserWorkers": [
{
"url": "blob:http://127.0.0.1:8084/43120c61-d17f-4223-bc37-7be96aadc835",
"terminated": 1,
"replies": [
{
"danmus": [
{
"text": "A & B",
"time": 0,
"mode": 0,
"fontSize": 25,
"color": "#ff",
"timestamp": 123,
"pool": 0,
"userID": "user",
"rowID": 456,
"style": {}
},
{
"text": "TOP",
"time": 2,
"mode": 2,
"fontSize": 20,
"color": "#ffffff",
"timestamp": 124,
"pool": 0,
"userID": "u",
"rowID": 789,
"style": {}
}
],
"id": 1
}
]
},
{
"url": "blob:http://127.0.0.1:8084/8a5c59ed-eb85-4128-8fcd-379d7c449782",
"terminated": 1,
"replies": [
{
"danmus": [],
"id": 2
}
]
}
],
"urls": [
"blob:http://127.0.0.1:8084/4b2866a6-ef93-4090-8c12-a8a5b28643d5",
"blob:http://127.0.0.1:8084/43120c61-d17f-4223-bc37-7be96aadc835",
"blob:http://127.0.0.1:8084/8a5c59ed-eb85-4128-8fcd-379d7c449782"
],
"revoked": [
"blob:http://127.0.0.1:8084/43120c61-d17f-4223-bc37-7be96aadc835",
"blob:http://127.0.0.1:8084/8a5c59ed-eb85-4128-8fcd-379d7c449782"
],
"workers": [
{
"url": "blob:http://127.0.0.1:8084/4b2866a6-ef93-4090-8c12-a8a5b28643d5",
"terminated": 1,
"replies": []
},
{
"url": "blob:http://127.0.0.1:8084/43120c61-d17f-4223-bc37-7be96aadc835",
"terminated": 1,
"replies": [
{
"danmus": [
{
"text": "A & B",
"time": 0,
"mode": 0,
"fontSize": 25,
"color": "#ff",
"timestamp": 123,
"pool": 0,
"userID": "user",
"rowID": 456,
"style": {}
},
{
"text": "TOP",
"time": 2,
"mode": 2,
"fontSize": 20,
"color": "#ffffff",
"timestamp": 124,
"pool": 0,
"userID": "u",
"rowID": 789,
"style": {}
}
],
"id": 1
}
]
},
{
"url": "blob:http://127.0.0.1:8084/8a5c59ed-eb85-4128-8fcd-379d7c449782",
"terminated": 1,
"replies": [
{
"danmus": [],
"id": 2
}
]
}
],
"events": [
{
"name": "show"
},
{
"name": "config"
},
{
"name": "reset"
},
{
"name": "loaded",
"count": 0
},
{
"name": "loaded",
"count": 2
},
{
"name": "loaded",
"count": 2
},
{
"name": "error",
"error": "TypeError: Load failed"
},
{
"name": "destroy"
}
]
}
}
]
},
{
"title": "Danmuku input replacement append and destruction (candidate)",
"browser": "webkit",
"durationMs": 1345,
"observations": [
{
"name": "danmuku-native-input-ownership",
"value": {
"initialEvents": [
"show",
"config",
"reset",
"loaded"
],
"latestIdentity": true,
"oldIdentity": true,
"destroyedIdentity": true,
"queue": [
{
"text": "new",
"time": 0
},
{
"text": "append B",
"time": 0.5
},
{
"text": "append A",
"time": 0.5
}
],
"finalQueue": [
"new",
"append B",
"append A"
],
"loadedBefore": 4,
"loadedAfter": 4,
"events": [
{
"name": "show"
},
{
"name": "config"
},
{
"name": "reset"
},
{
"name": "loaded",
"count": 0
},
{
"name": "show"
},
{
"name": "config"
},
{
"name": "show"
},
{
"name": "config"
},
{
"name": "reset"
},
{
"name": "loaded",
"count": 1
},
{
"name": "loaded",
"count": 2
},
{
"name": "loaded",
"count": 3
},
{
"name": "destroy"
}
]
}
}
]
},
{
"title": "Danmuku config callback replacement and validation (candidate)",
"browser": "webkit",
"durationMs": 1251,
"observations": [
{
"name": "danmuku-native-config",
"value": {
"unchangedIdentity": true,
"count": 2,
"unchangedCount": 2,
"unchangedOption": true,
"filterIdentity": true,
"error": "Error: [Type Error]: 'option.speed' require 'number' type, but got 'string'",
"receiver": [
true,
true
],
"emittedIdentity": true,
"input": {
"text": "included",
"time": 0,
"mode": 0,
"style": {},
"color": "#FFFFFF"
},
"queue": [
{
"text": "included",
"time": 0
}
]
}
}
]
},
{
"title": "published: shared setting mount preserves the surviving instance and later user changes",
"browser": "chromium",
"durationMs": 298,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "published",
"scenario": "normal",
"artifact": "source UMD",
"sha256": "1423f8ac9de24b15d908761df2e0720123a88a2b05a45628f720adfd01680663",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
},
{
"terminated": 1
}
],
"sends": [],
"messages": [],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "published: invalid setting mount rolls back plugin resources while preserving the original error",
"browser": "chromium",
"durationMs": 327,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "published",
"scenario": "normal",
"artifact": "source UMD",
"sha256": "1423f8ac9de24b15d908761df2e0720123a88a2b05a45628f720adfd01680663",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
},
{
"terminated": 1
}
],
"sends": [],
"messages": [],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "published: destroy cancels pending setting send without clearing retained input or starting a lock",
"browser": "chromium",
"durationMs": 372,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "published",
"scenario": "pending",
"artifact": "source UMD",
"sha256": "1423f8ac9de24b15d908761df2e0720123a88a2b05a45628f720adfd01680663",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
}
],
"sends": [
{
"index": 0,
"text": "PENDING",
"receiver": true
}
],
"messages": [],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "published: destroy clears active send timer and leaves another mounted instance usable",
"browser": "chromium",
"durationMs": 444,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "published",
"scenario": "normal",
"artifact": "source UMD",
"sha256": "1423f8ac9de24b15d908761df2e0720123a88a2b05a45628f720adfd01680663",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
},
{
"terminated": 1
}
],
"sends": [
{
"index": 0,
"text": "LOCK",
"receiver": true
},
{
"index": 1,
"text": "SECOND",
"receiver": true
}
],
"messages": [],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "published: rejected setting callback retains input and original console error without an unhandled rejection",
"browser": "chromium",
"durationMs": 393,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "published",
"scenario": "reject",
"artifact": "source UMD",
"sha256": "1423f8ac9de24b15d908761df2e0720123a88a2b05a45628f720adfd01680663",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
}
],
"sends": [
{
"index": 0,
"text": "REJECT",
"receiver": true
}
],
"messages": [],
"errors": [
[
"Error emitting danmuku:",
"controlled setting rejection"
]
],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "published: destroy false releases actual renderer nodes while retaining the player shell",
"browser": "chromium",
"durationMs": 477,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "published",
"scenario": "normal",
"artifact": "source UMD",
"sha256": "1423f8ac9de24b15d908761df2e0720123a88a2b05a45628f720adfd01680663",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
}
],
"sends": [],
"messages": [
"VISIBLE"
],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "published: replacement load removes a moved renderer node and preserves unrelated body content",
"browser": "chromium",
"durationMs": 458,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "published",
"scenario": "normal",
"artifact": "source UMD",
"sha256": "1423f8ac9de24b15d908761df2e0720123a88a2b05a45628f720adfd01680663",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
}
],
"sends": [],
"messages": [
"MOVED"
],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "published: narrow heatmap invalid sampling stays responsive and two instances have independent gradients",
"browser": "chromium",
"durationMs": 544,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "published",
"scenario": "heatmap",
"artifact": "source UMD",
"sha256": "1423f8ac9de24b15d908761df2e0720123a88a2b05a45628f720adfd01680663",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-heatmap",
"value": {
"ids": [
"heatmap-solids",
"heatmap-solids-1"
],
"fills": [
"url(#heatmap-solids)",
"url(#heatmap-solids-1)"
],
"offsets": [
"25%",
"75%"
],
"validPaths": true
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
},
{
"terminated": 1
}
],
"sends": [],
"messages": [],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "candidate: shared setting mount preserves the surviving instance and later user changes",
"browser": "chromium",
"durationMs": 306,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "candidate",
"scenario": "normal",
"artifact": "source UMD",
"sha256": "1423f8ac9de24b15d908761df2e0720123a88a2b05a45628f720adfd01680663",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
},
{
"terminated": 1
}
],
"sends": [],
"messages": [],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "candidate: invalid setting mount rolls back plugin resources while preserving the original error",
"browser": "chromium",
"durationMs": 340,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "candidate",
"scenario": "normal",
"artifact": "source UMD",
"sha256": "1423f8ac9de24b15d908761df2e0720123a88a2b05a45628f720adfd01680663",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
},
{
"terminated": 1
}
],
"sends": [],
"messages": [],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "candidate: destroy cancels pending setting send without clearing retained input or starting a lock",
"browser": "chromium",
"durationMs": 389,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "candidate",
"scenario": "pending",
"artifact": "source UMD",
"sha256": "1423f8ac9de24b15d908761df2e0720123a88a2b05a45628f720adfd01680663",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
}
],
"sends": [
{
"index": 0,
"text": "PENDING",
"receiver": true
}
],
"messages": [],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "candidate: destroy clears active send timer and leaves another mounted instance usable",
"browser": "chromium",
"durationMs": 463,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "candidate",
"scenario": "normal",
"artifact": "source UMD",
"sha256": "1423f8ac9de24b15d908761df2e0720123a88a2b05a45628f720adfd01680663",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
},
{
"terminated": 1
}
],
"sends": [
{
"index": 0,
"text": "LOCK",
"receiver": true
},
{
"index": 1,
"text": "SECOND",
"receiver": true
}
],
"messages": [],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "candidate: rejected setting callback retains input and original console error without an unhandled rejection",
"browser": "chromium",
"durationMs": 424,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "candidate",
"scenario": "reject",
"artifact": "source UMD",
"sha256": "1423f8ac9de24b15d908761df2e0720123a88a2b05a45628f720adfd01680663",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
}
],
"sends": [
{
"index": 0,
"text": "REJECT",
"receiver": true
}
],
"messages": [],
"errors": [
[
"Error emitting danmuku:",
"controlled setting rejection"
]
],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "candidate: destroy false releases actual renderer nodes while retaining the player shell",
"browser": "chromium",
"durationMs": 472,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "candidate",
"scenario": "normal",
"artifact": "source UMD",
"sha256": "1423f8ac9de24b15d908761df2e0720123a88a2b05a45628f720adfd01680663",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
}
],
"sends": [],
"messages": [
"VISIBLE"
],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "candidate: replacement load removes a moved renderer node and preserves unrelated body content",
"browser": "chromium",
"durationMs": 511,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "candidate",
"scenario": "normal",
"artifact": "source UMD",
"sha256": "1423f8ac9de24b15d908761df2e0720123a88a2b05a45628f720adfd01680663",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
}
],
"sends": [],
"messages": [
"MOVED"
],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "candidate: narrow heatmap invalid sampling stays responsive and two instances have independent gradients",
"browser": "chromium",
"durationMs": 541,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "candidate",
"scenario": "heatmap",
"artifact": "source UMD",
"sha256": "1423f8ac9de24b15d908761df2e0720123a88a2b05a45628f720adfd01680663",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-heatmap",
"value": {
"ids": [
"heatmap-solids",
"heatmap-solids-1"
],
"fills": [
"url(#heatmap-solids)",
"url(#heatmap-solids-1)"
],
"offsets": [
"25%",
"75%"
],
"validPaths": true
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
},
{
"terminated": 1
}
],
"sends": [],
"messages": [],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "published: shared setting mount preserves the surviving instance and later user changes",
"browser": "firefox",
"durationMs": 490,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "published",
"scenario": "normal",
"artifact": "source UMD",
"sha256": "1423f8ac9de24b15d908761df2e0720123a88a2b05a45628f720adfd01680663",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
},
{
"terminated": 1
}
],
"sends": [],
"messages": [],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "published: invalid setting mount rolls back plugin resources while preserving the original error",
"browser": "firefox",
"durationMs": 604,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "published",
"scenario": "normal",
"artifact": "source UMD",
"sha256": "1423f8ac9de24b15d908761df2e0720123a88a2b05a45628f720adfd01680663",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
},
{
"terminated": 1
}
],
"sends": [],
"messages": [],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "published: destroy cancels pending setting send without clearing retained input or starting a lock",
"browser": "firefox",
"durationMs": 775,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "published",
"scenario": "pending",
"artifact": "source UMD",
"sha256": "1423f8ac9de24b15d908761df2e0720123a88a2b05a45628f720adfd01680663",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
}
],
"sends": [
{
"index": 0,
"text": "PENDING",
"receiver": true
}
],
"messages": [],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "published: destroy clears active send timer and leaves another mounted instance usable",
"browser": "firefox",
"durationMs": 955,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "published",
"scenario": "normal",
"artifact": "source UMD",
"sha256": "1423f8ac9de24b15d908761df2e0720123a88a2b05a45628f720adfd01680663",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
},
{
"terminated": 1
}
],
"sends": [
{
"index": 0,
"text": "LOCK",
"receiver": true
},
{
"index": 1,
"text": "SECOND",
"receiver": true
}
],
"messages": [],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "published: rejected setting callback retains input and original console error without an unhandled rejection",
"browser": "firefox",
"durationMs": 598,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "published",
"scenario": "reject",
"artifact": "source UMD",
"sha256": "1423f8ac9de24b15d908761df2e0720123a88a2b05a45628f720adfd01680663",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
}
],
"sends": [
{
"index": 0,
"text": "REJECT",
"receiver": true
}
],
"messages": [],
"errors": [
[
"Error emitting danmuku:",
"controlled setting rejection"
]
],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "published: destroy false releases actual renderer nodes while retaining the player shell",
"browser": "firefox",
"durationMs": 1373,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "published",
"scenario": "normal",
"artifact": "source UMD",
"sha256": "1423f8ac9de24b15d908761df2e0720123a88a2b05a45628f720adfd01680663",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
}
],
"sends": [],
"messages": [
"VISIBLE"
],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "published: replacement load removes a moved renderer node and preserves unrelated body content",
"browser": "firefox",
"durationMs": 543,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "published",
"scenario": "normal",
"artifact": "source UMD",
"sha256": "1423f8ac9de24b15d908761df2e0720123a88a2b05a45628f720adfd01680663",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
}
],
"sends": [],
"messages": [
"MOVED"
],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "published: narrow heatmap invalid sampling stays responsive and two instances have independent gradients",
"browser": "firefox",
"durationMs": 596,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "published",
"scenario": "heatmap",
"artifact": "source UMD",
"sha256": "1423f8ac9de24b15d908761df2e0720123a88a2b05a45628f720adfd01680663",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-heatmap",
"value": {
"ids": [
"heatmap-solids",
"heatmap-solids-1"
],
"fills": [
"url(#heatmap-solids)",
"url(#heatmap-solids-1)"
],
"offsets": [
"25%",
"75%"
],
"validPaths": true
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
},
{
"terminated": 1
}
],
"sends": [],
"messages": [],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "candidate: shared setting mount preserves the surviving instance and later user changes",
"browser": "firefox",
"durationMs": 508,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "candidate",
"scenario": "normal",
"artifact": "source UMD",
"sha256": "1423f8ac9de24b15d908761df2e0720123a88a2b05a45628f720adfd01680663",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
},
{
"terminated": 1
}
],
"sends": [],
"messages": [],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "candidate: invalid setting mount rolls back plugin resources while preserving the original error",
"browser": "firefox",
"durationMs": 520,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "candidate",
"scenario": "normal",
"artifact": "source UMD",
"sha256": "1423f8ac9de24b15d908761df2e0720123a88a2b05a45628f720adfd01680663",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
},
{
"terminated": 1
}
],
"sends": [],
"messages": [],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "candidate: destroy cancels pending setting send without clearing retained input or starting a lock",
"browser": "firefox",
"durationMs": 639,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "candidate",
"scenario": "pending",
"artifact": "source UMD",
"sha256": "1423f8ac9de24b15d908761df2e0720123a88a2b05a45628f720adfd01680663",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
}
],
"sends": [
{
"index": 0,
"text": "PENDING",
"receiver": true
}
],
"messages": [],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "candidate: destroy clears active send timer and leaves another mounted instance usable",
"browser": "firefox",
"durationMs": 857,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "candidate",
"scenario": "normal",
"artifact": "source UMD",
"sha256": "1423f8ac9de24b15d908761df2e0720123a88a2b05a45628f720adfd01680663",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
},
{
"terminated": 1
}
],
"sends": [
{
"index": 0,
"text": "LOCK",
"receiver": true
},
{
"index": 1,
"text": "SECOND",
"receiver": true
}
],
"messages": [],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "candidate: rejected setting callback retains input and original console error without an unhandled rejection",
"browser": "firefox",
"durationMs": 679,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "candidate",
"scenario": "reject",
"artifact": "source UMD",
"sha256": "1423f8ac9de24b15d908761df2e0720123a88a2b05a45628f720adfd01680663",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
}
],
"sends": [
{
"index": 0,
"text": "REJECT",
"receiver": true
}
],
"messages": [],
"errors": [
[
"Error emitting danmuku:",
"controlled setting rejection"
]
],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "candidate: destroy false releases actual renderer nodes while retaining the player shell",
"browser": "firefox",
"durationMs": 1227,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "candidate",
"scenario": "normal",
"artifact": "source UMD",
"sha256": "1423f8ac9de24b15d908761df2e0720123a88a2b05a45628f720adfd01680663",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
}
],
"sends": [],
"messages": [
"VISIBLE"
],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "candidate: replacement load removes a moved renderer node and preserves unrelated body content",
"browser": "firefox",
"durationMs": 727,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "candidate",
"scenario": "normal",
"artifact": "source UMD",
"sha256": "1423f8ac9de24b15d908761df2e0720123a88a2b05a45628f720adfd01680663",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
}
],
"sends": [],
"messages": [
"MOVED"
],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "candidate: narrow heatmap invalid sampling stays responsive and two instances have independent gradients",
"browser": "firefox",
"durationMs": 605,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "candidate",
"scenario": "heatmap",
"artifact": "source UMD",
"sha256": "1423f8ac9de24b15d908761df2e0720123a88a2b05a45628f720adfd01680663",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-heatmap",
"value": {
"ids": [
"heatmap-solids",
"heatmap-solids-1"
],
"fills": [
"url(#heatmap-solids)",
"url(#heatmap-solids-1)"
],
"offsets": [
"25%",
"75%"
],
"validPaths": true
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
},
{
"terminated": 1
}
],
"sends": [],
"messages": [],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "published: shared setting mount preserves the surviving instance and later user changes",
"browser": "webkit",
"durationMs": 1624,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "published",
"scenario": "normal",
"artifact": "source UMD",
"sha256": "1423f8ac9de24b15d908761df2e0720123a88a2b05a45628f720adfd01680663",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
},
{
"terminated": 1
}
],
"sends": [],
"messages": [],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "published: invalid setting mount rolls back plugin resources while preserving the original error",
"browser": "webkit",
"durationMs": 1373,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "published",
"scenario": "normal",
"artifact": "source UMD",
"sha256": "1423f8ac9de24b15d908761df2e0720123a88a2b05a45628f720adfd01680663",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
},
{
"terminated": 1
}
],
"sends": [],
"messages": [],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "published: destroy cancels pending setting send without clearing retained input or starting a lock",
"browser": "webkit",
"durationMs": 2066,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "published",
"scenario": "pending",
"artifact": "source UMD",
"sha256": "1423f8ac9de24b15d908761df2e0720123a88a2b05a45628f720adfd01680663",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
}
],
"sends": [
{
"index": 0,
"text": "PENDING",
"receiver": true
}
],
"messages": [],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "published: destroy clears active send timer and leaves another mounted instance usable",
"browser": "webkit",
"durationMs": 2559,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "published",
"scenario": "normal",
"artifact": "source UMD",
"sha256": "1423f8ac9de24b15d908761df2e0720123a88a2b05a45628f720adfd01680663",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
},
{
"terminated": 1
}
],
"sends": [
{
"index": 0,
"text": "LOCK",
"receiver": true
},
{
"index": 1,
"text": "SECOND",
"receiver": true
}
],
"messages": [],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "published: rejected setting callback retains input and original console error without an unhandled rejection",
"browser": "webkit",
"durationMs": 2315,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "published",
"scenario": "reject",
"artifact": "source UMD",
"sha256": "1423f8ac9de24b15d908761df2e0720123a88a2b05a45628f720adfd01680663",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
}
],
"sends": [
{
"index": 0,
"text": "REJECT",
"receiver": true
}
],
"messages": [],
"errors": [
[
"Error emitting danmuku:",
"controlled setting rejection"
]
],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "published: destroy false releases actual renderer nodes while retaining the player shell",
"browser": "webkit",
"durationMs": 2033,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "published",
"scenario": "normal",
"artifact": "source UMD",
"sha256": "1423f8ac9de24b15d908761df2e0720123a88a2b05a45628f720adfd01680663",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
}
],
"sends": [],
"messages": [
"VISIBLE"
],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "published: replacement load removes a moved renderer node and preserves unrelated body content",
"browser": "webkit",
"durationMs": 1968,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "published",
"scenario": "normal",
"artifact": "source UMD",
"sha256": "1423f8ac9de24b15d908761df2e0720123a88a2b05a45628f720adfd01680663",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
}
],
"sends": [],
"messages": [
"MOVED"
],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "published: narrow heatmap invalid sampling stays responsive and two instances have independent gradients",
"browser": "webkit",
"durationMs": 2130,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "published",
"scenario": "heatmap",
"artifact": "source UMD",
"sha256": "1423f8ac9de24b15d908761df2e0720123a88a2b05a45628f720adfd01680663",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-heatmap",
"value": {
"ids": [
"heatmap-solids",
"heatmap-solids-1"
],
"fills": [
"url(#heatmap-solids)",
"url(#heatmap-solids-1)"
],
"offsets": [
"25%",
"75%"
],
"validPaths": true
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
},
{
"terminated": 1
}
],
"sends": [],
"messages": [],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "candidate: shared setting mount preserves the surviving instance and later user changes",
"browser": "webkit",
"durationMs": 1415,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "candidate",
"scenario": "normal",
"artifact": "source UMD",
"sha256": "1423f8ac9de24b15d908761df2e0720123a88a2b05a45628f720adfd01680663",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
},
{
"terminated": 1
}
],
"sends": [],
"messages": [],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "candidate: invalid setting mount rolls back plugin resources while preserving the original error",
"browser": "webkit",
"durationMs": 1439,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "candidate",
"scenario": "normal",
"artifact": "source UMD",
"sha256": "1423f8ac9de24b15d908761df2e0720123a88a2b05a45628f720adfd01680663",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
},
{
"terminated": 1
}
],
"sends": [],
"messages": [],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "candidate: destroy cancels pending setting send without clearing retained input or starting a lock",
"browser": "webkit",
"durationMs": 1857,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "candidate",
"scenario": "pending",
"artifact": "source UMD",
"sha256": "1423f8ac9de24b15d908761df2e0720123a88a2b05a45628f720adfd01680663",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
}
],
"sends": [
{
"index": 0,
"text": "PENDING",
"receiver": true
}
],
"messages": [],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "candidate: destroy clears active send timer and leaves another mounted instance usable",
"browser": "webkit",
"durationMs": 2678,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "candidate",
"scenario": "normal",
"artifact": "source UMD",
"sha256": "1423f8ac9de24b15d908761df2e0720123a88a2b05a45628f720adfd01680663",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
},
{
"terminated": 1
}
],
"sends": [
{
"index": 0,
"text": "LOCK",
"receiver": true
},
{
"index": 1,
"text": "SECOND",
"receiver": true
}
],
"messages": [],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "candidate: rejected setting callback retains input and original console error without an unhandled rejection",
"browser": "webkit",
"durationMs": 2245,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "candidate",
"scenario": "reject",
"artifact": "source UMD",
"sha256": "1423f8ac9de24b15d908761df2e0720123a88a2b05a45628f720adfd01680663",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
}
],
"sends": [
{
"index": 0,
"text": "REJECT",
"receiver": true
}
],
"messages": [],
"errors": [
[
"Error emitting danmuku:",
"controlled setting rejection"
]
],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "candidate: destroy false releases actual renderer nodes while retaining the player shell",
"browser": "webkit",
"durationMs": 2033,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "candidate",
"scenario": "normal",
"artifact": "source UMD",
"sha256": "1423f8ac9de24b15d908761df2e0720123a88a2b05a45628f720adfd01680663",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
}
],
"sends": [],
"messages": [
"VISIBLE"
],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "candidate: replacement load removes a moved renderer node and preserves unrelated body content",
"browser": "webkit",
"durationMs": 1642,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "candidate",
"scenario": "normal",
"artifact": "source UMD",
"sha256": "1423f8ac9de24b15d908761df2e0720123a88a2b05a45628f720adfd01680663",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
}
],
"sends": [],
"messages": [
"MOVED"
],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "candidate: narrow heatmap invalid sampling stays responsive and two instances have independent gradients",
"browser": "webkit",
"durationMs": 2118,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "candidate",
"scenario": "heatmap",
"artifact": "source UMD",
"sha256": "1423f8ac9de24b15d908761df2e0720123a88a2b05a45628f720adfd01680663",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-heatmap",
"value": {
"ids": [
"heatmap-solids",
"heatmap-solids-1"
],
"fills": [
"url(#heatmap-solids)",
"url(#heatmap-solids-1)"
],
"offsets": [
"25%",
"75%"
],
"validPaths": true
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
},
{
"terminated": 1
}
],
"sends": [],
"messages": [],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "published / Candidate Danmuku candidate: accepted NaN timestamp keeps the historical current-time fallback",
"browser": "chromium",
"durationMs": 2347,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "published",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "in-memory source UMD",
"sha256": "1423f8ac9de24b15d908761df2e0720123a88a2b05a45628f720adfd01680663",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-numeric-compatibility",
"value": {
"expected": 0.5,
"inputTime": 0.5,
"queueTime": 0.5,
"isNaN": false
}
}
]
},
{
"title": "published / Candidate Danmuku candidate: failed recovery respects synchronous destroy from the error listener",
"browser": "chromium",
"durationMs": 449,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "published",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "in-memory source UMD",
"sha256": "1423f8ac9de24b15d908761df2e0720123a88a2b05a45628f720adfd01680663",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-recovery-reentry",
"value": {
"action": "destroy",
"sameOwner": true,
"rowState": "stop",
"isStop": true,
"isDestroy": true,
"events": [
{
"index": 0,
"event": "error",
"time": 0.124351
},
{
"index": 0,
"event": "stop",
"time": 0
},
{
"index": 0,
"event": "destroy",
"time": 0
}
],
"workers": [
{
"url": "blob:http://127.0.0.1:8084/a4da3f5a-a870-4131-96a6-ba330d932d79",
"requests": [
{
"type": "getDanmuTop",
"target": {
"mode": 1,
"height": 23,
"speed": 90
},
"visibles": [],
"antiOverlap": true,
"clientWidth": 640,
"clientHeight": 360,
"marginBottom": 10,
"marginTop": 10,
"id": 1
}
],
"replies": [
{
"id": 1,
"result": 10
}
],
"terminated": 1,
"errors": [
"controlled track failure"
]
}
],
"fault": "Actual video/DOM/track Worker; dispatch an explicit native ErrorEvent and inject a throwing createWorker recovery seam. This does not claim a real CSP or browser Worker construction failure."
}
}
]
},
{
"title": "published / Candidate Danmuku candidate: failed recovery respects synchronous stop from the error listener",
"browser": "chromium",
"durationMs": 476,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "published",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "in-memory source UMD",
"sha256": "1423f8ac9de24b15d908761df2e0720123a88a2b05a45628f720adfd01680663",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-recovery-reentry",
"value": {
"action": "stop",
"sameOwner": true,
"rowState": "stop",
"isStop": true,
"isDestroy": false,
"events": [
{
"index": 0,
"event": "error",
"time": 0.124243
},
{
"index": 0,
"event": "stop",
"time": 0.124243
}
],
"workers": [
{
"url": "blob:http://127.0.0.1:8084/45bb7a7b-f2a2-43f9-afba-1e9819c0d04a",
"requests": [
{
"type": "getDanmuTop",
"target": {
"mode": 1,
"height": 23,
"speed": 90
},
"visibles": [],
"antiOverlap": true,
"clientWidth": 640,
"clientHeight": 360,
"marginBottom": 10,
"marginTop": 10,
"id": 1
}
],
"replies": [
{
"id": 1,
"result": 10
}
],
"terminated": 1,
"errors": [
"controlled track failure"
]
}
],
"fault": "Actual video/DOM/track Worker; dispatch an explicit native ErrorEvent and inject a throwing createWorker recovery seam. This does not claim a real CSP or browser Worker construction failure."
}
}
]
},
{
"title": "published / Candidate Danmuku candidate: native pause cancels pending visibility without blocking later work",
"browser": "chromium",
"durationMs": 2641,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "published",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "in-memory source UMD",
"sha256": "1423f8ac9de24b15d908761df2e0720123a88a2b05a45628f720adfd01680663",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-cancel",
"value": {
"action": "pause",
"before": {
"requests": [
1
],
"visible": [
"fresh-after-cancel"
]
},
"after": [
"fresh-after-cancel"
],
"cancelledSource": "An unresolved user beforeVisible Promise; native RAF, Worker and media remain active."
}
}
]
},
{
"title": "published / Candidate Danmuku candidate: native reset cancels pending visibility without blocking later work",
"browser": "chromium",
"durationMs": 2502,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "published",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "in-memory source UMD",
"sha256": "1423f8ac9de24b15d908761df2e0720123a88a2b05a45628f720adfd01680663",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-cancel",
"value": {
"action": "reset",
"before": {
"requests": [
1
],
"visible": [
"fresh-after-cancel"
]
},
"after": [
"fresh-after-cancel"
],
"cancelledSource": "An unresolved user beforeVisible Promise; native RAF, Worker and media remain active."
}
}
]
},
{
"title": "published / Candidate Danmuku candidate: native seek cancels pending visibility without blocking later work",
"browser": "chromium",
"durationMs": 2406,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "published",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "in-memory source UMD",
"sha256": "1423f8ac9de24b15d908761df2e0720123a88a2b05a45628f720adfd01680663",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-cancel",
"value": {
"action": "seek",
"before": {
"requests": [
1
],
"visible": [
"fresh-after-cancel"
]
},
"after": [
"fresh-after-cancel"
],
"cancelledSource": "An unresolved user beforeVisible Promise; native RAF, Worker and media remain active."
}
}
]
},
{
"title": "published / Candidate Danmuku candidate: native destroy cancels pending visibility without blocking later work",
"browser": "chromium",
"durationMs": 2310,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "published",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "in-memory source UMD",
"sha256": "1423f8ac9de24b15d908761df2e0720123a88a2b05a45628f720adfd01680663",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-cancel",
"value": {
"action": "destroy",
"before": {
"requests": [
0
],
"visible": []
},
"after": [],
"cancelledSource": "An unresolved user beforeVisible Promise; native RAF, Worker and media remain active."
}
}
]
},
{
"title": "published / Candidate Danmuku candidate: native Worker renders three modes with synchronous filter and asynchronous beforeVisible",
"browser": "chromium",
"durationMs": 1359,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "published",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "in-memory source UMD",
"sha256": "1423f8ac9de24b15d908761df2e0720123a88a2b05a45628f720adfd01680663",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
}
]
},
{
"title": "published / Candidate Danmuku candidate: six simultaneous fixed comments preserve usable track geometry and input order",
"browser": "chromium",
"durationMs": 1443,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "published",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "in-memory source UMD",
"sha256": "1423f8ac9de24b15d908761df2e0720123a88a2b05a45628f720adfd01680663",
"media": "/test/pattern.mp4",
"scenario": "density",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-dense-tracks",
"value": [
{
"id": "dense-0",
"mode": "1",
"state": "stop",
"text": "TRACK 0",
"x": 285,
"y": 10,
"width": 70,
"height": 22.5,
"visibility": "visible",
"display": "block",
"transition": "",
"opacity": "1"
},
{
"id": "dense-1",
"mode": "1",
"state": "stop",
"text": "TRACK 1",
"x": 285,
"y": 33,
"width": 70,
"height": 22.5,
"visibility": "visible",
"display": "block",
"transition": "",
"opacity": "1"
},
{
"id": "dense-2",
"mode": "1",
"state": "stop",
"text": "TRACK 2",
"x": 285,
"y": 56,
"width": 70,
"height": 22.5,
"visibility": "visible",
"display": "block",
"transition": "",
"opacity": "1"
},
{
"id": "dense-3",
"mode": "1",
"state": "stop",
"text": "TRACK 3",
"x": 285,
"y": 79,
"width": 70,
"height": 22.5,
"visibility": "visible",
"display": "block",
"transition": "",
"opacity": "1"
},
{
"id": "dense-4",
"mode": "1",
"state": "stop",
"text": "TRACK 4",
"x": 285,
"y": 102,
"width": 70,
"height": 22.5,
"visibility": "visible",
"display": "block",
"transition": "",
"opacity": "1"
},
{
"id": "dense-5",
"mode": "1",
"state": "stop",
"text": "TRACK 5",
"x": 285,
"y": 125,
"width": 70,
"height": 22.5,
"visibility": "visible",
"display": "block",
"transition": "",
"opacity": "1"
}
]
}
]
},
{
"title": "published / Candidate Danmuku candidate: native pause seek rate and public reset/load retain historical pool semantics",
"browser": "chromium",
"durationMs": 2353,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "published",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "in-memory source UMD",
"sha256": "1423f8ac9de24b15d908761df2e0720123a88a2b05a45628f720adfd01680663",
"media": "/test/pattern.mp4",
"scenario": "playback",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-pool-and-rate",
"value": {
"frozen": {
"left": 602.791015625,
"next": 602.791015625,
"state": "stop"
},
"reused": {
"poolReused": true,
"visibleSameNode": true,
"original": {
"id": "reused",
"state": "emit",
"visibility": "visible",
"text": "REUSED"
},
"extraNodes": [],
"transition": "4s",
"rate": 2
},
"loadWithoutArgument": "replaces from original empty option; explicit array load appends"
}
},
{
"name": "danmuku-native-eligibility",
"value": [
{
"wall": 223.9000000357628,
"before": 0.021692,
"after": 0.021692,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 241.69999998807907,
"before": 0.039631,
"after": 0.039631,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 257.4000000357628,
"before": 0.055246,
"after": 0.055246,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 274.30000001192093,
"before": 0.072143,
"after": 0.072143,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 290.69999998807907,
"before": 0.088697,
"after": 0.088697,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 306.9000000357628,
"before": 0.104823,
"after": 0.104823,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 324.10000002384186,
"before": 0.122029,
"after": 0.122029,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 339.9000000357628,
"before": 0.137853,
"after": 0.137853,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 357.19999998807907,
"before": 0.15508,
"after": 0.15508,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 373.9000000357628,
"before": 0.171815,
"after": 0.171815,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 390.80000001192093,
"before": 0.188798,
"after": 0.188798,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 408.30000001192093,
"before": 0.206217,
"after": 0.206217,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 423.5,
"before": 0.221392,
"after": 0.221392,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 440.10000002384186,
"before": 0.237978,
"after": 0.237978,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 457.19999998807907,
"before": 0.255039,
"after": 0.255039,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 473.9000000357628,
"before": 0.271822,
"after": 0.271822,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 490.60000002384186,
"before": 0.288558,
"after": 0.288558,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 507.5,
"before": 0.305459,
"after": 0.305459,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 524.1000000238419,
"before": 0.322004,
"after": 0.322004,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 541.1000000238419,
"before": 0.338978,
"after": 0.338978,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 558.1999999880791,
"before": 0.356166,
"after": 0.356166,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 573.9000000357628,
"before": 0.371822,
"after": 0.371822,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 591.4000000357628,
"before": 0.38929,
"after": 0.38929,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 606.4000000357628,
"before": 0.404382,
"after": 0.404382,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [
"moving"
],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 624.4000000357628,
"before": 0.422287,
"after": 0.422287,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 640.8000000119209,
"before": 0.438739,
"after": 0.438739,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 657.4000000357628,
"before": 0.455382,
"after": 0.455382,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 673.6000000238419,
"before": 0.471561,
"after": 0.471561,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 689.9000000357628,
"before": 0.487841,
"after": 0.487841,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 706.6999999880791,
"before": 0.504642,
"after": 0.504642,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 724.1000000238419,
"before": 0.522021,
"after": 0.522021,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 740.5,
"before": 0.538502,
"after": 0.538502,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 756.6000000238419,
"before": 0.554531,
"after": 0.554531,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 773.9000000357628,
"before": 0.571821,
"after": 0.571821,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 790.6000000238419,
"before": 0.588509,
"after": 0.588509,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 806.5,
"before": 0.60442,
"after": 0.60442,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 824.4000000357628,
"before": 0.622369,
"after": 0.622369,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 841.4000000357628,
"before": 0.639378,
"after": 0.639378,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 856.8000000119209,
"before": 0.654673,
"after": 0.654673,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 874.5,
"before": 0.672475,
"after": 0.672475,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 890.1000000238419,
"before": 0.688001,
"after": 0.688001,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 907.6999999880791,
"before": 0.705563,
"after": 0.705563,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 924.6000000238419,
"before": 0.722561,
"after": 0.722561,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 940.6000000238419,
"before": 0.738548,
"after": 0.738548,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 957.4000000357628,
"before": 0.755273,
"after": 0.755273,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 973.5,
"before": 0.771382,
"after": 0.771382,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 990,
"before": 0.787952,
"after": 0.787952,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1006.9000000357628,
"before": 0.804894,
"after": 0.804894,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1024.4000000357628,
"before": 0.822383,
"after": 0.822383,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1040.4000000357628,
"before": 0.838344,
"after": 0.838344,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1057,
"before": 0.854933,
"after": 0.854933,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1074.1000000238419,
"before": 0.872016,
"after": 0.872016,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1091.300000011921,
"before": 0.889314,
"after": 0.889314,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1106.5,
"before": 0.904391,
"after": 0.904391,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1123.5,
"before": 0.921456,
"after": 0.921456,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1357.6000000238419,
"before": 2.05937,
"after": 2.05937,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1373.699999988079,
"before": 2.091658,
"after": 2.091658,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1390.4000000357628,
"before": 2.12497,
"after": 2.12497,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1407.6000000238419,
"before": 2.159264,
"after": 2.159264,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1424.199999988079,
"before": 2.19274,
"after": 2.19274,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1440.800000011921,
"before": 2.22576,
"after": 2.22576,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1457,
"before": 2.25811,
"after": 2.25811,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1474.300000011921,
"before": 2.292782,
"after": 2.292782,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1490.800000011921,
"before": 2.325772,
"after": 2.325772,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1508.4000000357628,
"before": 2.361002,
"after": 2.361002,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1524.5,
"before": 2.393174,
"after": 2.393174,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1539.9000000357628,
"before": 2.424078,
"after": 2.424078,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [
"reused"
],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1558,
"before": 2.460196,
"after": 2.460196,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1573.9000000357628,
"before": 2.491894,
"after": 2.491894,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1590,
"before": 2.524142,
"after": 2.524142,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1607.5,
"before": 2.55923,
"after": 2.55923,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1624.5,
"before": 2.593212,
"after": 2.593212,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1640.5,
"before": 2.62521,
"after": 2.62521,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1657.199999988079,
"before": 2.658474,
"after": 2.658474,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1673.1000000238419,
"before": 2.690416,
"after": 2.690416,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1691.300000011921,
"before": 2.726734,
"after": 2.726734,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1708.300000011921,
"before": 2.760734,
"after": 2.760734,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1724.5,
"before": 2.793064,
"after": 2.793064,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.26718,
"state": "wait"
}
]
},
{
"wall": 1740.699999988079,
"before": 2.825582,
"after": 2.825582,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.26718,
"state": "wait"
}
]
},
{
"wall": 1757.4000000357628,
"before": 2.858936,
"after": 2.858936,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.26718,
"state": "wait"
}
]
},
{
"wall": 1773.199999988079,
"before": 2.890664,
"after": 2.890664,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.26718,
"state": "wait"
}
]
},
{
"wall": 1791.1000000238419,
"before": 2.926292,
"after": 2.926292,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.26718,
"state": "wait"
}
]
},
{
"wall": 1807.1000000238419,
"before": 2.9583,
"after": 2.9583,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.26718,
"state": "wait"
}
]
},
{
"wall": 1823.6000000238419,
"before": 2.991432,
"after": 2.991432,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.26718,
"state": "wait"
}
]
},
{
"wall": 1841.199999988079,
"before": 3.026556,
"after": 3.026556,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.26718,
"state": "wait"
}
]
},
{
"wall": 1857.5,
"before": 3.059104,
"after": 3.059104,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.26718,
"state": "wait"
}
]
},
{
"wall": 1873.6000000238419,
"before": 3.091374,
"after": 3.091374,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.26718,
"state": "wait"
}
]
},
{
"wall": 1890.9000000357628,
"before": 3.125938,
"after": 3.125938,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.26718,
"state": "wait"
}
]
},
{
"wall": 1907.699999988079,
"before": 3.159566,
"after": 3.159566,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.26718,
"state": "wait"
}
]
},
{
"wall": 1923.6000000238419,
"before": 3.191372,
"after": 3.191372,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [
"appended"
],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.26718,
"state": "wait"
}
]
},
{
"wall": 1940.9000000357628,
"before": 3.225928,
"after": 3.225928,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.26718,
"state": "emit"
}
]
},
{
"wall": 1957.4000000357628,
"before": 3.258872,
"after": 3.258872,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.26718,
"state": "emit"
}
]
},
{
"wall": 1973.6000000238419,
"before": 3.29145,
"after": 3.29145,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.26718,
"state": "emit"
}
]
},
{
"wall": 1990.5,
"before": 3.325072,
"after": 3.325072,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.26718,
"state": "emit"
}
]
},
{
"wall": 2007.1000000238419,
"before": 3.358516,
"after": 3.358516,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.26718,
"state": "emit"
}
]
},
{
"wall": 2023.4000000357628,
"before": 3.390952,
"after": 3.390952,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.26718,
"state": "emit"
}
]
},
{
"wall": 2041.300000011921,
"before": 3.42659,
"after": 3.42659,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.26718,
"state": "emit"
}
]
},
{
"wall": 2056.800000011921,
"before": 3.457752,
"after": 3.457752,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.26718,
"state": "emit"
}
]
},
{
"wall": 2073.400000035763,
"before": 3.49095,
"after": 3.49095,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.26718,
"state": "emit"
}
]
},
{
"wall": 2090.400000035763,
"before": 3.525042,
"after": 3.525042,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.26718,
"state": "emit"
}
]
},
{
"wall": 2107.199999988079,
"before": 3.558702,
"after": 3.558702,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.26718,
"state": "emit"
}
]
},
{
"wall": 2123.5,
"before": 3.591142,
"after": 3.591142,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.26718,
"state": "emit"
}
]
}
]
}
]
},
{
"title": "published / Candidate Danmuku candidate: actual settings, asynchronous send lock, external fullscreen mount and two-player destruction",
"browser": "chromium",
"durationMs": 4044,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "published",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "in-memory source UMD",
"sha256": "1423f8ac9de24b15d908761df2e0720123a88a2b05a45628f720adfd01680663",
"media": "/test/pattern.mp4",
"scenario": "settings",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
}
]
},
{
"title": "candidate / Candidate Danmuku candidate: accepted NaN timestamp keeps the historical current-time fallback",
"browser": "chromium",
"durationMs": 2297,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "candidate",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "in-memory source UMD",
"sha256": "1423f8ac9de24b15d908761df2e0720123a88a2b05a45628f720adfd01680663",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-numeric-compatibility",
"value": {
"expected": 0.5,
"inputTime": 0.5,
"queueTime": 0.5,
"isNaN": false
}
}
]
},
{
"title": "candidate / Candidate Danmuku candidate: failed recovery respects synchronous destroy from the error listener",
"browser": "chromium",
"durationMs": 444,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "candidate",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "in-memory source UMD",
"sha256": "1423f8ac9de24b15d908761df2e0720123a88a2b05a45628f720adfd01680663",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-recovery-reentry",
"value": {
"action": "destroy",
"sameOwner": true,
"rowState": "stop",
"isStop": true,
"isDestroy": true,
"events": [
{
"index": 0,
"event": "error",
"time": 0.120575
},
{
"index": 0,
"event": "stop",
"time": 0
},
{
"index": 0,
"event": "destroy",
"time": 0
}
],
"workers": [
{
"url": "blob:http://127.0.0.1:8084/8c851538-f223-49ce-9a1d-0c3f6f6e4981",
"requests": [
{
"type": "getDanmuTop",
"target": {
"mode": 1,
"height": 23,
"speed": 90
},
"visibles": [],
"antiOverlap": true,
"clientWidth": 640,
"clientHeight": 360,
"marginBottom": 10,
"marginTop": 10,
"id": 1
}
],
"replies": [
{
"id": 1,
"result": 10
}
],
"terminated": 1,
"errors": [
"controlled track failure"
]
}
],
"fault": "Actual video/DOM/track Worker; dispatch an explicit native ErrorEvent and inject a throwing createWorker recovery seam. This does not claim a real CSP or browser Worker construction failure."
}
}
]
},
{
"title": "candidate / Candidate Danmuku candidate: failed recovery respects synchronous stop from the error listener",
"browser": "chromium",
"durationMs": 510,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "candidate",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "in-memory source UMD",
"sha256": "1423f8ac9de24b15d908761df2e0720123a88a2b05a45628f720adfd01680663",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-recovery-reentry",
"value": {
"action": "stop",
"sameOwner": true,
"rowState": "stop",
"isStop": true,
"isDestroy": false,
"events": [
{
"index": 0,
"event": "error",
"time": 0.120076
},
{
"index": 0,
"event": "stop",
"time": 0.120076
}
],
"workers": [
{
"url": "blob:http://127.0.0.1:8084/cf03d613-9f4c-40bc-8276-2005aef0e622",
"requests": [
{
"type": "getDanmuTop",
"target": {
"mode": 1,
"height": 23,
"speed": 90
},
"visibles": [],
"antiOverlap": true,
"clientWidth": 640,
"clientHeight": 360,
"marginBottom": 10,
"marginTop": 10,
"id": 1
}
],
"replies": [
{
"id": 1,
"result": 10
}
],
"terminated": 1,
"errors": [
"controlled track failure"
]
}
],
"fault": "Actual video/DOM/track Worker; dispatch an explicit native ErrorEvent and inject a throwing createWorker recovery seam. This does not claim a real CSP or browser Worker construction failure."
}
}
]
},
{
"title": "candidate / Candidate Danmuku candidate: native pause cancels pending visibility without blocking later work",
"browser": "chromium",
"durationMs": 2626,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "candidate",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "in-memory source UMD",
"sha256": "1423f8ac9de24b15d908761df2e0720123a88a2b05a45628f720adfd01680663",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-cancel",
"value": {
"action": "pause",
"before": {
"requests": [
1
],
"visible": [
"fresh-after-cancel"
]
},
"after": [
"fresh-after-cancel"
],
"cancelledSource": "An unresolved user beforeVisible Promise; native RAF, Worker and media remain active."
}
}
]
},
{
"title": "candidate / Candidate Danmuku candidate: native reset cancels pending visibility without blocking later work",
"browser": "chromium",
"durationMs": 2521,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "candidate",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "in-memory source UMD",
"sha256": "1423f8ac9de24b15d908761df2e0720123a88a2b05a45628f720adfd01680663",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-cancel",
"value": {
"action": "reset",
"before": {
"requests": [
1
],
"visible": [
"fresh-after-cancel"
]
},
"after": [
"fresh-after-cancel"
],
"cancelledSource": "An unresolved user beforeVisible Promise; native RAF, Worker and media remain active."
}
}
]
},
{
"title": "candidate / Candidate Danmuku candidate: native seek cancels pending visibility without blocking later work",
"browser": "chromium",
"durationMs": 2474,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "candidate",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "in-memory source UMD",
"sha256": "1423f8ac9de24b15d908761df2e0720123a88a2b05a45628f720adfd01680663",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-cancel",
"value": {
"action": "seek",
"before": {
"requests": [
1
],
"visible": [
"fresh-after-cancel"
]
},
"after": [
"fresh-after-cancel"
],
"cancelledSource": "An unresolved user beforeVisible Promise; native RAF, Worker and media remain active."
}
}
]
},
{
"title": "candidate / Candidate Danmuku candidate: native destroy cancels pending visibility without blocking later work",
"browser": "chromium",
"durationMs": 2450,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "candidate",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "in-memory source UMD",
"sha256": "1423f8ac9de24b15d908761df2e0720123a88a2b05a45628f720adfd01680663",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-cancel",
"value": {
"action": "destroy",
"before": {
"requests": [
0
],
"visible": []
},
"after": [],
"cancelledSource": "An unresolved user beforeVisible Promise; native RAF, Worker and media remain active."
}
}
]
},
{
"title": "candidate / Candidate Danmuku candidate: native Worker renders three modes with synchronous filter and asynchronous beforeVisible",
"browser": "chromium",
"durationMs": 1377,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "candidate",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "in-memory source UMD",
"sha256": "1423f8ac9de24b15d908761df2e0720123a88a2b05a45628f720adfd01680663",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
}
]
},
{
"title": "candidate / Candidate Danmuku candidate: six simultaneous fixed comments preserve usable track geometry and input order",
"browser": "chromium",
"durationMs": 1495,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "candidate",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "in-memory source UMD",
"sha256": "1423f8ac9de24b15d908761df2e0720123a88a2b05a45628f720adfd01680663",
"media": "/test/pattern.mp4",
"scenario": "density",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-dense-tracks",
"value": [
{
"id": "dense-0",
"mode": "1",
"state": "stop",
"text": "TRACK 0",
"x": 285,
"y": 10,
"width": 70,
"height": 22.5,
"visibility": "visible",
"display": "block",
"transition": "",
"opacity": "1"
},
{
"id": "dense-1",
"mode": "1",
"state": "stop",
"text": "TRACK 1",
"x": 285,
"y": 33,
"width": 70,
"height": 22.5,
"visibility": "visible",
"display": "block",
"transition": "",
"opacity": "1"
},
{
"id": "dense-2",
"mode": "1",
"state": "stop",
"text": "TRACK 2",
"x": 285,
"y": 56,
"width": 70,
"height": 22.5,
"visibility": "visible",
"display": "block",
"transition": "",
"opacity": "1"
},
{
"id": "dense-3",
"mode": "1",
"state": "stop",
"text": "TRACK 3",
"x": 285,
"y": 79,
"width": 70,
"height": 22.5,
"visibility": "visible",
"display": "block",
"transition": "",
"opacity": "1"
},
{
"id": "dense-4",
"mode": "1",
"state": "stop",
"text": "TRACK 4",
"x": 285,
"y": 102,
"width": 70,
"height": 22.5,
"visibility": "visible",
"display": "block",
"transition": "",
"opacity": "1"
},
{
"id": "dense-5",
"mode": "1",
"state": "stop",
"text": "TRACK 5",
"x": 285,
"y": 125,
"width": 70,
"height": 22.5,
"visibility": "visible",
"display": "block",
"transition": "",
"opacity": "1"
}
]
}
]
},
{
"title": "candidate / Candidate Danmuku candidate: native pause seek rate and public reset/load retain historical pool semantics",
"browser": "chromium",
"durationMs": 2279,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "candidate",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "in-memory source UMD",
"sha256": "1423f8ac9de24b15d908761df2e0720123a88a2b05a45628f720adfd01680663",
"media": "/test/pattern.mp4",
"scenario": "playback",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-pool-and-rate",
"value": {
"frozen": {
"left": 602.7923583984375,
"next": 602.7923583984375,
"state": "stop"
},
"reused": {
"poolReused": true,
"visibleSameNode": true,
"original": {
"id": "reused",
"state": "emit",
"visibility": "visible",
"text": "REUSED"
},
"extraNodes": [],
"transition": "4s",
"rate": 2
},
"loadWithoutArgument": "replaces from original empty option; explicit array load appends"
}
},
{
"name": "danmuku-native-eligibility",
"value": [
{
"wall": 218.89999997615814,
"before": 0.02796,
"after": 0.02796,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 235.30000001192093,
"before": 0.044316,
"after": 0.044316,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 251.69999998807907,
"before": 0.060805,
"after": 0.060805,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 267.89999997615814,
"before": 0.077026,
"after": 0.077026,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 283.80000001192093,
"before": 0.092935,
"after": 0.092935,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 301.30000001192093,
"before": 0.110359,
"after": 0.110359,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 317.30000001192093,
"before": 0.126403,
"after": 0.126403,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 334.5,
"before": 0.143688,
"after": 0.143688,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 351.30000001192093,
"before": 0.160394,
"after": 0.160394,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 367.19999998807907,
"before": 0.176336,
"after": 0.176336,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 385.10000002384186,
"before": 0.194238,
"after": 0.194238,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 402.10000002384186,
"before": 0.211243,
"after": 0.211243,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 417.5,
"before": 0.226532,
"after": 0.226532,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 434.19999998807907,
"before": 0.243344,
"after": 0.243344,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 450.60000002384186,
"before": 0.259779,
"after": 0.259779,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 467.5,
"before": 0.276565,
"after": 0.276565,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 485.30000001192093,
"before": 0.294439,
"after": 0.294439,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 501.39999997615814,
"before": 0.310427,
"after": 0.310427,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 517.8999999761581,
"before": 0.327069,
"after": 0.327069,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 534.1000000238419,
"before": 0.343218,
"after": 0.343218,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 550.6000000238419,
"before": 0.359672,
"after": 0.359672,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 567.6000000238419,
"before": 0.376694,
"after": 0.376694,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 585.1000000238419,
"before": 0.394205,
"after": 0.394205,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 601.1000000238419,
"before": 0.410157,
"after": 0.410157,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [
"moving"
],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 618,
"before": 0.426972,
"after": 0.426972,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 634.8000000119209,
"before": 0.443898,
"after": 0.443898,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 652.1000000238419,
"before": 0.461179,
"after": 0.461179,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 668.1000000238419,
"before": 0.477222,
"after": 0.477222,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 685.1000000238419,
"before": 0.49423,
"after": 0.49423,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 701.3999999761581,
"before": 0.510512,
"after": 0.510512,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 717.6000000238419,
"before": 0.526692,
"after": 0.526692,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 734.8000000119209,
"before": 0.543922,
"after": 0.543922,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 751.8000000119209,
"before": 0.560885,
"after": 0.560885,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 768.8999999761581,
"before": 0.578016,
"after": 0.578016,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 785.3999999761581,
"before": 0.594522,
"after": 0.594522,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 800.6000000238419,
"before": 0.609774,
"after": 0.609774,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 818.1999999880791,
"before": 0.627307,
"after": 0.627307,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 834.3000000119209,
"before": 0.643383,
"after": 0.643383,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 851.3999999761581,
"before": 0.660502,
"after": 0.660502,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 867.5,
"before": 0.676582,
"after": 0.676582,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 883.8000000119209,
"before": 0.692936,
"after": 0.692936,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 901.3999999761581,
"before": 0.710458,
"after": 0.710458,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 918.1000000238419,
"before": 0.727212,
"after": 0.727212,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 934.3999999761581,
"before": 0.743553,
"after": 0.743553,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 952.1999999880791,
"before": 0.761246,
"after": 0.761246,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 968.1999999880791,
"before": 0.777346,
"after": 0.777346,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 985,
"before": 0.794089,
"after": 0.794089,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1001.6000000238419,
"before": 0.810683,
"after": 0.810683,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1017.6999999880791,
"before": 0.826807,
"after": 0.826807,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1035.1000000238419,
"before": 0.844138,
"after": 0.844138,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1051.5,
"before": 0.860605,
"after": 0.860605,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1069.1000000238419,
"before": 0.87822,
"after": 0.87822,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1085.699999988079,
"before": 0.894761,
"after": 0.894761,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1100.699999988079,
"before": 0.909753,
"after": 0.909753,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1117.699999988079,
"before": 0.926784,
"after": 0.926784,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1351.8999999761581,
"before": 2.059322,
"after": 2.059322,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1367.8999999761581,
"before": 2.091146,
"after": 2.091146,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1384.300000011921,
"before": 2.124118,
"after": 2.124118,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1401.8999999761581,
"before": 2.159244,
"after": 2.159244,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1418.1000000238419,
"before": 2.191774,
"after": 2.191774,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1434.300000011921,
"before": 2.22397,
"after": 2.22397,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1450.800000011921,
"before": 2.257036,
"after": 2.257036,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1468.3999999761581,
"before": 2.292188,
"after": 2.292188,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1484.300000011921,
"before": 2.324058,
"after": 2.324058,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1501.3999999761581,
"before": 2.358304,
"after": 2.358304,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1518.1000000238419,
"before": 2.391556,
"after": 2.391556,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1534.3999999761581,
"before": 2.4242,
"after": 2.4242,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [
"reused"
],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1551.300000011921,
"before": 2.458112,
"after": 2.458112,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1567.8999999761581,
"before": 2.491332,
"after": 2.491332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1584.199999988079,
"before": 2.523668,
"after": 2.523668,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1601.8999999761581,
"before": 2.559308,
"after": 2.559308,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1617.5,
"before": 2.590462,
"after": 2.590462,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1634.1000000238419,
"before": 2.623636,
"after": 2.623636,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1650.800000011921,
"before": 2.65718,
"after": 2.65718,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1668,
"before": 2.691388,
"after": 2.691388,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1684.1000000238419,
"before": 2.723658,
"after": 2.723658,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1702.199999988079,
"before": 2.759746,
"after": 2.759746,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1717.199999988079,
"before": 2.789852,
"after": 2.789852,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.268076,
"state": "wait"
}
]
},
{
"wall": 1734.699999988079,
"before": 2.82483,
"after": 2.82483,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.268076,
"state": "wait"
}
]
},
{
"wall": 1752,
"before": 2.859386,
"after": 2.859386,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.268076,
"state": "wait"
}
]
},
{
"wall": 1768,
"before": 2.891578,
"after": 2.891578,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.268076,
"state": "wait"
}
]
},
{
"wall": 1785.199999988079,
"before": 2.92586,
"after": 2.92586,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.268076,
"state": "wait"
}
]
},
{
"wall": 1800.8999999761581,
"before": 2.957106,
"after": 2.957106,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.268076,
"state": "wait"
}
]
},
{
"wall": 1817.6000000238419,
"before": 2.99058,
"after": 2.99058,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.268076,
"state": "wait"
}
]
},
{
"wall": 1834.8999999761581,
"before": 3.02507,
"after": 3.02507,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.268076,
"state": "wait"
}
]
},
{
"wall": 1851.699999988079,
"before": 3.058874,
"after": 3.058874,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.268076,
"state": "wait"
}
]
},
{
"wall": 1867.800000011921,
"before": 3.091132,
"after": 3.091132,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.268076,
"state": "wait"
}
]
},
{
"wall": 1885,
"before": 3.125406,
"after": 3.125406,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.268076,
"state": "wait"
}
]
},
{
"wall": 1900.800000011921,
"before": 3.157032,
"after": 3.157032,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.268076,
"state": "wait"
}
]
},
{
"wall": 1918.5,
"before": 3.192336,
"after": 3.192336,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [
"appended"
],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.268076,
"state": "wait"
}
]
},
{
"wall": 1934.300000011921,
"before": 3.224056,
"after": 3.224056,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.268076,
"state": "emit"
}
]
},
{
"wall": 1951.300000011921,
"before": 3.258092,
"after": 3.258092,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.268076,
"state": "emit"
}
]
},
{
"wall": 1967.699999988079,
"before": 3.290726,
"after": 3.290726,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.268076,
"state": "emit"
}
]
},
{
"wall": 1985.300000011921,
"before": 3.325902,
"after": 3.325902,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.268076,
"state": "emit"
}
]
},
{
"wall": 2001.300000011921,
"before": 3.358142,
"after": 3.358142,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.268076,
"state": "emit"
}
]
},
{
"wall": 2017,
"before": 3.389598,
"after": 3.389598,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.268076,
"state": "emit"
}
]
},
{
"wall": 2034.6000000238419,
"before": 3.424698,
"after": 3.424698,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.268076,
"state": "emit"
}
]
},
{
"wall": 2051.199999988079,
"before": 3.457782,
"after": 3.457782,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.268076,
"state": "emit"
}
]
},
{
"wall": 2067.399999976158,
"before": 3.490304,
"after": 3.490304,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.268076,
"state": "emit"
}
]
},
{
"wall": 2084.199999988079,
"before": 3.523726,
"after": 3.523726,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.268076,
"state": "emit"
}
]
},
{
"wall": 2100.399999976158,
"before": 3.556328,
"after": 3.556328,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.268076,
"state": "emit"
}
]
}
]
}
]
},
{
"title": "candidate / Candidate Danmuku candidate: actual settings, asynchronous send lock, external fullscreen mount and two-player destruction",
"browser": "chromium",
"durationMs": 4069,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "candidate",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "in-memory source UMD",
"sha256": "1423f8ac9de24b15d908761df2e0720123a88a2b05a45628f720adfd01680663",
"media": "/test/pattern.mp4",
"scenario": "settings",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
}
]
},
{
"title": "published / Candidate Danmuku candidate: accepted NaN timestamp keeps the historical current-time fallback",
"browser": "firefox",
"durationMs": 2472,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "published",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "in-memory source UMD",
"sha256": "1423f8ac9de24b15d908761df2e0720123a88a2b05a45628f720adfd01680663",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-numeric-compatibility",
"value": {
"expected": 0.5,
"inputTime": 0.5,
"queueTime": 0.5,
"isNaN": false
}
}
]
},
{
"title": "published / Candidate Danmuku candidate: failed recovery respects synchronous destroy from the error listener",
"browser": "firefox",
"durationMs": 722,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "published",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "in-memory source UMD",
"sha256": "1423f8ac9de24b15d908761df2e0720123a88a2b05a45628f720adfd01680663",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-recovery-reentry",
"value": {
"action": "destroy",
"sameOwner": true,
"rowState": "stop",
"isStop": true,
"isDestroy": true,
"events": [
{
"index": 0,
"event": "error",
"time": 0.129164
},
{
"index": 0,
"event": "stop",
"time": 0
},
{
"index": 0,
"event": "destroy",
"time": 0
}
],
"workers": [
{
"url": "blob:http://127.0.0.1:8084/6169f19a-659c-4dd0-ae42-f2047a0be120",
"requests": [
{
"type": "getDanmuTop",
"target": {
"mode": 1,
"height": 23,
"speed": 90
},
"visibles": [],
"antiOverlap": true,
"clientWidth": 640,
"clientHeight": 360,
"marginBottom": 10,
"marginTop": 10,
"id": 1
}
],
"replies": [
{
"id": 1,
"result": 10
}
],
"terminated": 1,
"errors": [
"controlled track failure"
]
}
],
"fault": "Actual video/DOM/track Worker; dispatch an explicit native ErrorEvent and inject a throwing createWorker recovery seam. This does not claim a real CSP or browser Worker construction failure."
}
}
]
},
{
"title": "published / Candidate Danmuku candidate: failed recovery respects synchronous stop from the error listener",
"browser": "firefox",
"durationMs": 544,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "published",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "in-memory source UMD",
"sha256": "1423f8ac9de24b15d908761df2e0720123a88a2b05a45628f720adfd01680663",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-recovery-reentry",
"value": {
"action": "stop",
"sameOwner": true,
"rowState": "stop",
"isStop": true,
"isDestroy": false,
"events": [
{
"index": 0,
"event": "error",
"time": 0.00569
},
{
"index": 0,
"event": "stop",
"time": 0.00569
}
],
"workers": [
{
"url": "blob:http://127.0.0.1:8084/fc085cfb-251a-4992-9451-d3aba1fa71f1",
"requests": [
{
"type": "getDanmuTop",
"target": {
"mode": 1,
"height": 23,
"speed": 90
},
"visibles": [],
"antiOverlap": true,
"clientWidth": 640,
"clientHeight": 360,
"marginBottom": 10,
"marginTop": 10,
"id": 1
}
],
"replies": [
{
"id": 1,
"result": 10
}
],
"terminated": 1,
"errors": [
"controlled track failure"
]
}
],
"fault": "Actual video/DOM/track Worker; dispatch an explicit native ErrorEvent and inject a throwing createWorker recovery seam. This does not claim a real CSP or browser Worker construction failure."
}
}
]
},
{
"title": "published / Candidate Danmuku candidate: native pause cancels pending visibility without blocking later work",
"browser": "firefox",
"durationMs": 2893,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "published",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "in-memory source UMD",
"sha256": "1423f8ac9de24b15d908761df2e0720123a88a2b05a45628f720adfd01680663",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-cancel",
"value": {
"action": "pause",
"before": {
"requests": [
1
],
"visible": [
"fresh-after-cancel"
]
},
"after": [
"fresh-after-cancel"
],
"cancelledSource": "An unresolved user beforeVisible Promise; native RAF, Worker and media remain active."
}
}
]
},
{
"title": "published / Candidate Danmuku candidate: native reset cancels pending visibility without blocking later work",
"browser": "firefox",
"durationMs": 2687,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "published",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "in-memory source UMD",
"sha256": "1423f8ac9de24b15d908761df2e0720123a88a2b05a45628f720adfd01680663",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-cancel",
"value": {
"action": "reset",
"before": {
"requests": [
1
],
"visible": [
"fresh-after-cancel"
]
},
"after": [
"fresh-after-cancel"
],
"cancelledSource": "An unresolved user beforeVisible Promise; native RAF, Worker and media remain active."
}
}
]
},
{
"title": "published / Candidate Danmuku candidate: native seek cancels pending visibility without blocking later work",
"browser": "firefox",
"durationMs": 2679,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "published",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "in-memory source UMD",
"sha256": "1423f8ac9de24b15d908761df2e0720123a88a2b05a45628f720adfd01680663",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-cancel",
"value": {
"action": "seek",
"before": {
"requests": [
1
],
"visible": [
"fresh-after-cancel"
]
},
"after": [
"fresh-after-cancel"
],
"cancelledSource": "An unresolved user beforeVisible Promise; native RAF, Worker and media remain active."
}
}
]
},
{
"title": "published / Candidate Danmuku candidate: native destroy cancels pending visibility without blocking later work",
"browser": "firefox",
"durationMs": 2724,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "published",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "in-memory source UMD",
"sha256": "1423f8ac9de24b15d908761df2e0720123a88a2b05a45628f720adfd01680663",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-cancel",
"value": {
"action": "destroy",
"before": {
"requests": [
0
],
"visible": []
},
"after": [],
"cancelledSource": "An unresolved user beforeVisible Promise; native RAF, Worker and media remain active."
}
}
]
},
{
"title": "published / Candidate Danmuku candidate: native Worker renders three modes with synchronous filter and asynchronous beforeVisible",
"browser": "firefox",
"durationMs": 1974,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "published",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "in-memory source UMD",
"sha256": "1423f8ac9de24b15d908761df2e0720123a88a2b05a45628f720adfd01680663",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
}
]
},
{
"title": "published / Candidate Danmuku candidate: six simultaneous fixed comments preserve usable track geometry and input order",
"browser": "firefox",
"durationMs": 1567,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "published",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "in-memory source UMD",
"sha256": "1423f8ac9de24b15d908761df2e0720123a88a2b05a45628f720adfd01680663",
"media": "/test/pattern.mp4",
"scenario": "density",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-dense-tracks",
"value": [
{
"id": "dense-0",
"mode": "1",
"state": "stop",
"text": "TRACK 0",
"x": 285,
"y": 10,
"width": 70,
"height": 22.5,
"visibility": "visible",
"display": "block",
"transition": "",
"opacity": "1"
},
{
"id": "dense-1",
"mode": "1",
"state": "stop",
"text": "TRACK 1",
"x": 285,
"y": 33,
"width": 70,
"height": 22.5,
"visibility": "visible",
"display": "block",
"transition": "",
"opacity": "1"
},
{
"id": "dense-2",
"mode": "1",
"state": "stop",
"text": "TRACK 2",
"x": 285,
"y": 56,
"width": 70,
"height": 22.5,
"visibility": "visible",
"display": "block",
"transition": "",
"opacity": "1"
},
{
"id": "dense-3",
"mode": "1",
"state": "stop",
"text": "TRACK 3",
"x": 285,
"y": 79,
"width": 70,
"height": 22.5,
"visibility": "visible",
"display": "block",
"transition": "",
"opacity": "1"
},
{
"id": "dense-4",
"mode": "1",
"state": "stop",
"text": "TRACK 4",
"x": 285,
"y": 102,
"width": 70,
"height": 22.5,
"visibility": "visible",
"display": "block",
"transition": "",
"opacity": "1"
},
{
"id": "dense-5",
"mode": "1",
"state": "stop",
"text": "TRACK 5",
"x": 285,
"y": 125,
"width": 70,
"height": 22.5,
"visibility": "visible",
"display": "block",
"transition": "",
"opacity": "1"
}
]
}
]
},
{
"title": "published / Candidate Danmuku candidate: native pause seek rate and public reset/load retain historical pool semantics",
"browser": "firefox",
"durationMs": 2498,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "published",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "in-memory source UMD",
"sha256": "1423f8ac9de24b15d908761df2e0720123a88a2b05a45628f720adfd01680663",
"media": "/test/pattern.mp4",
"scenario": "playback",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-pool-and-rate",
"value": {
"frozen": {
"left": 601.3333129882812,
"next": 601.3333129882812,
"state": "stop"
},
"reused": {
"poolReused": true,
"visibleSameNode": true,
"original": {
"id": "reused",
"state": "emit",
"visibility": "visible",
"text": "REUSED"
},
"extraNodes": [],
"transition": "4s",
"rate": 2
},
"loadWithoutArgument": "replaces from original empty option; explicit array load appends"
}
},
{
"name": "danmuku-native-eligibility",
"value": [
{
"wall": 252,
"before": 0.005665,
"after": 0.005665,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 269,
"before": 0.005665,
"after": 0.005665,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 285,
"before": 0.046412,
"after": 0.046412,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 302,
"before": 0.046412,
"after": 0.046412,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 318,
"before": 0.087036,
"after": 0.087036,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 335,
"before": 0.087036,
"after": 0.087036,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 351,
"before": 0.087036,
"after": 0.087036,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 369,
"before": 0.127394,
"after": 0.127394,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 385,
"before": 0.127394,
"after": 0.127394,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 402,
"before": 0.167948,
"after": 0.167948,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 418,
"before": 0.167948,
"after": 0.167948,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 435,
"before": 0.167948,
"after": 0.167948,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 451,
"before": 0.208332,
"after": 0.208332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 468,
"before": 0.208332,
"after": 0.208332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 485,
"before": 0.249999,
"after": 0.249999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 501,
"before": 0.249999,
"after": 0.249999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 518,
"before": 0.249999,
"after": 0.249999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 535,
"before": 0.291666,
"after": 0.291666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 552,
"before": 0.291666,
"after": 0.291666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 568,
"before": 0.333332,
"after": 0.333332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 585,
"before": 0.333332,
"after": 0.333332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 602,
"before": 0.333332,
"after": 0.333332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 618,
"before": 0.374071,
"after": 0.374071,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 635,
"before": 0.374071,
"after": 0.374071,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 652,
"before": 0.416666,
"after": 0.416666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [
"moving"
],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 669,
"before": 0.416666,
"after": 0.416666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 686,
"before": 0.416666,
"after": 0.416666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 702,
"before": 0.458332,
"after": 0.458332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 719,
"before": 0.458332,
"after": 0.458332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 736,
"before": 0.499999,
"after": 0.499999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 752,
"before": 0.499999,
"after": 0.499999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 769,
"before": 0.499999,
"after": 0.499999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 786,
"before": 0.541666,
"after": 0.541666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 802,
"before": 0.541666,
"after": 0.541666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 818,
"before": 0.583332,
"after": 0.583332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 835,
"before": 0.583332,
"after": 0.583332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 852,
"before": 0.583332,
"after": 0.583332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 869,
"before": 0.624999,
"after": 0.624999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 885,
"before": 0.624999,
"after": 0.624999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 902,
"before": 0.666666,
"after": 0.666666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 918,
"before": 0.666666,
"after": 0.666666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 935,
"before": 0.666666,
"after": 0.666666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 952,
"before": 0.708332,
"after": 0.708332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 968,
"before": 0.708332,
"after": 0.708332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 985,
"before": 0.749999,
"after": 0.749999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1002,
"before": 0.749999,
"after": 0.749999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1018,
"before": 0.749999,
"after": 0.749999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1035,
"before": 0.791666,
"after": 0.791666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1052,
"before": 0.791666,
"after": 0.791666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1069,
"before": 0.833332,
"after": 0.833332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1085,
"before": 0.833332,
"after": 0.833332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1102,
"before": 0.833332,
"after": 0.833332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1119,
"before": 0.874999,
"after": 0.874999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1140,
"before": 0.874999,
"after": 0.874999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1153,
"before": 0.916147,
"after": 0.916147,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1168,
"before": 0.916147,
"after": 0.916147,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1186,
"before": 0.916147,
"after": 0.916147,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1204,
"before": 0.958332,
"after": 0.958332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1369,
"before": 2.00005,
"after": 2.00005,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1385,
"before": 2.041666,
"after": 2.041666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1402,
"before": 2.083332,
"after": 2.083332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1419,
"before": 2.124999,
"after": 2.124999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1436,
"before": 2.124999,
"after": 2.124999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1452,
"before": 2.166666,
"after": 2.166666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1469,
"before": 2.208332,
"after": 2.208332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1485,
"before": 2.249999,
"after": 2.249999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1502,
"before": 2.249999,
"after": 2.249999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1519,
"before": 2.291666,
"after": 2.291666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1537,
"before": 2.333332,
"after": 2.333332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1552,
"before": 2.374999,
"after": 2.374999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1570,
"before": 2.416666,
"after": 2.416666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [
"reused"
],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1586,
"before": 2.416666,
"after": 2.416666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1602,
"before": 2.458332,
"after": 2.458332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1619,
"before": 2.499999,
"after": 2.499999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1637,
"before": 2.541666,
"after": 2.541666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1653,
"before": 2.583332,
"after": 2.583332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1670,
"before": 2.583332,
"after": 2.583332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1686,
"before": 2.624999,
"after": 2.624999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1702,
"before": 2.666666,
"after": 2.666666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1720,
"before": 2.708332,
"after": 2.708332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1736,
"before": 2.749999,
"after": 2.749999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1754,
"before": 2.749999,
"after": 2.749999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1770,
"before": 2.791666,
"after": 2.791666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.291666,
"state": "wait"
}
]
},
{
"wall": 1786,
"before": 2.833332,
"after": 2.833332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.291666,
"state": "wait"
}
]
},
{
"wall": 1803,
"before": 2.874999,
"after": 2.874999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.291666,
"state": "wait"
}
]
},
{
"wall": 1819,
"before": 2.916666,
"after": 2.916666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.291666,
"state": "wait"
}
]
},
{
"wall": 1836,
"before": 2.958332,
"after": 2.958332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.291666,
"state": "wait"
}
]
},
{
"wall": 1853,
"before": 2.958332,
"after": 2.958332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.291666,
"state": "wait"
}
]
},
{
"wall": 1869,
"before": 2.999999,
"after": 2.999999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.291666,
"state": "wait"
}
]
},
{
"wall": 1886,
"before": 3.041666,
"after": 3.041666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.291666,
"state": "wait"
}
]
},
{
"wall": 1903,
"before": 3.083332,
"after": 3.083332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.291666,
"state": "wait"
}
]
},
{
"wall": 1919,
"before": 3.124999,
"after": 3.124999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.291666,
"state": "wait"
}
]
},
{
"wall": 1936,
"before": 3.124999,
"after": 3.124999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.291666,
"state": "wait"
}
]
},
{
"wall": 1953,
"before": 3.166666,
"after": 3.166666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.291666,
"state": "wait"
}
]
},
{
"wall": 1969,
"before": 3.208332,
"after": 3.208332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [
"appended"
],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.291666,
"state": "wait"
}
]
},
{
"wall": 1986,
"before": 3.249999,
"after": 3.249999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.291666,
"state": "emit"
}
]
},
{
"wall": 2003,
"before": 3.291666,
"after": 3.291666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.291666,
"state": "emit"
}
]
},
{
"wall": 2019,
"before": 3.291666,
"after": 3.291666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.291666,
"state": "emit"
}
]
},
{
"wall": 2037,
"before": 3.333332,
"after": 3.333332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.291666,
"state": "emit"
}
]
},
{
"wall": 2053,
"before": 3.374999,
"after": 3.374999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.291666,
"state": "emit"
}
]
},
{
"wall": 2070,
"before": 3.416666,
"after": 3.416666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.291666,
"state": "emit"
}
]
},
{
"wall": 2087,
"before": 3.458332,
"after": 3.458332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.291666,
"state": "emit"
}
]
},
{
"wall": 2103,
"before": 3.458332,
"after": 3.458332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.291666,
"state": "emit"
}
]
},
{
"wall": 2120,
"before": 3.49938,
"after": 3.49938,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.291666,
"state": "emit"
}
]
},
{
"wall": 2137,
"before": 3.540511,
"after": 3.540511,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.291666,
"state": "emit"
}
]
},
{
"wall": 2153,
"before": 3.581643,
"after": 3.581643,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.291666,
"state": "emit"
}
]
},
{
"wall": 2169,
"before": 3.622206,
"after": 3.622206,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.291666,
"state": "emit"
}
]
},
{
"wall": 2186,
"before": 3.622206,
"after": 3.622206,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.291666,
"state": "emit"
}
]
},
{
"wall": 2204,
"before": 3.666666,
"after": 3.666666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.291666,
"state": "emit"
}
]
}
]
}
]
},
{
"title": "published / Candidate Danmuku candidate: actual settings, asynchronous send lock, external fullscreen mount and two-player destruction",
"browser": "firefox",
"durationMs": 4678,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "published",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "in-memory source UMD",
"sha256": "1423f8ac9de24b15d908761df2e0720123a88a2b05a45628f720adfd01680663",
"media": "/test/pattern.mp4",
"scenario": "settings",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
}
]
},
{
"title": "candidate / Candidate Danmuku candidate: accepted NaN timestamp keeps the historical current-time fallback",
"browser": "firefox",
"durationMs": 2460,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "candidate",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "in-memory source UMD",
"sha256": "1423f8ac9de24b15d908761df2e0720123a88a2b05a45628f720adfd01680663",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-numeric-compatibility",
"value": {
"expected": 0.5,
"inputTime": 0.5,
"queueTime": 0.5,
"isNaN": false
}
}
]
},
{
"title": "candidate / Candidate Danmuku candidate: failed recovery respects synchronous destroy from the error listener",
"browser": "firefox",
"durationMs": 640,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "candidate",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "in-memory source UMD",
"sha256": "1423f8ac9de24b15d908761df2e0720123a88a2b05a45628f720adfd01680663",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-recovery-reentry",
"value": {
"action": "destroy",
"sameOwner": true,
"rowState": "stop",
"isStop": true,
"isDestroy": true,
"events": [
{
"index": 0,
"event": "error",
"time": 0.127766
},
{
"index": 0,
"event": "stop",
"time": 0
},
{
"index": 0,
"event": "destroy",
"time": 0
}
],
"workers": [
{
"url": "blob:http://127.0.0.1:8084/789193e1-52e9-487c-93b3-c90cb23f8e73",
"requests": [
{
"type": "getDanmuTop",
"target": {
"mode": 1,
"height": 23,
"speed": 90
},
"visibles": [],
"antiOverlap": true,
"clientWidth": 640,
"clientHeight": 360,
"marginBottom": 10,
"marginTop": 10,
"id": 1
}
],
"replies": [
{
"id": 1,
"result": 10
}
],
"terminated": 1,
"errors": [
"controlled track failure"
]
}
],
"fault": "Actual video/DOM/track Worker; dispatch an explicit native ErrorEvent and inject a throwing createWorker recovery seam. This does not claim a real CSP or browser Worker construction failure."
}
}
]
},
{
"title": "candidate / Candidate Danmuku candidate: failed recovery respects synchronous stop from the error listener",
"browser": "firefox",
"durationMs": 872,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "candidate",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "in-memory source UMD",
"sha256": "1423f8ac9de24b15d908761df2e0720123a88a2b05a45628f720adfd01680663",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-recovery-reentry",
"value": {
"action": "stop",
"sameOwner": true,
"rowState": "stop",
"isStop": true,
"isDestroy": false,
"events": [
{
"index": 0,
"event": "error",
"time": 0.088187
},
{
"index": 0,
"event": "stop",
"time": 0.088187
}
],
"workers": [
{
"url": "blob:http://127.0.0.1:8084/e18cc4e8-13a4-4cf4-9ad8-3131112db946",
"requests": [
{
"type": "getDanmuTop",
"target": {
"mode": 1,
"height": 23,
"speed": 90
},
"visibles": [],
"antiOverlap": true,
"clientWidth": 640,
"clientHeight": 360,
"marginBottom": 10,
"marginTop": 10,
"id": 1
}
],
"replies": [
{
"id": 1,
"result": 10
}
],
"terminated": 1,
"errors": [
"controlled track failure"
]
}
],
"fault": "Actual video/DOM/track Worker; dispatch an explicit native ErrorEvent and inject a throwing createWorker recovery seam. This does not claim a real CSP or browser Worker construction failure."
}
}
]
},
{
"title": "candidate / Candidate Danmuku candidate: native pause cancels pending visibility without blocking later work",
"browser": "firefox",
"durationMs": 2790,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "candidate",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "in-memory source UMD",
"sha256": "1423f8ac9de24b15d908761df2e0720123a88a2b05a45628f720adfd01680663",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-cancel",
"value": {
"action": "pause",
"before": {
"requests": [
1
],
"visible": [
"fresh-after-cancel"
]
},
"after": [
"fresh-after-cancel"
],
"cancelledSource": "An unresolved user beforeVisible Promise; native RAF, Worker and media remain active."
}
}
]
},
{
"title": "candidate / Candidate Danmuku candidate: native reset cancels pending visibility without blocking later work",
"browser": "firefox",
"durationMs": 2653,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "candidate",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "in-memory source UMD",
"sha256": "1423f8ac9de24b15d908761df2e0720123a88a2b05a45628f720adfd01680663",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-cancel",
"value": {
"action": "reset",
"before": {
"requests": [
1
],
"visible": [
"fresh-after-cancel"
]
},
"after": [
"fresh-after-cancel"
],
"cancelledSource": "An unresolved user beforeVisible Promise; native RAF, Worker and media remain active."
}
}
]
},
{
"title": "candidate / Candidate Danmuku candidate: native seek cancels pending visibility without blocking later work",
"browser": "firefox",
"durationMs": 2821,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "candidate",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "in-memory source UMD",
"sha256": "1423f8ac9de24b15d908761df2e0720123a88a2b05a45628f720adfd01680663",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-cancel",
"value": {
"action": "seek",
"before": {
"requests": [
1
],
"visible": [
"fresh-after-cancel"
]
},
"after": [
"fresh-after-cancel"
],
"cancelledSource": "An unresolved user beforeVisible Promise; native RAF, Worker and media remain active."
}
}
]
},
{
"title": "candidate / Candidate Danmuku candidate: native destroy cancels pending visibility without blocking later work",
"browser": "firefox",
"durationMs": 2534,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "candidate",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "in-memory source UMD",
"sha256": "1423f8ac9de24b15d908761df2e0720123a88a2b05a45628f720adfd01680663",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-cancel",
"value": {
"action": "destroy",
"before": {
"requests": [
0
],
"visible": []
},
"after": [],
"cancelledSource": "An unresolved user beforeVisible Promise; native RAF, Worker and media remain active."
}
}
]
},
{
"title": "candidate / Candidate Danmuku candidate: native Worker renders three modes with synchronous filter and asynchronous beforeVisible",
"browser": "firefox",
"durationMs": 2043,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "candidate",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "in-memory source UMD",
"sha256": "1423f8ac9de24b15d908761df2e0720123a88a2b05a45628f720adfd01680663",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
}
]
},
{
"title": "candidate / Candidate Danmuku candidate: six simultaneous fixed comments preserve usable track geometry and input order",
"browser": "firefox",
"durationMs": 1559,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "candidate",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "in-memory source UMD",
"sha256": "1423f8ac9de24b15d908761df2e0720123a88a2b05a45628f720adfd01680663",
"media": "/test/pattern.mp4",
"scenario": "density",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-dense-tracks",
"value": [
{
"id": "dense-0",
"mode": "1",
"state": "stop",
"text": "TRACK 0",
"x": 285,
"y": 10,
"width": 70,
"height": 22.5,
"visibility": "visible",
"display": "block",
"transition": "",
"opacity": "1"
},
{
"id": "dense-1",
"mode": "1",
"state": "stop",
"text": "TRACK 1",
"x": 285,
"y": 33,
"width": 70,
"height": 22.5,
"visibility": "visible",
"display": "block",
"transition": "",
"opacity": "1"
},
{
"id": "dense-2",
"mode": "1",
"state": "stop",
"text": "TRACK 2",
"x": 285,
"y": 56,
"width": 70,
"height": 22.5,
"visibility": "visible",
"display": "block",
"transition": "",
"opacity": "1"
},
{
"id": "dense-3",
"mode": "1",
"state": "stop",
"text": "TRACK 3",
"x": 285,
"y": 79,
"width": 70,
"height": 22.5,
"visibility": "visible",
"display": "block",
"transition": "",
"opacity": "1"
},
{
"id": "dense-4",
"mode": "1",
"state": "stop",
"text": "TRACK 4",
"x": 285,
"y": 102,
"width": 70,
"height": 22.5,
"visibility": "visible",
"display": "block",
"transition": "",
"opacity": "1"
},
{
"id": "dense-5",
"mode": "1",
"state": "stop",
"text": "TRACK 5",
"x": 285,
"y": 125,
"width": 70,
"height": 22.5,
"visibility": "visible",
"display": "block",
"transition": "",
"opacity": "1"
}
]
}
]
},
{
"title": "candidate / Candidate Danmuku candidate: native pause seek rate and public reset/load retain historical pool semantics",
"browser": "firefox",
"durationMs": 2512,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "candidate",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "in-memory source UMD",
"sha256": "1423f8ac9de24b15d908761df2e0720123a88a2b05a45628f720adfd01680663",
"media": "/test/pattern.mp4",
"scenario": "playback",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-pool-and-rate",
"value": {
"frozen": {
"left": 604.25,
"next": 604.25,
"state": "stop"
},
"reused": {
"poolReused": true,
"visibleSameNode": true,
"original": {
"id": "reused",
"state": "emit",
"visibility": "visible",
"text": "REUSED"
},
"extraNodes": [],
"transition": "4s",
"rate": 2
},
"loadWithoutArgument": "replaces from original empty option; explicit array load appends"
}
},
{
"name": "danmuku-native-eligibility",
"value": [
{
"wall": 276,
"before": 0.005669,
"after": 0.005669,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 293,
"before": 0.005669,
"after": 0.005669,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 309,
"before": 0.005669,
"after": 0.005669,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 327,
"before": 0.04641,
"after": 0.04641,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 344,
"before": 0.04641,
"after": 0.04641,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 360,
"before": 0.086998,
"after": 0.086998,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 377,
"before": 0.086998,
"after": 0.086998,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 393,
"before": 0.127201,
"after": 0.127201,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 409,
"before": 0.127201,
"after": 0.127201,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 426,
"before": 0.127201,
"after": 0.127201,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 443,
"before": 0.167549,
"after": 0.167549,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 459,
"before": 0.167549,
"after": 0.167549,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 476,
"before": 0.208332,
"after": 0.208332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 494,
"before": 0.208332,
"after": 0.208332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 509,
"before": 0.208332,
"after": 0.208332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 526,
"before": 0.249999,
"after": 0.249999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 543,
"before": 0.249999,
"after": 0.249999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 560,
"before": 0.291666,
"after": 0.291666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 576,
"before": 0.291666,
"after": 0.291666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 593,
"before": 0.291666,
"after": 0.291666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 610,
"before": 0.333332,
"after": 0.333332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 626,
"before": 0.333332,
"after": 0.333332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 644,
"before": 0.374999,
"after": 0.374999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 660,
"before": 0.374999,
"after": 0.374999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 676,
"before": 0.374999,
"after": 0.374999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 693,
"before": 0.416666,
"after": 0.416666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [
"moving"
],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 710,
"before": 0.416666,
"after": 0.416666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 726,
"before": 0.458332,
"after": 0.458332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 744,
"before": 0.458332,
"after": 0.458332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 759,
"before": 0.458332,
"after": 0.458332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 776,
"before": 0.499999,
"after": 0.499999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 793,
"before": 0.499999,
"after": 0.499999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 810,
"before": 0.541666,
"after": 0.541666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 827,
"before": 0.541666,
"after": 0.541666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 844,
"before": 0.541666,
"after": 0.541666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 860,
"before": 0.583332,
"after": 0.583332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 876,
"before": 0.583332,
"after": 0.583332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 894,
"before": 0.624999,
"after": 0.624999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 910,
"before": 0.624999,
"after": 0.624999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 927,
"before": 0.624999,
"after": 0.624999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 944,
"before": 0.666666,
"after": 0.666666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 960,
"before": 0.666666,
"after": 0.666666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 976,
"before": 0.708332,
"after": 0.708332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 994,
"before": 0.708332,
"after": 0.708332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1011,
"before": 0.708332,
"after": 0.708332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1027,
"before": 0.749999,
"after": 0.749999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1043,
"before": 0.749999,
"after": 0.749999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1060,
"before": 0.791666,
"after": 0.791666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1077,
"before": 0.791666,
"after": 0.791666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1094,
"before": 0.791666,
"after": 0.791666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1111,
"before": 0.833332,
"after": 0.833332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1127,
"before": 0.833332,
"after": 0.833332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1144,
"before": 0.874999,
"after": 0.874999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1164,
"before": 0.874999,
"after": 0.874999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1177,
"before": 0.874999,
"after": 0.874999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1194,
"before": 0.916666,
"after": 0.916666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1212,
"before": 0.916666,
"after": 0.916666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1377,
"before": 2.000044,
"after": 2.000044,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1394,
"before": 2.041666,
"after": 2.041666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1410,
"before": 2.083332,
"after": 2.083332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1427,
"before": 2.083332,
"after": 2.083332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1444,
"before": 2.124999,
"after": 2.124999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1460,
"before": 2.166666,
"after": 2.166666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1477,
"before": 2.208332,
"after": 2.208332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1493,
"before": 2.249999,
"after": 2.249999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1511,
"before": 2.249999,
"after": 2.249999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1527,
"before": 2.291666,
"after": 2.291666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1543,
"before": 2.333332,
"after": 2.333332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1561,
"before": 2.374999,
"after": 2.374999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1577,
"before": 2.416666,
"after": 2.416666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [
"reused"
],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1594,
"before": 2.416666,
"after": 2.416666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1611,
"before": 2.458332,
"after": 2.458332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1627,
"before": 2.499999,
"after": 2.499999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1644,
"before": 2.541666,
"after": 2.541666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1661,
"before": 2.583332,
"after": 2.583332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1677,
"before": 2.583332,
"after": 2.583332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1694,
"before": 2.624999,
"after": 2.624999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1711,
"before": 2.666666,
"after": 2.666666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1728,
"before": 2.708332,
"after": 2.708332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1745,
"before": 2.749999,
"after": 2.749999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1760,
"before": 2.749999,
"after": 2.749999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1778,
"before": 2.791666,
"after": 2.791666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.249999,
"state": "wait"
}
]
},
{
"wall": 1794,
"before": 2.833332,
"after": 2.833332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.249999,
"state": "wait"
}
]
},
{
"wall": 1810,
"before": 2.874999,
"after": 2.874999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.249999,
"state": "wait"
}
]
},
{
"wall": 1827,
"before": 2.916666,
"after": 2.916666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.249999,
"state": "wait"
}
]
},
{
"wall": 1844,
"before": 2.916666,
"after": 2.916666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.249999,
"state": "wait"
}
]
},
{
"wall": 1861,
"before": 2.958332,
"after": 2.958332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.249999,
"state": "wait"
}
]
},
{
"wall": 1877,
"before": 2.999999,
"after": 2.999999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.249999,
"state": "wait"
}
]
},
{
"wall": 1894,
"before": 3.041666,
"after": 3.041666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.249999,
"state": "wait"
}
]
},
{
"wall": 1911,
"before": 3.083332,
"after": 3.083332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.249999,
"state": "wait"
}
]
},
{
"wall": 1927,
"before": 3.083332,
"after": 3.083332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.249999,
"state": "wait"
}
]
},
{
"wall": 1944,
"before": 3.124999,
"after": 3.124999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.249999,
"state": "wait"
}
]
},
{
"wall": 1961,
"before": 3.166666,
"after": 3.166666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [
"appended"
],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.249999,
"state": "wait"
}
]
},
{
"wall": 1978,
"before": 3.208332,
"after": 3.208332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.249999,
"state": "emit"
}
]
},
{
"wall": 1995,
"before": 3.249999,
"after": 3.249999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.249999,
"state": "emit"
}
]
},
{
"wall": 2010,
"before": 3.249999,
"after": 3.249999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.249999,
"state": "emit"
}
]
},
{
"wall": 2027,
"before": 3.291666,
"after": 3.291666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.249999,
"state": "emit"
}
]
},
{
"wall": 2045,
"before": 3.333332,
"after": 3.333332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.249999,
"state": "emit"
}
]
},
{
"wall": 2061,
"before": 3.374333,
"after": 3.374333,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.249999,
"state": "emit"
}
]
},
{
"wall": 2078,
"before": 3.414857,
"after": 3.414857,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.249999,
"state": "emit"
}
]
},
{
"wall": 2094,
"before": 3.456154,
"after": 3.456154,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.249999,
"state": "emit"
}
]
},
{
"wall": 2111,
"before": 3.456154,
"after": 3.456154,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.249999,
"state": "emit"
}
]
},
{
"wall": 2127,
"before": 3.497422,
"after": 3.497422,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.249999,
"state": "emit"
}
]
},
{
"wall": 2144,
"before": 3.538161,
"after": 3.538161,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.249999,
"state": "emit"
}
]
},
{
"wall": 2163,
"before": 3.578425,
"after": 3.578425,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.249999,
"state": "emit"
}
]
},
{
"wall": 2178,
"before": 3.619302,
"after": 3.619302,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.249999,
"state": "emit"
}
]
},
{
"wall": 2195,
"before": 3.619302,
"after": 3.619302,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.249999,
"state": "emit"
}
]
}
]
}
]
},
{
"title": "candidate / Candidate Danmuku candidate: actual settings, asynchronous send lock, external fullscreen mount and two-player destruction",
"browser": "firefox",
"durationMs": 4506,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "candidate",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "in-memory source UMD",
"sha256": "1423f8ac9de24b15d908761df2e0720123a88a2b05a45628f720adfd01680663",
"media": "/test/pattern.mp4",
"scenario": "settings",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
}
]
},
{
"title": "published / Candidate Danmuku candidate: accepted NaN timestamp keeps the historical current-time fallback",
"browser": "webkit",
"durationMs": 3855,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "published",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "in-memory source UMD",
"sha256": "1423f8ac9de24b15d908761df2e0720123a88a2b05a45628f720adfd01680663",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-numeric-compatibility",
"value": {
"expected": 0.5,
"inputTime": 0.5,
"queueTime": 0.5,
"isNaN": false
}
}
]
},
{
"title": "published / Candidate Danmuku candidate: failed recovery respects synchronous destroy from the error listener",
"browser": "webkit",
"durationMs": 1875,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "published",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "in-memory source UMD",
"sha256": "1423f8ac9de24b15d908761df2e0720123a88a2b05a45628f720adfd01680663",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-recovery-reentry",
"value": {
"action": "destroy",
"sameOwner": true,
"rowState": "stop",
"isStop": true,
"isDestroy": true,
"events": [
{
"index": 0,
"event": "error",
"time": 0.1509683
},
{
"index": 0,
"event": "stop",
"time": 0
},
{
"index": 0,
"event": "destroy",
"time": 0
}
],
"workers": [
{
"url": "blob:http://127.0.0.1:8084/8b6b2da3-6b1d-4ae6-80d3-bc034d0d3379",
"requests": [
{
"type": "getDanmuTop",
"target": {
"mode": 1,
"height": 23,
"speed": 90
},
"visibles": [],
"antiOverlap": true,
"clientWidth": 640,
"clientHeight": 360,
"marginBottom": 10,
"marginTop": 10,
"id": 1
}
],
"replies": [
{
"id": 1,
"result": 10
}
],
"terminated": 1,
"errors": [
"controlled track failure"
]
}
],
"fault": "Actual video/DOM/track Worker; dispatch an explicit native ErrorEvent and inject a throwing createWorker recovery seam. This does not claim a real CSP or browser Worker construction failure."
}
}
]
},
{
"title": "published / Candidate Danmuku candidate: failed recovery respects synchronous stop from the error listener",
"browser": "webkit",
"durationMs": 1819,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "published",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "in-memory source UMD",
"sha256": "1423f8ac9de24b15d908761df2e0720123a88a2b05a45628f720adfd01680663",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-recovery-reentry",
"value": {
"action": "stop",
"sameOwner": true,
"rowState": "stop",
"isStop": true,
"isDestroy": false,
"events": [
{
"index": 0,
"event": "error",
"time": 0.0621958
},
{
"index": 0,
"event": "stop",
"time": 0.0622303
}
],
"workers": [
{
"url": "blob:http://127.0.0.1:8084/c282b5e8-6625-4822-aeae-e08bf0f62ebf",
"requests": [
{
"type": "getDanmuTop",
"target": {
"mode": 1,
"height": 23,
"speed": 90
},
"visibles": [],
"antiOverlap": true,
"clientWidth": 640,
"clientHeight": 360,
"marginBottom": 10,
"marginTop": 10,
"id": 1
}
],
"replies": [
{
"id": 1,
"result": 10
}
],
"terminated": 1,
"errors": [
"controlled track failure"
]
}
],
"fault": "Actual video/DOM/track Worker; dispatch an explicit native ErrorEvent and inject a throwing createWorker recovery seam. This does not claim a real CSP or browser Worker construction failure."
}
}
]
},
{
"title": "published / Candidate Danmuku candidate: native pause cancels pending visibility without blocking later work",
"browser": "webkit",
"durationMs": 4682,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "published",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "in-memory source UMD",
"sha256": "1423f8ac9de24b15d908761df2e0720123a88a2b05a45628f720adfd01680663",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-cancel",
"value": {
"action": "pause",
"before": {
"requests": [
1
],
"visible": [
"fresh-after-cancel"
]
},
"after": [
"fresh-after-cancel"
],
"cancelledSource": "An unresolved user beforeVisible Promise; native RAF, Worker and media remain active."
}
}
]
},
{
"title": "published / Candidate Danmuku candidate: native reset cancels pending visibility without blocking later work",
"browser": "webkit",
"durationMs": 4090,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "published",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "in-memory source UMD",
"sha256": "1423f8ac9de24b15d908761df2e0720123a88a2b05a45628f720adfd01680663",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-cancel",
"value": {
"action": "reset",
"before": {
"requests": [
1
],
"visible": [
"fresh-after-cancel"
]
},
"after": [
"fresh-after-cancel"
],
"cancelledSource": "An unresolved user beforeVisible Promise; native RAF, Worker and media remain active."
}
}
]
},
{
"title": "published / Candidate Danmuku candidate: native seek cancels pending visibility without blocking later work",
"browser": "webkit",
"durationMs": 4288,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "published",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "in-memory source UMD",
"sha256": "1423f8ac9de24b15d908761df2e0720123a88a2b05a45628f720adfd01680663",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-cancel",
"value": {
"action": "seek",
"before": {
"requests": [
1
],
"visible": [
"fresh-after-cancel"
]
},
"after": [
"fresh-after-cancel"
],
"cancelledSource": "An unresolved user beforeVisible Promise; native RAF, Worker and media remain active."
}
}
]
},
{
"title": "published / Candidate Danmuku candidate: native destroy cancels pending visibility without blocking later work",
"browser": "webkit",
"durationMs": 3588,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "published",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "in-memory source UMD",
"sha256": "1423f8ac9de24b15d908761df2e0720123a88a2b05a45628f720adfd01680663",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-cancel",
"value": {
"action": "destroy",
"before": {
"requests": [
0
],
"visible": []
},
"after": [],
"cancelledSource": "An unresolved user beforeVisible Promise; native RAF, Worker and media remain active."
}
}
]
},
{
"title": "published / Candidate Danmuku candidate: native Worker renders three modes with synchronous filter and asynchronous beforeVisible",
"browser": "webkit",
"durationMs": 3048,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "published",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "in-memory source UMD",
"sha256": "1423f8ac9de24b15d908761df2e0720123a88a2b05a45628f720adfd01680663",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
}
]
},
{
"title": "published / Candidate Danmuku candidate: six simultaneous fixed comments preserve usable track geometry and input order",
"browser": "webkit",
"durationMs": 3111,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "published",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "in-memory source UMD",
"sha256": "1423f8ac9de24b15d908761df2e0720123a88a2b05a45628f720adfd01680663",
"media": "/test/pattern.mp4",
"scenario": "density",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-dense-tracks",
"value": [
{
"id": "dense-0",
"mode": "1",
"state": "stop",
"text": "TRACK 0",
"x": 285,
"y": 10,
"width": 70,
"height": 22.5,
"visibility": "visible",
"display": "block",
"transition": "",
"opacity": "1"
},
{
"id": "dense-1",
"mode": "1",
"state": "stop",
"text": "TRACK 1",
"x": 285,
"y": 33,
"width": 70,
"height": 22.5,
"visibility": "visible",
"display": "block",
"transition": "",
"opacity": "1"
},
{
"id": "dense-2",
"mode": "1",
"state": "stop",
"text": "TRACK 2",
"x": 285,
"y": 56,
"width": 70,
"height": 22.5,
"visibility": "visible",
"display": "block",
"transition": "",
"opacity": "1"
},
{
"id": "dense-3",
"mode": "1",
"state": "stop",
"text": "TRACK 3",
"x": 285,
"y": 79,
"width": 70,
"height": 22.5,
"visibility": "visible",
"display": "block",
"transition": "",
"opacity": "1"
},
{
"id": "dense-4",
"mode": "1",
"state": "stop",
"text": "TRACK 4",
"x": 285,
"y": 102,
"width": 70,
"height": 22.5,
"visibility": "visible",
"display": "block",
"transition": "",
"opacity": "1"
},
{
"id": "dense-5",
"mode": "1",
"state": "stop",
"text": "TRACK 5",
"x": 285,
"y": 125,
"width": 70,
"height": 22.5,
"visibility": "visible",
"display": "block",
"transition": "",
"opacity": "1"
}
]
}
]
},
{
"title": "published / Candidate Danmuku candidate: native pause seek rate and public reset/load retain historical pool semantics",
"browser": "webkit",
"durationMs": 4123,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "published",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "in-memory source UMD",
"sha256": "1423f8ac9de24b15d908761df2e0720123a88a2b05a45628f720adfd01680663",
"media": "/test/pattern.mp4",
"scenario": "playback",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-pool-and-rate",
"value": {
"frozen": {
"left": 620.6124877929688,
"next": 620.6124877929688,
"state": "stop"
},
"reused": {
"poolReused": true,
"visibleSameNode": true,
"original": {
"id": "reused",
"state": "emit",
"visibility": "visible",
"text": "REUSED"
},
"extraNodes": [],
"transition": "4s",
"rate": 2
},
"loadWithoutArgument": "replaces from original empty option; explicit array load appends"
}
},
{
"name": "danmuku-native-eligibility",
"value": [
{
"wall": 1022,
"before": 0.037198,
"after": 0.0372876,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 1067,
"before": 0.0825133,
"after": 0.082529,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 1128,
"before": 0.1440193,
"after": 0.1440325,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 1159,
"before": 0.1747188,
"after": 0.1747298,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 1203,
"before": 0.2189016,
"after": 0.2189157,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 1248,
"before": 0.2639751,
"after": 0.2639833,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 1280,
"before": 0.2959372,
"after": 0.2959794,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 1311,
"before": 0.3264783,
"after": 0.3265161,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 1357,
"before": 0.3726786,
"after": 0.3726881,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 1403,
"before": 0.4184727,
"after": 0.4184974,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [
"moving"
],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 1436,
"before": 0.4516336,
"after": 0.4516421,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1481,
"before": 0.4964813,
"after": 0.496491,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1528,
"before": 0.54333,
"after": 0.5433423,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1589,
"before": 0.6045261,
"after": 0.6045355,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1620,
"before": 0.6359789,
"after": 0.6359897,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1665,
"before": 0.6812487,
"after": 0.6812594,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1696,
"before": 0.7122088,
"after": 0.7122233,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1733,
"before": 0.7485995,
"after": 0.7486089,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1734,
"before": 0.7502078,
"after": 0.7502144,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 2251,
"before": 2.0761874,
"after": 2.0762162,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5013626,
"state": "wait"
}
]
},
{
"wall": 2297,
"before": 2.167832,
"after": 2.167855,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5013626,
"state": "wait"
}
]
},
{
"wall": 2328,
"before": 2.2296416,
"after": 2.2296696,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5013626,
"state": "wait"
}
]
},
{
"wall": 2359,
"before": 2.2920008,
"after": 2.2920232,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5013626,
"state": "wait"
}
]
},
{
"wall": 2404,
"before": 2.3823982,
"after": 2.3824226,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5013626,
"state": "wait"
}
]
},
{
"wall": 2436,
"before": 2.4459554,
"after": 2.445995,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [
"reused"
],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5013626,
"state": "wait"
}
]
},
{
"wall": 2468,
"before": 2.5096784,
"after": 2.5096964,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5013626,
"state": "emit"
}
]
},
{
"wall": 2514,
"before": 2.602687,
"after": 2.6027166,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5013626,
"state": "emit"
}
]
},
{
"wall": 2544,
"before": 2.662037,
"after": 2.6620588,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5013626,
"state": "emit"
}
]
},
{
"wall": 2590,
"before": 2.753648,
"after": 2.7536698,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5013626,
"state": "emit"
}
]
},
{
"wall": 2636,
"before": 2.8456046,
"after": 2.845671,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5013626,
"state": "emit"
}
]
},
{
"wall": 2682,
"before": 2.939068,
"after": 2.9391632,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5013626,
"state": "emit"
},
{
"id": "appended",
"time": 3.4219202,
"state": "wait"
}
]
},
{
"wall": 2745,
"before": 3.064804,
"after": 3.0648442,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5013626,
"state": "emit"
},
{
"id": "appended",
"time": 3.4219202,
"state": "wait"
}
]
},
{
"wall": 2776,
"before": 3.1262278,
"after": 3.1262506,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5013626,
"state": "emit"
},
{
"id": "appended",
"time": 3.4219202,
"state": "wait"
}
]
},
{
"wall": 2823,
"before": 3.219277,
"after": 3.219358,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5013626,
"state": "emit"
},
{
"id": "appended",
"time": 3.4219202,
"state": "wait"
}
]
},
{
"wall": 2868,
"before": 3.311081,
"after": 3.3111262,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5013626,
"state": "emit"
},
{
"id": "appended",
"time": 3.4219202,
"state": "wait"
}
]
},
{
"wall": 2916,
"before": 3.4052488,
"after": 3.4053134,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [
"appended"
],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5013626,
"state": "emit"
},
{
"id": "appended",
"time": 3.4219202,
"state": "wait"
}
]
},
{
"wall": 2992,
"before": 3.5587164,
"after": 3.5587392,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5013626,
"state": "emit"
},
{
"id": "appended",
"time": 3.4219202,
"state": "emit"
}
]
},
{
"wall": 3052,
"before": 3.6789606,
"after": 3.678987,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5013626,
"state": "emit"
},
{
"id": "appended",
"time": 3.4219202,
"state": "emit"
}
]
},
{
"wall": 3097,
"before": 3.7689188,
"after": 3.7689394,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5013626,
"state": "emit"
},
{
"id": "appended",
"time": 3.4219202,
"state": "emit"
}
]
},
{
"wall": 3144,
"before": 3.8615482,
"after": 3.8615668,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5013626,
"state": "emit"
},
{
"id": "appended",
"time": 3.4219202,
"state": "emit"
}
]
},
{
"wall": 3205,
"before": 3.9844942,
"after": 3.9845156,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5013626,
"state": "emit"
},
{
"id": "appended",
"time": 3.4219202,
"state": "emit"
}
]
},
{
"wall": 3251,
"before": 4.0762118,
"after": 4.076237,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5013626,
"state": "emit"
},
{
"id": "appended",
"time": 3.4219202,
"state": "emit"
}
]
},
{
"wall": 3299,
"before": 4.1713572,
"after": 4.1713852,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5013626,
"state": "emit"
},
{
"id": "appended",
"time": 3.4219202,
"state": "emit"
}
]
},
{
"wall": 3360,
"before": 4.2941152,
"after": 4.294139,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5013626,
"state": "emit"
},
{
"id": "appended",
"time": 3.4219202,
"state": "emit"
}
]
},
{
"wall": 3407,
"before": 4.3875544,
"after": 4.3875894,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5013626,
"state": "emit"
},
{
"id": "appended",
"time": 3.4219202,
"state": "emit"
}
]
},
{
"wall": 3430,
"before": 4.4341858,
"after": 4.4342146,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5013626,
"state": "emit"
},
{
"id": "appended",
"time": 3.4219202,
"state": "emit"
}
]
},
{
"wall": 3432,
"before": 4.43815,
"after": 4.4381792,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5013626,
"state": "emit"
},
{
"id": "appended",
"time": 3.4219202,
"state": "emit"
}
]
}
]
}
]
},
{
"title": "published / Candidate Danmuku candidate: actual settings, asynchronous send lock, external fullscreen mount and two-player destruction",
"browser": "webkit",
"durationMs": 6358,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "published",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "in-memory source UMD",
"sha256": "1423f8ac9de24b15d908761df2e0720123a88a2b05a45628f720adfd01680663",
"media": "/test/pattern.mp4",
"scenario": "settings",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
}
]
},
{
"title": "candidate / Candidate Danmuku candidate: accepted NaN timestamp keeps the historical current-time fallback",
"browser": "webkit",
"durationMs": 3674,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "candidate",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "in-memory source UMD",
"sha256": "1423f8ac9de24b15d908761df2e0720123a88a2b05a45628f720adfd01680663",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-numeric-compatibility",
"value": {
"expected": 0.5,
"inputTime": 0.5,
"queueTime": 0.5,
"isNaN": false
}
}
]
},
{
"title": "candidate / Candidate Danmuku candidate: failed recovery respects synchronous destroy from the error listener",
"browser": "webkit",
"durationMs": 1686,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "candidate",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "in-memory source UMD",
"sha256": "1423f8ac9de24b15d908761df2e0720123a88a2b05a45628f720adfd01680663",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-recovery-reentry",
"value": {
"action": "destroy",
"sameOwner": true,
"rowState": "stop",
"isStop": true,
"isDestroy": true,
"events": [
{
"index": 0,
"event": "error",
"time": 0.2025518
},
{
"index": 0,
"event": "stop",
"time": 0
},
{
"index": 0,
"event": "destroy",
"time": 0
}
],
"workers": [
{
"url": "blob:http://127.0.0.1:8084/230a7331-f14b-4eb9-b646-032aee02ef78",
"requests": [
{
"type": "getDanmuTop",
"target": {
"mode": 1,
"height": 23,
"speed": 90
},
"visibles": [],
"antiOverlap": true,
"clientWidth": 640,
"clientHeight": 360,
"marginBottom": 10,
"marginTop": 10,
"id": 1
}
],
"replies": [
{
"id": 1,
"result": 10
}
],
"terminated": 1,
"errors": [
"controlled track failure"
]
}
],
"fault": "Actual video/DOM/track Worker; dispatch an explicit native ErrorEvent and inject a throwing createWorker recovery seam. This does not claim a real CSP or browser Worker construction failure."
}
}
]
},
{
"title": "candidate / Candidate Danmuku candidate: failed recovery respects synchronous stop from the error listener",
"browser": "webkit",
"durationMs": 2046,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "candidate",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "in-memory source UMD",
"sha256": "1423f8ac9de24b15d908761df2e0720123a88a2b05a45628f720adfd01680663",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-recovery-reentry",
"value": {
"action": "stop",
"sameOwner": true,
"rowState": "stop",
"isStop": true,
"isDestroy": false,
"events": [
{
"index": 0,
"event": "error",
"time": 0.2032197
},
{
"index": 0,
"event": "stop",
"time": 0.203256
}
],
"workers": [
{
"url": "blob:http://127.0.0.1:8084/ade0a364-4dbb-46c3-bc35-91426c354ca8",
"requests": [
{
"type": "getDanmuTop",
"target": {
"mode": 1,
"height": 23,
"speed": 90
},
"visibles": [],
"antiOverlap": true,
"clientWidth": 640,
"clientHeight": 360,
"marginBottom": 10,
"marginTop": 10,
"id": 1
}
],
"replies": [
{
"id": 1,
"result": 10
}
],
"terminated": 1,
"errors": [
"controlled track failure"
]
}
],
"fault": "Actual video/DOM/track Worker; dispatch an explicit native ErrorEvent and inject a throwing createWorker recovery seam. This does not claim a real CSP or browser Worker construction failure."
}
}
]
},
{
"title": "candidate / Candidate Danmuku candidate: native pause cancels pending visibility without blocking later work",
"browser": "webkit",
"durationMs": 4556,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "candidate",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "in-memory source UMD",
"sha256": "1423f8ac9de24b15d908761df2e0720123a88a2b05a45628f720adfd01680663",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-cancel",
"value": {
"action": "pause",
"before": {
"requests": [
1
],
"visible": [
"fresh-after-cancel"
]
},
"after": [
"fresh-after-cancel"
],
"cancelledSource": "An unresolved user beforeVisible Promise; native RAF, Worker and media remain active."
}
}
]
},
{
"title": "candidate / Candidate Danmuku candidate: native reset cancels pending visibility without blocking later work",
"browser": "webkit",
"durationMs": 4083,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "candidate",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "in-memory source UMD",
"sha256": "1423f8ac9de24b15d908761df2e0720123a88a2b05a45628f720adfd01680663",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-cancel",
"value": {
"action": "reset",
"before": {
"requests": [
1
],
"visible": [
"fresh-after-cancel"
]
},
"after": [
"fresh-after-cancel"
],
"cancelledSource": "An unresolved user beforeVisible Promise; native RAF, Worker and media remain active."
}
}
]
},
{
"title": "candidate / Candidate Danmuku candidate: native seek cancels pending visibility without blocking later work",
"browser": "webkit",
"durationMs": 4278,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "candidate",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "in-memory source UMD",
"sha256": "1423f8ac9de24b15d908761df2e0720123a88a2b05a45628f720adfd01680663",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-cancel",
"value": {
"action": "seek",
"before": {
"requests": [
1
],
"visible": [
"fresh-after-cancel"
]
},
"after": [
"fresh-after-cancel"
],
"cancelledSource": "An unresolved user beforeVisible Promise; native RAF, Worker and media remain active."
}
}
]
},
{
"title": "candidate / Candidate Danmuku candidate: native destroy cancels pending visibility without blocking later work",
"browser": "webkit",
"durationMs": 3793,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "candidate",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "in-memory source UMD",
"sha256": "1423f8ac9de24b15d908761df2e0720123a88a2b05a45628f720adfd01680663",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-cancel",
"value": {
"action": "destroy",
"before": {
"requests": [
0
],
"visible": []
},
"after": [],
"cancelledSource": "An unresolved user beforeVisible Promise; native RAF, Worker and media remain active."
}
}
]
},
{
"title": "candidate / Candidate Danmuku candidate: native Worker renders three modes with synchronous filter and asynchronous beforeVisible",
"browser": "webkit",
"durationMs": 2406,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "candidate",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "in-memory source UMD",
"sha256": "1423f8ac9de24b15d908761df2e0720123a88a2b05a45628f720adfd01680663",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
}
]
},
{
"title": "candidate / Candidate Danmuku candidate: six simultaneous fixed comments preserve usable track geometry and input order",
"browser": "webkit",
"durationMs": 3129,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "candidate",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "in-memory source UMD",
"sha256": "1423f8ac9de24b15d908761df2e0720123a88a2b05a45628f720adfd01680663",
"media": "/test/pattern.mp4",
"scenario": "density",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-dense-tracks",
"value": [
{
"id": "dense-0",
"mode": "1",
"state": "stop",
"text": "TRACK 0",
"x": 285,
"y": 10,
"width": 70,
"height": 22.5,
"visibility": "visible",
"display": "block",
"transition": "",
"opacity": "1"
},
{
"id": "dense-1",
"mode": "1",
"state": "stop",
"text": "TRACK 1",
"x": 285,
"y": 33,
"width": 70,
"height": 22.5,
"visibility": "visible",
"display": "block",
"transition": "",
"opacity": "1"
},
{
"id": "dense-2",
"mode": "1",
"state": "stop",
"text": "TRACK 2",
"x": 285,
"y": 56,
"width": 70,
"height": 22.5,
"visibility": "visible",
"display": "block",
"transition": "",
"opacity": "1"
},
{
"id": "dense-3",
"mode": "1",
"state": "stop",
"text": "TRACK 3",
"x": 285,
"y": 79,
"width": 70,
"height": 22.5,
"visibility": "visible",
"display": "block",
"transition": "",
"opacity": "1"
},
{
"id": "dense-4",
"mode": "1",
"state": "stop",
"text": "TRACK 4",
"x": 285,
"y": 102,
"width": 70,
"height": 22.5,
"visibility": "visible",
"display": "block",
"transition": "",
"opacity": "1"
},
{
"id": "dense-5",
"mode": "1",
"state": "stop",
"text": "TRACK 5",
"x": 285,
"y": 125,
"width": 70,
"height": 22.5,
"visibility": "visible",
"display": "block",
"transition": "",
"opacity": "1"
}
]
}
]
},
{
"title": "candidate / Candidate Danmuku candidate: native pause seek rate and public reset/load retain historical pool semantics",
"browser": "webkit",
"durationMs": 4048,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "candidate",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "in-memory source UMD",
"sha256": "1423f8ac9de24b15d908761df2e0720123a88a2b05a45628f720adfd01680663",
"media": "/test/pattern.mp4",
"scenario": "playback",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-pool-and-rate",
"value": {
"frozen": {
"left": 626.2999877929688,
"next": 626.2999877929688,
"state": "stop"
},
"reused": {
"poolReused": true,
"visibleSameNode": true,
"original": {
"id": "reused",
"state": "emit",
"visibility": "visible",
"text": "REUSED"
},
"extraNodes": [],
"transition": "4s",
"rate": 2
},
"loadWithoutArgument": "replaces from original empty option; explicit array load appends"
}
},
{
"name": "danmuku-native-eligibility",
"value": [
{
"wall": 1062,
"before": 0.0335717,
"after": 0.0336291,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 1106,
"before": 0.0776323,
"after": 0.0776485,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 1136,
"before": 0.1077465,
"after": 0.1077615,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 1182,
"before": 0.1542014,
"after": 0.1542094,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 1227,
"before": 0.1993149,
"after": 0.1993281,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 1273,
"before": 0.2449331,
"after": 0.2449434,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 1336,
"before": 0.3076963,
"after": 0.3077176,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 1366,
"before": 0.3380133,
"after": 0.3380252,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 1412,
"before": 0.3838462,
"after": 0.3838585,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 1443,
"before": 0.4145676,
"after": 0.414595,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [
"moving"
],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 1489,
"before": 0.4609453,
"after": 0.4609576,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1520,
"before": 0.4915473,
"after": 0.4915565,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1565,
"before": 0.5373316,
"after": 0.5373403,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1609,
"before": 0.5811755,
"after": 0.5811855,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1640,
"before": 0.6114036,
"after": 0.6114114,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1671,
"before": 0.6429715,
"after": 0.6429851,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1718,
"before": 0.6896802,
"after": 0.6896908,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1720,
"before": 0.6923133,
"after": 0.6923329,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1722,
"before": 0.6941142,
"after": 0.6941233,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 2226,
"before": 2.0994524,
"after": 2.0994748,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5004447,
"state": "wait"
}
]
},
{
"wall": 2271,
"before": 2.1890682,
"after": 2.1890924,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5004447,
"state": "wait"
}
]
},
{
"wall": 2301,
"before": 2.249769,
"after": 2.2498968,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5004447,
"state": "wait"
}
]
},
{
"wall": 2347,
"before": 2.3411312,
"after": 2.3411476,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5004447,
"state": "wait"
}
]
},
{
"wall": 2379,
"before": 2.4058632,
"after": 2.4058964,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [
"reused"
],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5004447,
"state": "wait"
}
]
},
{
"wall": 2426,
"before": 2.4984908,
"after": 2.4985164,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5004447,
"state": "emit"
}
]
},
{
"wall": 2472,
"before": 2.5918974,
"after": 2.5919246,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5004447,
"state": "emit"
}
]
},
{
"wall": 2549,
"before": 2.7451686,
"after": 2.7451906,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5004447,
"state": "emit"
}
]
},
{
"wall": 2580,
"before": 2.807848,
"after": 2.8078686,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5004447,
"state": "emit"
}
]
},
{
"wall": 2627,
"before": 2.9007358,
"after": 2.9007578,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5004447,
"state": "emit"
}
]
},
{
"wall": 2658,
"before": 2.9621974,
"after": 2.9622744,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5004447,
"state": "emit"
},
{
"id": "appended",
"time": 3.4356514,
"state": "wait"
}
]
},
{
"wall": 2705,
"before": 3.0565498,
"after": 3.0566472,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5004447,
"state": "emit"
},
{
"id": "appended",
"time": 3.4356514,
"state": "wait"
}
]
},
{
"wall": 2750,
"before": 3.1477914,
"after": 3.1478124,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5004447,
"state": "emit"
},
{
"id": "appended",
"time": 3.4356514,
"state": "wait"
}
]
},
{
"wall": 2795,
"before": 3.2380178,
"after": 3.238039,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5004447,
"state": "emit"
},
{
"id": "appended",
"time": 3.4356514,
"state": "wait"
}
]
},
{
"wall": 2859,
"before": 3.3645508,
"after": 3.3645826,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [
"appended"
],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5004447,
"state": "emit"
},
{
"id": "appended",
"time": 3.4356514,
"state": "wait"
}
]
},
{
"wall": 2891,
"before": 3.4289314,
"after": 3.4289584,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5004447,
"state": "emit"
},
{
"id": "appended",
"time": 3.4356514,
"state": "emit"
}
]
},
{
"wall": 2935,
"before": 3.5176272,
"after": 3.517699,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5004447,
"state": "emit"
},
{
"id": "appended",
"time": 3.4356514,
"state": "emit"
}
]
},
{
"wall": 2982,
"before": 3.610506,
"after": 3.6105288,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5004447,
"state": "emit"
},
{
"id": "appended",
"time": 3.4356514,
"state": "emit"
}
]
},
{
"wall": 3027,
"before": 3.7011814,
"after": 3.701204,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5004447,
"state": "emit"
},
{
"id": "appended",
"time": 3.4356514,
"state": "emit"
}
]
},
{
"wall": 3089,
"before": 3.825769,
"after": 3.8257924,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5004447,
"state": "emit"
},
{
"id": "appended",
"time": 3.4356514,
"state": "emit"
}
]
},
{
"wall": 3151,
"before": 3.9497526,
"after": 3.94977,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5004447,
"state": "emit"
},
{
"id": "appended",
"time": 3.4356514,
"state": "emit"
}
]
},
{
"wall": 3183,
"before": 4.0131808,
"after": 4.0132086,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5004447,
"state": "emit"
},
{
"id": "appended",
"time": 3.4356514,
"state": "emit"
}
]
},
{
"wall": 3229,
"before": 4.104923,
"after": 4.1049492,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5004447,
"state": "emit"
},
{
"id": "appended",
"time": 3.4356514,
"state": "emit"
}
]
},
{
"wall": 3276,
"before": 4.1987698,
"after": 4.198796,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5004447,
"state": "emit"
},
{
"id": "appended",
"time": 3.4356514,
"state": "emit"
}
]
},
{
"wall": 3308,
"before": 4.2637608,
"after": 4.2637916,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5004447,
"state": "emit"
},
{
"id": "appended",
"time": 3.4356514,
"state": "emit"
}
]
},
{
"wall": 3353,
"before": 4.3536944,
"after": 4.3537232,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5004447,
"state": "emit"
},
{
"id": "appended",
"time": 3.4356514,
"state": "emit"
}
]
},
{
"wall": 3390,
"before": 4.426387,
"after": 4.426411,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5004447,
"state": "emit"
},
{
"id": "appended",
"time": 3.4356514,
"state": "emit"
}
]
},
{
"wall": 3392,
"before": 4.4312084,
"after": 4.4312262,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5004447,
"state": "emit"
},
{
"id": "appended",
"time": 3.4356514,
"state": "emit"
}
]
}
]
}
]
},
{
"title": "candidate / Candidate Danmuku candidate: actual settings, asynchronous send lock, external fullscreen mount and two-player destruction",
"browser": "webkit",
"durationMs": 6621,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "candidate",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "in-memory source UMD",
"sha256": "1423f8ac9de24b15d908761df2e0720123a88a2b05a45628f720adfd01680663",
"media": "/test/pattern.mp4",
"scenario": "settings",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
}
]
}
]
},
{
"format": "main",
"tests": 138,
"workers": 2,
"file": "refactor/.cache/danmuku05-browser-main-resource-final/report.json",
"sha256": "8ecfa06baca57584ab2accff9e98c5d79c71bb8a5b519afdddbc6c91ba9e4501",
"run": {
"file": "refactor/.cache/danmuku05-browser-main-resource-final/run.log",
"sha256": "cafa2144d09e14682f9f5dcbc98faecb7dea4339edf080fef8a724aa621736a0"
},
"specs": [
{
"file": "refactor/.cache/danmuku05-browser-main-resource-final/danmuku-input.spec.js",
"sha256": "37a96982ea7bf2fb99df5e4d829ce1c3f512145092a440586c2d5ad7d0a2d6f3"
},
{
"file": "refactor/.cache/danmuku05-browser-main-resource-final/danmuku-scheduler.spec.js",
"sha256": "ee67bc0f204f1f9090859ed9d1d0cfecc545129fff6278d2f17140b009390519"
},
{
"file": "refactor/.cache/danmuku05-browser-main-resource-final/danmuku-resources.spec.js",
"sha256": "f0d09e962cb422a66bd644c52268aff8f288606ae9c93676fa979539743f9c6b"
}
],
"archiveResultsRoot": "refactor/.cache/danmuku05-browser-main-resource-final/results",
"originalResultsRoot": "refactor/.cache/browser/results",
"versions": [
"chromium: 153.0.8010.12",
"firefox: 155.0",
"webkit: 26.6"
],
"cases": [
{
"title": "Danmuku input native Worker startup failure falls back locally (published)",
"browser": "chromium",
"durationMs": 640,
"observations": [
{
"name": "danmuku-native-worker-fault",
"value": {
"queue": [
{
"text": "FALLBACK",
"time": 0,
"mode": 1
}
],
"workers": [
{
"url": "blob:http://127.0.0.1:8084/1b1a32b0-69f0-4384-a9cd-50126ef64ce3",
"terminated": 1,
"replies": []
}
],
"urls": [
"blob:http://127.0.0.1:8084/f9aeb74a-f6c2-48d5-8e77-6e130aeb7e8e",
"blob:http://127.0.0.1:8084/1b1a32b0-69f0-4384-a9cd-50126ef64ce3"
],
"revoked": [
"",
"blob:http://127.0.0.1:8084/1b1a32b0-69f0-4384-a9cd-50126ef64ce3",
"blob:http://127.0.0.1:8084/f9aeb74a-f6c2-48d5-8e77-6e130aeb7e8e"
],
"errors": [],
"fault": "Test replaces only the newly created native parser Worker script with a thrown startup Error; fetch, fallback parser and error dispatch remain real."
}
}
]
},
{
"title": "Danmuku input native parser cleanup and rejected fetch (published)",
"browser": "chromium",
"durationMs": 293,
"observations": [
{
"name": "danmuku-native-parser",
"value": {
"parsed": [
{
"text": "A & B",
"time": 0,
"mode": 0,
"color": "#ff",
"userID": "user",
"rowID": 456
},
{
"text": "TOP",
"time": 2,
"mode": 2,
"color": "#ffffff",
"userID": "u",
"rowID": 789
}
],
"emptyIdentity": true,
"beforeDestroy": 2,
"rejection": "TypeError: Failed to fetch",
"parserWorkers": [
{
"url": "blob:http://127.0.0.1:8084/88f22f1c-1786-48ca-9bc8-52270c3c2d18",
"terminated": 1,
"replies": [
{
"danmus": [
{
"text": "A & B",
"time": 0,
"mode": 0,
"fontSize": 25,
"color": "#ff",
"timestamp": 123,
"pool": 0,
"userID": "user",
"rowID": 456,
"style": {}
},
{
"text": "TOP",
"time": 2,
"mode": 2,
"fontSize": 20,
"color": "#ffffff",
"timestamp": 124,
"pool": 0,
"userID": "u",
"rowID": 789,
"style": {}
}
],
"id": 1
}
]
},
{
"url": "blob:http://127.0.0.1:8084/e58d1bed-578a-4045-aa19-71cec466fa21",
"terminated": 1,
"replies": [
{
"danmus": [],
"id": 2
}
]
}
],
"urls": [
"blob:http://127.0.0.1:8084/9584ab6c-30f0-4681-bd58-d4f70c327bd5",
"blob:http://127.0.0.1:8084/88f22f1c-1786-48ca-9bc8-52270c3c2d18",
"blob:http://127.0.0.1:8084/e58d1bed-578a-4045-aa19-71cec466fa21"
],
"revoked": [
"",
"blob:http://127.0.0.1:8084/88f22f1c-1786-48ca-9bc8-52270c3c2d18",
"blob:http://127.0.0.1:8084/e58d1bed-578a-4045-aa19-71cec466fa21"
],
"workers": [
{
"url": "blob:http://127.0.0.1:8084/9584ab6c-30f0-4681-bd58-d4f70c327bd5",
"terminated": 1,
"replies": []
},
{
"url": "blob:http://127.0.0.1:8084/88f22f1c-1786-48ca-9bc8-52270c3c2d18",
"terminated": 1,
"replies": [
{
"danmus": [
{
"text": "A & B",
"time": 0,
"mode": 0,
"fontSize": 25,
"color": "#ff",
"timestamp": 123,
"pool": 0,
"userID": "user",
"rowID": 456,
"style": {}
},
{
"text": "TOP",
"time": 2,
"mode": 2,
"fontSize": 20,
"color": "#ffffff",
"timestamp": 124,
"pool": 0,
"userID": "u",
"rowID": 789,
"style": {}
}
],
"id": 1
}
]
},
{
"url": "blob:http://127.0.0.1:8084/e58d1bed-578a-4045-aa19-71cec466fa21",
"terminated": 1,
"replies": [
{
"danmus": [],
"id": 2
}
]
}
],
"events": [
{
"name": "show"
},
{
"name": "config"
},
{
"name": "reset"
},
{
"name": "loaded",
"count": 0
},
{
"name": "loaded",
"count": 2
},
{
"name": "loaded",
"count": 2
},
{
"name": "error",
"error": "TypeError: Failed to fetch"
},
{
"name": "destroy"
}
]
}
}
]
},
{
"title": "Danmuku input replacement append and destruction (published)",
"browser": "chromium",
"durationMs": 242,
"observations": [
{
"name": "danmuku-native-input-ownership",
"value": {
"initialEvents": [
"show",
"config",
"reset",
"loaded"
],
"latestIdentity": true,
"oldIdentity": true,
"destroyedIdentity": true,
"queue": [
{
"text": "new",
"time": 0
},
{
"text": "append B",
"time": 0.5
},
{
"text": "append A",
"time": 0.5
}
],
"finalQueue": [
"new",
"append B",
"append A"
],
"loadedBefore": 4,
"loadedAfter": 4,
"events": [
{
"name": "show"
},
{
"name": "config"
},
{
"name": "reset"
},
{
"name": "loaded",
"count": 0
},
{
"name": "show"
},
{
"name": "config"
},
{
"name": "show"
},
{
"name": "config"
},
{
"name": "reset"
},
{
"name": "loaded",
"count": 1
},
{
"name": "loaded",
"count": 2
},
{
"name": "loaded",
"count": 3
},
{
"name": "destroy"
}
]
}
}
]
},
{
"title": "Danmuku config callback replacement and validation (published)",
"browser": "chromium",
"durationMs": 245,
"observations": [
{
"name": "danmuku-native-config",
"value": {
"unchangedIdentity": true,
"count": 2,
"unchangedCount": 2,
"unchangedOption": true,
"filterIdentity": true,
"error": "Error: [Type Error]: 'option.speed' require 'number' type, but got 'string'",
"receiver": [
true,
true
],
"emittedIdentity": true,
"input": {
"text": "included",
"time": 0,
"mode": 0,
"style": {},
"color": "#FFFFFF"
},
"queue": [
{
"text": "included",
"time": 0
}
]
}
}
]
},
{
"title": "Danmuku input native Worker startup failure falls back locally (candidate)",
"browser": "chromium",
"durationMs": 622,
"observations": [
{
"name": "danmuku-native-worker-fault",
"value": {
"queue": [
{
"text": "FALLBACK",
"time": 0,
"mode": 1
}
],
"workers": [
{
"url": "blob:http://127.0.0.1:8084/5805c35d-b4a4-42b6-a42d-c1cb9d18bc26",
"terminated": 1,
"replies": []
}
],
"urls": [
"blob:http://127.0.0.1:8084/af3a7b6e-f9ff-49c7-875f-6f14d3869ca9",
"blob:http://127.0.0.1:8084/5805c35d-b4a4-42b6-a42d-c1cb9d18bc26"
],
"revoked": [
"blob:http://127.0.0.1:8084/5805c35d-b4a4-42b6-a42d-c1cb9d18bc26",
"blob:http://127.0.0.1:8084/af3a7b6e-f9ff-49c7-875f-6f14d3869ca9"
],
"errors": [],
"fault": "Test replaces only the newly created native parser Worker script with a thrown startup Error; fetch, fallback parser and error dispatch remain real."
}
}
]
},
{
"title": "Danmuku input native parser cleanup and rejected fetch (candidate)",
"browser": "chromium",
"durationMs": 305,
"observations": [
{
"name": "danmuku-native-parser",
"value": {
"parsed": [
{
"text": "A & B",
"time": 0,
"mode": 0,
"color": "#ff",
"userID": "user",
"rowID": 456
},
{
"text": "TOP",
"time": 2,
"mode": 2,
"color": "#ffffff",
"userID": "u",
"rowID": 789
}
],
"emptyIdentity": true,
"beforeDestroy": 2,
"rejection": "TypeError: Failed to fetch",
"parserWorkers": [
{
"url": "blob:http://127.0.0.1:8084/ff5b5bea-0021-4514-9601-8a8da527fb6c",
"terminated": 1,
"replies": [
{
"danmus": [
{
"text": "A & B",
"time": 0,
"mode": 0,
"fontSize": 25,
"color": "#ff",
"timestamp": 123,
"pool": 0,
"userID": "user",
"rowID": 456,
"style": {}
},
{
"text": "TOP",
"time": 2,
"mode": 2,
"fontSize": 20,
"color": "#ffffff",
"timestamp": 124,
"pool": 0,
"userID": "u",
"rowID": 789,
"style": {}
}
],
"id": 1
}
]
},
{
"url": "blob:http://127.0.0.1:8084/c5f795af-631b-43fa-8d6d-eca24f336772",
"terminated": 1,
"replies": [
{
"danmus": [],
"id": 2
}
]
}
],
"urls": [
"blob:http://127.0.0.1:8084/5d7044c7-4608-43a2-a79c-f7bc621d2f45",
"blob:http://127.0.0.1:8084/ff5b5bea-0021-4514-9601-8a8da527fb6c",
"blob:http://127.0.0.1:8084/c5f795af-631b-43fa-8d6d-eca24f336772"
],
"revoked": [
"blob:http://127.0.0.1:8084/ff5b5bea-0021-4514-9601-8a8da527fb6c",
"blob:http://127.0.0.1:8084/c5f795af-631b-43fa-8d6d-eca24f336772"
],
"workers": [
{
"url": "blob:http://127.0.0.1:8084/5d7044c7-4608-43a2-a79c-f7bc621d2f45",
"terminated": 1,
"replies": []
},
{
"url": "blob:http://127.0.0.1:8084/ff5b5bea-0021-4514-9601-8a8da527fb6c",
"terminated": 1,
"replies": [
{
"danmus": [
{
"text": "A & B",
"time": 0,
"mode": 0,
"fontSize": 25,
"color": "#ff",
"timestamp": 123,
"pool": 0,
"userID": "user",
"rowID": 456,
"style": {}
},
{
"text": "TOP",
"time": 2,
"mode": 2,
"fontSize": 20,
"color": "#ffffff",
"timestamp": 124,
"pool": 0,
"userID": "u",
"rowID": 789,
"style": {}
}
],
"id": 1
}
]
},
{
"url": "blob:http://127.0.0.1:8084/c5f795af-631b-43fa-8d6d-eca24f336772",
"terminated": 1,
"replies": [
{
"danmus": [],
"id": 2
}
]
}
],
"events": [
{
"name": "show"
},
{
"name": "config"
},
{
"name": "reset"
},
{
"name": "loaded",
"count": 0
},
{
"name": "loaded",
"count": 2
},
{
"name": "loaded",
"count": 2
},
{
"name": "error",
"error": "TypeError: Failed to fetch"
},
{
"name": "destroy"
}
]
}
}
]
},
{
"title": "Danmuku input replacement append and destruction (candidate)",
"browser": "chromium",
"durationMs": 259,
"observations": [
{
"name": "danmuku-native-input-ownership",
"value": {
"initialEvents": [
"show",
"config",
"reset",
"loaded"
],
"latestIdentity": true,
"oldIdentity": true,
"destroyedIdentity": true,
"queue": [
{
"text": "new",
"time": 0
},
{
"text": "append B",
"time": 0.5
},
{
"text": "append A",
"time": 0.5
}
],
"finalQueue": [
"new",
"append B",
"append A"
],
"loadedBefore": 4,
"loadedAfter": 4,
"events": [
{
"name": "show"
},
{
"name": "config"
},
{
"name": "reset"
},
{
"name": "loaded",
"count": 0
},
{
"name": "show"
},
{
"name": "config"
},
{
"name": "show"
},
{
"name": "config"
},
{
"name": "reset"
},
{
"name": "loaded",
"count": 1
},
{
"name": "loaded",
"count": 2
},
{
"name": "loaded",
"count": 3
},
{
"name": "destroy"
}
]
}
}
]
},
{
"title": "Danmuku config callback replacement and validation (candidate)",
"browser": "chromium",
"durationMs": 275,
"observations": [
{
"name": "danmuku-native-config",
"value": {
"unchangedIdentity": true,
"count": 2,
"unchangedCount": 2,
"unchangedOption": true,
"filterIdentity": true,
"error": "Error: [Type Error]: 'option.speed' require 'number' type, but got 'string'",
"receiver": [
true,
true
],
"emittedIdentity": true,
"input": {
"text": "included",
"time": 0,
"mode": 0,
"style": {},
"color": "#FFFFFF"
},
"queue": [
{
"text": "included",
"time": 0
}
]
}
}
]
},
{
"title": "Danmuku input native Worker startup failure falls back locally (published)",
"browser": "firefox",
"durationMs": 1683,
"observations": [
{
"name": "danmuku-native-worker-fault",
"value": {
"queue": [
{
"text": "FALLBACK",
"time": 0,
"mode": 1
}
],
"workers": [
{
"url": "blob:http://127.0.0.1:8084/768f3b8e-1b6d-4daa-b1ab-05fdad9791fa",
"terminated": 1,
"replies": []
}
],
"urls": [
"blob:http://127.0.0.1:8084/399b4a12-dc5a-44b6-b182-7916b85b8f78",
"blob:http://127.0.0.1:8084/768f3b8e-1b6d-4daa-b1ab-05fdad9791fa"
],
"revoked": [
"",
"blob:http://127.0.0.1:8084/768f3b8e-1b6d-4daa-b1ab-05fdad9791fa",
"blob:http://127.0.0.1:8084/399b4a12-dc5a-44b6-b182-7916b85b8f78"
],
"errors": [],
"fault": "Test replaces only the newly created native parser Worker script with a thrown startup Error; fetch, fallback parser and error dispatch remain real."
}
}
]
},
{
"title": "Danmuku input native parser cleanup and rejected fetch (published)",
"browser": "firefox",
"durationMs": 805,
"observations": [
{
"name": "danmuku-native-parser",
"value": {
"parsed": [
{
"text": "A & B",
"time": 0,
"mode": 0,
"color": "#ff",
"userID": "user",
"rowID": 456
},
{
"text": "TOP",
"time": 2,
"mode": 2,
"color": "#ffffff",
"userID": "u",
"rowID": 789
}
],
"emptyIdentity": true,
"beforeDestroy": 2,
"rejection": "TypeError: NetworkError when attempting to fetch resource.",
"parserWorkers": [
{
"url": "blob:http://127.0.0.1:8084/0e1a4b70-2e0c-49f7-9add-520bbd682207",
"terminated": 1,
"replies": [
{
"danmus": [
{
"text": "A & B",
"time": 0,
"mode": 0,
"fontSize": 25,
"color": "#ff",
"timestamp": 123,
"pool": 0,
"userID": "user",
"rowID": 456,
"style": {}
},
{
"text": "TOP",
"time": 2,
"mode": 2,
"fontSize": 20,
"color": "#ffffff",
"timestamp": 124,
"pool": 0,
"userID": "u",
"rowID": 789,
"style": {}
}
],
"id": 1
}
]
},
{
"url": "blob:http://127.0.0.1:8084/25bf387c-656c-4888-a9f6-7a610cae8ed3",
"terminated": 1,
"replies": [
{
"danmus": [],
"id": 2
}
]
}
],
"urls": [
"blob:http://127.0.0.1:8084/5cb46999-5e14-490f-b25e-c04c10e5d875",
"blob:http://127.0.0.1:8084/0e1a4b70-2e0c-49f7-9add-520bbd682207",
"blob:http://127.0.0.1:8084/25bf387c-656c-4888-a9f6-7a610cae8ed3"
],
"revoked": [
"",
"blob:http://127.0.0.1:8084/0e1a4b70-2e0c-49f7-9add-520bbd682207",
"blob:http://127.0.0.1:8084/25bf387c-656c-4888-a9f6-7a610cae8ed3"
],
"workers": [
{
"url": "blob:http://127.0.0.1:8084/5cb46999-5e14-490f-b25e-c04c10e5d875",
"terminated": 1,
"replies": []
},
{
"url": "blob:http://127.0.0.1:8084/0e1a4b70-2e0c-49f7-9add-520bbd682207",
"terminated": 1,
"replies": [
{
"danmus": [
{
"text": "A & B",
"time": 0,
"mode": 0,
"fontSize": 25,
"color": "#ff",
"timestamp": 123,
"pool": 0,
"userID": "user",
"rowID": 456,
"style": {}
},
{
"text": "TOP",
"time": 2,
"mode": 2,
"fontSize": 20,
"color": "#ffffff",
"timestamp": 124,
"pool": 0,
"userID": "u",
"rowID": 789,
"style": {}
}
],
"id": 1
}
]
},
{
"url": "blob:http://127.0.0.1:8084/25bf387c-656c-4888-a9f6-7a610cae8ed3",
"terminated": 1,
"replies": [
{
"danmus": [],
"id": 2
}
]
}
],
"events": [
{
"name": "show"
},
{
"name": "config"
},
{
"name": "reset"
},
{
"name": "loaded",
"count": 0
},
{
"name": "loaded",
"count": 2
},
{
"name": "loaded",
"count": 2
},
{
"name": "error",
"error": "TypeError: NetworkError when attempting to fetch resource."
},
{
"name": "destroy"
}
]
}
}
]
},
{
"title": "Danmuku input replacement append and destruction (published)",
"browser": "firefox",
"durationMs": 552,
"observations": [
{
"name": "danmuku-native-input-ownership",
"value": {
"initialEvents": [
"show",
"config",
"reset",
"loaded"
],
"latestIdentity": true,
"oldIdentity": true,
"destroyedIdentity": true,
"queue": [
{
"text": "new",
"time": 0
},
{
"text": "append B",
"time": 0.5
},
{
"text": "append A",
"time": 0.5
}
],
"finalQueue": [
"new",
"append B",
"append A"
],
"loadedBefore": 4,
"loadedAfter": 4,
"events": [
{
"name": "show"
},
{
"name": "config"
},
{
"name": "reset"
},
{
"name": "loaded",
"count": 0
},
{
"name": "show"
},
{
"name": "config"
},
{
"name": "show"
},
{
"name": "config"
},
{
"name": "reset"
},
{
"name": "loaded",
"count": 1
},
{
"name": "loaded",
"count": 2
},
{
"name": "loaded",
"count": 3
},
{
"name": "destroy"
}
]
}
}
]
},
{
"title": "Danmuku config callback replacement and validation (published)",
"browser": "firefox",
"durationMs": 408,
"observations": [
{
"name": "danmuku-native-config",
"value": {
"unchangedIdentity": true,
"count": 2,
"unchangedCount": 2,
"unchangedOption": true,
"filterIdentity": true,
"error": "Error: [Type Error]: 'option.speed' require 'number' type, but got 'string'",
"receiver": [
true,
true
],
"emittedIdentity": true,
"input": {
"text": "included",
"time": 0,
"mode": 0,
"style": {},
"color": "#FFFFFF"
},
"queue": [
{
"text": "included",
"time": 0
}
]
}
}
]
},
{
"title": "Danmuku input native Worker startup failure falls back locally (candidate)",
"browser": "firefox",
"durationMs": 1752,
"observations": [
{
"name": "danmuku-native-worker-fault",
"value": {
"queue": [
{
"text": "FALLBACK",
"time": 0,
"mode": 1
}
],
"workers": [
{
"url": "blob:http://127.0.0.1:8084/d00430db-d3b1-4bcb-a041-7d0554b76ce8",
"terminated": 1,
"replies": []
}
],
"urls": [
"blob:http://127.0.0.1:8084/65175f63-b7fc-415c-9f72-ba55338aac70",
"blob:http://127.0.0.1:8084/d00430db-d3b1-4bcb-a041-7d0554b76ce8"
],
"revoked": [
"blob:http://127.0.0.1:8084/d00430db-d3b1-4bcb-a041-7d0554b76ce8",
"blob:http://127.0.0.1:8084/65175f63-b7fc-415c-9f72-ba55338aac70"
],
"errors": [],
"fault": "Test replaces only the newly created native parser Worker script with a thrown startup Error; fetch, fallback parser and error dispatch remain real."
}
}
]
},
{
"title": "Danmuku input native parser cleanup and rejected fetch (candidate)",
"browser": "firefox",
"durationMs": 658,
"observations": [
{
"name": "danmuku-native-parser",
"value": {
"parsed": [
{
"text": "A & B",
"time": 0,
"mode": 0,
"color": "#ff",
"userID": "user",
"rowID": 456
},
{
"text": "TOP",
"time": 2,
"mode": 2,
"color": "#ffffff",
"userID": "u",
"rowID": 789
}
],
"emptyIdentity": true,
"beforeDestroy": 2,
"rejection": "TypeError: NetworkError when attempting to fetch resource.",
"parserWorkers": [
{
"url": "blob:http://127.0.0.1:8084/b1995d9f-a22e-4e68-b273-dbb5b84651d6",
"terminated": 1,
"replies": [
{
"danmus": [
{
"text": "A & B",
"time": 0,
"mode": 0,
"fontSize": 25,
"color": "#ff",
"timestamp": 123,
"pool": 0,
"userID": "user",
"rowID": 456,
"style": {}
},
{
"text": "TOP",
"time": 2,
"mode": 2,
"fontSize": 20,
"color": "#ffffff",
"timestamp": 124,
"pool": 0,
"userID": "u",
"rowID": 789,
"style": {}
}
],
"id": 1
}
]
},
{
"url": "blob:http://127.0.0.1:8084/d0d3cf5c-6819-4a33-9b21-0b3b41487e3e",
"terminated": 1,
"replies": [
{
"danmus": [],
"id": 2
}
]
}
],
"urls": [
"blob:http://127.0.0.1:8084/5a8d289d-d317-4d3a-b997-d80366783341",
"blob:http://127.0.0.1:8084/b1995d9f-a22e-4e68-b273-dbb5b84651d6",
"blob:http://127.0.0.1:8084/d0d3cf5c-6819-4a33-9b21-0b3b41487e3e"
],
"revoked": [
"blob:http://127.0.0.1:8084/b1995d9f-a22e-4e68-b273-dbb5b84651d6",
"blob:http://127.0.0.1:8084/d0d3cf5c-6819-4a33-9b21-0b3b41487e3e"
],
"workers": [
{
"url": "blob:http://127.0.0.1:8084/5a8d289d-d317-4d3a-b997-d80366783341",
"terminated": 1,
"replies": []
},
{
"url": "blob:http://127.0.0.1:8084/b1995d9f-a22e-4e68-b273-dbb5b84651d6",
"terminated": 1,
"replies": [
{
"danmus": [
{
"text": "A & B",
"time": 0,
"mode": 0,
"fontSize": 25,
"color": "#ff",
"timestamp": 123,
"pool": 0,
"userID": "user",
"rowID": 456,
"style": {}
},
{
"text": "TOP",
"time": 2,
"mode": 2,
"fontSize": 20,
"color": "#ffffff",
"timestamp": 124,
"pool": 0,
"userID": "u",
"rowID": 789,
"style": {}
}
],
"id": 1
}
]
},
{
"url": "blob:http://127.0.0.1:8084/d0d3cf5c-6819-4a33-9b21-0b3b41487e3e",
"terminated": 1,
"replies": [
{
"danmus": [],
"id": 2
}
]
}
],
"events": [
{
"name": "show"
},
{
"name": "config"
},
{
"name": "reset"
},
{
"name": "loaded",
"count": 0
},
{
"name": "loaded",
"count": 2
},
{
"name": "loaded",
"count": 2
},
{
"name": "error",
"error": "TypeError: NetworkError when attempting to fetch resource."
},
{
"name": "destroy"
}
]
}
}
]
},
{
"title": "Danmuku input replacement append and destruction (candidate)",
"browser": "firefox",
"durationMs": 467,
"observations": [
{
"name": "danmuku-native-input-ownership",
"value": {
"initialEvents": [
"show",
"config",
"reset",
"loaded"
],
"latestIdentity": true,
"oldIdentity": true,
"destroyedIdentity": true,
"queue": [
{
"text": "new",
"time": 0
},
{
"text": "append B",
"time": 0.5
},
{
"text": "append A",
"time": 0.5
}
],
"finalQueue": [
"new",
"append B",
"append A"
],
"loadedBefore": 4,
"loadedAfter": 4,
"events": [
{
"name": "show"
},
{
"name": "config"
},
{
"name": "reset"
},
{
"name": "loaded",
"count": 0
},
{
"name": "show"
},
{
"name": "config"
},
{
"name": "show"
},
{
"name": "config"
},
{
"name": "reset"
},
{
"name": "loaded",
"count": 1
},
{
"name": "loaded",
"count": 2
},
{
"name": "loaded",
"count": 3
},
{
"name": "destroy"
}
]
}
}
]
},
{
"title": "Danmuku config callback replacement and validation (candidate)",
"browser": "firefox",
"durationMs": 535,
"observations": [
{
"name": "danmuku-native-config",
"value": {
"unchangedIdentity": true,
"count": 2,
"unchangedCount": 2,
"unchangedOption": true,
"filterIdentity": true,
"error": "Error: [Type Error]: 'option.speed' require 'number' type, but got 'string'",
"receiver": [
true,
true
],
"emittedIdentity": true,
"input": {
"text": "included",
"time": 0,
"mode": 0,
"style": {},
"color": "#FFFFFF"
},
"queue": [
{
"text": "included",
"time": 0
}
]
}
}
]
},
{
"title": "Danmuku input native Worker startup failure falls back locally (published)",
"browser": "webkit",
"durationMs": 1449,
"observations": [
{
"name": "danmuku-native-worker-fault",
"value": {
"queue": [
{
"text": "FALLBACK",
"time": 0,
"mode": 1
}
],
"workers": [
{
"url": "blob:http://127.0.0.1:8084/0f056ea9-2387-4279-a336-e15b4ced0da4",
"terminated": 1,
"replies": []
}
],
"urls": [
"blob:http://127.0.0.1:8084/ed39801d-c547-40f8-8a4b-e22768b0cc01",
"blob:http://127.0.0.1:8084/0f056ea9-2387-4279-a336-e15b4ced0da4"
],
"revoked": [
"",
"blob:http://127.0.0.1:8084/0f056ea9-2387-4279-a336-e15b4ced0da4",
"blob:http://127.0.0.1:8084/ed39801d-c547-40f8-8a4b-e22768b0cc01"
],
"errors": [],
"fault": "Test replaces only the newly created native parser Worker script with a thrown startup Error; fetch, fallback parser and error dispatch remain real."
}
}
]
},
{
"title": "Danmuku input native parser cleanup and rejected fetch (published)",
"browser": "webkit",
"durationMs": 1297,
"observations": [
{
"name": "danmuku-native-parser",
"value": {
"parsed": [
{
"text": "A & B",
"time": 0,
"mode": 0,
"color": "#ff",
"userID": "user",
"rowID": 456
},
{
"text": "TOP",
"time": 2,
"mode": 2,
"color": "#ffffff",
"userID": "u",
"rowID": 789
}
],
"emptyIdentity": true,
"beforeDestroy": 2,
"rejection": "TypeError: Load failed",
"parserWorkers": [
{
"url": "blob:http://127.0.0.1:8084/43bdb6e6-5475-4ed7-acb3-ce64492b4a74",
"terminated": 1,
"replies": [
{
"danmus": [
{
"text": "A & B",
"time": 0,
"mode": 0,
"fontSize": 25,
"color": "#ff",
"timestamp": 123,
"pool": 0,
"userID": "user",
"rowID": 456,
"style": {}
},
{
"text": "TOP",
"time": 2,
"mode": 2,
"fontSize": 20,
"color": "#ffffff",
"timestamp": 124,
"pool": 0,
"userID": "u",
"rowID": 789,
"style": {}
}
],
"id": 1
}
]
},
{
"url": "blob:http://127.0.0.1:8084/2f3f8431-76cf-4c0f-a21e-b0217c8031ba",
"terminated": 1,
"replies": [
{
"danmus": [],
"id": 2
}
]
}
],
"urls": [
"blob:http://127.0.0.1:8084/f1fef377-c61b-4afc-bf78-bd842a8960c7",
"blob:http://127.0.0.1:8084/43bdb6e6-5475-4ed7-acb3-ce64492b4a74",
"blob:http://127.0.0.1:8084/2f3f8431-76cf-4c0f-a21e-b0217c8031ba"
],
"revoked": [
"",
"blob:http://127.0.0.1:8084/43bdb6e6-5475-4ed7-acb3-ce64492b4a74",
"blob:http://127.0.0.1:8084/2f3f8431-76cf-4c0f-a21e-b0217c8031ba"
],
"workers": [
{
"url": "blob:http://127.0.0.1:8084/f1fef377-c61b-4afc-bf78-bd842a8960c7",
"terminated": 1,
"replies": []
},
{
"url": "blob:http://127.0.0.1:8084/43bdb6e6-5475-4ed7-acb3-ce64492b4a74",
"terminated": 1,
"replies": [
{
"danmus": [
{
"text": "A & B",
"time": 0,
"mode": 0,
"fontSize": 25,
"color": "#ff",
"timestamp": 123,
"pool": 0,
"userID": "user",
"rowID": 456,
"style": {}
},
{
"text": "TOP",
"time": 2,
"mode": 2,
"fontSize": 20,
"color": "#ffffff",
"timestamp": 124,
"pool": 0,
"userID": "u",
"rowID": 789,
"style": {}
}
],
"id": 1
}
]
},
{
"url": "blob:http://127.0.0.1:8084/2f3f8431-76cf-4c0f-a21e-b0217c8031ba",
"terminated": 1,
"replies": [
{
"danmus": [],
"id": 2
}
]
}
],
"events": [
{
"name": "show"
},
{
"name": "config"
},
{
"name": "reset"
},
{
"name": "loaded",
"count": 0
},
{
"name": "loaded",
"count": 2
},
{
"name": "loaded",
"count": 2
},
{
"name": "error",
"error": "TypeError: Load failed"
},
{
"name": "destroy"
}
]
}
}
]
},
{
"title": "Danmuku input replacement append and destruction (published)",
"browser": "webkit",
"durationMs": 1170,
"observations": [
{
"name": "danmuku-native-input-ownership",
"value": {
"initialEvents": [
"show",
"config",
"reset",
"loaded"
],
"latestIdentity": true,
"oldIdentity": true,
"destroyedIdentity": true,
"queue": [
{
"text": "new",
"time": 0
},
{
"text": "append B",
"time": 0.5
},
{
"text": "append A",
"time": 0.5
}
],
"finalQueue": [
"new",
"append B",
"append A"
],
"loadedBefore": 4,
"loadedAfter": 4,
"events": [
{
"name": "show"
},
{
"name": "config"
},
{
"name": "reset"
},
{
"name": "loaded",
"count": 0
},
{
"name": "show"
},
{
"name": "config"
},
{
"name": "show"
},
{
"name": "config"
},
{
"name": "reset"
},
{
"name": "loaded",
"count": 1
},
{
"name": "loaded",
"count": 2
},
{
"name": "loaded",
"count": 3
},
{
"name": "destroy"
}
]
}
}
]
},
{
"title": "Danmuku config callback replacement and validation (published)",
"browser": "webkit",
"durationMs": 1113,
"observations": [
{
"name": "danmuku-native-config",
"value": {
"unchangedIdentity": true,
"count": 2,
"unchangedCount": 2,
"unchangedOption": true,
"filterIdentity": true,
"error": "Error: [Type Error]: 'option.speed' require 'number' type, but got 'string'",
"receiver": [
true,
true
],
"emittedIdentity": true,
"input": {
"text": "included",
"time": 0,
"mode": 0,
"style": {},
"color": "#FFFFFF"
},
"queue": [
{
"text": "included",
"time": 0
}
]
}
}
]
},
{
"title": "Danmuku input native Worker startup failure falls back locally (candidate)",
"browser": "webkit",
"durationMs": 1419,
"observations": [
{
"name": "danmuku-native-worker-fault",
"value": {
"queue": [
{
"text": "FALLBACK",
"time": 0,
"mode": 1
}
],
"workers": [
{
"url": "blob:http://127.0.0.1:8084/c17e1bfa-09c5-45c8-be20-2d5cdbfc381d",
"terminated": 1,
"replies": []
}
],
"urls": [
"blob:http://127.0.0.1:8084/ae9b358f-40fc-431c-a805-2520205c1c1e",
"blob:http://127.0.0.1:8084/c17e1bfa-09c5-45c8-be20-2d5cdbfc381d"
],
"revoked": [
"blob:http://127.0.0.1:8084/c17e1bfa-09c5-45c8-be20-2d5cdbfc381d",
"blob:http://127.0.0.1:8084/ae9b358f-40fc-431c-a805-2520205c1c1e"
],
"errors": [],
"fault": "Test replaces only the newly created native parser Worker script with a thrown startup Error; fetch, fallback parser and error dispatch remain real."
}
}
]
},
{
"title": "Danmuku input native parser cleanup and rejected fetch (candidate)",
"browser": "webkit",
"durationMs": 1418,
"observations": [
{
"name": "danmuku-native-parser",
"value": {
"parsed": [
{
"text": "A & B",
"time": 0,
"mode": 0,
"color": "#ff",
"userID": "user",
"rowID": 456
},
{
"text": "TOP",
"time": 2,
"mode": 2,
"color": "#ffffff",
"userID": "u",
"rowID": 789
}
],
"emptyIdentity": true,
"beforeDestroy": 2,
"rejection": "TypeError: Load failed",
"parserWorkers": [
{
"url": "blob:http://127.0.0.1:8084/0bc3ccd1-3947-467e-9ced-a1f6c9254638",
"terminated": 1,
"replies": [
{
"danmus": [
{
"text": "A & B",
"time": 0,
"mode": 0,
"fontSize": 25,
"color": "#ff",
"timestamp": 123,
"pool": 0,
"userID": "user",
"rowID": 456,
"style": {}
},
{
"text": "TOP",
"time": 2,
"mode": 2,
"fontSize": 20,
"color": "#ffffff",
"timestamp": 124,
"pool": 0,
"userID": "u",
"rowID": 789,
"style": {}
}
],
"id": 1
}
]
},
{
"url": "blob:http://127.0.0.1:8084/d42f399a-e487-4471-914c-cca106eca47c",
"terminated": 1,
"replies": [
{
"danmus": [],
"id": 2
}
]
}
],
"urls": [
"blob:http://127.0.0.1:8084/b27d493a-4642-4f5d-9f11-7ad48a48b218",
"blob:http://127.0.0.1:8084/0bc3ccd1-3947-467e-9ced-a1f6c9254638",
"blob:http://127.0.0.1:8084/d42f399a-e487-4471-914c-cca106eca47c"
],
"revoked": [
"blob:http://127.0.0.1:8084/0bc3ccd1-3947-467e-9ced-a1f6c9254638",
"blob:http://127.0.0.1:8084/d42f399a-e487-4471-914c-cca106eca47c"
],
"workers": [
{
"url": "blob:http://127.0.0.1:8084/b27d493a-4642-4f5d-9f11-7ad48a48b218",
"terminated": 1,
"replies": []
},
{
"url": "blob:http://127.0.0.1:8084/0bc3ccd1-3947-467e-9ced-a1f6c9254638",
"terminated": 1,
"replies": [
{
"danmus": [
{
"text": "A & B",
"time": 0,
"mode": 0,
"fontSize": 25,
"color": "#ff",
"timestamp": 123,
"pool": 0,
"userID": "user",
"rowID": 456,
"style": {}
},
{
"text": "TOP",
"time": 2,
"mode": 2,
"fontSize": 20,
"color": "#ffffff",
"timestamp": 124,
"pool": 0,
"userID": "u",
"rowID": 789,
"style": {}
}
],
"id": 1
}
]
},
{
"url": "blob:http://127.0.0.1:8084/d42f399a-e487-4471-914c-cca106eca47c",
"terminated": 1,
"replies": [
{
"danmus": [],
"id": 2
}
]
}
],
"events": [
{
"name": "show"
},
{
"name": "config"
},
{
"name": "reset"
},
{
"name": "loaded",
"count": 0
},
{
"name": "loaded",
"count": 2
},
{
"name": "loaded",
"count": 2
},
{
"name": "error",
"error": "TypeError: Load failed"
},
{
"name": "destroy"
}
]
}
}
]
},
{
"title": "Danmuku input replacement append and destruction (candidate)",
"browser": "webkit",
"durationMs": 1084,
"observations": [
{
"name": "danmuku-native-input-ownership",
"value": {
"initialEvents": [
"show",
"config",
"reset",
"loaded"
],
"latestIdentity": true,
"oldIdentity": true,
"destroyedIdentity": true,
"queue": [
{
"text": "new",
"time": 0
},
{
"text": "append B",
"time": 0.5
},
{
"text": "append A",
"time": 0.5
}
],
"finalQueue": [
"new",
"append B",
"append A"
],
"loadedBefore": 4,
"loadedAfter": 4,
"events": [
{
"name": "show"
},
{
"name": "config"
},
{
"name": "reset"
},
{
"name": "loaded",
"count": 0
},
{
"name": "show"
},
{
"name": "config"
},
{
"name": "show"
},
{
"name": "config"
},
{
"name": "reset"
},
{
"name": "loaded",
"count": 1
},
{
"name": "loaded",
"count": 2
},
{
"name": "loaded",
"count": 3
},
{
"name": "destroy"
}
]
}
}
]
},
{
"title": "Danmuku config callback replacement and validation (candidate)",
"browser": "webkit",
"durationMs": 1102,
"observations": [
{
"name": "danmuku-native-config",
"value": {
"unchangedIdentity": true,
"count": 2,
"unchangedCount": 2,
"unchangedOption": true,
"filterIdentity": true,
"error": "Error: [Type Error]: 'option.speed' require 'number' type, but got 'string'",
"receiver": [
true,
true
],
"emittedIdentity": true,
"input": {
"text": "included",
"time": 0,
"mode": 0,
"style": {},
"color": "#FFFFFF"
},
"queue": [
{
"text": "included",
"time": 0
}
]
}
}
]
},
{
"title": "published: shared setting mount preserves the surviving instance and later user changes",
"browser": "chromium",
"durationMs": 291,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "published",
"scenario": "normal",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.js",
"sha256": "f60047d3ba6a47b7e4e65813e5c26bf7bebcc79addfbb36829d5bba0a57cfeba",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
},
{
"terminated": 1
}
],
"sends": [],
"messages": [],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "published: invalid setting mount rolls back plugin resources while preserving the original error",
"browser": "chromium",
"durationMs": 335,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "published",
"scenario": "normal",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.js",
"sha256": "f60047d3ba6a47b7e4e65813e5c26bf7bebcc79addfbb36829d5bba0a57cfeba",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
},
{
"terminated": 1
}
],
"sends": [],
"messages": [],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "published: destroy cancels pending setting send without clearing retained input or starting a lock",
"browser": "chromium",
"durationMs": 493,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "published",
"scenario": "pending",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.js",
"sha256": "f60047d3ba6a47b7e4e65813e5c26bf7bebcc79addfbb36829d5bba0a57cfeba",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
}
],
"sends": [
{
"index": 0,
"text": "PENDING",
"receiver": true
}
],
"messages": [],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "published: destroy clears active send timer and leaves another mounted instance usable",
"browser": "chromium",
"durationMs": 495,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "published",
"scenario": "normal",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.js",
"sha256": "f60047d3ba6a47b7e4e65813e5c26bf7bebcc79addfbb36829d5bba0a57cfeba",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
},
{
"terminated": 1
}
],
"sends": [
{
"index": 0,
"text": "LOCK",
"receiver": true
},
{
"index": 1,
"text": "SECOND",
"receiver": true
}
],
"messages": [],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "published: rejected setting callback retains input and original console error without an unhandled rejection",
"browser": "chromium",
"durationMs": 424,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "published",
"scenario": "reject",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.js",
"sha256": "f60047d3ba6a47b7e4e65813e5c26bf7bebcc79addfbb36829d5bba0a57cfeba",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
}
],
"sends": [
{
"index": 0,
"text": "REJECT",
"receiver": true
}
],
"messages": [],
"errors": [
[
"Error emitting danmuku:",
"controlled setting rejection"
]
],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "published: destroy false releases actual renderer nodes while retaining the player shell",
"browser": "chromium",
"durationMs": 443,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "published",
"scenario": "normal",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.js",
"sha256": "f60047d3ba6a47b7e4e65813e5c26bf7bebcc79addfbb36829d5bba0a57cfeba",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
}
],
"sends": [],
"messages": [
"VISIBLE"
],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "published: replacement load removes a moved renderer node and preserves unrelated body content",
"browser": "chromium",
"durationMs": 442,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "published",
"scenario": "normal",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.js",
"sha256": "f60047d3ba6a47b7e4e65813e5c26bf7bebcc79addfbb36829d5bba0a57cfeba",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
}
],
"sends": [],
"messages": [
"MOVED"
],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "published: narrow heatmap invalid sampling stays responsive and two instances have independent gradients",
"browser": "chromium",
"durationMs": 742,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "published",
"scenario": "heatmap",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.js",
"sha256": "f60047d3ba6a47b7e4e65813e5c26bf7bebcc79addfbb36829d5bba0a57cfeba",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-heatmap",
"value": {
"ids": [
"heatmap-solids",
"heatmap-solids-1"
],
"fills": [
"url(#heatmap-solids)",
"url(#heatmap-solids-1)"
],
"offsets": [
"25%",
"75%"
],
"validPaths": true
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
},
{
"terminated": 1
}
],
"sends": [],
"messages": [],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "candidate: shared setting mount preserves the surviving instance and later user changes",
"browser": "chromium",
"durationMs": 296,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "candidate",
"scenario": "normal",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.js",
"sha256": "f60047d3ba6a47b7e4e65813e5c26bf7bebcc79addfbb36829d5bba0a57cfeba",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
},
{
"terminated": 1
}
],
"sends": [],
"messages": [],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "candidate: invalid setting mount rolls back plugin resources while preserving the original error",
"browser": "chromium",
"durationMs": 335,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "candidate",
"scenario": "normal",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.js",
"sha256": "f60047d3ba6a47b7e4e65813e5c26bf7bebcc79addfbb36829d5bba0a57cfeba",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
},
{
"terminated": 1
}
],
"sends": [],
"messages": [],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "candidate: destroy cancels pending setting send without clearing retained input or starting a lock",
"browser": "chromium",
"durationMs": 392,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "candidate",
"scenario": "pending",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.js",
"sha256": "f60047d3ba6a47b7e4e65813e5c26bf7bebcc79addfbb36829d5bba0a57cfeba",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
}
],
"sends": [
{
"index": 0,
"text": "PENDING",
"receiver": true
}
],
"messages": [],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "candidate: destroy clears active send timer and leaves another mounted instance usable",
"browser": "chromium",
"durationMs": 596,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "candidate",
"scenario": "normal",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.js",
"sha256": "f60047d3ba6a47b7e4e65813e5c26bf7bebcc79addfbb36829d5bba0a57cfeba",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
},
{
"terminated": 1
}
],
"sends": [
{
"index": 0,
"text": "LOCK",
"receiver": true
},
{
"index": 1,
"text": "SECOND",
"receiver": true
}
],
"messages": [],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "candidate: rejected setting callback retains input and original console error without an unhandled rejection",
"browser": "chromium",
"durationMs": 402,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "candidate",
"scenario": "reject",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.js",
"sha256": "f60047d3ba6a47b7e4e65813e5c26bf7bebcc79addfbb36829d5bba0a57cfeba",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
}
],
"sends": [
{
"index": 0,
"text": "REJECT",
"receiver": true
}
],
"messages": [],
"errors": [
[
"Error emitting danmuku:",
"controlled setting rejection"
]
],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "candidate: destroy false releases actual renderer nodes while retaining the player shell",
"browser": "chromium",
"durationMs": 459,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "candidate",
"scenario": "normal",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.js",
"sha256": "f60047d3ba6a47b7e4e65813e5c26bf7bebcc79addfbb36829d5bba0a57cfeba",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
}
],
"sends": [],
"messages": [
"VISIBLE"
],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "candidate: replacement load removes a moved renderer node and preserves unrelated body content",
"browser": "chromium",
"durationMs": 462,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "candidate",
"scenario": "normal",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.js",
"sha256": "f60047d3ba6a47b7e4e65813e5c26bf7bebcc79addfbb36829d5bba0a57cfeba",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
}
],
"sends": [],
"messages": [
"MOVED"
],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "candidate: narrow heatmap invalid sampling stays responsive and two instances have independent gradients",
"browser": "chromium",
"durationMs": 470,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "candidate",
"scenario": "heatmap",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.js",
"sha256": "f60047d3ba6a47b7e4e65813e5c26bf7bebcc79addfbb36829d5bba0a57cfeba",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-heatmap",
"value": {
"ids": [
"heatmap-solids",
"heatmap-solids-1"
],
"fills": [
"url(#heatmap-solids)",
"url(#heatmap-solids-1)"
],
"offsets": [
"25%",
"75%"
],
"validPaths": true
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
},
{
"terminated": 1
}
],
"sends": [],
"messages": [],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "published: shared setting mount preserves the surviving instance and later user changes",
"browser": "firefox",
"durationMs": 435,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "published",
"scenario": "normal",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.js",
"sha256": "f60047d3ba6a47b7e4e65813e5c26bf7bebcc79addfbb36829d5bba0a57cfeba",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
},
{
"terminated": 1
}
],
"sends": [],
"messages": [],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "published: invalid setting mount rolls back plugin resources while preserving the original error",
"browser": "firefox",
"durationMs": 606,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "published",
"scenario": "normal",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.js",
"sha256": "f60047d3ba6a47b7e4e65813e5c26bf7bebcc79addfbb36829d5bba0a57cfeba",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
},
{
"terminated": 1
}
],
"sends": [],
"messages": [],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "published: destroy cancels pending setting send without clearing retained input or starting a lock",
"browser": "firefox",
"durationMs": 615,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "published",
"scenario": "pending",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.js",
"sha256": "f60047d3ba6a47b7e4e65813e5c26bf7bebcc79addfbb36829d5bba0a57cfeba",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
}
],
"sends": [
{
"index": 0,
"text": "PENDING",
"receiver": true
}
],
"messages": [],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "published: destroy clears active send timer and leaves another mounted instance usable",
"browser": "firefox",
"durationMs": 934,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "published",
"scenario": "normal",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.js",
"sha256": "f60047d3ba6a47b7e4e65813e5c26bf7bebcc79addfbb36829d5bba0a57cfeba",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
},
{
"terminated": 1
}
],
"sends": [
{
"index": 0,
"text": "LOCK",
"receiver": true
},
{
"index": 1,
"text": "SECOND",
"receiver": true
}
],
"messages": [],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "published: rejected setting callback retains input and original console error without an unhandled rejection",
"browser": "firefox",
"durationMs": 652,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "published",
"scenario": "reject",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.js",
"sha256": "f60047d3ba6a47b7e4e65813e5c26bf7bebcc79addfbb36829d5bba0a57cfeba",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
}
],
"sends": [
{
"index": 0,
"text": "REJECT",
"receiver": true
}
],
"messages": [],
"errors": [
[
"Error emitting danmuku:",
"controlled setting rejection"
]
],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "published: destroy false releases actual renderer nodes while retaining the player shell",
"browser": "firefox",
"durationMs": 1226,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "published",
"scenario": "normal",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.js",
"sha256": "f60047d3ba6a47b7e4e65813e5c26bf7bebcc79addfbb36829d5bba0a57cfeba",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
}
],
"sends": [],
"messages": [
"VISIBLE"
],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "published: replacement load removes a moved renderer node and preserves unrelated body content",
"browser": "firefox",
"durationMs": 641,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "published",
"scenario": "normal",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.js",
"sha256": "f60047d3ba6a47b7e4e65813e5c26bf7bebcc79addfbb36829d5bba0a57cfeba",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
}
],
"sends": [],
"messages": [
"MOVED"
],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "published: narrow heatmap invalid sampling stays responsive and two instances have independent gradients",
"browser": "firefox",
"durationMs": 689,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "published",
"scenario": "heatmap",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.js",
"sha256": "f60047d3ba6a47b7e4e65813e5c26bf7bebcc79addfbb36829d5bba0a57cfeba",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-heatmap",
"value": {
"ids": [
"heatmap-solids",
"heatmap-solids-1"
],
"fills": [
"url(#heatmap-solids)",
"url(#heatmap-solids-1)"
],
"offsets": [
"25%",
"75%"
],
"validPaths": true
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
},
{
"terminated": 1
}
],
"sends": [],
"messages": [],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "candidate: shared setting mount preserves the surviving instance and later user changes",
"browser": "firefox",
"durationMs": 453,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "candidate",
"scenario": "normal",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.js",
"sha256": "f60047d3ba6a47b7e4e65813e5c26bf7bebcc79addfbb36829d5bba0a57cfeba",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
},
{
"terminated": 1
}
],
"sends": [],
"messages": [],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "candidate: invalid setting mount rolls back plugin resources while preserving the original error",
"browser": "firefox",
"durationMs": 517,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "candidate",
"scenario": "normal",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.js",
"sha256": "f60047d3ba6a47b7e4e65813e5c26bf7bebcc79addfbb36829d5bba0a57cfeba",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
},
{
"terminated": 1
}
],
"sends": [],
"messages": [],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "candidate: destroy cancels pending setting send without clearing retained input or starting a lock",
"browser": "firefox",
"durationMs": 644,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "candidate",
"scenario": "pending",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.js",
"sha256": "f60047d3ba6a47b7e4e65813e5c26bf7bebcc79addfbb36829d5bba0a57cfeba",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
}
],
"sends": [
{
"index": 0,
"text": "PENDING",
"receiver": true
}
],
"messages": [],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "candidate: destroy clears active send timer and leaves another mounted instance usable",
"browser": "firefox",
"durationMs": 834,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "candidate",
"scenario": "normal",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.js",
"sha256": "f60047d3ba6a47b7e4e65813e5c26bf7bebcc79addfbb36829d5bba0a57cfeba",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
},
{
"terminated": 1
}
],
"sends": [
{
"index": 0,
"text": "LOCK",
"receiver": true
},
{
"index": 1,
"text": "SECOND",
"receiver": true
}
],
"messages": [],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "candidate: rejected setting callback retains input and original console error without an unhandled rejection",
"browser": "firefox",
"durationMs": 542,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "candidate",
"scenario": "reject",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.js",
"sha256": "f60047d3ba6a47b7e4e65813e5c26bf7bebcc79addfbb36829d5bba0a57cfeba",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
}
],
"sends": [
{
"index": 0,
"text": "REJECT",
"receiver": true
}
],
"messages": [],
"errors": [
[
"Error emitting danmuku:",
"controlled setting rejection"
]
],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "candidate: destroy false releases actual renderer nodes while retaining the player shell",
"browser": "firefox",
"durationMs": 1247,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "candidate",
"scenario": "normal",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.js",
"sha256": "f60047d3ba6a47b7e4e65813e5c26bf7bebcc79addfbb36829d5bba0a57cfeba",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
}
],
"sends": [],
"messages": [
"VISIBLE"
],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "candidate: replacement load removes a moved renderer node and preserves unrelated body content",
"browser": "firefox",
"durationMs": 601,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "candidate",
"scenario": "normal",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.js",
"sha256": "f60047d3ba6a47b7e4e65813e5c26bf7bebcc79addfbb36829d5bba0a57cfeba",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
}
],
"sends": [],
"messages": [
"MOVED"
],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "candidate: narrow heatmap invalid sampling stays responsive and two instances have independent gradients",
"browser": "firefox",
"durationMs": 612,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "candidate",
"scenario": "heatmap",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.js",
"sha256": "f60047d3ba6a47b7e4e65813e5c26bf7bebcc79addfbb36829d5bba0a57cfeba",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-heatmap",
"value": {
"ids": [
"heatmap-solids",
"heatmap-solids-1"
],
"fills": [
"url(#heatmap-solids)",
"url(#heatmap-solids-1)"
],
"offsets": [
"25%",
"75%"
],
"validPaths": true
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
},
{
"terminated": 1
}
],
"sends": [],
"messages": [],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "published: shared setting mount preserves the surviving instance and later user changes",
"browser": "webkit",
"durationMs": 1478,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "published",
"scenario": "normal",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.js",
"sha256": "f60047d3ba6a47b7e4e65813e5c26bf7bebcc79addfbb36829d5bba0a57cfeba",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
},
{
"terminated": 1
}
],
"sends": [],
"messages": [],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "published: invalid setting mount rolls back plugin resources while preserving the original error",
"browser": "webkit",
"durationMs": 1873,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "published",
"scenario": "normal",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.js",
"sha256": "f60047d3ba6a47b7e4e65813e5c26bf7bebcc79addfbb36829d5bba0a57cfeba",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
},
{
"terminated": 1
}
],
"sends": [],
"messages": [],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "published: destroy cancels pending setting send without clearing retained input or starting a lock",
"browser": "webkit",
"durationMs": 1860,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "published",
"scenario": "pending",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.js",
"sha256": "f60047d3ba6a47b7e4e65813e5c26bf7bebcc79addfbb36829d5bba0a57cfeba",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
}
],
"sends": [
{
"index": 0,
"text": "PENDING",
"receiver": true
}
],
"messages": [],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "published: destroy clears active send timer and leaves another mounted instance usable",
"browser": "webkit",
"durationMs": 2784,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "published",
"scenario": "normal",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.js",
"sha256": "f60047d3ba6a47b7e4e65813e5c26bf7bebcc79addfbb36829d5bba0a57cfeba",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
},
{
"terminated": 1
}
],
"sends": [
{
"index": 0,
"text": "LOCK",
"receiver": true
},
{
"index": 1,
"text": "SECOND",
"receiver": true
}
],
"messages": [],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "published: rejected setting callback retains input and original console error without an unhandled rejection",
"browser": "webkit",
"durationMs": 1865,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "published",
"scenario": "reject",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.js",
"sha256": "f60047d3ba6a47b7e4e65813e5c26bf7bebcc79addfbb36829d5bba0a57cfeba",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
}
],
"sends": [
{
"index": 0,
"text": "REJECT",
"receiver": true
}
],
"messages": [],
"errors": [
[
"Error emitting danmuku:",
"controlled setting rejection"
]
],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "published: destroy false releases actual renderer nodes while retaining the player shell",
"browser": "webkit",
"durationMs": 1764,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "published",
"scenario": "normal",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.js",
"sha256": "f60047d3ba6a47b7e4e65813e5c26bf7bebcc79addfbb36829d5bba0a57cfeba",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
}
],
"sends": [],
"messages": [
"VISIBLE"
],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "published: replacement load removes a moved renderer node and preserves unrelated body content",
"browser": "webkit",
"durationMs": 1797,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "published",
"scenario": "normal",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.js",
"sha256": "f60047d3ba6a47b7e4e65813e5c26bf7bebcc79addfbb36829d5bba0a57cfeba",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
}
],
"sends": [],
"messages": [
"MOVED"
],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "published: narrow heatmap invalid sampling stays responsive and two instances have independent gradients",
"browser": "webkit",
"durationMs": 1867,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "published",
"scenario": "heatmap",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.js",
"sha256": "f60047d3ba6a47b7e4e65813e5c26bf7bebcc79addfbb36829d5bba0a57cfeba",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-heatmap",
"value": {
"ids": [
"heatmap-solids",
"heatmap-solids-1"
],
"fills": [
"url(#heatmap-solids)",
"url(#heatmap-solids-1)"
],
"offsets": [
"25%",
"75%"
],
"validPaths": true
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
},
{
"terminated": 1
}
],
"sends": [],
"messages": [],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "candidate: shared setting mount preserves the surviving instance and later user changes",
"browser": "webkit",
"durationMs": 1507,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "candidate",
"scenario": "normal",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.js",
"sha256": "f60047d3ba6a47b7e4e65813e5c26bf7bebcc79addfbb36829d5bba0a57cfeba",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
},
{
"terminated": 1
}
],
"sends": [],
"messages": [],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "candidate: invalid setting mount rolls back plugin resources while preserving the original error",
"browser": "webkit",
"durationMs": 1586,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "candidate",
"scenario": "normal",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.js",
"sha256": "f60047d3ba6a47b7e4e65813e5c26bf7bebcc79addfbb36829d5bba0a57cfeba",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
},
{
"terminated": 1
}
],
"sends": [],
"messages": [],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "candidate: destroy cancels pending setting send without clearing retained input or starting a lock",
"browser": "webkit",
"durationMs": 2069,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "candidate",
"scenario": "pending",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.js",
"sha256": "f60047d3ba6a47b7e4e65813e5c26bf7bebcc79addfbb36829d5bba0a57cfeba",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
}
],
"sends": [
{
"index": 0,
"text": "PENDING",
"receiver": true
}
],
"messages": [],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "candidate: destroy clears active send timer and leaves another mounted instance usable",
"browser": "webkit",
"durationMs": 2572,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "candidate",
"scenario": "normal",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.js",
"sha256": "f60047d3ba6a47b7e4e65813e5c26bf7bebcc79addfbb36829d5bba0a57cfeba",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
},
{
"terminated": 1
}
],
"sends": [
{
"index": 0,
"text": "LOCK",
"receiver": true
},
{
"index": 1,
"text": "SECOND",
"receiver": true
}
],
"messages": [],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "candidate: rejected setting callback retains input and original console error without an unhandled rejection",
"browser": "webkit",
"durationMs": 1799,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "candidate",
"scenario": "reject",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.js",
"sha256": "f60047d3ba6a47b7e4e65813e5c26bf7bebcc79addfbb36829d5bba0a57cfeba",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
}
],
"sends": [
{
"index": 0,
"text": "REJECT",
"receiver": true
}
],
"messages": [],
"errors": [
[
"Error emitting danmuku:",
"controlled setting rejection"
]
],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "candidate: destroy false releases actual renderer nodes while retaining the player shell",
"browser": "webkit",
"durationMs": 1742,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "candidate",
"scenario": "normal",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.js",
"sha256": "f60047d3ba6a47b7e4e65813e5c26bf7bebcc79addfbb36829d5bba0a57cfeba",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
}
],
"sends": [],
"messages": [
"VISIBLE"
],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "candidate: replacement load removes a moved renderer node and preserves unrelated body content",
"browser": "webkit",
"durationMs": 1748,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "candidate",
"scenario": "normal",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.js",
"sha256": "f60047d3ba6a47b7e4e65813e5c26bf7bebcc79addfbb36829d5bba0a57cfeba",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
}
],
"sends": [],
"messages": [
"MOVED"
],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "candidate: narrow heatmap invalid sampling stays responsive and two instances have independent gradients",
"browser": "webkit",
"durationMs": 1956,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "candidate",
"scenario": "heatmap",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.js",
"sha256": "f60047d3ba6a47b7e4e65813e5c26bf7bebcc79addfbb36829d5bba0a57cfeba",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-heatmap",
"value": {
"ids": [
"heatmap-solids",
"heatmap-solids-1"
],
"fills": [
"url(#heatmap-solids)",
"url(#heatmap-solids-1)"
],
"offsets": [
"25%",
"75%"
],
"validPaths": true
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
},
{
"terminated": 1
}
],
"sends": [],
"messages": [],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "published / Candidate Danmuku candidate: accepted NaN timestamp keeps the historical current-time fallback",
"browser": "chromium",
"durationMs": 2517,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "published",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.js",
"sha256": "f60047d3ba6a47b7e4e65813e5c26bf7bebcc79addfbb36829d5bba0a57cfeba",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-numeric-compatibility",
"value": {
"expected": 0.5,
"inputTime": 0.5,
"queueTime": 0.5,
"isNaN": false
}
}
]
},
{
"title": "published / Candidate Danmuku candidate: failed recovery respects synchronous destroy from the error listener",
"browser": "chromium",
"durationMs": 441,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "published",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.js",
"sha256": "f60047d3ba6a47b7e4e65813e5c26bf7bebcc79addfbb36829d5bba0a57cfeba",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-recovery-reentry",
"value": {
"action": "destroy",
"sameOwner": true,
"rowState": "stop",
"isStop": true,
"isDestroy": true,
"events": [
{
"index": 0,
"event": "error",
"time": 0.118284
},
{
"index": 0,
"event": "stop",
"time": 0
},
{
"index": 0,
"event": "destroy",
"time": 0
}
],
"workers": [
{
"url": "blob:http://127.0.0.1:8084/e14dbf56-4dbe-45b3-b3e6-27854614d867",
"requests": [
{
"type": "getDanmuTop",
"target": {
"mode": 1,
"height": 23,
"speed": 90
},
"visibles": [],
"antiOverlap": true,
"clientWidth": 640,
"clientHeight": 360,
"marginBottom": 10,
"marginTop": 10,
"id": 1
}
],
"replies": [
{
"id": 1,
"result": 10
}
],
"terminated": 1,
"errors": [
"controlled track failure"
]
}
],
"fault": "Actual video/DOM/track Worker; dispatch an explicit native ErrorEvent and inject a throwing createWorker recovery seam. This does not claim a real CSP or browser Worker construction failure."
}
}
]
},
{
"title": "published / Candidate Danmuku candidate: failed recovery respects synchronous stop from the error listener",
"browser": "chromium",
"durationMs": 461,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "published",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.js",
"sha256": "f60047d3ba6a47b7e4e65813e5c26bf7bebcc79addfbb36829d5bba0a57cfeba",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-recovery-reentry",
"value": {
"action": "stop",
"sameOwner": true,
"rowState": "stop",
"isStop": true,
"isDestroy": false,
"events": [
{
"index": 0,
"event": "error",
"time": 0.120462
},
{
"index": 0,
"event": "stop",
"time": 0.120462
}
],
"workers": [
{
"url": "blob:http://127.0.0.1:8084/c44cbe14-b220-4937-9b49-99118e7d1ae6",
"requests": [
{
"type": "getDanmuTop",
"target": {
"mode": 1,
"height": 23,
"speed": 90
},
"visibles": [],
"antiOverlap": true,
"clientWidth": 640,
"clientHeight": 360,
"marginBottom": 10,
"marginTop": 10,
"id": 1
}
],
"replies": [
{
"id": 1,
"result": 10
}
],
"terminated": 1,
"errors": [
"controlled track failure"
]
}
],
"fault": "Actual video/DOM/track Worker; dispatch an explicit native ErrorEvent and inject a throwing createWorker recovery seam. This does not claim a real CSP or browser Worker construction failure."
}
}
]
},
{
"title": "published / Candidate Danmuku candidate: native pause cancels pending visibility without blocking later work",
"browser": "chromium",
"durationMs": 2607,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "published",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.js",
"sha256": "f60047d3ba6a47b7e4e65813e5c26bf7bebcc79addfbb36829d5bba0a57cfeba",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-cancel",
"value": {
"action": "pause",
"before": {
"requests": [
1
],
"visible": [
"fresh-after-cancel"
]
},
"after": [
"fresh-after-cancel"
],
"cancelledSource": "An unresolved user beforeVisible Promise; native RAF, Worker and media remain active."
}
}
]
},
{
"title": "published / Candidate Danmuku candidate: native reset cancels pending visibility without blocking later work",
"browser": "chromium",
"durationMs": 2425,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "published",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.js",
"sha256": "f60047d3ba6a47b7e4e65813e5c26bf7bebcc79addfbb36829d5bba0a57cfeba",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-cancel",
"value": {
"action": "reset",
"before": {
"requests": [
1
],
"visible": [
"fresh-after-cancel"
]
},
"after": [
"fresh-after-cancel"
],
"cancelledSource": "An unresolved user beforeVisible Promise; native RAF, Worker and media remain active."
}
}
]
},
{
"title": "published / Candidate Danmuku candidate: native seek cancels pending visibility without blocking later work",
"browser": "chromium",
"durationMs": 2426,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "published",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.js",
"sha256": "f60047d3ba6a47b7e4e65813e5c26bf7bebcc79addfbb36829d5bba0a57cfeba",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-cancel",
"value": {
"action": "seek",
"before": {
"requests": [
1
],
"visible": [
"fresh-after-cancel"
]
},
"after": [
"fresh-after-cancel"
],
"cancelledSource": "An unresolved user beforeVisible Promise; native RAF, Worker and media remain active."
}
}
]
},
{
"title": "published / Candidate Danmuku candidate: native destroy cancels pending visibility without blocking later work",
"browser": "chromium",
"durationMs": 2291,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "published",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.js",
"sha256": "f60047d3ba6a47b7e4e65813e5c26bf7bebcc79addfbb36829d5bba0a57cfeba",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-cancel",
"value": {
"action": "destroy",
"before": {
"requests": [
0
],
"visible": []
},
"after": [],
"cancelledSource": "An unresolved user beforeVisible Promise; native RAF, Worker and media remain active."
}
}
]
},
{
"title": "published / Candidate Danmuku candidate: native Worker renders three modes with synchronous filter and asynchronous beforeVisible",
"browser": "chromium",
"durationMs": 1295,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "published",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.js",
"sha256": "f60047d3ba6a47b7e4e65813e5c26bf7bebcc79addfbb36829d5bba0a57cfeba",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
}
]
},
{
"title": "published / Candidate Danmuku candidate: six simultaneous fixed comments preserve usable track geometry and input order",
"browser": "chromium",
"durationMs": 1507,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "published",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.js",
"sha256": "f60047d3ba6a47b7e4e65813e5c26bf7bebcc79addfbb36829d5bba0a57cfeba",
"media": "/test/pattern.mp4",
"scenario": "density",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-dense-tracks",
"value": [
{
"id": "dense-0",
"mode": "1",
"state": "stop",
"text": "TRACK 0",
"x": 285,
"y": 10,
"width": 70,
"height": 22.5,
"visibility": "visible",
"display": "block",
"transition": "",
"opacity": "1"
},
{
"id": "dense-1",
"mode": "1",
"state": "stop",
"text": "TRACK 1",
"x": 285,
"y": 33,
"width": 70,
"height": 22.5,
"visibility": "visible",
"display": "block",
"transition": "",
"opacity": "1"
},
{
"id": "dense-2",
"mode": "1",
"state": "stop",
"text": "TRACK 2",
"x": 285,
"y": 56,
"width": 70,
"height": 22.5,
"visibility": "visible",
"display": "block",
"transition": "",
"opacity": "1"
},
{
"id": "dense-3",
"mode": "1",
"state": "stop",
"text": "TRACK 3",
"x": 285,
"y": 79,
"width": 70,
"height": 22.5,
"visibility": "visible",
"display": "block",
"transition": "",
"opacity": "1"
},
{
"id": "dense-4",
"mode": "1",
"state": "stop",
"text": "TRACK 4",
"x": 285,
"y": 102,
"width": 70,
"height": 22.5,
"visibility": "visible",
"display": "block",
"transition": "",
"opacity": "1"
},
{
"id": "dense-5",
"mode": "1",
"state": "stop",
"text": "TRACK 5",
"x": 285,
"y": 125,
"width": 70,
"height": 22.5,
"visibility": "visible",
"display": "block",
"transition": "",
"opacity": "1"
}
]
}
]
},
{
"title": "published / Candidate Danmuku candidate: native pause seek rate and public reset/load retain historical pool semantics",
"browser": "chromium",
"durationMs": 2312,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "published",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.js",
"sha256": "f60047d3ba6a47b7e4e65813e5c26bf7bebcc79addfbb36829d5bba0a57cfeba",
"media": "/test/pattern.mp4",
"scenario": "playback",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-pool-and-rate",
"value": {
"frozen": {
"left": 602.7962036132812,
"next": 602.7962036132812,
"state": "stop"
},
"reused": {
"poolReused": true,
"visibleSameNode": true,
"original": {
"id": "reused",
"state": "emit",
"visibility": "visible",
"text": "REUSED"
},
"extraNodes": [],
"transition": "4s",
"rate": 2
},
"loadWithoutArgument": "replaces from original empty option; explicit array load appends"
}
},
{
"name": "danmuku-native-eligibility",
"value": [
{
"wall": 203.70000004768372,
"before": 0.028186,
"after": 0.028186,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 219.80000001192093,
"before": 0.044422,
"after": 0.044422,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 235.9000000357628,
"before": 0.060497,
"after": 0.060497,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 252.9000000357628,
"before": 0.077532,
"after": 0.077532,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 270.4000000357628,
"before": 0.094935,
"after": 0.094935,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 286.30000001192093,
"before": 0.110966,
"after": 0.110966,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 302.30000001192093,
"before": 0.126972,
"after": 0.126972,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 319.2000000476837,
"before": 0.143854,
"after": 0.143854,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 336.60000002384186,
"before": 0.161221,
"after": 0.161221,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 352.9000000357628,
"before": 0.177506,
"after": 0.177506,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 369.30000001192093,
"before": 0.193909,
"after": 0.193909,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 385.9000000357628,
"before": 0.210524,
"after": 0.210524,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 402.5,
"before": 0.227205,
"after": 0.227205,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 419.7000000476837,
"before": 0.244326,
"after": 0.244326,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 436.80000001192093,
"before": 0.261439,
"after": 0.261439,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 453.5,
"before": 0.278064,
"after": 0.278064,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 469.10000002384186,
"before": 0.293735,
"after": 0.293735,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 487.4000000357628,
"before": 0.312015,
"after": 0.312015,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 502.9000000357628,
"before": 0.327499,
"after": 0.327499,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 519.2000000476837,
"before": 0.343779,
"after": 0.343779,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 535.8000000119209,
"before": 0.360446,
"after": 0.360446,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 552.5,
"before": 0.377149,
"after": 0.377149,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 569.1000000238419,
"before": 0.393737,
"after": 0.393737,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 585.7000000476837,
"before": 0.410325,
"after": 0.410325,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [
"moving"
],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 603.8000000119209,
"before": 0.428428,
"after": 0.428428,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 619.2000000476837,
"before": 0.443871,
"after": 0.443871,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 636.2000000476837,
"before": 0.460682,
"after": 0.460682,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 652.7000000476837,
"before": 0.477322,
"after": 0.477322,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 669.6000000238419,
"before": 0.494284,
"after": 0.494284,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 686,
"before": 0.510662,
"after": 0.510662,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 702.9000000357628,
"before": 0.527608,
"after": 0.527608,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 719.7000000476837,
"before": 0.544327,
"after": 0.544327,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 736.2000000476837,
"before": 0.560827,
"after": 0.560827,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 752.6000000238419,
"before": 0.577186,
"after": 0.577186,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 768.9000000357628,
"before": 0.593517,
"after": 0.593517,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 785.9000000357628,
"before": 0.61053,
"after": 0.61053,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 803,
"before": 0.627671,
"after": 0.627671,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 819.1000000238419,
"before": 0.643754,
"after": 0.643754,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 837.3000000119209,
"before": 0.661949,
"after": 0.661949,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 853.1000000238419,
"before": 0.677737,
"after": 0.677737,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 869.9000000357628,
"before": 0.694547,
"after": 0.694547,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 885.8000000119209,
"before": 0.710434,
"after": 0.710434,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 902.9000000357628,
"before": 0.727583,
"after": 0.727583,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 919.8000000119209,
"before": 0.744406,
"after": 0.744406,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 937.3000000119209,
"before": 0.761899,
"after": 0.761899,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 952.6000000238419,
"before": 0.777291,
"after": 0.777291,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 969,
"before": 0.793578,
"after": 0.793578,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 987,
"before": 0.81165,
"after": 0.81165,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1002.9000000357628,
"before": 0.827557,
"after": 0.827557,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1019.7000000476837,
"before": 0.844343,
"after": 0.844343,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1036.6000000238419,
"before": 0.861208,
"after": 0.861208,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1052.6000000238419,
"before": 0.877284,
"after": 0.877284,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1069.5,
"before": 0.894034,
"after": 0.894034,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1086,
"before": 0.910621,
"after": 0.910621,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1103.1000000238419,
"before": 0.927793,
"after": 0.927793,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1336.9000000357628,
"before": 2.059276,
"after": 2.059276,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1352.800000011921,
"before": 2.091068,
"after": 2.091068,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1369.2000000476837,
"before": 2.123972,
"after": 2.123972,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1386.5,
"before": 2.158532,
"after": 2.158532,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1403.4000000357628,
"before": 2.19226,
"after": 2.19226,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1419.4000000357628,
"before": 2.224356,
"after": 2.224356,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1435.6000000238419,
"before": 2.2568,
"after": 2.2568,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1452.800000011921,
"before": 2.291198,
"after": 2.291198,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1469.2000000476837,
"before": 2.324082,
"after": 2.324082,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1486.2000000476837,
"before": 2.35805,
"after": 2.35805,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1502.2000000476837,
"before": 2.390046,
"after": 2.390046,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1519.800000011921,
"before": 2.425246,
"after": 2.425246,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [
"reused"
],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1536.6000000238419,
"before": 2.45879,
"after": 2.45879,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1552.6000000238419,
"before": 2.490734,
"after": 2.490734,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1569,
"before": 2.523588,
"after": 2.523588,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1586.300000011921,
"before": 2.558188,
"after": 2.558188,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1602.4000000357628,
"before": 2.590386,
"after": 2.590386,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1618.800000011921,
"before": 2.62332,
"after": 2.62332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1636.1000000238419,
"before": 2.657878,
"after": 2.657878,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1653,
"before": 2.6914,
"after": 2.6914,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1669.6000000238419,
"before": 2.724776,
"after": 2.724776,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1685.9000000357628,
"before": 2.757178,
"after": 2.757178,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1702.2000000476837,
"before": 2.789946,
"after": 2.789946,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.2678,
"state": "wait"
}
]
},
{
"wall": 1719.9000000357628,
"before": 2.825314,
"after": 2.825314,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.2678,
"state": "wait"
}
]
},
{
"wall": 1736.2000000476837,
"before": 2.857972,
"after": 2.857972,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.2678,
"state": "wait"
}
]
},
{
"wall": 1753.4000000357628,
"before": 2.892254,
"after": 2.892254,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.2678,
"state": "wait"
}
]
},
{
"wall": 1768.9000000357628,
"before": 2.92338,
"after": 2.92338,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.2678,
"state": "wait"
}
]
},
{
"wall": 1785.800000011921,
"before": 2.957332,
"after": 2.957332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.2678,
"state": "wait"
}
]
},
{
"wall": 1802.9000000357628,
"before": 2.99132,
"after": 2.99132,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.2678,
"state": "wait"
}
]
},
{
"wall": 1819.1000000238419,
"before": 3.023614,
"after": 3.023614,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.2678,
"state": "wait"
}
]
},
{
"wall": 1835.6000000238419,
"before": 3.056734,
"after": 3.056734,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.2678,
"state": "wait"
}
]
},
{
"wall": 1852.4000000357628,
"before": 3.090308,
"after": 3.090308,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.2678,
"state": "wait"
}
]
},
{
"wall": 1869.4000000357628,
"before": 3.12439,
"after": 3.12439,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.2678,
"state": "wait"
}
]
},
{
"wall": 1885.800000011921,
"before": 3.15711,
"after": 3.15711,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.2678,
"state": "wait"
}
]
},
{
"wall": 1903.5,
"before": 3.192506,
"after": 3.192506,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [
"appended"
],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.2678,
"state": "wait"
}
]
},
{
"wall": 1920.300000011921,
"before": 3.226266,
"after": 3.226266,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.2678,
"state": "emit"
}
]
},
{
"wall": 1936.5,
"before": 3.258534,
"after": 3.258534,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.2678,
"state": "emit"
}
]
},
{
"wall": 1953,
"before": 3.291564,
"after": 3.291564,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.2678,
"state": "emit"
}
]
},
{
"wall": 1969.300000011921,
"before": 3.32412,
"after": 3.32412,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.2678,
"state": "emit"
}
]
},
{
"wall": 1985.9000000357628,
"before": 3.357342,
"after": 3.357342,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.2678,
"state": "emit"
}
]
},
{
"wall": 2003.1000000238419,
"before": 3.3918,
"after": 3.3918,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.2678,
"state": "emit"
}
]
},
{
"wall": 2019.1000000238419,
"before": 3.423832,
"after": 3.423832,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.2678,
"state": "emit"
}
]
},
{
"wall": 2036.1000000238419,
"before": 3.45775,
"after": 3.45775,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.2678,
"state": "emit"
}
]
},
{
"wall": 2052.300000011921,
"before": 3.49008,
"after": 3.49008,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.2678,
"state": "emit"
}
]
},
{
"wall": 2069.2000000476837,
"before": 3.524058,
"after": 3.524058,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.2678,
"state": "emit"
}
]
},
{
"wall": 2086.800000011921,
"before": 3.55918,
"after": 3.55918,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.2678,
"state": "emit"
}
]
},
{
"wall": 2102.5,
"before": 3.590568,
"after": 3.590568,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.2678,
"state": "emit"
}
]
}
]
}
]
},
{
"title": "published / Candidate Danmuku candidate: actual settings, asynchronous send lock, external fullscreen mount and two-player destruction",
"browser": "chromium",
"durationMs": 3994,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "published",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.js",
"sha256": "f60047d3ba6a47b7e4e65813e5c26bf7bebcc79addfbb36829d5bba0a57cfeba",
"media": "/test/pattern.mp4",
"scenario": "settings",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
}
]
},
{
"title": "candidate / Candidate Danmuku candidate: accepted NaN timestamp keeps the historical current-time fallback",
"browser": "chromium",
"durationMs": 2372,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "candidate",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.js",
"sha256": "f60047d3ba6a47b7e4e65813e5c26bf7bebcc79addfbb36829d5bba0a57cfeba",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-numeric-compatibility",
"value": {
"expected": 0.5,
"inputTime": 0.5,
"queueTime": 0.5,
"isNaN": false
}
}
]
},
{
"title": "candidate / Candidate Danmuku candidate: failed recovery respects synchronous destroy from the error listener",
"browser": "chromium",
"durationMs": 463,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "candidate",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.js",
"sha256": "f60047d3ba6a47b7e4e65813e5c26bf7bebcc79addfbb36829d5bba0a57cfeba",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-recovery-reentry",
"value": {
"action": "destroy",
"sameOwner": true,
"rowState": "stop",
"isStop": true,
"isDestroy": true,
"events": [
{
"index": 0,
"event": "error",
"time": 0.126499
},
{
"index": 0,
"event": "stop",
"time": 0
},
{
"index": 0,
"event": "destroy",
"time": 0
}
],
"workers": [
{
"url": "blob:http://127.0.0.1:8084/40d92210-3cea-4227-92b0-60af4baf0538",
"requests": [
{
"type": "getDanmuTop",
"target": {
"mode": 1,
"height": 23,
"speed": 90
},
"visibles": [],
"antiOverlap": true,
"clientWidth": 640,
"clientHeight": 360,
"marginBottom": 10,
"marginTop": 10,
"id": 1
}
],
"replies": [
{
"id": 1,
"result": 10
}
],
"terminated": 1,
"errors": [
"controlled track failure"
]
}
],
"fault": "Actual video/DOM/track Worker; dispatch an explicit native ErrorEvent and inject a throwing createWorker recovery seam. This does not claim a real CSP or browser Worker construction failure."
}
}
]
},
{
"title": "candidate / Candidate Danmuku candidate: failed recovery respects synchronous stop from the error listener",
"browser": "chromium",
"durationMs": 591,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "candidate",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.js",
"sha256": "f60047d3ba6a47b7e4e65813e5c26bf7bebcc79addfbb36829d5bba0a57cfeba",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-recovery-reentry",
"value": {
"action": "stop",
"sameOwner": true,
"rowState": "stop",
"isStop": true,
"isDestroy": false,
"events": [
{
"index": 0,
"event": "error",
"time": 0.123063
},
{
"index": 0,
"event": "stop",
"time": 0.123063
}
],
"workers": [
{
"url": "blob:http://127.0.0.1:8084/f60c55f3-c907-466e-880b-bc0f8891356c",
"requests": [
{
"type": "getDanmuTop",
"target": {
"mode": 1,
"height": 23,
"speed": 90
},
"visibles": [],
"antiOverlap": true,
"clientWidth": 640,
"clientHeight": 360,
"marginBottom": 10,
"marginTop": 10,
"id": 1
}
],
"replies": [
{
"id": 1,
"result": 10
}
],
"terminated": 1,
"errors": [
"controlled track failure"
]
}
],
"fault": "Actual video/DOM/track Worker; dispatch an explicit native ErrorEvent and inject a throwing createWorker recovery seam. This does not claim a real CSP or browser Worker construction failure."
}
}
]
},
{
"title": "candidate / Candidate Danmuku candidate: native pause cancels pending visibility without blocking later work",
"browser": "chromium",
"durationMs": 2638,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "candidate",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.js",
"sha256": "f60047d3ba6a47b7e4e65813e5c26bf7bebcc79addfbb36829d5bba0a57cfeba",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-cancel",
"value": {
"action": "pause",
"before": {
"requests": [
1
],
"visible": [
"fresh-after-cancel"
]
},
"after": [
"fresh-after-cancel"
],
"cancelledSource": "An unresolved user beforeVisible Promise; native RAF, Worker and media remain active."
}
}
]
},
{
"title": "candidate / Candidate Danmuku candidate: native reset cancels pending visibility without blocking later work",
"browser": "chromium",
"durationMs": 2343,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "candidate",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.js",
"sha256": "f60047d3ba6a47b7e4e65813e5c26bf7bebcc79addfbb36829d5bba0a57cfeba",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-cancel",
"value": {
"action": "reset",
"before": {
"requests": [
1
],
"visible": [
"fresh-after-cancel"
]
},
"after": [
"fresh-after-cancel"
],
"cancelledSource": "An unresolved user beforeVisible Promise; native RAF, Worker and media remain active."
}
}
]
},
{
"title": "candidate / Candidate Danmuku candidate: native seek cancels pending visibility without blocking later work",
"browser": "chromium",
"durationMs": 2342,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "candidate",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.js",
"sha256": "f60047d3ba6a47b7e4e65813e5c26bf7bebcc79addfbb36829d5bba0a57cfeba",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-cancel",
"value": {
"action": "seek",
"before": {
"requests": [
1
],
"visible": [
"fresh-after-cancel"
]
},
"after": [
"fresh-after-cancel"
],
"cancelledSource": "An unresolved user beforeVisible Promise; native RAF, Worker and media remain active."
}
}
]
},
{
"title": "candidate / Candidate Danmuku candidate: native destroy cancels pending visibility without blocking later work",
"browser": "chromium",
"durationMs": 2298,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "candidate",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.js",
"sha256": "f60047d3ba6a47b7e4e65813e5c26bf7bebcc79addfbb36829d5bba0a57cfeba",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-cancel",
"value": {
"action": "destroy",
"before": {
"requests": [
0
],
"visible": []
},
"after": [],
"cancelledSource": "An unresolved user beforeVisible Promise; native RAF, Worker and media remain active."
}
}
]
},
{
"title": "candidate / Candidate Danmuku candidate: native Worker renders three modes with synchronous filter and asynchronous beforeVisible",
"browser": "chromium",
"durationMs": 1371,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "candidate",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.js",
"sha256": "f60047d3ba6a47b7e4e65813e5c26bf7bebcc79addfbb36829d5bba0a57cfeba",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
}
]
},
{
"title": "candidate / Candidate Danmuku candidate: six simultaneous fixed comments preserve usable track geometry and input order",
"browser": "chromium",
"durationMs": 1476,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "candidate",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.js",
"sha256": "f60047d3ba6a47b7e4e65813e5c26bf7bebcc79addfbb36829d5bba0a57cfeba",
"media": "/test/pattern.mp4",
"scenario": "density",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-dense-tracks",
"value": [
{
"id": "dense-0",
"mode": "1",
"state": "stop",
"text": "TRACK 0",
"x": 285,
"y": 10,
"width": 70,
"height": 22.5,
"visibility": "visible",
"display": "block",
"transition": "",
"opacity": "1"
},
{
"id": "dense-1",
"mode": "1",
"state": "stop",
"text": "TRACK 1",
"x": 285,
"y": 33,
"width": 70,
"height": 22.5,
"visibility": "visible",
"display": "block",
"transition": "",
"opacity": "1"
},
{
"id": "dense-2",
"mode": "1",
"state": "stop",
"text": "TRACK 2",
"x": 285,
"y": 56,
"width": 70,
"height": 22.5,
"visibility": "visible",
"display": "block",
"transition": "",
"opacity": "1"
},
{
"id": "dense-3",
"mode": "1",
"state": "stop",
"text": "TRACK 3",
"x": 285,
"y": 79,
"width": 70,
"height": 22.5,
"visibility": "visible",
"display": "block",
"transition": "",
"opacity": "1"
},
{
"id": "dense-4",
"mode": "1",
"state": "stop",
"text": "TRACK 4",
"x": 285,
"y": 102,
"width": 70,
"height": 22.5,
"visibility": "visible",
"display": "block",
"transition": "",
"opacity": "1"
},
{
"id": "dense-5",
"mode": "1",
"state": "stop",
"text": "TRACK 5",
"x": 285,
"y": 125,
"width": 70,
"height": 22.5,
"visibility": "visible",
"display": "block",
"transition": "",
"opacity": "1"
}
]
}
]
},
{
"title": "candidate / Candidate Danmuku candidate: native pause seek rate and public reset/load retain historical pool semantics",
"browser": "chromium",
"durationMs": 2357,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "candidate",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.js",
"sha256": "f60047d3ba6a47b7e4e65813e5c26bf7bebcc79addfbb36829d5bba0a57cfeba",
"media": "/test/pattern.mp4",
"scenario": "playback",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-pool-and-rate",
"value": {
"frozen": {
"left": 601.334228515625,
"next": 601.334228515625,
"state": "stop"
},
"reused": {
"poolReused": true,
"visibleSameNode": true,
"original": {
"id": "reused",
"state": "emit",
"visibility": "visible",
"text": "REUSED"
},
"extraNodes": [],
"transition": "4s",
"rate": 2
},
"loadWithoutArgument": "replaces from original empty option; explicit array load appends"
}
},
{
"name": "danmuku-native-eligibility",
"value": [
{
"wall": 235.5,
"before": 0.028103,
"after": 0.028103,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 250.80000001192093,
"before": 0.043475,
"after": 0.043475,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 267.89999997615814,
"before": 0.060577,
"after": 0.060577,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 284.5,
"before": 0.077118,
"after": 0.077118,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 301,
"before": 0.093638,
"after": 0.093638,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 317.80000001192093,
"before": 0.110352,
"after": 0.110352,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 334.89999997615814,
"before": 0.127479,
"after": 0.127479,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 350.89999997615814,
"before": 0.143558,
"after": 0.143558,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 367.69999998807907,
"before": 0.160251,
"after": 0.160251,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 385.19999998807907,
"before": 0.177867,
"after": 0.177867,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 401.39999997615814,
"before": 0.194079,
"after": 0.194079,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 418.0999999642372,
"before": 0.210668,
"after": 0.210668,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 434.30000001192093,
"before": 0.22695,
"after": 0.22695,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 451,
"before": 0.243562,
"after": 0.243562,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 467.5999999642372,
"before": 0.260261,
"after": 0.260261,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 484.39999997615814,
"before": 0.276963,
"after": 0.276963,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 500.89999997615814,
"before": 0.293509,
"after": 0.293509,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 517.3999999761581,
"before": 0.310009,
"after": 0.310009,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 534.3000000119209,
"before": 0.326905,
"after": 0.326905,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 551.8999999761581,
"before": 0.344547,
"after": 0.344547,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 567.8000000119209,
"before": 0.360407,
"after": 0.360407,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 584.6999999880791,
"before": 0.377333,
"after": 0.377333,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 601.0999999642372,
"before": 0.393728,
"after": 0.393728,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 618,
"before": 0.410661,
"after": 0.410661,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [
"moving"
],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 635,
"before": 0.427514,
"after": 0.427514,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 651.3999999761581,
"before": 0.444013,
"after": 0.444013,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 667.6999999880791,
"before": 0.460278,
"after": 0.460278,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 684.0999999642372,
"before": 0.476706,
"after": 0.476706,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 701,
"before": 0.493649,
"after": 0.493649,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 718.0999999642372,
"before": 0.510741,
"after": 0.510741,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 734.1999999880791,
"before": 0.526869,
"after": 0.526869,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 752.5,
"before": 0.545114,
"after": 0.545114,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 768.3000000119209,
"before": 0.560893,
"after": 0.560893,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 785,
"before": 0.577642,
"after": 0.577642,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 801.8999999761581,
"before": 0.594541,
"after": 0.594541,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 818.0999999642372,
"before": 0.610699,
"after": 0.610699,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 835.0999999642372,
"before": 0.627692,
"after": 0.627692,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 852.3999999761581,
"before": 0.645015,
"after": 0.645015,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 868.6999999880791,
"before": 0.661362,
"after": 0.661362,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 884,
"before": 0.676605,
"after": 0.676605,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 900.8999999761581,
"before": 0.693551,
"after": 0.693551,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 918.0999999642372,
"before": 0.710673,
"after": 0.710673,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 934.8000000119209,
"before": 0.727453,
"after": 0.727453,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 951.6999999880791,
"before": 0.744348,
"after": 0.744348,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 967.8000000119209,
"before": 0.760428,
"after": 0.760428,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 984.5,
"before": 0.777062,
"after": 0.777062,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1001,
"before": 0.793715,
"after": 0.793715,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1018.3000000119209,
"before": 0.810909,
"after": 0.810909,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1034.800000011921,
"before": 0.827374,
"after": 0.827374,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1051.300000011921,
"before": 0.843944,
"after": 0.843944,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1067.800000011921,
"before": 0.860372,
"after": 0.860372,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1085,
"before": 0.877632,
"after": 0.877632,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1101,
"before": 0.893673,
"after": 0.893673,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1118.5,
"before": 0.911164,
"after": 0.911164,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1134.5999999642372,
"before": 0.927241,
"after": 0.927241,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1150.8999999761581,
"before": 0.943555,
"after": 0.943555,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1384.5,
"before": 2.057756,
"after": 2.057756,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1402.5,
"before": 2.093658,
"after": 2.093658,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1417.3999999761581,
"before": 2.123354,
"after": 2.123354,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1434.8999999761581,
"before": 2.158492,
"after": 2.158492,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1451.5,
"before": 2.19167,
"after": 2.19167,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1467.5999999642372,
"before": 2.22387,
"after": 2.22387,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1484.0999999642372,
"before": 2.256906,
"after": 2.256906,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1501.3999999761581,
"before": 2.291334,
"after": 2.291334,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1518.300000011921,
"before": 2.325188,
"after": 2.325188,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1534,
"before": 2.356588,
"after": 2.356588,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1551.300000011921,
"before": 2.39117,
"after": 2.39117,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1568,
"before": 2.42469,
"after": 2.42469,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [
"reused"
],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1584.8999999761581,
"before": 2.45846,
"after": 2.45846,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1600.8999999761581,
"before": 2.490394,
"after": 2.490394,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1618.199999988079,
"before": 2.525028,
"after": 2.525028,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1635,
"before": 2.55859,
"after": 2.55859,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1651.300000011921,
"before": 2.591224,
"after": 2.591224,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1668.3999999761581,
"before": 2.625514,
"after": 2.625514,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1684,
"before": 2.65664,
"after": 2.65664,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1701,
"before": 2.690678,
"after": 2.690678,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1718,
"before": 2.724634,
"after": 2.724634,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1734.199999988079,
"before": 2.756894,
"after": 2.756894,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1750.699999988079,
"before": 2.790004,
"after": 2.790004,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.266574,
"state": "wait"
}
]
},
{
"wall": 1767.3999999761581,
"before": 2.823432,
"after": 2.823432,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.266574,
"state": "wait"
}
]
},
{
"wall": 1784.8999999761581,
"before": 2.858364,
"after": 2.858364,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.266574,
"state": "wait"
}
]
},
{
"wall": 1800.8999999761581,
"before": 2.89037,
"after": 2.89037,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.266574,
"state": "wait"
}
]
},
{
"wall": 1818.5999999642372,
"before": 2.925766,
"after": 2.925766,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.266574,
"state": "wait"
}
]
},
{
"wall": 1834.3999999761581,
"before": 2.957226,
"after": 2.957226,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.266574,
"state": "wait"
}
]
},
{
"wall": 1851.5999999642372,
"before": 2.991816,
"after": 2.991816,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.266574,
"state": "wait"
}
]
},
{
"wall": 1868.0999999642372,
"before": 3.024836,
"after": 3.024836,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.266574,
"state": "wait"
}
]
},
{
"wall": 1884.5,
"before": 3.057556,
"after": 3.057556,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.266574,
"state": "wait"
}
]
},
{
"wall": 1901,
"before": 3.090712,
"after": 3.090712,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.266574,
"state": "wait"
}
]
},
{
"wall": 1918.199999988079,
"before": 3.12506,
"after": 3.12506,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.266574,
"state": "wait"
}
]
},
{
"wall": 1934.199999988079,
"before": 3.157092,
"after": 3.157092,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.266574,
"state": "wait"
}
]
},
{
"wall": 1951.199999988079,
"before": 3.19101,
"after": 3.19101,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [
"appended"
],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.266574,
"state": "wait"
}
]
},
{
"wall": 1968.3999999761581,
"before": 3.225452,
"after": 3.225452,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.266574,
"state": "emit"
}
]
},
{
"wall": 1984.300000011921,
"before": 3.25738,
"after": 3.25738,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.266574,
"state": "emit"
}
]
},
{
"wall": 2001.3999999761581,
"before": 3.291476,
"after": 3.291476,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.266574,
"state": "emit"
}
]
},
{
"wall": 2017.5,
"before": 3.323686,
"after": 3.323686,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.266574,
"state": "emit"
}
]
},
{
"wall": 2034.5999999642372,
"before": 3.357788,
"after": 3.357788,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.266574,
"state": "emit"
}
]
},
{
"wall": 2052,
"before": 3.392572,
"after": 3.392572,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.266574,
"state": "emit"
}
]
},
{
"wall": 2067.399999976158,
"before": 3.423428,
"after": 3.423428,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.266574,
"state": "emit"
}
]
},
{
"wall": 2084.599999964237,
"before": 3.45786,
"after": 3.45786,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.266574,
"state": "emit"
}
]
},
{
"wall": 2100.699999988079,
"before": 3.49012,
"after": 3.49012,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.266574,
"state": "emit"
}
]
},
{
"wall": 2117.599999964237,
"before": 3.523598,
"after": 3.523598,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.266574,
"state": "emit"
}
]
},
{
"wall": 2135.300000011921,
"before": 3.559058,
"after": 3.559058,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.266574,
"state": "emit"
}
]
},
{
"wall": 2152.099999964237,
"before": 3.592804,
"after": 3.592804,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.266574,
"state": "emit"
}
]
}
]
}
]
},
{
"title": "candidate / Candidate Danmuku candidate: actual settings, asynchronous send lock, external fullscreen mount and two-player destruction",
"browser": "chromium",
"durationMs": 4029,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "candidate",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.js",
"sha256": "f60047d3ba6a47b7e4e65813e5c26bf7bebcc79addfbb36829d5bba0a57cfeba",
"media": "/test/pattern.mp4",
"scenario": "settings",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
}
]
},
{
"title": "published / Candidate Danmuku candidate: accepted NaN timestamp keeps the historical current-time fallback",
"browser": "firefox",
"durationMs": 2413,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "published",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.js",
"sha256": "f60047d3ba6a47b7e4e65813e5c26bf7bebcc79addfbb36829d5bba0a57cfeba",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-numeric-compatibility",
"value": {
"expected": 0.5,
"inputTime": 0.5,
"queueTime": 0.5,
"isNaN": false
}
}
]
},
{
"title": "published / Candidate Danmuku candidate: failed recovery respects synchronous destroy from the error listener",
"browser": "firefox",
"durationMs": 795,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "published",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.js",
"sha256": "f60047d3ba6a47b7e4e65813e5c26bf7bebcc79addfbb36829d5bba0a57cfeba",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-recovery-reentry",
"value": {
"action": "destroy",
"sameOwner": true,
"rowState": "stop",
"isStop": true,
"isDestroy": true,
"events": [
{
"index": 0,
"event": "error",
"time": 0.135079
},
{
"index": 0,
"event": "stop",
"time": 0
},
{
"index": 0,
"event": "destroy",
"time": 0
}
],
"workers": [
{
"url": "blob:http://127.0.0.1:8084/4a548f44-c472-4ed0-a791-a070f5a4334f",
"requests": [
{
"type": "getDanmuTop",
"target": {
"mode": 1,
"height": 23,
"speed": 90
},
"visibles": [],
"antiOverlap": true,
"clientWidth": 640,
"clientHeight": 360,
"marginBottom": 10,
"marginTop": 10,
"id": 1
}
],
"replies": [
{
"id": 1,
"result": 10
}
],
"terminated": 1,
"errors": [
"controlled track failure"
]
}
],
"fault": "Actual video/DOM/track Worker; dispatch an explicit native ErrorEvent and inject a throwing createWorker recovery seam. This does not claim a real CSP or browser Worker construction failure."
}
}
]
},
{
"title": "published / Candidate Danmuku candidate: failed recovery respects synchronous stop from the error listener",
"browser": "firefox",
"durationMs": 722,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "published",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.js",
"sha256": "f60047d3ba6a47b7e4e65813e5c26bf7bebcc79addfbb36829d5bba0a57cfeba",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-recovery-reentry",
"value": {
"action": "stop",
"sameOwner": true,
"rowState": "stop",
"isStop": true,
"isDestroy": false,
"events": [
{
"index": 0,
"event": "error",
"time": 0.125349
},
{
"index": 0,
"event": "stop",
"time": 0.125349
}
],
"workers": [
{
"url": "blob:http://127.0.0.1:8084/93cebef0-5683-4d9c-88dc-b8a7b9e67672",
"requests": [
{
"type": "getDanmuTop",
"target": {
"mode": 1,
"height": 23,
"speed": 90
},
"visibles": [],
"antiOverlap": true,
"clientWidth": 640,
"clientHeight": 360,
"marginBottom": 10,
"marginTop": 10,
"id": 1
}
],
"replies": [
{
"id": 1,
"result": 10
}
],
"terminated": 1,
"errors": [
"controlled track failure"
]
}
],
"fault": "Actual video/DOM/track Worker; dispatch an explicit native ErrorEvent and inject a throwing createWorker recovery seam. This does not claim a real CSP or browser Worker construction failure."
}
}
]
},
{
"title": "published / Candidate Danmuku candidate: native pause cancels pending visibility without blocking later work",
"browser": "firefox",
"durationMs": 2700,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "published",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.js",
"sha256": "f60047d3ba6a47b7e4e65813e5c26bf7bebcc79addfbb36829d5bba0a57cfeba",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-cancel",
"value": {
"action": "pause",
"before": {
"requests": [
1
],
"visible": [
"fresh-after-cancel"
]
},
"after": [
"fresh-after-cancel"
],
"cancelledSource": "An unresolved user beforeVisible Promise; native RAF, Worker and media remain active."
}
}
]
},
{
"title": "published / Candidate Danmuku candidate: native reset cancels pending visibility without blocking later work",
"browser": "firefox",
"durationMs": 2514,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "published",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.js",
"sha256": "f60047d3ba6a47b7e4e65813e5c26bf7bebcc79addfbb36829d5bba0a57cfeba",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-cancel",
"value": {
"action": "reset",
"before": {
"requests": [
1
],
"visible": [
"fresh-after-cancel"
]
},
"after": [
"fresh-after-cancel"
],
"cancelledSource": "An unresolved user beforeVisible Promise; native RAF, Worker and media remain active."
}
}
]
},
{
"title": "published / Candidate Danmuku candidate: native seek cancels pending visibility without blocking later work",
"browser": "firefox",
"durationMs": 2565,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "published",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.js",
"sha256": "f60047d3ba6a47b7e4e65813e5c26bf7bebcc79addfbb36829d5bba0a57cfeba",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-cancel",
"value": {
"action": "seek",
"before": {
"requests": [
1
],
"visible": [
"fresh-after-cancel"
]
},
"after": [
"fresh-after-cancel"
],
"cancelledSource": "An unresolved user beforeVisible Promise; native RAF, Worker and media remain active."
}
}
]
},
{
"title": "published / Candidate Danmuku candidate: native destroy cancels pending visibility without blocking later work",
"browser": "firefox",
"durationMs": 2473,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "published",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.js",
"sha256": "f60047d3ba6a47b7e4e65813e5c26bf7bebcc79addfbb36829d5bba0a57cfeba",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-cancel",
"value": {
"action": "destroy",
"before": {
"requests": [
0
],
"visible": []
},
"after": [],
"cancelledSource": "An unresolved user beforeVisible Promise; native RAF, Worker and media remain active."
}
}
]
},
{
"title": "published / Candidate Danmuku candidate: native Worker renders three modes with synchronous filter and asynchronous beforeVisible",
"browser": "firefox",
"durationMs": 2108,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "published",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.js",
"sha256": "f60047d3ba6a47b7e4e65813e5c26bf7bebcc79addfbb36829d5bba0a57cfeba",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
}
]
},
{
"title": "published / Candidate Danmuku candidate: six simultaneous fixed comments preserve usable track geometry and input order",
"browser": "firefox",
"durationMs": 1687,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "published",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.js",
"sha256": "f60047d3ba6a47b7e4e65813e5c26bf7bebcc79addfbb36829d5bba0a57cfeba",
"media": "/test/pattern.mp4",
"scenario": "density",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-dense-tracks",
"value": [
{
"id": "dense-0",
"mode": "1",
"state": "stop",
"text": "TRACK 0",
"x": 285,
"y": 10,
"width": 70,
"height": 22.5,
"visibility": "visible",
"display": "block",
"transition": "",
"opacity": "1"
},
{
"id": "dense-1",
"mode": "1",
"state": "stop",
"text": "TRACK 1",
"x": 285,
"y": 33,
"width": 70,
"height": 22.5,
"visibility": "visible",
"display": "block",
"transition": "",
"opacity": "1"
},
{
"id": "dense-2",
"mode": "1",
"state": "stop",
"text": "TRACK 2",
"x": 285,
"y": 56,
"width": 70,
"height": 22.5,
"visibility": "visible",
"display": "block",
"transition": "",
"opacity": "1"
},
{
"id": "dense-3",
"mode": "1",
"state": "stop",
"text": "TRACK 3",
"x": 285,
"y": 79,
"width": 70,
"height": 22.5,
"visibility": "visible",
"display": "block",
"transition": "",
"opacity": "1"
},
{
"id": "dense-4",
"mode": "1",
"state": "stop",
"text": "TRACK 4",
"x": 285,
"y": 102,
"width": 70,
"height": 22.5,
"visibility": "visible",
"display": "block",
"transition": "",
"opacity": "1"
},
{
"id": "dense-5",
"mode": "1",
"state": "stop",
"text": "TRACK 5",
"x": 285,
"y": 125,
"width": 70,
"height": 22.5,
"visibility": "visible",
"display": "block",
"transition": "",
"opacity": "1"
}
]
}
]
},
{
"title": "published / Candidate Danmuku candidate: native pause seek rate and public reset/load retain historical pool semantics",
"browser": "firefox",
"durationMs": 2631,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "published",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.js",
"sha256": "f60047d3ba6a47b7e4e65813e5c26bf7bebcc79addfbb36829d5bba0a57cfeba",
"media": "/test/pattern.mp4",
"scenario": "playback",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-pool-and-rate",
"value": {
"frozen": {
"left": 601.3333129882812,
"next": 601.3333129882812,
"state": "stop"
},
"reused": {
"poolReused": true,
"visibleSameNode": true,
"original": {
"id": "reused",
"state": "emit",
"visibility": "visible",
"text": "REUSED"
},
"extraNodes": [],
"transition": "4s",
"rate": 2
},
"loadWithoutArgument": "replaces from original empty option; explicit array load appends"
}
},
{
"name": "danmuku-native-eligibility",
"value": [
{
"wall": 362,
"before": 0.007241,
"after": 0.007241,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 380,
"before": 0.007241,
"after": 0.007241,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 396,
"before": 0.048156,
"after": 0.048156,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 413,
"before": 0.048156,
"after": 0.048156,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 430,
"before": 0.088465,
"after": 0.088465,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 446,
"before": 0.088465,
"after": 0.088465,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 463,
"before": 0.088465,
"after": 0.088465,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 479,
"before": 0.129111,
"after": 0.129111,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 496,
"before": 0.129111,
"after": 0.129111,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 513,
"before": 0.169319,
"after": 0.169319,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 530,
"before": 0.169319,
"after": 0.169319,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 546,
"before": 0.169319,
"after": 0.169319,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 563,
"before": 0.209913,
"after": 0.209913,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 580,
"before": 0.209913,
"after": 0.209913,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 597,
"before": 0.249999,
"after": 0.249999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 613,
"before": 0.249999,
"after": 0.249999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 629,
"before": 0.249999,
"after": 0.249999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 647,
"before": 0.291666,
"after": 0.291666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 663,
"before": 0.291666,
"after": 0.291666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 680,
"before": 0.333332,
"after": 0.333332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 697,
"before": 0.333332,
"after": 0.333332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 713,
"before": 0.333332,
"after": 0.333332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 730,
"before": 0.374999,
"after": 0.374999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 747,
"before": 0.374999,
"after": 0.374999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 763,
"before": 0.416666,
"after": 0.416666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [
"moving"
],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 780,
"before": 0.416666,
"after": 0.416666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 796,
"before": 0.416666,
"after": 0.416666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 813,
"before": 0.458332,
"after": 0.458332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 830,
"before": 0.458332,
"after": 0.458332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 846,
"before": 0.498679,
"after": 0.498679,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 864,
"before": 0.498679,
"after": 0.498679,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 879,
"before": 0.498679,
"after": 0.498679,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 896,
"before": 0.541666,
"after": 0.541666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 913,
"before": 0.541666,
"after": 0.541666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 929,
"before": 0.583332,
"after": 0.583332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 947,
"before": 0.583332,
"after": 0.583332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 963,
"before": 0.583332,
"after": 0.583332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 980,
"before": 0.624999,
"after": 0.624999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 997,
"before": 0.624999,
"after": 0.624999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1014,
"before": 0.666666,
"after": 0.666666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1030,
"before": 0.666666,
"after": 0.666666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1046,
"before": 0.666666,
"after": 0.666666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1064,
"before": 0.708332,
"after": 0.708332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1080,
"before": 0.708332,
"after": 0.708332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1097,
"before": 0.749999,
"after": 0.749999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1113,
"before": 0.749999,
"after": 0.749999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1131,
"before": 0.749999,
"after": 0.749999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1147,
"before": 0.791666,
"after": 0.791666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1163,
"before": 0.791666,
"after": 0.791666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1180,
"before": 0.835297,
"after": 0.835297,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1197,
"before": 0.835297,
"after": 0.835297,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1214,
"before": 0.835297,
"after": 0.835297,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1230,
"before": 0.876264,
"after": 0.876264,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1247,
"before": 0.876264,
"after": 0.876264,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1266,
"before": 0.916666,
"after": 0.916666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1281,
"before": 0.916666,
"after": 0.916666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1297,
"before": 0.916666,
"after": 0.916666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1315,
"before": 0.958332,
"after": 0.958332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1480,
"before": 2.000073,
"after": 2.000073,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1497,
"before": 2.041666,
"after": 2.041666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1514,
"before": 2.083332,
"after": 2.083332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1530,
"before": 2.083332,
"after": 2.083332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1547,
"before": 2.124999,
"after": 2.124999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1563,
"before": 2.166666,
"after": 2.166666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1581,
"before": 2.208332,
"after": 2.208332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1596,
"before": 2.249999,
"after": 2.249999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1614,
"before": 2.249999,
"after": 2.249999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1630,
"before": 2.291666,
"after": 2.291666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1647,
"before": 2.333332,
"after": 2.333332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1663,
"before": 2.374999,
"after": 2.374999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1681,
"before": 2.416666,
"after": 2.416666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [
"reused"
],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1697,
"before": 2.416666,
"after": 2.416666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1714,
"before": 2.458332,
"after": 2.458332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1731,
"before": 2.499999,
"after": 2.499999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1747,
"before": 2.541666,
"after": 2.541666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1764,
"before": 2.583332,
"after": 2.583332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1781,
"before": 2.583332,
"after": 2.583332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1797,
"before": 2.624999,
"after": 2.624999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1814,
"before": 2.666666,
"after": 2.666666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1831,
"before": 2.708332,
"after": 2.708332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1847,
"before": 2.749999,
"after": 2.749999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1864,
"before": 2.749999,
"after": 2.749999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1880,
"before": 2.791666,
"after": 2.791666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.291666,
"state": "wait"
}
]
},
{
"wall": 1897,
"before": 2.833332,
"after": 2.833332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.291666,
"state": "wait"
}
]
},
{
"wall": 1914,
"before": 2.874999,
"after": 2.874999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.291666,
"state": "wait"
}
]
},
{
"wall": 1931,
"before": 2.916666,
"after": 2.916666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.291666,
"state": "wait"
}
]
},
{
"wall": 1947,
"before": 2.916666,
"after": 2.916666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.291666,
"state": "wait"
}
]
},
{
"wall": 1964,
"before": 2.958332,
"after": 2.958332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.291666,
"state": "wait"
}
]
},
{
"wall": 1981,
"before": 2.999999,
"after": 2.999999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.291666,
"state": "wait"
}
]
},
{
"wall": 1997,
"before": 3.041666,
"after": 3.041666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.291666,
"state": "wait"
}
]
},
{
"wall": 2014,
"before": 3.083332,
"after": 3.083332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.291666,
"state": "wait"
}
]
},
{
"wall": 2031,
"before": 3.124999,
"after": 3.124999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.291666,
"state": "wait"
}
]
},
{
"wall": 2048,
"before": 3.124999,
"after": 3.124999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.291666,
"state": "wait"
}
]
},
{
"wall": 2064,
"before": 3.166666,
"after": 3.166666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.291666,
"state": "wait"
}
]
},
{
"wall": 2081,
"before": 3.208332,
"after": 3.208332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [
"appended"
],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.291666,
"state": "wait"
}
]
},
{
"wall": 2098,
"before": 3.249973,
"after": 3.249973,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.291666,
"state": "emit"
}
]
},
{
"wall": 2115,
"before": 3.291075,
"after": 3.291075,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.291666,
"state": "emit"
}
]
},
{
"wall": 2134,
"before": 3.291075,
"after": 3.291075,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.291666,
"state": "emit"
}
]
},
{
"wall": 2147,
"before": 3.333332,
"after": 3.333332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.291666,
"state": "emit"
}
]
},
{
"wall": 2164,
"before": 3.374999,
"after": 3.374999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.291666,
"state": "emit"
}
]
},
{
"wall": 2180,
"before": 3.416666,
"after": 3.416666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.291666,
"state": "emit"
}
]
},
{
"wall": 2197,
"before": 3.416666,
"after": 3.416666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.291666,
"state": "emit"
}
]
},
{
"wall": 2214,
"before": 3.458332,
"after": 3.458332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.291666,
"state": "emit"
}
]
},
{
"wall": 2230,
"before": 3.499999,
"after": 3.499999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.291666,
"state": "emit"
}
]
},
{
"wall": 2247,
"before": 3.540836,
"after": 3.540836,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.291666,
"state": "emit"
}
]
},
{
"wall": 2264,
"before": 3.581433,
"after": 3.581433,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.291666,
"state": "emit"
}
]
},
{
"wall": 2281,
"before": 3.621838,
"after": 3.621838,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.291666,
"state": "emit"
}
]
},
{
"wall": 2297,
"before": 3.621838,
"after": 3.621838,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.291666,
"state": "emit"
}
]
},
{
"wall": 2315,
"before": 3.663074,
"after": 3.663074,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.291666,
"state": "emit"
}
]
}
]
}
]
},
{
"title": "published / Candidate Danmuku candidate: actual settings, asynchronous send lock, external fullscreen mount and two-player destruction",
"browser": "firefox",
"durationMs": 4548,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "published",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.js",
"sha256": "f60047d3ba6a47b7e4e65813e5c26bf7bebcc79addfbb36829d5bba0a57cfeba",
"media": "/test/pattern.mp4",
"scenario": "settings",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
}
]
},
{
"title": "candidate / Candidate Danmuku candidate: accepted NaN timestamp keeps the historical current-time fallback",
"browser": "firefox",
"durationMs": 2467,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "candidate",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.js",
"sha256": "f60047d3ba6a47b7e4e65813e5c26bf7bebcc79addfbb36829d5bba0a57cfeba",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-numeric-compatibility",
"value": {
"expected": 0.5,
"inputTime": 0.5,
"queueTime": 0.5,
"isNaN": false
}
}
]
},
{
"title": "candidate / Candidate Danmuku candidate: failed recovery respects synchronous destroy from the error listener",
"browser": "firefox",
"durationMs": 704,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "candidate",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.js",
"sha256": "f60047d3ba6a47b7e4e65813e5c26bf7bebcc79addfbb36829d5bba0a57cfeba",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-recovery-reentry",
"value": {
"action": "destroy",
"sameOwner": true,
"rowState": "stop",
"isStop": true,
"isDestroy": true,
"events": [
{
"index": 0,
"event": "error",
"time": 0.128048
},
{
"index": 0,
"event": "stop",
"time": 0
},
{
"index": 0,
"event": "destroy",
"time": 0
}
],
"workers": [
{
"url": "blob:http://127.0.0.1:8084/b2b0de47-d8c6-4783-91d3-1c67330ab177",
"requests": [
{
"type": "getDanmuTop",
"target": {
"mode": 1,
"height": 23,
"speed": 90
},
"visibles": [],
"antiOverlap": true,
"clientWidth": 640,
"clientHeight": 360,
"marginBottom": 10,
"marginTop": 10,
"id": 1
}
],
"replies": [
{
"id": 1,
"result": 10
}
],
"terminated": 1,
"errors": [
"controlled track failure"
]
}
],
"fault": "Actual video/DOM/track Worker; dispatch an explicit native ErrorEvent and inject a throwing createWorker recovery seam. This does not claim a real CSP or browser Worker construction failure."
}
}
]
},
{
"title": "candidate / Candidate Danmuku candidate: failed recovery respects synchronous stop from the error listener",
"browser": "firefox",
"durationMs": 625,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "candidate",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.js",
"sha256": "f60047d3ba6a47b7e4e65813e5c26bf7bebcc79addfbb36829d5bba0a57cfeba",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-recovery-reentry",
"value": {
"action": "stop",
"sameOwner": true,
"rowState": "stop",
"isStop": true,
"isDestroy": false,
"events": [
{
"index": 0,
"event": "error",
"time": 0.005397
},
{
"index": 0,
"event": "stop",
"time": 0.005397
}
],
"workers": [
{
"url": "blob:http://127.0.0.1:8084/15197620-a2d4-414a-ae96-03e09404c394",
"requests": [
{
"type": "getDanmuTop",
"target": {
"mode": 1,
"height": 23,
"speed": 90
},
"visibles": [],
"antiOverlap": true,
"clientWidth": 640,
"clientHeight": 360,
"marginBottom": 10,
"marginTop": 10,
"id": 1
}
],
"replies": [
{
"id": 1,
"result": 10
}
],
"terminated": 1,
"errors": [
"controlled track failure"
]
}
],
"fault": "Actual video/DOM/track Worker; dispatch an explicit native ErrorEvent and inject a throwing createWorker recovery seam. This does not claim a real CSP or browser Worker construction failure."
}
}
]
},
{
"title": "candidate / Candidate Danmuku candidate: native pause cancels pending visibility without blocking later work",
"browser": "firefox",
"durationMs": 2791,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "candidate",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.js",
"sha256": "f60047d3ba6a47b7e4e65813e5c26bf7bebcc79addfbb36829d5bba0a57cfeba",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-cancel",
"value": {
"action": "pause",
"before": {
"requests": [
1
],
"visible": [
"fresh-after-cancel"
]
},
"after": [
"fresh-after-cancel"
],
"cancelledSource": "An unresolved user beforeVisible Promise; native RAF, Worker and media remain active."
}
}
]
},
{
"title": "candidate / Candidate Danmuku candidate: native reset cancels pending visibility without blocking later work",
"browser": "firefox",
"durationMs": 2733,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "candidate",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.js",
"sha256": "f60047d3ba6a47b7e4e65813e5c26bf7bebcc79addfbb36829d5bba0a57cfeba",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-cancel",
"value": {
"action": "reset",
"before": {
"requests": [
1
],
"visible": [
"fresh-after-cancel"
]
},
"after": [
"fresh-after-cancel"
],
"cancelledSource": "An unresolved user beforeVisible Promise; native RAF, Worker and media remain active."
}
}
]
},
{
"title": "candidate / Candidate Danmuku candidate: native seek cancels pending visibility without blocking later work",
"browser": "firefox",
"durationMs": 2537,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "candidate",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.js",
"sha256": "f60047d3ba6a47b7e4e65813e5c26bf7bebcc79addfbb36829d5bba0a57cfeba",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-cancel",
"value": {
"action": "seek",
"before": {
"requests": [
1
],
"visible": [
"fresh-after-cancel"
]
},
"after": [
"fresh-after-cancel"
],
"cancelledSource": "An unresolved user beforeVisible Promise; native RAF, Worker and media remain active."
}
}
]
},
{
"title": "candidate / Candidate Danmuku candidate: native destroy cancels pending visibility without blocking later work",
"browser": "firefox",
"durationMs": 2596,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "candidate",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.js",
"sha256": "f60047d3ba6a47b7e4e65813e5c26bf7bebcc79addfbb36829d5bba0a57cfeba",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-cancel",
"value": {
"action": "destroy",
"before": {
"requests": [
0
],
"visible": []
},
"after": [],
"cancelledSource": "An unresolved user beforeVisible Promise; native RAF, Worker and media remain active."
}
}
]
},
{
"title": "candidate / Candidate Danmuku candidate: native Worker renders three modes with synchronous filter and asynchronous beforeVisible",
"browser": "firefox",
"durationMs": 2033,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "candidate",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.js",
"sha256": "f60047d3ba6a47b7e4e65813e5c26bf7bebcc79addfbb36829d5bba0a57cfeba",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
}
]
},
{
"title": "candidate / Candidate Danmuku candidate: six simultaneous fixed comments preserve usable track geometry and input order",
"browser": "firefox",
"durationMs": 1657,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "candidate",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.js",
"sha256": "f60047d3ba6a47b7e4e65813e5c26bf7bebcc79addfbb36829d5bba0a57cfeba",
"media": "/test/pattern.mp4",
"scenario": "density",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-dense-tracks",
"value": [
{
"id": "dense-0",
"mode": "1",
"state": "stop",
"text": "TRACK 0",
"x": 285,
"y": 10,
"width": 70,
"height": 22.5,
"visibility": "visible",
"display": "block",
"transition": "",
"opacity": "1"
},
{
"id": "dense-1",
"mode": "1",
"state": "stop",
"text": "TRACK 1",
"x": 285,
"y": 33,
"width": 70,
"height": 22.5,
"visibility": "visible",
"display": "block",
"transition": "",
"opacity": "1"
},
{
"id": "dense-2",
"mode": "1",
"state": "stop",
"text": "TRACK 2",
"x": 285,
"y": 56,
"width": 70,
"height": 22.5,
"visibility": "visible",
"display": "block",
"transition": "",
"opacity": "1"
},
{
"id": "dense-3",
"mode": "1",
"state": "stop",
"text": "TRACK 3",
"x": 285,
"y": 79,
"width": 70,
"height": 22.5,
"visibility": "visible",
"display": "block",
"transition": "",
"opacity": "1"
},
{
"id": "dense-4",
"mode": "1",
"state": "stop",
"text": "TRACK 4",
"x": 285,
"y": 102,
"width": 70,
"height": 22.5,
"visibility": "visible",
"display": "block",
"transition": "",
"opacity": "1"
},
{
"id": "dense-5",
"mode": "1",
"state": "stop",
"text": "TRACK 5",
"x": 285,
"y": 125,
"width": 70,
"height": 22.5,
"visibility": "visible",
"display": "block",
"transition": "",
"opacity": "1"
}
]
}
]
},
{
"title": "candidate / Candidate Danmuku candidate: native pause seek rate and public reset/load retain historical pool semantics",
"browser": "firefox",
"durationMs": 2527,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "candidate",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.js",
"sha256": "f60047d3ba6a47b7e4e65813e5c26bf7bebcc79addfbb36829d5bba0a57cfeba",
"media": "/test/pattern.mp4",
"scenario": "playback",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-pool-and-rate",
"value": {
"frozen": {
"left": 601.3333129882812,
"next": 601.3333129882812,
"state": "stop"
},
"reused": {
"poolReused": true,
"visibleSameNode": true,
"original": {
"id": "reused",
"state": "emit",
"visibility": "visible",
"text": "REUSED"
},
"extraNodes": [],
"transition": "4s",
"rate": 2
},
"loadWithoutArgument": "replaces from original empty option; explicit array load appends"
}
},
{
"name": "danmuku-native-eligibility",
"value": [
{
"wall": 261,
"before": 0.007219,
"after": 0.007219,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 277,
"before": 0.007219,
"after": 0.007219,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 294,
"before": 0.04776,
"after": 0.04776,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 311,
"before": 0.04776,
"after": 0.04776,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 328,
"before": 0.088417,
"after": 0.088417,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 344,
"before": 0.088417,
"after": 0.088417,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 361,
"before": 0.088417,
"after": 0.088417,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 377,
"before": 0.128566,
"after": 0.128566,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 394,
"before": 0.128566,
"after": 0.128566,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 411,
"before": 0.168722,
"after": 0.168722,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 428,
"before": 0.168722,
"after": 0.168722,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 445,
"before": 0.168722,
"after": 0.168722,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 461,
"before": 0.209164,
"after": 0.209164,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 478,
"before": 0.209164,
"after": 0.209164,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 495,
"before": 0.249999,
"after": 0.249999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 511,
"before": 0.249999,
"after": 0.249999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 528,
"before": 0.249999,
"after": 0.249999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 545,
"before": 0.291666,
"after": 0.291666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 561,
"before": 0.291666,
"after": 0.291666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 577,
"before": 0.333332,
"after": 0.333332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 594,
"before": 0.333332,
"after": 0.333332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 611,
"before": 0.333332,
"after": 0.333332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 628,
"before": 0.374999,
"after": 0.374999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 644,
"before": 0.374999,
"after": 0.374999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 661,
"before": 0.416666,
"after": 0.416666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [
"moving"
],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 678,
"before": 0.416666,
"after": 0.416666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 694,
"before": 0.416666,
"after": 0.416666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 711,
"before": 0.458332,
"after": 0.458332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 727,
"before": 0.458332,
"after": 0.458332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 745,
"before": 0.499999,
"after": 0.499999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 761,
"before": 0.499999,
"after": 0.499999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 778,
"before": 0.499999,
"after": 0.499999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 794,
"before": 0.541666,
"after": 0.541666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 812,
"before": 0.541666,
"after": 0.541666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 827,
"before": 0.583332,
"after": 0.583332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 844,
"before": 0.583332,
"after": 0.583332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 861,
"before": 0.583332,
"after": 0.583332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 878,
"before": 0.624999,
"after": 0.624999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 895,
"before": 0.624999,
"after": 0.624999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 911,
"before": 0.666666,
"after": 0.666666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 928,
"before": 0.666666,
"after": 0.666666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 945,
"before": 0.666666,
"after": 0.666666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 962,
"before": 0.708332,
"after": 0.708332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 978,
"before": 0.708332,
"after": 0.708332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 995,
"before": 0.749999,
"after": 0.749999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1011,
"before": 0.749999,
"after": 0.749999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1028,
"before": 0.749999,
"after": 0.749999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1045,
"before": 0.791666,
"after": 0.791666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1061,
"before": 0.791666,
"after": 0.791666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1078,
"before": 0.833332,
"after": 0.833332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1094,
"before": 0.833332,
"after": 0.833332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1112,
"before": 0.833332,
"after": 0.833332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1128,
"before": 0.874999,
"after": 0.874999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1145,
"before": 0.874999,
"after": 0.874999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1164,
"before": 0.916666,
"after": 0.916666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1179,
"before": 0.916666,
"after": 0.916666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1194,
"before": 0.916666,
"after": 0.916666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1213,
"before": 0.958332,
"after": 0.958332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1378,
"before": 2.000064,
"after": 2.000064,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1395,
"before": 2.041666,
"after": 2.041666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1412,
"before": 2.083332,
"after": 2.083332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1428,
"before": 2.083332,
"after": 2.083332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1445,
"before": 2.124999,
"after": 2.124999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1461,
"before": 2.166666,
"after": 2.166666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1479,
"before": 2.208332,
"after": 2.208332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1495,
"before": 2.249999,
"after": 2.249999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1512,
"before": 2.249999,
"after": 2.249999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1529,
"before": 2.291666,
"after": 2.291666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1546,
"before": 2.334864,
"after": 2.334864,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1562,
"before": 2.374999,
"after": 2.374999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1579,
"before": 2.416666,
"after": 2.416666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [
"reused"
],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1595,
"before": 2.416666,
"after": 2.416666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1612,
"before": 2.458332,
"after": 2.458332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1629,
"before": 2.499999,
"after": 2.499999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1645,
"before": 2.541666,
"after": 2.541666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1662,
"before": 2.583332,
"after": 2.583332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1678,
"before": 2.583332,
"after": 2.583332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1695,
"before": 2.624999,
"after": 2.624999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1712,
"before": 2.666666,
"after": 2.666666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1729,
"before": 2.708332,
"after": 2.708332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1745,
"before": 2.749999,
"after": 2.749999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1762,
"before": 2.749999,
"after": 2.749999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1779,
"before": 2.791666,
"after": 2.791666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.291666,
"state": "wait"
}
]
},
{
"wall": 1795,
"before": 2.833332,
"after": 2.833332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.291666,
"state": "wait"
}
]
},
{
"wall": 1812,
"before": 2.874999,
"after": 2.874999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.291666,
"state": "wait"
}
]
},
{
"wall": 1829,
"before": 2.916666,
"after": 2.916666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.291666,
"state": "wait"
}
]
},
{
"wall": 1846,
"before": 2.916666,
"after": 2.916666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.291666,
"state": "wait"
}
]
},
{
"wall": 1862,
"before": 2.959734,
"after": 2.959734,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.291666,
"state": "wait"
}
]
},
{
"wall": 1879,
"before": 2.999999,
"after": 2.999999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.291666,
"state": "wait"
}
]
},
{
"wall": 1896,
"before": 3.041666,
"after": 3.041666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.291666,
"state": "wait"
}
]
},
{
"wall": 1912,
"before": 3.089442,
"after": 3.089442,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.291666,
"state": "wait"
}
]
},
{
"wall": 1930,
"before": 3.089442,
"after": 3.089442,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.291666,
"state": "wait"
}
]
},
{
"wall": 1945,
"before": 3.130082,
"after": 3.130082,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.291666,
"state": "wait"
}
]
},
{
"wall": 1962,
"before": 3.171009,
"after": 3.171009,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.291666,
"state": "wait"
}
]
},
{
"wall": 1978,
"before": 3.21251,
"after": 3.21251,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [
"appended"
],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.291666,
"state": "wait"
}
]
},
{
"wall": 1996,
"before": 3.253029,
"after": 3.253029,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.291666,
"state": "emit"
}
]
},
{
"wall": 2012,
"before": 3.253029,
"after": 3.253029,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.291666,
"state": "emit"
}
]
},
{
"wall": 2029,
"before": 3.294267,
"after": 3.294267,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.291666,
"state": "emit"
}
]
},
{
"wall": 2046,
"before": 3.335072,
"after": 3.335072,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.291666,
"state": "emit"
}
]
},
{
"wall": 2062,
"before": 3.376918,
"after": 3.376918,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.291666,
"state": "emit"
}
]
},
{
"wall": 2079,
"before": 3.420602,
"after": 3.420602,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.291666,
"state": "emit"
}
]
},
{
"wall": 2095,
"before": 3.420602,
"after": 3.420602,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.291666,
"state": "emit"
}
]
},
{
"wall": 2112,
"before": 3.461041,
"after": 3.461041,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.291666,
"state": "emit"
}
]
},
{
"wall": 2129,
"before": 3.501906,
"after": 3.501906,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.291666,
"state": "emit"
}
]
},
{
"wall": 2146,
"before": 3.543108,
"after": 3.543108,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.291666,
"state": "emit"
}
]
},
{
"wall": 2163,
"before": 3.583332,
"after": 3.583332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.291666,
"state": "emit"
}
]
},
{
"wall": 2179,
"before": 3.583332,
"after": 3.583332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.291666,
"state": "emit"
}
]
},
{
"wall": 2195,
"before": 3.624999,
"after": 3.624999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.291666,
"state": "emit"
}
]
},
{
"wall": 2213,
"before": 3.666656,
"after": 3.666656,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.291666,
"state": "emit"
}
]
}
]
}
]
},
{
"title": "candidate / Candidate Danmuku candidate: actual settings, asynchronous send lock, external fullscreen mount and two-player destruction",
"browser": "firefox",
"durationMs": 4594,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "candidate",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.js",
"sha256": "f60047d3ba6a47b7e4e65813e5c26bf7bebcc79addfbb36829d5bba0a57cfeba",
"media": "/test/pattern.mp4",
"scenario": "settings",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
}
]
},
{
"title": "published / Candidate Danmuku candidate: accepted NaN timestamp keeps the historical current-time fallback",
"browser": "webkit",
"durationMs": 3769,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "published",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.js",
"sha256": "f60047d3ba6a47b7e4e65813e5c26bf7bebcc79addfbb36829d5bba0a57cfeba",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-numeric-compatibility",
"value": {
"expected": 0.5,
"inputTime": 0.5,
"queueTime": 0.5,
"isNaN": false
}
}
]
},
{
"title": "published / Candidate Danmuku candidate: failed recovery respects synchronous destroy from the error listener",
"browser": "webkit",
"durationMs": 1747,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "published",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.js",
"sha256": "f60047d3ba6a47b7e4e65813e5c26bf7bebcc79addfbb36829d5bba0a57cfeba",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-recovery-reentry",
"value": {
"action": "destroy",
"sameOwner": true,
"rowState": "stop",
"isStop": true,
"isDestroy": true,
"events": [
{
"index": 0,
"event": "error",
"time": 0.1416231
},
{
"index": 0,
"event": "stop",
"time": 0
},
{
"index": 0,
"event": "destroy",
"time": 0
}
],
"workers": [
{
"url": "blob:http://127.0.0.1:8084/c5143333-bf8e-4ced-aa71-8cc54c89a884",
"requests": [
{
"type": "getDanmuTop",
"target": {
"mode": 1,
"height": 23,
"speed": 90
},
"visibles": [],
"antiOverlap": true,
"clientWidth": 640,
"clientHeight": 360,
"marginBottom": 10,
"marginTop": 10,
"id": 1
}
],
"replies": [
{
"id": 1,
"result": 10
}
],
"terminated": 1,
"errors": [
"controlled track failure"
]
}
],
"fault": "Actual video/DOM/track Worker; dispatch an explicit native ErrorEvent and inject a throwing createWorker recovery seam. This does not claim a real CSP or browser Worker construction failure."
}
}
]
},
{
"title": "published / Candidate Danmuku candidate: failed recovery respects synchronous stop from the error listener",
"browser": "webkit",
"durationMs": 1648,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "published",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.js",
"sha256": "f60047d3ba6a47b7e4e65813e5c26bf7bebcc79addfbb36829d5bba0a57cfeba",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-recovery-reentry",
"value": {
"action": "stop",
"sameOwner": true,
"rowState": "stop",
"isStop": true,
"isDestroy": false,
"events": [
{
"index": 0,
"event": "error",
"time": 0.0715572
},
{
"index": 0,
"event": "stop",
"time": 0.0715858
}
],
"workers": [
{
"url": "blob:http://127.0.0.1:8084/2f467548-e4ec-49f3-96bc-889088d432af",
"requests": [
{
"type": "getDanmuTop",
"target": {
"mode": 1,
"height": 23,
"speed": 90
},
"visibles": [],
"antiOverlap": true,
"clientWidth": 640,
"clientHeight": 360,
"marginBottom": 10,
"marginTop": 10,
"id": 1
}
],
"replies": [
{
"id": 1,
"result": 10
}
],
"terminated": 1,
"errors": [
"controlled track failure"
]
}
],
"fault": "Actual video/DOM/track Worker; dispatch an explicit native ErrorEvent and inject a throwing createWorker recovery seam. This does not claim a real CSP or browser Worker construction failure."
}
}
]
},
{
"title": "published / Candidate Danmuku candidate: native pause cancels pending visibility without blocking later work",
"browser": "webkit",
"durationMs": 4489,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "published",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.js",
"sha256": "f60047d3ba6a47b7e4e65813e5c26bf7bebcc79addfbb36829d5bba0a57cfeba",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-cancel",
"value": {
"action": "pause",
"before": {
"requests": [
1
],
"visible": [
"fresh-after-cancel"
]
},
"after": [
"fresh-after-cancel"
],
"cancelledSource": "An unresolved user beforeVisible Promise; native RAF, Worker and media remain active."
}
}
]
},
{
"title": "published / Candidate Danmuku candidate: native reset cancels pending visibility without blocking later work",
"browser": "webkit",
"durationMs": 4090,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "published",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.js",
"sha256": "f60047d3ba6a47b7e4e65813e5c26bf7bebcc79addfbb36829d5bba0a57cfeba",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-cancel",
"value": {
"action": "reset",
"before": {
"requests": [
1
],
"visible": [
"fresh-after-cancel"
]
},
"after": [
"fresh-after-cancel"
],
"cancelledSource": "An unresolved user beforeVisible Promise; native RAF, Worker and media remain active."
}
}
]
},
{
"title": "published / Candidate Danmuku candidate: native seek cancels pending visibility without blocking later work",
"browser": "webkit",
"durationMs": 4415,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "published",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.js",
"sha256": "f60047d3ba6a47b7e4e65813e5c26bf7bebcc79addfbb36829d5bba0a57cfeba",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-cancel",
"value": {
"action": "seek",
"before": {
"requests": [
1
],
"visible": [
"fresh-after-cancel"
]
},
"after": [
"fresh-after-cancel"
],
"cancelledSource": "An unresolved user beforeVisible Promise; native RAF, Worker and media remain active."
}
}
]
},
{
"title": "published / Candidate Danmuku candidate: native destroy cancels pending visibility without blocking later work",
"browser": "webkit",
"durationMs": 3703,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "published",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.js",
"sha256": "f60047d3ba6a47b7e4e65813e5c26bf7bebcc79addfbb36829d5bba0a57cfeba",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-cancel",
"value": {
"action": "destroy",
"before": {
"requests": [
0
],
"visible": []
},
"after": [],
"cancelledSource": "An unresolved user beforeVisible Promise; native RAF, Worker and media remain active."
}
}
]
},
{
"title": "published / Candidate Danmuku candidate: native Worker renders three modes with synchronous filter and asynchronous beforeVisible",
"browser": "webkit",
"durationMs": 2928,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "published",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.js",
"sha256": "f60047d3ba6a47b7e4e65813e5c26bf7bebcc79addfbb36829d5bba0a57cfeba",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
}
]
},
{
"title": "published / Candidate Danmuku candidate: six simultaneous fixed comments preserve usable track geometry and input order",
"browser": "webkit",
"durationMs": 3115,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "published",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.js",
"sha256": "f60047d3ba6a47b7e4e65813e5c26bf7bebcc79addfbb36829d5bba0a57cfeba",
"media": "/test/pattern.mp4",
"scenario": "density",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-dense-tracks",
"value": [
{
"id": "dense-0",
"mode": "1",
"state": "stop",
"text": "TRACK 0",
"x": 285,
"y": 10,
"width": 70,
"height": 22.5,
"visibility": "visible",
"display": "block",
"transition": "",
"opacity": "1"
},
{
"id": "dense-1",
"mode": "1",
"state": "stop",
"text": "TRACK 1",
"x": 285,
"y": 33,
"width": 70,
"height": 22.5,
"visibility": "visible",
"display": "block",
"transition": "",
"opacity": "1"
},
{
"id": "dense-2",
"mode": "1",
"state": "stop",
"text": "TRACK 2",
"x": 285,
"y": 56,
"width": 70,
"height": 22.5,
"visibility": "visible",
"display": "block",
"transition": "",
"opacity": "1"
},
{
"id": "dense-3",
"mode": "1",
"state": "stop",
"text": "TRACK 3",
"x": 285,
"y": 79,
"width": 70,
"height": 22.5,
"visibility": "visible",
"display": "block",
"transition": "",
"opacity": "1"
},
{
"id": "dense-4",
"mode": "1",
"state": "stop",
"text": "TRACK 4",
"x": 285,
"y": 102,
"width": 70,
"height": 22.5,
"visibility": "visible",
"display": "block",
"transition": "",
"opacity": "1"
},
{
"id": "dense-5",
"mode": "1",
"state": "stop",
"text": "TRACK 5",
"x": 285,
"y": 125,
"width": 70,
"height": 22.5,
"visibility": "visible",
"display": "block",
"transition": "",
"opacity": "1"
}
]
}
]
},
{
"title": "published / Candidate Danmuku candidate: native pause seek rate and public reset/load retain historical pool semantics",
"browser": "webkit",
"durationMs": 4252,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "published",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.js",
"sha256": "f60047d3ba6a47b7e4e65813e5c26bf7bebcc79addfbb36829d5bba0a57cfeba",
"media": "/test/pattern.mp4",
"scenario": "playback",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-pool-and-rate",
"value": {
"frozen": {
"left": 615.2750244140625,
"next": 615.2750244140625,
"state": "stop"
},
"reused": {
"poolReused": true,
"visibleSameNode": true,
"original": {
"id": "reused",
"state": "emit",
"visibility": "visible",
"text": "REUSED"
},
"extraNodes": [],
"transition": "4s",
"rate": 2
},
"loadWithoutArgument": "replaces from original empty option; explicit array load appends"
}
},
{
"name": "danmuku-native-eligibility",
"value": [
{
"wall": 1165,
"before": 0.0159348,
"after": 0.0160002,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 1270,
"before": 0.1213008,
"after": 0.1213159,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 1331,
"before": 0.1820146,
"after": 0.1820271,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 1362,
"before": 0.2130061,
"after": 0.2130194,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 1408,
"before": 0.2590538,
"after": 0.2590804,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 1454,
"before": 0.3049925,
"after": 0.3050046,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 1498,
"before": 0.3492606,
"after": 0.349291,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 1559,
"before": 0.4108884,
"after": 0.410913,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [
"moving"
],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 1590,
"before": 0.4416609,
"after": 0.4416737,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1636,
"before": 0.4874301,
"after": 0.4874423,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1667,
"before": 0.5187863,
"after": 0.5188139,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1714,
"before": 0.5652963,
"after": 0.5653059,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1744,
"before": 0.5959024,
"after": 0.5959126,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1808,
"before": 0.6592278,
"after": 0.6592459,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1882,
"before": 0.7333501,
"after": 0.7333602,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1928,
"before": 0.7798459,
"after": 0.7798607,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1963,
"before": 0.814367,
"after": 0.8143766,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1964,
"before": 0.8157498,
"after": 0.8157563,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 2418,
"before": 2.10286,
"after": 2.102886,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5019035,
"state": "wait"
}
]
},
{
"wall": 2447,
"before": 2.1616508,
"after": 2.1616772,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5019035,
"state": "wait"
}
]
},
{
"wall": 2493,
"before": 2.2537336,
"after": 2.2537574,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5019035,
"state": "wait"
}
]
},
{
"wall": 2524,
"before": 2.3164212,
"after": 2.316444,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5019035,
"state": "wait"
}
]
},
{
"wall": 2570,
"before": 2.407946,
"after": 2.4079758,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [
"reused"
],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5019035,
"state": "wait"
}
]
},
{
"wall": 2617,
"before": 2.5009358,
"after": 2.5009586,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5019035,
"state": "emit"
}
]
},
{
"wall": 2663,
"before": 2.5931474,
"after": 2.5931726,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5019035,
"state": "emit"
}
]
},
{
"wall": 2725,
"before": 2.7176728,
"after": 2.7176968,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5019035,
"state": "emit"
}
]
},
{
"wall": 2771,
"before": 2.8092912,
"after": 2.8093206,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5019035,
"state": "emit"
}
]
},
{
"wall": 2802,
"before": 2.872333,
"after": 2.872362,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5019035,
"state": "emit"
}
]
},
{
"wall": 2859,
"before": 2.9848032,
"after": 2.9848348,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5019035,
"state": "emit"
}
]
},
{
"wall": 2894,
"before": 3.0561996,
"after": 3.056223,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5019035,
"state": "emit"
},
{
"id": "appended",
"time": 3.5100708,
"state": "wait"
}
]
},
{
"wall": 2941,
"before": 3.1491002,
"after": 3.1491274,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5019035,
"state": "emit"
},
{
"id": "appended",
"time": 3.5100708,
"state": "wait"
}
]
},
{
"wall": 2985,
"before": 3.2378288,
"after": 3.2379482,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5019035,
"state": "emit"
},
{
"id": "appended",
"time": 3.5100708,
"state": "wait"
}
]
},
{
"wall": 3030,
"before": 3.3284306,
"after": 3.3284786,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5019035,
"state": "emit"
},
{
"id": "appended",
"time": 3.5100708,
"state": "wait"
}
]
},
{
"wall": 3077,
"before": 3.420845,
"after": 3.4208874,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [
"appended"
],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5019035,
"state": "emit"
},
{
"id": "appended",
"time": 3.5100708,
"state": "wait"
}
]
},
{
"wall": 3124,
"before": 3.515504,
"after": 3.5155426,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5019035,
"state": "emit"
},
{
"id": "appended",
"time": 3.5100708,
"state": "emit"
}
]
},
{
"wall": 3186,
"before": 3.6397388,
"after": 3.6398134,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5019035,
"state": "emit"
},
{
"id": "appended",
"time": 3.5100708,
"state": "emit"
}
]
},
{
"wall": 3231,
"before": 3.73033,
"after": 3.7303538,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5019035,
"state": "emit"
},
{
"id": "appended",
"time": 3.5100708,
"state": "emit"
}
]
},
{
"wall": 3277,
"before": 3.8210746,
"after": 3.8210958,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5019035,
"state": "emit"
},
{
"id": "appended",
"time": 3.5100708,
"state": "emit"
}
]
},
{
"wall": 3324,
"before": 3.914924,
"after": 3.914941,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5019035,
"state": "emit"
},
{
"id": "appended",
"time": 3.5100708,
"state": "emit"
}
]
},
{
"wall": 3370,
"before": 4.0077072,
"after": 4.00773,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5019035,
"state": "emit"
},
{
"id": "appended",
"time": 3.5100708,
"state": "emit"
}
]
},
{
"wall": 3415,
"before": 4.098272,
"after": 4.0982948,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5019035,
"state": "emit"
},
{
"id": "appended",
"time": 3.5100708,
"state": "emit"
}
]
},
{
"wall": 3476,
"before": 4.2200058,
"after": 4.2200296,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5019035,
"state": "emit"
},
{
"id": "appended",
"time": 3.5100708,
"state": "emit"
}
]
},
{
"wall": 3522,
"before": 4.3117306,
"after": 4.311753,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5019035,
"state": "emit"
},
{
"id": "appended",
"time": 3.5100708,
"state": "emit"
}
]
},
{
"wall": 3567,
"before": 4.4020572,
"after": 4.4020802,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5019035,
"state": "emit"
},
{
"id": "appended",
"time": 3.5100708,
"state": "emit"
}
]
},
{
"wall": 3612,
"before": 4.4919984,
"after": 4.492021,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5019035,
"state": "emit"
},
{
"id": "appended",
"time": 3.5100708,
"state": "emit"
}
]
},
{
"wall": 3627,
"before": 4.522652,
"after": 4.5226694,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5019035,
"state": "emit"
},
{
"id": "appended",
"time": 3.5100708,
"state": "emit"
}
]
},
{
"wall": 3629,
"before": 4.5261468,
"after": 4.5261642,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5019035,
"state": "emit"
},
{
"id": "appended",
"time": 3.5100708,
"state": "emit"
}
]
}
]
}
]
},
{
"title": "published / Candidate Danmuku candidate: actual settings, asynchronous send lock, external fullscreen mount and two-player destruction",
"browser": "webkit",
"durationMs": 6889,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "published",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.js",
"sha256": "f60047d3ba6a47b7e4e65813e5c26bf7bebcc79addfbb36829d5bba0a57cfeba",
"media": "/test/pattern.mp4",
"scenario": "settings",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
}
]
},
{
"title": "candidate / Candidate Danmuku candidate: accepted NaN timestamp keeps the historical current-time fallback",
"browser": "webkit",
"durationMs": 3771,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "candidate",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.js",
"sha256": "f60047d3ba6a47b7e4e65813e5c26bf7bebcc79addfbb36829d5bba0a57cfeba",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-numeric-compatibility",
"value": {
"expected": 0.5,
"inputTime": 0.5,
"queueTime": 0.5,
"isNaN": false
}
}
]
},
{
"title": "candidate / Candidate Danmuku candidate: failed recovery respects synchronous destroy from the error listener",
"browser": "webkit",
"durationMs": 1706,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "candidate",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.js",
"sha256": "f60047d3ba6a47b7e4e65813e5c26bf7bebcc79addfbb36829d5bba0a57cfeba",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-recovery-reentry",
"value": {
"action": "destroy",
"sameOwner": true,
"rowState": "stop",
"isStop": true,
"isDestroy": true,
"events": [
{
"index": 0,
"event": "error",
"time": 0.1392104
},
{
"index": 0,
"event": "stop",
"time": 0
},
{
"index": 0,
"event": "destroy",
"time": 0
}
],
"workers": [
{
"url": "blob:http://127.0.0.1:8084/0c26076e-d8c5-4a38-89b7-bda526378a80",
"requests": [
{
"type": "getDanmuTop",
"target": {
"mode": 1,
"height": 23,
"speed": 90
},
"visibles": [],
"antiOverlap": true,
"clientWidth": 640,
"clientHeight": 360,
"marginBottom": 10,
"marginTop": 10,
"id": 1
}
],
"replies": [
{
"id": 1,
"result": 10
}
],
"terminated": 1,
"errors": [
"controlled track failure"
]
}
],
"fault": "Actual video/DOM/track Worker; dispatch an explicit native ErrorEvent and inject a throwing createWorker recovery seam. This does not claim a real CSP or browser Worker construction failure."
}
}
]
},
{
"title": "candidate / Candidate Danmuku candidate: failed recovery respects synchronous stop from the error listener",
"browser": "webkit",
"durationMs": 1734,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "candidate",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.js",
"sha256": "f60047d3ba6a47b7e4e65813e5c26bf7bebcc79addfbb36829d5bba0a57cfeba",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-recovery-reentry",
"value": {
"action": "stop",
"sameOwner": true,
"rowState": "stop",
"isStop": true,
"isDestroy": false,
"events": [
{
"index": 0,
"event": "error",
"time": 0.2148273
},
{
"index": 0,
"event": "stop",
"time": 0.2148543
}
],
"workers": [
{
"url": "blob:http://127.0.0.1:8084/095e1914-6a2e-4dca-a296-95fe2057f84b",
"requests": [
{
"type": "getDanmuTop",
"target": {
"mode": 1,
"height": 23,
"speed": 90
},
"visibles": [],
"antiOverlap": true,
"clientWidth": 640,
"clientHeight": 360,
"marginBottom": 10,
"marginTop": 10,
"id": 1
}
],
"replies": [
{
"id": 1,
"result": 10
}
],
"terminated": 1,
"errors": [
"controlled track failure"
]
}
],
"fault": "Actual video/DOM/track Worker; dispatch an explicit native ErrorEvent and inject a throwing createWorker recovery seam. This does not claim a real CSP or browser Worker construction failure."
}
}
]
},
{
"title": "candidate / Candidate Danmuku candidate: native pause cancels pending visibility without blocking later work",
"browser": "webkit",
"durationMs": 4640,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "candidate",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.js",
"sha256": "f60047d3ba6a47b7e4e65813e5c26bf7bebcc79addfbb36829d5bba0a57cfeba",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-cancel",
"value": {
"action": "pause",
"before": {
"requests": [
1
],
"visible": [
"fresh-after-cancel"
]
},
"after": [
"fresh-after-cancel"
],
"cancelledSource": "An unresolved user beforeVisible Promise; native RAF, Worker and media remain active."
}
}
]
},
{
"title": "candidate / Candidate Danmuku candidate: native reset cancels pending visibility without blocking later work",
"browser": "webkit",
"durationMs": 4133,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "candidate",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.js",
"sha256": "f60047d3ba6a47b7e4e65813e5c26bf7bebcc79addfbb36829d5bba0a57cfeba",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-cancel",
"value": {
"action": "reset",
"before": {
"requests": [
1
],
"visible": [
"fresh-after-cancel"
]
},
"after": [
"fresh-after-cancel"
],
"cancelledSource": "An unresolved user beforeVisible Promise; native RAF, Worker and media remain active."
}
}
]
},
{
"title": "candidate / Candidate Danmuku candidate: native seek cancels pending visibility without blocking later work",
"browser": "webkit",
"durationMs": 4163,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "candidate",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.js",
"sha256": "f60047d3ba6a47b7e4e65813e5c26bf7bebcc79addfbb36829d5bba0a57cfeba",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-cancel",
"value": {
"action": "seek",
"before": {
"requests": [
1
],
"visible": [
"fresh-after-cancel"
]
},
"after": [
"fresh-after-cancel"
],
"cancelledSource": "An unresolved user beforeVisible Promise; native RAF, Worker and media remain active."
}
}
]
},
{
"title": "candidate / Candidate Danmuku candidate: native destroy cancels pending visibility without blocking later work",
"browser": "webkit",
"durationMs": 3907,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "candidate",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.js",
"sha256": "f60047d3ba6a47b7e4e65813e5c26bf7bebcc79addfbb36829d5bba0a57cfeba",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-cancel",
"value": {
"action": "destroy",
"before": {
"requests": [
0
],
"visible": []
},
"after": [],
"cancelledSource": "An unresolved user beforeVisible Promise; native RAF, Worker and media remain active."
}
}
]
},
{
"title": "candidate / Candidate Danmuku candidate: native Worker renders three modes with synchronous filter and asynchronous beforeVisible",
"browser": "webkit",
"durationMs": 3054,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "candidate",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.js",
"sha256": "f60047d3ba6a47b7e4e65813e5c26bf7bebcc79addfbb36829d5bba0a57cfeba",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
}
]
},
{
"title": "candidate / Candidate Danmuku candidate: six simultaneous fixed comments preserve usable track geometry and input order",
"browser": "webkit",
"durationMs": 3072,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "candidate",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.js",
"sha256": "f60047d3ba6a47b7e4e65813e5c26bf7bebcc79addfbb36829d5bba0a57cfeba",
"media": "/test/pattern.mp4",
"scenario": "density",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-dense-tracks",
"value": [
{
"id": "dense-0",
"mode": "1",
"state": "stop",
"text": "TRACK 0",
"x": 285,
"y": 10,
"width": 70,
"height": 22.5,
"visibility": "visible",
"display": "block",
"transition": "",
"opacity": "1"
},
{
"id": "dense-1",
"mode": "1",
"state": "stop",
"text": "TRACK 1",
"x": 285,
"y": 33,
"width": 70,
"height": 22.5,
"visibility": "visible",
"display": "block",
"transition": "",
"opacity": "1"
},
{
"id": "dense-2",
"mode": "1",
"state": "stop",
"text": "TRACK 2",
"x": 285,
"y": 56,
"width": 70,
"height": 22.5,
"visibility": "visible",
"display": "block",
"transition": "",
"opacity": "1"
},
{
"id": "dense-3",
"mode": "1",
"state": "stop",
"text": "TRACK 3",
"x": 285,
"y": 79,
"width": 70,
"height": 22.5,
"visibility": "visible",
"display": "block",
"transition": "",
"opacity": "1"
},
{
"id": "dense-4",
"mode": "1",
"state": "stop",
"text": "TRACK 4",
"x": 285,
"y": 102,
"width": 70,
"height": 22.5,
"visibility": "visible",
"display": "block",
"transition": "",
"opacity": "1"
},
{
"id": "dense-5",
"mode": "1",
"state": "stop",
"text": "TRACK 5",
"x": 285,
"y": 125,
"width": 70,
"height": 22.5,
"visibility": "visible",
"display": "block",
"transition": "",
"opacity": "1"
}
]
}
]
},
{
"title": "candidate / Candidate Danmuku candidate: native pause seek rate and public reset/load retain historical pool semantics",
"browser": "webkit",
"durationMs": 4664,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "candidate",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.js",
"sha256": "f60047d3ba6a47b7e4e65813e5c26bf7bebcc79addfbb36829d5bba0a57cfeba",
"media": "/test/pattern.mp4",
"scenario": "playback",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-pool-and-rate",
"value": {
"frozen": {
"left": 576.4249877929688,
"next": 576.4249877929688,
"state": "stop"
},
"reused": {
"poolReused": true,
"visibleSameNode": true,
"original": {
"id": "reused",
"state": "emit",
"visibility": "visible",
"text": "REUSED"
},
"extraNodes": [],
"transition": "4s",
"rate": 2
},
"loadWithoutArgument": "replaces from original empty option; explicit array load appends"
}
},
{
"name": "danmuku-native-eligibility",
"value": [
{
"wall": 1114,
"before": 0.0275833,
"after": 0.027667,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 1161,
"before": 0.0743575,
"after": 0.0743736,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 1191,
"before": 0.1047969,
"after": 0.1048159,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 1242,
"before": 0.1552228,
"after": 0.1552407,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 1284,
"before": 0.1980201,
"after": 0.1980339,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 1344,
"before": 0.2575539,
"after": 0.2575664,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 1390,
"before": 0.3036323,
"after": 0.3036596,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 1435,
"before": 0.3489225,
"after": 0.3489343,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 1497,
"before": 0.4105937,
"after": 0.4106036,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [
"moving"
],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 1529,
"before": 0.4424765,
"after": 0.4424932,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1573,
"before": 0.4868187,
"after": 0.4868405,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1620,
"before": 0.5338339,
"after": 0.5338443,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1650,
"before": 0.5639797,
"after": 0.5639901,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1681,
"before": 0.594222,
"after": 0.5942335,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1726,
"before": 0.6398355,
"after": 0.6398459,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1756,
"before": 0.6696594,
"after": 0.6696711,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1803,
"before": 0.7167381,
"after": 0.7167482,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1834,
"before": 0.7477257,
"after": 0.7477358,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1880,
"before": 0.7937526,
"after": 0.7937645,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1924,
"before": 0.8375983,
"after": 0.8376108,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1971,
"before": 0.8845255,
"after": 0.8845334,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 2032,
"before": 0.9457481,
"after": 0.9457562,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 2079,
"before": 0.9922146,
"after": 0.9922243,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 2125,
"before": 1.0383257,
"after": 1.0383387,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 2187,
"before": 1.1006115,
"after": 1.1006228,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 2233,
"before": 1.1464477,
"after": 1.1464564,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 2281,
"before": 1.1941408,
"after": 1.1941542,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 2342,
"before": 1.2552398,
"after": 1.255262,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 2345,
"before": 1.2582094,
"after": 1.258221,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 2346,
"before": 1.2599337,
"after": 1.2599455,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 2817,
"before": 2.0395904,
"after": 2.039659,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5014608,
"state": "wait"
}
]
},
{
"wall": 2862,
"before": 2.1307784,
"after": 2.1308368,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5014608,
"state": "wait"
}
]
},
{
"wall": 2907,
"before": 2.2198808,
"after": 2.2199116,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5014608,
"state": "wait"
}
]
},
{
"wall": 2938,
"before": 2.2820778,
"after": 2.282107,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5014608,
"state": "wait"
}
]
},
{
"wall": 2969,
"before": 2.3440042,
"after": 2.3440482,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5014608,
"state": "wait"
}
]
},
{
"wall": 3014,
"before": 2.4342786,
"after": 2.4343938,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [
"reused"
],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5014608,
"state": "wait"
}
]
},
{
"wall": 3059,
"before": 2.5246888,
"after": 2.5247134,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5014608,
"state": "emit"
}
]
},
{
"wall": 3089,
"before": 2.5847162,
"after": 2.5847382,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5014608,
"state": "emit"
}
]
},
{
"wall": 3120,
"before": 2.6461868,
"after": 2.6462078,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5014608,
"state": "emit"
}
]
},
{
"wall": 3167,
"before": 2.7402986,
"after": 2.7403186,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5014608,
"state": "emit"
}
]
},
{
"wall": 3198,
"before": 2.8022574,
"after": 2.802285,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5014608,
"state": "emit"
}
]
},
{
"wall": 3237,
"before": 2.8796478,
"after": 2.8796642,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5014608,
"state": "emit"
}
]
},
{
"wall": 3273,
"before": 2.952094,
"after": 2.9521478,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5014608,
"state": "emit"
},
{
"id": "appended",
"time": 3.4101818,
"state": "wait"
}
]
},
{
"wall": 3320,
"before": 3.0465276,
"after": 3.0465522,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5014608,
"state": "emit"
},
{
"id": "appended",
"time": 3.4101818,
"state": "wait"
}
]
},
{
"wall": 3368,
"before": 3.1414532,
"after": 3.1414762,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5014608,
"state": "emit"
},
{
"id": "appended",
"time": 3.4101818,
"state": "wait"
}
]
},
{
"wall": 3398,
"before": 3.2027528,
"after": 3.2027978,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5014608,
"state": "emit"
},
{
"id": "appended",
"time": 3.4101818,
"state": "wait"
}
]
},
{
"wall": 3445,
"before": 3.295084,
"after": 3.2951464,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5014608,
"state": "emit"
},
{
"id": "appended",
"time": 3.4101818,
"state": "wait"
}
]
},
{
"wall": 3490,
"before": 3.3863962,
"after": 3.386446,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [
"appended"
],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5014608,
"state": "emit"
},
{
"id": "appended",
"time": 3.4101818,
"state": "wait"
}
]
},
{
"wall": 3552,
"before": 3.5096228,
"after": 3.5096452,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5014608,
"state": "emit"
},
{
"id": "appended",
"time": 3.4101818,
"state": "emit"
}
]
},
{
"wall": 3598,
"before": 3.6021884,
"after": 3.602211,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5014608,
"state": "emit"
},
{
"id": "appended",
"time": 3.4101818,
"state": "emit"
}
]
},
{
"wall": 3645,
"before": 3.6949332,
"after": 3.6949552,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5014608,
"state": "emit"
},
{
"id": "appended",
"time": 3.4101818,
"state": "emit"
}
]
},
{
"wall": 3707,
"before": 3.8200626,
"after": 3.820086,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5014608,
"state": "emit"
},
{
"id": "appended",
"time": 3.4101818,
"state": "emit"
}
]
},
{
"wall": 3752,
"before": 3.9104908,
"after": 3.910516,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5014608,
"state": "emit"
},
{
"id": "appended",
"time": 3.4101818,
"state": "emit"
}
]
},
{
"wall": 3797,
"before": 3.9998794,
"after": 3.999907,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5014608,
"state": "emit"
},
{
"id": "appended",
"time": 3.4101818,
"state": "emit"
}
]
},
{
"wall": 3859,
"before": 4.1237156,
"after": 4.1237348,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5014608,
"state": "emit"
},
{
"id": "appended",
"time": 3.4101818,
"state": "emit"
}
]
},
{
"wall": 3905,
"before": 4.215603,
"after": 4.2156254,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5014608,
"state": "emit"
},
{
"id": "appended",
"time": 3.4101818,
"state": "emit"
}
]
},
{
"wall": 3952,
"before": 4.3099956,
"after": 4.3100146,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5014608,
"state": "emit"
},
{
"id": "appended",
"time": 3.4101818,
"state": "emit"
}
]
},
{
"wall": 3954,
"before": 4.3140048,
"after": 4.3140216,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5014608,
"state": "emit"
},
{
"id": "appended",
"time": 3.4101818,
"state": "emit"
}
]
},
{
"wall": 3955,
"before": 4.3166564,
"after": 4.316669,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5014608,
"state": "emit"
},
{
"id": "appended",
"time": 3.4101818,
"state": "emit"
}
]
}
]
}
]
},
{
"title": "candidate / Candidate Danmuku candidate: actual settings, asynchronous send lock, external fullscreen mount and two-player destruction",
"browser": "webkit",
"durationMs": 7411,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "candidate",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.js",
"sha256": "f60047d3ba6a47b7e4e65813e5c26bf7bebcc79addfbb36829d5bba0a57cfeba",
"media": "/test/pattern.mp4",
"scenario": "settings",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
}
]
}
]
},
{
"format": "legacy",
"tests": 138,
"workers": 2,
"file": "refactor/.cache/danmuku05-browser-legacy-resource-final/report.json",
"sha256": "50ced37e6fe77310ec619e6f0782eecd07eb1666014c6d93580251ca3dc15f68",
"run": {
"file": "refactor/.cache/danmuku05-browser-legacy-resource-final/run.log",
"sha256": "e0a6bdbaec9f12796655145d7be1670224cd9aea8ee6413d0e1a836ddb14b05b"
},
"specs": [
{
"file": "refactor/.cache/danmuku05-browser-legacy-resource-final/danmuku-input.spec.js",
"sha256": "37a96982ea7bf2fb99df5e4d829ce1c3f512145092a440586c2d5ad7d0a2d6f3"
},
{
"file": "refactor/.cache/danmuku05-browser-legacy-resource-final/danmuku-scheduler.spec.js",
"sha256": "ee67bc0f204f1f9090859ed9d1d0cfecc545129fff6278d2f17140b009390519"
},
{
"file": "refactor/.cache/danmuku05-browser-legacy-resource-final/danmuku-resources.spec.js",
"sha256": "f0d09e962cb422a66bd644c52268aff8f288606ae9c93676fa979539743f9c6b"
}
],
"archiveResultsRoot": "refactor/.cache/danmuku05-browser-legacy-resource-final/results",
"originalResultsRoot": "refactor/.cache/browser/results",
"versions": [
"chromium: 153.0.8010.12",
"firefox: 155.0",
"webkit: 26.6"
],
"cases": [
{
"title": "Danmuku input native Worker startup failure falls back locally (published)",
"browser": "chromium",
"durationMs": 386,
"observations": [
{
"name": "danmuku-native-worker-fault",
"value": {
"queue": [
{
"text": "FALLBACK",
"time": 0,
"mode": 1
}
],
"workers": [
{
"url": "blob:http://127.0.0.1:8084/3d88e94a-b248-4b64-b54c-21d6d4a549c5",
"terminated": 1,
"replies": []
}
],
"urls": [
"blob:http://127.0.0.1:8084/f386f30d-74d6-4814-84e5-e88f3da95fda",
"blob:http://127.0.0.1:8084/3d88e94a-b248-4b64-b54c-21d6d4a549c5"
],
"revoked": [
"",
"blob:http://127.0.0.1:8084/3d88e94a-b248-4b64-b54c-21d6d4a549c5",
"blob:http://127.0.0.1:8084/f386f30d-74d6-4814-84e5-e88f3da95fda"
],
"errors": [],
"fault": "Test replaces only the newly created native parser Worker script with a thrown startup Error; fetch, fallback parser and error dispatch remain real."
}
}
]
},
{
"title": "Danmuku input native parser cleanup and rejected fetch (published)",
"browser": "chromium",
"durationMs": 273,
"observations": [
{
"name": "danmuku-native-parser",
"value": {
"parsed": [
{
"text": "A & B",
"time": 0,
"mode": 0,
"color": "#ff",
"userID": "user",
"rowID": 456
},
{
"text": "TOP",
"time": 2,
"mode": 2,
"color": "#ffffff",
"userID": "u",
"rowID": 789
}
],
"emptyIdentity": true,
"beforeDestroy": 2,
"rejection": "TypeError: Failed to fetch",
"parserWorkers": [
{
"url": "blob:http://127.0.0.1:8084/643ba9b4-955d-42e4-b0b9-79e7166a875e",
"terminated": 1,
"replies": [
{
"danmus": [
{
"text": "A & B",
"time": 0,
"mode": 0,
"fontSize": 25,
"color": "#ff",
"timestamp": 123,
"pool": 0,
"userID": "user",
"rowID": 456,
"style": {}
},
{
"text": "TOP",
"time": 2,
"mode": 2,
"fontSize": 20,
"color": "#ffffff",
"timestamp": 124,
"pool": 0,
"userID": "u",
"rowID": 789,
"style": {}
}
],
"id": 1
}
]
},
{
"url": "blob:http://127.0.0.1:8084/acaff2f5-e1b8-4679-8525-84552d4a89a7",
"terminated": 1,
"replies": [
{
"danmus": [],
"id": 2
}
]
}
],
"urls": [
"blob:http://127.0.0.1:8084/d24fda1a-1c90-4e25-99cf-fb593d7f0cfe",
"blob:http://127.0.0.1:8084/643ba9b4-955d-42e4-b0b9-79e7166a875e",
"blob:http://127.0.0.1:8084/acaff2f5-e1b8-4679-8525-84552d4a89a7"
],
"revoked": [
"",
"blob:http://127.0.0.1:8084/643ba9b4-955d-42e4-b0b9-79e7166a875e",
"blob:http://127.0.0.1:8084/acaff2f5-e1b8-4679-8525-84552d4a89a7"
],
"workers": [
{
"url": "blob:http://127.0.0.1:8084/d24fda1a-1c90-4e25-99cf-fb593d7f0cfe",
"terminated": 1,
"replies": []
},
{
"url": "blob:http://127.0.0.1:8084/643ba9b4-955d-42e4-b0b9-79e7166a875e",
"terminated": 1,
"replies": [
{
"danmus": [
{
"text": "A & B",
"time": 0,
"mode": 0,
"fontSize": 25,
"color": "#ff",
"timestamp": 123,
"pool": 0,
"userID": "user",
"rowID": 456,
"style": {}
},
{
"text": "TOP",
"time": 2,
"mode": 2,
"fontSize": 20,
"color": "#ffffff",
"timestamp": 124,
"pool": 0,
"userID": "u",
"rowID": 789,
"style": {}
}
],
"id": 1
}
]
},
{
"url": "blob:http://127.0.0.1:8084/acaff2f5-e1b8-4679-8525-84552d4a89a7",
"terminated": 1,
"replies": [
{
"danmus": [],
"id": 2
}
]
}
],
"events": [
{
"name": "show"
},
{
"name": "config"
},
{
"name": "reset"
},
{
"name": "loaded",
"count": 0
},
{
"name": "loaded",
"count": 2
},
{
"name": "loaded",
"count": 2
},
{
"name": "error",
"error": "TypeError: Failed to fetch"
},
{
"name": "destroy"
}
]
}
}
]
},
{
"title": "Danmuku input replacement append and destruction (published)",
"browser": "chromium",
"durationMs": 241,
"observations": [
{
"name": "danmuku-native-input-ownership",
"value": {
"initialEvents": [
"show",
"config",
"reset",
"loaded"
],
"latestIdentity": true,
"oldIdentity": true,
"destroyedIdentity": true,
"queue": [
{
"text": "new",
"time": 0
},
{
"text": "append B",
"time": 0.5
},
{
"text": "append A",
"time": 0.5
}
],
"finalQueue": [
"new",
"append B",
"append A"
],
"loadedBefore": 4,
"loadedAfter": 4,
"events": [
{
"name": "show"
},
{
"name": "config"
},
{
"name": "reset"
},
{
"name": "loaded",
"count": 0
},
{
"name": "show"
},
{
"name": "config"
},
{
"name": "show"
},
{
"name": "config"
},
{
"name": "reset"
},
{
"name": "loaded",
"count": 1
},
{
"name": "loaded",
"count": 2
},
{
"name": "loaded",
"count": 3
},
{
"name": "destroy"
}
]
}
}
]
},
{
"title": "Danmuku config callback replacement and validation (published)",
"browser": "chromium",
"durationMs": 223,
"observations": [
{
"name": "danmuku-native-config",
"value": {
"unchangedIdentity": true,
"count": 2,
"unchangedCount": 2,
"unchangedOption": true,
"filterIdentity": true,
"error": "Error: [Type Error]: 'option.speed' require 'number' type, but got 'string'",
"receiver": [
true,
true
],
"emittedIdentity": true,
"input": {
"text": "included",
"time": 0,
"mode": 0,
"style": {},
"color": "#FFFFFF"
},
"queue": [
{
"text": "included",
"time": 0
}
]
}
}
]
},
{
"title": "Danmuku input native Worker startup failure falls back locally (candidate)",
"browser": "chromium",
"durationMs": 399,
"observations": [
{
"name": "danmuku-native-worker-fault",
"value": {
"queue": [
{
"text": "FALLBACK",
"time": 0,
"mode": 1
}
],
"workers": [
{
"url": "blob:http://127.0.0.1:8084/c32baba2-f7a3-4ba2-aa37-8458b0064985",
"terminated": 1,
"replies": []
}
],
"urls": [
"blob:http://127.0.0.1:8084/e71b6ff5-5dd5-43f7-a8c5-a7bae5401ed5",
"blob:http://127.0.0.1:8084/c32baba2-f7a3-4ba2-aa37-8458b0064985"
],
"revoked": [
"blob:http://127.0.0.1:8084/c32baba2-f7a3-4ba2-aa37-8458b0064985",
"blob:http://127.0.0.1:8084/e71b6ff5-5dd5-43f7-a8c5-a7bae5401ed5"
],
"errors": [],
"fault": "Test replaces only the newly created native parser Worker script with a thrown startup Error; fetch, fallback parser and error dispatch remain real."
}
}
]
},
{
"title": "Danmuku input native parser cleanup and rejected fetch (candidate)",
"browser": "chromium",
"durationMs": 281,
"observations": [
{
"name": "danmuku-native-parser",
"value": {
"parsed": [
{
"text": "A & B",
"time": 0,
"mode": 0,
"color": "#ff",
"userID": "user",
"rowID": 456
},
{
"text": "TOP",
"time": 2,
"mode": 2,
"color": "#ffffff",
"userID": "u",
"rowID": 789
}
],
"emptyIdentity": true,
"beforeDestroy": 2,
"rejection": "TypeError: Failed to fetch",
"parserWorkers": [
{
"url": "blob:http://127.0.0.1:8084/c5241b76-f23a-4eed-9faa-2157f9b391b2",
"terminated": 1,
"replies": [
{
"danmus": [
{
"text": "A & B",
"time": 0,
"mode": 0,
"fontSize": 25,
"color": "#ff",
"timestamp": 123,
"pool": 0,
"userID": "user",
"rowID": 456,
"style": {}
},
{
"text": "TOP",
"time": 2,
"mode": 2,
"fontSize": 20,
"color": "#ffffff",
"timestamp": 124,
"pool": 0,
"userID": "u",
"rowID": 789,
"style": {}
}
],
"id": 1
}
]
},
{
"url": "blob:http://127.0.0.1:8084/e0a43471-59eb-4ff5-a4b9-c36e14e8d681",
"terminated": 1,
"replies": [
{
"danmus": [],
"id": 2
}
]
}
],
"urls": [
"blob:http://127.0.0.1:8084/ddd85100-8ce1-449a-9da5-9044f2d89a20",
"blob:http://127.0.0.1:8084/c5241b76-f23a-4eed-9faa-2157f9b391b2",
"blob:http://127.0.0.1:8084/e0a43471-59eb-4ff5-a4b9-c36e14e8d681"
],
"revoked": [
"blob:http://127.0.0.1:8084/c5241b76-f23a-4eed-9faa-2157f9b391b2",
"blob:http://127.0.0.1:8084/e0a43471-59eb-4ff5-a4b9-c36e14e8d681"
],
"workers": [
{
"url": "blob:http://127.0.0.1:8084/ddd85100-8ce1-449a-9da5-9044f2d89a20",
"terminated": 1,
"replies": []
},
{
"url": "blob:http://127.0.0.1:8084/c5241b76-f23a-4eed-9faa-2157f9b391b2",
"terminated": 1,
"replies": [
{
"danmus": [
{
"text": "A & B",
"time": 0,
"mode": 0,
"fontSize": 25,
"color": "#ff",
"timestamp": 123,
"pool": 0,
"userID": "user",
"rowID": 456,
"style": {}
},
{
"text": "TOP",
"time": 2,
"mode": 2,
"fontSize": 20,
"color": "#ffffff",
"timestamp": 124,
"pool": 0,
"userID": "u",
"rowID": 789,
"style": {}
}
],
"id": 1
}
]
},
{
"url": "blob:http://127.0.0.1:8084/e0a43471-59eb-4ff5-a4b9-c36e14e8d681",
"terminated": 1,
"replies": [
{
"danmus": [],
"id": 2
}
]
}
],
"events": [
{
"name": "show"
},
{
"name": "config"
},
{
"name": "reset"
},
{
"name": "loaded",
"count": 0
},
{
"name": "loaded",
"count": 2
},
{
"name": "loaded",
"count": 2
},
{
"name": "error",
"error": "TypeError: Failed to fetch"
},
{
"name": "destroy"
}
]
}
}
]
},
{
"title": "Danmuku input replacement append and destruction (candidate)",
"browser": "chromium",
"durationMs": 259,
"observations": [
{
"name": "danmuku-native-input-ownership",
"value": {
"initialEvents": [
"show",
"config",
"reset",
"loaded"
],
"latestIdentity": true,
"oldIdentity": true,
"destroyedIdentity": true,
"queue": [
{
"text": "new",
"time": 0
},
{
"text": "append B",
"time": 0.5
},
{
"text": "append A",
"time": 0.5
}
],
"finalQueue": [
"new",
"append B",
"append A"
],
"loadedBefore": 4,
"loadedAfter": 4,
"events": [
{
"name": "show"
},
{
"name": "config"
},
{
"name": "reset"
},
{
"name": "loaded",
"count": 0
},
{
"name": "show"
},
{
"name": "config"
},
{
"name": "show"
},
{
"name": "config"
},
{
"name": "reset"
},
{
"name": "loaded",
"count": 1
},
{
"name": "loaded",
"count": 2
},
{
"name": "loaded",
"count": 3
},
{
"name": "destroy"
}
]
}
}
]
},
{
"title": "Danmuku config callback replacement and validation (candidate)",
"browser": "chromium",
"durationMs": 240,
"observations": [
{
"name": "danmuku-native-config",
"value": {
"unchangedIdentity": true,
"count": 2,
"unchangedCount": 2,
"unchangedOption": true,
"filterIdentity": true,
"error": "Error: [Type Error]: 'option.speed' require 'number' type, but got 'string'",
"receiver": [
true,
true
],
"emittedIdentity": true,
"input": {
"text": "included",
"time": 0,
"mode": 0,
"style": {},
"color": "#FFFFFF"
},
"queue": [
{
"text": "included",
"time": 0
}
]
}
}
]
},
{
"title": "Danmuku input native Worker startup failure falls back locally (published)",
"browser": "firefox",
"durationMs": 2036,
"observations": [
{
"name": "danmuku-native-worker-fault",
"value": {
"queue": [
{
"text": "FALLBACK",
"time": 0,
"mode": 1
}
],
"workers": [
{
"url": "blob:http://127.0.0.1:8084/1e85ebc6-4fe0-49da-a379-0e0be3a6d0d5",
"terminated": 1,
"replies": []
}
],
"urls": [
"blob:http://127.0.0.1:8084/7facd423-b29b-47e5-bb73-b5799c71047a",
"blob:http://127.0.0.1:8084/1e85ebc6-4fe0-49da-a379-0e0be3a6d0d5"
],
"revoked": [
"",
"blob:http://127.0.0.1:8084/1e85ebc6-4fe0-49da-a379-0e0be3a6d0d5",
"blob:http://127.0.0.1:8084/7facd423-b29b-47e5-bb73-b5799c71047a"
],
"errors": [],
"fault": "Test replaces only the newly created native parser Worker script with a thrown startup Error; fetch, fallback parser and error dispatch remain real."
}
}
]
},
{
"title": "Danmuku input native parser cleanup and rejected fetch (published)",
"browser": "firefox",
"durationMs": 486,
"observations": [
{
"name": "danmuku-native-parser",
"value": {
"parsed": [
{
"text": "A & B",
"time": 0,
"mode": 0,
"color": "#ff",
"userID": "user",
"rowID": 456
},
{
"text": "TOP",
"time": 2,
"mode": 2,
"color": "#ffffff",
"userID": "u",
"rowID": 789
}
],
"emptyIdentity": true,
"beforeDestroy": 2,
"rejection": "TypeError: NetworkError when attempting to fetch resource.",
"parserWorkers": [
{
"url": "blob:http://127.0.0.1:8084/c378306f-f185-4d73-b2a5-c68c6662a842",
"terminated": 1,
"replies": [
{
"danmus": [
{
"text": "A & B",
"time": 0,
"mode": 0,
"fontSize": 25,
"color": "#ff",
"timestamp": 123,
"pool": 0,
"userID": "user",
"rowID": 456,
"style": {}
},
{
"text": "TOP",
"time": 2,
"mode": 2,
"fontSize": 20,
"color": "#ffffff",
"timestamp": 124,
"pool": 0,
"userID": "u",
"rowID": 789,
"style": {}
}
],
"id": 1
}
]
},
{
"url": "blob:http://127.0.0.1:8084/ca37a1a6-457d-4d40-9e66-5d854ef823a3",
"terminated": 1,
"replies": [
{
"danmus": [],
"id": 2
}
]
}
],
"urls": [
"blob:http://127.0.0.1:8084/2a57e037-3ac6-4ba1-8db4-a8b8e7f64bc1",
"blob:http://127.0.0.1:8084/c378306f-f185-4d73-b2a5-c68c6662a842",
"blob:http://127.0.0.1:8084/ca37a1a6-457d-4d40-9e66-5d854ef823a3"
],
"revoked": [
"",
"blob:http://127.0.0.1:8084/c378306f-f185-4d73-b2a5-c68c6662a842",
"blob:http://127.0.0.1:8084/ca37a1a6-457d-4d40-9e66-5d854ef823a3"
],
"workers": [
{
"url": "blob:http://127.0.0.1:8084/2a57e037-3ac6-4ba1-8db4-a8b8e7f64bc1",
"terminated": 1,
"replies": []
},
{
"url": "blob:http://127.0.0.1:8084/c378306f-f185-4d73-b2a5-c68c6662a842",
"terminated": 1,
"replies": [
{
"danmus": [
{
"text": "A & B",
"time": 0,
"mode": 0,
"fontSize": 25,
"color": "#ff",
"timestamp": 123,
"pool": 0,
"userID": "user",
"rowID": 456,
"style": {}
},
{
"text": "TOP",
"time": 2,
"mode": 2,
"fontSize": 20,
"color": "#ffffff",
"timestamp": 124,
"pool": 0,
"userID": "u",
"rowID": 789,
"style": {}
}
],
"id": 1
}
]
},
{
"url": "blob:http://127.0.0.1:8084/ca37a1a6-457d-4d40-9e66-5d854ef823a3",
"terminated": 1,
"replies": [
{
"danmus": [],
"id": 2
}
]
}
],
"events": [
{
"name": "show"
},
{
"name": "config"
},
{
"name": "reset"
},
{
"name": "loaded",
"count": 0
},
{
"name": "loaded",
"count": 2
},
{
"name": "loaded",
"count": 2
},
{
"name": "error",
"error": "TypeError: NetworkError when attempting to fetch resource."
},
{
"name": "destroy"
}
]
}
}
]
},
{
"title": "Danmuku input replacement append and destruction (published)",
"browser": "firefox",
"durationMs": 574,
"observations": [
{
"name": "danmuku-native-input-ownership",
"value": {
"initialEvents": [
"show",
"config",
"reset",
"loaded"
],
"latestIdentity": true,
"oldIdentity": true,
"destroyedIdentity": true,
"queue": [
{
"text": "new",
"time": 0
},
{
"text": "append B",
"time": 0.5
},
{
"text": "append A",
"time": 0.5
}
],
"finalQueue": [
"new",
"append B",
"append A"
],
"loadedBefore": 4,
"loadedAfter": 4,
"events": [
{
"name": "show"
},
{
"name": "config"
},
{
"name": "reset"
},
{
"name": "loaded",
"count": 0
},
{
"name": "show"
},
{
"name": "config"
},
{
"name": "show"
},
{
"name": "config"
},
{
"name": "reset"
},
{
"name": "loaded",
"count": 1
},
{
"name": "loaded",
"count": 2
},
{
"name": "loaded",
"count": 3
},
{
"name": "destroy"
}
]
}
}
]
},
{
"title": "Danmuku config callback replacement and validation (published)",
"browser": "firefox",
"durationMs": 421,
"observations": [
{
"name": "danmuku-native-config",
"value": {
"unchangedIdentity": true,
"count": 2,
"unchangedCount": 2,
"unchangedOption": true,
"filterIdentity": true,
"error": "Error: [Type Error]: 'option.speed' require 'number' type, but got 'string'",
"receiver": [
true,
true
],
"emittedIdentity": true,
"input": {
"text": "included",
"time": 0,
"mode": 0,
"style": {},
"color": "#FFFFFF"
},
"queue": [
{
"text": "included",
"time": 0
}
]
}
}
]
},
{
"title": "Danmuku input native Worker startup failure falls back locally (candidate)",
"browser": "firefox",
"durationMs": 1890,
"observations": [
{
"name": "danmuku-native-worker-fault",
"value": {
"queue": [
{
"text": "FALLBACK",
"time": 0,
"mode": 1
}
],
"workers": [
{
"url": "blob:http://127.0.0.1:8084/4083df27-c02e-41c8-89c5-27f7af71156d",
"terminated": 1,
"replies": []
}
],
"urls": [
"blob:http://127.0.0.1:8084/5c60ae55-0471-466e-a74d-6bce0b3bfcee",
"blob:http://127.0.0.1:8084/4083df27-c02e-41c8-89c5-27f7af71156d"
],
"revoked": [
"blob:http://127.0.0.1:8084/4083df27-c02e-41c8-89c5-27f7af71156d",
"blob:http://127.0.0.1:8084/5c60ae55-0471-466e-a74d-6bce0b3bfcee"
],
"errors": [],
"fault": "Test replaces only the newly created native parser Worker script with a thrown startup Error; fetch, fallback parser and error dispatch remain real."
}
}
]
},
{
"title": "Danmuku input native parser cleanup and rejected fetch (candidate)",
"browser": "firefox",
"durationMs": 617,
"observations": [
{
"name": "danmuku-native-parser",
"value": {
"parsed": [
{
"text": "A & B",
"time": 0,
"mode": 0,
"color": "#ff",
"userID": "user",
"rowID": 456
},
{
"text": "TOP",
"time": 2,
"mode": 2,
"color": "#ffffff",
"userID": "u",
"rowID": 789
}
],
"emptyIdentity": true,
"beforeDestroy": 2,
"rejection": "TypeError: NetworkError when attempting to fetch resource.",
"parserWorkers": [
{
"url": "blob:http://127.0.0.1:8084/1b9c05c4-ef91-4a62-a209-1e06e6f0d1c1",
"terminated": 1,
"replies": [
{
"danmus": [
{
"text": "A & B",
"time": 0,
"mode": 0,
"fontSize": 25,
"color": "#ff",
"timestamp": 123,
"pool": 0,
"userID": "user",
"rowID": 456,
"style": {}
},
{
"text": "TOP",
"time": 2,
"mode": 2,
"fontSize": 20,
"color": "#ffffff",
"timestamp": 124,
"pool": 0,
"userID": "u",
"rowID": 789,
"style": {}
}
],
"id": 1
}
]
},
{
"url": "blob:http://127.0.0.1:8084/35ff1f0f-60b7-4b32-ad05-e93ca5cbe27e",
"terminated": 1,
"replies": [
{
"danmus": [],
"id": 2
}
]
}
],
"urls": [
"blob:http://127.0.0.1:8084/2c32276b-9b15-4195-98d7-b7097f6987cf",
"blob:http://127.0.0.1:8084/1b9c05c4-ef91-4a62-a209-1e06e6f0d1c1",
"blob:http://127.0.0.1:8084/35ff1f0f-60b7-4b32-ad05-e93ca5cbe27e"
],
"revoked": [
"blob:http://127.0.0.1:8084/1b9c05c4-ef91-4a62-a209-1e06e6f0d1c1",
"blob:http://127.0.0.1:8084/35ff1f0f-60b7-4b32-ad05-e93ca5cbe27e"
],
"workers": [
{
"url": "blob:http://127.0.0.1:8084/2c32276b-9b15-4195-98d7-b7097f6987cf",
"terminated": 1,
"replies": []
},
{
"url": "blob:http://127.0.0.1:8084/1b9c05c4-ef91-4a62-a209-1e06e6f0d1c1",
"terminated": 1,
"replies": [
{
"danmus": [
{
"text": "A & B",
"time": 0,
"mode": 0,
"fontSize": 25,
"color": "#ff",
"timestamp": 123,
"pool": 0,
"userID": "user",
"rowID": 456,
"style": {}
},
{
"text": "TOP",
"time": 2,
"mode": 2,
"fontSize": 20,
"color": "#ffffff",
"timestamp": 124,
"pool": 0,
"userID": "u",
"rowID": 789,
"style": {}
}
],
"id": 1
}
]
},
{
"url": "blob:http://127.0.0.1:8084/35ff1f0f-60b7-4b32-ad05-e93ca5cbe27e",
"terminated": 1,
"replies": [
{
"danmus": [],
"id": 2
}
]
}
],
"events": [
{
"name": "show"
},
{
"name": "config"
},
{
"name": "reset"
},
{
"name": "loaded",
"count": 0
},
{
"name": "loaded",
"count": 2
},
{
"name": "loaded",
"count": 2
},
{
"name": "error",
"error": "TypeError: NetworkError when attempting to fetch resource."
},
{
"name": "destroy"
}
]
}
}
]
},
{
"title": "Danmuku input replacement append and destruction (candidate)",
"browser": "firefox",
"durationMs": 440,
"observations": [
{
"name": "danmuku-native-input-ownership",
"value": {
"initialEvents": [
"show",
"config",
"reset",
"loaded"
],
"latestIdentity": true,
"oldIdentity": true,
"destroyedIdentity": true,
"queue": [
{
"text": "new",
"time": 0
},
{
"text": "append B",
"time": 0.5
},
{
"text": "append A",
"time": 0.5
}
],
"finalQueue": [
"new",
"append B",
"append A"
],
"loadedBefore": 4,
"loadedAfter": 4,
"events": [
{
"name": "show"
},
{
"name": "config"
},
{
"name": "reset"
},
{
"name": "loaded",
"count": 0
},
{
"name": "show"
},
{
"name": "config"
},
{
"name": "show"
},
{
"name": "config"
},
{
"name": "reset"
},
{
"name": "loaded",
"count": 1
},
{
"name": "loaded",
"count": 2
},
{
"name": "loaded",
"count": 3
},
{
"name": "destroy"
}
]
}
}
]
},
{
"title": "Danmuku config callback replacement and validation (candidate)",
"browser": "firefox",
"durationMs": 570,
"observations": [
{
"name": "danmuku-native-config",
"value": {
"unchangedIdentity": true,
"count": 2,
"unchangedCount": 2,
"unchangedOption": true,
"filterIdentity": true,
"error": "Error: [Type Error]: 'option.speed' require 'number' type, but got 'string'",
"receiver": [
true,
true
],
"emittedIdentity": true,
"input": {
"text": "included",
"time": 0,
"mode": 0,
"style": {},
"color": "#FFFFFF"
},
"queue": [
{
"text": "included",
"time": 0
}
]
}
}
]
},
{
"title": "Danmuku input native Worker startup failure falls back locally (published)",
"browser": "webkit",
"durationMs": 1782,
"observations": [
{
"name": "danmuku-native-worker-fault",
"value": {
"queue": [
{
"text": "FALLBACK",
"time": 0,
"mode": 1
}
],
"workers": [
{
"url": "blob:http://127.0.0.1:8084/e3e62931-e387-4c65-8166-6ffb496729dc",
"terminated": 1,
"replies": []
}
],
"urls": [
"blob:http://127.0.0.1:8084/954becc1-c45b-4905-a97e-ae0ff3b7a821",
"blob:http://127.0.0.1:8084/e3e62931-e387-4c65-8166-6ffb496729dc"
],
"revoked": [
"",
"blob:http://127.0.0.1:8084/e3e62931-e387-4c65-8166-6ffb496729dc",
"blob:http://127.0.0.1:8084/954becc1-c45b-4905-a97e-ae0ff3b7a821"
],
"errors": [],
"fault": "Test replaces only the newly created native parser Worker script with a thrown startup Error; fetch, fallback parser and error dispatch remain real."
}
}
]
},
{
"title": "Danmuku input native parser cleanup and rejected fetch (published)",
"browser": "webkit",
"durationMs": 1470,
"observations": [
{
"name": "danmuku-native-parser",
"value": {
"parsed": [
{
"text": "A & B",
"time": 0,
"mode": 0,
"color": "#ff",
"userID": "user",
"rowID": 456
},
{
"text": "TOP",
"time": 2,
"mode": 2,
"color": "#ffffff",
"userID": "u",
"rowID": 789
}
],
"emptyIdentity": true,
"beforeDestroy": 2,
"rejection": "TypeError: Load failed",
"parserWorkers": [
{
"url": "blob:http://127.0.0.1:8084/4979bfc0-3c22-4f92-8afd-8842248c265a",
"terminated": 1,
"replies": [
{
"danmus": [
{
"text": "A & B",
"time": 0,
"mode": 0,
"fontSize": 25,
"color": "#ff",
"timestamp": 123,
"pool": 0,
"userID": "user",
"rowID": 456,
"style": {}
},
{
"text": "TOP",
"time": 2,
"mode": 2,
"fontSize": 20,
"color": "#ffffff",
"timestamp": 124,
"pool": 0,
"userID": "u",
"rowID": 789,
"style": {}
}
],
"id": 1
}
]
},
{
"url": "blob:http://127.0.0.1:8084/b16334eb-f5b7-4439-b832-fe2460031265",
"terminated": 1,
"replies": [
{
"danmus": [],
"id": 2
}
]
}
],
"urls": [
"blob:http://127.0.0.1:8084/c436d1a3-a98c-47b7-97a8-62ef8c943186",
"blob:http://127.0.0.1:8084/4979bfc0-3c22-4f92-8afd-8842248c265a",
"blob:http://127.0.0.1:8084/b16334eb-f5b7-4439-b832-fe2460031265"
],
"revoked": [
"",
"blob:http://127.0.0.1:8084/4979bfc0-3c22-4f92-8afd-8842248c265a",
"blob:http://127.0.0.1:8084/b16334eb-f5b7-4439-b832-fe2460031265"
],
"workers": [
{
"url": "blob:http://127.0.0.1:8084/c436d1a3-a98c-47b7-97a8-62ef8c943186",
"terminated": 1,
"replies": []
},
{
"url": "blob:http://127.0.0.1:8084/4979bfc0-3c22-4f92-8afd-8842248c265a",
"terminated": 1,
"replies": [
{
"danmus": [
{
"text": "A & B",
"time": 0,
"mode": 0,
"fontSize": 25,
"color": "#ff",
"timestamp": 123,
"pool": 0,
"userID": "user",
"rowID": 456,
"style": {}
},
{
"text": "TOP",
"time": 2,
"mode": 2,
"fontSize": 20,
"color": "#ffffff",
"timestamp": 124,
"pool": 0,
"userID": "u",
"rowID": 789,
"style": {}
}
],
"id": 1
}
]
},
{
"url": "blob:http://127.0.0.1:8084/b16334eb-f5b7-4439-b832-fe2460031265",
"terminated": 1,
"replies": [
{
"danmus": [],
"id": 2
}
]
}
],
"events": [
{
"name": "show"
},
{
"name": "config"
},
{
"name": "reset"
},
{
"name": "loaded",
"count": 0
},
{
"name": "loaded",
"count": 2
},
{
"name": "loaded",
"count": 2
},
{
"name": "error",
"error": "TypeError: Load failed"
},
{
"name": "destroy"
}
]
}
}
]
},
{
"title": "Danmuku input replacement append and destruction (published)",
"browser": "webkit",
"durationMs": 1333,
"observations": [
{
"name": "danmuku-native-input-ownership",
"value": {
"initialEvents": [
"show",
"config",
"reset",
"loaded"
],
"latestIdentity": true,
"oldIdentity": true,
"destroyedIdentity": true,
"queue": [
{
"text": "new",
"time": 0
},
{
"text": "append B",
"time": 0.5
},
{
"text": "append A",
"time": 0.5
}
],
"finalQueue": [
"new",
"append B",
"append A"
],
"loadedBefore": 4,
"loadedAfter": 4,
"events": [
{
"name": "show"
},
{
"name": "config"
},
{
"name": "reset"
},
{
"name": "loaded",
"count": 0
},
{
"name": "show"
},
{
"name": "config"
},
{
"name": "show"
},
{
"name": "config"
},
{
"name": "reset"
},
{
"name": "loaded",
"count": 1
},
{
"name": "loaded",
"count": 2
},
{
"name": "loaded",
"count": 3
},
{
"name": "destroy"
}
]
}
}
]
},
{
"title": "Danmuku config callback replacement and validation (published)",
"browser": "webkit",
"durationMs": 1293,
"observations": [
{
"name": "danmuku-native-config",
"value": {
"unchangedIdentity": true,
"count": 2,
"unchangedCount": 2,
"unchangedOption": true,
"filterIdentity": true,
"error": "Error: [Type Error]: 'option.speed' require 'number' type, but got 'string'",
"receiver": [
true,
true
],
"emittedIdentity": true,
"input": {
"text": "included",
"time": 0,
"mode": 0,
"style": {},
"color": "#FFFFFF"
},
"queue": [
{
"text": "included",
"time": 0
}
]
}
}
]
},
{
"title": "Danmuku input native Worker startup failure falls back locally (candidate)",
"browser": "webkit",
"durationMs": 1717,
"observations": [
{
"name": "danmuku-native-worker-fault",
"value": {
"queue": [
{
"text": "FALLBACK",
"time": 0,
"mode": 1
}
],
"workers": [
{
"url": "blob:http://127.0.0.1:8084/a036e468-7f3a-4272-8d3a-7fa8acf5cbef",
"terminated": 1,
"replies": []
}
],
"urls": [
"blob:http://127.0.0.1:8084/9a41ce02-f5b5-46bf-bade-0b91976bbb1a",
"blob:http://127.0.0.1:8084/a036e468-7f3a-4272-8d3a-7fa8acf5cbef"
],
"revoked": [
"blob:http://127.0.0.1:8084/a036e468-7f3a-4272-8d3a-7fa8acf5cbef",
"blob:http://127.0.0.1:8084/9a41ce02-f5b5-46bf-bade-0b91976bbb1a"
],
"errors": [],
"fault": "Test replaces only the newly created native parser Worker script with a thrown startup Error; fetch, fallback parser and error dispatch remain real."
}
}
]
},
{
"title": "Danmuku input native parser cleanup and rejected fetch (candidate)",
"browser": "webkit",
"durationMs": 1286,
"observations": [
{
"name": "danmuku-native-parser",
"value": {
"parsed": [
{
"text": "A & B",
"time": 0,
"mode": 0,
"color": "#ff",
"userID": "user",
"rowID": 456
},
{
"text": "TOP",
"time": 2,
"mode": 2,
"color": "#ffffff",
"userID": "u",
"rowID": 789
}
],
"emptyIdentity": true,
"beforeDestroy": 2,
"rejection": "TypeError: Load failed",
"parserWorkers": [
{
"url": "blob:http://127.0.0.1:8084/2ae184c9-323e-409d-9bfa-612ee760bd02",
"terminated": 1,
"replies": [
{
"danmus": [
{
"text": "A & B",
"time": 0,
"mode": 0,
"fontSize": 25,
"color": "#ff",
"timestamp": 123,
"pool": 0,
"userID": "user",
"rowID": 456,
"style": {}
},
{
"text": "TOP",
"time": 2,
"mode": 2,
"fontSize": 20,
"color": "#ffffff",
"timestamp": 124,
"pool": 0,
"userID": "u",
"rowID": 789,
"style": {}
}
],
"id": 1
}
]
},
{
"url": "blob:http://127.0.0.1:8084/33962da8-a6c5-42fa-8bd9-ad02d8a9a0bf",
"terminated": 1,
"replies": [
{
"danmus": [],
"id": 2
}
]
}
],
"urls": [
"blob:http://127.0.0.1:8084/d33f1edb-1560-450c-a1ab-ca08b83b87f9",
"blob:http://127.0.0.1:8084/2ae184c9-323e-409d-9bfa-612ee760bd02",
"blob:http://127.0.0.1:8084/33962da8-a6c5-42fa-8bd9-ad02d8a9a0bf"
],
"revoked": [
"blob:http://127.0.0.1:8084/2ae184c9-323e-409d-9bfa-612ee760bd02",
"blob:http://127.0.0.1:8084/33962da8-a6c5-42fa-8bd9-ad02d8a9a0bf"
],
"workers": [
{
"url": "blob:http://127.0.0.1:8084/d33f1edb-1560-450c-a1ab-ca08b83b87f9",
"terminated": 1,
"replies": []
},
{
"url": "blob:http://127.0.0.1:8084/2ae184c9-323e-409d-9bfa-612ee760bd02",
"terminated": 1,
"replies": [
{
"danmus": [
{
"text": "A & B",
"time": 0,
"mode": 0,
"fontSize": 25,
"color": "#ff",
"timestamp": 123,
"pool": 0,
"userID": "user",
"rowID": 456,
"style": {}
},
{
"text": "TOP",
"time": 2,
"mode": 2,
"fontSize": 20,
"color": "#ffffff",
"timestamp": 124,
"pool": 0,
"userID": "u",
"rowID": 789,
"style": {}
}
],
"id": 1
}
]
},
{
"url": "blob:http://127.0.0.1:8084/33962da8-a6c5-42fa-8bd9-ad02d8a9a0bf",
"terminated": 1,
"replies": [
{
"danmus": [],
"id": 2
}
]
}
],
"events": [
{
"name": "show"
},
{
"name": "config"
},
{
"name": "reset"
},
{
"name": "loaded",
"count": 0
},
{
"name": "loaded",
"count": 2
},
{
"name": "loaded",
"count": 2
},
{
"name": "error",
"error": "TypeError: Load failed"
},
{
"name": "destroy"
}
]
}
}
]
},
{
"title": "Danmuku input replacement append and destruction (candidate)",
"browser": "webkit",
"durationMs": 1519,
"observations": [
{
"name": "danmuku-native-input-ownership",
"value": {
"initialEvents": [
"show",
"config",
"reset",
"loaded"
],
"latestIdentity": true,
"oldIdentity": true,
"destroyedIdentity": true,
"queue": [
{
"text": "new",
"time": 0
},
{
"text": "append B",
"time": 0.5
},
{
"text": "append A",
"time": 0.5
}
],
"finalQueue": [
"new",
"append B",
"append A"
],
"loadedBefore": 4,
"loadedAfter": 4,
"events": [
{
"name": "show"
},
{
"name": "config"
},
{
"name": "reset"
},
{
"name": "loaded",
"count": 0
},
{
"name": "show"
},
{
"name": "config"
},
{
"name": "show"
},
{
"name": "config"
},
{
"name": "reset"
},
{
"name": "loaded",
"count": 1
},
{
"name": "loaded",
"count": 2
},
{
"name": "loaded",
"count": 3
},
{
"name": "destroy"
}
]
}
}
]
},
{
"title": "Danmuku config callback replacement and validation (candidate)",
"browser": "webkit",
"durationMs": 1321,
"observations": [
{
"name": "danmuku-native-config",
"value": {
"unchangedIdentity": true,
"count": 2,
"unchangedCount": 2,
"unchangedOption": true,
"filterIdentity": true,
"error": "Error: [Type Error]: 'option.speed' require 'number' type, but got 'string'",
"receiver": [
true,
true
],
"emittedIdentity": true,
"input": {
"text": "included",
"time": 0,
"mode": 0,
"style": {},
"color": "#FFFFFF"
},
"queue": [
{
"text": "included",
"time": 0
}
]
}
}
]
},
{
"title": "published: shared setting mount preserves the surviving instance and later user changes",
"browser": "chromium",
"durationMs": 277,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "published",
"scenario": "normal",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.legacy.js",
"sha256": "249f576e256457c2e47e945b9eb18f78877b658163b266c1153028d1f46d30b0",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
},
{
"terminated": 1
}
],
"sends": [],
"messages": [],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "published: invalid setting mount rolls back plugin resources while preserving the original error",
"browser": "chromium",
"durationMs": 303,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "published",
"scenario": "normal",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.legacy.js",
"sha256": "249f576e256457c2e47e945b9eb18f78877b658163b266c1153028d1f46d30b0",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
},
{
"terminated": 1
}
],
"sends": [],
"messages": [],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "published: destroy cancels pending setting send without clearing retained input or starting a lock",
"browser": "chromium",
"durationMs": 475,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "published",
"scenario": "pending",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.legacy.js",
"sha256": "249f576e256457c2e47e945b9eb18f78877b658163b266c1153028d1f46d30b0",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
}
],
"sends": [
{
"index": 0,
"text": "PENDING",
"receiver": true
}
],
"messages": [],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "published: destroy clears active send timer and leaves another mounted instance usable",
"browser": "chromium",
"durationMs": 460,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "published",
"scenario": "normal",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.legacy.js",
"sha256": "249f576e256457c2e47e945b9eb18f78877b658163b266c1153028d1f46d30b0",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
},
{
"terminated": 1
}
],
"sends": [
{
"index": 0,
"text": "LOCK",
"receiver": true
},
{
"index": 1,
"text": "SECOND",
"receiver": true
}
],
"messages": [],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "published: rejected setting callback retains input and original console error without an unhandled rejection",
"browser": "chromium",
"durationMs": 373,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "published",
"scenario": "reject",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.legacy.js",
"sha256": "249f576e256457c2e47e945b9eb18f78877b658163b266c1153028d1f46d30b0",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
}
],
"sends": [
{
"index": 0,
"text": "REJECT",
"receiver": true
}
],
"messages": [],
"errors": [
[
"Error emitting danmuku:",
"controlled setting rejection"
]
],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "published: destroy false releases actual renderer nodes while retaining the player shell",
"browser": "chromium",
"durationMs": 428,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "published",
"scenario": "normal",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.legacy.js",
"sha256": "249f576e256457c2e47e945b9eb18f78877b658163b266c1153028d1f46d30b0",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
}
],
"sends": [],
"messages": [
"VISIBLE"
],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "published: replacement load removes a moved renderer node and preserves unrelated body content",
"browser": "chromium",
"durationMs": 441,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "published",
"scenario": "normal",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.legacy.js",
"sha256": "249f576e256457c2e47e945b9eb18f78877b658163b266c1153028d1f46d30b0",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
}
],
"sends": [],
"messages": [
"MOVED"
],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "published: narrow heatmap invalid sampling stays responsive and two instances have independent gradients",
"browser": "chromium",
"durationMs": 474,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "published",
"scenario": "heatmap",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.legacy.js",
"sha256": "249f576e256457c2e47e945b9eb18f78877b658163b266c1153028d1f46d30b0",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-heatmap",
"value": {
"ids": [
"heatmap-solids",
"heatmap-solids-1"
],
"fills": [
"url(#heatmap-solids)",
"url(#heatmap-solids-1)"
],
"offsets": [
"25%",
"75%"
],
"validPaths": true
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
},
{
"terminated": 1
}
],
"sends": [],
"messages": [],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "candidate: shared setting mount preserves the surviving instance and later user changes",
"browser": "chromium",
"durationMs": 317,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "candidate",
"scenario": "normal",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.legacy.js",
"sha256": "249f576e256457c2e47e945b9eb18f78877b658163b266c1153028d1f46d30b0",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
},
{
"terminated": 1
}
],
"sends": [],
"messages": [],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "candidate: invalid setting mount rolls back plugin resources while preserving the original error",
"browser": "chromium",
"durationMs": 316,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "candidate",
"scenario": "normal",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.legacy.js",
"sha256": "249f576e256457c2e47e945b9eb18f78877b658163b266c1153028d1f46d30b0",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
},
{
"terminated": 1
}
],
"sends": [],
"messages": [],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "candidate: destroy cancels pending setting send without clearing retained input or starting a lock",
"browser": "chromium",
"durationMs": 391,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "candidate",
"scenario": "pending",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.legacy.js",
"sha256": "249f576e256457c2e47e945b9eb18f78877b658163b266c1153028d1f46d30b0",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
}
],
"sends": [
{
"index": 0,
"text": "PENDING",
"receiver": true
}
],
"messages": [],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "candidate: destroy clears active send timer and leaves another mounted instance usable",
"browser": "chromium",
"durationMs": 460,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "candidate",
"scenario": "normal",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.legacy.js",
"sha256": "249f576e256457c2e47e945b9eb18f78877b658163b266c1153028d1f46d30b0",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
},
{
"terminated": 1
}
],
"sends": [
{
"index": 0,
"text": "LOCK",
"receiver": true
},
{
"index": 1,
"text": "SECOND",
"receiver": true
}
],
"messages": [],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "candidate: rejected setting callback retains input and original console error without an unhandled rejection",
"browser": "chromium",
"durationMs": 392,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "candidate",
"scenario": "reject",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.legacy.js",
"sha256": "249f576e256457c2e47e945b9eb18f78877b658163b266c1153028d1f46d30b0",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
}
],
"sends": [
{
"index": 0,
"text": "REJECT",
"receiver": true
}
],
"messages": [],
"errors": [
[
"Error emitting danmuku:",
"controlled setting rejection"
]
],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "candidate: destroy false releases actual renderer nodes while retaining the player shell",
"browser": "chromium",
"durationMs": 441,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "candidate",
"scenario": "normal",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.legacy.js",
"sha256": "249f576e256457c2e47e945b9eb18f78877b658163b266c1153028d1f46d30b0",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
}
],
"sends": [],
"messages": [
"VISIBLE"
],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "candidate: replacement load removes a moved renderer node and preserves unrelated body content",
"browser": "chromium",
"durationMs": 458,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "candidate",
"scenario": "normal",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.legacy.js",
"sha256": "249f576e256457c2e47e945b9eb18f78877b658163b266c1153028d1f46d30b0",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
}
],
"sends": [],
"messages": [
"MOVED"
],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "candidate: narrow heatmap invalid sampling stays responsive and two instances have independent gradients",
"browser": "chromium",
"durationMs": 511,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "candidate",
"scenario": "heatmap",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.legacy.js",
"sha256": "249f576e256457c2e47e945b9eb18f78877b658163b266c1153028d1f46d30b0",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-heatmap",
"value": {
"ids": [
"heatmap-solids",
"heatmap-solids-1"
],
"fills": [
"url(#heatmap-solids)",
"url(#heatmap-solids-1)"
],
"offsets": [
"25%",
"75%"
],
"validPaths": true
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
},
{
"terminated": 1
}
],
"sends": [],
"messages": [],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "published: shared setting mount preserves the surviving instance and later user changes",
"browser": "firefox",
"durationMs": 686,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "published",
"scenario": "normal",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.legacy.js",
"sha256": "249f576e256457c2e47e945b9eb18f78877b658163b266c1153028d1f46d30b0",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
},
{
"terminated": 1
}
],
"sends": [],
"messages": [],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "published: invalid setting mount rolls back plugin resources while preserving the original error",
"browser": "firefox",
"durationMs": 1030,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "published",
"scenario": "normal",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.legacy.js",
"sha256": "249f576e256457c2e47e945b9eb18f78877b658163b266c1153028d1f46d30b0",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
},
{
"terminated": 1
}
],
"sends": [],
"messages": [],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "published: destroy cancels pending setting send without clearing retained input or starting a lock",
"browser": "firefox",
"durationMs": 1008,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "published",
"scenario": "pending",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.legacy.js",
"sha256": "249f576e256457c2e47e945b9eb18f78877b658163b266c1153028d1f46d30b0",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
}
],
"sends": [
{
"index": 0,
"text": "PENDING",
"receiver": true
}
],
"messages": [],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "published: destroy clears active send timer and leaves another mounted instance usable",
"browser": "firefox",
"durationMs": 965,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "published",
"scenario": "normal",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.legacy.js",
"sha256": "249f576e256457c2e47e945b9eb18f78877b658163b266c1153028d1f46d30b0",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
},
{
"terminated": 1
}
],
"sends": [
{
"index": 0,
"text": "LOCK",
"receiver": true
},
{
"index": 1,
"text": "SECOND",
"receiver": true
}
],
"messages": [],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "published: rejected setting callback retains input and original console error without an unhandled rejection",
"browser": "firefox",
"durationMs": 708,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "published",
"scenario": "reject",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.legacy.js",
"sha256": "249f576e256457c2e47e945b9eb18f78877b658163b266c1153028d1f46d30b0",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
}
],
"sends": [
{
"index": 0,
"text": "REJECT",
"receiver": true
}
],
"messages": [],
"errors": [
[
"Error emitting danmuku:",
"controlled setting rejection"
]
],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "published: destroy false releases actual renderer nodes while retaining the player shell",
"browser": "firefox",
"durationMs": 1344,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "published",
"scenario": "normal",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.legacy.js",
"sha256": "249f576e256457c2e47e945b9eb18f78877b658163b266c1153028d1f46d30b0",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
}
],
"sends": [],
"messages": [
"VISIBLE"
],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "published: replacement load removes a moved renderer node and preserves unrelated body content",
"browser": "firefox",
"durationMs": 804,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "published",
"scenario": "normal",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.legacy.js",
"sha256": "249f576e256457c2e47e945b9eb18f78877b658163b266c1153028d1f46d30b0",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
}
],
"sends": [],
"messages": [
"MOVED"
],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "published: narrow heatmap invalid sampling stays responsive and two instances have independent gradients",
"browser": "firefox",
"durationMs": 704,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "published",
"scenario": "heatmap",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.legacy.js",
"sha256": "249f576e256457c2e47e945b9eb18f78877b658163b266c1153028d1f46d30b0",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-heatmap",
"value": {
"ids": [
"heatmap-solids",
"heatmap-solids-1"
],
"fills": [
"url(#heatmap-solids)",
"url(#heatmap-solids-1)"
],
"offsets": [
"25%",
"75%"
],
"validPaths": true
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
},
{
"terminated": 1
}
],
"sends": [],
"messages": [],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "candidate: shared setting mount preserves the surviving instance and later user changes",
"browser": "firefox",
"durationMs": 1157,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "candidate",
"scenario": "normal",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.legacy.js",
"sha256": "249f576e256457c2e47e945b9eb18f78877b658163b266c1153028d1f46d30b0",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
},
{
"terminated": 1
}
],
"sends": [],
"messages": [],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "candidate: invalid setting mount rolls back plugin resources while preserving the original error",
"browser": "firefox",
"durationMs": 668,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "candidate",
"scenario": "normal",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.legacy.js",
"sha256": "249f576e256457c2e47e945b9eb18f78877b658163b266c1153028d1f46d30b0",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
},
{
"terminated": 1
}
],
"sends": [],
"messages": [],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "candidate: destroy cancels pending setting send without clearing retained input or starting a lock",
"browser": "firefox",
"durationMs": 794,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "candidate",
"scenario": "pending",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.legacy.js",
"sha256": "249f576e256457c2e47e945b9eb18f78877b658163b266c1153028d1f46d30b0",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
}
],
"sends": [
{
"index": 0,
"text": "PENDING",
"receiver": true
}
],
"messages": [],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "candidate: destroy clears active send timer and leaves another mounted instance usable",
"browser": "firefox",
"durationMs": 1098,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "candidate",
"scenario": "normal",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.legacy.js",
"sha256": "249f576e256457c2e47e945b9eb18f78877b658163b266c1153028d1f46d30b0",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
},
{
"terminated": 1
}
],
"sends": [
{
"index": 0,
"text": "LOCK",
"receiver": true
},
{
"index": 1,
"text": "SECOND",
"receiver": true
}
],
"messages": [],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "candidate: rejected setting callback retains input and original console error without an unhandled rejection",
"browser": "firefox",
"durationMs": 625,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "candidate",
"scenario": "reject",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.legacy.js",
"sha256": "249f576e256457c2e47e945b9eb18f78877b658163b266c1153028d1f46d30b0",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
}
],
"sends": [
{
"index": 0,
"text": "REJECT",
"receiver": true
}
],
"messages": [],
"errors": [
[
"Error emitting danmuku:",
"controlled setting rejection"
]
],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "candidate: destroy false releases actual renderer nodes while retaining the player shell",
"browser": "firefox",
"durationMs": 1423,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "candidate",
"scenario": "normal",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.legacy.js",
"sha256": "249f576e256457c2e47e945b9eb18f78877b658163b266c1153028d1f46d30b0",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
}
],
"sends": [],
"messages": [
"VISIBLE"
],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "candidate: replacement load removes a moved renderer node and preserves unrelated body content",
"browser": "firefox",
"durationMs": 665,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "candidate",
"scenario": "normal",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.legacy.js",
"sha256": "249f576e256457c2e47e945b9eb18f78877b658163b266c1153028d1f46d30b0",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
}
],
"sends": [],
"messages": [
"MOVED"
],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "candidate: narrow heatmap invalid sampling stays responsive and two instances have independent gradients",
"browser": "firefox",
"durationMs": 578,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "candidate",
"scenario": "heatmap",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.legacy.js",
"sha256": "249f576e256457c2e47e945b9eb18f78877b658163b266c1153028d1f46d30b0",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-heatmap",
"value": {
"ids": [
"heatmap-solids",
"heatmap-solids-1"
],
"fills": [
"url(#heatmap-solids)",
"url(#heatmap-solids-1)"
],
"offsets": [
"25%",
"75%"
],
"validPaths": true
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
},
{
"terminated": 1
}
],
"sends": [],
"messages": [],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "published: shared setting mount preserves the surviving instance and later user changes",
"browser": "webkit",
"durationMs": 1376,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "published",
"scenario": "normal",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.legacy.js",
"sha256": "249f576e256457c2e47e945b9eb18f78877b658163b266c1153028d1f46d30b0",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
},
{
"terminated": 1
}
],
"sends": [],
"messages": [],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "published: invalid setting mount rolls back plugin resources while preserving the original error",
"browser": "webkit",
"durationMs": 1484,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "published",
"scenario": "normal",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.legacy.js",
"sha256": "249f576e256457c2e47e945b9eb18f78877b658163b266c1153028d1f46d30b0",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
},
{
"terminated": 1
}
],
"sends": [],
"messages": [],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "published: destroy cancels pending setting send without clearing retained input or starting a lock",
"browser": "webkit",
"durationMs": 1663,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "published",
"scenario": "pending",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.legacy.js",
"sha256": "249f576e256457c2e47e945b9eb18f78877b658163b266c1153028d1f46d30b0",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
}
],
"sends": [
{
"index": 0,
"text": "PENDING",
"receiver": true
}
],
"messages": [],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "published: destroy clears active send timer and leaves another mounted instance usable",
"browser": "webkit",
"durationMs": 2226,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "published",
"scenario": "normal",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.legacy.js",
"sha256": "249f576e256457c2e47e945b9eb18f78877b658163b266c1153028d1f46d30b0",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
},
{
"terminated": 1
}
],
"sends": [
{
"index": 0,
"text": "LOCK",
"receiver": true
},
{
"index": 1,
"text": "SECOND",
"receiver": true
}
],
"messages": [],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "published: rejected setting callback retains input and original console error without an unhandled rejection",
"browser": "webkit",
"durationMs": 1716,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "published",
"scenario": "reject",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.legacy.js",
"sha256": "249f576e256457c2e47e945b9eb18f78877b658163b266c1153028d1f46d30b0",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
}
],
"sends": [
{
"index": 0,
"text": "REJECT",
"receiver": true
}
],
"messages": [],
"errors": [
[
"Error emitting danmuku:",
"controlled setting rejection"
]
],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "published: destroy false releases actual renderer nodes while retaining the player shell",
"browser": "webkit",
"durationMs": 1444,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "published",
"scenario": "normal",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.legacy.js",
"sha256": "249f576e256457c2e47e945b9eb18f78877b658163b266c1153028d1f46d30b0",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
}
],
"sends": [],
"messages": [
"VISIBLE"
],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "published: replacement load removes a moved renderer node and preserves unrelated body content",
"browser": "webkit",
"durationMs": 1704,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "published",
"scenario": "normal",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.legacy.js",
"sha256": "249f576e256457c2e47e945b9eb18f78877b658163b266c1153028d1f46d30b0",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
}
],
"sends": [],
"messages": [
"MOVED"
],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "published: narrow heatmap invalid sampling stays responsive and two instances have independent gradients",
"browser": "webkit",
"durationMs": 1955,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "published",
"scenario": "heatmap",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.legacy.js",
"sha256": "249f576e256457c2e47e945b9eb18f78877b658163b266c1153028d1f46d30b0",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-heatmap",
"value": {
"ids": [
"heatmap-solids",
"heatmap-solids-1"
],
"fills": [
"url(#heatmap-solids)",
"url(#heatmap-solids-1)"
],
"offsets": [
"25%",
"75%"
],
"validPaths": true
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
},
{
"terminated": 1
}
],
"sends": [],
"messages": [],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "candidate: shared setting mount preserves the surviving instance and later user changes",
"browser": "webkit",
"durationMs": 1453,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "candidate",
"scenario": "normal",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.legacy.js",
"sha256": "249f576e256457c2e47e945b9eb18f78877b658163b266c1153028d1f46d30b0",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
},
{
"terminated": 1
}
],
"sends": [],
"messages": [],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "candidate: invalid setting mount rolls back plugin resources while preserving the original error",
"browser": "webkit",
"durationMs": 1418,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "candidate",
"scenario": "normal",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.legacy.js",
"sha256": "249f576e256457c2e47e945b9eb18f78877b658163b266c1153028d1f46d30b0",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
},
{
"terminated": 1
}
],
"sends": [],
"messages": [],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "candidate: destroy cancels pending setting send without clearing retained input or starting a lock",
"browser": "webkit",
"durationMs": 1921,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "candidate",
"scenario": "pending",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.legacy.js",
"sha256": "249f576e256457c2e47e945b9eb18f78877b658163b266c1153028d1f46d30b0",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
}
],
"sends": [
{
"index": 0,
"text": "PENDING",
"receiver": true
}
],
"messages": [],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "candidate: destroy clears active send timer and leaves another mounted instance usable",
"browser": "webkit",
"durationMs": 2326,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "candidate",
"scenario": "normal",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.legacy.js",
"sha256": "249f576e256457c2e47e945b9eb18f78877b658163b266c1153028d1f46d30b0",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
},
{
"terminated": 1
}
],
"sends": [
{
"index": 0,
"text": "LOCK",
"receiver": true
},
{
"index": 1,
"text": "SECOND",
"receiver": true
}
],
"messages": [],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "candidate: rejected setting callback retains input and original console error without an unhandled rejection",
"browser": "webkit",
"durationMs": 1618,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "candidate",
"scenario": "reject",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.legacy.js",
"sha256": "249f576e256457c2e47e945b9eb18f78877b658163b266c1153028d1f46d30b0",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
}
],
"sends": [
{
"index": 0,
"text": "REJECT",
"receiver": true
}
],
"messages": [],
"errors": [
[
"Error emitting danmuku:",
"controlled setting rejection"
]
],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "candidate: destroy false releases actual renderer nodes while retaining the player shell",
"browser": "webkit",
"durationMs": 1651,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "candidate",
"scenario": "normal",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.legacy.js",
"sha256": "249f576e256457c2e47e945b9eb18f78877b658163b266c1153028d1f46d30b0",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
}
],
"sends": [],
"messages": [
"VISIBLE"
],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "candidate: replacement load removes a moved renderer node and preserves unrelated body content",
"browser": "webkit",
"durationMs": 1669,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "candidate",
"scenario": "normal",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.legacy.js",
"sha256": "249f576e256457c2e47e945b9eb18f78877b658163b266c1153028d1f46d30b0",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
}
],
"sends": [],
"messages": [
"MOVED"
],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "candidate: narrow heatmap invalid sampling stays responsive and two instances have independent gradients",
"browser": "webkit",
"durationMs": 2049,
"observations": [
{
"name": "danmuku-resources-inputs",
"value": {
"core": "candidate",
"scenario": "heatmap",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.legacy.js",
"sha256": "249f576e256457c2e47e945b9eb18f78877b658163b266c1153028d1f46d30b0",
"native": "video, RAF, DOM, Worker; observe the first one-second timer after beforeEmit in the synchronous send continuation, no fake timer clock"
}
},
{
"name": "danmuku-resources-heatmap",
"value": {
"ids": [
"heatmap-solids",
"heatmap-solids-1"
],
"fills": [
"url(#heatmap-solids)",
"url(#heatmap-solids-1)"
],
"offsets": [
"25%",
"75%"
],
"validPaths": true
}
},
{
"name": "danmuku-resources-evidence",
"value": {
"workers": [
{
"terminated": 1
},
{
"terminated": 1
}
],
"sends": [],
"messages": [],
"errors": [],
"retainedSettings": 0,
"timers": 0
}
}
]
},
{
"title": "published / Candidate Danmuku candidate: accepted NaN timestamp keeps the historical current-time fallback",
"browser": "chromium",
"durationMs": 2251,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "published",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.legacy.js",
"sha256": "249f576e256457c2e47e945b9eb18f78877b658163b266c1153028d1f46d30b0",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-numeric-compatibility",
"value": {
"expected": 0.5,
"inputTime": 0.5,
"queueTime": 0.5,
"isNaN": false
}
}
]
},
{
"title": "published / Candidate Danmuku candidate: failed recovery respects synchronous destroy from the error listener",
"browser": "chromium",
"durationMs": 509,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "published",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.legacy.js",
"sha256": "249f576e256457c2e47e945b9eb18f78877b658163b266c1153028d1f46d30b0",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-recovery-reentry",
"value": {
"action": "destroy",
"sameOwner": true,
"rowState": "stop",
"isStop": true,
"isDestroy": true,
"events": [
{
"index": 0,
"event": "error",
"time": 0.127297
},
{
"index": 0,
"event": "stop",
"time": 0
},
{
"index": 0,
"event": "destroy",
"time": 0
}
],
"workers": [
{
"url": "blob:http://127.0.0.1:8084/c8dbfeb9-b569-4f9d-8673-c184346c7ca1",
"requests": [
{
"type": "getDanmuTop",
"target": {
"mode": 1,
"height": 23,
"speed": 90
},
"visibles": [],
"antiOverlap": true,
"clientWidth": 640,
"clientHeight": 360,
"marginBottom": 10,
"marginTop": 10,
"id": 1
}
],
"replies": [
{
"id": 1,
"result": 10
}
],
"terminated": 1,
"errors": [
"controlled track failure"
]
}
],
"fault": "Actual video/DOM/track Worker; dispatch an explicit native ErrorEvent and inject a throwing createWorker recovery seam. This does not claim a real CSP or browser Worker construction failure."
}
}
]
},
{
"title": "published / Candidate Danmuku candidate: failed recovery respects synchronous stop from the error listener",
"browser": "chromium",
"durationMs": 465,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "published",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.legacy.js",
"sha256": "249f576e256457c2e47e945b9eb18f78877b658163b266c1153028d1f46d30b0",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-recovery-reentry",
"value": {
"action": "stop",
"sameOwner": true,
"rowState": "stop",
"isStop": true,
"isDestroy": false,
"events": [
{
"index": 0,
"event": "error",
"time": 0.117584
},
{
"index": 0,
"event": "stop",
"time": 0.117584
}
],
"workers": [
{
"url": "blob:http://127.0.0.1:8084/f075b93a-8ad2-458a-b058-e86770cff0cc",
"requests": [
{
"type": "getDanmuTop",
"target": {
"mode": 1,
"height": 23,
"speed": 90
},
"visibles": [],
"antiOverlap": true,
"clientWidth": 640,
"clientHeight": 360,
"marginBottom": 10,
"marginTop": 10,
"id": 1
}
],
"replies": [
{
"id": 1,
"result": 10
}
],
"terminated": 1,
"errors": [
"controlled track failure"
]
}
],
"fault": "Actual video/DOM/track Worker; dispatch an explicit native ErrorEvent and inject a throwing createWorker recovery seam. This does not claim a real CSP or browser Worker construction failure."
}
}
]
},
{
"title": "published / Candidate Danmuku candidate: native pause cancels pending visibility without blocking later work",
"browser": "chromium",
"durationMs": 2806,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "published",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.legacy.js",
"sha256": "249f576e256457c2e47e945b9eb18f78877b658163b266c1153028d1f46d30b0",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-cancel",
"value": {
"action": "pause",
"before": {
"requests": [
1
],
"visible": [
"fresh-after-cancel"
]
},
"after": [
"fresh-after-cancel"
],
"cancelledSource": "An unresolved user beforeVisible Promise; native RAF, Worker and media remain active."
}
}
]
},
{
"title": "published / Candidate Danmuku candidate: native reset cancels pending visibility without blocking later work",
"browser": "chromium",
"durationMs": 2446,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "published",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.legacy.js",
"sha256": "249f576e256457c2e47e945b9eb18f78877b658163b266c1153028d1f46d30b0",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-cancel",
"value": {
"action": "reset",
"before": {
"requests": [
1
],
"visible": [
"fresh-after-cancel"
]
},
"after": [
"fresh-after-cancel"
],
"cancelledSource": "An unresolved user beforeVisible Promise; native RAF, Worker and media remain active."
}
}
]
},
{
"title": "published / Candidate Danmuku candidate: native seek cancels pending visibility without blocking later work",
"browser": "chromium",
"durationMs": 2325,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "published",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.legacy.js",
"sha256": "249f576e256457c2e47e945b9eb18f78877b658163b266c1153028d1f46d30b0",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-cancel",
"value": {
"action": "seek",
"before": {
"requests": [
1
],
"visible": [
"fresh-after-cancel"
]
},
"after": [
"fresh-after-cancel"
],
"cancelledSource": "An unresolved user beforeVisible Promise; native RAF, Worker and media remain active."
}
}
]
},
{
"title": "published / Candidate Danmuku candidate: native destroy cancels pending visibility without blocking later work",
"browser": "chromium",
"durationMs": 2304,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "published",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.legacy.js",
"sha256": "249f576e256457c2e47e945b9eb18f78877b658163b266c1153028d1f46d30b0",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-cancel",
"value": {
"action": "destroy",
"before": {
"requests": [
0
],
"visible": []
},
"after": [],
"cancelledSource": "An unresolved user beforeVisible Promise; native RAF, Worker and media remain active."
}
}
]
},
{
"title": "published / Candidate Danmuku candidate: native Worker renders three modes with synchronous filter and asynchronous beforeVisible",
"browser": "chromium",
"durationMs": 1307,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "published",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.legacy.js",
"sha256": "249f576e256457c2e47e945b9eb18f78877b658163b266c1153028d1f46d30b0",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
}
]
},
{
"title": "published / Candidate Danmuku candidate: six simultaneous fixed comments preserve usable track geometry and input order",
"browser": "chromium",
"durationMs": 1615,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "published",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.legacy.js",
"sha256": "249f576e256457c2e47e945b9eb18f78877b658163b266c1153028d1f46d30b0",
"media": "/test/pattern.mp4",
"scenario": "density",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-dense-tracks",
"value": [
{
"id": "dense-0",
"mode": "1",
"state": "stop",
"text": "TRACK 0",
"x": 285,
"y": 10,
"width": 70,
"height": 22.5,
"visibility": "visible",
"display": "block",
"transition": "",
"opacity": "1"
},
{
"id": "dense-1",
"mode": "1",
"state": "stop",
"text": "TRACK 1",
"x": 285,
"y": 33,
"width": 70,
"height": 22.5,
"visibility": "visible",
"display": "block",
"transition": "",
"opacity": "1"
},
{
"id": "dense-2",
"mode": "1",
"state": "stop",
"text": "TRACK 2",
"x": 285,
"y": 56,
"width": 70,
"height": 22.5,
"visibility": "visible",
"display": "block",
"transition": "",
"opacity": "1"
},
{
"id": "dense-3",
"mode": "1",
"state": "stop",
"text": "TRACK 3",
"x": 285,
"y": 79,
"width": 70,
"height": 22.5,
"visibility": "visible",
"display": "block",
"transition": "",
"opacity": "1"
},
{
"id": "dense-4",
"mode": "1",
"state": "stop",
"text": "TRACK 4",
"x": 285,
"y": 102,
"width": 70,
"height": 22.5,
"visibility": "visible",
"display": "block",
"transition": "",
"opacity": "1"
},
{
"id": "dense-5",
"mode": "1",
"state": "stop",
"text": "TRACK 5",
"x": 285,
"y": 125,
"width": 70,
"height": 22.5,
"visibility": "visible",
"display": "block",
"transition": "",
"opacity": "1"
}
]
}
]
},
{
"title": "published / Candidate Danmuku candidate: native pause seek rate and public reset/load retain historical pool semantics",
"browser": "chromium",
"durationMs": 2285,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "published",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.legacy.js",
"sha256": "249f576e256457c2e47e945b9eb18f78877b658163b266c1153028d1f46d30b0",
"media": "/test/pattern.mp4",
"scenario": "playback",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-pool-and-rate",
"value": {
"frozen": {
"left": 604.256591796875,
"next": 604.256591796875,
"state": "stop"
},
"reused": {
"poolReused": true,
"visibleSameNode": true,
"original": {
"id": "reused",
"state": "emit",
"visibility": "visible",
"text": "REUSED"
},
"extraNodes": [],
"transition": "4s",
"rate": 2
},
"loadWithoutArgument": "replaces from original empty option; explicit array load appends"
}
},
{
"name": "danmuku-native-eligibility",
"value": [
{
"wall": 202,
"before": 0.028137,
"after": 0.028137,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 218.10000002384186,
"before": 0.044278,
"after": 0.044278,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 234.69999998807907,
"before": 0.06098,
"after": 0.06098,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 251.39999997615814,
"before": 0.077651,
"after": 0.077651,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 268.39999997615814,
"before": 0.094642,
"after": 0.094642,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 284.60000002384186,
"before": 0.110876,
"after": 0.110876,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 301.60000002384186,
"before": 0.127934,
"after": 0.127934,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 317.80000001192093,
"before": 0.144083,
"after": 0.144083,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 335.30000001192093,
"before": 0.161599,
"after": 0.161599,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 351.39999997615814,
"before": 0.177664,
"after": 0.177664,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 368.10000002384186,
"before": 0.19445,
"after": 0.19445,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 384.5,
"before": 0.210711,
"after": 0.210711,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 401.60000002384186,
"before": 0.227853,
"after": 0.227853,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 418.19999998807907,
"before": 0.244469,
"after": 0.244469,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 434.69999998807907,
"before": 0.261009,
"after": 0.261009,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 451.10000002384186,
"before": 0.27739,
"after": 0.27739,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 468.10000002384186,
"before": 0.294431,
"after": 0.294431,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 484.60000002384186,
"before": 0.310881,
"after": 0.310881,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 501.39999997615814,
"before": 0.327649,
"after": 0.327649,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 517.5,
"before": 0.343747,
"after": 0.343747,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 534.6999999880791,
"before": 0.360918,
"after": 0.360918,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 551,
"before": 0.377269,
"after": 0.377269,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 568.6999999880791,
"before": 0.394967,
"after": 0.394967,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 585.1999999880791,
"before": 0.411443,
"after": 0.411443,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [
"moving"
],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 601.3999999761581,
"before": 0.427627,
"after": 0.427627,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 618.3000000119209,
"before": 0.444613,
"after": 0.444613,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 634.8000000119209,
"before": 0.461067,
"after": 0.461067,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 651.6999999880791,
"before": 0.477888,
"after": 0.477888,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 667.6000000238419,
"before": 0.493967,
"after": 0.493967,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 684.6000000238419,
"before": 0.510902,
"after": 0.510902,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 700.8000000119209,
"before": 0.527071,
"after": 0.527071,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 718,
"before": 0.544217,
"after": 0.544217,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 734.6999999880791,
"before": 0.560952,
"after": 0.560952,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 751.3999999761581,
"before": 0.577751,
"after": 0.577751,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 768,
"before": 0.59426,
"after": 0.59426,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 784.1999999880791,
"before": 0.610559,
"after": 0.610559,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 801,
"before": 0.627275,
"after": 0.627275,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 817.8000000119209,
"before": 0.64407,
"after": 0.64407,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 835.3000000119209,
"before": 0.661569,
"after": 0.661569,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 851.3999999761581,
"before": 0.677686,
"after": 0.677686,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 867.6000000238419,
"before": 0.693949,
"after": 0.693949,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 884.6999999880791,
"before": 0.710978,
"after": 0.710978,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 900.8000000119209,
"before": 0.727021,
"after": 0.727021,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 918.1000000238419,
"before": 0.74433,
"after": 0.74433,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 935.6999999880791,
"before": 0.762034,
"after": 0.762034,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 951.8000000119209,
"before": 0.778045,
"after": 0.778045,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 969.1999999880791,
"before": 0.795544,
"after": 0.795544,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 985,
"before": 0.811225,
"after": 0.811225,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1000.6999999880791,
"before": 0.827061,
"after": 0.827061,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1017.5,
"before": 0.843785,
"after": 0.843785,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1034.1000000238419,
"before": 0.860393,
"after": 0.860393,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1050.699999988079,
"before": 0.877015,
"after": 0.877015,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1067.6000000238419,
"before": 0.89376,
"after": 0.89376,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1084.1000000238419,
"before": 0.910414,
"after": 0.910414,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1318.6000000238419,
"before": 2.058762,
"after": 2.058762,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1334.5,
"before": 2.090708,
"after": 2.090708,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1351.1000000238419,
"before": 2.123908,
"after": 2.123908,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1368.3999999761581,
"before": 2.158572,
"after": 2.158572,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1384.6000000238419,
"before": 2.190864,
"after": 2.190864,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1401.5,
"before": 2.224562,
"after": 2.224562,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1418.199999988079,
"before": 2.257988,
"after": 2.257988,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1435.300000011921,
"before": 2.292476,
"after": 2.292476,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1450.6000000238419,
"before": 2.322988,
"after": 2.322988,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1467.6000000238419,
"before": 2.356758,
"after": 2.356758,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1484.6000000238419,
"before": 2.39094,
"after": 2.39094,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1501.8999999761581,
"before": 2.425532,
"after": 2.425532,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [
"reused"
],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1518,
"before": 2.457736,
"after": 2.457736,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1534.300000011921,
"before": 2.490356,
"after": 2.490356,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1551.3999999761581,
"before": 2.524436,
"after": 2.524436,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1567.8999999761581,
"before": 2.557588,
"after": 2.557588,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1585.300000011921,
"before": 2.592278,
"after": 2.592278,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1601.300000011921,
"before": 2.624364,
"after": 2.624364,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1617.699999988079,
"before": 2.657112,
"after": 2.657112,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1634.5,
"before": 2.690686,
"after": 2.690686,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1651.1000000238419,
"before": 2.723866,
"after": 2.723866,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1668.199999988079,
"before": 2.758048,
"after": 2.758048,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1684.699999988079,
"before": 2.790942,
"after": 2.790942,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1701.6000000238419,
"before": 2.824994,
"after": 2.824994,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.295942,
"state": "wait"
}
]
},
{
"wall": 1717.800000011921,
"before": 2.857306,
"after": 2.857306,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.295942,
"state": "wait"
}
]
},
{
"wall": 1734.5,
"before": 2.890862,
"after": 2.890862,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.295942,
"state": "wait"
}
]
},
{
"wall": 1751.3999999761581,
"before": 2.924516,
"after": 2.924516,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.295942,
"state": "wait"
}
]
},
{
"wall": 1767.8999999761581,
"before": 2.957498,
"after": 2.957498,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.295942,
"state": "wait"
}
]
},
{
"wall": 1785,
"before": 2.991774,
"after": 2.991774,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.295942,
"state": "wait"
}
]
},
{
"wall": 1801.199999988079,
"before": 3.024064,
"after": 3.024064,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.295942,
"state": "wait"
}
]
},
{
"wall": 1817.800000011921,
"before": 3.057186,
"after": 3.057186,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.295942,
"state": "wait"
}
]
},
{
"wall": 1834.800000011921,
"before": 3.091192,
"after": 3.091192,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.295942,
"state": "wait"
}
]
},
{
"wall": 1851.1000000238419,
"before": 3.123786,
"after": 3.123786,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.295942,
"state": "wait"
}
]
},
{
"wall": 1868.1000000238419,
"before": 3.157848,
"after": 3.157848,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.295942,
"state": "wait"
}
]
},
{
"wall": 1884.300000011921,
"before": 3.19047,
"after": 3.19047,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.295942,
"state": "wait"
}
]
},
{
"wall": 1901,
"before": 3.223686,
"after": 3.223686,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [
"appended"
],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.295942,
"state": "wait"
}
]
},
{
"wall": 1918.699999988079,
"before": 3.258926,
"after": 3.258926,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.295942,
"state": "emit"
}
]
},
{
"wall": 1935.1000000238419,
"before": 3.29187,
"after": 3.29187,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.295942,
"state": "emit"
}
]
},
{
"wall": 1951.199999988079,
"before": 3.324002,
"after": 3.324002,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.295942,
"state": "emit"
}
]
},
{
"wall": 1967.5,
"before": 3.356732,
"after": 3.356732,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.295942,
"state": "emit"
}
]
},
{
"wall": 1984.199999988079,
"before": 3.39014,
"after": 3.39014,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.295942,
"state": "emit"
}
]
},
{
"wall": 2000.800000011921,
"before": 3.42331,
"after": 3.42331,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.295942,
"state": "emit"
}
]
},
{
"wall": 2018.5,
"before": 3.45869,
"after": 3.45869,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.295942,
"state": "emit"
}
]
},
{
"wall": 2034.800000011921,
"before": 3.491362,
"after": 3.491362,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.295942,
"state": "emit"
}
]
},
{
"wall": 2051,
"before": 3.523772,
"after": 3.523772,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.295942,
"state": "emit"
}
]
},
{
"wall": 2068.600000023842,
"before": 3.5591,
"after": 3.5591,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.295942,
"state": "emit"
}
]
},
{
"wall": 2084.300000011921,
"before": 3.590198,
"after": 3.590198,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.295942,
"state": "emit"
}
]
}
]
}
]
},
{
"title": "published / Candidate Danmuku candidate: actual settings, asynchronous send lock, external fullscreen mount and two-player destruction",
"browser": "chromium",
"durationMs": 4072,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "published",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.legacy.js",
"sha256": "249f576e256457c2e47e945b9eb18f78877b658163b266c1153028d1f46d30b0",
"media": "/test/pattern.mp4",
"scenario": "settings",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
}
]
},
{
"title": "candidate / Candidate Danmuku candidate: accepted NaN timestamp keeps the historical current-time fallback",
"browser": "chromium",
"durationMs": 2330,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "candidate",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.legacy.js",
"sha256": "249f576e256457c2e47e945b9eb18f78877b658163b266c1153028d1f46d30b0",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-numeric-compatibility",
"value": {
"expected": 0.5,
"inputTime": 0.5,
"queueTime": 0.5,
"isNaN": false
}
}
]
},
{
"title": "candidate / Candidate Danmuku candidate: failed recovery respects synchronous destroy from the error listener",
"browser": "chromium",
"durationMs": 458,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "candidate",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.legacy.js",
"sha256": "249f576e256457c2e47e945b9eb18f78877b658163b266c1153028d1f46d30b0",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-recovery-reentry",
"value": {
"action": "destroy",
"sameOwner": true,
"rowState": "stop",
"isStop": true,
"isDestroy": true,
"events": [
{
"index": 0,
"event": "error",
"time": 0.126043
},
{
"index": 0,
"event": "stop",
"time": 0
},
{
"index": 0,
"event": "destroy",
"time": 0
}
],
"workers": [
{
"url": "blob:http://127.0.0.1:8084/601dd5f3-19b3-4e8d-9117-c90a52f83c4d",
"requests": [
{
"type": "getDanmuTop",
"target": {
"mode": 1,
"height": 23,
"speed": 90
},
"visibles": [],
"antiOverlap": true,
"clientWidth": 640,
"clientHeight": 360,
"marginBottom": 10,
"marginTop": 10,
"id": 1
}
],
"replies": [
{
"id": 1,
"result": 10
}
],
"terminated": 1,
"errors": [
"controlled track failure"
]
}
],
"fault": "Actual video/DOM/track Worker; dispatch an explicit native ErrorEvent and inject a throwing createWorker recovery seam. This does not claim a real CSP or browser Worker construction failure."
}
}
]
},
{
"title": "candidate / Candidate Danmuku candidate: failed recovery respects synchronous stop from the error listener",
"browser": "chromium",
"durationMs": 487,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "candidate",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.legacy.js",
"sha256": "249f576e256457c2e47e945b9eb18f78877b658163b266c1153028d1f46d30b0",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-recovery-reentry",
"value": {
"action": "stop",
"sameOwner": true,
"rowState": "stop",
"isStop": true,
"isDestroy": false,
"events": [
{
"index": 0,
"event": "error",
"time": 0.121592
},
{
"index": 0,
"event": "stop",
"time": 0.121592
}
],
"workers": [
{
"url": "blob:http://127.0.0.1:8084/9f10d7a4-798f-4a3b-b786-a8fe0b8e3f2b",
"requests": [
{
"type": "getDanmuTop",
"target": {
"mode": 1,
"height": 23,
"speed": 90
},
"visibles": [],
"antiOverlap": true,
"clientWidth": 640,
"clientHeight": 360,
"marginBottom": 10,
"marginTop": 10,
"id": 1
}
],
"replies": [
{
"id": 1,
"result": 10
}
],
"terminated": 1,
"errors": [
"controlled track failure"
]
}
],
"fault": "Actual video/DOM/track Worker; dispatch an explicit native ErrorEvent and inject a throwing createWorker recovery seam. This does not claim a real CSP or browser Worker construction failure."
}
}
]
},
{
"title": "candidate / Candidate Danmuku candidate: native pause cancels pending visibility without blocking later work",
"browser": "chromium",
"durationMs": 2657,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "candidate",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.legacy.js",
"sha256": "249f576e256457c2e47e945b9eb18f78877b658163b266c1153028d1f46d30b0",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-cancel",
"value": {
"action": "pause",
"before": {
"requests": [
1
],
"visible": [
"fresh-after-cancel"
]
},
"after": [
"fresh-after-cancel"
],
"cancelledSource": "An unresolved user beforeVisible Promise; native RAF, Worker and media remain active."
}
}
]
},
{
"title": "candidate / Candidate Danmuku candidate: native reset cancels pending visibility without blocking later work",
"browser": "chromium",
"durationMs": 2443,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "candidate",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.legacy.js",
"sha256": "249f576e256457c2e47e945b9eb18f78877b658163b266c1153028d1f46d30b0",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-cancel",
"value": {
"action": "reset",
"before": {
"requests": [
1
],
"visible": [
"fresh-after-cancel"
]
},
"after": [
"fresh-after-cancel"
],
"cancelledSource": "An unresolved user beforeVisible Promise; native RAF, Worker and media remain active."
}
}
]
},
{
"title": "candidate / Candidate Danmuku candidate: native seek cancels pending visibility without blocking later work",
"browser": "chromium",
"durationMs": 2341,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "candidate",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.legacy.js",
"sha256": "249f576e256457c2e47e945b9eb18f78877b658163b266c1153028d1f46d30b0",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-cancel",
"value": {
"action": "seek",
"before": {
"requests": [
1
],
"visible": [
"fresh-after-cancel"
]
},
"after": [
"fresh-after-cancel"
],
"cancelledSource": "An unresolved user beforeVisible Promise; native RAF, Worker and media remain active."
}
}
]
},
{
"title": "candidate / Candidate Danmuku candidate: native destroy cancels pending visibility without blocking later work",
"browser": "chromium",
"durationMs": 2317,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "candidate",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.legacy.js",
"sha256": "249f576e256457c2e47e945b9eb18f78877b658163b266c1153028d1f46d30b0",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-cancel",
"value": {
"action": "destroy",
"before": {
"requests": [
0
],
"visible": []
},
"after": [],
"cancelledSource": "An unresolved user beforeVisible Promise; native RAF, Worker and media remain active."
}
}
]
},
{
"title": "candidate / Candidate Danmuku candidate: native Worker renders three modes with synchronous filter and asynchronous beforeVisible",
"browser": "chromium",
"durationMs": 1336,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "candidate",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.legacy.js",
"sha256": "249f576e256457c2e47e945b9eb18f78877b658163b266c1153028d1f46d30b0",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
}
]
},
{
"title": "candidate / Candidate Danmuku candidate: six simultaneous fixed comments preserve usable track geometry and input order",
"browser": "chromium",
"durationMs": 1435,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "candidate",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.legacy.js",
"sha256": "249f576e256457c2e47e945b9eb18f78877b658163b266c1153028d1f46d30b0",
"media": "/test/pattern.mp4",
"scenario": "density",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-dense-tracks",
"value": [
{
"id": "dense-0",
"mode": "1",
"state": "stop",
"text": "TRACK 0",
"x": 285,
"y": 10,
"width": 70,
"height": 22.5,
"visibility": "visible",
"display": "block",
"transition": "",
"opacity": "1"
},
{
"id": "dense-1",
"mode": "1",
"state": "stop",
"text": "TRACK 1",
"x": 285,
"y": 33,
"width": 70,
"height": 22.5,
"visibility": "visible",
"display": "block",
"transition": "",
"opacity": "1"
},
{
"id": "dense-2",
"mode": "1",
"state": "stop",
"text": "TRACK 2",
"x": 285,
"y": 56,
"width": 70,
"height": 22.5,
"visibility": "visible",
"display": "block",
"transition": "",
"opacity": "1"
},
{
"id": "dense-3",
"mode": "1",
"state": "stop",
"text": "TRACK 3",
"x": 285,
"y": 79,
"width": 70,
"height": 22.5,
"visibility": "visible",
"display": "block",
"transition": "",
"opacity": "1"
},
{
"id": "dense-4",
"mode": "1",
"state": "stop",
"text": "TRACK 4",
"x": 285,
"y": 102,
"width": 70,
"height": 22.5,
"visibility": "visible",
"display": "block",
"transition": "",
"opacity": "1"
},
{
"id": "dense-5",
"mode": "1",
"state": "stop",
"text": "TRACK 5",
"x": 285,
"y": 125,
"width": 70,
"height": 22.5,
"visibility": "visible",
"display": "block",
"transition": "",
"opacity": "1"
}
]
}
]
},
{
"title": "candidate / Candidate Danmuku candidate: native pause seek rate and public reset/load retain historical pool semantics",
"browser": "chromium",
"durationMs": 2393,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "candidate",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.legacy.js",
"sha256": "249f576e256457c2e47e945b9eb18f78877b658163b266c1153028d1f46d30b0",
"media": "/test/pattern.mp4",
"scenario": "playback",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-pool-and-rate",
"value": {
"frozen": {
"left": 602.7938842773438,
"next": 602.7938842773438,
"state": "stop"
},
"reused": {
"poolReused": true,
"visibleSameNode": true,
"original": {
"id": "reused",
"state": "emit",
"visibility": "visible",
"text": "REUSED"
},
"extraNodes": [],
"transition": "4s",
"rate": 2
},
"loadWithoutArgument": "replaces from original empty option; explicit array load appends"
}
},
{
"name": "danmuku-native-eligibility",
"value": [
{
"wall": 235.5,
"before": 0.026708,
"after": 0.026708,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 250,
"before": 0.041245,
"after": 0.041245,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 267.10000002384186,
"before": 0.058347,
"after": 0.058347,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 283.30000001192093,
"before": 0.074521,
"after": 0.074521,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 300.10000002384186,
"before": 0.091309,
"after": 0.091309,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 317.80000001192093,
"before": 0.109032,
"after": 0.109032,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 333.5,
"before": 0.124705,
"after": 0.124705,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 349.4000000357628,
"before": 0.140706,
"after": 0.140706,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 366.7000000476837,
"before": 0.157951,
"after": 0.157951,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 383.80000001192093,
"before": 0.174993,
"after": 0.174993,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 399.9000000357628,
"before": 0.191129,
"after": 0.191129,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 417.4000000357628,
"before": 0.208663,
"after": 0.208663,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 433.4000000357628,
"before": 0.224723,
"after": 0.224723,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 450.2000000476837,
"before": 0.241454,
"after": 0.241454,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 466.5,
"before": 0.257725,
"after": 0.257725,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 483.60000002384186,
"before": 0.274945,
"after": 0.274945,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 500.4000000357628,
"before": 0.29159,
"after": 0.29159,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 516.8000000119209,
"before": 0.308111,
"after": 0.308111,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 533.1000000238419,
"before": 0.324415,
"after": 0.324415,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 550.2000000476837,
"before": 0.341463,
"after": 0.341463,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 566.7000000476837,
"before": 0.357949,
"after": 0.357949,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 583.5,
"before": 0.374721,
"after": 0.374721,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 599.5,
"before": 0.390802,
"after": 0.390802,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 616.7000000476837,
"before": 0.407993,
"after": 0.407993,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [
"moving"
],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 634.4000000357628,
"before": 0.425591,
"after": 0.425591,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 651,
"before": 0.442194,
"after": 0.442194,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 667.3000000119209,
"before": 0.458565,
"after": 0.458565,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 683.3000000119209,
"before": 0.474523,
"after": 0.474523,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 700.4000000357628,
"before": 0.491631,
"after": 0.491631,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 717,
"before": 0.508166,
"after": 0.508166,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 733.8000000119209,
"before": 0.524991,
"after": 0.524991,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 749.8000000119209,
"before": 0.541089,
"after": 0.541089,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 767.7000000476837,
"before": 0.558902,
"after": 0.558902,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 782.9000000357628,
"before": 0.574146,
"after": 0.574146,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 799.9000000357628,
"before": 0.591214,
"after": 0.591214,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 817.6000000238419,
"before": 0.608833,
"after": 0.608833,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 833.5,
"before": 0.624826,
"after": 0.624826,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 850.1000000238419,
"before": 0.641361,
"after": 0.641361,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 866.4000000357628,
"before": 0.657634,
"after": 0.657634,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 883.1000000238419,
"before": 0.67435,
"after": 0.67435,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 899.9000000357628,
"before": 0.691145,
"after": 0.691145,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 917.4000000357628,
"before": 0.708644,
"after": 0.708644,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 933.5,
"before": 0.724761,
"after": 0.724761,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 949.8000000119209,
"before": 0.741035,
"after": 0.741035,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 966.8000000119209,
"before": 0.758053,
"after": 0.758053,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 982.9000000357628,
"before": 0.774109,
"after": 0.774109,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1000.1000000238419,
"before": 0.791404,
"after": 0.791404,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1017,
"before": 0.808269,
"after": 0.808269,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1033.9000000357628,
"before": 0.82512,
"after": 0.82512,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1051.4000000357628,
"before": 0.842619,
"after": 0.842619,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1067,
"before": 0.8583,
"after": 0.8583,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1082.9000000357628,
"before": 0.874136,
"after": 0.874136,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1100.5,
"before": 0.891826,
"after": 0.891826,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1116.300000011921,
"before": 0.907467,
"after": 0.907467,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1132.9000000357628,
"before": 0.92409,
"after": 0.92409,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1366.6000000238419,
"before": 2.058032,
"after": 2.058032,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1383.6000000238419,
"before": 2.091932,
"after": 2.091932,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1400.4000000357628,
"before": 2.125586,
"after": 2.125586,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1416.6000000238419,
"before": 2.15793,
"after": 2.15793,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1433.2000000476837,
"before": 2.191214,
"after": 2.191214,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1450.5,
"before": 2.225856,
"after": 2.225856,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1466.7000000476837,
"before": 2.25814,
"after": 2.25814,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1483.6000000238419,
"before": 2.291868,
"after": 2.291868,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1500.2000000476837,
"before": 2.325294,
"after": 2.325294,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1517.5,
"before": 2.359784,
"after": 2.359784,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1533.800000011921,
"before": 2.392344,
"after": 2.392344,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1550.4000000357628,
"before": 2.425586,
"after": 2.425586,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [
"reused"
],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1567,
"before": 2.458876,
"after": 2.458876,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1584,
"before": 2.492838,
"after": 2.492838,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1600.9000000357628,
"before": 2.526638,
"after": 2.526638,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1616.5,
"before": 2.55769,
"after": 2.55769,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1633.4000000357628,
"before": 2.5916,
"after": 2.5916,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1650,
"before": 2.624872,
"after": 2.624872,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1667.4000000357628,
"before": 2.659554,
"after": 2.659554,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1683.4000000357628,
"before": 2.691672,
"after": 2.691672,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1699.800000011921,
"before": 2.72442,
"after": 2.72442,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1716.6000000238419,
"before": 2.758004,
"after": 2.758004,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1733.2000000476837,
"before": 2.791104,
"after": 2.791104,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1751.2000000476837,
"before": 2.827378,
"after": 2.827378,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.302252,
"state": "wait"
}
]
},
{
"wall": 1766.7000000476837,
"before": 2.858224,
"after": 2.858224,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.302252,
"state": "wait"
}
]
},
{
"wall": 1783.800000011921,
"before": 2.8923,
"after": 2.8923,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.302252,
"state": "wait"
}
]
},
{
"wall": 1800.7000000476837,
"before": 2.92638,
"after": 2.92638,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.302252,
"state": "wait"
}
]
},
{
"wall": 1816.7000000476837,
"before": 2.958224,
"after": 2.958224,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.302252,
"state": "wait"
}
]
},
{
"wall": 1833.5,
"before": 2.991864,
"after": 2.991864,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.302252,
"state": "wait"
}
]
},
{
"wall": 1849.6000000238419,
"before": 3.023954,
"after": 3.023954,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.302252,
"state": "wait"
}
]
},
{
"wall": 1867.1000000238419,
"before": 3.059088,
"after": 3.059088,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.302252,
"state": "wait"
}
]
},
{
"wall": 1883.300000011921,
"before": 3.091478,
"after": 3.091478,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.302252,
"state": "wait"
}
]
},
{
"wall": 1899.800000011921,
"before": 3.12441,
"after": 3.12441,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.302252,
"state": "wait"
}
]
},
{
"wall": 1916.9000000357628,
"before": 3.158468,
"after": 3.158468,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.302252,
"state": "wait"
}
]
},
{
"wall": 1933.2000000476837,
"before": 3.191156,
"after": 3.191156,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.302252,
"state": "wait"
}
]
},
{
"wall": 1950.2000000476837,
"before": 3.225154,
"after": 3.225154,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [
"appended"
],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.302252,
"state": "wait"
}
]
},
{
"wall": 1966.7000000476837,
"before": 3.25817,
"after": 3.25817,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.302252,
"state": "emit"
}
]
},
{
"wall": 1983.2000000476837,
"before": 3.291098,
"after": 3.291098,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.302252,
"state": "emit"
}
]
},
{
"wall": 1999.7000000476837,
"before": 3.32421,
"after": 3.32421,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.302252,
"state": "emit"
}
]
},
{
"wall": 2017.2000000476837,
"before": 3.359176,
"after": 3.359176,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.302252,
"state": "emit"
}
]
},
{
"wall": 2033.300000011921,
"before": 3.391276,
"after": 3.391276,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.302252,
"state": "emit"
}
]
},
{
"wall": 2049.600000023842,
"before": 3.424038,
"after": 3.424038,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.302252,
"state": "emit"
}
]
},
{
"wall": 2066.400000035763,
"before": 3.457494,
"after": 3.457494,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.302252,
"state": "emit"
}
]
},
{
"wall": 2082.900000035763,
"before": 3.490616,
"after": 3.490616,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.302252,
"state": "emit"
}
]
},
{
"wall": 2100.5,
"before": 3.525968,
"after": 3.525968,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.302252,
"state": "emit"
}
]
},
{
"wall": 2116.900000035763,
"before": 3.558646,
"after": 3.558646,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.302252,
"state": "emit"
}
]
},
{
"wall": 2133.100000023842,
"before": 3.591178,
"after": 3.591178,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.302252,
"state": "emit"
}
]
},
{
"wall": 2150,
"before": 3.62481,
"after": 3.62481,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.302252,
"state": "emit"
}
]
}
]
}
]
},
{
"title": "candidate / Candidate Danmuku candidate: actual settings, asynchronous send lock, external fullscreen mount and two-player destruction",
"browser": "chromium",
"durationMs": 4228,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "candidate",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.legacy.js",
"sha256": "249f576e256457c2e47e945b9eb18f78877b658163b266c1153028d1f46d30b0",
"media": "/test/pattern.mp4",
"scenario": "settings",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
}
]
},
{
"title": "published / Candidate Danmuku candidate: accepted NaN timestamp keeps the historical current-time fallback",
"browser": "firefox",
"durationMs": 2461,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "published",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.legacy.js",
"sha256": "249f576e256457c2e47e945b9eb18f78877b658163b266c1153028d1f46d30b0",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-numeric-compatibility",
"value": {
"expected": 0.5,
"inputTime": 0.5,
"queueTime": 0.5,
"isNaN": false
}
}
]
},
{
"title": "published / Candidate Danmuku candidate: failed recovery respects synchronous destroy from the error listener",
"browser": "firefox",
"durationMs": 815,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "published",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.legacy.js",
"sha256": "249f576e256457c2e47e945b9eb18f78877b658163b266c1153028d1f46d30b0",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-recovery-reentry",
"value": {
"action": "destroy",
"sameOwner": true,
"rowState": "stop",
"isStop": true,
"isDestroy": true,
"events": [
{
"index": 0,
"event": "error",
"time": 0.091192
},
{
"index": 0,
"event": "stop",
"time": 0
},
{
"index": 0,
"event": "destroy",
"time": 0
}
],
"workers": [
{
"url": "blob:http://127.0.0.1:8084/a1f29cd3-7eb6-46eb-b95f-6fa89cefb32c",
"requests": [
{
"type": "getDanmuTop",
"target": {
"mode": 1,
"height": 23,
"speed": 90
},
"visibles": [],
"antiOverlap": true,
"clientWidth": 640,
"clientHeight": 360,
"marginBottom": 10,
"marginTop": 10,
"id": 1
}
],
"replies": [
{
"id": 1,
"result": 10
}
],
"terminated": 1,
"errors": [
"controlled track failure"
]
}
],
"fault": "Actual video/DOM/track Worker; dispatch an explicit native ErrorEvent and inject a throwing createWorker recovery seam. This does not claim a real CSP or browser Worker construction failure."
}
}
]
},
{
"title": "published / Candidate Danmuku candidate: failed recovery respects synchronous stop from the error listener",
"browser": "firefox",
"durationMs": 665,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "published",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.legacy.js",
"sha256": "249f576e256457c2e47e945b9eb18f78877b658163b266c1153028d1f46d30b0",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-recovery-reentry",
"value": {
"action": "stop",
"sameOwner": true,
"rowState": "stop",
"isStop": true,
"isDestroy": false,
"events": [
{
"index": 0,
"event": "error",
"time": 0.129594
},
{
"index": 0,
"event": "stop",
"time": 0.129594
}
],
"workers": [
{
"url": "blob:http://127.0.0.1:8084/8f0a53df-6b15-411e-8917-37c0190afd78",
"requests": [
{
"type": "getDanmuTop",
"target": {
"mode": 1,
"height": 23,
"speed": 90
},
"visibles": [],
"antiOverlap": true,
"clientWidth": 640,
"clientHeight": 360,
"marginBottom": 10,
"marginTop": 10,
"id": 1
}
],
"replies": [
{
"id": 1,
"result": 10
}
],
"terminated": 1,
"errors": [
"controlled track failure"
]
}
],
"fault": "Actual video/DOM/track Worker; dispatch an explicit native ErrorEvent and inject a throwing createWorker recovery seam. This does not claim a real CSP or browser Worker construction failure."
}
}
]
},
{
"title": "published / Candidate Danmuku candidate: native pause cancels pending visibility without blocking later work",
"browser": "firefox",
"durationMs": 2987,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "published",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.legacy.js",
"sha256": "249f576e256457c2e47e945b9eb18f78877b658163b266c1153028d1f46d30b0",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-cancel",
"value": {
"action": "pause",
"before": {
"requests": [
1
],
"visible": [
"fresh-after-cancel"
]
},
"after": [
"fresh-after-cancel"
],
"cancelledSource": "An unresolved user beforeVisible Promise; native RAF, Worker and media remain active."
}
}
]
},
{
"title": "published / Candidate Danmuku candidate: native reset cancels pending visibility without blocking later work",
"browser": "firefox",
"durationMs": 2608,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "published",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.legacy.js",
"sha256": "249f576e256457c2e47e945b9eb18f78877b658163b266c1153028d1f46d30b0",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-cancel",
"value": {
"action": "reset",
"before": {
"requests": [
1
],
"visible": [
"fresh-after-cancel"
]
},
"after": [
"fresh-after-cancel"
],
"cancelledSource": "An unresolved user beforeVisible Promise; native RAF, Worker and media remain active."
}
}
]
},
{
"title": "published / Candidate Danmuku candidate: native seek cancels pending visibility without blocking later work",
"browser": "firefox",
"durationMs": 2750,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "published",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.legacy.js",
"sha256": "249f576e256457c2e47e945b9eb18f78877b658163b266c1153028d1f46d30b0",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-cancel",
"value": {
"action": "seek",
"before": {
"requests": [
1
],
"visible": [
"fresh-after-cancel"
]
},
"after": [
"fresh-after-cancel"
],
"cancelledSource": "An unresolved user beforeVisible Promise; native RAF, Worker and media remain active."
}
}
]
},
{
"title": "published / Candidate Danmuku candidate: native destroy cancels pending visibility without blocking later work",
"browser": "firefox",
"durationMs": 2445,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "published",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.legacy.js",
"sha256": "249f576e256457c2e47e945b9eb18f78877b658163b266c1153028d1f46d30b0",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-cancel",
"value": {
"action": "destroy",
"before": {
"requests": [
0
],
"visible": []
},
"after": [],
"cancelledSource": "An unresolved user beforeVisible Promise; native RAF, Worker and media remain active."
}
}
]
},
{
"title": "published / Candidate Danmuku candidate: native Worker renders three modes with synchronous filter and asynchronous beforeVisible",
"browser": "firefox",
"durationMs": 2123,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "published",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.legacy.js",
"sha256": "249f576e256457c2e47e945b9eb18f78877b658163b266c1153028d1f46d30b0",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
}
]
},
{
"title": "published / Candidate Danmuku candidate: six simultaneous fixed comments preserve usable track geometry and input order",
"browser": "firefox",
"durationMs": 1637,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "published",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.legacy.js",
"sha256": "249f576e256457c2e47e945b9eb18f78877b658163b266c1153028d1f46d30b0",
"media": "/test/pattern.mp4",
"scenario": "density",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-dense-tracks",
"value": [
{
"id": "dense-0",
"mode": "1",
"state": "stop",
"text": "TRACK 0",
"x": 285,
"y": 10,
"width": 70,
"height": 22.5,
"visibility": "visible",
"display": "block",
"transition": "",
"opacity": "1"
},
{
"id": "dense-1",
"mode": "1",
"state": "stop",
"text": "TRACK 1",
"x": 285,
"y": 33,
"width": 70,
"height": 22.5,
"visibility": "visible",
"display": "block",
"transition": "",
"opacity": "1"
},
{
"id": "dense-2",
"mode": "1",
"state": "stop",
"text": "TRACK 2",
"x": 285,
"y": 56,
"width": 70,
"height": 22.5,
"visibility": "visible",
"display": "block",
"transition": "",
"opacity": "1"
},
{
"id": "dense-3",
"mode": "1",
"state": "stop",
"text": "TRACK 3",
"x": 285,
"y": 79,
"width": 70,
"height": 22.5,
"visibility": "visible",
"display": "block",
"transition": "",
"opacity": "1"
},
{
"id": "dense-4",
"mode": "1",
"state": "stop",
"text": "TRACK 4",
"x": 285,
"y": 102,
"width": 70,
"height": 22.5,
"visibility": "visible",
"display": "block",
"transition": "",
"opacity": "1"
},
{
"id": "dense-5",
"mode": "1",
"state": "stop",
"text": "TRACK 5",
"x": 285,
"y": 125,
"width": 70,
"height": 22.5,
"visibility": "visible",
"display": "block",
"transition": "",
"opacity": "1"
}
]
}
]
},
{
"title": "published / Candidate Danmuku candidate: native pause seek rate and public reset/load retain historical pool semantics",
"browser": "firefox",
"durationMs": 2618,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "published",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.legacy.js",
"sha256": "249f576e256457c2e47e945b9eb18f78877b658163b266c1153028d1f46d30b0",
"media": "/test/pattern.mp4",
"scenario": "playback",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-pool-and-rate",
"value": {
"frozen": {
"left": 602.7999877929688,
"next": 602.7999877929688,
"state": "stop"
},
"reused": {
"poolReused": true,
"visibleSameNode": true,
"original": {
"id": "reused",
"state": "emit",
"visibility": "visible",
"text": "REUSED"
},
"extraNodes": [],
"transition": "4s",
"rate": 2
},
"loadWithoutArgument": "replaces from original empty option; explicit array load appends"
}
},
{
"name": "danmuku-native-eligibility",
"value": [
{
"wall": 394,
"before": 0.008572,
"after": 0.008572,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 411,
"before": 0.008572,
"after": 0.008572,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 428,
"before": 0.049185,
"after": 0.049185,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 445,
"before": 0.049185,
"after": 0.049185,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 461,
"before": 0.049185,
"after": 0.049185,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 478,
"before": 0.091367,
"after": 0.091367,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 494,
"before": 0.091367,
"after": 0.091367,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 511,
"before": 0.131691,
"after": 0.131691,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 527,
"before": 0.131691,
"after": 0.131691,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 545,
"before": 0.131691,
"after": 0.131691,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 561,
"before": 0.172888,
"after": 0.172888,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 578,
"before": 0.172888,
"after": 0.172888,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 594,
"before": 0.213061,
"after": 0.213061,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 612,
"before": 0.213061,
"after": 0.213061,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 628,
"before": 0.253323,
"after": 0.253323,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 644,
"before": 0.253323,
"after": 0.253323,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 661,
"before": 0.253323,
"after": 0.253323,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 677,
"before": 0.293844,
"after": 0.293844,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 694,
"before": 0.293844,
"after": 0.293844,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 711,
"before": 0.334258,
"after": 0.334258,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 728,
"before": 0.334258,
"after": 0.334258,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 744,
"before": 0.334258,
"after": 0.334258,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 761,
"before": 0.374999,
"after": 0.374999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 779,
"before": 0.374999,
"after": 0.374999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 795,
"before": 0.417383,
"after": 0.417383,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [
"moving"
],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 812,
"before": 0.417383,
"after": 0.417383,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 829,
"before": 0.417383,
"after": 0.417383,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 844,
"before": 0.458332,
"after": 0.458332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 861,
"before": 0.458332,
"after": 0.458332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 878,
"before": 0.499999,
"after": 0.499999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 895,
"before": 0.499999,
"after": 0.499999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 911,
"before": 0.499999,
"after": 0.499999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 928,
"before": 0.541666,
"after": 0.541666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 945,
"before": 0.541666,
"after": 0.541666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 961,
"before": 0.583332,
"after": 0.583332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 978,
"before": 0.583332,
"after": 0.583332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 995,
"before": 0.583332,
"after": 0.583332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1012,
"before": 0.624999,
"after": 0.624999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1028,
"before": 0.624999,
"after": 0.624999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1045,
"before": 0.666666,
"after": 0.666666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1061,
"before": 0.666666,
"after": 0.666666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1078,
"before": 0.666666,
"after": 0.666666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1094,
"before": 0.708332,
"after": 0.708332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1111,
"before": 0.708332,
"after": 0.708332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1128,
"before": 0.749999,
"after": 0.749999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1144,
"before": 0.749999,
"after": 0.749999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1161,
"before": 0.749999,
"after": 0.749999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1178,
"before": 0.790551,
"after": 0.790551,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1195,
"before": 0.790551,
"after": 0.790551,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1211,
"before": 0.833332,
"after": 0.833332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1228,
"before": 0.833332,
"after": 0.833332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1245,
"before": 0.833332,
"after": 0.833332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1262,
"before": 0.874069,
"after": 0.874069,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1278,
"before": 0.874069,
"after": 0.874069,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1295,
"before": 0.916666,
"after": 0.916666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1311,
"before": 0.916666,
"after": 0.916666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1329,
"before": 0.916666,
"after": 0.916666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1495,
"before": 2.000062,
"after": 2.000062,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1512,
"before": 2.041666,
"after": 2.041666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1528,
"before": 2.083332,
"after": 2.083332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1545,
"before": 2.083332,
"after": 2.083332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1562,
"before": 2.124999,
"after": 2.124999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1579,
"before": 2.166666,
"after": 2.166666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1596,
"before": 2.208332,
"after": 2.208332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1612,
"before": 2.249999,
"after": 2.249999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1629,
"before": 2.249999,
"after": 2.249999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1645,
"before": 2.291666,
"after": 2.291666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1661,
"before": 2.333332,
"after": 2.333332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1678,
"before": 2.374999,
"after": 2.374999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1695,
"before": 2.416666,
"after": 2.416666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [
"reused"
],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1711,
"before": 2.416666,
"after": 2.416666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1728,
"before": 2.458332,
"after": 2.458332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1745,
"before": 2.499999,
"after": 2.499999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1762,
"before": 2.541666,
"after": 2.541666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1779,
"before": 2.583332,
"after": 2.583332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1796,
"before": 2.583332,
"after": 2.583332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1813,
"before": 2.624999,
"after": 2.624999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1829,
"before": 2.666666,
"after": 2.666666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1845,
"before": 2.708332,
"after": 2.708332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1862,
"before": 2.749999,
"after": 2.749999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1878,
"before": 2.749999,
"after": 2.749999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.249999,
"state": "wait"
}
]
},
{
"wall": 1895,
"before": 2.791666,
"after": 2.791666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.249999,
"state": "wait"
}
]
},
{
"wall": 1912,
"before": 2.833332,
"after": 2.833332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.249999,
"state": "wait"
}
]
},
{
"wall": 1929,
"before": 2.874999,
"after": 2.874999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.249999,
"state": "wait"
}
]
},
{
"wall": 1945,
"before": 2.916666,
"after": 2.916666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.249999,
"state": "wait"
}
]
},
{
"wall": 1962,
"before": 2.958332,
"after": 2.958332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.249999,
"state": "wait"
}
]
},
{
"wall": 1979,
"before": 2.958332,
"after": 2.958332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.249999,
"state": "wait"
}
]
},
{
"wall": 1995,
"before": 2.999999,
"after": 2.999999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.249999,
"state": "wait"
}
]
},
{
"wall": 2012,
"before": 3.041666,
"after": 3.041666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.249999,
"state": "wait"
}
]
},
{
"wall": 2029,
"before": 3.083332,
"after": 3.083332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.249999,
"state": "wait"
}
]
},
{
"wall": 2045,
"before": 3.083332,
"after": 3.083332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.249999,
"state": "wait"
}
]
},
{
"wall": 2062,
"before": 3.124999,
"after": 3.124999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.249999,
"state": "wait"
}
]
},
{
"wall": 2079,
"before": 3.166666,
"after": 3.166666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [
"appended"
],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.249999,
"state": "wait"
}
]
},
{
"wall": 2095,
"before": 3.208332,
"after": 3.208332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.249999,
"state": "emit"
}
]
},
{
"wall": 2112,
"before": 3.249999,
"after": 3.249999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.249999,
"state": "emit"
}
]
},
{
"wall": 2130,
"before": 3.291427,
"after": 3.291427,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.249999,
"state": "emit"
}
]
},
{
"wall": 2146,
"before": 3.291427,
"after": 3.291427,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.249999,
"state": "emit"
}
]
},
{
"wall": 2162,
"before": 3.332417,
"after": 3.332417,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.249999,
"state": "emit"
}
]
},
{
"wall": 2179,
"before": 3.372611,
"after": 3.372611,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.249999,
"state": "emit"
}
]
},
{
"wall": 2196,
"before": 3.413454,
"after": 3.413454,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.249999,
"state": "emit"
}
]
},
{
"wall": 2212,
"before": 3.454571,
"after": 3.454571,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.249999,
"state": "emit"
}
]
},
{
"wall": 2229,
"before": 3.454571,
"after": 3.454571,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.249999,
"state": "emit"
}
]
},
{
"wall": 2247,
"before": 3.495006,
"after": 3.495006,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.249999,
"state": "emit"
}
]
},
{
"wall": 2262,
"before": 3.535452,
"after": 3.535452,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.249999,
"state": "emit"
}
]
},
{
"wall": 2279,
"before": 3.576684,
"after": 3.576684,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.249999,
"state": "emit"
}
]
},
{
"wall": 2297,
"before": 3.617044,
"after": 3.617044,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.249999,
"state": "emit"
}
]
}
]
}
]
},
{
"title": "published / Candidate Danmuku candidate: actual settings, asynchronous send lock, external fullscreen mount and two-player destruction",
"browser": "firefox",
"durationMs": 4553,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "published",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.legacy.js",
"sha256": "249f576e256457c2e47e945b9eb18f78877b658163b266c1153028d1f46d30b0",
"media": "/test/pattern.mp4",
"scenario": "settings",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
}
]
},
{
"title": "candidate / Candidate Danmuku candidate: accepted NaN timestamp keeps the historical current-time fallback",
"browser": "firefox",
"durationMs": 2536,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "candidate",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.legacy.js",
"sha256": "249f576e256457c2e47e945b9eb18f78877b658163b266c1153028d1f46d30b0",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-numeric-compatibility",
"value": {
"expected": 0.5,
"inputTime": 0.5,
"queueTime": 0.5,
"isNaN": false
}
}
]
},
{
"title": "candidate / Candidate Danmuku candidate: failed recovery respects synchronous destroy from the error listener",
"browser": "firefox",
"durationMs": 635,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "candidate",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.legacy.js",
"sha256": "249f576e256457c2e47e945b9eb18f78877b658163b266c1153028d1f46d30b0",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-recovery-reentry",
"value": {
"action": "destroy",
"sameOwner": true,
"rowState": "stop",
"isStop": true,
"isDestroy": true,
"events": [
{
"index": 0,
"event": "error",
"time": 0.12931
},
{
"index": 0,
"event": "stop",
"time": 0
},
{
"index": 0,
"event": "destroy",
"time": 0
}
],
"workers": [
{
"url": "blob:http://127.0.0.1:8084/bfa91bcd-be2f-4c95-b86a-38fdefe13574",
"requests": [
{
"type": "getDanmuTop",
"target": {
"mode": 1,
"height": 23,
"speed": 90
},
"visibles": [],
"antiOverlap": true,
"clientWidth": 640,
"clientHeight": 360,
"marginBottom": 10,
"marginTop": 10,
"id": 1
}
],
"replies": [
{
"id": 1,
"result": 10
}
],
"terminated": 1,
"errors": [
"controlled track failure"
]
}
],
"fault": "Actual video/DOM/track Worker; dispatch an explicit native ErrorEvent and inject a throwing createWorker recovery seam. This does not claim a real CSP or browser Worker construction failure."
}
}
]
},
{
"title": "candidate / Candidate Danmuku candidate: failed recovery respects synchronous stop from the error listener",
"browser": "firefox",
"durationMs": 724,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "candidate",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.legacy.js",
"sha256": "249f576e256457c2e47e945b9eb18f78877b658163b266c1153028d1f46d30b0",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-recovery-reentry",
"value": {
"action": "stop",
"sameOwner": true,
"rowState": "stop",
"isStop": true,
"isDestroy": false,
"events": [
{
"index": 0,
"event": "error",
"time": 0.127259
},
{
"index": 0,
"event": "stop",
"time": 0.127259
}
],
"workers": [
{
"url": "blob:http://127.0.0.1:8084/baac5548-4832-4c4c-8e35-7b8b06f23f7d",
"requests": [
{
"type": "getDanmuTop",
"target": {
"mode": 1,
"height": 23,
"speed": 90
},
"visibles": [],
"antiOverlap": true,
"clientWidth": 640,
"clientHeight": 360,
"marginBottom": 10,
"marginTop": 10,
"id": 1
}
],
"replies": [
{
"id": 1,
"result": 10
}
],
"terminated": 1,
"errors": [
"controlled track failure"
]
}
],
"fault": "Actual video/DOM/track Worker; dispatch an explicit native ErrorEvent and inject a throwing createWorker recovery seam. This does not claim a real CSP or browser Worker construction failure."
}
}
]
},
{
"title": "candidate / Candidate Danmuku candidate: native pause cancels pending visibility without blocking later work",
"browser": "firefox",
"durationMs": 2981,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "candidate",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.legacy.js",
"sha256": "249f576e256457c2e47e945b9eb18f78877b658163b266c1153028d1f46d30b0",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-cancel",
"value": {
"action": "pause",
"before": {
"requests": [
1
],
"visible": [
"fresh-after-cancel"
]
},
"after": [
"fresh-after-cancel"
],
"cancelledSource": "An unresolved user beforeVisible Promise; native RAF, Worker and media remain active."
}
}
]
},
{
"title": "candidate / Candidate Danmuku candidate: native reset cancels pending visibility without blocking later work",
"browser": "firefox",
"durationMs": 2644,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "candidate",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.legacy.js",
"sha256": "249f576e256457c2e47e945b9eb18f78877b658163b266c1153028d1f46d30b0",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-cancel",
"value": {
"action": "reset",
"before": {
"requests": [
1
],
"visible": [
"fresh-after-cancel"
]
},
"after": [
"fresh-after-cancel"
],
"cancelledSource": "An unresolved user beforeVisible Promise; native RAF, Worker and media remain active."
}
}
]
},
{
"title": "candidate / Candidate Danmuku candidate: native seek cancels pending visibility without blocking later work",
"browser": "firefox",
"durationMs": 2753,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "candidate",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.legacy.js",
"sha256": "249f576e256457c2e47e945b9eb18f78877b658163b266c1153028d1f46d30b0",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-cancel",
"value": {
"action": "seek",
"before": {
"requests": [
1
],
"visible": [
"fresh-after-cancel"
]
},
"after": [
"fresh-after-cancel"
],
"cancelledSource": "An unresolved user beforeVisible Promise; native RAF, Worker and media remain active."
}
}
]
},
{
"title": "candidate / Candidate Danmuku candidate: native destroy cancels pending visibility without blocking later work",
"browser": "firefox",
"durationMs": 2488,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "candidate",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.legacy.js",
"sha256": "249f576e256457c2e47e945b9eb18f78877b658163b266c1153028d1f46d30b0",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-cancel",
"value": {
"action": "destroy",
"before": {
"requests": [
0
],
"visible": []
},
"after": [],
"cancelledSource": "An unresolved user beforeVisible Promise; native RAF, Worker and media remain active."
}
}
]
},
{
"title": "candidate / Candidate Danmuku candidate: native Worker renders three modes with synchronous filter and asynchronous beforeVisible",
"browser": "firefox",
"durationMs": 2045,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "candidate",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.legacy.js",
"sha256": "249f576e256457c2e47e945b9eb18f78877b658163b266c1153028d1f46d30b0",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
}
]
},
{
"title": "candidate / Candidate Danmuku candidate: six simultaneous fixed comments preserve usable track geometry and input order",
"browser": "firefox",
"durationMs": 1565,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "candidate",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.legacy.js",
"sha256": "249f576e256457c2e47e945b9eb18f78877b658163b266c1153028d1f46d30b0",
"media": "/test/pattern.mp4",
"scenario": "density",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-dense-tracks",
"value": [
{
"id": "dense-0",
"mode": "1",
"state": "stop",
"text": "TRACK 0",
"x": 285,
"y": 10,
"width": 70,
"height": 22.5,
"visibility": "visible",
"display": "block",
"transition": "",
"opacity": "1"
},
{
"id": "dense-1",
"mode": "1",
"state": "stop",
"text": "TRACK 1",
"x": 285,
"y": 33,
"width": 70,
"height": 22.5,
"visibility": "visible",
"display": "block",
"transition": "",
"opacity": "1"
},
{
"id": "dense-2",
"mode": "1",
"state": "stop",
"text": "TRACK 2",
"x": 285,
"y": 56,
"width": 70,
"height": 22.5,
"visibility": "visible",
"display": "block",
"transition": "",
"opacity": "1"
},
{
"id": "dense-3",
"mode": "1",
"state": "stop",
"text": "TRACK 3",
"x": 285,
"y": 79,
"width": 70,
"height": 22.5,
"visibility": "visible",
"display": "block",
"transition": "",
"opacity": "1"
},
{
"id": "dense-4",
"mode": "1",
"state": "stop",
"text": "TRACK 4",
"x": 285,
"y": 102,
"width": 70,
"height": 22.5,
"visibility": "visible",
"display": "block",
"transition": "",
"opacity": "1"
},
{
"id": "dense-5",
"mode": "1",
"state": "stop",
"text": "TRACK 5",
"x": 285,
"y": 125,
"width": 70,
"height": 22.5,
"visibility": "visible",
"display": "block",
"transition": "",
"opacity": "1"
}
]
}
]
},
{
"title": "candidate / Candidate Danmuku candidate: native pause seek rate and public reset/load retain historical pool semantics",
"browser": "firefox",
"durationMs": 2652,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "candidate",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.legacy.js",
"sha256": "249f576e256457c2e47e945b9eb18f78877b658163b266c1153028d1f46d30b0",
"media": "/test/pattern.mp4",
"scenario": "playback",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-pool-and-rate",
"value": {
"frozen": {
"left": 602.7999877929688,
"next": 602.7999877929688,
"state": "stop"
},
"reused": {
"poolReused": true,
"visibleSameNode": true,
"original": {
"id": "reused",
"state": "emit",
"visibility": "visible",
"text": "REUSED"
},
"extraNodes": [],
"transition": "4s",
"rate": 2
},
"loadWithoutArgument": "replaces from original empty option; explicit array load appends"
}
},
{
"name": "danmuku-native-eligibility",
"value": [
{
"wall": 409,
"before": 0.007043,
"after": 0.007043,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 426,
"before": 0.007043,
"after": 0.007043,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 442,
"before": 0.047447,
"after": 0.047447,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 459,
"before": 0.047447,
"after": 0.047447,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 475,
"before": 0.047447,
"after": 0.047447,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 493,
"before": 0.088696,
"after": 0.088696,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 509,
"before": 0.088696,
"after": 0.088696,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 526,
"before": 0.129415,
"after": 0.129415,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 543,
"before": 0.129415,
"after": 0.129415,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 559,
"before": 0.169573,
"after": 0.169573,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 576,
"before": 0.169573,
"after": 0.169573,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 592,
"before": 0.169573,
"after": 0.169573,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 609,
"before": 0.210857,
"after": 0.210857,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 626,
"before": 0.210857,
"after": 0.210857,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 643,
"before": 0.251096,
"after": 0.251096,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 660,
"before": 0.251096,
"after": 0.251096,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 676,
"before": 0.251096,
"after": 0.251096,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 693,
"before": 0.291666,
"after": 0.291666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 710,
"before": 0.291666,
"after": 0.291666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 726,
"before": 0.334332,
"after": 0.334332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 744,
"before": 0.334332,
"after": 0.334332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 759,
"before": 0.334332,
"after": 0.334332,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 775,
"before": 0.374999,
"after": 0.374999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 793,
"before": 0.374999,
"after": 0.374999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 809,
"before": 0.41594,
"after": 0.41594,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [
"moving"
],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 826,
"before": 0.41594,
"after": 0.41594,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 843,
"before": 0.41594,
"after": 0.41594,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 859,
"before": 0.456108,
"after": 0.456108,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 876,
"before": 0.456108,
"after": 0.456108,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 893,
"before": 0.496281,
"after": 0.496281,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 909,
"before": 0.496281,
"after": 0.496281,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 926,
"before": 0.536452,
"after": 0.536452,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 943,
"before": 0.536452,
"after": 0.536452,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 960,
"before": 0.536452,
"after": 0.536452,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 976,
"before": 0.576857,
"after": 0.576857,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 993,
"before": 0.576857,
"after": 0.576857,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1009,
"before": 0.617363,
"after": 0.617363,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1026,
"before": 0.617363,
"after": 0.617363,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1043,
"before": 0.617363,
"after": 0.617363,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1059,
"before": 0.657748,
"after": 0.657748,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1077,
"before": 0.657748,
"after": 0.657748,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1093,
"before": 0.698341,
"after": 0.698341,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1109,
"before": 0.698341,
"after": 0.698341,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1126,
"before": 0.698341,
"after": 0.698341,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1142,
"before": 0.738592,
"after": 0.738592,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1159,
"before": 0.738592,
"after": 0.738592,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1177,
"before": 0.778803,
"after": 0.778803,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1193,
"before": 0.778803,
"after": 0.778803,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1209,
"before": 0.819264,
"after": 0.819264,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1226,
"before": 0.819264,
"after": 0.819264,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1243,
"before": 0.819264,
"after": 0.819264,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1259,
"before": 0.859615,
"after": 0.859615,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1276,
"before": 0.859615,
"after": 0.859615,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1293,
"before": 0.900074,
"after": 0.900074,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1309,
"before": 0.900074,
"after": 0.900074,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1328,
"before": 0.900074,
"after": 0.900074,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1345,
"before": 0.940379,
"after": 0.940379,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1510,
"before": 2.00006,
"after": 2.00006,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1526,
"before": 2.041666,
"after": 2.041666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1543,
"before": 2.082755,
"after": 2.082755,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1560,
"before": 2.082755,
"after": 2.082755,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1577,
"before": 2.124999,
"after": 2.124999,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1593,
"before": 2.166666,
"after": 2.166666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1609,
"before": 2.207892,
"after": 2.207892,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1627,
"before": 2.249088,
"after": 2.249088,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1644,
"before": 2.290002,
"after": 2.290002,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1660,
"before": 2.290002,
"after": 2.290002,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1676,
"before": 2.330662,
"after": 2.330662,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1694,
"before": 2.371182,
"after": 2.371182,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1710,
"before": 2.411494,
"after": 2.411494,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [
"reused"
],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "wait"
}
]
},
{
"wall": 1727,
"before": 2.452702,
"after": 2.452702,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1743,
"before": 2.452702,
"after": 2.452702,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1760,
"before": 2.493385,
"after": 2.493385,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1776,
"before": 2.534337,
"after": 2.534337,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1794,
"before": 2.574772,
"after": 2.574772,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1810,
"before": 2.615084,
"after": 2.615084,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1826,
"before": 2.65539,
"after": 2.65539,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1843,
"before": 2.65539,
"after": 2.65539,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1860,
"before": 2.696335,
"after": 2.696335,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1877,
"before": 2.736909,
"after": 2.736909,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1895,
"before": 2.777629,
"after": 2.777629,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
}
]
},
{
"wall": 1910,
"before": 2.81879,
"after": 2.81879,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.277629,
"state": "wait"
}
]
},
{
"wall": 1927,
"before": 2.81879,
"after": 2.81879,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.277629,
"state": "wait"
}
]
},
{
"wall": 1944,
"before": 2.859895,
"after": 2.859895,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.277629,
"state": "wait"
}
]
},
{
"wall": 1960,
"before": 2.900599,
"after": 2.900599,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.277629,
"state": "wait"
}
]
},
{
"wall": 1977,
"before": 2.941677,
"after": 2.941677,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.277629,
"state": "wait"
}
]
},
{
"wall": 1993,
"before": 2.982401,
"after": 2.982401,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.277629,
"state": "wait"
}
]
},
{
"wall": 2011,
"before": 3.023225,
"after": 3.023225,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.277629,
"state": "wait"
}
]
},
{
"wall": 2027,
"before": 3.023225,
"after": 3.023225,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.277629,
"state": "wait"
}
]
},
{
"wall": 2044,
"before": 3.064223,
"after": 3.064223,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.277629,
"state": "wait"
}
]
},
{
"wall": 2060,
"before": 3.104946,
"after": 3.104946,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.277629,
"state": "wait"
}
]
},
{
"wall": 2077,
"before": 3.145078,
"after": 3.145078,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.277629,
"state": "wait"
}
]
},
{
"wall": 2094,
"before": 3.186021,
"after": 3.186021,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [
"appended"
],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.277629,
"state": "wait"
}
]
},
{
"wall": 2110,
"before": 3.226477,
"after": 3.226477,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.277629,
"state": "emit"
}
]
},
{
"wall": 2127,
"before": 3.226477,
"after": 3.226477,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.277629,
"state": "emit"
}
]
},
{
"wall": 2143,
"before": 3.267558,
"after": 3.267558,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.277629,
"state": "emit"
}
]
},
{
"wall": 2160,
"before": 3.308393,
"after": 3.308393,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.277629,
"state": "emit"
}
]
},
{
"wall": 2178,
"before": 3.349575,
"after": 3.349575,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.277629,
"state": "emit"
}
]
},
{
"wall": 2194,
"before": 3.38981,
"after": 3.38981,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.277629,
"state": "emit"
}
]
},
{
"wall": 2211,
"before": 3.38981,
"after": 3.38981,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.277629,
"state": "emit"
}
]
},
{
"wall": 2227,
"before": 3.430954,
"after": 3.430954,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.277629,
"state": "emit"
}
]
},
{
"wall": 2243,
"before": 3.471493,
"after": 3.471493,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.277629,
"state": "emit"
}
]
},
{
"wall": 2260,
"before": 3.511971,
"after": 3.511971,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.277629,
"state": "emit"
}
]
},
{
"wall": 2277,
"before": 3.553164,
"after": 3.553164,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.277629,
"state": "emit"
}
]
},
{
"wall": 2293,
"before": 3.553164,
"after": 3.553164,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.277629,
"state": "emit"
}
]
},
{
"wall": 2310,
"before": 3.594176,
"after": 3.594176,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.277629,
"state": "emit"
}
]
},
{
"wall": 2327,
"before": 3.634823,
"after": 3.634823,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5,
"state": "emit"
},
{
"id": "appended",
"time": 3.277629,
"state": "emit"
}
]
}
]
}
]
},
{
"title": "candidate / Candidate Danmuku candidate: actual settings, asynchronous send lock, external fullscreen mount and two-player destruction",
"browser": "firefox",
"durationMs": 4437,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "candidate",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.legacy.js",
"sha256": "249f576e256457c2e47e945b9eb18f78877b658163b266c1153028d1f46d30b0",
"media": "/test/pattern.mp4",
"scenario": "settings",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
}
]
},
{
"title": "published / Candidate Danmuku candidate: accepted NaN timestamp keeps the historical current-time fallback",
"browser": "webkit",
"durationMs": 3922,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "published",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.legacy.js",
"sha256": "249f576e256457c2e47e945b9eb18f78877b658163b266c1153028d1f46d30b0",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-numeric-compatibility",
"value": {
"expected": 0.5,
"inputTime": 0.5,
"queueTime": 0.5,
"isNaN": false
}
}
]
},
{
"title": "published / Candidate Danmuku candidate: failed recovery respects synchronous destroy from the error listener",
"browser": "webkit",
"durationMs": 1738,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "published",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.legacy.js",
"sha256": "249f576e256457c2e47e945b9eb18f78877b658163b266c1153028d1f46d30b0",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-recovery-reentry",
"value": {
"action": "destroy",
"sameOwner": true,
"rowState": "stop",
"isStop": true,
"isDestroy": true,
"events": [
{
"index": 0,
"event": "error",
"time": 0.1411414
},
{
"index": 0,
"event": "stop",
"time": 0
},
{
"index": 0,
"event": "destroy",
"time": 0
}
],
"workers": [
{
"url": "blob:http://127.0.0.1:8084/8a9ddc76-60b6-4b13-a290-90d9e1982c81",
"requests": [
{
"type": "getDanmuTop",
"target": {
"mode": 1,
"height": 23,
"speed": 90
},
"visibles": [],
"antiOverlap": true,
"clientWidth": 640,
"clientHeight": 360,
"marginBottom": 10,
"marginTop": 10,
"id": 1
}
],
"replies": [
{
"id": 1,
"result": 10
}
],
"terminated": 1,
"errors": [
"controlled track failure"
]
}
],
"fault": "Actual video/DOM/track Worker; dispatch an explicit native ErrorEvent and inject a throwing createWorker recovery seam. This does not claim a real CSP or browser Worker construction failure."
}
}
]
},
{
"title": "published / Candidate Danmuku candidate: failed recovery respects synchronous stop from the error listener",
"browser": "webkit",
"durationMs": 1697,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "published",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.legacy.js",
"sha256": "249f576e256457c2e47e945b9eb18f78877b658163b266c1153028d1f46d30b0",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-recovery-reentry",
"value": {
"action": "stop",
"sameOwner": true,
"rowState": "stop",
"isStop": true,
"isDestroy": false,
"events": [
{
"index": 0,
"event": "error",
"time": 0.1457316
},
{
"index": 0,
"event": "stop",
"time": 0.145779
}
],
"workers": [
{
"url": "blob:http://127.0.0.1:8084/cee08f5f-60ee-43d6-9d8b-d2bcc93bd283",
"requests": [
{
"type": "getDanmuTop",
"target": {
"mode": 1,
"height": 23,
"speed": 90
},
"visibles": [],
"antiOverlap": true,
"clientWidth": 640,
"clientHeight": 360,
"marginBottom": 10,
"marginTop": 10,
"id": 1
}
],
"replies": [
{
"id": 1,
"result": 10
}
],
"terminated": 1,
"errors": [
"controlled track failure"
]
}
],
"fault": "Actual video/DOM/track Worker; dispatch an explicit native ErrorEvent and inject a throwing createWorker recovery seam. This does not claim a real CSP or browser Worker construction failure."
}
}
]
},
{
"title": "published / Candidate Danmuku candidate: native pause cancels pending visibility without blocking later work",
"browser": "webkit",
"durationMs": 4351,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "published",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.legacy.js",
"sha256": "249f576e256457c2e47e945b9eb18f78877b658163b266c1153028d1f46d30b0",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-cancel",
"value": {
"action": "pause",
"before": {
"requests": [
1
],
"visible": [
"fresh-after-cancel"
]
},
"after": [
"fresh-after-cancel"
],
"cancelledSource": "An unresolved user beforeVisible Promise; native RAF, Worker and media remain active."
}
}
]
},
{
"title": "published / Candidate Danmuku candidate: native reset cancels pending visibility without blocking later work",
"browser": "webkit",
"durationMs": 3854,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "published",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.legacy.js",
"sha256": "249f576e256457c2e47e945b9eb18f78877b658163b266c1153028d1f46d30b0",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-cancel",
"value": {
"action": "reset",
"before": {
"requests": [
1
],
"visible": [
"fresh-after-cancel"
]
},
"after": [
"fresh-after-cancel"
],
"cancelledSource": "An unresolved user beforeVisible Promise; native RAF, Worker and media remain active."
}
}
]
},
{
"title": "published / Candidate Danmuku candidate: native seek cancels pending visibility without blocking later work",
"browser": "webkit",
"durationMs": 4215,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "published",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.legacy.js",
"sha256": "249f576e256457c2e47e945b9eb18f78877b658163b266c1153028d1f46d30b0",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-cancel",
"value": {
"action": "seek",
"before": {
"requests": [
1
],
"visible": [
"fresh-after-cancel"
]
},
"after": [
"fresh-after-cancel"
],
"cancelledSource": "An unresolved user beforeVisible Promise; native RAF, Worker and media remain active."
}
}
]
},
{
"title": "published / Candidate Danmuku candidate: native destroy cancels pending visibility without blocking later work",
"browser": "webkit",
"durationMs": 3498,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "published",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.legacy.js",
"sha256": "249f576e256457c2e47e945b9eb18f78877b658163b266c1153028d1f46d30b0",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-cancel",
"value": {
"action": "destroy",
"before": {
"requests": [
0
],
"visible": []
},
"after": [],
"cancelledSource": "An unresolved user beforeVisible Promise; native RAF, Worker and media remain active."
}
}
]
},
{
"title": "published / Candidate Danmuku candidate: native Worker renders three modes with synchronous filter and asynchronous beforeVisible",
"browser": "webkit",
"durationMs": 2408,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "published",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.legacy.js",
"sha256": "249f576e256457c2e47e945b9eb18f78877b658163b266c1153028d1f46d30b0",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
}
]
},
{
"title": "published / Candidate Danmuku candidate: six simultaneous fixed comments preserve usable track geometry and input order",
"browser": "webkit",
"durationMs": 3121,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "published",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.legacy.js",
"sha256": "249f576e256457c2e47e945b9eb18f78877b658163b266c1153028d1f46d30b0",
"media": "/test/pattern.mp4",
"scenario": "density",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-dense-tracks",
"value": [
{
"id": "dense-0",
"mode": "1",
"state": "stop",
"text": "TRACK 0",
"x": 285,
"y": 10,
"width": 70,
"height": 22.5,
"visibility": "visible",
"display": "block",
"transition": "",
"opacity": "1"
},
{
"id": "dense-1",
"mode": "1",
"state": "stop",
"text": "TRACK 1",
"x": 285,
"y": 33,
"width": 70,
"height": 22.5,
"visibility": "visible",
"display": "block",
"transition": "",
"opacity": "1"
},
{
"id": "dense-2",
"mode": "1",
"state": "stop",
"text": "TRACK 2",
"x": 285,
"y": 56,
"width": 70,
"height": 22.5,
"visibility": "visible",
"display": "block",
"transition": "",
"opacity": "1"
},
{
"id": "dense-3",
"mode": "1",
"state": "stop",
"text": "TRACK 3",
"x": 285,
"y": 79,
"width": 70,
"height": 22.5,
"visibility": "visible",
"display": "block",
"transition": "",
"opacity": "1"
},
{
"id": "dense-4",
"mode": "1",
"state": "stop",
"text": "TRACK 4",
"x": 285,
"y": 102,
"width": 70,
"height": 22.5,
"visibility": "visible",
"display": "block",
"transition": "",
"opacity": "1"
},
{
"id": "dense-5",
"mode": "1",
"state": "stop",
"text": "TRACK 5",
"x": 285,
"y": 125,
"width": 70,
"height": 22.5,
"visibility": "visible",
"display": "block",
"transition": "",
"opacity": "1"
}
]
}
]
},
{
"title": "published / Candidate Danmuku candidate: native pause seek rate and public reset/load retain historical pool semantics",
"browser": "webkit",
"durationMs": 4145,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "published",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.legacy.js",
"sha256": "249f576e256457c2e47e945b9eb18f78877b658163b266c1153028d1f46d30b0",
"media": "/test/pattern.mp4",
"scenario": "playback",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-pool-and-rate",
"value": {
"frozen": {
"left": 617.2000122070312,
"next": 617.2000122070312,
"state": "stop"
},
"reused": {
"poolReused": true,
"visibleSameNode": true,
"original": {
"id": "reused",
"state": "emit",
"visibility": "visible",
"text": "REUSED"
},
"extraNodes": [],
"transition": "4s",
"rate": 2
},
"loadWithoutArgument": "replaces from original empty option; explicit array load appends"
}
},
{
"name": "danmuku-native-eligibility",
"value": [
{
"wall": 1054,
"before": 0.0228873,
"after": 0.0229379,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 1100,
"before": 0.0693917,
"after": 0.0694077,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 1131,
"before": 0.1002055,
"after": 0.1002208,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 1177,
"before": 0.1462612,
"after": 0.1462737,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 1241,
"before": 0.2097266,
"after": 0.2097338,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 1285,
"before": 0.2544607,
"after": 0.2544722,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 1318,
"before": 0.2868073,
"after": 0.2868385,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 1348,
"before": 0.3166545,
"after": 0.3166794,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 1393,
"before": 0.3623165,
"after": 0.3623328,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 1424,
"before": 0.3925826,
"after": 0.3926047,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 1471,
"before": 0.4394969,
"after": 0.4395227,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [
"moving"
],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 1518,
"before": 0.4873621,
"after": 0.4873729,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1549,
"before": 0.5177579,
"after": 0.5177702,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1596,
"before": 0.5648463,
"after": 0.5648637,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1660,
"before": 0.6284954,
"after": 0.6285142,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1703,
"before": 0.6718221,
"after": 0.671831,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1749,
"before": 0.7182764,
"after": 0.7182861,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1795,
"before": 0.7635975,
"after": 0.7636117,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1856,
"before": 0.8249366,
"after": 0.8249459,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1858,
"before": 0.8268354,
"after": 0.8268454,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1859,
"before": 0.8280751,
"after": 0.8280813,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 2332,
"before": 2.0400136,
"after": 2.0400314,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5012244,
"state": "wait"
}
]
},
{
"wall": 2379,
"before": 2.1346078,
"after": 2.1346342,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5012244,
"state": "wait"
}
]
},
{
"wall": 2425,
"before": 2.226155,
"after": 2.2262092,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5012244,
"state": "wait"
}
]
},
{
"wall": 2471,
"before": 2.3174384,
"after": 2.3174666,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5012244,
"state": "wait"
}
]
},
{
"wall": 2516,
"before": 2.408291,
"after": 2.4083306,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [
"reused"
],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5012244,
"state": "wait"
}
]
},
{
"wall": 2547,
"before": 2.4707746,
"after": 2.4708086,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5012244,
"state": "emit"
}
]
},
{
"wall": 2579,
"before": 2.5343928,
"after": 2.534417,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5012244,
"state": "emit"
}
]
},
{
"wall": 2608,
"before": 2.592877,
"after": 2.5928988,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5012244,
"state": "emit"
}
]
},
{
"wall": 2640,
"before": 2.6564802,
"after": 2.6565346,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5012244,
"state": "emit"
}
]
},
{
"wall": 2685,
"before": 2.7468996,
"after": 2.7469786,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5012244,
"state": "emit"
}
]
},
{
"wall": 2731,
"before": 2.8381784,
"after": 2.8382078,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5012244,
"state": "emit"
}
]
},
{
"wall": 2777,
"before": 2.9304642,
"after": 2.930489,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5012244,
"state": "emit"
},
{
"id": "appended",
"time": 3.4145138,
"state": "wait"
}
]
},
{
"wall": 2839,
"before": 3.0541652,
"after": 3.0542004,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5012244,
"state": "emit"
},
{
"id": "appended",
"time": 3.4145138,
"state": "wait"
}
]
},
{
"wall": 2883,
"before": 3.1424126,
"after": 3.1424544,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5012244,
"state": "emit"
},
{
"id": "appended",
"time": 3.4145138,
"state": "wait"
}
]
},
{
"wall": 2929,
"before": 3.234471,
"after": 3.2346206,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5012244,
"state": "emit"
},
{
"id": "appended",
"time": 3.4145138,
"state": "wait"
}
]
},
{
"wall": 2990,
"before": 3.3562606,
"after": 3.356313,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [
"appended"
],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5012244,
"state": "emit"
},
{
"id": "appended",
"time": 3.4145138,
"state": "wait"
}
]
},
{
"wall": 3037,
"before": 3.4504656,
"after": 3.4504892,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5012244,
"state": "emit"
},
{
"id": "appended",
"time": 3.4145138,
"state": "emit"
}
]
},
{
"wall": 3068,
"before": 3.5121512,
"after": 3.5121736,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5012244,
"state": "emit"
},
{
"id": "appended",
"time": 3.4145138,
"state": "emit"
}
]
},
{
"wall": 3114,
"before": 3.6049912,
"after": 3.6050122,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5012244,
"state": "emit"
},
{
"id": "appended",
"time": 3.4145138,
"state": "emit"
}
]
},
{
"wall": 3162,
"before": 3.6996648,
"after": 3.699698,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5012244,
"state": "emit"
},
{
"id": "appended",
"time": 3.4145138,
"state": "emit"
}
]
},
{
"wall": 3223,
"before": 3.8211644,
"after": 3.8211812,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5012244,
"state": "emit"
},
{
"id": "appended",
"time": 3.4145138,
"state": "emit"
}
]
},
{
"wall": 3268,
"before": 3.9124788,
"after": 3.9125026,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5012244,
"state": "emit"
},
{
"id": "appended",
"time": 3.4145138,
"state": "emit"
}
]
},
{
"wall": 3314,
"before": 4.0041666,
"after": 4.0041886,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5012244,
"state": "emit"
},
{
"id": "appended",
"time": 3.4145138,
"state": "emit"
}
]
},
{
"wall": 3377,
"before": 4.1305742,
"after": 4.1305928,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5012244,
"state": "emit"
},
{
"id": "appended",
"time": 3.4145138,
"state": "emit"
}
]
},
{
"wall": 3422,
"before": 4.219931,
"after": 4.219959,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5012244,
"state": "emit"
},
{
"id": "appended",
"time": 3.4145138,
"state": "emit"
}
]
},
{
"wall": 3467,
"before": 4.3107776,
"after": 4.3108004,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5012244,
"state": "emit"
},
{
"id": "appended",
"time": 3.4145138,
"state": "emit"
}
]
},
{
"wall": 3529,
"before": 4.4336204,
"after": 4.4336678,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5012244,
"state": "emit"
},
{
"id": "appended",
"time": 3.4145138,
"state": "emit"
}
]
},
{
"wall": 3531,
"before": 4.4389278,
"after": 4.4389514,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5012244,
"state": "emit"
},
{
"id": "appended",
"time": 3.4145138,
"state": "emit"
}
]
},
{
"wall": 3533,
"before": 4.4423304,
"after": 4.4423458,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.5012244,
"state": "emit"
},
{
"id": "appended",
"time": 3.4145138,
"state": "emit"
}
]
}
]
}
]
},
{
"title": "published / Candidate Danmuku candidate: actual settings, asynchronous send lock, external fullscreen mount and two-player destruction",
"browser": "webkit",
"durationMs": 6333,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "published",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.legacy.js",
"sha256": "249f576e256457c2e47e945b9eb18f78877b658163b266c1153028d1f46d30b0",
"media": "/test/pattern.mp4",
"scenario": "settings",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
}
]
},
{
"title": "candidate / Candidate Danmuku candidate: accepted NaN timestamp keeps the historical current-time fallback",
"browser": "webkit",
"durationMs": 3961,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "candidate",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.legacy.js",
"sha256": "249f576e256457c2e47e945b9eb18f78877b658163b266c1153028d1f46d30b0",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-numeric-compatibility",
"value": {
"expected": 0.5,
"inputTime": 0.5,
"queueTime": 0.5,
"isNaN": false
}
}
]
},
{
"title": "candidate / Candidate Danmuku candidate: failed recovery respects synchronous destroy from the error listener",
"browser": "webkit",
"durationMs": 1635,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "candidate",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.legacy.js",
"sha256": "249f576e256457c2e47e945b9eb18f78877b658163b266c1153028d1f46d30b0",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-recovery-reentry",
"value": {
"action": "destroy",
"sameOwner": true,
"rowState": "stop",
"isStop": true,
"isDestroy": true,
"events": [
{
"index": 0,
"event": "error",
"time": 0.21373
},
{
"index": 0,
"event": "stop",
"time": 0
},
{
"index": 0,
"event": "destroy",
"time": 0
}
],
"workers": [
{
"url": "blob:http://127.0.0.1:8084/c5d5cb5e-6993-41a8-a80d-841e352f1bad",
"requests": [
{
"type": "getDanmuTop",
"target": {
"mode": 1,
"height": 23,
"speed": 90
},
"visibles": [],
"antiOverlap": true,
"clientWidth": 640,
"clientHeight": 360,
"marginBottom": 10,
"marginTop": 10,
"id": 1
}
],
"replies": [
{
"id": 1,
"result": 10
}
],
"terminated": 1,
"errors": [
"controlled track failure"
]
}
],
"fault": "Actual video/DOM/track Worker; dispatch an explicit native ErrorEvent and inject a throwing createWorker recovery seam. This does not claim a real CSP or browser Worker construction failure."
}
}
]
},
{
"title": "candidate / Candidate Danmuku candidate: failed recovery respects synchronous stop from the error listener",
"browser": "webkit",
"durationMs": 1855,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "candidate",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.legacy.js",
"sha256": "249f576e256457c2e47e945b9eb18f78877b658163b266c1153028d1f46d30b0",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-recovery-reentry",
"value": {
"action": "stop",
"sameOwner": true,
"rowState": "stop",
"isStop": true,
"isDestroy": false,
"events": [
{
"index": 0,
"event": "error",
"time": 0.2149887
},
{
"index": 0,
"event": "stop",
"time": 0.2150355
}
],
"workers": [
{
"url": "blob:http://127.0.0.1:8084/eb5b11b0-b297-4d8c-a0b4-f77a2bd67f2c",
"requests": [
{
"type": "getDanmuTop",
"target": {
"mode": 1,
"height": 23,
"speed": 90
},
"visibles": [],
"antiOverlap": true,
"clientWidth": 640,
"clientHeight": 360,
"marginBottom": 10,
"marginTop": 10,
"id": 1
}
],
"replies": [
{
"id": 1,
"result": 10
}
],
"terminated": 1,
"errors": [
"controlled track failure"
]
}
],
"fault": "Actual video/DOM/track Worker; dispatch an explicit native ErrorEvent and inject a throwing createWorker recovery seam. This does not claim a real CSP or browser Worker construction failure."
}
}
]
},
{
"title": "candidate / Candidate Danmuku candidate: native pause cancels pending visibility without blocking later work",
"browser": "webkit",
"durationMs": 4441,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "candidate",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.legacy.js",
"sha256": "249f576e256457c2e47e945b9eb18f78877b658163b266c1153028d1f46d30b0",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-cancel",
"value": {
"action": "pause",
"before": {
"requests": [
1
],
"visible": [
"fresh-after-cancel"
]
},
"after": [
"fresh-after-cancel"
],
"cancelledSource": "An unresolved user beforeVisible Promise; native RAF, Worker and media remain active."
}
}
]
},
{
"title": "candidate / Candidate Danmuku candidate: native reset cancels pending visibility without blocking later work",
"browser": "webkit",
"durationMs": 3752,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "candidate",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.legacy.js",
"sha256": "249f576e256457c2e47e945b9eb18f78877b658163b266c1153028d1f46d30b0",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-cancel",
"value": {
"action": "reset",
"before": {
"requests": [
1
],
"visible": [
"fresh-after-cancel"
]
},
"after": [
"fresh-after-cancel"
],
"cancelledSource": "An unresolved user beforeVisible Promise; native RAF, Worker and media remain active."
}
}
]
},
{
"title": "candidate / Candidate Danmuku candidate: native seek cancels pending visibility without blocking later work",
"browser": "webkit",
"durationMs": 4229,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "candidate",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.legacy.js",
"sha256": "249f576e256457c2e47e945b9eb18f78877b658163b266c1153028d1f46d30b0",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-cancel",
"value": {
"action": "seek",
"before": {
"requests": [
1
],
"visible": [
"fresh-after-cancel"
]
},
"after": [
"fresh-after-cancel"
],
"cancelledSource": "An unresolved user beforeVisible Promise; native RAF, Worker and media remain active."
}
}
]
},
{
"title": "candidate / Candidate Danmuku candidate: native destroy cancels pending visibility without blocking later work",
"browser": "webkit",
"durationMs": 3748,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "candidate",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.legacy.js",
"sha256": "249f576e256457c2e47e945b9eb18f78877b658163b266c1153028d1f46d30b0",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-native-cancel",
"value": {
"action": "destroy",
"before": {
"requests": [
0
],
"visible": []
},
"after": [],
"cancelledSource": "An unresolved user beforeVisible Promise; native RAF, Worker and media remain active."
}
}
]
},
{
"title": "candidate / Candidate Danmuku candidate: native Worker renders three modes with synchronous filter and asynchronous beforeVisible",
"browser": "webkit",
"durationMs": 2326,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "candidate",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.legacy.js",
"sha256": "249f576e256457c2e47e945b9eb18f78877b658163b266c1153028d1f46d30b0",
"media": "/test/pattern.mp4",
"scenario": "modes",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
}
]
},
{
"title": "candidate / Candidate Danmuku candidate: six simultaneous fixed comments preserve usable track geometry and input order",
"browser": "webkit",
"durationMs": 3119,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "candidate",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.legacy.js",
"sha256": "249f576e256457c2e47e945b9eb18f78877b658163b266c1153028d1f46d30b0",
"media": "/test/pattern.mp4",
"scenario": "density",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-dense-tracks",
"value": [
{
"id": "dense-0",
"mode": "1",
"state": "stop",
"text": "TRACK 0",
"x": 285,
"y": 10,
"width": 70,
"height": 22.5,
"visibility": "visible",
"display": "block",
"transition": "",
"opacity": "1"
},
{
"id": "dense-1",
"mode": "1",
"state": "stop",
"text": "TRACK 1",
"x": 285,
"y": 33,
"width": 70,
"height": 22.5,
"visibility": "visible",
"display": "block",
"transition": "",
"opacity": "1"
},
{
"id": "dense-2",
"mode": "1",
"state": "stop",
"text": "TRACK 2",
"x": 285,
"y": 56,
"width": 70,
"height": 22.5,
"visibility": "visible",
"display": "block",
"transition": "",
"opacity": "1"
},
{
"id": "dense-3",
"mode": "1",
"state": "stop",
"text": "TRACK 3",
"x": 285,
"y": 79,
"width": 70,
"height": 22.5,
"visibility": "visible",
"display": "block",
"transition": "",
"opacity": "1"
},
{
"id": "dense-4",
"mode": "1",
"state": "stop",
"text": "TRACK 4",
"x": 285,
"y": 102,
"width": 70,
"height": 22.5,
"visibility": "visible",
"display": "block",
"transition": "",
"opacity": "1"
},
{
"id": "dense-5",
"mode": "1",
"state": "stop",
"text": "TRACK 5",
"x": 285,
"y": 125,
"width": 70,
"height": 22.5,
"visibility": "visible",
"display": "block",
"transition": "",
"opacity": "1"
}
]
}
]
},
{
"title": "candidate / Candidate Danmuku candidate: native pause seek rate and public reset/load retain historical pool semantics",
"browser": "webkit",
"durationMs": 4584,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "candidate",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.legacy.js",
"sha256": "249f576e256457c2e47e945b9eb18f78877b658163b266c1153028d1f46d30b0",
"media": "/test/pattern.mp4",
"scenario": "playback",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
},
{
"name": "danmuku-pool-and-rate",
"value": {
"frozen": {
"left": 587.1875,
"next": 587.1875,
"state": "stop"
},
"reused": {
"poolReused": true,
"visibleSameNode": true,
"original": {
"id": "reused",
"state": "emit",
"visibility": "visible",
"text": "REUSED"
},
"extraNodes": [],
"transition": "4s",
"rate": 2
},
"loadWithoutArgument": "replaces from original empty option; explicit array load appends"
}
},
{
"name": "danmuku-native-eligibility",
"value": [
{
"wall": 993,
"before": 0.0130648,
"after": 0.0131173,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 1035,
"before": 0.0549802,
"after": 0.0549962,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 1065,
"before": 0.0852038,
"after": 0.0852179,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 1111,
"before": 0.1317353,
"after": 0.1317466,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 1142,
"before": 0.1621851,
"after": 0.1621957,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 1174,
"before": 0.1947158,
"after": 0.1947303,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 1221,
"before": 0.2412238,
"after": 0.2412594,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 1252,
"before": 0.2726183,
"after": 0.2726269,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 1297,
"before": 0.3173417,
"after": 0.3173531,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 1328,
"before": 0.3478769,
"after": 0.3478974,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 1375,
"before": 0.3952643,
"after": 0.3952887,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 1421,
"before": 0.4409978,
"after": 0.4410155,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [
"moving"
],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
}
]
},
{
"wall": 1467,
"before": 0.4869792,
"after": 0.4869909,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1528,
"before": 0.5480809,
"after": 0.548092,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1558,
"before": 0.5783289,
"after": 0.5783385,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1604,
"before": 0.6246278,
"after": 0.6246348,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1636,
"before": 0.6561986,
"after": 0.6562097,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1681,
"before": 0.7013863,
"after": 0.7013971,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1727,
"before": 0.7470314,
"after": 0.7470497,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1774,
"before": 0.7941729,
"after": 0.7941857,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1834,
"before": 0.8540455,
"after": 0.8540573,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1865,
"before": 0.8856981,
"after": 0.8857096,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1910,
"before": 0.9299703,
"after": 0.9299837,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1940,
"before": 0.9605552,
"after": 0.9605703,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 1986,
"before": 1.0060919,
"after": 1.0061197,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 2017,
"before": 1.0372431,
"after": 1.0372547,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 2064,
"before": 1.0840408,
"after": 1.084052,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 2110,
"before": 1.130107,
"after": 1.1301193,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 2142,
"before": 1.1619106,
"after": 1.1619295,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 2144,
"before": 1.1647283,
"after": 1.1647427,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 2146,
"before": 1.1663142,
"after": 1.1663236,
"playing": true,
"paused": false,
"seeking": false,
"rate": 1,
"stop": false,
"generation": 3,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "emit"
}
]
},
{
"wall": 2663,
"before": 2.1330718,
"after": 2.1331416,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.503317,
"state": "wait"
}
]
},
{
"wall": 2723,
"before": 2.2532162,
"after": 2.253244,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.503317,
"state": "wait"
}
]
},
{
"wall": 2754,
"before": 2.3153652,
"after": 2.3154008,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.503317,
"state": "wait"
}
]
},
{
"wall": 2801,
"before": 2.4089448,
"after": 2.4090024,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [
"reused"
],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.503317,
"state": "wait"
}
]
},
{
"wall": 2831,
"before": 2.470887,
"after": 2.470951,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.503317,
"state": "emit"
}
]
},
{
"wall": 2878,
"before": 2.564194,
"after": 2.5642124,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.503317,
"state": "emit"
}
]
},
{
"wall": 2909,
"before": 2.6264638,
"after": 2.6264914,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.503317,
"state": "emit"
}
]
},
{
"wall": 2954,
"before": 2.716301,
"after": 2.7163208,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.503317,
"state": "emit"
}
]
},
{
"wall": 2985,
"before": 2.7779892,
"after": 2.7780118,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.503317,
"state": "emit"
}
]
},
{
"wall": 3031,
"before": 2.8703986,
"after": 2.8704264,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.503317,
"state": "emit"
}
]
},
{
"wall": 3076,
"before": 2.9598136,
"after": 2.959838,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.503317,
"state": "emit"
}
]
},
{
"wall": 3107,
"before": 3.021565,
"after": 3.0215818,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.503317,
"state": "emit"
}
]
},
{
"wall": 3139,
"before": 3.0859154,
"after": 3.0859368,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.503317,
"state": "emit"
},
{
"id": "appended",
"time": 3.5450142,
"state": "wait"
}
]
},
{
"wall": 3183,
"before": 3.1738206,
"after": 3.1738396,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.503317,
"state": "emit"
},
{
"id": "appended",
"time": 3.5450142,
"state": "wait"
}
]
},
{
"wall": 3213,
"before": 3.234496,
"after": 3.234554,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.503317,
"state": "emit"
},
{
"id": "appended",
"time": 3.5450142,
"state": "wait"
}
]
},
{
"wall": 3259,
"before": 3.3260314,
"after": 3.3260916,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.503317,
"state": "emit"
},
{
"id": "appended",
"time": 3.5450142,
"state": "wait"
}
]
},
{
"wall": 3289,
"before": 3.3864202,
"after": 3.3864458,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.503317,
"state": "emit"
},
{
"id": "appended",
"time": 3.5450142,
"state": "wait"
}
]
},
{
"wall": 3335,
"before": 3.4788946,
"after": 3.4789168,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [
"appended"
],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.503317,
"state": "emit"
},
{
"id": "appended",
"time": 3.5450142,
"state": "wait"
}
]
},
{
"wall": 3382,
"before": 3.5711118,
"after": 3.5711542,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.503317,
"state": "emit"
},
{
"id": "appended",
"time": 3.5450142,
"state": "emit"
}
]
},
{
"wall": 3428,
"before": 3.6634264,
"after": 3.6634484,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.503317,
"state": "emit"
},
{
"id": "appended",
"time": 3.5450142,
"state": "emit"
}
]
},
{
"wall": 3474,
"before": 3.7565586,
"after": 3.756593,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.503317,
"state": "emit"
},
{
"id": "appended",
"time": 3.5450142,
"state": "emit"
}
]
},
{
"wall": 3505,
"before": 3.817457,
"after": 3.8174768,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.503317,
"state": "emit"
},
{
"id": "appended",
"time": 3.5450142,
"state": "emit"
}
]
},
{
"wall": 3535,
"before": 3.8776714,
"after": 3.8776856,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.503317,
"state": "emit"
},
{
"id": "appended",
"time": 3.5450142,
"state": "emit"
}
]
},
{
"wall": 3582,
"before": 3.9712334,
"after": 3.9712518,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.503317,
"state": "emit"
},
{
"id": "appended",
"time": 3.5450142,
"state": "emit"
}
]
},
{
"wall": 3613,
"before": 4.0334472,
"after": 4.0334672,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.503317,
"state": "emit"
},
{
"id": "appended",
"time": 3.5450142,
"state": "emit"
}
]
},
{
"wall": 3675,
"before": 4.15878,
"after": 4.1588092,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.503317,
"state": "emit"
},
{
"id": "appended",
"time": 3.5450142,
"state": "emit"
}
]
},
{
"wall": 3736,
"before": 4.2795264,
"after": 4.2795428,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.503317,
"state": "emit"
},
{
"id": "appended",
"time": 3.5450142,
"state": "emit"
}
]
},
{
"wall": 3835,
"before": 4.477656,
"after": 4.4777094,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.503317,
"state": "emit"
},
{
"id": "appended",
"time": 3.5450142,
"state": "emit"
}
]
},
{
"wall": 3890,
"before": 4.5877412,
"after": 4.5877646,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.503317,
"state": "emit"
},
{
"id": "appended",
"time": 3.5450142,
"state": "emit"
}
]
},
{
"wall": 3912,
"before": 4.6310494,
"after": 4.6310694,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.503317,
"state": "emit"
},
{
"id": "appended",
"time": 3.5450142,
"state": "emit"
}
]
},
{
"wall": 3913,
"before": 4.634418,
"after": 4.6344324,
"playing": true,
"paused": false,
"seeking": false,
"rate": 2,
"stop": false,
"generation": 6,
"fault": false,
"ready": [],
"queue": [
{
"id": "moving",
"time": 0.5,
"state": "wait"
},
{
"id": "reused",
"time": 2.503317,
"state": "emit"
},
{
"id": "appended",
"time": 3.5450142,
"state": "emit"
}
]
}
]
}
]
},
{
"title": "candidate / Candidate Danmuku candidate: actual settings, asynchronous send lock, external fullscreen mount and two-player destruction",
"browser": "webkit",
"durationMs": 6606,
"observations": [
{
"name": "danmuku-browser-inputs",
"value": {
"core": "candidate",
"plugin": "artplayer-plugin-danmuku",
"format": "candidate",
"artifact": "D:\\github\\ArtPlayer\\packages\\artplayer-plugin-danmuku\\dist\\artplayer-plugin-danmuku.legacy.js",
"sha256": "249f576e256457c2e47e945b9eb18f78877b658163b266c1153028d1f46d30b0",
"media": "/test/pattern.mp4",
"scenario": "settings",
"worker": "Native Blob Worker, only constructor/message/termination observation; no Worker responses, media clocks, layout or RAF mocked",
"heatmap": false
}
}
]
}
]
}
],
"sizes": [
{
"file": "packages/artplayer-plugin-danmuku/dist/artplayer-plugin-danmuku.js",
"sha256": "f60047d3ba6a47b7e4e65813e5c26bf7bebcc79addfbb36829d5bba0a57cfeba",
"beforeBytes": 59100,
"afterBytes": 64909,
"beforeGzipBytes": 16799,
"afterGzipBytes": 18728
},
{
"file": "packages/artplayer-plugin-danmuku/dist/artplayer-plugin-danmuku.legacy.js",
"sha256": "249f576e256457c2e47e945b9eb18f78877b658163b266c1153028d1f46d30b0",
"beforeBytes": 60243,
"afterBytes": 66169,
"beforeGzipBytes": 17160,
"afterGzipBytes": 19167
},
{
"file": "packages/artplayer-plugin-danmuku/dist/artplayer-plugin-danmuku.mjs",
"sha256": "964870b2f5f5bb282b5aec5fd5a793243c94ec1cfb36dadeb0fa410ce1345457",
"beforeBytes": 87065,
"afterBytes": 97753,
"beforeGzipBytes": 20852,
"afterGzipBytes": 23277
}
],
"checks": [
{
"file": "refactor/.cache/danmuku05-build-final.log",
"sha256": "71e8f8b0a553acf7e227b7d0225eb2bece3beeef7d9c3ad2cf36ffd4d8995976"
},
{
"file": "refactor/.cache/danmuku05-lint-final.log",
"sha256": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
},
{
"file": "refactor/.cache/danmuku05-frozen-install.log",
"sha256": "c7cb9ac14616b0fc30f316ac79623c2a16e66e74bb7eb6d3e13c34c2f9197228"
},
{
"file": "refactor/.cache/danmuku05-toolchain.log",
"sha256": "922a33e7f2330c880fd8fcaeb321618f116f6d048b7202cc977b163915ce94e4"
},
{
"file": "refactor/.cache/danmuku05-typecheck-complete.log",
"sha256": "2b24379004c1f3ecba09c64eea5f02533c572273a5753017fea3be6d96a4878e"
}
],
"nativeBefore": {
"file": "refactor/.cache/danmuku05-browser-before/report.json",
"sha256": "4b7c22630144eef4834d316e9175eb05e7faa160973afcd40d351235a4e4fe64",
"tests": 6,
"failed": 6,
"explanation": "Actual task04 main, two cores, Chromium: retained setting DOM, late clearing/lock, active send timer and retained renderer nodes."
},
"initialMatrix": {
"file": "refactor/.cache/danmuku05-browser-source-initial-matrix/report.json",
"sha256": "f11721c3b599ab91c5d55f33ea3599d9da8424d7e6a779dd08cdede8960274e5",
"passed": 128,
"failed": 4,
"explanation": "Two WebKit timer cases counted unrelated one-second timers; observe the send continuation timer instead. Two lifecycle cases did not reach visibility eligibility; now explicitly seed ready only for cancellation/recovery cases. Original native clock/geometry tests remain. LOAD-01 tracks real frame/window evidence for task07."
},
"fixtureCorrection": {
"file": "refactor/.cache/danmuku05-browser-source-ready-initial/report.json",
"sha256": "c4490f9c55e6bd3bb0db82e45841c41e792d86efc0937844a31b876da6b5ec43",
"passed": 125,
"failed": 7,
"explanation": "Seeding the obsolete item as ready changed its post-seek eligibility, reentering the unresolved gate (six failures); restore timestamp-based old item at native 0.25 playbackRate. NaN clock case also uses that real rate. Only recovery/new continuation items seed ready. No production change or timeout increase."
},
"targetedFixtureValidation": {
"file": "refactor/.cache/danmuku05-browser-fixture-final/report.json",
"sha256": "20cd361d46b31577a0c3a607601604f9a6dccab181733ef36873a98057c3a550",
"tests": 42
},
"mainParallelAttempt": {
"file": "refactor/.cache/danmuku05-browser-main-initial-matrix/report.json",
"sha256": "4f2d60e48b2ec7b742e7c7709c9fd39fbf0e809413caad1d73c75a20848e6849",
"passed": 131,
"failed": 1,
"workers": 3,
"explanation": "Published-core WebKit pool/rate case never entered beforeVisible for reused, with no corresponding Worker request. The exact main matrix is rerun serially without assertion, timeout or production changes. LOAD-01 remains open: the original failure has no sampled scheduler/media clock proof and a later pass does not establish load stability."
},
"mainSerialAttempt": {
"file": "refactor/.cache/danmuku05-browser-main-serial-before-clear/report.json",
"sha256": "ae1134ea44a7b84a5bd860d84ac43cdeecf1cc10fab0b3954eea65950eb655ef",
"passed": 128,
"failed": 4,
"workers": 1,
"explanation": "Both pool/rate cases passed. Four different WebKit failures: two initial media-readiness timeouts, one context teardown timeout, one page fixture setup timeout with null page. These are retained separately from the earlier missed eligibility, without claiming a proven host root cause. This artifact predates the moved-node clear fix."
},
"movedNodeClear": {
"unitRed": {
"file": "refactor/.cache/danmuku05-renderer-clear-red.log",
"sha256": "239867dff2572164ebfccd852379f62c3dcb6d02e1cac693c149fb8c2758ac37"
},
"unitGreen": {
"file": "refactor/.cache/danmuku05-renderer-clear-final.log",
"sha256": "16cdb9dd05759047a81dad0d697c4d422d0622abfb560fcfa519b025813a013e"
},
"nativeRed": {
"file": "refactor/.cache/danmuku05-browser-clear-red/report.json",
"sha256": "b5a78d381e47cced94cc1a8f8f5e915fc964513d6838097f5123509d45808c0e"
},
"explanation": "Final review reproduced moved owned node lost by clear() before destroy(). Clear now releases owned nodes before retaining old whole-layer clearing. Unit regression also preserves unrelated external nodes. Native replacement regression uses public load() and joins the final three-format matrix."
},
"resourceFixtureCorrection": {
"file": "refactor/.cache/danmuku05-browser-source-clear-final/report.json",
"sha256": "ba15198f2c609084a39ee1ad0627bf7fee5b0f91016d887313d4450bc29ff176",
"passed": 137,
"failed": 1,
"explanation": "New moved-node resource case never observed its initial MOVED row in candidate-core WebKit; no cleanup assertion ran. Both renderer resource cases now explicitly establish eligible state, then require native Worker and visible DOM before public cleanup. Original native timing/rate/track tests remain, with bounded readys getter observation added to rate test."
},
"resourceFixtureValidation": {
"file": "refactor/.cache/danmuku05-browser-resource-fixture/report.json",
"sha256": "2d7448f875c7654d8a1ede2fbdf3e415f895ae2d16d542a9617fd59855825858",
"tests": 18,
"explanation": "Two renderer cleanup cases and native pause/seek/rate case, both cores and all three engines, no retries."
},
"additionalEvidence": [
{
"file": "refactor/.cache/danmuku05-heatmap-first.log",
"sha256": "a800f5a6b24e5ddca48f6e7088ce2287b9d1e9f402fe7e2d667c7d2320119103"
},
{
"file": "refactor/.cache/danmuku05-heatmap-cap-red.log",
"sha256": "e53c44bbb336fb40f1895064e8ced81f1e1dc466f0e4a9b73353b0f0aaaca9c9"
},
{
"file": "refactor/.cache/danmuku05-heatmap-final.log",
"sha256": "5450b739b0b9b7e8cead9543346b3093326abeb0469f093367fb20f1bd211e05"
},
{
"file": "refactor/.cache/danmuku05-renderer-initial.log",
"sha256": "5b97fb151f5ec1ff495c0fb4a7b047de52a4ef0bdbc30f7cc6cc6db114cb818c"
},
{
"file": "refactor/.cache/danmuku05-existing-initial.log",
"sha256": "926daed6b25518f616088095519656e03798e434216656d0986ec7a26eb930be"
},
{
"file": "refactor/.cache/danmuku05-setting-source-check.log",
"sha256": "bda4206a9e6b3194f754bb53d3c2ec5c2fe54c7dc2d63ec1b8db18a3090b9f92"
},
{
"file": "refactor/.cache/danmuku05-setting-final-review.log",
"sha256": "1f33d21bcb1d2ff1a654deafa9ded7e78e8af71a25810f51d84359b4c55b3480"
}
],
"initialManualDemo": {
"file": "refactor/.cache/danmuku05-iab-demo.json",
"sha256": "d5414e26d8de8f9d589faff2f8f80db5de28dd399e693d4281f852228a0858d0",
"url": "http://localhost:8082/?libs=./uncompiled/artplayer-plugin-danmuku/index.js&example=danmuku",
"browser": "Codex in-app browser",
"userAgent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/152.0.0.0 Safari/537.36",
"coreVersion": "5.4.1",
"scenario": "Existing docs/assets/example/danmuku.js with local video.mp4 and danmuku.xml, built by yarn dev artplayer-plugin-danmuku --no-open",
"observations": [
{
"action": "load",
"visibleTime": "00:00 / 01:30",
"events": [
"loadedmetadata",
"loadeddata",
"canplay",
"canplaythrough"
]
},
{
"action": "click play",
"events": [
"play",
"playing"
],
"visibleDanmuku": true
},
{
"action": "read media before pause",
"time": 46.89784,
"paused": false,
"videoWidth": 640
},
{
"action": "click pause",
"visibleTime": "00:46 / 01:30",
"event": "pause"
},
{
"action": "send local test text",
"text": "Danmuku refactor smoke",
"beforeEmitLogged": true,
"time": 46.911033
},
{
"action": "later observation",
"time": 46.911033,
"paused": true,
"videoWidth": 640,
"input": "",
"send": "发送",
"gradient": "heatmap-solids"
}
],
"limits": [
"Manual developer smoke with actual local media; no device or release-package acceptance.",
"Read-only Playwright evaluation could not access navigator. One CDP evaluation had a syntax error, then the corrected read-only command returned the recorded data; these are inspection mistakes, not application errors.",
"Lock countdown timing and multi-instance cleanup are asserted in the committed automated browser suite, not inferred from this manual smoke."
],
"devArtifact": {
"file": "refactor/.cache/danmuku05-iab-demo-artifact-before-clear.js",
"sha256": "56ceea16bde2ef07543dca8b5e03c943358c044cc92de72261a7353943185f02"
},
"scope": "Initial docs smoke preceded the moved-node clear correction."
},
"manualDemo": {
"file": "refactor/.cache/danmuku05-iab-demo-final.json",
"sha256": "82c141e5f113365bd4987ff84494405e623a4531c6546d7f3628d1853cd488f9",
"url": "http://localhost:8082/?libs=./uncompiled/artplayer-plugin-danmuku/index.js&example=danmuku",
"browser": "Codex in-app browser",
"userAgent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/152.0.0.0 Safari/537.36",
"coreVersion": "5.4.1",
"buildLog": "refactor/.cache/danmuku05-dev-clear-final.log",
"workflow": "Reloaded after unit tests ended; clicked play, filled actual example input and clicked send, observed native time and comments, clicked pause.",
"observations": {
"sentText": "Final resource verification",
"beforeEmitMediaTime": 0.267138,
"playingUiTime": "00:47 / 01:30",
"commentsVisible": true,
"pausedTime": 53.404841,
"laterPausedTime": 53.404841,
"paused": true,
"videoWidth": 640,
"input": "",
"sendButton": "发送",
"pageWarningAndErrorLogs": []
},
"inspectionLimitations": [
"An earlier accessibility index became stale after development reload; reacquired current page controls.",
"A read-only video locator evaluation timed out while the actual page kept playing; used supported CDP read-only Runtime.evaluate for final native media readings.",
"Real docs demo smoke is not installed npm package or physical-device acceptance. No external publishing or sending service was involved."
],
"devArtifact": {
"file": "docs/uncompiled/artplayer-plugin-danmuku/index.js",
"sha256": "6a561bee80534cfe7bb532e165a68027aeee17b2fba044ba8b8a09e3ad2e3f0f"
}
},
"dependency": {
"name": "linkedom",
"version": "0.18.13",
"workspace": "root",
"category": "devDependencies",
"purpose": "Actual HTML template parsing, DOM selectors and events for controlled Setting/renderer tests; not shipped in player packages.",
"source": "https://github.com/WebReflection/linkedom",
"limits": "Not a complete browser or layout engine. Controlled rectangles/timers and real published core utils are explicit in helper."
},
"inputs": [
{
"path": "docs/assets/example/danmuku.js",
"algorithm": "sha256-lf",
"sha256": "3f91461e2466f13ed4e72e6bd69986461192d8c6a9ca866fa347599f6958e021"
},
{
"path": "package.json",
"algorithm": "sha256-lf",
"sha256": "cd3e4cdd96c871bac021883509a4798e8cf0e5cd84cce1a7023a7e6891832ee7"
},
{
"path": "packages/artplayer-plugin-danmuku/ARCHITECTURE.md",
"algorithm": "sha256-lf",
"sha256": "6365b0e0303d8b9b614807660d1e8a86445efa826ffddfa0fce7474eca89bbb9"
},
{
"path": "packages/artplayer-plugin-danmuku/README.md",
"algorithm": "sha256-lf",
"sha256": "b86a8837ec2d051f0c0526dec3ce38f60151eeb9f952dc004c4de052c3b5759e"
},
{
"path": "packages/artplayer-plugin-danmuku/dist/artplayer-plugin-danmuku.js",
"algorithm": "sha256-lf",
"sha256": "f60047d3ba6a47b7e4e65813e5c26bf7bebcc79addfbb36829d5bba0a57cfeba"
},
{
"path": "packages/artplayer-plugin-danmuku/dist/artplayer-plugin-danmuku.legacy.js",
"algorithm": "sha256-lf",
"sha256": "249f576e256457c2e47e945b9eb18f78877b658163b266c1153028d1f46d30b0"
},
{
"path": "packages/artplayer-plugin-danmuku/dist/artplayer-plugin-danmuku.mjs",
"algorithm": "sha256-lf",
"sha256": "964870b2f5f5bb282b5aec5fd5a793243c94ec1cfb36dadeb0fa410ce1345457"
},
{
"path": "packages/artplayer-plugin-danmuku/src/bilibili-parser.js",
"algorithm": "sha256-lf",
"sha256": "46720235c8b9f986ecdda436a16b03a8215e4f3dc0151c16df17dca68f0302bc"
},
{
"path": "packages/artplayer-plugin-danmuku/src/bilibili.js",
"algorithm": "sha256-lf",
"sha256": "39310fb20dfe5f98a492460d7a9f7d3078367ce8f70e383d89f9dc7029d297cc"
},
{
"path": "packages/artplayer-plugin-danmuku/src/config.js",
"algorithm": "sha256-lf",
"sha256": "33b70af031f5a5df0b93bc2dcef74b32ce4674b6a248476dc3a6f65a29deeb1c"
},
{
"path": "packages/artplayer-plugin-danmuku/src/danmuku.js",
"algorithm": "sha256-lf",
"sha256": "108fc0002f7dd8f1ebd1773758bcc0f951aa9eed58482f3f205af47babf259af"
},
{
"path": "packages/artplayer-plugin-danmuku/src/heatmap-geometry.js",
"algorithm": "sha256-lf",
"sha256": "5713ad838160609f24130120e625db327814eb877fcce32e74638daca1d64361"
},
{
"path": "packages/artplayer-plugin-danmuku/src/heatmap-sampling.js",
"algorithm": "sha256-lf",
"sha256": "f78ef3502ea695ff82f2ba7cb4c49e7c517c9d7d86713848700a5a392d7e769a"
},
{
"path": "packages/artplayer-plugin-danmuku/src/heatmap.js",
"algorithm": "sha256-lf",
"sha256": "8be1e5c9d1d291500284b422eb9bf3a9c21918e6022317486fb73ac8f28bffa3"
},
{
"path": "packages/artplayer-plugin-danmuku/src/img/check_off.svg",
"algorithm": "sha256-lf",
"sha256": "8cb8e31da1bf7b5be8f4065920b46e1988755910218fb121dd3d9649c50156cf"
},
{
"path": "packages/artplayer-plugin-danmuku/src/img/check_on.svg",
"algorithm": "sha256-lf",
"sha256": "c5a34f56c56b0f696b4e3740c73e803076b5bfdfdee89714793118fc4c6baa84"
},
{
"path": "packages/artplayer-plugin-danmuku/src/img/config.svg",
"algorithm": "sha256-lf",
"sha256": "bbd7c2952740ac8220f396477eaca3b01f6c249866d880ece38c565cc77c5e36"
},
{
"path": "packages/artplayer-plugin-danmuku/src/img/mode_0_off.svg",
"algorithm": "sha256-lf",
"sha256": "fe9e5e1745e8206a4eda0d0ac30815f301c37acccec2564bbda51c1fa4bd1e1e"
},
{
"path": "packages/artplayer-plugin-danmuku/src/img/mode_0_on.svg",
"algorithm": "sha256-lf",
"sha256": "96720a81f0315caf6c70664de934e49d22e6dd070a9f6ca1fec2a9a96af4d138"
},
{
"path": "packages/artplayer-plugin-danmuku/src/img/mode_1_off.svg",
"algorithm": "sha256-lf",
"sha256": "3ccd22bf3648dc260cd1d0b6a60a9226a853764ae20efb8fe9c940cd856c81b2"
},
{
"path": "packages/artplayer-plugin-danmuku/src/img/mode_1_on.svg",
"algorithm": "sha256-lf",
"sha256": "2238ca27e3c7c4c687d10de13b794d8be70ae1c5ba9225ebad27f251cfe5f12a"
},
{
"path": "packages/artplayer-plugin-danmuku/src/img/mode_2_off.svg",
"algorithm": "sha256-lf",
"sha256": "31423e3d67c00839adc77dd871dc1da55f77c8b83b5a37b445e4b4c3f46c6d6d"
},
{
"path": "packages/artplayer-plugin-danmuku/src/img/mode_2_on.svg",
"algorithm": "sha256-lf",
"sha256": "96b4c9db8d5055c8777fda74cb5e0f32b3e12e62a1e0bacbf75d2088f4505e2f"
},
{
"path": "packages/artplayer-plugin-danmuku/src/img/off.svg",
"algorithm": "sha256-lf",
"sha256": "4e6743ee28002e16117caf47ea3bffb34ca75bcc4118744b4ee720829ae3b563"
},
{
"path": "packages/artplayer-plugin-danmuku/src/img/on.svg",
"algorithm": "sha256-lf",
"sha256": "cc0fb7048bff6dc3f14a17ed549209c67e9bc34368cb1571e0abd8035c7b59b7"
},
{
"path": "packages/artplayer-plugin-danmuku/src/img/style.svg",
"algorithm": "sha256-lf",
"sha256": "9034ea7b9a214a6d4c086c02cf85f42b1c4487cec0906e919fc91e99dfff529a"
},
{
"path": "packages/artplayer-plugin-danmuku/src/index.js",
"algorithm": "sha256-lf",
"sha256": "01b12cc2af1df564157348bb1bc53669bd5f01215138a433e4301c2caa632f16"
},
{
"path": "packages/artplayer-plugin-danmuku/src/input.js",
"algorithm": "sha256-lf",
"sha256": "6740c347018290de2a8d90925148f63ec005d294426ed8d3192e69313171b8fc"
},
{
"path": "packages/artplayer-plugin-danmuku/src/queue.js",
"algorithm": "sha256-lf",
"sha256": "d566e312686fa486daee0c1618766c41cfb074c04bf872b7bf1bb783a7c57595"
},
{
"path": "packages/artplayer-plugin-danmuku/src/renderer.js",
"algorithm": "sha256-lf",
"sha256": "db793c1c2bfef3b1efce777ffaa9d4ded04b58a734ff52c1e95eb15ce5517f61"
},
{
"path": "packages/artplayer-plugin-danmuku/src/scheduler.js",
"algorithm": "sha256-lf",
"sha256": "2a035ec6869b4cbc8464c6e4dde083c2a5b685f4276c2355580902e46cc60e6b"
},
{
"path": "packages/artplayer-plugin-danmuku/src/setting-lifecycle.js",
"algorithm": "sha256-lf",
"sha256": "9f624f5c7922171dc5b81fb68ccd73987ed425204fae64043d06d9d419559a8b"
},
{
"path": "packages/artplayer-plugin-danmuku/src/setting-send.js",
"algorithm": "sha256-lf",
"sha256": "7bd281e87c2ceeffd29b8bb392f9581748ba0c0a873bff3d8b0a717f6aecc327"
},
{
"path": "packages/artplayer-plugin-danmuku/src/setting-slider.js",
"algorithm": "sha256-lf",
"sha256": "c49d7764a4217c524f5cbf48db907a770e8822188e9ab059dd6b6ea2c0fb8264"
},
{
"path": "packages/artplayer-plugin-danmuku/src/setting-style.js",
"algorithm": "sha256-lf",
"sha256": "bffbebd3c88a13808ecb98ba92b736be2691363a3d7e5f7387a6a0a564dd0061"
},
{
"path": "packages/artplayer-plugin-danmuku/src/setting-template.js",
"algorithm": "sha256-lf",
"sha256": "e58b86ca973f72db73ac9fc27263f0f90ade76552c9f04a53bd74bdf4f006940"
},
{
"path": "packages/artplayer-plugin-danmuku/src/setting.js",
"algorithm": "sha256-lf",
"sha256": "3f103097f3a34493b0f027716aa116db82e5b93b413ed546241eb2f9854225d8"
},
{
"path": "packages/artplayer-plugin-danmuku/src/style.less",
"algorithm": "sha256-lf",
"sha256": "7148a1bd32f5d3d743db4a4ae8d39dc0e1406d2bff18df42cbb20e6705d5fed9"
},
{
"path": "packages/artplayer-plugin-danmuku/src/worker-client.js",
"algorithm": "sha256-lf",
"sha256": "aca4c442a5722787b28d6b4b0aaa50521fe71c4c0e63e17636dc5e2268cbd925"
},
{
"path": "packages/artplayer-plugin-danmuku/src/worker.js",
"algorithm": "sha256-lf",
"sha256": "05995a16cd728dd5ca513587a777b4be9012b8cc4b77e3a46fed1826e6769c53"
},
{
"path": "test/browser/danmuku-input.spec.js",
"algorithm": "sha256-lf",
"sha256": "37a96982ea7bf2fb99df5e4d829ce1c3f512145092a440586c2d5ad7d0a2d6f3"
},
{
"path": "test/browser/danmuku-resources.spec.js",
"algorithm": "sha256-lf",
"sha256": "f0d09e962cb422a66bd644c52268aff8f288606ae9c93676fa979539743f9c6b"
},
{
"path": "test/browser/danmuku-scheduler.spec.js",
"algorithm": "sha256-lf",
"sha256": "c3a7507eff60cdcd5160e46dd3dcc957496bfe35192a7249defe7b5f1c04159d"
},
{
"path": "test/browser/fixtures.js",
"algorithm": "sha256-lf",
"sha256": "313414b8958eb5b03a2da8595fa0bbf6bfdc01484373898c6cb7179545df175d"
},
{
"path": "test/browser/server.mjs",
"algorithm": "sha256-lf",
"sha256": "1406fac75eabc83b987e79ec7b5f97a948b27770bfd5f5290d7cb9155196f08f"
},
{
"path": "test/danmuku-heatmap.test.js",
"algorithm": "sha256-lf",
"sha256": "81c1a04a5a5ab032765893bfed96de8c10fa7ef00769cb8345e1f30fa17b4129"
},
{
"path": "test/danmuku-input.test.js",
"algorithm": "sha256-lf",
"sha256": "bccd24096dabd5270ba3624dc071d56a492cf44b3045c78ae261d4510ae6e712"
},
{
"path": "test/danmuku-parser.test.js",
"algorithm": "sha256-lf",
"sha256": "ae2dae43f447c1361662f70e90009c8978e1d96bbb133b7b07baafc9d765d70e"
},
{
"path": "test/danmuku-renderer.test.js",
"algorithm": "sha256-lf",
"sha256": "2f3eaff3b9e9a849af1dbe85f9eef2399d3d055f6bc24267f5a9da2a0bb98f67"
},
{
"path": "test/danmuku-scheduler.test.js",
"algorithm": "sha256-lf",
"sha256": "7c1c3d81c4cc37f1ddcd18f3c35c8825061887ada6e1f395cb4d8efb73f66727"
},
{
"path": "test/danmuku-setting.test.js",
"algorithm": "sha256-lf",
"sha256": "4f339b1806900842e9382ba96da6335a26f0ade5b10de2ac01656c476344bfe2"
},
{
"path": "test/danmuku-worker-client.test.js",
"algorithm": "sha256-lf",
"sha256": "55d7754224afa5567cafd880c28d923b9ff0e0661ecfb4ea1d9c923ddb84ae3b"
},
{
"path": "test/helpers/danmuku-candidate.js",
"algorithm": "sha256-lf",
"sha256": "917e1ca3e8b6ecd9f51055f9a0ce5144870e66a656afd22c3f023b56c8d76ffc"
},
{
"path": "test/helpers/danmuku-setting.js",
"algorithm": "sha256-lf",
"sha256": "9263c67c7499d4a60c3a85aad067503e856e0289bf2e3998d817339207fca26a"
},
{
"path": "yarn.lock",
"algorithm": "sha256",
"sha256": "3816c6f1602ef76f27ccd2491c3e34e2fcb630eb9b1baac726c84cf01eca0d11"
}
],
"limitations": [
"Owned JS responsibilities separated; TS and installed declaration contracts remain task06.",
"Long-run real workload and heap/device acceptance remain task07.",
"Browser recovery errors are explicit fixture faults, not actual CSP or SDK failures.",
"ESM built and copied byte-identically; not counted as a fourth runtime matrix.",
"Initial arbitrary 100000 point cap was rejected during review. Its two tests failed (one generated an oversized assertion diff); final valid >100000 sampling/points pass. Final protection covers invalid/unrepresentable/non-progressing numeric inputs, not arbitrary CPU cost.",
"An early renderer check failed because the old fake Element lacked removeChild; only the candidate helper gained deletion semantics. Frozen helper remains unchanged.",
"Interrupted earlier typecheck log is incomplete and not counted; only typecheck-complete is final.",
"No npm publication, remote CI run or physical Safari claimed."
],
"releaseReady": false
}