제가 바이브 코딩으로 하기와 같이 라디오 재생 사이트를 만들었습니다.
https://worldwide-radio.vercel.app/
그런데,
해당 방송을 선택하면 음악이 재생되는 것도 있고
대부분이 재생이 되 질 않습니다.
그래서 하기와 같은 사이트를 보면,
대부분 음악이 재생이 잘 됩니다.
제가 만든 웹앱은 바이브코딩으로 웹서치를 통해 해당 방송 선택 시
서치된 url 을 audio 소스로 play 하는 구조입니다.
그런데 재생이 되지 않는 것은 audio 소스의 url link가 잘못된 것 같은데요.
그런데 또 제가 참고한 위 사이트는
웹브라우저 개발자 모드로 보면 media 부분에 aac 또는 m3u8 확장자의 url이
여러 개 보입니다.
즉, 제가 만든 것처럼 단순하게 url이 정해져있지 않은 걸로 보여서요.
즉, radio 앱이나 웹은 어떤 방식으로 audio source의 url link을 얻어 오게 되는지 문의드립니다.
[실시간 스트리밍]
라디오가 인터넷으로 스트리밍이 되는 원리는 말 그대로 라디오 오디오 신호를 실시간으로 온라인으로 제공하는겁니다.
오디오를 실시간으로 스트리밍하는 여러 방법이 있는데, 보통 rtsp 나 m3u(m3u8) 를 많이 사용합니다.
웹이나 iOS에서 무리없이 재생을 하려면 m3u 이어야하기 때문에 보통 이 형태로 많이 서비스 하죠.
m3u 는 보통 일정 시간(보통 10초) 단위로 오디오 파일을 쪼개고, 그 파일들의 목록화해서 만들어둔 파일입니다.
3분짜리 음악을 10초단위로 쪼개면 18개가 나오겠죠? 그걸 순서대로 나열한게 m3u 파일입니다.
길이가 긴 음원의 경우 전체를 내려받지 않고 중간부터 재생을 위해서도 사용하고,
3분 뒤에 10초씩 추가로 계속 붙이면서 실시간 스트리밍을 하는 방법으로도 사용합니다.
플레이어에선 m3u 파일을 주기적으로 계속 불러오면서, 뒤에 새로운 파일이 추가되면 그 오디오를 이어서 재생하는 식인거죠.
[온라인 라디오]
특정 방송을 라디오 전파가 아니라 온라인 상에 rtsp 혹은 m3u 로 방송하고 있으면 그걸 앱 등으로 재생할 수 있겠죠?
라디오란건 기본적으로 라디오 전파를 타고 방송되는 매체이기 때문에, 항상 온라인으로 스트리밍되는건 아닙니다.
방송사가 직접 스트리밍을 할 수도 있고, 제3자가 라디오 전파를 수신한 다음 그걸 변환해서 온라인으로 제공하고 있을 수도 있습니다.
또한 그 제공을 할 때 그냥 공개적으로 할 수도, 회원가입한 사람만 일수도, 돈을 낸 사람만 들을 수 있게 제공하고 있을 수도 있겠네요.
그래서 같은 방송에 주소가 없을 수도, 하나일 수도, 여러개일 수도 있습니다. 각각의 안정성이나 퀄리티도 제각각이겠네요.
정해진 방송 url 은 당연히 없는겁니다. ai 가 뱉어낸 url 들은 인터넷에서 공개된 주소가 수집되었거나, 과거의 주소이거나, 그냥 ai가 자기 맘대로 만들어낸 주소입니다.
[주소를 가져오는 방법]
그래서 작동하는 실시간 주소를 가져오기 위해선 ai에 물어볼게 아니라, 직접 라디오를 수신하시고 변환하는 장치를 운영하시거나, 각 방송마다 온라인으로 제공되는 스트리밍 주소를 직접 찾아 모으셔야 합니다.
그 주소가 고정적이란 법도 없고, 듣기 위해 로그인 등의 인증이 필요하거나 주기적으로 변경될 수도 있습니다.
ai가 해줄 수도 있겠지만, 이런 작업은 아직은 사람이 보고 찾거나 경우에 따라선 해당 사이트를 역분석해가면서 찾아야합니다.
주소를 제공하는 사람 마음이고, 스트리밍 서비스를 유지 운영하는데도 비용이 들기 때문에, 무단으로 가져가서 사용하는걸 당연히 좋아하지 않을겁니다.
[법적 리스크]
방송사 공식 주소를 가져오던, 다른 사람이 라디오 수신해서 재송출하는 주소를 가져오던, 직접 전파를 받아서 제공하던 모두 법적인 리스크가 있습니다.
간단하게 예시를 들면, 노래가 방송되고 있는 라디오가 펭귄님이 제공하는 서비스에서 재생되고 있으면 펭귄님은 해당 음원에 대해 복제,전송을 하고 있는거라 저작권료를 지불해야할 책임이 발생하게 됩니다. 하지만 돈을 안내시고 계시죠? 불법이 됩니다.
이게 노래 뿐만이 아니라 그냥 라디오 방송도 저작권을 당연히 방송국에서 가지고 있기 때문에 문제가 되고, 하다못해 광고를 재전송하는 것도 문제가 될 수 있습니다.
참고로 위에서 말한 타 사이트를 역분석하여 주소를 가져와서 제공하는 경우 역시 국내법상 불법입니다.
그래서 재생기 기능만 제공하고 방송 주소는 직접 입력하게 제공하면서 커뮤니티 등에 우회적으로 주소를 뿌리기도 합니다.
[그래서 다른 앱들은?]
공식 방송이거나, 재송출 계약을 했거나(무료든 유료든), 해외는 관련 법이 다르거나, 해외에 있어 고발이 어렵거나, 위에 말했듯 주소 입력 자체는 사용자에게 맡기는 구조 등으로 돌아갑니다.
그런 문제가 해결된 채로 공개되어 있어도, 그 url 을 펭귄님이 다시 수집해서 다른 사람에게 제공을 하는건 또 다른 문제라 이 역시 불법이 될 수 있습니다
실제로 문제가 되는 경우가 많진 않겠지만,, 기본적으론 작동하는 라디오 url 을 정상 제공할 방법이 없으니 그냥 혼자 들으시는게 맞습니다
수신칩달린 폰이 몇없어서 그냥 안했어요.
세이클럽의 일부 유저가 전파라디오를 수신해서 자신의 세이클럽 방송국(세이캐스트)에서 송출을 하곤 했습니다.
당시 세이클럽 방송용 url(m3u 또는 m3u8)은 공개되어 있었고 foobar나 알송, 윈앰프등으로 해당 방송을 들을 수 있었고 웹상에서도 들을 수 있었습니다.
그러나 음원에 대한 무단 복제&재송출에 대한 철퇴가 시작되고 나서, 세이클럽 방송국에서 라디오를 송출 하던 사람들이 사라졌습니다.
그렇게 글쓴이님이 구현하려는 웹라디오의 시초(?)가 20년전에 황금기를 맞이하고 역사속으로 사라졌습니다.