Heiko

Results 19 comments of Heiko

知道原因了,页面最外层不能用StatelessWidget,要用StatefulWidget

似乎不行,使用LinearLayoutManager的时候,小于1dp,比如0.3dp,分割线就直接不显示了。

我已解决,可以看我的博客 : https://blog.csdn.net/EthanCo/article/details/125802505

无论我怎么调整`setDefaultRotateType`都没有用,相册中就是以竖屏显示着,很怪。 我在电脑上,[使用ffmpeg,将平板里的视频旋转下角度](https://blog.csdn.net/shaosunrise/article/details/122006306) `ffmpeg -i abc.mp4 -vf "transpose=1" abc-r90.mp4` 然后再导入到平板中,相册上默认就是以横屏显示的了 平板型号是华为MatePad Pro

使用[MediaInfo](https://www.onlinedown.net/soft/49304.htm)查看视频信息可以发现 原本的视频 宽 : 720px,高1280px,画面比例0.562 旋转90角度后的视频 宽1280px,高720px,画面比例16:9 ![](https://tuchuangs.com/imgs/2022/08/24/9e5b58a1792c3c14.png)

最终定位到代码 `CameraClient.kt`中的`initEncodeProcessor`函数 ```kotlin private fun initEncodeProcessor() { releaseEncodeProcessor() val encodeWidth = if (isEnableGLEs) { mRequest!!.previewHeight } else { mRequest!!.previewWidth } val encodeHeight = if (isEnableGLEs) { mRequest!!.previewWidth } else {...

具体表现 修改代码前,录制出的usb摄像头视频,宽480px,高640px ![](https://tuchuangs.com/imgs/2022/08/24/17f19d906ce02b1d.jpg) 修改代码后,`encodeWidth = mRequest!!.previewWidth`并且`encodeHeight = mRequest!!.previewHeight`情况下,录制出来的usb摄像头视频,宽640px,高480px ![](https://tuchuangs.com/imgs/2022/08/24/2dcd8b8c998d72fb.jpg)

默认情况下,Halo-Turbo是用于接收、发送String类型数据,每条数据的结尾都会加上`\n`用于区分多条数据。(如果是普通的Socket 发送数据给Halo-Turbo,普通Socket发送的数据在发送时需要手动在数据末尾添加`\n`) 如果需要自定义分隔标识符,可以进行如下设置。 ` builder.setCodec(new TextLineCodecFactory( Charset.forName(编码格式 - 比如UTF-8), encode的分隔标识符, decode的分隔标识符) ` 如果不是发送String类型的数据,需要通过builder.setCodec设置不同的解码类 TextLineCodecFactory:基于文本的,根据回车换行来断点传输数据 ProtocolCodecFactory:自定义协议的编解码数据传输 ObjectSerializationCodecFactory:对象序列化传输 DemuxingProtocolCodecFactory:复用传输