VideoHelp Forum




+ Reply to Thread
Page 1 of 2
1 2 LastLast
Results 1 to 30 of 35
  1. Banned
    Join Date
    Apr 2022
    Location
    Hong Kong
    Search Comp PM
    Image
    [Attachment 65685 - Click to enlarge]


    I found this mpd file, and tried to download it because I've already got the keys.

    But ytdlp gave an http 403 error.

    Any solution? Thanks~

    Image
    [Attachment 65686 - Click to enlarge]
    Quote Quote  
  2. Banned
    Join Date
    Apr 2022
    Location
    Hong Kong
    Search Comp PM
    I also added "--allow-u" to download unplayable formats and "--cookies-from-browser chrome" to extract cookies from chrome in case of authentication needed.
    Quote Quote  
  3. try to add -o video.mp4
    and also --referer "http:\\link"

    but from mpd i see date Prod_5April2021&exp=.... i think it's expired mpd link
    Quote Quote  
  4. Ret. Hippie Guitar Player Axel Slingerland's Avatar
    Join Date
    Jul 2020
    Location
    The Lost Coast
    Search Comp PM
    I've never done anything like that on Discovery+, I just put addresses of videos in a batch file like so:

    Code:
    @echo off
    cd Movies
    
    yt-dlp.exe --cookies c:\yt-dlp\cookies.txt --output %%(title)s.%%(ext)s https://www.discoveryplus.com/video/path-to-video-1
    yt-dlp.exe --cookies c:\yt-dlp\cookies.txt --output %%(title)s.%%(ext)s https://www.discoveryplus.com/video/path-to-video-2
    yt-dlp.exe --cookies c:\yt-dlp\cookies.txt --output %%(title)s.%%(ext)s https://www.discoveryplus.com/video/path-to-video-3
    
    pause
    All I had to do was log in and copy the cookies in advance (I used a Google Chrome addon called "Get Cookies.txt" to accomplish that), run the batch file and it downloads them all, without any fuss. No digging for links, keys or CLI command typing needed. A membership is required. I've been using youtube-dl, youtube-dl-gui and later yt-dlp to download, and Discovery+ is one of the very few sites that no download has ever failed, except when my ISP has been playing yo-yo with my connection. A simple restart of the batch file usually gets it running again.
    Quote Quote  
  5. Banned
    Join Date
    Apr 2022
    Location
    Hong Kong
    Search Comp PM
    Originally Posted by lomero View Post
    try to add -o video.mp4
    and also --referer "http:\\link"

    but from mpd i see date Prod_5April2021&exp=.... i think it's expired mpd link
    Thanks. I'll give it another try later~
    Quote Quote  
  6. Banned
    Join Date
    Apr 2022
    Location
    Hong Kong
    Search Comp PM
    Originally Posted by Axel Slingerland View Post
    I've never done anything like that on Discovery+, I just put addresses of videos in a batch file like so:

    Code:
    @echo off
    cd Movies
    
    yt-dlp.exe --cookies c:\yt-dlp\cookies.txt --output %%(title)s.%%(ext)s https://www.discoveryplus.com/video/path-to-video-1
    yt-dlp.exe --cookies c:\yt-dlp\cookies.txt --output %%(title)s.%%(ext)s https://www.discoveryplus.com/video/path-to-video-2
    yt-dlp.exe --cookies c:\yt-dlp\cookies.txt --output %%(title)s.%%(ext)s https://www.discoveryplus.com/video/path-to-video-3
    
    pause
    All I had to do was log in and copy the cookies in advance (I used a Google Chrome addon called "Get Cookies.txt" to accomplish that), run the batch file and it downloads them all, without any fuss. No digging for links, keys or CLI command typing needed. A membership is required. I've been using youtube-dl, youtube-dl-gui and later yt-dlp to download, and Discovery+ is one of the very few sites that no download has ever failed, except when my ISP has been playing yo-yo with my connection. A simple restart of the batch file usually gets it running again.
    Many thanks to your reply from which I have learned a lot.
    Quote Quote  
  7. Discovery+ has made a larger push rolling out their DRM over the past 24 hours..
    Quote Quote  
  8. Ret. Hippie Guitar Player Axel Slingerland's Avatar
    Join Date
    Jul 2020
    Location
    The Lost Coast
    Search Comp PM
    As in what, specifically? It doesn't seem like they would actually replace all of their shows, of which they claimed when they started that they had 55,000 episodes of many different TV shows, and I know they have a lot more than that now.

    Edit: I get it... AT&T struck again. WarnerMedia and Discovery+ have merged. Whether it's a good or a bad thing remains to be seen.
    Last edited by Axel Slingerland; 4th Jul 2022 at 18:21.
    Quote Quote  
  9. use youtube-dl and add --verbose --cookies <insert cookies.txt> <add website link from the video you want>
    Quote Quote  
  10. Banned
    Join Date
    Apr 2022
    Location
    Hong Kong
    Search Comp PM
    Folks,
    issue solved.
    Just use "ytdlp <this website url> --cookies-from-browser <type the browser that you have logged in to paramountplus> -N 6"
    Weird that in paramountplus, you donot need to input the mpd url, just the website url is OK.
    Picture below.
    Image
    [Attachment 65735 - Click to enlarge]
    Quote Quote  
  11. Ret. Hippie Guitar Player Axel Slingerland's Avatar
    Join Date
    Jul 2020
    Location
    The Lost Coast
    Search Comp PM
    Originally Posted by monsterbubble View Post
    use youtube-dl and add --verbose --cookies <insert cookies.txt> <add website link from the video you want>
    So far, I've never used --verbose. What can I say? What would I do with debugging information?

    Originally Posted by CrymanChen View Post
    Weird that in paramountplus, you donot need to input the mpd url, just the website url is OK.
    I don't even have a membership there and can download a good bit of stuff. Like most sites I go to, there are some DRM files I can't download, but most of what I've tried has worked. I think that's their way of preventing people from having entire TV series they can release on DVDs somewhere...
    Last edited by Axel Slingerland; 4th Jul 2022 at 23:41.
    Quote Quote  
  12. Originally Posted by CrymanChen View Post
    Folks,
    issue solved.
    Just use "ytdlp <this website url> --cookies-from-browser <type the browser that you have logged in to paramountplus> -N 6"
    Weird that in paramountplus, you donot need to input the mpd url, just the website url is OK.
    you can use the website url for discovery plus because yt-dlp has an extractor built in for it (along with a lot of others).
    you can find the list of extractors and their scripts here
    Quote Quote  
  13. Banned
    Join Date
    Apr 2022
    Location
    Hong Kong
    Search Comp PM
    Originally Posted by ElCap View Post
    Originally Posted by CrymanChen View Post
    Folks,
    issue solved.
    Just use "ytdlp <this website url> --cookies-from-browser <type the browser that you have logged in to paramountplus> -N 6"
    Weird that in paramountplus, you donot need to input the mpd url, just the website url is OK.
    you can use the website url for discovery plus because yt-dlp has an extractor built in for it (along with a lot of others).
    you can find the list of extractors and their scripts here
    Whoa... It is so nice of you to give me this itp~
    Quote Quote  
  14. Ret. Hippie Guitar Player Axel Slingerland's Avatar
    Join Date
    Jul 2020
    Location
    The Lost Coast
    Search Comp PM
    Originally Posted by CrymanChen View Post
    Folks,
    issue solved.
    Just use...
    I wish I had seen your post before now...

    If anyone uses batch files, and here's what I do for Discovery+ now...

    Code:
    @echo off
    
    rem Show Title
    yt-dlp.exe --format dash-video=xxxx000+dash-audio_eng-125000 --cookies-from-browser chrome -N 6 --output %%(title)s.%%(ext)s https://www.discoveryplus.com/video/show_title 
    
    pause
    You have to run --list-formats to get the correct dash-video=xxxx000 number, but other than that it runs like a top. Thanks, CrymanChen...
    Last edited by Axel Slingerland; 8th Nov 2022 at 03:46.
    Quote Quote  
  15. Originally Posted by Axel Slingerland View Post
    You have to run --list-formats to get the correct dash-video=xxxx000 number, but other than that it runs like a top.
    if you know that the id you want always ends with "000", you can use this argument to automate it:
    Code:
    -f "bv[format_id$=000],ba"
    or if it always starts with "dash-video", you can use this:
    Code:
    -f "bv[format_id^=dash-video],ba"
    Quote Quote  
  16. Ret. Hippie Guitar Player Axel Slingerland's Avatar
    Join Date
    Jul 2020
    Location
    The Lost Coast
    Search Comp PM
    Originally Posted by ElCap View Post
    if you know that the id you want always ends with "000", you can use this argument to automate it:
    Code:
    -f "bv[format_id$=000],ba"
    How would that select the right file? This is a random file I grabbed for an example:
    Image Attached Thumbnails Click image for larger version

Name:	dash-video.png
Views:	50
Size:	44.5 KB
ID:	67535  

    Quote Quote  
  17. I assumed that you were selecting the id based on the name starting with or ending with specific text.
    I was suggesting a way to fully automate the batch script without having to list the formats first.
    Quote Quote  
  18. It's only one soundtrack anyway. Where is the problem? Are there sometimes additional languages? Then you could use
    ba[language=en-US]
    for English sound.
    Quote Quote  
  19. Ret. Hippie Guitar Player Axel Slingerland's Avatar
    Join Date
    Jul 2020
    Location
    The Lost Coast
    Search Comp PM
    Originally Posted by ElCap View Post
    I assumed that you were selecting the id based on the name starting with or ending with specific text.
    I was suggesting a way to fully automate the batch script without having to list the formats first.
    Thanks, but I was going for the four numbers before the three 0's. The point being, I have an old school 1080p HDTV, and I don't see any point in downloading video that is any higher quality than it will display properly. It's a waste of hard drive space.

    If I don't specify a specific format, it will download the highest quality video. Which for my TV is way more than it needs. It plays the file ok, but the display is 1080p. And if you look at the last 1920x1080 file listed, it says "dash-video=9878000", and if you scroll across to the other side, it says "3.01Gib" and "9878k". But if I download the first 1280x720 file, which is "dash-video=1825000", and if you scroll across to the other side, it says "569.20Mib" and "1825k". I can watch them both and they look the same on my TV, and the "720" is about 2.5Gb smaller.

    However, I think there is a way to limit the filesize, but I haven't tried it. I'll have to look into that...
    Last edited by Axel Slingerland; 10th Nov 2022 at 01:16.
    Quote Quote  
  20. ah ok, it sounds like you have a few constraints to consider.
    the yt-dlp github page has some good examples
    https://github.com/yt-dlp/yt-dlp#format-selection-examples
    Quote Quote  
  21. Ret. Hippie Guitar Player Axel Slingerland's Avatar
    Join Date
    Jul 2020
    Location
    The Lost Coast
    Search Comp PM
    I tried adding "--limit-rate 1000k" to my command, but it didn't work. But until I come up with something better, I re-wrote my batch file so that it has a command for checking the formats, then pause it, so I can go back to the file and change those 4 numbers and save the file, and then go back to the batch file and hit a key and it downloads the file.

    I had put a -P [location] command in to specify where to download the files to, but it's actually faster to just copy the file and put it where I want to download to, then delete it when I'm finished. Because my my vision is gets worse at times depending on what my blood glucose is, how tired I am, how much pain I'm in, etc., and the fact that I hate typing the same things over and over. So I just copy the file and put it where ever I need it.
    Quote Quote  
  22. Member
    Join Date
    Dec 2021
    Location
    Spain
    Search Comp PM
    Originally Posted by Axel Slingerland View Post
    I tried adding "--limit-rate 1000k" to my command, but it didn't work.
    -r 1.0M
    Quote Quote  
  23. Of course, this will not work regarding which resolution you prefer. This will just limit the download rate, in order not to download too fast if the provider doesn't like that and could ban your IP/account.
    I don't get the point. You write you want the best quality, but then you want 720p. What is your goal?
    Quote Quote  
  24. Ret. Hippie Guitar Player Axel Slingerland's Avatar
    Join Date
    Jul 2020
    Location
    The Lost Coast
    Search Comp PM
    Originally Posted by Quint View Post
    It's only one soundtrack anyway. Where is the problem? Are there sometimes additional languages? Then you could use
    ba[language=en-US]
    for English sound.
    I wasn't talking about audio or languages.


    Originally Posted by Quint View Post
    Of course, this will not work regarding which resolution you prefer. This will just limit the download rate, in order not to download too fast if the provider doesn't like that and could ban your IP/account.
    You're right about this, I misunderstood the manual.

    Originally Posted by Quint View Post
    I don't get the point. You write you want the best quality, but then you want 720p. What is your goal?
    I never said I wanted the best quality. And I don't, because I don't need it. Read what I wrote about my TV... It explains why I don't need the best quality and what I am trying to do.


    Edit: I found another setting the the yt-dlp man page, --max-filesize SIZE, but it didn't eliminate files larger than 1Gb either. So unless anyone has a better idea, I guess my edited batch file that checks formats and gets paused, so I can get the four numbers I have to change for every file I want to download, then edit and save the batch file and find the "Any Key" and press it so the file will get downloaded will have to do.
    Last edited by Axel Slingerland; 11th Nov 2022 at 02:07.
    Quote Quote  
  25. Sorry for my complete misunderstanding. Next time I will answer the next morning...

    This looks promising:

    "
    You can select the n'th best format of a type by using best<type>.<n>. For example, best.2 will select the 2nd best combined format. Similarly, bv*.3 will select the 3rd best format that contains a video stream.
    "
    Quote Quote  
  26. Ret. Hippie Guitar Player Axel Slingerland's Avatar
    Join Date
    Jul 2020
    Location
    The Lost Coast
    Search Comp PM
    Originally Posted by Quint View Post
    Next time I will answer the next morning...
    Hey, I should do that at rimes myself! There have been many times I should have sat on my hands and said nothing. I would put my foot in my mouth a lot less if I would just remember that I don't always know as much as I think I know. Specially when I know next to nothing about whatever a discussion is about.


    You can select the n'th best format of a type by using best<type>.<n>. For example, best.2 will select the 2nd best combined format. Similarly, bv*.3 will select the 3rd best format that contains a video stream.
    I tried that and it works well IF you have a consistent list of formats. But the problem with that is they're not always consistent. In fact, it's rare to find files that are all the exact same in a group of files, such as a TV series. At least that's been the case for me...
    Quote Quote  
  27. Hm. I seem not to understand again. Carefully: You say this variable would only work if you had always the same formats? But it's a variable, or do I get the sense of "best.2" wrongly?
    By the way: I am also a "retired guitarrist".
    Quote Quote  
  28. Ret. Hippie Guitar Player Axel Slingerland's Avatar
    Join Date
    Jul 2020
    Location
    The Lost Coast
    Search Comp PM
    No, I said "a consistent list of formats." And what I meant was, the list would always be the same, and that rarely ever happens. Basically stated, video files are not created equal. If they were, this would be easy to automate. But one file might have three 1920x1080 files with three different bitrates, and the next file you want might have two of each, and the next one might have four of each.

    If you scroll up to post #15, ElCap wrote:

    if you know that the id you want always ends with "000", you can use this argument to automate it:
    Code:
    -f "bv[format_id$=000],ba"
    or if it always starts with "dash-video", you can use this:
    Code:
    -f "bv[format_id^=dash-video],ba"
    And the reason neither of those would work for what I am trying to do, is what I need is the four numbers (xxxx) in the dash-video=xxxx000 filename. The end of that is always the same, as is the beginning, it's those four numbers in the middle that always change. And those numbers always match the bitrate of the file, but I have yet to find a way to make yt-dlp automatically select the files I want without looking them and typing the numbers into the batch file manually.

    If I was downloading a TV series, I used to be able to just make a list of all the files, use my text editor's macro function to add a pre-written yt-dlp command at the beginning of each line, save the file and run it. It would ten download all the files. But now, I can still do that, but I have to put each address into a file set up to --list-formats, and edit each line to download the correct file. That process is very tedious and time consuming, which is why I have been trying to find a way to automate the finding of the correct file. I thought that setting a --min-filesize and --max-filesize would work but it didn't. I also tried every other command or setting that seemed to be related, and none of them worked. The bottom line is due to my inexperience in these matters, I'm officially stumped. I have no idea how to do this other than the way I have been, editing each line individually. That of course, is better than nothing, but considering that I have files that range from heights of 480 to 1080, with many different bitrates, there are just too many possibilities. So I am very happy that not all websites use this dash format.

    And it's always a pleasure to meet other retired guitarists. One of the only times I ever got "star struck" was back in the mid 1990s, I was working as a bellman at the Ahwahnee Hotel in Yosemite National Park, and Larry Carlton checked in. He was the "1st Call" session guitarist in Los Angeles in the 1970's, and is on practically every major rock, blues or jazz album of that time. When I was at the front desk, I said nothing to him, as it was against company policy to talk to "famous people" unless they speak to you first. When we were going to his room, I pointed at his guitar case and asked him "Is that your 1968 ES-335?", and that struck up a very nice (albeit short) conversation about guitar gear. He's a walking encyclopedia on equipment. I learned a lot from him in that 20 minute conversation.
    Quote Quote  
  29. Originally Posted by Axel Slingerland View Post
    ...
    But one file might have three 1920x1080 files with three different bitrates
    ...
    That's the point, I see. Didn't think of that. So you really have to wait until they give yt-dlp the ability to pick the best of a specified resolution. Or you write a python script (or something in another language) that downloads all mpds, searches for '720'-entries and constructs your batch automatically, or then simply does the download itself.

    And it's always a pleasure to meet other retired guitarists. ...
    Thanks for this nice story! I studied classical guitar in a former life. Next week I' ll meet someone more from "your side", might become an interesting exchange. You never really retire from nothing...
    Quote Quote  
  30. Originally Posted by Quint View Post
    So you really have to wait until they give yt-dlp the ability to pick the best of a specified resolution.
    thats possible already with the following argument
    Code:
    -S "height:720"
    example:
    Code:
    yt-dlp -S "height:720" --cookies-from-browser chrome -N 6 --output %%(title)s.%%(ext)s https://www.discoveryplus.com/video/show_title
    that will sort the output formats the same as before but any id with a higher resolution than 720p will be put at the bottom of the priority list. (which is at the top when using --list-formats as its sorting worst at the top to best at the bottom of the screen)
    so it "should" select the highest bitrate 720p video id.

    or you could use the filtering formats way (instead of sorting) to pick the best video with resolution 720p or lower and the best audio
    Code:
    -f "bv[height<=720],ba"

    the documentation for yt-dlp also has examples for choosing formats based on filesize but i found that to be hit or miss with anything other than youtube.

    you could try this as a command to pick the best video less than 1GB and the best audio (it worked on 7plus):
    Code:
    -f "bv[filesize_approx<1G],ba"
    you could also try limiting it by the video bitrate
    example below will pick the highest bitrate video but below 3000kbps, and the best audio
    Code:
    -f "bv[vbr<3000],ba"
    Quote Quote  



Similar Threads

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