Replies: 4 comments 5 replies
-
For the first problem you could try the For the second problem, what rate is the file growing at? The bmxtranswrap growing file support was designed to support a file growing at a particular media rate (default realtime, i.e. the file's edit rate). It retries reads that fail, but if the data is arriving too slowly it will hit the retry count limit and error. E.g. if the growing file is a file transfer that is slower than realtime then bmxtranswrap will likely fail with the default settings. I haven't tried it but I assume |
Beta Was this translation helpful? Give feedback.
-
Yes, "normally" the file is written in realtime, but it's not gauranteed, so for stability reasons I'm trying to figure out, what happens, when the files grows slowly. If I set the realtime rate lower (eg. --rt 0.5), it works with my simulation (pv -L 5000000), but as soon as bmx is faster than the stream is written, the command fails (ERROR: 'num_read == len' check failed). I tried I'm wondering why I don't notice a delay of 20 seconds (--gf-delay 20) which should occur 3 times (--gf-retries 3)? |
Beta Was this translation helpful? Give feedback.
-
For the applications I had in mind I didn't expect the delay to be that much - see the rt_sleep function that ignores values above 10 seconds. Try |
Beta Was this translation helpful? Give feedback.
-
I've opened #90 with changes following #87 (reply in thread). |
Beta Was this translation helpful? Give feedback.
-
Hi!
We are trying to encode growing mxf files (recorded by our broadcast system) and written to some storage) to some streaming formats (mp4). The idea is to use bmxlib as a buffer (option --gf) and pipe the stream to ffmpeg. Basicly the following commandline works:
mkfifo my-pipe & (bmxtranswrap -t op1a --gf -o my-pipe growing-input.mxf | ffmpeg -y -i my-pipe -f mp4 out.mp4)
With this approach, 2 problems show up:
ERROR (libMXF): 'mxf_file_seek(_cFile, position, whence)' failed, at libMXF++/libMXF++/File.cpp:558
ERROR: MXF exception caught: 'mxf_file_seek(_cFile, position, whence)' failed, at libMXF++/libMXF++/File.cpp:558
pv -L 1000000 complete-input.mxf > growing-input.mxf
), bmxtranswrap complainsWarning: Failed to read all partitions. File may be incomplete or invalid
Warning: Input file is incomplete
ERROR: 'num_read == len' check failed
ERROR: near bmx/src/mxf_reader/EssenceReader.cpp:641
Info: Duration: 62 (00:00:02:12 @25hz)
Warning: Read fewer samples (62) than expected (200)
So it seems that is it doesn't support growing files.
Any ideas? Any other approaches to find a solution?
Beta Was this translation helpful? Give feedback.
All reactions