我尝试将视频从 .raw 转换为 .mp4。出于这个原因,我确实下载、构建和安装了 x264 和 ffmpeg。但是,命令:
ffmpeg -f h264 -i output.raw -vcodec copy output.mp4
失败并出现错误(如下图所示)。有没有什么办法解决这一问题?

我还运行的命令:
1
root@beagleboard:/# v4l2-ctl --list-formats
ioctl: VIDIOC_ENUM_FMT
Index : 0
Type : Video Capture
Pixel Format: 'YUYV'
Name : YUV 4:2:2 (YUYV)
Index : 1
Type : Video Capture
Pixel Format: 'MJPG' (compressed)
Name : MJPEG
Run Code Online (Sandbox Code Playgroud)
2
root@beagleboard:/dev# v4l2-ctl --set-fmt-video=pixelformat=0
Run Code Online (Sandbox Code Playgroud) 在 Linux 服务器(FFmpeg)和 Windows 客户端(VLC 播放器)之间的视频流应用程序上,有大约 10 秒的明显延迟。
FFmpeg 命令:
ffmpeg -re -f v4l2 -i /dev/video0 http://192.168.1.101:8090/feed1.ffm
Run Code Online (Sandbox Code Playgroud)
VLC 播放器:
http://192.168.1.101:8090/test.swf
Run Code Online (Sandbox Code Playgroud)
尽管服务器和客户端同时启动,但 VLC 播放器会延迟大约 10 秒来播放流,从服务器捕获的第一帧开始播放。因此,经常会有 10 秒的延迟。
我试图找出导致这种延迟的原因:
我的第一个想法是编解码器会延迟编码。在这种情况下,我应该在我的 ffserver 配置文件中包含什么编解码器?我尝试了许多视频编解码器(rawvideo、flv、mjpeg),但结果相同。
其次,是否可以在我的 ffmpeg 命令中包含一个参数来控制延迟?
另一方面,这种延迟会不会因为 VLC 播放器而发生?
我理解这个问题有点笼统。但是,如果您遇到类似问题,任何帮助将不胜感激。
FFserver 配置文件:
Port 8090
BindAddress 0.0.0.0
MaxClients 10
MaxBandwidth 40000
<Feed feed1.ffm>
File /tmp/feed1.ffm
FileMaxSize 500M
ACL allow localhost
ACL allow 127.0.0.1
ACL allow 192.168.0.0 192.168.255.255
</Feed>
<Stream test.swf>
Feed feed1.ffm
Format swf
VideoCodec flv
VideoSize 640x480
VideoFrameRate …Run Code Online (Sandbox Code Playgroud) vlc-media-player ffmpeg latency video-streaming video-codecs
我在 Linux 机器上运行 ffserver 进程,以便通过ffmpeg实现视频流。但是,视频流有延迟。在ffserver 配置文件上,我定义了Port 8090.
命令netstat -tulnap给了我这个:
root@beagleboard:/etc# netstat -tulnap
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address Foreign Address Stat e PID/Program name
tcp 0 0 0.0.0.0:68 0.0.0.0:* LIST EN 654/pump
tcp 0 0 0.0.0.0:111 0.0.0.0:* LIST EN 662/portmap
tcp 0 0 0.0.0.0:22 0.0.0.0:* LIST EN 698/dropbear
tcp 0 0 0.0.0.0:8090 0.0.0.0:* LIST EN 744/ffserver
tcp 0 52 192.168.1.104:22 192.168.1.111:10838 ESTA BLISHED 724/dropbear
udp 0 0 …Run Code Online (Sandbox Code Playgroud) ffmpeg ×2
codec ×1
latency ×1
mp4 ×1
networking ×1
port ×1
tcp ×1
udp ×1
video ×1
video-codecs ×1