从udp流捕获屏幕截图的最佳方法是什么?

时间:2017-11-08 14:13:22

标签: ffmpeg udp ubuntu-14.04 screenshot live-streaming

我试图在Ubuntu 14.04系统中使用ffmpeg从udp流中捕获屏幕截图。 以下是命令

ffmpeg -y -i udp_ip -vframes 1 -q:v 1 test.png

但是拍摄的图像分辨率很差,我在拍摄截图时发现滞后。

请建议使用最佳工具或方法以最快的方式拍摄屏幕截图,并尽可能提供最佳图像分辨率。

修改 日志文件

ffmpeg version 3.3.2 Copyright (c) 2000-2017 the FFmpeg developers
  built with gcc 4.8 (Ubuntu 4.8.4-2ubuntu1~14.04.3)
  configuration: --extra-libs=-ldl --prefix=/opt/ffmpeg --mandir=/usr/share/man --enable-avresample --disable-debug --enable-nonfree --enable-gpl --enable-version3 --enable-libopencore-amrnb --enable-libopencore-amrwb --disable-decoder=amrnb --disable-decoder=amrwb --enable-libpulse --enable-libfreetype --enable-gnutls --enable-libx264 --enable-libx265 --enable-libfdk-aac --enable-libvorbis --enable-libtheora --enable-libmp3lame --enable-libopus --enable-libvpx --enable-libspeex --enable-libass --enable-avisynth --enable-libsoxr --enable-libxvid --enable-libvidstab --enable-libwavpack --enable-nvenc
  libavutil      55. 58.100 / 55. 58.100
  libavcodec     57. 89.100 / 57. 89.100
  libavformat    57. 71.100 / 57. 71.100
  libavdevice    57.  6.100 / 57.  6.100
  libavfilter     6. 82.100 /  6. 82.100
  libavresample   3.  5.  0 /  3.  5.  0
  libswscale      4.  6.100 /  4.  6.100
  libswresample   2.  7.100 /  2.  7.100
  libpostproc    54.  5.100 / 54.  5.100
[mpeg2video @ 0x390cc60] Invalid frame dimensions 0x0.
    Last message repeated 7 times
Input #0, mpegts, from 'udp://@xxx.xx.xx.xx:xxxx':
  Duration: N/A, start: 144.130744, bitrate: 4128 kb/s
  Program 1 
    Metadata:
      service_name    : Program-1   
      service_provider: Encoder 
    Stream #0:0[0x42]: Video: mpeg2video (Main) ([2][0][0][0] / 0x0002), yuv420p(tv, top first), 720x576 [SAR 16:15 DAR 4:3], 4000 kb/s, 25 fps, 25 tbr, 90k tbn, 50 tbc
    Stream #0:1[0x43]: Audio: mp2 ([3][0][0][0] / 0x0003), 48000 Hz, stereo, s16p, 128 kb/s
Stream mapping:
  Stream #0:0 -> #0:0 (mpeg2video (native) -> png (native))
Press [q] to stop, [?] for help
Output #0, image2, to 'player.png':
  Metadata:
    encoder         : Lavf57.71.100
    Stream #0:0: Video: png, rgb24, 720x576 [SAR 16:15 DAR 4:3], q=2-31, 200 kb/s, 25 fps, 25 tbn, 25 tbc
    Metadata:
      encoder         : Lavc57.89.100 png
frame=    1 fps=0.0 q=-0.0 Lsize=N/A time=00:00:00.04 bitrate=N/A dup=1 drop=1 speed=0.729x    
video:777kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: unknown

1 个答案:

答案 0 :(得分:1)

因为,这似乎是宽高比的问题,而不是质量本身,使用

2002-01-15
2002-01-31
2002-02-01
2002-02-15
2002-02-28
2002-03-01
2002-03-15
2002-03-31
2002-04-01
2002-04-15
2002-04-30
2002-05-01

缩放滤镜将视频重新缩放为方形像素。 SAR滤波器并非严格必要,但如果PNG复用器写入该数据,则最好将其复位。