render SMPTE Color Bars
[HTML5TV.git] / bin / mplayer.pl
index 5330b56..b4f3721 100755 (executable)
@@ -29,17 +29,12 @@ if ( ! $movie && -e 'media/_editing' ) {
        warn "using media/_editing -> $movie\n";
 } elsif ( -d $movie && $movie =~ m{media/} ) {
        $movie .= '/video.ogv';
-} elsif ( -f $movie && $movie !~ m{video\.ogv} ) {
+} elsif ( -f $movie && $movie =~ m{\.og[vg]$}i ) {
        my $movie_master = $movie;
        $movie = base_dir($movie) . '/video.ogv';
-       if ( ! -e $movie ) {
-               symlink base_name($movie_master), $movie;
-               warn "symlink video.ogv -> $movie_master";
-       } else {
-               warn "using symlink video.ogv -> ", readlink $movie;
-       }
-} elsif ( -f $movie ) {
-       warn "using video $movie";
+       unlink $movie if -e $movie;
+       symlink base_name($movie_master), $movie;
+       warn "symlink video.ogv -> $movie_master";
 } else {
        die "Usage: $0 media/conference-Title_of_talk[/video.ogv'\n";
 }
@@ -309,6 +304,18 @@ sub html5tv {
 
        }
 
+
+       my $bars = "$path/bars.png";
+       if ( 1 || ! -e $bars ) { # FIXME
+               my $im = Graphics::Magick->new;
+               $im->ReadImage( "$media_dir/../SMPTE_Color_Bars.svg" );
+               my ($slide_width, $slide_height) = Graphics::Magick->new->Ping( slide_jpg( 1 => 1 ) );
+               $im->Resize( width => $slide_width, height => $slide_height );
+               $im->Write( filename => $bars );
+               warn "created $bars ", -s $bars, " bytes\n";
+       }
+
+
        my ($slide_width, $slide_height, $size, $format) = Graphics::Magick->new->Ping( slide_jpg( $slide_factor => 1 ) );
 
        my $html5tv = {