ytdl-org / youtube-dl

Command-line program to download videos from YouTube.com and other video sites
http://ytdl-org.github.io/youtube-dl/
The Unlicense
132.73k stars 10.07k forks source link

Converstion from audio to m4a fails:"Alternatively use the non experimental encoder 'libvo_aacenc'." #9313

Closed scarline closed 8 years ago

scarline commented 8 years ago

I want to download a video with embedded thumbnail and convert it to mp4:

youtube-dl -t --audio-quality 0 --audio-format m4a --embed-thumbnail --add-metadata -x --metadata-from-title '%(artist)s - %(title)s' --ignore-errors https://www.youtube.com/watch?v=FyASdjZE0R0

The conversattion to mp3 works propberly, but to m4a it fails:

Shell: [youtube] FyASdjZE0R0: Writing thumbnail to: The Chainsmokers - Roses (Audio) ft. ROZES-FyASdjZE0R0.jpg [download] The Chainsmokers - Roses (Audio) ft. ROZES-FyASdjZE0R0.webm has already been downloaded [download] 100% of 3.66MiB [fromtitle] parsed artist: The Chainsmokers [fromtitle] parsed title: Roses (Audio) ft. ROZES [ffmpeg] Adding metadata to 'The Chainsmokers - Roses (Audio) ft. ROZES-FyASdjZE0R0.webm' [ffmpeg] Destination: The Chainsmokers - Roses (Audio) ft. ROZES-FyASdjZE0R0.m4a ERROR: audio conversion failed: [aac @ 0x20a0a80] Alternatively use the non experimental encoder 'libvo_aacenc'. ERROR: Only mp3 and m4a/mp4 are supported for thumbnail embedding for now.

LOG:

[debug] System config: []
[debug] User config: []
[debug] Command-line args: [u'-t', u'--audio-quality', u'0', u'--audio-format', u'm4a', u'--embed-thumbnail', u'--add-metadata', u'-x', u'--metadata-from-title', u'%(artist)s - %(title)s', u'--ignore-errors', u'https://www.youtube.com/watch?v=FyASdjZE0R0', u'-v']
[debug] Encodings: locale UTF-8, fs UTF-8, out UTF-8, pref UTF-8
[debug] youtube-dl version 2016.04.24
[debug] Python version 2.7.10 - Linux-4.2.0-35-generic-x86_64-with-Ubuntu-15.10-wily
[debug] exe versions: avconv 2.7.6-0ubuntu0.15.10.1, avprobe 2.7.6-0ubuntu0.15.10.1, ffmpeg 2.7.6-0ubuntu0.15.10.1, ffprobe 2.7.6-0ubuntu0.15.10.1, rtmpdump 2.4
[debug] Proxy map: {}
[youtube] FyASdjZE0R0: Downloading webpage
|DNS-request| www.youtube.com 
|S-chain|-<>-127.0.0.1:9050-<><>-4.2.2.2:53-<><>-OK
|DNS-response| www.youtube.com is 172.217.5.14
|S-chain|-<>-127.0.0.1:9050-<><>-172.217.5.14:443-<><>-OK
[youtube] FyASdjZE0R0: Downloading video info webpage
|DNS-request| www.youtube.com 
|S-chain|-<>-127.0.0.1:9050-<><>-4.2.2.2:53-<><>-OK
|DNS-response| www.youtube.com is 216.58.219.206
|S-chain|-<>-127.0.0.1:9050-<><>-216.58.219.206:443-<><>-OK
[youtube] FyASdjZE0R0: Extracting video information
[youtube] {22} signature length 40.43, html5 player en_US-vflQ6YtHH
[youtube] {43} signature length 40.43, html5 player en_US-vflQ6YtHH
[youtube] {18} signature length 40.43, html5 player en_US-vflQ6YtHH
[youtube] {5} signature length 40.43, html5 player en_US-vflQ6YtHH
[youtube] {36} signature length 40.43, html5 player en_US-vflQ6YtHH
[youtube] {17} signature length 40.43, html5 player en_US-vflQ6YtHH
[youtube] {137} signature length 40.43, html5 player en_US-vflQ6YtHH
[youtube] {248} signature length 40.43, html5 player en_US-vflQ6YtHH
[youtube] {136} signature length 40.43, html5 player en_US-vflQ6YtHH
[youtube] {247} signature length 40.43, html5 player en_US-vflQ6YtHH
[youtube] {135} signature length 40.43, html5 player en_US-vflQ6YtHH
[youtube] {244} signature length 40.43, html5 player en_US-vflQ6YtHH
[youtube] {134} signature length 40.43, html5 player en_US-vflQ6YtHH
[youtube] {243} signature length 40.43, html5 player en_US-vflQ6YtHH
[youtube] {133} signature length 40.43, html5 player en_US-vflQ6YtHH
[youtube] {242} signature length 40.43, html5 player en_US-vflQ6YtHH
[youtube] {160} signature length 40.43, html5 player en_US-vflQ6YtHH
[youtube] {278} signature length 40.43, html5 player en_US-vflQ6YtHH
[youtube] {140} signature length 40.43, html5 player en_US-vflQ6YtHH
[youtube] {171} signature length 40.43, html5 player en_US-vflQ6YtHH
[youtube] {249} signature length 40.43, html5 player en_US-vflQ6YtHH
[youtube] {250} signature length 40.43, html5 player en_US-vflQ6YtHH
[youtube] {251} signature length 40.43, html5 player en_US-vflQ6YtHH
[youtube] FyASdjZE0R0: Downloading thumbnail ...
|DNS-request| i.ytimg.com 
|S-chain|-<>-127.0.0.1:9050-<><>-4.2.2.2:53-<><>-OK
|DNS-response| i.ytimg.com is 173.194.204.138
|S-chain|-<>-127.0.0.1:9050-<><>-173.194.204.138:443-<><>-OK
[youtube] FyASdjZE0R0: Writing thumbnail to: The Chainsmokers - Roses (Audio) ft. ROZES-FyASdjZE0R0.jpg
[debug] Invoking downloader on u'https://r4---sn-a8au-cvne.googlevideo.com/videoplayback?sver=3&key=yt6&keepalive=yes&initcwndbps=4045000&expire=1461630457&upn=dmPWXWJC-uE&source=youtube&gcr=us&fexp=9405963%2C9410706%2C9416126%2C9416891%2C9422596%2C9425362%2C9426926%2C9427323%2C9428398%2C9429743%2C9431012%2C9431450%2C9431849%2C9432683%2C9433096%2C9433265%2C9433653%2C9433847%2C9433947%2C9433969%2C9434013%2C9434086%2C9434290&mv=m&lmt=1449578283013209&ipbits=0&gir=yes&pcm2cms=yes&pl=21&itag=171&mt=1461608767&ms=au&requiressl=yes&mime=audio%2Fwebm&dur=228.094&id=o-AJrldtlvmebmVfSOdNztv5CQf9PNbvn2zifXUxPHBmlk&mn=sn-a8au-cvne&mm=31&ip=204.8.156.142&sparams=clen%2Cdur%2Cgcr%2Cgir%2Cid%2Cinitcwndbps%2Cip%2Cipbits%2Citag%2Ckeepalive%2Clmt%2Cmime%2Cmm%2Cmn%2Cms%2Cmv%2Cpcm2cms%2Cpl%2Crequiressl%2Csource%2Cupn%2Cexpire&clen=3837639&signature=4F339BE0B8FC334F975B4D14C5CC7001F4E16290.066F2B862DA1FF07D0AF85E44800FE450CCB37C3&ratebypass=yes'
[download] The Chainsmokers - Roses (Audio) ft. ROZES-FyASdjZE0R0.webm has already been downloaded
[download] 100% of 3.66MiB
[fromtitle] parsed artist: The Chainsmokers
[fromtitle] parsed title: Roses (Audio) ft. ROZES
[ffmpeg] Adding metadata to 'The Chainsmokers - Roses (Audio) ft. ROZES-FyASdjZE0R0.webm'
[debug] ffmpeg command line: avconv -y -i 'file:The Chainsmokers - Roses (Audio) ft. ROZES-FyASdjZE0R0.webm' -c copy -metadata 'comment=New Single ROSES Out Now:
Apple Music: http://smarturl.it/RosesiTunes
Amazon: http://smarturl.it/Roses_AMZ

Follow The Chainsmokers:
Facebook: https://www.facebook.com/thechainsmokers
Twitter: https://twitter.com/thechainsmokers
Instagram: https://instagram.com/thechainsmokers
Spotify: https://open.spotify.com/artist/69GGBxA162lTqCwzJG5jLp

Music video by The Chainsmokers performing Roses. (C) 2015 Disruptor Records/Sony Music Entertainment' -metadata 'description=New Single ROSES Out Now:
Apple Music: http://smarturl.it/RosesiTunes
Amazon: http://smarturl.it/Roses_AMZ

Follow The Chainsmokers:
Facebook: https://www.facebook.com/thechainsmokers
Twitter: https://twitter.com/thechainsmokers
Instagram: https://instagram.com/thechainsmokers
Spotify: https://open.spotify.com/artist/69GGBxA162lTqCwzJG5jLp

Music video by The Chainsmokers performing Roses. (C) 2015 Disruptor Records/Sony Music Entertainment' -metadata 'artist=The Chainsmokers' -metadata 'title=Roses (Audio) ft. ROZES' -metadata date=20150616 -metadata 'purl=https://www.youtube.com/watch?v=FyASdjZE0R0' 'file:The Chainsmokers - Roses (Audio) ft. ROZES-FyASdjZE0R0.temp.webm'
[debug] avconv command line: avprobe -show_streams 'file:The Chainsmokers - Roses (Audio) ft. ROZES-FyASdjZE0R0.webm'
[ffmpeg] Destination: The Chainsmokers - Roses (Audio) ft. ROZES-FyASdjZE0R0.m4a
[debug] ffmpeg command line: avconv -y -i 'file:The Chainsmokers - Roses (Audio) ft. ROZES-FyASdjZE0R0.webm' -vn -acodec aac -q:a 0 -bsf:a aac_adtstoasc 'file:The Chainsmokers - Roses (Audio) ft. ROZES-FyASdjZE0R0.m4a'
ERROR: audio conversion failed: [aac @ 0x11d4c80] Alternatively use the non experimental encoder 'libvo_aacenc'.
Traceback (most recent call last):
  File "/usr/local/lib/python2.7/dist-packages/youtube_dl/YoutubeDL.py", line 1778, in post_process
    files_to_delete, info = pp.run(info)
  File "/usr/local/lib/python2.7/dist-packages/youtube_dl/postprocessor/ffmpeg.py", line 294, in run
    'audio conversion failed: ' + e.msg)
PostProcessingError

ERROR: Only mp3 and m4a/mp4 are supported for thumbnail embedding for now.
Traceback (most recent call last):
  File "/usr/local/lib/python2.7/dist-packages/youtube_dl/YoutubeDL.py", line 1778, in post_process
    files_to_delete, info = pp.run(info)
  File "/usr/local/lib/python2.7/dist-packages/youtube_dl/postprocessor/embedthumbnail.py", line 90, in run
    raise EmbedThumbnailPPError('Only mp3 and m4a/mp4 are supported for thumbnail embedding for now.')
EmbedThumbnailPPError

dstftw commented 8 years ago

Update ffmpeg.

scarline commented 8 years ago

Did it with the original compilation guide: https://trac.ffmpeg.org/wiki/CompilationGuide

Problem persists:

ERROR: audio conversion failed: [aac @ 0x1d591c0] Alternatively use the non experimental encoder 'libvo_aacenc'. ERROR: Only mp3 and m4a/mp4 are supported for thumbnail embedding for now.

I tried to convert the webm via ffmpeg to m4a directly, this works. So this problem seems to be linked with youtube-dl.

yan12125 commented 8 years ago

Currently youtube-dl favors avconv over ffmpeg. Add --prefer-ffmpeg to use ffmpeg.