Re: MPEG-2 file writing options

Tech-Archive recommends: Repair Windows Errors & Optimize Windows Performance



Hi Alessandro,

On Aug 17, 8:28 pm, "Alessandro Angeli" <nob...@xxxxxxxxxxxxxxxxxx>
wrote:
From: "carl.col...@xxxxxxxxx"

The problem I'm facing right now is how to get from the
MPEG-2 video transport stream that is generated by the
MPEG-2 demuxer to the files on disk.

Are you sure your demuxer is producing a TS? It's not much
of a demuxer if it does, since the job of a
demuxer/splitter/parser is to extract the elementary streams
(audio/video) from a system stream (program or transport).

Sorry about that, I meant ES, not TS...

I basically can choose between MPEG-2 files

Define MPEG-2 files: program streams (PS), transport streams
(TS) or individual elementary streams (ES)?

Either single ES files or muxed audio and video MPEG files (depending
on user settings)

or AVI
files as my output, but other options may be acceptable
as well, as long as ffmpeg can
read them for further transcoding.

Doesn't ffmpeg directly support MPEG-2 TSs?

It does support MPEG-2, but if it supports ES only that is not a
problem.

The first option (generating MPEG-2 files) requires me to
build an MPEG
stream splitter filter I presume?

Why a splitter? What graph topology are you thinking about?

Well, I capture an MPEG-2 system stream from the TV card, demux it and
want to write the audio and/or the video elementary streams to file
(chopped up in ~5 second parts). With splitter I meant to split the
stream in multiple consecutive files (so splitting in the sense of
splitting off 5 seconds worth of frames).

but I presume this
will require me to
pay license (patent) fees to the MPEG-LA consortium (for
using the MPEG-2
decoding code in ffmpeg)? The software will be licensed
to individual end
users and will run on their own systems, so I presume I
have to pay MPEG-2
license fees for each installed copy?

I think so, but you will need to ask a lawyer (and I am not
one) and talk to MPEG-LA, since it is possible there might
be a license for low distribution volumes.

Ah, I see. The decision on the financial consequences is not mine to
make (I'm doing contracting work), but I'll pass this informstion on
to the decision makers.

must use a third-party MPEG-2 decoder. I can in
principle use a pre-installed codec for this (i.e.
PowerDVD's), but I'm having trouble
connecting this particular codec's output pin to the AVI
mux. I guess the
DXVA characteristic of the stream is playing me parts
here? Using the VMR
and the OverlayMixer in GraphEdit I can get this graph to
run, but I want
the result written to file, not on screen.

I don't think DXVA has anything to do with it. Most
commercial MPEG-2 decoders meant to be used for DVD playback
will refuse to connect to anything but the stock video
renderers.

Well, I've read up on even more (and more and more and ...) Google
results in the meanwhile and also came to this conclusion ;) Thank
you for confirming this!

them as well ;) ). Anyway, the application ultimately
has to work with all
BDA-enabled TV cards, so relying on the manufacturer's
decoders might not be
a viable choice?

You should use a generic MPEG-2 decoder built into your own
application. There are several open source ones (but then
you will have to face MPEG-LA) and also several commercial
ones (e.g. Elecard/Moonlight's or Ligos' or Mainconcept's
and so on...).

That's my temporary conclusion for now as well...

A lot of assumptions and options here... :( Can anyone
inform me of the
correctness of my assumptions, or give me other viable
alternatives?

That depends on how much work you are willing to put into
this project and what exactly your final framework is
supposed to look like (that is, what the file producer and
consumer are supposed to do and how).

The software component I'm making will be part of a larger
application, so the files will be processed by the other parts of this
application. Again, I'm not the one making the decision on the budget
(although I don't mind some necessary extra work ;) ), but I think I
have enough insight now to give some informed preliminary advice.

But if anyone has some additional ideas, please feel free to share!

Thanks again for your comments,
Kind regards,
Carl Colijn

.



Relevant Pages

  • Re: MPEG-2 file writing options
    ... MPEG-2 video transport stream that is generated by the ... MPEG-2 demuxer to the files on disk. ... Are you sure your demuxer is producing a TS? ...
    (microsoft.public.win32.programmer.directx.video)
  • Re: Errors in playing a DVD?
    ... video editing program out there supports MPEG-2 these days, ... Multiple wrapper types - PS (Program Stream), ... Adobe's new version of Flash Video, for example, will support ... A problem associated with having lots of codecs from which to choose ...
    (rec.video.desktop)
  • MPEG-2 file writing options
    ... and then write the video stream in small consecutive (~5 ... The problem I'm facing right now is how to get from the MPEG-2 video ... transcode them into the final format, but I presume this will require ... must use a third-party MPEG-2 decoder. ...
    (microsoft.public.win32.programmer.directx.video)
  • Re: MPEG-2 Program stream file header?
    ... The MPEG-2 PS structure doesn't allow you to simply copy bytes from one ... instance about 15 frames at the beginning if the GOP structure is 15:3 ... Packetized elementary stream is actually elementary ... yes - the MPEG is written in one pass and there are no header ...
    (microsoft.public.win32.programmer.directx.video)
  • Re: Mac Mini Media Center?
    ... EyeTV receiver connected to it. ... It depends what sort of video you are talking about, ... the EyeTV 250 Plus outputs MPEG-2 video which is captured by the ... digital stream of data as it is broadcast (typically an MPEG-2 transport ...
    (comp.sys.mac.system)