Но вот эта команда у вас по идее ничего в TIME не заносит, правда TIME дальше по скрипту не используется?
TIME=$(echo $GET_TIME>/root/telegram/previous_post_time.json)
Я больше подозреваю, что может сам телеграм подтормаживать или curl, тут бы конечно больше логирования и добавить деталей от курл
Вообще не трудоемко.
Если говорить про линукс, то второй файл прочитается только один раз, дальше будет грепаться из кеша.
Опять же, вы не указали каких примерно размеров будет файл. Если настолько больших, что вам кажется что это трудоемко, то тогда путь один - все кидать в базу и делать уже запросы там. но я в этом сомневаюсь
Saboteur
@saboteur_kiev Куратор тега Разработка игр
Leonid Runin, Так если у вас есть огромные деньги то наймите бухгалтера для оформления и с ним консультируйтесь. Будет лучше, чем у рандомных людей из РАЗНЫХ СТРАН с разной юриспруденцией спрашивать.
но это как раз потому что в исходнике нет как таковых стримов, есть только кусочки с таймстампами, и видимо отрезано не очень удачно.
Если производитель камеры свою консольную утилиту не предлагает - значит в лучшем случае искать энтузиастов которые такую написали, в худшем - писать самому.
Но IMHO все что энтузиасты написали я уже нашел
Saboteur
@saboteur_kiev Куратор тега Разработка игр
Вы миллионер-благотворитель, или откуда деньги на подарки?
Если вы собираетесь материальные средства в своей игре двигать только в одну сторону - игроки НИЧЕГО, а вы им реальные подарки, то скидки - это обычно договоренность с магазинами, которые могут выдаваться в виде кодового слова в игре, и таким образом вы вообще никак в финансовой операции не участвуете, все издержки на себя берет магазин.
Если же лично вы будете дарить материальные подарки, то нужно помнить, что подарок облагается налогом. Получатель должен будет это все оплачивать, а вы - оформлять. Затруднить могут легко - если вы не будете оформлять все соответствующим образом, вам впаяют штраф, а если продолжите - штраф будет увеличиваться пока у вас не закончатся деньги.
В том варианте камер что вы используете, разработчик жадный и решил не платить лицензию для Mp4, поэтому генерится некорректный файл, своего проприетарного стандарта. У нго нет mp4 заголовков и с ним почти никто не умеет работать.
На указанном сайте человек написал программку, которая из такого файла вырезает видео и аудио. Исходники лежат на гитхабе, готовый бинарник есть только для линукс
./broken264fixer исполняемый файл, содержит внутри себя конвертер и mkvmerge:
convert2
convert2.c
LICENSE
main.sh
mkvmerge
По какой-то причине mkvmerge у меня не соединял was и h264, поэтому я просот извлек бинарник covert2 из broken264fixer и уже пользовался им и ffmpeg:
saboteur@ubuntu:~/video$ ls -sl1F
4040 -rw-r--r-- 1 saboteur saboteur 4130208 Oct 2 19:55 A200926_000453_000507.264
832 -rwxr-xr-x 1 saboteur saboteur 849328 Aug 21 14:47 convert2*
saboteur@ubuntu:~/video$ ./convert2 A200926_000453_000507.264
Duration 1080
HXFI End if File
saboteur@ubuntu:~/video$ ls -sl1F
total 8712
4040 -rw-r--r-- 1 saboteur saboteur 4130208 Oct 2 19:55 A200926_000453_000507.264
8 -rw-rw-r-- 1 saboteur saboteur 4794 Oct 3 00:20 A200926_000453_000507.audio.ts.txt
3680 -rw-rw-r-- 1 saboteur saboteur 3766704 Oct 3 00:20 A200926_000453_000507.h264
4 -rw-rw-r-- 1 saboteur saboteur 1165 Oct 3 00:20 A200926_000453_000507.video.ts.txt
140 -rw-rw-r-- 1 saboteur saboteur 142124 Oct 3 00:20 A200926_000453_000507.wav
832 -rwxr-xr-x 1 saboteur saboteur 849328 Aug 21 14:47 convert2*
теперь эти отдельные A200926_000453_000507.h264 и A200926_000453_000507.wav можно склеить ffmpeg:
или даже по пути перекодить нужным кодеком.
Может быть можно конвертер скомпилить под винду, но я не разработчик, компиляторов под рукой нет, а на линуксе у меня все получилось сделать в командноой строке, то есть написать баш скрипт который будет прогонять автоматом по файлам несложно.
Я не знаю кто может проиграть эту дорожку, но я пытался проиграть разными плеерами - никто не увидел что она в принципе есть.
Там какой-то звук слышно?
Дело в том, что ваш файл это не x264 а какой-то проприетарный кодек, либо камера просто врет про то какой кодек она использует и его нужно вычислить.
ffmpeg можно указать кодек через опцию -f и попробовать разные, вдруг что получится.
Либо попробовать уже проанализировать файл, чтобы понять что там на самом деле внутри и уже подставить нужные аргументы.
Dwellss,
вариантов обхода нет. Проблема не в Windows а в NTFS
или заменяйте символ на другой, разрешенный, или используйте posix файловую систему, но винда с посикс системами напрямую не умеет.
Но вот эта команда у вас по идее ничего в TIME не заносит, правда TIME дальше по скрипту не используется?
TIME=$(echo $GET_TIME>/root/telegram/previous_post_time.json)
Я больше подозреваю, что может сам телеграм подтормаживать или curl, тут бы конечно больше логирования и добавить деталей от курл