ChinaFFmpeg

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 8072|回复: 7

ffplay播放的时候能不能实时的用ffmpeg存储?

[复制链接]
发表于 2019-6-7 18:10:28 | 显示全部楼层 |阅读模式
大家好,
  请问一下,在power shell中用ffplay -f dshow -i video="xxx" 播放的时候能不能通过管道或者其他的方式同时实现视频的存储。或者反过来,用ffmpeg -f dshow -i video="xxx" out.mp4 录制视频的时候能不能同时播放出来?
回复

使用道具 举报

发表于 2019-12-25 16:52:48 | 显示全部楼层
[AppleScript] 纯文本查看 复制代码
liuqideMacBook-Pro:dash liuqi$ ./ffmpeg -pix_fmt nv12 -f avfoundation -i 2 -f flv output.flv -pix_fmt rgb32 -y -f opengl "window title"
ffmpeg version N-96016-gbc35cef78d Copyright (c) 2000-2019 the FFmpeg developers
  built with Apple LLVM version 10.0.0 (clang-1000.11.45.5)
  configuration: --enable-fontconfig --enable-gpl --enable-libass --enable-libbluray --enable-libfreetype --enable-libmp3lame --enable-libspeex --enable-libx264 --enable-libx265 --enable-libfdk-aac --enable-version3 --enable-nonfree --enable-videotoolbox --enable-libxml2 --samples=fate-suite/ --enable-libopencv --enable-libopus --enable-opengl
  libavutil      56. 36.101 / 56. 36.101
  libavcodec     58. 64.101 / 58. 64.101
  libavformat    58. 35.101 / 58. 35.101
  libavdevice    58.  9.101 / 58.  9.101
  libavfilter     7. 68.100 /  7. 68.100
  libswscale      5.  6.100 /  5.  6.100
  libswresample   3.  6.100 /  3.  6.100
  libpostproc    55.  6.100 / 55.  6.100
[AVFoundation indev @ 0x7ff734408600] Configuration of video device failed, falling back to default.
[avfoundation @ 0x7ff734809400] Stream #0: not enough frames to estimate rate; consider increasing probesize
Input #0, avfoundation, from '2':
  Duration: N/A, start: 114180.872000, bitrate: N/A
    Stream #0:0: Video: rawvideo (NV12 / 0x3231564E), nv12, 1920x1080, 1000k tbr, 1000k tbn, 1000k tbc
Stream mapping:
  Stream #0:0 -> #0:0 (rawvideo (native) -> flv1 (flv))
  Stream #0:0 -> #1:0 (rawvideo (native) -> rawvideo (native))
Press [q] to stop, [?] for help
Output #0, flv, to 'output.flv':
  Metadata:
    encoder         : Lavf58.35.101
    Stream #0:0: Video: flv1 (flv) ([2][0][0][0] / 0x0002), yuv420p, 1920x1080, q=2-31, 200 kb/s, 1000k fps, 1k tbn, 1000k tbc
    Metadata:
      encoder         : Lavc58.64.101 flv
    Side data:
      cpb: bitrate max/min/avg: 0/0/200000 buffer size: 0 vbv_delay: N/A
[opengl outdev @ 0x7ff734444d40] SDL driver: 'cocoa'.
Output #1, opengl, to 'window title':
  Metadata:
    encoder         : Lavf58.35.101
    Stream #1:0: Video: rawvideo (BGRA / 0x41524742), bgra, 1920x1080, q=2-31, 66355200000 kb/s, 1000k fps, 1000k tbn, 1000k tbc
    Metadata:
      encoder         : Lavc58.64.101 rawvideo
frame=   51 fps= 22 q=31.0 Lq=-0.0 size=    1046kB time=00:00:02.30 bitrate=3724.2kbits/s speed=   1x


ffmpeg有个opengl的device输出,这个是可以直接播放的
回复 支持 反对

使用道具 举报

发表于 2020-7-23 17:51:22 | 显示全部楼层
孙悟空 发表于 2019-12-25 16:52
[mw_shl_code=applescript,true]liuqideMacBook-Pro:dash liuqi$ ./ffmpeg -pix_fmt nv12 -f avfoundation  ...

大佬您好,可以详细描述一下怎么实现ffmpeg一边录制视频一边播放视频嘛(我的需求是录制摄像头并且实时播放摄像头视频)
回复 支持 反对

使用道具 举报

发表于 2020-7-23 17:53:51 | 显示全部楼层
ffmpeg有个opengl,可以播放视频,ffmpeg本身也可以顺便录一下
回复 支持 反对

使用道具 举报

发表于 2020-7-23 17:56:37 | 显示全部楼层
如果使用opengl播放视频,ffmpeg录制的时候是用-gdigrb从窗口录制嘛?还是直接从输入-video="Integrated Camera"录制呢
回复 支持 反对

使用道具 举报

发表于 2020-7-23 18:13:40 | 显示全部楼层
孙悟空 发表于 2020-7-23 17:53
ffmpeg有个opengl,可以播放视频,ffmpeg本身也可以顺便录一下


还有按照官方这样操作的时候提示错误是怎么回事呢?

回复 支持 反对

使用道具 举报

发表于 2020-7-24 09:38:57 | 显示全部楼层
哈哈哈哈西 发表于 2020-7-23 17:56
如果使用opengl播放视频,ffmpeg录制的时候是用-gdigrb从窗口录制嘛?还是直接从输入-video="Integrated Ca ...

播放就用ffmpeg命令的opengl作为输出参数播放即可,ffmpeg可以有多个stream输出,map就可以
回复 支持 反对

使用道具 举报

发表于 2020-7-26 09:25:19 | 显示全部楼层
孙悟空 发表于 2020-7-24 09:38
播放就用ffmpeg命令的opengl作为输出参数播放即可,ffmpeg可以有多个stream输出,map就可以 ...

非常感谢您的帮助,不过我还是有个问题,我的需求是一直录制视频,但是播放视频的界面可能需要关掉。按照您的方案关掉播放视频的界面,视频录制也会停止,请问有什么好的解决方案嘛
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|Archiver|ChinaFFmpeg

GMT+8, 2024-4-20 14:57 , Processed in 0.069528 second(s), 15 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表