Re: [FFmpeg-user] ffmpeg runtime dependences

2015-10-05 Thread Carl Eugen Hoyos
Wang, Liqin, M.S.  mayo.edu> writes:

> bash-4.3$ ldd ffmpeg
> ffmpeg_1 needs:
> 
>  /usr/lib/libc.a(shr.o)
>  /usr/lib/libpthreads.a(shr_xpg5.o)
>  /usr/lib/libpthreads.a(shr_comm.o)
>  /opt/freeware/lib/liblzma.a(liblzma.so.5)
>  /opt/freeware/lib/libbz2.a(libbz2.so.1)
>  /unix
>  /usr/lib/libcrypt.a(shr.o)

I see more references here by default on aix, how 
does your configure line look like?

The easy solution is of course to add --disable-bzlib 
--disable-lzma to your configure line, this means 
that you loose some capabilities.

The alternative is that you either copy liblzma.a 
and libbz2.a to your target systems or extract 
liblzma.so.5 and libbz2.so.1 with "ar -x" from 
the archives and copy the resulting shared 
libraries (untested).

Carl Eugen

___
ffmpeg-user mailing list
ffmpeg-user@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-user


Re: [FFmpeg-user] ffmpeg runtime dependences

2015-10-05 Thread Wang, Liqin, M.S.
Carl Eugen Hoyos  writes:

>What do the following commands show on your build host?
>$ ls -l /opt/freeware/lib/libbz2*
>$ ls -l /opt/freeware/lib/liblzma*

> Imo, the simple solution is to remove the relevant so files from the build 
> host to force static linking.

---
bash-4.3$ ls -l /opt/freeware/lib/libbz2*
-rwxr-xr-x1 root system   197216 Dec 20 2010  
/opt/freeware/lib/libbz2.a

bash-4.3$ ls -l /opt/freeware/lib/liblzma*
-rwxr-xr-x1 root system   892872 Nov 04 2014  
/opt/freeware/lib/liblzma.a
-rwxr-xr-x1 root system  924 Nov 04 2014  
/opt/freeware/lib/liblzma.la


Could you please let me know how to force a static build?

Thanks,


Liqin
___
ffmpeg-user mailing list
ffmpeg-user@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-user


[FFmpeg-user] Problem syncing/lag adaptive bitrate HLS

2015-10-05 Thread julien JORDA
Hi everyone, I am currently having a problem trying to implement adaptive
bitrate of HLS live streams with the help of ffmpeg.

I basically have a RTMP source that I'm converting into two HLS playlists:
- One is just demuxing and segmenting the video into ts files,
- A second of lower quality  with audio only, in this case I use the
libfaac codec to compress it.

Here is what I am executing:
#the high quality
ffmpeg -i rtmp://localhost/live/$name  -bsf:v h264_mp4toannexb -c:a copy
-c:v copy -sc_threshold 0 -hls_time 5 -hls_list_size 3
-hls_segment_filename '/live/$name_hi/%d.ts' -hls_allow_cache 0
/live/$name_hi/index.m3u8

#the low quality
ffmpeg -i rtmp://localhost/live/$name -async 1 -vsync 1 -ab 55k -bufsize
55k -vn -c:a libfaac  -sc_threshold 0 -hls_time 5 -hls_list_size 3
-hls_segment_filename '/live/$name_low/%d.ts' -hls_allow_cache 0
/live/$name_low/index.m3u8

These two playlist are then combined into a global live playlist as
recommended by Apple.

Everything runs fine and I can perfectly  play this global playlist with
HTML5 coupled to this flash plugin:
https://github.com/mangui/flashls

My problem is when I'm playing this playlist with iOS, every once in a
while the player presents an initial lag before playing normally, or even
displays a black screen with  just the sound.

It is worth to notice that the segments in the respective playlists do not
have the same duration:

the high quality playlist
#EXTM3U
#EXT-X-VERSION:3
#EXT-X-ALLOW-CACHE:NO
#EXT-X-TARGETDURATION:6
#EXT-X-MEDIA-SEQUENCE:7
#EXTINF:4.00,
7.ts
#EXTINF:6.00,
8.ts
#EXTINF:4.00,
9.ts

the low quality playlist
#EXTM3U
#EXT-X-VERSION:3
#EXT-X-ALLOW-CACHE:NO
#EXT-X-TARGETDURATION:6
#EXT-X-MEDIA-SEQUENCE:7
#EXTINF:4.992300,
7.ts
#EXTINF:4.992289,
8.ts
#EXTINF:5.015511,
9.ts


When I am playing only the high quality playlist, the playback is perfect.
Does it have to do with a misalignement of the keyframes betwseen the two
playlists and how can I fix that?

Thanks!
___
ffmpeg-user mailing list
ffmpeg-user@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-user


Re: [FFmpeg-user] Faststart fragmented mp4

2015-10-05 Thread alan1...@aol.com
Carl, 

Here is the test with latest current snapshot. 

No mention of SIDX in the logs that i can see. 

---
bash-3.2$ /Volumes/storage/ffmpeg/2_8/ffmpeg -y -i 
"/Volumes/storage/rendertemp/in/input.mp4" -movflags faststart -frag_duration 
1000 -codec:v libx264 -profile:v baseline -pix_fmt yuv420p -b:v 500k -codec:a 
aac -b:a 96k -strict -2 -s 426x240 -threads 0 
"/Volumes/storage/rendertemp/out/output.mp4"
ffmpeg version N-75904-ga2b8b16-tessus Copyright (c) 2000-2015 the FFmpeg 
developers
  built with Apple LLVM version 6.0 (clang-600.0.57) (based on LLVM 3.5svn)
  configuration: --cc=/usr/bin/clang --prefix=/opt/ffmpeg --as=yasm 
--extra-version=tessus --enable-avisynth --enable-fontconfig --enable-gpl 
--enable-libass --enable-libbluray --enable-libfreetype --enable-libgsm 
--enable-libmodplug --enable-libmp3lame --enable-libopencore-amrnb 
--enable-libopencore-amrwb --enable-libopus --enable-libschroedinger 
--enable-libsoxr --enable-libspeex --enable-libtheora --enable-libvidstab 
--enable-libvo-aacenc --enable-libvo-amrwbenc --enable-libvorbis 
--enable-libvpx --enable-libwavpack --enable-libx264 --enable-libx265 
--enable-libxavs --enable-libxvid --enable-libzmq --enable-version3 
--disable-ffplay --disable-indev=qtkit --disable-indev=x11grab_xcb
  libavutil  55.  2.100 / 55.  2.100
  libavcodec 57.  4.100 / 57.  4.100
  libavformat57.  3.100 / 57.  3.100
  libavdevice57.  0.100 / 57.  0.100
  libavfilter 6.  9.101 /  6.  9.101
  libswscale  4.  0.100 /  4.  0.100
  libswresample   2.  0.100 /  2.  0.100
  libpostproc54.  0.100 / 54.  0.100
Guessed Channel Layout for  Input Stream #0.1 : stereo
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 
'/Volumes/storage/rendertemp/in/input.mp4':
  Metadata:
major_brand : qt  
minor_version   : 537199360
compatible_brands: qt  
creation_time   : 2014-06-26 18:57:18
  Duration: 00:00:10.00, start: 0.00, bitrate: 36344 kb/s
Stream #0:0(eng): Video: prores (apch / 0x68637061), yuv422p10le(bt709), 
1920x1080, 34796 kb/s, SAR 1:1 DAR 16:9, 25 fps, 25 tbr, 25 tbn, 25 tbc 
(default)
Metadata:
  creation_time   : 2014-06-26 18:57:18
  handler_name: Apple Alias Data Handler
  encoder : Apple ProRes 422 (HQ)
  timecode: 01:00:00:00
Stream #0:1(eng): Audio: pcm_s16le (sowt / 0x74776F73), 48000 Hz, 2 
channels, s16, 1536 kb/s (default)
Metadata:
  creation_time   : 2014-06-26 18:57:18
  handler_name: Apple Alias Data Handler
Stream #0:2(eng): Data: none (tmcd / 0x64636D74), 0 kb/s (default)
Metadata:
  creation_time   : 2014-06-26 18:57:39
  handler_name: Apple Alias Data Handler
  timecode: 01:00:00:00
[libx264 @ 0x7fdb5300b600] using SAR=640/639
[libx264 @ 0x7fdb5300b600] using cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.2 
AVX
[libx264 @ 0x7fdb5300b600] profile Constrained Baseline, level 2.1
[libx264 @ 0x7fdb5300b600] 264 - core 146 - H.264/MPEG-4 AVC codec - Copyleft 
2003-2015 - http://www.videolan.org/x264.html - options: cabac=0 ref=3 
deblock=1:0:0 analyse=0x1:0x111 me=hex subme=7 psy=1 psy_rd=1.00:0.00 
mixed_ref=1 me_range=16 chroma_me=1 trellis=1 8x8dct=0 cqm=0 deadzone=21,11 
fast_pskip=1 chroma_qp_offset=-2 threads=12 lookahead_threads=1 
sliced_threads=0 nr=0 decimate=1 interlaced=0 bluray_compat=0 
constrained_intra=0 bframes=0 weightp=0 keyint=250 keyint_min=25 scenecut=40 
intra_refresh=0 rc_lookahead=40 rc=abr mbtree=1 bitrate=500 ratetol=1.0 
qcomp=0.60 qpmin=0 qpmax=69 qpstep=4 ip_ratio=1.40 aq=1:1.00
Output #0, mp4, to '/Volumes/storage/rendertemp/out/output.mp4':
  Metadata:
major_brand : qt  
minor_version   : 537199360
compatible_brands: qt  
encoder : Lavf57.3.100
Stream #0:0(eng): Video: h264 (libx264) ([33][0][0][0] / 0x0021), yuv420p, 
426x240 [SAR 640:639 DAR 16:9], q=-1--1, 500 kb/s, 25 fps, 12800 tbn, 25 tbc 
(default)
Metadata:
  creation_time   : 2014-06-26 18:57:18
  handler_name: Apple Alias Data Handler
  timecode: 01:00:00:00
  encoder : Lavc57.4.100 libx264
Stream #0:1(eng): Audio: aac ([64][0][0][0] / 0x0040), 48000 Hz, stereo, 
fltp, 96 kb/s (default)
Metadata:
  creation_time   : 2014-06-26 18:57:18
  handler_name: Apple Alias Data Handler
  encoder : Lavc57.4.100 aac
Stream mapping:
  Stream #0:0 -> #0:0 (prores (native) -> h264 (libx264))
  Stream #0:1 -> #0:1 (pcm_s16le (native) -> aac (native))
Press [q] to stop, [?] for help
frame=   50 fps=0.0 q=0.0 size=   0kB time=00:00:01.96 bitrate=   
0.1kbits/sframe=  102 fps=101 q=10.0 size= 102kB time=00:00:04.94 bitrate= 
168.6kbits/frame=  150 fps= 99 q=6.0 size= 209kB time=00:00:06.93 bitrate

Re: [FFmpeg-user] ffmpeg runtime dependences

2015-10-05 Thread Carl Eugen Hoyos
Wang, Liqin, M.S.  mayo.edu> writes:

> I am wondering if it is possible that we could make 
> the reference to GCC :
> 
> /opt/freeware/lib/liblzma.a(liblzma.so.5)
> /opt/freeware/lib/libbz2.a(libbz2.so.1)

What do the following commands show on your 
build host?
$ ls -l /opt/freeware/lib/libbz2*
$ ls -l /opt/freeware/lib/liblzma*

Imo, the simple solution is to remove the relevant so 
files from the build host to force static linking.

Carl Eugen

___
ffmpeg-user mailing list
ffmpeg-user@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-user


[FFmpeg-user] ffmpeg runtime dependences

2015-10-05 Thread Wang, Liqin, M.S.
Hi, All,



We need ffmpeg running in AIX.  We have several hosts and have to install GCC 
to build ffmpeg on each one of them. I hope to build  ffmpeg in one machine, 
and be able to use in other machine with exactly same operating  system 
settings.



I have checked the run time dependences, the lib files highlighted in green are 
existing AIX files,  and the only two library files highlighted in red are GCC 
related.

I am wondering if it is possible that we could make the reference to GCC :



 
/opt/freeware/lib/gcc/powerpc-ibm-aix7.1.0.0/4.9.2/../../../liblzma.a(liblzma.so.5)

 
/opt/freeware/lib/gcc/powerpc-ibm-aix7.1.0.0/4.9.2/../../../libbz2.a(libbz2.so.1)



At compile time such that we only need to build once in my system?



Our AIX hosts are production servers with very high working load. The 
installation of GCC through RPM package requires root privilege. Our System 
administrator is afraid of this installation could cause the system unstable or 
any unpredicted system issue.



Thanks for your helps.



Liqin



-



bash-4.3$ ldd ffmpeg

ffmpeg_1 needs:

 /usr/lib/libc.a(shr.o)

 /usr/lib/libpthreads.a(shr_xpg5.o)

 /usr/lib/libpthreads.a(shr_comm.o)

 
/opt/freeware/lib/gcc/powerpc-ibm-aix7.1.0.0/4.9.2/../../../liblzma.a(liblzma.so.5)

 
/opt/freeware/lib/gcc/powerpc-ibm-aix7.1.0.0/4.9.2/../../../libbz2.a(libbz2.so.1)

 /unix

 /usr/lib/libcrypt.a(shr.o)

___
ffmpeg-user mailing list
ffmpeg-user@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-user


Re: [FFmpeg-user] ffmpeg - use for mpeg-ts streaming

2015-10-05 Thread Ran Shalit
On Mon, Oct 5, 2015 at 11:23 AM, Carl Eugen Hoyos  wrote:
> Ran Shalit  gmail.com> writes:
>
>> I thought to use ffmpeg library to muxing given
>> encoded buffer, and stream into mpeg-ts using udp
>> (doing it in code , not shell).
>
> Fortunately, you can use the ffmpeg executable first
> to test if what you want to do works or not before
> implementing it in your application.
>
>> I would like to ask if using ffmpeg for streaming
>> this way is recommended or better using another
>> library for streaming such as live555.
>
> I wasn't aware that live555 supports mpeg-ts over udp.
> Does it?
>

Hi Carl,

Thanks for the feedback.
Yes, live555 support it according to Q&A (though the recommendation is
to use rtp instead).
I intend to use mpeg-ts over udp, (with given encoded buffers from HW encoder).
Do you think that it is better to do it with ffmpeg for the streaming
purpose, or better do it with live555 library instead ?
It seems that ffmpeg API is simpler for this but I am not sure if this
should work.

Another thing - Is the latency for the streaming will be minimal with ffmpeg ?

Thank you!
Ran
___
ffmpeg-user mailing list
ffmpeg-user@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-user


Re: [FFmpeg-user] ffmpeg - use for mpeg-ts streaming

2015-10-05 Thread Carl Eugen Hoyos
Ran Shalit  gmail.com> writes:

> I thought to use ffmpeg library to muxing given 
> encoded buffer, and stream into mpeg-ts using udp 
> (doing it in code , not shell).

Fortunately, you can use the ffmpeg executable first 
to test if what you want to do works or not before 
implementing it in your application.

> I would like to ask if using ffmpeg for streaming 
> this way is recommended or better using another 
> library for streaming such as live555.

I wasn't aware that live555 supports mpeg-ts over udp.
Does it?

> I only would like to ask if there are known issues 
> with ffmpeg used for mpeg-ts udp streaming.

Definitely: Muxing transport streams is not trivial 
and bugs exist.
(I suspect sending data over udp is trivial.)

Carl Eugen

___
ffmpeg-user mailing list
ffmpeg-user@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-user


[FFmpeg-user] ffmpeg - use for mpeg-ts streaming

2015-10-05 Thread Ran Shalit
Hello,

I thought to use ffmpeg library to muxing given encoded buffer, and
stream into mpeg-ts using udp (doing it in code , not shell).
I would like to ask if using ffmpeg for streaming this way is
recommended or better using another library for streaming such as
live555. I only would like to ask if there are known issues with
ffmpeg used for mpeg-ts udp streaming.

Thank you,
Ran
___
ffmpeg-user mailing list
ffmpeg-user@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-user