スマートリレー[wget> fifo> ices0> icecast]

mp3ストリームのスマートリレーについて少し話しましょう。
主に自分用に、4つの不安定なソース(同じものをブロードキャストする)から高品質のmp3リレーを作成する必要がありました。
たとえば、KissFMを考えてみましょう。 定期的に減衰する4つのソースがあります(3つのサウンドストリームは同様に良好で、1つはさらに悪い)。

現時点では、実装は次のとおりです。
#!/bin/sh

# , . kisswget symlink wget,
pkill ices
pkill kisswget

# fifo ( - , )
rm /home/random2/ices/kiss

# fifo
mkfifo /home/random2/ices/kiss
# ices, /home/random2/ices/kiss, stream icecast
ices -c /home/random2/ices/ices.conf

# : wget (kisswget) /home/random2/ices/kiss
# "" , 403/404,

while :
do
/home/random2/ices/kisswget htt://195.138.217.65:8000/kissfm -O /home/random2/ices/kiss
/home/random2/ices/kisswget htt://media.wnet.ua:8000/kissfm -O /home/random2/ices/kiss
/home/random2/ices/kisswget htt://217.20.164.164:8000/kissfm -O /home/random2/ices/kiss
done


私が現時点で見ている欠点:

ちょっとした助け: 「FIFO」(先入れ先出し)は、2つの独立したプロセスがそれを操作できるようにする特別なタイプのファイルです。 1つのプロセスは書き込み用にfifoファイルを開き、別のプロセスは読み取り用にファイルを開きます。その後、データはそのファイルを「フロート」します。 mkfifoコマンドによって作成された* nixシステム。


Source: https://habr.com/ru/post/J66930/


All Articles