Difference between revisions of "GRC services"
Line 70: | Line 70: | ||
| 22 || [[#RequestOffscreenRecordingFinishReady]] | | 22 || [[#RequestOffscreenRecordingFinishReady]] | ||
|- | |- | ||
− | | 23 || CompleteOffscreenRecordingFinish | + | | 23 || [[#CompleteOffscreenRecordingFinish]] |
|- | |- | ||
− | | 24 || StartOffscreenRecordingEx | + | | 24 || [[#StartOffscreenRecordingEx]] |
|- | |- | ||
− | | 25 || CompleteOffscreenRecordingFinishEx0 | + | | 25 || [[#CompleteOffscreenRecordingFinishEx0]] |
|- | |- | ||
| 30 || [[#GetOffscreenLayerError]] | | 30 || [[#GetOffscreenLayerError]] | ||
Line 102: | Line 102: | ||
== RequestOffscreenRecordingFinishReady == | == RequestOffscreenRecordingFinishReady == | ||
Takes an input u64, no output. | Takes an input u64, no output. | ||
+ | |||
+ | == StartOffscreenRecordingEx == | ||
+ | Takes an input u64 and an [[#OffscreenRecordingParameter]], no output. | ||
+ | |||
+ | == CompleteOffscreenRecordingFinish == | ||
+ | Takes an input u64 and a type-0x5 input buffer, no output. | ||
+ | |||
+ | == CompleteOffscreenRecordingFinishEx0 == | ||
+ | Takes an input u64 and 2 type-0x5 input buffers, no output. | ||
== GetOffscreenLayerError == | == GetOffscreenLayerError == | ||
Takes an input u64, no output. | Takes an input u64, no output. | ||
+ | |||
+ | = OffscreenRecordingParameter = | ||
+ | This is a 0x80-byte struct. | ||
[[Category:Services]] | [[Category:Services]] |
Revision as of 21:29, 20 October 2018
GRC (Game Recording) uses libstagefright and the NvMMLite TVMR library for writing recorded video to MP4s.
Error reporting is done using the new /dev/nverpt-ctrl ioctls.
grc:c
This is "nn::grcsrv::IGrcService"
Cmd | Name |
---|---|
1 | OpenContinuousRecorder |
2 | OpenGameMovieTrimmer |
IContinuousRecorder
This is "nn::grcsrv::IContinuousRecorder".
Cmd | Name |
---|---|
1 | |
2 | |
10 | |
11 | |
12 | |
13 |
IGameMovieTrimmer
This is "nn::grcsrv::IGameMovieTrimmer".
Cmd | Name |
---|---|
1 | BeginTrim |
2 | EndTrim |
10 | GetNotTrimmingEvent |
20 | SetThumbnailRgba |
IMovieMaker
This is "nn::grcsrv::IMovieMaker".
Cmd | Name |
---|---|
2 | #CreateVideoProxy |
10 | #OpenOffscreenLayer |
11 | #CloseOffscreenLayer |
20 | #StartOffscreenRecording |
21 | #AbortOffscreenRecording |
22 | #RequestOffscreenRecordingFinishReady |
23 | #CompleteOffscreenRecordingFinish |
24 | #StartOffscreenRecordingEx |
25 | #CompleteOffscreenRecordingFinishEx0 |
30 | #GetOffscreenLayerError |
41 | EncodeOffscreenLayerAudioSample |
50 | GetOffscreenLayerRecordingFinishReadyEvent |
52 | GetOffscreenLayerAudioEncodeReadyEvent |
CreateVideoProxy
No input, returns an IHOSBinderDriver.
OpenOffscreenLayer
Takes an input u64, returns an output u32.
CloseOffscreenLayer
Takes an input u64, no output.
StartOffscreenRecording
Takes an input u64, no output.
AbortOffscreenRecording
Takes an input u64, no output.
RequestOffscreenRecordingFinishReady
Takes an input u64, no output.
StartOffscreenRecordingEx
Takes an input u64 and an #OffscreenRecordingParameter, no output.
CompleteOffscreenRecordingFinish
Takes an input u64 and a type-0x5 input buffer, no output.
CompleteOffscreenRecordingFinishEx0
Takes an input u64 and 2 type-0x5 input buffers, no output.
GetOffscreenLayerError
Takes an input u64, no output.
OffscreenRecordingParameter
This is a 0x80-byte struct.