LINUX.ORG.RU

Релиз видеоконвертера Cine Encoder версия 3.0

 ,

Релиз видеоконвертера Cine Encoder версия 3.0

0

1

После нескольких месяцев работы вышла новая версия программы Cine Encoder 3.0 для обработки видео. Программа была полностью переписана с Python на С++, использует в своей работе утилиты FFmpeg, MkvToolNix и MediaInfo. Существуют пакеты под основные дистрибутивы: Debian, Ubuntu 20.04, Fedora 32, CentOS 7.8, Arch Linux, Manjaro Linux. В новой версии полностью переделан интерфейс, добавлено пакетное конвертирование, режим двухпроходного кодирования и работа с пресетами, добавлена функция паузы при конвертировании. Также программа может использоваться для изменения метаданных HDR, таких, как Master Display, maxLum, minLum, и других параметров.

>>> Сайт программы



Проверено: Shaman007 ()

Единорогам над таким только блевать…

fornlr ★★★★★
()
Последнее исправление: fornlr (всего исправлений: 1)

То есть гуй для консольных утилит переписали на кресты и считают это прогрессом?

AnDoR ★★★★★
()

Ну вот, молодец.

Aceler ★★★★★
()

Ждем версию 4.0, переписанную на rust

anonymous
()
Ответ на: комментарий от fallout4all

Про удобство для мышепользователей речи не шло. Вероятно, их удобство никак не поменялось, если переписывали 1-в-1.

AnDoR ★★★★★
()
Ответ на: комментарий от igloev

Это гуй для ffmpeg и ещё кучи утилит, там же написано.

Зачем нужен гуй для консольной утилиты? Да пол-линукса так работает.

Aceler ★★★★★
()

Ауропомойка != есть пакет для арча

xDShot ★★★★★
()
Ответ на: комментарий от eternal_sorrow

И да, не нужно.

Не забывай добавлять «ИМХО». Чем больше свободного софта, тем лучше. Не стоит фрустрировать авторов.

Linfan ★★★★★
()
Последнее исправление: Linfan (всего исправлений: 1)

Есть идея сделать периодическую приостановку, чтоб процессор не перегревался. Насколько это актуально?

Oleg1980
() автор топика
Ответ на: комментарий от igloev

А нахрен оно при существовании в природе ffmpeg…

затем, чтобы не лазить в man по каждому чиху.

anonymous
()
Ответ на: комментарий от igloev

Некоторые вещи в консольном ффмпег неудобны и неочевидны. Даже просто нарезать видео - боль, вместо нужных отрезков времени типа надо указывать время начала и продолжительность.

Ros ★★★★
()
Ответ на: комментарий от Ros
       -to position (input/output)
           Stop writing the output or reading the input at position.  position
           must be a time duration specification, see the Time duration section
           in the ffmpeg-utils(1) manual.

anonymous
()

cine-encoder зависит от libmediainfo-dev

Это нафига? Он сам себя ещё собирать будет?

simburde
()
Последнее исправление: simburde (всего исправлений: 1)
Ответ на: комментарий от igloev

Это раз, два – не все умеют в консоль, три – на оффтопике в консоль умеют ещё меньше

anonymous
()
Ответ на: комментарий от igloev

<А нахрен оно при существовании в природе ffmpeg…

Во всем виноват заядлый виндоузятник StaxRip, - когда попросил его сделать версию для Линукс, тот сказал, что работает только в Виндовз и не собирается даже вникать… Пришлось с нуля писать свою собственную прогу. А так бы и не начинал ничего делать…

Oleg1980
() автор топика
Последнее исправление: Oleg1980 (всего исправлений: 2)

То, что такая программа есть, это хорошо.

Но я вот глянул в исходники… Куча глобальных переменных (хоть и завёрнутых в namespace), причём прямо в mainwindow.cpp:

QString _cur_preset_name = "";
bool p7;
int p1, p2, p3, p8, p11, p12, p13, p18, p21, p22, pos_top, pos_cld;
QString p4, p5, p6, p9, p10, p14, p15, p16, p17, p19, p20;
QVector <QVector <QString> > _preset_table(24, QVector<QString>(5, ""));
QProcess *process_1 = new QProcess;
QProcess *process_5 = new QProcess;
QString _settings_path = QDir::homePath() + "/CineEncoder";
...

Из этого половина просится в отдельный класс, другая половина в какой-нибудь string list. Имена вроде p14 — это вообще за гранью добра и зла.

Энтузиазм у тебя есть, это хорошо, но над стилем поработай. Иначе через пару лет ты сам не поймёшь, чего ты в этих исходниках накрутил.

hobbit ★★★★★
()
Ответ на: комментарий от Linfan

Не забывай добавлять «ИМХО».

@hobbit

Забыл добавить «мне».

Это само собой разумеется. Я же не от лица кого то дугого пишу.

Чем больше свободного софта, тем лучше.

только если он годный

Не стоит фрустрировать авторов.

стоит, если они пишут ненужно. пусть переписывают

eternal_sorrow ★★★★★
()
Ответ на: комментарий от eternal_sorrow

только если он годный

Ну прям мед, да еще и ложку :)

стоит, если они пишут ненужно. пусть переписывают

Если есть конкретные замечания/пожелания - в багтрекер или хотя бы тут напиши. А просто наброс на вентилятор неконструктивен от слова совсем. Любому афтырю есть куда прогрессировать в знаниях. Но если получать ушат помоев под лозунгом «нинужно», такое мотивирует писать только в закрытую репу «для себя».

Linfan ★★★★★
()
Последнее исправление: Linfan (всего исправлений: 1)
Ответ на: комментарий от Oleg1980

Нужен, у меня AUR на него завязан

Серьезно? Дебажная сборка без оптимизаций лежит в AUR’е?

И давно ли это AUR/ABS разучился вызывать qmake CONFIG+=release app/cine_encoder.pro?

EXL ★★★★★
()
Ответ на: комментарий от eternal_sorrow

Qt хрень, переписывай на GTK

GTK хрень, оставляй на Qt

anonymous
()
Ответ на: комментарий от EXL

Нет, у меня стабильно работает, но мало-ли. Пару недель на дебаге, потом переделаю на релиз. Разрабы Qt посоветовали Ассерт поставить при удалении элементов QTreeWidget и погонять в дебаге.

QTreeWidgetItem *takenItem = parentItem->takeChild(parentItem->indexOfChild(item));
Q_ASSERT(takenItem==item);
delete takenItem;

а так всё работает, прогонял на valgrind, утечек нет

Oleg1980
() автор топика
Последнее исправление: Oleg1980 (всего исправлений: 4)
Ответ на: комментарий от devl547

Вдохновение явно из a’s video encoder черпали

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

Oleg1980
() автор топика
Последнее исправление: Oleg1980 (всего исправлений: 1)
Ответ на: комментарий от eternal_sorrow

Если софт на Qt - он говно по умолчанию.

Искренние заблуждения простительны. «Прости им, ибо не ведают, что творят» (с)

Linfan ★★★★★
()
Ответ на: комментарий от Oleg1980

Софт не ковырял - не работаю с видео. Но отсутствие сборки под оффтопик это уверенная заявка на отсутствие пользовательской базы.

Linfan ★★★★★
()
Ответ на: комментарий от eternal_sorrow

Моё искреннее мнение таково: если комментарий написал eternal_sorrow, то он априори говно. Ненуачо, мнение у меня такое.

Сходи лучше к доктору, у тебя фанатизьм межушного ганглия.

anonymous
()
Ответ на: комментарий от Oleg1980

Ты ошибаешься. Qt - это комбайн, в то время как GTK - узко специализированная библиотека. Но если тебе помимо собственно GUI нужны какие то ещё возможности, которые встроены в Qt, то в экосистеме GObject скорее всего есть подходящая библиотека для этого. А если нет, то можно подобрать стороннюю библиотеку, тогда как использовать сторонние библиотеки в коде на Qt затруднительно из за несовместимости типов.

Ну и да, с Qt ты привязан жёстко к C++ (вроде я слышал про биндинги для python, но не знаю, насколько они актуальны). В то время, как к GTK благодаря GObject Introspection существуют биндинги в куче языков.

eternal_sorrow ★★★★★
()

Релиз видеоконвертера Cine Encoder версия 3.0

У меня там Q_ASSERT в программе, поэтому надо в дебаге погонять немного

Чувак давай будем честными, исправь заголовок на

Дебаг видеоконвертера Cine Encoder версия 0.3

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.