Перейти к содержимому


!!! Только у нас на форуме !!!
Спектакли от дяди Пчёлки

для просмотра необходима регистрация
Фотография
- - - - -

Поля в Canopus Procoder 3


  • Please log in to reply
28 ответов в этой теме

#1 SONIIR

SONIIR
  • Участник
  • 10 Сообщений:

Отправлено 29 апр 2008 - 10:40

Прошу сильно не бейте, я любитель, может это уже обсуждалось, но поиск не помог.

Раньше пользовался версией 2 и вроде проблем не возникало.
Загонял по 1394 UMS или Premier с олями Lower
Далее редактирование и вывод в avi с полями Lower
Далее в Canopus Source - Lower Target - Lower (stream format - DVD (MPEG Program/Elementary Stream)

Поставил Canopus 3 и обнаружил что при выборе stream format - DVD (MPEG Program/Elementary Stream
Target позволяет ставиль только в Upper хотя Source определяет Lower????

Как правильно поступать в данном случае.
  • 0

#2 Ancle Fedor

Ancle Fedor
  • Модераторы
  • 5 150 Сообщений:

Отправлено 29 апр 2008 - 12:11

В закладке Target - Stream Format установи Generic ISO MPEG Stream.
И будет выбор полей... можно установить и noninterlaced, и размер кадра и т.п. Не забудь при этом проверить размер кадра - он всегда, когда Generic ISO MPEG Stream выбираешь, в 720х480 сам переключается.
Лучше не пользоваться стандартными пресетами, а сохранить как свой пресет.
Пока.
Олег.
  • 0

#3 SONIIR

SONIIR
  • Участник
  • 10 Сообщений:

Отправлено 29 апр 2008 - 12:32

Ну я так собственно и думал.
А что будет если оставить target - upper при source - lower ?
  • 0

#4 Serg Falkon

Serg Falkon
  • Модераторы
  • 1 533 Сообщений:

Отправлено 29 апр 2008 - 12:56

что будет если оставить target - upper при source - lower
Страшного - ничего. Для исходника DV-PAL, например, или MPEG2, будет пренебрежимо малые (доп. по сравнению с Lower в Target) потери из-за того, что Procoder меняет порядок полей простой обрезкой 1 строки сверху и добавлением 1 снизу. Т.к. у DV-pal и MPEG2 (Main Profile@Main Level) формат 4:2:0 (т.е. цветность пикселей одинаковая у каждой пары строк поля(полукадра) - у соответствующих пикселей 1 и 2 строки, 3 и 4, 5 и 6 и т.д.). Если не сдвигаем поле на 1 строку, пересчет цветности не производится, если сдвинули (чтобы сменить порядок полей) - будет производится дополнительная интерполяция.
Если DV-NTSC кодируем - там формат 4:1:1 - цветность пикселей в каждой строке своя (но по горизонтали по 4 пикселя имеют одну цветность).

Но, повторю, потери пренебрежимы.
  • 0

#5 SONIIR

SONIIR
  • Участник
  • 10 Сообщений:

Отправлено 29 апр 2008 - 13:00

ОК.
Всем спасибо.
  • 0

#6 Маклауд

Маклауд
  • Модератор
  • 1 908 Сообщений:

Отправлено 01 мая 2008 - 22:49

Procoder меняет порядок полей простой обрезкой 1 строки сверху и добавлением 1 снизу.

Уже не первый раз встречаю такое описание смены порядка полей Procoder-ом А откуда это взято? Есть где-то в документации Прокодера или каким-то тестом выявлено?
Просто никак не пойму зачем вобще какой-то СДВИГ с удалением и добавлением (вобще странно) строки.
Строки в интерлейсном видео создают полукадры. Полукадры следуют друг за другом. Порядок следования полукадров (полей) в ФАЙЛЕ прописан в его заголовке. Так зачем же что-то сдвигать, когда требуется просто закодированые поля расположить в файле в другом порядке и указать это в заголовке файла, что мол первое поле в этом файле нижнее (или верхнее). Из-за несоответствия заголовка и реального следования полей в файле и бывает эффект перепутаных полей. Плеер считывает заголовок и согласно ему выводит поля в указаной там очерёдности, а они оказываются фактически записаны в другой. Например, всем известная утилитка Restream меняет очерёдность полей в файле за две секунды. Она же ничего не сдвигает и не добавляет, а просто изменяет заголовок файла. Всего и делов-то.
Для телевизора всегда требуется первое верхнее поле и для DVD-Video в своё время был принят такой стандарт. Первые плееры только так и работали. Современные же проигрыватели считывая заголовок выводят либо как есть либо меняя очерёдность вывода полей, чтобы первым всегда шло верхнее. Опять же основываясь на данных из заголовка файла.
Возвращаясь к тому, что полукадры (поля) следуют друг за другом - тоесть сначала все строки одного поля, а потом опят же все строки другого, а не чередуясь строками, представляется очень просто закодировать поля по-очереди и записать в файл без каких либо удалений/сдвигов/добавлений строк. Зачем?
Мне вот так вот представляется ...

Сообщение отредактировано Маклауд: 01 мая 2008 - 23:31

  • 0

#7 Serg Falkon

Serg Falkon
  • Модераторы
  • 1 533 Сообщений:

Отправлено 02 мая 2008 - 10:22

Уже не первый раз встречаю такое описание смены порядка полей Procoder-ом А откуда это взято?
Сравнением кадра исходного видео и закодированного в Procoder'е со сменой полей. Например, в программе Elecard Video Quality Estimator при вычислении количественных хар-к отличия двух видео. Там специально есть возможность задать сдвиг одного видео на нужное число строк.

следования полукадров (полей) в ФАЙЛЕ прописан в его заголовке
В DV-avi - нет , не прописан. Как и в любом avi.

Для телевизора всегда требуется первое верхнее поле
Нет. Какая ему разница? Если имеется в виду ЭЛТ телевизор - для него даже понятие "кадр" смысла не имеет. Он отображает последовательность полей. И с какого начинать ему - без разницы.

Например, всем известная утилитка Restream меняет очерёдность полей в файле за две секунды
Очередность вывода. А не в файле.

Возвращаясь к тому, что полукадры (поля) следуют друг за другом - тоесть сначала все строки одного поля, а потом опят же все строки другого, а не чередуясь строками, представляется очень просто закодировать поля по-очереди и записать в файл без каких либо удалений/сдвигов/добавлений строк
Если надо, чтобы порядок вывода полей в закодированном файле совпадал с порядком полей исходника - так и делается :blush:
А если надо (по какой-то причине) наоборот сделать - у исходника BFF, а у MPEG2 - TFF? Закодировали первое (нижнее) поле исходника, затем следующее (по времени) - верхнее и т.д. А выводить MPEG2 надо с верхнего. Как поступать по-твоему надо? Выводить верхнее первым (ничего не меняя при кодировании) - будет дерготня. Вот и меняют порядок полей (во времени) обрезкой строки.
Можно еще, кстати, выкидыванием первого поля (и последнего, чтобы целое число кадров осталось) в исходнике. Некоторые и так поступают.

Так зачем же что-то сдвигать, когда требуется просто закодированые поля расположить в файле в другом порядке
Как? Поменяв их местами - ты поменяешь их и в пространстве. Будет жуть вообще.
  • 0

#8 Маклауд

Маклауд
  • Модератор
  • 1 908 Сообщений:

Отправлено 02 мая 2008 - 10:50

Ну, вот сейчас сидел ... чертил ... рисовал ... пытался представить, вобщем.
Пожалуй, что да, не выходит так ...
Ну, я собственно потому и спросил "как это работает". :blush:
Прблем с полями я не имел и как они там формируются при их смене особо не интересовало. Представлял так. Но - будем знать теперь.
  • 0

#9 Serg Falkon

Serg Falkon
  • Модераторы
  • 1 533 Сообщений:

Отправлено 02 мая 2008 - 11:04

Кстати, не только Procoder так делает. В ССЕ точно также меняется порядок полей. Там эта опция прямо и называется "Offset Line", т.е. Сдвиг строки.
  • 0

#10 newsky

newsky
  • Участник
  • 42 Сообщений:

Отправлено 04 окт 2008 - 03:16

Так в итоге, нужно, или нет, вручную менять НА нижнее первое (исходник с DV камеры захваченный в Scenalizer) в пресете DVD PAL в котором автоматом устанавливается верхнее первое? Закодировал с этим пресетом (верхнее первое (а исходник напомню нижнее первое) и на ТВ "стробоскоп" :(
  • 0

#11 BorisB

BorisB
  • Участник
  • 355 Сообщений:

Отправлено 04 окт 2008 - 16:16

Запиши RW да проверь, в чём проблема то.
  • 0

#12 Serg Falkon

Serg Falkon
  • Модераторы
  • 1 533 Сообщений:

Отправлено 04 окт 2008 - 18:21

Закодировал с этим пресетом (верхнее первое (а исходник напомню нижнее первое) и на ТВ "стробоскоп"
С обычного DVD-плеера крутилось?
Странно. Если в Source правильно стоит Lower, то в Target без особой разницы что.
У меня ни разу не было подобного, хотя с DV камеры всегда с верхним-первым в Target делаю.
  • 0

#13 newsky

newsky
  • Участник
  • 42 Сообщений:

Отправлено 05 окт 2008 - 00:28

Запиши RW да проверь, в чём проблема то.

Проблему, я вроде бы описал :( страбоскоп. Естественно, записал на болванку, естественно с обычного, бытового DVD пускаю. В том и проблема и вопрос был. Если иходник нижнее первое, а тарджет верхнее, не из за этого ли страбоскоп?

Но кажется понял я в чем мой косяк... (этож надо, до сих я про это не знал....)
Цитата из этого форума из соседней темы:

Первая проблема это тривиальная ошибка (которую вы никогда не сделаете, зная особенности чересстрочной развертки) – изменение размеров кадра без предварительного диентерлейса, что приводит к тому, что я назвал не настоящей чересстрочностью


Рипал VHS через DV камеру, Ависинтом пикселей наотрезал с мусором по краям кадра, а на выходе ресайз до нужных 720х576, открываю в Дубе, вычищаю шум, и обратно в DV (avi), ну и в Канопус... и итог страбоскоп. (Справедливости ради, далее, в описании, о том, что будет если ресайзить без предварительного деинтерлейса сказано:)

получен изменением размеров исходного кадра, на нем так же видна "гребенка", но она уже ре раскладывается по полям, информация из разных полей была смешана при изменении размеров. Если такое видео теперь подать на телевизор "гребенка" будет заметна и на нем. Применение фильтра деинтерлейса (фрагмент 3) так же не даст хороших результатов по той же причине смешивания полей. При более быстром движении в кадре картинка будет еще страшнее

Сказано, что гребенка, а у меня то "страбоскоп" на динамичных сценах. Может все же не в этом дело? Подскажите, как правильно сделать? Напомню, файл с DV камеры (рип VHS через "сквозной канал") затем нужно обрезать мусор и очистить от шума, потом закодировать в MPEG2, потом в Архитект и смотреть все это на бытовом DVD (я к тому, что прогрессив собственно и не нужен). Спасибо.
  • 0

#14 mirror

mirror
  • Validating
  • 2 241 Сообщений:

Отправлено 05 окт 2008 - 00:43

Просто поразительно! :(
Я уж было хотел сказать что поля выходного файла, а также при обработке, должны совпадать с исходником и тогда никакого стробоскопа не будет. Опираясь на информацию из поста #10.
А на деле, оказывается, поизмывались над картинкой и теперь удивляются откуда строб.
  • 0

#15 newsky

newsky
  • Участник
  • 42 Сообщений:

Отправлено 05 окт 2008 - 01:58

Просто поразительно! :(
Я уж было хотел сказать что поля выходного файла, а также при обработке, должны совпадать с исходником и тогда никакого стробоскопа не будет. Опираясь на информацию из поста #10.
А на деле, оказывается, поизмывались над картинкой и теперь удивляются откуда строб.

Ну, ладно, ладно Вам :) Посыпаю голову пеплом. Но все же... теперь я знаю, нельзя "отрезать" и затем ресайзить интерлейсное видео, но все же, гребенка и строб это разные вещи. Из "мануала" я понял, что у меня то должна переть гребенка и на ТВ и везде, но ее нет, а строб есть (причем во первых, хоть и не сильный (реально не сильный) и по крайней мере, видимый ТОЛЬКО на ТВ, на мониторе, что и удивило, его не видно), это ТОЧНО следствие отрезания и ресайза? И самое главное, как тогда правильно обработать "сырой", "корявый" (с мусором по всем сторонам) DV файл, что бы и поля не убить (не смешать) и может стоит (тем же Дубом) "перевернуть " и сделать таки верхнее первым, что бы в дальнейшем не нарушался стандарт DVD Как не "измываться" над картинкой?
  • 0

#16 mirror

mirror
  • Validating
  • 2 241 Сообщений:

Отправлено 05 окт 2008 - 13:18

1. Не надо воевать с "мусором" :), на телевизоре его всё равно видно не будет.
2. Исходник загоняем в монтажку, редактируем и выгоняем с теми же параметрами через ProCoder
3. В Архитекторе тоже не забываем в свойствах проекта выставлять параметры исходника.
И тогда никакого строба не будет.

Если так напрягает "мусор" и планируется смотреть на компе, то его можно закрыть рамкой в монтажке, когда будете выгонять фильм в файл или сразу кодить в MPEG2 через фреймсервер в Прокодере. Но не советую, любое пережатие отрицательно сказывается на качестве, да и лишняя потеря времени.
  • 0

#17 Маклауд

Маклауд
  • Модератор
  • 1 908 Сообщений:

Отправлено 05 окт 2008 - 16:49

Я просто в ПроКодере при сжатии ставлю фильтр заливки чёрным "мусора" по краям кадра без всякого ресайза изображения.
  • 0

#18 newsky

newsky
  • Участник
  • 42 Сообщений:

Отправлено 05 окт 2008 - 18:26

Большое спасибо за ответы! Хорошо, с обрезкой мусора всё понял... но не понял сути основного вопроса.
Если файл DV и у него нижнее поле первое, а в Канопусе, при загрузке такого файла и при выборе таргета DVD PAL по умолчанию прописывается верхнее поле первое.
1) Это нормально? То есть: Канопус, что, корректно приводит поля к стандарту и меняет нижнее на верхнее "правильно", то есть не путает поля, а корректно переводит из правильного с нижним поле в правильное верхнее?
2) Если не правильно, в таргете иметь верхнее первое при исходнике с нижним верхним и произойдет путаница полей, и как следствие стробоскоп, какого тогда лешего, Канопус не оставляет данные из исходника, а более того, "простым" способом не дает руками сменить значение полей?
3) В конце концов, скажите одним словом: если исходник с нижним первым, НУЖНО в таргете для DVD PAL менять значение? Да или Нет?

Еще раз, спасибо за ответы.
  • 0

#19 mirror

mirror
  • Validating
  • 2 241 Сообщений:

Отправлено 05 окт 2008 - 21:03

Как-то все три пункта по одному вопросу. :)
Вот совсем недавно Ancle Fedor объяснял как делать. Раньше в Прокодере можно было в шаблонах по-умолчанию выставлять поля, сейчас почему-то разработчик посчитал это не обязательно. Поэтому выбираем "таргет" MPEG2 и там выставляем как надо. ProCoder тоже может намутить с полями, поэтому выставляем согласно исходника.

Сообщение отредактировано mirror: 05 окт 2008 - 21:05

  • 0

#20 Маклауд

Маклауд
  • Модератор
  • 1 908 Сообщений:

Отправлено 05 окт 2008 - 22:51

Главное, чтобы правильно был указан порядок полей для источника. В Target можно ставить что угодно - всё будет правильно конвертировано.
По стандарту DVD-Video первое поле должно быть верхним и под этот стандарт выпускались "старые" плееры. Новым же моделям пофигу какое поле в файле у вас идёт первым. Можете оставить стандартное верхнее, а можете выставить и первое нижнее. При этом можно сохранить такой пресет для использования его в дальнейшем.
Я считаю, что лучше, всё таки, оставлять порядок полей как в исходнике для уменьшения всяких преобразований и кодирую с первым нижним.
  • 0

#21 Serg Falkon

Serg Falkon
  • Модераторы
  • 1 533 Сообщений:

Отправлено 06 окт 2008 - 09:47

теперь я знаю, нельзя "отрезать" и затем ресайзить интерлейсное видео, но все же, гребенка и строб это разные вещи. Из "мануала" я понял, что у меня то должна переть гребенка и на ТВ и везде, но ее нет, а строб есть

Если корректно (по полям) сделать ресайз кропнутого видео - "расчески" не будет.
Но, если СВЕРХУ отрезать НЕЧЕТНОЕ число строк - поменяется порядок полей. Я писАл, кстати, выше об этом. Так стандартно и Procoder и ССЕ (да и многие другие кодировщики) меняют порядок полей исходника перед кодированием - обрезают сверху одну строку (и добавляют одну снизу, чтобы размер сохранить).
А насчет Target - подтвержу - по-барабану нынче.
  • 0

#22 newsky

newsky
  • Участник
  • 42 Сообщений:

Отправлено 06 окт 2008 - 17:35

Если корректно (по полям) сделать ресайз кропнутого видео - "расчески" не будет.
Но, если СВЕРХУ отрезать НЕЧЕТНОЕ число строк - поменяется порядок полей. Я писАл, кстати, выше об этом.

упс... а вот это интиресно. А я всегда, если что то отрезаю СВЕРХУ (да и снизу) то всегда четное кол-во. И у меня проблема не РАСЧЕСКИ, а СТРОБОСКОПА, причем только на ТВ. Может все же дело не в отрезании? А как ТОЧНО правильно обрезать кадр (интерлейсный). Да, на ТВ "мусора" не будет, знаю, но нужен еще вариант и для компа. В нынешней ситуации, когда софтовые плееры без проблем играют интерлейсное видео не вижу смысла делать деинтерлейс, но почистить картинку хотелось бы. Как все таки поступить?
  • 0

#23 Serg Falkon

Serg Falkon
  • Модераторы
  • 1 533 Сообщений:

Отправлено 06 окт 2008 - 21:41

Можно залить "мусор" черным. В AVISynth'е это будет AddBorders по столько пикселей, сколько отрезали при кропе.

Рипал VHS через DV камеру, Ависинтом пикселей наотрезал с мусором по краям кадра, а на выходе ресайз до нужных 720х576
А весь срипт можно привести - с кропом и ресайзом?
  • 0

#24 newsky

newsky
  • Участник
  • 42 Сообщений:

Отправлено 06 окт 2008 - 22:53

А весь срипт можно привести - с кропом и ресайзом?

import("C:\Program Files\Winnydows\XviD4PSP5\dlls\AviSynth\functions\AudioFunctions.avs")
import("C:\Program Files\Winnydows\XviD4PSP5\dlls\AviSynth\functions\VideoFunctions.avs")

DirectShowSource("E:\capture\dv\scene0001.avi", fps=25.000, convertfps=true)

AutoYV12()

SeparateFields()
Crop(18, 2, -8, -6)
Lanczos4Resize(720, 288)
Weave()
Затем открываю в Дубе, очищаю Neat Video, сохраняю в DV, и затем в Канопус 3. Он (Канопус) определяет видео как "нижнее первое" (Вегас кстати то-же). В MPC "пошагово" кадр за кадром, никаких шаг-стоп-шаг... нет. Кодирую в Канопусе, жгу на диск, вставляю в DVD плеер - на ТВ в местах динамики "ЛЕГКИЙ" (это сильно и смущает) строб (не гребенка). На мониторе ничего подобного нет. В исходнике (первоисточнике и в кропнуто0очищенном DV) то-же (но на ТВ не проверял). Меняю в Канопусе таргет на "нижнее первое" результат на ТВ с болванки тот же - "лёгкий" строб на динамике.

Честно говоря, впервые узнал (хоть "чайничествую" уже давно), что интерлейсное видео ВООБЩЕ нельзя ресайзить. Как то странно мне это, пытался найти еще инфу по этому вопросу, пока ничего не нарыл. Во "всей этой истории" смущает то, что в Дубе, после этого скрипта и после очистки и после пересчета снова в DV файлик без проблем. Неужели, если бы было смещение полей или их путаница, это не было бы видно? Да наверняка, видео такими бы "волнами" шло (давно, в Улиде, не зная вообще про поля ничего, так же отрезал мусор и зачем-то поставил none и от увиденного (причем ТОЛЬКО на ТВ) чуть заикой не остался :) ) а тут... отличный файлик выходит, а в мпеге2 да на ТВ...

Сообщение отредактировано newsky: 06 окт 2008 - 22:55

  • 0

#25 Маклауд

Маклауд
  • Модератор
  • 1 908 Сообщений:

Отправлено 07 окт 2008 - 07:19

В ПроКодере, например, обрезка возможна только с шагом 2pix.
И даже после ресайза в нём никогда ни гребёнки, ни строба нет.

P.S.
Уже не первая тема в которой вижу, что как только "лезут" в AviSynt, так всякая хрень начинает твориться.
Классная программа ... .)
  • 0

#26 Serg Falkon

Serg Falkon
  • Модераторы
  • 1 533 Сообщений:

Отправлено 07 окт 2008 - 09:19

как только "лезут" в AviSynt, так всякая хрень начинает твориться
Я им уже очень давно пользуюсь - никогда никаких проблем не было. А многое решается проще или качественнее в нем.
Да, не для любителей однокнопочных программ :) И надо больше понимать что именно делается в нем с твоим видео.

newsky
Меняю в Канопусе таргет на "нижнее первое" результат на ТВ с болванки тот же - "лёгкий" строб на динамике
Так сказали же - Target не влияет . В Source попробуйте сменить.

А скрипт на первый взгляд достаточно корректный. Разве что я интерлейсное видео не раскладываю на поля перед ресайзом - в AVISynth'е "умный" ресайз, сам корректно учитывает интерлейсную структуру.
Ну и, все-таки, я бы сделал не ресайз, а AddBorders.
Кстати, я понял, AutoYV12 - из XviD4PSP5 взято. Зачем?
  • 0

#27 newsky

newsky
  • Участник
  • 42 Сообщений:

Отправлено 07 окт 2008 - 19:13

А скрипт на первый взгляд достаточно корректный. Разве что я интерлейсное видео не раскладываю на поля перед ресайзом - в AVISynth'е "умный" ресайз, сам корректно учитывает интерлейсную структуру.
Ну и, все-таки, я бы сделал не ресайз, а AddBorders.
Кстати, я понял, AutoYV12 - из XviD4PSP5 взято. Зачем?

Ну теперь я совсем запутался :) Кто говорит:

Первая проблема это тривиальная ошибка (которую вы никогда не сделаете, зная особенности чересстрочной развертки) – изменение размеров кадра без предварительного диентерлейса, что приводит к тому, что я назвал не настоящей чересстрочностью

Кто говорит, что получается можно ресайзить интерлейсное видео... и если, "скрипт корректный" ну почему тогда не стоит кропить, а лучше добавлять жЫрный бордюр по всему видео? чем лучше? А зачем взято AutoYV12 из XviD4PSP... ну какой скрипт в нем создался, так и оставил. Вы правы, что "хорошо бы понимать, что происходит с видео", но если этих знаний нет, но хочется видео с нормальным качеством, на помощь приходят подобные программы, которые используют мощьные интсрументы, а юзеру, не ОСОБО нужно морочиться, что там и к чему.

В Source попробуйте сменить.

"Так сказал же" (с) Serg Falkon ... в Source все в порядке, "нижнее первое", зачем его менять.

Сообщение отредактировано newsky: 07 окт 2008 - 19:22

  • 0

#28 Маклауд

Маклауд
  • Модератор
  • 1 908 Сообщений:

Отправлено 07 окт 2008 - 21:00

...почему тогда не стоит кропить, а лучше добавлять жЫрный бордюр по всему видео? чем лучше?

Лучше тем, что не происходит масштабирования картинки и соответственно не ухудшается качество изображения.
  • 0

#29 Serg Falkon

Serg Falkon
  • Модераторы
  • 1 533 Сообщений:

Отправлено 07 окт 2008 - 21:04

, "скрипт корректный" ну почему тогда не стоит кропить, а лучше добавлять жЫрный бордюр по всему видео? чем лучше?
Не трогается картинка (нет ресайза). Как минимум минус один из источников искажений .

в Source все в порядке, "нижнее первое", зачем его менять
Для полноты картины. Ибо в Target бессмысленно менять, о чем вам и говорили сразу.
Если строб станет ярко выраженным - значит 100% нижнее-первое поле.

Так, надо начинать с начала :)
Я бы по-порядку пошел :)
1. Если НИЧЕГО не делать с захваченным исходником, а сразу закодировать (с Lower/Bottom в Source и Upper/Top в Target) - строб есть?
2. Если все-таки без ресайза, а AddBorders делать - строб есть?
3. Делать ресайз не раскладывая на поля.
  • 0


0 человек читают эту тему

0 пользователей, 0 гостей, 0 скрытых пользователей

Rambler's Top100