LinuxForum.Fans
Тема

vlc проигрывает вдвое быстрее

Автор: Peter 38 сообщений 2965 просмотров
10.03.2017 19:39 #421100

Здравствуйте!

В Astra Linux 1.3 создаю avi-файл из части экрана путём запуска ffmpeg с частотой 15 к/с
и команда file сообщает fps 15, а vlc проигрывает его вдвое быстрее, и время в конце
слайдера вдвое меньше настоящего. Кодек libx264.
В чём причина и что делать?

Пётр.

11.03.2017 00:27 #421109

Olej, Ну, думаю, стоит сначала набор тех-же действий попытаться повторить на любой другой более распространенной системе, а потом уж говорить о зависимости или независимости от того что это астра

11.03.2017 00:45 #421110
"DiabloPC" написал:
думаю, стоит сначала набор тех-же действий попытаться повторить на любой другой более распространенной системе

А "на любой другой более распространенной системе" этот "набор тех-же действий" будет выполняться на-УРА с вероятностью 99.5% @}->--

11.03.2017 00:46 #421111

Olej, Посмотрим.... Ждем пока Peter выложит весь порядок своих действий =)

11.03.2017 11:52 · отредактировано #421112

Вот выдержка из небольшого скрипта, в котором в Astra 1.3 запускается моя программа, а перед ней - ffmpeg.

text

...
fps=15

ffmpeg -v verbose -f x11grab -s sxga -r $fps -i ${DISPLAY}+0,0 -map 0 -c:0:v libx264 -f avi name.avi >& out_avi.log &

./my_program

piav=`pidof ffmpeg` if [ ! $piav == "" ] ; then kill $piav fi ...

sxga - это 1280x1024.
В Astra 1.4 эта же команда либо её вариант с записью также звука вызывалась из отдельного скрипта для записи
части экрана размером 1024x768 и там, насколько я помню, vlc проигрывал получившийся avi-файл с нормальной
скоростью, и звук тоже шёл правильно, а частота кадров была 20.

В обоих случаях там Astra с добавлением пакетов из Debian Wheezy и deb-multimedia.
Astra 1.3, о которой идёт речь, переустановил на днях и конфликта пакетов не было.

Пётр.

11.03.2017 21:12 #421130

Хех, допроверялись на "других системах"....
У меня ffmpeg плюется на

text
Unknown encoder 'libx264'

Если верить интернетам то ffmpeg, в этом случае, нужно пересобирать руками..... На что у меня сейчас явно времени нету...

11.03.2017 22:24 #421135
DiabloPC написал:
Хех, допроверялись на "других системах"....
У меня ffmpeg плюется на
text
Unknown encoder 'libx264'

Если верить интернетам то ffmpeg, в этом случае, нужно пересобирать руками..... На что у меня сейчас явно времени нету...

Так, м.б., у вас библиотека не установлена? Какая-нибудь libx264-nnn?

Пётр.

11.03.2017 22:36 #421136

Peter, та стоит всё.... *SCRATCH* [console]# zypper se -si 264 265 ffmpeg
Loading repository data...
Reading installed packages...

S | Name | Type | Version | Arch | Repository
--+-------------+---------+----------------------+--------+-------------------------------------------------------------
i | ffmpeg | package | 3.2.4-132.2 | x86_64 | Multimedia Libraries, Codecs and Command Line Tools
i | h264enc | package | 10.4.7-3.1 | noarch | packman
i | libx264-148 | package | 0.148svn20161219-6.1 | x86_64 | packman
i | libx265-102 | package | 2.2-1.1 | x86_64 | (System Packages)
i | libx265-110 | package | 2.3-2.1 | x86_64 | packman
i | x264 | package | 0.148svn20161219-6.2 | x86_64 | packman
i | x265 | package | 2.3-2.1 | x86_64 | packman [/console]

11.03.2017 23:29 #421137

Olej, Ну по человечески ж просил завязать с офтопом в тех разделах.
Последнее китайское.
//DiabloPC

12.03.2017 00:45 #421139

А что-нибудь при этом в консоль выводится?

12.03.2017 09:16 #421140

Так, м.б., нет какой-нибудь libavcodecnn? Что выводит команда
[console]ffmpeg -decoders | grep h26[/console]

Пётр.

12.03.2017 09:24 · отредактировано #421141
"Peter" написал:
и время в конце слайдера вдвое меньше настоящего.

Вы разберитесь что у вас имеет место, прежде чем спрашивать: "товарищи учёные, у меня странный стук..." *HELP*

Наблюдаемое вами может иметь совершенно разную природу (я одно время а силу должностных обязанностей, т.е. весьма обстоятельно, занимался анализом аудиопотоков, в частности, речевых). Вы можете видеть:

1. Воспроизведение только фрагмента. Когда из последовательности N отсчётов у вас воспроизводится только N/2, начальный фрагмент ... и на том воспроизведение прекращается.

2. Скорость воспроизведения. Если ваши N отсчётов воспроизводятся с частотой вдвое выше. Вы при этом будете слышать тембр голоса, сдвинутый на октаву выше - очень неприятный визг.

3. Темпокоррекция, как оказывается, делается на удивление просто! Для этого вам нужно воспроизводить отсчёты через один - это для ускорения, в простейшем виде что-то типа:

text

for( int i = 0; i < N; i += 2 )
   out( X[ i ] );

Или для замедления, вставлять между соседними отсчётами ещё один, равный среднему между соседними (исходными), что-то типа:

text

for( int i = 0; i < 2 * N; )
   out( ( X[ i++ >> 1 ] + X[ i++ >> 1 ] ) / 2 );

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

Вот вы для начала определитесь что у вас имеет место: 1, 2, или 3 ... а потом будете народ вопросами нагружать. *PARDON*
Добавлено: 12.03.2017 09:24:01

offtop
"Olej" написал:
Ну по человечески ж просил завязать с офтопом в тех разделах.

Какой же здесь тех.-раздел, если вы шаловливыми ручками суёте куда попало наугад? o_O


Ну как дети малые
12.03.2017 10:16 #421145

Я ничего не обязан вставлять руками в avi-файл. Тот, о котором я говорю - без звука,
а в Astra 1.4 avi со звуком проигрывался правильно и я об этом уже говорил.
Наверное, всё это чьи-то козни.

Пётр.

12.03.2017 10:33 · отредактировано #421146
"Peter" написал:
В Astra Linux 1.3 создаю

Peter, у вас в Astra Linux 1.3, как я поверхностно посмотрел, предстоит куда больше неприятность (но я могу посмотреть только по Astra Orel):
- отсутствуют kernel-headers для сборки модулей ядра...
- а при отсутствии сетевого репозитория его (пакет) неоткуда скачать
- а без него нельзя собрать модули ядра...
- т.е. вы не сможете установить ни единого драйвера устройств, кроме тех, что установились при начальной инсталляции!

P.S. Кстати, и в Astra Orel указано:

text

root@astra:/etc/apt# cat sources.list
deb cdrom:[OS Astra Linux 1.11 orel - amd64 DVD ]/ orel contrib main non-free
#deb http://mirror.yandex.ru/astra/stable/orel/current/repository orel main contrib non-free

Но и тот (закомментированный) URL - ошибка 404
Очень неаккуратное отношение к сборке!
Но можно добавить:

text

deb http://mirror.yandex.ru/astra/frozen/orel/latest/repository/ orel main contrib non-free
deb http://mirror.yandex.ru/astra/current/orel/repository/ orel main contrib non-free

Но это всё - уже для другой темы обсуждения.
Добавлено: 12.03.2017 10:33:01

"Peter" написал:
Я ничего не обязан вставлять руками в avi-файл.

Так вы вообще ничего не обязаны, о великий и могучий!
Кроме вот этого: *WALL*

P.S. Вы бы хоть дали себе труд разобраться о чём речь! Вам ничего не нужно "вставлять" ... да вы и не способны это сделать *STOP*
Вставляет или прореживает - это ваш проигрыватель.

"Peter" написал:
Тот, о котором я говорю - без звука,

Так возьмите такой, который со звуком. *ROFL*
По звуку вы сможете определить природу того, что у вас происходит.

12.03.2017 10:40 #421149
offtop
"Olej" написал:
Peter, у вас в Astra Linux 1.3

Есть только две возможности:

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

2) Любопытство чайника по установке себе чего ни попадя - никто ничем не обязан, лес вон в той стороне ->

Прекращаем обсуждение дистрибутива в этой теме. //Zhenjka *NO*

12.03.2017 14:08 #421153
offtop
Olej, я вижу, что вы - человек с хорошим чувством юмора и любите повеселить свою душу,
но вот способностями к ясновидению вы явно не обладаете. И kernel-headers есть, так что модули
компилируются, и двоичные файлы как результат работы одной моей программы мне приходилось
корректировать, так что и насчёт моих способностей вы заблуждаетесь. Опять же я вижу, что вы
не читаете текст сообщений с надлежащей внимательностью, т.к. насчёт репозитариев я уже говорил.
И зачем была куплена Astra, тут никого волновать не должно, достаточно того, что она не была
похищена. Я так понимаю, что вы хочете свою образованность показать и потому говорите
о непонятном. В vlc в меню есть пункты "скорее, нормально, медленнее", я пробовал нажимать
только "нормально". И что это я определю по звуку? Я и так вижу, что проигрывание ускоренное.
Опять же "Orel" тут ни при чём.

Пётр.

12.03.2017 14:24 #421155
"Peter" написал:
. И kernel-headers есть, так что модули
компилируются,

Покажите.

12.03.2017 14:45 #421158
offtop
"Peter" написал:
зачем была куплена Astra, тут никого волновать не должно

Вы несомненно правы! Тут вообще ничего никого не волнует. Но в соответствии с заданным вопросом важно пояснение: куплена ли?

Если куплена - техподдержка заведомо куплена и вопросы к ней, а не здесь.

12.03.2017 15:01 #421163
offtop
Olej написал:
[quote="Peter"]. И kernel-headers есть, так что модули
компилируются,

Покажите.[/quote]
Достаточно того, что я это сказал. В четверг скомпилировались. Или вы думаете, что я не знаю,
установлены у меня kernel-headers или нет?

Пётр.
Добавлено: 12.03.2017 15:01:10

stranger написал:
[quote="Peter"]зачем была куплена Astra, тут никого волновать не должно

Вы несомненно правы! Тут вообще ничего никого не волнует. Но в соответствии с заданным вопросом важно пояснение: куплена ли?

Если куплена - техподдержка заведомо куплена и вопросы к ней, а не здесь.[/quote]
Я сейчас не помню, входит ли vlc в Astra, если входит, то, возможно, в понедельник спрошу.

Пётр.

Войдите или зарегистрируйтесь, чтобы ответить.