On 04/12/2019 21:33, I wrote:
There used to be an option for some of the HLS modes to replace the 128kbit/s audio with 320kbit/s audio.  There is no longer any 320kbit/s audio for tv, so the option is being withdrawn.

I would imagine that a similar technique could be used to replace the 96kbit/s audio in dvfxsd with 128kbit/s audio from one of the 50fps modes such as dvfhd.  As well as the higher bit rate, that would get rid of the HE-AAC SBR extension.

I have quickly skimmed the v3.23 code.  sub get_stream_data at line 6269 which formats calls to sub get_stream_data_cdn at line 6155 appears to be relevant.  I have not managed to find where it decides to download video and audio separately for DASH.

Has anyone else looked at it?

What I wanted to do was to replace the 96kbit/s HE-AAC audio of the DASH dvfxsd mode with 128kbit/s AAC-LC audio. I did not manage to find where in the code get_iplayer selected the stream to be downloaded.

Instead I used ffmpeg to select the streams I wanted after I had downloaded them. This is what I did.

get_iplayer --pid m000bq36 --tvmode dvfhd --audio-only

get_iplayer --pid m000bq36 --tvmode dvfxsd --force

ffmpeg -i Murder_Mystery_and_My_Family_Series_3__04.\
_Episode_4_m000bq36_original.mp4 \
-i Murder_Mystery_and_My_Family_Series_3_-\
_04._Episode_4_m000bq36_original.m4a \
-map 0:v:0 -map 1:a:0 -c copy \
Murder_Mystery_and_My_Family_Series_3__\
04._Episode_4_m000bq36_originalx.mp4

Note that I have added x to the output file name to make it different from the input file names. If either of the input files is overwritten the resultant file will not play.

To make the last command a bit clearer I can write it as

ffmpeg -i infilev.mp4 -i infilea.m4a -map 0:v:0 -map 1:a:0 -c copy \
outfile

I did experiment with --raw and --overwrite to avoid superfluous invocations of ffmpeg. I got some unexpected results. In one case I got a .mp4 file instead of .m4a and in another the .m4a file was deleted. I decided it was safer to let get_iplayer do the post-processing it normally does.






_______________________________________________
get_iplayer mailing list
get_iplayer@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/get_iplayer

Reply via email to