OberonCore https://forum.oberoncore.ru/ |
|
Типичная проблема выбора. https://forum.oberoncore.ru/viewtopic.php?f=86&t=2942 |
Страница 1 из 2 |
Автор: | Alexey Veselovsky [ Четверг, 28 Октябрь, 2010 17:46 ] |
Заголовок сообщения: | Типичная проблема выбора. |
Наверно лучше сюда. Итак имею сейчас следующую ситуацию (ситуация типична для индустрии, но вот сейчас она особенно четко передо мною встала): Есть две программы. обе по функционалу вроде бы устраивают, но допиливать (добавлять функционал специфичный для моей задачи) нужно будет в любом случае. Одна размером примерно в 25 тыс. строк кода и активно развивается, а другая 4 тыщи строк понятного кода и хорошо задокументирована (в т.ч. потроха), но труп (т.е. никем не пилится, сообщества нет, поддержки нет и т.п.). Вопрос -- что выбрать? Нужно также учесть, что возможно в дальнейшем могут потребоваться некий функционал который реализован в первой программа, а во второй нет. Скопипастить код из первой во вторую нельзя -- лицензионные ограничения. Т.е. придется видимо реализовывать самому, ежели таковая потребность возникнет. Характерное время возникновения таковой потребности -- где-то полгода. Вот сижу как буриданов осёл между этими двумя вариантами и рискую повторить его судьбу.. |
Автор: | Peter Almazov [ Четверг, 28 Октябрь, 2010 18:38 ] |
Заголовок сообщения: | Re: Типичная проблема выбора. |
Прибавьте к 4 тыс. строк размер копипейстного куска и вернитесь к началу цикла ![]() |
Автор: | Alexey Veselovsky [ Четверг, 28 Октябрь, 2010 20:26 ] |
Заголовок сообщения: | Re: Типичная проблема выбора. |
Peter Almazov писал(а): Прибавьте к 4 тыс. строк размер копипейстного куска и вернитесь к началу цикла ![]() Не больше 4 тыс. строк. Думаю меньше. Т.е. суммарно 8 килострок. |
Автор: | Евгений Темиргалеев [ Четверг, 28 Октябрь, 2010 20:36 ] |
Заголовок сообщения: | Re: Типичная проблема выбора. |
Alexey Veselovsky писал(а): Вопрос -- что выбрать? я бы выбрал большую определённость: хорошая документация = возможность разобраться и дорабатывать самому без проблем = зависимость только от себя (припоминая поговорку: хочешь сделать хорошо --- сделай сам) Alexey Veselovsky писал(а): Не больше 4 тыс. строк. Думаю меньше. Т.е. суммарно 8 килострок. особенно, учитывая объёмы
|
Автор: | Alexey Veselovsky [ Четверг, 28 Октябрь, 2010 20:50 ] |
Заголовок сообщения: | Re: Типичная проблема выбора. |
Евгений Темиргалеев писал(а): Alexey Veselovsky писал(а): Вопрос -- что выбрать? я бы выбрал большую определённость: хорошая документация = возможность разобраться и дорабатывать самому без проблем = зависимость только от себя (припоминая поговорку: хочешь сделать хорошо --- сделай сам) Alexey Veselovsky писал(а): Не больше 4 тыс. строк. Думаю меньше. Т.е. суммарно 8 килострок. особенно, учитывая объёмыОбъемы, кстати, достаточно значительные. В переводе на объемы Си или Оерон-кода это где-то порядка 20 тыс. строк кода нужно будет дописать. Ну и потребуется проработать порядка 300 страниц всяких rfc. |
Автор: | Peter Almazov [ Четверг, 28 Октябрь, 2010 21:58 ] |
Заголовок сообщения: | Re: Типичная проблема выбора. |
Какая у Вас производительность труда - сколько в среднем строк в день выдаете? |
Автор: | Alexey Veselovsky [ Пятница, 29 Октябрь, 2010 08:08 ] |
Заголовок сообщения: | Re: Типичная проблема выбора. |
Peter Almazov писал(а): Какая у Вас производительность труда - сколько в среднем строк в день выдаете? Это очень и очень зависит от. Бывает и до 600 строк в день (java, реализация того, что сам придумал и продумал). А бывает что и ноль в неделю. В этом случае нельзя сразу садиться кодить. Вначале нужно будет проштудировать rfc. Потом провести ряд экспериментов на предмет того насколько эти rfc соответствуют реальному миру. И вот уже опосля-я.. Ориентировочный объем rfc я привел выше. |
Автор: | Peter Almazov [ Пятница, 29 Октябрь, 2010 12:28 ] |
Заголовок сообщения: | Re: Типичная проблема выбора. |
Ноль в неделю - это знакомо ![]() 600 - круто. |
Автор: | Valery Solovey [ Пятница, 29 Октябрь, 2010 13:34 ] |
Заголовок сообщения: | Re: Типичная проблема выбора. |
Alexey Veselovsky писал(а): Нужно также учесть, что возможно в дальнейшем могут потребоваться некий функционал который реализован в первой программа, а во второй нет. Скопипастить код из первой во вторую нельзя -- лицензионные ограничения. Т.е. придется видимо реализовывать самому, ежели таковая потребность возникнет. Характерное время возникновения таковой потребности -- где-то полгода. А в "активно развивающейся" программе эта функциональность точно будет? Это я в том смысле, что уже сейчас известно, что вам может понадобиться и что будет в этой программе, но только имеется некотороя неопределённость в виде отсутствия отмашки от начальства? Просто как бы потом в этой "активной" программе для задейстования появившегося функционала не пришлось переписывать свои допилы, прекрасно работавшие уже полгода-год.
|
Автор: | Alexey Veselovsky [ Пятница, 29 Октябрь, 2010 14:38 ] |
Заголовок сообщения: | Re: Типичная проблема выбора. |
Valery Solovey писал(а): Alexey Veselovsky писал(а): Нужно также учесть, что возможно в дальнейшем могут потребоваться некий функционал который реализован в первой программа, а во второй нет. Скопипастить код из первой во вторую нельзя -- лицензионные ограничения. Т.е. придется видимо реализовывать самому, ежели таковая потребность возникнет. Характерное время возникновения таковой потребности -- где-то полгода. А в "активно развивающейся" программе эта функциональность точно будет? Это я в том смысле, что уже сейчас известно, что вам может понадобиться и что будет в этой программе, но только имеется некотороя неопределённость в виде отсутствия отмашки от начальства? Просто как бы потом в этой "активной" программе для задейстования появившегося функционала не пришлось переписывать свои допилы, прекрасно работавшие уже полгода-год.В данном случае начальство -- это пользователь. И этот функционал с некоторой вероятностью может таки понадобиться ему. Этот функционал не то что будет, он в той программе уже есть и работает. |
Автор: | Alexey Veselovsky [ Пятница, 29 Октябрь, 2010 15:01 ] |
Заголовок сообщения: | Re: Типичная проблема выбора. |
Для определенности -- эти приложения, это rtmp-сервера. Ну, или, как в народе называют, flash-сервера. Сервер для flash приложения. (http://en.wikipedia.org/wiki/Real_Time_ ... g_Protocol http://ru.wikipedia.org/wiki/RTMP). Кроме бизнес-логики и собственно rtmp на стороне сервера возможно нужно будет реализовать вещание видео. На вход серверу идет rtp либо rtsp либо rtmp. Он раздает это видео множеству подключенных клиентов по rtmp. Также возможно потребуется показывать уже записанное и уже хранящееся на диске видео. Соответственно нужна поддержка mp4, avi, mp3 и проч форматов-контейнеров. rtp, rtsp, mp4, mpeg, mp3 -- реализованы в одном сервере и не реализованы в другом. И это может понадобиться с некоторой вероятностью. |
Автор: | Рэйлвэй Каген [ Пятница, 29 Октябрь, 2010 15:47 ] |
Заголовок сообщения: | Re: Типичная проблема выбора. |
Alexey Veselovsky писал(а): Есть две программы... Разработчики второй программы уже переросли главную проблему,Одна размером примерно в 25 тыс. строк кода и активно развивается, а другая 4 тыщи строк понятного кода и хорошо задокументирована (в т.ч. потроха), но труп (т.е. никем не пилится, сообщества нет, поддержки нет и т.п.). Вопрос -- что выбрать? .. Вот сижу как буриданов осёл между этими двумя вариантами и рискую повторить его судьбу.. а разработчики первой ещё и не увидели её(судя по масштабам кодостроительства, им это и не светит). Alexey Veselovsky писал(а): потребуется показывать уже записанное и уже хранящееся на диске видео. Соответственно нужна поддержка mp4, avi, mp3 и проч форматов-контейнеров. В последнем Вы точно уверены? А если формат хранения максимально приблизить к формату вещания? Т.е. напрашивается вывод, что главная проблема решается явно не на уровне выбора из какой кучи копипастить.
|
Автор: | Alexey Veselovsky [ Пятница, 29 Октябрь, 2010 15:58 ] |
Заголовок сообщения: | Re: Типичная проблема выбора. |
Рэйлвэй Каген писал(а): Alexey Veselovsky писал(а): Есть две программы... Разработчики второй программы уже переросли главную проблему,Одна размером примерно в 25 тыс. строк кода и активно развивается, а другая 4 тыщи строк понятного кода и хорошо задокументирована (в т.ч. потроха), но труп (т.е. никем не пилится, сообщества нет, поддержки нет и т.п.). Вопрос -- что выбрать? .. Вот сижу как буриданов осёл между этими двумя вариантами и рискую повторить его судьбу.. а разработчики первой ещё и не увидели её(судя по масштабам кодостроительства, им это и не светит). А озвучьте, для определенности, Главную Проблему. Рэйлвэй Каген писал(а): Alexey Veselovsky писал(а): потребуется показывать уже записанное и уже хранящееся на диске видео. Соответственно нужна поддержка mp4, avi, mp3 и проч форматов-контейнеров. В последнем Вы точно уверены? А если формат хранения максимально приблизить к формату вещания? Т.е. напрашивается вывод, что главная проблема решается явно не на уровне выбора из какой кучи копипастить.Про копипасту речи нет. Вопрос в том, на базе чего делать своё решение. На счет форматов -- вот залил тебе пользователь на сервер файл в mp4, а другие хотят просмотреть то, что он залил. Либо хранить его as is, либо конвертировать. В обоих случаях нужно уметь mp4 формат. Это первый случай. Случай второй -- вот есть у нас сетевая камера. Она выдает скажем rtp поток. Или rtsp. Польователь зашел и хочет посмотреть что видно с этой камеры. Как тут быть не умея rtp и/или rtsp? Другое дело что я не знаю точно понадобится это (именно эти варианты использования сервиса) или нет. А решать надо сейчас. |
Автор: | Рэйлвэй Каген [ Пятница, 29 Октябрь, 2010 16:15 ] |
Заголовок сообщения: | Re: Типичная проблема выбора. |
Alexey Veselovsky писал(а): А озвучьте, для определенности, Главную Проблему. формат храненияAlexey Veselovsky писал(а): Вопрос ещё в том, на базе чего делать своё решение.. Либо хранить его as is, либо конвертировать. Вы практически ответили.. Вопрос в том, до какой глубины конвертировать. Соответственно прояснится нагрузка на софтину.Alexey Veselovsky писал(а): Как тут быть не умея rtp и/или rtsp? это как раз нужно уметь лучше всего, раз уж Вы опираетесь на вещание в этих форматах.
|
Автор: | Alexey Veselovsky [ Пятница, 29 Октябрь, 2010 16:23 ] |
Заголовок сообщения: | Re: Типичная проблема выбора. |
Рэйлвэй Каген писал(а): Alexey Veselovsky писал(а): А озвучьте, для определенности, Главную Проблему. формат храненияФормат хранения очень сильно зависит от того каким образом видео попало на сервер и что с ним в дальнейшем планируется делать. Возможно его не надо вообще хранить (это, кстати, наиболее распространенный случай). Рэйлвэй Каген писал(а): Alexey Veselovsky писал(а): Вопрос ещё в том, на базе чего делать своё решение.. Либо хранить его as is, либо конвертировать. Вы практически ответили.. Вопрос в том, до какой глубины конвертировать. Соответственно прояснится нагрузка на софтину.Я ж говорю -- перосто перекладываение из одного контейнера в другой. О конвертации самих медиаданных речи не идет. Я ж написал поддержка mp4, avi а не h264, h261 и т.п. Рэйлвэй Каген писал(а): Alexey Veselovsky писал(а): Как тут быть не умея rtp и/или rtsp? это как раз нужно уметь лучше всего, раз уж Вы опираетесь на вещание в этих форматах.Вещать в этих форматах никто собственно не (пока) собирается. В этих форматах оно может идти на вход сервера. Вещание идет в rtmp. Это функционал может понадобиться, а может не понадобиться. Точный объем rfc описывающих эти форматы и протоколы вы можете посмотреть сами. |
Автор: | Рэйлвэй Каген [ Пятница, 29 Октябрь, 2010 16:55 ] |
Заголовок сообщения: | Re: Типичная проблема выбора. |
Как-то Вы на ходу меняете исходные.. Alexey Veselovsky писал(а): возможно нужно будет реализовать вещание видео.. Alexey Veselovsky писал(а): На вход серверу идет rtp либо rtsp либо rtmp. Он раздает это видео множеству подключенных клиентов по rtmp. Alexey Veselovsky писал(а): Либо хранить его as is, либо конвертировать. А теперь "не хранить", "не конвертировать", "не вещать".. Но дело даже не в этом - какбэ нас не отстрелили за флейм ![]() 1. Сама постановка вопроса "чьё решение допиливать" из-за незаложенного другими функционала не лежит в плоскости проектирования, особенно при отсутствии отмашки от начальства. 2. Вопрос о технической разнице между указанными конкретными реализациями неизбежно сведётся к анализу формата хранения сообразно Вашей задаче. Одно дело допиливать потроха, совсем другое - некий модуль расширения функциональности(не трогая базовые вещи). |
Автор: | Alexey Veselovsky [ Пятница, 29 Октябрь, 2010 17:13 ] |
Заголовок сообщения: | Re: Типичная проблема выбора. |
Рэйлвэй Каген писал(а): Как-то Вы на ходу меняете исходные.. Неа. Не меняю. Сейчас уточню.Alexey Veselovsky писал(а): возможно нужно будет реализовать вещание видео.. Да. Вещание по rtmp. (не путать с rtsp и rtp). Alexey Veselovsky писал(а): На вход серверу идет rtp либо rtsp либо rtmp. Он раздает это видео множеству подключенных клиентов по rtmp. Да, на вход идет rtmp, rtp, rtsp. При этом rtmp -- точно. rtp и rtsp могут понадобиться, а могут не понадобится. Тот самый не однозначный функционал. о котором было сказано сразу в первом же сообщении. Рэйлвэй Каген писал(а): Alexey Veselovsky писал(а): Либо хранить его as is, либо конвертировать. А теперь "не хранить", "не конвертировать", "не вещать".. Но дело даже не в этом - какбэ нас не отстрелили за флейм ![]() Не вещать (а может и вещать) в rtp и rtsp, вещать в rtmp. Эти волшебные непонятные аббревиатуры, такие похожие и все начинающиеся на букву 'r' всё же сильно разные и это имеет значение ![]() Нужно будет хранить (читать или писать) в mp4, avi формате или нет -- также не известно. Возможно, что да. Рэйлвэй Каген писал(а): 1. Сама постановка вопроса "чьё решение допиливать" из-за незаложенного другими функционала не лежит в плоскости проектирования, особенно при отсутствии отмашки от начальства. Что-то тут второй раз уже упоминается некое мифическое начальство. Эмм.. Попытка переложить ответственность? ![]() Рэйлвэй Каген писал(а): 2. Вопрос о технической разнице между указанными конкретными реализациями неизбежно сведётся к анализу формата хранения сообразно Вашей задаче. Одно дело допиливать потроха, совсем другое - некий модуль расширения функциональности(не трогая базовые вещи). Ещё раз -- сейчас можно хранить как угодно, (на первом этапе можно не хранить вообще). Хоть в своём формате, просто потому, что источник данных ровно один -- rtmp-поток. Это вот прямо сейчас. И это будет сделано независимо от того что будет выбрано. В дальнейшем может потребоваться уметь понимать mp4, avi, rtp, rtsp. Просто потому, что расширение функционала решения может пойти в сторону расширения видов источников данных. Т.е. пользователь сможет залить видеофайл. Сможет подключить сетевую видеокамеру и т.п. |
Автор: | Рэйлвэй Каген [ Пятница, 29 Октябрь, 2010 17:34 ] |
Заголовок сообщения: | Re: Типичная проблема выбора. |
Нууу.. С такой "бородой" - только из собственного бизнес-модуля vlc батником пускать ![]() |
Автор: | Alexey Veselovsky [ Пятница, 29 Октябрь, 2010 17:40 ] |
Заголовок сообщения: | Re: Типичная проблема выбора. |
Рэйлвэй Каген писал(а): Нууу.. С такой "бородой" - только из собственного бизнес-модуля vlc батником пускать ![]() VLC вообще не вариант. Разве что прикручивать его сбоку, для конвертирования куда-то там. Это как-то слишком криво... |
Автор: | Рэйлвэй Каген [ Пятница, 29 Октябрь, 2010 17:52 ] |
Заголовок сообщения: | Re: Типичная проблема выбора. |
Alexey Veselovsky писал(а): там допиливать сильно сложнее, но возможно не придется допиливать вообще, либо допилит кто-то другой, либо допил потребуется небольшой, с малой долей вероятности -- большой и геморройный. Честно говоря, это ближе к "сдохнет либо шах, либо ишак". По первому варианту ишак сдохнет точно. Вот такая эмпирика получается ![]() |
Страница 1 из 2 | Часовой пояс: UTC + 3 часа |
Powered by phpBB® Forum Software © phpBB Group https://www.phpbb.com/ |