在 FFmpeg 中,我可以通过-c:v h264_videotoolbox使用具有 GPU 加速功能的 Videotoolbox 来指定编码器来进行转码。
但我不知道应该向 ffplay 发出什么命令才能利用 Videotoolbox 进行硬件解码?
ffplay -hwaccel_flags my.mp4 // no GPU usage up
ffplay -pixel_format videotoolbox_vld my.mp4 // Option pixel_format not found
ffplay -decoders | grep "box" // only decoders with (AudioToolbox) shows
ffplay -buildconf // the --enable-videotoolbox is showed
Run Code Online (Sandbox Code Playgroud)
小智 5
您可以通过管道将结果传递给ffmpegto ffplay。我在使用 VAAPI 加速的 1080p 视频上进行了测试,CPU 速率总共下降了约 10%。
请参阅此处的HWAccelIntro。它谈到ffmpegffmpeg,但你可以通过管道传递to的结果ffplay。
例如,播放test.mp4在 Linux 上使用 VAAPI
ffmpeg -hwaccel vaapi -hwaccel_device /dev/dri/renderD128 -i test.mp4 \
-vcodec rawvideo -acodec copy -f matroska - | ffplay -i -
Run Code Online (Sandbox Code Playgroud)
用于rawvideo视频编码,并用于-f指定容器。Videotoolbox应该是相似的。Videotoolbox如果您设法使用ffmpeg解码视频,只需ffplay以这种方式进行管道传输即可。
| 归档时间: |
|
| 查看次数: |
11442 次 |
| 最近记录: |