Re: [LAU] screencasting with ffmpeg

From: Jeremy Jongepier <jeremy@email-addr-hidden>
Date: Fri Nov 05 2010 - 14:35:13 EET

On 11/05/2010 01:07 PM, Rustom Mody wrote:
> On Fri, Nov 5, 2010 at 3:08 PM, Jeremy Jongepier <jeremy@email-addr-hidden> wrote:
>
>> Try adding an ampersand after xfce-session.
>
> Makes no diff: Another session manager is already running is the error
>
>>
>> That is probably because of the -keybd options I used. I had to use this
>> specific line to get my keyboard and mouse working properly.
>
> Yes the keybd options cause problems sometimes and sometimes not
>
>> man Xephyr is very informative on these options.
>
> Well!!
>
> Out here man Xephyr gives me hardly one screenful: the only options
> mentioned are screen parent and host-cursor.
> It however says its like xnest. So install Xnest and look at its man
> page. No keybd options there either. But it says see Xserver. So I
> see Xserver. Nothing there either
>

Hello Rustom,

You're right, the man page of Xephyr doesn't provide a lot of info as
Xephyr doesn't have that much options by itself. So the Xephyr man page
being informative almost sounds cynical, sorry about that, not my
intention. I got the usage info of this parameter from Xephyr --help,
TinyX section. then I found out it didn't work for me so I started
googling and came upon setting this specific option which works in my case.

> Anyway for now I am dropping the keybd and session call and that runs.
> Script is:
>
> #!/bin/bash
> #set -x
> # Set up nested X server
> Xephyr -ac -screen 1024x768x16 -host-cursor -br -reset -terminate 2>
> /dev/null :2 &
> sleep 3
> export DISPLAY=:2.0
> #xfce4-session&
>
> I am now at the point of calling the second script. The jack_capture
> is giving its own share of problems so try to only get video with the
> ffmpeg call
>
>
> #!/bin/bash
>
> DATE=`date +%Y%m%d`
> TIME=`date +%Hh%M`
> export DISPLAY=:2.0
>
> # Start screencast
> #xterm -display :0.0 -e jack_capture -b 24
> $HOME/screencast/screencast_audio_$DATE-$TIME.wav &
> ffmpeg -an -f x11grab -r 30 -s 1280x720 -i :2 -vcodec libx264 -vpre
> lossless_ultrafast -threads 4
> $HOME/screencast/screencast_video_$DATE-$TIME.mkv
>
> #killall jack_capture
>
> Error I get is
>
>
> [x11grab @ 0x9e04c30] device: :1 -> display: :1 x: 0 y: 0 width: 1280
> height: 720
> [x11grab @ 0x9e04c30] shared memory extension found
> X Error of failed request: BadMatch (invalid parameter attributes)
> Major opcode of failed request: 130 (MIT-SHM)
> Minor opcode of failed request: 4 (X_ShmGetImage)
> Serial number of failed request: 11
> Current serial number in output stream: 11
> [1]+ Segmentation fault Xephyr -ac -screen 1024x768x16
> -host-cursor -br -reset -terminate :2 2> /dev/null
>

That is because you're trying to capture a 1280x720 screensize with
ffmpeg while the Xephyr screensize is 1024x768.

Best,

Jeremy
_______________________________________________
Linux-audio-user mailing list
Linux-audio-user@email-addr-hidden
http://lists.linuxaudio.org/listinfo/linux-audio-user
Received on Fri Nov 5 16:15:02 2010

This archive was generated by hypermail 2.1.8 : Fri Nov 05 2010 - 16:15:02 EET