Giter VIP home page Giter VIP logo

twire's People

Contributors

anasofiagribeiro avatar b0pol avatar cdhiraj40 avatar clasick avatar costaste avatar dfriveros11 avatar diluteoxygen avatar dkacperski97 avatar fabiopolancoe avatar gabomarza avatar gplassard avatar ilyamedvedev0002 avatar jorgeluiscarrillo avatar nickwasused avatar nikicat avatar perflyst avatar phoenix616 avatar poussinou avatar rickym7 avatar samfundev avatar sebastianrask avatar sguinetti avatar still-flow avatar t0pu avatar tacothedank avatar tim-crisp avatar tossj avatar vapormusic avatar weblate avatar yohanngutej 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

twire's Issues

Some streams do not load thumbnails.

This happens in the base pocket plays for twitch aswell which seems to have been abandoned. It happens randomly, sometimes most streamers dont load, sometimes most do load.
Screenshot_20191009-192201_Twire

Implement sharing

Hi, I think it would be pretty useful if Twire would allow sharing of streams and VODs. Personally I'd use this feature to browse Twitch streams on my phone and share them to my Kodi box.

Allow to use "previous" button to return from a stream to the main menus

Currently, once a stream is playing, the only way to get back to the previous screen and the application menus is to click the arrow on the stream frame.

It would be a nice addition to allow user to do the same with Android's previous button (maybe also have the slide menu on the left? No idea about that one).

[Bug] Black screen when playing a stream in the Twire player

When I use the Twire player to watch a stream the video is a black screen but I can hear the audio fine.

The video does work when using an external player such as VLC.

I'm not sure if it's something on my end, but it's only happened recently. It used to be fine .

Start stream from shared link

Can you make so you can start a stream from a link, using the 'share' menu?

Lots of requests, feel free to respond as you will. Thanks a lot for what you're doing.

[Feature Request] Phone Notifications

I think it would be cool to receive notifications when a streamer you follow goes live, like on the official Twitch app for android. Is this a possibility?

'Favorites' page

Thanks for the work, it's nice to have a no-browser option to use twitch without an account.

Dunno how deep you want to go on the 'no account' end, but could you add a local favorites/inscriptions page? It would be great since the kind of stuff that I'm looking for only show up in the default pages once per year at best.

Thanks.

Endless "Connecting to chat"

Once opening a stream, there's a "Connecting to chat" appearing for the chat zone, and then it's never replaced by the actual chat.

I tried to take a look at adb logcat -v threadtime, but sadly running a stream throw a massive amount of logs so I don't really know at what should I look about this specific issue.

(And yes, I saw the other issue about this, and I'm logged in, although, it would make sense to have read-only chat even if not logged in)

bug

hi , background playback and sound alone do not work ,

Privacy Police

Add an area where everyone can see the privacy police of the app

Use VPN?

The app use some VPN that change every single day?

Translation

Hello,

I wanted to ask if you have before future translations to support. I would like to help you to translate the app into German.

Greetz.

mixer support

Might it be an idea to add mixer support to this app?

There are no FOSS mixer players & I really want to watch ninja 😉

Background/picture-in-picture

As of now in Android 9 (LineageOS) I couldn't watch/listen a stream in the background outside of split-screen. Is it possible to keep the stream running in the back, and even maybe add a floating window mode?

Dunno if it's easy to implement the default option from Android, used by YouTube and a few apps running fullscreen, or add a more robust choice like what Newpipe does. The license seems compatible, the code however I have no idea.

General questions concerning Twire and the fork

This issue can be used to ask general questions on Twire and everythint related to the fork.

~~Hello,

since I wasn't able to find your contact info I ask here. I just found your porject in F-Droid and saw that it is a fork of Pocket Player. I hope this doesn't sound unfriendly but I wonder what are your motivations for forking? It would help me deciding which project to use.

Many thanks in advance!

edit: just found your email. Hope it's fine if I leave this issue open anyway.~~

Chat layout like Impulse

Impulse seems have the right idea I think when it comes to chat. Anyway to build it more like that? It recognizes all of the sub badges, emotes bttv, and FFZ including the animated ones. If I was gud I'd contribute, but I'm an idiot.

Can't login with my Twitch account (TLS1.2 backport for old android)

Hello,
When I try to log in with my Twitch account in Twire, I get the form from Twitch and I'm then redirected to a page −which, weirdly, has no formatting− asking to allow access to the app. When I click on the button to do it, nothing happens at all. Twire doesn't appear in my Connections tab on Twitch. Other apps/services with Twitch integration I've tried work fine.

It happens both on a phone (Huawei Ice-Twist, Android 4.2.2) and a tablet (Samsung Galaxy Tab 2, Android 4.1.2).

FrankerFaceZ Support

Can you please support Twitch emotes and badges from the FrankerFaceZ extension?

Chat not working

Can't get the chat working.
It always display Connecting to chat but obviously don't.

Running Android 6.0

Click precedent after loggin in leads to a white screen

If after log in user then click on precedent/previous Android button, user goes on a white screen, then doing previous again leads to the "Hello XXXXX" screen, adn more generally, the path through the app by clicking previous can be surprising (like a stack of screens user is unstacking).

[1.9.6] Can't change aspect ratio

I have a phone with 18:9 screen aspect ratio and with the newest version of Twire 1.9.6 if the stream is in 16:9 ratio then it's zooming in and top and bottom pixels are not visible.

In 1.9.2 version it's fine. 16:9 ratio stream is showing in original size with black bars on the sides.

It would be nice to have a screen gesture to stretch and unstretch the aspect ratio and/or something in the settings to change it.

"My Streams" tab broken and can't display anything

See joined screenshot:

Screenshot_20191009-145938
"My Streams" tab fail to display anything every time I try.

Here are Java exceptions caught into adb logcat -v threadtime

10-09 14:58:57.363 16791 16791 I Timeline: Timeline: Activity_launch_request id:com.perflyst.twire time:730291226
10-09 14:58:57.365   920  3828 I ActivityManager: START u0 {flg=0x10000 cmp=com.perflyst.twire/.activities.main.MyStreamsActivity (has extras)} from uid 10441 on display 0
10-09 14:58:57.468 16791 16791 E View    : hasTransientState decremented below 0: unmatched pair of setHasTransientState calls
10-09 14:58:57.513   920   978 I ActivityManager: Displayed com.perflyst.twire/.activities.main.MyStreamsActivity: +126ms
10-09 14:58:57.513   920   978 I Timeline: Timeline: Activity_windows_visible id: ActivityRecord{38a9cf5 u0 com.perflyst.twire/.activities.main.MyStreamsActivity t3387} time:730291376
10-09 14:58:57.734 16791 16867 W System.err: java.io.FileNotFoundException: https://api.twitch.tv/kraken/streams/followed?oauth_token=HASH&offset=0&stream_type=live
10-09 14:58:57.735 16791 16867 W System.err: 	at com.android.okhttp.internal.huc.HttpURLConnectionImpl.getInputStream(HttpURLConnectionImpl.java:238)
10-09 14:58:57.735 16791 16867 W System.err: 	at com.android.okhttp.internal.huc.DelegatingHttpsURLConnection.getInputStream(DelegatingHttpsURLConnection.java:210)
10-09 14:58:57.735 16791 16867 W System.err: 	at com.android.okhttp.internal.huc.HttpsURLConnectionImpl.getInputStream(HttpsURLConnectionImpl.java:25)
10-09 14:58:57.735 16791 16867 W System.err: 	at com.perflyst.twire.service.Service.urlToJSONString(Service.java:607)
10-09 14:58:57.735 16791 16867 W System.err: 	at com.perflyst.twire.tasks.GetStreamsCountTask.doInBackground(GetStreamsCountTask.java:29)
10-09 14:58:57.737 16791 16867 W System.err: 	at com.perflyst.twire.tasks.GetStreamsCountTask.doInBackground(GetStreamsCountTask.java:14)
10-09 14:58:57.737 16791 16867 W System.err: 	at android.os.AsyncTask$2.call(AsyncTask.java:295)
10-09 14:58:57.738 16791 16867 W System.err: 	at java.util.concurrent.FutureTask.run(FutureTask.java:237)
10-09 14:58:57.738 16791 16867 W System.err: 	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1113)
10-09 14:58:57.738 16791 16867 W System.err: 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:588)
10-09 14:58:57.738 16791 16867 W System.err: 	at java.lang.Thread.run(Thread.java:818)
10-09 14:58:57.743 16791 16867 V URL TO JSON STRING: https://api.twitch.tv/kraken/streams/followed?oauth_token=HASH&offset=0&stream_type=live did not successfully get read
10-09 14:58:57.743 16791 16867 V URL TO JSON STRING: Result of reading -
10-09 14:58:57.745 16791 16867 W System.err: org.json.JSONException: End of input at character 0 of
10-09 14:58:57.745 16791 16867 W System.err: 	at org.json.JSONTokener.syntaxError(JSONTokener.java:449)
10-09 14:58:57.745 16791 16867 W System.err: 	at org.json.JSONTokener.nextValue(JSONTokener.java:97)
10-09 14:58:57.745 16791 16867 W System.err: 	at org.json.JSONObject.<init>(JSONObject.java:156)
10-09 14:58:57.746 16791 16867 W System.err: 	at org.json.JSONObject.<init>(JSONObject.java:173)
10-09 14:58:57.746 16791 16867 W System.err: 	at com.perflyst.twire.tasks.GetStreamsCountTask.doInBackground(GetStreamsCountTask.java:30)
10-09 14:58:57.746 16791 16867 W System.err: 	at com.perflyst.twire.tasks.GetStreamsCountTask.doInBackground(GetStreamsCountTask.java:14)
10-09 14:58:57.746 16791 16867 W System.err: 	at android.os.AsyncTask$2.call(AsyncTask.java:295)
10-09 14:58:57.746 16791 16867 W System.err: 	at java.util.concurrent.FutureTask.run(FutureTask.java:237)
10-09 14:58:57.746 16791 16867 W System.err: 	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1113)
10-09 14:58:57.746 16791 16867 W System.err: 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:588)
10-09 14:58:57.746 16791 16867 W System.err: 	at java.lang.Thread.run(Thread.java:818)
10-09 14:58:57.902 16791 16813 W System.err: java.io.FileNotFoundException: https://api.twitch.tv/kraken/streams/followed?oauth_token=HASH&limit=10&offset=0&stream_type=live
10-09 14:58:57.902 16791 16813 W System.err: 	at com.android.okhttp.internal.huc.HttpURLConnectionImpl.getInputStream(HttpURLConnectionImpl.java:238)
10-09 14:58:57.903 16791 16813 W System.err: 	at com.android.okhttp.internal.huc.DelegatingHttpsURLConnection.getInputStream(DelegatingHttpsURLConnection.java:210)
10-09 14:58:57.903 16791 16813 W System.err: 	at com.android.okhttp.internal.huc.HttpsURLConnectionImpl.getInputStream(HttpsURLConnectionImpl.java:25)
10-09 14:58:57.903 16791 16813 W System.err: 	at com.perflyst.twire.service.Service.urlToJSONString(Service.java:607)
10-09 14:58:57.903 16791 16813 W System.err: 	at com.perflyst.twire.activities.main.MyStreamsActivity.getVisualElements(MyStreamsActivity.java:60)
10-09 14:58:57.903 16791 16813 W System.err: 	at com.perflyst.twire.tasks.GetVisualElementsTask.doInBackground(GetVisualElementsTask.java:29)
10-09 14:58:57.903 16791 16813 W System.err: 	at com.perflyst.twire.tasks.GetVisualElementsTask.doInBackground(GetVisualElementsTask.java:11)
10-09 14:58:57.903 16791 16813 W System.err: 	at android.os.AsyncTask$2.call(AsyncTask.java:295)
10-09 14:58:57.903 16791 16813 W System.err: 	at java.util.concurrent.FutureTask.run(FutureTask.java:237)
10-09 14:58:57.903 16791 16813 W System.err: 	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1113)
10-09 14:58:57.903 16791 16813 W System.err: 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:588)
10-09 14:58:57.903 16791 16813 W System.err: 	at java.lang.Thread.run(Thread.java:818)
10-09 14:58:57.904 16791 16813 V URL TO JSON STRING: https://api.twitch.tv/kraken/streams/followed?oauth_token=HASH&limit=10&offset=0&stream_type=live did not successfully get read
10-09 14:58:57.904 16791 16813 V URL TO JSON STRING: Result of reading -
10-09 14:58:57.905 16791 16813 W System.err: org.json.JSONException: End of input at character 0 of
10-09 14:58:57.905 16791 16813 W System.err: 	at org.json.JSONTokener.syntaxError(JSONTokener.java:449)
10-09 14:58:57.905 16791 16813 W System.err: 	at org.json.JSONTokener.nextValue(JSONTokener.java:97)
10-09 14:58:57.905 16791 16813 W System.err: 	at org.json.JSONObject.<init>(JSONObject.java:156)
10-09 14:58:57.905 16791 16813 W System.err: 	at org.json.JSONObject.<init>(JSONObject.java:173)
10-09 14:58:57.905 16791 16813 W System.err: 	at com.perflyst.twire.activities.main.MyStreamsActivity.getVisualElements(MyStreamsActivity.java:61)
10-09 14:58:57.905 16791 16813 W System.err: 	at com.perflyst.twire.tasks.GetVisualElementsTask.doInBackground(GetVisualElementsTask.java:29)
10-09 14:58:57.905 16791 16813 W System.err: 	at com.perflyst.twire.tasks.GetVisualElementsTask.doInBackground(GetVisualElementsTask.java:11)
10-09 14:58:57.905 16791 16813 W System.err: 	at android.os.AsyncTask$2.call(AsyncTask.java:295)
10-09 14:58:57.905 16791 16813 W System.err: 	at java.util.concurrent.FutureTask.run(FutureTask.java:237)
10-09 14:58:57.905 16791 16813 W System.err: 	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1113)
10-09 14:58:57.905 16791 16813 W System.err: 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:588)
10-09 14:58:57.905 16791 16813 W System.err: 	at java.lang.Thread.run(Thread.java:818)
10-09 14:58:57.910 16791 16791 I GetVisualElementsTask: ADDING 0 VISUAL ELEMENTS
10-09 14:58:57.910 16791 16791 I         : Adding Top Streams: 0
10-09 14:58:58.152 16791 16811 W System.err: java.io.FileNotFoundException: https://api.twitch.tv/kraken/streams/followed?oauth_token=HASH&limit=10&offset=0&stream_type=live
10-09 14:58:58.154 16791 16811 W System.err: 	at com.android.okhttp.internal.huc.HttpURLConnectionImpl.getInputStream(HttpURLConnectionImpl.java:238)
10-09 14:58:58.154 16791 16811 W System.err: 	at com.android.okhttp.internal.huc.DelegatingHttpsURLConnection.getInputStream(DelegatingHttpsURLConnection.java:210)
10-09 14:58:58.154 16791 16811 W System.err: 	at com.android.okhttp.internal.huc.HttpsURLConnectionImpl.getInputStream(HttpsURLConnectionImpl.java:25)
10-09 14:58:58.154 16791 16811 W System.err: 	at com.perflyst.twire.service.Service.urlToJSONString(Service.java:607)
10-09 14:58:58.154 16791 16811 W System.err: 	at com.perflyst.twire.activities.main.MyStreamsActivity.getVisualElements(MyStreamsActivity.java:60)
10-09 14:58:58.155 16791 16811 W System.err: 	at com.perflyst.twire.tasks.GetVisualElementsTask.doInBackground(GetVisualElementsTask.java:29)
10-09 14:58:58.155 16791 16811 W System.err: 	at com.perflyst.twire.tasks.GetVisualElementsTask.doInBackground(GetVisualElementsTask.java:11)
10-09 14:58:58.155 16791 16811 W System.err: 	at android.os.AsyncTask$2.call(AsyncTask.java:295)
10-09 14:58:58.155 16791 16811 W System.err: 	at java.util.concurrent.FutureTask.run(FutureTask.java:237)
10-09 14:58:58.155 16791 16811 W System.err: 	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1113)
10-09 14:58:58.155 16791 16811 W System.err: 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:588)
10-09 14:58:58.155 16791 16811 W System.err: 	at java.lang.Thread.run(Thread.java:818)
10-09 14:58:58.155 16791 16811 V URL TO JSON STRING: https://api.twitch.tv/kraken/streams/followed?oauth_token=HASH&limit=10&offset=0&stream_type=live did not successfully get read
10-09 14:58:58.155 16791 16811 V URL TO JSON STRING: Result of reading -
10-09 14:58:58.155 16791 16811 W System.err: org.json.JSONException: End of input at character 0 of
10-09 14:58:58.156 16791 16811 W System.err: 	at org.json.JSONTokener.syntaxError(JSONTokener.java:449)
10-09 14:58:58.156 16791 16811 W System.err: 	at org.json.JSONTokener.nextValue(JSONTokener.java:97)
10-09 14:58:58.156 16791 16811 W System.err: 	at org.json.JSONObject.<init>(JSONObject.java:156)
10-09 14:58:58.156 16791 16811 W System.err: 	at org.json.JSONObject.<init>(JSONObject.java:173)
10-09 14:58:58.156 16791 16811 W System.err: 	at com.perflyst.twire.activities.main.MyStreamsActivity.getVisualElements(MyStreamsActivity.java:61)
10-09 14:58:58.156 16791 16811 W System.err: 	at com.perflyst.twire.tasks.GetVisualElementsTask.doInBackground(GetVisualElementsTask.java:29)
10-09 14:58:58.156 16791 16811 W System.err: 	at com.perflyst.twire.tasks.GetVisualElementsTask.doInBackground(GetVisualElementsTask.java:11)
10-09 14:58:58.156 16791 16811 W System.err: 	at android.os.AsyncTask$2.call(AsyncTask.java:295)
10-09 14:58:58.156 16791 16811 W System.err: 	at java.util.concurrent.FutureTask.run(FutureTask.java:237)
10-09 14:58:58.156 16791 16811 W System.err: 	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1113)
10-09 14:58:58.156 16791 16811 W System.err: 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:588)
10-09 14:58:58.156 16791 16811 W System.err: 	at java.lang.Thread.run(Thread.java:818)
10-09 14:58:58.163 16791 16791 I GetVisualElementsTask: ADDING 0 VISUAL ELEMENTS
10-09 14:58:58.163 16791 16791 I         : Adding Top Streams: 0

Stream not playing - "stream is no longer live"

Any stream I tried to play from Twire is failing to play, displaying "Stream is no longer live" message, while this isn't true and can be played alsewhere.

Here are some adb logs if it can help, cleaned out for some parts:

04-04 23:28:11.522 30177 30177 I Timeline: Timeline: Activity_launch_request id:com.perflyst.twire time:731112887
04-04 23:28:11.523   927  3300 I ActivityManager: START u0 {cmp=com.perflyst.twire/.activities.stream.LiveStreamActivity (has extras)} from uid 10441 on display 0
04-04 23:28:11.592 30177 30177 D Settings: Saving Current Progress: 0
04-04 23:28:11.858 30177 30217 D ChatManager: Trying to start chat #channel for user porkepix
04-04 23:28:11.860 30177 30177 D LiveStreamActivity: Current orientation: 1
04-04 23:28:11.860 30177 30177 D StreamFragment: Showing navigation
04-04 23:28:11.916 30177 30177 D StreamFragment: WindowFocusChanged to true - isLandscape false
04-04 23:28:11.916 30177 30177 D StreamFragment: Showing navigation
04-04 23:28:11.919   927   987 I ActivityManager: Displayed com.perflyst.twire/.activities.stream.LiveStreamActivity: +376ms
04-04 23:28:11.919   927   987 I Timeline: Timeline: Activity_windows_visible id: ActivityRecord{8d80429 u0 com.perflyst.twire/.activities.stream.LiveStreamActivity t551} time:731113284
04-04 23:28:11.933 30177 30284 D ACCESS_TOKEN_STRING: {"adblock":false,"authorization":{"forbidden":false,"reason":""},"blackout_enabled":false,"channel":"channel","channel_id":71852533,"chansub":{"restricted_bitrates":["archives"],"view_until":1924905600},"ci_gb":false,"geoblock_reason":"","device_id":null,"expires":1554414390,"game":"League of Legends","hide_ads":false,"https_required":false,"mature":false,"partner":false,"platform":null,"player_type":null,"private":{"allowed_to_view":true},"privileged":false,"server_ads":true,"show_ads":true,"subscriber":false,"turbo":false,"user_id":null,"user_ip":"","version":2}
04-04 23:28:11.933 30177 30284 D GetLiveStreamURL: HSL Playlist URL: http://usher.twitch.tv/api/channel/hls/channel.m3u8?player=twitchweb&&token={"adblock":false,"authorization":{"forbidden":false,"reason":""},"blackout_enabled":false,"channel":"channel","channel_id":71852533,"chansub":{"restricted_bitrates":["archives"],"view_until":1924905600},"ci_gb":false,"geoblock_reason":"","device_id":null,"expires":1554414390,"","hide_ads":false,"https_required":false,"mature":false,"partner":false,"platform":null,"player_type":null,"private":{"allowed_to_view":true},"privileged":false,"server_ads":true,"show_ads":true,"subscriber":false,"turbo":false,"user_id":null,"user_ip":"","version":2}&sig=&allow_audio_only=true&allow_source=true&type=any&p=1
04-04 23:28:11.945 30177 30283 V URL TO JSON STRING: https://api.twitch.tv/api/channels/channel/panels did not successfully get read
04-04 23:28:11.945 30177 30283 V URL TO JSON STRING: Result of reading - []
04-04 23:28:11.962 30177 30177 I Timeline: Timeline: Activity_idle id: android.os.BinderProxy@71ee271 time:731113328
04-04 23:28:12.086 30177 30177 D StreamFragment: Fetching viewers
04-04 23:28:12.244 30177 30177 D ViewRootImpl: changeCanvasOpacity: opaque=true
04-04 23:28:12.443   927  3826 I MediaFocusControl:  AudioFocus  requestAudioFocus() from android.media.AudioManager@7b54914 req=1flags=0x0
04-04 23:28:12.445 30177 30177 E ExtMediaPlayer-JNI: env->IsInstanceOf fails
04-04 23:28:12.445 30177 30177 E MediaPlayer-JNI: JNIMediaPlayerFactory: bIsQCMediaPlayerPresent 0
04-04 23:28:12.445 30177 30177 E ExtMediaPlayer-JNI: env->IsInstanceOf fails
04-04 23:28:12.445 30177 30177 E MediaPlayer-JNI: JNIMediaPlayerFactory: bIsQCMediaPlayerPresent 0
04-04 23:28:12.446 30177 30177 W MediaPlayer: Couldn't open file on client side, trying server side
04-04 23:28:12.448 11901 30772 D NuPlayer: onSetVideoSurface(0x9e165f00, no video decoder)
04-04 23:28:12.448 11901 12298 D NuPlayerDriver: reset(0xab219840)
04-04 23:28:12.448 11901 12298 D NuPlayerDriver: notifyListener_l(0xab219840), (1, 0, 0)
04-04 23:28:12.449 11901 12298 D NuPlayerDriver: notifyListener_l(0xab219840), (8, 0, 0)
04-04 23:28:12.449 11901 30772 W AMessage: failed to post message as target looper for handler 0 is gone.
04-04 23:28:12.449 11901 30773 I LiveSession: onConnect http://<suppressed>
04-04 23:28:12.451 11901 30772 D NuPlayerDriver: notifyResetComplete(0xab219840)
04-04 23:28:12.451 11901 11901 D NuPlayerDriver: reset(0xab219840)
04-04 23:28:12.452   927  3809 I MediaFocusControl:  AudioFocus  abandonAudioFocus() from android.media.AudioManager@7b54914
04-04 23:28:12.452   927  3320 I MediaFocusControl:  AudioFocus  requestAudioFocus() from android.media.AudioManager@7b54914 req=1flags=0x0
04-04 23:28:12.453 30177 30177 E ExtMediaPlayer-JNI: env->IsInstanceOf fails
04-04 23:28:12.453 30177 30177 E MediaPlayer-JNI: JNIMediaPlayerFactory: bIsQCMediaPlayerPresent 0
04-04 23:28:12.453 30177 30177 E ExtMediaPlayer-JNI: env->IsInstanceOf fails
04-04 23:28:12.453 30177 30177 E MediaPlayer-JNI: JNIMediaPlayerFactory: bIsQCMediaPlayerPresent 0
04-04 23:28:12.454 30177 30177 W MediaPlayer: Couldn't open file on client side, trying server side
04-04 23:28:12.455 11901 30775 D NuPlayer: onSetVideoSurface(0xa68dd000, no video decoder)
04-04 23:28:12.456 11901 30776 I LiveSession: onConnect http://<suppressed>
04-04 23:28:12.457 30177 30177 D StreamFragment: Starting Stream With a quality on auto for channel
04-04 23:28:12.458 30177 30177 D StreamFragment: URLS: [auto, medium, audio_only, low, chunked, high]
04-04 23:28:12.460 30177 30188 D MediaHTTPConnection: filterOutInternalHeaders: key=User-Agent, val= SonyD5803 Build/23.5.A.1.291 stagefright/1.2 (Linux;Android 6.0.1)
04-04 23:28:12.460 30177 30188 D MediaHTTPConnection: filterOutInternalHeaders: key=x-wap-profile, val= http://uaprof.sonymobile.com/D5803R2331.xml
04-04 23:28:12.461 30177 30189 D MediaHTTPConnection: proxy null port 0
04-04 23:28:12.464 30177 30177 D ChatFragment: Bttv Emotes loaded: 102
04-04 23:28:12.751 30177 30678 D MediaHTTPConnection: proxy null port 0
04-04 23:28:13.032 30177 30217 D ChatManager: <:tmi.twitch.tv 001 porkepix :Welcome, GLHF!
04-04 23:28:13.032 30177 30217 D ChatManager: <:tmi.twitch.tv 002 porkepix :Your host is tmi.twitch.tv
04-04 23:28:13.032 30177 30217 D ChatManager: <:tmi.twitch.tv 003 porkepix :This server is rather new
04-04 23:28:13.032 30177 30217 D ChatManager: <:tmi.twitch.tv 004 porkepix :-
04-04 23:28:13.033 30177 30217 D ChatManager: Connected >> porkepix ~ irc.twitch.tv
04-04 23:28:13.035 30177 30177 D ChatFragment: Chat connected
04-04 23:28:13.041 30177 30217 D ChatManager: <:tmi.twitch.tv 375 porkepix :-
04-04 23:28:13.041 30177 30217 D ChatManager: <:tmi.twitch.tv 372 porkepix :You are in a maze of twisty passages, all alike.
04-04 23:28:13.041 30177 30217 D ChatManager: <:tmi.twitch.tv 376 porkepix :>
04-04 23:28:13.078 11901 30776 E LiveSession: unable to fetch master playlist http://<suppressed>.
04-04 23:28:13.078 11901 30775 D NuPlayerDriver: notifyListener_l(0xac877780), (100, 1, -1004)
04-04 23:28:13.079 30177 30188 E MediaPlayer: error (1, -1004)
04-04 23:28:13.087 30177 30177 E MediaPlayer: Error (1,-1004)
04-04 23:28:13.087 30177 30177 D VideoView: Error: 1,-1004
04-04 23:28:13.087 30177 30177 E StreamFragment: Something went wrong playing the stream for channel - What: 1 - Extra: -1004
04-04 23:28:13.216 30177 30217 D ChatManager: <:tmi.twitch.tv CAP * ACK :twitch.tv/tags twitch.tv/commands
04-04 23:28:13.410 30177 30217 D ChatManager: <:[email protected] JOIN #channel
04-04 23:28:13.414 30177 30217 D ChatManager: <:porkepix.tmi.twitch.tv 353 porkepix = #channel :porkepix
04-04 23:28:13.414 30177 30217 D ChatManager: <:porkepix.tmi.twitch.tv 366 porkepix #channel :End of /NAMES list
04-04 23:28:13.415 30177 30217 D ChatManager: Failed to find roomstate pattern in: 
04-04 23:28:13.415 30177 30217 D ChatManager: @emote-only=0;followers-only=1;r9k=0;rituals=1;room-id=;slow=0;subs-only=0 :tmi.twitch.tv ROOMSTATE #channel
04-04 23:28:13.869 30177 30177 D ViewRootImpl: changeCanvasOpacity: opaque=false

[Feature Request] Chromecast Support

I know the original Pocket Plays support this, so I don't think it'll be too difficult to port. I enjoyed the way it was implemented in that it allowed you to pick the playback quality. Thanks in advance!

Wrong aspect ratio and strange interaction with side chat in landscape

  • Twire 1.9.8
  • phone: Xiaomi Mi 8 (Snapdragon 845, Adreno 630)
  • Android 9 (Lineage 16)
  • screen: 2248x1080 with a notch on top and round corners on the bottom

Default landscape view, the video is in wrong aspect ratio - 2.08:1 (same as the whole screen), has top & bottom black bars:

After pulling out the side chat, aspect ratio is still wrong:

Closing the side chat, aspect ratio still the same, but the video now fills full height, cutting off on the right:

Probably related to #56.

bug Stream no longer live

some streams don't work here is the network request in order to see more clearly:

http://usher.twitch.tv/api/channel/hls/manaprod.m3u8?player=twitchweb&&token={%22adblock%22:false,%22authorization%22:{%22forbidden%22:false,%22reason%22:%22%22},%22blackout_enabled%22:false,%22channel%22:%22manaprod%22,%22channel_id%22:58737711,%22chansub%22:{%22restricted_bitrates%22:[],%22view_until%22:1924905600},%22ci_gb%22:false,%22geoblock_reason%22:%22%22,%22device_id%22:null,%22expires%22:1561646124,%22game%22:%22Might%20u0026%20Magic:%20Elemental%20Guardians%22,%22hide_ads%22:false,%22https_required%22:false,%22mature%22:false,%22partner%22:false,%22platform%22:null,%22player_type%22:null,%22private%22:{%22allowed_to_view%22:true},%22privileged%22:false,%22server_ads%22:true,%22show_ads%22:true,%22subscriber%22:false,%22turbo%22:false,%22user_id%22:null,%22user_ip%22:%22109.14.159.137%22,%22version%22:2}&sig=924dde3686ada62a4f5ec1d0f7da28a800689a52&allow_audio_only=true&allow_source=true&type=any&p=1

here is the url of a stream that works:

http://video-weaver.cdg02.hls.ttvnw.net/v1/playlist/CssDvwW_iQ7lJNncXbluXd_RgFKe191DtDZQ7rZYcnK2NBL9ypMHpEiWzyeZB4hc4ewnx2RVuww7sGZ79JP756RljA6wSi4svPOiDZibE4P9KnPYirBVrnWUS7HAvv9RATfTRMQKVeEqHKv_-MYdqzQCMKOYAUfTlDjmvbvRMEArcQGY6LIPoSAe47kDNdsgTx29FhUNOgwAsZX-YyYRO5a017rZeqVoWDmwbg8wzmzRB0wbIbkNioWNM3cIjTS9ELUTa1-rLceYtz3u9JMbdhUH9mAL6mjualgsjN0i3TRaiD4ggRVeUl85GXlzAk-kYW1w5M_QnUJln-BRIk08ng5sXBn6Rk9liwjXNjWk-WARHCHypP_5BPVauKF_JBQLZFrGZC7vANHHc4O6FKOr1WGGFa3vya0bP6CMYpxLEN7pTF428uF6ddGLcuApirsEEEHmqu8cN-FpcOAtqjMDK2iO5JuTGe6SD7fLY83fnxz5eo3E0BjPm5-QPH4-PgKjF6tOtiDTkk10LsEDYlXZGV9AxJhY3RF34o365xrK4FDJlM_ExyeTfrDvPteT3M6Tt4FhdbfZ_JlfZjniK6wQYhXkssmbNtr0UV8RBaRTEhA3AjN_cqCunsdc7AXCDElSGgy7AiE9cu5QBmucmSs.m3u8

Class not found when unmarshalling: com.perflyst.twire.model.ChannelInfo

04-30 18:15:43.443 992-1835/? E/Parcel: Class not found when unmarshalling: com.perflyst.twire.model.ChannelInfo java.lang.ClassNotFoundException: com.perflyst.twire.model.ChannelInfo at java.lang.Class.classForName(Native Method) at java.lang.Class.forName(Class.java:308) at java.lang.Class.forName(Class.java:272) at android.os.Parcel.readParcelableCreator(Parcel.java:2275) at android.os.Parcel.readParcelable(Parcel.java:2239) at android.os.Parcel.readValue(Parcel.java:2146) at android.os.Parcel.readArrayMapInternal(Parcel.java:2479) at android.os.BaseBundle.unparcel(BaseBundle.java:221) at android.os.BaseBundle.getString(BaseBundle.java:918) at android.content.Intent.getStringExtra(Intent.java:4960) at com.android.server.am.ActivityStackSupervisor.startActivityLocked(ActivityStackSupervisor.java:1462) at com.android.server.am.ActivityStackSupervisor.startActivityMayWait(ActivityStackSupervisor.java:1046) at com.android.server.am.ActivityManagerService.startActivityAsUser(ActivityManagerService.java:4578) at com.android.server.am.ActivityManagerService.startActivity(ActivityManagerService.java:4477) at android.app.ActivityManagerNative.onTransact(ActivityManagerNative.java:144) at com.android.server.am.ActivityManagerService.onTransact(ActivityManagerService.java:3010) at android.os.Binder.execTransact(Binder.java:446) Caused by: java.lang.ClassNotFoundException: Didn't find class "com.perflyst.twire.model.ChannelInfo" on path: DexPathList[[directory "."],nativeLibraryDirectories=[/vendor/lib, /system/lib]] at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:56) at java.lang.ClassLoader.loadClass(ClassLoader.java:511) at java.lang.ClassLoader.loadClass(ClassLoader.java:469) at java.lang.Class.classForName(Native Method)  at java.lang.Class.forName(Class.java:308)  at java.lang.Class.forName(Class.java:272)  at android.os.Parcel.readParcelableCreator(Parcel.java:2275)  at android.os.Parcel.readParcelable(Parcel.java:2239)  at android.os.Parcel.readValue(Parcel.java:2146)  at android.os.Parcel.readArrayMapInternal(Parcel.java:2479)  at android.os.BaseBundle.unparcel(BaseBundle.java:221)  at android.os.BaseBundle.getString(BaseBundle.java:918)  at android.content.Intent.getStringExtra(Intent.java:4960)  at com.android.server.am.ActivityStackSupervisor.startActivityLocked(ActivityStackSupervisor.java:1462)  at com.android.server.am.ActivityStackSupervisor.startActivityMayWait(ActivityStackSupervisor.java:1046)  at com.android.server.am.ActivityManagerService.startActivityAsUser(ActivityManagerService.java:4578)  at com.android.server.am.ActivityManagerService.startActivity(ActivityManagerService.java:4477)  at android.app.ActivityManagerNative.onTransact(ActivityManagerNative.java:144)  at com.android.server.am.ActivityManagerService.onTransact(ActivityManagerService.java:3010)  at android.os.Binder.execTransact(Binder.java:446)  Suppressed: java.lang.ClassNotFoundException: com.perflyst.twire.model.ChannelInfo at java.lang.Class.classForName(Native Method) at java.lang.BootClassLoader.findClass(ClassLoader.java:781) at java.lang.BootClassLoader.loadClass(ClassLoader.java:841) at java.lang.ClassLoader.loadClass(ClassLoader.java:504) ... 18 more Caused by: java.lang.NoClassDefFoundError: Class not found using the boot class loader; no stack available 04-30 18:15:43.603 10166-10166/com.perflyst.twire.debug E/SensorManager: sensor or listener is null

Twire remember user even when logged out

I could notice it through adb logcat for another issue: after log in one time on Twire, and then log out, it seems to remember user information for the ChatManager component as I could still see my nickname in the logs.

ads preroll

twicht changed api i get preroll (videos) ads before starts stream

System UI covers chat in landscape mode when compose box is tapped

With a physical keyboard, the navigation bar has no business showing up when the chat box is focused. It covers the send button, among other things, making the lack of #12 more problematic.

However, the chat box seems to remain focused after tapping another UI element, even without intentionally focusing it at all, so it is still possible to type in chat in landscape without this issue occurring.

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.