NVRPlaybackOnlineActivity.java 源代码
package main.NVR.Video;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.DialogInterface;
import android.content.Intent;
import android.content.IntentFilter;
import android.graphics.Bitmap;
import android.graphics.Point;
import android.graphics.drawable.ColorDrawable;
import android.net.ConnectivityManager;
import android.net.NetworkInfo;
import android.net.Uri;
import android.os.Build;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
import android.provider.MediaStore;
import android.text.TextUtils;
import android.util.DisplayMetrics;
import android.view.MotionEvent;
import android.view.View;
import android.widget.ImageView;
import android.widget.LinearLayout;
import android.widget.PopupWindow;
import android.widget.ProgressBar;
import android.widget.RelativeLayout;
import android.widget.SeekBar;
import android.widget.TextView;
import android.widget.Toast;
import base.HiActivity;
import bean.MyCamera;
import com.hichip.NVR.HiNVRDev;
import com.hichip.NVR.callback.INVRPlayStateCallback;
import com.hichip.NVR.callback.PlayLocalNVRFileCallback;
import com.hichip.NVR.content.HiChipNVRDefines;
import com.hichip.base.HiLog;
import com.hichip.base.HiThread;
import com.hichip.callback.ICameraIOSessionCallback;
import com.hichip.campro.R;
import com.hichip.control.HiCamera;
import com.hichip.tools.Packet;
import com.meizu.cloud.pushsdk.constants.PushConstants;
import com.xiaomi.mipush.sdk.Constants;
import common.Constant;
import common.HiDataValue;
import common.MyPlaybackGLMonitor;
import java.io.File;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Iterator;
import main.MainActivity;
import service.DeleteNVRCacheFileService;
import utils.FileSizeUtils;
import utils.HiLogcatUtil;
import utils.HiTools;
import utils.MyToast;
import utils.OrientationWatchDog;
import utils.SharePreUtils;
import utils.SystemUtils;
public class NVRPlaybackOnlineActivity extends HiActivity implements ICameraIOSessionCallback, PlayLocalNVRFileCallback, INVRPlayStateCallback, View.OnTouchListener, View.OnClickListener, OrientationWatchDog.OnOrientationListener {
private static final int HANDLE_MESSAGE_FastFILE_LOADENDINFO = 2051;
private static final int HANDLE_MESSAGE_PLAYLOCAL_STATE_ING = 36869;
private static final int HANDLE_MESSAGE_PLAYLOCAL_STATE_STOP = 36870;
private static final int HANDLE_MESSAGE_PLAYONLINE_DISLOADVIEW = 28674;
private static final int HANDLE_MESSAGE_PLAYONLINE_LODING = 36897;
private static final int HANDLE_MESSAGE_PLAYONLINE_OPENFAIL = 36896;
private static final int HANDLE_MESSAGE_PLAYONLINE_OPENFILE = 36889;
private static final int HANDLE_MESSAGE_PLAYONLINE_PLAYING = 36898;
private static final int HANDLE_MESSAGE_PLAYONLINE_SHOWLOADVIEW = 28673;
private static final int HANDLE_MESSAGE_PROGRESSBAR_RUN = 36871;
private static final int HANDLE_MESSAGE_SEEKBAR_END = 36868;
private static final int HANDLE_MESSAGE_SEEKBAR_RUN = 36867;
private static final int HANDLE_MESSAGE_SEEKBAR_START = 36866;
public static final short HI_P2P_PB_GETPOS = 5;
public static final short HI_P2P_PB_PAUSE = 3;
public static final short HI_P2P_PB_PLAY = 1;
public static final short HI_P2P_PB_SETPOS = 4;
public static final short HI_P2P_PB_STOP = 2;
private static final int PERMISSION_REQUEST_CODE_STORAGE = 10028;
private static final SimpleDateFormat sdf = new SimpleDateFormat("mm:ss");
private int PictureRealHeight;
private int PictureRealWidth;
private float action_down_x;
private float action_down_y;
public float bottom;
private int chn;
private String download_path;
private long endTimeLong;
private String fileName;
private HiChipNVRDefines.PLATFORM_S_PLAYBACKFILE file_infos;
public float height;
private boolean hideUIMenu;
private ImageView img_shade;
private boolean isHideNavigation;
private ImageView ivAdaption;
private ImageView ivSnapshot;
private long lastClickTime;
float lastX;
float lastY;
public float left;
private MyCamera mCamera;
private String mDownLoadPath;
private LinearLayout mLlCurrPro;
private MyPlaybackGLMonitor mMonitor;
private OrientationWatchDog mOrientationWatchDog;
private PopupWindow mPopupWindow;
private TextView mTvCurrPro;
private TextView mTvEndTime;
private TextView mTvPrecent;
private TextView mTvStartTime;
private LinearLayout mllPlay;
private short model;
int moveX;
int moveY;
float move_x;
float move_y;
private String mstrdate;
private ConnectionChangeReceiver myReceiver;
long oldTime;
private String path;
private ImageView play_btn_exit;
private ImageView play_btn_playback_online;
private long playback_time;
private RelativeLayout playback_view_screen;
private int progressTime;
private ProgressBar prs_loading;
private SeekBar prs_playing;
public LinearLayout root_lock_screen;
private long startTimeLong;
private TextView tvAdaption;
private TextView tvFill;
private int video_height;
private int video_width;
public float width;
int xlenOld;
int ylenOld;
private ProgressThread pthread = null;
private boolean mVisible = true;
private boolean visible = true;
private boolean isPlaying = false;
private boolean mIsDrag = false;
private boolean mIsEnd = false;
private int mSpeed = 0;
private int mPictureSize = 0;
private int StreamType = 0;
private boolean isDownloaded = false;
private boolean isLeft = true;
private boolean isFirstRevolveLand = false;
private boolean isReadyPlay = false;
private boolean isDoPause = true;
private Handler mhandlerPF = new Handler() {
@Override
public void handleMessage(Message message) {
int i = message.arg2;
int i2 = message.arg1;
String string = message.getData().getString("data");
int i3 = message.what;
if (i3 != -1) {
if (i3 != NVRPlaybackOnlineActivity.HANDLE_MESSAGE_PLAYONLINE_OPENFAIL) {
switch (i3) {
case 24:
HiLogcatUtil.e("PlayLocalNVRFileCallback.DOWNLOAD_STATE_END");
return;
case 25:
case 26:
break;
case 27:
NVRPlaybackOnlineActivity.this.isDownloaded = true;
if (NVRPlaybackOnlineActivity.this.mCamera != null && NVRPlaybackOnlineActivity.this.mCamera.mhiNvrdev != null) {
NVRPlaybackOnlineActivity.this.mCamera.mhiNvrdev.SetHiCameraLoadFin();
}
HiLogcatUtil.e("PlayLocalNVRFileCallback.DOWNLOAD_STATE_FINISH" + string);
if (new File(string).exists()) {
String replace = string.replace(".4rec", ".h264").replace(".5rec", ".h265");
HiLogcatUtil.e(string + ":" + replace + Constants.COLON_SEPARATOR);
NVRPlaybackOnlineActivity.this.renameFile(string, replace);
return;
}
return;
default:
switch (i3) {
case NVRPlaybackOnlineActivity.HANDLE_MESSAGE_SEEKBAR_START:
NVRPlaybackOnlineActivity.this.isReadyPlay = true;
NVRPlaybackOnlineActivity.this.prs_playing.setEnabled(true);
NVRPlaybackOnlineActivity.this.play_btn_playback_online.setClickable(true);
NVRPlaybackOnlineActivity.this.isPlaying = true;
NVRPlaybackOnlineActivity.this.model = (short) 1;
NVRPlaybackOnlineActivity.this.mIsEnd = false;
HiLogcatUtil.e("play_btn_playback_onlinefasfasd");
NVRPlaybackOnlineActivity.this.play_btn_playback_online.setSelected(false);
NVRPlaybackOnlineActivity.this.resetMonitorSize();
if (NVRPlaybackOnlineActivity.this.video_width != message.arg1 || NVRPlaybackOnlineActivity.this.video_height != message.arg2) {
NVRPlaybackOnlineActivity.this.video_width = message.arg1;
NVRPlaybackOnlineActivity.this.video_height = message.arg2;
}
NVRPlaybackOnlineActivity.this.isReadyPlay = true;
NVRPlaybackOnlineActivity.this.prs_playing.setEnabled(true);
NVRPlaybackOnlineActivity.this.play_btn_playback_online.setClickable(true);
NVRPlaybackOnlineActivity.this.isPlaying = true;
NVRPlaybackOnlineActivity.this.model = (short) 1;
NVRPlaybackOnlineActivity.this.mIsEnd = false;
NVRPlaybackOnlineActivity.this.video_width = message.arg1;
NVRPlaybackOnlineActivity.this.video_height = message.arg2;
NVRPlaybackOnlineActivity.this.play_btn_playback_online.setSelected(false);
NVRPlaybackOnlineActivity.this.resetMonitorSize();
NVRPlaybackOnlineActivity nVRPlaybackOnlineActivity = NVRPlaybackOnlineActivity.this;
nVRPlaybackOnlineActivity.handLandScape(nVRPlaybackOnlineActivity.mPictureSize);
return;
case NVRPlaybackOnlineActivity.HANDLE_MESSAGE_SEEKBAR_RUN:
int progress = NVRPlaybackOnlineActivity.this.prs_loading.getProgress();
if (progress >= 100) {
NVRPlaybackOnlineActivity.this.prs_loading.setProgress(10);
} else {
NVRPlaybackOnlineActivity.this.prs_loading.setProgress(progress + 8);
}
NVRPlaybackOnlineActivity.this.model = (short) 1;
return;
case NVRPlaybackOnlineActivity.HANDLE_MESSAGE_SEEKBAR_END:
NVRPlaybackOnlineActivity.this.isPlaying = false;
NVRPlaybackOnlineActivity.this.mIsEnd = true;
NVRPlaybackOnlineActivity.this.model = (short) 2;
NVRPlaybackOnlineActivity.this.play_btn_playback_online.setSelected(true);
NVRPlaybackOnlineActivity.this.prs_playing.setProgress(NVRPlaybackOnlineActivity.this.progressTime);
byte[] longToByteArray4_Little = Packet.longToByteArray4_Little(NVRPlaybackOnlineActivity.this.file_infos.u32StartTime * 1000);
byte[] longToByteArray4_Little2 = Packet.longToByteArray4_Little(NVRPlaybackOnlineActivity.this.file_infos.u32StartTime);
byte[] longToByteArray4_Little3 = Packet.longToByteArray4_Little(NVRPlaybackOnlineActivity.this.file_infos.u32StopTime);
byte[] longToByteArray4_Little4 = Packet.longToByteArray4_Little(NVRPlaybackOnlineActivity.this.file_infos.u32StartPts[NVRPlaybackOnlineActivity.this.StreamType]);
HiLogcatUtil.e(NVRPlaybackOnlineActivity.this.file_infos.u32StartTime + Constants.COLON_SEPARATOR + NVRPlaybackOnlineActivity.this.file_infos.u32StopTime + "::" + NVRPlaybackOnlineActivity.this.file_infos.u32StartPts[NVRPlaybackOnlineActivity.this.StreamType] + "::::" + NVRPlaybackOnlineActivity.this.file_infos.u32StopPts[NVRPlaybackOnlineActivity.this.StreamType] + Constants.COLON_SEPARATOR + NVRPlaybackOnlineActivity.this.file_infos.u32StartTimefile + "::" + NVRPlaybackOnlineActivity.this.file_infos.u32StopTimefile);
NVRPlaybackOnlineActivity.this.mCamera.mhiNvrdev.stopPlayBack(NVRPlaybackOnlineActivity.this.chn, 2, longToByteArray4_Little2, longToByteArray4_Little3, longToByteArray4_Little4, longToByteArray4_Little, NVRPlaybackOnlineActivity.this.file_infos.sFilePath, NVRPlaybackOnlineActivity.this.StreamType, 1, NVRPlaybackOnlineActivity.this.file_infos.u8Crc, NVRPlaybackOnlineActivity.this.mstrdate.getBytes());
NVRPlaybackOnlineActivity.this.isReadyPlay = false;
NVRPlaybackOnlineActivity.this.mSpeed = 0;
NVRPlaybackOnlineActivity nVRPlaybackOnlineActivity2 = NVRPlaybackOnlineActivity.this;
MyToast.showToast(nVRPlaybackOnlineActivity2, nVRPlaybackOnlineActivity2.getString(R.string.tips_stop_video));
return;
case NVRPlaybackOnlineActivity.HANDLE_MESSAGE_PLAYLOCAL_STATE_ING:
int progress2 = NVRPlaybackOnlineActivity.this.prs_loading.getProgress();
if (progress2 >= 100) {
NVRPlaybackOnlineActivity.this.prs_loading.setProgress(10);
} else {
NVRPlaybackOnlineActivity.this.prs_loading.setProgress(progress2 + 8);
}
NVRPlaybackOnlineActivity.this.model = (short) 1;
return;
default:
return;
}
}
}
HiTools.getMyGrandpaStackTrace();
NVRPlaybackOnlineActivity nVRPlaybackOnlineActivity3 = NVRPlaybackOnlineActivity.this;
MyToast.showToast(nVRPlaybackOnlineActivity3, nVRPlaybackOnlineActivity3.getString(R.string.tips_open_video_fail));
NVRPlaybackOnlineActivity.this.mhandlerPF.postDelayed(new Runnable() {
@Override
public void run() {
NVRPlaybackOnlineActivity.this.finish();
}
}, 1000L);
return;
}
HiLogcatUtil.e("################# timeline PLAY_ONLINESTATE_ERROR ############## ");
}
};
private Handler handler = new Handler() {
@Override
public void handleMessage(Message message) {
int i = message.what;
if (i == -1879048191) {
MyCamera myCamera = (MyCamera) message.obj;
int i2 = message.arg1;
if (i2 == 0 || i2 == 5) {
NVRPlaybackOnlineActivity.this.prs_playing.setEnabled(true);
NVRPlaybackOnlineActivity.this.play_btn_playback_online.setClickable(true);
if (myCamera != null) {
byte[] longToByteArray4_Little = Packet.longToByteArray4_Little(NVRPlaybackOnlineActivity.this.file_infos.u32StartTime * 1000);
byte[] longToByteArray4_Little2 = Packet.longToByteArray4_Little(NVRPlaybackOnlineActivity.this.file_infos.u32StartTime);
byte[] longToByteArray4_Little3 = Packet.longToByteArray4_Little(NVRPlaybackOnlineActivity.this.file_infos.u32StopTime);
byte[] longToByteArray4_Little4 = Packet.longToByteArray4_Little(NVRPlaybackOnlineActivity.this.file_infos.u32StartPts[NVRPlaybackOnlineActivity.this.StreamType]);
HiLogcatUtil.e(NVRPlaybackOnlineActivity.this.file_infos.u32StartTime + Constants.COLON_SEPARATOR + NVRPlaybackOnlineActivity.this.file_infos.u32StopTime + "::" + NVRPlaybackOnlineActivity.this.file_infos.u32StartPts[NVRPlaybackOnlineActivity.this.StreamType] + "::::" + NVRPlaybackOnlineActivity.this.file_infos.u32StopPts[NVRPlaybackOnlineActivity.this.StreamType] + Constants.COLON_SEPARATOR + NVRPlaybackOnlineActivity.this.file_infos.u32StartTimefile + "::" + NVRPlaybackOnlineActivity.this.file_infos.u32StopTimefile);
NVRPlaybackOnlineActivity.this.mCamera.mhiNvrdev.stopPlayBack(NVRPlaybackOnlineActivity.this.chn, 2, longToByteArray4_Little2, longToByteArray4_Little3, longToByteArray4_Little4, longToByteArray4_Little, NVRPlaybackOnlineActivity.this.file_infos.sFilePath, NVRPlaybackOnlineActivity.this.StreamType, 1, NVRPlaybackOnlineActivity.this.file_infos.u8Crc, NVRPlaybackOnlineActivity.this.mstrdate.getBytes());
NVRPlaybackOnlineActivity.this.isReadyPlay = false;
}
NVRPlaybackOnlineActivity nVRPlaybackOnlineActivity = NVRPlaybackOnlineActivity.this;
MyToast.showToast(nVRPlaybackOnlineActivity, nVRPlaybackOnlineActivity.getString(R.string.tips_network_disconnect));
NVRPlaybackOnlineActivity.this.NetworkError();
return;
}
return;
}
if (i == -6) {
HiLogcatUtil.e("################# playbackonline PLAY_ONLINESTATE_ERROR ############## ");
NVRPlaybackOnlineActivity nVRPlaybackOnlineActivity2 = NVRPlaybackOnlineActivity.this;
Toast.makeText(nVRPlaybackOnlineActivity2, nVRPlaybackOnlineActivity2.getString(R.string.play_4k_sd_error), 1).show();
byte[] longToByteArray4_Little5 = Packet.longToByteArray4_Little(NVRPlaybackOnlineActivity.this.file_infos.u32StartTime * 1000);
byte[] longToByteArray4_Little6 = Packet.longToByteArray4_Little(NVRPlaybackOnlineActivity.this.file_infos.u32StartTime);
byte[] longToByteArray4_Little7 = Packet.longToByteArray4_Little(NVRPlaybackOnlineActivity.this.file_infos.u32StopTime);
byte[] longToByteArray4_Little8 = Packet.longToByteArray4_Little(NVRPlaybackOnlineActivity.this.file_infos.u32StartPts[NVRPlaybackOnlineActivity.this.StreamType]);
HiLogcatUtil.e(NVRPlaybackOnlineActivity.this.file_infos.u32StartTime + Constants.COLON_SEPARATOR + NVRPlaybackOnlineActivity.this.file_infos.u32StopTime + "::" + NVRPlaybackOnlineActivity.this.file_infos.u32StartPts[NVRPlaybackOnlineActivity.this.StreamType] + "::::" + NVRPlaybackOnlineActivity.this.file_infos.u32StopPts[NVRPlaybackOnlineActivity.this.StreamType] + Constants.COLON_SEPARATOR + NVRPlaybackOnlineActivity.this.file_infos.u32StartTimefile + "::" + NVRPlaybackOnlineActivity.this.file_infos.u32StopTimefile);
NVRPlaybackOnlineActivity.this.mCamera.mhiNvrdev.stopPlayBack(NVRPlaybackOnlineActivity.this.chn, 2, longToByteArray4_Little6, longToByteArray4_Little7, longToByteArray4_Little8, longToByteArray4_Little5, NVRPlaybackOnlineActivity.this.file_infos.sFilePath, NVRPlaybackOnlineActivity.this.StreamType, 1, NVRPlaybackOnlineActivity.this.file_infos.u8Crc, NVRPlaybackOnlineActivity.this.mstrdate.getBytes());
NVRPlaybackOnlineActivity.this.isReadyPlay = false;
NVRPlaybackOnlineActivity.this.mCamera.setReconnectTimes(10);
NVRPlaybackOnlineActivity.this.startActivity(new Intent(NVRPlaybackOnlineActivity.this, (Class<?>) MainActivity.class));
return;
}
if (i == 27) {
String string = message.getData().getString("data");
NVRPlaybackOnlineActivity.this.isDownloaded = true;
if (NVRPlaybackOnlineActivity.this.mCamera != null && NVRPlaybackOnlineActivity.this.mCamera.mhiNvrdev != null) {
NVRPlaybackOnlineActivity.this.mCamera.mhiNvrdev.SetHiCameraLoadFin();
}
HiLogcatUtil.e("PlayLocalNVRFileCallback.DOWNLOAD_STATE_FINISH" + string);
if (new File(string).exists()) {
String replace = string.replace(".4rec", ".h264").replace(".5rec", ".h265");
HiLogcatUtil.e(string + ":" + replace + Constants.COLON_SEPARATOR);
NVRPlaybackOnlineActivity.this.renameFile(string, replace);
return;
}
return;
}
if (i != 8195) {
if (i != 16677) {
if (i != 16733 && i != 16846 && i != 18461) {
if (i == NVRPlaybackOnlineActivity.HANDLE_MESSAGE_PROGRESSBAR_RUN) {
int progress = NVRPlaybackOnlineActivity.this.prs_loading.getProgress();
if (progress >= 100) {
NVRPlaybackOnlineActivity.this.prs_loading.setProgress(10);
} else {
NVRPlaybackOnlineActivity.this.prs_loading.setProgress(progress + 8);
}
NVRPlaybackOnlineActivity.this.model = (short) 1;
return;
}
if (i != 268435470) {
if (i != 0) {
if (i != 1) {
if (i != 16768) {
if (i != 16769) {
switch (i) {
case NVRPlaybackOnlineActivity.HANDLE_MESSAGE_SEEKBAR_START:
break;
case NVRPlaybackOnlineActivity.HANDLE_MESSAGE_SEEKBAR_RUN:
NVRPlaybackOnlineActivity.this.play_btn_playback_online.setClickable(true);
if (NVRPlaybackOnlineActivity.this.mIsDrag) {
return;
}
NVRPlaybackOnlineActivity.this.prs_playing.setProgress(message.arg1);
NVRPlaybackOnlineActivity.this.mTvStartTime.setText(NVRPlaybackOnlineActivity.sdf.format(new Date(message.arg1 * 1000)));
return;
case NVRPlaybackOnlineActivity.HANDLE_MESSAGE_SEEKBAR_END:
break;
case NVRPlaybackOnlineActivity.HANDLE_MESSAGE_PLAYLOCAL_STATE_ING:
NVRPlaybackOnlineActivity.this.model = (short) 1;
NVRPlaybackOnlineActivity.this.play_btn_playback_online.setClickable(true);
if (NVRPlaybackOnlineActivity.this.mIsDrag) {
return;
}
NVRPlaybackOnlineActivity.this.prs_playing.setProgress(message.arg1);
NVRPlaybackOnlineActivity.this.mTvStartTime.setText(NVRPlaybackOnlineActivity.sdf.format(new Date(message.arg1 * 1000)));
return;
default:
return;
}
}
}
}
NVRPlaybackOnlineActivity.this.isPlaying = false;
NVRPlaybackOnlineActivity.this.mIsEnd = true;
NVRPlaybackOnlineActivity.this.model = (short) 2;
NVRPlaybackOnlineActivity.this.play_btn_playback_online.setSelected(true);
NVRPlaybackOnlineActivity.this.prs_playing.setProgress(NVRPlaybackOnlineActivity.this.progressTime);
byte[] longToByteArray4_Little9 = Packet.longToByteArray4_Little(NVRPlaybackOnlineActivity.this.file_infos.u32StartTime * 1000);
byte[] longToByteArray4_Little10 = Packet.longToByteArray4_Little(NVRPlaybackOnlineActivity.this.file_infos.u32StartTime);
byte[] longToByteArray4_Little11 = Packet.longToByteArray4_Little(NVRPlaybackOnlineActivity.this.file_infos.u32StopTime);
byte[] longToByteArray4_Little12 = Packet.longToByteArray4_Little(NVRPlaybackOnlineActivity.this.file_infos.u32StartPts[NVRPlaybackOnlineActivity.this.StreamType]);
HiLogcatUtil.e(NVRPlaybackOnlineActivity.this.file_infos.u32StartTime + Constants.COLON_SEPARATOR + NVRPlaybackOnlineActivity.this.file_infos.u32StopTime + "::" + NVRPlaybackOnlineActivity.this.file_infos.u32StartPts[NVRPlaybackOnlineActivity.this.StreamType] + "::::" + NVRPlaybackOnlineActivity.this.file_infos.u32StopPts[NVRPlaybackOnlineActivity.this.StreamType] + Constants.COLON_SEPARATOR + NVRPlaybackOnlineActivity.this.file_infos.u32StartTimefile + "::" + NVRPlaybackOnlineActivity.this.file_infos.u32StopTimefile);
NVRPlaybackOnlineActivity.this.mCamera.mhiNvrdev.stopPlayBack(NVRPlaybackOnlineActivity.this.chn, 2, longToByteArray4_Little10, longToByteArray4_Little11, longToByteArray4_Little12, longToByteArray4_Little9, NVRPlaybackOnlineActivity.this.file_infos.sFilePath, NVRPlaybackOnlineActivity.this.StreamType, 1, NVRPlaybackOnlineActivity.this.file_infos.u8Crc, NVRPlaybackOnlineActivity.this.mstrdate.getBytes());
NVRPlaybackOnlineActivity.this.isReadyPlay = false;
NVRPlaybackOnlineActivity.this.mSpeed = 0;
NVRPlaybackOnlineActivity.this.prs_playing.setEnabled(true);
NVRPlaybackOnlineActivity.this.play_btn_playback_online.setClickable(true);
NVRPlaybackOnlineActivity nVRPlaybackOnlineActivity3 = NVRPlaybackOnlineActivity.this;
MyToast.showToast(nVRPlaybackOnlineActivity3, nVRPlaybackOnlineActivity3.getString(R.string.tips_stop_video));
return;
}
if (NVRPlaybackOnlineActivity.this.video_width != message.arg1 || NVRPlaybackOnlineActivity.this.video_height != message.arg2) {
NVRPlaybackOnlineActivity.this.video_width = message.arg1;
NVRPlaybackOnlineActivity.this.video_height = message.arg2;
}
NVRPlaybackOnlineActivity.this.isReadyPlay = true;
NVRPlaybackOnlineActivity.this.prs_playing.setEnabled(true);
NVRPlaybackOnlineActivity.this.ivSnapshot.setEnabled(true);
NVRPlaybackOnlineActivity.this.play_btn_playback_online.setClickable(true);
NVRPlaybackOnlineActivity.this.isPlaying = true;
NVRPlaybackOnlineActivity.this.model = (short) 1;
NVRPlaybackOnlineActivity.this.mIsEnd = false;
NVRPlaybackOnlineActivity.this.play_btn_playback_online.setSelected(false);
NVRPlaybackOnlineActivity.this.resetMonitorSize();
NVRPlaybackOnlineActivity nVRPlaybackOnlineActivity4 = NVRPlaybackOnlineActivity.this;
nVRPlaybackOnlineActivity4.handLandScape(nVRPlaybackOnlineActivity4.mPictureSize);
return;
}
byte[] byteArray = message.getData().getByteArray("data");
HiLogcatUtil.e(NVRPlaybackOnlineActivity.this.mCamera.getUid() + "" + HiChipNVRDefines.HI_NVR_P2P_PLATFORM_PLAYBACKFILE + "" + byteArray.length);
if (byteArray.length > 32) {
HiChipNVRDefines.PLATFORM_S_PLAYBACKFILE platform_s_playbackfile = new HiChipNVRDefines.PLATFORM_S_PLAYBACKFILE(byteArray);
int byteArrayToInt_Little = Packet.byteArrayToInt_Little(byteArray, 4);
HiLogcatUtil.e(NVRPlaybackOnlineActivity.this.mCamera.getUid() + "" + HiChipNVRDefines.HI_NVR_P2P_PLATFORM_PLAYBACKFILE + "" + byteArray.length + ":::" + byteArrayToInt_Little);
HiLogcatUtil.e(NVRPlaybackOnlineActivity.this.chn + "::::" + platform_s_playbackfile.u16Height[NVRPlaybackOnlineActivity.this.StreamType] + ":" + platform_s_playbackfile.u16Width[NVRPlaybackOnlineActivity.this.StreamType] + ":" + ((int) platform_s_playbackfile.u8StreamCode[NVRPlaybackOnlineActivity.this.StreamType]) + ":" + platform_s_playbackfile.u8AFormat);
if (byteArrayToInt_Little != 1 || NVRPlaybackOnlineActivity.this.isReadyPlay) {
return;
}
NVRPlaybackOnlineActivity.this.mCamera.mhiNvrdev.stopPlaybackThread();
NVRPlaybackOnlineActivity.this.mCamera.mhiNvrdev.startPlaybackThread();
return;
}
return;
}
}
NVRPlaybackOnlineActivity.this.model = (short) 1;
if (NVRPlaybackOnlineActivity.this.mSpeed != 0 || NVRPlaybackOnlineActivity.this.isPlaying || NVRPlaybackOnlineActivity.this.mIsEnd) {
return;
}
NVRPlaybackOnlineActivity.this.play_btn_playback_online.setSelected(false);
NVRPlaybackOnlineActivity.this.isPlaying = !r1.isPlaying;
return;
}
if (message.arg2 == 0) {
byte[] byteArray2 = message.getData().getByteArray("data");
int i3 = -1;
if (byteArray2.length > 12) {
i3 = Packet.byteArrayToInt_Little(byteArray2, 12);
} else if (byteArray2.length == 12) {
i3 = 1;
}
if (i3 != 1) {
if (i3 == 3) {
NVRPlaybackOnlineActivity.this.play_btn_playback_online.setClickable(true);
return;
}
return;
}
NVRPlaybackOnlineActivity.this.video_width = Packet.byteArrayToInt_Little(byteArray2, 0);
NVRPlaybackOnlineActivity.this.video_height = Packet.byteArrayToInt_Little(byteArray2, 4);
if (NVRPlaybackOnlineActivity.this.video_width <= 0 || NVRPlaybackOnlineActivity.this.video_height <= 0 || NVRPlaybackOnlineActivity.this.video_height >= 5000 || NVRPlaybackOnlineActivity.this.video_width >= 5000) {
NVRPlaybackOnlineActivity.this.finish();
NVRPlaybackOnlineActivity nVRPlaybackOnlineActivity5 = NVRPlaybackOnlineActivity.this;
MyToast.showToast(nVRPlaybackOnlineActivity5, nVRPlaybackOnlineActivity5.getString(R.string.tips_open_video_fail));
return;
}
return;
}
NVRPlaybackOnlineActivity.this.finish();
NVRPlaybackOnlineActivity nVRPlaybackOnlineActivity6 = NVRPlaybackOnlineActivity.this;
MyToast.showToast(nVRPlaybackOnlineActivity6, nVRPlaybackOnlineActivity6.getString(R.string.tips_open_video_fail));
}
};
double nLenStart = 0.0d;
public int isLarge = 0;
private Handler mHandler_lockScreen = new Handler() {
@Override
public void handleMessage(Message message) {
if (message.what == 0) {
NVRPlaybackOnlineActivity.this.root_lock_screen.setVisibility(0);
NVRPlaybackOnlineActivity.this.mHandler_lockScreen.sendEmptyMessageDelayed(1, 3000L);
} else {
NVRPlaybackOnlineActivity.this.root_lock_screen.setVisibility(8);
NVRPlaybackOnlineActivity.this.mHandler_lockScreen.removeCallbacksAndMessages(null);
}
}
};
private int subtime = 0;
@Override
public void callbackRecordState(HiNVRDev hiNVRDev, int i, int i2, int i3, int i4, String str) {
}
@Override
public void callbackRecordState(HiCamera hiCamera, int i, int i2, int i3, String str) {
}
@Override
protected void initWindow() {
}
@Override
public void onStart() {
super.onStart();
IntentFilter intentFilter = new IntentFilter("android.net.conn.CONNECTIVITY_CHANGE");
ConnectionChangeReceiver connectionChangeReceiver = new ConnectionChangeReceiver();
this.myReceiver = connectionChangeReceiver;
registerReceiver(connectionChangeReceiver, intentFilter);
}
@Override
protected int setLayoutId() {
getWindow().addFlags(128);
getWindow().setFlags(1024, 1024);
return R.layout.activity_playback_online_landscape;
}
@Override
protected void init(Bundle bundle) {
Bundle extras = getIntent().getExtras();
String string = extras.getString(HiDataValue.EXTRAS_KEY_UID);
this.file_infos = (HiChipNVRDefines.PLATFORM_S_PLAYBACKFILE) extras.getSerializable("file_infokey");
this.mstrdate = extras.getString("mstrdatekey");
this.chn = extras.getInt("chnkey");
this.playback_time = extras.getLong("pb_time");
this.startTimeLong = extras.getLong("VIDEO START TIME");
this.endTimeLong = extras.getLong("VIDEO END TIME");
Iterator<MyCamera> it = HiDataValue.CameraList.iterator();
while (true) {
if (!it.hasNext()) {
break;
}
MyCamera next = it.next();
if (next.getUid().equals(string)) {
this.mCamera = next;
break;
}
}
int i = SharePreUtils.getInt(HiDataValue.CACHE, this, "pictureSize" + HiDataValue.userAccount + this.mCamera.getUid());
this.mPictureSize = i;
if (i == -1) {
this.mPictureSize = 0;
}
String pathCameraVideoOnLineNVR = HiDataValue.getPathCameraVideoOnLineNVR(this);
HiLogcatUtil.e("pathd:" + pathCameraVideoOnLineNVR);
File file = new File(pathCameraVideoOnLineNVR);
if (!file.exists()) {
file.mkdirs();
}
initView();
setListerners();
showLoadingShade();
this.mCamera.registerIOSessionListener(this);
this.mCamera.registerPlayStateListener(this);
OrientationWatchDog orientationWatchDog = new OrientationWatchDog(this);
this.mOrientationWatchDog = orientationWatchDog;
orientationWatchDog.setOnOrientationListener(this);
this.mOrientationWatchDog.startWatch();
if (this.mCamera.mhiNvrdev == null) {
this.mCamera.mhiNvrdev = new HiNVRDev();
}
this.mCamera.mhiNvrdev.SetHiCameraObj(this.mCamera);
boolean z = SharePreUtils.getBoolean(HiDataValue.CACHE, this, Constant.DEV_IsVivoMedia, false);
if (SystemUtils.isVIVOMobile(this) && Build.VERSION.SDK_INT > 29 && !z) {
this.mCamera.mhiNvrdev.SetDecodeViVoVideoType(0);
} else {
this.mCamera.mhiNvrdev.SetDecodeViVoVideoType(1);
}
if (this.mCamera.mhiNvrdev != null) {
this.mCamera.mhiNvrdev.SetHiCameraObj(this.mCamera);
this.mCamera.mhiNvrdev.registerPlayNVRStateListener(this);
this.mCamera.mhiNvrdev.registerPlayBackNVRStateListener(this);
this.mCamera.mhiNvrdev.SetHiCameraAudioPB(0, true);
this.mCamera.mhiNvrdev.PlayLocal_Resume();
this.mCamera.mhiNvrdev.setLiveShowMonitor(this.mMonitor);
this.mMonitor.setState(0);
this.mCamera.setNvrShowMonitor(this.mMonitor, 0);
this.mCamera.mhiNvrdev.SetHiCameraMonitor(this.mCamera.mNvrmonitor);
boolean[] zArr = new boolean[this.mCamera.getmNvrChannelMaxNum()];
for (int i2 = 0; i2 < this.mCamera.getmNvrChannelMaxNum(); i2++) {
zArr[i2] = true;
}
this.mCamera.mhiNvrdev.ResumeLiveShow(zArr);
}
startPlayBack(0);
this.model = (short) 1;
}
private void checkPBFastCacheSize() {
if (Double.valueOf(FileSizeUtils.getFileOrFilesSize(HiDataValue.getPathCameraVideoOnLineNVR(this), 3)).compareTo(Double.valueOf(HiDataValue.DelCacheMax)) > 0) {
Intent intent = new Intent(this, (Class<?>) DeleteNVRCacheFileService.class);
intent.putExtra("PBFast", true);
intent.putExtra("PBFastuid", this.mCamera.getUid());
startService(intent);
}
}
private void setListerners() {
this.ivSnapshot.setOnClickListener(new View.OnClickListener() {
@Override
public final void onClick(View view) {
NVRPlaybackOnlineActivity.this.onClick(view);
}
});
this.ivAdaption.setOnClickListener(this);
this.mMonitor.setOnTouchListener(this);
this.play_btn_exit.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
NVRPlaybackOnlineActivity.this.finish();
}
});
this.mMonitor.setOnClickListener(this);
this.root_lock_screen.setOnClickListener(this);
}
public synchronized void startPlayBack(final int i) {
new Thread() {
@Override
public void run() {
super.run();
byte[] longToByteArray4_Little = Packet.longToByteArray4_Little((NVRPlaybackOnlineActivity.this.file_infos.u32StartTime * 1000) + (i * 1000));
byte[] longToByteArray4_Little2 = Packet.longToByteArray4_Little(NVRPlaybackOnlineActivity.this.file_infos.u32StartTime);
byte[] longToByteArray4_Little3 = Packet.longToByteArray4_Little(NVRPlaybackOnlineActivity.this.file_infos.u32StopTime);
byte[] longToByteArray4_Little4 = Packet.longToByteArray4_Little(NVRPlaybackOnlineActivity.this.file_infos.u32StartPts[NVRPlaybackOnlineActivity.this.StreamType]);
HiLogcatUtil.e(NVRPlaybackOnlineActivity.this.file_infos.u32StartTime + Constants.COLON_SEPARATOR + NVRPlaybackOnlineActivity.this.file_infos.u32StopTime + "::" + NVRPlaybackOnlineActivity.this.file_infos.u32StartPts[NVRPlaybackOnlineActivity.this.StreamType] + "::::" + NVRPlaybackOnlineActivity.this.file_infos.u32StopPts[NVRPlaybackOnlineActivity.this.StreamType] + Constants.COLON_SEPARATOR + ((int) longToByteArray4_Little4[0]) + "::" + ((int) longToByteArray4_Little4[1]) + Constants.COLON_SEPARATOR + ((int) longToByteArray4_Little4[2]) + "::" + ((int) longToByteArray4_Little4[3]));
NVRPlaybackOnlineActivity.this.mCamera.mhiNvrdev.startPlayBack(NVRPlaybackOnlineActivity.this.chn, 1, longToByteArray4_Little2, longToByteArray4_Little3, longToByteArray4_Little4, longToByteArray4_Little, NVRPlaybackOnlineActivity.this.file_infos.sFilePath, NVRPlaybackOnlineActivity.this.StreamType, NVRPlaybackOnlineActivity.this.mstrdate.getBytes(), 1, NVRPlaybackOnlineActivity.this.file_infos.u8Crc, false, false);
}
}.start();
}
private void delfile(String str) {
if (TextUtils.isEmpty(str)) {
return;
}
File file = new File(str);
if (file.isFile() && file.exists()) {
file.delete();
}
}
private void initView() {
ImageView imageView = (ImageView) findViewById(R.id.iv_snapshot);
this.ivSnapshot = imageView;
imageView.setEnabled(false);
this.ivAdaption = (ImageView) findViewById(R.id.iv_adaption);
this.mMonitor = (MyPlaybackGLMonitor) findViewById(R.id.monitor_playback_view);
DisplayMetrics displayMetrics = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(displayMetrics);
this.mMonitor.screen_height = displayMetrics.heightPixels;
if (this.hideUIMenu) {
this.mMonitor.screen_width = displayMetrics.widthPixels + HiTools.getNavigationBarHeight(this);
} else {
this.mMonitor.screen_width = displayMetrics.widthPixels;
}
this.mMonitor.setCamera(this.mCamera);
this.mCamera.setLiveShowMonitor(this.mMonitor);
this.play_btn_exit = (ImageView) findViewById(R.id.play_btn_playback_exit);
this.prs_loading = (ProgressBar) findViewById(R.id.prs_loading);
this.img_shade = (ImageView) findViewById(R.id.img_shade);
this.mllPlay = (LinearLayout) findViewById(R.id.rl_play);
this.mTvStartTime = (TextView) findViewById(R.id.tv_start_time);
TextView textView = (TextView) findViewById(R.id.tv_end_time);
this.mTvEndTime = textView;
textView.setText(HiGetFileTime(this.file_infos.u32StopTime - this.file_infos.u32StartTime, false));
this.progressTime = (int) (this.file_infos.u32StopTime - this.file_infos.u32StartTime);
SeekBar seekBar = (SeekBar) findViewById(R.id.prs_playing);
this.prs_playing = seekBar;
seekBar.setMax(this.progressTime);
this.prs_playing.setProgress(0);
this.mLlCurrPro = (LinearLayout) findViewById(R.id.ll_cureent_progress);
this.mTvCurrPro = (TextView) findViewById(R.id.tv_current_pro);
this.mTvPrecent = (TextView) findViewById(R.id.tv_precent);
this.prs_playing.setEnabled(false);
this.prs_playing.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener() {
@Override
public void onStopTrackingTouch(SeekBar seekBar2) {
int progress = seekBar2.getProgress();
HiLogcatUtil.e("GetIFramePos " + progress + ":::" + ((progress * 100) / NVRPlaybackOnlineActivity.this.progressTime) + ":::" + NVRPlaybackOnlineActivity.this.progressTime);
if (NVRPlaybackOnlineActivity.this.mIsEnd) {
NVRPlaybackOnlineActivity.this.prs_playing.setEnabled(false);
NVRPlaybackOnlineActivity.this.play_btn_playback_online.setClickable(false);
NVRPlaybackOnlineActivity.this.startPlayBack(progress);
}
if (!NVRPlaybackOnlineActivity.this.isPlaying && NVRPlaybackOnlineActivity.this.isReadyPlay) {
byte[] longToByteArray4_Little = Packet.longToByteArray4_Little(NVRPlaybackOnlineActivity.this.file_infos.u32StartTime * 1000);
byte[] longToByteArray4_Little2 = Packet.longToByteArray4_Little(NVRPlaybackOnlineActivity.this.file_infos.u32StartTime);
byte[] longToByteArray4_Little3 = Packet.longToByteArray4_Little(NVRPlaybackOnlineActivity.this.file_infos.u32StopTime);
byte[] longToByteArray4_Little4 = Packet.longToByteArray4_Little(NVRPlaybackOnlineActivity.this.file_infos.u32StartPts[NVRPlaybackOnlineActivity.this.StreamType]);
HiLogcatUtil.e(NVRPlaybackOnlineActivity.this.file_infos.u32StartTime + Constants.COLON_SEPARATOR + NVRPlaybackOnlineActivity.this.file_infos.u32StopTime + "::" + NVRPlaybackOnlineActivity.this.file_infos.u32StartPts[NVRPlaybackOnlineActivity.this.StreamType] + "::::" + NVRPlaybackOnlineActivity.this.file_infos.u32StopPts[NVRPlaybackOnlineActivity.this.StreamType] + Constants.COLON_SEPARATOR + NVRPlaybackOnlineActivity.this.file_infos.u32StartTimefile + "::" + NVRPlaybackOnlineActivity.this.file_infos.u32StopTimefile);
NVRPlaybackOnlineActivity.this.mCamera.mhiNvrdev.startPlayBack(NVRPlaybackOnlineActivity.this.chn, 3, longToByteArray4_Little2, longToByteArray4_Little3, longToByteArray4_Little4, longToByteArray4_Little, NVRPlaybackOnlineActivity.this.file_infos.sFilePath, NVRPlaybackOnlineActivity.this.StreamType, NVRPlaybackOnlineActivity.this.mstrdate.getBytes(), 1, NVRPlaybackOnlineActivity.this.file_infos.u8Crc, false, true);
NVRPlaybackOnlineActivity.this.mCamera.mhiNvrdev.SetHiCameraAudioPB(0, true);
NVRPlaybackOnlineActivity.this.mCamera.mhiNvrdev.PlayLocal_Resume();
HiLogcatUtil.e("play_btn_playback_onlinefasfasd");
NVRPlaybackOnlineActivity.this.play_btn_playback_online.setSelected(false);
NVRPlaybackOnlineActivity nVRPlaybackOnlineActivity = NVRPlaybackOnlineActivity.this;
nVRPlaybackOnlineActivity.isPlaying = nVRPlaybackOnlineActivity.isPlaying ^ true;
}
if (progress < 1) {
if (!NVRPlaybackOnlineActivity.this.mIsEnd) {
byte[] longToByteArray4_Little5 = Packet.longToByteArray4_Little(NVRPlaybackOnlineActivity.this.file_infos.u32StartTime * 1000);
byte[] longToByteArray4_Little6 = Packet.longToByteArray4_Little(NVRPlaybackOnlineActivity.this.file_infos.u32StartTime);
byte[] longToByteArray4_Little7 = Packet.longToByteArray4_Little(NVRPlaybackOnlineActivity.this.file_infos.u32StopTime);
byte[] longToByteArray4_Little8 = Packet.longToByteArray4_Little(NVRPlaybackOnlineActivity.this.file_infos.u32StartPts[NVRPlaybackOnlineActivity.this.StreamType]);
HiLogcatUtil.e(NVRPlaybackOnlineActivity.this.file_infos.u32StartTime + Constants.COLON_SEPARATOR + NVRPlaybackOnlineActivity.this.file_infos.u32StopTime + "::" + NVRPlaybackOnlineActivity.this.file_infos.u32StartPts[NVRPlaybackOnlineActivity.this.StreamType] + "::::" + NVRPlaybackOnlineActivity.this.file_infos.u32StopPts[NVRPlaybackOnlineActivity.this.StreamType] + Constants.COLON_SEPARATOR + NVRPlaybackOnlineActivity.this.file_infos.u32StartTimefile + "::" + NVRPlaybackOnlineActivity.this.file_infos.u32StopTimefile);
NVRPlaybackOnlineActivity.this.mCamera.mhiNvrdev.stopPlayBack(NVRPlaybackOnlineActivity.this.chn, 2, longToByteArray4_Little6, longToByteArray4_Little7, longToByteArray4_Little8, longToByteArray4_Little5, NVRPlaybackOnlineActivity.this.file_infos.sFilePath, NVRPlaybackOnlineActivity.this.StreamType, 1, NVRPlaybackOnlineActivity.this.file_infos.u8Crc, NVRPlaybackOnlineActivity.this.mstrdate.getBytes());
NVRPlaybackOnlineActivity.this.isReadyPlay = false;
NVRPlaybackOnlineActivity.this.startPlayBack(0);
}
} else {
byte[] longToByteArray4_Little9 = Packet.longToByteArray4_Little((NVRPlaybackOnlineActivity.this.file_infos.u32StartTime * 1000) + (progress * 1000));
new HiChipNVRDefines.PLATFORM_S_PLAYBACKPOS_REQ();
NVRPlaybackOnlineActivity.this.mCamera.sendIOCtrl(HiChipNVRDefines.HI_NVR_P2P_PLATFORM_PLAYBACKPOS, HiChipNVRDefines.PLATFORM_S_PLAYBACKPOS_REQ.parseContent(longToByteArray4_Little9));
}
NVRPlaybackOnlineActivity.this.mIsDrag = false;
NVRPlaybackOnlineActivity.this.mLlCurrPro.setVisibility(8);
NVRPlaybackOnlineActivity.this.mSpeed = 0;
}
@Override
public void onStartTrackingTouch(SeekBar seekBar2) {
NVRPlaybackOnlineActivity.this.mIsDrag = true;
}
@Override
public void onProgressChanged(SeekBar seekBar2, int i, boolean z) {
if (NVRPlaybackOnlineActivity.this.mIsDrag) {
NVRPlaybackOnlineActivity.this.mLlCurrPro.setVisibility(0);
int round = (int) Math.round((i / NVRPlaybackOnlineActivity.this.progressTime) * 100.0d);
NVRPlaybackOnlineActivity.this.mTvPrecent.setText(round + "%");
NVRPlaybackOnlineActivity.this.mTvStartTime.setText(NVRPlaybackOnlineActivity.sdf.format(new Date((long) (i * 1000))));
return;
}
NVRPlaybackOnlineActivity.this.mLlCurrPro.setVisibility(8);
}
});
RelativeLayout relativeLayout = (RelativeLayout) findViewById(R.id.playback_view_screen);
this.playback_view_screen = relativeLayout;
relativeLayout.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
if (NVRPlaybackOnlineActivity.this.model == 0) {
return;
}
NVRPlaybackOnlineActivity.this.visible = !r2.visible;
NVRPlaybackOnlineActivity.this.mllPlay.setVisibility(NVRPlaybackOnlineActivity.this.visible ? 0 : 8);
}
});
ImageView imageView2 = (ImageView) findViewById(R.id.play_btn_playback_online);
this.play_btn_playback_online = imageView2;
imageView2.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
NVRPlaybackOnlineActivity.this.setPauseOnline();
}
});
this.play_btn_playback_online.setClickable(false);
}
@Override
public void onBackPressed() {
super.onBackPressed();
PopupWindow popupWindow = this.mPopupWindow;
if (popupWindow == null || !popupWindow.isShowing()) {
return;
}
this.mPopupWindow.dismiss();
}
public void setPauseOnline() {
if (this.mCamera.getConnectState() == 4) {
if (this.mIsEnd) {
this.play_btn_playback_online.setClickable(false);
this.prs_playing.setEnabled(false);
startPlayBack(0);
return;
}
byte[] longToByteArray4_Little = Packet.longToByteArray4_Little(this.file_infos.u32StartTime * 1000);
byte[] longToByteArray4_Little2 = Packet.longToByteArray4_Little(this.file_infos.u32StartTime);
byte[] longToByteArray4_Little3 = Packet.longToByteArray4_Little(this.file_infos.u32StopTime);
byte[] longToByteArray4_Little4 = Packet.longToByteArray4_Little(this.file_infos.u32StartPts[this.StreamType]);
HiLogcatUtil.e(this.file_infos.u32StartTime + Constants.COLON_SEPARATOR + this.file_infos.u32StopTime + "::" + this.file_infos.u32StartPts[this.StreamType] + "::::" + this.file_infos.u32StopPts[this.StreamType] + Constants.COLON_SEPARATOR + this.file_infos.u32StartTimefile + "::" + this.file_infos.u32StopTimefile);
this.mCamera.mhiNvrdev.startPlayBack(this.chn, 3, longToByteArray4_Little2, longToByteArray4_Little3, longToByteArray4_Little4, longToByteArray4_Little, this.file_infos.sFilePath, this.StreamType, this.mstrdate.getBytes(), 1, this.file_infos.u8Crc, false, true);
if (this.isPlaying) {
this.mCamera.mhiNvrdev.SetHiCameraAudioPB(0, false);
this.mCamera.mhiNvrdev.PlayLocal_pause();
this.play_btn_playback_online.setSelected(true);
} else {
this.mCamera.mhiNvrdev.SetHiCameraAudioPB(0, true);
this.mCamera.mhiNvrdev.PlayLocal_Resume();
this.play_btn_playback_online.setSelected(false);
}
this.isPlaying = true ^ this.isPlaying;
}
}
private void setImageVisible(boolean z) {
if (z) {
this.prs_playing.setVisibility(0);
this.play_btn_playback_online.setVisibility(0);
} else {
this.play_btn_playback_online.setVisibility(8);
this.prs_playing.setVisibility(8);
}
}
private void showLoadingShade() {
this.prs_loading.setMax(100);
this.prs_loading.setProgress(10);
ProgressThread progressThread = new ProgressThread();
this.pthread = progressThread;
progressThread.startThread();
}
private void displayLoadingShade() {
ProgressThread progressThread = this.pthread;
if (progressThread != null) {
progressThread.stopThread();
}
this.pthread = null;
this.prs_loading.setVisibility(8);
this.img_shade.setVisibility(8);
this.visible = true;
setImageVisible(true);
}
@Override
public void onResume() {
super.onResume();
MyCamera myCamera = this.mCamera;
if (myCamera != null) {
myCamera.registerIOSessionListener(this);
this.mCamera.registerPlayStateListener(this);
if (this.mCamera.mhiNvrdev != null) {
this.mCamera.mhiNvrdev.SetHiCameraObj(this.mCamera);
this.mCamera.mhiNvrdev.registerPlayNVRStateListener(this);
this.mCamera.mhiNvrdev.registerPlayBackNVRStateListener(this);
this.mCamera.mhiNvrdev.SetHiCameraAudioPB(0, true);
this.mCamera.mhiNvrdev.PlayLocal_Resume();
this.mCamera.mhiNvrdev.setLiveShowMonitor(this.mMonitor);
}
}
}
@Override
public void onPause() {
super.onPause();
if (!this.isDoPause) {
this.isDoPause = true;
return;
}
MyCamera myCamera = this.mCamera;
if (myCamera != null) {
if (this.model != 0) {
this.model = (short) 0;
this.oldTime = 0L;
}
if (myCamera.mhiNvrdev != null) {
byte[] longToByteArray4_Little = Packet.longToByteArray4_Little(this.file_infos.u32StartTime * 1000);
byte[] longToByteArray4_Little2 = Packet.longToByteArray4_Little(this.file_infos.u32StartTime);
byte[] longToByteArray4_Little3 = Packet.longToByteArray4_Little(this.file_infos.u32StopTime);
byte[] longToByteArray4_Little4 = Packet.longToByteArray4_Little(this.file_infos.u32StartPts[this.StreamType]);
HiLogcatUtil.e(this.file_infos.u32StartTime + Constants.COLON_SEPARATOR + this.file_infos.u32StopTime + "::" + this.file_infos.u32StartPts[this.StreamType] + "::::" + this.file_infos.u32StopPts[this.StreamType] + Constants.COLON_SEPARATOR + this.file_infos.u32StartTimefile + "::" + this.file_infos.u32StopTimefile);
this.mCamera.mhiNvrdev.stopPlayBack(this.chn, 2, longToByteArray4_Little2, longToByteArray4_Little3, longToByteArray4_Little4, longToByteArray4_Little, this.file_infos.sFilePath, this.StreamType, 1, this.file_infos.u8Crc, this.mstrdate.getBytes());
this.isReadyPlay = false;
this.mCamera.mhiNvrdev.unregisterPlayBackNVRStateListener(this);
this.mCamera.mhiNvrdev.unregisterPlayNVRStateListener(this);
this.mCamera.mhiNvrdev.stopPlaybackThread();
}
this.mCamera.unregisterIOSessionListener(this);
this.mCamera.unregisterPlayStateListener(this);
}
ProgressThread progressThread = this.pthread;
if (progressThread != null) {
progressThread.stopThread();
this.pthread = null;
}
setRequestedOrientation(1);
MyPlaybackGLMonitor myPlaybackGLMonitor = this.mMonitor;
if (myPlaybackGLMonitor != null) {
myPlaybackGLMonitor.FreeMonitor();
this.mMonitor = null;
}
finish();
}
@Override
public void onDestroy() {
super.onDestroy();
ConnectionChangeReceiver connectionChangeReceiver = this.myReceiver;
if (connectionChangeReceiver != null) {
unregisterReceiver(connectionChangeReceiver);
}
if (this.mHandler_lockScreen != null) {
this.root_lock_screen.setVisibility(8);
this.mHandler_lockScreen.removeCallbacksAndMessages(null);
}
OrientationWatchDog orientationWatchDog = this.mOrientationWatchDog;
if (orientationWatchDog != null) {
orientationWatchDog.stopWatch();
}
MyCamera myCamera = this.mCamera;
if (myCamera != null) {
myCamera.clearArrayMonitor();
this.mCamera.clearSingleMonitor();
}
}
public class ProgressThread extends HiThread {
private ProgressThread() {
}
@Override
public void run() {
while (this.isRunning) {
sleep(100);
Message obtainMessage = NVRPlaybackOnlineActivity.this.handler.obtainMessage();
obtainMessage.what = NVRPlaybackOnlineActivity.HANDLE_MESSAGE_PROGRESSBAR_RUN;
NVRPlaybackOnlineActivity.this.handler.sendMessage(obtainMessage);
}
}
}
public void resetMonitorSize() {
RelativeLayout.LayoutParams layoutParams;
if (this.mMonitor == null || this.video_width == 0 || this.video_height == 0) {
return;
}
displayLoadingShade();
getWindow().setFlags(1024, 1024);
if (this.hideUIMenu) {
layoutParams = new RelativeLayout.LayoutParams(-1, -1);
} else {
layoutParams = new RelativeLayout.LayoutParams(getWindowManager().getDefaultDisplay().getWidth(), getWindowManager().getDefaultDisplay().getHeight());
}
this.mMonitor.setLayoutParams(layoutParams);
}
public void NetworkError() {
showAlertnew(null, null, getString(R.string.disconnect), getString(R.string.finish), null, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialogInterface, int i) {
if (i == -2) {
NVRPlaybackOnlineActivity.this.finish();
} else {
if (i != -1) {
return;
}
NVRPlaybackOnlineActivity.this.finish();
}
}
});
}
public class ConnectionChangeReceiver extends BroadcastReceiver {
public ConnectionChangeReceiver() {
}
@Override
public void onReceive(Context context, Intent intent) {
ConnectivityManager connectivityManager = (ConnectivityManager) context.getSystemService("connectivity");
NetworkInfo networkInfo = connectivityManager.getNetworkInfo(0);
NetworkInfo networkInfo2 = connectivityManager.getNetworkInfo(1);
if (networkInfo == null || networkInfo.isConnected() || networkInfo2 == null || networkInfo2.isConnected()) {
return;
}
MyToast.showToast(context, NVRPlaybackOnlineActivity.this.getString(R.string.tips_wifi_connect_failed));
if (NVRPlaybackOnlineActivity.this.mCamera != null) {
byte[] longToByteArray4_Little = Packet.longToByteArray4_Little(NVRPlaybackOnlineActivity.this.file_infos.u32StartTime * 1000);
byte[] longToByteArray4_Little2 = Packet.longToByteArray4_Little(NVRPlaybackOnlineActivity.this.file_infos.u32StartTime);
byte[] longToByteArray4_Little3 = Packet.longToByteArray4_Little(NVRPlaybackOnlineActivity.this.file_infos.u32StopTime);
byte[] longToByteArray4_Little4 = Packet.longToByteArray4_Little(NVRPlaybackOnlineActivity.this.file_infos.u32StartPts[NVRPlaybackOnlineActivity.this.StreamType]);
HiLogcatUtil.e(NVRPlaybackOnlineActivity.this.file_infos.u32StartTime + Constants.COLON_SEPARATOR + NVRPlaybackOnlineActivity.this.file_infos.u32StopTime + "::" + NVRPlaybackOnlineActivity.this.file_infos.u32StartPts[NVRPlaybackOnlineActivity.this.StreamType] + "::::" + NVRPlaybackOnlineActivity.this.file_infos.u32StopPts[NVRPlaybackOnlineActivity.this.StreamType] + Constants.COLON_SEPARATOR + NVRPlaybackOnlineActivity.this.file_infos.u32StartTimefile + "::" + NVRPlaybackOnlineActivity.this.file_infos.u32StopTimefile);
NVRPlaybackOnlineActivity.this.mCamera.mhiNvrdev.stopPlayBack(NVRPlaybackOnlineActivity.this.chn, 2, longToByteArray4_Little2, longToByteArray4_Little3, longToByteArray4_Little4, longToByteArray4_Little, NVRPlaybackOnlineActivity.this.file_infos.sFilePath, NVRPlaybackOnlineActivity.this.StreamType, 1, NVRPlaybackOnlineActivity.this.file_infos.u8Crc, NVRPlaybackOnlineActivity.this.mstrdate.getBytes());
NVRPlaybackOnlineActivity.this.isReadyPlay = false;
}
NVRPlaybackOnlineActivity.this.NetworkError();
}
}
@Override
public boolean onTouch(View view, MotionEvent motionEvent) {
MyPlaybackGLMonitor myPlaybackGLMonitor;
if (view.getId() == R.id.monitor_playback_view) {
int pointerCount = motionEvent.getPointerCount();
if ((motionEvent.getAction() & 255) == 5 && 2 == pointerCount) {
this.mMonitor.setTouchMove(2);
for (int i = 0; i < pointerCount; i++) {
new Point((int) motionEvent.getX(i), (int) motionEvent.getY(i));
}
this.xlenOld = Math.abs(((int) motionEvent.getX(0)) - ((int) motionEvent.getX(1)));
int abs = Math.abs(((int) motionEvent.getY(0)) - ((int) motionEvent.getY(1)));
this.ylenOld = abs;
int i2 = this.xlenOld;
this.nLenStart = Math.sqrt((i2 * i2) + (abs * abs));
} else {
if ((motionEvent.getAction() & 255) == 2 && 2 == pointerCount) {
this.mMonitor.setTouchMove(2);
for (int i3 = 0; i3 < pointerCount; i3++) {
new Point((int) motionEvent.getX(i3), (int) motionEvent.getY(i3));
}
int abs2 = Math.abs(((int) motionEvent.getX(0)) - ((int) motionEvent.getX(1)));
int abs3 = Math.abs(((int) motionEvent.getY(0)) - ((int) motionEvent.getY(1)));
int abs4 = Math.abs(abs2 - this.xlenOld);
int abs5 = Math.abs(abs3 - this.ylenOld);
double d = abs2;
double d2 = abs3;
double sqrt = Math.sqrt((d * d) + (d2 * d2));
if (abs4 < 20 && abs5 < 20) {
return false;
}
if (sqrt > this.nLenStart) {
resetMonitorSize(true, sqrt);
} else {
resetMonitorSize(false, sqrt);
}
this.xlenOld = abs2;
this.ylenOld = abs3;
this.nLenStart = sqrt;
return true;
}
if (pointerCount == 1) {
int action = motionEvent.getAction();
if (action == 0) {
MyPlaybackGLMonitor myPlaybackGLMonitor2 = this.mMonitor;
if (myPlaybackGLMonitor2 != null) {
myPlaybackGLMonitor2.setTouchMove(0);
}
if (this.model == 0) {
}
} else if (action == 2 && (myPlaybackGLMonitor = this.mMonitor) != null && myPlaybackGLMonitor.getTouchMove() == 0 && (Math.abs(this.move_x - this.action_down_x) > 40.0f || Math.abs(this.move_y - this.action_down_y) > 40.0f)) {
this.mMonitor.setTouchMove(1);
}
}
}
}
return false;
}
public void resetMonitorSize(boolean z, double d) {
this.isLarge = z ? 1 : 2;
if (this.mMonitor.height == 0 && this.mMonitor.width == 0) {
initMatrix(this.mMonitor.screen_width, this.mMonitor.screen_height);
}
this.moveX = (int) (d / 2.0d);
this.moveY = (int) (((d * this.mMonitor.screen_height) / this.mMonitor.screen_width) / 2.0d);
if (z) {
if (this.mMonitor.width <= this.mMonitor.screen_width * 2 && this.mMonitor.height <= this.mMonitor.screen_height * 2) {
this.mMonitor.left -= this.moveX / 2;
this.mMonitor.bottom -= this.moveY / 2;
this.mMonitor.width += this.moveX;
this.mMonitor.height += this.moveY;
}
} else {
this.mMonitor.left += this.moveX / 2;
this.mMonitor.bottom += this.moveY / 2;
this.mMonitor.width -= this.moveX;
this.mMonitor.height -= this.moveY;
if (this.mMonitor.bottom + this.mMonitor.height < this.mMonitor.screen_height) {
MyPlaybackGLMonitor myPlaybackGLMonitor = this.mMonitor;
myPlaybackGLMonitor.bottom = myPlaybackGLMonitor.screen_height - this.mMonitor.height;
}
if (this.mMonitor.left + this.mMonitor.width < this.mMonitor.screen_width) {
MyPlaybackGLMonitor myPlaybackGLMonitor2 = this.mMonitor;
myPlaybackGLMonitor2.left = myPlaybackGLMonitor2.screen_width - this.mMonitor.width;
}
}
if (this.mMonitor.left > 0 || this.mMonitor.width < this.mMonitor.screen_width || this.mMonitor.height < this.mMonitor.screen_height || this.mMonitor.bottom > 0) {
initMatrix(this.mMonitor.screen_width, this.mMonitor.screen_height);
}
if (this.mMonitor.width > this.mMonitor.screen_width) {
this.mMonitor.setState(1);
} else {
this.mMonitor.setState(0);
}
MyPlaybackGLMonitor myPlaybackGLMonitor3 = this.mMonitor;
myPlaybackGLMonitor3.setMatrix(myPlaybackGLMonitor3.left, this.mMonitor.bottom, this.mMonitor.width, this.mMonitor.height);
}
private void initMatrix(int i, int i2) {
this.mMonitor.left = 0;
this.mMonitor.bottom = 0;
this.mMonitor.width = i;
this.mMonitor.height = i2;
}
@Override
public void onClick(View view) {
switch (view.getId()) {
case R.id.iv_adaption:
handPictureSize();
return;
case R.id.iv_snapshot:
if (this.isPlaying && this.isReadyPlay && System.currentTimeMillis() - this.lastClickTime > 500) {
this.lastClickTime = System.currentTimeMillis();
if (HiTools.HiPermission(this, this, 1, PERMISSION_REQUEST_CODE_STORAGE)) {
return;
}
clickSnapshot();
return;
}
return;
case R.id.iv_speed:
handFast();
return;
case R.id.monitor_playback_view:
LinearLayout linearLayout = this.mllPlay;
linearLayout.setVisibility(linearLayout.getVisibility() == 0 ? 8 : 0);
ImageView imageView = this.ivAdaption;
imageView.setVisibility(imageView.getVisibility() != 0 ? 0 : 8);
this.ivSnapshot.setVisibility(this.mllPlay.getVisibility());
return;
case R.id.root_lock_screen:
OrientationWatchDog orientationWatchDog = this.mOrientationWatchDog;
if (orientationWatchDog != null) {
orientationWatchDog.setLockScreen(true);
}
this.root_lock_screen.setVisibility(8);
this.mHandler_lockScreen.removeCallbacksAndMessages(null);
return;
default:
return;
}
}
private void handPictureSize() {
View inflate = View.inflate(this, R.layout.pup_landscape_adaption, null);
this.mPopupWindow = new PopupWindow(inflate);
this.mPopupWindow.setBackgroundDrawable(new ColorDrawable(0));
this.mPopupWindow.setOutsideTouchable(true);
this.mPopupWindow.setHeight(-1);
this.mPopupWindow.setWidth(HiTools.dip2px(this, 250.0f));
this.mPopupWindow.setAnimationStyle(R.style.AnimTopRight);
this.mPopupWindow.showAtLocation(inflate, 17, getWindowManager().getDefaultDisplay().getWidth(), 0);
this.tvFill = (TextView) inflate.findViewById(R.id.tv_fill);
this.tvAdaption = (TextView) inflate.findViewById(R.id.tv_adaption);
int i = this.mPictureSize;
if (i == 0) {
this.tvFill.setSelected(true);
this.tvAdaption.setSelected(false);
} else if (i == 1) {
this.tvFill.setSelected(false);
this.tvAdaption.setSelected(true);
}
this.tvFill.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
NVRPlaybackOnlineActivity.this.tvFill.setSelected(true);
NVRPlaybackOnlineActivity.this.tvAdaption.setSelected(false);
if (NVRPlaybackOnlineActivity.this.mCamera != null) {
SharePreUtils.putInt(HiDataValue.CACHE, NVRPlaybackOnlineActivity.this, "pictureSize" + HiDataValue.userAccount + NVRPlaybackOnlineActivity.this.mCamera.getUid(), 0);
}
NVRPlaybackOnlineActivity.this.mPictureSize = 0;
NVRPlaybackOnlineActivity nVRPlaybackOnlineActivity = NVRPlaybackOnlineActivity.this;
nVRPlaybackOnlineActivity.handLandScape(nVRPlaybackOnlineActivity.mPictureSize);
}
});
this.tvAdaption.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
NVRPlaybackOnlineActivity.this.tvFill.setSelected(false);
NVRPlaybackOnlineActivity.this.tvAdaption.setSelected(true);
if (NVRPlaybackOnlineActivity.this.mCamera != null) {
SharePreUtils.putInt(HiDataValue.CACHE, NVRPlaybackOnlineActivity.this, "pictureSize" + HiDataValue.userAccount + NVRPlaybackOnlineActivity.this.mCamera.getUid(), 1);
}
NVRPlaybackOnlineActivity.this.mPictureSize = 1;
NVRPlaybackOnlineActivity nVRPlaybackOnlineActivity = NVRPlaybackOnlineActivity.this;
nVRPlaybackOnlineActivity.handLandScape(nVRPlaybackOnlineActivity.mPictureSize);
}
});
}
public void clickSnapshot() {
if (this.mCamera != null) {
if (HiTools.isSDCardValid()) {
File file = new File(HiDataValue.getPathNVRSnapshot(this.mCamera.getUid(), this.chn, this));
if (!file.exists()) {
file.mkdirs();
}
String fileNameWithTime = HiTools.getFileNameWithTime(0);
String str = file.getAbsoluteFile() + "/" + fileNameWithTime;
MyCamera myCamera = this.mCamera;
Bitmap snapshot = myCamera != null ? myCamera.mhiNvrdev.getSnapshot(0) : null;
if (snapshot != null && HiTools.saveImage(str, snapshot)) {
SaveToPhone(str, fileNameWithTime);
Toast.makeText(this, getText(R.string.tips_snapshot_success), 0).show();
return;
} else {
Toast.makeText(this, getText(R.string.tips_snapshot_failed), 0).show();
return;
}
}
Toast.makeText(this, getText(R.string.tips_no_sdcard).toString(), 0).show();
}
}
private void SaveToPhone(final String str, final String str2) {
new Thread(new Runnable() {
@Override
public void run() {
try {
MediaStore.Images.Media.insertImage(NVRPlaybackOnlineActivity.this.getContentResolver(), str, str2, (String) null);
} catch (Exception e) {
e.printStackTrace();
}
NVRPlaybackOnlineActivity.this.sendBroadcast(new Intent("android.intent.action.MEDIA_SCANNER_SCAN_FILE", Uri.parse("file://" + str)));
}
}).start();
}
private void handFast() {
if (this.mIsEnd) {
return;
}
int i = this.mSpeed;
if (i == 0) {
this.mSpeed = 2;
this.mCamera.mhiNvrdev.PlayLocal_Speed(2, 5);
this.mCamera.mhiNvrdev.SetHiCameraTimeSpeedPlay(true);
} else if (i == 2) {
this.mSpeed = 4;
this.mCamera.mhiNvrdev.PlayLocal_Speed(4, 0);
this.mCamera.mhiNvrdev.SetHiCameraTimeSpeedPlay(true);
} else {
if (i != 4) {
return;
}
this.mSpeed = 0;
this.mCamera.mhiNvrdev.PlayLocal_Speed(0, 0);
this.mCamera.mhiNvrdev.SetHiCameraTimeSpeedPlay(false);
}
}
public void handLandScape(int i) {
RelativeLayout.LayoutParams layoutParams;
if (this.mMonitor == null) {
return;
}
this.isHideNavigation = hideBottomUIMenu();
this.mMonitor.setmIsFullScreen(1);
getWindow().setFlags(1024, 1024);
DisplayMetrics displayMetrics = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(displayMetrics);
MyPlaybackGLMonitor myPlaybackGLMonitor = this.mMonitor;
int i2 = displayMetrics.heightPixels;
myPlaybackGLMonitor.screen_height = i2;
this.PictureRealHeight = i2;
MyPlaybackGLMonitor myPlaybackGLMonitor2 = this.mMonitor;
int i3 = displayMetrics.widthPixels;
myPlaybackGLMonitor2.screen_width = i3;
this.PictureRealWidth = i3;
if (HiTools.isAllScreenDevice(this)) {
layoutParams = new RelativeLayout.LayoutParams(-1, -1);
if (this.isHideNavigation) {
MyPlaybackGLMonitor myPlaybackGLMonitor3 = this.mMonitor;
int navigationBarHeight = displayMetrics.widthPixels + HiTools.getNavigationBarHeight(this);
myPlaybackGLMonitor3.screen_width = navigationBarHeight;
this.PictureRealWidth = navigationBarHeight;
}
} else {
layoutParams = new RelativeLayout.LayoutParams(getWindowManager().getDefaultDisplay().getWidth(), getWindowManager().getDefaultDisplay().getHeight());
}
if (i == 1) {
int Getwh = HiTools.Getwh(this.PictureRealWidth, this.PictureRealHeight, this.video_width, this.video_height);
if (Getwh == 2) {
this.mMonitor.screen_height = HiTools.getVideoshowh(this.PictureRealWidth, this.PictureRealHeight, this.video_width, this.video_height);
layoutParams.setMargins(0, (this.PictureRealHeight - this.mMonitor.screen_height) / 2, 0, (this.PictureRealHeight - this.mMonitor.screen_height) / 2);
} else if (Getwh == 3) {
this.mMonitor.screen_width = HiTools.getVideoshoww(this.PictureRealWidth, this.PictureRealHeight, this.video_width, this.video_height);
layoutParams.setMargins((this.PictureRealWidth - this.mMonitor.screen_width) / 2, 0, (this.PictureRealWidth - this.mMonitor.screen_width) / 2, 0);
} else {
layoutParams.setMargins(0, 0, 0, 0);
}
}
this.mMonitor.setLayoutParams(layoutParams);
initMatrix(this.mMonitor.screen_width, this.mMonitor.screen_height);
this.mMonitor.setState(0);
MyPlaybackGLMonitor myPlaybackGLMonitor4 = this.mMonitor;
myPlaybackGLMonitor4.setMatrix(myPlaybackGLMonitor4.left, this.mMonitor.bottom, this.mMonitor.width, this.mMonitor.height);
}
@Override
public void changedScreenDirection(int i) {
if (this.isReadyPlay) {
if (i == 90) {
this.isLeft = false;
new Handler().postDelayed(new Runnable() {
@Override
public void run() {
if (NVRPlaybackOnlineActivity.this.isLarge == 1) {
NVRPlaybackOnlineActivity nVRPlaybackOnlineActivity = NVRPlaybackOnlineActivity.this;
nVRPlaybackOnlineActivity.resetMonitorSize(true, nVRPlaybackOnlineActivity.nLenStart);
} else if (NVRPlaybackOnlineActivity.this.isLarge == 2) {
NVRPlaybackOnlineActivity nVRPlaybackOnlineActivity2 = NVRPlaybackOnlineActivity.this;
nVRPlaybackOnlineActivity2.resetMonitorSize(false, nVRPlaybackOnlineActivity2.nLenStart);
}
}
}, 200L);
setRequestedOrientation(8);
if (!this.isFirstRevolveLand) {
this.isFirstRevolveLand = true;
}
if (this.root_lock_screen.getVisibility() == 0) {
this.mHandler_lockScreen.removeCallbacksAndMessages(null);
this.mHandler_lockScreen.sendEmptyMessageDelayed(1, 3000L);
return;
} else {
this.mHandler_lockScreen.removeCallbacksAndMessages(null);
this.mHandler_lockScreen.sendEmptyMessageDelayed(0, 3000L);
return;
}
}
if (i == 270) {
this.isLeft = true;
new Handler().postDelayed(new Runnable() {
@Override
public void run() {
if (NVRPlaybackOnlineActivity.this.isLarge == 1) {
NVRPlaybackOnlineActivity nVRPlaybackOnlineActivity = NVRPlaybackOnlineActivity.this;
nVRPlaybackOnlineActivity.resetMonitorSize(true, nVRPlaybackOnlineActivity.nLenStart);
} else if (NVRPlaybackOnlineActivity.this.isLarge == 2) {
NVRPlaybackOnlineActivity nVRPlaybackOnlineActivity2 = NVRPlaybackOnlineActivity.this;
nVRPlaybackOnlineActivity2.resetMonitorSize(false, nVRPlaybackOnlineActivity2.nLenStart);
}
}
}, 200L);
setRequestedOrientation(0);
if (this.isFirstRevolveLand) {
if (this.root_lock_screen.getVisibility() == 0) {
this.mHandler_lockScreen.removeCallbacksAndMessages(null);
this.mHandler_lockScreen.sendEmptyMessageDelayed(1, 3000L);
} else {
this.mHandler_lockScreen.removeCallbacksAndMessages(null);
this.mHandler_lockScreen.sendEmptyMessageDelayed(0, 3000L);
}
}
}
}
}
@Override
public void callbackPlayUTC(HiCamera hiCamera, int i) {
short s;
if (2 == this.mCamera.getConnectMode() || this.mCamera.isLanConnect() || this.mCamera != hiCamera || (s = this.model) == 3 || s == 0) {
return;
}
if (this.oldTime == 0) {
this.oldTime = i;
}
int i2 = (int) ((i - this.oldTime) / 1000);
Message obtainMessage = this.handler.obtainMessage();
obtainMessage.what = HANDLE_MESSAGE_SEEKBAR_RUN;
obtainMessage.arg1 = i2;
this.handler.sendMessage(obtainMessage);
}
@Override
public void callbackPlayUTC2(HiCamera hiCamera, int i, int i2) {
short s;
if ((2 == this.mCamera.getConnectMode() || this.mCamera.isLanConnect()) && this.mCamera == hiCamera && (s = this.model) != 3 && s != 0) {
Message obtainMessage = this.handler.obtainMessage();
obtainMessage.what = HANDLE_MESSAGE_SEEKBAR_RUN;
obtainMessage.arg1 = i2 / 1000;
this.handler.sendMessage(obtainMessage);
}
}
@Override
public void callbackState(HiCamera hiCamera, int i, int i2, int i3) {
if (this.mCamera != hiCamera) {
return;
}
Message obtainMessage = this.handler.obtainMessage();
obtainMessage.what = i;
obtainMessage.arg1 = i2;
obtainMessage.arg2 = i3;
this.handler.sendMessage(obtainMessage);
}
@Override
public void callbackState(HiNVRDev hiNVRDev, int i, int i2, int i3, int i4) {
HiLogcatUtil.e("::::" + i2 + ":::" + i3 + ":::" + i4);
Message obtainMessage = this.handler.obtainMessage();
obtainMessage.what = i2;
obtainMessage.arg1 = i3;
obtainMessage.arg2 = i4;
this.handler.sendMessage(obtainMessage);
}
@Override
public void callbackPlayUTC(HiNVRDev hiNVRDev, int i, int i2) {
short s = this.model;
if (s == 3 || s == 0) {
return;
}
if (this.oldTime == 0) {
this.oldTime = i2;
}
int i3 = (int) ((i2 - this.oldTime) / 1000);
Message obtainMessage = this.handler.obtainMessage();
obtainMessage.what = HANDLE_MESSAGE_SEEKBAR_RUN;
obtainMessage.arg1 = i3;
this.handler.sendMessage(obtainMessage);
}
@Override
public void callbackplaylocal(HiCamera hiCamera, int i, int i2, int i3, long j, int i4, int i5) {
HiLogcatUtil.e(hiCamera.getUid() + Constants.COLON_SEPARATOR + i + Constants.COLON_SEPARATOR + i2 + Constants.COLON_SEPARATOR + i3 + Constants.COLON_SEPARATOR + j + Constants.COLON_SEPARATOR + i4 + Constants.COLON_SEPARATOR + i5);
if (j != 0) {
if (this.oldTime == 0) {
this.oldTime = j;
this.subtime = 0;
}
this.subtime = (int) ((j - this.oldTime) / 1000);
}
Message obtain = Message.obtain();
if (i5 == 31) {
obtain.what = HANDLE_MESSAGE_PLAYONLINE_LODING;
} else if (i5 != 32) {
switch (i5) {
case -1:
case 5:
obtain.what = 1101;
break;
case 0:
this.oldTime = 0L;
obtain.what = 10;
break;
case 1:
this.isReadyPlay = true;
obtain.what = HANDLE_MESSAGE_SEEKBAR_START;
obtain.arg1 = i;
obtain.arg2 = i2;
break;
case 2:
obtain.arg1 = this.subtime;
obtain.what = HANDLE_MESSAGE_PLAYLOCAL_STATE_ING;
break;
case 3:
obtain.what = HANDLE_MESSAGE_SEEKBAR_END;
break;
case 4:
obtain.what = HANDLE_MESSAGE_PLAYLOCAL_STATE_STOP;
break;
}
} else {
obtain.what = HANDLE_MESSAGE_PLAYONLINE_PLAYING;
}
this.handler.sendMessage(obtain);
}
@Override
public void callbackplaylocalExt(HiCamera hiCamera, int i, int i2, int i3, long j, int i4, int i5, String str) {
HiLogcatUtil.e(hiCamera.getUid() + Constants.COLON_SEPARATOR + i + Constants.COLON_SEPARATOR + i2 + Constants.COLON_SEPARATOR + i3 + Constants.COLON_SEPARATOR + j + Constants.COLON_SEPARATOR + i4 + Constants.COLON_SEPARATOR + i5 + Constants.COLON_SEPARATOR + str);
Bundle bundle = new Bundle();
bundle.putString("data", str);
Message obtainMessage = this.handler.obtainMessage();
obtainMessage.what = i5;
obtainMessage.setData(bundle);
this.mhandlerPF.sendMessage(obtainMessage);
}
@Override
public void receiveIOCtrlData(HiCamera hiCamera, int i, byte[] bArr, int i2) {
HiLog.e("" + i + "::" + i2);
if (this.mCamera != hiCamera) {
return;
}
Bundle bundle = new Bundle();
bundle.putByteArray("data", bArr);
Message obtainMessage = this.handler.obtainMessage();
obtainMessage.what = i;
obtainMessage.arg2 = i2;
obtainMessage.setData(bundle);
this.handler.sendMessage(obtainMessage);
}
@Override
public void receiveSessionState(HiCamera hiCamera, int i) {
MyCamera myCamera = this.mCamera;
if (hiCamera != myCamera || myCamera == null) {
return;
}
Message obtain = Message.obtain();
obtain.what = HiDataValue.HANDLE_MESSAGE_SESSION_STATE;
obtain.arg1 = i;
obtain.obj = hiCamera;
this.handler.sendMessage(obtain);
}
private String HiGetFileTime(long j, boolean z) {
int i;
int i2;
int i3 = 0;
if (j > 0) {
int i4 = (int) (j / 3600);
long j2 = j % 3600;
i2 = (int) (j2 / 60);
i = (int) (j2 % 60);
i3 = i4;
} else {
i = 0;
i2 = 0;
}
return getFileTime(i3, i2, i, z);
}
private String getFileTime(int i, int i2, int i3, boolean z) {
String str;
String str2 = "";
if (z) {
if (i < 10) {
str2 = "" + PushConstants.PUSH_TYPE_NOTIFY + i + Constants.COLON_SEPARATOR;
} else {
str2 = "" + i + Constants.COLON_SEPARATOR;
}
}
if (i2 < 10) {
str = str2 + PushConstants.PUSH_TYPE_NOTIFY + i2 + Constants.COLON_SEPARATOR;
} else {
str = str2 + i2 + Constants.COLON_SEPARATOR;
}
if (i3 < 10) {
return str + PushConstants.PUSH_TYPE_NOTIFY + i3;
}
return str + i3;
}
public void renameFile(String str, String str2) {
if (TextUtils.isEmpty(str) || TextUtils.isEmpty(str2)) {
return;
}
new File(str).renameTo(new File(str2));
}
@Override
public void onRequestPermissionsResult(int i, String[] strArr, int[] iArr) {
super.onRequestPermissionsResult(i, strArr, iArr);
if (i == PERMISSION_REQUEST_CODE_STORAGE) {
int length = iArr.length;
boolean z = false;
int i2 = 0;
while (true) {
if (i2 >= length) {
z = true;
break;
} else if (iArr[i2] != 0) {
break;
} else {
i2++;
}
}
if (z) {
return;
}
HiTools.Hi_GoToSetting(strArr, this, this);
}
}
public void setDoPause(boolean z) {
this.isDoPause = z;
}
}