Андрей Смирнов
Время чтения: ~22 мин.
Просмотров: 2

Best live tv streaming android apps

How to Develop a Live Streaming Mobile App in 3 Steps?

Developing a live streaming mobile app is not a very quick and easy job if you develop every piece on your own. It requires extensive knowledge about video streaming etc. so you may prefer to find some libraries and samples that makes this job easy. Yeah in this post, we are going to tell how to develop a live streaming app by providing sample codes on Github.

Let’s make it easy, you can develop a live streaming app in 3 general steps.

Step 1: Get a Media Server

First of all, a live stream should be sent to a media server that can distributes the live stream to subscribers in real time so a media server should be running in somewhere like Amazon AWS, Google Cloud, IBM Bluemix or in any other infrastructure. You may even use your own local computer to first test the app.

Anyway, there are media servers you can purchase licence, fortunately you do not need to pay anything and you can download Ant Media Server Community Edition at antmedia.io. Ant Media Server can distribute live stream in RTMP, RTSP and HLS formats. Moreover, it records live streams in MP4 format. It means your live streams and recorded streams can play in both all mobile and desktop browsers.

After you download Ant Media Server, extract it and run the start.sh file in your computer.

When you run this command, Ant Media Server starts with printing some logs. At this stage, please learn your computer IP address and save it somewhere. We will use this address later.

Step 2: Broadcast Live Stream from Your Mobile Device

Yeah at this stage needs very specific knowledge luckily, we make it so simple that you do not need to know about encoding and packaging, you just need to call some functions. Nevertheless, I should say some technical issues. Here they are…

H264 Hardware Encoders are used to encode the camera preview. It runs on Android 4.3 and above. Using hardware encoders make the mobile app very small and efficient.
RTMP protocol is used to send the live stream to Media Server. We have used librtmp library to handle this issue.
FLV format is used to send live stream to Media Server via RTMP protocol.
This technical details are enough at this stage. So let’s make hands dirty.

Please clone this repository https://github.com/ant-media/LiveVideoBroadcaster

git clone https://github.com/ant-media/LiveVideoBroadcaster.git

After you clone the sample, please open the project with Android Studio and write your own media server IP address to RTMP_BASE_URL field on MainActivity.java file.

Build and Run the app, you need to see below screen

Click Live Video Broadcaster button and you should see this screen.

Write a stream name like «test» to edit text and press the button. You should see below screen.

Right now, you are broadcasting live stream to media server. Any subscriber can now watch your live stream via media server.

Step 3: Play Live Stream On your Mobile Device

Playing a live stream on your android is not a hard thing to accomplish if your media server supports, RTSP or HLS. Fortunately, Ant Media Server supports both of them however, if you want to have low latency in live stream, it would be better to use RTMP so that we have added RTMP play functionality to ExoPlayer, moreover this player is already integrated to our sample. You just need to run LiveVideoBroadcaster app on any other android device.

When you run it, please click the Live Video player at this time. You should see a black screen like below.

Write down the same stream name you have used in Step 2 and press Play button. You should now watch the live stream that your other Android device broadcasts on your device.

Congratulations, that’s all. If you have any question or need to get support (private or enterprise) please contact us antmedia.io.

Что такое Live TV

Live TV – полезный ресурс для тех, кто любит спорт. На сайте предлагаются спортивные трансляции, ориентируясь на те виды спорта, на которые принимают ставки букмекерские конторы. Кроме ссылок на видеотрансляции, Лайв ТВ предлагает также текстовые онлайн-трансляции, аудиокомментарии и все, что связано с освещением спортивных событий – результаты, видеообзоры игр, турнирные таблицы.

На Лайф ТВ прямые трансляции предлагаются в трех форматах:

  • в виде ссылок для браузера;
  • sopcast-ссылок;
  • ссылок на Ace Stream, Торрент-стрим и другие плееры.
Букмекеры с трансляциями матчей
Бонус 1000 р.Бонус 2500 р.Бонус 10000 р.
>Регистрация<>Регистрация<>Регистрация<

Сайт «Лайв ТВ» заблокирован в России, потому есть смысл использовать методы обхода блокировок для использования сервиса, а также пользоваться «зеркалами» сайта. Новый адрес оперативно вывешивает твиттер, а также другие аккаунты ресурса в соцсетях.

Также на Live TV есть новостная лента, архив с результатами и онлайн-результаты, а также архивные видеотрансляции – как в формате полных матчей, так и нарезки опасных моментов. В отдельном блоке выкладывают видеообзоры европейских футбольных топ-чемпионатов, а также некоторых экзотических первенств. К примеру, чемпионата Грузии по футболу.

Внедрение

Мы решили, что внедрение плеера должно быть максимально простым и соответствовать двум основным принципам:

  • Keep it simple (делай проще)
  • Don’t Make Me Think (не заставляйте меня думать)

В результате, интерфейс страницы внедрения выглядит как на скриншоте ниже, а сама демо-страница с внедрением плеера доступна здесь.

Таким образом,просто нажимаем кнопку Copy To Clipboard и код плеера готов к вставке на сайт в виде iframe:

Для того, чтобы поток запустился, нужно обязательно указать его название или RTSP адрес в поле streamName.

Например так:

После этого можно протестировать поток по кнопке Test Now или сразу вставить код на страницу.

Мы убедились что плеер работает. Осталось скопипастить его код на web-страницу. В результате страница сайта будет выглядеть так:

Таким образом, плеер можно разместить где угодно и с какими угодно размерами. Задача внедрения выполнена.

Setup

Add these lines to

<key>io.flutter.embedded_views_preview</key>
<true/>

Android

Set of your file to at least 17.

Note: Although the minimum to be set is 17, the player won’t play on device with API < 20.
For API < 20 devices, you might want to forward the video to be played using YouTube app instead, using packages like or .

Using Youtube Player

YoutubePlayerController _controller = YoutubePlayerController(
    initialVideoId 'iLnmTe5Q2Qw',
    flags YoutubePlayerFlags(
        autoPlay true,
        mute true,
    ),
);

YoutubePlayer(
    controller _controller,
    showVideoProgressIndicator true,
    videoProgressIndicatorColor Colors.amber,
    progressColors ProgressColors(
        playedColor Colors.amber,
        handleColor Colors.amberAccent,
    ),
    onReady () {
        _controller.addListener(listener);
    },
),

For FullScreen Support

If fullscreen support is required, wrap your player with

YoutubePlayerBuilder(
    player YoutubePlayer(
        controller _controller,
    ),
    builder (context, player){
        return Column(
            children [
                // some widgets
                player,
                //some other widgets
            ],
        );
    ),
),

Playing live stream videos

Set the isLive property to true in order to change the UI to match Live Video.

YoutubePlayerController _controller = YoutubePlayerController(
    initialVideoId 'iLnmTe5Q2Qw',
    flags YoutubePLayerFlags(
      isLive true,
    ),
);

YoutubePlayer(
    controller _controller,
    liveUIColor Colors.amber,
),

Как установить игры и приложения Android на ПК

Работа с эмулятором LDPlayer — одно удовольствие. Здесь разберется максимально быстро даже начинающий пользователь. После установки программы запустите эмулятор, при необходимости настройте его для своего удобства. После можете устанавливать игры и приложения, запускать их и использовать. Все просто и прозрачно.

Установка игры через Плей Маркет

Вы легко справитесь с установкой игры на LDPlayer через Play Market, даже если раньше никогда не делали ничего подобного.

  • Запустите приложение Play Market. В первый раз нужно будет пройти авторизацию через свою учетную запись Google, после программа запомнит вас.
  • Найдите нужную игру с помощью «рекомендаций» или просто введите название ее в поисковое окошко.
  • Нажмите на большую зеленую кнопку «Установить».
  • Откроется окно, информирующее о системных возможностях, к которым игре необходимо дать доступ для ее работы. Соглашайтесь.

Вот и все. Теперь осталось дождаться окончания установки и появления ярлыка на рабочем столе. Можете запускать игру!

Инсталляция через APK

Иногда по каким-либо причинам установка через Плей Маркет невозможна (например, у вас нет аккаунта в Гугл и вы не хотите его заводить). Тогда используют APK файлы, которые можно скачать со сторонних сайтов. Как с ними работать? Не сложно.

  • Скачайте нужный файл на компьютер.
  • Запустите его в LDPlayer, перетащив с помощью мыши «в ярлык».
  • Откройте LD Магазин.
  • В Магазине активируйте вкладку «МОИ».
  • Выберите «Управление APK/XAPK».
  • Нажмите кнопку Установить, которая расположена имени вашего файла.
  • Дождитесь окончания установки и появления ярлыка на рабочем столе эмулятора. Можете начинать игру.

DRM support matrix

BrowserWidevinePlayReadyFairPlayClearKey⁶
Chrome¹YY
Firefox²YY
Edge³Y
IE 11⁴Y
SafariY
Operauntested⁵untested⁵
ChromecastYYuntested⁵
Tizen TVYYuntested⁵

Other DRM systems should work out of the box if they are interoperable and
compliant to the EME spec.

NOTES:

  • ¹: Only official Chrome builds contain the Widevine CDM. Chromium built from
    source does not support DRM.
  • ²: DRM must be enabled by the user. The first time a Firefox user visits a
    site with encrypted media, the user will be prompted to enable DRM.
  • ³: PlayReady in Edge does not seem to work on a VM or over Remote Desktop.
  • ⁴: IE 11 offers PlayReady support on Windows 8.1 and Windows 10 only. (IE
    support will stop in v3.1:
    https://github.com/google/shaka-player/issues/2339)
  • ⁵: These are expected to work, but are not actively tested by the Shaka
    Player team.
  • ⁶: ClearKey is a useful tool for debugging, and does not provide actual
    content security.

Platform and browser support matrix

BrowserWindowsMacLinuxAndroidiOS >= 12ChromeOSOther
Chrome¹YYYYNativeY
Firefox¹YYYuntested⁵Native
Edge¹Y
IE ≤ 10N
IE 11Y ⁴
Safari¹YiPadOS 13Native
Opera¹untested⁵untested⁵untested⁵untested⁵Native
Chromecast²Y
Tizen TV³Y

NOTES:

  • ¹: On macOS, only Safari 12+ is supported. On iOS, only iOS 12+ is
    supported. Older versions will be rejected.
  • ²: The latest stable Chromecast firmware is tested. Both sender and receiver
    can be implemented with Shaka Player.
  • ³: Tizen 2017 model is actively tested and supported by the Shaka Player
    team. Tizen 2016 model is community-supported and untested by us.
  • ⁴: IE 11 offers PlayReady support on Windows 8.1 and Windows 10 only. IE 11
    can play clear content on Windows 8.0. IE 11 does not support adaptive
    playback on Windows 7 and under. (IE support will stop in v3.1:
    https://github.com/google/shaka-player/issues/2339)
  • ⁵: These are expected to work, but are not actively tested by the Shaka
    Player team.

We support iOS 12+ through Apple’s native HLS player. We provide the same
top-level API, but we just set the video’s element to the manifest/media.
So we are dependent on the browser supporting the manifests.

Shaka Player Embedded (for native iOS)

We have another project called Shaka Player Embedded that offers the same
features and similar APIs for native apps on iOS. This project uses its own
media stack, which allows it to play content that would otherwise not be
supported. This supports both DASH and HLS manifests.

Getting Started

This library is included in video.js 7 by default, if you are using an older version of video.js then
get a copy of and include it in your page along with video.js:

<video-js id=vid1 width=600 height=300 class="vjs-default-skin" controls>
  <source
     src="https://example.com/index.m3u8"
     type="application/x-mpegURL">
</video-js>
<script src="video.js"></script>
<script src="videojs-http-streaming.min.js"></script>
<script>
var player = videojs('vid1');
player.play();
</script>

Is it recommended to use the element or load a source with in order to prevent the video element from playing the source natively where HLS is supported.

Framework Integrations

The Shaka team doesn’t have the bandwidth and experience to provide guidance and
support for integrating Shaka Player with specific frameworks, but some of our
users have sucessfully done so and created tutorials to help other beginners.

Shaka + ReactJS integrations:

  • https://github.com/matvp91/shaka-player-react
  • https://github.com/amit08255/shaka-player-react-with-ui-config

Shaka + Next.js integration:

https://github.com/amit08255/shaka-player-react-with-ui-config/tree/master/nextjs-shaka-player

If you have published Shaka Integration code/tutorials, please feel free to submit PRs
to add them to this list, we will gladly approve!

Дополнительные параметры

В атрибуте iframe src передается урл страницы, которая содержит сам плеер. Этому урлу можно передать параметры, которые будут использоваться плеером.

1. urlServer

Это адрес потокового сервера, который адаптирует потоки для плеера.

urlServer=wss://wcs5-eu.flashphoner.com:443

2. streamName

Это имя потока или его RTSP-адрес.

streamName=12345

Или RTSP

streamName=rtsp://192.168.1.55/live.sdp

3. mediaProviders

Это список технологий воспроизведения, которые указываются в порядке приоритета.

Например, если вы хотите использовать только WebRTC, передаете так:

mediaProviders=WebRTC

Если требуется автоматическое переключение на другие технологии, добавляем их в запрос в порядке приоритета слева направо:

mediaProviders=WebRTC,MSE,Flash

4. skin

У плеера есть возможность выбрать скин. Пока только между черным и белым.

skin=dark

5. autoplay

Нужно передать этот параметр, чтобы плеер начал играть поток автоматически после загрузки.

autoplay=true

HLS features

HLS features supported:

  • VOD, Live, and Event types
  • Encrypted content with Widevine
  • ISO-BMFF / MP4 / CMAF support
  • MPEG-2 TS support (transmuxing provided by mux.js v5.6.3+, must be
    separately included)
  • WebVTT and TTML
  • CEA-608/708 captions
  • Encrypted content with FairPlay (Safari on macOS and iOS 12+ only)

HLS features not supported:

  • Encrypted content with PlayReady:
    https://github.com/google/shaka-player/issues/1145
  • Key rotation: https://github.com/google/shaka-player/issues/917
  • I-frame-only playlists: https://github.com/google/shaka-player/issues/742
  • Raw AAC, MP3, etc (without an MP4 container):
    https://github.com/google/shaka-player/issues/2337

Known Issues and Workarounds

Issues that are currenty known. If you want to
help find a solution that would be appreciated!

Assets with an Audio-Only Rate Get Stuck in Audio-Only

Some assets which have an audio-only rate and the lowest-bandwidth
audio + video rate isn’t that low get stuck in audio-only mode. This is
because the initial bandwidth calculation thinks it there’s insufficient
bandwidth for selecting the lowest-quality audio+video playlist, so it picks
the only-audio one, which unfortunately locks it to being audio-only forever,
preventing a switch to the audio+video playlist when it gets a better
estimation of bandwidth.

Until we’ve implemented a full fix, it is recommended to set the
for any assets
that include an audio-only rate; it should always select the lowest-bandwidth
audio+video playlist for its first playlist.

Follow progress on this in issue #175.

DASH Assets with Interpolation and s with No

DASH assets which use in a , and also have a
where only the first has a and the rest only have a
, do not load currently.

There is currently no workaround for this, but you can track progress on this
in issue #256.

APK Version: 4.7.4

What is Live NetTV App?

There are many people out there who want to stream TV online but are not aware of a reliable website of application that can help them stream TV channels on their mobile phone or TV. With the help of Live NetTV APK you can stream more than 700 TV channels and high quality movies on your android device. Movies and television channels are one of the most engaging sources of entertainment amongst people of all ages. You can watch movies on television but you cannot carry your television with you.

There is a solution to this problem if you own an Android phone. These days, one can download applications that can stream live TV channels and movies on their mobile phone. Google Play Store is flooded with many such applications that allow you to stream movies and TV shows on your your mobile device but one application that out from all the available applications out there is Live Net TV. 

Live Net TV is one of the most famous and widely downloaded Android application that allows users to enjoy seamless entertainment by helping them watch a huge collection of high quality movies and television shows on their mobile phone. It is an entertainment packed application using which you can watch live TV, live sports events and TV shows free of cost. In the app, you can choose from a large number of channels from many countries such as the United Kingdom, the United States of America, India, Pakistan, Middle Eastern countries, Turkey and several other countries.

As we have already told you, there are a plethora of applications on Google Play Store that are designed for streaming TV shows and movies on mobile devices but not all applications work as flawlessly as Live NetTV does. Most of the applications that are found on Google Play store are deceiving in nature. You  will be persistently bugged by ad pop ups and most of the times, links given in the app are not working or are broken. Also, at times such application can have malicious virus and adwares that can be harmful for your device and can steal sensitive information from your mobile phone therefore downloading such applications is not recommended. However, Live Net TV is not like any other application out there. It is a trusted application with all the working links and a huge library of high quality movies and TV shows. In the app, you can find streaming links for movies and TV shows in SD and HD quality. You can open the links in any video player such as MX Player or VLC Media player on your mobile phone. With this app, you can watch live sports, TV programs and classic movies without paying any fees.

Let us learn some more about Live NetTV free APK so that you can download it without having any doubt about the application.

Live NetTV APK Download System Requirements

Name:Live Net TV
Version:4.74
File Size:23,9 MB
Minimum Requirement:Android 4.1+
Developer:livenetv
Live NetTV Features:Watch Live TV absolutely free of cost.
Downloads:2110239967+
Last Update Time:13 June 2020

Features of Live NetTV APK

Live Net TV application consists of links from third-party applications and websites and there are multiple links of single movie or TV show so that you can stream from the other link if one link is not working. All the links are working most of the times and Live TV APK keeps on updating links to ensure that users do not face any problem while streaming. So, if one of the links is not working, you can try the other links that are provided by app developers.

DASH features

DASH features supported:

  • VOD, Live, and In-Progress Recordings (dynamic VOD content)
  • MPD@timeShiftBufferDepth for seeking backward in Live streams
  • Multi-period content (static and dynamic)
  • Xlink elements (actuate=onLoad only, resolve-to-zero, fallback content)
  • All forms of segment index info: SegmentBase@indexRange, SegmentTimeline,
    SegmentTemplate@duration, SegmentTemplate@index, SegmentList
  • Multi-codec/multi-container manifests (we will negotiate support with the
    browser and choose the best ones)
  • Encrypted content (including custom ContentProtection schemas, PSSH in the
    manifest)
  • Key rotation
  • Trick mode tracks

DASH features not supported:

  • Xlink with actuate=onRequest
  • Manifests without any segment info:
    https://github.com/google/shaka-player/issues/1088
  • Changing codecs during a presentation (unsupported by MSE)
  • Multiple trick mode tracks for the same resolution at varying framerates or
    bitrates
  • Timescales so large that timestamps cannot be represented as integers in
    JavaScript (2^53): https://github.com/google/shaka-player/issues/1667

Watch Live TV on Your Phone

LiveNetTV is a multimedia application that lets you watch and stream TV channels on your phone. It has more than 800 channels available, offering one of the greatest numbers of contents from all over the world. Whether you want to watch TV shows from Asian channels or stream Hollywood movies, this app has got it. When you want easy access to your favorite shows, LiveNetTV is your better choice. 

Content Quality and Quantity

LiveNetTV prides itself on offering hundreds of channels from across the globe. It predominantly covers Asian countries, but Europe and North America are also well-represented. Not only that, but the app also covers nine categories, including sports, cooking, documentary, and music. LiveNetTV has recently added a video-on-demand section, where you can find movies from various countries. It is a little unclear, and the collection is a little confusing, but the app makes up for it with its simple click and play mechanism. With this, you don’t need to select from the list of links to find a passable source for the content. Additionally, the titles offered in the VOD selection are quite varied. You can actually find some movies, which you might not found in any video streaming apps before.

In terms of quality, LiveNetTV cannot still hold a candle against popular streaming apps, such as Netflix or Hulu. Of course, they’re a paid subscription, so they have to provide a better service. But, all things considered, the app’s performance is good. The picture quality of some links is not that good, but it is given to you for free, so you really can’t complain. There are also some advertisements, but that’s expected since, again, it is a free app.

Usability

Interface-wise, LiveNetTV is quite pleasing to the eyes. The channels are sensibly grouped by country for easier navigation. You can find the VOD list from the dropdown menu options, along with report a channel and request a channel. The app also comes with built-in chat support that we seldom see in other free apps. And it works. The response is not too quick, though, as they get back to your query in an hour or so.

LiveNetTV supports various media players, including MX Player, XMTV Player, and Lua Player. With this, you are not limited to your built-in video player. The app even supports Chromecast for users who want to take their streaming to a bigger screen. But, while you can watch various channels, LiveNetTV does not provide a TV schedule or episode guide. So, if you have a show you want to watch, or you wish to see the action in the next football match, you’ll need to do some research ahead of time. That menial task is a small price to pay though for a free streaming service.

Overall, Impressive

All in all, LiveNetTV is quite a pleasing discovery. The contents are varied, and the streams are reliable, which you don’t often find in free streaming apps. There are a few minor setbacks, but its good performance makes up for it so well you hardly need to rant. If you are looking for a decent free live TV streaming app, this one is worth your time.

Скачайте GOM Player для Windows 10 на русском бесплатно

ВерсияПлатформаЯзыкРазмерФормат Загрузка
* скачайте бесплатно GOM Player для Windows, файл проверен!
  
GOM Player

Windows 10

Русский 23.67MB.exe

Обзор GOM Player

GOM Player (Гом Плеер) – медиапроигрыватель для Windows, предназначенный для воспроизведения аудио- и видеофайлов. Отличительной особенностью программы является большое количество встроенных кодеков. Благодаря этому, GOM Player способен запускать медиафайлы большинства популярных форматов, без необходимости установки дополнительных кодеков.

Скриншоты

Похожие программы

Adobe Flash Player — программа для воспроизведения flash-контента
Sony Vegas Pro — создание многодорожечных видео и аудио записей
Xvid Video Codec — библиотека для сжатия видео в стандарте MPEG-4
KMPlayer — мощный проигрыватель файлов звуковых и видеоформатов
Aimp — музыкальный проигрыватель с хорошим эквалайзером
SopCast — просмотр видео и аудиотрансляций в Интернете
iTools

Audacity — звуковой редактор, поддерживающий работу с несколькими дорожками
Reason

Camtasia Studio — программа для захвата видеоизображения с монитора компьютера
Windows Media Player — проигрыватель видео и аудио файлов от Microsoft
VLC Media Player — бесплатный кроссплатформенный медиапроигрыватель
DirectX — пакет библиотек, необходимый системе для работы с мультимедиа
Adobe Premiere Pro — программное обеспечение для нелинейного видеомонтажа
Adobe Audition

VKMusic — поиск и скачивание музыки из ВКонтакте, RuTube и YouTube
Windows Live Movie Maker

Fraps

K-Lite Codec Pack — набор кодеков для воспроизведения видео и аудиофайлов
Winamp — проигрыватель мультимедиа c поддержкой потокового контента
Realtek HD — пакет драйверов, предназначенный для HD Audio кодеков
Unity Web Player

MorphVOX Pro

VirtualDub

Freemake Video Converter

DivX — набор кодеков и утилит для воспроизведения аудио и видео
Adobe After Effects

Bandicam — программа для снятия скриншотов и записи видео с экрана
Ableton Live Suite

Steinberg Cubase

Pinnacle Studio — программа для обработки видео файлов
Movavi Video Editor — утилита для монтажа видеофайлов
iMovie — бесплатный видеоредактор от компании Apple
Sound Forge

Ace Stream Media

Virtual DJ — программа, имитирующая пульт диджея для микширования музыки
Action!

PowerDVD — проигрыватель мультимедийных файлов
GOM Player — медиапроигрыватель для Windows
Format Factory

CyberLink PowerDirector — видеоредактор с возможностью захвата видео с внешних источников
Finale

JetAudio — плеер с хорошим эквалайзером
Corel VideoStudio — профессиональный видеоредактор от компании Corel
Free Studio — пакет объединяющий более 40 мультимедийных программ
Avidemux — для создания новых и обработки готовых видео
Edius — программное обеспечение для нелинейного монтажа видео
ManyCam

Kodi — программа для воспроизведения мультимедиа
Daum PotPlayer — плеер с поддержкой всех мультимедийных форматов
ФотоШОУ PRO — программа для создания из фотографий видеороликов и слайд-шоу
Guitar Pro

MIRO

Shortcut

Light Alloy — бесплатный медиаплеер
GeForce Experience — автоматического поиск драйверов видеокарт компании Nvidia
HyperCam

Magix Music Maker — утилита для записи и обработки музыкальных дорожек
VideoPad Video Editor — частично бесплатный видеоредактор
Proshow Producer — условно-бесплатная программа для создания слайд-шоу
Free Video Editor — бесплатный видео редактор для нелинейного видео монтажа
Wondershare Filmora — условно-бесплатная программа для работы с видеофайлами
Zune

Аудио | Видео программы

Графические программы

Microsoft Office

Игры

Интернет программы

Диски и Файлы

Рейтинг автора
5
Подборку подготовил
Максим Уваров
Наш эксперт
Написано статей
171
Ссылка на основную публикацию
Похожие публикации