1

これを読んでくれてありがとう。この時点で、icecast を使用して小さなラジオ局を完成させ、磨き上げようとしています。実際にはすべてが既に機能しています。

ただし、ezstream と呼ばれるこのプログラムがあります。これは、誰もライブではないときに音楽を icecast にストリーミングするだけであり、プレイリストを使用する最も一般的な autodj です。

プレイリストは一度だけ再生でき、プログラムは閉じます。ここでまさにそれを利用したいのですが、2 つの異なるプレイリストを自動的に作成することができました。1 つはすべての音楽、もう 1 つはコマーシャル、ジングル、サウンドバイトです。コンピュータに保存されているファイルのリストです。次のように、明らかに名前などがあります。

これはプレイリスト1になります

/home/mp3/albums/album1/title1.mp3

/home/mp3/albums/album1/title2.mp3

/home/mp3/albums/album1/title3.mp3

/home/mp3/albums/album1/title4.mp3

/home/mp3/albums/album1/title5.mp3

/home/mp3/albums/album2/title1.mp3

/home/mp3/albums/album2/title2.mp3

/home/mp3/albums/album2/title3.mp3

/home/mp3/albums/album2/title4.mp3

/home/mp3/albums/album2/title5.mp3

プレイリスト2は非常に似ていますが、コマーシャルのみが含まれているため、次のようになります

/home/mp3/commercials/commercial1.mp3

/home/mp3/commercials/commercial2.mp3

/home/mp3/commercials/commercial3.mp3

/home/mp3/commercials/commercial4.mp3

/home/mp3/commercials/commercial5.mp3

私が非常に立ち往生している部分は、2:1 または 3:1 の比率でそれらをマージすることです (両方のコードで私に手を差し伸べることができれば、それも素晴らしいでしょう.

最終的な出力は次のようになります

/home/mp3/albums/album1/title1.mp3

/home/mp3/albums/album1/title2.mp3

/home/mp3/commercials/commercial1.mp3

/home/mp3/albums/album1/title3.mp3

/home/mp3/albums/album1/title4.mp3

/home/mp3/commercials/commercial2.mp3

/home/mp3/albums/album1/title5.mp3

/home/mp3/albums/album2/title1.mp3

/home/mp3/commercials/commercial2.mp3

両方のファイルが完全にマージされるまで、これまでのところこのコードしか見つかりませんでしたが、何らかの理由で機能せず、構文に関連するエラーと < 記号の欠落が発生します。

AWK コード:

awk ‘FNR==NR{

song[FNR]=$0; 
next 
}

{

print song[FNR+line];line++;

print song[FNR+line]

print $0

}’ playlist1.m3u playlist2.m3u

これはすべて、3番目のファイルに出力する必要がありますmergedplaylists.m3u

私はそのコードを作成しませんでしたが、しばらくいじってみましたが、私にはあまり明確ではないことの1つは、なぜそこに「歌」と書かれているのかということです。他の何かに変更できますか? 「アルバム」と言いますか?

コードはまったく機能せず、出力ファイルに何かを書き込みません (正しいかどうかもわかりません)。

特定のケースでsome1が私に手を差し伸べてくれることを願っています.AWKは役に立ちますが、それは非常に不可解であり、それを理解するために多くの問題を見つけています...

ありがとうございました

4

1 に答える 1