[FFmpeg-user] Impossile to convert pure audio files to LPCM (S16BE)

Moritz Barsnick barsnick at gmx.net
Fri Jan 17 01:28:24 CET 2014


On Thu, Jan 16, 2014 at 22:29:26 +0100, pperroux at free.fr wrote:
> I need to convert audio FLAC files to LPCM with FFmpeg but the result is an invalid file
> I cannot use another encoder (flac for example) because my DLNA media server (Serviio) has an internal use of FFmpeg 
> My player is a DLNA renderer. According to DLNA specification, LPCM "denotes uncompressed audio data, using 16-bit signed representation in two’s-complement notation and network byte order". My understanding of "network byte order" is "Big-Endian" (ie: LPCM_S16BE)
> 
> $ ffmpeg -i InputFile.flac -y -threads 4 -ar 44100 -ac 2 -f s16be OutputFile.flv

Could it be that your players are confused by the file name suffix
".flv"? Because you're creating s16be, not FLV.

I believe to mux s16be into an FLV container - assuming that's what
you're trying to do - , you need to do this:
$ ffmpeg -i InputFile.flac -y -threads 4 -ar 44100 -ac 2 -c:a pcm_s16be OutputFile.flv

ffprobe correctly identifies it, but I haven't tried playing (or
streaming via DLNA):
Input #0, flv, from 'OutputFile.flv':
  Metadata:
    encoder         : Lavf55.22.102
  Duration: 00:08:32.38, start: 0.000000, bitrate: 1412 kb/s
    Stream #0:0: Audio: pcm_s16le, 44100 Hz, stereo, s16, 1411 kb/s

Just guessing,
Moritz


More information about the ffmpeg-user mailing list