2012-01-09 1 views
23

html5 오디오 태그를 jQuery와 함께 사용하는 jPlayer를 사용하여 인터넷 라디오 스 트리머를 개발했으며 지원되지 않는 브라우저에 대해 플래시 폴백을 수행합니다. iPhone에서 플레이어를 테스트하자 (iOS 5.0.1) 우리는 매우 독특한 문제에 부딪 쳤습니다.iPhone HE-AAC 모바일 네트워크 (3G)로 스트리밍

iPhone을 WiFi에 연결하면 HE-AAC V2 스트림 (64kbps 44.1kHz) (Apple 제품의 기본 코덱)을 사용하여 완벽하게 스트리밍됩니다. 그러나 iPhone이 3G 모바일 네트워크에 연결되면 1 ~ 2 분마다 1-2 초 동안 스트리밍을 중단 시키거나 멈 춥니 다 (스트리밍을 완전히 멈추지 않습니다). 문제는 iPhone이 동일한 비트 전송률로 별도의 MP3 스트림을 사용해야 할 때입니다.이 문제는 없으며 3G에서 잘 작동합니다.

UPDATE 5

우리는 최근 3G/4G 스프린트 모바일 핫스팟 장치를 취득 장치와 함께이 문제를 테스트했다. iPhone이 모바일 핫스팟에 연결되면 Wi-Fi 장치에 연결되어있는 것으로 표시되며 실제 연결이 3G/4G를 통해 이루어 지더라도 문제가 렌더링되지 않습니다. 이것은 iPhone이 HTTP 라이브 스트리밍을 통해 HE-AAC를 처리하지 않는 문제와 모바일 네트워크에 직접 연결된 문제를 다시 지적 할 수 있습니다.

UPDATE 4

아이폰 OS 5.1에 아이폰을 업데이트 아직 문제가 지속됩니다.

모바일 네트워크에 연결되어있을 때 제대로 렌더링되지 않는 스크립트의 SO 다양한 문제에 여기 읽기

UPDATE 3. 손가락이 웹 페이지를 게재하기 위해 프록시를 삽입하는 모바일 네트워크 사업자를 가리키는 것처럼 보입니다. 이미지를 축소하는 데 사용됩니다. 또한 일부 자바 스크립트 페이지를 삽입 할 수도 있습니다. 테스트 페이지는 HERE 주를 찾을 수 있습니다 : 그것은 단지 아이폰에서 작동 할 수 있도록이 페이지는 HE-AAC를 사용하고 ... iOS 장비에 대한 애플의 HTTP 라이브 스트리밍 문서에 따르면

UPDATE

, 그 " 오디오 전용 콘텐츠는 ADTS 헤더가있는 AAC 형식 또는 MP3 형식의 MPEG-2 전송 또는 MPEG 기본 오디오 스트림 일 수 있습니다. " 우리 음악 서버는 OddcastV3 인코더를 사용하여 3 가지 스트림 (MP3, HE-AAC V2 및 Oggvorbis)을 icecastV2 서버로 보냅니다. 인코더가 HE-AAC V2 스트림 용 ADTS 헤더를 삽입하고 있는지 확실하지 않습니다. 이것을 확인하는 방법이 있습니까? -보기의 라디오 계획 지점에서 오는

+0

귀하의 비즈니스에 대한 것이지만 귀하에 대한 조언은 SO에 대한 더 많은 평판을 얻고 첫 번째 질문에 대한 현상금을 시작할 수있게되는 것입니다. 당신은 어떤 주제에 대해서만 응답하는 평판을 얻을 수 있습니다. –

+1

iOS 장치 용 Apple의 HTTP 실시간 스트리밍 문서에서 읽습니다. "오디오 전용 콘텐츠는 ADTS 헤더가 포함 된 AAC 형식 또는 MP3 형식의 MPEG-2 전송 또는 MPEG 기본 오디오 스트림 중 하나 일 수 있습니다." 스트림에 ADTS 헤더가 있는지 확실하지 않습니다. 이것이 문제인지 확실하지 않은 경우 ... – RMX

+0

오른쪽에 http://developer.apple.com/resources/http-streaming/ 스트림 확인 도구가 있습니다. 설치 후 다음과 같이 사용하십시오. mediastreamvalidator validate --timeout = 60 http://ssite.com/track.mp3 로그에서 가장 중요한 문제점을 볼 수 있습니다. –

답변

1

여기 내 두 센트 :

당신은 대역폭의 형성과 같은 소리를 묘사하는 어떤

- (3G 네트워크와 같은) 무선 네트워크의 공통 종종 neccesary 디자인 모두이다. 내가 일했던 대부분의 3G 사업자는 일반적으로 고속 버스트 (이미지 다운로드, 전자 메일 보내기 또는 HTML 페이지 가져 오기)를 수행하기 위해 네트워크를 최적화합니다. "장기 실행"고 대역폭 서비스를 통해. 이것은 대부분의 사용자가 원하거나 필요로하는 단순한 사실 때문입니다.

일반적인 3GPP (GSM 3G) 네트워크에서이 쉐이핑을 수행하면 384kbit를 지원하는 RAB (무선 액세스 베어러)를 얻은 다음 장치에서 허용하는 한 다운 그레이드됩니다. 이것은 typicall이 384 -> 256 -> 128으로 전환 한 다음 64kbit에서 데이터 수신을 천천히 시작한 다음 네트워크가이를 업그레이드하고 잠시 후에 다시 다운 그레이드한다는 것을 의미합니다.

그렇다면 왜 MP3 파일이 더듬 거리지 않습니까? 내 생각에 총 kbit 속도가 다를 수 있습니다 - 그래서 당신은 64kbit RAB 괜찮아요. 이것은 일반적인 현상입니다.

+0

당신은 "총 크기가 다를 수 있습니다"라고 말하지만 스트리밍 라디오 방송국이며 MP3 또는 HE-AAC 여부에 관계없이 특정 크기의 파일을 다운로드하지 않으므로 총 크기가 없습니다. – RMX

+0

죄송합니다 - 저는 "총 kbit rate"을 의미했습니다. 내 대답을 업데이트했습니다. 네트워크 스눕을 했습니까 (시뮬레이터에서 intstruments를 사용하여 쉽게 수행 할 수 있습니다) – Magnus

+0

네트워크 스눕을 수행하지 않았습니다. 그게 뭔지도 몰라! lol – RMX

0

우리는 똑같은 일을 할 수있었습니다. 64kbit AAC-v2 모바일 장치 우리는 파일을 스트리밍하지 않고 꾸준한 스트림이 아니라고 생각합니다. 네트워크가 어떻게 트래픽을 우선 처리하는지 설명 할 때 Magnus가 맞다고 생각합니다. 우리의 경우에는 파일의 상당 부분을 즉시 처리 할 수 ​​있으며 플레이어는 다음 번에 계속 재생할 수 있습니다. 귀하의 경우에는 다음 번 폭발이 발생할 때까지 스트림이 일시 중지되었음을 의미합니다.

스트리밍 (큰 버퍼)에서 더 큰 청크로 전환하거나 전체 파일을 스트리밍 할 수 있습니까?

우리는 iOS에서 매우 이상한 현상이 발생했습니다. 우리는 .m4a에서 .aac으로 모든 파일의 이름을 iOS에서 스트리밍 할 수 있도록 변경해야했습니다. 우리가 그들을 개명하지 않으면 iOS는 그들을 놀리지 않을 것입니다.

행운을 빈다.

+0

입력 해 주셔서 감사합니다. 불행히도 우리는 하루 24 시간 꾸준히 흐르는 인터넷 라디오 방송국 용으로 제작 된 전체 파일을 스트리밍 할 수 없습니다. 또한이 앱이 아닌 iOS 용 HTTP 실시간 스트리밍 (모바일 Safari를 통해 직접 전송)을 사용하여 스트리밍하므로 버퍼링을 제어 할 수 없습니다. 나는 여전히 전체 무선 문제에 대해 매우 혼란 스럽다. 이 문제가 여전히 128k AAC-V2에서 발생한다는 사실은 라디오 설명을 무효화하지 않습니까? 또한 MP3가 64kbps에서 잘 작동한다는 사실 ...이 점에 대한 통찰력은 우리가이 문제를 해결하는 데 도움이 될 수 있습니다. 다시 한 번 감사드립니다. – RMX