Page 18 of 25 FirstFirst ... 81617181920 ... LastLast
Results 171 to 180 of 246

Thread: HOWTO: Proper Screencasting on Linux

  1. #171
    Join Date
    Aug 2007
    Location
    Olympia, Washington - US
    Beans
    33
    Distro
    Ubuntu 10.04 Lucid Lynx

    Re: HOWTO: Proper Screencasting on Linux

    Whoa there bucky; I'm making a suggestion, not sniping. F/LOSS moves very fast sometimes and often leaves less well-informed users wondering where to get up-to-date info on their software. I've been using GNU/Linux for 9 years now and have had to play catch-up often enough to be used to it now, less experienced users of GNU/Linux may well be caught off-guard by this.

    I was suggesting that anyone posting in this thread to help should be conscious of this. And trying to acknowledge to anyone following this thread to seek help that there have been some serious changes in the FFMPEG utility that may lead to frustration, and they should be aware of it. The base of user documentation will catch up before too long and everyone will be rockin along with the improvements.

    As to the other assertion; yes all software changes and advances but proprietary software usually doesn't go through radical changes without much fanfare and a conscientious effort to iterate versions so that people looking for updated info are not confused. In the Free-Software camp however this almost never happens. It simply is not possible with all the vendors and iterations/versions of the same software still in circulation.

    This is only made more problematic for some people by the fact that various projects seem to stay consistent in improvements & bug-fixes while other projects seem to lurch forward from time to time with significant changes that create ripples in related efforts. Progress is progress though, and due to the nature of co-operation needed for these things to move, I will absolutely take this occasional difficulty over stagnation any day of the week.

    So, just cool your jets man. I'm on the right side of this.
    Mankind is my religion, of course I use GNU/Linux!

  2. #172
    Join Date
    Sep 2006
    Beans
    3,713

    Re: HOWTO: Proper Screencasting on Linux

    I propose changing the example from step 1 to:
    ffmpeg -f alsa -acodec pcm_s16le -ac 2 -i pulse -f x11grab -r 30 -s 1024x768 -i :0.0 -vcodec libx264 -preset ultrafast -crf 0 -acodec pcm_s16le output.mkv
    Changes:
    • removed -threads 0 because it is now default with libx264
    • move -acodec pcm_s16le as an input option

    A common error I see in #ffmpeg IRC from users of this guide is:
    Code:
    [matroska @ 0x3459040] Application provided invalid, non monotonically increasing dts to muxer in stream 0: 62 >= 62
    av_interleaved_write_frame(): Invalid argument
    This seems to occur with PCM audio in matroska container when following the pavucontrol instructions from this guide, or when replacing pulse with hw:0,0 or equivalent. For some reason moving the acodec option as an input option seems to prevent this error during my tests (as discovered by Sworddragon on the forum). It does not make sense to me because FFmpeg already detects the input as pcm_s16le.

    However, I'm unsure if the audio input devices ever output something other than pcm_s16le, and if they do forcing that format may cause issues.

    Update: Maybe this isn't such a good suggestion. pavucontrol seems to work with it, but there might be something else going on there. The switch from pulse to hw:0,0 is still not working. I thought it was, but there was a simple mistake in my initial tests. This is an alternative that will probably work, but I'd rather find a way to get everything working in one output:
    Code:
    ffmpeg -f alsa -i hw:0,0 -f x11grab -r 30 -s 1024x768 -i :0.0 -vcodec libx264 -preset ultrafast -crf 0 -an -y output.mkv -acodec pcm_s16le -y output.wav
    ffmpeg -i output.mkv -i output.wav -vcodec copy -acodec copy output2.mkv
    Last edited by FakeOutdoorsman; October 27th, 2011 at 08:28 PM.

  3. #173
    Join Date
    Jan 2012
    Beans
    4

    Re: HOWTO: Proper Screencasting on Linux

    Thank you for your great guide! Maybe it should be mentioned that the width and height (parameter -s) should be divisible by 16? In my case, I can notably increase the frame rate by observing this rule! And it is recommended in a lot of tutorials.

    P.S. Sorry for my poor English

  4. #174
    Join Date
    Sep 2006
    Beans
    3,713

    Re: HOWTO: Proper Screencasting on Linux

    Quote Originally Posted by Max Jerry Horowitz View Post
    Maybe it should be mentioned that the width and height (parameter -s) should be divisible by 16?
    For x264 this is not as important as most people believe according to a x264 developer on #x264 IRC.

    Quote Originally Posted by Max Jerry Horowitz View Post
    In my case, I can notably increase the frame rate by observing this rule!
    Can you show any benchmarks?

    Quote Originally Posted by Max Jerry Horowitz View Post
    P.S. Sorry for my poor English
    Your English is just fine. I personally believe that non-native English speakers should never include this unfortunately popular phrase, and if the English is too poor we can always ask for clarification.

  5. #175
    Join Date
    Jan 2012
    Beans
    4

    Re: HOWTO: Proper Screencasting on Linux

    Can you show any benchmarks?
    Two screencasts: The first one with 1024x768, the second with 1022x768. In both cases, the framerate of 30 isn't reached. But the framerate of the first screencast (divisible by 16) is twice as high as the framerate of the second one.
    Code:
    user:~$ ffmpeg -f alsa -ac 2 -i pulse -f x11grab -r 30 -s 1024x768 -i :0.0 -acodec pcm_s16le -vcodec libx264 -preset ultrafast -crf 0 -threads 0 output.mkv
    ffmpeg version git-2012-01-26-ee0cab7 Copyright (c) 2000-2012 the FFmpeg developers
      built on Jan 26 2012 13:25:36 with gcc 4.6.1
      configuration: --enable-gpl --enable-libfaac --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libtheora --enable-libvorbis --enable-libx264 --enable-nonfree --enable-postproc --enable-version3 --enable-x11grab --enable-libvpx
      libavutil      51. 34.101 / 51. 34.101
      libavcodec     53. 60.100 / 53. 60.100
      libavformat    53. 31.100 / 53. 31.100
      libavdevice    53.  4.100 / 53.  4.100
      libavfilter     2. 60.100 /  2. 60.100
      libswscale      2.  1.100 /  2.  1.100
      libswresample   0.  6.100 /  0.  6.100
      libpostproc    52.  0.100 / 52.  0.100
    [alsa @ 0xa5eeb60] Estimating duration from bitrate, this may be inaccurate
    Input #0, alsa, from 'pulse':
      Duration: N/A, start: 1327641305.824548, bitrate: N/A
        Stream #0:0: Audio: pcm_s16le, 48000 Hz, 2 channels, s16, 1536 kb/s
    [x11grab @ 0xa5e9040] device: :0.0 -> display: :0.0 x: 0 y: 0 width: 1024 height: 768
    [x11grab @ 0xa5e9040] shared memory extension found
    [x11grab @ 0xa5e9040] Estimating duration from bitrate, this may be inaccurate
    Input #1, x11grab, from ':0.0':
      Duration: N/A, start: 1327641305.876321, bitrate: 754974 kb/s
        Stream #1:0: Video: rawvideo (BGRA / 0x41524742), bgra, 1024x768, 754974 kb/s, 30 tbr, 1000k tbn, 30 tbc
    File 'output.mkv' already exists. Overwrite ? [y/N] y
    Incompatible pixel format 'bgra' for codec 'libx264', auto-selecting format 'yuv420p'
    [buffer @ 0xa60a940] w:1024 h:768 pixfmt:bgra tb:1/1000000 sar:0/1 sws_param:
    [buffersink @ 0xa60ac20] auto-inserting filter 'auto-inserted scale 0' between the filter 'src' and the filter 'out'
    [scale @ 0xa60b180] w:1024 h:768 fmt:bgra -> w:1024 h:768 fmt:yuv420p flags:0x4
    [libx264 @ 0xa5efee0] using cpu capabilities: MMX2 SSE2Fast SSSE3 FastShuffle SSE4.2
    [libx264 @ 0xa5efee0] profile High 4:4:4 Predictive, level 3.1, 4:2:0 8-bit
    [libx264 @ 0xa5efee0] 64 - core 120 r2146 bcd41db - H.264/MPEG-4 AVC codec - Copyleft 2003-2011 - http://www.videolan.org/x264.html - options: cabac=0 ref=1 deblock=0:0:0 analyse=0:0 me=dia subme=0 psy=0 mixed_ref=0 me_range=16 chroma_me=1 trellis=0 8x8dct=0 cqm=0 deadzone=21,11 fast_pskip=0 chroma_qp_offset=0 threads=6 sliced_threads=0 nr=0 decimate=1 interlaced=0 bluray_compat=0 constrained_intra=0 bframes=0 weightp=0 keyint=250 keyint_min=25 scenecut=0 intra_refresh=0 rc=cqp mbtree=0 qp=0
    Output #0, matroska, to 'output.mkv':
      Metadata:
        encoder         : Lavf53.31.100
        Stream #0:0: Video: h264, yuv420p, 1024x768, q=-1--1, 1k tbn, 30 tbc
        Stream #0:1: Audio: pcm_s16le, 48000 Hz, 2 channels, s16, 1536 kb/s
    Stream mapping:
      Stream #1:0 -> #0:0 (rawvideo -> libx264)
      Stream #0:0 -> #0:1 (pcm_s16le -> pcm_s16le)
    Press [q] to stop, [?] for help
    frame=   10 fps=  0 q=0.0 size=     513kB time=00:00:02.70 bitrate=1553.6kbits/s
    frame=   21 fps= 20 q=0.0 size=     673kB time=00:00:03.30 bitrate=1669.2kbits/s
    frame=   30 fps= 19 q=0.0 size=     769kB time=00:00:03.73 bitrate=1685.8kbits/s
    frame=   42 fps= 20 q=0.0 size=     929kB time=00:00:04.36 bitrate=1741.6kbits/s
    frame=   54 fps= 21 q=0.0 size=    1089kB time=00:00:04.90 bitrate=1819.6kbits/s
    frame=   65 fps= 21 q=0.0 size=    1219kB time=00:00:05.40 bitrate=1849.0kbits/s
    frame=   75 fps= 21 q=0.0 size=    1315kB time=00:00:05.83 bitrate=1846.3kbits/s
    frame=   85 fps= 20 q=0.0 size=    1475kB time=00:00:06.36 bitrate=1897.6kbits/s
    frame=   97 fps= 21 q=0.0 size=    1603kB time=00:00:06.96 bitrate=1884.6kbits/s
    frame=  107 fps= 20 q=0.0 size=    1731kB time=00:00:07.43 bitrate=1907.3kbits/s
    video:1619kB audio:5106kB global headers:0kB muxing overhead 2.138274%
    [libx264 @ 0xa5efee0] frame I:3     Avg QP: 0.00  size:  4446
    [libx264 @ 0xa5efee0] frame P:500   Avg QP: 0.00  size:  3288
    [libx264 @ 0xa5efee0] mb I  I16..4: 100.0%  0.0%  0.0%
    [libx264 @ 0xa5efee0] mb P  I16..4: 94.0%  0.0%  0.0%  P16..4:  0.0%  0.0%  0.0%  0.0%  0.0%    skip: 6.0%
    [libx264 @ 0xa5efee0] coded y,uvDC,uvAC intra: 0.0% 0.0% 0.0% inter: 0.0% 0.0% 0.0%
    [libx264 @ 0xa5efee0] i16 v,h,dc,p: 100%  0%  0%  0%
    [libx264 @ 0xa5efee0] i8c dc,h,v,p: 98%  2%  0%  0%
    [libx264 @ 0xa5efee0] kb/s:479.23
    user:~$ ffmpeg -f alsa -ac 2 -i pulse -f x11grab -r 30 -s 1022x768 -i :0.0 -acodec pcm_s16le -vcodec libx264 -preset ultrafast -crf 0 -threads 0 output.mkv
    ffmpeg version git-2012-01-26-ee0cab7 Copyright (c) 2000-2012 the FFmpeg developers
      built on Jan 26 2012 13:25:36 with gcc 4.6.1
      configuration: --enable-gpl --enable-libfaac --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libtheora --enable-libvorbis --enable-libx264 --enable-nonfree --enable-postproc --enable-version3 --enable-x11grab --enable-libvpx
      libavutil      51. 34.101 / 51. 34.101
      libavcodec     53. 60.100 / 53. 60.100
      libavformat    53. 31.100 / 53. 31.100
      libavdevice    53.  4.100 / 53.  4.100
      libavfilter     2. 60.100 /  2. 60.100
      libswscale      2.  1.100 /  2.  1.100
      libswresample   0.  6.100 /  0.  6.100
      libpostproc    52.  0.100 / 52.  0.100
    [alsa @ 0xa770b60] Estimating duration from bitrate, this may be inaccurate
    Input #0, alsa, from 'pulse':
      Duration: N/A, start: 1327641350.964678, bitrate: N/A
        Stream #0:0: Audio: pcm_s16le, 48000 Hz, 2 channels, s16, 1536 kb/s
    [x11grab @ 0xa76b040] device: :0.0 -> display: :0.0 x: 0 y: 0 width: 1022 height: 768
    [x11grab @ 0xa76b040] shared memory extension found
    [x11grab @ 0xa76b040] Estimating duration from bitrate, this may be inaccurate
    Input #1, x11grab, from ':0.0':
      Duration: N/A, start: 1327641351.023040, bitrate: 753500 kb/s
        Stream #1:0: Video: rawvideo (BGRA / 0x41524742), bgra, 1022x768, 753500 kb/s, 30 tbr, 1000k tbn, 30 tbc
    File 'output.mkv' already exists. Overwrite ? [y/N] y
    Incompatible pixel format 'bgra' for codec 'libx264', auto-selecting format 'yuv420p'
    [buffer @ 0xa78c8c0] w:1022 h:768 pixfmt:bgra tb:1/1000000 sar:0/1 sws_param:
    [buffersink @ 0xa78cba0] auto-inserting filter 'auto-inserted scale 0' between the filter 'src' and the filter 'out'
    [scale @ 0xa78d100] w:1022 h:768 fmt:bgra -> w:1022 h:768 fmt:yuv420p flags:0x4
    [libx264 @ 0xa771f40] using cpu capabilities: MMX2 SSE2Fast SSSE3 FastShuffle SSE4.2
    [libx264 @ 0xa771f40] profile High 4:4:4 Predictive, level 3.1, 4:2:0 8-bit
    [libx264 @ 0xa771f40] 64 - core 120 r2146 bcd41db - H.264/MPEG-4 AVC codec - Copyleft 2003-2011 - http://www.videolan.org/x264.html - options: cabac=0 ref=1 deblock=0:0:0 analyse=0:0 me=dia subme=0 psy=0 mixed_ref=0 me_range=16 chroma_me=1 trellis=0 8x8dct=0 cqm=0 deadzone=21,11 fast_pskip=0 chroma_qp_offset=0 threads=6 sliced_threads=0 nr=0 decimate=1 interlaced=0 bluray_compat=0 constrained_intra=0 bframes=0 weightp=0 keyint=250 keyint_min=25 scenecut=0 intra_refresh=0 rc=cqp mbtree=0 qp=0
    Output #0, matroska, to 'output.mkv':
      Metadata:
        encoder         : Lavf53.31.100
        Stream #0:0: Video: h264, yuv420p, 1022x768, q=-1--1, 1k tbn, 30 tbc
        Stream #0:1: Audio: pcm_s16le, 48000 Hz, 2 channels, s16, 1536 kb/s
    Stream mapping:
      Stream #1:0 -> #0:0 (rawvideo -> libx264)
      Stream #0:0 -> #0:1 (pcm_s16le -> pcm_s16le)
    Press [q] to stop, [?] for help
    frame=    7 fps=  0 q=0.0 size=       1kB time=00:00:00.00 bitrate=   0.0kbits/s
    frame=   11 fps= 10 q=0.0 size=     545kB time=00:00:02.76 bitrate=1611.8kbits/s
    frame=   17 fps= 10 q=0.0 size=     673kB time=00:00:03.40 bitrate=1620.1kbits/s
    frame=   22 fps= 10 q=0.0 size=     769kB time=00:00:03.90 bitrate=1613.2kbits/s
    frame=   28 fps= 10 q=0.0 size=     929kB time=00:00:04.53 bitrate=1677.1kbits/s
    frame=   33 fps= 10 q=0.0 size=    1025kB time=00:00:05.00 bitrate=1678.4kbits/s
    frame=   38 fps= 10 q=0.0 size=    1142kB time=00:00:05.50 bitrate=1700.4kbits/s
    frame=   43 fps= 10 q=0.0 size=    1270kB time=00:00:06.06 bitrate=1714.3kbits/s
    frame=   48 fps= 10 q=0.0 size=    1366kB time=00:00:06.56 bitrate=1703.5kbits/s
    frame=   53 fps= 10 q=0.0 size=    1494kB time=00:00:07.11 bitrate=1719.7kbits/s
    video:419kB audio:2819kB global headers:0kB muxing overhead 2.428442%
    [libx264 @ 0xa771f40] frame I:1     Avg QP: 0.00  size:  4442
    [libx264 @ 0xa771f40] frame P:129   Avg QP: 0.00  size:  3288
    [libx264 @ 0xa771f40] mb I  I16..4: 100.0%  0.0%  0.0%
    [libx264 @ 0xa771f40] mb P  I16..4: 94.0%  0.0%  0.0%  P16..4:  0.0%  0.0%  0.0%  0.0%  0.0%    skip: 6.0%
    [libx264 @ 0xa771f40] coded y,uvDC,uvAC intra: 0.0% 0.0% 0.0% inter: 0.0% 0.0% 0.0%
    [libx264 @ 0xa771f40] i16 v,h,dc,p: 100%  0%  0%  0%
    [libx264 @ 0xa771f40] i8c dc,h,v,p: 98%  2%  0%  0%
    [libx264 @ 0xa771f40] kb/s:215.19
    I notice this behavior especially when there is any kind of animation on the screen (in this case a running video).
    Last edited by Max Jerry Horowitz; January 27th, 2012 at 06:58 AM.

  6. #176
    Join Date
    Sep 2006
    Beans
    3,713

    Re: HOWTO: Proper Screencasting on Linux

    That's quite the difference, but my tests show no difference:
    Code:
    $ ffmpeg -f x11grab -r 60 -s 1680x1040 -i :0.0 -vcodec libx264 -preset ultrafast -crf 0 -t 10 -y output.mkv
    ffmpeg version N-37154-g01e5e97 Copyright (c) 2000-2012 the FFmpeg developers
      built on Jan 25 2012 17:19:53 with gcc 4.6.2 20111223 (prerelease)
      configuration: --prefix=/usr --enable-gpl --enable-frei0r --enable-libfaac --enable-libmp3lame --enable-libutvideo --enable-libtheora --enable-libvo-aacenc --enable-version3 --enable-libvorbis --enable-libvpx --enable-libx264 --enable-nonfree --enable-x11grab
      libavutil      51. 34.101 / 51. 34.101
      libavcodec     53. 60.100 / 53. 60.100
      libavformat    53. 30.100 / 53. 30.100
      libavdevice    53.  4.100 / 53.  4.100
      libavfilter     2. 60.100 /  2. 60.100
      libswscale      2.  1.100 /  2.  1.100
      libswresample   0.  6.100 /  0.  6.100
      libpostproc    52.  0.100 / 52.  0.100
    [x11grab @ 0x26015e0] device: :0.0 -> display: :0.0 x: 0 y: 0 width: 1680 height: 1040
    [x11grab @ 0x26015e0] shared memory extension found
    [x11grab @ 0x26015e0] Estimating duration from bitrate, this may be inaccurate
    Input #0, x11grab, from ':0.0':
      Duration: N/A, start: 1327700470.316064, bitrate: N/A
        Stream #0:0: Video: rawvideo (BGRA / 0x41524742), bgra, 1680x1040, -2147483 kb/s, 60 tbr, 1000k tbn, 60 tbc
    Incompatible pixel format 'bgra' for codec 'libx264', auto-selecting format 'yuv420p'
    [buffer @ 0x2614820] w:1680 h:1040 pixfmt:bgra tb:1/1000000 sar:0/1 sws_param:
    [buffersink @ 0x260f920] auto-inserting filter 'auto-inserted scale 0' between the filter 'src' and the filter 'out'
    [scale @ 0x2610120] w:1680 h:1040 fmt:bgra -> w:1680 h:1040 fmt:yuv420p flags:0x4
    [libx264 @ 0x260e860] using cpu capabilities: MMX2 SSE2Fast SSSE3 FastShuffle SSE4.2
    [libx264 @ 0x260e860] profile High 4:4:4 Predictive, level 4.2, 4:2:0 8-bit
    [libx264 @ 0x260e860] 64 - core 120 r2146 bcd41db - H.264/MPEG-4 AVC codec - Copyleft 2003-2011 - http://www.videolan.org/x264.html - options: cabac=0 ref=1 deblock=0:0:0 analyse=0:0 me=dia subme=0 psy=0 mixed_ref=0 me_range=16 chroma_me=1 trellis=0 8x8dct=0 cqm=0 deadzone=21,11 fast_pskip=0 chroma_qp_offset=0 threads=12 sliced_threads=0 nr=0 decimate=1 interlaced=0 bluray_compat=0 constrained_intra=0 bframes=0 weightp=0 keyint=250 keyint_min=25 scenecut=0 intra_refresh=0 rc=cqp mbtree=0 qp=0
    Output #0, matroska, to 'output.mkv':
      Metadata:
        encoder         : Lavf53.30.100
        Stream #0:0: Video: h264, yuv420p, 1680x1040, q=-1--1, 1k tbn, 60 tbc
    Stream mapping:
      Stream #0:0 -> #0:0 (rawvideo -> libx264)
    Press [q] to stop, [?] for help
    frame=   22 fps=  0 q=0.0 size=     449kB time=00:00:00.23 bitrate=15702.8kbits/s
    frame=   43 fps= 41 q=0.0 size=     545kB time=00:00:00.76 bitrate=5816.0kbits/s
    frame=   64 fps= 41 q=0.0 size=     673kB time=00:00:01.28 bitrate=4290.9kbits/s
    frame=   85 fps= 41 q=0.0 size=     769kB time=00:00:01.81 bitrate=3465.0kbits/s
    frame=  106 fps= 41 q=0.0 size=     865kB time=00:00:02.33 bitrate=3034.4kbits/s
    frame=  127 fps= 41 q=0.0 size=     993kB time=00:00:02.85 bitrate=2852.9kbits/s
    frame=  148 fps= 40 q=0.0 size=    1089kB time=00:00:03.38 bitrate=2635.1kbits/s
    frame=  169 fps= 40 q=0.0 size=    1217kB time=00:00:03.90 bitrate=2555.4kbits/s
    frame=  190 fps= 40 q=0.0 size=    1313kB time=00:00:04.43 bitrate=2425.0kbits/s
    frame=  211 fps= 40 q=0.0 size=    1441kB time=00:00:04.95 bitrate=2384.0kbits/s
    frame=  232 fps= 40 q=0.0 size=    1557kB time=00:00:05.46 bitrate=2332.5kbits/s
    frame=  253 fps= 40 q=0.0 size=    1685kB time=00:00:06.00 bitrate=2300.1kbits/s
    frame=  274 fps= 40 q=0.0 size=    2152kB time=00:00:06.51 bitrate=2704.6kbits/s
    frame=  295 fps= 40 q=0.0 size=    2248kB time=00:00:07.03 bitrate=2617.6kbits/s
    frame=  316 fps= 40 q=0.0 size=    2344kB time=00:00:07.56 bitrate=2537.2kbits/s
    frame=  337 fps= 40 q=0.0 size=    2440kB time=00:00:08.08 bitrate=2472.2kbits/s
    frame=  358 fps= 40 q=0.0 size=    2536kB time=00:00:08.60 bitrate=2415.3kbits/s
    frame=  379 fps= 40 q=0.0 size=    2632kB time=00:00:09.13 bitrate=2360.2kbits/s
    frame=  400 fps= 40 q=0.0 size=    2728kB time=00:00:09.65 bitrate=2315.5kbits/s
    frame=  401 fps= 40 q=-1.0 Lsize=    2816kB time=00:00:09.99 bitrate=2306.7kbits/s    
    video:2812kB audio:0kB global headers:0kB muxing overhead 0.119283%
    [libx264 @ 0x260e860] frame I:2     Avg QP: 0.00  size:347847
    [libx264 @ 0x260e860] frame P:399   Avg QP: 0.00  size:  5472
    [libx264 @ 0x260e860] mb I  I16..4: 100.0%  0.0%  0.0%
    [libx264 @ 0x260e860] mb P  I16..4: 50.5%  0.0%  0.0%  P16..4:  0.0%  0.0%  0.0%  0.0%  0.0%    skip:49.5%
    [libx264 @ 0x260e860] coded y,uvDC,uvAC intra: 0.6% 0.4% 0.4% inter: 0.0% 0.0% 0.0%
    [libx264 @ 0x260e860] i16 v,h,dc,p: 100%  0%  0%  0%
    [libx264 @ 0x260e860] i8c dc,h,v,p: 86%  3% 11%  0%
    [libx264 @ 0x260e860] kb/s:2299.51
    Code:
    $ ffmpeg -f x11grab -r 60 -s 1676x1050 -i :0.0 -vcodec libx264 -preset ultrafast -crf 0 -t 10 -y output.mkv
    ffmpeg version N-37154-g01e5e97 Copyright (c) 2000-2012 the FFmpeg developers
      built on Jan 25 2012 17:19:53 with gcc 4.6.2 20111223 (prerelease)
      configuration: --prefix=/usr --enable-gpl --enable-frei0r --enable-libfaac --enable-libmp3lame --enable-libutvideo --enable-libtheora --enable-libvo-aacenc --enable-version3 --enable-libvorbis --enable-libvpx --enable-libx264 --enable-nonfree --enable-x11grab
      libavutil      51. 34.101 / 51. 34.101
      libavcodec     53. 60.100 / 53. 60.100
      libavformat    53. 30.100 / 53. 30.100
      libavdevice    53.  4.100 / 53.  4.100
      libavfilter     2. 60.100 /  2. 60.100
      libswscale      2.  1.100 /  2.  1.100
      libswresample   0.  6.100 /  0.  6.100
      libpostproc    52.  0.100 / 52.  0.100
    [x11grab @ 0x17475e0] device: :0.0 -> display: :0.0 x: 0 y: 0 width: 1676 height: 1050
    [x11grab @ 0x17475e0] shared memory extension found
    [x11grab @ 0x17475e0] Estimating duration from bitrate, this may be inaccurate
    Input #0, x11grab, from ':0.0':
      Duration: N/A, start: 1327700329.009954, bitrate: N/A
        Stream #0:0: Video: rawvideo (BGRA / 0x41524742), bgra, 1676x1050, -2147483 kb/s, 60 tbr, 1000k tbn, 60 tbc
    Incompatible pixel format 'bgra' for codec 'libx264', auto-selecting format 'yuv420p'
    [buffer @ 0x175a820] w:1676 h:1050 pixfmt:bgra tb:1/1000000 sar:0/1 sws_param:
    [buffersink @ 0x1755920] auto-inserting filter 'auto-inserted scale 0' between the filter 'src' and the filter 'out'
    [scale @ 0x1756120] w:1676 h:1050 fmt:bgra -> w:1676 h:1050 fmt:yuv420p flags:0x4
    [libx264 @ 0x1754860] using cpu capabilities: MMX2 SSE2Fast SSSE3 FastShuffle SSE4.2
    [libx264 @ 0x1754860] profile High 4:4:4 Predictive, level 4.2, 4:2:0 8-bit
    [libx264 @ 0x1754860] 64 - core 120 r2146 bcd41db - H.264/MPEG-4 AVC codec - Copyleft 2003-2011 - http://www.videolan.org/x264.html - options: cabac=0 ref=1 deblock=0:0:0 analyse=0:0 me=dia subme=0 psy=0 mixed_ref=0 me_range=16 chroma_me=1 trellis=0 8x8dct=0 cqm=0 deadzone=21,11 fast_pskip=0 chroma_qp_offset=0 threads=12 sliced_threads=0 nr=0 decimate=1 interlaced=0 bluray_compat=0 constrained_intra=0 bframes=0 weightp=0 keyint=250 keyint_min=25 scenecut=0 intra_refresh=0 rc=cqp mbtree=0 qp=0
    Output #0, matroska, to 'output.mkv':
      Metadata:
        encoder         : Lavf53.30.100
        Stream #0:0: Video: h264, yuv420p, 1676x1050, q=-1--1, 1k tbn, 60 tbc
    Stream mapping:
      Stream #0:0 -> #0:0 (rawvideo -> libx264)
    Press [q] to stop, [?] for help
    frame=   21 fps=  0 q=0.0 size=     417kB time=00:00:00.21 bitrate=15797.8kbits/s
    frame=   41 fps= 41 q=0.0 size=     545kB time=00:00:00.73 bitrate=6077.5kbits/s
    frame=   61 fps= 40 q=0.0 size=     673kB time=00:00:01.23 bitrate=4464.7kbits/s
    frame=   81 fps= 40 q=0.0 size=     769kB time=00:00:01.73 bitrate=3633.0kbits/s
    frame=  101 fps= 40 q=0.0 size=     897kB time=00:00:02.23 bitrate=3287.6kbits/s
    frame=  121 fps= 40 q=0.0 size=     993kB time=00:00:02.73 bitrate=2974.0kbits/s
    frame=  141 fps= 40 q=0.0 size=    1089kB time=00:00:03.24 bitrate=2744.6kbits/s
    frame=  161 fps= 40 q=0.0 size=    1217kB time=00:00:03.75 bitrate=2657.6kbits/s
    frame=  181 fps= 40 q=0.0 size=    1313kB time=00:00:04.25 bitrate=2530.0kbits/s
    frame=  201 fps= 40 q=0.0 size=    1441kB time=00:00:04.74 bitrate=2484.9kbits/s
    frame=  221 fps= 40 q=0.0 size=    1582kB time=00:00:05.25 bitrate=2469.1kbits/s
    frame=  241 fps= 40 q=0.0 size=    1710kB time=00:00:05.75 bitrate=2436.8kbits/s
    frame=  261 fps= 40 q=0.0 size=    1838kB time=00:00:06.26 bitrate=2403.4kbits/s
    frame=  281 fps= 40 q=0.0 size=    2279kB time=00:00:06.76 bitrate=2759.2kbits/s
    frame=  301 fps= 40 q=0.0 size=    2375kB time=00:00:07.26 bitrate=2677.6kbits/s
    frame=  321 fps= 40 q=0.0 size=    2471kB time=00:00:07.76 bitrate=2606.8kbits/s
    frame=  341 fps= 40 q=0.0 size=    2567kB time=00:00:08.26 bitrate=2543.9kbits/s
    frame=  361 fps= 40 q=0.0 size=    2663kB time=00:00:08.76 bitrate=2488.5kbits/s
    frame=  381 fps= 40 q=0.0 size=    2759kB time=00:00:09.28 bitrate=2434.9kbits/s
    frame=  397 fps= 40 q=-1.0 Lsize=    2913kB time=00:00:10.00 bitrate=2386.5kbits/s    
    video:2910kB audio:0kB global headers:0kB muxing overhead 0.114339%
    [libx264 @ 0x1754860] frame I:2     Avg QP: 0.00  size:337367
    [libx264 @ 0x1754860] frame P:395   Avg QP: 0.00  size:  5834
    [libx264 @ 0x1754860] mb I  I16..4: 100.0%  0.0%  0.0%
    [libx264 @ 0x1754860] mb P  I16..4: 53.5%  0.0%  0.0%  P16..4:  0.1%  0.0%  0.0%  0.0%  0.0%    skip:46.4%
    [libx264 @ 0x1754860] coded y,uvDC,uvAC intra: 0.5% 0.2% 0.2% inter: 0.1% 0.0% 0.0%
    [libx264 @ 0x1754860] i16 v,h,dc,p: 100%  0%  0%  0%
    [libx264 @ 0x1754860] i8c dc,h,v,p: 91%  1%  8%  0%
    [libx264 @ 0x1754860] kb/s:2383.36
    I'd be interested in seeing results from more users.
    Last edited by FakeOutdoorsman; January 27th, 2012 at 10:44 PM. Reason: formatting

  7. #177
    Join Date
    Jan 2012
    Beans
    4

    Re: HOWTO: Proper Screencasting on Linux

    I made two tests on my wife's laptop:
    Code:
    $ ffmpeg -f x11grab -r 60 -s 1024x768 -i :0.0 -vcodec libx264 -preset ultrafast -crf 0 -t 10 -y output.mkv
    ffmpeg version git-2012-01-30-2ab5fea Copyright (c) 2000-2012 the FFmpeg developers
      built on Jan 30 2012 20:34:35 with gcc 4.5.2
      configuration: --enable-gpl --enable-libfaac --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libtheora --enable-libvorbis --enable-libx264 --enable-nonfree --enable-postproc --enable-version3 --enable-x11grab --enable-libvpx
      libavutil      51. 35.101 / 51. 35.101
      libavcodec     54.  0.102 / 54.  0.102
      libavformat    54.  0.100 / 54.  0.100
      libavdevice    53.  4.100 / 53.  4.100
      libavfilter     2. 60.100 /  2. 60.100
      libswscale      2.  1.100 /  2fps= 35.  1.100
      libswresample   0.  6.100 /  0.  6.100
      libpostproc    52.  0.100 / 52.  0.100
    [x11grab @ 0x18c1620] device: :0.0 -> display: :0.0 x: 0 y: 0 width: 1024 height: 768
    [x11grab @ 0x18c1620] shared memory extension found
    [x11grab @ 0x18c1620] Estimating duration from bitrate, this may be inaccurate
    Input #0, x11grab, from ':0.0':
      Duration: N/A, start: 1327952308.947459, bitrate: 1509949 kb/s
        Stream #0:0: Video: rawvideo (BGRA / 0x41524742), bgra, 1024x768, 1509949 kb/s, 60 tbr, 1000k tbn, 60 tbc
    Incompatible pixel format 'bgra' for codec 'libx264', auto-selecting format 'yuv420p'
    [buffer @ 0x18d7740] w:1024 h:768 pixfmt:bgra tb:1/1000000 sar:0/1 sws_param:
    [buffersink @ 0x18d5800] auto-inserting filter 'auto-inserted scale 0' between the filter 'src' and the filter 'out'
    [scale @ 0x18d60c0] w:1024 h:768 fmt:bgra -> w:1024 h:768 fmt:yuv420p flags:0x4
    [libx264 @ 0x18d4600] using cpu capabilities: MMX2 SSE2Fast SSSE3 FastShuffle SSE4.2
    [libx264 @ 0x18d4600] profile High 4:4:4 Predictive, level 3.2, 4:2:0 8-bit
    [libx264 @ 0x18d4600] 64 - core 120 r2146 bcd41db - H.264/MPEG-4 AVC codec - Copyleft 2003-2011 - http://www.videolan.org/x264.html - options: cabac=0 ref=1 deblock=0:0:0 analyse=0:0 me=dia subme=0 psy=0 mixed_ref=0 me_range=16 chroma_me=1 trellis=0 8x8dct=0 cqm=0 deadzone=21,11 fast_pskip=0 chroma_qp_offset=0 threads=6 sliced_threads=0 nr=0 decimate=1 interlaced=0 bluray_compat=0 constrained_intra=0 bframes=0 weightp=0 keyint=250 keyint_min=25 scenecut=0 intra_refresh=0 rc=cqp mbtree=0 qp=0
    Output #0, matroska, to 'output.mkv':
      Metadata:
        encoder         : Lavf54.0.100
        Stream #0:0: Video: h264, yuv420p, 1024x768, q=-1--1, 1k tbn, 60 tbc
    Stream mapping:
      Stream #0:0 -> #0:0 (rawvideo -> libx264)
    Press [q] to stop, [?] for help
    frame=  354 fps= 35 q=-1.0 Lsize=    1519kB time=00:00:10.00 bitrate=1244.5kbits/s    
    video:1516kB audio:0kB global headers:0kB muxing overhead 0.198902%
    [libx264 @ 0x18d4600] frame I:2     Avg QP: 0.00  size:204444
    [libx264 @ 0x18d4600] frame P:352   Avg QP: 0.00  size:  3247
    [libx264 @ 0x18d4600] mb I  I16..4: 100.0%  0.0%  0.0%
    [libx264 @ 0x18d4600] mb P  I16..4: 44.9%  0.0%  0.0%  P16..4:  0.0%  0.0%  0.0%  0.0%  0.0%    skip:55.0%
    [libx264 @ 0x18d4600] coded y,uvDC,uvAC intra: 0.8% 6.2% 6.2% inter: 0.0% 0.0% 0.0%
    [libx264 @ 0x18d4600] i16 v,h,dc,p: 100%  0%  0%  0%
    [libx264 @ 0x18d4600] i8c dc,h,v,p: 89%  3%  8%  0%
    [libx264 @ 0x18d4600] kb/s:1239.52
    Code:
    $ ffmpeg -f x11grab -r 60 -s 1022x768 -i :0.0 -vcodec libx264 -preset ultrafast -crf 0 -t 10 -y output.mkv
    ffmpeg version git-2012-01-30-2ab5fea Copyright (c) 2000-2012 the FFmpeg developers
      built on Jan 30 2012 20:34:35 with gcc 4.5.2
      configuration: --enable-gpl --enable-libfaac --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libtheora --enable-libvorbis --enable-libx264 --enable-nonfree --enable-postproc --enable-version3 --enable-x11grab --enable-libvpx
      libavutil      51. 35.101 / 51. 35.101
      libavcodec     54.  0.102 / 54.  0.102
      libavformat    54.  0.100 / 54.  0.100
      libavdevice    53.  4.100 / 53.  4.100
      libavfilter     2. 60.100 /  2. 60.100
      libswscale      2.  1.100 /  2.  1.100
      libswresample   0.  6.100 /  0.  6.100
      libpostproc    52.  0.100 / 52.  0.100
    [x11grab @ 0x2aa2620] device: :0.0 -> display: :0.0 x: 0 y: 0 width: 1022 height: 768
    [x11grab @ 0x2aa2620] shared memory extension found
    [x11grab @ 0x2aa2620] Estimating duration from bitrate, this may be inaccurate
    Input #0, x11grab, from ':0.0':
      Duration: N/A, start: 1327952327.890540, bitrate: 1507000 kb/s
        Stream #0:0: Video: rawvideo (BGRA / 0x41524742), bgra, 1022x768, 1507000 kb/s, 60 tbr, 1000k tbn, 60 tbc
    Incompatible pixel format 'bgra' for codec 'libx264', auto-selecting format 'yuv420p'
    [buffer @ 0x2ab8740] w:1022 h:768 pixfmt:bgra tb:1/1000000 sar:0/1 sws_param:
    [buffersink @ 0x2ab6800] auto-inserting filter 'auto-inserted scale 0' between the filter 'src' and the filter 'out'
    [scale @ 0x2ab70c0] w:1022 h:768 fmt:bgra -> w:1022 h:768 fmt:yuv420p flags:0x4reads=6
    [libx264 @ 0x2ab5600] using cpu capabilities: MMX2 SSE2Fast SSSE3 FastShuffle SSE4.2
    [libx264 @ 0x2ab5600] profile High 4:4:4 Predictive, level 3.2, 4:2:0 8-bit
    [libx264 @ 0x2ab5600] 64 - core 120 r2146 bcd41db - H.264/MPEG-4 AVC codec - Copyleft 2003-2011 - http://www.videolan.org/x264.html - options: cabac=0 ref=1 deblock=0:0:0 analyse=0:0 me=dia subme=0 psy=0 mixed_ref=0 me_range=16 chroma_me=1 trellis=0 8x8dct=0 cqm=0 deadzone=21,11 fast_pskip=0 chroma_qp_offset=0 thfps= 14reads=6 sliced_threads=0 nr=0 decimate=1 interlaced=0 bluray_compat=0 constrained_intra=0 bframes=0 weightp=0 keyint=250 keyint_min=25 scenecut=0 intra_refresh=0 rc=cqp mbtree=0 qp=0
    Output #0, matroska, to 'output.mkv':
      Metadata:
        encoder         : Lavf54.0.100
        Stream #0:0: Video: h264, yuv420p, 1022x768, q=-1--1, 1k tbn, 60 tbc
    Stream mapping:
      Stream #0:0 -> #0:0 (rawvideo -> libx264)
    Press [q] to stop, [?] for help
    frame=  139 fps= 14 q=-1.0 Lsize=     901kB time=00:00:09.95 bitrate= 741.5kbits/s    
    video:899kB audio:0kB global headers:0kB muxing overhead 0.168352%
    [libx264 @ 0x2ab5600] frame I:1     Avg QP: 0.00  size:239345
    [libx264 @ 0x2ab5600] frame P:138   Avg QP: 0.00  size:  4933
    [libx264 @ 0x2ab5600] mb I  I16..4: 100.0%  0.0%  0.0%
    [libx264 @ 0x2ab5600] mb P  I16..4: 45.2%  0.0%  0.0%  P16..4:  0.1%  0.0%  0.0%  0.0%  0.0%    skip:54.7%
    [libx264 @ 0x2ab5600] coded y,uvDC,uvAC intra: 1.5% 6.8% 6.8% inter: 0.1% 0.1% 0.1%
    [libx264 @ 0x2ab5600] i16 v,h,dc,p: 99%  1%  0%  0%
    [libx264 @ 0x2ab5600] i8c dc,h,v,p: 88%  3%  8%  0%
    [libx264 @ 0x2ab5600] kb/s:736.12
    It is the same behavior as on my laptop. Incidentally, the frame-rate in this test seems to be independent from the height of the captured area, only the width has to be divisible by 16. And it doesn't matter whether I am filming an animation or not.
    Do you think, that it depends on the graphics card, whether I have to follow the "divisible by 16"-rule? Both of the tested laptops are using an Intel-HD graphics card. Or, there is no rule, and I simply made a mistake?

  8. #178
    Join Date
    Sep 2006
    Location
    CA
    Beans
    12

    Re: HOWTO: Proper Screencasting on Linux

    Seems like a lot of tutorials are out there, and I've tried almost everyone of them with no luck.

    What are the chances of someone building a bit of code/app just to handle this and let us just pay for it.

    I shelled out around 300 bucks for Camtasia for my windows machine and would be happy to pay a similar price if one was available for Ubuntu.

    Whew, this is the only thing holding me up from going full Ubuntu.

  9. #179
    Join Date
    Sep 2006
    Beans
    3,713

    Re: HOWTO: Proper Screencasting on Linux

    Quote Originally Posted by SeanIM View Post
    Seems like a lot of tutorials are out there, and I've tried almost everyone of them with no luck.
    Did you try this one? If you did, what is wrong with it?

    Quote Originally Posted by SeanIM View Post
    What are the chances of someone building a bit of code/app just to handle this and let us just pay for it.
    You can always try gtk-recordMyDesktop.

  10. #180
    Join Date
    May 2006
    Location
    Milwaukee,WI
    Beans
    6,280
    Distro
    Xubuntu 14.04 Trusty Tahr

    Re: HOWTO: Proper Screencasting on Linux

    Quote Originally Posted by FakeOutdoorsman View Post
    Did you try this one? If you did, what is wrong with it?


    You can always try gtk-recordMyDesktop.
    i use this script and it works fine on my computer.

    http://pastebin.com/FUVS1H0V

Page 18 of 25 FirstFirst ... 81617181920 ... LastLast

Tags for this Thread

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •