[mythtv-users] best USB video capture (composite & audio)

Eric Pheatt eric.pheatt at gmail.com
Fri Mar 14 00:37:32 UTC 2008


>  On Mar 13, 2008, at 9:05 AM, Chris Pinkham wrote:
[snip]
>  > Sorry, I forgot to clarify one thing in my earlier reply.  This only
>  > changes the video encoding, it does not change the container format
>  > of the output file.  Myth will still generate a .nuv file.  Part of
>  > the reason I looked at this to begin with was because I'm (slowly)
>  > working on another patch to allow the software encoder
>  > (aka NuppelVideoRecorder) to generate other container formats
>  > supported
>  > by libavformat.
>  >
>  > What this means is that right now even if you tell Myth to use MPEG-2
>  > video with your ConvertX box, you still won't be able to play the
>  > files
>  > on your mvpmc since the mvpmc can't read .nuv.  Eventually you'll be
>  > able to tell Myth to use MPEG-2 video and put it in an mpeg-ps
>  > container
>  > which the mvpmc should be able to play.
[snip]

In .21 and trunk you should be able record from the PX-TV402U in Mpeg2
video with Mp2 audio in an MpegTS container if you set up an IPTV
recorder with a manually created m3u playlist (based on reading the
archives), and use wisremote to control wis-streamer. The caveat
regarding recording quality is that you end up setting the recording
profile in the wisremote script and you can't have them them managed
directly via MythTv on a per-recording rule basis. That said, you
could mess with the wisremote script further to have a per channel
profile.

I patched my install for .20-fixes on my main system to let me do this
and I'm satisfied with the output being good enough for live tv and
for shows I don't plan on archiving. The resulting mpegts plays back
just fine in the Internal MythTv player, VLC and MPlayer but the mpeg
internals are funky (still investigating) and is not able to be
cleanly and losslessly converted into a PS container via ffmpeg that
will play back in my portable media player. Lossy Transcoding works
just fine though so ... YMMV

Bear with me for a second as this is related and is useful for the
adventurous folks ... and I will add something to the wiki when I get
some more time, but I've been busy too with work ...

Changeset 15789 added the following to iptvchannel.cpp so that the
external channel change script in mythtv-setup is actually used if
configured for IPTV recorders.

if (!(*it)->externalChanger.isEmpty() && !ChangeExternalChannel(channum))
     return false;

My patch for .20-fixes FreeBox Recorder was similar (though sloppy and
attached to Ticket #4587) which I have been using with pretty good
results combined with a patches to wisremote and wis-streamer. I
patched wisremote to include a new profile that specifies the
-mpegtransport option when starting wis-streamer. If you are running
wis-streamer on a little endian machine no patching is required. That
said .... I have wis-streamer running on a big endian Freescale based
PowerPC (a cute little KuroHg/WR) so I had to do the following to
correct the endian issues in wis-streamer:

added a define for WORDS_BIGENDIAN in bswap.h
changed the define for PCM_AUDIO_IS_LITTLE_ENDIAN to 0 in Options.hh
changed the arg for alsa initialization from AFMT_S16_LE to
AFMT_S16_BE in WISInput.cpp
changed the audio device scan to use the same logic as gorecord from
the wis SDK.

I have PX-TV402U attached to the KuroHG/WR to avoid stability issues
because my main system has both the USB and Network devices forced
onto the same IRQ .. which I can't change for the life of me.

Wis-Streamer is using an older ffmpeg branch for mpegaudio encoding
and the live555 libraries to package things into the mpegts. I'm
planning on preparing a patch to update wis-streamer to latest ffmpeg
to teach myself more about how audio and video are packaged into the
more common container formats. With time and luck (I don't code c/c++
for a living) I will be trying to apply what I learn to attempt to
improve container support for the NuppelVideoRecorder.

-Eric


More information about the mythtv-users mailing list