SynoCommunity / spksrc

Cross compilation framework to create native packages for the Synology's NAS
https://synocommunity.com
Other
3.04k stars 1.24k forks source link

ffmpeg unable to play mpeg dash audio / radio stream #4639

Closed Rich28 closed 3 years ago

Rich28 commented 3 years ago

Setup

Package Name: ffmpeg Package Version: 4.3.1-35

NAS Model: DS118 NAS Architecture: ARMv8 DSM version: 6.2.4-25556

Expected behavior

MPEG dash (Dynamic Adaptive Streaming over HTTP) is now a very established approach of enabling high quality streaming of media content over the Internet and is used by various organizations for radio broadcasting. I was under the impression that ffmpeg now supports MPEG dash, but nothing seems to occur when I attempt to play an mpeg dash audio stream with SynoCommunity's current version of ffmpeg.

Actual behavior

To demonstrate this behavior I have used one the BBCs, lower quality mpeg dash radio streams (https://a.files.bbci.co.uk/media/live/manifesto/audio/simulcast/dash/nonuk/dash_low/aks/bbc_radio_three.mpd), which I guess should be relatively reliable and isn't geofenced to the UK. Referring to this BBC radio stream, the output from from /usr/local/ffmpeg/bin/ffmpeg -i https://a.files.bbci.co.uk/media/live/manifesto/audio/simulcast/dash/nonuk/dash_low/aks/bbc_radio_three.mpd is as follows:-

ffmpeg version 4.3.1 Copyright (c) 2000-2020 the FFmpeg developers built with gcc 4.9.4 (crosstool-NG crosstool-ng-1.22.0-169-g87eb166) 20150629 (prerelease) configuration: --target-os=linux --cross-prefix=/home/spksrc/git-master/spksrc/toolchains/syno-aarch64-6.1/work/aarch64-unknown-linux-gnueabi/bin/aarch64-unknown-linux-gnueabi- --prefix=/var/packages/ffmpeg/target --extra-cflags=-I/home/spksrc/git-master/spksrc/spk/ffmpeg/work-aarch64-6.1/install/var/packages/ffmpeg/target/include --extra-ldflags=-L/home/spksrc/git-master/spksrc/spk/ffmpeg/work-aarch64-6.1/install/var/packages/ffmpeg/target/lib --extra-libs='-lxml2 -ldl' --pkg-config=/usr/bin/pkg-config --ranlib=/home/spksrc/git-master/spksrc/toolchains/syno-aarch64-6.1/work/aarch64-unknown-linux-gnueabi/bin/aarch64-unknown-linux-gnueabi-ranlib --enable-cross-compile --enable-rpath --enable-pic --enable-shared --enable-gpl --enable-version3 --enable-fontconfig --enable-libass --enable-libbluray --enable-avresample --enable-libfreetype --enable-libfribidi --enable-libmp3lame --enable-libopus --enable-libsoxr --enable-libtheora --enable-libvorbis --enable-libspeex --enable-libx264 --enable-libx265 --enable-gnutls --enable-libopencore-amrnb --enable-libopencore-amrwb --disable-debug --disable-doc --disable-static --enable-debug=1 --enable-libfdk-aac --enable-nonfree --extra-cflags=-DSYNO_VIDEOSTATION --extra-cflags=-fno-if-conversion --extra-cflags=-O3 --extra-cflags=-Wno-deprecated-declarations --enable-libvpx --enable-libzmq --enable-libshine --enable-libaom --enable-libsvtav1 --arch=arm64 --enable-neon --enable-thumb --disable-yasm --disable-asm libavutil 56. 51.100 / 56. 51.100 libavcodec 58. 91.100 / 58. 91.100 libavformat 58. 45.100 / 58. 45.100 libavdevice 58. 10.100 / 58. 10.100 libavfilter 7. 85.100 / 7. 85.100 libavresample 4. 0. 0 / 4. 0. 0 libswscale 5. 7.100 / 5. 7.100 libswresample 3. 7.100 / 3. 7.100 libpostproc 55. 7.100 / 55. 7.100 https://a.files.bbci.co.uk/media/live/manifesto/audio/simulcast/dash/nonuk/dash_low/aks/bbc_radio_three.mpd: Invalid data found when processing input

I'm guessing, perhaps this is due to the current version not being compiled with "--enable-libxm2". Anyway, I hope this can be fixed

th0ma7 commented 3 years ago

Can you give it a shot at testing package available at: https://github.com/th0ma7/synology/tree/master/packages/dsm7-beta

th0ma7 commented 3 years ago

A newer version of ffmpeg will be released in the next few days/weeks containing dash support.