Difference between revisions of "SceVideoExport"

From Vita Development Wiki
Jump to navigation Jump to search
Line 6: Line 6:
 
! Version !! Name !! World !! Privilege
 
! Version !! Name !! World !! Privilege
 
|-
 
|-
| 3.60 || SceVideoExport || Non-secure || Kernel
+
| 3.60 || SceVideoExport || Non-secure || User
 
|}
 
|}
  
Line 35: Line 35:
  
 
<source lang="C">
 
<source lang="C">
typedef struct SceVideoExportInputParam {
+
typedef struct SceVideoExportInputParam { // size is 0x408 on FW 3.60
    char path[1024];
+
  char path[1024];
    char reserved[64];
+
  char reserved[64];
 
} SceVideoExportInputParam;
 
} SceVideoExportInputParam;
  
typedef struct SceVideoExportOutputParam {
+
typedef struct SceVideoExportOutputParam { // size is 0x440 on FW 3.60
    char path[1024];
+
  char path[1024];
    char reserved[8];
+
  char reserved[8];
 
} SceVideoExportOutputParam;
 
} SceVideoExportOutputParam;
  
Line 59: Line 59:
  
 
<source lang="C">
 
<source lang="C">
typedef struct SceVideoExportEmprInputParam { // Size is 0x458 on FW 3.60
+
typedef struct SceVideoExportEmprInputParam { // size is 0x458 on FW 3.60
 
   char path[0x400];
 
   char path[0x400];
 
   char unk_400[0x40];
 
   char unk_400[0x40];
Line 70: Line 70:
 
} SceVideoExportEmprInputParam;
 
} SceVideoExportEmprInputParam;
  
typedef struct SceVideoExportEmprOutputParam { // Size is 0x448 on FW 3.60
+
typedef struct SceVideoExportEmprOutputParam { // size is 0x448 on FW 3.60
 
   char path[0x400];
 
   char path[0x400];
 
   SceUInt32 unk_400;
 
   SceUInt32 unk_400;
 
   SceUInt32 unk_404;
 
   SceUInt32 unk_404;
   char reserved[0x40];
+
   char reserved[64];
 
} SceVideoExportEmprOutputParam;
 
} SceVideoExportEmprOutputParam;
  
Line 89: Line 89:
 
| 3.60 || 0x3488EA69
 
| 3.60 || 0x3488EA69
 
|}
 
|}
 +
 +
Opens, create and mount videoexport.dat.
 +
 +
<source lang="C">
 +
typedef struct SceVideoExportData_3488EA69Param { // size is 0x24 on FW 3.60
 +
  SceUInt8 unk_0; // ex: 1
 +
  SceUInt8 unk_1; // ex: 2
 +
  SceUInt16 unk_2; // ex: 0
 +
  SceUInt32 unk_4;
 +
  SceUInt32 unk_8;
 +
  SceUInt32 unk_C;
 +
  SceUInt32 unk_10;
 +
  SceUInt32 unk_14;
 +
  SceUInt32 unk_18;
 +
  SceUInt32 unk_1C;
 +
  SceSize some_size; // must be >= 0x10000
 +
} SceVideoExportData_3488EA69Param;
 +
 +
int SceVideoExportData_3488EA69(const SceVideoExportData_3488EA69Param *pParam);
 +
</source>
  
 
=== SceVideoExportData_34953CC0 ===
 
=== SceVideoExportData_34953CC0 ===
Line 97: Line 117:
 
| 3.60 || 0x34953CC0
 
| 3.60 || 0x34953CC0
 
|}
 
|}
 +
 +
Calls sceVideoExportFromFile with paths containing videoexport.dat and rec0:.
 +
 +
<source lang="C">
 +
typedef struct SceVideoExportData_34953CC0Param { // size is 0x40 on FW 3.60
 +
  char reserved[64];
 +
} SceVideoExportData_34953CC0Param;
 +
 +
// pParam must be a zeroed buffer
 +
int SceVideoExportData_34953CC0(SceVideoExportData_34953CC0Param *pParam);
 +
</source>
  
 
=== SceVideoExportData_8DDE620F ===
 
=== SceVideoExportData_8DDE620F ===
Line 105: Line 136:
 
| 3.60 || 0x8DDE620F
 
| 3.60 || 0x8DDE620F
 
|}
 
|}
 +
 +
Writes to videoexport.dat.
 +
 +
<source lang="C">int SceVideoExportData_8DDE620F(void *buf, SceSize size);</source>

Revision as of 10:47, 11 August 2020

Module

Known NIDs

Version Name World Privilege
3.60 SceVideoExport Non-secure User

Libraries

Known NIDs

Version Name World Visibility NID
3.60 SceVideoExport Non-secure User 0xF0812A7C
3.60 SceVideoExportEmpr Non-secure User 0x3BA9B5E8
3.60 SceVideoExportData Non-secure User 0xFE94CA1D

SceVideoExport

sceVideoExportFromFile

Version NID
3.60 0x4F60A3C8
typedef struct SceVideoExportInputParam { // size is 0x408 on FW 3.60
   char path[1024];
   char reserved[64];
} SceVideoExportInputParam;

typedef struct SceVideoExportOutputParam { // size is 0x440 on FW 3.60
   char path[1024];
   char reserved[8];
} SceVideoExportOutputParam;

int sceVideoExportFromFile(const SceVideoExportInputParam *pInParam, int unk_one, void *workingMemory, void *cancelCb, void (*progress)(void*, int), void *user, int unk_zero, SceVideoExportOutputParam *pOutParam);

SceVideoExportEmpr

SceVideoExportEmpr_8493BF31

Version NID
3.60 0x8493BF31
typedef struct SceVideoExportEmprInputParam { // size is 0x458 on FW 3.60
   char path[0x400];
   char unk_400[0x40];
   SceUInt32 unk_440;
   SceUInt32 unk_444;
   SceUInt32 unk_448;
   SceUInt32 unk_44C;
   SceUInt32 unk_450;
   SceSize some_size; // must be >= 0x10000
} SceVideoExportEmprInputParam;

typedef struct SceVideoExportEmprOutputParam { // size is 0x448 on FW 3.60
   char path[0x400];
   SceUInt32 unk_400;
   SceUInt32 unk_404;
   char reserved[64];
} SceVideoExportEmprOutputParam;

int SceVideoExportEmpr_8493BF31(const SceVideoExportEmprInputParam *pInParam, SceVideoExportEmprOutputParam *pOutParam);

SceVideoExportData

SceVideoExportData_3488EA69

Version NID
3.60 0x3488EA69

Opens, create and mount videoexport.dat.

typedef struct SceVideoExportData_3488EA69Param { // size is 0x24 on FW 3.60
   SceUInt8 unk_0; // ex: 1
   SceUInt8 unk_1; // ex: 2
   SceUInt16 unk_2; // ex: 0
   SceUInt32 unk_4;
   SceUInt32 unk_8;
   SceUInt32 unk_C;
   SceUInt32 unk_10;
   SceUInt32 unk_14;
   SceUInt32 unk_18;
   SceUInt32 unk_1C;
   SceSize some_size; // must be >= 0x10000
} SceVideoExportData_3488EA69Param;

int SceVideoExportData_3488EA69(const SceVideoExportData_3488EA69Param *pParam);

SceVideoExportData_34953CC0

Version NID
3.60 0x34953CC0

Calls sceVideoExportFromFile with paths containing videoexport.dat and rec0:.

typedef struct SceVideoExportData_34953CC0Param { // size is 0x40 on FW 3.60
   char reserved[64];
} SceVideoExportData_34953CC0Param;

// pParam must be a zeroed buffer
int SceVideoExportData_34953CC0(SceVideoExportData_34953CC0Param *pParam);

SceVideoExportData_8DDE620F

Version NID
3.60 0x8DDE620F

Writes to videoexport.dat.

int SceVideoExportData_8DDE620F(void *buf, SceSize size);