![3개의 라이브 오디오 스트림을 하나의 라이브 오디오 스트림으로 결합](https://rvso.com/image/1438655/3%EA%B0%9C%EC%9D%98%20%EB%9D%BC%EC%9D%B4%EB%B8%8C%20%EC%98%A4%EB%94%94%EC%98%A4%20%EC%8A%A4%ED%8A%B8%EB%A6%BC%EC%9D%84%20%ED%95%98%EB%82%98%EC%9D%98%20%EB%9D%BC%EC%9D%B4%EB%B8%8C%20%EC%98%A4%EB%94%94%EC%98%A4%20%EC%8A%A4%ED%8A%B8%EB%A6%BC%EC%9C%BC%EB%A1%9C%20%EA%B2%B0%ED%95%A9.png)
하나의 결합된 오디오 스트림으로 재방송하려는 세 개의 라이브 오디오 피드가 있습니다. 이 세 가지 라이브 오디오 피드를 동시에 듣고 싶지만 집 연결은 월별 데이터로 제한되므로 하나의 소스에서만 스트리밍하는 것이 좋습니다. 그렇기 때문에 외부 서버의 피드 하나를 대신 사용하고 싶습니다.
이를 달성하기 위해 ffmpeg와 같은 것을 사용할 수 있습니까, 아니면 그보다 더 복잡합니까?
다양한 형식으로 라이브 오디오 피드를 얻을 수 있습니다. 스트리밍을 지원하는 것은 Windows Media Player, Real Player, iTunes, Winamp, Web Player 및 Java Web Player이므로 지원되는 피드 유형을 얻는 것은 문제가 되지 않습니다.
다음은 두 가지 피드의 예입니다.
http://audio2.radioreference.com/342138428
http://audio7.radioreference.com/333108723
나는 이것을 하나의 피드로 만들고 싶습니다.http://example.com/radiostream그리고 나는 스트림을 가질 것입니다. 피드는 현재 MPEG 형식이므로 정확히 동일한 코덱으로 다시 출력해도 괜찮습니다.
답변1
두 채널을 혼합하는 것은 쉽지 않습니다. 다음은 필터를 사용하여 두 채널을 혼합하고 500초 동안 파일을 녹음하는 테스트입니다 amix
.
ffmpeg -i http://audio2.radioreference.com/342138428 -i http://audio7.radioreference.com/333108723 -filter_complex amix=inputs=2 -t 500 a.mp3
amerge
이는 채널 레이아웃(왼쪽, 오른쪽, 중앙 등)에 따라 달라지는 필터 보다 간단합니다 . 따라서 이 방법도 효과가 있었지만 채널이 거의 패닝되었습니다.
ffmpeg -i http://audio2.radioreference.com/342138428 -i http://audio7.radioreference.com/333108723 -filter_complex amerge=inputs=2 -t 500 a.mp3
스트리밍:
ffmpeg는 두 가지 방법으로 스트리밍할 수 있습니다.
- 곧장
- icecast와 같은 다른 서버로
보다이 가이드상세 사항은.
소스 비밀번호가 "hackme"(기본값)이고 포트 8000(기본값)이 포트 중 하나로 설정된 icecast를 사용하면 다음을 사용하여 실행됩니다.
icecast -c /usr/local/etc/icecast.xml
물론 당신의 것은 다음과 같습니다:
icecast -c /path/to/your/icecast.xml
그런 다음 를 사용하여 amerge
icecast에 공급합니다.
ffmpeg -i http://audio2.radioreference.com/342138428 -i http://audio7.radioreference.com/333108723 -filter_complex amerge=inputs=2 -f mp3 icecast://source:hackme@localhost:8000/radio
VLC를 열고 스트림에 연결하십시오.http://192.168.1.128:8000/라디오(이것은 내가 지정한 IP입니다. localhost:8000/radio를 사용할 수 있습니다).
2개의 스트림을 들을 수 있습니다. amix가 아닌 amerge를 사용하면 2개의 스트림이 왼쪽에서 오른쪽으로 패닝되므로 쉽게 구별할 수 있습니다.
3개의 스트림을 혼합하려면 다음 amix
필터를 사용하십시오.
ffmpeg -i http://audio2.radioreference.com/342138428 -i http://audio7.radioreference.com/333108723 -i <third stream> -filter_complex amix=inputs=3 -f mp3 icecast://source:hackme@localhost:8000/radio