Watch live TV from any computer or e.g. smartphone (Android)

HDHomeRun development

Moderator: Moderators

Watch live TV from any computer or e.g. smartphone (Android)

Postby diego_dambra » Fri Jan 28, 2011 1:45 pm

Using the video feature in Subsonic it's possible setup and stream a live TV channel

Image

How it works: Allows you to select a TV channel and view it through Subsonics JW flash player (ffmpeg is the used to transcode the HDHomeRun video stream and play it).

Requirements: hdhomerun.pl script (to be placed in the Subsonic transcode folder), hdhomerun_config tool and Perl.

How to set it up:
- download the hdhomerun.pl script and copy it to your Subsonic transcode folder (/var/subsonic/transcode/)
- ensure the script has execute permission (chmod 755 hdhomerun.pl)
- add folder with HDHomeRun .strm files to Subsonic - Settings -> Music folders -> Add music folder (see below, if you need help with .strm files)
- add .strm extension to Subsonics Video mask - Settings -> General -> Video mask -> add .strm to the end of the listed extensions
- add new transcoding to Subsonic - Settings -> Transcoding:
Name: strm > flv, Convert from: strm, Convert to: flv, Step 1: hdhomerun.pl -s %s, Step 2: ffmpeg -ss %o -i - -async 1 -b %bk -s %wx%h -ar 44100 -ac 2 -v 0 -f flv - (and ensure Default and Enable are checked and then click the Save button)
- the new transcoding must then be enabled for the Players you've configured - Settings -> Players -> Select player -> Active transcoding: check strm > flv and then click Save (repeat for each player you plan to use)
- done

How to use:
- Navigate to your folder with .strm files and click play on any of the listed channel files - streaming will be shortly.

Advanced configuration:
- see hdhomerun.pl -h for advanced usage, e.g. set specific tuner or select first available. Add options to the Subsonic transcoding step.

Issues:
- video stutter - check CPU usage, transcoding requires a lot of CPU and if it hits 100% you'll probably experience bad quality. Try lower quality, e.g. 400kps through the JW flash player.
- MS Windows support, the script will need some tweaking to work. Post if of any interest.

How to create HDHomeRun .strm files with TV channel information:
- you can use the hdhomerun.pl script to create .strm files, see -h for usage (hdhomerun.pl -h)
- or, use the HDHomeRun tools to create .strm files
diego_dambra
 
Posts: 2
Joined: Fri Jan 28, 2011 12:46 pm

Reserved for updates

Postby diego_dambra » Fri Jan 28, 2011 1:48 pm

Reserved
diego_dambra
 
Posts: 2
Joined: Fri Jan 28, 2011 12:46 pm

Re: Watch live TV from any computer or e.g. smartphone (Andr

Postby kbriggs » Sat Feb 19, 2011 4:39 pm

diego_dambra wrote: - MS Windows support, the script will need some tweaking to work. Post if of any interest.


I would be interested. I installed Perl on my Windows 7 system and tried everything you posted above but couldn't get any .strm files to play. Subsonic would just display a black Flash window with a long line of numbers across the middle. Subsonic could play normal videos, however.
kbriggs
 
Posts: 1
Joined: Sat Feb 19, 2011 12:48 pm

Postby GJ51 » Sat Oct 29, 2011 8:25 pm

I'm a very big Subsonic fan and would love to get this up and running on my servers. I already have all the video bugs worked out and have enough horsepower to do the transcoding on the server.

All my Subsonic instances are on Windows platforms. I've never tried using perl scripts on Windows, so I'd need to know what to do to get everything up and running for the live streaming.

If we can get this worked out, I'd be happy to post the results and instructions on the SS board as well.
GJ51
 
Posts: 217
Joined: Thu Apr 07, 2011 12:25 pm

Works on a remote PC, now how about an android?

Postby greglox » Mon Nov 14, 2011 1:52 pm

First of all...that is awesome. I've wanted to merge my HDHomeRun with Subsonic for some time. I have a linux server and everything just works per your instructions on my remote PC. (while writing this up, I figured out how to get it to work on my android. I kept writing to let others know what I had to do.) I am using Ubuntu 11.10 & Subsonic 4.6.beta1.

I've got a directory with my stream files in it...'Stream 11.strm' for instance streams channel 11. I can see these stream files within subsonic(PC) if I view the TV folder. They are not links like other content, but if I press the arrow to the left, they play. If I choose 'All Folders', the stream links are at the bottom. As a result of this directory structure, I was not able to play these on my Android. [Solution] I found that I needed one more layer of directory structure in order to see the stream files on my android. That is:
My 'Subsonic - Settings -> Media folders' has this entry: [TV] [/media/tv]
My directory structure should then be '/media/tv/Streaming/Stream 11.strm'
Now, on the PC, the Streaming folder has my streams...as well as on my android. If I do a search for 'Streaming', I have a search result with my streams in it.

I love this!!!

First/only Question: is there any way to default the kpbs to something other than 1000? My home DSL uplink speed is 896kbps and I have to set it to 300kpbs on my remote computer and android to play stutter free. This is a minor inconvenience to have to set the bitrate to 300kbps...but maybe someone knows how...
greglox
 
Posts: 1
Joined: Sun Feb 28, 2010 7:57 pm

Postby hotshot2k3 » Tue Nov 15, 2011 7:08 pm

A working Windows version would be great.
hotshot2k3
 
Posts: 33
Joined: Tue Aug 16, 2011 4:02 pm

Help with .strm

Postby koch454 » Thu Dec 22, 2011 6:55 am

I have used both the hdhomeruntools and hdhr-mkchan and have only got stream files for certain channels. The main channels I am looking for are ESPN HD and other sports channels. I haven't figured out how to use hdhomerun.pl -h. Also I can't seem to get it to work with android.
koch454
 
Posts: 2
Joined: Wed Dec 21, 2011 8:48 pm

Postby kazman » Wed Jan 04, 2012 2:38 am

Hi,

Thanks this is great.

I have change the step 2 to ffmpeg -ss %o -i - -async 1 -b %bk -s %wx%h -ar 44100 -ac 2 -v 0 -f flv -vcodec libx264 -preset superfast -threads 0 - which seems to get better quality.

I have the same issue with Android but I also have a problem that I can't stream any live tv for more than 3 minutes. Has anyone else seen this problem. I am using subsonic 4.6.

Cheers
kazman
 
Posts: 2
Joined: Wed Jan 04, 2012 2:15 am

hdhomerun.pl channel program regex update for decimal

Postby phpguy » Wed Jan 25, 2012 10:21 pm

Wanted to share an update on the hdhomerun.pl file that allows for program channel numbers that are float (use decimal) in your strm files. The default hdhomerun.pl file regex will only detect a digit. Anyways, here it is:

Edit hdhomerun.pl in any simple text editor such as GEdit on Linux:

Around Line #115 Find:
Code: Select all
    if ( $hd =~ /channel=([^\&]+)\&program=(\d+)/ ) {


Replace with:
Code: Select all
    if ( $hd =~ /channel=([^\&]+)\&program=([0-9\.]+)/ ) {


Save and close file. Copy updated file to /var/subsonic/transcode

---

Transcoding with the following:

Step 1:
hdhomerun.pl -t any -s %s

Step 2:
ffmpeg -ss %o -i - -async 1 -b %bk -s %wx%h -ar 44100 -ac 2 -v 0 -f flv -vcodec libx264 -preset superfast -threads 0 -

---

BIG THANKS TO THE CREATOR OF HDHOMERUN.PL!!!
phpguy
 
Posts: 1
Joined: Wed Jan 25, 2012 10:13 pm

link dead

Postby ckergald » Fri Feb 24, 2012 10:22 am

Can anyone please re-post the hdhomerun.pl file, link appears to be dead.

thanks.
ckergald
 
Posts: 1
Joined: Fri Feb 24, 2012 10:19 am

Re: Watch live TV from any computer or e.g. smartphone (Andr

Postby tguless » Sun Jan 27, 2013 5:30 pm

I have had no luck with this on HDHomeRun Prime.

Here is the source code, I found it on the subsonic forums:
http://forum.subsonic.org/forum/viewtop ... run#p50818

I have modified this to include the patch mentioned in this post, I've also modified some paths to windows paths c:/progra~1/Silicondust/HDHomeRun/hdhomerun_config.exe, please change according to your OS.

Under windows, I had no luck decoding the streams that were getting handed off to ffmpeg.

I used the latest ffmpeg builds from here with no luck:
http://ffmpeg.zeranoe.com/builds/

Here are the ffmpeg logs from subsonic.log:

http://pastebin.com/7eB0JTB6

I should also clarify that this is what I have in subsonic's settings->transcoding:
Step1:
perl c:\subsonic\transcode\hdhomerun.pl -t any -s %s
Step 2:
ffmpegnewest -ss %o -i - -async 1 -b %bk -s %wx%h -ar 44100 -ac 2 -f flv -vcodec libx264 -preset superfast -threads 0 -analyzeduration 100 -probesize 10000000 -

Also, after installing Activeperl, I had to copy perl.exe int c:\subsonic\transcoding

Even though perl.exe was part of the system path, it was not getting picked up, as there seems to be a hardocded path somewhere. Another solution would have been writing a .bat launcher piece in c:\subsonic\transcoding. I'll let someone else figure out the best thing to do under windows.

Code: Select all
#!/usr/bin/perl
#safety
use strict;
use warnings;

#includes
use Getopt::Long;

#secure shell
$ENV{'PATH'} = '/bin:/usr/bin';
delete @ENV{qw(IFS CDPATH ENV BASH_ENV)};

=head1 NAME

hdhomerun.pl - setup and stream channel from HDHomeRun

=head1 VERSION

Version 0.01

=cut

my $VERSION = "0.01";

=head1 SYNOPSIS

Setup and stream HDHomeRun channel to STDOUT.

To use it, do:

    hdhomerun.pl -h

=head1 EXPORT

All private methods listed below.

=head1 SUBROUTINES/METHODS

=cut

#help text
sub usage {
    print <<"EOT";
Usage: hdhomerun.pl [ options ]

    -s, --stream-channel PATH
        Path to .strm file with frequence and program of HDHomeRun TV channel

    -t, --tuner ID
        HDHomeRun Tuner ID to stream from (if set to [any], first available is used)
        (default: 0)

    -i, --id ID
        HDHomeRun device ID
        (default: FFFFFFFF)

    --scan
        Channel scan and create .strm files (requires [--folder] option)
   
    --folder PATH
        Path to folder where channels found during scan are saved as .strm files

    --version
        Show version information
       
    --help
        This message

Example:
    # hdhomerun.pl -s PATH/CNN.strm > /tmp/stream.mpeg
    (stream to file)
   
    # hdhomerun.pl -s PATH/CNN.strm | ffmpeg -ss 0 -i - -async 1 -b 400k -s 480x320 -ar 22050 -ac 1 -v 0 -f flv -
    (stream to ffmpeg and convert it to Flash Video)

EOT
    exit 0;
}

#vars we need
my $tuner = 0;
my $id    = 'FFFFFFFF';
my ( $folder, $stream_channel, $scan );

#get arguments
GetOptions(
    's|stream-channel=s' => \$stream_channel,
    'i|id=s'             => \$id,
    't|tuner=s'          => \$tuner,
    'folder=s'           => \$folder,
    'scan'               => \$scan,
    'help'               => \&usage,
    'version'            => sub { print "Setup and stream HDHomeRun channel - version $VERSION\n"; exit 0; },
) || &usage;

#check environment
my $hd_cmd = '/Program Files/Silicondust/HDHomeRun/hdhomerun_config.exe';
die "FATAL: unable to locate needed HDHomeRun util: hdhomerun_config - please install it to use this script..."
  unless ($hd_cmd);

#get available tuner
if ( $tuner eq 'any' ) {
    $tuner = get_available_tuner($id);
    die "FATAL: unable to find available HDHomeRun tuner" unless ( defined($tuner) && $tuner =~ /^\d$/ );
}

#type of action
if ($stream_channel) {

    #read channel file
    open( CH, "<$stream_channel" ) || die "unable to open for read: <$stream_channel> - $!";
    my $hd = <CH>;
    close(CH);
    my ( $channel, $program );
    if ( $hd =~ /channel=([^\&]+)\&program=([0-9\.]+)/ ) {
        $channel = $1;
        $program = $2;
    }
    else {
        die "FATAL: unable to read program and channel frequence - <$hd>";
    }

    #setup HDHomeRun
    setup_hdhomerun( $id, $tuner, $channel, $program );

}
elsif ($scan) {

    #scan for channels
    print "Channel scan HDHomeRun device: <$id>, tuner: <$tuner>"
      . " - this will take some time, please be patient...\n";
    scan_hdhomerun( $id, $tuner, $folder );
}

=head2 get_available_tuner($id)

    Get a HDHomeRun tuner currently available
    arg0: str with HDHomeRun ID
    ret0: int 0|1 with tuner (undef if unable to find available tuner)

=cut

sub get_available_tuner {
    my $id = shift;

    #HDHomeRun command to get tuner target
    my $hdhomerun = "c:/progra~1/Silicondust/HDHomeRun/hdhomerun_config.exe";
    foreach my $t ( 0, 1 ) {
        my $target = `$hdhomerun $id get /tuner$t/target`;
        return $t if ( $target =~ /none/ );
    }
}

=head2 setup_hdhomerun($id, $tuner, $channel, $program, $target)

    Setup HDHomeRun to begin streaming
    arg0: str with HDHomeRun ID
    arg1: int 0|1 with tuner to use
    arg2: str with channel, e.g. a8qam64-6875:626000000
    arg3: int with program, e.g. 6120

=cut   

sub setup_hdhomerun {
    my $id      = shift;
    my $tuner   = shift;
    my $channel = shift;
    my $program = shift;

    #HDHomeRun commands
    my $hdhomerun   = "/Progra~1/Silicondust/HDHomeRun/hdhomerun_config.exe";
    my $def_args    = "$id set /tuner" . $tuner;
    my $set_channel = $def_args . "/channel $channel";
    my $set_program = $def_args . "/program $program";

    #start HDHomeRun stream
    system("$hdhomerun $set_channel");
    system("$hdhomerun $set_program");
    sleep 1;
    system( "$hdhomerun $id save /tuner" . $tuner . " -" );
}

=head2 scan_hdhomerun($id, $tuner, $folder)

    Setup HDHomeRun to begin streaming
    arg0: str with HDHomeRun ID
    arg1: int with HDHomeRun tuner
    arg2: str with path to folder where files should be created

=cut   

sub scan_hdhomerun {
    my $id     = shift;
    my $tuner  = shift;
    my $folder = shift;

    #check folder exists
    die "FATAL: please enter a valid folder..." unless ( defined($folder) && -d "$folder" );

    #HDHomeRun command
    my $hdhomerun = "hdhomerun_config";
    my $def_args  = "$id scan /tuner" . $tuner;

    #read scanning result from STDIN
    my ( $frequence, $qam, $name, $program );
    my %prg;
    open( SCAN, "$hdhomerun $def_args |" ) || die "FATAL: unable to open for read: <$hdhomerun $def_args>";
    while (<SCAN>) {
        $frequence = $1 if (/^SCANNING: (\d+) /);
        undef($frequence) if (/^LOCK: none/);
        next unless ($frequence);
        $qam = $1 if (/^LOCK: ([\w-]+)/);
        if (/^PROGRAM (\d+): 0 (.+)/) {
            $program = $1;
            $name    = $2;
            next if ( $name =~ /encrypted/ );
            $name =~ s/[\W]//g;
            $prg{$name} =
                "hdhomerun://"
              . $id
              . "-$tuner/tuner"
              . $tuner
              . "?channel="
              . $qam . ":"
              . $frequence
              . "&program="
              . $program;
        }
    }
    close(SCAN);

    #check channels was found
    die "WARN: no channels found - check your HDHomeRun configuration: <$hdhomerun $def_args>" if ( !%prg );

    #write channels to folder
    foreach my $p ( keys %prg ) {
        open( PRG, ">$folder/$p.strm" ) || die "FATAL: unable to open for write: <$folder/$p.strm> - $!";
        print PRG "$prg{$p}\n";
        close(PRG);
    }
}

=head1 ACKNOWLEDGEMENTS


=head1 LICENSE AND COPYRIGHT

Copyright 2010/2011 Diego d'Ambra (diegoatdambra.dk) / Nikolaj Steensgaard (nikolajatsteensgaard.net)

This program is free software; you can redistribute it and/or modify it
under the terms of either: the GNU General Public License as published
by the Free Software Foundation; or the Artistic License.

See http://dev.perl.org/licenses/ for more information.

=cut

tguless
 
Posts: 15
Joined: Tue Aug 30, 2011 7:24 am

Re: Watch live TV from any computer or e.g. smartphone (Andr

Postby tguless » Sun Jan 27, 2013 6:02 pm

This new ffmpeg stream source option might be the way to go for this:

viewtopic.php?f=16&t=13625

As discussed in the documentation here:
http://ffmpeg.org/ffmpeg.html

‘-re (input)’

Read input at native frame rate. Mainly used to simulate a grab device. By default ffmpeg attempts to read the input(s) as fast as possible. This option will slow down the reading of the input(s) to the native frame rate of the input(s). It is useful for real-time output (e.g. live streaming). If your input(s) is coming from some other live streaming source (through HTTP or UDP for example) the server might already be in real-time, thus the option will likely not be required. On the other hand, this is meaningful if your input(s) is a file you are trying to push in real-time.
tguless
 
Posts: 15
Joined: Tue Aug 30, 2011 7:24 am

Re: Watch live TV from any computer or e.g. smartphone (Andr

Postby tguless » Mon Jan 28, 2013 2:13 pm

Here is what I got:

c:\subsonic\transcode\tvheadend.bat

Code: Select all
set /p url=<%1

echo "%url%"
set o=%2
set b=%3k
set wxh=%4x%5

C:\subsonic\transcode\ffmpeg -ss %o% -i "%url%" -async 1 -b %b% -s %wxh% -ar 44100 -ac 2  -f flv -vcodec libx264 -preset superfast -threads 0 -


And the result from the logs are:

Code: Select all
[1/28/13 3:58:03 PM EST]    DEBUG   TranscodeInputStream   Starting transcoder: [c:\subsonic\transcode\tvheadend.bat] [\\192.168.1.34\DVR\Recorded TV\TV\2 - WCBS-DLNA.strm] [0] [1000] [480] [360]
[1/28/13 3:58:03 PM EST]    DEBUG   InputStreamReaderThread   (c:\subsonic\transcode\tvheadend.bat) ffmpeg version N-48886-g5ce023b Copyright (c) 2000-2013 the FFmpeg developers
[1/28/13 3:58:03 PM EST]    DEBUG   InputStreamReaderThread   (c:\subsonic\transcode\tvheadend.bat) built on Jan 14 2013 19:21:37 with gcc 4.7.2 (GCC)
[1/28/13 3:58:03 PM EST]    DEBUG   InputStreamReaderThread   (c:\subsonic\transcode\tvheadend.bat) configuration: --enable-gpl --enable-version3 --disable-w32threads --enable-avisynth --enable-bzlib --enable-fontconfig --enable-frei0r --enable-gnutls --enable-libass --enable-libbluray --enable-libcaca --enable-libfreetype --enable-libgsm --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-libopus --enable-librtmp --enable-libschroedinger --enable-libspeex --enable-libtheora --enable-libtwolame --enable-libvo-aacenc --enable-libvo-amrwbenc --enable-libvorbis --enable-libvpx --enable-libx264 --enable-libxavs --enable-libxvid --enable-zlib --enable-filter=frei0r
[1/28/13 3:58:03 PM EST]    DEBUG   InputStreamReaderThread   (c:\subsonic\transcode\tvheadend.bat) libavutil 52. 14.100 / 52. 14.100
[1/28/13 3:58:03 PM EST]    DEBUG   InputStreamReaderThread   (c:\subsonic\transcode\tvheadend.bat) libavcodec 54. 89.100 / 54. 89.100
[1/28/13 3:58:03 PM EST]    DEBUG   InputStreamReaderThread   (c:\subsonic\transcode\tvheadend.bat) libavformat 54. 59.107 / 54. 59.107
[1/28/13 3:58:03 PM EST]    DEBUG   InputStreamReaderThread   (c:\subsonic\transcode\tvheadend.bat) libavdevice 54. 3.102 / 54. 3.102
[1/28/13 3:58:03 PM EST]    DEBUG   InputStreamReaderThread   (c:\subsonic\transcode\tvheadend.bat) libavfilter 3. 32.100 / 3. 32.100
[1/28/13 3:58:03 PM EST]    DEBUG   InputStreamReaderThread   (c:\subsonic\transcode\tvheadend.bat) libswscale 2. 1.103 / 2. 1.103
[1/28/13 3:58:03 PM EST]    DEBUG   InputStreamReaderThread   (c:\subsonic\transcode\tvheadend.bat) libswresample 0. 17.102 / 0. 17.102
[1/28/13 3:58:03 PM EST]    DEBUG   InputStreamReaderThread   (c:\subsonic\transcode\tvheadend.bat) libpostproc 52. 2.100 / 52. 2.100
[1/28/13 3:58:03 PM EST]    DEBUG   InputStreamReaderThread   (c:\subsonic\transcode\tvheadend.bat) [http @ 000000000236e3a0] HTTP error 406 Not Acceptable

tguless
 
Posts: 15
Joined: Tue Aug 30, 2011 7:24 am

Re: Watch live TV from any computer or e.g. smartphone (Andr

Postby tguless » Mon Jan 28, 2013 2:19 pm

Also tried this:

c:\subsonic\transcode\tvheadend.bat

Code: Select all
set /p url=<%1

echo "%url%"
set o=%2
set b=%3k
set wxh=%4x%5

c:\cygwin\bin\wget.exe -q -O - "$@" http://192.168.1.2:5004/auto/v2?duration=3600 | C:\subsonic\transcode\ffmpeg -ss %o% -i - -async 1 -b %b% -s %wxh% -ar 44100 -ac 2  -f flv -vcodec libx264 -preset superfast -threads 0 -


And here are the logs from ffmpeg:

Code: Select all
[1/28/13 4:03:35 PM EST]    DEBUG   TranscodeInputStream   Starting transcoder: [c:\subsonic\transcode\tvheadend.bat] [\\192.168.1.34\DVR\Recorded TV\TV\2 - WCBS-DLNA.strm] [0] [1000] [480] [360]
[1/28/13 4:03:35 PM EST]    DEBUG   InputStreamReaderThread   (c:\subsonic\transcode\tvheadend.bat) ffmpeg version N-48886-g5ce023b Copyright (c) 2000-2013 the FFmpeg developers
[1/28/13 4:03:35 PM EST]    DEBUG   InputStreamReaderThread   (c:\subsonic\transcode\tvheadend.bat) built on Jan 14 2013 19:21:37 with gcc 4.7.2 (GCC)
[1/28/13 4:03:35 PM EST]    DEBUG   InputStreamReaderThread   (c:\subsonic\transcode\tvheadend.bat) configuration: --enable-gpl --enable-version3 --disable-w32threads --enable-avisynth --enable-bzlib --enable-fontconfig --enable-frei0r --enable-gnutls --enable-libass --enable-libbluray --enable-libcaca --enable-libfreetype --enable-libgsm --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-libopus --enable-librtmp --enable-libschroedinger --enable-libspeex --enable-libtheora --enable-libtwolame --enable-libvo-aacenc --enable-libvo-amrwbenc --enable-libvorbis --enable-libvpx --enable-libx264 --enable-libxavs --enable-libxvid --enable-zlib --enable-filter=frei0r
[1/28/13 4:03:35 PM EST]    DEBUG   InputStreamReaderThread   (c:\subsonic\transcode\tvheadend.bat) libavutil 52. 14.100 / 52. 14.100
[1/28/13 4:03:35 PM EST]    DEBUG   InputStreamReaderThread   (c:\subsonic\transcode\tvheadend.bat) libavcodec 54. 89.100 / 54. 89.100
[1/28/13 4:03:35 PM EST]    DEBUG   InputStreamReaderThread   (c:\subsonic\transcode\tvheadend.bat) libavformat 54. 59.107 / 54. 59.107
[1/28/13 4:03:35 PM EST]    DEBUG   InputStreamReaderThread   (c:\subsonic\transcode\tvheadend.bat) libavdevice 54. 3.102 / 54. 3.102
[1/28/13 4:03:35 PM EST]    DEBUG   InputStreamReaderThread   (c:\subsonic\transcode\tvheadend.bat) libavfilter 3. 32.100 / 3. 32.100
[1/28/13 4:03:35 PM EST]    DEBUG   InputStreamReaderThread   (c:\subsonic\transcode\tvheadend.bat) libswscale 2. 1.103 / 2. 1.103
[1/28/13 4:03:35 PM EST]    DEBUG   InputStreamReaderThread   (c:\subsonic\transcode\tvheadend.bat) libswresample 0. 17.102 / 0. 17.102
[1/28/13 4:03:35 PM EST]    DEBUG   InputStreamReaderThread   (c:\subsonic\transcode\tvheadend.bat) libpostproc 52. 2.100 / 52. 2.100
[1/28/13 4:03:35 PM EST]    DEBUG   InputStreamReaderThread   (c:\subsonic\transcode\tvheadend.bat) [mpeg2video @ 00000000021cdf00] 0x0 is invalid
[1/28/13 4:03:41 PM EST]    DEBUG   InputStreamReaderThread   (c:\subsonic\transcode\tvheadend.bat) Last message repeated 7 times
[1/28/13 4:03:41 PM EST]    DEBUG   InputStreamReaderThread   (c:\subsonic\transcode\tvheadend.bat) [mpegts @ 0000000002057fe0] max_analyze_duration 5000000 reached at 5024000 microseconds
[1/28/13 4:03:41 PM EST]    DEBUG   InputStreamReaderThread   (c:\subsonic\transcode\tvheadend.bat) [mpegts @ 0000000002057fe0] Estimating duration from bitrate, this may be inaccurate
[1/28/13 4:03:41 PM EST]    DEBUG   InputStreamReaderThread   (c:\subsonic\transcode\tvheadend.bat) Input #0, mpegts, from 'pipe:':
[1/28/13 4:03:41 PM EST]    DEBUG   InputStreamReaderThread   (c:\subsonic\transcode\tvheadend.bat) Duration: N/A, start: 44114.360356, bitrate: 384 kb/s
[1/28/13 4:03:41 PM EST]    DEBUG   InputStreamReaderThread   (c:\subsonic\transcode\tvheadend.bat) Program 1001
[1/28/13 4:03:41 PM EST]    DEBUG   InputStreamReaderThread   (c:\subsonic\transcode\tvheadend.bat) No Program
[1/28/13 4:03:41 PM EST]    DEBUG   InputStreamReaderThread   (c:\subsonic\transcode\tvheadend.bat) Stream #0:0[0x800]: Video: mpeg2video (Main) ([2][0][0][0] / 0x0002), yuv420p, 528x480 [SAR 40:33 DAR 4:3], 29.97 fps, 29.97 tbr, 90k tbn, 59.94 tbc
[1/28/13 4:03:41 PM EST]    DEBUG   InputStreamReaderThread   (c:\subsonic\transcode\tvheadend.bat) Stream #0:1[0x801](eng): Audio: ac3 ([129][0][0][0] / 0x0081), 48000 Hz, stereo, fltp, 192 kb/s
[1/28/13 4:03:41 PM EST]    DEBUG   InputStreamReaderThread   (c:\subsonic\transcode\tvheadend.bat) Stream #0:2[0x802](spa): Audio: ac3 ([129][0][0][0] / 0x0081), 48000 Hz, stereo, fltp, 192 kb/s
[1/28/13 4:03:41 PM EST]    DEBUG   InputStreamReaderThread   (c:\subsonic\transcode\tvheadend.bat) Please use -b:a or -b:v, -b is ambiguous
[1/28/13 4:03:41 PM EST]    DEBUG   InputStreamReaderThread   (c:\subsonic\transcode\tvheadend.bat) -async is forwarded to lavfi similarly to -af aresample=async=1:min_hard_comp=0.100000.
[1/28/13 4:03:41 PM EST]    DEBUG   InputStreamReaderThread   (c:\subsonic\transcode\tvheadend.bat) [libx264 @ 00000000020d6900] using SAR=1/1
[1/28/13 4:03:41 PM EST]    DEBUG   InputStreamReaderThread   (c:\subsonic\transcode\tvheadend.bat) [libx264 @ 00000000020d6900] using cpu capabilities: MMX2 SSE2Fast SSSE3 FastShuffle SSE4.2
[1/28/13 4:03:41 PM EST]    DEBUG   InputStreamReaderThread   (c:\subsonic\transcode\tvheadend.bat) [libx264 @ 00000000020d6900] profile High, level 3.0
[1/28/13 4:03:41 PM EST]    DEBUG   InputStreamReaderThread   (c:\subsonic\transcode\tvheadend.bat) [libx264 @ 00000000020d6900] 264 - core 129 r2230 1cffe9f - H.264/MPEG-4 AVC codec - Copyleft 2003-2012 - http://www.videolan.org/x264.html - options: cabac=1 ref=1 deblock=1:0:0 analyse=0x3:0x3 me=dia subme=1 psy=1 psy_rd=1.00:0.00 mixed_ref=0 me_range=16 chroma_me=1 trellis=0 8x8dct=1 cqm=0 deadzone=21,11 fast_pskip=1 chroma_qp_offset=0 threads=12 lookahead_threads=2 sliced_threads=0 nr=0 decimate=1 interlaced=0 bluray_compat=0 constrained_intra=0 bframes=3 b_pyramid=2 b_adapt=1 b_bias=0 direct=1 weightb=1 open_gop=0 weightp=1 keyint=250 keyint_min=25 scenecut=40 intra_refresh=0 rc=abr mbtree=0 bitrate=1000 ratetol=1.0 qcomp=0.60 qpmin=0 qpmax=69 qpstep=4 ip_ratio=1.40 pb_ratio=1.30 aq=1:1.00
[1/28/13 4:03:41 PM EST]    DEBUG   InputStreamReaderThread   (c:\subsonic\transcode\tvheadend.bat) Output #0, flv, to 'pipe:':
[1/28/13 4:03:41 PM EST]    DEBUG   InputStreamReaderThread   (c:\subsonic\transcode\tvheadend.bat) Metadata:
[1/28/13 4:03:41 PM EST]    DEBUG   InputStreamReaderThread   (c:\subsonic\transcode\tvheadend.bat) encoder : Lavf54.59.107
[1/28/13 4:03:41 PM EST]    DEBUG   InputStreamReaderThread   (c:\subsonic\transcode\tvheadend.bat) Stream #0:0: Video: h264 ([7][0][0][0] / 0x0007), yuv420p, 480x360 [SAR 1:1 DAR 4:3], q=-1--1, 1000 kb/s, 1k tbn, 29.97 tbc
[1/28/13 4:03:41 PM EST]    DEBUG   InputStreamReaderThread   (c:\subsonic\transcode\tvheadend.bat) Stream #0:1(eng): Audio: mp3 ([2][0][0][0] / 0x0002), 44100 Hz, stereo, fltp
[1/28/13 4:03:41 PM EST]    DEBUG   InputStreamReaderThread   (c:\subsonic\transcode\tvheadend.bat) Stream mapping:
[1/28/13 4:03:41 PM EST]    DEBUG   InputStreamReaderThread   (c:\subsonic\transcode\tvheadend.bat) Stream #0:0 -> #0:0 (mpeg2video -> libx264)
[1/28/13 4:03:41 PM EST]    DEBUG   InputStreamReaderThread   (c:\subsonic\transcode\tvheadend.bat) Stream #0:1 -> #0:1 (ac3 -> libmp3lame)
[1/28/13 4:03:41 PM EST]    DEBUG   InputStreamReaderThread   (c:\subsonic\transcode\tvheadend.bat) [ac3 @ 00000000021cf660] frame sync error
[1/28/13 4:03:41 PM EST]    DEBUG   InputStreamReaderThread   (c:\subsonic\transcode\tvheadend.bat) Error while decoding stream #0:1: Error number -1 occurred
[1/28/13 4:03:41 PM EST]    DEBUG   InputStreamReaderThread   (c:\subsonic\transcode\tvheadend.bat) av_interleaved_write_frame(): Invalid argument
tguless
 
Posts: 15
Joined: Tue Aug 30, 2011 7:24 am

Re: Watch live TV from any computer or e.g. smartphone (Andr

Postby tguless » Mon Jan 28, 2013 2:28 pm

Found this bug report on ffmpeg:

http://ffmpeg.org/trac/ffmpeg/ticket/1154
tguless
 
Posts: 15
Joined: Tue Aug 30, 2011 7:24 am

Next

Return to Development - HDHomeRun

Who is online

Users browsing this forum: No registered users and 0 guests