Hello, I use the xupnpd2 media-server (http://xupnpd.org/xupnpd2_en.html) on my router to transport hls-streams from the internet to my Panasonic-TV. I try to stream some webcams from http://www.skylinewebcams.com/. xupnpd2 doesn't support https, so my idea is to receive the hls-stream in ffmpeg. ffmpeg command: ffmpeg -i https://hddn01.skylinewebcams.com/live.m3u8?a=<variable-string> -c copy -f mpeg -listen 1 http://<private-ip>:1234 <variable-string> is in the website, e.g. http://www.skylinewebcams.com/de/webcam/czech-republic/prague/prague/old-tow... and the xupnpd2-playlist: #EXTINF:-1 handler=http type=mpeg, webcam-name http://<private-ip>:1234 The stream is displayed on PC (vlc-player) without problems, but the TV doesn't display it. On http://xupnpd.org/download.html is a public-beta for xupnpd2. Maybe someone could help me to find the correct ffmpeg command or xupnpd2-settings (the russian author doesn't reply my e-mail). Best regards, Thomas
On Thu, Jan 11, 2018 at 14:44:11 +0100, Thomas Schmiedl wrote:
xupnpd2 doesn't support https,
Wow. Welcome to the 21st century.
so my idea is to receive the hls-stream in ffmpeg.
Should work.
ffmpeg -i https://hddn01.skylinewebcams.com/live.m3u8?a=<variable-string> -c copy -f mpeg -listen 1 http://<private-ip>:1234 [...] The stream is displayed on PC (vlc-player) without problems, but the TV doesn't display it.
VLC is very tolerant in terms of what it accepts (partly thanks to libavformat and libavcodec, but also their own implementations). But what you are sending with "-f mpeg" is an MPEG Program Stream (as meant for files and e.g. for VOB files on DVDs). Most streaming receivers won't accept this, but should instead be fine with the format MPEG *Transport* Stream. Thus please use "-f mpegts" and it should work. :-) Cheers, Moritz
The option "-f mpegts" doesn't work. Could someone test this with xupnpd2 and a Panasonic-TV from 2012/2013? Maybe a DLNA issue? Best regards, Thomas Am 11.01.2018 um 15:55 schrieb Moritz Barsnick:
On Thu, Jan 11, 2018 at 14:44:11 +0100, Thomas Schmiedl wrote:
xupnpd2 doesn't support https,
Wow. Welcome to the 21st century.
so my idea is to receive the hls-stream in ffmpeg.
Should work.
ffmpeg -i https://hddn01.skylinewebcams.com/live.m3u8?a=<variable-string> -c copy -f mpeg -listen 1 http://<private-ip>:1234 [...] The stream is displayed on PC (vlc-player) without problems, but the TV doesn't display it.
VLC is very tolerant in terms of what it accepts (partly thanks to libavformat and libavcodec, but also their own implementations). But what you are sending with "-f mpeg" is an MPEG Program Stream (as meant for files and e.g. for VOB files on DVDs). Most streaming receivers won't accept this, but should instead be fine with the format MPEG *Transport* Stream. Thus please use "-f mpegts" and it should work. :-)
Cheers, Moritz _______________________________________________ ffmpeg-user mailing list ffmpeg-user@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-user
To unsubscribe, visit link above, or email ffmpeg-user-request@ffmpeg.org with subject "unsubscribe".
2018-01-12 14:22 GMT+01:00 Thomas Schmiedl <thomas.schmiedl@web.de>:
The option "-f mpegts" doesn't work.
At least provide your FFmpeg command line together with the complete, uncut console output. Does your tv accept usb drives? Did you test a file created with FFmpeg? Please do not top-post here, Carl Eugen
ffmpeg command: ffmpeg -i https://hddn01.skylinewebcams.com/live.m3u8?a=8i2q89556mjh7dlo87u31qm2h1 -c copy -f mpegts -listen 1 http://192.168.178.1:1234 ffmpeg output: ffmpeg version 3.4.1 Copyright (c) 2000-2017 the FFmpeg developers built with gcc 4.8.5 (GCC) configuration: --prefix=/home/user/ffmpeg-3.4.1-mips --enable-cross-compile --cross-prefix=mips-linux- --arch=mips --target-os=linux --enable-openssl --extra-cflags='-I/home/user/openssl-1.0.2n-mips/include -Wl,-rpath=/home/user/openssl-1.0.2n-mips/lib' --extra-ldflags='-L/home/user/openssl-1.0.2n-mips/lib -Wl,-rpath=/home/user/openssl-1.0.2n-mips/lib' --extra-cxxflags='-I/home/user/openssl-1.0.2n-mips/include -Wl,-rpath=/home/user/openssl-1.0.2n-mips/lib' --disable-mips32r2 --disable-mipsdsp --disable-mipsdspr2 --disable-mipsfpu libavutil 55. 78.100 / 55. 78.100 libavcodec 57.107.100 / 57.107.100 libavformat 57. 83.100 / 57. 83.100 libavdevice 57. 10.100 / 57. 10.100 libavfilter 6.107.100 / 6.107.100 libswscale 4. 8.100 / 4. 8.100 libswresample 2. 9.100 / 2. 9.100 [hls,applehttp @ 0x1cf69e0] Opening 'https://hddn01.skylinewebcams.com/09640706UX3P-1516629132398.ts' for reading [hls,applehttp @ 0x1cf69e0] Could not find codec parameters for stream 1 (Audio: aac ([15][0][0][0] / 0x000F), 0 channels, fltp): unspecified sample rate Consider increasing the value for the 'analyzeduration' and 'probesize' options Input #0, hls,applehttp, from 'https://hddn01.skylinewebcams.com/live.m3u8?a=8i2q89556mjh7dlo87u31qm2h1': Duration: N/A, start: 25336.700000, bitrate: N/A Program 0 Metadata: variant_bitrate : 0 Stream #0:0: Video: h264 (High) ([27][0][0][0] / 0x001B), yuv420p, 1280x1024, 12 fps, 12 tbr, 90k tbn, 180k tbc Metadata: variant_bitrate : 0 Stream #0:1: Audio: aac ([15][0][0][0] / 0x000F), 0 channels, fltp Metadata: variant_bitrate : 0 Output #0, mpegts, to 'http://192.168.178.1:1234': Metadata: encoder : Lavf57.83.100 Stream #0:0: Video: h264 (High) ([27][0][0][0] / 0x001B), yuv420p, 1280x1024, q=2-31, 12 fps, 12 tbr, 90k tbn, 90k tbc Metadata: variant_bitrate : 0 Stream mapping: Stream #0:0 -> #0:0 (copy) Press [q] to stop, [?] for help skipping 3 segments ahead, expired from playlists [hls,applehttp @ 0x1cf69e0] Opening 'https://hddn01.skylinewebcams.com/09640706UX3P-1516629164315.ts' for reading [hls,applehttp @ 0x1cf69e0] Opening 'https://hddn01.skylinewebcams.com/09640706UX3P-1516629172340.ts' for reading [hls,applehttp @ 0x1cf69e0] Opening 'https://hddn01.skylinewebcams.com/09640706UX3P-1516629180323.ts' for reading [hls,applehttp @ 0x1cf69e0] Opening 'https://hddn01.skylinewebcams.com/09640706UX3P-1516629188321.ts' for reading [hls,applehttp @ 0x1cf69e0] Opening 'https://hddn01.skylinewebcams.com/09640706UX3P-1516629196273.ts' for reading [hls,applehttp @ 0x1cf69e0] Opening 'https://hddn01.skylinewebcams.com/09640706UX3P-1516629204308.ts' for reading [hls,applehttp @ 0x1cf69e0] Opening 'https://hddn01.skylinewebcams.com/09640706UX3P-1516629212260.ts' for reading [hls,applehttp @ 0x1cf69e0] Opening 'https://hddn01.skylinewebcams.com/09640706UX3P-1516629220280.ts' for reading av_interleaved_write_frame(): Broken pipe Error writing trailer of http://192.168.178.1:1234: Broken pipe frame= 768 fps= 45 q=-1.0 Lsize= 4289kB time=00:01:27.91 bitrate= 399.6kbits/s speed=5.12x video:3906kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 9.808136% Conversion failed! I tested with curl: curl http://192.168.178.1:1234 > test.ts and the file is playable on tv (via usb-hdd and xupnpd2), but not when using http://192.168.178.1:1234 directly in xupnpd2. I think it's an issue from xupnpd2, but I don't get a reply from the author. Maybe I can get help here. The ffmpeg output "av_interleaved_write_frame(): Broken pipe" and lines below is because of canceling (ctrl+c) curl. An actual querystring for the .m3u8 url can be copied from: http://www.skylinewebcams.com/de/webcam/czech-republic/prague/prague/old-tow... Regards, Thomas Am 19.01.2018 um 12:56 schrieb Carl Eugen Hoyos:
2018-01-12 14:22 GMT+01:00 Thomas Schmiedl <thomas.schmiedl@web.de>:
The option "-f mpegts" doesn't work.
At least provide your FFmpeg command line together with the complete, uncut console output. Does your tv accept usb drives? Did you test a file created with FFmpeg?
Please do not top-post here, Carl Eugen _______________________________________________ ffmpeg-user mailing list ffmpeg-user@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-user
To unsubscribe, visit link above, or email ffmpeg-user-request@ffmpeg.org with subject "unsubscribe".
ffmpeg command: ffmpeg -i https://hddn01.skylinewebcams.com/live.m3u8?a=8i2q89556mjh7dlo87u31qm2h1 -c copy -f mpegts -listen 1 http://192.168.178.1:1234 ffmpeg output: ffmpeg version 3.4.1 Copyright (c) 2000-2017 the FFmpeg developers built with gcc 4.8.5 (GCC) configuration: --prefix=/home/user/ffmpeg-3.4.1-mips --enable-cross-compile --cross-prefix=mips-linux- --arch=mips --target-os=linux --enable-openssl --extra-cflags='-I/home/user/openssl-1.0.2n-mips/include -Wl,-rpath=/home/user/openssl-1.0.2n-mips/lib' --extra-ldflags='-L/home/user/openssl-1.0.2n-mips/lib -Wl,-rpath=/home/user/openssl-1.0.2n-mips/lib' --extra-cxxflags='-I/home/user/openssl-1.0.2n-mips/include -Wl,-rpath=/home/user/openssl-1.0.2n-mips/lib' --disable-mips32r2 --disable-mipsdsp --disable-mipsdspr2 --disable-mipsfpu libavutil 55. 78.100 / 55. 78.100 libavcodec 57.107.100 / 57.107.100 libavformat 57. 83.100 / 57. 83.100 libavdevice 57. 10.100 / 57. 10.100 libavfilter 6.107.100 / 6.107.100 libswscale 4. 8.100 / 4. 8.100 libswresample 2. 9.100 / 2. 9.100 [hls,applehttp @ 0x1cf69e0] Opening 'https://hddn01.skylinewebcams.com/09640706UX3P-1516629132398.ts' for reading [hls,applehttp @ 0x1cf69e0] Could not find codec parameters for stream 1 (Audio: aac ([15][0][0][0] / 0x000F), 0 channels, fltp): unspecified sample rate Consider increasing the value for the 'analyzeduration' and 'probesize' options Input #0, hls,applehttp, from 'https://hddn01.skylinewebcams.com/live.m3u8?a=8i2q89556mjh7dlo87u31qm2h1': Duration: N/A, start: 25336.700000, bitrate: N/A Program 0 Metadata: variant_bitrate : 0 Stream #0:0: Video: h264 (High) ([27][0][0][0] / 0x001B), yuv420p, 1280x1024, 12 fps, 12 tbr, 90k tbn, 180k tbc Metadata: variant_bitrate : 0 Stream #0:1: Audio: aac ([15][0][0][0] / 0x000F), 0 channels, fltp Metadata: variant_bitrate : 0 Output #0, mpegts, to 'http://192.168.178.1:1234': Metadata: encoder : Lavf57.83.100 Stream #0:0: Video: h264 (High) ([27][0][0][0] / 0x001B), yuv420p, 1280x1024, q=2-31, 12 fps, 12 tbr, 90k tbn, 90k tbc Metadata: variant_bitrate : 0 Stream mapping: Stream #0:0 -> #0:0 (copy) Press [q] to stop, [?] for help skipping 3 segments ahead, expired from playlists [hls,applehttp @ 0x1cf69e0] Opening 'https://hddn01.skylinewebcams.com/09640706UX3P-1516629164315.ts' for reading [hls,applehttp @ 0x1cf69e0] Opening 'https://hddn01.skylinewebcams.com/09640706UX3P-1516629172340.ts' for reading [hls,applehttp @ 0x1cf69e0] Opening 'https://hddn01.skylinewebcams.com/09640706UX3P-1516629180323.ts' for reading [hls,applehttp @ 0x1cf69e0] Opening 'https://hddn01.skylinewebcams.com/09640706UX3P-1516629188321.ts' for reading [hls,applehttp @ 0x1cf69e0] Opening 'https://hddn01.skylinewebcams.com/09640706UX3P-1516629196273.ts' for reading [hls,applehttp @ 0x1cf69e0] Opening 'https://hddn01.skylinewebcams.com/09640706UX3P-1516629204308.ts' for reading [hls,applehttp @ 0x1cf69e0] Opening 'https://hddn01.skylinewebcams.com/09640706UX3P-1516629212260.ts' for reading [hls,applehttp @ 0x1cf69e0] Opening 'https://hddn01.skylinewebcams.com/09640706UX3P-1516629220280.ts' for reading av_interleaved_write_frame(): Broken pipe Error writing trailer of http://192.168.178.1:1234: Broken pipe frame= 768 fps= 45 q=-1.0 Lsize= 4289kB time=00:01:27.91 bitrate= 399.6kbits/s speed=5.12x video:3906kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 9.808136% Conversion failed! I tested with curl: curl http://192.168.178.1:1234 > test.ts and the file is playable on tv (via usb-hdd and xupnpd2), but not when using http://192.168.178.1:1234 directly in xupnpd2. I think it's an issue from xupnpd2, but I don't get a reply from the author. Maybe I can get help here. The ffmpeg output "av_interleaved_write_frame(): Broken pipe" and lines below is because of canceling (ctrl+c) curl. An actual querystring for the .m3u8 url can be copied from: http://www.skylinewebcams.com/de/webcam/czech-republic/prague/prague/old-tow... Regards, Thomas Am 19.01.2018 um 12:56 schrieb Carl Eugen Hoyos:
2018-01-12 14:22 GMT+01:00 Thomas Schmiedl <thomas.schmiedl@web.de>:
The option "-f mpegts" doesn't work.
At least provide your FFmpeg command line together with the complete, uncut console output. Does your tv accept usb drives? Did you test a file created with FFmpeg?
Please do not top-post here, Carl Eugen _______________________________________________ ffmpeg-user mailing list ffmpeg-user@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-user
To unsubscribe, visit link above, or email ffmpeg-user-request@ffmpeg.org with subject "unsubscribe".
Hello, I tested with Streamlink (https://streamlink.github.io/) and Gerbera media-server (https://gerbera.io/), that works with my TV. streamlink https://hddn01.skylinewebcams.com/live.m3u8?a=... best --player-external-http --player-external-http-port 1234 (complete m3u8 url from: http://www.skylinewebcams.com/en/webcam/czech-republic/prague/prague/old-tow...) Gerbera settings: - External Link (URL) - Title: Teststream - URL: http://<local-ip>:1234 - Protocol: http-get - Class: object.item.videoItem - Description: Teststream - Mimetype: video/mpeg But Streamlink is slow on the router (Python interpreted) and doesn't exit when leaving the stream on TV. The combination ffmpeg + Gerbera doesn't work: ffmpeg -i https://hddn01.skylinewebcams.com/live.m3u8?a=... -c copy -f mpegts -listen 1 http://<local-ip>:1234 ffmpeg output: ffmpeg version 3.4.1 Copyright (c) 2000-2017 the FFmpeg developers built with gcc 4.8.5 (GCC) configuration: --prefix=/home/user/ffmpeg-3.4.1-mips --enable-cross-compile --cross-prefix=mips-linux- --arch=mips --target-os=linux --enable-openssl --extra-cflags='-I/home/user/openssl-1.0.2n-mips/include -Wl,-rpath=/home/user/openssl-1.0.2n-mips/lib' --extra-ldflags='-L/home/user/openssl-1.0.2n-mips/lib -Wl,-rpath=/home/user/openssl-1.0.2n-mips/lib' --extra-cxxflags='-I/home/user/openssl-1.0.2n-mips/include -Wl,-rpath=/home/user/openssl-1.0.2n-mips/lib' --disable-mips32r2 --disable-mipsdsp --disable-mipsdspr2 --disable-mipsfpu libavutil 55. 78.100 / 55. 78.100 libavcodec 57.107.100 / 57.107.100 libavformat 57. 83.100 / 57. 83.100 libavdevice 57. 10.100 / 57. 10.100 libavfilter 6.107.100 / 6.107.100 libswscale 4. 8.100 / 4. 8.100 libswresample 2. 9.100 / 2. 9.100 [hls,applehttp @ 0x1cf69e0] Opening 'https://hddn23.skylinewebcams.com/09640706UX3P-1517923165424.ts' for reading [hls,applehttp @ 0x1cf69e0] Could not find codec parameters for stream 1 (Audio: aac ([15][0][0][0] / 0x000F), 0 channels, fltp): unspecified sample rate Consider increasing the value for the 'analyzeduration' and 'probesize' options Input #0, hls,applehttp, from 'https://hddn01.skylinewebcams.com/live.m3u8?a=kaasoaq2cbgbokmum0i106dm82': Duration: N/A, start: 736.700000, bitrate: N/A Program 0 Metadata: variant_bitrate : 0 Stream #0:0: Video: h264 (High) ([27][0][0][0] / 0x001B), yuv420p, 1280x1024, 12 fps, 12 tbr, 90k tbn, 180k tbc Metadata: variant_bitrate : 0 Stream #0:1: Audio: aac ([15][0][0][0] / 0x000F), 0 channels, fltp Metadata: variant_bitrate : 0 Output #0, mpegts, to 'http://192.168.178.1:1234': Metadata: encoder : Lavf57.83.100 Stream #0:0: Video: h264 (High) ([27][0][0][0] / 0x001B), yuv420p, 1280x1024, q=2-31, 12 fps, 12 tbr, 90k tbn, 90k tbc Metadata: variant_bitrate : 0 Stream mapping: Stream #0:0 -> #0:0 (copy) Press [q] to stop, [?] for help av_interleaved_write_frame(): Broken pipe Error writing trailer of http://192.168.178.1:1234: Broken pipe frame= 1 fps=0.6 q=-1.0 Lsize= 32kB time=00:00:00.00 bitrate=23831272.7kbits/s speed=6.98e-06x video:59kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: unknown Conversion failed! Error message on TV is "file not readable" and in ffmpeg "Broken pipe". Maybe someone could help me. Thomas Am 19.01.2018 um 12:56 schrieb Carl Eugen Hoyos:
2018-01-12 14:22 GMT+01:00 Thomas Schmiedl <thomas.schmiedl@web.de>:
The option "-f mpegts" doesn't work.
At least provide your FFmpeg command line together with the complete, uncut console output. Does your tv accept usb drives? Did you test a file created with FFmpeg?
Please do not top-post here, Carl Eugen _______________________________________________ ffmpeg-user mailing list ffmpeg-user@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-user
To unsubscribe, visit link above, or email ffmpeg-user-request@ffmpeg.org with subject "unsubscribe".
2018-02-06 14:25 GMT+01:00 Thomas Schmiedl <thomas.schmiedl@web.de>:
ffmpeg version 3.4.1 Copyright (c) 2000-2017 the FFmpeg developers
Please test current FFmpeg git head, nothing else is supported here.
Error message on TV is "file not readable" and in ffmpeg "Broken pipe".
Assuming this means the hls file, what differences do you see between a working and a "not readable" file? Please find out what top-posting means and stop doing it! Carl Eugen
2018-02-06 14:25 GMT+01:00 Thomas Schmiedl <thomas.schmiedl@web.de>:
ffmpeg version 3.4.1 Copyright (c) 2000-2017 the FFmpeg developers
Please test current FFmpeg git head, nothing else is supported here. I tested now with ffmpeg version N-89978-gcb97400
Error message on TV is "file not readable" and in ffmpeg "Broken pipe".
Assuming this means the hls file, what differences do you see between a working and a "not readable" file? I have no sniffing experience to see the differences between ffmpeg
Am 07.02.2018 um 19:15 schrieb Carl Eugen Hoyos: listen mode and streamlink.
Please find out what top-posting means and stop doing it!
Carl Eugen _______________________________________________ ffmpeg-user mailing list ffmpeg-user@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-user
To unsubscribe, visit link above, or email ffmpeg-user-request@ffmpeg.org with subject "unsubscribe".
2018-02-10 14:02 GMT+01:00 Thomas Schmiedl <thomas.schmiedl@web.de>:
Am 07.02.2018 um 19:15 schrieb Carl Eugen Hoyos:
2018-02-06 14:25 GMT+01:00 Thomas Schmiedl <thomas.schmiedl@web.de>:
ffmpeg version 3.4.1 Copyright (c) 2000-2017 the FFmpeg developers
Please test current FFmpeg git head, nothing else is supported here.
I tested now with ffmpeg version N-89978-gcb97400
Error message on TV is "file not readable" and in ffmpeg "Broken pipe".
Assuming this means the hls file, what differences do you see between a working and a "not readable" file?
I have no sniffing experience to see the differences between ffmpeg listen mode and streamlink.
Looking again at your command line: Why are you using FFmpeg? Your input stream is hls (which is an mpegts stream), and you expect your tv (and I believe you tested this) to receive mpegts... FFmpeg is a set of tools and libraries that allow demuxer, transcoding etc. I believe what you need is a script that forwards the mpegts stream from the hls source. I don't know such a script but I hope one exists. Carl Eugen
participants (3)
-
Carl Eugen Hoyos -
Moritz Barsnick -
Thomas Schmiedl