GithubHelp home page GithubHelp logo

trizen / youtube-viewer Goto Github PK

View Code? Open in Web Editor NEW
1.2K 51.0 86.0 3.5 MB

Lightweight YouTube client for Linux

Home Page: https://trizenx.blogspot.com/2012/03/gtk-youtube-viewer.html

License: Artistic License 2.0

Perl 99.92% Shell 0.08%
youtube-viewer perl

youtube-viewer's Introduction

youtube-viewer

A lightweight application for searching and playing videos from YouTube.

youtube-viewer

  • command-line interface to YouTube.

youtube-viewer

gtk-youtube-viewer

  • GTK+ interface to YouTube.

gtk-youtube-viewer

AVAILABILITY

INSTALLATION

To install youtube-viewer, run:

    perl Build.PL
    sudo ./Build installdeps
    sudo ./Build install

To install gtk-youtube-viewer along with youtube-viewer, run:

    perl Build.PL --gtk
    sudo ./Build installdeps
    sudo ./Build install

TRY

For trying the latest commit of youtube-viewer, without installing it, execute the following commands:

    cd /tmp
    wget https://github.com/trizen/youtube-viewer/archive/master.zip -O youtube-viewer-master.zip
    unzip -n youtube-viewer-master.zip
    cd youtube-viewer-master/bin
    ./youtube-viewer

DEPENDENCIES

For youtube-viewer:

For gtk-youtube-viewer:

Optional dependencies:

PACKAGING

To package this application, run the following commands:

    perl Build.PL --destdir "/my/package/path" --installdirs vendor [--gtk]
    ./Build test
    ./Build install --install_path script=/usr/bin

LOGGING IN

Starting with version 3.7.4, youtube-viewer provides the ~/.config/youtube-viewer/api.json file, which allows setting an YouTube API key and the client ID/SECRET values:

{
    "key":           "API_KEY",
    "client_id":     "CLIENT_ID",
    "client_secret": "CLIENT_SECRET"
}
  • Prerequisite: you must create a Google Platform project. Following the below steps should prompt you to create one if you do not already have one.
  • Enable the YouTube Data v3 API on your project: navigate here and click "Enable" (if you see a blue "Manage" button, it's already enabled).
  • Replace API_KEY with your YouTube API key. Create a new key here by clicking on "Create Credentials" > "API Key".
  • Optionally, in order to log in, replace CLIENT_ID and CLIENT_SECRET with your native client ID and client secret values, by creating a new OAuth 2.0 Client ID here: click "Create Credentials" > "OAuth client ID", then select "TV and Limited Input devices" (tutorial -- may be outdated).

The project must have the following scope enabled: https://www.googleapis.com/auth/youtube

Also, in order to log in, grant access to the project in: https://console.cloud.google.com/apis/credentials/consent

See also: #285, #308.

PIPE-VIEWER

pipe-viewer is a fork of straw-viewer, which parses the YouTube website directly, and thus it does not require an YouTube API key.

REVIEWS

VIDEO REVIEWS

SUPPORT AND DOCUMENTATION

After installing, you can find documentation with the following commands:

man youtube-viewer
perldoc WWW::YoutubeViewer

LICENSE AND COPYRIGHT

Copyright (C) 2012-2024 Trizen

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 https://dev.perl.org/licenses/ for more information.

youtube-viewer's People

Contributors

antonialoytorrens avatar btrask avatar crimsonkoba avatar datamuc avatar dm1tz avatar jookia avatar mtahmed avatar neelchauhan avatar ntmatter avatar olof avatar pirate486743186 avatar r-ricci avatar tehlux avatar thekevjames avatar trizen avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

youtube-viewer's Issues

[feature request] --nosound option

As a way to play a video while getting the sound from another audio source, i.e. without mixing the two sources together plz?
Hi, I tried playing some videos without audio. Of course one can mute it from mplayer ;) But it mutes the whole station :/ At least it's the case with WMs such as i3 that I'm using.
Sorry if I missed an easy way to achieve this.And many thanks if one can let me know if it already exists ;)

ps Recently began to play with youtube-viewer and find it cool :)

Invalid version format

Since the recent Perl 5.20 rebuild on Arch, using gtk-youtube-viewer fails. Tried it with rebuilds of gtk-youtube-viewer and rebuilds of perl-file-sharedir and gtk-youtube-viewer with no result.

The error message:

$ gtk-youtube-viewer
Invalid version format (non-numeric data) at /usr/share/perl5/vendor_perl/File/ShareDir.pm line 108.
BEGIN failed--compilation aborted at /usr/share/perl5/vendor_perl/File/ShareDir.pm line 108.
Compilation failed in require at /usr/bin/gtk-youtube-viewer line 38.
BEGIN failed--compilation aborted at /usr/bin/gtk-youtube-viewer line 38.

New tag

Can we get a new tag for the fixes for perl 5.20?

Thanks

Better support for downloading captions

Currently, when downloading youtube videos, the captions are saved in /tmp/. This took me a while to figure out, and I think it would be better to have the default behavior be to download the subtitles to the current dir when youtube-viewer is passed the -d flag. This can be manually fixed using the --captions-dir argument.

However, when the subtitles are downloaded into the same directory as the video, they aren't named the same as the video. That makes it hard to find out (short of trial and error) which caption belongs to each video when you have lots of srt and video files in the same download folder. It would be nice if youtube-viewer saved the subtitle file with the same name as the video (plus the language suffix). I found no way of changing this manually.

Menu loop bug

steps to repeat:

  1. $ youtube-viewer -u kirstendirksen
  2. hit 1
  3. exit video player

The menu will loop to the next 20 videos endlessly


AUR, youtube-viewer-git [installed: 20130126-1]
This is perl 5, version 16, subversion 2 (v5.16.2) built for i686-linux-thread-multi

stty: standard input: Inappropriate ioctl for device

Trying arguments from stdin, like using fdisk:
eg:
printf "p\nq" |fdisk /dev/sda
to get current partition table.

Now in youtube-viewer

printf "searchterm" | youtube-viewer

I got the error:
stty: standard input: Inappropriate ioctl for device

Is putting stdin just not supported, is the a bug or does I miss something?

Sorry to disturb you.
精神療法者

deprecated smartmatch, given, and when cause a heap of warning messages

Running the latest youtube-viewer from git without arguments in the latest Perl 5 (version 18) generates 125 warnings:

Smartmatch is experimental at /usr/bin/youtube-viewer line 357.
Smartmatch is experimental at /usr/bin/youtube-viewer line 411.
given is experimental at /usr/bin/youtube-viewer line 1283.
when is experimental at /usr/bin/youtube-viewer line 1284.
when is experimental at /usr/bin/youtube-viewer line 1285.
when is experimental at /usr/bin/youtube-viewer line 1289.
given is experimental at /usr/bin/youtube-viewer line 1300.
when is experimental at /usr/bin/youtube-viewer line 1301.
Smartmatch is experimental at /usr/bin/youtube-viewer line 1609.
given is experimental at /usr/bin/youtube-viewer line 1612.
when is experimental at /usr/bin/youtube-viewer line 1613.
when is experimental at /usr/bin/youtube-viewer line 1617.
when is experimental at /usr/bin/youtube-viewer line 1620.
given is experimental at /usr/bin/youtube-viewer line 1643.
when is experimental at /usr/bin/youtube-viewer line 1644.
when is experimental at /usr/bin/youtube-viewer line 1647.
when is experimental at /usr/bin/youtube-viewer line 1650.
Smartmatch is experimental at /usr/bin/youtube-viewer line 1650.
Smartmatch is experimental at /usr/bin/youtube-viewer line 1651.
when is experimental at /usr/bin/youtube-viewer line 1665.
Smartmatch is experimental at /usr/bin/youtube-viewer line 1665.
when is experimental at /usr/bin/youtube-viewer line 1674.
when is experimental at /usr/bin/youtube-viewer line 1677.
when is experimental at /usr/bin/youtube-viewer line 1680.
when is experimental at /usr/bin/youtube-viewer line 1684.
Smartmatch is experimental at /usr/bin/youtube-viewer line 1689.
when is experimental at /usr/bin/youtube-viewer line 1699.
when is experimental at /usr/bin/youtube-viewer line 1707.
when is experimental at /usr/bin/youtube-viewer line 1710.
when is experimental at /usr/bin/youtube-viewer line 1713.
when is experimental at /usr/bin/youtube-viewer line 1716.
given is experimental at /usr/bin/youtube-viewer line 1844.
when is experimental at /usr/bin/youtube-viewer line 1845.
when is experimental at /usr/bin/youtube-viewer line 1856.
when is experimental at /usr/bin/youtube-viewer line 1860.
given is experimental at /usr/bin/youtube-viewer line 1869.
when is experimental at /usr/bin/youtube-viewer line 1870.
when is experimental at /usr/bin/youtube-viewer line 1871.
given is experimental at /usr/bin/youtube-viewer line 1931.
when is experimental at /usr/bin/youtube-viewer line 1932.
when is experimental at /usr/bin/youtube-viewer line 1943.
when is experimental at /usr/bin/youtube-viewer line 1947.
when is experimental at /usr/bin/youtube-viewer line 1969.
given is experimental at /usr/bin/youtube-viewer line 1978.
when is experimental at /usr/bin/youtube-viewer line 1979.
when is experimental at /usr/bin/youtube-viewer line 1980.
given is experimental at /usr/bin/youtube-viewer line 2024.
when is experimental at /usr/bin/youtube-viewer line 2025.
when is experimental at /usr/bin/youtube-viewer line 2035.
when is experimental at /usr/bin/youtube-viewer line 2039.
given is experimental at /usr/bin/youtube-viewer line 2048.
when is experimental at /usr/bin/youtube-viewer line 2049.
when is experimental at /usr/bin/youtube-viewer line 2050.
given is experimental at /usr/bin/youtube-viewer line 2085.
when is experimental at /usr/bin/youtube-viewer line 2086.
when is experimental at /usr/bin/youtube-viewer line 2094.
when is experimental at /usr/bin/youtube-viewer line 2103.
when is experimental at /usr/bin/youtube-viewer line 2104.
when is experimental at /usr/bin/youtube-viewer line 2108.
given is experimental at /usr/bin/youtube-viewer line 2117.
when is experimental at /usr/bin/youtube-viewer line 2118.
when is experimental at /usr/bin/youtube-viewer line 2119.
given is experimental at /usr/bin/youtube-viewer line 2163.
when is experimental at /usr/bin/youtube-viewer line 2164.
when is experimental at /usr/bin/youtube-viewer line 2165.
when is experimental at /usr/bin/youtube-viewer line 2169.
given is experimental at /usr/bin/youtube-viewer line 2178.
when is experimental at /usr/bin/youtube-viewer line 2179.
when is experimental at /usr/bin/youtube-viewer line 2180.
given is experimental at /usr/bin/youtube-viewer line 2208.
when is experimental at /usr/bin/youtube-viewer line 2209.
when is experimental at /usr/bin/youtube-viewer line 2210.
when is experimental at /usr/bin/youtube-viewer line 2214.
given is experimental at /usr/bin/youtube-viewer line 2223.
when is experimental at /usr/bin/youtube-viewer line 2224.
when is experimental at /usr/bin/youtube-viewer line 2225.
Smartmatch is experimental at /usr/bin/youtube-viewer line 2227.
given is experimental at /usr/bin/youtube-viewer line 2306.
when is experimental at /usr/bin/youtube-viewer line 2307.
when is experimental at /usr/bin/youtube-viewer line 2317.
when is experimental at /usr/bin/youtube-viewer line 2323.
when is experimental at /usr/bin/youtube-viewer line 2326.
when is experimental at /usr/bin/youtube-viewer line 2343.
given is experimental at /usr/bin/youtube-viewer line 2358.
when is experimental at /usr/bin/youtube-viewer line 2359.
when is experimental at /usr/bin/youtube-viewer line 2360.
Smartmatch is experimental at /usr/bin/youtube-viewer line 2463.
Smartmatch is experimental at /usr/bin/youtube-viewer line 2476.
given is experimental at /usr/bin/youtube-viewer line 2764.
when is experimental at /usr/bin/youtube-viewer line 2765.
when is experimental at /usr/bin/youtube-viewer line 2772.
when is experimental at /usr/bin/youtube-viewer line 2776.
Smartmatch is experimental at /usr/bin/youtube-viewer line 2777.
when is experimental at /usr/bin/youtube-viewer line 2801.
when is experimental at /usr/bin/youtube-viewer line 2809.
when is experimental at /usr/bin/youtube-viewer line 2812.
when is experimental at /usr/bin/youtube-viewer line 2829.
when is experimental at /usr/bin/youtube-viewer line 2846.
when is experimental at /usr/bin/youtube-viewer line 2855.
when is experimental at /usr/bin/youtube-viewer line 2863.
when is experimental at /usr/bin/youtube-viewer line 2871.
when is experimental at /usr/bin/youtube-viewer line 2879.
when is experimental at /usr/bin/youtube-viewer line 2888.
when is experimental at /usr/bin/youtube-viewer line 2896.
when is experimental at /usr/bin/youtube-viewer line 2904.
when is experimental at /usr/bin/youtube-viewer line 2913.
when is experimental at /usr/bin/youtube-viewer line 2924.
when is experimental at /usr/bin/youtube-viewer line 2927.
when is experimental at /usr/bin/youtube-viewer line 2930.
when is experimental at /usr/bin/youtube-viewer line 2944.
given is experimental at /usr/bin/youtube-viewer line 2958.
when is experimental at /usr/bin/youtube-viewer line 2959.
when is experimental at /usr/bin/youtube-viewer line 2960.
Smartmatch is experimental at /usr/bin/youtube-viewer line 2985.
Smartmatch is experimental at /usr/share/perl5/site_perl/WWW/YoutubeViewer.pm line 110.
Smartmatch is experimental at /usr/share/perl5/site_perl/WWW/YoutubeViewer.pm line 167.
Smartmatch is experimental at /usr/share/perl5/site_perl/WWW/YoutubeViewer.pm line 834.
Smartmatch is experimental at /usr/share/perl5/site_perl/WWW/YoutubeViewer.pm line 919.
Smartmatch is experimental at /usr/share/perl5/site_perl/WWW/YoutubeViewer.pm line 957.
Smartmatch is experimental at /usr/share/perl5/site_perl/WWW/YoutubeViewer.pm line 971.
Smartmatch is experimental at /usr/share/perl5/site_perl/WWW/YoutubeViewer.pm line 975.
Smartmatch is experimental at /usr/share/perl5/site_perl/WWW/YoutubeViewer.pm line 979.
Smartmatch is experimental at /usr/share/perl5/site_perl/WWW/YoutubeViewer.pm line 993.
Smartmatch is experimental at /usr/share/perl5/site_perl/WWW/YoutubeViewer.pm line 1000.
Smartmatch is experimental at /usr/share/perl5/site_perl/WWW/YoutubeViewer.pm line 1548.

Authentication failure with two-factor authentication

I am using youtub-viewer with a google account (linked with youtube and I can login into youtube with that), however, when I login and try to search with youtube viewer, I get

    ** GET https://gdata.youtube.com/feeds/api/videos?v=2&safeSearch=none&start-index=1&q=test&max-results=20 ==> 401 NoLinkedYouTubeAccount (1s)
    [401 NoLinkedYouTubeAccount] Error occured on URL: https://gdata.youtube.com/feeds/api/videos?v=2&safeSearch=none&start-index=1&q=test&max-results=20

    [!] No video results!

Now, I am not sure why this is happening (even though my account is clearly linked), however, according to http://apiblog.youtube.com/2011/10/introducing-google-account-support-and.html it may have to do with API versions

I would like to note that, the password I am providing in
youtube-viewer is an application specific type as provided by the
two factor authentication of google.

Missing icons?

Any idea why some icons seem to be missing? Is it just me?

missing_icons

Probably has something to do with themes. Any troubleshooting tips would be appreciated.

Display availability of video quality besides video name

Hi trizen, can you add the option to display the video quality available right next to the name of the video. It would be a great feature.For eg. like this,

  1. Big Buck Bunny (by blenderfoundation) (09:57) ( -2 -3 -4 -7 -1)
    It would help the user the right video quality for him.Still there are many videos in youtube that are not of HD quality.. Also, is there any option in mplayer so that you can view upto what time the video has buffered and what time is it currently playing. It will help the user select the right video quality depending upon the network speed of the user. Many thanks.I am greatly addicted to this app. I use it from a tty in arch-linux to play youtube videos in linux tty (without X) using fbdev2 video output. I like this app because you do no have to use a heavy load like google-chrome just for watching youtube videos.Thanks again!!.

no git tags

please use git tags for your releases

that makes packaging easier and is more transparent

Playing videos fail without any warnings

Hi Trizen,

I have been unable to play any videos with your script for a while (sometime after commit 9184aa3 I believe). When I start the script like this:

$ youtube-viewer

I see the description and video metadata but it doesn't play. I'm left with the youtube-viewer prompt. Here I can search and see results, but trying to play again does nothing. Do you know what could be wrong? Am I missing dependencies? I thought the Build.PL script warns about that.

Thanks,

Some videos won't play

I manage to play one of the top rated videos ok, but trying to play any of the videos from user geekandsundry did not play and just re-displayed the menu with no error message. I am running version 3.0.7 and my config setting look ok with respect to a previous bug that sounds similar.

Signed in but still can't view age restricted content

I've logged in and saved the token. I can't view age restricted content and having this error:

[!] Error occurred on getting info for video ID: VpXUIh7rlWI
[*] Reason: This video may be inappropriate for some users.
Use of uninitialized value in hash element at /usr/share/perl5/vendor_perl/WWW/YoutubeViewer/Itags.pm line 129, line 5.

Latest install from git. Help?

mplayer options with arguments

Hi,

I think passing options to mplayer which take arguments is broken. For example I can't pass an option like this:

youtube-viewer -mplayer="-osdlevel 3"

Doing so results in the script searching for "3" and trying to play any of the results results in mplayer failing because of failure to parse the command line options.

I hope this helps.

Suvayu

Error during Build test

I get the following issue when doing the Build test, using perl 5.12.3:
$ ./Build test
t/00-load.t ....... Bareword found where operator expected at /home/jza/tmp/youtube-viewer/WWW-YoutubeViewer/blib/lib/WWW/YoutubeViewer.pm line 1645, near "}er"
(Missing operator before r?)
t/00-load.t ....... 1/1

Failed test 'use WWW::YoutubeViewer;'

at t/00-load.t line 6.

Tried to use 'WWW::YoutubeViewer'.

Error: syntax error at /home/jza/tmp/youtube-viewer/WWW-YoutubeViewer/blib/lib/WWW/YoutubeViewer.pm line 1645, near "}er"

BEGIN not safe after errors--compilation aborted at /home/jza/tmp/youtube-viewer/WWW-YoutubeViewer/blib/lib/WWW/YoutubeViewer.pm line 1663.

Compilation failed in require at t/00-load.t line 6.

BEGIN failed--compilation aborted at t/00-load.t line 6.

Bailout called. Further testing stopped:

Testing WWW::YoutubeViewer , Perl 5.012003, /usr/bin/perl5.12.3

Looks like you failed 1 test of 1.

FAILED--Further testing stopped.

Intermittent failure on fetching of results

This happens intermittently when searching.

Following is the error emitted:

        Unbalanced close tag <feed> depth=2
        Force tag close <content> at depth 2 at /cpan/lib/perl5/site_perl//XML/Fast.pm line 28.
        Force tag close <entry> at depth 1 at /cpan/lib/perl5/site_perl//XML/Fast.pm line 28.
        Force tag close <feed> at depth 0 at /cpan/lib/perl5/site_perl//XML/Fast.pm line 28.
        XML::Fast: Error occured while parsing the XML content of: https://gdata.youtube.com/feeds/api/videos?v=2&safeSearch=none&q=turisas&start-index=1&max-results=20

However, when I try again, it works fine.

My config is https://gist.github.com/69b4444b2e7b8d168137

How do you use the yv_5.16_to_5.10.pl script? it just hangs for me.

So i installed the application and now i am trying to run the script to make it compatible with my version of Perl (5,14)

I do not want to upgrade perl as it could break something in my system. (Debian wheezy)

Using the script: sudo perl yv_5.16_to_5.10.pl

It just hangs and there is no output on the screen.

Add command-line option to terminate after video has played.

I run youtube-viewer like so from my yakuake dropdown terminal:

$ which y
y () {
        youtube-viewer -f --video-player=vlc `xsel -ob`
}

So when I want to play a video I just copy the URL in firefox and press y in my yakuake dropdown terminal, but youtube-viewer always stays open in the terminal and I have to quit it with :q or CTRL+C. It would be nice to have a --one-shot that terminates youtube-viewer after the player application terminates.

youtube-viewer -f --one-shot --video-player=vlc `xsel -ob`

help to install youtube-viewer!

hello!
this is my first question.
can i install youtube-viewer in ubuntu 12.04.1? how can I do it? because I always install packages from the software center, and I never installed packages another way yet.
thanks

[feature request] Restore ability to pass command-line parameters to mplayer

Since the commit titled: "Added support for more video players. (mplayer, vlc, mpv)", it seems it's no longer possible to do the equivalent of "--append-mplayer=s". This was quite useful on some lowend systems as mplayer's defaults would be too demanding. It would be great to have a way to easily pass additional parameters to the various players.

desktop file

  • QA Notice: This package installs one or more .desktop files that do not
  • pass validation.
  • /usr/share/applications/gtk-youtube-viewer.desktop: error: value "AudioVideo" for string list key "Categories" in group "Desktop Entry" does not have a semicolon (';') as trailing character
  • /usr/share/applications/gtk-youtube-viewer.desktop: warning: key "Encoding" in group "Desktop Entry" is deprecated

used "desktop-file-validate" from
http://freedesktop.org/wiki/Software/desktop-file-utils

Some videos don't play without a resolution flag

For example, this video has a 1080p version available that I can download with other tools, but in youtube-viewer I have to specify the -7 flag to get it to play.
http://www.youtube.com/watch?v=9-wzPTiLz5c

While this video is similar, but plays the the 1080p version without flags as it should:
http://www.youtube.com/watch?v=Zao8upe4phs

I thought was that the 1080p version wasn't done encoding yet, but I've seen older videos that wouldn't play as well.

This video was posted 4 days ago with 3 newer videos(that work) and has the same problem: http://www.youtube.com/watch?v=SAHYLWClmbE

[feature request] extract title of video

Hi

I use youtube-viewer when opening a youtube link in urxvt. Now I want to make a script to be able to select the following action (watch or download the video) using dmenu. For this it would be nice to have the ability to get the title of the video. For now I have to use youtube-dl for that, which I want to avoid in the near future, because I only want to use youtube-viewer for everything.

Thanks and best
Army

Minimum Perl version

Hi,

It seems sometime after c2a3188 youtube-viewer started to depend on Perl 5.16 or more. Trying to run gives me this error message:

Perl v5.16.0 required--this is only v5.14.3, stopped at /home/username/perl5/bin/youtube-viewer line 107.
BEGIN failed--compilation aborted at /home/username/perl5/bin/youtube-viewer line 107.

I tried to look in the commit messages but couldn't find any mention of this. I'm using Fedora 17, and my distribution provides Perl 5.14. Is there anyway this dependency can be avoided?

Thanks,

[feature request] --no-interactive for more switches

Could it be possible to use the --no-interactive switch with -u or -S with --std-input?
I'd like to use it in a cronjob, but in interactive mode it flodds my shell and uses up all memory.

Keep the good work up! :)

streaming doesn't work through mplayer

When I try to view most videos, it doesn't work. It shows "2014.08.05", then Description, URL etc., but the streaming through mplayer doesn't start. This happen with the most part of videos, but with some it works. If I choose vlc as player, all videos do work.
YouTube Viewer 3.1.1

I've added 'nolirc=yes' to ~/.mplayer/config but no changes.

60 fps videos

Hi,

Noticed the videos seems to always be at 30 fps, even if they play at 60 fps in the website player.
Is it even possible to get the videos at 60 with the method youtube-viewer uses ?

include mpg123 player

Hello, I really really like this program, use it every day. A great work you do actually. Sorry offtopic, but had to thank for the great work.

Well, I'm trying to run mpg123 on youtube viewer, however I am not succeeding

Added the following session player:

mpg123 => {
arg => "--stereo --float --control --title",
cmd => "wget -q -O - youtube-dl -g $url| ffmpeg -i - -f mp3 -vn -acodec libmp3lame -| mpg123",
fs => "--fullscreen",
novideo => "--no-video",
srt => "--sub '%s'",
},

from what I could see, I am not able to capture the url command sent by youtube-viewer.

I appreciate any help

Use the version cli

[feature request] specifying video output

Hello,
At first: Youtube-viewer is awesome! thx for this!

I want to specify the video-output for example:

youtube-viewer -vo fbdev2:/dev/fb0

This would be awesome on my Raspberry Pi.

Thx for reading and nice greetings,

Chris

re-enable the video

Hi,
sorry for the (stupid) question: but is there a way to re-enable the video after -n from interactive mode?
In the code I see only this
$MPLAYER{novideo} = $opt{novideo} ? q{-novideo} : q{};

thanks

[feature request] http proxy support

Hi!

Here in germany and VDSL I have to use a http proxy to view HD youtube videos. I guess that wget has to know about the proxy such that using an environment variable like this

$ http_proxy="http://user:pw@proxy-host:port" youtube-viewer

works for me. However, it would be nice if the proxy could be configured in the config file of youtube-viewer.

[feature request] -af scaletempo

mplayer, mplayer2, mpv, and that family of media players accept the option "-af scaletempo" to enable changes of play speed, without altering the pitch. (no chipmunks)

it would be really nice if there were a simple way to get youtube-viewer to accept this too, or to even pick up when the user has that set as the alias:

alias mplayer='mplayer -af scaletempo'

much thanks.
feel free to point out what a doofus i am if that already exists somehow...

text file for following youtube channels

$ youtube-viewer -u=~/.config/youtube-viewer/youtube_users.txt
~
Invalid url: http://gdata.youtube.com/feeds/api/users/~/.config/youtube-viewer/youtube_users.txt/uploads at /usr/share/perl5/site_perl/WWW/YoutubeViewer.pm line 438.
[400 Bad Request] Error occured on URL: http://gdata.youtube.com/feeds/api/users/~/.config/youtube-viewer/youtube_users.txt/uploads
Use of uninitialized value in subroutine entry at /usr/lib/perl5/vendor_perl/XML/Fast.pm line 28.
Empty document at /usr/lib/perl5/vendor_perl/XML/Fast.pm line 28.


Not sure what im missing, the old version allowed txt file, im guessing this option has been removed?

Arch XFCE
Kernel: 3.5.3-1-ARCH i686 (32 bit)

How do I change the default resolution?

This is probably not the right place, but I couldn't find any other place to put my question.

I'm using youtube-viewer with the GUI and I cant seem to change the default resolution. It seems to be using 420p instead of the original resolution. How do I change that?

Login tokens expire very fast

Hi, I'm unsure if this is youtube-viewer's or google's fault, but after using "youtube-viewer --login" I'm only able to "like" videos for a short time (maybe a few days) and after that I get

Request error: 401 Token invalid at /usr/share/perl5/site_perl/WWW/YoutubeViewer.pm line 1375.

[!] VideoID 't_bTiNqPWXQ' has not been liked

My version is 1:3.0.9-1 from the arch linux community repository.

Play multiple videos with one player command instead of multiple.

When I play bunch of videos (from a youtube playlist) I would like them to be played like this:

mpv video1 video2 video3

instead of

mpv video1
mpv video2
mpv video3

So that fixed-vo for mpv can take effect and the windows won't have to close nd open between each video.

The "prefer_webm" setting is ignored for some videos

With prefer_webm set to 0, some videos will download as webm unless a resolution is specified.

For example:

youtube-viewer -d "http://www.youtube.com/watch?v=BXWaFriFXLE"
will download a 1080p webm file, while
youtube-viewer -1 -d "http://www.youtube.com/watch?v=BXWaFriFXLE"
will download a 1080p mp4 file.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.