[FFmpeg-user] Need info on ATSC3 stream capture going wrong

Deron deron at pagestream.org
Sun Apr 14 17:14:47 EEST 2019


Hello, this is a really strange one for me that is way outside my 
understanding. I've been using ffmpeg to stream tv shows and I've run 
across a TV station I can not capture! The symptoms are after 12:55 or 
so minutes the audio goes silent in the output, and shortly after that 
ffmpeg quits. This works with some 40 other tv channels!

I had to bump up the loglevel to 90(!) to see something that might 
explain this. Obviously 13 minutes of loglevel 90 is a huge amount of 
output, so I'm hoping I have identified the important part and make it 
obviously enough that someone might have some guidance on what is wrong. 
What appears to happen is some audio timestamp drift error is noticed, 
compensation is applied that perhaps has a math sign error, a whole lot 
of silence is inserted, the incoming data is ignored because of that 
silence, and the input buffer is overflowed.

Happy to provide complete uncut console data, but it is 50mb! Hopefully 
this is enough that someone can guide me to a solution!

Thanks,

Deron


Command (without proper shell quoting because it is not issued from the 
shell):

ffmpeg -loglevel 90 -f lavfi -i 
movie=/dev/dvb/adapter0/dvr0:f=mpegts:s=dv+da[out0+subcc][out1] 
-force_key_frames expr:gte(t,n_forced*2) -c:v libx264 -profile:v high 
-level:v 4.0 -vf scale=1280:720 -s 1280x720 -aspect 1280:720 -pix_fmt 
yuv420p -r 30 -preset veryfast -b:v 1200k -c:a libfdk_aac -cutoff 18000 
-b:a 128k -ar 48000 -ac 2 -async 2 -flags:a -global_header -af 
volume=volume=10.000dB:precision=float -f hls -hls_time 2 -hls_list_size 
10 -hls_wrap 999999 -hls_flags delete_segments -hls_segment_filename 
/var/www/html/stream/v.mid.%06d.ts -y /var/www/html/stream/v.mid.m3u8 
-sn -force_key_frames expr:gte(t,n_forced*2) -c:v libx264 -profile:v 
high -level:v 4.0 -vf scale=640:360 -s 640x360 -aspect 640:360 -pix_fmt 
yuv420p -r 30 -preset veryfast -b:v 200k -c:a libfdk_aac -profile:a 
aac_he -cutoff 18000 -b:a 96k -ar 44100 -ac 1 -flags:a -global_header 
-af volume=volume=10.000dB:precision=float -f hls -hls_time 2 
-hls_list_size 10 -hls_wrap 999999 -hls_flags delete_segments 
-hls_segment_filename /var/www/html/stream/v.portrait.%06d.ts -y 
/var/www/html/stream/v.portrait.m3u8 -sn -vn -c:a libfdk_aac -profile:a 
aac_he -cutoff 18000 -b:a 96k -ar 44100 -ac 2 -flags:a -global_header 
-af volume=volume=10.000dB:precision=float -f hls -hls_time 2 
-hls_list_size 10 -hls_wrap 999999 -hls_flags delete_segments 
-hls_segment_filename /var/www/html/stream/a.hi.%06d.ts -y 
/var/www/html/stream/a.hi.m3u8 -sn -vn -c:a libfdk_aac -profile:a aac_he 
-cutoff 18000 -b:a 60k -ar 32000 -ac 1 -flags:a -global_header -af 
volume=volume=10.000dB:precision=float -f hls -hls_time 2 -hls_list_size 
10 -hls_wrap 999999 -hls_flags delete_segments -hls_segment_filename 
/var/www/html/stream/a.low.%06d.ts -y /var/www/html/stream/a.low.m3u8 
-vf scale=426:240 -s 426x240 -aspect 426:240 -f image2 -vf fps=fps=2 -y 
/var/www/html/stream/t.%06d.jpg -vn -map a:0 -c:a pcm_s16le -ar 48000 
-ac 2 -f stream_segment -segment_time 2 -segment_format s16le -y 
/var/www/html/stream/a.loudness.%06d.pcm


ffmpeg version N-93562-g3e10223385 Copyright (c) 2000-2019 the FFmpeg 
developers
   built with gcc 7 (Ubuntu 7.2.0-8ubuntu3)
   configuration: --enable-shared --enable-gpl --enable-nonfree 
--enable-libxvid --enable-libx264 --enable-libmp3lame --enable-libvorbis 
--enable-libfdk-aac --disable-stripping
   libavutil      56. 26.100 / 56. 26.100
   libavcodec     58. 50.100 / 58. 50.100
   libavformat    58. 27.102 / 58. 27.102
   libavdevice    58.  7.100 / 58.  7.100
   libavfilter     7. 48.100 /  7. 48.100
   libswscale      5.  4.100 /  5.  4.100
   libswresample   3.  4.100 /  3.  4.100
   libpostproc    55.  4.100 / 55.  4.100

< ... snip ...>

[graph_1_aresample_in_0_1 @ 0x56452dc9ad00] [SWR @ 0x56452dc9b600] 
compensating audio timestamp drift:-0.001021 compensation:-2 in:48000
[graph_1_aresample_in_0_1 @ 0x56452dc9ad00] [SWR @ 0x56452dc9b600] Using 
fltp internally between filters
[graph_3_aresample_in_0_1 @ 0x56452dc5e480] [SWR @ 0x56452ddb9600] 
compensating audio timestamp drift:-0.001021 compensation:-2 in:48000
[graph_3_aresample_in_0_1 @ 0x56452dc5e480] [SWR @ 0x56452ddb9600] Using 
fltp internally between filters
[graph_4_aresample_in_0_1 @ 0x56452dda0380] [SWR @ 0x56452dda1080] 
compensating audio timestamp drift:-0.001021 compensation:-2 in:48000
[graph_4_aresample_in_0_1 @ 0x56452dda0380] [SWR @ 0x56452dda1080] Using 
fltp internally between filters
[graph_5_aresample_in_0_1 @ 0x56452f0c9200] [SWR @ 0x56452f0c9c40] 
compensating audio timestamp drift:-0.001021 compensation:-2 in:48000
[graph_5_aresample_in_0_1 @ 0x56452f0c9200] [SWR @ 0x56452f0c9c40] Using 
fltp internally between filters
[graph_7_aresample_in_0_1 @ 0x56452f18a740] [SWR @ 0x56452f18b180] 
compensating audio timestamp drift:-0.001021 compensation:-2 in:48000
[graph_7_aresample_in_0_1 @ 0x56452f18a740] [SWR @ 0x56452f18b180] Using 
fltp internally between filters
[libfdk_aac @ 0x56452dbd7440] Queue input is backward in time

< ... snip ...>

[graph_1_aresample_in_0_1 @ 0x56452dc9ad00] [SWR @ 0x56452dc9b600] 
adding 16384 audio samples of silence
[graph_1_aresample_in_0_1 @ 0x56452dc9ad00] [SWR @ 0x56452dc9b600] 
adding 15311 audio samples of silence
[graph_3_aresample_in_0_1 @ 0x56452dc5e480] [SWR @ 0x56452ddb9600] 
adding 16384 audio samples of silence
[graph_3_aresample_in_0_1 @ 0x56452dc5e480] [SWR @ 0x56452ddb9600] 
adding 15311 audio samples of silence
[graph_4_aresample_in_0_1 @ 0x56452dda0380] [SWR @ 0x56452dda1080] 
adding 16384 audio samples of silence
[graph_4_aresample_in_0_1 @ 0x56452dda0380] [SWR @ 0x56452dda1080] 
adding 15311 audio samples of silence
[graph_5_aresample_in_0_1 @ 0x56452f0c9200] [SWR @ 0x56452f0c9c40] 
adding 16384 audio samples of silence
[graph_5_aresample_in_0_1 @ 0x56452f0c9200] [SWR @ 0x56452f0c9c40] 
adding 15311 audio samples of silence
[graph_7_aresample_in_0_1 @ 0x56452f18a740] [SWR @ 0x56452f18b180] 
adding 16384 audio samples of silence
[graph_7_aresample_in_0_1 @ 0x56452f18a740] [SWR @ 0x56452f18b180] 
adding 15311 audio samples of silence
[libfdk_aac @ 0x56452de52600] Queue input is backward in time

< ... snip ...>

[ac3 @ 0x56452db4ed00] incomplete frame

< ... snip ...>

[mpeg2video @ 0x56452dafba80] Invalid mb type in B-frame at 69 36
[mpeg2video @ 0x56452dafba80] Warning MVs not available
[mpeg2video @ 0x56452dafba80] concealing 720 DC, 720 AC, 720 MV errors 
in B frame
[Parsed_movie_0 @ 0x56452dac1a00] EOF timestamp not reliable
movie=/dev/dvb/adapter0/dvr0:f=mpegts:s=dv+da[out0+subcc][out1]: Value 
too large for defined data type

and then ffmpeg starts wrapping things up and quits.




More information about the ffmpeg-user mailing list