On 30-09-2024 07:55, Bo Berglund wrote:
On Mon, 30 Sep 2024 09:49:34 +0530, Gyan Doshi <ffm...@gyani.pro> wrote:


On 2024-09-30 01:29 am, Bo Berglund wrote:
I have created a script that downloads Internet video streams (basically news
programs) and transcodes to mp4 format with a fixed windows size.
As soon as the video stream recording ends the mp4 file can be played.

I wonder if there is a way to let ffmpeg do two things at the same time:
- download as now but save the stream to a TS formatted file and:
- transcode to the mp4 format into a different output file

This would make it possible to start viewing the downloaded file in TS format
while the real output file remains unplayable until the download finishes and
the moov atom gets written.
Three months ago, ffmpeg's mov/mp4 muxer added a movflags called
`hybrid_fragmented`

 From the doc description,

"
For recoverability - write the output file as a fragmented file. This
allows the intermediate file to be read while being written (in
particular, if the writing process is aborted uncleanly). When writing
is finished, the file is converted to a regular, non-fragmented file,
which is more compatible and allows easier and quicker seeking.

If writing is aborted, the intermediate file can manually be remuxed to
get a regular, non-fragmented file of what had been written into the
unfinished file.
"
Sounds like what I have been looking for all along!
Could you provide the ffmpeg version where this is available?

Unfortunately, this is what I get when checking versions on my main Ubuntu
20.04.6 LTS server box where the downloads happen:

$ apt policy ffmpeg
ffmpeg:
   Installed: 7:4.3.2-0york0~18.04
   Candidate: 7:4.3.2-0york0~18.04

I guess version 7:4.3.2 is not good enough, so how can I upgrade on my Ubuntu
20.04.6 LTS box?

On another Linux laptop running Ubuntu 22.04.5 LTS I get this:

$ apt policy ffmpeg
ffmpeg:
   Installed: 7:4.4.2-0ubuntu0.22.04.1+esm5
   Candidate: 7:4.4.2-0ubuntu0.22.04.1+esm5

And on a Linux-Mint desktop I have an even older vcersion:

$ apt policy ffmpeg
ffmpeg:
   Installed: 7:4.2.7-0ubuntu0.1
   Candidate: 7:4.2.7-0ubuntu0.1

Lastly on a Raspberry-Pi5 box I have:

$ apt policy ffmpeg
ffmpeg:
   Installed: 8:5.1.5-0+rpt1+deb12u1
   Candidate: 8:5.1.6-0+deb12u1+rpt1

Here I see the main version stepped up to 8!
Does this version contain the wanted feature?

However, download on this box is a bit iffy in general, probably because of the
RPi5 being a less capable device...

The other  servers are on Lenovo or HP hardware...

Basic install question on Linux:

If one wants to get to the latest version of ffmpeg and it is not provided by
the Linux distribution used, how can one upgrade to it?


Either build it from git/snapshot with the options you need/use or download and install the provided static builds from the master tree. Both are available via the Download page on ffmpeg.org It looks like the static build has not been updated for a couple of months, so the best option is to compile ffmpeg yourself. There is a guide available for compilation of ffmpeg on Ubuntu on the ffmpeg wiki: https://trac.ffmpeg.org/wiki/CompilationGuide/Ubuntu

It's not hard to build it, but it takes some time depending on the speed of your system.
_______________________________________________
ffmpeg-user mailing list
ffmpeg-user@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-user

To unsubscribe, visit link above, or email
ffmpeg-user-requ...@ffmpeg.org with subject "unsubscribe".

Reply via email to