Sphynkx (обсуждение | вклад) Нет описания правки Метка: визуальный редактор отключён |
Sphynkx (обсуждение | вклад) |
||
| (не показано 5 промежуточных версий этого же участника) | |||
| Строка 8: | Строка 8: | ||
filename.srt формируется из cb_video.file_name и cb_video_subtitle.number. Как выглядит содержимое cb_video_subtitle.number пока непонятно - таблица пуста. | filename.srt формируется из cb_video.file_name и cb_video_subtitle.number. Как выглядит содержимое cb_video_subtitle.number пока непонятно - таблица пуста. | ||
Написан скрипт генерации субтитлов с применением ai-whisper. Через него сгенерены субтитлы для тестового файла. Затем они заэмбедены в файл: | === Проба с самодельным видео с субтитрами === | ||
<syntaxhighlight lang="bash" | Написан скрипт (~/whisper/gen_subtitles.py) генерации субтитлов с применением [https://github.com/openai/whisper ai-whisper]. Через него сгенерены субтитлы для тестового файла. Затем они заэмбедены в файл: | ||
<syntaxhighlight lang="bash"> | |||
ffmpeg -i "как вы относитесь к американцам.mp4" -vf subtitles="как вы относитесь к американцам.srt" 'kak_with subtitles.mp4' | ffmpeg -i "как вы относитесь к американцам.mp4" -vf subtitles="как вы относитесь к американцам.srt" 'kak_with subtitles.mp4' | ||
</syntaxhighlight> | </syntaxhighlight> | ||
Файл проверен (вернул 1 в случае наличия): | Файл проверен (вернул 1 в случае наличия): | ||
<syntaxhighlight lang="bash" | <syntaxhighlight lang="bash"> | ||
ffmpeg -i 'kak_with subtitles.mp4' -c copy -map 0:s:0 -frames:s 1 -f null - -v 0 -hide_banner; echo $? | ffmpeg -i 'kak_with subtitles.mp4' -c copy -map 0:s:0 -frames:s 1 -f null - -v 0 -hide_banner; echo $? | ||
</syntaxhighlight> | </syntaxhighlight> | ||
Вендовый плеер показывает субтитлы, уже врисованные в картинку кадров. Клипбукет после загрузки этого видео не выдал признаков работы с субтитлами. Таблица cb_video_subtitle пуста. Попытка подкинуть files/subtitles/2024/03/17/1710674378a7c19.srt (как бы в соответствии с залитым видео) не дало эффекта. | Вендовый плеер показывает субтитлы, уже врисованные в картинку кадров. Клипбукет после загрузки этого видео не выдал признаков работы с субтитлами. Таблица cb_video_subtitle пуста. Попытка подкинуть '''files/subtitles/2024/03/17/1710674378a7c19.srt''' (как бы в соответствии с залитым видео) не дало эффекта. | ||
В логах обработки указано что субтитлы не обнаружены. | |||
=== Проба с matroska-видео с субтитрами === | |||
Использован тестовый видеофайл [https://github.com/ietf-wg-cellar/matroska-test-files/blob/master/test_files/test5.mkv test5.mkv] в котором содержатся 8 языковых субтитров. Вендовый плеер правильно все отображает. 1 из языков (und) непонятно какой, отбражался кракозябрами (возм.иероглифы). В клипбукете зааплоадился и пошел в обработку. Логи показали что найдены и экстрагируются субтитлы - 7 шт. за исключением непонятного und. При проигрывании в плеере появилась опция субтитлов с выбором 7 яз. Но субтитры не отображаются. В '''files/subtitles/2024/03/17/''' пусто. В таблице cb_video_subtitle появились записи: | |||
<syntaxhighlight lang="sql"> | |||
SELECT * FROM cb_video_subtitle; | |||
+---------+--------+-------+ | |||
| videoid | number | title | | |||
+---------+--------+-------+ | |||
| 11 | 01 | eng | | |||
| 11 | 02 | hun | | |||
| 11 | 03 | ger | | |||
| 11 | 04 | fre | | |||
| 11 | 05 | spa | | |||
| 11 | 06 | ita | | |||
| 11 | 07 | jpn | | |||
+---------+--------+-------+ | |||
</syntaxhighlight> | |||
Предположительно, функция в классе Mpeg ('''includes/classes/conversion/ffmpeg.class.php''':306 public function extract_subtitles() ) не смогла записать файлы, но и не выдала ошибок. Каталог на тот момент был уже создан. | |||
Во 2й попытке при включенном дев-режиме сгенерились субтитры (внутри - формат WEBVTT): | |||
:17106855557fdc5-01.srt 17106855557fdc5-02.srt 17106855557fdc5-03.srt 17106855557fdc5-04.srt 17106855557fdc5-05.srt 17106855557fdc5-06.srt 17106855557fdc5-07.srt | |||
Также получились более подробные логи, в которых видно что все прошло хорошо.. В коде фции extract_subtitles() есть условие '''if (in_dev())''' но оно только подключает подробное логирование. | |||
Повторная попытка конвертации в обычном режиме привела к генерации субтитров - видимо в 1й раз случился какой-то сбой. | |||
Текущая версия от 17:04, 17 марта 2024
includes/classes/conversion/ffmpeg.class.php:306
- public function extract_subtitles()
намекает на то что субтитлы сами не генерятся, а лишь извлекаются, в случае если они эмбедед в видеофайле.
includes/functions_video.php:
- get_video_subtitles($vdetails)
считывает субтитлы из пути files/subtitles/YYYY/MM/DD/filename.srt filename.srt формируется из cb_video.file_name и cb_video_subtitle.number. Как выглядит содержимое cb_video_subtitle.number пока непонятно - таблица пуста.
Проба с самодельным видео с субтитрами[править | править код]
Написан скрипт (~/whisper/gen_subtitles.py) генерации субтитлов с применением ai-whisper. Через него сгенерены субтитлы для тестового файла. Затем они заэмбедены в файл:
ffmpeg -i "как вы относитесь к американцам.mp4" -vf subtitles="как вы относитесь к американцам.srt" 'kak_with subtitles.mp4'
Файл проверен (вернул 1 в случае наличия):
ffmpeg -i 'kak_with subtitles.mp4' -c copy -map 0:s:0 -frames:s 1 -f null - -v 0 -hide_banner; echo $?
Вендовый плеер показывает субтитлы, уже врисованные в картинку кадров. Клипбукет после загрузки этого видео не выдал признаков работы с субтитлами. Таблица cb_video_subtitle пуста. Попытка подкинуть files/subtitles/2024/03/17/1710674378a7c19.srt (как бы в соответствии с залитым видео) не дало эффекта.
В логах обработки указано что субтитлы не обнаружены.
Проба с matroska-видео с субтитрами[править | править код]
Использован тестовый видеофайл test5.mkv в котором содержатся 8 языковых субтитров. Вендовый плеер правильно все отображает. 1 из языков (und) непонятно какой, отбражался кракозябрами (возм.иероглифы). В клипбукете зааплоадился и пошел в обработку. Логи показали что найдены и экстрагируются субтитлы - 7 шт. за исключением непонятного und. При проигрывании в плеере появилась опция субтитлов с выбором 7 яз. Но субтитры не отображаются. В files/subtitles/2024/03/17/ пусто. В таблице cb_video_subtitle появились записи:
SELECT * FROM cb_video_subtitle;
+---------+--------+-------+
| videoid | number | title |
+---------+--------+-------+
| 11 | 01 | eng |
| 11 | 02 | hun |
| 11 | 03 | ger |
| 11 | 04 | fre |
| 11 | 05 | spa |
| 11 | 06 | ita |
| 11 | 07 | jpn |
+---------+--------+-------+
Предположительно, функция в классе Mpeg (includes/classes/conversion/ffmpeg.class.php:306 public function extract_subtitles() ) не смогла записать файлы, но и не выдала ошибок. Каталог на тот момент был уже создан.
Во 2й попытке при включенном дев-режиме сгенерились субтитры (внутри - формат WEBVTT):
- 17106855557fdc5-01.srt 17106855557fdc5-02.srt 17106855557fdc5-03.srt 17106855557fdc5-04.srt 17106855557fdc5-05.srt 17106855557fdc5-06.srt 17106855557fdc5-07.srt
Также получились более подробные логи, в которых видно что все прошло хорошо.. В коде фции extract_subtitles() есть условие if (in_dev()) но оно только подключает подробное логирование.
Повторная попытка конвертации в обычном режиме привела к генерации субтитров - видимо в 1й раз случился какой-то сбой.