Commit graph

782 commits

Author SHA1 Message Date
Barry
14b572c640 update:更换logo 2019-06-23 11:41:15 +08:00
Barry
06c4f45baf update:更换logo 2019-06-23 11:25:10 +08:00
Barry
42c1d810a4 add:mac版本信息 2019-06-23 09:03:08 +08:00
Barry
9a0d514bad update:windows版本描述修正 2019-06-23 08:39:21 +08:00
Barry
54aa6ec053 update:更新readme下载链接 2019-06-22 22:35:19 +08:00
Barry
5b88e6dc94 add:license 2019-06-22 21:48:53 +08:00
Barry
e1c3b14ebb update:更新编译说明 2019-06-22 21:35:15 +08:00
Barry
5b3b87cf7c fix:删除qml相关内容
qml放在qrc里面,会导致release模式下,qrc中的qml等资源被归类到sources目录中
这是qt为了编译qrc里面的qml中自动的操作,而且我们没有办法通过宏控制,所以舍弃它
2019-06-22 21:29:39 +08:00
Barry
3df69eab95 update:更新readme 2019-06-22 19:41:47 +08:00
Barry
4aa47ec3d1 add:windows平台版本说明 2019-06-22 09:59:26 +08:00
Barry
13d93808b6 update:关闭游戏映射 2019-06-22 09:30:20 +08:00
Barry
3b99725009 add:增加效果图 2019-06-22 09:27:33 +08:00
Barry
e4037064a8 fix:mac编译不过 2019-06-22 16:16:26 +08:00
Barry
503e0f22c5 update:更新注释 2019-06-22 15:16:08 +08:00
Barry
710f566d2f update:更新语言 2019-06-22 15:11:30 +08:00
Barry
4c4d0a0b2f fix:QMessageBox颜色不统一 2019-06-22 14:19:55 +08:00
Barry
9f7e935cb1 fix:多台设备没必要分配端口 2019-06-20 23:30:01 +08:00
Barry
4c9a88c214 add:多台控制 2019-06-20 19:43:25 +08:00
Barry
1071d8950c update:更新翻译 2019-06-20 18:04:15 +08:00
Barry
2cb82bfd7c add:不显示,只后台录制 2019-06-20 17:49:53 +08:00
Barry
db30f164be update:更新语言翻译 2019-06-20 16:05:40 +08:00
Barry
08da6cfbc1 fix:forward情况下,connectto里面固定延时1000不合理,有的手机卡,需要2000甚至更高,改为定时重试策略 2019-06-20 15:59:46 +08:00
Barry
f5a9a399f0 add:增加是否直接使用forward的选项 2019-06-20 14:33:20 +08:00
Barry
c713c292cc update:更新bug描述 2019-06-20 14:04:10 +08:00
Barry
f22d47a1c5 add:增加自定义adb执行 2019-06-20 13:56:55 +08:00
Barry
3b69108c7c update:重新调整整个项目结构 2019-06-20 13:07:01 +08:00
Barry
8fd67f6b58 update:抽象出device,为多台连接做准备 2019-06-20 12:54:43 +08:00
Barry
3c8c258a79 update:修复内存泄漏 2019-06-20 10:35:16 +08:00
Barry
641c524e43 update:将控制功能移植到controller中 2019-06-20 10:08:24 +08:00
Barry
717fe06f74 update:重构controller
controller管理inputconvert和receiver
receiver负责接收终端的消息
inputconvert负责转化鼠标键盘消息
2019-06-20 09:18:00 +08:00
Barry
299cbb5c28 update:
调整关闭屏幕和电源按钮的功能实现
安卓targetsdk更新到29
2019-06-19 20:34:27 +08:00
Barry
278d153f0e update:调整资源文件 2019-06-19 19:43:52 +08:00
Barry
d67a178288 fix:复制粘贴重复处理问题 2019-06-19 18:12:27 +08:00
Barry
2ec0a36f08 update:同步scrcpy 2019-06-19 18:05:17 +08:00
Barry
b92199dea3 update:event改为message更恰当 2019-06-19 16:13:58 +08:00
Barry
e010199752 add:实现剪切板功能 2019-06-19 14:33:20 +08:00
Barry
eb06924061 update:视频传输和控制指令改为两个不同的socket videosocket负责视频接收 controlsocket负责指令发送 2019-06-18 20:25:38 +08:00
Barry
1f073c2929 update:合并command命令 2019-06-18 16:37:12 +08:00
Barry
8735f3b3b6 fix:修复文本注入bug 2019-06-18 15:55:27 +08:00
Barry
fe882ab3f1 fix:server下拉菜单功能增加兼容性 2019-06-18 15:50:02 +08:00
Barry
c7f337dee7 update:添加方法以记录错误而不抛出 2019-06-18 15:47:00 +08:00
Barry
6cc9cfbed1 fix: server checkstyle errors
Fix errors reported by:

    gradle -p server check
2019-06-18 15:43:53 +08:00
Barry
66c2e45ea9 fix:Do not call codec.stop() on exception 2019-06-18 15:29:11 +08:00
Barry
a925de05fa update:stream放到单独模块 2019-06-18 15:21:09 +08:00
Barry
696212f09e update:decoder and recorder接口只读变量增加const 2019-06-18 15:17:48 +08:00
Barry
01cb767d2f update:修改videobuffer提供帧的逻辑使得易于理解 2019-06-18 15:09:33 +08:00
Barry
aa899d7ad7 update:VideoForm成员变量m_decoder改为堆上创建 2019-06-18 14:53:42 +08:00
Barry
61f2b0582c update: VideoForm成员变量m_vb改为堆上创建 2019-06-18 14:49:18 +08:00
Barry
60507d6cc6 Add stream layer
The decoder initially read from the socket, decoded the video and sent
the decoded frames to the screen:

              +---------+      +----------+
  socket ---> | decoder | ---> |  screen  |
              +---------+      +----------+

The design was simple, but the decoder had several responsabilities.

Then we added the recording feature, so we added a recorder, which
reused the packets received from the socket managed by the decoder:

                                    +----------+
                               ---> |  screen  |
              +---------+     /     +----------+
  socket ---> | decoder | ----
              +---------+     \     +----------+
                               ---> | recorder |
                                    +----------+

This lack of separation of concerns now have concrete implications: we
could not (properly) disable the decoder/display to only record the
video.

Therefore, split the decoder to extract the stream:

                                    +----------+      +----------+
                               ---> | decoder  | ---> |  screen  |
              +---------+     /     +----------+      +----------+
  socket ---> | stream  | ----
              +---------+     \     +----------+
                               ---> | recorder |
                                    +----------+

This will allow to record the stream without decoding the video.
2019-06-18 14:40:25 +08:00
Barry
3a9b7bd640 fix:recording with old decoding/encoding API
The deprecated avcodec_decode_video2() should always the whole packet,
so there is no need to loop (cf doc/examples/demuxing_decoding.c in
FFmpeg).

This hack changed the packet size and data pointer. This broke recording
which used the same packet.
2019-06-15 18:33:08 +08:00