Вот читаю всю эту шляпу тут и диву даюсь. А не проще ли и быстрее вместо всего этого дрочева с агентами агентами агентов, и прочей пое*енью просто взять и руками код писать? Такое впечатление что люди готовы неделю канителиться чтобы заставить всю эту херь сгенерировать код который можно за день написать. Это такая самоцель что ли?
Между прочим, идея не нова. Сдача экзаменов на “вендорские” сертификаты (например, от MS, Oracle, и т.п.) именно так и проходит. Идёшь в местный офис какой-либо их авторизованной компании, сдаёшь мобилу, садишься за компьютер и проходишь экзамен :) Я, например, свои все экзамены так в “Софтлайне” когда-то сдавал.
while(true)
{
// здесь код...
if(someCondition)
{
break;
}
// здесь код ...
}
это далеко не “идеально” с точки зрения структурного программирования, но очень распространенный шаблон, который позволяет написать что-то намного короче и понятней, чем в случае “идеального” кода.
Вы, сударь, похоже, не на тот сайт по ошибке статью опубликовали. У нас тут сайт целиком посвященный всемирному торжеству Вайб-Кодинга, а вы тут с каким-то FORTH, конечными автоматами, и машинами Тьюринга :-)))
Наху*й рекрутеров. Я скоро начну искать работу и от собеседования с рекрутерами буду сразу отказываться принципиально. Не нравится - нанимайте вайб-обезьян. Я половину “нулевых” вполне неплохо провел переписывая код за индийскими обезьянами, если что, то подожду пока теперь вайбовые достаточно наговнокодят.
Чтобы транскодинга не было вообще можно заранее сконвертировать видео в “правильный” формат. Для ТВ я не знаю, сам смотрю JF через его собственную веб-морду, в этом случае заклинание для ffmpeg например такое:
В этом случае вызов ffmpeg в логах всё-таки будет виден, но, не пугайтесь - это уже не транскодинг, а просто нарезка на “чанки”, которая не ресурсоемкая.
Если нужны субтитры, то надо найти нужный поток в контейнере и извлечь их в отдельный файл:
<#
.SYNOPSIS
Converts a specified input video file to the Jellyfin-optimized format.
#>
function ConvertTo-JellyfinVideo {
[CmdletBinding()]
param (
# The input media file path.
[Parameter(Mandatory, Position = 0)]
[string]
$Path,
# The output media file path.
[Parameter(Mandatory)]
[string]
$OutFile,
# The list of stream indices to include to the output.
# If empty, all video and audio streams are included.
[Parameter()]
[int[]]
$Stream,
# Subtitle stream to extract in the form like:
# @{"en.srt" = 7}
[Parameter()]
[hashtable]
$Subtitle
)
#
# Video/audio extraction and conversion
#
$mapArgList =
$Stream ?
($Stream | ForEach-Object { "-map", "0:$_" }) :
@('-map', '0:v', '-map', '0:a')
ffmpeg -i $Path `
-c:v libx264 -preset veryfast -crf 23 `
-profile:v high -level 4.1 -pix_fmt yuv420p `
-vf "scale=-2:720" `
-c:a aac -b:a 192k -ac 2 -ar 48000 `
$mapArgList `
$OutFile
#
# Subtitles extraction
#
if($Subtitle) {
foreach($subtitleExtension in $Subtitle.Keys) {
$subtitleOutFile = [System.IO.Path]::ChangeExtension($OutFile, $subtitleExtension)
$subtitleStream = $Subtitle[$subtitleExtension]
ffmpeg -i $Path -c copy -map "0:$subtitleStream" $subtitleOutFile
}
}
}
Set-Alias ctjfv ConvertTo-JellyfinVideo
Номера нужных потоков (для выбора аудиодорожек и субтитров) можно узнать с помощью ffprobe -i myvideo.avi
Чтобы JF нормально находил метаданные видео на TMDB и IMDB следует правильно именовать файл видео: например Title (Year).mp4- работает в 99% процентах случаев. В тех редких случаях когда это не срабатывает можно явно указать id фильма на TMDB или/и на IMDB добавив их к названию: Title (Year) [imdbid-***] [tmdbid-***].mp4 - это всё описано в документации к JF на их сайте. Нужные id ищутся на сайтах IMDB или TMDB - они видны в адресной строке браузера на странице фильма.
Windows ставить для JF совсем не обязательно - он написан на .NET и спокойно работает под Linux или в контейнере Docker. Лично у меня он стоит в докере, на домашнем “сервере” из старого ноутбука под Debian.
Еще насчет transmission - чтобы он не ходил в интернет через VPN/VPS, (за что хостер VPS может вас вые*ать), в случае установки на Linux, его в конфиге можно привязать к отдельному интерфейсу и настроить policy-based routing, но это уже отдельная история :)
С TMDB есть еще один нюанс. Они блокируют российские IP с помощью своего DNS - можно поколдовать с /etc/hosts, но надёжней, всё-таки, ходить к ним через VPN.
Для transmission можно на любую машину поставить “Transmission Qt Client” и управлять им удалённо - нужно только открыть TCP порт 9091 (по умолчанию), ну или настроить в конфиге на свой вкус.
Я давно уже не студент-тоечник (который, в своё время, ни разу летнюю сессию раньше осени не закрывал :))) Но, курс “Теория реляционных БД” у меня был году так в 2002, и я сейчас не смогу дать точное определение НФБК в терминах ФЗ, но на пальцах, наверное, смог бы. Вопрос был бы скорее чтобы понять - есть у человека хоть какое-то образование в данной области (БД) или это “настоящий программист”, “от сохи”, освоивший всё это “в процессе работы”, как сейчас положено - ведь настоящие программисты осваивают всё в процессе работы над продакшеном, без учебников, без книг, без документации - именно такие нам нужны.
Скорее желание помочь опытным специалистам адаптироваться к новым условиям рынка и упростить путь к заветному офферу.
Адаптироваться к HR-долбое*ам, таким же как вы, желания нет никакого. На жизнь себе я и без ИТ худо-бедно заработаю, а вы нанимайте себе LLM-обезьян - воля ваша.
Тест для «сеньора»: в каком типе данных хранить номер паспорта?
Если у вас это "тест для синьора", то затрудняюсь даже представить, какой у вас "тест для джуна". Что он на собеседовании хотя бы не мычит, не ссытся под себя и не пускает слюну изо рта?
В статье много чего-то современно-научного, но, в общем-то любой, кто хоть немного знаком с парусным спортом и так знает, что любая самая обычная гоночная яхта совершенно спокойно идёт против ветра галсом со скоростью быстрее скорости самого ветра :)
Что же. Придется всё-таки найти и прочитать. Потому что тут узнал, что на собеседованиях любят спрашивать про обход бинарного дерева. Как будто я пришел туда диссертацию по кибернетике защищать.
Вот читаю всю эту шляпу тут и диву даюсь. А не проще ли и быстрее вместо всего этого дрочева с агентами агентами агентов, и прочей пое*енью просто взять и руками код писать? Такое впечатление что люди готовы неделю канителиться чтобы заставить всю эту херь сгенерировать код который можно за день написать. Это такая самоцель что ли?
Я еще могу хоть как-то понять интернет на стиральной машинке или даже чайнике, но на пылесосе-то он зачем??? :-О
Всё, теперь уж точно пора переходить на Linux.
Да-да. Ведь именно в начальной школе еще не знают, что подчеркивание в доменном имени это недопустимый символ (сюрприз?).
Между прочим, идея не нова. Сдача экзаменов на “вендорские” сертификаты (например, от MS, Oracle, и т.п.) именно так и проходит. Идёшь в местный офис какой-либо их авторизованной компании, сдаёшь мобилу, садишься за компьютер и проходишь экзамен :) Я, например, свои все экзамены так в “Софтлайне” когда-то сдавал.
Ну, честно говоря, такая штука как:
это далеко не “идеально” с точки зрения структурного программирования, но очень распространенный шаблон, который позволяет написать что-то намного короче и понятней, чем в случае “идеального” кода.
Не зае*ало еще? :(
Вы, сударь, похоже, не на тот сайт по ошибке статью опубликовали. У нас тут сайт целиком посвященный всемирному торжеству Вайб-Кодинга, а вы тут с каким-то FORTH, конечными автоматами, и машинами Тьюринга :-)))
А я не спешу.
Наху*й рекрутеров. Я скоро начну искать работу и от собеседования с рекрутерами буду сразу отказываться принципиально. Не нравится - нанимайте вайб-обезьян. Я половину “нулевых” вполне неплохо провел переписывая код за индийскими обезьянами, если что, то подожду пока теперь вайбовые достаточно наговнокодят.
Чтобы транскодинга не было вообще можно заранее сконвертировать видео в “правильный” формат. Для ТВ я не знаю, сам смотрю JF через его собственную веб-морду, в этом случае заклинание для
ffmpegнапример такое:В этом случае вызов
ffmpegв логах всё-таки будет виден, но, не пугайтесь - это уже не транскодинг, а просто нарезка на “чанки”, которая не ресурсоемкая.Если нужны субтитры, то надо найти нужный поток в контейнере и извлечь их в отдельный файл:
У меня всё это делается давно созданным скриптом:
Hidden text
Номера нужных потоков (для выбора аудиодорожек и субтитров) можно узнать с помощью
ffprobe -i myvideo.aviЧтобы JF нормально находил метаданные видео на TMDB и IMDB следует правильно именовать файл видео: например
Title (Year).mp4- работает в 99% процентах случаев. В тех редких случаях когда это не срабатывает можно явно указатьidфильма на TMDB или/и на IMDB добавив их к названию:Title (Year) [imdbid-***] [tmdbid-***].mp4- это всё описано в документации к JF на их сайте. Нужныеidищутся на сайтах IMDB или TMDB - они видны в адресной строке браузера на странице фильма.Windows ставить для JF совсем не обязательно - он написан на .NET и спокойно работает под Linux или в контейнере Docker. Лично у меня он стоит в докере, на домашнем “сервере” из старого ноутбука под Debian.
Еще насчет
transmission- чтобы он не ходил в интернет через VPN/VPS, (за что хостер VPS может вас вые*ать), в случае установки на Linux, его в конфиге можно привязать к отдельному интерфейсу и настроить policy-based routing, но это уже отдельная история :)С TMDB есть еще один нюанс. Они блокируют российские IP с помощью своего DNS - можно поколдовать с /etc/hosts, но надёжней, всё-таки, ходить к ним через VPN.
Для transmission можно на любую машину поставить “Transmission Qt Client” и управлять им удалённо - нужно только открыть TCP порт 9091 (по умолчанию), ну или настроить в конфиге на свой вкус.
Я не особо в теме вашей проблемы, но разве нельзя всё то же самое было сделать просто скриптом из нескольких строк с:
Попробуйте пройти какой-нибудь “специализированный” экзамен ЕГЭ, скажем, по физике - весьма удивитесь.
Я давно уже не студент-тоечник (который, в своё время, ни разу летнюю сессию раньше осени не закрывал :))) Но, курс “Теория реляционных БД” у меня был году так в 2002, и я сейчас не смогу дать точное определение НФБК в терминах ФЗ, но на пальцах, наверное, смог бы. Вопрос был бы скорее чтобы понять - есть у человека хоть какое-то образование в данной области (БД) или это “настоящий программист”, “от сохи”, освоивший всё это “в процессе работы”, как сейчас положено - ведь настоящие программисты осваивают всё в процессе работы над продакшеном, без учебников, без книг, без документации - именно такие нам нужны.
Рынок переживает е*анутость.
Адаптироваться к HR-долбое*ам, таким же как вы, желания нет никакого. На жизнь себе я и без ИТ худо-бедно заработаю, а вы нанимайте себе LLM-обезьян - воля ваша.
На сеньора-помидора я бы например спросил чем 3НФ отличается от НФБК..
Если у вас это "тест для синьора", то затрудняюсь даже представить, какой у вас "тест для джуна". Что он на собеседовании хотя бы не мычит, не ссытся под себя и не пускает слюну изо рта?
В статье много чего-то современно-научного, но, в общем-то любой, кто хоть немного знаком с парусным спортом и так знает, что любая самая обычная гоночная яхта совершенно спокойно идёт против ветра галсом со скоростью быстрее скорости самого ветра :)
Что же. Придется всё-таки найти и прочитать. Потому что тут узнал, что на собеседованиях любят спрашивать про обход бинарного дерева. Как будто я пришел туда диссертацию по кибернетике защищать.