diff --git a/doc/developer.texi b/doc/developer.texi
index 597ce957d126cb1cc0d2add8fcd056a9142933c8..45a4f4476b6e446f808e89db5f8e99e0b8192554 100644
--- a/doc/developer.texi
+++ b/doc/developer.texi
@@ -31,14 +31,16 @@ only the public api is used.
 
 You can use Libav in your commercial program, but you must abide to the
 license, LGPL or GPL depending on the specific features used, please refer
-to @url{http://libav.org/legal.html} for a quick checklist and to
-@url{http://git.libav.org/?p=libav.git;a=blob;f=COPYING.GPLv2},
-@url{http://git.libav.org/?p=libav.git;a=blob;f=COPYING.GPLv3},
-@url{http://git.libav.org/?p=libav.git;a=blob;f=COPYING.LGPLv2.1},
-@url{http://git.libav.org/?p=libav.git;a=blob;f=COPYING.LGPLv3} for the
-exact text of the licenses.
+to @uref{http://libav.org/legal.html, our legal page} for a quick checklist and to
+the following links for the exact text of each license:
+@uref{http://git.libav.org/?p=libav.git;a=blob;f=COPYING.GPLv2, GPL version 2},
+@uref{http://git.libav.org/?p=libav.git;a=blob;f=COPYING.GPLv3, GPL version 3},
+@uref{http://git.libav.org/?p=libav.git;a=blob;f=COPYING.LGPLv2.1, LGPL version 2.1},
+@uref{http://git.libav.org/?p=libav.git;a=blob;f=COPYING.LGPLv3, LGPL version 3}.
 Any modification to the source code can be suggested for inclusion.
-The best way to proceed is to send your patches to the Libav mailing list.
+The best way to proceed is to send your patches to the
+@uref{https://lists.libav.org/mailman/listinfo/libav-devel, libav-devel}
+mailing list.
 
 @anchor{Coding Rules}
 @section Coding Rules
@@ -177,7 +179,10 @@ should also be avoided if they don't make the code easier to understand.
    When applying patches that have been discussed (at length) on the mailing
    list, reference the thread in the log message.
 @item
-    Subscribe to the libav-devel and libav-commits mailing list.
+    Subscribe to the
+    @uref{https://lists.libav.org/mailman/listinfo/libav-devel, libav-devel} and
+    @uref{https://lists.libav.org/mailman/listinfo/libav-commits, libav-commits}
+    mailing lists.
     Bugs and possible improvements or general questions regarding commits
     are discussed on libav-devel. We expect you to react if problems with
     your code are uncovered.
@@ -241,8 +246,9 @@ it does not cause unexpected problems.
 
 Patches should be posted as base64 encoded attachments (or any other
 encoding which ensures that the patch will not be trashed during
-transmission) to the libav-devel mailing list, see
-@url{https://lists.libav.org/mailman/listinfo/libav-devel}
+transmission) to the
+@uref{https://lists.libav.org/mailman/listinfo/libav-devel, libav-devel}
+mailing list.
 
 It also helps quite a bit if you tell us what the patch does (for example
 'replaces lrint by lrintf'), and why (for example '*BSD isn't C99 compliant
@@ -314,9 +320,9 @@ send a reminder by email. Your patch should eventually be dealt with.
 @item
     Is the patch against latest Libav git master branch?
 @item
-    Are you subscribed to libav-devel?
-    (@url{https://lists.libav.org/mailman/listinfo/libav-devel}
-     the list is subscribers)
+    Are you subscribed to the
+    @uref{https://lists.libav.org/mailman/listinfo/libav-devel, libav-devel}
+    mailing list? (Only list subscribers are allowed to post.)
 @item
     Have you checked that the changes are minimal, so that the same cannot be
     achieved with a smaller patch and/or simpler final code?
@@ -370,7 +376,9 @@ send a reminder by email. Your patch should eventually be dealt with.
 
 @section Patch review process
 
-All patches posted to libav-devel will be reviewed, unless they contain a
+All patches posted to the
+@uref{https://lists.libav.org/mailman/listinfo/libav-devel, libav-devel}
+mailing list will be reviewed, unless they contain a
 clear note that the patch is not for the git master branch.
 Reviews and comments will be posted as replies to the patch on the
 mailing list. The patch submitter then has to take care of every comment,
diff --git a/doc/faq.texi b/doc/faq.texi
index 3d7a275f8982748cb765bdda77cddded8ebab838..42a135c429af6b4a01776a2e732d6c46a71ce86e 100644
--- a/doc/faq.texi
+++ b/doc/faq.texi
@@ -24,8 +24,8 @@ help out creating them.
 Nowhere. We do not support old Libav versions in any way, we simply lack
 the time, motivation and manpower to do so. If you have a problem with an
 old version of Libav, upgrade to the latest git snapshot. If you
-still experience the problem, then you can report it according to the
-guidelines in @url{http://libav.org/bugreports.html}.
+still experience the problem, then you can report it according to our
+@uref{http://libav.org/bugreports.html, bug reporting guidelines}.
 
 @section Why doesn't Libav support feature [xyz]?
 
@@ -46,7 +46,8 @@ Likely reasons
 @itemize
 @item We are busy and haven't had time yet to read your report or
 investigate the issue.
-@item You didn't follow @url{http://libav.org/bugreports.html}.
+@item You did not follow our
+      @uref{http://libav.org/bugreports.html, bug reporting guidelines}.
 @item You didn't use git master.
 @item You reported a segmentation fault without gdb output.
 @item You describe a problem but not how to reproduce it.
@@ -123,8 +124,9 @@ problem and an NP-hard problem...
 
 @section ffmpeg does not work; what is wrong?
 
-Try a @code{make distclean} in the ffmpeg source directory before the build. If this does not help see
-(@url{http://libav.org/bugreports.html}).
+Try a @code{make distclean} in the ffmpeg source directory before the build.
+If this does not help see our
+@uref{http://libav.org/bugreports.html, bug reporting guidelines}.
 
 @section How do I encode single pictures into movies?
 
@@ -285,7 +287,8 @@ Just create an "input.avs" text file with this single line ...
   ffmpeg -i input.avs
 @end example
 
-For ANY other help on Avisynth, please visit @url{http://www.avisynth.org/}.
+For ANY other help on Avisynth, please visit the
+@uref{http://www.avisynth.org/, Avisynth homepage}.
 
 @section How can I join video files?
 
@@ -413,7 +416,7 @@ No. These tools are too bloated and they complicate the build.
 Libav is already organized in a highly modular manner and does not need to
 be rewritten in a formal object language. Further, many of the developers
 favor straight C; it works for them. For more arguments on this matter,
-read "Programming Religion" at (@url{http://www.tux.org/lkml/#s15}).
+read @uref{http://www.tux.org/lkml/#s15, "Programming Religion"}.
 
 @section I do not like the LGPL, can I contribute code under the GPL instead?
 
diff --git a/doc/ffmpeg.texi b/doc/ffmpeg.texi
index 5246b18640215070e6941634ee804ba4dbcbe1b1..517bb0cd380cb35e23630432b82c3d4c1aadf298 100644
--- a/doc/ffmpeg.texi
+++ b/doc/ffmpeg.texi
@@ -882,8 +882,8 @@ ffmpeg -f oss -i /dev/dsp -f video4linux2 -i /dev/video0 /tmp/out.mpg
 @end example
 
 Note that you must activate the right video source and channel before
-launching ffmpeg with any TV viewer such as xawtv
-(@url{http://linux.bytesex.org/xawtv/}) by Gerd Knorr. You also
+launching ffmpeg with any TV viewer such as
+@uref{http://linux.bytesex.org/xawtv/, xawtv} by Gerd Knorr. You also
 have to set the audio recording levels correctly with a
 standard mixer.
 
diff --git a/doc/general.texi b/doc/general.texi
index c97a7575c802e2755fbab804ca1fc150d9a18b40..ace464f024e2430189dfb9216ff8e400bcc1403a 100644
--- a/doc/general.texi
+++ b/doc/general.texi
@@ -836,7 +836,7 @@ noticeable when running make for a second time (for example in
 @code{make install}).
 
 @item In order to compile FFplay, you must have the MinGW development library
-of SDL. Get it from @url{http://www.libsdl.org}.
+of @uref{http://www.libsdl.org/, SDL}.
 Edit the @file{bin/sdl-config} script so that it points to the correct prefix
 where SDL was installed. Verify that @file{sdl-config} can be launched from
 the MSYS command line.
@@ -1008,8 +1008,7 @@ Then configure Libav with the following options:
 (you can change the cross-prefix according to the prefix chosen for the
 MinGW tools).
 
-Then you can easily test Libav with Wine
-(@url{http://www.winehq.com/}).
+Then you can easily test Libav with @uref{http://www.winehq.com/, Wine}.
 
 @subsection Compilation under Cygwin
 
@@ -1048,8 +1047,8 @@ If you want to build Libav with additional libraries, download Cygwin
 libogg-devel, libvorbis-devel
 @end example
 
-These library packages are only available from Cygwin Ports
-(@url{http://sourceware.org/cygwinports/}) :
+These library packages are only available from
+@uref{http://sourceware.org/cygwinports/, Cygwin Ports}:
 
 @example
 yasm, libSDL-devel, libdirac-devel, libfaac-devel, libgsm-devel,
diff --git a/doc/protocols.texi b/doc/protocols.texi
index 18749efbfbe85493894380160759ededbae2ea91..59906312fac850805eaf56013a4c846b5555bb11 100644
--- a/doc/protocols.texi
+++ b/doc/protocols.texi
@@ -242,7 +242,7 @@ data transferred over RDT).
 
 The muxer can be used to send a stream using RTSP ANNOUNCE to a server
 supporting it (currently Darwin Streaming Server and Mischa Spiegelmock's
-RTSP server, @url{http://github.com/revmischa/rtsp-server}).
+@uref{http://github.com/revmischa/rtsp-server, RTSP server}).
 
 The required syntax for a RTSP url is:
 @example