Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- int __fastcall sub_C598(int a1, int a2, int a3, signed int framerate, int a5, int a6, signed int a7)
- {
- signed int frameRT; // r7@1
- int v8; // r6@1
- int v9; // r5@1
- int v10; // r4@1
- int v11; // r5@1
- int v12; // r1@2
- signed int v13; // r3@2
- int v14; // r2@2
- signed int v15; // r0@2
- unsigned int v16; // r1@3
- int v17; // r2@3
- int v18; // r0@6
- int v19; // r0@10
- int v20; // r0@14
- signed int v21; // r2@16
- int v22; // r0@17
- signed int v23; // r1@17
- signed int v24; // r1@24
- signed int v25; // r1@25
- signed int v26; // r2@34
- signed int v27; // r1@34
- int v28; // r0@34
- unsigned int v29; // r0@42
- int v30; // r12@42
- int v31; // r1@45
- signed int v32; // r3@54
- int v33; // r2@54
- int v34; // r1@55
- int v35; // r3@60
- int v36; // r2@65
- int v37; // r1@66
- int v38; // r5@71
- int v39; // r3@71
- char v40; // r1@72
- int v41; // r1@75
- int v42; // r7@79
- signed int v43; // r1@85
- frameRT = framerate;
- v8 = a3;
- v9 = a2;
- v10 = a1;
- _android_log_print(2, "CdrMediaRecorder", "<line[%04d] %s()> mCamId:%d", 323);
- v11 = android::HerbMediaRecorder::setCamera(*(_DWORD *)(v10 + 12), v9);
- if ( v11 )
- {
- v12 = (int)"CdrMediaRecorder";
- v13 = 326;
- v14 = (int)"<line[%04d] %s()> setCamera Failed(%d)";
- v15 = 2;
- LABEL_12:
- _android_log_print(v15, v12, v14, v13);
- return v11;
- }
- v16 = *(_DWORD *)(v10 + 40);
- v17 = 1 - v16;
- if ( v16 > 1 )
- v17 = 0;
- if ( v16 == 2 )
- v18 = v17 | 1;
- else
- v18 = v17;
- if ( !v18 || (v11 = android::HerbMediaRecorder::setAudioSource(*(_DWORD *)(v10 + 12), 1)) == 0 )
- {
- v19 = android::HerbMediaRecorder::setVideoSource(*(_DWORD *)(v10 + 12), 1);
- v11 = v19;
- if ( v19 )
- {
- v15 = 6;
- v12 = (int)"CdrMediaRecorder";
- v14 = (int)"<line[%04d] %s()> setVideoSource Failed(%d)";
- v13 = 337;
- goto LABEL_12;
- }
- if ( *(_DWORD *)(v10 + 40) <= 1 )
- v20 = android::HerbMediaRecorder::addOutputFormatAndOutputSink(*(_DWORD *)(v10 + 12), 2, *(_DWORD *)a5, a6);
- else
- v20 = android::HerbMediaRecorder::addOutputFormatAndOutputSink(*(_DWORD *)(v10 + 12), 257, -1, v19);
- v21 = *(_DWORD *)(v10 + 40);
- *(_DWORD *)(v10 + 16) = v20;
- if ( v21 > 1 )
- {
- v23 = 25;
- v22 = *(_DWORD *)(v10 + 12);
- if ( *(_DWORD *)v8 != 3200 )
- v23 = 30;
- }
- else
- {
- v22 = *(_DWORD *)(v10 + 12);
- v23 = frameRT;
- }
- v11 = android::HerbMediaRecorder::setVideoFrameRate(v22, v23);
- if ( v11 )
- {
- v15 = 6;
- v12 = (int)"CdrMediaRecorder";
- v14 = (int)"<line[%04d] %s()> setVideoFrameRate Failed(%d)";
- v13 = 393;
- goto LABEL_12;
- }
- v11 = android::HerbMediaRecorder::setVideoEncodingIFramesNumberInterval(*(_DWORD *)(v10 + 12), frameRT);
- if ( v11 )
- {
- _android_log_print(
- 6,
- "CdrMediaRecorder",
- "<line[%04d] %s()> setVideoEncodingIFramesNumberInterval(%d) Failed(%d)",
- 399);
- return v11;
- }
- _android_log_print(2, "CdrMediaRecorder", "<line[%04d] %s()> >>>>>>>>>>>>>>>set bitrate : %dM; \n", 405);
- v24 = *(_DWORD *)(v10 + 40);
- if ( v24 == 1 )
- {
- v25 = 8388608;
- }
- else if ( v24 > 1 )
- {
- if ( *(_DWORD *)v8 == 3200 )
- v25 = 1048576;
- else
- v25 = 2097152;
- }
- else
- {
- v25 = a7;
- }
- v11 = android::HerbMediaRecorder::setVideoEncodingBitRate(*(_DWORD *)(v10 + 12), v25);
- if ( v11 )
- {
- v15 = 6;
- v12 = (int)"CdrMediaRecorder";
- v14 = (int)"<line[%04d] %s()> setVideoEncodingBitRate Failed(%d)";
- v13 = 422;
- goto LABEL_12;
- }
- if ( *(_DWORD *)(v10 + 40) <= 1 )
- {
- v28 = *(_DWORD *)(v10 + 12);
- v27 = *(_DWORD *)v8;
- v26 = *(_DWORD *)(v8 + 4);
- }
- else
- {
- v26 = 240;
- v27 = 320;
- v28 = *(_DWORD *)(v10 + 12);
- if ( *(_DWORD *)v8 != 3200 )
- {
- v27 = 640;
- v26 = 360;
- }
- }
- v11 = android::HerbMediaRecorder::setVideoSize(v28, v27, v26);
- if ( v11 )
- {
- v15 = 6;
- v12 = (int)"CdrMediaRecorder";
- v14 = (int)"<line[%04d] %s()> setVideoSize Failed(%d)";
- v13 = 439;
- goto LABEL_12;
- }
- v11 = android::HerbMediaRecorder::setVideoEncoder(*(_DWORD *)(v10 + 12), 2);
- if ( v11 )
- {
- v15 = 6;
- v12 = (int)"CdrMediaRecorder";
- v14 = (int)"<line[%04d] %s()> setVideoEncoder Failed(%d)";
- v13 = 444;
- goto LABEL_12;
- }
- v29 = *(_DWORD *)(v10 + 40);
- v30 = 1 - v29;
- if ( v29 > 1 )
- v30 = 0;
- if ( v29 == 2 )
- v31 = v30 | 1;
- else
- v31 = v30;
- if ( !v31 || (v11 = android::HerbMediaRecorder::setAudioEncoder(*(_DWORD *)(v10 + 12), 3)) == 0 )
- {
- if ( *(_DWORD *)(v10 + 40) > 1 )
- android::HerbMediaRecorder::setSourceChannel(*(_DWORD *)(v10 + 12), 1);
- sub_C220(v10);
- if ( *(_DWORD *)(v10 + 40) <= 1 )
- {
- _android_log_print(2, "CdrMediaRecorder", "<line[%04d] %s()> cache time:%d", 460);
- v11 = android::HerbMediaRecorder::setImpactFileDuration(*(_DWORD *)(v10 + 12), *(_DWORD *)(v10 + 84), 10000);
- if ( v11 )
- {
- v12 = (int)"CdrMediaRecorder";
- v13 = 463;
- v14 = (int)"<line[%04d] %s()> setImpactFileDuration Failed(%d)";
- v15 = 6;
- goto LABEL_12;
- }
- }
- v32 = *(_DWORD *)v8;
- v33 = frameRT - 60 + ((unsigned int)(frameRT - 60) <= 0) - (frameRT - 60);
- if ( *(_DWORD *)v8 == 1920 )
- v34 = v33 & 1;
- else
- v34 = 0;
- if ( v34
- || v32 == 2688
- || (v32 == 3840 ? (v35 = v33 | 1) : (v35 = frameRT - 60 + ((unsigned int)(frameRT - 60) <= 0) - (frameRT - 60)),
- v35) )
- {
- if ( *(_DWORD *)(v10 + 40) <= 1 )
- {
- _android_log_print(2, "CdrMediaRecorder", "<line[%04d] %s()> [debug_jaosn]:disable the I frame filter\n", 472);
- android::HerbMediaRecorder::enableNullSkip(*(_DWORD *)(v10 + 12), 0);
- android::HerbMediaRecorder::enableIframeFilter(*(_DWORD *)(v10 + 12), 0);
- }
- }
- v36 = *(_DWORD *)v8 - 3840;
- if ( *(_DWORD *)v8 == 3264 )
- v37 = (unsigned int)v36 <= 0 | 1;
- else
- v37 = (unsigned int)v36 <= 0;
- if ( v37 && *(_DWORD *)(v10 + 40) <= 1 )
- {
- _android_log_print(2, "CdrMediaRecorder", "<line[%04d] %s()> [debug_jaosn]:this debug for 4k record\n", 483);
- android::HerbMediaRecorder::enableNullSkip(*(_DWORD *)(v10 + 12), 1);
- android::HerbMediaRecorder::enableFastEncode(*(_DWORD *)(v10 + 12), 1);
- android::HerbMediaRecorder::enableIframeFilter(*(_DWORD *)(v10 + 12), 0);
- }
- v38 = *(_DWORD *)v8 - 1280;
- v39 = (unsigned int)v38 <= 0;
- if ( *(_DWORD *)v8 == 1920 )
- v40 = v39 | 1;
- else
- v40 = (unsigned int)v38 <= 0;
- if ( frameRT == 30 )
- v41 = v40 & 1;
- else
- v41 = 0;
- if ( v41
- || (frameRT == 120 ? (v42 = 1) : (v42 = frameRT - 90 + ((unsigned int)(frameRT - 90) <= 0) - (frameRT - 90)),
- v39 & v42) )
- android::HerbMediaRecorder::enableNullSkip(*(_DWORD *)(v10 + 12), 0);
- v11 = android::HerbMediaRecorder::prepare(*(_DWORD *)(v10 + 12));
- if ( v11 )
- {
- v15 = 6;
- v12 = (int)"CdrMediaRecorder";
- v14 = (int)"<line[%04d] %s()> prepare Failed(%d)";
- v13 = 498;
- goto LABEL_12;
- }
- v43 = *(_DWORD *)(v10 + 40);
- *(_DWORD *)(v10 + 56) = 4;
- if ( v43 > 1 )
- sub_C488(v10);
- }
- }
- return v11;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement