[FFmpeg-user] HLS-webm and unicast
Reaz Baksh
reaz.baksh at bellmedia.ca
Thu Aug 20 17:49:50 CEST 2015
Hello
As one would see I am new to this list and to ffmpeg and to ffserver
This is what I would like to do:
Receive a rtp stream from a broadcast encoder that encodes a HD 1080i source and outputs a MPEG 4 stream as a multicast. I have everything setup where ffmpeg can see the multicast stream.
I have two versions of ffmpeg and ffserver running on Ubuntu 14.04.03.
One is a yum installed from a repository:
ffmpeg version 2.4.3-1ubuntu1~trusty6 Copyright (c) 2000-2014 the FFmpeg developers
built on Nov 22 2014 17:07:19 with gcc 4.8 (Ubuntu 4.8.2-19ubuntu1)
configuration: --prefix=/usr --extra-version='1ubuntu1~trusty6' --build-suffix=-ffmpeg --toolchain=hardened --extra-cflags= --extra-cxxflags= --libdir=/usr/lib/x86_64-linux-gnu --shlibdir=/usr/lib/x86_64-linux-gnu --incdir=/usr/include/x86_64-linux-gnu --enable-gpl --enable-shared --disable-stripping --enable-avresample --enable-avisynth --enable-fontconfig --enable-gnutls --enable-ladspa --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libcdio --enable-libflite --enable-libfreetype --enable-libfribidi --enable-libgme --enable-libgsm --enable-libmodplug --enable-libmp3lame --enable-libopenjpeg --enable-libopus --enable-libpulse --enable-librtmp --enable-libschroedinger --enable-libshine --enable-libspeex --enable-libssh --enable-libtheora --enable-libtwolame --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libwebp --enable-opengl --enable-x11grab --enable-libxvid --enable-libx265 --enable-libdc1394 --enable-libiec61883 --enable-libzvbi --enable-libzmq --enable-frei0r --enable-libx264 --enable-libsoxr --enable-openal --enable-libopencv
libavutil 54. 7.100 / 54. 7.100
libavcodec 56. 1.100 / 56. 1.100
libavformat 56. 4.101 / 56. 4.101
libavdevice 56. 0.100 / 56. 0.100
libavfilter 5. 1.100 / 5. 1.100
libavresample 2. 1. 0 / 2. 1. 0
libswscale 3. 0.100 / 3. 0.100
libswresample 1. 1.100 / 1. 1.100
libpostproc 53. 0.100 / 53. 0.100
Hyper fast Audio and Video encoder
usage: ffmpeg [options] [[infile options] -i infile]... {[outfile options] outfile}...
Use -h to get full help or, even better, run 'man ffmpeg'
And the other is a compiled version I got from the following site: https://trac.ffmpeg.org/wiki/CompilationGuide/Ubuntu
ffmpeg version N-74492-ge3b7298 Copyright (c) 2000-2015 the FFmpeg developers
built with gcc 4.8 (Ubuntu 4.8.4-2ubuntu1~14.04)
configuration: --prefix=/home/eng/ffmpeg_build --pkg-config-flags=--static --extra-cflags=-I/home/eng/ffmpeg_build/include --extra-ldflags=-L/home/eng/ffmpeg_build/lib --bindir=/home/eng/bin --enable-gpl --enable-libass --enable-libfdk-aac --enable-libfreetype --enable-libmp3lame --enable-libopus --enable-libtheora --enable-libvorbis --enable-libvpx --enable-libx264 --enable-libx265 --enable-nonfree
libavutil 54. 30.100 / 54. 30.100
libavcodec 56. 57.100 / 56. 57.100
libavformat 56. 40.101 / 56. 40.101
libavdevice 56. 4.100 / 56. 4.100
libavfilter 5. 34.100 / 5. 34.100
libswscale 3. 1.101 / 3. 1.101
libswresample 1. 2.101 / 1. 2.101
libpostproc 53. 3.100 / 53. 3.100
Hyper fast Audio and Video encoder
usage: ffmpeg [options] [[infile options] -i infile]... {[outfile options] outfile}...
Use -h to get full help or, even better, run 'man ffmpeg'
I tried to get the webm stream working but I'm running into issues where ffserver would sometimes crash or when trying to view the stream in Chrome it would say the stream is corrupt.
The following is the ffserver.conf file I'm using:
HTTPPort 8090
HTTPBindAddress 0.0.0.0
MaxHTTPConnections 2000
MaxClients 1000
MaxBandwidth 100000
CustomLog /home/eng/ffmpeg_sources/ffmpeg/log/ffserver.log
<Feed feed1.ffm>
File /tmp/feed1.ffm
FileMaxSize 1G
Launch ffmpeg
</Feed>
<Stream test.webm>
Feed feed1.ffm
Format webm
AudioCodec vorbis
AudioBitRate 64
VideoCodec libvpx
VideoSize 720x576
VideoFrameRate 25
AVOptionVideo flags +global_header
AVOptionVideo cpu-used 0
AVOptionVideo qmin 10
#AVOptionVideo qmax 42
AVOptionVideo quality good
PreRoll 10
StartSendOnKey
VideoBitRate 400
</Stream>
# Only allow local people to get the status
<Stream stat.html>
Format status
ACL allow localhost
ACL allow 192.168.0.0 192.168.255.255
</Stream>
This is what I'm entering in the command line:
./ffserver -f /etc/ffserver.conf & ffmpeg -I rtp://192.168.1.101@239.5.1.1:1234 http://localhost:8090/feed1.ffm
As I mentioned I would like to basically have the rtp stream into Ubuntu and have ffserver stream a HLS and a webm and send the exact same input, without touching the stream, as a unicast to a particular decoder. Is this possible?
BTW how does one search the list archive?
Any help would be greatly appreciated.
Thanks
Reaz
More information about the ffmpeg-user
mailing list