How do I change this Gstreamer pipeline for the MP4 to play on Firefox? - gstreamer

How do I change this pipeline so that I can play my mp4 videos from a browser?
gst-launch-1.0 -e \
rtspsrc location="rtsp://username:password#${CAMERA}:554/" ! \
rtph265depay ! \
h265parse ! \
mp4mux ! \
filesink location=$FILENAME 2>&1 > gst.${CAMERA}.log &
I can playback with ffplay and gst-play, but no browsers work, nor does the mac viewer.
% ffmpeg -i 20230128204859.mp4
ffmpeg version 5.1.2 Copyright (c) 2000-2022 the FFmpeg developers
built with Apple clang version 14.0.0 (clang-1400.0.29.202)
configuration: --prefix=/opt/homebrew/Cellar/ffmpeg/5.1.2_4 --enable-shared --enable-pthreads --enable-version3 --cc=clang --host-cflags= --host-ldflags= --enable-ffplay --enable-gnutls --enable-gpl --enable-libaom --enable-libaribb24 --enable-libbluray --enable-libdav1d --enable-libmp3lame --enable-libopus --enable-librav1e --enable-librist --enable-librubberband --enable-libsnappy --enable-libsrt --enable-libsvtav1 --enable-libtesseract --enable-libtheora --enable-libvidstab --enable-libvmaf --enable-libvorbis --enable-libvpx --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxml2 --enable-libxvid --enable-lzma --enable-libfontconfig --enable-libfreetype --enable-frei0r --enable-libass --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-libspeex --enable-libsoxr --enable-libzmq --enable-libzimg --disable-libjack --disable-indev=jack --enable-videotoolbox --enable-neon
libavutil 57. 28.100 / 57. 28.100
libavcodec 59. 37.100 / 59. 37.100
libavformat 59. 27.100 / 59. 27.100
libavdevice 59. 7.100 / 59. 7.100
libavfilter 8. 44.100 / 8. 44.100
libswscale 6. 7.100 / 6. 7.100
libswresample 4. 7.100 / 4. 7.100
libpostproc 56. 6.100 / 56. 6.100
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from '20230128204859.mp4':
Metadata:
major_brand : mp42
minor_version : 0
compatible_brands: mp42mp41isomiso2
creation_time : 2023-01-29T04:48:59.000000Z
Duration: 00:59:59.65, start: 0.000000, bitrate: 2109 kb/s
Stream #0:0[0x1](und): Video: hevc (Main) (hvc1 / 0x31637668), yuvj420p(pc, bt709), 1920x1080 [SAR 5661:5680 DAR 629:355], 2104 kb/s, 30 fps, 30 tbr, 3k tbn (default)
Metadata:
creation_time : 2023-01-29T04:48:59.000000Z
handler_name : VideoHandler
vendor_id : [0][0][0][0]

Related

FFmpeg in Docker container not capturing frames

I need to capture some frames over ethernet so decided to use FFmpeg.
I managed to get it working and capturing on my host before I moved into working inside my Docker containers.
If I run the command on my host, this is the output that I see:
╰─$ ffmpeg -y -i udp://#:15004 -r 10 -frames:v 1 frame.png
ffmpeg version 4.2.4-1ubuntu0.1 Copyright (c) 2000-2020 the FFmpeg developers
built with gcc 9 (Ubuntu 9.3.0-10ubuntu2)
configuration: --prefix=/usr --extra-version=1ubuntu0.1 --toolchain=hardened --libdir=/usr/lib/x86_64-linux-gnu --incdir=/usr/include/x86_64-linux-gnu --arch=amd64 --enable-gpl --disable-stripping --enable-avresample --disable-filter=resample --enable-avisynth --enable-gnutls --enable-ladspa --enable-libaom --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libcdio --enable-libcodec2 --enable-libflite --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-libgme --enable-libgsm --enable-libjack --enable-libmp3lame --enable-libmysofa --enable-libopenjpeg --enable-libopenmpt --enable-libopus --enable-libpulse --enable-librsvg --enable-librubberband --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libssh --enable-libtheora --enable-libtwolame --enable-libvidstab --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx265 --enable-libxml2 --enable-libxvid --enable-libzmq --enable-libzvbi --enable-lv2 --enable-omx --enable-openal --enable-opencl --enable-opengl --enable-sdl2 --enable-libdc1394 --enable-libdrm --enable-libiec61883 --enable-nvenc --enable-chromaprint --enable-frei0r --enable-libx264 --enable-shared
libavutil 56. 31.100 / 56. 31.100
libavcodec 58. 54.100 / 58. 54.100
libavformat 58. 29.100 / 58. 29.100
libavdevice 58. 8.100 / 58. 8.100
libavfilter 7. 57.100 / 7. 57.100
libavresample 4. 0. 0 / 4. 0. 0
libswscale 5. 5.100 / 5. 5.100
libswresample 3. 5.100 / 3. 5.100
libpostproc 55. 5.100 / 55. 5.100
[h264 # 0x55ba0869d440] non-existing PPS 0 referenced
Last message repeated 1 times
[h264 # 0x55ba0869d440] decode_slice_header error
[h264 # 0x55ba0869d440] no frame!
[h264 # 0x55ba0869d440] non-existing PPS 0 referenced
Last message repeated 1 times
[h264 # 0x55ba0869d440] decode_slice_header error
[h264 # 0x55ba0869d440] no frame!
[h264 # 0x55ba0869d440] non-existing PPS 0 referenced
Last message repeated 1 times
[h264 # 0x55ba0869d440] decode_slice_header error
[h264 # 0x55ba0869d440] no frame!
Input #0, mpegts, from 'udp://#:15004':
Duration: N/A, start: 905.464878, bitrate: N/A
Program 1
Stream #0:0[0x11]: Video: h264 (High) ([27][0][0][0] / 0x001B), yuv420p(progressive), 640x512, 60 fps, 60 tbr, 90k tbn, 120 tbc
Stream #0:1[0x21]: Data: klv (KLVA / 0x41564C4B)
Stream mapping:
Stream #0:0 -> #0:0 (h264 (native) -> png (native))
Press [q] to stop, [?] for help
Output #0, image2, to 'frame.png':
Metadata:
encoder : Lavf58.29.100
Stream #0:0: Video: png, rgb24, 640x512, q=2-31, 200 kb/s, 10 fps, 10 tbn, 10 tbc
Metadata:
encoder : Lavc58.54.100 png
frame= 1 fps=0.0 q=-0.0 Lsize=N/A time=00:00:00.10 bitrate=N/A speed=1.23x
video:399kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: unknown
However, when I try to run the exact same command inside my docker container, it looks like it tries to do something but never progress beyond this point to capture the frame.
vinden75lr | ffmpeg version 4.3.4-0+deb11u1 Copyright (c) 2000-2021 the FFmpeg developers
vinden75lr | built with gcc 10 (Debian 10.2.1-6)
vinden75lr | configuration: --prefix=/usr --extra-version=0+deb11u1 --toolchain=hardened --libdir=/usr/lib/x86_64-linux-gnu --incdir=/usr/include/x86_64-linux-gnu --arch=amd64 --enable-gpl --disable-stripping --enable-avresample --disable-filter=resample --enable-gnutls --enable-ladspa --enable-libaom --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libcdio --enable-libcodec2 --enable-libdav1d --enable-libflite --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-libgme --enable-libgsm --enable-libjack --enable-libmp3lame --enable-libmysofa --enable-libopenjpeg --enable-libopenmpt --enable-libopus --enable-libpulse --enable-librabbitmq --enable-librsvg --enable-librubberband --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libsrt --enable-libssh --enable-libtheora --enable-libtwolame --enable-libvidstab --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx265 --enable-libxml2 --enable-libxvid --enable-libzmq --enable-libzvbi --enable-lv2 --enable-omx --enable-openal --enable-opencl --enable-opengl --enable-sdl2 --enable-pocketsphinx --enable-libmfx --enable-libdc1394 --enable-libdrm --enable-libiec61883 --enable-chromaprint --enable-frei0r --enable-libx264 --enable-shared
vinden75lr | libavutil 56. 51.100 / 56. 51.100
vinden75lr | libavcodec 58. 91.100 / 58. 91.100
vinden75lr | libavformat 58. 45.100 / 58. 45.100
vinden75lr | libavdevice 58. 10.100 / 58. 10.100
vinden75lr | libavfilter 7. 85.100 / 7. 85.100
vinden75lr | libavresample 4. 0. 0 / 4. 0. 0
vinden75lr | libswscale 5. 7.100 / 5. 7.100
vinden75lr | libswresample 3. 7.100 / 3. 7.100
vinden75lr | libpostproc 55. 7.100 / 55. 7.100
This is the code that actually executes the command, possible I'm doing something wrong here? This was a very quick and dirty implementation, just wanted to confirm I could capture a frame before doing anything else.
void VindenCamera::save_image_to_file(){
std::string filename;
SPDLOG_INFO("Creating image filename {}", filename);
create_filename(filename);
std::string ffmpeg_still_frame_command("ffmpeg -y -i udp://#:15004 -r 10 -frames:v 1 " + filename);
system(ffmpeg_still_frame_command.c_str());
}
You probably need to run Docker with --net=host, otherwise the container will have its own IP address and will not necessarily be able to see the same UDP packets that the host can.

Gstreamer gst-launch-1.0 select audio stream for transcoding

Using avprobe to examine one ts file i have this:
Input #0, mpegts, from '/tmp/file.ts':
Duration: 00:00:17.06, start: 82902.417489, bitrate: 3533kb/s
Program 30601
Program 30602
Program 30603
Program 30604
Program 30605
Program 30606
Program 30607
Program 30608
Program 30609
Program 30610
Program 30611
Stream #0.0[0xa0]: Video: mpeg2video (Main), yuv420p, 720x576 [PAR 64:45 DAR 16:9], 7647 kb/s, 25 fps, 90k tbn, 50 tbc
Stream #0.1[0x50](spa): Audio: mp2, 48000 Hz, 2 channels, s16p, 128 kb/s (clean effects)
Stream #0.2[0x51](dos): Audio: mp2, 48000 Hz, 2 channels, s16p, 128 kb/s (clean effects)
Stream #0.3[0xd0]: Data: [192][0][0][0] / 0x00C0
Stream #0.4[0xde]: Data: [192][0][0][0] / 0x00C0
Stream #0.5[0xd5]: Data: [193][0][0][0] / 0x00C1
Stream #0.6[0xfd]: Data: [193][0][0][0] / 0x00C1
Stream #0.7[0x133]: Data: [193][0][0][0] / 0x00C1
Stream #0.8[0x164]: Data: [193][0][0][0] / 0x00C1
Stream #0.9[0x188]: Data: [193][0][0][0] / 0x00C1
Stream #0.10[0x135]: Data: [192][0][0][0] / 0x00C0
Stream #0.11[0x276]: Data: [193][0][0][0] / 0x00C1
Stream #0.12[0x378]: Data: [193][0][0][0] / 0x00C1
Program 30612
I am testing this command to transcode to mp4 over the network one test ts file and it works fine but using default video and audio stream of program 30611:
gst-launch-1.0 filesrc location=/tmp/file.ts ! \
tsdemux program-number=30611 name=demux demux. ! \
queue ! \
mpegvideoparse ! \
omxmpeg2videodec ! \
queue ! \
omxh264enc ! \
video/x-h264,stream-format=byte-stream,profile=high,framerate=25/1 ! \
h264parse config-interval=1 ! \
mpegtsmux name=mux ! \
tcpserversink host=ipaddress port=port demux. ! \
queue ! \
mpegaudioparse ! \
mpg123audiodec ! \
audioconvert dithering=0 ! \
audio/x-raw,channels=1 ! \
avenc_mp2 bitrate=32768 ! \
mux.
But i would like to select first or second audio stream. I can't find on documentation or internet how to do it. Could you help me please?
This worked on my raspberry pi 2 with mpeg2 hardware decoder license enabled, you have to buy code license:
nohup gst-launch-1.0 filesrc location=/tmp/file.ts ! \
tsdemux name=demux demux.${VIDEOSELTXT} ! \
queue ! \
mpegvideoparse ! \
omxmpeg2videodec !
queue !
omxh264enc !
video/x-h264,stream-format=byte-stream,profile=high,width=360,height=288,framerate=25/1 !
h264parse config-interval=1 !
mpegtsmux name=mux !
tcpserversink host=${IP2LISTEN} port=${PORT2LISTEN} demux.${AUDIOSELTXT} !
queue !
mpegaudioparse !
mpg123audiodec !
audioconvert dithering=0 ! \
audio/x-raw,channels=1 ! \
avenc_mp2 bitrate=32768 ! \
mux. > /tmp/sal.log &
On our previous example change video variable:
VIDEOSELTXT for video_00a0
and audio variable:
AUDIOSELTXT for audio_0050 to spa audio stream
for audio_0051 to dos audio stream
On my tests it is only working using four numbers for audio and video stream, following examples are not working fine:
audio_00050
audio_50

Compiling VNC Server Binary Files (for Android)

Hey folks I'm trying to compile a ELF binary server files from here: https://github.com/LibVNC/libvncserver
To do this I follow the steps here: ./configure --host=arm-eabi CC=arm-linux-androideabi-gcc (starting line 10 - 31). I set the NDK toolchains correctly and now I'm trying to run the $configure command.
I'm using a 14.04 Ubuntu Machine.
When I run the command:
$./configure --host=arm-eabi CC=arm-linux-androideabi-gcc
I get the following output:
root#ip-172-31-35-74:~/Desktop/libvncserver-LibVNCServer-0.9.10#
root#ip-172-31-35-74:~/Desktop/libvncserver-LibVNCServer-0.9.10# ./configure --host=arm-eabi CC=arm-linux-androideabi-gcc
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for arm-eabi-strip... no
checking for strip... strip
checking for a thread-safe mkdir -p... /bin/mkdir -p
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking whether make supports nested variables... yes
checking whether make supports nested variables... (cached) yes
checking for arm-eabi-gcc... arm-linux-androideabi-gcc
checking whether the C compiler works... no
configure: error: in `/home/ubuntu/Desktop/libvncserver-LibVNCServer-0.9.10':
configure: error: C compiler cannot create executables
See `config.log' for more details
root#ip-172-31-35-74:~/Desktop/libvncserver-LibVNCServer-0.9.10#
root#ip-172-31-35-74:~/Desktop/libvncserver-LibVNCServer-0.9.10#
root#ip-172-31-35-74:~/Desktop/libvncserver-LibVNCServer-0.9.10#
and when I look at the config.log file I see this (can't find the problem :( ):
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
It was created by LibVNCServer configure 0.9.10, which was
generated by GNU Autoconf 2.69. Invocation command line was
$ ./configure --host=arm-eabi CC=arm-linux-androideabi-gcc
## --------- ##
## Platform. ##
## --------- ##
hostname = ip-172-31-35-74
uname -m = x86_64
uname -r = 3.13.0-48-generic
uname -s = Linux
uname -v = #80-Ubuntu SMP Thu Mar 12 11:16:15 UTC 2015
/usr/bin/uname -p = unknown
/bin/uname -X = unknown
/bin/arch = unknown
/usr/bin/arch -k = unknown
/usr/convex/getsysinfo = unknown
/usr/bin/hostinfo = unknown
/bin/machine = unknown
/usr/bin/oslevel = unknown
/bin/universe = unknown
PATH: /usr/bin
PATH: /usr/local/sbin
PATH: /usr/local/bin
PATH: /usr/sbin
PATH: /usr/bin
PATH: /sbin
PATH: /bin
## ----------- ##
## Core tests. ##
## ----------- ##
configure:2612: checking for a BSD-compatible install
configure:2680: result: /usr/bin/install -c
configure:2691: checking whether build environment is sane
configure:2746: result: yes
configure:2805: checking for arm-eabi-strip
configure:2835: result: no
configure:2845: checking for strip
configure:2861: found /usr/bin/strip
configure:2872: result: strip
configure:2897: checking for a thread-safe mkdir -p
configure:2936: result: /bin/mkdir -p
configure:2943: checking for gawk
configure:2959: found /usr/bin/gawk
configure:2970: result: gawk
configure:2981: checking whether make sets $(MAKE)
configure:3003: result: yes
configure:3032: checking whether make supports nested variables
configure:3049: result: yes
configure:3185: checking whether make supports nested variables
configure:3202: result: yes
configure:3241: checking for arm-eabi-gcc
configure:3268: result: arm-linux-androideabi-gcc
configure:3537: checking for C compiler version
configure:3546: arm-linux-androideabi-gcc --version >&5
./configure: line 3548: arm-linux-androideabi-gcc: command not found
configure:3557: $? = 127
configure:3546: arm-linux-androideabi-gcc -v >&5
./configure: line 3548: arm-linux-androideabi-gcc: command not found
configure:3557: $? = 127
configure:3546: arm-linux-androideabi-gcc -V >&5
./configure: line 3548: arm-linux-androideabi-gcc: command not found
configure:3557: $? = 127
configure:3546: arm-linux-androideabi-gcc -qversion >&5
./configure: line 3548: arm-linux-androideabi-gcc: command not found
configure:3557: $? = 127
configure:3577: checking whether the C compiler works
configure:3599: arm-linux-androideabi-gcc conftest.c >&5
./configure: line 3601: arm-linux-androideabi-gcc: command not found
configure:3603: $? = 127
configure:3641: result: no
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "LibVNCServer"
| #define PACKAGE_TARNAME "libvncserver"
| #define PACKAGE_VERSION "0.9.10"
| #define PACKAGE_STRING "LibVNCServer 0.9.10"
| #define PACKAGE_BUGREPORT "https://github.com/LibVNC/libvncserver"
| #define PACKAGE_URL ""
| #define PACKAGE "libvncserver"
| #define VERSION "0.9.10"
| #define VERSION_MAJOR 0
| #define VERSION_MINOR 9
| #define VERSION_PATCHLEVEL 10
| /* end confdefs.h. */
|
| int
| main ()
| {
|
| ;
| return 0;
| }
configure:3646: error: in `/home/ubuntu/Desktop/libvncserver-LibVNCServer-0.9.10':
configure:3648: error: C compiler cannot create executables
See `config.log' for more details
## ---------------- ##
## Cache variables. ##
## ---------------- ##
ac_cv_env_CC_set=set
ac_cv_env_CC_value=arm-linux-androideabi-gcc
ac_cv_env_CFLAGS_set=
ac_cv_env_CFLAGS_value=
ac_cv_env_CPPFLAGS_set=
ac_cv_env_CPPFLAGS_value=
ac_cv_env_CPP_set=
ac_cv_env_CPP_value=
ac_cv_env_GNUTLS_CFLAGS_set=
ac_cv_env_GNUTLS_CFLAGS_value=
ac_cv_env_GNUTLS_LIBS_set=
ac_cv_env_GNUTLS_LIBS_value=
ac_cv_env_GTK_CFLAGS_set=
ac_cv_env_GTK_CFLAGS_value=
ac_cv_env_GTK_LIBS_set=
ac_cv_env_GTK_LIBS_value=
ac_cv_env_JPEG_LDFLAGS_set=
ac_cv_env_JPEG_LDFLAGS_value=
ac_cv_env_LDFLAGS_set=
ac_cv_env_LDFLAGS_value=
ac_cv_env_LIBS_set=
ac_cv_env_LIBS_value=
ac_cv_env_PKG_CONFIG_LIBDIR_set=
ac_cv_env_PKG_CONFIG_LIBDIR_value=
ac_cv_env_PKG_CONFIG_PATH_set=
ac_cv_env_PKG_CONFIG_PATH_value=
ac_cv_env_PKG_CONFIG_set=
ac_cv_env_PKG_CONFIG_value=
ac_cv_env_build_alias_set=
ac_cv_env_build_alias_value=
ac_cv_env_host_alias_set=set
ac_cv_env_host_alias_value=arm-eabi
ac_cv_env_target_alias_set=
ac_cv_env_target_alias_value=
ac_cv_path_install='/usr/bin/install -c'
ac_cv_path_mkdir=/bin/mkdir
ac_cv_prog_AWK=gawk
ac_cv_prog_CC=arm-linux-androideabi-gcc
ac_cv_prog_ac_ct_STRIP=strip
ac_cv_prog_make_make_set=yes
am_cv_make_support_nested_variables=yes
## ----------------- ##
## Output variables. ##
## ----------------- ##
ACLOCAL='${SHELL} /home/ubuntu/Desktop/libvncserver-LibVNCServer-0.9.10/missing aclocal-1.14'
AMDEPBACKSLASH=''
AMDEP_FALSE=''
AMDEP_TRUE=''
AMTAR='$${TAR-tar}'
AM_BACKSLASH='\'
AM_DEFAULT_V='$(AM_DEFAULT_VERBOSITY)'
AM_DEFAULT_VERBOSITY='0'
AM_V='$(V)'
ANDROID_FALSE=''
ANDROID_TRUE=''
AR=''
AS=''
AUTOCONF='${SHELL} /home/ubuntu/Desktop/libvncserver-LibVNCServer-0.9.10/missing autoconf'
AUTOHEADER='${SHELL} /home/ubuntu/Desktop/libvncserver-LibVNCServer-0.9.10/missing autoheader'
AUTOMAKE='${SHELL} /home/ubuntu/Desktop/libvncserver-LibVNCServer-0.9.10/missing automake-1.14'
AWK='gawk'
CC='arm-linux-androideabi-gcc'
CCDEPMODE=''
CFLAGS=''
CONFIG_LIBVA_FALSE=''
CONFIG_LIBVA_TRUE=''
CPP=''
CPPFLAGS=''
CRYPT_LIBS=''
CYGIPC_FALSE=''
CYGIPC_TRUE=''
CYGPATH_W='echo'
DEFS=''
DEPDIR=''
DLLTOOL=''
DSYMUTIL=''
DUMPBIN=''
ECHO_C=''
ECHO_N='-n'
ECHO_T=''
EGREP=''
EXEEXT=''
FGREP=''
GNUTLS_CFLAGS=''
GNUTLS_LIBS=''
GREP=''
GTK_CFLAGS=''
GTK_LIBS=''
HAVE_GNUTLS_FALSE=''
HAVE_GNUTLS_TRUE=''
HAVE_LIBGTK_FALSE=''
HAVE_LIBGTK_TRUE=''
HAVE_LIBJPEG_FALSE=''
HAVE_LIBJPEG_TRUE=''
HAVE_LIBPNG_FALSE=''
HAVE_LIBPNG_TRUE=''
HAVE_LIBPTHREAD_FALSE=''
HAVE_LIBPTHREAD_TRUE=''
HAVE_LIBSDL_FALSE=''
HAVE_LIBSDL_TRUE=''
HAVE_LIBSSL_FALSE=''
HAVE_LIBSSL_TRUE=''
HAVE_LIBZ_FALSE=''
HAVE_LIBZ_TRUE=''
HAVE_MP3LAME_FALSE=''
HAVE_MP3LAME_TRUE=''
HAVE_RPM_FALSE=''
HAVE_RPM_TRUE=''
INSTALL_DATA='${INSTALL} -m 644'
INSTALL_PROGRAM='${INSTALL}'
INSTALL_SCRIPT='${INSTALL}'
INSTALL_STRIP_PROGRAM='$(install_sh) -c -s'
JPEG_LDFLAGS=''
LD=''
LDFLAGS=''
LIBGCRYPT_CFLAGS=''
LIBGCRYPT_CONFIG=''
LIBGCRYPT_LIBS=''
LIBOBJS=''
LIBS=''
LIBTOOL=''
LINUX_FALSE=''
LINUX_TRUE=''
LIPO=''
LN_S=''
LTLIBOBJS=''
MAKEINFO='${SHELL} /home/ubuntu/Desktop/libvncserver-LibVNCServer-0.9.10/missing makeinfo'
MANIFEST_TOOL=''
MINGW_FALSE=''
MINGW_TRUE=''
MKDIR_P='/bin/mkdir -p'
NM=''
NMEDIT=''
OBJDUMP=''
OBJEXT=''
OSX_FALSE=''
OSX_TRUE=''
OTOOL64=''
OTOOL=''
PACKAGE='libvncserver'
PACKAGE_BUGREPORT='https://github.com/LibVNC/libvncserver'
PACKAGE_NAME='LibVNCServer'
PACKAGE_STRING='LibVNCServer 0.9.10'
PACKAGE_TARNAME='libvncserver'
PACKAGE_URL=''
PACKAGE_VERSION='0.9.10'
PATH_SEPARATOR=':'
PKG_CONFIG=''
PKG_CONFIG_LIBDIR=''
PKG_CONFIG_PATH=''
RANLIB=''
RPMSOURCEDIR=''
SDL_CFLAGS=''
SDL_LIBS=''
SED=''
SET_MAKE=''
SHELL='/bin/bash'
SSL_LIBS=''
STRIP='strip'
VA_LIBS=''
VERSION='0.9.10'
WITH_FFMPEG_FALSE=''
WITH_FFMPEG_TRUE=''
WITH_TIGHTVNC_FILETRANSFER_FALSE=''
WITH_TIGHTVNC_FILETRANSFER_TRUE=''
WITH_WEBSOCKETS_FALSE=''
WITH_WEBSOCKETS_TRUE=''
WSOCKLIB=''
ac_ct_AR=''
ac_ct_CC=''
ac_ct_DUMPBIN=''
am__EXEEXT_FALSE=''
am__EXEEXT_TRUE=''
am__fastdepCC_FALSE=''
am__fastdepCC_TRUE=''
am__include=''
am__isrc=''
am__leading_dot='.'
am__nodep=''
am__quote=''
am__tar='$${TAR-tar} chof - "$$tardir"'
am__untar='$${TAR-tar} xf -'
bindir='${exec_prefix}/bin'
build=''
build_alias=''
build_cpu=''
build_os=''
build_vendor=''
datadir='${datarootdir}'
datarootdir='${prefix}/share'
docdir='${datarootdir}/doc/${PACKAGE_TARNAME}'
dvidir='${docdir}'
exec_prefix='NONE'
host='arm-eabi'
host_alias='arm-eabi'
host_cpu=''
host_os=''
host_vendor=''
htmldir='${docdir}'
includedir='${prefix}/include'
infodir='${datarootdir}/info'
install_sh='${SHELL} /home/ubuntu/Desktop/libvncserver-LibVNCServer-0.9.10/install-sh'
libdir='${exec_prefix}/lib'
libexecdir='${exec_prefix}/libexec'
localedir='${datarootdir}/locale'
localstatedir='${prefix}/var'
mandir='${datarootdir}/man'
mkdir_p='$(MKDIR_P)'
oldincludedir='/usr/include'
pdfdir='${docdir}'
prefix='NONE'
program_transform_name='s,x,x,'
psdir='${docdir}'
sbindir='${exec_prefix}/sbin'
sharedstatedir='${prefix}/com'
sysconfdir='${prefix}/etc'
target_alias=''
with_ffmpeg=''
## ----------- ##
## confdefs.h. ##
## ----------- ##
/* confdefs.h */
#define PACKAGE_NAME "LibVNCServer"
#define PACKAGE_TARNAME "libvncserver"
#define PACKAGE_VERSION "0.9.10"
#define PACKAGE_STRING "LibVNCServer 0.9.10"
#define PACKAGE_BUGREPORT "https://github.com/LibVNC/libvncserver"
#define PACKAGE_URL ""
#define PACKAGE "libvncserver"
#define VERSION "0.9.10"
#define VERSION_MAJOR 0
#define VERSION_MINOR 9
#define VERSION_PATCHLEVEL 10
configure: exit 77
./configure: line 3548: arm-linux-androideabi-gcc: command not found
You need to specify full path to gcc or add its location to path
Solved! The solution is providing the full pass to the gcc ... for some reason despite running echo $PATH or echo $CC it showed it there but was giving me an error as if the compiler couldn't be found when I executed the $configure command. Was solved by simply providing the full directory to the gcc when running the $configure command.

Gstreamer with two Udpsinks

I like to know how to receiver Gstreamer Live video Streaming which has dual udpsink on the Receiver sides.
Here i provide single Udpsink transmitter and receiver which works absolutely fine
Sender : "raspivid -t 999999 -h 480 -w 640 -fps 25 -b 2000000 -o - | gst-launch-0.10 -v fdsrc fd=0 ! h264parse ! rtph264pay ! udpsink host=192.168.0.105 port=5000"
Receiver : "udpsrc port=5000 caps=application/x-rtp buffer-size=100000 ! rtph264depay ! ffdec_h264 ! queue ! autovideosink sync=false"
Dual Udpsink Sender: raspivid -t 999999 -h 480 -w 640 -fps 25 -b 2000000 -o - | gst-launch-0.10 -v fdsrc fd=0 ! tee name=tp \tp. h264parse ! rtph264pay ! udpsink host=192.168.0.105 port=5000 \tp. ! h264parse ! rtph264pay ! udpsink host=192.168.0.100 port=5005
Now i am unable to receiver on anyone of the receiver side.. Please any help me.. Thanks in advance.
Use a single multiudpsink element instead:
raspivid -t 999999 -h 480 -w 640 -fps 25 -b 2000000 -o - | gst-launch-0.10 -v fdsrc fd=0 ! h264parse ! rtph264pay ! multiudpsink clients=192.168.0.105:5000,192.168.0.100:5005

m3u8 segmenter not building in centos 6

when i try to make it show me error oplease find below error which i am getting
cc1: warnings being treated as errors
m3u8-segmenter.c: In function ‘add_output_stream’:
m3u8-segmenter.c:58: error: implicit declaration of function ‘avformat_new_stream’
m3u8-segmenter.c:58: error: nested extern declaration of ‘avformat_new_stream’
m3u8-segmenter.c:58: error: assignment makes pointer from integer without a cast
m3u8-segmenter.c: In function ‘main’:
m3u8-segmenter.c:343: error: implicit declaration of function‘avformat_find_stream_info’
m3u8-segmenter.c:343: error: nested extern declaration of ‘avformat_find_stream_info’
m3u8-segmenter.c:390: error: implicit declaration of function ‘avcodec_open2’
m3u8-segmenter.c:390: error: nested extern declaration of ‘avcodec_open2’
m3u8-segmenter.c:397: error: ‘AVIO_FLAG_WRITE’ undeclared (first use in this function)
m3u8-segmenter.c:397: error: (Each undeclared identifier is reported only once
m3u8-segmenter.c:397: error: for each function it appears in.)
make[1]: *** [m3u8_segmenter-m3u8-segmenter.o] Error 1
make[1]: Leaving directory `/usr/local/src/m3u8-segmenter'
make: *** [all-recursive] Error 1
Note: i have ffmpeg and all required libraries installed already
My ffmpeg vesrion below:
[root#localhost m3u8-segmenter]# ffmpeg -version
FFmpeg version 0.6.5, Copyright (c) 2000-2010 the FFmpeg developers
built on Jan 29 2012 17:53:48 with gcc 4.4.5 20110214 (Red Hat 4.4.5-6)
configuration: --prefix=/usr --libdir=/usr/lib --shlibdir=/usr/lib --mandir=/usr/share/man --incdir=/usr/include --disable-avisynth --extra-cflags='-O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m32 -march=i686 -mtune=atom -fasynchronous-unwind-tables' --enable-avfilter --enable-avfilter-lavf --enable-libdc1394 --enable-libdirac --enable-libfaac --enable-libfaad --enable-libfaadbin --enable-libgsm --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-librtmp --enable-libschroedinger --enable-libspeex --enable-libtheora --enable-libx264 --enable-gpl --enable-nonfree --enable-postproc --enable-pthreads --enable-shared --enable-swscale --enable-vdpau --enable-version3 --enable-x11grab
libavutil 50.15. 1 / 50.15. 1
libavcodec 52.72. 2 / 52.72. 2
libavformat 52.64. 2 / 52.64. 2
libavdevice 52. 2. 0 / 52. 2. 0
libavfilter 1.19. 0 / 1.19. 0
libswscale 0.11. 0 / 0.11. 0
libpostproc 51. 2. 0 / 51. 2. 0
FFmpeg 0.6.5
libavutil 50.15. 1 / 50.15. 1
libavcodec 52.72. 2 / 52.72. 2
libavformat 52.64. 2 / 52.64. 2
libavdevice 52. 2. 0 / 52. 2. 0
libavfilter 1.19. 0 / 1.19. 0
libswscale 0.11. 0 / 0.11. 0
libpostproc 51. 2. 0 / 51. 2. 0