CoD*_*anX 8 encoding extract decoding desktop-recording teamviewer
TeamViewer允许使用文件扩展名以专有格式记录会话.tvs.可以使用本地计算机上安装的任何编解码器(使用TeamViewer)将其转换为AVI,但不能使用MP4或其他容器格式.
对AVI的编码非常慢(显然不是多线程,使用x264 vfw; XviD会花费更长时间),结果文件在VLC中无法正常播放,并且在Windows上的Avidemux中根本无法编辑.
因此,我想知道是否可以在TVS文件中提取音频和视频流,以便使用ffmpeg进行进一步处理(否则,我需要编码两次,这意味着每60分钟录像4小时).我希望它与其他格式相似,只是使用自定义编解码器 - 我希望它不是内置在TeamViewer中,但也可用于其他应用程序.
TVS 是一种专有格式。网上似乎没有太多关于它的信息。少量分析可以在http://www.jerrysguide.com/tips/demystify-tvs-file-format.html找到。
我用十六进制编辑器看了一个。它包含基于文本的页眉、Base64 文本页脚和大量二进制数据。例如:
TVS
Version 5
TVVersion 13.0.6447
Date 2018-03-03 15.24
TVServer
ClientID 314159265
ServerID MY_HOME_PC (123 456 789)
LocalParticipantID 1234567890123456789
GUID {01234567-89AB-CDEF-0123-456789012345}
StreamTypes 2
ScreenFeatures 127
MetadataPosition 0000000000169e98
BEGIN
[Lots and lots of binary data]
END
[320 bytes of Base64]
Run Code Online (Sandbox Code Playgroud)
(MetadataPosition标记 END 之后 Base64 开始的位置。)
二进制数据似乎包含几个 DEFLATE 压缩块。它们似乎包含有意义的数据,包括屏幕分辨率列表、鼠标光标和一些 32 位 RGB 图像数据,但结构并不容易辨别。
解码该格式可能有希望,但我看不到任何为此做出的努力。
它可能只是 TeamViewer 会话的录音。如果使用类似RFB 协议的协议,那么它可能类似于VMware 视频格式。
编辑:如果它对任何人有帮助,我用 C 编写了一个快速程序来从文件中提取/转储 KEY 块的内容:(要点)
编辑:我发现 TeamViewer 会愉快地播放至少由 组成的简单文件TVS\r\nBEGIN\r\nKEY...\r\nEND,剥离任何其他数据。尽管我认为如果版本或流类型之类的东西会影响解码,它很可能会崩溃。
| 归档时间: |
|
| 查看次数: |
1501 次 |
| 最近记录: |