Opened 4 years ago

Closed 4 years ago

#4080 closed enhancement (fixed)

Implement the -framerate option for avfoundation

Reported by: LordHDL Owned by:
Priority: wish Component: avdevice
Version: git-master Keywords: avfoundation
Cc: Blocked By:
Blocking: Reproduced by developer: yes
Analyzed by developer: no

Description

Summary of the bug: Cannot change the frame rate of screen recordings using AV Foundation.
How to reproduce: Record video with AV Foundation.

./ffmpeg -f avfoundation -pix_fmt uyvy422 -video_device_index 3 -audio_device_index 3 -i "" -framerate 60 -r 60 -c:v libx264 -crf 0 -vf crop=426:240:507:339 -c:a pcm_s16le -ar 48000 out.mov
ffmpeg 2.4.3
built on November 4, 2014

It currently seems impossible to change the frame rate, and the resulting video lags behind the audio. Example: https://www.dropbox.com/s/udl4rrdhgrxmyt5/Left%20side%20426x240.mp4?dl=0

Change History (19)

comment:1 Changed 4 years ago by cehoyos

  • Component changed from undetermined to avdevice
  • Keywords avfoundation added
  • Priority changed from normal to wish
  • Summary changed from AV Foundation frame rate locked to 15 FPS to AV Foundation frame rate setting ignored
  • Type changed from defect to enhancement
  • Version changed from 2.4.3 to git-master

Using -r and -framerate together is not supported afaict.

For future tickets: Please always provide the failing minimal command line (no audio input, -vcodec mpeg4 -qscale 2 instead of using external libraries) together with the complete, uncut console output and please always test current FFmpeg git head before opening a ticket.

comment:2 Changed 4 years ago by LordHDL

I have a new output file that goes beyond 15 FPS, yet the playback speed is absurdly fast now: https://www.dropbox.com/s/aa5umf9729h3u8c/out.mov?dl=0

Last login: Tue Nov  4 13:35:37 on ttys001
HDLs-MacBook-Pro:~ HDL$ cd ~/Desktop
HDLs-MacBook-Pro:Desktop HDL$ ./ffmpeg -f avfoundation -r 60 -video_device_index 3 -i "" -c:v mpeg4 -qscale 2 -vf crop=426:240:507:339 out.mov
ffmpeg version N-67454-g0971154-tessus Copyright (c) 2000-2014 the FFmpeg developers
  built on Nov  3 2014 23:27:57 with Apple LLVM version 6.0 (clang-600.0.54) (based on LLVM 3.5svn)
  configuration: --cc=/usr/bin/clang --prefix=/Users/tessus/data/ext/ffmpeg/sw --as=yasm --extra-version=tessus --disable-shared --enable-static --disable-ffplay --enable-gpl --enable-pthreads --enable-postproc --enable-libmp3lame --enable-libtheora --enable-libvorbis --enable-libx264 --enable-libx265 --enable-libxvid --enable-libspeex --enable-bzlib --enable-zlib --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libxavs --enable-libsoxr --enable-libwavpack --enable-version3 --enable-libvo-aacenc --enable-libvo-amrwbenc --enable-libvpx --enable-libgsm --enable-libopus --enable-libmodplug --enable-fontconfig --enable-libfreetype --enable-libass --enable-libbluray --enable-filters --disable-indev=qtkit --disable-indev=x11grab_xcb --enable-runtime-cpudetect
  libavutil      54. 11.100 / 54. 11.100
  libavcodec     56. 10.102 / 56. 10.102
  libavformat    56. 12.100 / 56. 12.100
  libavdevice    56.  2.100 / 56.  2.100
  libavfilter     5.  2.102 /  5.  2.102
  libswscale      3.  1.101 /  3.  1.101
  libswresample   1.  1.100 /  1.  1.100
  libpostproc    53.  3.100 / 53.  3.100
2014-11-04 13:38:05.334 ffmpeg[2662:164994] alloc
2014-11-04 13:38:05.334 ffmpeg[2662:164994] query 2
2014-11-04 13:38:05.334 ffmpeg[2662:164994] release 2
2014-11-04 13:38:05.334 ffmpeg[2662:164994] ** MyPlugInitializeWithObjectID
2014-11-04 13:38:05.335 ffmpeg[2662:164994] init
2014-11-04 13:38:05.335 ffmpeg[2662:164994] MyPlugObjectSetPropertyData
2014-11-04 13:38:05.335 ffmpeg[2662:164994] MyPlugObjectSetPropertyData
2014-11-04 13:38:05.335 ffmpeg[2662:164994] MyPlugObjectSetPropertyData
2014-11-04 13:38:05.412 ffmpeg[2662:164994] <CMVideoFormatDescription 0x7fff1bf14550 [0x7fff7bfb7cf0]> {
	mediaType:'vide' 
	mediaSubType:'BGRA' 
	mediaSpecific: {
		codecType: 'BGRA'		dimensions: 640 x 480 
	} 
	extensions: {<CFBasicHash 0x7fff1bf14580 [0x7fff7bfb7cf0]>{type = immutable dict, count = 4,
entries =>
	1 : <CFString 0x7fff7c3e2f08 [0x7fff7bfb7cf0]>{contents = "CVFieldCount"} = <CFNumber 0x137 [0x7fff7bfb7cf0]>{value = +1, type = kCFNumberSInt64Type}
	2 : <CFString 0x10b01e7f0 [0x7fff7bfb7cf0]>{contents = "CVBytesPerRow"} = <CFNumber 0xa0037 [0x7fff7bfb7cf0]>{value = +2560, type = kCFNumberSInt64Type}
	4 : <CFString 0x7fff7a4d8e50 [0x7fff7bfb7cf0]>{contents = "com.apple.cmio.format_extension.video.only_has_i_frames"} = <CFBoolean 0x7fff7bfb86c8 [0x7fff7bfb7cf0]>{value = true}
	5 : <CFString 0x7fff7b59d6f0 [0x7fff7bfb7cf0]>{contents = "FormatName"} = <CFString 0x10b01e810 [0x7fff7bfb7cf0]>{contents = "Component Video - CCIR-601 RGB"}
}
}
}
2014-11-04 13:38:05.413 ffmpeg[2662:164994] alloc
2014-11-04 13:38:05.413 ffmpeg[2662:164994] query 2
2014-11-04 13:38:05.413 ffmpeg[2662:164994] release 2
2014-11-04 13:38:05.413 ffmpeg[2662:164994] ** MyPlugInitializeWithObjectID
2014-11-04 13:38:05.413 ffmpeg[2662:164994] init
2014-11-04 13:38:05.413 ffmpeg[2662:164994] MyPlugObjectSetPropertyData
2014-11-04 13:38:05.413 ffmpeg[2662:164994] MyPlugObjectSetPropertyData
2014-11-04 13:38:05.413 ffmpeg[2662:164994] MyPlugObjectSetPropertyData
2014-11-04 13:38:05.414 ffmpeg[2662:164994] <CMVideoFormatDescription 0x7fff1bf14bb0 [0x7fff7bfb7cf0]> {
	mediaType:'vide' 
	mediaSubType:'2vuy' 
	mediaSpecific: {
		codecType: '2vuy'		dimensions: 640 x 480 
	} 
	extensions: {<CFBasicHash 0x7fff1bf14be0 [0x7fff7bfb7cf0]>{type = immutable dict, count = 6,
entries =>
	0 : <CFString 0x7fff7c3e3088 [0x7fff7bfb7cf0]>{contents = "CVImageBufferYCbCrMatrix"} = <CFString 0x7fff7c3e30c8 [0x7fff7bfb7cf0]>{contents = "ITU_R_601_4"}
	1 : <CFString 0x7fff7c3e2f08 [0x7fff7bfb7cf0]>{contents = "CVFieldCount"} = <CFNumber 0x137 [0x7fff7bfb7cf0]>{value = +1, type = kCFNumberSInt64Type}
	2 : <CFString 0x7fff7c3e3188 [0x7fff7bfb7cf0]>{contents = "CVImageBufferTransferFunction"} = <CFString 0x7fff7c3e30a8 [0x7fff7bfb7cf0]>{contents = "ITU_R_709_2"}
	4 : <CFString 0x7fff7a4d8e50 [0x7fff7bfb7cf0]>{contents = "com.apple.cmio.format_extension.video.only_has_i_frames"} = <CFBoolean 0x7fff7bfb86c8 [0x7fff7bfb7cf0]>{value = true}
	5 : <CFString 0x7fff7c3e3108 [0x7fff7bfb7cf0]>{contents = "CVImageBufferColorPrimaries"} = <CFString 0x7fff7c3e3148 [0x7fff7bfb7cf0]>{contents = "SMPTE_C"}
	6 : <CFString 0x7fff7b59d6f0 [0x7fff7bfb7cf0]>{contents = "FormatName"} = <CFString 0x10b01e870 [0x7fff7bfb7cf0]>{contents = "Component Video - CCIR-601 uyvy"}
}
}
}
2014-11-04 13:38:05.516 ffmpeg[2662:164994] MyPlugObjectHasProperty
2014-11-04 13:38:05.517 ffmpeg[2662:164994] enog
2014-11-04 13:38:05.517 ffmpeg[2662:164994] bolg
2014-11-04 13:38:05.517 ffmpeg[2662:164994] 0
2014-11-04 13:38:05.517 ffmpeg[2662:164994] MyPlugObjectSetPropertyData
2014-11-04 13:38:05.517 ffmpeg[2662:164994] MyPlugObjectSetPropertyData
2014-11-04 13:38:05.517 ffmpeg[2662:164994] MyPlugObjectSetPropertyData
2014-11-04 13:38:05.517 ffmpeg[2662:164994] MyPlugObjectSetPropertyData
2014-11-04 13:38:05.517 ffmpeg[2662:164994] MyPlugObjectSetPropertyData
2014-11-04 13:38:05.517 ffmpeg[2662:164994] MyPlugObjectGetPropertyDataSize
2014-11-04 13:38:05.518 ffmpeg[2662:164994] sel dnwo
2014-11-04 13:38:05.518 ffmpeg[2662:164994] scope bolg
2014-11-04 13:38:05.518 ffmpeg[2662:164994] elt 0
2014-11-04 13:38:05.518 ffmpeg[2662:164994] MyPlugObjectGetPropertyDataSize
2014-11-04 13:38:05.518 ffmpeg[2662:164994] sel dnwo
2014-11-04 13:38:05.518 ffmpeg[2662:164994] scope bolg
2014-11-04 13:38:05.518 ffmpeg[2662:164994] elt 0
2014-11-04 13:38:05.518 ffmpeg[2662:164994] MyPlugObjectGetPropertyDataSize
2014-11-04 13:38:05.518 ffmpeg[2662:164994] sel dnwo
2014-11-04 13:38:05.518 ffmpeg[2662:164994] scope bolg
2014-11-04 13:38:05.519 ffmpeg[2662:164994] elt 0
2014-11-04 13:38:05.519 ffmpeg[2662:164994] MyPlugObjectGetPropertyDataSize
2014-11-04 13:38:05.519 ffmpeg[2662:164994] sel dnwo
2014-11-04 13:38:05.519 ffmpeg[2662:164994] scope bolg
2014-11-04 13:38:05.519 ffmpeg[2662:164994] elt 0
2014-11-04 13:38:05.519 ffmpeg[2662:164994] MyPlugObjectGetPropertyDataSize
2014-11-04 13:38:05.519 ffmpeg[2662:164994] sel dnwo
2014-11-04 13:38:05.519 ffmpeg[2662:164994] scope bolg
2014-11-04 13:38:05.519 ffmpeg[2662:164994] elt 0
2014-11-04 13:38:05.519 ffmpeg[2662:164994] MyPlugObjectGetPropertyDataSize
2014-11-04 13:38:05.520 ffmpeg[2662:164994] sel dnwo
2014-11-04 13:38:05.520 ffmpeg[2662:164994] scope bolg
2014-11-04 13:38:05.520 ffmpeg[2662:164994] elt 0
2014-11-04 13:38:05.520 ffmpeg[2662:164994] MyPlugObjectSetPropertyData
2014-11-04 13:38:05.520 ffmpeg[2662:164994] MyPlugObjectHasProperty
2014-11-04 13:38:05.520 ffmpeg[2662:164994] grrf
2014-11-04 13:38:05.520 ffmpeg[2662:164994] bolg
2014-11-04 13:38:05.520 ffmpeg[2662:164994] 0
2014-11-04 13:38:05.520 ffmpeg[2662:164994] MyPlugObjectHasProperty
2014-11-04 13:38:05.520 ffmpeg[2662:164994] grrf
2014-11-04 13:38:05.521 ffmpeg[2662:164994] bolg
2014-11-04 13:38:05.521 ffmpeg[2662:164994] 0
2014-11-04 13:38:05.521 ffmpeg[2662:164994] MyPlugObjectHasProperty
2014-11-04 13:38:05.521 ffmpeg[2662:164994] trfn
2014-11-04 13:38:05.521 ffmpeg[2662:164994] bolg
2014-11-04 13:38:05.521 ffmpeg[2662:164994] 0
2014-11-04 13:38:05.521 ffmpeg[2662:164994] MyPlugObjectHasProperty
2014-11-04 13:38:05.521 ffmpeg[2662:164994] trfm
2014-11-04 13:38:05.521 ffmpeg[2662:164994] bolg
2014-11-04 13:38:05.522 ffmpeg[2662:164994] 0
2014-11-04 13:38:05.522 ffmpeg[2662:164994] MyPlugObjectHasProperty
2014-11-04 13:38:05.522 ffmpeg[2662:164994] trfn
2014-11-04 13:38:05.522 ffmpeg[2662:164994] bolg
2014-11-04 13:38:05.522 ffmpeg[2662:164994] 0
2014-11-04 13:38:05.522 ffmpeg[2662:164994] MyPlugObjectHasProperty
2014-11-04 13:38:05.522 ffmpeg[2662:164994] dulp
2014-11-04 13:38:05.522 ffmpeg[2662:164994] tpni
2014-11-04 13:38:05.522 ffmpeg[2662:164994] 0
2014-11-04 13:38:05.522 ffmpeg[2662:164994] MyPlugObjectGetPropertyDataSize
2014-11-04 13:38:05.523 ffmpeg[2662:164994] sel dnwo
2014-11-04 13:38:05.523 ffmpeg[2662:164994] scope bolg
2014-11-04 13:38:05.523 ffmpeg[2662:164994] elt 0
2014-11-04 13:38:05.523 ffmpeg[2662:164994] MyPlugObjectHasProperty
2014-11-04 13:38:05.523 ffmpeg[2662:164994] enog
2014-11-04 13:38:05.523 ffmpeg[2662:164994] bolg
2014-11-04 13:38:05.523 ffmpeg[2662:164994] 0
2014-11-04 13:38:05.523 ffmpeg[2662:164994] MyPlugObjectSetPropertyData
2014-11-04 13:38:05.523 ffmpeg[2662:164994] MyPlugObjectSetPropertyData
2014-11-04 13:38:05.523 ffmpeg[2662:164994] MyPlugObjectSetPropertyData
2014-11-04 13:38:05.524 ffmpeg[2662:164994] MyPlugObjectSetPropertyData
2014-11-04 13:38:05.524 ffmpeg[2662:164994] MyPlugObjectSetPropertyData
2014-11-04 13:38:05.524 ffmpeg[2662:164994] MyPlugObjectGetPropertyDataSize
2014-11-04 13:38:05.524 ffmpeg[2662:164994] sel dnwo
2014-11-04 13:38:05.524 ffmpeg[2662:164994] scope bolg
2014-11-04 13:38:05.524 ffmpeg[2662:164994] elt 0
2014-11-04 13:38:05.524 ffmpeg[2662:164994] MyPlugObjectGetPropertyDataSize
2014-11-04 13:38:05.524 ffmpeg[2662:164994] sel dnwo
2014-11-04 13:38:05.524 ffmpeg[2662:164994] scope bolg
2014-11-04 13:38:05.524 ffmpeg[2662:164994] elt 0
2014-11-04 13:38:05.524 ffmpeg[2662:164994] MyPlugObjectGetPropertyDataSize
2014-11-04 13:38:05.525 ffmpeg[2662:164994] sel dnwo
2014-11-04 13:38:05.525 ffmpeg[2662:164994] scope bolg
2014-11-04 13:38:05.525 ffmpeg[2662:164994] elt 0
2014-11-04 13:38:05.525 ffmpeg[2662:164994] MyPlugObjectGetPropertyDataSize
2014-11-04 13:38:05.525 ffmpeg[2662:164994] sel dnwo
2014-11-04 13:38:05.525 ffmpeg[2662:164994] scope bolg
2014-11-04 13:38:05.525 ffmpeg[2662:164994] elt 0
2014-11-04 13:38:05.525 ffmpeg[2662:164994] MyPlugObjectGetPropertyDataSize
2014-11-04 13:38:05.525 ffmpeg[2662:164994] sel dnwo
2014-11-04 13:38:05.526 ffmpeg[2662:164994] scope bolg
2014-11-04 13:38:05.526 ffmpeg[2662:164994] elt 0
2014-11-04 13:38:05.526 ffmpeg[2662:164994] MyPlugObjectGetPropertyDataSize
2014-11-04 13:38:05.526 ffmpeg[2662:164994] sel dnwo
2014-11-04 13:38:05.526 ffmpeg[2662:164994] scope bolg
2014-11-04 13:38:05.526 ffmpeg[2662:164994] elt 0
2014-11-04 13:38:05.526 ffmpeg[2662:164994] MyPlugObjectSetPropertyData
2014-11-04 13:38:05.527 ffmpeg[2662:164994] MyPlugObjectHasProperty
2014-11-04 13:38:05.527 ffmpeg[2662:164994] grrf
2014-11-04 13:38:05.527 ffmpeg[2662:164994] bolg
2014-11-04 13:38:05.527 ffmpeg[2662:164994] 0
2014-11-04 13:38:05.527 ffmpeg[2662:164994] MyPlugObjectHasProperty
2014-11-04 13:38:05.527 ffmpeg[2662:164994] grrf
2014-11-04 13:38:05.527 ffmpeg[2662:164994] bolg
2014-11-04 13:38:05.527 ffmpeg[2662:164994] 0
2014-11-04 13:38:05.527 ffmpeg[2662:164994] MyPlugObjectHasProperty
2014-11-04 13:38:05.528 ffmpeg[2662:164994] trfn
2014-11-04 13:38:05.528 ffmpeg[2662:164994] bolg
2014-11-04 13:38:05.528 ffmpeg[2662:164994] 0
2014-11-04 13:38:05.528 ffmpeg[2662:164994] MyPlugObjectHasProperty
2014-11-04 13:38:05.528 ffmpeg[2662:164994] trfm
2014-11-04 13:38:05.528 ffmpeg[2662:164994] bolg
2014-11-04 13:38:05.528 ffmpeg[2662:164994] 0
2014-11-04 13:38:05.528 ffmpeg[2662:164994] MyPlugObjectHasProperty
2014-11-04 13:38:05.528 ffmpeg[2662:164994] trfn
2014-11-04 13:38:05.529 ffmpeg[2662:164994] bolg
2014-11-04 13:38:05.529 ffmpeg[2662:164994] 0
2014-11-04 13:38:05.529 ffmpeg[2662:164994] MyPlugObjectHasProperty
2014-11-04 13:38:05.529 ffmpeg[2662:164994] dulp
2014-11-04 13:38:05.529 ffmpeg[2662:164994] tpni
2014-11-04 13:38:05.529 ffmpeg[2662:164994] 0
2014-11-04 13:38:05.529 ffmpeg[2662:164994] MyPlugObjectGetPropertyDataSize
2014-11-04 13:38:05.529 ffmpeg[2662:164994] sel dnwo
2014-11-04 13:38:05.530 ffmpeg[2662:164994] scope bolg
2014-11-04 13:38:05.530 ffmpeg[2662:164994] elt 0
[avfoundation @ 0x7fff1c806000] Selected pixel format (yuv420p) is not supported by the input device.
[avfoundation @ 0x7fff1c806000] Supported pixel formats:
[avfoundation @ 0x7fff1c806000]   uyvy422
[avfoundation @ 0x7fff1c806000]   yuyv422
[avfoundation @ 0x7fff1c806000]   nv12
[avfoundation @ 0x7fff1c806000]   0rgb
[avfoundation @ 0x7fff1c806000]   bgr0
[avfoundation @ 0x7fff1c806000] Overriding selected pixel format to use uyvy422 instead.
[avfoundation @ 0x7fff1c806000] Stream #0: not enough frames to estimate rate; consider increasing probesize
Input #0, avfoundation, from '':
  Duration: N/A, start: 0.852216, bitrate: 2822 kb/s
    Stream #0:0: Video: rawvideo (UYVY / 0x59565955), uyvy422, 1440x900, 1000k tbr, 1000k tbn, 1000k tbc
    Stream #0:1: Audio: pcm_f32le, 44100 Hz, stereo, flt, 2822 kb/s
Please use -q:a or -q:v, -qscale is ambiguous
File 'out.mov' already exists. Overwrite ? [y/N] y
Output #0, mov, to 'out.mov':
  Metadata:
    encoder         : Lavf56.12.100
    Stream #0:0: Video: mpeg4 (mp4v / 0x7634706D), yuv420p, 426x240, q=2-31, 200 kb/s, 60 fps, 15360 tbn, 60 tbc
    Metadata:
      encoder         : Lavc56.10.102 mpeg4
    Stream #0:1: Audio: aac (libvo_aacenc) (mp4a / 0x6134706D), 44100 Hz, stereo, s16, 128 kb/s
    Metadata:
      encoder         : Lavc56.10.102 libvo_aacenc
Stream mapping:
  Stream #0:0 -> #0:0 (rawvideo (native) -> mpeg4 (native))
  Stream #0:1 -> #0:1 (pcm_f32le (native) -> aac (libvo_aacenc))
Press [q] to stop, [?] for help
frame=   11 fps=0.0 q=2.0 size=     140kB time=00:00:08.59 bitrate= 133.7kbits/sframe=   19 fps= 19 q=2.0 size=     224kB time=00:00:09.11 bitrate= 201.8kbits/sframe=   26 fps= 17 q=2.0 size=     353kB time=00:00:09.62 bitrate= 300.7kbits/sframe=   34 fps= 17 q=2.0 size=     568kB time=00:00:10.11 bitrate= 460.2kbits/sframe=   41 fps= 16 q=2.0 size=     970kB time=00:00:10.64 bitrate= 746.4kbits/sframe=   49 fps= 16 q=2.0 size=    1234kB time=00:00:11.15 bitrate= 906.3kbits/sframe=   57 fps= 16 q=2.0 size=    1460kB time=00:00:11.64 bitrate=1027.1kbits/sframe=   64 fps= 16 q=2.0 size=    1679kB time=00:00:12.17 bitrate=1129.3kbits/sframe=   72 fps= 16 q=2.0 size=    2085kB time=00:00:12.68 bitrate=1346.7kbits/sframe=   80 fps= 16 q=2.0 size=    2563kB time=00:00:13.17 bitrate=1592.8kbits/sframe=   87 fps= 16 q=2.0 size=    2907kB time=00:00:13.71 bitrate=1736.5kbits/sframe=   95 fps= 16 q=2.0 size=    3369kB time=00:00:14.19 bitrate=1944.2kbits/sframe=  103 fps= 16 q=2.0 size=    3747kB time=00:00:14.70 bitrate=2087.3kbits/sframe=  110 fps= 15 q=2.0 size=    4101kB time=00:00:15.21 bitrate=2207.7kbits/sframe=  118 fps= 15 q=2.0 size=    4384kB time=00:00:15.72 bitrate=2283.7kbits/sframe=  126 fps= 15 q=2.0 size=    4542kB time=00:00:16.24 bitrate=2290.5kbits/sframe=  133 fps= 15 q=2.0 size=    4643kB time=00:00:16.74 bitrate=2271.2kbits/sframe=  139 fps= 15 q=2.0 Lsize=    4856kB time=00:00:17.17 bitrate=2316.5kbits/s    
video:4708kB audio:141kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.135972%
2014-11-04 13:38:23.304 ffmpeg[2662:164994] MyPlugTeardown
2014-11-04 13:38:23.304 ffmpeg[2662:164994] MyPlugTeardown
HDLs-MacBook-Pro:Desktop HDL$ 

comment:3 Changed 4 years ago by cehoyos

Please do not use -r when recording from avfoundation, it cannot do what you want.
If -frame_rate doesn't work (I believe it doesn't work but cannot test here), then please provide command line and console output.

comment:4 Changed 4 years ago by cehoyos

Unrelated: Does FFmpeg print all this debug information by default?

comment:5 Changed 4 years ago by LordHDL

When I try -frame_rate 60 it gives me this:

[AVFoundation input device @ 0x7feea8501a00] Value 60.000000 for parameter 'frame_rate' out of range [0.1 - 30]
[AVFoundation input device @ 0x7feea8501a00] Error setting option frame_rate to value 60.
: Result too large

Any value between the specified range will result in enormous CPU usage and a failure to stop upon pressing Q (or perhaps it just takes a really long time).

Last login: Tue Nov  4 14:08:08 on ttys001
HDLs-MacBook-Pro:~ HDL$ cd ~/Desktop
HDLs-MacBook-Pro:Desktop HDL$ ./ffmpeg -f avfoundation -frame_rate 30 -video_device_index 3 -i "" -c:v mpeg4 -qscale 2 -vf crop=426:240:507:339 out.mov
ffmpeg version N-67454-g0971154-tessus Copyright (c) 2000-2014 the FFmpeg developers
  built on Nov  3 2014 23:27:57 with Apple LLVM version 6.0 (clang-600.0.54) (based on LLVM 3.5svn)
  configuration: --cc=/usr/bin/clang --prefix=/Users/tessus/data/ext/ffmpeg/sw --as=yasm --extra-version=tessus --disable-shared --enable-static --disable-ffplay --enable-gpl --enable-pthreads --enable-postproc --enable-libmp3lame --enable-libtheora --enable-libvorbis --enable-libx264 --enable-libx265 --enable-libxvid --enable-libspeex --enable-bzlib --enable-zlib --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libxavs --enable-libsoxr --enable-libwavpack --enable-version3 --enable-libvo-aacenc --enable-libvo-amrwbenc --enable-libvpx --enable-libgsm --enable-libopus --enable-libmodplug --enable-fontconfig --enable-libfreetype --enable-libass --enable-libbluray --enable-filters --disable-indev=qtkit --disable-indev=x11grab_xcb --enable-runtime-cpudetect
  libavutil      54. 11.100 / 54. 11.100
  libavcodec     56. 10.102 / 56. 10.102
  libavformat    56. 12.100 / 56. 12.100
  libavdevice    56.  2.100 / 56.  2.100
  libavfilter     5.  2.102 /  5.  2.102
  libswscale      3.  1.101 /  3.  1.101
  libswresample   1.  1.100 /  1.  1.100
  libpostproc    53.  3.100 / 53.  3.100
2014-11-04 14:12:18.427 ffmpeg[2898:182750] alloc
2014-11-04 14:12:18.428 ffmpeg[2898:182750] query 2
2014-11-04 14:12:18.428 ffmpeg[2898:182750] release 2
2014-11-04 14:12:18.428 ffmpeg[2898:182750] ** MyPlugInitializeWithObjectID
2014-11-04 14:12:18.428 ffmpeg[2898:182750] init
2014-11-04 14:12:18.428 ffmpeg[2898:182750] MyPlugObjectSetPropertyData
2014-11-04 14:12:18.428 ffmpeg[2898:182750] MyPlugObjectSetPropertyData
2014-11-04 14:12:18.428 ffmpeg[2898:182750] MyPlugObjectSetPropertyData
2014-11-04 14:12:18.502 ffmpeg[2898:182750] <CMVideoFormatDescription 0x7fd99250ee00 [0x7fff7bfb7cf0]> {
	mediaType:'vide' 
	mediaSubType:'BGRA' 
	mediaSpecific: {
		codecType: 'BGRA'		dimensions: 640 x 480 
	} 
	extensions: {<CFBasicHash 0x7fd992515240 [0x7fff7bfb7cf0]>{type = immutable dict, count = 4,
entries =>
	1 : <CFString 0x7fff7c3e2f08 [0x7fff7bfb7cf0]>{contents = "CVFieldCount"} = <CFNumber 0x137 [0x7fff7bfb7cf0]>{value = +1, type = kCFNumberSInt64Type}
	2 : <CFString 0x1117d07f0 [0x7fff7bfb7cf0]>{contents = "CVBytesPerRow"} = <CFNumber 0xa0037 [0x7fff7bfb7cf0]>{value = +2560, type = kCFNumberSInt64Type}
	4 : <CFString 0x7fff7a4d8e50 [0x7fff7bfb7cf0]>{contents = "com.apple.cmio.format_extension.video.only_has_i_frames"} = <CFBoolean 0x7fff7bfb86c8 [0x7fff7bfb7cf0]>{value = true}
	5 : <CFString 0x7fff7b59d6f0 [0x7fff7bfb7cf0]>{contents = "FormatName"} = <CFString 0x1117d0810 [0x7fff7bfb7cf0]>{contents = "Component Video - CCIR-601 RGB"}
}
}
}
2014-11-04 14:12:18.502 ffmpeg[2898:182750] alloc
2014-11-04 14:12:18.502 ffmpeg[2898:182750] query 2
2014-11-04 14:12:18.502 ffmpeg[2898:182750] release 2
2014-11-04 14:12:18.502 ffmpeg[2898:182750] ** MyPlugInitializeWithObjectID
2014-11-04 14:12:18.502 ffmpeg[2898:182750] init
2014-11-04 14:12:18.502 ffmpeg[2898:182750] MyPlugObjectSetPropertyData
2014-11-04 14:12:18.503 ffmpeg[2898:182750] MyPlugObjectSetPropertyData
2014-11-04 14:12:18.503 ffmpeg[2898:182750] MyPlugObjectSetPropertyData
2014-11-04 14:12:18.503 ffmpeg[2898:182750] <CMVideoFormatDescription 0x7fd994800340 [0x7fff7bfb7cf0]> {
	mediaType:'vide' 
	mediaSubType:'2vuy' 
	mediaSpecific: {
		codecType: '2vuy'		dimensions: 640 x 480 
	} 
	extensions: {<CFBasicHash 0x7fd992432b60 [0x7fff7bfb7cf0]>{type = immutable dict, count = 6,
entries =>
	0 : <CFString 0x7fff7c3e3088 [0x7fff7bfb7cf0]>{contents = "CVImageBufferYCbCrMatrix"} = <CFString 0x7fff7c3e30c8 [0x7fff7bfb7cf0]>{contents = "ITU_R_601_4"}
	1 : <CFString 0x7fff7c3e2f08 [0x7fff7bfb7cf0]>{contents = "CVFieldCount"} = <CFNumber 0x137 [0x7fff7bfb7cf0]>{value = +1, type = kCFNumberSInt64Type}
	2 : <CFString 0x7fff7c3e3188 [0x7fff7bfb7cf0]>{contents = "CVImageBufferTransferFunction"} = <CFString 0x7fff7c3e30a8 [0x7fff7bfb7cf0]>{contents = "ITU_R_709_2"}
	4 : <CFString 0x7fff7a4d8e50 [0x7fff7bfb7cf0]>{contents = "com.apple.cmio.format_extension.video.only_has_i_frames"} = <CFBoolean 0x7fff7bfb86c8 [0x7fff7bfb7cf0]>{value = true}
	5 : <CFString 0x7fff7c3e3108 [0x7fff7bfb7cf0]>{contents = "CVImageBufferColorPrimaries"} = <CFString 0x7fff7c3e3148 [0x7fff7bfb7cf0]>{contents = "SMPTE_C"}
	6 : <CFString 0x7fff7b59d6f0 [0x7fff7bfb7cf0]>{contents = "FormatName"} = <CFString 0x1117d0870 [0x7fff7bfb7cf0]>{contents = "Component Video - CCIR-601 uyvy"}
}
}
}
2014-11-04 14:12:18.605 ffmpeg[2898:182750] MyPlugObjectHasProperty
2014-11-04 14:12:18.605 ffmpeg[2898:182750] enog
2014-11-04 14:12:18.605 ffmpeg[2898:182750] bolg
2014-11-04 14:12:18.605 ffmpeg[2898:182750] 0
2014-11-04 14:12:18.605 ffmpeg[2898:182750] MyPlugObjectSetPropertyData
2014-11-04 14:12:18.606 ffmpeg[2898:182750] MyPlugObjectSetPropertyData
2014-11-04 14:12:18.606 ffmpeg[2898:182750] MyPlugObjectSetPropertyData
2014-11-04 14:12:18.606 ffmpeg[2898:182750] MyPlugObjectSetPropertyData
2014-11-04 14:12:18.606 ffmpeg[2898:182750] MyPlugObjectSetPropertyData
2014-11-04 14:12:18.606 ffmpeg[2898:182750] MyPlugObjectGetPropertyDataSize
2014-11-04 14:12:18.606 ffmpeg[2898:182750] sel dnwo
2014-11-04 14:12:18.606 ffmpeg[2898:182750] scope bolg
2014-11-04 14:12:18.606 ffmpeg[2898:182750] elt 0
2014-11-04 14:12:18.606 ffmpeg[2898:182750] MyPlugObjectGetPropertyDataSize
2014-11-04 14:12:18.607 ffmpeg[2898:182750] sel dnwo
2014-11-04 14:12:18.607 ffmpeg[2898:182750] scope bolg
2014-11-04 14:12:18.607 ffmpeg[2898:182750] elt 0
2014-11-04 14:12:18.607 ffmpeg[2898:182750] MyPlugObjectGetPropertyDataSize
2014-11-04 14:12:18.607 ffmpeg[2898:182750] sel dnwo
2014-11-04 14:12:18.607 ffmpeg[2898:182750] scope bolg
2014-11-04 14:12:18.607 ffmpeg[2898:182750] elt 0
2014-11-04 14:12:18.607 ffmpeg[2898:182750] MyPlugObjectGetPropertyDataSize
2014-11-04 14:12:18.608 ffmpeg[2898:182750] sel dnwo
2014-11-04 14:12:18.608 ffmpeg[2898:182750] scope bolg
2014-11-04 14:12:18.608 ffmpeg[2898:182750] elt 0
2014-11-04 14:12:18.608 ffmpeg[2898:182750] MyPlugObjectGetPropertyDataSize
2014-11-04 14:12:18.608 ffmpeg[2898:182750] sel dnwo
2014-11-04 14:12:18.608 ffmpeg[2898:182750] scope bolg
2014-11-04 14:12:18.608 ffmpeg[2898:182750] elt 0
2014-11-04 14:12:18.608 ffmpeg[2898:182750] MyPlugObjectGetPropertyDataSize
2014-11-04 14:12:18.608 ffmpeg[2898:182750] sel dnwo
2014-11-04 14:12:18.608 ffmpeg[2898:182750] scope bolg
2014-11-04 14:12:18.609 ffmpeg[2898:182750] elt 0
2014-11-04 14:12:18.609 ffmpeg[2898:182750] MyPlugObjectSetPropertyData
2014-11-04 14:12:18.609 ffmpeg[2898:182750] MyPlugObjectHasProperty
2014-11-04 14:12:18.609 ffmpeg[2898:182750] grrf
2014-11-04 14:12:18.609 ffmpeg[2898:182750] bolg
2014-11-04 14:12:18.609 ffmpeg[2898:182750] 0
2014-11-04 14:12:18.609 ffmpeg[2898:182750] MyPlugObjectHasProperty
2014-11-04 14:12:18.609 ffmpeg[2898:182750] grrf
2014-11-04 14:12:18.609 ffmpeg[2898:182750] bolg
2014-11-04 14:12:18.609 ffmpeg[2898:182750] 0
2014-11-04 14:12:18.610 ffmpeg[2898:182750] MyPlugObjectHasProperty
2014-11-04 14:12:18.610 ffmpeg[2898:182750] trfn
2014-11-04 14:12:18.610 ffmpeg[2898:182750] bolg
2014-11-04 14:12:18.610 ffmpeg[2898:182750] 0
2014-11-04 14:12:18.610 ffmpeg[2898:182750] MyPlugObjectHasProperty
2014-11-04 14:12:18.610 ffmpeg[2898:182750] trfm
2014-11-04 14:12:18.610 ffmpeg[2898:182750] bolg
2014-11-04 14:12:18.610 ffmpeg[2898:182750] 0
2014-11-04 14:12:18.610 ffmpeg[2898:182750] MyPlugObjectHasProperty
2014-11-04 14:12:18.610 ffmpeg[2898:182750] trfn
2014-11-04 14:12:18.611 ffmpeg[2898:182750] bolg
2014-11-04 14:12:18.611 ffmpeg[2898:182750] 0
2014-11-04 14:12:18.611 ffmpeg[2898:182750] MyPlugObjectHasProperty
2014-11-04 14:12:18.611 ffmpeg[2898:182750] dulp
2014-11-04 14:12:18.611 ffmpeg[2898:182750] tpni
2014-11-04 14:12:18.611 ffmpeg[2898:182750] 0
2014-11-04 14:12:18.611 ffmpeg[2898:182750] MyPlugObjectGetPropertyDataSize
2014-11-04 14:12:18.611 ffmpeg[2898:182750] sel dnwo
2014-11-04 14:12:18.611 ffmpeg[2898:182750] scope bolg
2014-11-04 14:12:18.611 ffmpeg[2898:182750] elt 0
2014-11-04 14:12:18.612 ffmpeg[2898:182750] MyPlugObjectHasProperty
2014-11-04 14:12:18.612 ffmpeg[2898:182750] enog
2014-11-04 14:12:18.612 ffmpeg[2898:182750] bolg
2014-11-04 14:12:18.612 ffmpeg[2898:182750] 0
2014-11-04 14:12:18.612 ffmpeg[2898:182750] MyPlugObjectSetPropertyData
2014-11-04 14:12:18.612 ffmpeg[2898:182750] MyPlugObjectSetPropertyData
2014-11-04 14:12:18.612 ffmpeg[2898:182750] MyPlugObjectSetPropertyData
2014-11-04 14:12:18.612 ffmpeg[2898:182750] MyPlugObjectSetPropertyData
2014-11-04 14:12:18.612 ffmpeg[2898:182750] MyPlugObjectSetPropertyData
2014-11-04 14:12:18.612 ffmpeg[2898:182750] MyPlugObjectGetPropertyDataSize
2014-11-04 14:12:18.613 ffmpeg[2898:182750] sel dnwo
2014-11-04 14:12:18.613 ffmpeg[2898:182750] scope bolg
2014-11-04 14:12:18.613 ffmpeg[2898:182750] elt 0
2014-11-04 14:12:18.613 ffmpeg[2898:182750] MyPlugObjectGetPropertyDataSize
2014-11-04 14:12:18.613 ffmpeg[2898:182750] sel dnwo
2014-11-04 14:12:18.613 ffmpeg[2898:182750] scope bolg
2014-11-04 14:12:18.613 ffmpeg[2898:182750] elt 0
2014-11-04 14:12:18.613 ffmpeg[2898:182750] MyPlugObjectGetPropertyDataSize
2014-11-04 14:12:18.613 ffmpeg[2898:182750] sel dnwo
2014-11-04 14:12:18.614 ffmpeg[2898:182750] scope bolg
2014-11-04 14:12:18.614 ffmpeg[2898:182750] elt 0
2014-11-04 14:12:18.614 ffmpeg[2898:182750] MyPlugObjectGetPropertyDataSize
2014-11-04 14:12:18.614 ffmpeg[2898:182750] sel dnwo
2014-11-04 14:12:18.614 ffmpeg[2898:182750] scope bolg
2014-11-04 14:12:18.614 ffmpeg[2898:182750] elt 0
2014-11-04 14:12:18.614 ffmpeg[2898:182750] MyPlugObjectGetPropertyDataSize
2014-11-04 14:12:18.614 ffmpeg[2898:182750] sel dnwo
2014-11-04 14:12:18.615 ffmpeg[2898:182750] scope bolg
2014-11-04 14:12:18.615 ffmpeg[2898:182750] elt 0
2014-11-04 14:12:18.615 ffmpeg[2898:182750] MyPlugObjectGetPropertyDataSize
2014-11-04 14:12:18.615 ffmpeg[2898:182750] sel dnwo
2014-11-04 14:12:18.615 ffmpeg[2898:182750] scope bolg
2014-11-04 14:12:18.615 ffmpeg[2898:182750] elt 0
2014-11-04 14:12:18.615 ffmpeg[2898:182750] MyPlugObjectSetPropertyData
2014-11-04 14:12:18.615 ffmpeg[2898:182750] MyPlugObjectHasProperty
2014-11-04 14:12:18.616 ffmpeg[2898:182750] grrf
2014-11-04 14:12:18.616 ffmpeg[2898:182750] bolg
2014-11-04 14:12:18.616 ffmpeg[2898:182750] 0
2014-11-04 14:12:18.616 ffmpeg[2898:182750] MyPlugObjectHasProperty
2014-11-04 14:12:18.616 ffmpeg[2898:182750] grrf
2014-11-04 14:12:18.616 ffmpeg[2898:182750] bolg
2014-11-04 14:12:18.616 ffmpeg[2898:182750] 0
2014-11-04 14:12:18.616 ffmpeg[2898:182750] MyPlugObjectHasProperty
2014-11-04 14:12:18.616 ffmpeg[2898:182750] trfn
2014-11-04 14:12:18.617 ffmpeg[2898:182750] bolg
2014-11-04 14:12:18.617 ffmpeg[2898:182750] 0
2014-11-04 14:12:18.617 ffmpeg[2898:182750] MyPlugObjectHasProperty
2014-11-04 14:12:18.617 ffmpeg[2898:182750] trfm
2014-11-04 14:12:18.617 ffmpeg[2898:182750] bolg
2014-11-04 14:12:18.617 ffmpeg[2898:182750] 0
2014-11-04 14:12:18.617 ffmpeg[2898:182750] MyPlugObjectHasProperty
2014-11-04 14:12:18.617 ffmpeg[2898:182750] trfn
2014-11-04 14:12:18.617 ffmpeg[2898:182750] bolg
2014-11-04 14:12:18.617 ffmpeg[2898:182750] 0
2014-11-04 14:12:18.617 ffmpeg[2898:182750] MyPlugObjectHasProperty
2014-11-04 14:12:18.618 ffmpeg[2898:182750] dulp
2014-11-04 14:12:18.618 ffmpeg[2898:182750] tpni
2014-11-04 14:12:18.618 ffmpeg[2898:182750] 0
2014-11-04 14:12:18.618 ffmpeg[2898:182750] MyPlugObjectGetPropertyDataSize
2014-11-04 14:12:18.618 ffmpeg[2898:182750] sel dnwo
2014-11-04 14:12:18.618 ffmpeg[2898:182750] scope bolg
2014-11-04 14:12:18.618 ffmpeg[2898:182750] elt 0
[avfoundation @ 0x7fd99280b000] Selected pixel format (yuv420p) is not supported by the input device.
[avfoundation @ 0x7fd99280b000] Supported pixel formats:
[avfoundation @ 0x7fd99280b000]   uyvy422
[avfoundation @ 0x7fd99280b000]   yuyv422
[avfoundation @ 0x7fd99280b000]   nv12
[avfoundation @ 0x7fd99280b000]   0rgb
[avfoundation @ 0x7fd99280b000]   bgr0
[avfoundation @ 0x7fd99280b000] Overriding selected pixel format to use uyvy422 instead.
[avfoundation @ 0x7fd99280b000] Stream #0: not enough frames to estimate rate; consider increasing probesize
Input #0, avfoundation, from '':
  Duration: N/A, start: 0.847500, bitrate: 2822 kb/s
    Stream #0:0: Video: rawvideo (UYVY / 0x59565955), uyvy422, 1440x900, 1000k tbr, 1000k tbn, 1000k tbc
    Stream #0:1: Audio: pcm_f32le, 44100 Hz, stereo, flt, 2822 kb/s
Please use -q:a or -q:v, -qscale is ambiguous
File 'out.mov' already exists. Overwrite ? [y/N] y
[mov @ 0x7fd992857c00] Frame rate very high for a muxer not efficiently supporting it.
Please consider specifying a lower framerate, a different muxer or -vsync 2
Output #0, mov, to 'out.mov':
  Metadata:
    encoder         : Lavf56.12.100
    Stream #0:0: Video: mpeg4 (mp4v / 0x7634706D), yuv420p, 426x240, q=2-31, 200 kb/s, 65535 fps, 65535 tbn, 65535 tbc
    Metadata:
      encoder         : Lavc56.10.102 mpeg4
    Stream #0:1: Audio: aac (libvo_aacenc) (mp4a / 0x6134706D), 44100 Hz, stereo, s16, 128 kb/s
    Metadata:
      encoder         : Lavc56.10.102 libvo_aacenc
Stream mapping:
  Stream #0:0 -> #0:0 (rawvideo (native) -> mpeg4 (native))
  Stream #0:1 -> #0:1 (pcm_f32le (native) -> aac (libvo_aacenc))
Press [q] to stop, [?] for help

Yes, the info is automatically printed in Terminal.

Last edited 4 years ago by LordHDL (previous) (diff)

comment:6 Changed 4 years ago by cehoyos

Does it work if you do not set a value for -frame_rate?
Please try with .avi, it is possible that you found another bug that manifests itself when using .mov

comment:7 Changed 4 years ago by cehoyos

The output option -r should fix the performance issue (even with .mov) - this should work fine until this is fixed - but afaict, the bug is that -frame_rate is simply ignored unless I miss something from looking at the source file.

comment:8 follow-up: Changed 4 years ago by LordHDL

No value doesn't work, however it does record with normal CPU when using -frame_rate 30 and .avi rather than .mov. The FPS is still 15, though.

Last login: Tue Nov  4 14:30:02 on ttys001
HDLs-MacBook-Pro:~ HDL$ cd ~/Desktop
HDLs-MacBook-Pro:Desktop HDL$ ./ffmpeg -f avfoundation -frame_rate 30 -video_device_index 3 -i "" -c:v mpeg4 -qscale 2 -vf crop=426:240:507:339 out.avi
ffmpeg version N-67454-g0971154-tessus Copyright (c) 2000-2014 the FFmpeg developers
  built on Nov  3 2014 23:27:57 with Apple LLVM version 6.0 (clang-600.0.54) (based on LLVM 3.5svn)
  configuration: --cc=/usr/bin/clang --prefix=/Users/tessus/data/ext/ffmpeg/sw --as=yasm --extra-version=tessus --disable-shared --enable-static --disable-ffplay --enable-gpl --enable-pthreads --enable-postproc --enable-libmp3lame --enable-libtheora --enable-libvorbis --enable-libx264 --enable-libx265 --enable-libxvid --enable-libspeex --enable-bzlib --enable-zlib --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libxavs --enable-libsoxr --enable-libwavpack --enable-version3 --enable-libvo-aacenc --enable-libvo-amrwbenc --enable-libvpx --enable-libgsm --enable-libopus --enable-libmodplug --enable-fontconfig --enable-libfreetype --enable-libass --enable-libbluray --enable-filters --disable-indev=qtkit --disable-indev=x11grab_xcb --enable-runtime-cpudetect
  libavutil      54. 11.100 / 54. 11.100
  libavcodec     56. 10.102 / 56. 10.102
  libavformat    56. 12.100 / 56. 12.100
  libavdevice    56.  2.100 / 56.  2.100
  libavfilter     5.  2.102 /  5.  2.102
  libswscale      3.  1.101 /  3.  1.101
  libswresample   1.  1.100 /  1.  1.100
  libpostproc    53.  3.100 / 53.  3.100
2014-11-04 14:30:22.375 ffmpeg[3093:192250] alloc
2014-11-04 14:30:22.375 ffmpeg[3093:192250] query 2
2014-11-04 14:30:22.376 ffmpeg[3093:192250] release 2
2014-11-04 14:30:22.376 ffmpeg[3093:192250] ** MyPlugInitializeWithObjectID
2014-11-04 14:30:22.376 ffmpeg[3093:192250] init
2014-11-04 14:30:22.376 ffmpeg[3093:192250] MyPlugObjectSetPropertyData
2014-11-04 14:30:22.376 ffmpeg[3093:192250] MyPlugObjectSetPropertyData
2014-11-04 14:30:22.376 ffmpeg[3093:192250] MyPlugObjectSetPropertyData
2014-11-04 14:30:22.448 ffmpeg[3093:192250] <CMVideoFormatDescription 0x7f87db61b990 [0x7fff7bfb7cf0]> {
	mediaType:'vide' 
	mediaSubType:'BGRA' 
	mediaSpecific: {
		codecType: 'BGRA'		dimensions: 640 x 480 
	} 
	extensions: {<CFBasicHash 0x7f87db61bb70 [0x7fff7bfb7cf0]>{type = immutable dict, count = 4,
entries =>
	1 : <CFString 0x7fff7c3e2f08 [0x7fff7bfb7cf0]>{contents = "CVFieldCount"} = <CFNumber 0x137 [0x7fff7bfb7cf0]>{value = +1, type = kCFNumberSInt64Type}
	2 : <CFString 0x10a1e57f0 [0x7fff7bfb7cf0]>{contents = "CVBytesPerRow"} = <CFNumber 0xa0037 [0x7fff7bfb7cf0]>{value = +2560, type = kCFNumberSInt64Type}
	4 : <CFString 0x7fff7a4d8e50 [0x7fff7bfb7cf0]>{contents = "com.apple.cmio.format_extension.video.only_has_i_frames"} = <CFBoolean 0x7fff7bfb86c8 [0x7fff7bfb7cf0]>{value = true}
	5 : <CFString 0x7fff7b59d6f0 [0x7fff7bfb7cf0]>{contents = "FormatName"} = <CFString 0x10a1e5810 [0x7fff7bfb7cf0]>{contents = "Component Video - CCIR-601 RGB"}
}
}
}
2014-11-04 14:30:22.448 ffmpeg[3093:192250] alloc
2014-11-04 14:30:22.449 ffmpeg[3093:192250] query 2
2014-11-04 14:30:22.449 ffmpeg[3093:192250] release 2
2014-11-04 14:30:22.449 ffmpeg[3093:192250] ** MyPlugInitializeWithObjectID
2014-11-04 14:30:22.449 ffmpeg[3093:192250] init
2014-11-04 14:30:22.449 ffmpeg[3093:192250] MyPlugObjectSetPropertyData
2014-11-04 14:30:22.449 ffmpeg[3093:192250] MyPlugObjectSetPropertyData
2014-11-04 14:30:22.449 ffmpeg[3093:192250] MyPlugObjectSetPropertyData
2014-11-04 14:30:22.449 ffmpeg[3093:192250] <CMVideoFormatDescription 0x7f87db515c70 [0x7fff7bfb7cf0]> {
	mediaType:'vide' 
	mediaSubType:'2vuy' 
	mediaSpecific: {
		codecType: '2vuy'		dimensions: 640 x 480 
	} 
	extensions: {<CFBasicHash 0x7f87db51d580 [0x7fff7bfb7cf0]>{type = immutable dict, count = 6,
entries =>
	0 : <CFString 0x7fff7c3e3088 [0x7fff7bfb7cf0]>{contents = "CVImageBufferYCbCrMatrix"} = <CFString 0x7fff7c3e30c8 [0x7fff7bfb7cf0]>{contents = "ITU_R_601_4"}
	1 : <CFString 0x7fff7c3e2f08 [0x7fff7bfb7cf0]>{contents = "CVFieldCount"} = <CFNumber 0x137 [0x7fff7bfb7cf0]>{value = +1, type = kCFNumberSInt64Type}
	2 : <CFString 0x7fff7c3e3188 [0x7fff7bfb7cf0]>{contents = "CVImageBufferTransferFunction"} = <CFString 0x7fff7c3e30a8 [0x7fff7bfb7cf0]>{contents = "ITU_R_709_2"}
	4 : <CFString 0x7fff7a4d8e50 [0x7fff7bfb7cf0]>{contents = "com.apple.cmio.format_extension.video.only_has_i_frames"} = <CFBoolean 0x7fff7bfb86c8 [0x7fff7bfb7cf0]>{value = true}
	5 : <CFString 0x7fff7c3e3108 [0x7fff7bfb7cf0]>{contents = "CVImageBufferColorPrimaries"} = <CFString 0x7fff7c3e3148 [0x7fff7bfb7cf0]>{contents = "SMPTE_C"}
	6 : <CFString 0x7fff7b59d6f0 [0x7fff7bfb7cf0]>{contents = "FormatName"} = <CFString 0x10a1e5870 [0x7fff7bfb7cf0]>{contents = "Component Video - CCIR-601 uyvy"}
}
}
}
2014-11-04 14:30:22.552 ffmpeg[3093:192250] MyPlugObjectHasProperty
2014-11-04 14:30:22.553 ffmpeg[3093:192250] enog
2014-11-04 14:30:22.553 ffmpeg[3093:192250] bolg
2014-11-04 14:30:22.553 ffmpeg[3093:192250] 0
2014-11-04 14:30:22.553 ffmpeg[3093:192250] MyPlugObjectSetPropertyData
2014-11-04 14:30:22.554 ffmpeg[3093:192250] MyPlugObjectSetPropertyData
2014-11-04 14:30:22.554 ffmpeg[3093:192250] MyPlugObjectSetPropertyData
2014-11-04 14:30:22.554 ffmpeg[3093:192250] MyPlugObjectSetPropertyData
2014-11-04 14:30:22.555 ffmpeg[3093:192250] MyPlugObjectSetPropertyData
2014-11-04 14:30:22.555 ffmpeg[3093:192250] MyPlugObjectGetPropertyDataSize
2014-11-04 14:30:22.555 ffmpeg[3093:192250] sel dnwo
2014-11-04 14:30:22.556 ffmpeg[3093:192250] scope bolg
2014-11-04 14:30:22.556 ffmpeg[3093:192250] elt 0
2014-11-04 14:30:22.556 ffmpeg[3093:192250] MyPlugObjectGetPropertyDataSize
2014-11-04 14:30:22.556 ffmpeg[3093:192250] sel dnwo
2014-11-04 14:30:22.557 ffmpeg[3093:192250] scope bolg
2014-11-04 14:30:22.557 ffmpeg[3093:192250] elt 0
2014-11-04 14:30:22.557 ffmpeg[3093:192250] MyPlugObjectGetPropertyDataSize
2014-11-04 14:30:22.557 ffmpeg[3093:192250] sel dnwo
2014-11-04 14:30:22.557 ffmpeg[3093:192250] scope bolg
2014-11-04 14:30:22.558 ffmpeg[3093:192250] elt 0
2014-11-04 14:30:22.558 ffmpeg[3093:192250] MyPlugObjectGetPropertyDataSize
2014-11-04 14:30:22.558 ffmpeg[3093:192250] sel dnwo
2014-11-04 14:30:22.558 ffmpeg[3093:192250] scope bolg
2014-11-04 14:30:22.558 ffmpeg[3093:192250] elt 0
2014-11-04 14:30:22.558 ffmpeg[3093:192250] MyPlugObjectGetPropertyDataSize
2014-11-04 14:30:22.558 ffmpeg[3093:192250] sel dnwo
2014-11-04 14:30:22.559 ffmpeg[3093:192250] scope bolg
2014-11-04 14:30:22.559 ffmpeg[3093:192250] elt 0
2014-11-04 14:30:22.559 ffmpeg[3093:192250] MyPlugObjectGetPropertyDataSize
2014-11-04 14:30:22.559 ffmpeg[3093:192250] sel dnwo
2014-11-04 14:30:22.559 ffmpeg[3093:192250] scope bolg
2014-11-04 14:30:22.559 ffmpeg[3093:192250] elt 0
2014-11-04 14:30:22.559 ffmpeg[3093:192250] MyPlugObjectSetPropertyData
2014-11-04 14:30:22.560 ffmpeg[3093:192250] MyPlugObjectHasProperty
2014-11-04 14:30:22.560 ffmpeg[3093:192250] grrf
2014-11-04 14:30:22.560 ffmpeg[3093:192250] bolg
2014-11-04 14:30:22.560 ffmpeg[3093:192250] 0
2014-11-04 14:30:22.560 ffmpeg[3093:192250] MyPlugObjectHasProperty
2014-11-04 14:30:22.560 ffmpeg[3093:192250] grrf
2014-11-04 14:30:22.561 ffmpeg[3093:192250] bolg
2014-11-04 14:30:22.561 ffmpeg[3093:192250] 0
2014-11-04 14:30:22.561 ffmpeg[3093:192250] MyPlugObjectHasProperty
2014-11-04 14:30:22.561 ffmpeg[3093:192250] trfn
2014-11-04 14:30:22.561 ffmpeg[3093:192250] bolg
2014-11-04 14:30:22.561 ffmpeg[3093:192250] 0
2014-11-04 14:30:22.561 ffmpeg[3093:192250] MyPlugObjectHasProperty
2014-11-04 14:30:22.561 ffmpeg[3093:192250] trfm
2014-11-04 14:30:22.562 ffmpeg[3093:192250] bolg
2014-11-04 14:30:22.562 ffmpeg[3093:192250] 0
2014-11-04 14:30:22.562 ffmpeg[3093:192250] MyPlugObjectHasProperty
2014-11-04 14:30:22.562 ffmpeg[3093:192250] trfn
2014-11-04 14:30:22.562 ffmpeg[3093:192250] bolg
2014-11-04 14:30:22.562 ffmpeg[3093:192250] 0
2014-11-04 14:30:22.562 ffmpeg[3093:192250] MyPlugObjectHasProperty
2014-11-04 14:30:22.563 ffmpeg[3093:192250] dulp
2014-11-04 14:30:22.563 ffmpeg[3093:192250] tpni
2014-11-04 14:30:22.563 ffmpeg[3093:192250] 0
2014-11-04 14:30:22.563 ffmpeg[3093:192250] MyPlugObjectGetPropertyDataSize
2014-11-04 14:30:22.563 ffmpeg[3093:192250] sel dnwo
2014-11-04 14:30:22.563 ffmpeg[3093:192250] scope bolg
2014-11-04 14:30:22.563 ffmpeg[3093:192250] elt 0
2014-11-04 14:30:22.563 ffmpeg[3093:192250] MyPlugObjectHasProperty
2014-11-04 14:30:22.564 ffmpeg[3093:192250] enog
2014-11-04 14:30:22.564 ffmpeg[3093:192250] bolg
2014-11-04 14:30:22.564 ffmpeg[3093:192250] 0
2014-11-04 14:30:22.564 ffmpeg[3093:192250] MyPlugObjectSetPropertyData
2014-11-04 14:30:22.564 ffmpeg[3093:192250] MyPlugObjectSetPropertyData
2014-11-04 14:30:22.564 ffmpeg[3093:192250] MyPlugObjectSetPropertyData
2014-11-04 14:30:22.564 ffmpeg[3093:192250] MyPlugObjectSetPropertyData
2014-11-04 14:30:22.564 ffmpeg[3093:192250] MyPlugObjectSetPropertyData
2014-11-04 14:30:22.564 ffmpeg[3093:192250] MyPlugObjectGetPropertyDataSize
2014-11-04 14:30:22.564 ffmpeg[3093:192250] sel dnwo
2014-11-04 14:30:22.565 ffmpeg[3093:192250] scope bolg
2014-11-04 14:30:22.565 ffmpeg[3093:192250] elt 0
2014-11-04 14:30:22.565 ffmpeg[3093:192250] MyPlugObjectGetPropertyDataSize
2014-11-04 14:30:22.565 ffmpeg[3093:192250] sel dnwo
2014-11-04 14:30:22.565 ffmpeg[3093:192250] scope bolg
2014-11-04 14:30:22.565 ffmpeg[3093:192250] elt 0
2014-11-04 14:30:22.565 ffmpeg[3093:192250] MyPlugObjectGetPropertyDataSize
2014-11-04 14:30:22.565 ffmpeg[3093:192250] sel dnwo
2014-11-04 14:30:22.565 ffmpeg[3093:192250] scope bolg
2014-11-04 14:30:22.565 ffmpeg[3093:192250] elt 0
2014-11-04 14:30:22.566 ffmpeg[3093:192250] MyPlugObjectGetPropertyDataSize
2014-11-04 14:30:22.566 ffmpeg[3093:192250] sel dnwo
2014-11-04 14:30:22.566 ffmpeg[3093:192250] scope bolg
2014-11-04 14:30:22.566 ffmpeg[3093:192250] elt 0
2014-11-04 14:30:22.566 ffmpeg[3093:192250] MyPlugObjectGetPropertyDataSize
2014-11-04 14:30:22.566 ffmpeg[3093:192250] sel dnwo
2014-11-04 14:30:22.566 ffmpeg[3093:192250] scope bolg
2014-11-04 14:30:22.566 ffmpeg[3093:192250] elt 0
2014-11-04 14:30:22.566 ffmpeg[3093:192250] MyPlugObjectGetPropertyDataSize
2014-11-04 14:30:22.567 ffmpeg[3093:192250] sel dnwo
2014-11-04 14:30:22.567 ffmpeg[3093:192250] scope bolg
2014-11-04 14:30:22.567 ffmpeg[3093:192250] elt 0
2014-11-04 14:30:22.567 ffmpeg[3093:192250] MyPlugObjectSetPropertyData
2014-11-04 14:30:22.567 ffmpeg[3093:192250] MyPlugObjectHasProperty
2014-11-04 14:30:22.567 ffmpeg[3093:192250] grrf
2014-11-04 14:30:22.567 ffmpeg[3093:192250] bolg
2014-11-04 14:30:22.567 ffmpeg[3093:192250] 0
2014-11-04 14:30:22.567 ffmpeg[3093:192250] MyPlugObjectHasProperty
2014-11-04 14:30:22.567 ffmpeg[3093:192250] grrf
2014-11-04 14:30:22.568 ffmpeg[3093:192250] bolg
2014-11-04 14:30:22.568 ffmpeg[3093:192250] 0
2014-11-04 14:30:22.568 ffmpeg[3093:192250] MyPlugObjectHasProperty
2014-11-04 14:30:22.568 ffmpeg[3093:192250] trfn
2014-11-04 14:30:22.568 ffmpeg[3093:192250] bolg
2014-11-04 14:30:22.568 ffmpeg[3093:192250] 0
2014-11-04 14:30:22.568 ffmpeg[3093:192250] MyPlugObjectHasProperty
2014-11-04 14:30:22.568 ffmpeg[3093:192250] trfm
2014-11-04 14:30:22.568 ffmpeg[3093:192250] bolg
2014-11-04 14:30:22.568 ffmpeg[3093:192250] 0
2014-11-04 14:30:22.568 ffmpeg[3093:192250] MyPlugObjectHasProperty
2014-11-04 14:30:22.569 ffmpeg[3093:192250] trfn
2014-11-04 14:30:22.569 ffmpeg[3093:192250] bolg
2014-11-04 14:30:22.569 ffmpeg[3093:192250] 0
2014-11-04 14:30:22.569 ffmpeg[3093:192250] MyPlugObjectHasProperty
2014-11-04 14:30:22.569 ffmpeg[3093:192250] dulp
2014-11-04 14:30:22.569 ffmpeg[3093:192250] tpni
2014-11-04 14:30:22.569 ffmpeg[3093:192250] 0
2014-11-04 14:30:22.570 ffmpeg[3093:192250] MyPlugObjectGetPropertyDataSize
2014-11-04 14:30:22.570 ffmpeg[3093:192250] sel dnwo
2014-11-04 14:30:22.570 ffmpeg[3093:192250] scope bolg
2014-11-04 14:30:22.570 ffmpeg[3093:192250] elt 0
[avfoundation @ 0x7f87db80b000] Selected pixel format (yuv420p) is not supported by the input device.
[avfoundation @ 0x7f87db80b000] Supported pixel formats:
[avfoundation @ 0x7f87db80b000]   uyvy422
[avfoundation @ 0x7f87db80b000]   yuyv422
[avfoundation @ 0x7f87db80b000]   nv12
[avfoundation @ 0x7f87db80b000]   0rgb
[avfoundation @ 0x7f87db80b000]   bgr0
[avfoundation @ 0x7f87db80b000] Overriding selected pixel format to use uyvy422 instead.
[avfoundation @ 0x7f87db80b000] Stream #0: not enough frames to estimate rate; consider increasing probesize
Input #0, avfoundation, from '':
  Duration: N/A, start: 0.852666, bitrate: 2822 kb/s
    Stream #0:0: Video: rawvideo (UYVY / 0x59565955), uyvy422, 1440x900, 1000k tbr, 1000k tbn, 1000k tbc
    Stream #0:1: Audio: pcm_f32le, 44100 Hz, stereo, flt, 2822 kb/s
Please use -q:a or -q:v, -qscale is ambiguous
File 'out.avi' already exists. Overwrite ? [y/N] y
[avi @ 0x7f87dc80a600] Frame rate very high for a muxer not efficiently supporting it.
Please consider specifying a lower framerate, a different muxer or -vsync 2
Output #0, avi, to 'out.avi':
  Metadata:
    ISFT            : Lavf56.12.100
    Stream #0:0: Video: mpeg4 (FMP4 / 0x34504D46), yuv420p, 426x240, q=2-31, 200 kb/s, 65535 fps, 600 tbn, 65535 tbc
    Metadata:
      encoder         : Lavc56.10.102 mpeg4
    Stream #0:1: Audio: mp3 (libmp3lame) (U[0][0][0] / 0x0055), 44100 Hz, stereo, fltp
    Metadata:
      encoder         : Lavc56.10.102 libmp3lame
Stream mapping:
  Stream #0:0 -> #0:0 (rawvideo (native) -> mpeg4 (native))
  Stream #0:1 -> #0:1 (pcm_f32le (native) -> mp3 (libmp3lame))
Press [q] to stop, [?] for help
frame=   10 fps=0.0 q=2.0 size=     160kB time=00:00:03.41 bitrate= 383.5kbits/sframe=   18 fps= 18 q=2.0 size=     305kB time=00:00:03.94 bitrate= 632.3kbits/sframe=   26 fps= 17 q=2.0 size=     339kB time=00:00:04.48 bitrate= 619.8kbits/sframe=   33 fps= 16 q=2.0 size=     608kB time=00:00:04.94 bitrate=1008.0kbits/sframe=   41 fps= 16 q=2.0 size=     901kB time=00:00:05.47 bitrate=1347.1kbits/sframe=   49 fps= 16 q=2.0 size=    1115kB time=00:00:06.01 bitrate=1519.6kbits/sframe=   56 fps= 16 q=2.0 size=    1278kB time=00:00:06.47 bitrate=1616.1kbits/sframe=   64 fps= 16 q=2.0 size=    1671kB time=00:00:07.01 bitrate=1952.4kbits/sframe=   72 fps= 16 q=2.0 size=    2160kB time=00:00:07.54 bitrate=2344.8kbits/sframe=   79 fps= 15 q=2.0 size=    2372kB time=00:00:08.01 bitrate=2426.3kbits/sframe=   87 fps= 16 q=2.0 size=    2756kB time=00:00:08.54 bitrate=2642.5kbits/sframe=   94 fps= 15 q=2.0 size=    3118kB time=00:00:09.00 bitrate=2835.5kbits/sframe=  102 fps= 15 q=2.0 size=    3476kB time=00:00:09.54 bitrate=2984.7kbits/sframe=  110 fps= 15 q=2.0 size=    3821kB time=00:00:10.07 bitrate=3106.6kbits/sframe=  117 fps= 15 q=2.0 size=    4149kB time=00:00:10.54 bitrate=3224.3kbits/sframe=  125 fps= 15 q=2.0 size=    4522kB time=00:00:11.07 bitrate=3345.2kbits/sframe=  133 fps= 15 q=2.0 size=    4765kB time=00:00:11.60 bitrate=3362.7kbits/sframe=  140 fps= 15 q=2.0 size=    5174kB time=00:00:12.07 bitrate=3510.4kbits/sframe=  148 fps= 15 q=2.0 size=    5529kB time=00:00:12.60 bitrate=3592.9kbits/sframe=  155 fps= 15 q=2.0 size=    5765kB time=00:00:13.07 bitrate=3612.7kbits/sframe=  163 fps= 15 q=2.0 size=    6052kB time=00:00:13.60 bitrate=3643.9kbits/sframe=  171 fps= 15 q=2.0 size=    6589kB time=00:00:14.14 bitrate=3817.3kbits/sframe=  178 fps= 15 q=2.0 size=    7074kB time=00:00:14.60 bitrate=3968.5kbits/sframe=  186 fps= 15 q=2.0 size=    7240kB time=00:00:15.13 bitrate=3918.0kbits/sframe=  194 fps= 15 q=2.0 size=    7283kB time=00:00:15.67 bitrate=3806.8kbits/sframe=  199 fps= 15 q=2.0 Lsize=    7601kB time=00:00:16.06 bitrate=3875.8kbits/s    
video:7147kB audio:204kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 3.392012%
2014-11-04 14:30:39.263 ffmpeg[3093:192250] MyPlugTeardown
2014-11-04 14:30:39.263 ffmpeg[3093:192250] MyPlugTeardown
HDLs-MacBook-Pro:Desktop HDL$ 

The -r option has not worked for me in any instance. The only difference I've seen using it is my comment above where using it before -i will increase the rate beyond 15 FPS but playback speed is extremely fast.

comment:9 Changed 4 years ago by cehoyos

Do not use the input option -r unless you know exactly what you are doing.
The output option -r should be a work-around for the original issue here (that -frame_rate doesn't work).

comment:10 in reply to: ↑ 8 Changed 4 years ago by cehoyos

Replying to LordHDL:

No value doesn't work

That is very surprising: I was sure that all values are completely ignored. Am I wrong?

comment:11 Changed 4 years ago by LordHDL

-r does not work for me regardless of where I place it. Here's an output file from the following command: https://www.dropbox.com/s/w0djyou2iwacsyf/out.avi?dl=0

To clarify, using no value with -frame_rate fails to record anything. Using a value will record but it indeed ignores the chosen value.

I should also mention that using -vf fps=60 does not work either.

Last login: Tue Nov  4 14:49:59 on ttys001
HDLs-MacBook-Pro:~ HDL$ cd ~/Desktop
HDLs-MacBook-Pro:Desktop HDL$ ./ffmpeg -f avfoundation -video_device_index 3 -i "" -r 60 -c:v mpeg4 -qscale 2 -vf crop=426:240:507:339 out.avi
ffmpeg version N-67454-g0971154-tessus Copyright (c) 2000-2014 the FFmpeg developers
  built on Nov  3 2014 23:27:57 with Apple LLVM version 6.0 (clang-600.0.54) (based on LLVM 3.5svn)
  configuration: --cc=/usr/bin/clang --prefix=/Users/tessus/data/ext/ffmpeg/sw --as=yasm --extra-version=tessus --disable-shared --enable-static --disable-ffplay --enable-gpl --enable-pthreads --enable-postproc --enable-libmp3lame --enable-libtheora --enable-libvorbis --enable-libx264 --enable-libx265 --enable-libxvid --enable-libspeex --enable-bzlib --enable-zlib --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libxavs --enable-libsoxr --enable-libwavpack --enable-version3 --enable-libvo-aacenc --enable-libvo-amrwbenc --enable-libvpx --enable-libgsm --enable-libopus --enable-libmodplug --enable-fontconfig --enable-libfreetype --enable-libass --enable-libbluray --enable-filters --disable-indev=qtkit --disable-indev=x11grab_xcb --enable-runtime-cpudetect
  libavutil      54. 11.100 / 54. 11.100
  libavcodec     56. 10.102 / 56. 10.102
  libavformat    56. 12.100 / 56. 12.100
  libavdevice    56.  2.100 / 56.  2.100
  libavfilter     5.  2.102 /  5.  2.102
  libswscale      3.  1.101 /  3.  1.101
  libswresample   1.  1.100 /  1.  1.100
  libpostproc    53.  3.100 / 53.  3.100
2014-11-04 14:53:57.380 ffmpeg[3261:203346] alloc
2014-11-04 14:53:57.381 ffmpeg[3261:203346] query 2
2014-11-04 14:53:57.381 ffmpeg[3261:203346] release 2
2014-11-04 14:53:57.381 ffmpeg[3261:203346] ** MyPlugInitializeWithObjectID
2014-11-04 14:53:57.381 ffmpeg[3261:203346] init
2014-11-04 14:53:57.381 ffmpeg[3261:203346] MyPlugObjectSetPropertyData
2014-11-04 14:53:57.381 ffmpeg[3261:203346] MyPlugObjectSetPropertyData
2014-11-04 14:53:57.381 ffmpeg[3261:203346] MyPlugObjectSetPropertyData
2014-11-04 14:53:57.454 ffmpeg[3261:203346] <CMVideoFormatDescription 0x7f8b22540f30 [0x7fff7bfb7cf0]> {
	mediaType:'vide' 
	mediaSubType:'BGRA' 
	mediaSpecific: {
		codecType: 'BGRA'		dimensions: 640 x 480 
	} 
	extensions: {<CFBasicHash 0x7f8b225410f0 [0x7fff7bfb7cf0]>{type = immutable dict, count = 4,
entries =>
	1 : <CFString 0x7fff7c3e2f08 [0x7fff7bfb7cf0]>{contents = "CVFieldCount"} = <CFNumber 0x137 [0x7fff7bfb7cf0]>{value = +1, type = kCFNumberSInt64Type}
	2 : <CFString 0x1068a17f0 [0x7fff7bfb7cf0]>{contents = "CVBytesPerRow"} = <CFNumber 0xa0037 [0x7fff7bfb7cf0]>{value = +2560, type = kCFNumberSInt64Type}
	4 : <CFString 0x7fff7a4d8e50 [0x7fff7bfb7cf0]>{contents = "com.apple.cmio.format_extension.video.only_has_i_frames"} = <CFBoolean 0x7fff7bfb86c8 [0x7fff7bfb7cf0]>{value = true}
	5 : <CFString 0x7fff7b59d6f0 [0x7fff7bfb7cf0]>{contents = "FormatName"} = <CFString 0x1068a1810 [0x7fff7bfb7cf0]>{contents = "Component Video - CCIR-601 RGB"}
}
}
}
2014-11-04 14:53:57.454 ffmpeg[3261:203346] alloc
2014-11-04 14:53:57.455 ffmpeg[3261:203346] query 2
2014-11-04 14:53:57.455 ffmpeg[3261:203346] release 2
2014-11-04 14:53:57.455 ffmpeg[3261:203346] ** MyPlugInitializeWithObjectID
2014-11-04 14:53:57.455 ffmpeg[3261:203346] init
2014-11-04 14:53:57.455 ffmpeg[3261:203346] MyPlugObjectSetPropertyData
2014-11-04 14:53:57.455 ffmpeg[3261:203346] MyPlugObjectSetPropertyData
2014-11-04 14:53:57.456 ffmpeg[3261:203346] MyPlugObjectSetPropertyData
2014-11-04 14:53:57.456 ffmpeg[3261:203346] <CMVideoFormatDescription 0x7f8b22610320 [0x7fff7bfb7cf0]> {
	mediaType:'vide' 
	mediaSubType:'2vuy' 
	mediaSpecific: {
		codecType: '2vuy'		dimensions: 640 x 480 
	} 
	extensions: {<CFBasicHash 0x7f8b22610350 [0x7fff7bfb7cf0]>{type = immutable dict, count = 6,
entries =>
	0 : <CFString 0x7fff7c3e3088 [0x7fff7bfb7cf0]>{contents = "CVImageBufferYCbCrMatrix"} = <CFString 0x7fff7c3e30c8 [0x7fff7bfb7cf0]>{contents = "ITU_R_601_4"}
	1 : <CFString 0x7fff7c3e2f08 [0x7fff7bfb7cf0]>{contents = "CVFieldCount"} = <CFNumber 0x137 [0x7fff7bfb7cf0]>{value = +1, type = kCFNumberSInt64Type}
	2 : <CFString 0x7fff7c3e3188 [0x7fff7bfb7cf0]>{contents = "CVImageBufferTransferFunction"} = <CFString 0x7fff7c3e30a8 [0x7fff7bfb7cf0]>{contents = "ITU_R_709_2"}
	4 : <CFString 0x7fff7a4d8e50 [0x7fff7bfb7cf0]>{contents = "com.apple.cmio.format_extension.video.only_has_i_frames"} = <CFBoolean 0x7fff7bfb86c8 [0x7fff7bfb7cf0]>{value = true}
	5 : <CFString 0x7fff7c3e3108 [0x7fff7bfb7cf0]>{contents = "CVImageBufferColorPrimaries"} = <CFString 0x7fff7c3e3148 [0x7fff7bfb7cf0]>{contents = "SMPTE_C"}
	6 : <CFString 0x7fff7b59d6f0 [0x7fff7bfb7cf0]>{contents = "FormatName"} = <CFString 0x1068a1870 [0x7fff7bfb7cf0]>{contents = "Component Video - CCIR-601 uyvy"}
}
}
}
2014-11-04 14:53:57.558 ffmpeg[3261:203346] MyPlugObjectHasProperty
2014-11-04 14:53:57.558 ffmpeg[3261:203346] enog
2014-11-04 14:53:57.558 ffmpeg[3261:203346] bolg
2014-11-04 14:53:57.558 ffmpeg[3261:203346] 0
2014-11-04 14:53:57.559 ffmpeg[3261:203346] MyPlugObjectSetPropertyData
2014-11-04 14:53:57.559 ffmpeg[3261:203346] MyPlugObjectSetPropertyData
2014-11-04 14:53:57.559 ffmpeg[3261:203346] MyPlugObjectSetPropertyData
2014-11-04 14:53:57.559 ffmpeg[3261:203346] MyPlugObjectSetPropertyData
2014-11-04 14:53:57.559 ffmpeg[3261:203346] MyPlugObjectSetPropertyData
2014-11-04 14:53:57.559 ffmpeg[3261:203346] MyPlugObjectGetPropertyDataSize
2014-11-04 14:53:57.559 ffmpeg[3261:203346] sel dnwo
2014-11-04 14:53:57.559 ffmpeg[3261:203346] scope bolg
2014-11-04 14:53:57.560 ffmpeg[3261:203346] elt 0
2014-11-04 14:53:57.560 ffmpeg[3261:203346] MyPlugObjectGetPropertyDataSize
2014-11-04 14:53:57.560 ffmpeg[3261:203346] sel dnwo
2014-11-04 14:53:57.560 ffmpeg[3261:203346] scope bolg
2014-11-04 14:53:57.560 ffmpeg[3261:203346] elt 0
2014-11-04 14:53:57.560 ffmpeg[3261:203346] MyPlugObjectGetPropertyDataSize
2014-11-04 14:53:57.560 ffmpeg[3261:203346] sel dnwo
2014-11-04 14:53:57.560 ffmpeg[3261:203346] scope bolg
2014-11-04 14:53:57.560 ffmpeg[3261:203346] elt 0
2014-11-04 14:53:57.561 ffmpeg[3261:203346] MyPlugObjectGetPropertyDataSize
2014-11-04 14:53:57.561 ffmpeg[3261:203346] sel dnwo
2014-11-04 14:53:57.561 ffmpeg[3261:203346] scope bolg
2014-11-04 14:53:57.561 ffmpeg[3261:203346] elt 0
2014-11-04 14:53:57.561 ffmpeg[3261:203346] MyPlugObjectGetPropertyDataSize
2014-11-04 14:53:57.561 ffmpeg[3261:203346] sel dnwo
2014-11-04 14:53:57.561 ffmpeg[3261:203346] scope bolg
2014-11-04 14:53:57.561 ffmpeg[3261:203346] elt 0
2014-11-04 14:53:57.561 ffmpeg[3261:203346] MyPlugObjectGetPropertyDataSize
2014-11-04 14:53:57.561 ffmpeg[3261:203346] sel dnwo
2014-11-04 14:53:57.561 ffmpeg[3261:203346] scope bolg
2014-11-04 14:53:57.562 ffmpeg[3261:203346] elt 0
2014-11-04 14:53:57.562 ffmpeg[3261:203346] MyPlugObjectSetPropertyData
2014-11-04 14:53:57.562 ffmpeg[3261:203346] MyPlugObjectHasProperty
2014-11-04 14:53:57.562 ffmpeg[3261:203346] grrf
2014-11-04 14:53:57.562 ffmpeg[3261:203346] bolg
2014-11-04 14:53:57.562 ffmpeg[3261:203346] 0
2014-11-04 14:53:57.562 ffmpeg[3261:203346] MyPlugObjectHasProperty
2014-11-04 14:53:57.562 ffmpeg[3261:203346] grrf
2014-11-04 14:53:57.562 ffmpeg[3261:203346] bolg
2014-11-04 14:53:57.562 ffmpeg[3261:203346] 0
2014-11-04 14:53:57.563 ffmpeg[3261:203346] MyPlugObjectHasProperty
2014-11-04 14:53:57.563 ffmpeg[3261:203346] trfn
2014-11-04 14:53:57.563 ffmpeg[3261:203346] bolg
2014-11-04 14:53:57.563 ffmpeg[3261:203346] 0
2014-11-04 14:53:57.563 ffmpeg[3261:203346] MyPlugObjectHasProperty
2014-11-04 14:53:57.563 ffmpeg[3261:203346] trfm
2014-11-04 14:53:57.563 ffmpeg[3261:203346] bolg
2014-11-04 14:53:57.563 ffmpeg[3261:203346] 0
2014-11-04 14:53:57.563 ffmpeg[3261:203346] MyPlugObjectHasProperty
2014-11-04 14:53:57.564 ffmpeg[3261:203346] trfn
2014-11-04 14:53:57.564 ffmpeg[3261:203346] bolg
2014-11-04 14:53:57.564 ffmpeg[3261:203346] 0
2014-11-04 14:53:57.564 ffmpeg[3261:203346] MyPlugObjectHasProperty
2014-11-04 14:53:57.564 ffmpeg[3261:203346] dulp
2014-11-04 14:53:57.564 ffmpeg[3261:203346] tpni
2014-11-04 14:53:57.564 ffmpeg[3261:203346] 0
2014-11-04 14:53:57.564 ffmpeg[3261:203346] MyPlugObjectGetPropertyDataSize
2014-11-04 14:53:57.564 ffmpeg[3261:203346] sel dnwo
2014-11-04 14:53:57.564 ffmpeg[3261:203346] scope bolg
2014-11-04 14:53:57.565 ffmpeg[3261:203346] elt 0
2014-11-04 14:53:57.565 ffmpeg[3261:203346] MyPlugObjectHasProperty
2014-11-04 14:53:57.565 ffmpeg[3261:203346] enog
2014-11-04 14:53:57.565 ffmpeg[3261:203346] bolg
2014-11-04 14:53:57.565 ffmpeg[3261:203346] 0
2014-11-04 14:53:57.565 ffmpeg[3261:203346] MyPlugObjectSetPropertyData
2014-11-04 14:53:57.565 ffmpeg[3261:203346] MyPlugObjectSetPropertyData
2014-11-04 14:53:57.565 ffmpeg[3261:203346] MyPlugObjectSetPropertyData
2014-11-04 14:53:57.565 ffmpeg[3261:203346] MyPlugObjectSetPropertyData
2014-11-04 14:53:57.565 ffmpeg[3261:203346] MyPlugObjectSetPropertyData
2014-11-04 14:53:57.566 ffmpeg[3261:203346] MyPlugObjectGetPropertyDataSize
2014-11-04 14:53:57.566 ffmpeg[3261:203346] sel dnwo
2014-11-04 14:53:57.566 ffmpeg[3261:203346] scope bolg
2014-11-04 14:53:57.566 ffmpeg[3261:203346] elt 0
2014-11-04 14:53:57.566 ffmpeg[3261:203346] MyPlugObjectGetPropertyDataSize
2014-11-04 14:53:57.566 ffmpeg[3261:203346] sel dnwo
2014-11-04 14:53:57.566 ffmpeg[3261:203346] scope bolg
2014-11-04 14:53:57.566 ffmpeg[3261:203346] elt 0
2014-11-04 14:53:57.566 ffmpeg[3261:203346] MyPlugObjectGetPropertyDataSize
2014-11-04 14:53:57.566 ffmpeg[3261:203346] sel dnwo
2014-11-04 14:53:57.566 ffmpeg[3261:203346] scope bolg
2014-11-04 14:53:57.567 ffmpeg[3261:203346] elt 0
2014-11-04 14:53:57.567 ffmpeg[3261:203346] MyPlugObjectGetPropertyDataSize
2014-11-04 14:53:57.567 ffmpeg[3261:203346] sel dnwo
2014-11-04 14:53:57.567 ffmpeg[3261:203346] scope bolg
2014-11-04 14:53:57.567 ffmpeg[3261:203346] elt 0
2014-11-04 14:53:57.567 ffmpeg[3261:203346] MyPlugObjectGetPropertyDataSize
2014-11-04 14:53:57.567 ffmpeg[3261:203346] sel dnwo
2014-11-04 14:53:57.567 ffmpeg[3261:203346] scope bolg
2014-11-04 14:53:57.567 ffmpeg[3261:203346] elt 0
2014-11-04 14:53:57.568 ffmpeg[3261:203346] MyPlugObjectGetPropertyDataSize
2014-11-04 14:53:57.568 ffmpeg[3261:203346] sel dnwo
2014-11-04 14:53:57.568 ffmpeg[3261:203346] scope bolg
2014-11-04 14:53:57.568 ffmpeg[3261:203346] elt 0
2014-11-04 14:53:57.568 ffmpeg[3261:203346] MyPlugObjectSetPropertyData
2014-11-04 14:53:57.568 ffmpeg[3261:203346] MyPlugObjectHasProperty
2014-11-04 14:53:57.568 ffmpeg[3261:203346] grrf
2014-11-04 14:53:57.568 ffmpeg[3261:203346] bolg
2014-11-04 14:53:57.568 ffmpeg[3261:203346] 0
2014-11-04 14:53:57.568 ffmpeg[3261:203346] MyPlugObjectHasProperty
2014-11-04 14:53:57.569 ffmpeg[3261:203346] grrf
2014-11-04 14:53:57.569 ffmpeg[3261:203346] bolg
2014-11-04 14:53:57.569 ffmpeg[3261:203346] 0
2014-11-04 14:53:57.569 ffmpeg[3261:203346] MyPlugObjectHasProperty
2014-11-04 14:53:57.569 ffmpeg[3261:203346] trfn
2014-11-04 14:53:57.569 ffmpeg[3261:203346] bolg
2014-11-04 14:53:57.569 ffmpeg[3261:203346] 0
2014-11-04 14:53:57.569 ffmpeg[3261:203346] MyPlugObjectHasProperty
2014-11-04 14:53:57.569 ffmpeg[3261:203346] trfm
2014-11-04 14:53:57.569 ffmpeg[3261:203346] bolg
2014-11-04 14:53:57.569 ffmpeg[3261:203346] 0
2014-11-04 14:53:57.570 ffmpeg[3261:203346] MyPlugObjectHasProperty
2014-11-04 14:53:57.570 ffmpeg[3261:203346] trfn
2014-11-04 14:53:57.570 ffmpeg[3261:203346] bolg
2014-11-04 14:53:57.570 ffmpeg[3261:203346] 0
2014-11-04 14:53:57.570 ffmpeg[3261:203346] MyPlugObjectHasProperty
2014-11-04 14:53:57.570 ffmpeg[3261:203346] dulp
2014-11-04 14:53:57.570 ffmpeg[3261:203346] tpni
2014-11-04 14:53:57.570 ffmpeg[3261:203346] 0
2014-11-04 14:53:57.570 ffmpeg[3261:203346] MyPlugObjectGetPropertyDataSize
2014-11-04 14:53:57.570 ffmpeg[3261:203346] sel dnwo
2014-11-04 14:53:57.571 ffmpeg[3261:203346] scope bolg
2014-11-04 14:53:57.571 ffmpeg[3261:203346] elt 0
[avfoundation @ 0x7f8b23817000] Selected pixel format (yuv420p) is not supported by the input device.
[avfoundation @ 0x7f8b23817000] Supported pixel formats:
[avfoundation @ 0x7f8b23817000]   uyvy422
[avfoundation @ 0x7f8b23817000]   yuyv422
[avfoundation @ 0x7f8b23817000]   nv12
[avfoundation @ 0x7f8b23817000]   0rgb
[avfoundation @ 0x7f8b23817000]   bgr0
[avfoundation @ 0x7f8b23817000] Overriding selected pixel format to use uyvy422 instead.
[avfoundation @ 0x7f8b23817000] Stream #0: not enough frames to estimate rate; consider increasing probesize
Input #0, avfoundation, from '':
  Duration: N/A, start: 0.845742, bitrate: 2822 kb/s
    Stream #0:0: Video: rawvideo (UYVY / 0x59565955), uyvy422, 1440x900, 1000k tbr, 1000k tbn, 1000k tbc
    Stream #0:1: Audio: pcm_f32le, 44100 Hz, stereo, flt, 2822 kb/s
Please use -q:a or -q:v, -qscale is ambiguous
File 'out.avi' already exists. Overwrite ? [y/N] y
Output #0, avi, to 'out.avi':
  Metadata:
    ISFT            : Lavf56.12.100
    Stream #0:0: Video: mpeg4 (FMP4 / 0x34504D46), yuv420p, 426x240, q=2-31, 200 kb/s, 60 fps, 60 tbn, 60 tbc
    Metadata:
      encoder         : Lavc56.10.102 mpeg4
    Stream #0:1: Audio: mp3 (libmp3lame) (U[0][0][0] / 0x0055), 44100 Hz, stereo, fltp
    Metadata:
      encoder         : Lavc56.10.102 libmp3lame
Stream mapping:
  Stream #0:0 -> #0:0 (rawvideo (native) -> mpeg4 (native))
  Stream #0:1 -> #0:1 (pcm_f32le (native) -> mp3 (libmp3lame))
Press [q] to stop, [?] for help
frame=   10 fps=0.0 q=2.0 size=     175kB time=00:00:02.90 bitrate= 495.7kbits/sframe=   18 fps= 18 q=2.0 size=     266kB time=00:00:03.43 bitrate= 634.1kbits/sframe=   26 fps= 17 q=2.0 size=     306kB time=00:00:03.96 bitrate= 631.2kbits/sframe=   33 fps= 16 q=2.0 size=     572kB time=00:00:04.43 bitrate=1056.8kbits/sframe=   41 fps= 16 q=2.0 size=     857kB time=00:00:04.96 bitrate=1413.5kbits/sframe=   49 fps= 16 q=2.0 size=     976kB time=00:00:05.50 bitrate=1454.4kbits/sframe=   56 fps= 16 q=2.0 size=    1383kB time=00:00:05.96 bitrate=1899.0kbits/sframe=   64 fps= 16 q=2.0 size=    1869kB time=00:00:06.50 bitrate=2355.9kbits/sframe=   72 fps= 16 q=2.0 size=    2164kB time=00:00:07.03 bitrate=2520.5kbits/sframe=   79 fps= 15 q=2.0 size=    2584kB time=00:00:07.50 bitrate=2822.4kbits/sframe=   87 fps= 15 q=2.0 size=    2922kB time=00:00:08.03 bitrate=2979.6kbits/sframe=   95 fps= 15 q=2.0 size=    3269kB time=00:00:08.56 bitrate=3125.7kbits/sframe=  102 fps= 15 q=2.0 size=    3407kB time=00:00:09.01 bitrate=3095.4kbits/sframe=  110 fps= 15 q=2.0 size=    3449kB time=00:00:09.56 bitrate=2953.2kbits/sframe=  117 fps= 15 q=2.0 Lsize=    3608kB time=00:00:10.05 bitrate=2938.7kbits/s    
video:3456kB audio:119kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.919289%
2014-11-04 14:54:08.233 ffmpeg[3261:203346] MyPlugTeardown
2014-11-04 14:54:08.233 ffmpeg[3261:203346] MyPlugTeardown
HDLs-MacBook-Pro:Desktop HDL$ 

comment:12 Changed 4 years ago by cehoyos

The file you uploaded is 60fps as you requested.
What do you mean with does not work? Of course setting an output frame rate does not fix the issue that you cannot set an input frame rate but it makes your (.mov) output files playable.

comment:13 Changed 4 years ago by LordHDL

Sorry if I haven't been more clear. I'm aware the stream info reflects 60 FPS. The issue is not being able to set 60 as the input frame rate. Is this a bug or is it simply not implemented in ffmpeg's avfoundation capture yet?

comment:14 Changed 4 years ago by cehoyos

  • Reproduced by developer set
  • Status changed from new to open

It is a bug imo that the function is documented but not implemented.

comment:15 Changed 4 years ago by LordHDL

Not that I'm rushing, but is there a chance this will be fixed soon? Other screen recording options on OS X (e.g. ScreenFlow?) result in quality/color loss and/or don't allow you to capture pure RGB. ffmpeg is the only option I know of that offers high flexibility and can record a "perfect" lossless recording. I've currently put all my video projects on hold because of this.

comment:16 Changed 4 years ago by ubitux

  • Summary changed from AV Foundation frame rate setting ignored to AV Foundation -frame_rate setting ignored
grep frame_rate libavdevice/avfoundation.m
    float           frame_rate;
    { "frame_rate", "set frame rate", offsetof(AVFContext, frame_rate), AV_OPT_TYPE_FLOAT, { .dbl = 30.0 }, 0.1, 30.0, AV_OPT_TYPE_VIDEO_RATE, NULL },

Hum. Indeed the setting is ignored.

Note: every other input device is using -framerate instead of -frame_rate. We should probably use the same for consistency.

comment:17 Changed 4 years ago by thilo.borgmann

I can't tell when I will have some spare-time to spend on this, sorry. And yes, it should be -framerate then.

comment:18 Changed 4 years ago by cehoyos

  • Summary changed from AV Foundation -frame_rate setting ignored to Implement the -framerate option for avfoundation

The broken option -frame_rate was removed.

comment:19 Changed 4 years ago by cehoyos

  • Resolution set to fixed
  • Status changed from open to closed

Implemented by Matthieu Bouron in 573a77a1b6f5b8929f06462f1cf8d1633f400fef

Note: See TracTickets for help on using tickets.