[FFserver-user] not able to replay video from .ffm recorded earlier
Yogesh Tyagi
yogesh.bit2006 at gmail.com
Fri Sep 7 04:35:04 CEST 2012
On Fri, Sep 7, 2012 at 4:17 AM, Robert Steckroth
<robertsteckroth at gmail.com> wrote:
> Also, I believe there is a file size limit in the conf which will need
> to be set high. Than you will need to rotate
> the recorded file. If you do not copy and empty the file, it will
> become corrupted. Keep in mind, if you
> simply empty the file e.g. cat > temp.ts, than you need to restart the
> ffserver to insert the proper
> headers.
>
>
> On Thu, Sep 6, 2012 at 4:54 PM, Anthony Brown <av at bsbc.nb.ca> wrote:
>> On 12-09-06 04:12 PM, Yogesh Tyagi wrote:
>>
>>> so one feed can have one video or multiple videos?can I fed same feed
>>> through an instance of ffmpeg multiple times(if I do this the size of
>>> feed keeps increasing.is the feed storing duplicate videos)? In this
>>> case what will happen to the data previously fed to the feed?
>>> The problem I am facing is that sometimes my client(say ffplay) plays
>>> the file from start that was fed through ffmpeg.sometimes it does not.
>>
>>
>> You need to differentiate between a 'feed' and a 'stream'. Feeds are inputs
>> to the server. Each feed can be converted into multiple 'stream' formats
>> that can be output. All of which are stored in a single ffm file. A feed
>> is 'fed' to ffserver by an instance of ffmpeg. Each 'video', which I take
>> to mean a separate feed is stored in a separate .ffm file. All as specified
>> in your .conf file.
>>
>> Each 'video' requires a separate ffmpeg to 'feed' it to ffserver, and a
>> separate ffm file to store it.
>>
>>
>>> If i repeat the operation of feeding the feed through ffmpeg and
>>> accessing the file through a client then ffserver starts giving me
>>> following error:
>>>
>>> Application provided invalid, non monotonically increasing dts to
>>> muxer in stream 0(or 1)
>>> Error writing frame to output
>>
>>
>> Not sure what that means.
>>
>>
>>> Is there any way through which I can find out what has been stored in the
>>> feed?
>>
>>
>> yes, do an ffmpeg -i whatever.ffm and it will list the goodies inside.
>> Alternatively, connect to the ffserver status page
>> (http://whatever.your.server.address.is:8090/stat.html) and see what is
>> there.
>>
>> It would be easier to help if we knew what it was you were trying to
>> accomplish and exactly what you have tried (contents of ffserver.conf,
>> ffmpeg command line and output, client output etc.)
>>
>>
>> A
>> --
>>
>>
>> Anthony Brown
>> Audiovisual coordinator
>> Brunswick Street Baptist Church
>> Telephone: (506)-458-8348 (leave message)
>> Email: av at bsbc.nb.ca
>>
>> _______________________________________________
>> ffserver-user mailing list
>> ffserver-user at ffmpeg.org
>> http://ffmpeg.org/mailman/listinfo/ffserver-user
>>
>
>
>
> --
> Bust0ut, Surgemcgee: Systems Engineer ---
> surgemcgee.com
> BudTVNetwork.com
> RadioWeedShow.com
> "Bringing entertainment to Unix"
> _______________________________________________
> ffserver-user mailing list
> ffserver-user at ffmpeg.org
> http://ffmpeg.org/mailman/listinfo/ffserver-user
my ffserver.conf file is as follows:
Port 8091
BindAddress 0.0.0.0
MaxHTTPConnections 2000
MaxClients 100
MaxBandwidth 1000000
CustomLog -
NoDaemon
<Feed feed1.ffm>
File /tmp/feed1.ffm
FileMaxSize 15M
ACL allow 127.0.0.1
</Feed>
<Stream test.ts>
Feed feed1.ffm
Format mpegts
AudioCodec mp2
AudioBitRate 128k
AudioChannels 2
AudioSampleRate 48000
AVOptionAudio flags +global_header
VideoCodec libx264
VideoBitRate 800k
VideoFrameRate 100
VideoSize 640x480
AVOptionVideo coder 0
AVOptionVideo bf 0
AVOptionVideo flags2 +mixed_refs+fastpskip
AVOptionVideo flags +loop
AVOptionVideo cmp +chroma
AVOptionVideo partitions +parti8x8+parti4x4+partp8x8+partb8x8
AVOptionVideo me_method hex
AVOptionVideo subq 7
AVOptionVideo me_range 16
AVOptionVideo g 250
AVOptionVideo keyint_min 10
AVOptionVideo sc_threshold 40
AVOptionVideo i_qfactor 0.71
AVOptionVideo b_strategy 1
AVOptionVideo qcomp 0.6
AVOptionVideo qmin 10
AVOptionVideo qmax 51
AVOptionVideo qdiff 4
AVOptionVideo refs 3
AVOptionVideo directpred 1
AVOptionVideo trellis 1
AVOptionVideo flags2 +mixed_refs+fastpskip
AVOptionVideo wpredp 0
AVOptionVideo flags +global_header
AVOptionVideo bsf h264_mp4toannexb
VideoGopSize 12
Preroll 15
StartSendOnKey
</Stream>
<Stream stat.html>
Format status
ACL allow 127.0.0.1
ACL allow 192.168.1.27
</Stream>
<Redirect index.html>
URL stat.html
</Redirect>
when I play test.ts from a client do I need 'fed' the feed to
ffserver by an instance of ffmpeg simultaneously or can i fed the feed
now and play the file temp.ts later.
I have tried this exercise. sometimes the client plays the file
test.ts,sometimes it does not.
One more question I want to ask is suppose I started feeding the feed
now and I start the client some time later.will the client be able to
play the file test.ts from start?
If I fed the feed to ffserver by an instance of ffmpeg muliple times
and try to play test.ts from client I start getting following errors:
Following is the command line output:
# ffserver -f /etc/ffserver.conf &
[1] 30433
yogesh at yogesh-desktop:~/Desktop$ ffserver version 0.9, Copyright (c)
2000-2011 the FFmpeg developers
built on Aug 23 2012 13:35:01 with gcc 4.4.5
configuration: --enable-libx264 --enable-gpl
libavutil 51. 32. 0 / 51. 32. 0
libavcodec 53. 42. 0 / 53. 42. 0
libavformat 53. 24. 0 / 53. 24. 0
libavdevice 53. 4. 0 / 53. 4. 0
libavfilter 2. 53. 0 / 2. 53. 0
libswscale 2. 1. 0 / 2. 1. 0
libpostproc 51. 2. 0 / 51. 2. 0
Thu Sep 6 20:54:40 2012 FFserver started.
Thu Sep 6 20:54:50 2012 127.0.0.1 - - [GET] "/feed1.ffm HTTP/1.1" 200 4149
Thu Sep 6 20:54:53 2012 muxrate VBR, pcr every 2 pkts, sdt every 200,
pat/pmt every 40 pkts
Thu Sep 6 20:54:57 2012 muxrate VBR, pcr every 2 pkts, sdt every 200,
pat/pmt every 40 pkts
Thu Sep 6 20:55:09 2012 127.0.0.1 - - [POST] "/feed1.ffm HTTP/1.1" 200 3739648
Thu Sep 6 20:55:09 2012 192.168.1.27 - - [GET] "/test.ts HTTP/1.0" 200 2683391
Thu Sep 6 20:55:09 2012 192.168.1.27 - - [GET] "/test.ts HTTP/1.0" 200 3385007
Thu Sep 6 20:55:25 2012 muxrate VBR, pcr every 2 pkts, sdt every 200,
pat/pmt every 40 pkts
Thu Sep 6 20:55:28 2012 muxrate VBR, pcr every 2 pkts, sdt every 200,
pat/pmt every 40 pkts
Thu Sep 6 20:55:32 2012 127.0.0.1 - - [GET] "/feed1.ffm HTTP/1.1" 200 4149
Thu Sep 6 20:55:33 2012 Application provided invalid, non
monotonically increasing dts to muxer in stream 1: 2732730 >= 0
Thu Sep 6 20:55:33 2012 Error writing frame to output
Thu Sep 6 20:55:33 2012 Application provided invalid, non
monotonically increasing dts to muxer in stream 1: 2732730 >= 3003
Thu Sep 6 20:55:33 2012 Error writing frame to output
Thu Sep 6 20:55:33 2012 Application provided invalid, non
monotonically increasing dts to muxer in stream 1: 2732730 >= 6006
Thu Sep 6 20:55:33 2012 Error writing frame to output
Thu Sep 6 20:55:33 2012 Application provided invalid, non
monotonically increasing dts to muxer in stream 1: 2732730 >= 9009
Thu Sep 6 20:55:33 2012 Error writing frame to output
Thu Sep 6 20:55:33 2012 Application provided invalid, non
monotonically increasing dts to muxer in stream 1: 2732730 >= 0
Thu Sep 6 20:55:33 2012 Error writing frame to output
Thu Sep 6 20:55:33 2012 Application provided invalid, non
monotonically increasing dts to muxer in stream 1: 2732730 >= 3003
Thu Sep 6 20:55:33 2012 Error writing frame to output
Thu Sep 6 20:55:33 2012 Application provided invalid, non
monotonically increasing dts to muxer in stream 1: 2732730 >= 6006
Thu Sep 6 20:55:33 2012 Error writing frame to output
Thu Sep 6 20:55:33 2012 Application provided invalid, non
monotonically increasing dts to muxer in stream 1: 2732730 >= 9009
Thu Sep 6 20:55:33 2012 Error writing frame to output
Thu Sep 6 20:55:33 2012 Application provided invalid, non
monotonically increasing dts to muxer in stream 1: 2732730 >= 12012
Thu Sep 6 20:55:33 2012 Error writing frame to output
Thu Sep 6 20:55:33 2012 Application provided invalid, non
monotonically increasing dts to muxer in stream 1: 2732730 >= 15015
Thu Sep 6 20:55:33 2012 Error writing frame to output
Thu Sep 6 20:55:33 2012 192.168.1.27 - - [GET] "/test.ts HTTP/1.0" 200 4579
Thu Sep 6 20:55:33 2012 Application provided invalid, non
monotonically increasing dts to muxer in stream 1: 2732730 >= 12012
Thu Sep 6 20:55:33 2012 Error writing frame to output
Thu Sep 6 20:55:33 2012 Application provided invalid, non
monotonically increasing dts to muxer in stream 1: 2732730 >= 15015
Thu Sep 6 20:55:33 2012 Error writing frame to output
Thu Sep 6 20:55:33 2012 192.168.1.27 - - [GET] "/test.ts HTTP/1.0" 200 4579
Thu Sep 6 20:55:52 2012 127.0.0.1 - - [POST] "/feed1.ffm HTTP/1.1" 200 3739648
I am feeding by following command:
ffmpeg -i Sally_720x480p_2997fps_8Mbps_MP1L2_48_224.ts -vcodec libx264
-acodec mp2 -flags -global_header http://127.0.0.1:8091/feed1.ffm
Regards,
yogesh
More information about the ffserver-user
mailing list