【发布时间】:2011-09-16 07:53:37
【问题描述】:
我希望有人能给我指点,我有一个 php 脚本,它运行以下命令来录制现场广播 mp3 流以创建长达一小时的 mp3 录音。它非常适合我的目的。唯一的问题是偶尔没有录音。据我所知,因为流已经退出并且 ffmpeg 刚刚中止。
/usr/local/bin/ffmpeg -i http://www.mystream.com:8000/radiostream.mp3 -t 60:00 -acodec copy /var/www/mydomain/audio/".$recorded_audio_title;
所以我的问题是,有没有办法告诉 ffmpeg 连续录制 60:00 分钟以进行录制,即使他们退出了?如果它完成了录音,我会很高兴有一点奇怪的沉默。
我希望这是有道理的,即使是指向 FFMPEG 选项或标志的指针,我也会很感激。使用 Google 搜索后,我还没有看到任何符合要求的内容。
在此先感谢
抢劫
【问题讨论】:
-
您想通过静音完成丢弃的流以接收正好 60 分钟长的录音吗?
-
不,理想情况下,当流重新连接时,它能够继续录制流。辍学往往很短。虽然作为开始,如果没有其他替代方案可用,那么全长录音(即使部分/大部分是无声的)总比没有好。
-
@Rob,您应该使用数据包嗅探器验证流是否工作。确保它是连接错误或阻碍你的东西。此外,您可以考虑使用简单的 WGET 实现相同的目标,并在 60 分钟后停止。它不会准确地为您提供 60 分钟,因为服务器最初会推送一个缓冲区(通常为 1MB),因此您可能会得到 60 分钟 + 1MB 左右。另外,最后不要担心 MP3 损坏。我用过这个方法的任何玩家都可以很好地处理它。
标签: ffmpeg mp3 audio-streaming live-streaming