@proGO

Страница 417 из 1674
Daniel
20.01.2017
08:21:02
там довольно много в аэроспайке непостижимого для джуниора

Alexei
20.01.2017
08:21:05
?
да все в том же треде в вк ???

Roman
20.01.2017
09:52:21
Коллеги, скажите можно ли на go написать стриминг сервер потокового видео следующего плана:

Google
Daniel
20.01.2017
09:53:45
:)

Roman
20.01.2017
09:53:51
Одна рутина читает данные и складывает в памят, буфер скажем 1 Гбайт. Потом мы преобразуем протокол, и раздаем скажем на 1000 клинтов в своих горутинах

Phil
20.01.2017
09:54:24
Вопрос-то где?

Roman
20.01.2017
09:54:44
Какие могут быть проблемы или преимущества по сравнению с другими языками?

Roman
20.01.2017
09:54:45
Но если честно, я не понимаю зачем так делать

Roman
20.01.2017
09:55:06
Roman
20.01.2017
09:55:40
А как надо? Ивент луп?
Он у тебя и так есть в go

Весь современный стриминг - это раздача файлов по хттп

Roman
20.01.2017
09:56:23
Вопрос-то где?
Есть ли код? Какого нибудь приложения?

Весь современный стриминг - это раздача файлов по хттп
Ну да. Вся задача принять входной поток и конвертировать его в файлы.

Google
Roman
20.01.2017
09:58:23
ffmpeg
Да у меня так и работает все. Nginx + ffmpeg

Daniel
20.01.2017
10:00:25
Не потечет

Roman
20.01.2017
10:00:30
Есть мысль что прямое подключени библиотeк ffmpeg и прямое управление памятью будет немножко лучше. Это заблуждение или нет?

Daniel
20.01.2017
10:00:43
Заблуждение

Roman
20.01.2017
10:00:58
В чем именно?

Phil
20.01.2017
10:01:00
сложно, все это потечет обязательно
ой. ну течки бояться - в рот не давать

Daniel
20.01.2017
10:01:00
Полпроцента ты выиграешь

Roman
20.01.2017
10:01:16
Мне не нужно выигрывать скорость

Daniel
20.01.2017
10:01:28
Тогда зачем?

Roman
20.01.2017
10:02:03
Там нагрузка, которую дает ffmpeg на порядки превышает оверхед ля веба

Subbotin
20.01.2017
10:02:22
я чё-то понял. видео перекодировать то надо или просто байтики перекладывать по-разному?

Roman
20.01.2017
10:02:28
Тогда зачем?
Фичи же. Для поддержки протоколов новых.

я чё-то понял. видео перекодировать то надо или просто байтики перекладывать по-разному?
Перекладывать. Основно задача парсить злоебучие форматы mpeg и делать конвнртацию в http

Phil
20.01.2017
10:04:43
во что прости?

Roman
20.01.2017
10:04:51
У меня сложилось впечатление что го достаточо быстро перекладыаает байтики. Почти как С. При этом намного легче управлять памятью благодаря gc

во что прости?
В http. Весь современный стримминг работает по http.

Phil
20.01.2017
10:05:29
байтики то он быстро перекладывает. а кодеки сам писать будешь?

Subbotin
20.01.2017
10:05:35
с медиа сервером вообще много тонкостей. например rtp требует очень аккуратности в плане равномерности стриминга. иначе у клиентов все идет по пизде. а под большими нагрузками врядли тебе произвольно переключающиеся горутины и гарбадж коллектор нормально позволят отдатавать сотни равномерных потоков

Phil
20.01.2017
10:06:01
В http. Весь современный стримминг работает по http.
в http? стриминг? контент тайп плейн текст? )))

Google
Subbotin
20.01.2017
10:06:17
Roman
20.01.2017
10:06:31
Phil
20.01.2017
10:06:55
ffmpeg же
а go тошда зачем?

Subbotin
20.01.2017
10:08:49
ffmpeg же
ну например для того же hls тебе надо на чанки резать по границам кадров. это значит что у тебя софтина не просто перекладывает сырой поток байтиков а смотрит таки что именно она перекладывает. надо лезть внутрь протокола. там конечно не надо поддерживать все тонкости кодека, но по сути это основа под кодек

Phil
20.01.2017
10:08:59
а чем эрливидео не устраивае

Roman
20.01.2017
10:09:48
ffmpeg же
Ну запусти мне ffmpeg без nginx наприимер.

а чем эрливидео не устраивае
Мы, Сара, таки покупаем или продаем?

redbeard
20.01.2017
10:11:59
переписываем эрливидео на го?

Roman
20.01.2017
10:12:15
Я вернусь с вашего позволения к вопросу. Можно ли реализовать такой сервер на go? Если можно, то где взять описание архитектуры.

redbeard
20.01.2017
10:12:42
когда-то flussonic был в открытом доступе...

Roman
20.01.2017
10:12:46
Subbotin
20.01.2017
10:12:51
> Можно ли реализовать такой сервер на go? Задача вычислима? Язык тьюринг-полный? Можно.

redbeard
20.01.2017
10:13:06
Нет модуль nginx-rtmp
не думаю, что будут проблемы

особенные

Berkus
20.01.2017
10:13:49
Roman
20.01.2017
10:13:52
не думаю, что будут проблемы
Да вот мне тоже так кажется

Google
Roman
20.01.2017
10:14:33
redbeard
20.01.2017
10:14:50
Да вот мне тоже так кажется
(запуская rebar generate ) ну и ладно :)

Roman
20.01.2017
10:15:15
Они все начинают как открытые, потом закрываются.

redbeard
20.01.2017
10:15:50
levgem молодца

Roman
20.01.2017
10:16:55
(запуская rebar generate ) ну и ладно :)
А ты на эрланге? Или может быть в Earlyvideo сразу?

redbeard
20.01.2017
10:18:31
эрливидео был в соседнем кабинете, если ест ькакой-то вопрос - можно отловить человечка

Den
20.01.2017
10:30:37
Здравствуйтею Подскажите как получить значение Cookies с удаленного ресурса? https://play.golang.org/p/KPSqTkzf9g

Berkus
20.01.2017
10:40:35
из хедера set-cookie наверное

Cookie An HTTP cookie previously sent by the server with Set-Cookie (below). Cookie: $Version=1; Skin=new; Permanent: standard

Admin
ERROR: S client not available

Roman
20.01.2017
10:44:56
эрливидео. списывай с них
Мне бы на гошечке посмотреть - работа с памятью, мультипоточность в смысле много много горутин. Есть чо на примете?

Daniel
20.01.2017
10:52:14
Первооткрывателем чего?

Berkus
20.01.2017
10:55:26
по-моему вряд ли будет более эффективное решение чем ffmpeg + crtmpserver

Google
Roman
20.01.2017
10:55:50
Berkus
20.01.2017
10:55:57
и двух строчек на баше их слепляющих, безо всякого го

Roman
20.01.2017
10:55:58
Я ffmpeg подключил толькопотому, что без него никак картининки не получались

Berkus
20.01.2017
10:56:10
но работает же

хошь hls хошь что еще

Roman
20.01.2017
10:56:49
Есть подозрение, что управляя кодом процесса я все задачи смогу сделать без ffmpeg кроме транскодинга

Для IPTV реалтайм транскодинг обязателен, для файлопомойки - нет

Subbotin
20.01.2017
10:58:12
во-первых, не надо rtp. во-вторых, проблем никаких не будет если не делать буфер совсем мелким
это зависит. если сделать буфер большим то будет медленный выход на трансляцию и большой лаг произведения. пусть если у тебя в конце какая-нить коробочка типа амины то там памяти 32 метра и хоть ты усрись

Roman
20.01.2017
10:58:40
Чанкеров hls - жопой жуй

Roman
20.01.2017
10:59:32
а чем эрливидео не устраивае
он стоит денег и смысла в нем мало. кроме того, когда Лапшин начал рассказывать про то как они с легкостью отдают 10Гбит/с я спросил про необходимое для этого железо и он исчез.

Eduard
20.01.2017
11:00:00
Коллеги, подскажите, как из полученной в виде interface{} структуры взять значение поля (строка)? Offset для этого поля мне известен.

Subbotin
20.01.2017
11:00:12
про то, что каждый чанк должен начинаться с keyframe - да. остальное - бред )
ну окей - кейфремы имеют одинаковую длину так что надо найти границу один раз. не подумал

Roman
20.01.2017
11:03:01
можно, но долго. тот же mpeg-ts - очень сложный и неприятный формат.
А вот мне как раз и хочется потрахаться со сложным и неприятным форматом. У меня может быть влечения странные :)

Roman
20.01.2017
11:03:08
ну окей - кейфремы имеют одинаковую длину так что надо найти границу один раз. не подумал
нет, не одинаковую. мы у себя сделали просто: процесс-транскодер просто строит map вида timestamp:file_offset.

Roman
20.01.2017
11:03:50
сейчас вся работа стримингового сервера - это генерация плейлистов с ссылками на чанки

Страница 417 из 1674