Информация об изменениях

Сообщение Re[4]: Конвертить mpegts поток в audio/aac на лету от 26.02.2025 13:13

Изменено 26.02.2025 13:40 aik

Re[4]: Конвертить mpegts поток в audio/aac на лету
Здравствуйте, andrey.desman, Вы писали:

aik>>Началось с плейлиста как раз:

aik>>https://as-hls-ww.live.cf.md.bbci.co.uk/pool_01505109/live/ww/bbc_radio_one/bbc_radio_one.isml/bbc_radio_one-audio=320000.norewind.m3u8
aik>>Но состоит он из этих вот .ts.
AD>Ну вот они говорят, что умеют в hls, при этом mpegts вполне поддерживается.
AD>https://docs.sonos.com/docs/http-live-streaming-hls
AD>А больше кроме http они ничего не умеют. Ну в принципе, можно через nginx-rtmp-module раздавать стрим по http, наверное.

Да можно и http гонять с bbci.co.uk, работает на ноуте, но не в соносе (который вообще понимает https).

AD>Ну короче, про hls через nginx-rtmp-module можно забыть, так как всё равно есть оригинальный и если его напрямую не удастся завести, то скорее всего и такой бесполезен будет. Сам по себе rtmp сонос не поддерживает.


Я пока на шаге№1 — как завести хотя бы rtmp, я не могу добиться чтоб nginx запустил ffmpeg. 1 раз удалось, но сразу не понял, а потом не смог повторить.

AD>>>Если же сонос не умеет играть hls, то конвертить во что-то можно, но источником надо брать опять же адрес плейлиста, а не конкретный чанк.

aik>>Тут я запутался. Я тут более простое завести не могу, а если сверху навернуть плейлисты — то как это поможет?
AD>HLS — это всегда обновляемый плейлист и круговой буфер чанков. Поэтому не навернуть не получится.

ok.

aik>>Тут так — у меня ещё есть tvheadend, который эфирное dvb-t радио раздаёт, там h.264+mp2 для видео и просто mp2 для радио, "[demux] Detected file format: mpegts (libavformat)" пишет мне mpv. Sonos так не может, но tvheadend умеет в ffmpeg + "aac" + "raw audio stream", Sonos это жрёт.

AD>Не понятно.

tvtuner -> raspberrypi -> tvheadend софтина -> raw aac -> sonos -> музыка играет.
Re[4]: Конвертить mpegts поток в audio/aac на лету
Здравствуйте, andrey.desman, Вы писали:

aik>>Началось с плейлиста как раз:

aik>>https://as-hls-ww.live.cf.md.bbci.co.uk/pool_01505109/live/ww/bbc_radio_one/bbc_radio_one.isml/bbc_radio_one-audio=320000.norewind.m3u8
aik>>Но состоит он из этих вот .ts.
AD>Ну вот они говорят, что умеют в hls, при этом mpegts вполне поддерживается.
AD>https://docs.sonos.com/docs/http-live-streaming-hls
AD>А больше кроме http они ничего не умеют. Ну в принципе, можно через nginx-rtmp-module раздавать стрим по http, наверное.

Да можно и http гонять с bbci.co.uk, работает на ноуте, но не в соносе (который вообще понимает https).
upd: а, речь была про http против rtmp. окей.

AD>Ну короче, про hls через nginx-rtmp-module можно забыть, так как всё равно есть оригинальный и если его напрямую не удастся завести, то скорее всего и такой бесполезен будет. Сам по себе rtmp сонос не поддерживает.


Я пока на шаге№1 — как завести хотя бы rtmp, я не могу добиться чтоб nginx запустил ffmpeg. 1 раз удалось, но сразу не понял, а потом не смог повторить.

AD>>>Если же сонос не умеет играть hls, то конвертить во что-то можно, но источником надо брать опять же адрес плейлиста, а не конкретный чанк.

aik>>Тут я запутался. Я тут более простое завести не могу, а если сверху навернуть плейлисты — то как это поможет?
AD>HLS — это всегда обновляемый плейлист и круговой буфер чанков. Поэтому не навернуть не получится.

ok.

aik>>Тут так — у меня ещё есть tvheadend, который эфирное dvb-t радио раздаёт, там h.264+mp2 для видео и просто mp2 для радио, "[demux] Detected file format: mpegts (libavformat)" пишет мне mpv. Sonos так не может, но tvheadend умеет в ffmpeg + "aac" + "raw audio stream", Sonos это жрёт.

AD>Не понятно.

tvtuner -> raspberrypi -> tvheadend софтина -> raw aac -> sonos -> музыка играет.

upd: заменил в nginx .ts на:

ee ~> mpv http://tvh:9981/stream/channel/7ed927db2960b33668a24fac81d11271
(+) Audio --aid=1 --alang=eng (mp2 2ch 48000Hz)
AO: [pipewire] 48000Hz stereo 2ch s16p

"mpv rtmp://192.168.10.201/radio" всё равно не играет.