Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Eastern & Aspect issues (differences between 2015.11.27.1 and 2014.05.19) #7781

Closed
charlieb000 opened this issue Dec 7, 2015 · 6 comments
Closed

Comments

@charlieb000
Copy link

@charlieb000 charlieb000 commented Dec 7, 2015

There are TWO differences - bugs - between these two versions of youtubeDL.
The proceedure is the same for both issues, refer to VERBOSE output for the commandline input. Used --no-check-certificate only due to newest version, added to both for completeness. Version 2015.10.18 has the same issue as the latest one.

From what i can see, both issues are linked - it for some reason wants to convert the aspect ratio, and it cannot send eastern characters in the command line so it makes a friendly name.

Issue A. Eastern Characters (chinese) are not rendered correctly. (you need the fonts installed to view)
issue B. Aspect ratio of selected video format stuffed up (i am using media player classic).

old version creates file name called: "張雨生&姚可傑&邰正宵&張啟娜 - 烈火青春-ESUBitVqhOA.mp4"
new version creates file name called: "&&& - -ESUBitVqhOA.mp4"

old version aspect ratio and resolution: 540x360
new version aspect ratio and resolution: 540x360 but forced to be 16:9

old version VERBOSE output:

[debug] System config: []
[debug] User config: []
[debug] Command-line args: ['-i', '--write-sub', '-f', '18/5', '--embed-subs', '
https://www.youtube.com/watch?v=ESUBitVqhOA', '--verbose', '--no-check-certifica
te']
[debug] Encodings: locale cp1252, fs mbcs, out cp850, pref cp1252
[debug] youtube-dl version 2014.05.19
[debug] Python version 2.7.5 - Windows-XP-5.1.2600-SP3
[debug] Proxy map: {}
[youtube] Setting language
[youtube] ESUBitVqhOA: Downloading webpage
[youtube] ESUBitVqhOA: Downloading video info webpage
[youtube] ESUBitVqhOA: Extracting video information
WARNING: video doesn't have subtitles
[download] Destination: ???&???&???&??? - ????-ESUBitVqhOA.mp4
[download] 100% of 12.97MiB in 00:31
[ffmpeg] There aren't any subtitles to embed

new version VERBOSE output:

[debug] System config: []
[debug] User config: []
[debug] Command-line args: [u'-i', u'--write-sub', u'-f', u'18/5', u'--embed-sub
s', u'https://www.youtube.com/watch?v=ESUBitVqhOA', u'--verbose', u'--no-check-c
ertificate']
[debug] Encodings: locale cp1252, fs mbcs, out cp850, pref cp1252
[debug] youtube-dl version 2015.11.27.1
[debug] Python version 2.7.10 - Windows-XP-5.1.2600-SP3
[debug] exe versions: ffmpeg N-64167-gca35037
[debug] Proxy map: {}
[youtube] ESUBitVqhOA: Downloading webpage
[youtube] ESUBitVqhOA: Downloading video info webpage
[youtube] ESUBitVqhOA: Extracting video information
WARNING: video doesn't have subtitles
[youtube] ESUBitVqhOA: Downloading DASH manifest
[youtube] ESUBitVqhOA: Downloading DASH manifest
[debug] Invoking downloader on u'https://r8---sn-uxanug5-coxz.googlevideo.com/vi
deoplayback?initcwndbps=1127500&id=o-AJRqOJ-SlHU9zY0KehI0I-cZS5Sj22OZkn68n993BTs
C&sparams=dur%2Cid%2Cinitcwndbps%2Cip%2Cipbits%2Citag%2Clmt%2Cmime%2Cmm%2Cmn%2Cm
s%2Cmv%2Cpcm2cms%2Cpl%2Cratebypass%2Crequiressl%2Csource%2Cupn%2Cexpire&ip=101.1
77.29.106&pcm2cms=yes&requiressl=yes&pl=18&expire=1449493489&sver=3&ratebypass=y
es&lmt=1429764988458446&signature=B582B6808F52EDD2C108327457CD87FBD3D9F409.20B6B
7C527B4AE0432D3B70400D80BA6A527F642&ipbits=0&mime=video%2Fmp4&itag=18&key=yt6&fe
xp=9408710%2C9416126%2C9417683%2C9420452%2C9421410%2C9422596%2C9422618%2C9423459
%2C9423662&ms=au&mt=1449471820&mv=m&dur=260.736&upn=8d_UsvoBT84&source=youtube&m
m=31&mn=sn-uxanug5-coxz'
[download] Destination: &&& - -ESUBitVqhOA.mp4
[download] 100% of 12.97MiB in 00:31
[ffmpeg] Fixing aspect ratio in "&&& - -ESUBitVqhOA.mp4"
[debug] ffmpeg command line: ffmpeg -y -i 'file:&&& - -ESUBitVqhOA.mp4' -c copy
-aspect 1.777778 'file:&&& - -ESUBitVqhOA.temp.mp4'
[ffmpeg] There aren't any subtitles to embed

@dstftw
Copy link
Collaborator

@dstftw dstftw commented Dec 7, 2015

Issue A:
Duplicate of #5045.
This is intentional. See #4787 for the rationale and #5527 for alternative solution discussions.

Issue B:
This is expected. Use --fixup never if you don't want youtube-dl to fix broken media.

@dstftw dstftw closed this Dec 7, 2015
@charlieb000
Copy link
Author

@charlieb000 charlieb000 commented Dec 7, 2015

on topic #5045 it was written:
Do I understand this correctly..... in order to be able to pass the filenames to ffmpeg/ffprobe for post processing, the filenames are stripped of these characters when saved?
and then you, @dstftw wrote: exactly, or replaced with 'counterparts' according to preferredencoding.

So, why doesnt "--fixup never" work to restore the character output???

@dstftw
Copy link
Collaborator

@dstftw dstftw commented Dec 7, 2015

Because these two issues are unrelated. --fixup never has nothing to do with characters it just won't try changing aspect ratio or applying any kind of another known fixes.
Note that 16:9 ratio is used by YouTube itself to display this video that's why youtube-dl impose this ratio by default.

@charlieb000
Copy link
Author

@charlieb000 charlieb000 commented Jan 8, 2016

I was led to believe that the reason why it dumps the characters was because it needs to call ff via the commandline and characters are not able to be passed on. So that was why "fixup-never" should work (IMHO). secondly, why does it not restore the characters in the filename after you have FF modify the file under this "temporary" file name you have given it?

also, you just said that 16:9 is used by youtube to display video.
While it is true that the area reserved for video in youtube is 16:9, but 4:3 video is still displayed properly. in your program it forces a 4:3 to be 16:9 (forces the player to stretch the video - not as it looks on youtube). But in the youtube page there is black bars on the left and right. Here is a example video for you to practice on. https://www.youtube.com/watch?v=7LlM182hD9w (and by the way, please /don't/ add the black bars into the video!!).
i use -f 18/5, and in the old version i am still using (because the new one is so annoying), i get videos with 640x360 resolution if it is wide screen and 480x360 if it is not.

@dstftw
Copy link
Collaborator

@dstftw dstftw commented Jan 8, 2016

it needs to call ff via the commandline and characters are not able to be passed on

youtube-dl uses ffmpeg not only for fixup but for lots of other things.

why does it not restore the characters in the filename after you have FF modify the file under this "temporary" file name you have given it?

Because no one have implemented this.

Files produced by youtube-dl for ESUBitVqhOA with default fixup strategy visually look exactly same as one played in browser (same aspect ratio) regardless on the selected format. Both, YouTube displayed and produced file, have messed up aspect ratio since YouTube suggest and imposes invalid stretch ratio and youtube-dl mimic YouTube's behavior. However in most cases (other videos) stretch suggested by YouTube is correct and should be respected by youtube-dl. This is the rationale why fixup has been introduced.
As for 7LlM182hD9w, no postprocessing takes place at all since no stretch is suggested by YouTube, so downloaded video remains intact.
I've already pointed out how you can achieve the old-no-fixup behavior, so what's your problem?

@charlieb000
Copy link
Author

@charlieb000 charlieb000 commented Jan 16, 2016

i guess if i can get the old behavior with the no fixup thing then its not a problem. i had no issues with the old behavour so i didnt see why i needed this.

I guess i will have to find another video that YTDL messes up the stretch on so that you can see if there is a problem and if there is a solution (i deleted the one i had, and i download lots). thanks for your time.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Linked pull requests

Successfully merging a pull request may close this issue.

None yet
2 participants
You can’t perform that action at this time.