3

我有一个应用程序将视频从设备流式传输到远程计算机。尝试设置帧速率时,我不断得到:

ERROR/StagefrightRecorder(131): Failed to set frame rate to 15 fps. The actual frame rate is 30

我使用的代码是:

video = new MediaStreamer();        
video.setVideoSource(MediaRecorder.VideoSource.CAMERA);
video.setOutputFormat(MediaRecorder.OutputFormat.THREE_GPP);
video.setVideoFrameRate(frameRate);

有想法该怎么解决这个吗?

4

2 回答 2

1

解码器通常来自于TI、高通等半导体厂商,取决于解码器是否响应帧率修改的要求。从应用程序层,你不能做太多。您正在拨打的电话是正确的。如果底层解码器支持它,那么你可以修改,否则你不能。

维焦尔

于 2012-02-15T05:16:54.850 回答
-1

我猜文档说您可能无法从应用程序层设置帧速率。这取决于底层解码器是否为应用程序提供了灵活性。我很好地记得我已经尝试将帧速率设置为 3-4 帧,但它仍然只提供默认帧速率。我在 Stagefright 框架中看到,它将帧速率调用传递给解码器,然后依赖解码器来响应调用。

维焦尔

于 2012-02-14T07:15:16.473 回答