2011-07-04 1 views
0

참고로 http://www.subfurther.com/blog/2010/12/13/from-ipod-library-to-pcm-samples-in-far-fewer-steps-than-were-previously-necessary/으로 "http : ///a.mp3"과 같은 URL을 생성하는 AVAssetReader를 얻었으므로 다른 컴퓨터가이 MP3를 다운로드하거나 재생할 수 있습니다 ?아이폰 호스트를 스트림 웹 서버처럼 만드는 방법

+0

, 노래 제목에 대한 메타 데이터를 스트리밍을 구현하는 경우. 나는이 주제에서 intesrested입니다. 고마워, –

+0

파일 웹 서버로 cocoahttpserver를 사용하고 헤더를 추가하여 이제 medis 플레이어에서 m4a 파일을 재생할 수 있습니다.

- (NSDictionary *)httpHeaders { NSString *[email protected]"Content-Type"; NSString *[email protected]"audio/m4a"; return [NSDictionary dictionaryWithObjectsAndKeys:value, key, nil]; }
atu0830

답변

0

당신이 연결을 얻을 때,이 헤더를 쓰기

char * header = "ICY 200 OK\r\n" 
"icy-name:iPhone FM\r\n" 
"icy-url:http://iphone-fm.com/\r\n" 
"content-type:audio/mpeg\r\n" 
"\r\n"; 

단순히 소켓 아래 원시 MP3 데이터를 작성합니다.

mp3를 파일로 또는 라디오로 스트리밍하려는 경우 확실하지 않습니다. 파일 인 경우 콘텐츠 길이를 설정해야합니다. 라디오 스트림으로, 당신은

http://www.smackfu.com/stuff/programming/shoutcast.html

을 확인해야하고, 어쩌면 당신이 코드 예제, 또는이 작업을 수행하는 몇 가지 더 제안을 보여 주 시겠어요 등

+0

감사합니다. 어떤 콘텐츠 유형이 m4a 파일인지 알려주시겠습니까? 난 아이폰 musci이 파일을 변환 할 수 있습니다. 하지만 오디오/mpeg는 mp3 파일을 찾습니다 – atu0830

+0

오디오/aac입니다.하지만 m4a 파일을 스트리밍 할 수 없으면 ADTS AAC 패킷을 스트리밍해야합니다. AVAssetReader에서 패킷을 직접 스트리밍하여 AudioFileReadPacketData를 보거나 (더 나은 방법으로) 모든 중간 단계를 건너 뜁니다. 그리고 새로운 질문을 시작하십시오. –

0

평범하지 않습니다. 물론 아이폰에 완전한 TCP/IP 스택이 있기 때문에 기술적으로 할 수있다. 그러나 서버의 경우 연결하기 전에 주소를 알아야합니다. 나는 이러한 경우에서 수행 본 적이 무엇

이다 : 당신의 APP

    1. 차례 (당신은 아마 WIFI를 통해 연결하기 만 할 수는 현재 주소를 기반으로 연결 URL에보기)
    2. 클라이언트를 사용하여 iPhone 서버에 연결하십시오.

    이것은 매우 사용자 친화적이지 않습니다. 당신은 아이폰의 프록시 서버를 중간에있는 세계의 다른 곳으로 생각할 수 있습니다.

  • +0

    감사하지만 http 요청을 수락하기 위해 asyncsocket을 사용하고 있습니다. 나의 관심사는 음악 파일을 클라이언트에게 스트림 데이터로 보내는 방법이다. – atu0830