[FFmpeg-user] Static ARMEL ffmpeg build on Zero not resolving domains properly?

christina zou zou.christina at gmail.com
Thu Jan 26 12:18:49 EET 2017


Just want to add my command and the -report log.

*Command*

raspivid -o - -t 0 -vf -hf -fps 30 -b 6000000 | ffmpeg/./ffmpeg -re -ar
44100 -ac 2 -acodec pcm_s16le -f s16le -ac 2 -i /dev/zero -f h264 -i -
-vcodec copy -acodec aac -ab 128k -g 50 -strict experimental -f flv
rtmp://31.13.66.23:80/rtmp/1202172759851050?ds=1&s_l=1&a=ATig_KiAVVHvPWse

*Log (report)*

ffmpeg started on 2017-01-26 at 07:07:25

Report written to "ffmpeg-20170126-070725.log"

Command line:

ffmpeg/./ffmpeg -report -re -ar 44100 -ac 2 -acodec pcm_s16le -f s16le -ac
2 -i /dev/zero -f h264 -i - -vcodec copy -acodec aac -ab 128k -g 50 -strict
experimental -f flv "rtmp://157.240.3.12:80/rtmp/1202172759851050?ds=1"

ffmpeg version 3.1.4-static http://johnvansickle.com/ffmpeg/  Copyright (c)
2000-2016 the FFmpeg developers

  built with gcc 5.4.1 (Debian 5.4.1-2) 20160904

  configuration: --enable-gpl --enable-version3 --enable-static
--disable-debug --enable-libmp3lame --enable-libx264 --enable-libwebp
--enable-libspeex --enable-libvorbis --enable-libvpx --enable-libfreetype
--enable-fontconfig --enable-libxvid --enable-libopencore-amrnb
--enable-libopencore-amrwb --enable-libtheora --enable-libvo-amrwbenc
--enable-gray --enable-libopus --enable-libass --enable-gnutls
--enable-libvidstab --enable-libsoxr --enable-frei0r --enable-libfribidi
--disable-indev=sndio --disable-outdev=sndio --enable-librtmp --cc=gcc-5
--disable-ffplay

  libavutil      55. 28.100 / 55. 28.100

  libavcodec     57. 48.101 / 57. 48.101

  libavformat    57. 41.100 / 57. 41.100

  libavdevice    57.  0.101 / 57.  0.101

  libavfilter     6. 47.100 /  6. 47.100

  libswscale      4.  1.100 /  4.  1.100

  libswresample   2.  1.100 /  2.  1.100

  libpostproc    54.  0.100 / 54.  0.100

Splitting the commandline.

Reading option '-report' ... matched as option 'report' (generate a report)
with argument '1'.

Reading option '-re' ... matched as option 're' (read input at native frame
rate) with argument '1'.

Reading option '-ar' ... matched as option 'ar' (set audio sampling rate
(in Hz)) with argument '44100'.

Reading option '-ac' ... matched as option 'ac' (set number of audio
channels) with argument '2'.

Reading option '-acodec' ... matched as option 'acodec' (force audio codec
('copy' to copy stream)) with argument 'pcm_s16le'.

Reading option '-f' ... matched as option 'f' (force format) with argument
's16le'.

Reading option '-ac' ... matched as option 'ac' (set number of audio
channels) with argument '2'.

Reading option '-i' ... matched as input file with argument '/dev/zero'.

Reading option '-f' ... matched as option 'f' (force format) with argument
'h264'.

Reading option '-i' ... matched as input file with argument '-'.

Reading option '-vcodec' ... matched as option 'vcodec' (force video codec
('copy' to copy stream)) with argument 'copy'.

Reading option '-acodec' ... matched as option 'acodec' (force audio codec
('copy' to copy stream)) with argument 'aac'.


  libswresample   2.  1.100 /  2.  1.100

  libpostproc    54.  0.100 / 54.  0.100

Splitting the commandline.

Reading option '-report' ... matched as option 'report' (generate a report)
with argument '1'.

Reading option '-re' ... matched as option 're' (read input at native frame
rate) with argument '1'.

Reading option '-ar' ... matched as option 'ar' (set audio sampling rate
(in Hz)) with argument '44100'.

Reading option '-ac' ... matched as option 'ac' (set number of audio
channels) with argument '2'.

Reading option '-acodec' ... matched as option 'acodec' (force audio codec
('copy' to copy stream)) with argument 'pcm_s16le'.

Reading option '-f' ... matched as option 'f' (force format) with argument
's16le'.

Reading option '-ac' ... matched as option 'ac' (set number of audio
channels) with argument '2'.

Reading option '-i' ... matched as input file with argument '/dev/zero'.

Reading option '-f' ... matched as option 'f' (force format) with argument
'h264'.

Reading option '-i' ... matched as input file with argument '-'.

Reading option '-vcodec' ... matched as option 'vcodec' (force video codec
('copy' to copy stream)) with argument 'copy'.

Reading option '-acodec' ... matched as option 'acodec' (force audio codec
('copy' to copy stream)) with argument 'aac'.

Reading option '-ab' ... matched as option 'ab' (audio bitrate (please use
-b:a)) with argument '128k'.

Reading option '-g' ... matched as AVOption 'g' with argument '50'.

Reading option '-strict' ...Routing option strict to both codec and muxer
layer

 matched as AVOption 'strict' with argument 'experimental'.

Reading option '-f' ... matched as option 'f' (force format) with argument
'flv'.

Reading option 'rtmp://157.240.3.12:80/rtmp/1202172759851050?ds=1' ...
matched as output file.

Finished splitting the commandline.

Parsing a group of options: global .

Applying option report (generate a report) with argument 1.

Successfully parsed a group of options.

Parsing a group of options: input file /dev/zero.

Applying option re (read input at native frame rate) with argument 1.

Applying option ar (set audio sampling rate (in Hz)) with argument 44100.

Applying option ac (set number of audio channels) with argument 2.

Applying option acodec (force audio codec ('copy' to copy stream)) with
argument pcm_s16le.

Reading option '-ab' ... matched as option 'ab' (audio bitrate (please use
-b:a)) with argument '128k'.

Reading option '-g' ... matched as AVOption 'g' with argument '50'.

Reading option '-strict' ...Routing option strict to both codec and muxer
layer

 matched as AVOption 'strict' with argument 'experimental'.

Reading option '-f' ... matched as option 'f' (force format) with argument
'flv'.

Reading option 'rtmp://157.240.3.12:80/rtmp/1202172759851050?ds=1' ...
matched as output file.

Finished splitting the commandline.

Parsing a group of options: global .

Applying option report (generate a report) with argument 1.

Successfully parsed a group of options.

Parsing a group of options: input file /dev/zero.

Applying option re (read input at native frame rate) with argument 1.

Applying option ar (set audio sampling rate (in Hz)) with argument 44100.

Applying option ac (set number of audio channels) with argument 2.

Applying option acodec (force audio codec ('copy' to copy stream)) with
argument pcm_s16le.

Applying option f (force format) with argument s16le.

Applying option ac (set number of audio channels) with argument 2.

Successfully parsed a group of options.

Opening an input file: /dev/zero.

[file @ 0x2a1aa40] Setting default whitelist 'file,crypto'

[s16le @ 0x2a1a390] Before avformat_find_stream_info() pos: 0 bytes
read:32768 seeks:0 nb_streams:1

[s16le @ 0x2a1a390] All info found

[s16le @ 0x2a1a390] After avformat_find_stream_info() pos: 204800 bytes
read:229376 seeks:0 frames:50

Guessed Channel Layout for Input Stream #0.0 : stereo

Input #0, s16le, from '/dev/zero':

  Duration: N/A, bitrate: 1411 kb/s

    Stream #0:0, 50, 1/44100: Audio: pcm_s16le, 44100 Hz, 2 channels, s16,
1411 kb/s

Successfully opened the file.

Parsing a group of options: input file -.

Applying option f (force format) with argument h264.

Applying option ac (set number of audio channels) with argument 2.

Successfully parsed a group of options.

Opening an input file: /dev/zero.

[file @ 0x2a1aa40] Setting default whitelist 'file,crypto'

[s16le @ 0x2a1a390] Before avformat_find_stream_info() pos: 0 bytes
read:32768 seeks:0 nb_streams:1

[s16le @ 0x2a1a390] All info found

[s16le @ 0x2a1a390] After avformat_find_stream_info() pos: 204800 bytes
read:229376 seeks:0 frames:50

Guessed Channel Layout for Input Stream #0.0 : stereo

Input #0, s16le, from '/dev/zero':

  Duration: N/A, bitrate: 1411 kb/s

    Stream #0:0, 50, 1/44100: Audio: pcm_s16le, 44100 Hz, 2 channels, s16,
1411 kb/s

Successfully opened the file.

Parsing a group of options: input file -.

Applying option f (force format) with argument h264.

Successfully parsed a group of options.

Opening an input file: -.

[pipe @ 0x2a1a320] Setting default whitelist 'crypto'

[h264 @ 0x2a5a110] Before avformat_find_stream_info() pos: 0 bytes
read:4096 seeks:0 nb_streams:1

[h264 @ 0x2a62e50] nal_unit_type: 7, nal_ref_idc: 1

[h264 @ 0x2a62e50] nal_unit_type: 8, nal_ref_idc: 1

[h264 @ 0x2a62e50] nal_unit_type: 5, nal_ref_idc: 1

[h264 @ 0x2a62e50] nal_unit_type: 1, nal_ref_idc: 1

[h264 @ 0x2a62e50] nal_unit_type: 1, nal_ref_idc: 1

[h264 @ 0x2a62e50] nal_unit_type: 1, nal_ref_idc: 1

[h264 @ 0x2a62e50] nal_unit_type: 1, nal_ref_idc: 1

[h264 @ 0x2a62e50] nal_unit_type: 1, nal_ref_idc: 1

[h264 @ 0x2a62e50] nal_unit_type: 1, nal_ref_idc: 1

[h264 @ 0x2a5a110] max_analyze_duration 5000000 reached at 5000000
microseconds st:0

[h264 @ 0x2a5a110] After avformat_find_stream_info() pos: 98304 bytes
read:98304 seeks:0 frames:127

Successfully parsed a group of options.

Opening an input file: -.

[pipe @ 0x2a1a320] Setting default whitelist 'crypto'

[h264 @ 0x2a5a110] Before avformat_find_stream_info() pos: 0 bytes
read:4096 seeks:0 nb_streams:1

[h264 @ 0x2a62e50] nal_unit_type: 7, nal_ref_idc: 1

[h264 @ 0x2a62e50] nal_unit_type: 8, nal_ref_idc: 1

[h264 @ 0x2a62e50] nal_unit_type: 5, nal_ref_idc: 1

[h264 @ 0x2a62e50] nal_unit_type: 1, nal_ref_idc: 1

[h264 @ 0x2a62e50] nal_unit_type: 1, nal_ref_idc: 1

[h264 @ 0x2a62e50] nal_unit_type: 1, nal_ref_idc: 1

[h264 @ 0x2a62e50] nal_unit_type: 1, nal_ref_idc: 1

[h264 @ 0x2a62e50] nal_unit_type: 1, nal_ref_idc: 1

[h264 @ 0x2a62e50] nal_unit_type: 1, nal_ref_idc: 1

[h264 @ 0x2a5a110] max_analyze_duration 5000000 reached at 5000000
microseconds st:0

[h264 @ 0x2a5a110] After avformat_find_stream_info() pos: 98304 bytes
read:98304 seeks:0 frames:127

Input #1, h264, from 'pipe:':

  Duration: N/A, bitrate: N/A

    Stream #1:0, 127, 1/1200000: Video: h264 (High), yuv420p, 1920x1080, 25
fps, 25 tbr, 1200k tbn, 50 tbc

Successfully opened the file.

Parsing a group of options: output file rtmp://
157.240.3.12:80/rtmp/1202172759851050?ds=1.

Applying option vcodec (force video codec ('copy' to copy stream)) with
argument copy.

Applying option acodec (force audio codec ('copy' to copy stream)) with
argument aac.

Applying option ab (audio bitrate (please use -b:a)) with argument 128k.

Applying option f (force format) with argument flv.

Successfully parsed a group of options.

Opening an output file: rtmp://157.240.3.12:80/rtmp/1202172759851050?ds=1.

[rtmp @ 0x2a7ba00] No default whitelist set

RTMP_ReadPacket, failed to read RTMP packet header

rtmp://157.240.3.12:80/rtmp/1202172759851050?ds=1: Unknown error occurred

[AVIOContext @ 0x2a22bf0] Statistics: 229376 bytes read, 0 seeks

[AVIOContext @ 0x2a53800] Statistics: 98304 bytes read, 0 seeks

On Thu, Jan 26, 2017 at 2:09 AM, christina zou <zou.christina at gmail.com>
wrote:

> Hello,
>
> I have a Pi Zero and am using ffmpeg to stream to platforms like Youtube
> and Twitch.
>
> I was instructed from #ffmpeg's IRC channel to install the static ARMEL
> ffmpeg tar from https://www.johnvansickle.com/ffmpeg/. It is called
> ffmpeg-release-armel-32bit-static.tar.xz
> <https://johnvansickle.com/ffmpeg/releases/ffmpeg-release-armel-32bit-static.tar.xz>
> - md5
> <https://johnvansickle.com/ffmpeg/releases/ffmpeg-release-armel-32bit-static.tar.xz.md5>
>
> Using this version of ffmpeg, I am able to livestream to platforms like
> Youtube and Twitch Live, but I'm forced to use the IP addresses in the RTMP
> URLs to avoid a DNS issue. This DNS issue was repro'd by others helping me
> on the IRC channel, so they advised the IP address approach. They told me
> the ARMHF version resolved this issue, but I would have to manually compile
> it for the Zero, and it was complicated (my memory is hazy here...)
>
> Now I am attempting to stream to Facebook Live, where it seems like the
> RTMP URL's IP address changes, and I'm getting a 'failed to read RTMP
> packet header' error.
>
> I am trying to remember the names of the users I interacted with on
> #ffmpeg.. I think I remember @furq?
>
> I'm wondering if I should use a different version of ffmpeg, and if so,
> how to obtain/build it for the Zero?
>
> Thanks,
> Christina
>


More information about the ffmpeg-user mailing list