LINUX.ORG.RU

mplayer + MPEG TS, нет звука


0

0

Доброго времени суток.

Имеется следующая проблема: mplayer ни в какую не хочет проигрывать 
звук из субжевого контейнера (IPTV по multicast), пишет
---
TS file format detected.
DEMUX OPEN, AUDIO_ID: -1, VIDEO_ID: -1, SUBTITLE_ID: -1,
PROBING UP TO 2000000, PROG: 0
VIDEO MPEG2(pid=1131)NO AUDIO!  NO SUBS (yet)!  PROGRAM N. 0
Opened TS demuxer, audio: ffffffff(pid -1), video: 10000002(pid 1131)...POS=0
VIDEO:  MPEG2  720x576  (aspect 2)  25.000 fps  4000.0 kbps (500.0 kbyte/s)
---
NO AUDIO, хотя звук там присутствует. Вместе с этим появляется 
известное сообщение "Win32 LoadLibrary failed to load: avisynth.dll",
как его лечить неясно.

Но есть два интересных момента: 
1) vlc проигрывает поток без проблем, но сам очень глючный
2) с помощью костылей из mencoder и mplayer можно заставить mplayer работать:
---
$ mkfifo test
$ mencoder <адрес> -ovc copy -oac copy -o test &
$ mplayer test
---

Кто-нибудь сталкивался?
★★★★
Ответ на: комментарий от Deleted

Увы, все осталось на том же месте:
---
VIDEO MPEG2(pid=1126)NO AUDIO!  NO SUBS (yet)!  PROGRAM N. 0
Opened TS demuxer, audio: ffffffff(pid -1), video: 10000002(pid 1126)...POS=0, PROBE=2000000
---

phoenix ★★★★
() автор топика

Ты бы выкладывал бы кусочек файла. На пробу.

kilolife ★★★★★
()

>Вместе с этим появляется известное сообщение "Win32 LoadLibrary failed to load: avisynth.dll",

так найди этот файл и положи его в .../codecs

у меня в /usr/local/lib/codecs/avisynth.dll лежит, из какого он пакета не знаю точно, наверно из win32codecs

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

фиг знает где этот avisynth.dll искать -- те, что в нахоятся в гугле, тащут за собой avifil32.dll, потом gdi32.dll, а потом mplayer просто падает. Но не в dll-ке проблема, после обработки mencoder-ом (тупое копирование аудио и видео потоков) звук внезапно появляется.

кусочек потока можно взять тут (~2Mb, поток ~500Kbps): http://kostik.nest.cx/HTB.ts.bz2

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

avisynth.dll нет в кодеках и не должно быть.

Deleted
()

Странно, у меня начал воспроизводиться звук, когда alang=ru в .mplayer/config закомментировал.

Deleted
()

.......................................
TRIED UP TO POSITION 0, FOUND 47, packet_size= 188, SEEMS A TS? 1
GOOD CC: 32, BAD CC: 0
Обнаружен TS формат файла!
.......................................
VIDEO MPEG2(pid=1126)AUDIO MPA(pid=1127) NO SUBS (yet)!  PROGRAM N. 26
==> Нашёл видео поток: 0
==> Нашёл аудио поток: 0
Opened TS demuxer, audio: 50(pid 1127), video: 10000002(pid 1126)...POS=2256, PROBE=2000000
......................................
Открываю декодер аудио: [mp3lib] MPEG layer-2, layer-3
dec_audio: Захватываю 4608 + 65536 = 70144 байт(а/ов) для буфера вывода.
mp3lib: made decode tables with MMX optimization
mp3lib: using 3DNow!Ex optimized decore!
MP3lib: init layer2&3 finished, tables done
MPEG 1.0, Layer II, 48000 Hz 256 kbit Stereo, BPF: 768
Channels: 2, copyright: No, original: Yes, CRC: Yes, emphasis: 0
AUDIO: 48000 Hz, 2 ch, s16le, 256.0 kbit/16.67% (ratio: 32000->192000)
Selected audio codec: [mp3] afm: mp3lib (mp3lib MPEG layer-2, layer-3)

.....................
Андрей Григорьев, телекомпания НТВ, Киев.
.....................

И все замечательно воспроизводится. Со звуком.
Вывод, у Вас какой то неправильный mplayer или конфиг к нему, где описано какой кодек в каких случаях юзать. Про неправильный дистр говорить не буду.

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

jedy

спасибо, ругань исчезла

Dimez

> Странно, у меня начал воспроизводиться звук, когда alang=ru в .mplayer/config закомментировал.

блин, почему решения всегда такие простые и такие неочевидные. Закомментировал alang=en,ru и все поехало. Спасибо.

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

> Вывод, у Вас какой то неправильный mplayer или конфиг к нему,

да, именно в конфиге и была проблема.

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

Да вот только avisynth.dll у меня нету в принципе.
Комментировать alang=ru некошерно.
Попробуйте скормить своему mplayer мой codecs.conf и поглядите, что получится. 

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

> Комментировать alang=ru некошерно. > Попробуйте скормить своему mplayer мой codecs.conf и поглядите, что получится.

Не помогает. Похоже проблема именно в том, что при работе с этим контейнером mplayer не выбирает первый доступный аудиопоток при отсутствии явно указанных.

mplayer -alang '' дает такой же эффект как и комментирование соотв. строки в конфиге.

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

Видимо, потому-что в нестандартное место запихали звуковую дорожку в MPEG2TS. После ovc и oac mencoder ставил её на место.

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