Hello everybody,
I'm trying to convert (no transcoding needed) the http stream on the port 8001 to udp or rtp stream using ffmeg.
I'm using the following command from my vu+ solo receiver:
root@vusolo:~# ffmpeg -v trace -i "http://127.0.0.1:8001/1:0:19:A01:6:20FA:20D0000:0:0:0:" -acodec copy -vcodec copy -f mpegts udp://@127.0.0.1:8888
I got the following trace:
root@vusolo:~# ffmpeg -v trace -i "http://127.0.0.1:8001/1:0:19:A01:6:20FA:20D0000:0:0:0:" -acodec copy -vcodec copy -f mpegts udp://@127.0.0.1:8888 ffmpeg version 3.0.2 Copyright (c) 2000-2016 the FFmpeg developers built with gcc 4.9.1 (GCC) configuration: --disable-stripping --enable-pic --enable-shared --enable-pthreads --enable-nonfree --cross-prefix=mipsel-oe-linux- --ld='mipsel-oe-linux-gcc -mel -mabi=32 -mhard-float -march=mips32 --sysroot=/media/data2/ff/build/tmp/sysroots/vuduo' --arch=mipsel --target-os=linux --enable-cross-compile --extra-cflags=' -Os -pipe -g -feliminate-unused-debug-types -mel -mabi=32 -mhard-float -march=mips32 --sysroot=/media/data2/ff/build/tmp/sysroots/vuduo' --extra-ldflags='-Wl,-O1 -Wl,--as-needed' --sysroot=/media/data2/ff/build/tmp/sysroots/vuduo --enable-hardcoded-tables --disable-static --disable-runtime-cpudetect --disable-ffserver --disable-ffplay --enable-ffprobe --disable-iconv --disable-doc --disable-altivec --disable-amd3dnow --disable-amd3dnowext --disable-mmx --disable-mmxext --disable-sse --disable-sse2 --disable-sse3 --disable-ssse3 --disable-sse4 --disable-sse42 --disable-avx --disable-xop --disable-fma3 --disable-fma4 --disable-avx2 --disable-armv5te --disable-armv6 --disable-armv6t2 --disable-vfp --disable-neon --disable-inline-asm --disable-yasm --disable-fast-unaligned --disable-muxers --enable-muxer=mpeg1video --enable-encoders --enable-encoder=mpeg1video --disable-decoders --enable-libass --enable-decoder=alac --enable-decoder=ape --enable-decoder=atrac1 --enable-decoder=atrac3 --enable-decoder=atrac3p --enable-decoder=cook --enable-decoder=dsd_lsbf --enable-decoder=dsd_lsbf_planar --enable-decoder=dsd_msbf --enable-decoder=dsd_msbf_planar --enable-decoder=eac3 --enable-decoder=evrc --enable-decoder=iac --enable-decoder=imc --enable-decoder=mace3 --enable-decoder=mace6 --enable-decoder=metasound --enable-decoder=mjpeg --enable-decoder=mlp --enable-decoder=mp1 --enable-decoder=mp3adu --enable-decoder=mp3on4 --enable-decoder=mpeg1video --enable-decoder=nellymoser --enable-decoder=pcm_alaw --enable-decoder=pcm_bluray --enable-decoder=pcm_dvd --enable-decoder=pcm_f32be --enable-decoder=pcm_f32le --enable-decoder=pcm_f64be --enable-decoder=pcm_f64le --enable-decoder=pcm_lxf --enable-decoder=pcm_mulaw --enable-decoder=pcm_s16be --enable-decoder=pcm_s16be_planar --enable-decoder=pcm_s16le --enable-decoder=pcm_s16le_planar --enable-decoder=pcm_s24be --enable-decoder=pcm_s24daud --enable-decoder=pcm_s24le --enable-decoder=pcm_s24le_planar --enable-decoder=pcm_s32be --enable-decoder=pcm_s32le --enable-decoder=pcm_s32le_planar --enable-decoder=pcm_s8 --enable-decoder=pcm_s8_planar --enable-decoder=pcm_u16be --enable-decoder=pcm_u16le --enable-decoder=pcm_u24be --enable-decoder=pcm_u24le --enable-decoder=pcm_u32be --enable-decoder=pcm_u32le --enable-decoder=pcm_u8 --enable-decoder=pcm_zork --enable-decoder=ra_144 --enable-decoder=ra_288 --enable-decoder=ralf --enable-decoder=s302m --enable-decoder=shorten --enable-decoder=sipr --enable-decoder=sonic --enable-decoder=tak --enable-decoder=truehd --enable-decoder=truespeech --enable-decoder=tta --enable-decoder=wmalossless --enable-decoder=wmapro --enable-decoder=wmav1 --enable-decoder=wmav2 --enable-decoder=wmavoice --enable-decoder=aac --enable-decoder=aac_latm --enable-decoder=adpcm_ct --enable-decoder=adpcm_g722 --enable-decoder=adpcm_g726 --enable-decoder=adpcm_g726le --enable-decoder=adpcm_ima_amv --enable-decoder=adpcm_ima_oki --enable-decoder=adpcm_ima_qt --enable-decoder=adpcm_ima_rad --enable-decoder=adpcm_ima_wav --enable-decoder=adpcm_ms --enable-decoder=adpcm_sbpro_2 --enable-decoder=adpcm_sbpro_3 --enable-decoder=adpcm_sbpro_4 --enable-decoder=adpcm_swf --enable-decoder=adpcm_yamaha --enable-decoder=flac --enable-decoder=g723_1 --enable-decoder=g729 --enable-decoder=opus --enable-decoder=qcelp --enable-decoder=qdm2 --enable-decoder=vorbis --enable-decoder=wavpack --disable-demuxer=adp --disable-demuxer=adx --disable-demuxer=afc --disable-demuxer=anm --disable-demuxer=apc --disable-demuxer=ast --disable-demuxer=avs --disable-demuxer=bethsoftvid --disable-demuxer=bfi --disable-demuxer=bink --disable-demuxer=bmv --disable-demuxer=brstm --disable-demuxer=c93 --disable-demuxer=cdg --disable-demuxer=dnxhd --disable-demuxer=dsicin --disable-demuxer=dfa --disable-demuxer=dxa --disable-demuxer=ea --disable-demuxer=ea_cdata --disable-demuxer=frm --disable-demuxer=gif --disable-demuxer=gsm --disable-demuxer=gxf --disable-demuxer=hnm --disable-demuxer=ico --disable-demuxer=ilbc --enable-demuxer=image2 --disable-demuxer=iss --disable-demuxer=jv --disable-demuxer=mm --disable-demuxer=paf --disable-demuxer=pva --disable-demuxer=qcp --disable-demuxer=redspark --disable-demuxer=rl2 --disable-demuxer=roq --disable-demuxer=rsd --disable-demuxer=rso --disable-demuxer=siff --disable-demuxer=smjpeg --disable-demuxer=smush --disable-demuxer=sol --disable-demuxer=thp --disable-demuxer=tiertexseq --disable-demuxer=tmv --disable-demuxer=tty --disable-demuxer=txd --disable-demuxer=vqf --disable-demuxer=wsaud --disable-demuxer=wsvqa --disable-demuxer=xa --disable-demuxer=xbin --disable-demuxer=yop --disable-demuxer=ingenient --disable-demuxer=image_dds_pipe --disable-demuxer=image_dpx_pipe --disable-demuxer=image_exr_pipe --disable-demuxer=image_j2k_pipe --disable-demuxer=image_pictor_pipe --disable-demuxer=image_qdraw_pipe --disable-demuxer=image_sgi_pipe --disable-demuxer=image_sunrast_pipe --disable-filters --enable-filter=scale --disable-mips32r2 --disable-mipsdsp --disable-mipsdspr2 --enable-mipsfpu --enable-libbluray --enable-protocol=bluray --enable-librtmp --disable-indevs --disable-outdevs --pkg-config=pkg-config --disable-debug --extra-cflags='-ffunction-sections -fdata-sections -fno-aggressive-loop-optimizations' --extra-ldflags='-Wl,--gc-sections,-lrt' --prefix=/usr --libdir=/usr/lib --shlibdir=/usr/lib --datadir=/usr/share/ffmpeg --enable-avdevice --enable-avfilter --enable-bzlib --disable-libfaac --enable-gpl --disable-libgsm --disable-indev=jack --disable-libvorbis --disable-lzma --enable-libmp3lame --enable-openssl --disable-libschroedinger --disable-libspeex --enable-libtheora --disable-vaapi --enable-libvpx --disable-x11grab --enable-libx264 --disable-outdev=xv libavutil 55. 17.103 / 55. 17.103 libavcodec 57. 24.102 / 57. 24.102 libavformat 57. 25.100 / 57. 25.100 libavdevice 57. 0.101 / 57. 0.101 libavfilter 6. 31.100 / 6. 31.100 libswscale 4. 0.100 / 4. 0.100 libswresample 2. 0.101 / 2. 0.101 libpostproc 54. 0.100 / 54. 0.100 Splitting the commandline. Reading option '-v' ... matched as option 'v' (set logging level) with argument 'trace'. Reading option '-i' ... matched as input file with argument 'http://127.0.0.1:8001/1:0:19:A01:6:20FA:20D0000:0:0:0:'. Reading option '-acodec' ... matched as option 'acodec' (force audio codec ('copy' to copy stream)) with argument 'copy'. Reading option '-vcodec' ... matched as option 'vcodec' (force video codec ('copy' to copy stream)) with argument 'copy'. Reading option '-f' ... matched as option 'f' (force format) with argument 'mpegts'. Reading option 'udp://@127.0.0.1:8888' ... matched as output file. Finished splitting the commandline. Parsing a group of options: global . Applying option v (set logging level) with argument trace. Successfully parsed a group of options. Parsing a group of options: input file http://127.0.0.1:8001/1:0:19:A01:6:20FA:20D0000:0:0:0:. Successfully parsed a group of options. Opening an input file: http://127.0.0.1:8001/1:0:19:A01:6:20FA:20D0000:0:0:0:. [http @ 0x45b430] Setting default whitelist 'http,https,tls,rtp,tcp,udp,crypto,httpproxy' [http @ 0x45b430] request: GET /1:0:19:A01:6:20FA:20D0000:0:0:0: HTTP/1.1 User-Agent: Lavf/57.25.100 Accept: */* Range: bytes=0- Connection: close Host: 127.0.0.1:8001 Icy-MetaData: 1 [http @ 0x45b430] header='HTTP/1.0 200 OK' [http @ 0x45b430] http_code=200 [http @ 0x45b430] header='Connection: Close' [http @ 0x45b430] header='Content-Type: video/mpeg' [http @ 0x45b430] header='Server: streamserver' [http @ 0x45b430] header='' Probing mp3 score:1 size:2048 Probing mpegts score:100 size:2048 [mpegts @ 0x45ad20] Format mpegts probed with size=2048 and score=100 score: 44, dvhs_score: 1, fec_score: -1 [mpegts @ 0x45ad20] Filter: pid=0x11 [mpegts @ 0x45ad20] Filter: pid=0x0 [mpegts @ 0x45ad20] PAT: [mpegts @ 0x45ad20] sid=0x1 pid=0x40 [mpegts @ 0x45ad20] new_program: id=0x0001 [mpegts @ 0x45ad20] Filter: pid=0x40 [mpegts @ 0x45ad20] sid=0x2 pid=0x24e [mpegts @ 0x45ad20] new_program: id=0x0002 [mpegts @ 0x45ad20] Filter: pid=0x24e [mpegts @ 0x45ad20] sid=0xa01 pid=0x64 [mpegts @ 0x45ad20] new_program: id=0x0a01 [mpegts @ 0x45ad20] Filter: pid=0x64 [mpegts @ 0x45ad20] sid=0xa02 pid=0xd2 [mpegts @ 0x45ad20] new_program: id=0x0a02 [mpegts @ 0x45ad20] Filter: pid=0xd2 [mpegts @ 0x45ad20] sid=0xa03 pid=0x12c [mpegts @ 0x45ad20] new_program: id=0x0a03 [mpegts @ 0x45ad20] Filter: pid=0x12c [mpegts @ 0x45ad20] sid=0xa04 pid=0x190 [mpegts @ 0x45ad20] new_program: id=0x0a04 [mpegts @ 0x45ad20] Filter: pid=0x190 [mpegts @ 0x45ad20] sid=0xa05 pid=0x1f4 [mpegts @ 0x45ad20] new_program: id=0x0a05 [mpegts @ 0x45ad20] Filter: pid=0x1f4 [mpegts @ 0x45ad20] sid=0x201 pid=0x6e [mpegts @ 0x45ad20] new_program: id=0x0201 [mpegts @ 0x45ad20] Filter: pid=0x6e [mpegts @ 0x45ad20] sid=0x203 pid=0x136 [mpegts @ 0x45ad20] new_program: id=0x0203 [mpegts @ 0x45ad20] Filter: pid=0x136 [mpegts @ 0x45ad20] sid=0x204 pid=0x19a [mpegts @ 0x45ad20] new_program: id=0x0204 [mpegts @ 0x45ad20] Filter: pid=0x19a [mpegts @ 0x45ad20] sid=0x205 pid=0x1fe [mpegts @ 0x45ad20] new_program: id=0x0205 [mpegts @ 0x45ad20] Filter: pid=0x1fe [mpegts @ 0x45ad20] sid=0x206 pid=0x262 [mpegts @ 0x45ad20] new_program: id=0x0206 [mpegts @ 0x45ad20] Filter: pid=0x262 [mpegts @ 0x45ad20] PMT: len 103 [mpegts @ 0x45ad20] sid=0xa01 sec_num=0/0 version=7 [mpegts @ 0x45ad20] pcr_pid=0x78 [mpegts @ 0x45ad20] Filter: pid=0x78 [mpegts @ 0x45ad20] stream=0 stream_type=1b pid=78 prog_reg_desc= [mpegts @ 0x45ad20] Filter: pid=0x82 [mpegts @ 0x45ad20] stream=1 stream_type=6 pid=82 prog_reg_desc= [mpegts @ 0x45ad20] tag: 0x0a len=4 [mpegts @ 0x45ad20] tag: 0x7a len=2 [mpegts @ 0x45ad20] Filter: pid=0x83 [mpegts @ 0x45ad20] stream=2 stream_type=6 pid=83 prog_reg_desc= [mpegts @ 0x45ad20] tag: 0x0a len=4 [mpegts @ 0x45ad20] tag: 0x7a len=2 [mpegts @ 0x45ad20] Filter: pid=0x84 [mpegts @ 0x45ad20] stream=3 stream_type=6 pid=84 prog_reg_desc= [mpegts @ 0x45ad20] tag: 0x0a len=4 [mpegts @ 0x45ad20] tag: 0x7f len=5 [mpegts @ 0x45ad20] tag: 0x7a len=2 [mpegts @ 0x45ad20] Filter: pid=0x96 [mpegts @ 0x45ad20] stream=4 stream_type=6 pid=96 prog_reg_desc= [mpegts @ 0x45ad20] tag: 0x59 len=8 [mpegts @ 0x45ad20] Filter: pid=0x97 [mpegts @ 0x45ad20] stream=5 stream_type=6 pid=97 prog_reg_desc= [mpegts @ 0x45ad20] tag: 0x59 len=8 [mpegts @ 0x45ad20] tuning done [mpegts @ 0x45ad20] Before avformat_find_stream_info() pos: 0 bytes read:65536 seeks:0 [mpegts @ 0x45ad20] Skipping after seek [mpegts @ 0x45ad20] pid=78 pes_code=0x1e0 [mpegts @ 0x45ad20] PAT: [mpegts @ 0x45ad20] sid=0x1 pid=0x40 [mpegts @ 0x45ad20] new_program: id=0x0001 [mpegts @ 0x45ad20] sid=0x2 pid=0x24e [mpegts @ 0x45ad20] new_program: id=0x0002 [mpegts @ 0x45ad20] sid=0xa01 pid=0x64 [mpegts @ 0x45ad20] new_program: id=0x0a01 [mpegts @ 0x45ad20] sid=0xa02 pid=0xd2 [mpegts @ 0x45ad20] new_program: id=0x0a02 [mpegts @ 0x45ad20] sid=0xa03 pid=0x12c [mpegts @ 0x45ad20] new_program: id=0x0a03 [mpegts @ 0x45ad20] sid=0xa04 pid=0x190 [mpegts @ 0x45ad20] new_program: id=0x0a04 [mpegts @ 0x45ad20] sid=0xa05 pid=0x1f4 [mpegts @ 0x45ad20] new_program: id=0x0a05 [mpegts @ 0x45ad20] sid=0x201 pid=0x6e [mpegts @ 0x45ad20] new_program: id=0x0201 [mpegts @ 0x45ad20] sid=0x203 pid=0x136 [mpegts @ 0x45ad20] new_program: id=0x0203 [mpegts @ 0x45ad20] sid=0x204 pid=0x19a [mpegts @ 0x45ad20] new_program: id=0x0204 [mpegts @ 0x45ad20] sid=0x205 pid=0x1fe [mpegts @ 0x45ad20] new_program: id=0x0205 [mpegts @ 0x45ad20] sid=0x206 pid=0x262 [mpegts @ 0x45ad20] new_program: id=0x0206 [mpegts @ 0x45ad20] PMT: len 103 [mpegts @ 0x45ad20] sid=0xa01 sec_num=0/0 version=7 [mpegts @ 0x45ad20] pcr_pid=0x78 [mpegts @ 0x45ad20] tag: 0x0a len=4 [mpegts @ 0x45ad20] tag: 0x7a len=2 [mpegts @ 0x45ad20] tag: 0x0a len=4 [mpegts @ 0x45ad20] tag: 0x7a len=2 [mpegts @ 0x45ad20] tag: 0x0a len=4 [mpegts @ 0x45ad20] tag: 0x7f len=5 [mpegts @ 0x45ad20] tag: 0x7a len=2 [mpegts @ 0x45ad20] tag: 0x59 len=8 Last message repeated 1 times [mpegts @ 0x45ad20] pid=84 pes_code=0x1bd [mpegts @ 0x45ad20] pid=83 pes_code=0x1bd [mpegts @ 0x45ad20] pid=82 pes_code=0x1bd [mpegts @ 0x45ad20] pid=78 pes_code=0x1e0 Last message repeated 1 times [h264 @ 0x470300] non-existing PPS 0 referenced Last message repeated 1 times [h264 @ 0x470300] decode_slice_header error [h264 @ 0x470300] no frame! [mpegts @ 0x45ad20] PAT: [mpegts @ 0x45ad20] PMT: len 103 [mpegts @ 0x45ad20] PAT: [mpegts @ 0x45ad20] PMT: len 103 [mpegts @ 0x45ad20] pid=83 pes_code=0x1bd [mpegts @ 0x45ad20] pid=82 pes_code=0x1bd [mpegts @ 0x45ad20] PAT: [mpegts @ 0x45ad20] PMT: len 103 [mpegts @ 0x45ad20] pid=84 pes_code=0x1bd [mpegts @ 0x45ad20] pid=96 pes_code=0x1be [mpegts @ 0x45ad20] PAT: [mpegts @ 0x45ad20] PMT: len 103 [mpegts @ 0x45ad20] pid=97 pes_code=0x1be [h264 @ 0x470300] non-existing PPS 0 referenced Last message repeated 1 times [h264 @ 0x470300] decode_slice_header error [h264 @ 0x470300] no frame! [mpegts @ 0x45ad20] PAT: [mpegts @ 0x45ad20] PMT: len 103 [mpegts @ 0x45ad20] pid=78 pes_code=0x1e0 [mpegts @ 0x45ad20] pid=83 pes_code=0x1bd [mpegts @ 0x45ad20] pid=82 pes_code=0x1bd [mpegts @ 0x45ad20] pid=78 pes_code=0x1e0 [h264 @ 0x470300] Frame num gap 42 37 [h264 @ 0x470300] Frame num gap 42 38 [h264 @ 0x470300] Frame num gap 42 39 [h264 @ 0x470300] Frame num gap 42 40 [h264 @ 0x470300] mmco: unref short failure [h264 @ 0x470300] number of reference frames (0+5) exceeds max (4; probably corrupt input), discarding one [mpegts @ 0x45ad20] pid=78 pes_code=0x1e0 [h264 @ 0x470300] no picture ooo [mpegts @ 0x45ad20] pid=84 pes_code=0x1bd [mpegts @ 0x45ad20] PAT: [mpegts @ 0x45ad20] PMT: len 103 [mpegts @ 0x45ad20] pid=78 pes_code=0x1e0 [h264 @ 0x470300] Increasing reorder buffer to 2 [h264 @ 0x470300] no picture ooo [mpegts @ 0x45ad20] pid=78 pes_code=0x1e0 [h264 @ 0x470300] no picture
I'm using vlc to test if the udp stream is available without success.
Can some one point me to the good direction on how to convert the http stream to an udp or an rtp stream without touching the stream data.
Best regards.