我对 ffmpeg 有疑问,不知道如何继续。我有两台电脑:
客户:
服务器:
我刚刚将客户端连接到服务器,他们可以一起聊天文本数据,我不知道如何制作实时视频。
我的问题是:
我使用 ffmpeg 从 wc 获取视频,但它保存到文件。我真的不想要。代码是:
ffmpeg -f v4l2 -framerate 25 -video_size 640x480 -i /dev/video0 output.mkv
我有一个想法通过在 MFC 中使用 directshow 来播放它。
最佳答案
如果必须,您可以使用 FFmpeg 在 C++ 中实现自己的播放器。图书馆或 libav图书馆。这使您可以支持各种编解码器和格式。
在 Windows 上,您可以使用 c++ Windows Media Player Control ,但它只支持几种格式,并且不支持 H.264。
您在源服务器(您的 Linux 机器)上有以下选项:
vlc
转码 WMP 似乎接受了 ASF 中带有 MP3 的 DivX3:
cvlc input.mp4 --sout="#transcode{vcodec=DIV3,scale=Auto,acodec=mp3,ab=128,channels=2,samplerate=44100}:http{mux=asf,dst=:8080/}" --sout-keep
在客户端,您可以使用
http://server_address:8080
检索流。 .ffmpeg
与 ffserver
阅读 ffserver Documentation和 Streaming media with ffserver为了设置它。
对于 WMP,您将再次使用 ASF:
# ASF compatible
<Stream test.asf>
Feed feed1.ffm
Format asf
VideoFrameRate 15
VideoSize 352x240
VideoBitRate 256
VideoBufferSize 40
VideoGopSize 30
AudioBitRate 64
StartSendOnKey
</Stream>
Source .
您可以使用
http://ffserver_address:port/stream_name.asf
检索流.
关于c++ - ffmpeg 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29753003/