Start/stop record based on mysql database timestamp
I like the rtp-record in streammanager,
but I need a way to automate it to start and stop recording based on a mysql timestamp rather then going in and doing it manually.
I kinda noticed LiveStreamRecord2.0, will that do it?
If so how?
You can integrate the source of LiveStreamRecord with your database, or you can use the MediaCaster API:
I'm not sure. It's significant work either way. If you do it with LiveStreamRecord the stream is going to have to be running, and your integration will be switching on the LiveStream Recorder. The other way, your integration will be starting the stream with rtp-record MediaCaster type.
I'm looking to do the exact same thing. It seems like something that people would have already done many times.
Richard, please correct me if I'm wrong, but I believe that LiveVideoRecord uses extra bandwidth from the camera. I'm trying to send streams of different qualities and using LiveVideoRecord would require double the bandwidth from the camera vs. rtp-live-record. I don't have much bandwidth at my remote camera locations, so this is always a concern.
rtp-live-record I've read just starts recording when someone starts watching and finishes when the last viewer stops. I think I will set to rtp-live-record, then start grabbing the stream a couple minutes before the scheduled time and send it to /dev/null. I'll keep this up until the stop time.
So what's the easiest way to grab the rtmp to trigger the record? wget? curl? vlc?
And how do I kick all the viewers off at the scheduled end time?
I'm open to other ways of doing this and welcome any ideas or tips.
Thanks for all the help!
No, it's not right. The LiveStreamRecord package is doing the recording server-side, so there is no added bandwidth.
rtp-live-record works with MediaCaster streams, like an IP camera or shoutcast streams. With these kinds of streams you can also use the StreamManager to stop and start the stream with MediaCaster type "rtp-record"
But if it is a push encoder (Like FMLE or Wirecast), that's not going to work. In that case you either record everything by using StreamType "live-record" or you can use LiveStreamRecord package, which does not increase bandwith usage.
I feel like you just showed me a scalpel after I just finished getting my chainsaw gassed up and ready to go
I guess we're back to which one is easier. My app is built using Rails so I'm leaning towards, rtp-live-record. I'm thinking of using rtmpdump to grab the stream and start the recording.
Now getting the recording to stop. How do I knock off the other users easily, when the big show is over?
What is the source of the live stream?
Follow this the below guide, but make the StreamType "live" instead of "rtp-live"
Then use StreamManager to start the stream with MediaCaster Type "rtp"
(you have to add username/password to /conf/admin.password to access the StreamManager)
Then you can use LiveStreamRecord package to stop and start recording, while your users are watching the live stream. They will be able to see it all, but you can control what you record.
Then stop the stream using the StreamManager. Users will stop seeing a live stream.
If you want to record everything that the users are able to see,forget about the LiveStreamRecord package, and start the stream in the StreamManager with MediaCaster Type "rtp-record"