LinkedIn Live works from OBS but not from Restreamer 2 #418
Unanswered
jeremywillden
asked this question in
Q&A
Replies: 2 comments 1 reply
-
Thank you for the detailed description of the problem. The code can be found here: It will probably work via the parameters: Please test it directly via FFmpeg. Best thanks. |
Beta Was this translation helpful? Give feedback.
1 reply
-
Thanks very much for the links and such.
I've been able to extract the ffmpeg command lines created by restreamer
using the forkstat command. I run the commands manually on the command
line (with a test pattern as the video source to keep things simple) and I
get slightly more information than before:
[tcp @ 0x55e4ddf63b40] Starting connection attempt to 20.236.186.11 port
2935
[tcp @ 0x55e4ddf63b40] Successfully connected to 20.236.186.11 port 2935
[rtmps @ 0x55e4ddf657c0] Handshaking...
[rtmps @ 0x55e4ddf657c0] Type answer 3
[rtmps @ 0x55e4ddf657c0] Server version 0.0.0.0
[rtmps @ 0x55e4ddf657c0] Proto = rtmps, path =
/live/d532ec1629754c39ad2c6285d1d0d905, app = live, fname =
d532ec1629754c39ad2c6285d1d0d905
[tls @ 0x55e4ddf64180] Error in the pull function.
rtmps://
0b589bd53a314260bc5bc47e2ca5df37.channel.media.azure.net:2935/live/d532ec1629754c39ad2c6285d1d0d905:
Input/output error
[AVIOContext @ 0x55e4ddda2c40] Statistics: 393216 bytes read, 0 seeks
[AVIOContext @ 0x55e4ddde8a40] Statistics: 0 bytes read, 0 seeks
[AVIOContext @ 0x55e4ddd98880] Statistics: 994 bytes read, 0 seeks
[AVIOContext @ 0x55e4ddd916c0] Statistics: 192 bytes read, 0 seeks
Following the same process with YouTube works great:
/usr/bin/ffmpeg -err_detect ignore_err -re -i
***@***.***:80/memfs/f7b114d0-b4bd-40d2-9b3f-bea8a5d4148a.m3u8
-map 0:0 -codec:v copy -map 0:1 -codec:a copy -f flv rtmps://
a.rtmp.youtube.com/live2/stream-key-redacted
But LinkedIn Live does not:
/usr/bin/ffmpeg -loglevel 56 -err_detect ignore_err -re -i
***@***.***:80/memfs/f7b114d0-b4bd-40d2-9b3f-bea8a5d4148a.m3u8
-map 0:0 -codec:v copy -map 0:1 -codec:a copy -f flv rtmps://
6949b6ae3e4a4023a69e02b59311ad10.channel.media.azure.net:2935/live/6949b6ae3e4a4023a69e02b59311ad10/c547c5ea9d83469ba1881ce3c80f36a7
I have not been able to find much information about this error online,
though someone else was trying to use FFMPEG to stream directly to LinkedIn
Live and they got the same "Errror in the pull function" that I observed,
so this seems to be a fundamental issue with Azure video streaming that the
FFMPEG team has not yet found a fix for.
https://serverfault.com/questions/1104848/whats-the-ffmpeg-command-to-go-live-with-linkedin-error-in-the-pull-function?newreg=0b6660cb147f4a998a2448afbef8702b
I've spent a fair amount of time adjusting the URL, adding extra values to
the URL path, removing them, reordering them, and so on, but without
success.
It seems that LinkedIn live has some odd bugs and it might make sense to
remove it from the UI until there's a workaround or fix for FFMPEG, though
since it works just fine in OBS Studio (as long as you copy the stream key
as well as the URL) they should be able to follow that pattern and find a
fix. I dug around in the OBS code for an hour or so and was not able to
determine where the Stream Key field is used in the RTMP data stream. I'm
guessing it's part of the initial handshake after the TLS connection is
established, but since the data are encrypted at that point, my Wireshark
and ngrep captures aren't much use.
At this point I'll probably have to settle for using a copy of OBS Studio
for LinkedIn Live and run all the other streams through restreamer. Thanks
for creating/developing/supporting such a great open source project.
Despite LinkedIn's (or Microsoft Azure's) shortsighted non-standard
behavior that breaks it, Restreamer is a great tool!
Thank You
Jeremy Willden
Constellation Labs, LLC
direct: 801-877-1101
main: 801-877-1132
mobile: 801-318-8531
http://constellationlabs.com
HAM callsign: KG7JW (formerly KG7ELA)
**This email and any attachments thereto, is the property of Constellation
Labs LLC, is subject to all the protections accorded intellectual property,
is confidential and is intended solely for the use of the named
addressee(s). If you are not the intended recipient or believe that you
have received this communication in error, you are hereby notified that any
dissemination, distribution or copying of this e-mail, and any attachments
thereto, is strictly prohibited. Please notify the sender that you have
received the e-mail in error, and permanently delete the original you
received and destroy any printouts, copies, facsimiles, and reproductions
thereof. If an NDA is in place between the addressee(s) and Constellation
Labs, LLC, this email and all attachments are Confidential under the terms
of the NDA, and further, any telephone, facsimile, or in-person discussions
are also Confidential.
…On Tue, Sep 20, 2022 at 8:23 AM Jan Stabenow ***@***.***> wrote:
Wrong file^^
https://github.com/datarhei/restreamer-ui/blob/main/src/views/Publication/Services/Linkedin.js
—
Reply to this email directly, view it on GitHub
<#418 (reply in thread)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/ADI6FAHKTX555TQ6MO5SNHLV7HCEZANCNFSM6AAAAAAQQIJ4JM>
.
You are receiving this because you authored the thread.Message ID:
***@***.***>
|
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
I have been unsuccessful at using Restreamer (new install as of yesterday) to stream to LinkedIn Live, but have streamed to YouTube and Twitch without problems.
I have tried both with the built-in LinkedIn transmitter and with the RTMPS transmitter. Both accept the stream URL:
rtmps://f82d031bcf7147d4ba8caed9ae17e834.channel.media.azure.net:2935/live/aed3c42935bb41dcbca57b63c7c124b5
which contains the stream key, but neither has a separate location to enter the stream key, and apparently they will extract the stream key from the URL.
I am able to successfully stream to LinkedIn Live with OBS studio by entering the full stream URL (which includes the stream key) and at the same time entering the stream key separately into the Stream Key field of OBS Studio. I am providing this information as I think it helps explain what isn't working on Restreamer 2.
OBS Studio Settings that work with LinkedIn Live:
Server: rtmps://f82d031bcf7147d4ba8caed9ae17e834.channel.media.azure.net:2935/live/aed3c42935bb41dcbca57b63c7c124b5
Stream Key: aed3c42935bb41dcbca57b63c7c124b5
OBS Studio Settings that DO NOT work with LinkedIn Live:
Server: rtmps://f82d031bcf7147d4ba8caed9ae17e834.channel.media.azure.net:2935/live/aed3c42935bb41dcbca57b63c7c124b5
Stream Key:
note: the Stream Key field is left blank
If I remove the contents of the Stream Key field in OBS studio the connection fails, so it appears that the LinkedIn Live servers want the stream key sent twice, once in the URL then again somewhere in the query itself.
Since LinkedIn Live expires the URL and key two hours after the event start time, I can create more detailed log information to help track down the problem, but my previous event just expired so I don't have all the details on hand at the moment. Please describe what log information would be helpful and I'll create and event and run tests so I can provide the results.
I am willing to dig into the code to make a change that will fix this issue, but don't know where to start in the source (so far I only found a source file for a top level HTML page, nothing that handles URL parsing). Any suggestions are appreciated.
Beta Was this translation helpful? Give feedback.
All reactions