这是我的编码项目之一。我对linux还很陌生,所以在我开始之前,我需要你们的一些建议和想法。我知道已经有屏幕共享软件了,但我想自己制作!(=
具体来说,我想通过无线局域网将我的笔记本电脑屏幕克隆到我的电视上,通过一个通过VGA电缆连接到电视的linux盒:
首先,如何在linux中记录屏幕并实时发送流?
其次,我必须编写一个程序来读取正在发送的流。程序必须监听某个端口,并收集从膝上型计算机上传输的数据。有什么想法吗?
然后我必须将这些数据实时输出到电视上。你对如何解决这个问题有什么想法吗?
谢谢!
编辑:关于编程语言,我对python最满意。
发布于 2012-01-27 19:48:58
共享您的屏幕可以通过各种口味的VNC (即。RealVNC,TightVNC,UltraVNC等)。最多 of 他们是开源的,您可能想:
在Linux中,图形都是由Xorg (Xorg的新版本)处理的,Xorg是用嵌入式网络开发的。这解释了为什么您可以在机器上使用ssh -X,在机器上执行图形界面并在远程计算机上看到它。我建议您阅读Xorg上的钩子以满足您的需要。
您需要一个客户端-服务器拓扑来满足您的需要。不过,您并不是在谈论任何您预计将使用的编程语言。有些语言可能比一些语言更难开始。此外,在每一种主要的编程语言中,这类代码已经得到了很好的理解。您至少应该尝试使用一个简化项目网络部分的框架。
在Linux中,视频卡驱动程序可以在电视上共享屏幕。只需检查您的桌面环境(例如,KDE和Gnome提供视频配置面板)或在您的显卡配置中(nVidia和ATI驱动程序提供多个屏幕支持)
在我看来,你似乎是在尝试重新发明轮子,并且不太确定如何开始。我建议您从一个已经得到验证的VNC软件开始简单,然后看看它是如何发展的。如果缺少一个特性,您已经获得了服务器和客户端的源代码,因此您可以继续开发这些项目。一旦安装成功,就开始考虑用自己的代码替换拼图中的一小块,并看看它是如何进行的。
不要期望好的(例如,全高清)视频质量在你的电视上没有一些非常有能力的CPU/GPU和802.11n无线网络空的用户,并准备接受一些落后的编解码器开始工作。
发布于 2012-01-27 19:49:49
你应该尝试采取尽可能小的步骤。如果我正在从事这样一个项目,我的第一步将是尝试使用标准unix工具(例如,netcat或socat用于网络部分,mplayer或vlc用于回放,可能是ffmpeg用于捕获)实现解决方案。然后,如果需要,用自定义编写的组件替换每个组件。
https://stackoverflow.com/questions/9038906
复制相似问题