【问题标题】:H.264 video file size from camera is much bigger than x264 output来自相机的 H.264 视频文件大小远大于 x264 输出
【发布时间】:2020-08-11 02:14:59
【问题描述】:

我有一个支持 h264 协议的 UVC 相机。当我们列出所有支持的格式时,我们可以看到下面列出的 h264。

msm8909:/data # ./ffmpeg -f v4l2 -list_formats all -i /dev/video1
ffmpeg version N-53546-g5eb4405fc5-static https://johnvansickle.com/ffmpeg/  Copyright (c) 2000-2020 the FFmpeg developers
  built with gcc 6.3.0 (Debian 6.3.0-18+deb9u1) 20170516
  configuration: --enable-gpl --enable-version3 --enable-static --disable-debug --disable-ffplay --disable-indev=sndio --disable-outdev=sndio --cc=gcc --enable-fontconfig --enable-frei0r --enable-gnutls --enable-gmp --enable-libgme --enable-gray --enable-libfribidi --enable-libass --enable-libfreetype --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-librubberband --enable-libsoxr --enable-libspeex --enable-libsrt --enable-libvorbis --enable-libopus --enable-libtheora --enable-libvidstab --enable-libvo-amrwbenc --enable-libvpx --enable-libwebp --enable-libx264 --enable-libxml2 --enable-libxvid --enable-libzimg
  libavutil      56. 56.100 / 56. 56.100
  libavcodec     58. 97.100 / 58. 97.100
  libavformat    58. 49.100 / 58. 49.100
  libavdevice    58. 11.101 / 58. 11.101
  libavfilter     7. 87.100 /  7. 87.100
  libswscale      5.  8.100 /  5.  8.100
  libswresample   3.  8.100 /  3.  8.100
  libpostproc    55.  8.100 / 55.  8.100
[video4linux2,v4l2 @ 0x4649140] Compressed:        h264 :                H.264 : 1920x1080 1280x720 640x480 320x240
[video4linux2,v4l2 @ 0x4649140] Compressed:       mjpeg :                MJPEG : 1920x1080 1280x720 640x480 320x240

我正在运行 ffmpeg cmd 将 UVC 摄像机视频录制到本地设备。

ffmpeg -f v4l2 -input_format h264 -framerate 30 -video_size 1280*720 -i /dev/video1 -c copy /sdcard/Movies/output.mkv

视频大小比运行以下命令要大:

ffmpeg -f v4l2 -input_format mjpeg -framerate 30 -video_size 1280*720 -i /dev/video1 -c:v libx264 -vf format=yuv420p /sdcard/Movies/output.mp4

我假设相机已经支持 h264 协议。因此我不需要重新编码为 264 格式。但是,视频大小看起来不像是 H264 编码的视频。

【问题讨论】:

    标签: ffmpeg h.264


    【解决方案1】:

    并非所有 H.264 编码器都是平等的

    x264 是一种非常高效的 H.264 编码器,这意味着它可以以更低的比特率提供更高的质量。

    您的相机的 H.264 编码器效率相对较低。它针对资源有限的一小块硬件的速度进行了优化。所以它无法做 x264 可以做的花哨的事情。结果是类似质量的比特率要高得多。

    【讨论】:

      猜你喜欢
      • 2010-10-16
      • 2018-02-06
      • 2019-09-22
      • 1970-01-01
      • 2020-05-16
      • 1970-01-01
      • 2018-03-27
      • 2016-02-10
      • 2021-06-12
      相关资源
      最近更新 更多