VideoHelp Forum
+ Reply to Thread
Results 1 to 21 of 21
Thread
  1. hello ,
    i'm getting an error with wks-keys like this image
    Image
    [Attachment 67430 - Click to enlarge]


    mpd txt

    Code:
    <?xml version="1.0" encoding="UTF-8" ?>
    <MPD profiles="urn:mpeg:dash:profile:isoff-live:2011" type="dynamic" availabilityStartTime="2022-10-24T06:49:46Z" minimumUpdatePeriod="PT2.0S" minBufferTime="PT1.92S" publishTime="2022-11-01T07:19:05.587Z" timeShiftBufferDepth="PT60.0S" suggestedPresentationDelay="PT1.92S" xmlns="urn:mpeg:dash:schema:mpd:2011" xmlns:cenc="urn:mpeg:cenc:2013" xmlns:mspr="urn:microsoft:playready" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="urn:mpeg:dash:schema:mpd:2011 DASH-MPD.xsd">
    	<Period start="PT0S" id="1">
    		<AdaptationSet mimeType="video/mp4" startWithSAP="1" segmentAlignment="true" par="16:9">
    			<ContentProtection schemeIdUri="urn:mpeg:dash:mp4protection:2011" value="cenc"></ContentProtection>
    			<ContentProtection schemeIdUri="urn:uuid:edef8ba9-79d6-4ace-a3c8-27dcd51d21ed"></ContentProtection>
    			<ContentProtection schemeIdUri="urn:uuid:9a04f079-9840-4286-ab92-e65be0885f95"><mspr:pro xmlns:mspr="urn:microsoft:playready">KAMAAAEAAQAeAzwAVwBSAE0ASABFAEEARABFAFIAIAB4AG0AbABuAHMAPQAiAGgAdAB0AHAAOgAvAC8AcwBjAGgAZQBtAGEAcwAuAG0AaQBjAHIAbwBzAG8AZgB0AC4AYwBvAG0ALwBEAFIATQAvADIAMAAwADcALwAwADMALwBQAGwAYQB5AFIAZQBhAGQAeQBIAGUAYQBkAGUAcgAiACAAdgBlAHIAcwBpAG8AbgA9ACIANAAuADAALgAwAC4AMAAiAD4APABEAEEAVABBAD4APABQAFIATwBUAEUAQwBUAEkATgBGAE8APgA8AEsARQBZAEwARQBOAD4AMQA2ADwALwBLAEUAWQBMAEUATgA+ADwAQQBMAEcASQBEAD4AQQBFAFMAQwBUAFIAPAAvAEEATABHAEkARAA+ADwALwBQAFIATwBUAEUAQwBUAEkATgBGAE8APgA8AEsASQBEAD4AMwBUAFIANQBDAGoASABjAHAAagBhAFMASgBZAFMANQBiAEQALwBSADUAUQA9AD0APAAvAEsASQBEAD4APABMAEEAXwBVAFIATAA+AGgAdAB0AHAAcwA6AC8ALwBsAGkAYwAuAGQAcgBtAHQAbwBkAGEAeQAuAGMAbwBtAC8AbABpAGMAZQBuAHMAZQAtAHAAcgBvAHgAeQAtAGgAZQBhAGQAZQByAGEAdQB0AGgALwBkAHIAbQB0AG8AZABhAHkALwBSAGkAZwBoAHQAcwBNAGEAbgBhAGcAZQByAC4AYQBzAG0AeAA8AC8ATABBAF8AVQBSAEwAPgA8AEwAVQBJAF8AVQBSAEwAPgBoAHQAdABwAHMAOgAvAC8AcABsAGEAeQByAGUAYQBkAHkALQB1AGkALgBlAHgAYQBtAHAAbABlAC4AYwBvAG0APAAvAEwAVQBJAF8AVQBSAEwAPgA8AEMASABFAEMASwBTAFUATQA+ADgAMwAvADkAYQByAHAATQB0AFEAQQA9ADwALwBDAEgARQBDAEsAUwBVAE0APgA8AC8ARABBAFQAQQA+ADwALwBXAFIATQBIAEUAQQBEAEUAUgA+AA==</mspr:pro></ContentProtection>
    			<SegmentTemplate timescale="10000000" presentationTimeOffset="0" media="$RepresentationID$_Segment-$Time$.m4v" initialization="$RepresentationID$_init.m4i">
    				<SegmentTimeline>
    					<S t="6929055789410" d="19200000" r="31" />
    				</SegmentTimeline>
    			</SegmentTemplate>
    			<Representation width="512" height="288" frameRate="25" codecs="avc1.428020" scanType="progressive" sar="1:1" id="1666594179043item-01item" bandwidth="600000" />
    			<Representation width="640" height="360" frameRate="25" codecs="avc1.428020" scanType="progressive" sar="1:1" id="1666594179043item-02item" bandwidth="950000" />
    			<Representation width="768" height="432" frameRate="25" codecs="avc1.640020" scanType="progressive" sar="1:1" id="1666594179043item-03item" bandwidth="1400000" />
    			<Representation width="1024" height="576" frameRate="25" codecs="avc1.640028" scanType="progressive" sar="1:1" id="1666594179043item-04item" bandwidth="2200000" />
    			<Representation width="1280" height="720" frameRate="25" codecs="avc1.64002a" scanType="progressive" sar="1:1" id="1666594179043item-05item" bandwidth="3450000" />
    			<Representation width="1920" height="1080" frameRate="25" codecs="avc1.640032" scanType="progressive" sar="1:1" id="1666594179043item-06item" bandwidth="6000000" />
    		</AdaptationSet>
    		<AdaptationSet mimeType="audio/mp4" startWithSAP="1" lang="eng" segmentAlignment="true">
    			<ContentProtection schemeIdUri="urn:mpeg:dash:mp4protection:2011" value="cenc"></ContentProtection>
    			<ContentProtection schemeIdUri="urn:uuid:edef8ba9-79d6-4ace-a3c8-27dcd51d21ed"></ContentProtection>
    			<ContentProtection schemeIdUri="urn:uuid:9a04f079-9840-4286-ab92-e65be0885f95"><mspr:pro xmlns:mspr="urn:microsoft:playready">KAMAAAEAAQAeAzwAVwBSAE0ASABFAEEARABFAFIAIAB4AG0AbABuAHMAPQAiAGgAdAB0AHAAOgAvAC8AcwBjAGgAZQBtAGEAcwAuAG0AaQBjAHIAbwBzAG8AZgB0AC4AYwBvAG0ALwBEAFIATQAvADIAMAAwADcALwAwADMALwBQAGwAYQB5AFIAZQBhAGQAeQBIAGUAYQBkAGUAcgAiACAAdgBlAHIAcwBpAG8AbgA9ACIANAAuADAALgAwAC4AMAAiAD4APABEAEEAVABBAD4APABQAFIATwBUAEUAQwBUAEkATgBGAE8APgA8AEsARQBZAEwARQBOAD4AMQA2ADwALwBLAEUAWQBMAEUATgA+ADwAQQBMAEcASQBEAD4AQQBFAFMAQwBUAFIAPAAvAEEATABHAEkARAA+ADwALwBQAFIATwBUAEUAQwBUAEkATgBGAE8APgA8AEsASQBEAD4AMwBUAFIANQBDAGoASABjAHAAagBhAFMASgBZAFMANQBiAEQALwBSADUAUQA9AD0APAAvAEsASQBEAD4APABMAEEAXwBVAFIATAA+AGgAdAB0AHAAcwA6AC8ALwBsAGkAYwAuAGQAcgBtAHQAbwBkAGEAeQAuAGMAbwBtAC8AbABpAGMAZQBuAHMAZQAtAHAAcgBvAHgAeQAtAGgAZQBhAGQAZQByAGEAdQB0AGgALwBkAHIAbQB0AG8AZABhAHkALwBSAGkAZwBoAHQAcwBNAGEAbgBhAGcAZQByAC4AYQBzAG0AeAA8AC8ATABBAF8AVQBSAEwAPgA8AEwAVQBJAF8AVQBSAEwAPgBoAHQAdABwAHMAOgAvAC8AcABsAGEAeQByAGUAYQBkAHkALQB1AGkALgBlAHgAYQBtAHAAbABlAC4AYwBvAG0APAAvAEwAVQBJAF8AVQBSAEwAPgA8AEMASABFAEMASwBTAFUATQA+ADgAMwAvADkAYQByAHAATQB0AFEAQQA9ADwALwBDAEgARQBDAEsAUwBVAE0APgA8AC8ARABBAFQAQQA+ADwALwBXAFIATQBIAEUAQQBEAEUAUgA+AA==</mspr:pro></ContentProtection>
    			<Label>primary</Label>
    			<SegmentTemplate timescale="10000000" presentationTimeOffset="0" media="$RepresentationID$_Segment-$Time$.m4a" initialization="$RepresentationID$_init.m4i">
    				<SegmentTimeline>
    					<S t="6929056015660" d="19200000" r="31" />
    				</SegmentTimeline>
    			</SegmentTemplate>
    			<Representation audioSamplingRate="48000" codecs="mp4a.40.5" id="1666594179043item-07item" bandwidth="96000" />
    		</AdaptationSet>
    		<AdaptationSet mimeType="text/vtt" startWithSAP="1" lang="ara" segmentAlignment="true">
    			<SegmentTemplate timescale="10000000" presentationTimeOffset="0" media="$RepresentationID$_Segment-$Time$.vtt">
    				<SegmentTimeline>
    					<S t="6929055789410" d="19200000" r="30" />
    				</SegmentTimeline>
    			</SegmentTemplate>
    			<Representation codecs="vtt" id="1666594179043item-08item" bandwidth="15000" />
    		</AdaptationSet>
    		<AdaptationSet mimeType="application/mp4" startWithSAP="1" lang="ara" segmentAlignment="true">
    			<SegmentTemplate timescale="10000000" presentationTimeOffset="0" media="$RepresentationID$_Segment-$Time$.m4s" initialization="$RepresentationID$_init.m4i">
    				<SegmentTimeline>
    					<S t="6929055789410" d="19200000" r="31" />
    				</SegmentTimeline>
    			</SegmentTemplate>
    			<Representation codecs="stpp" id="1666594179043item-09item" bandwidth="15000" />
    		</AdaptationSet>
    	</Period>
    </MPD>

    headers i'm using
    Code:
    import requests
    
    headers = {
        'Accept': '*/*',
        'Accept-Language': 'en-US,en;q=0.9',
        'Connection': 'keep-alive',
        'Origin': 'https://www.tod.tv',
        'Referer': 'https://www.tod.tv/',
        'Sec-Fetch-Dest': 'empty',
        'Sec-Fetch-Mode': 'cors',
        'Sec-Fetch-Site': 'cross-site',
        'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/106.0.0.0 Safari/537.36',
        'sec-ch-ua': '"Chromium";v="106", "Google Chrome";v="106", "Not;A=Brand";v="99"',
        'sec-ch-ua-mobile': '?0',
        'sec-ch-ua-platform': '"Windows"',
        'x-dt-auth-token': 'eyJhbGciOiJIUzUxMiIsInR5cCI6IkpXVCJ9.eyJjcnQiOiJbe1wiYXNzZXRJZFwiOlwiTElWRUtFWVwiLFwicmVmXCI6XCJkOTBjMjlmNi1jN2VlLTQ3ZjktOGRiZC1jZDZmZmQ1NzNjNjlcIn1dIiwib3B0RGF0YSI6IntcInNlc3Npb25JZFwiOlwiNkUzMTQ1RDQtNDI5RS05MURCLUFDNUQtMUU1NUI2NkU3ODVBXCIsXCJtZXJjaGFudFwiOlwiZGVsdGF0cmVfYmVpbl90b2RcIixcInVzZXJJZFwiOlwiMGU4ZTkwMmEtNThmNy00YzBiLWFkYTAtZTljZGY0NTkxOTZhXCJ9IiwianRpIjoiMmEwMWViZmYtZTQ0NC00NTRkLTkxMTYtNjJlMzk1MmFhMzdkIiwiaWF0IjoxNjY3Mjg0NTcxfQ.WQc6u2YUcUVYPYcsF0KLVkkrGXc_m9BRzgl18BcP5okm7EZX45GIxmbS_uCEya9z7lJalAgQpvQlV13eyqrwiA',
        'Content-Type': 'application/x-www-form-urlencoded',
    }
    
    params = {
        'specConform': 'true',
    }
    
    data = '\b'
    
    response = requests.post('https://lic.drmtoday.com/license-proxy-widevine/cenc/?specConform=true', params=params, headers=headers, data=data)


    lic url
    Code:
    https://lic.drmtoday.com/license-proxy-widevine/cenc/?specConform=true
    i have manually genrated pssh by init of video getting the key id and getting the pssh from psshbox can any one help me to understand why i'm getting this error ?
    thank you
    Quote Quote  
  2. inb4lock (your Referer gives you away):

    1. The only thing that should be in your headers.py file should be the headers dictionary (headers = { 'Accept': '*/*', ... }) you got from curlconverter or otherwise you end up making an extra unneeded request to the license server. Recently, I kept getting 403s from dr't'day if my script sent a request too soon after my browser sent one. YMMV but the request in headers.py adds no benefit either way.

    Originally Posted by thegeek View Post
    i have manually genrated pssh by init of video getting the key id and getting the pssh from psshbox can any one help me to understand why i'm getting this error ?
    Originally Posted by WKS-KEYS
    unable to parse, unsupported init data format
    unable to parse init data
    2. Yeah, I'm going to hazard a guess your generated PSSH is useless if that's what pywidevine is saying before WKS has even tried sending it to the license server. I'm not typing in your PSSH by hand, and I'm not particularly au fait with Protobufs anyway so I wouldn't be able to tell you anything of substance, but I would be surprised if PSSH Box Generator gave it the all-clear. Unless there's a specific reason you need to generate the PSSH outside of the browser, just use Firefox/Chrome/Brave/Opera/Vivaldi (but not Edge) with the EME Logger userscript and use the PSSH inside the generateRequest line in your browser's devtools console.

    If you do want to continue down the path of generating the PSSH yourself, at least check with Bento4's mp4dump or something that there's already not a Widevine PSSH box in the init segment instead of trying to generate one yourself from the KID.
    Last edited by AbortRetryFail; 1st Nov 2022 at 09:22.
    Quote Quote  
  3. Originally Posted by AbortRetryFail View Post
    inb4lock (your Referer gives you away):

    1. The only thing that should be in your headers.py file should be the headers dictionary (headers = { 'Accept': '*/*', ... }) you got from curlconverter or otherwise you end up making an extra unneeded request to the license server. Recently, I kept getting 403s from dr't'day if my script sent a request too soon after my browser sent one. YMMV but the request in headers.py adds no benefit either way.

    Originally Posted by thegeek View Post
    i have manually genrated pssh by init of video getting the key id and getting the pssh from psshbox can any one help me to understand why i'm getting this error ?
    Originally Posted by WKS-KEYS
    unable to parse, unsupported init data format
    unable to parse init data
    2. Yeah, I'm going to hazard a guess your generated PSSH is useless if that's what pywidevine is saying before WKS has even tried sending it to the license server. I'm not typing in your PSSH by hand, and I'm not particularly au fait with Protobufs anyway so I wouldn't be able to tell you anything of substance, but I would be surprised if PSSH Box Generator gave it the all-clear. Unless there's a specific reason you need to generate the PSSH outside of the browser, just use Firefox/Chrome/Brave/Opera/Vivaldi (but not Edge) with the EME Logger userscript and use the PSSH inside the generateRequest line in your browser's devtools console.

    If you do want to continue down the path of generating the PSSH yourself, at least check with Bento4's mp4dump or something that there's already not a Widevine PSSH box in the init segment instead of trying to generate one yourself from the KID.



    Thank you for your reply
    i have tried to open headers.py by python and it's replying with encrypted data when i use full curl converter python althoght when i use (headers = { 'Accept': '*/*', ... }) only it replies 400 Bad request this is because the lic server need x-dt-auth-token from the header so i can't send the header with accept only

    for the pssh generating i used mp4dump in the init but it's only getting the KID not PSSH so can you explain how i can find the pssh with emelogger becuse i cant find it in the console data
    Quote Quote  
  4. hello,

    here is how to have the keys of the videos with the url license like M6replay, salto ..etc: https://lic.drmtoday.com/license-proxy-widevine/cenc/?specConform=true

    it will need the URL license to convert it to python: https://curlconverter.com/

    here is my python code by simplifying the header integrer of the python code : https://files.videohelp.com/u/303355/KeyVideo.py

    here is how to get the video key with the url license.
    Quote Quote  
  5. Originally Posted by thedebutent59 View Post
    hello,

    here is how to have the keys of the videos with the url license like M6replay, salto ..etc: https://lic.drmtoday.com/license-proxy-widevine/cenc/?specConform=true

    it will need the URL license to convert it to python: https://curlconverter.com/

    here is my python code by simplifying the header integrer of the python code : https://files.videohelp.com/u/303355/KeyVideo.py

    here is how to get the video key with the url license.

    Can you explain how to use this python please ?
    Quote Quote  
  6. Originally Posted by thedebutent59 View Post
    hello,

    here is how to have the keys of the videos with the url license like M6replay, salto ..etc: https://lic.drmtoday.com/license-proxy-widevine/cenc/?specConform=true

    it will need the URL license to convert it to python: https://curlconverter.com/

    here is my python code by simplifying the header integrer of the python code : https://files.videohelp.com/u/303355/KeyVideo.py

    here is how to get the video key with the url license.

    i managed to use it but i'm still getting the same error
    unable to parse, unsupported init data format
    unable to parse init data
    session ID does not exist
    Quote Quote  
  7. Originally Posted by thegeek View Post
    i have tried to open headers.py by python and it's replying with encrypted data when i use full curl converter python althoght when i use (headers = { 'Accept': '*/*', ... }) only it replies 400 Bad request this is because the lic server need x-dt-auth-token from the header so i can't send the header with accept only
    Sorry, you're right (what I wrote was shorthand). I meant, using the details from your first post, the only thing that should be in headers.py is:

    Code:
    headers = {
        'Accept': '*/*',
        'Accept-Language': 'en-US,en;q=0.9',
        'Connection': 'keep-alive',
        'Origin': 'https://www.tod.tv',
        'Referer': 'https://www.tod.tv/',
        'Sec-Fetch-Dest': 'empty',
        'Sec-Fetch-Mode': 'cors',
        'Sec-Fetch-Site': 'cross-site',
        'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/106.0.0.0 Safari/537.36',
        'sec-ch-ua': '"Chromium";v="106", "Google Chrome";v="106", "Not;A=Brand";v="99"',
        'sec-ch-ua-mobile': '?0',
        'sec-ch-ua-platform': '"Windows"',
        'x-dt-auth-token': 'FILL IT IN',
        'Content-Type': 'application/x-www-form-urlencoded',
    }
    with, as you note, an updated x-dt-auth-token.

    for the pssh generating i used mp4dump in the init but it's only getting the KID not PSSH so can you explain how i can find the pssh with emelogger becuse i cant find it in the console data
    Erm, assuming you have the Tampermonkey/Violentmonkey extension installed and you've installed the EME Logger userscript in it, bring up the devtools (F12), click Console, put in generateRequest in the filter field, refresh the page with the video, play it and see if you get a hit.

    From a random site (a bad example because on this specific site you have to do this on the PSSH returned):
    Image
    [Attachment 67435 - Click to enlarge]
    Last edited by AbortRetryFail; 1st Nov 2022 at 10:20.
    Quote Quote  
  8. it's very easy to use you copy the keyVideo.py file in the WKS-KEYS folder.

    once done, you launch the KeyVideo.py program.
    1: You enter the PSSH code and press enter.
    2: you copy the URL license (see image)
    Image
    [Attachment 67434 - Click to enlarge]

    3: you paste it in the curl to python in the site i gave.
    4: you copy all the x-dt-auth-token code (see image) and press entrer.
    Image
    [Attachment 67436 - Click to enlarge]

    5: you will have the key to the video.
    Quote Quote  
  9. Originally Posted by AbortRetryFail View Post
    Originally Posted by thegeek View Post
    i have tried to open headers.py by python and it's replying with encrypted data when i use full curl converter python althoght when i use (headers = { 'Accept': '*/*', ... }) only it replies 400 Bad request this is because the lic server need x-dt-auth-token from the header so i can't send the header with accept only
    Sorry, you're right (what I wrote was shorthand). I meant, using the details from your first post, the only thing that should be in headers.py is:

    Code:
    headers = {
        'Accept': '*/*',
        'Accept-Language': 'en-US,en;q=0.9',
        'Connection': 'keep-alive',
        'Origin': 'https://www.tod.tv',
        'Referer': 'https://www.tod.tv/',
        'Sec-Fetch-Dest': 'empty',
        'Sec-Fetch-Mode': 'cors',
        'Sec-Fetch-Site': 'cross-site',
        'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/106.0.0.0 Safari/537.36',
        'sec-ch-ua': '"Chromium";v="106", "Google Chrome";v="106", "Not;A=Brand";v="99"',
        'sec-ch-ua-mobile': '?0',
        'sec-ch-ua-platform': '"Windows"',
        'x-dt-auth-token': 'FILL IT IN',
        'Content-Type': 'application/x-www-form-urlencoded',
    }
    with, as you note, an updated x-dt-auth-token.

    for the pssh generating i used mp4dump in the init but it's only getting the KID not PSSH so can you explain how i can find the pssh with emelogger becuse i cant find it in the console data
    Erm, assuming you have the Tampermonkey/Violentmonkey extension installed and you've installed the EME Logger userscript in it, bring up the devtools (F12), click Console, put in generateRequest in the filter field, refresh the page with the video, play it and see if you get a hit.

    From a random site (a bad example because on this specific site you have to do this on the PSSH returned):
    Image
    [Attachment 67435 - Click to enlarge]
    Thank you for your time i have followed the guide and got this pssh
    Code:
    AAAAZXBzc2gAAAAA7e+LqXnWSs6jyCfc1R0h7QAAAEUIARIQCnk03dwxNqaSJYS5bD/R5RoIY2FzdGxhYnMiHGV5SmhjM05sZEVsa0lqb2lURWxXUlV0RldTSjkyB2RlZmF1bHQ=
    i have used it but i'm now getting this error
    Image
    [Attachment 67437 - Click to enlarge]
    Quote Quote  
  10. Originally Posted by thegeek View Post
    Thank you for your time i have followed the guide and got this pssh
    I've gotten keys from two sites that have used DRMToday in the past, so I'm just going off what I know there. Without access to the site, this is as far as I can go. Maybe someone more knowledgeable than me can chime in. My guess is that the server is returning 403 but WKS won't show it. The best I can offer you is these suggestions:
    • Wait about 7-10 seconds before making the request after your browser has done it.
    • Is the PSSH you posted in your previous post unmodified? I.e. it's exactly what the logger script showed in the devtools console?
    • Use a fresh x-dt-auth-token.
    • If that doesn't work, try removing 'Content-Type': 'application/x-www-form-urlencoded', from the headers. IIRC, that's not correct for the data sent with this particular POST request. Requests will automatically use a correct value for this header if needed in its absence. (e: you might be able to get away with only having x-dt-auth-token in the headers)
    Last edited by AbortRetryFail; 1st Nov 2022 at 11:07.
    Quote Quote  
  11. Originally Posted by thegeek View Post
    i have used it but i'm now getting this error
    Image
    [Attachment 67437 - Click to enlarge]
    You sure your CDM is not revoked?
    Try to only use x-dt header and do it fast, maybe the header expires.
    Quote Quote  
  12. Originally Posted by [ss]vegeta View Post
    Originally Posted by thegeek View Post
    i have used it but i'm now getting this error
    Image
    [Attachment 67437 - Click to enlarge]
    You sure your CDM is not revoked?
    Try to only use x-dt header and do it fast, maybe the header expires.
    Thank you it worked with me when i send x-dt header only
    Quote Quote  
  13. I am not found x-dt in my header and give me same error like that "unable to parse, unsupported init data format
    unable to parse init data
    session ID does not exist
    "
    here is my header data
    import requests

    headers = {
    'authority': 'videos-cloudfront-studiodrm.jwpsrv.com',
    'accept': '*/*',
    'accept-language': 'en-US,en;q=0.9',
    'dnt': '1',
    'origin': 'null',
    'referer': 'https://www.xyz.com/',
    'sec-ch-ua': '"Chromium";v="112", "Google Chrome";v="112", "Not:A-Brand";v="99"',
    'sec-ch-ua-mobile': '?0',
    'sec-ch-ua-platform': '"Linux"',
    'sec-fetch-dest': 'empty',
    'sec-fetch-mode': 'cors',
    'sec-fetch-site': 'cross-site',
    'user-agent': 'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/112.0.0.0 Safari/537.36',
    }

    response = requests.get(
    'https://videos-cloudfront-studiodrm.jwpsrv.com/644a8e12_5e48915c8fecd670caa12e9c43d82efce018e973/site/wmj16gZ8/media/CNSBAnM9/version/CNSBAnM9/manifest-34545197,34545198,34545199,34545203,34545204.ism/.mpd',
    headers=headers,
    )
    Quote Quote  
  14. Originally Posted by sahilkundu View Post
    I am not found x-dt in my header and give me same error like that "unable to parse, unsupported init data format
    unable to parse init data
    session ID does not exist
    "
    here is my header data
    import requests

    headers = {
    'authority': 'videos-cloudfront-studiodrm.jwpsrv.com',
    'accept': '*/*',
    'accept-language': 'en-US,en;q=0.9',
    'dnt': '1',
    'origin': 'null',
    'referer': 'https://www.xyz.com/',
    'sec-ch-ua': '"Chromium";v="112", "Google Chrome";v="112", "Not:A-Brand";v="99"',
    'sec-ch-ua-mobile': '?0',
    'sec-ch-ua-platform': '"Linux"',
    'sec-fetch-dest': 'empty',
    'sec-fetch-mode': 'cors',
    'sec-fetch-site': 'cross-site',
    'user-agent': 'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/112.0.0.0 Safari/537.36',
    }

    response = requests.get(
    'https://videos-cloudfront-studiodrm.jwpsrv.com/644a8e12_5e48915c8fecd670caa12e9c43d82efce018e973/site/wmj16gZ8/media/CNSBAnM9/version/CNSBAnM9/manifest-34545197,34545198,34545199,34545203,34545204.ism/.mpd',
    headers=headers,
    )
    It should be POST request to the lic server not GET and i think you are getting the headers of the mpd file as it seems , not the lic url .

    If it is a public content please post the original link

    Regards
    Quote Quote  
  15. Then how can i get lic url header with this mpd
    Quote Quote  
  16. Originally Posted by sahilkundu View Post
    Then how can i get lic url header with this mpd
    You should look for the lic url in the dev tools of the browser , try to search for keywords like widevine, drm , lic , auth , WV ...etc
    Quote Quote  
  17. i checked also using burp-suite but there are no x-dt auth token found. Can you solve it.
    Quote Quote  
  18. Image
    [Attachment 70502 - Click to enlarge]
    Image
    [Attachment 70503 - Click to enlarge]

    Here are the GET method. But there are no x-dt auth token.
    Can we use it in header.py
    Quote Quote  
  19. your "x-dt auth token" is Authorization: Bearer ey....
    Quote Quote  
  20. Originally Posted by lomero View Post
    your "x-dt auth token" is Authorization: Bearer ey....
    But this does not work
    Showing error :-
    unable to parse, unsupported init data format
    unable to parse init data
    session ID does not exist
    TypeError: 'int' object is not iterable

    My header is:-
    import requests

    headers = {
    'authority': 'backend.xyz.net',
    'accept': 'application/json, text/plain, */*',
    'accept-language': 'en-US,en;q=0.9',
    'authorization': 'Bearer eyJhbGciOiJIUzUxMiJ9.eyJzdWIiOiI1NzM5NzkiLCJyb2xlI joiVVNFUiIsIklwLUFkZHJlc3MiOiIxMjcuMC4wLjEiLCJVc2V yLUFnZW50IjoiQW1hem9uIENsb3VkRnJvbnQiLCJpYXQiOjE2O DIzMDczODUsInBsYXRmb3JtIjoiV0VCIiwiaXNzdWVyIjoiYWR kYTI0Ny5jb20iLCJleHAiOjE3MTM4NDMzODV9.KCM3V1BNZNyL DXItdKNs8LRV_yikBzztue3sD99NvFhMu_yp-Yf2nZBMBjqndUG2BsvRwjq8zyzZPxRoXf5SNA',
    'dnt': '1',
    'origin': 'https://www.xyz.com',
    'referer': 'https://www.xyz.com/',
    'sec-ch-ua': '"Chromium";v="112", "Google Chrome";v="112", "Not:A-Brand";v="99"',
    'sec-ch-ua-mobile': '?0',
    'sec-ch-ua-platform': '"Linux"',
    'sec-fetch-dest': 'empty',
    'sec-fetch-mode': 'cors',
    'sec-fetch-site': 'cross-site',
    'user-agent': 'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/112.0.0.0 Safari/537.36',
    }

    params = {
    'course_id': '462',
    'media_id': 'Tbs8BCCO',
    }

    response = requests.get(
    'https://backend.xyz.net/app-content-ws/v1/drm/get/license/jwplayer',
    params=params,
    headers=headers,
    )

    i am using PSSH:- AAAAg3Bzc2gBAAAA7e+LqXnWSs6jyCfc1R0h7QAAAAHQBZn3Rk 5HnBl1J6G4Zpe1AAAATyJHd21qMTZnWjgtVGJzOEJDQ08tVGJz OEJDQ08tMzQ1NDUxOTdfMzQ1NDUxOThfMzQ1NDUxOTlfMzQ1ND UyMDNfMzQ1NDUyMDRI49yVmwY=

    This generated by tempermonkey ESM

    i am using lic url:- https://playready-license.vudrm.tech/rightsmanager.asmx ---This lic url generated by PSSH Box Decoder ---

    AND also used this:- https://backend.xyz.net/app-content-ws/v1/drm/get/license/jwplayer

    But output with same error.

    MPD Url is :- https://videos-cloudfront-studiodrm.jwpsrv.com/644b99fa_5ec2e682ab858b0d3d37a4a01c477f...45204.ism/.mpd

    <cencssh>AAADrHBzc2gBAAAAmgTweZhAQoarkuZb4IhflQAAAAHQBZ n3Rk5HnBl1J6G4Zpe1AAADeHgDAAABAAEAbgM8AFcAUgBNAEgA RQBBAEQARQBSACAAeABtAGwAbgBzAD0AIgBoAHQAdABwADoALw AvAHMAYwBoAGUAbQBhAHMALgBtAGkAYwByAG8AcwBvAGYAdAAu AGMAbwBtAC8ARABSAE0ALwAyADAAMAA3AC8AMAAzAC8AUABsAG EAeQBSAGUAYQBkAHkASABlAGEAZABlAHIAIgAgAHYAZQByAHMA aQBvAG4APQAiADQALgAwAC4AMAAuADAAIgA+ADwARABBAFQAQQ A+ADwAUABSAE8AVABFAEMAVABJAE4ARgBPAD4APABLAEUAWQBM AEUATgA+ADEANgA8AC8ASwBFAFkATABFAE4APgA8AEEATABHAE kARAA+AEEARQBTAEMAVABSADwALwBBAEwARwBJAEQAPgA8AC8A UABSAE8AVABFAEMAVABJAE4ARgBPAD4APABLAEkARAA+ADkANQ BrAEYAMABFADUARwBuAEUAYwBaAGQAUwBlAGgAdQBHAGEAWAB0 AFEAPQA9ADwALwBLAEkARAA+ADwATABBAF8AVQBSAEwAPgBoAH QAdABwAHMAOgAvAC8AcABsAGEAeQByAGUAYQBkAHkALQBsAGkA YwBlAG4AcwBlAC4AdgB1AGQAcgBtAC4AdABlAGMAaAAvAHIAaQ BnAGgAdABzAG0AYQBuAGEAZwBlAHIALgBhAHMAbQB4ADwALwBM AEEAXwBVAFIATAA+ADwATABVAEkAXwBVAFIATAA+AGgAdAB0AH AAcwA6AC8ALwBwAGwAYQB5AHIAZQBhAGQAeQAtAGwAaQBjAGUA bgBzAGUALgB2AHUAZAByAG0ALgB0AGUAYwBoAC8AcgBpAGcAaA B0AHMAbQBhAG4AYQBnAGUAcgAuAGEAcwBtAHgAPAAvAEwAVQBJ AF8AVQBSAEwAPgA8AEQAUwBfAEkARAA+AGcAdwBJAEMASQA4AH kAZgBJAFUARwBmADQAUgAvADUAcQBPAFcAdQBxAGcAPQA9ADwA LwBEAFMAXwBJAEQAPgA8AEMASABFAEMASwBTAFUATQA+AHgAcw BBAHQAVAA2AGUAOABUAHQAdwA9ADwALwBDAEgARQBDAEsAUwBV AE0APgA8AC8ARABBAFQAQQA+ADwALwBXAFIATQBIAEUAQQBEAE UAUgA+AA==</cencssh>

    I used this <cencssh> HERE https://tools.axinom.com/decoders/PsshBox which gives me lic url this after decoding --- https://playready-license.vudrm.tech/rightsmanager.asmx.

    IF anyone have solution then give me.
    Last edited by sahilkundu; 24th Apr 2023 at 08:55.
    Quote Quote  
  21. unable to parse, unsupported init data format
    unable to parse init data
    session ID does not exist
    Traceback (most recent call last):
    raise InvalidSchema(f"No connection adapters were found for {url!r}")
    requests.exceptions.InvalidSchema: No connection adapters were found for 'Bearer https://lic.drmtoday.com/license-proxy-widevine/
    Quote Quote  



Similar Threads

Visit our sponsor! Try DVDFab and backup Blu-rays!