Как-то раз на­т­кнул­ся я на об­са­сы­ва­е­мый то­пик на ха­бре о соф­те под на­зва­ни­ем Torrent Stream. За па­фосны­ми фразоч­ка­ми "луч­шие и за­ре­ко­мен­до­вав­шие се­бя про­грамм­ные раз­ра­ботки ав­то­ри­тет­ных учре­жде­ний и ко­манд раз­ра­бот­чи­ков со всего ми­ра и ко­то­ро­му по функ­ци­о­наль­ным и экс­плу­а­та­ци­он­ным воз­мож­но­стям, на сего­дняш­ний день, нет рав­ных в ми­ре" скры­вал­ся лег­ко­уло­ви­мый смысл: дан­ное ПО да­ва­ло воз­мож­ность смот­реть ви­део с тор­рен­тов не до­жи­да­ясь их пол­ной за­груз­ки. Как раз это мне и бы­ло нуж­но, вот толь­ко ока­за­лось, что тех­ни­че­ская ре­а­ли­за­ция немного при­хра­мы­ва­ет: все бы­ло ре­а­ли­зо­ва­но в ви­де пла­ги­на к брау­зе­ру, все ужас­но тор­мо­зи­ло и файл с то­го же лост­филь­ма и огром­ным ко­ли­че­ством пи­ров сл­вал­ся очень не­спеш­но, переоди­че­ски под­ви­сая на "бу­фе­ри­за­цию". Вот поэто­му я и на­пи­сал свой пле­ер ви­део-файлов с тор­рен­та с цы­га­на­ми и па­сьян­сом. Про­шу лю­бить и жа­ло­вать: Torrero Movie Stream Player. Ну или про­сто Torrero.

Ко­му лень чи­тать дальше - большая ссыл­ка ска­чать (с ав­тооб­нов­ле­ни­ем и плюш­ка­ми)

А для осталь­ных, про­дол­жим. Как все­гда, спер­ва тех­ни­че­ская часть. На­пи­са­но при­ло­же­ние на С# и WinForms в Visual C# 2010 Express под .NET 3,5. По­че­му не WPF? Все очень про­сто, WPF контрол­сы не име­ют сво­е­го соб­ствен­но­го window handle, что бы­ло необ­хо­ди­мо для встра­и­ва­ния mplayer-а в ок­но фор­мы. Пе­ре­про­бы­вал сот­ни ва­ри­нан­тов, но мак­си­мум что уда­лось по­лу­чать, это handle ок­на, а ну­жен был hwnd па­не­ли или тек­с­тлей­бла. Ну, во­об­щем, та­кая ка­ни­тель. В ка­че­стве Torrent биб­лио­те­ки был вы­бран ве­ло­си­пед MonoTorrent, ко­то­рый про­сто бо­же­ствен­ный. Под­держ­ка на фо­ру­ме и уро­вень воз­мож­но­стей поз­во­ля­ет пи­сать все: на­чи­ная обыч­ным пар­се­ром тор­рент файлов и за­кан­чи­вая соб­ствен­ным тре­ке­ром. Едист­вен­ная пробле­ма, это прак­ти­че­ски пол­ное от­сут­ствие до­ку­мен­та­ции. При­хо­дит­ся ко­пать­ся в ис­ход­ни­ках, благо они от­лич­но ком­мен­ти­ро­ван­ны. Пле­е­ром был вы­бран MPlayer по сле­ду­ю­щим при­чи­нам: воз­мож­ность встра­и­ва­ния без activex и про­чих фин­тов уша­ми, как у VLC напри­мер, не­большой раз­мер и встроен­ные де­ко­де­ры, воз­мож­ность проигры­ва­ния недо­ка­чан­ных файлов.

Па­роч­ка от­ве­тов на па­роч­ку во­про­сов. Все это бу­дет бес­плат­но? Ра­зу­ме­ет­ся и да­же opensource. Вот толь­ко вто­рое бу­дет чуть позднее, в на­сто­я­щее вре­мя код ужа­сен, не­ко­мен­ти­ро­ван и за­хлам­лен му­со­ром. По­сле па­роч­ки ре­фак­то­рин­гов открою для ано­ним­ного до­сту­па svn проек­та. По­че­му Torrero, что это зна­чит? Зна­чит это произ­вод­ное от сло­ва torero, ма­та­дор. По­че­му? Ну не знаю, хо­те­лось при­сут­ствия в на­зва­нии че­го-то по­хо­же­го на Torrent. Изна­чаль­ная вер­сия "torrantino", по­лу­чен­ная объеди­не­ни­ем Torrent + Tarantion ока­за­лась уже за­би­та. Бу­дет ли дальше раз­ви­вать­ся проект, а что что-то все виснет и ла­га­ет? Да, ра­зу­ме­ет­ся, пла­нов мо­ре. Это и пере­де­лать ин­тер­фейс, и сде­лать под­держ­ку проигры­ва­ния несколь­ких файлов в тор­рен­те, и еще ку­ча всего, вот толь­ко вре­ме­ни у ме­ня в об­рез, но в ско­ро­сти по­явит­ся отдель­ная стра­ни­ца, где мож­но бу­дет смот­реть change-лог, пла­ны раз­ви­тия и узна­вать об об­нов­ле­ни­ях.

Если вы на­шли ошиб­ку или хо­ти­те по­лу­чить ис­ход­ни­ки не­медлен­но, пи­ши­те мне в твит­тер @middlesizetit ли­бо же на по­чту mail@smirnoff.sumy.ua. Обя­за­тель­но от­ве­чу всем же­ла­ю­щим.