[FFmpeg-trac] #4080(avdevice:new): AV Foundation frame rate setting ignored
FFmpeg
trac at avcodec.org
Tue Nov 4 19:44:51 CET 2014
#4080: AV Foundation frame rate setting ignored
--------------------------------------+------------------------------------
Reporter: LordHDL | Owner:
Type: enhancement | Status: new
Priority: wish | Component: avdevice
Version: git-master | Resolution:
Keywords: avfoundation | Blocked By:
Blocking: | Reproduced by developer: 0
Analyzed by developer: 0 |
--------------------------------------+------------------------------------
Comment (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.
--
Ticket URL: <https://trac.ffmpeg.org/ticket/4080#comment:8>
FFmpeg <https://ffmpeg.org>
FFmpeg issue tracker
More information about the FFmpeg-trac
mailing list