我有一个只能读取 samba 共享文件的媒体播放器。我想播放http流(例如从我的dreambox)。
我的想法是在我的 linux 上共享一个文件夹。在这个分享中,我将为每个我希望能够观看的电视频道放置一个(假的?)文件(例如:channel1.ts、channel2.ts ...)。
媒体播放器只能像使用常规文件一样读取这些文件。我的需要:做一些“监听”访问这些文件的事情,这样当我的媒体播放器访问它时,它会触发一个mencoder -oac copy -ovc copy -o channel1.ts http://path.to.the.broadcast.ts .
我尝试在一个空文件上使用inotify 。它很好地触发了mencoder,但媒体播放器在编码开始之前停止了(因为文件是空的,所以它在开始之前就到达了结尾)。也许,必须填充 5 秒的视频才能缓冲读取?
使用“fifo”可能会很好 => 我试过了,媒体播放器等待,当我做 mencoder 时,fifo 开始增长,媒体播放器播放它!是啊!!!...但是inotify似乎对fifo没有反应...所以我不能自动触发mencoder。
欢迎提出任何建议。
基本点:
- 媒体播放器只能读取常规文件
- 文件必须在 samba 共享文件夹中
- 记录必须按需“触发”(当媒体播放器尝试访问它时)
- 可以很好地观察“不活动”以停止记录/清空缓冲区文件
将这个问题形式化并不容易。我有点失望,我什至不知道我可以用谷歌搜索什么样的搜索。
希望这里的一些大师会找到一些可以解决问题的方法
干杯。