Commit graph

452 commits

Author SHA1 Message Date
Barry
246a346588 update:
调整关闭屏幕和电源按钮的功能实现
安卓targetsdk更新到29
2019-06-19 20:34:27 +08:00
Barry
d973abfb9d update:调整资源文件 2019-06-19 19:43:52 +08:00
Barry
12602640a1 fix:复制粘贴重复处理问题 2019-06-19 18:12:27 +08:00
Barry
dcffea679f update:同步scrcpy 2019-06-19 18:05:17 +08:00
Barry
d2e83da5b1 update:event改为message更恰当 2019-06-19 16:13:58 +08:00
Barry
b33b22bf16 add:实现剪切板功能 2019-06-19 14:33:20 +08:00
Barry
b44f78f19b update:视频传输和控制指令改为两个不同的socket videosocket负责视频接收 controlsocket负责指令发送 2019-06-18 20:25:38 +08:00
Barry
7220d91ed3 update:合并command命令 2019-06-18 16:37:12 +08:00
Barry
a70905f68e fix:修复文本注入bug 2019-06-18 15:55:27 +08:00
Barry
fc4f03d48f fix:server下拉菜单功能增加兼容性 2019-06-18 15:50:02 +08:00
Barry
4e928fd74f update:添加方法以记录错误而不抛出 2019-06-18 15:47:00 +08:00
Barry
ad74c0e15b fix: server checkstyle errors
Fix errors reported by:

    gradle -p server check
2019-06-18 15:43:53 +08:00
Barry
fd86b98a32 fix:Do not call codec.stop() on exception 2019-06-18 15:29:11 +08:00
Barry
2801a26737 update:stream放到单独模块 2019-06-18 15:21:09 +08:00
Barry
01121ff470 update:decoder and recorder接口只读变量增加const 2019-06-18 15:17:48 +08:00
Barry
5c196d9569 update:修改videobuffer提供帧的逻辑使得易于理解 2019-06-18 15:09:33 +08:00
Barry
090a5113d1 update:VideoForm成员变量m_decoder改为堆上创建 2019-06-18 14:53:42 +08:00
Barry
f401f2dcf2 update: VideoForm成员变量m_vb改为堆上创建 2019-06-18 14:49:18 +08:00
Barry
e61a09f477 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
2d6dfc09e1 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
Barry
667b09259c update:VideoBuffer stop重命名为interrupt 2019-06-15 18:29:19 +08:00
Barry
83fbdb5c23 update:frame类重命名为videobuffer类 2019-06-15 18:25:32 +08:00
Barry
a451b0feee update:移除解码器中没用的mutex 2019-06-15 18:09:28 +08:00
Barry
743b2398c9 add:下拉通知栏 2019-06-15 18:07:16 +08:00
Barry
3bee801fd7 add:视频窗口始终在前 2019-06-15 07:56:06 +08:00
Barry
d7532cef33 update:固定尺寸 2019-06-15 07:34:36 +08:00
Barry
8d83585130 add:compat.h 2019-06-15 07:24:07 +08:00
Barry
70eccc0f61 add:录像支持mkv 2019-06-15 06:45:12 +08:00
Barry
0348fe15b5 fix:decoder内存泄漏 2019-06-12 09:14:44 +08:00
Barry
cf459bbd32 add:Rescale packet timestamp to container time base
Some containers force their own time base. For example, matroska
overwrite time_base to (AVRational) {1, 1000}.

Therefore, rescale our packet timestamps to the output stream time base.
2019-06-12 09:07:31 +08:00
Barry
247f8eb1d1 update:Write header file with correct extradata 2019-06-12 08:56:19 +08:00
Barry
43c1b6870f add:转发ffmpeg log 2019-06-12 08:08:26 +08:00
Barry
eded0d1f78 fix:decoderBuffer内存泄漏 2019-06-12 07:49:35 +08:00
Barry
39eea20b6c fix:incorrect comment 2019-06-12 07:07:10 +08:00
Barry
748ba63a64 add:增加bug备注 2019-05-07 23:38:10 +08:00
Barry
650419056a Merge branch 'master' of https://gitee.com/Barryda/QtScrcpy 2019-04-14 14:04:53 +08:00
Barry
771d14e825 update:add default port 2019-04-14 14:04:33 +08:00
rankun
56e1ce6200 fix:mac编译不过 2019-03-21 14:35:06 +08:00
Barry
6d216191d9 Merge branch 'master' of https://gitee.com/Barryda/QtScrcpy 2019-02-25 22:35:30 +08:00
Barry
437a58624f forward时防止早连接 2019-02-25 22:35:08 +08:00
rankun
7165c60cb3 update:mousetap重构 2019-02-18 13:27:54 +08:00
rankun
a53fe2ad04 update:qtquick可选 2019-02-18 12:46:38 +08:00
rankun
f8908549ce update:mac限制鼠标移动 2019-02-10 20:22:29 +08:00
rankun
2d94db6dbd update:mac不去掉标题栏 2019-02-04 18:43:16 +08:00
rankun
b879451402 update:全屏后设置焦点,防止工具栏抢焦点 2019-02-04 18:05:40 +08:00
rankun
b8ce7d6bd2 Merge branch 'master' of gitee.com:Barryda/QtScrcpy 2019-02-04 13:57:51 +08:00
rankun
9610545e97 update:全屏模式不显示工具窗口 2019-02-04 13:57:34 +08:00
Barry
de71c88b24 update:美化工具窗口 2019-01-27 20:02:17 +08:00
rankun
618e6a099b update:mac异形窗口+全屏解决 2019-01-27 19:32:02 +08:00
Unknown
1d54d9b385 update:更新ffmpeg编译参数详解 2019-01-27 18:10:19 +08:00