Compile latest version of ffplay from source
Note that this script doesn't overwrite the existing ffmpeg installation:https://trac.ffmpeg.org/wiki/CompilationGuide/Centos
The gotcha in the above guide is the SDL-devel package without which ffplay will not build.
#! /bin/bash
yum install autoconf automake cmake freetype-devel gcc gcc-c++ git libtool make mercurial nasm pkgconfig zlib-devel SDL-devel
mkdir ~/ffmpeg_sources
cd ~/ffmpeg_sources
git clone --depth 1 git://github.com/yasm/yasm.git
cd yasm
autoreconf -fiv
./configure --prefix="$HOME/ffmpeg_build" --bindir="$HOME/bin"
make
make install
make distclean
cd ~/ffmpeg_sources
git clone --depth 1 git://git.videolan.org/x264
cd x264
PKG_CONFIG_PATH="$HOME/ffmpeg_build/lib/pkgconfig" ./configure --prefix="$HOME/ffmpeg_build" --bindir="$HOME/bin" --enable-static
make
make install
make distclean
cd ~/ffmpeg_sources
hg clone https://bitbucket.org/multicoreware/x265
cd ~/ffmpeg_sources/x265/build/linux
cmake -G "Unix Makefiles" -DCMAKE_INSTALL_PREFIX="$HOME/ffmpeg_build" -DENABLE_SHARED:bool=off ../../source
make
make install
cd ~/ffmpeg_sources
git clone --depth 1 git://source.ffmpeg.org/ffmpeg
cd ffmpeg
PKG_CONFIG_PATH="$HOME/ffmpeg_build/lib/pkgconfig" ./configure --prefix="$HOME/ffmpeg_build" --extra-cflags="-I$HOME/ffmpeg_build/include" --extra-ldflags="-L$HOME/ffmpeg_build/lib" --bindir="$HOME/bin" --pkg-config-flags="--static" --enable-gpl --enable-libx264 --enable-libx265 --enable-ffplay
make
make install
cd /usr/lib
ln -s /home/username/bin/ffplay fffplay
$ ffplay -threads 2 -flags low_delay -fflags nobuffer -rtbufsize 32768 -fast -probesize 800000 -analyzeduration 800000 -ss 1 -framerate 50 udp://224.0.1.6:2006
$ ffmpeg -i udp://224.0.1.6:2006 -f sdl -
yum install autoconf automake cmake freetype-devel gcc gcc-c++ git libtool make mercurial nasm pkgconfig zlib-devel SDL-devel
mkdir ~/ffmpeg_sources
cd ~/ffmpeg_sources
git clone --depth 1 git://github.com/yasm/yasm.git
cd yasm
autoreconf -fiv
./configure --prefix="$HOME/ffmpeg_build" --bindir="$HOME/bin"
make
make install
make distclean
cd ~/ffmpeg_sources
git clone --depth 1 git://git.videolan.org/x264
cd x264
PKG_CONFIG_PATH="$HOME/ffmpeg_build/lib/pkgconfig" ./configure --prefix="$HOME/ffmpeg_build" --bindir="$HOME/bin" --enable-static
make
make install
make distclean
cd ~/ffmpeg_sources
hg clone https://bitbucket.org/multicoreware/x265
cd ~/ffmpeg_sources/x265/build/linux
cmake -G "Unix Makefiles" -DCMAKE_INSTALL_PREFIX="$HOME/ffmpeg_build" -DENABLE_SHARED:bool=off ../../source
make
make install
cd ~/ffmpeg_sources
git clone --depth 1 git://source.ffmpeg.org/ffmpeg
cd ffmpeg
PKG_CONFIG_PATH="$HOME/ffmpeg_build/lib/pkgconfig" ./configure --prefix="$HOME/ffmpeg_build" --extra-cflags="-I$HOME/ffmpeg_build/include" --extra-ldflags="-L$HOME/ffmpeg_build/lib" --bindir="$HOME/bin" --pkg-config-flags="--static" --enable-gpl --enable-libx264 --enable-libx265 --enable-ffplay
make
make install
cd /usr/lib
ln -s /home/username/bin/ffplay fffplay
Play Video With Low Latency Using ffplay
This is the fastest I can make ffplay:$ ffplay -threads 2 -flags low_delay -fflags nobuffer -rtbufsize 32768 -fast -probesize 800000 -analyzeduration 800000 -ss 1 -framerate 50 udp://224.0.1.6:2006
Play Video With ffmpeg
This also quite fast, just to show that you can play video directly with ffmpeg using SDL output:$ ffmpeg -i udp://224.0.1.6:2006 -f sdl -
Play Video With gstreamer
Just because it also pertains to playing video, here are a couple tricks with gstreamer:
$ gst-launch -v playbin uri=udp://224.0.1.6:2006
First try a video test pattern though:
$ gst-launch-0.10 videotestsrc ! ffmpegcolorspace ! autovideosink
If the test pattern doesn't work, then there is no point in continuing - you got to fix it.
$ gst-launch -v playbin uri=udp://224.0.1.6:2006
First try a video test pattern though:
$ gst-launch-0.10 videotestsrc ! ffmpegcolorspace ! autovideosink
If the test pattern doesn't work, then there is no point in continuing - you got to fix it.
La Voila!
Herman
Herman
When I want to play video with FFMPEG, I get this error:
ReplyDeleteInput #0, mov,mp4,m4a,3gp,3g2,mj2, from '/storage/external_storage/sda1/1.mp4':
Metadata:
major_brand : isom
minor_version : 512
compatible_brands: isomiso2avc1mp41
encoder : Lavf54.29.104
Duration: 00:03:44.45, start: 0.000000, bitrate: 4130 kb/s
Stream #0:0(und): Video: h264 (High) (avc1 / 0x31637661), yuv420p, 1920x1080
, 3869 kb/s, 29.97 fps, 29.97 tbr, 90k tbn, 59.94 tbc (default)
Metadata:
handler_name : VideoHandler
Stream #0:1(und): Audio: aac (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 25
6 kb/s (default)
Metadata:
handler_name : SoundHandler
←[1;35m[NULL @ 0xb8100c20] ←[0m←[1;31mRequested output format 'sdl' is not a sui
table output format
←[0m←[1;31mpipe:: Invalid argument
Could you please post your exact command?
ReplyDeleteI am thinking that you either have a spelling mistake in the command, or the SDL package is not installed.