# Phase 1.0Q public VideoOut evidence Phase 1.0Q is bounded public-source research following the Phase-1.0P submit postmortem. It performed no PS5 connection, transfer, execution, target build or target-source change. Searches and source acquisition were limited to official GitHub repositories and immutable source archives. No downloaded code was executed. ## PS5 evidence lineage The exact SDK v0.41 tag remains [`d2e2e585740362976a39fdd5ccf390f199a7bc37`](https://github.com/ps5-payload-dev/sdk/tree/d2e2e585740362976a39fdd5ccf390f199a7bc37). Its `libSceVideoOut.c` is a 25,199-byte export-stub file with SHA-256 `da6cff9b3255e9ccb0440790f73e0265696ca47724cf8fe5950b579702940016`. It establishes symbol names, but contains no VideoOut declarations, data layouts, constants or return semantics. The official SDK master inspected at `a0d2bc60bdcc0a5ee9e790fa3b02fe5051a152d0` still has no public VideoOut header. v0.41 was the latest published SDK release during this audit. The PS5 declarations originate in one source lineage: the [`ps5-payload-dev/SDL` PS5 backend](https://github.com/ps5-payload-dev/SDL/tree/0baf4ac49382b537ba449901b5b6d0d189bb1fbb/src/video/ps5). The initial backend commit was [`2682a5e31e8aee888538b0fb7253d8cadf2797a1`](https://github.com/ps5-payload-dev/SDL/commit/2682a5e31e8aee888538b0fb7253d8cadf2797a1). It introduced the four-argument submit declaration, `mode=1`, first `frame_id=0`, `RegisterBuffers2`, `SetBufferAttribute2`, the 32-byte buffer record and the 80-byte attribute record together. The two unknown records were already named with `junk0`; the commit cites no independent ABI source. Commit [`fdfa470a0fa33215c677193982dfe3651ac1321a`](https://github.com/ps5-payload-dev/SDL/commit/fdfa470a0fa33215c677193982dfe3651ac1321a) only moved those declarations into `SDL_ps5video.h`. Commit [`14ac2ec2ab5889af47218a957e3456e613b13d3d`](https://github.com/ps5-payload-dev/SDL/commit/14ac2ec2ab5889af47218a957e3456e613b13d3d) changed `uint` to `uint32_t` and improved resource handling; it did not add a second provenance source. Later history preserves the same submit tuple. The pinned header and source hashes are respectively `e60766e0b43c2a7fceba2ada0c030e7f7b05e63885590092f2f8f5b9da34ed75` and `44124546da132ea6e12b1f06a1808d61690c73460a65c3161e8453e8108684b6`. ## Bounded official-project scan Immutable source archives for the graphics-relevant repositories in the `ps5-payload-dev` organization were downloaded to a separate temporary host directory, hashed, extracted and searched statically. None contains a direct VideoOut declaration or call. PacBrew's SDL2 recipe points back to the same SDL repository and uses a moving Git source with `sha256sums=('SKIP')`; it is not independent ABI evidence. | Repository | Commit | Archive SHA-256 | Direct VideoOut evidence | |---|---|---|---| | libcross2d | `829b167262d3567a048b6e69416f8e3be399c098` | `eb952a041396ba01224a890d14d41662b017488f487ddd4c4018ffddd4a59ae2` | none; SDL consumer | | pemu | `4136088e13e825f33c9d0cc43ff9a8c8f749dcb0` | `9ed14a1ea432638992b614f9946bcbc9770f70b6f18ded5778fd6809a927eaeb` | none; SDL consumer | | FBNeo | `ca4222ca2cd52215a673c565a5eae3589b352ba2` | `824d6e5b6b61555f5ecc598204052dcb4b1cf16d28be29b9594a44866e726ef3` | none | | LakeSnes | `a2db690123649c7ffbc68a663af31efb3a41bf3f` | `253a08957a68461a8535a4727ee1242c21b2dc40c8eb8c99bdb85af799ac3ca6` | none; links SDL2 | | yquake2 | `9e233b6a601c393be4ff1dcb1c003750346b8bbb` | `01ef41608b2be0ace119019901a6ea22f304542972bace714d1177cb7f567978` | none; SDL consumer | | pacbrew-repo | `c2abcfcb60f569128abd0e8e70ad03a67bee5ea7` | `17be50219ce41772cfc50ea9274b0a62a2259162556b6eeecfaed4a691822872` | references the same SDL fork | The separate public [`PS5Dev/PS5SDK`](https://github.com/PS5Dev/PS5SDK/tree/a2e03a2a0231a3a3397fa6cd087a01ca6d04f273) tree at `a2e03a2a0231a3a3397fa6cd087a01ca6d04f273` has no VideoOut source or header. It cannot corroborate the current PS5 declarations. ## PS4 analogue boundary OpenOrbis PS4 source at [`0a1aaf9dd4a92695538bdeb09fb056d06dd11725`](https://github.com/OpenOrbis/OpenOrbis-PS4-Toolchain/tree/0a1aaf9dd4a92695538bdeb09fb056d06dd11725) declares the historical four-argument `sceVideoOutSubmitFlip` and documents flip mode `1` as VSYNC. This is useful lineage evidence, but it is PS4 Orbis evidence. It does not define PS5's `RegisterBuffers2`, `SetBufferAttribute2`, descriptor layouts, ownership rules or firmware-9.60 return behavior. It is classified `PS4_ANALOG_ONLY` and cannot authorize a PS5 parameter change. The six source archives total 28,169,547 bytes. They remain outside the repository in the dedicated temporary research directory because the local command policy rejected cleanup. Nothing from that directory is tracked or used by tests. ## Evidence matrix | Contract | PS5 evidence | Independent PS5 corroboration | Decision | |---|---|---|---| | submit has four arguments | SDL lineage | none | PARTIAL_SINGLE_LINEAGE | | argument positions | SDL lineage | none | PARTIAL_SINGLE_LINEAGE | | mode `1` means VSYNC | SDL use; PS4 analogue | none | UNPROVEN_ON_PS5 | | first frame/index zero is valid | SDL use | none | UNPROVEN_ON_PS5 | | 32-byte `PS5_VideoBuf` layout | SDL `junk0` record | none | UNPROVEN | | 80-byte `PS5_VideoAttr` layout | SDL `junk0` record | none | UNPROVEN | | `0x8000000022000000` semantics | SDL literal | none | UNPROVEN | | `RegisterBuffers2` return semantics | O observed zero | no public definition | PARTIAL_RUNTIME_ONLY | | submit error/return semantics | O observed `-1`, errno `0` | none | UNPROVEN | | flip-master/active-app requirement | SDK export name only | none | UNPROVEN | | status-query signatures/layouts | no PS5 declarations | none | UNPROVEN | ## Decision The bounded public inventory does not supply an independent, acceptable PS5 VideoOut ABI and runtime-state contract. The exact submit failure remains source-bound, but its root cause is unresolved. Changing the index, mode, frame ID, buffer attributes or ownership state would still be an experiment based on guessed semantics. Calling `sceVideoOutSetFlipMaster` or a status query would additionally guess a signature and output layout. Classification: `PUBLIC_VIDEOOUT_EVIDENCE_INSUFFICIENT_PARAMETER_CHANGE_BLOCKED`. No Phase-1.0R target artifact or device run may begin from this evidence. A safe continuation must either obtain a new acceptable public PS5 contract or audit, offline, whether the known SDL users run under a different launch/app context than the raw elfldr payload. Host/software-only integration can continue independently.