3

I am new to ffmpeg, just trying to build an SDP file for streaming. I'm facing an error when I run the command

ffmpeg -re -i "sample.mp4" -f rtp rtp://127.0.0.1:10000 -flags +global_header -c:a libvo_aacenc -vn -map 0:1 -f rtp rtp://127.0.0.1:10002 > 10000.sdp

The error is:

Unknown encoder 'libvo_aacenc'

How do I resolve this?

slhck
  • 223,558
  • 70
  • 607
  • 592
mathlearner
  • 139
  • 1
  • 1
  • 3
  • You need to include the complete ffmpeg console output that shows up after you enter your ffmpeg command. – llogan Jun 03 '13 at 20:13

2 Answers2

10

Your ffmpeg was probably not configured with --enable-libvo-aacenc. However there are other, higher quality AAC encoders that can be used with ffmpeg. ffmpeg -codecs will list all encoders that have been configured for each supported codec; look for the "aac" line and the encoders listed on that line. If you don't have any other AAC encoder you can always use the experimental AAC encoder that is built-in to ffmpeg (-strict experimental -c:a aac), or build your own ffmpeg with your favorite AAC encoder. For guidance on selecting an AAC encoder, see the ffmpeg AAC Encoding Guide.

Update: As of FFmpeg 3.0 (Feb 2016), libvo-aac has been removed from FFmpeg because the built-in AAC encoder has superior quality and is no longer experimental. It is suggested to use the built-in encoder (-c:a aac) or libfdk-aac (-c:a libfdk_aac) instead.

mark4o
  • 5,382
  • 1
  • 35
  • 30
0

This solves it for me:

sudo apt-get install libavcodec-extra
user329023
  • 111
  • 4