添加硬件解码设置菜单

This commit is contained in:
sifacaii 2022-09-02 19:12:18 +08:00
parent 1e21d0beaf
commit b53d813074
3 changed files with 22 additions and 17 deletions

View File

@ -55,23 +55,32 @@ public class BaseActivity extends AppCompatActivity implements CustomAdapt {
//actionBar设置菜单
actionBarSetBtn = findViewById(R.id.actionBar_setBtn);
actionBarSetBtn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
settingMenu.show();
}
});
actionBarSetBtn.setOnClickListener(actionBarSetBtnOnclick);
settingMenu = new PopupMenu(this,actionBarSetBtn);
settingMenu.getMenuInflater().inflate(R.menu.activebar_menu,settingMenu.getMenu());
settingMenu.setOnMenuItemClickListener(actionBarSetBtnOnclick);
settingMenu.setOnMenuItemClickListener(settingMenuItemOnclick);
}
}
private PopupMenu.OnMenuItemClickListener actionBarSetBtnOnclick = new PopupMenu.OnMenuItemClickListener() {
private View.OnClickListener actionBarSetBtnOnclick = new View.OnClickListener() {
@Override
public void onClick(View view) {
settingMenu.show();
Menu setmenu = settingMenu.getMenu();
setmenu.findItem(R.id.actionBar_option_HAACC).setChecked(JfClient.config.isHAACC());
setmenu.findItem(R.id.actionBar_option_FORCE_HAACC).setChecked(JfClient.config.isFORCE_HAACC());
}
};
private PopupMenu.OnMenuItemClickListener settingMenuItemOnclick = new PopupMenu.OnMenuItemClickListener() {
@Override
public boolean onMenuItemClick(MenuItem menuItem) {
if(menuItem.getItemId() == R.id.activeBar_option_logout){
logout();
}else if(menuItem.getItemId() == R.id.actionBar_option_HAACC){
JfClient.config.setHAACC(!JfClient.config.isHAACC());
}else if(menuItem.getItemId() == R.id.actionBar_option_FORCE_HAACC){
JfClient.config.setFORCE_HAACC(!JfClient.config.isFORCE_HAACC());
}
return true;
}

View File

@ -5,7 +5,6 @@ import android.net.Uri;
import android.os.Bundle;
import android.os.Handler;
import android.os.Looper;
import android.os.Message;
import android.util.Log;
import android.view.KeyEvent;
import android.view.View;
@ -13,20 +12,16 @@ import android.widget.FrameLayout;
import android.widget.ImageView;
import android.widget.LinearLayout;
import android.widget.ProgressBar;
import android.widget.RelativeLayout;
import android.widget.SeekBar;
import android.widget.TextView;
import org.videolan.libvlc.LibVLC;
import org.videolan.libvlc.Media;
import org.videolan.libvlc.MediaFactory;
import org.videolan.libvlc.MediaPlayer;
import org.videolan.libvlc.util.VLCVideoLayout;
import java.util.ArrayList;
import java.util.List;
import java.util.Timer;
import java.util.TimerTask;
public class VlcPlayerActivity extends BaseActivity implements MediaPlayer.EventListener
, View.OnClickListener {
@ -420,7 +415,7 @@ public class VlcPlayerActivity extends BaseActivity implements MediaPlayer.Event
private Media getMedia(){
Uri uri = Uri.parse(currItem.Url);
Media media = new Media(libVLC,uri);
media.setHWDecoderEnabled(true,false);
media.setHWDecoderEnabled(JfClient.config.isHAACC(),JfClient.config.isFORCE_HAACC());
//media.addOption(":codec=mediacodec_ndk,mediacodec_jni,none"); //硬件加速
//media.addOption(":start-time=${start/1000L}"); //设置开始位置
return media;

View File

@ -2,19 +2,20 @@
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:id="@+id/actionBar_option_HAACC"
android:orderInCategory="1"
android:orderInCategory="0"
android:checkable="true"
android:title="硬解解码" />
<item
android:id="@+id/actionBar_option_FORCE_HAACC"
android:orderInCategory="2"
android:checkable="false"
android:orderInCategory="1"
android:checkable="true"
android:title="强制硬解解码" />
<item
android:id="@+id/activeBar_option_logout"
android:orderInCategory="9"
android:checkable="true"
android:title="注销" />
</menu>