On Thu, 9 Jun 2022 19:00:39 +0000, Carl Zwanzig <[email protected]> wrote:

>On 6/9/2022 10:25 AM, Bo Berglund wrote:
>> Is there some way to let ffmpeg write the mpeg or ts stream to disk and then
>> immediately feed it to itself as an input to create the mp4?
>
>The "keep it simple" principle applies-
>
>Unless disk space is a big issue and you need the output immediately after 
>recording, use a temp file for this and convert after the download* 
>completes (as driven by your script). It'll be much easier all around and 
>more tolerant of errors. If you choose to re-encode while downloading, you 
>can run into the problem that the re-encoder catches up to the download and 
>ends (the circular buffer problem).
>
>*if saving in the downloaded codec, there's no added conversion overhead or 
>quality loss.
>

So given my original command in the script:
CMD="ffmpeg -hide_banner ${MODE} -i \"${M3U8URL}\" -vf scale=w=-4:h=480 -c:v
libx264 -preset fast -crf 26 -c:a aac -t ${CAPTURETIME} ${TARGETFILE}"

should I replace -c:v libx264 -preset fast -crf 26 with something else or simply
remove it and rely on ffmpeg to understand how to do based on me setting the
ouptput file extension to ts?

CMD="ffmpeg -hide_banner ${MODE} -i \"${M3U8URL}\" -vf scale=w=-4:h=480 -c:v
-preset fast -crf 26 -c:a aac -t ${CAPTURETIME} testfile.ts"

Or do I have to specify an encoding library?

Notice that early on I just downloaded the video and then applied the geometry
change and recoding to mp4 as a second step but it took a long time, almost half
the playing time of the video.
So that is why it all takes place during download now.


-- 
Bo Berglund
Developer in Sweden

_______________________________________________
ffmpeg-user mailing list
[email protected]
https://ffmpeg.org/mailman/listinfo/ffmpeg-user

To unsubscribe, visit link above, or email
[email protected] with subject "unsubscribe".

Reply via email to