[FFmpeg-user] Let ffmpeg pick correct fps from stdin
Jean-Marie Baran
jean-marie.baran at ama.bzh
Thu Jan 14 14:38:54 CET 2016
On 14/01/2016 12:54, Moritz Barsnick wrote:
> Please show us the full, uncut console output. It contains valuable
> information (especially about the detection of the input and the
> configuration of the output formats/codecs).
Here is the full output:
fmpeg -y -thread_queue_size 1024 -f s16le -ar 44100 -i
tcp://localhost:5624?listen=1 -re -f mjpeg -thread_queue_size 1024 -i -
-c:v libx264 -preset fast -crf 28 -vsync 0 -strict -2 -acodec aac
-threads 0 -ar 44100 file.mp4
WARNING: linker: libx264.so has text relocations. This is wasting memory
and prevents security hardening. Please fix.
ffmpeg version 2.8.3 Copyright (c) 2000-2015 the FFmpeg developers
built with gcc 4.8 (GCC)
configuration: --arch=arm --target-os=android --enable-cross-compile
libavutil 54. 31.100 / 54. 31.100
libavcodec 56. 60.100 / 56. 60.100
libavformat 56. 40.101 / 56. 40.101
libavfilter 5. 40.101 / 5. 40.101
libavresample 2. 1. 0 / 2. 1. 0
libswscale 3. 1.101 / 3. 1.101
libswresample 1. 2.101 / 1. 2.101
libpostproc 53. 3.100 / 53. 3.100
Guessed Channel Layout for Input Stream #0.0 : mono
Input #0, s16le, from 'tcp://localhost:39325?listen=1':
Duration: N/A, bitrate: 705 kb/s
Stream #0:0: Audio: pcm_s16le, 44100 Hz, 1 channels, s16, 705 kb/s
[mjpeg @ 0xb6427c00] Changeing bps to 8
Input #1, mjpeg, from 'pipe:':
Duration: N/A, bitrate: N/A
Stream #1:0: Video: mjpeg, yuvj420p(pc, bt470bg/unknown/unknown),
720x480 [SAR 1:1 DAR 3:2], 25 tbr, 1200k tbn, 25 tbc
No pixel format specified, yuvj420p for H.264 encoding chosen.
Use -pix_fmt yuv420p for compatibility with outdated media players.
[libx264 @ 0xb6428800] using SAR=1/1
[libx264 @ 0xb6428800] using cpu capabilities: ARMv6 NEON
[libx264 @ 0xb6428800] profile High, level 3.0
[libx264 @ 0xb6428800] 264 - core 148 - H.264/MPEG-4 AVC codec -
Copyleft 2003-2015 - http://www.videolan.org/x264.html - options:
cabac=1 ref=2 deblock=1:-1:-1 analyse=0x3:0x113 me=hex subme=6 psy=1
psy_rd=1.00:0.15 mixed_ref=1 me_range=16 chroma_me=1 trellis=1 8x8dct=1
cqm=0 deadzone=21,11 fast_pskip=1 chroma_qp_offset=-3 threads=6
lookahead_threads=1 sliced_threads=0 nr=0 decimate=1 interlaced=0
bluray_compat=0 constrained_intra=0 bframes=3 b_pyramid=2 b_adapt=1
b_bias=0 direct=1 weightb=1 open_gop=0 weightp=1 keyint=250
keyint_min=25 scenecut=40 intra_refresh=0 rc_lookahead=30 rc=crf
mbtree=1 crf=28.0 qcomp=0.60 qpmin=0 qpmax=69 qpstep=4 ip_ratio=1.40
aq=1:1.00
Output #0, mp4, to '/storage/emulated/0/DCIM/AMA/NP/record//test.mp4':
Metadata:
encoder : Lavf56.40.101
Stream #0:0: Video: h264 (libx264) ([33][0][0][0] / 0x0021),
yuvj420p(pc), 720x480 [SAR 1:1 DAR 3:2], q=-1--1, 25 fps, 12800 tbn, 25 tbc
Metadata:
encoder : Lavc56.60.100 libx264
Stream #0:1: Audio: aac ([64][0][0][0] / 0x0040), 44100 Hz, mono,
fltp, 128 kb/s
Metadata:
encoder : Lavc56.60.100 aac
Stream mapping:
Stream #1:0 -> #0:0 (mjpeg (native) -> h264 (libx264))
Stream #0:0 -> #0:1 (pcm_s16le (native) -> aac (native))
frame= 8 fps=0.0 q=0.0 size= 0kB time=00:00:00.00 bitrate=N/A
frame= 14 fps= 13 q=0.0 size= 0kB time=00:00:00.00 bitrate=N/A
frame= 21 fps= 13 q=0.0 size= 0kB time=00:00:00.00 bitrate=N/A
frame= 26 fps= 12 q=0.0 size= 0kB time=00:00:00.00 bitrate=N/A
frame= 31 fps= 12 q=0.0 size= 0kB time=00:00:00.00 bitrate=N/A
frame= 37 fps= 11 q=0.0 size= 0kB time=00:00:00.00 bitrate=N/A
frame= 46 fps= 12 q=33.0 size= 33kB time=00:00:00.16
bitrate=1689.9kbits/s
frame= 52 fps= 12 q=33.0 size= 69kB time=00:00:00.40
bitrate=1408.2kbits/s
frame= 57 fps= 12 q=33.0 size= 96kB time=00:00:00.60
bitrate=1299.8kbits/s
frame= 64 fps= 12 q=33.0 size= 136kB time=00:00:00.88
bitrate=1266.3kbits/s
frame= 71 fps= 12 q=33.0 size= 174kB time=00:00:01.16
bitrate=1227.3kbits/s
...
> Furthermore, you are using two inputs (tcp://localhost:5624?listen=1
> and stdin). Can you reproduce this problem with just your stdin? If so,
> please show us that command line and the complete console output.
The TCP server is the audio stream. I will try to reproduce it without
the audio, see what happens.
>
>
> I think the first task would be to determine whether your stdin
> actually can deliver your desired 25 fps, but show us your console
> outputs first please.
>
Just to precise: 25 fps is not the required fps, it is the one put in
the recorded video file by ffmpeg, which is not correct.
Thank you.
--
*Jean-Marie Baran*
AMA developer
More information about the ffmpeg-user
mailing list