[PATCH] Output AAC as M4A for iTunes with metadata tags (Shevek)
Shevek
shevek at shevek.co.uk
Thu Mar 31 15:22:26 EDT 2011
On 31 March 2011 20:06, dinkypumpkin <dinkypumpkin at gmail.com> wrote:
>
> On 31 Mar 2011, at 19:55, Shevek wrote:
>
>> On 31 March 2011 16:21, dinkypumpkin <dinkypumpkin at gmail.com> wrote:
>>>
>>> ffmpeg -i test.flv -vn -acodec copy -f adts - | ffmpeg -i - -vn -acodec copy -absf aac_adtstoasc -y test.m4a
>>>
>>
>> This works great, however with get_iplayer on windows it is possible
>> to have spaces in the file path and so only works if the flv and m4a
>> paths are in quotes.
>>
>> How will this affect linux versions?
>
> Paths should always be quoted for that reason. It will work with Linux/OSX.
>
very confused now...
I have changed the ffmpeg command so it is output like this:
..\ffmpeg\ffmpeg.exe -i "D:\Users\Shevek\Desktop\iPlayer
Recordings/iPM_-_26_03_2011_b00zm4mq_default.partial.m4a.flv" -vn
-acodec copy -f adts - | ..\ffmpeg\ffmpeg.exe -i - -vn -acodec copy
-absf aac_adtstoasc -y "D:\Users\Shevek\Desktop\iPlayer
Recordings/iPM_-_26_03_2011_b00zm4mq_default.partial.m4a"
When run in get_iplayer, ffmpeg returns an error: Unable to find a
suitable output format for '|'
however, if I run it from a windows cmd from the get_iplayer dir it runs fine.
What am I doing wrong?
This is the bit of get_iplayer I have changed:
# Convert flv to aac/mp4a
} elsif ( $mode =~ /flashaac/ ) {
# This works as long as we specify aac and not mp4a
@cmd = (
$bin->{ffmpeg},
'-i', '"' . $file_tmp . '"',
'-vn',
'-acodec', 'copy',
'-f', 'adts',
'-',
'|',
$bin->{ffmpeg},
'-i', '-',
'-vn',
'-acodec', 'copy',
'-absf', 'aac_adtstoasc',
'-y', '"' . $prog->{filepart} . '"',
);
More information about the get_iplayer
mailing list