helpflvstreamer - Support: sr #107134, --timeout Option has no effect in...

 
 

sr #107134: --timeout Option has no effect in v1.9

Submitted by:  Thomas <tommics>
Submitted on:  Thu 19 Nov 2009 11:36:47 AM UTC  
 
Category: NonePriority: 5 - Normal
Severity: 4 - ImportantStatus: Ready For Test
Privacy: PublicAssigned to: None
Open/Closed: OpenOperating System: GNU/Linux

Add a New Comment (Rich MarkupRich Markup):
   

You are not logged in

Please log in, so followups can be emailed to you.

 

Mon 07 Dec 2009 12:16:33 PM UTC, comment #5:

i tested the timeout option this weekend again. If the data stream interrupts, flvstreamer immediately exits. So the timeout has no effect here.

is there a chance that flvstreamer would wait for data stream and then starts automatically? would save so much work.

best regards
thomas

Thomas <tommics>
Sun 22 Nov 2009 04:44:09 PM UTC, comment #4:

but why not?! :)
it would be so easy to schedule live events. now i gotta wait for the stream to begin to start flvstreamer :(

Thomas <tommics>
Sun 22 Nov 2009 04:23:59 PM UTC, comment #3:

Hi, I think this is what it was supposed to do. If it waited indefinitely for an empty live stream in v1.8 then that was not intended.

fsck <fsck>
Project Administrator
Sun 22 Nov 2009 12:51:40 PM UTC, comment #2:

It behaves as followed now:

if i record a stream with -v 10 and then stop the encoder (so flvstreamer isnt getting any data) it stops immediatly and doesnt wait 10 sec.

If i start flvstreamer with -v 10 and no encoder is sending, it times out after 10 seconds correctly.

When i start flvstreamer before starting the encoding, flvstreamer is still not recognizing incoming data. This is the most annoying thing to schedule live events. If i could just start flvstreamer and it automatically starts when data is incoming, it would be perfect. This worked in v1.8.

best regards
thomas

Thomas <tommics>
Sun 22 Nov 2009 12:06:17 PM UTC, comment #1:

I've commited some patches to flvstreamer svn that address this issue (credit to rtmpdump maintainers for this). svn checkout, compile and let me know if they help.

fsck <fsck>
Project Administrator
Thu 19 Nov 2009 11:36:47 AM UTC, original submission:

hey,

if i specify the timeout option with some value, lets say 10 sec, it doesnt do what i expect it to do, timing out and exiting. Instead it tries every $timeout seconds to resume the stream.

WARNING: AMF_LONG_STRING not tested!
DEBUG: Property: NULL
DEBUG: HandleInvoke, server invoking <_onbwcheck>
DEBUG: Invoking _result
206.218 kB / 1.04 sec
DEBUG: HandlePacket, received: invoke 215077 bytes
WARNING: AMF_LONG_STRING not tested!
DEBUG: Property: NULL
DEBUG: HandleInvoke, server invoking <_onbwcheck>
DEBUG: Invoking _result
DEBUG: HandlePacket, received: invoke 40 bytes
DEBUG: Property: NULL
DEBUG: HandleInvoke, server invoking <_onbwdone>
1600.061 kB / 14.76 sec
DEBUG: HandleCtrl, received ctrl. type: 6, len: 6
DEBUG: HandleCtrl, Ping 225677132
DEBUG: sending ctrl. type: 0x0007
2637.066 kB / 23.68 sec
WARNING: ignoring too small video packet: size: 5
WARNING: ignoring too small audio packet: size: 0
WARNING: ignoring too small audio packet: size: 0
WARNING: ignoring too small audio packet: size: 0
WARNING: ignoring too small audio packet: size: 0
WARNING: ignoring too small audio packet: size: 0
WARNING: ignoring too small audio packet: size: 0
DEBUG: HandlePacket, received: invoke 161 bytes
DEBUG: Property: NULL
DEBUG: Property: <Name: level, STRING: status>
DEBUG: Property: <Name: code, STRING: NetStream.Play.UnpublishNotify>
DEBUG: Property: <Name: description, STRING: dasdasds@12345 is now unpublished.>
DEBUG: Property: <Name: clientid, STRING: n7dasds>
DEBUG: HandleInvoke, server invoking <onStatus>
DEBUG: HandleInvoke, onStatus: NetStream.Play.UnpublishNotify
DEBUG: HandlePacket, received: invoke 100 bytes
DEBUG: Property: NULL
DEBUG: Property: <Name: code, STRING: NetStream.Play.Stop>
DEBUG: Property: <Name: description, STRING: sportcast_scout_08@12985>
DEBUG: HandleInvoke, server invoking <onFCUnsubscribe>
DEBUG: FillBuffer, recv returned -1. GetSockError(): 11 (Resource temporarily unavailable)
ERROR: ReadPacket, failed to read RTMP packet header
DEBUG: WriteStream returned: -1
DEBUG: Setting buffer time to: 36000000ms
INFO: Connection timed out, trying to resume.

DEBUG: Invoking pause
DEBUG: Invoking pause
Starting Live Stream
For duration: 120.000 sec
DEBUG: HandlePacket, received: invoke 178 bytes
DEBUG: Property: NULL
DEBUG: Property: <Name: level, STRING: status>
DEBUG: Property: <Name: code, STRING: NetStream.Pause.Notify>
DEBUG: Property: <Name: description, STRING: Pausing sportcast_scout_08@12985.>
DEBUG: Property: <Name: details, STRING: sportcast_scout_08@12985>
DEBUG: Property: <Name: clientid, STRING: n7D4kWgk>
DEBUG: HandleInvoke, server invoking <onStatus>
DEBUG: HandleInvoke, onStatus: NetStream.Pause.Notify
DEBUG: FillBuffer, recv returned -1. GetSockError(): 11 (Resource temporarily unavailable)
ERROR: ReadPacket, failed to read RTMP packet header
DEBUG: WriteStream returned: -1
DEBUG: Setting buffer time to: 36000000ms
INFO: Connection timed out, trying to resume.

DEBUG: Invoking pause
DEBUG: Invoking pause
Starting Live Stream
For duration: 120.000 sec
DEBUG: FillBuffer, recv returned -1. GetSockError(): 11 (Resource temporarily unavailable)
ERROR: ReadPacket, failed to read RTMP packet header
DEBUG: WriteStream returned: -1
DEBUG: Setting buffer time to: 36000000ms
INFO: Connection timed out, trying to resume.

DEBUG: Invoking pause
DEBUG: Invoking pause
Starting Live Stream
For duration: 120.000 sec
DEBUG: FillBuffer, recv returned -1. GetSockError(): 11 (Resource temporarily unavailable)
ERROR: ReadPacket, failed to read RTMP packet header
DEBUG: WriteStream returned: -1
DEBUG: Setting buffer time to: 36000000ms
INFO: Connection timed out, trying to resume.

DEBUG: Invoking pause
DEBUG: Invoking pause
Starting Live Stream
For duration: 120.000 sec
DEBUG: FillBuffer, recv returned -1. GetSockError(): 11 (Resource temporarily unavailable)
ERROR: ReadPacket, failed to read RTMP packet header
DEBUG: WriteStream returned: -1
DEBUG: Setting buffer time to: 36000000ms
INFO: Connection timed out, trying to resume.

DEBUG: Invoking pause
DEBUG: Invoking pause
Starting Live Stream
For duration: 120.000 sec
DEBUG: FillBuffer, recv returned -1. GetSockError(): 11 (Resource temporarily unavailable)
ERROR: ReadPacket, failed to read RTMP packet header
DEBUG: WriteStream returned: -1
DEBUG: Setting buffer time to: 36000000ms
INFO: Connection timed out, trying to resume.

DEBUG: Invoking pause
DEBUG: Invoking pause
Starting Live Stream
For duration: 120.000 sec
^CCaught signal: 2, cleaning up, just a second...
DEBUG: FillBuffer, recv returned -1. GetSockError(): 4 (Interrupted system call)
ERROR: ReadPacket, failed to read RTMP packet header
DEBUG: WriteStream returned: -1
Download may be incomplete (downloaded about 0.00%), try resuming
DEBUG: Closing connection.

I started recording with
./flvstreamer -vV --timeout 10 -r rtmp://cp12345.live.edgefcs.net/live/dasdasd@12345 --stop 120 -o /space/test.flv

Above you see it recording the stream correctly. then i stopped the encoding and you see it looping every 10 seconds trying to resume. If i would specify timeout 40 it would loop every 40 seconds.

The other way around is also buggy. If i start recording while the streams is not sending data, it waits for recording. When i start encoding and sending data, flvstreamer doesnt recognize that and is not recording. This makes recording of live events very difficult because it expects data to be on the line when starting flvstreamer. In earlier Versions this worked fine. So i could just start flvstreamer whith "at" some time i want and let it record when the encoder starts.

Thomas <tommics>

 

(Note: upload size limit is set to 16384 kB, after insertion of the required escape characters.)

Attach File(s):
   
   
Comment:
   

No files currently attached

 

Depends on the following items: None found

Items that depend on this one: None found

 

Carbon-Copy List
  • -unavailable- added by fsck (Posted a comment)
  • -unavailable- added by tommics (Submitted the item)
  •  

    Do you think this task is very important?
    If so, you can click here to add your encouragement to it.
    This task has 0 encouragements so far.

    Only logged-in users can vote.

     

    Please enter the title of George Orwell's famous dystopian book (it's a date):

     

     

    Follows 1 latest change.

    Date Changed By Updated Field Previous Value => Replaced By
    Sun 22 Nov 2009 12:06:17 PM UTCfsckStatusNone=>Ready For Test

    Back to the top


    Powered by Savane 3.1-cleanup