Opened 3 years ago

#4368 new enhancement

[feature-request] Managing unicode in url

Reported by: pbonnet Owned by:
Priority: normal Component: undetermined
Version: git-master Keywords: network url unicode resolv
Cc: Blocked By:
Blocking: Reproduced by developer: no
Analyzed by developer: no

Description

Encountered a problem relative to resolving domain containing accents:

How to reproduce:
{{{$ ffmpeg -v 9 -loglevel 99 -i http://blog.méric.fr/jmlp/jmlp-swing.webm
ffmpeg version 2.6 Copyright (c) 2000-2015 the FFmpeg developers

built with gcc 4.9.2 (GCC) 20150304 (prerelease)
configuration: --prefix=/usr --disable-debug --disable-static --disable-stripping --enable-avisynth --enable-avresample --enable-fontconfig --enable-gnutls --enable-gpl --enable-libass --enable-libbluray --enable-libfreetype --enable-libfribidi --enable-libgsm --enable-libmodplug --enable-libmp3lame --enable-libopencore_amrnb --enable-libopencore_amrwb --enable-libopenjpeg --enable-libopus --enable-libpulse --enable-librtmp --enable-libschroedinger --enable-libspeex --enable-libtheora --enable-libv4l2 --enable-libvorbis --enable-libvpx --enable-libx264 --enable-libx265 --enable-libxvid --enable-runtime-cpudetect --enable-shared --enable-swresample --enable-vdpau --enable-version3 --enable-x11grab
libavutil 54. 20.100 / 54. 20.100
libavcodec 56. 26.100 / 56. 26.100
libavformat 56. 25.101 / 56. 25.101
libavdevice 56. 4.100 / 56. 4.100
libavfilter 5. 11.102 / 5. 11.102
libavresample 2. 1. 0 / 2. 1. 0
libswscale 3. 1.101 / 3. 1.101
libswresample 1. 1.100 / 1. 1.100
libpostproc 53. 3.100 / 53. 3.100

Splitting the commandline.
Reading option '-v' ... matched as option 'v' (set logging level) with argument '9'.
Reading option '-loglevel' ... matched as option 'loglevel' (set logging level) with argument '99'.
Reading option '-i' ... matched as input file with argument 'http://blog.méric.fr/jmlp/jmlp-swing.webm'.
Finished splitting the commandline.
Parsing a group of options: global .
Applying option v (set logging level) with argument 9.
Successfully parsed a group of options.
Parsing a group of options: input file http://blog.méric.fr/jmlp/jmlp-swing.webm.
Successfully parsed a group of options.
Opening an input file: http://blog.méric.fr/jmlp/jmlp-swing.webm.
[tcp @ 0x7fc23e3b3240] Failed to resolve hostname blog.méric.fr: Name or service not known
http://blog.méric.fr/jmlp/jmlp-swing.webm: Input/output error
}}}

I've asked around and have been told that it worked by converting the url manually into punycode, and it effectively works.
However, doing this could be replaced by adding a feature converting the unicode url into punycode, right into the networking part of ffmpeg (which I think would be useful).
So, would it worth to do that ?

post scriptum:
Maybe can the issue be due to another lib used by ffmpeg for networking.

Change History (0)

Note: See TracTickets for help on using tickets.