我正在尝试为Glass创建一个使用GDK流式传输视频的应用。 我在libstreaming(https://github.com/fyhertz/libstreaming)找到了很好的例子: Google Glass stream video to server
那里的解决方案在手机上创建流服务器。 VLC可能用于连接它。如果接收缓冲区= 0,那么我可能会延迟0.1秒延迟牺牲质量。
我能够以最高分辨率320x240 30fps 500kbps在我的Note2上运行示例。 当我试图在Glass上运行时,我最大176x144并且“无法连接到相机服务”错误。
我很好奇,我可以通过h.264或其他协议得到超过176x144吗? 我完全坚持“无法连接到相机服务”错误。
我的代码与此处几乎相同: Google Glass stream video to server
除了:
MainActivity中的:
SessionBuilder.getInstance()
.setSurfaceView((SurfaceView) findViewById(R.id.surface))
.setCallback(this)
.setPreviewOrientation(90)
.setContext(getApplicationContext())
.setAudioEncoder(SessionBuilder.AUDIO_NONE)
.setVideoEncoder(SessionBuilder.VIDEO_H264)
.setVideoQuality(new VideoQuality(176, 144, 12, 24000));
in Manifest:
<uses-permission android:name="com.google.android.glass.permission.DEVELOPMENT"/>
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.RECORD_AUDIO" />
<uses-permission android:name="android.permission.CAMERA" />
<uses-permission android:name="android.permission.WAKE_LOCK" />
<uses-feature android:name="android.hardware.camera" />
<uses-feature android:name="android.hardware.camera.autofocus" />
非常感谢任何帮助或新想法。 我听说,Mirror API可以用于流视频,不幸的是还没有调查过。
答案 0 :(得分:2)
以下信息可能有助于您决定采用此路线(使用Glass进行流式传输):
我玩了一些参数,并得到了:
.setVideoEncoder(SessionBuilder.VIDEO_H263))
.setVideoQuality(new VideoQuality(1280, 720, 30, 500000)
不幸的是,图像有时会冻结,而玻璃会变得非常热。质量是不可接受的。 H264编解码器的问题较少,但我甚至无法获得640x480流。
答案 1 :(得分:-1)
我在启动应用程序之前将Glass连接到互联网之前遇到了同样的问题。不确定你是否属于这种情况,但如果有的话试试看。