2011-08-26 9 views
1

는 사람이 URL에서 비디오 파일에 URL을 얻는 방법을 알고 있습니까 :플래시 플레이어 오브젝티브 -C에서 비디오 파일을 가져

http://vk.com/video_ext.php?oid=6492&id=141771975&hash=a984f2edb68fc4f7

그것은 비디오를 플래시 플레이어를 반환하지만 아이폰은 FLV 형식을 지원하지 않습니다 , 그리고 비디오가 flv 또는 mp4 파일인지 알고 싶습니다. 누군가 온라인으로 flv 비디오를 재생하는 방법을 알고 있다면, 나는 듣고있다 :)

답변

4

HTTP 트래픽 스니퍼/프록시를 사용하여 페이지에서 어떤 파일이로드되는지 확인하십시오. 대부분의 브라우저는 개발자 도구 (예 : 방화 벽의 넷 탭)에 내장되어 있지만, 웹 개발자에게 유용한 다른 많은 기능이있는 Charles을 선호합니다.

찰스를 사용하면 재생을 클릭했을 때로드되는 파일이 http://cs12326.vk.com/u06492/video/ab94044f46.flv 인 것을 볼 수 있습니다.이 파일은 FLV 파일입니다.

편집 : 프로그래밍 방식으로이 작업을 수행하려는 경우 비디오 플레이어 (Flash로 구현 됨) 만 비디오 파일을 검색 할 URL을 알고 있으므로 운이 좋지 않을 수 있습니다. 이 특정 웹 사이트에 대해 리버스 엔지니어링 할 수는 있지만 (아래 참조) 분명히 vk.com의 비디오 및 vk.com의 모든 비디오에 대해서만 작동합니다. 되는 HTML을 보면

내가 정의되는 네 개의 보이는 중요한 자바 스크립트 변수가 있음을 볼 수 있습니다

var video_host = 'http://cs12326.vk.com/'; 
var video_uid = '06492'; 
var video_vtag = 'ab94044f46'; 
var video_no_flv = 0; 

이 값은 동영상 URL에있는, 그래서 그 HTML 텍스트를 분석하여 가정하는 것이 안전 할 수있다 이러한 변수 정의의 경우 URL을 컴파일하는 데 값을 사용하여 파일을 찾을 수 있습니다.

동일한 코드 부분에 정의 된 변수 video_no_flv은 비디오가 FLV 파일인지 여부를 나타냅니다. 이 페이지에서는 0으로 설정되었으므로 FLV 파일임을 의미합니다. 즉, 하위 문자열 video_no_flv에 대한 HTML 텍스트 문자열을 검색하고 다음에 이어지는 = 다음에 정수를 구문 분석하면 비디오 파일이 FLV 파일인지 여부를 알 수 있습니다.

그렇지 않은 경우 MP4/F4V (둘 다 동일한 유형의 MPEG-4 H.264 파일에 대한 다른 접미사 임)라고 가정하는 것이 안전하며 재생할 수 있어야합니다 당신의 아이폰. 이 경우 위에서 언급 한 URL에서 URL을 컴파일하고로드 할 수 있어야합니다.

//Pseudo-code 
url = video_host + video_uid + "/video/" + video_vtag + ".m4v" 

는 해당 사이트에 동영상을 큰 수집을 조사해야합니다, 이건 정말 작동 여부를 평가합니다.

또한이 유형의 리버스 엔지니어링을 통해 얻은 지식을 구현하고 게시 된 컨텍스트 외부의 비디오를 표시하려면 해당 웹 사이트의 서비스 약관을 위반할 수 있으며 행위가 될 수 있습니다 중죄.

+0

iOS SDK로 어떻게 할 수 있습니까? –

+0

오, 미안해. 나는 이것이 결국 프로그래밍 사이트이기 때문에 당신이 원했던 것임을 알아야했습니다. (당신이이 체크를 수행하는 프로그램을 작성하고 싶다는 것을 명시 적으로 밝히지 않았더라도). – richardolsson

+0

질문 제목 : 플래시 플레이어 objective-c에서 비디오 파일 가져 오기 –

관련 문제