LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
楼主: lolilolicon

ffcast: 巨小巧的屏幕录制工具

[复制链接]
发表于 2010-5-3 15:04:08 | 显示全部楼层
首先,先感謝lolilolicon提供的工具,讓我可以更輕鬆的使用ffmpeg 來錄製桌面.

現在,我還有另一個需求,就是當我在遠端時,使用VNC Client登入遠端的Server. 此時,我想同樣利用ffcast來錄製桌面(在VNC上看到的畫面),但無法成功,會出現下列錯誤訊息,因此想請教各位,看各位能否幫忙或提供解決的方向,謝謝!!


alex@taipei:~/lolilolicon-ffcast-a2d2c42$ ffcast --debug -b  -o cast.mkv(DD)  Checking display :2.0 with `xrectsel :2.0 checkdpy'
xrectsel: Valid display_name :2.0
ls: cannot access /usr/share/ffmpeg: No such file or directory
(DD)  VCODEC: -vcodec libx264 -vpre main -vpre lossless_slow -crf 0
(DD)  FORMAT: -f h264
(DD)  geometry: root: 1024x768
==>  Click to select 1 window(s) to be captured
  ->  Selecting 1 of 1 window(s)
(DD)  geometry: (0,0) (0,0)
(DD)  geometry: mod 2: 1024x768
(DD)  geometry: in screen:1024x768+0+0
==>  Capture geometry: 1024x768+0+0
(DD)  ffmpeg: command line:
ffmpeg -r 15 -v 1 -s 1024x768 -an -f x11grab -i :2.0+0,0 -vcodec libx264 -vpre main -vpre lossless_slow -crf 0 -f h264  -sameq "cast.mkv"
==>  Capture started, press [q] to finish
FFmpeg version SVN-r23008, Copyright (c) 2000-2010 the FFmpeg developers
  built on May  3 2010 11:42:42 with gcc 4.4.1
  configuration: --enable-gpl --enable-version3 --enable-nonfree --enable-postproc --enable-pthreads --enable-libfaac --enable-libfaad --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libtheora --enable-libx264 --enable-libxvid --enable-x11grab
  libavutil     50.15. 0 / 50.15. 0
  libavcodec    52.66. 0 / 52.66. 0
  libavformat   52.62. 0 / 52.62. 0
  libavdevice   52. 2. 0 / 52. 2. 0
  libswscale     0.10. 0 /  0.10. 0
  libpostproc   51. 2. 0 / 51. 2. 0
[x11grab @ 0x8ec1420]device: :2.0+0,0 -> display: :2.0 x: 0 y: 0 width: 1024 height: 768
Xlib:  extension "Generic Event Extension" missing on display ":2.0".
[x11grab @ 0x8ec1420]shared memory extension  found
/usr/bin/ffcast: line 485: 21069 Segmentation fault      (core dumped) ffmpeg -r ${FPS} -v 1 -s ${LEN_X}x${LEN_Y} -an -f x11grab -i ${CAPDPY}+${POS_X},${POS_Y} ${VCODEC} ${FORMAT} ${CASTSPAN} -sameq "${OUTPUT}" 2> "${DEBUG}"
(EE)  ffmpeg: failed, try running with --debug
==>  Output filename: cast.mkv
alex@taipei:~/lolilolicon-ffcast-a2d2c42$
回复 支持 反对

使用道具 举报

发表于 2010-10-28 15:54:53 | 显示全部楼层
偶在gentoo下编译了下
运行时找不到环境变量?..
能否直接提供两进制版本呢
另外对环境的要求也提供下,麻烦了
回复 支持 反对

使用道具 举报

发表于 2010-10-28 19:37:25 | 显示全部楼层
不能不顶啊,先顶了再试用。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2010-11-3 00:19:27 | 显示全部楼层
Post by Havanna;2117610
偶在gentoo下编译了下
运行时找不到环境变量?..
能否直接提供两进制版本呢
另外对环境的要求也提供下,麻烦了


ffcast本身是一个bash脚本, 不需要编译, 需要编译的只有一个很小的C文件(用于-s选项):

  1. $ gcc -Wall -lX11 xrectsel.c -o xrectsel
复制代码


环境要求有bash, X11跟ffmpeg, 应该没别的了... 你说的环境变量具体是哪个找不到呢?
回复 支持 反对

使用道具 举报

发表于 2010-11-3 04:38:19 | 显示全部楼层
已经找到了xwininfo
我给出了这么些依赖
DEPEND="sys-devel/bc
    app-shells/bash
    media-video/ffmpeg
    media-libs/x264
    x11-apps/xwininfo"
回复 支持 反对

使用道具 举报

 楼主| 发表于 2010-11-3 15:03:49 | 显示全部楼层
嗯 对
Arch把xwininfo放在"xorg-utils"里面, (而xorg-apps是一个空壳, 只用来提供依赖的解析...)
回复 支持 反对

使用道具 举报

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

本版积分规则

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