2014-12-18 4 views
3

파이썬을 사용하여 저의 토렌트 응용 프로그램을 개발하려합니다. 몇 가지 조사 후 나는 libtorrent로 가기로 결정하고,이 흥미로운 대답을 발견 : 나는 다른 비슷한 질문 한 답도 발견했습니다다운로드 할 파일의 일부를 선택하십시오.

:

하지만 거기에는 그것을 어떻게 할 지 생각해 보면, 나는 그들이 질문에 링크되어있는 전체 문서를 읽고 이것에 대처하는 방법에 대해서는 전혀 모른다.

나는

  • 어떻게 처음부터 끝까지 다운로드를 시작하기 위해 수 ... 나는 다운로드를 관리 할 수있는 방법을 이해하려고 노력 libtorrent 주위를 찾고 있었어요?

내 목표는 내가 토런트의 임의의 부분을 다운로드하지 않으려는 의미, 다운로드에게 "을 주문 "급류를 시작하는 것입니다, 순간에 사람의 availables, 난에서 다운로드하고 싶습니다 끝까지.

아무도 이걸 시도하고 오른쪽으로 나를 가리킬 수 있다면 libtorrent 설명서는 굉장 할 것입니다 !!!


  • 어떻게 주문한 파일을 다운로드 시작할 수 있을까? ->set_sequential_download()

그러나 어떻게 조각을 기다릴 수 있습니까? 어떻게 libtorrent가 다음 10부터 시작하여 처음 10 개를 기다리도록 설정합니까?

답변

6

순서대로 조각을 다운로드하는 가장 간단한 방법은 해당 토렌트의 torrent_handle에 set_sequential_download() (으)로 전화하는 것입니다. 그것은 조각 0, 1, 2 등으로 시작하는 조각 순서입니다. 주문 파일은 .torrent 파일에 지정된 순서 (즉, 종종 겉으로는 임의의 순서)에 따라 다운로드됩니다. 이 순서대로 libtorrent 요청을 조각을 만들 것입니다

주, 그들은하지 않습니다 반드시 완벽한의 순서. 실제로 원하는 항목이 개의 파일 즉, 재생 중일 때 재생되는 경우 을 완료하려는 경우 순으로 미세한 차이가 있습니다. 스트리밍을 하시려면 set_piece_deadline()을보고 싶으시겠습니까? piece-picking mechanism을 사용하여 조각을 요청하십시오.

+0

답변 해 주셔서 감사합니다. 나는 순차적 인 다운로드에 관해 읽었지 만, 당신이 말했듯이 조각들이 순서대로 다운로드되도록 강요하지는 않는다. 파일이 다운로드되도록하려면'set_piece_deadline()'을 어떻게 사용 하시겠습니까? – AlvaroAV

+0

나중에 다운로드 할 조각의 마감일이 늘어납니다. 예를 들어, 한 장당 1ms 씩 시간 제한을 증가시킬 수 있습니다. – Arvid