Python-使用ffplay播放视频以更大的分辨率显示文件
我正在编写一个使用ffplay播放视频的简单脚本。Python-使用ffplay播放视频以更大的分辨率显示文件,python,video,ffmpeg,Python,Video,Ffmpeg,我正在编写一个使用ffplay播放视频的简单脚本。 我遇到的问题是输出文件的分辨率比它应有的分辨率大。 要播放的文件的分辨率为1280x720,但是,当我使用ffplay打开文件时,输出缩放为1920x1080。 我甚至尝试将输出缩小1.5倍(以使其在1280x720中播放),但与在VLC player中播放同一文件相比,质量明显更差。 我错过了什么 这是我正在使用的代码: dbFile = "file.mp4" open_dbFile = "ffplay {0} -window_title {
我遇到的问题是输出文件的分辨率比它应有的分辨率大。 要播放的文件的分辨率为1280x720,但是,当我使用ffplay打开文件时,输出缩放为1920x1080。
我甚至尝试将输出缩小1.5倍(以使其在1280x720中播放),但与在VLC player中播放同一文件相比,质量明显更差。
我错过了什么 这是我正在使用的代码:
dbFile = "file.mp4"
open_dbFile = "ffplay {0} -window_title {1} -left 50 -top 50 -nostats".format(dbFile, "DB_file")
sub.Popen(open_dbFile)
这是日志:
ffplay version N-95171-g6ca3d34ff8 Copyright (c) 2003-2019 the FFmpeg developers
built with gcc 9.2.1 (GCC) 20190918
configuration: --enable-gpl --enable-version3 --enable-sdl2 --enable-fontconfig --enable-gnutls --enable-iconv --enable-libass --enable-libdav1d --enable-libbluray --enable-libfreetype --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-libopus --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libtheora --enable-libtwolame --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxml2 --enable-libzimg --enable-lzma --enable-zlib --enable-gmp --enable-libvidstab --enable-libvorbis --enable-libvo-amrwbenc --enable-libmysofa --enable-libspeex --enable-libxvid --enable-libaom --enable-libmfx --enable-ffnvcodec --enable-cuvid --enable-d3d11va --enable-nvenc --enable-nvdec --enable-dxva2 --enable-avisynth --enable-libopenmpt --enable-amf
libavutil 56. 35.100 / 56. 35.100
libavcodec 58. 59.101 / 58. 59.101
libavformat 58. 33.100 / 58. 33.100
libavdevice 58. 9.100 / 58. 9.100
libavfilter 7. 59.100 / 7. 59.100
libswscale 5. 6.100 / 5. 6.100
libswresample 3. 6.100 / 3. 6.100
libpostproc 55. 6.100 / 55. 6.100
Metadata:
major_brand : mp42
minor_version : 0
compatible_brands: isommp42
creation_time : 2017-12-24T15:03:27.000000Z
Duration: 00:08:36.83, start: 0.000000, bitrate: 588 kb/s
Stream #0:0(und): Video: h264 (Main) (avc1 / 0x31637661), yuv420p(tv, bt709), 1280x720 [SAR 1:1 DAR 16:9], 459 kb/s, 29.97 fps, 29.97 tbr, 90k tbn, 59.94 tbc (default)
Metadata:
creation_time : 2017-12-24T15:03:27.000000Z
handler_name : ISO Media file produced by Google Inc. Created on: 12/24/2017.
Stream #0:1(und): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 125 kb/s (default)
Metadata:
creation_time : 2017-12-24T15:03:27.000000Z
handler_name : ISO Media file produced by Google Inc. Created on: 12/24/2017.
1.59 A-V: -0.014 fd= 0 aq= 19KB vq= 30KB sq= 0B f=0/0
谢谢你的帮助db好的,所以我把这件事弄明白了。
我的屏幕分辨率设置为3840x2160,缩放选项设置为150%(推荐) 一旦我将此选项设置为100%,输出将以正确的分辨率播放。另一方面,我现在很难阅读任何文本,除非我使用放大镜…;-)
干杯 显示
ffplay
中的完整日志(不带-hide_banner
)。@llogan:只需编辑我的帖子以包含日志。谢谢我不能在单个文件上进行延迟测试来复制问题。如果在终端中运行相同的命令,它是否能按预期工作?它对另一个播放器(如mpv)做同样的事情吗?是不是只有在特定的文件中才会出现?@llogan:谢谢你的来电。每个视频文件的放大倍数为1.5。我还尝试使用cv2和命令提示符播放该文件,但结果是一样的。也许我应该尝试在另一台计算机上运行它,看看问题是否仍然存在。我应该提到,我正在运行Windows 10,并且在VLC中播放该文件(只需双击它)时,该文件显示得很好。