asrCallback?(asrText)
}
if let translate = model.translateResult,let text = translate.text,!text.isEmpty{
- DCLogger.debug("translate = \(text)")
+// DCLogger.debug("translate = \(text)")
translateSplitCallback?(DCAsrModel(text: text, index: Int(translate.definiteIndex), definite: translate.definite))
let msg = translateList.firstIndex (where: { (str,idx) in
return idx == translate.definiteIndex;
}
}
static func gotoSubTitle(){
- if CCConfig.sdkType == .joy{
+ if CCConfig.sdkType == .lianJuXing{
if #available(iOS 15.0, *) {
- App.shared.goToPage(JoySubTitleVC())
+ App.shared.goToPage(PbSubTitleVC())
} else {
// Fallback on earlier versions
}
}
else{
-
+ YLprogressHUD.showAutoHiden("当前设备不支持字幕翻译")
}
}
}
}
}
@objc func subTitleAction(){
- CCPage.gotoSubTitle()
+ if CCBleManager.shared.isConected(mac: device.mac){
+ CCPage.gotoSubTitle()
+ }
+
}
}
languageItem.leftLabel.language = cache.lan_form
languageItem.rightLabel.language = cache.lan_to
}
- override func viewDidAppear(_ animated: Bool) {
- super.viewDidAppear(animated)
-
- }
- override func viewDidDisappear(_ animated: Bool) {
- super.viewDidDisappear(animated)
- sdk.stopEarRecord()
- }
+
override func setupViews() {
view.backgroundColor = .color(.bgColor)
navBar.do { v in
v.addSubview(languageItem)
v.rightView.isHidden = false
-// v.rightView.setImage(UIImage(named: "set_right"), for: .normal)
- navBar.rightView.setImage(UIImage(named: "help_icon"), for: .normal)
+ v.rightView.setImage(UIImage(named: "set_right"), for: .normal)
}
view.addSubviews([toolBar,tableView])
v.rightItem.isHidden = true
}
languageItem.do { v in
- v.languageChange = { (from,to) in
+ v.languageChange = {[weak self] (from,to) in
+ guard let self = self else{return}
let cache = SubTitleCache.shared.get()
cache.lan_form = from
cache.lan_to = to
SubTitleCache.shared.save(cache)
+ restart()
}
}
tableView.do { v in
// make.size.equalTo(10)
// make.center.equalToSuperview()
// }
- pipManager.setupPictureInPicture(soureceView: self.view)
+ pipManager.setupPictureInPicture(soureceView: self.navigationController!.view)
}
override func setupLayout() {
languageItem.snp.makeConstraints { make in
}
override func navRightViewTapped() {
- if !languageItem.enable {
- return
- }
let vc = SubTitleSetVC()
+ vc.languageChanged = {[weak self] in
+ guard let self = self else{return}
+ let cache = SubTitleCache.shared.get()
+ languageItem.leftLabel.language = cache.lan_form
+ languageItem.rightLabel.language = cache.lan_to
+ restart()
+ }
+ vc.soureChanged = {[weak self] in
+ guard let self = self else{return}
+ restart()
+ }
App.shared.goToPage(vc)
}
}
}
}
+ func restart(){
+ sdk.stopEarRecord()
+ DispatchQueue.main.asyncAfter(deadline:.now() + 1) {
+ Logger.debug("延迟2秒后执行")
+ self.sdk.startEarRecord(from: self.languageItem.leftLabel.language, to: self.languageItem.rightLabel.language)
+ }
+
+ }
}
@available(iOS 15.0, *)
extension PbSubTitleVC:RecordBarDelegate{
func recordBarLanguageChange(_ bar: RecordBar) {
-
sdk.stopEarRecord()
sdk.startEarRecord(from: languageItem.leftLabel.language, to: languageItem.rightLabel.language)
}
func recordBar(_ bar: RecordBar, stateChange state: RecordBarSate) {
if state == .start {
sdk.startEarRecord(from: languageItem.leftLabel.language, to: languageItem.rightLabel.language)
- languageItem.enable = false
- navBar.rightView.alpha = 0.5
}
else if state == .stop{
sdk.stopEarRecord()
- languageItem.enable = true
- navBar.rightView.alpha = 1
}
}
}
func initSdk(){
DcCall.shared.start()
DCSdk.shared.initSDK()
- DCLogger.isDebug = false
+ DCLogger.isDebug = true
DCSdk.shared.authCallback = {[weak self] (code,msg)in
DCLogger.debug(code,msg)
guard let self = self else{return}
// DCBleRecord.shared.translateDataCallback = { data in
// PcmSound.sharedInstance().feed(data)
// }
-// DCBleRecord.shared.codeCallback = { [weak self] code in
-// guard let self = self else{return}
-// if code == 20002 || code == 20003{
-// if let model = dataList.last,model.send.isEmpty{
-// dataList.removeLast()
-// refreshData()
-// }
-// }
-// }
+ DCBleRecord.shared.codeCallback = { [weak self] code in
+ guard let self = self else{return}
+ if code == 20002 || code == 20003{
+ Logger.debug("录音停止")
+ }
+ }
DCBleRecord.shared.filePathCallBack = { [weak self] path in
guard let self = self else{return}
// self.recordBtn.isSelected = false
func startEarRecord(from:CCAiLanguage,to:CCAiLanguage) {
recording = true
- dataList.removeAll()
+ dataList.removeAll()//字幕闪退
recordNeedReloadData?()
DCBleRecord.shared.fromLanguage = from.value
override func viewDidLoad() {
super.viewDidLoad()
view.addSubviews([textView,translateTextView])
- view.backgroundColor = .rgb(0x717171)
+ view.backgroundColor = .black
reset()
}
let tableView = UITableView(frame: .zero, style: .plain)
var list:[SubTitleSetCellType] = [.language,.soure,.showType,.font]
let imgPicker = ImagePickerManager()
+ var languageChanged:(()->Void)?
+ var soureChanged:(()->Void)?
override func viewDidLoad() {
super.viewDidLoad()
SubTitleCache.shared.save(cache)
tableView.reloadData()
+ languageChanged?()
}
}
cache.sourceType = list.first(where: {$0.title == value})!
SubTitleCache.shared.save(cache)
tableView.reloadData()
+ soureChanged?()
}
}
@objc func showTypeAction(){
let switcIcon = UIImageView()
var languageChange:((_ from:CCAiLanguage,_ to:CCAiLanguage)->Void)?
- var enable:Bool = true{
- didSet{
- self.alpha = enable ? 1:0.5
- }
- }
+// var enable:Bool = true{
+// didSet{
+// self.alpha = enable ? 1:0.5
+// }
+// }
override func setupViews() {
addSubviews([bottonView])
}
}
@objc func switchAction(){
- if !enable {
- return
- }
+// if !enable {
+// return
+// }
let text1 = leftLabel.language
let text2 = rightLabel.language
leftLabel.language = text2
languageChange?(leftLabel.language,rightLabel.language)
}
@objc func leftAction(){
- if !enable {
- return
- }
+// if !enable {
+// return
+// }
let v = LanguagePickerView(languages: CCAiLanguage.all,isLeft: true,left: leftLabel.language,right: rightLabel.language)
v.selectedIndex = v.list.firstIndex(where: {$0.title == leftLabel.language.title}) ?? 0
v.show()
}
}
@objc func rightAction(){
- if !enable {
- return
- }
+// if !enable {
+// return
+// }
let v = LanguagePickerView(languages: CCAiLanguage.all,isLeft: false,left: leftLabel.language,right: rightLabel.language)
v.selectedIndex = v.list.firstIndex(where: {$0.title == rightLabel.language.title}) ?? 0
v.show()