kiall / android-tvheadend Goto Github PK
View Code? Open in Web Editor NEWAndroid + TV Headend + TV Input Framework
License: Apache License 2.0
Android + TV Headend + TV Input Framework
License: Apache License 2.0
I'm not seeing any recommendations appear for any tvheadend channels. I've confirmed that the EPG data is populated.
I think this may be caused by a lack of show images in the EPG data, as the issue to get recommendations working in the first place mentioned it.
For some reason tonight I keep loosing EPG data from some of my channels, usually all from a single mux.
I have force closed the TVHeadend and Live Channel apps and the problem persists.
I reran the setup for TVHeadend app, and the data started showing from the first mux\channels I was having issues with, but at the same time I lost EPG for a different mux\channels.
rerunning setup again made no difference..
My EPG data is OTA data pulled from the muxes.
All Channels have EPG data on the tvheadend server.
Channel Icons are working for the problem channels.
No errors on the tvheadend server.
Let me know if I can do anything to help diagnose.
Some devices supported automatic refresh rate switching, identify how this app can/should interact with this, and implement it.
nVidia Shield is one such device.
Watching a channel with Codec: A52 Audio (aka AC3) (a52 ) does not output any audio.
Channels with Codec: MPEG Audio layer 1/2 (mpga) are running fine.
Hardware:
Nvidia Shield 16GB
Player VLC
Edit: I will deliver some logs, but connecting with ADB to Nvidia Shield makes problems. Working on it!
Currently there is no option to change username\password once your account is set up, selecting add account you are just told you can only have one account, and selecting the existing account doesn't give a change to modify username\password.
Notify when wifi/network not connected and display icon
Reported on G+ here: https://plus.google.com/107212082209541237446/posts/jTshBNxgoDg
Anamorphic broadcasts (typically 1440x1080 and 720x576 in Australia) need to be scaled horizontally for display. I'm not sure if this is the right way but it works for me. Hardware/software scaling may be dependent on the hardware the app runs on.
--- app/src/main/java/ie/macinnes/tvheadend/tvinput/DemoPlayerSession.java (revision )
+++ app/src/main/java/ie/macinnes/tvheadend/tvinput/DemoPlayerSession.java (revision )
@@ -204,7 +204,7 @@
TvTrackInfo.Builder builder = new TvTrackInfo.Builder(trackType, trackId);
if (trackType == DemoPlayer.TYPE_VIDEO) {
- builder.setVideoWidth(format.width);
+ builder.setVideoWidth(Math.round(format.width * format.pixelWidthHeightRatio));
builder.setVideoHeight(format.height);
} else if (trackType == DemoPlayer.TYPE_AUDIO) {
builder.setAudioChannelCount(format.channelCount);
Tried to run the app on Android 6 sony zd9 the program guide is crashing instantly when the app configures everything. As well on every app start in a loop.
This is the TVH version running on my synology NAS HTS Tvheadend 4.1.2247. Tell me please how to provide logs from AndroidTV.
01-07 14:50:01.277 25153 25153 E ie.macinnes.tvheadend.player.EventLogger: playerFailed [119.49]
01-07 14:50:01.277 25153 25153 E ie.macinnes.tvheadend.player.EventLogger: com.google.android.exoplayer2.ExoPlaybackException
01-07 14:50:01.277 25153 25153 E ie.macinnes.tvheadend.player.EventLogger: at com.google.android.exoplayer2.ExoPlayerImplInternal.enableRenderers(ExoPlayerImplInternal.java:1372)
01-07 14:50:01.277 25153 25153 E ie.macinnes.tvheadend.player.EventLogger: at com.google.android.exoplayer2.ExoPlayerImplInternal.setPlayingPeriodHolder(ExoPlayerImplInternal.java:1344)
01-07 14:50:01.277 25153 25153 E ie.macinnes.tvheadend.player.EventLogger: at com.google.android.exoplayer2.ExoPlayerImplInternal.handlePeriodPrepared(ExoPlayerImplInternal.java:1274)
01-07 14:50:01.277 25153 25153 E ie.macinnes.tvheadend.player.EventLogger: at com.google.android.exoplayer2.ExoPlayerImplInternal.handleMessage(ExoPlayerImplInternal.java:331)
01-07 14:50:01.277 25153 25153 E ie.macinnes.tvheadend.player.EventLogger: at android.os.Handler.dispatchMessage(Handler.java:100)
01-07 14:50:01.277 25153 25153 E ie.macinnes.tvheadend.player.EventLogger: at android.os.Looper.loop(Looper.java:148)
01-07 14:50:01.277 25153 25153 E ie.macinnes.tvheadend.player.EventLogger: at android.os.HandlerThread.run(HandlerThread.java:61)
01-07 14:50:01.277 25153 25153 E ie.macinnes.tvheadend.player.EventLogger: at com.google.android.exoplayer2.util.PriorityHandlerThread.run(PriorityHandlerThread.java:40)
01-07 14:50:01.277 25153 25153 E ie.macinnes.tvheadend.player.EventLogger: Caused by: java.lang.IllegalStateException: Multiple renderer media clocks enabled.
01-07 14:50:01.277 25153 25153 E ie.macinnes.tvheadend.player.EventLogger: ... 8 more
Build + Merge the base HTSP library
I just found the TVH client for Live Channels (AWESOME!). However, is there a proper way to stop playback? I tried the Home button (the video continues to play in the background), the Back button (screen goes black for a second and playback continues)...pretty much everything...and can't find a way to stop the video. Am I missing something or is this a bug?
Is there any other info I can provide?
John
Hello !
Thanks for your works!
Do you plan to support Chromecast please?
I have a tvheadend server on a Raspberry Pi2 and I searching a solution to cast tvheadend streams to my chromecast device.
Best regards,
Reported on G+ @ https://plus.google.com/u/0/103039730249812922520/posts/gRCzSJiYGb8
When using the LibVLC player, channels stream for about 10 seconds with some stuttering and then freeze completely. Switching to a different channel does not resolve the issue, however changing from LibVLC to 'Media Player' fixes the freeze and the stuttering (ExoPlayer won't even start, just shows the loading spinner)
Logs from tvheadend (below) show that the client unsubscribes at the same time as the freeze:
2016-11-01 10:35:53.709 subscription: 0EE3: "HTTP" subscribing on channel "BBC One", weight: 100, adapter: "Silicon Labs Si2168 : DVB-T #0", network: "UK Freeview", mux: "545.833MHz", service: "BBC ONE HD", profile="pass", hostname="172.16.2.170", username="room", client="android-tvheadend/0.2.50-SNAPSHOT (Linux;Android 5.1.1) VLC/3.0.0-git Vetinari LibVLC/3.0.0-git"
2016-11-01 10:36:19.214 subscription: 0EE3: "HTTP" unsubscribing from "BBC One", hostname="172.16.2.170", username="room", client="android-tvheadend/0.2.50-SNAPSHOT (Linux;Android 5.1.1) VLC/3.0.0-git Vetinari LibVLC/3.0.0-git"
Android logs, freeze happened at 10:47:53
11-01 10:47:28.921 15181-21291/ie.macinnes.tvheadend I/VLC: [ab24dbb4] mpeg4audio packetizer: AAC channels: 2 samplerate: 48000
11-01 10:47:28.942 15181-21291/ie.macinnes.tvheadend I/AudioTrack: set(): 0xab1ca390 streamType -1, sampleRate 48000, format 0x1, channelMask 0x3, frameCount 8192, flags #0, notificationFrames 0, sessionId 0, transferType 3
11-01 10:47:30.209 15181-21323/ie.macinnes.tvheadend I/OMXClient: Using client-side OMX mux.
11-01 10:47:30.234 15181-21323/ie.macinnes.tvheadend E/ACodec: [OMX.amlogic.avc.decoder.awesome] storeMetaDataInBuffers failed w/ err -2147483648
11-01 10:47:30.255 15181-21323/ie.macinnes.tvheadend W/ACodec: [OMX.amlogic.avc.decoder.awesome] setting nBufferCountActual to 8 failed: -1010
11-01 10:47:30.255 15181-21323/ie.macinnes.tvheadend W/ACodec: [OMX.amlogic.avc.decoder.awesome] setting nBufferCountActual to 7 failed: -1010
11-01 10:47:30.537 15181-21293/ie.macinnes.tvheadend W/AudioTrack: releaseBuffer() track 0xab1ca390 disabled due to previous underrun, restarting
11-01 10:47:53.343 15181-21290/ie.macinnes.tvheadend W/art: Native thread exiting without having called DetachCurrentThread (maybe it's going to use a pthread_key_create destructor?): Thread[34,tid=21290,Native,Thread*=0xab1c1350,peer=0x22e903a0,"mediacodec_jni"]
11-01 10:47:53.345 15181-21312/ie.macinnes.tvheadend E/NdkMediaCodec: sf error code: -38
11-01 10:47:53.441 15181-21312/ie.macinnes.tvheadend W/art: Native thread exiting without having called DetachCurrentThread (maybe it's going to use a pthread_key_create destructor?): Thread[37,tid=21312,Native,Thread*=0xab1686c0,peer=0x22e9f340,"VlcObject"]
11-01 10:47:53.583 15181-21291/ie.macinnes.tvheadend W/art: Native thread exiting without having called DetachCurrentThread (maybe it's going to use a pthread_key_create destructor?): Thread[31,tid=21291,Native,Thread*=0xab23b3a0,peer=0x22e2c0a0,"android_audiotrack"]
11-01 10:47:53.594 15181-21293/ie.macinnes.tvheadend W/art: Native thread exiting without having called DetachCurrentThread (maybe it's going to use a pthread_key_create destructor?): Thread[33,tid=21293,Native,Thread*=0xab1f1c80,peer=0x22e713a0,"android_audiotrack"]
11-01 10:47:53.594 15181-21278/ie.macinnes.tvheadend I/AudioTrack: ~AudioTrack, releasing session id from 15181 on behalf of 15181 mState/1
11-01 10:47:53.607 15181-21278/ie.macinnes.tvheadend W/art: Native thread exiting without having called DetachCurrentThread (maybe it's going to use a pthread_key_create destructor?): Thread[30,tid=21278,Native,Thread*=0xab210c68,peer=0x22e03100,"VlcObject"]
Block on ExoPlayer support:
Use HTSP to handle video Playback
Hi,
Is it possible to use it as standalone IPTV client? I have paid m3u8 list with m3u streems and xml epg. I would like to use it with Google Live Channels.
Thanks.
Discard S0 E0 metadata.
Reported on G+ here: https://plus.google.com/103039730249812922520/posts/4qyMANvL59d
Migrate to HTSP instead of HTTP/JSON APIs.
When I install the app and do the initial sync everything works fine, and I get a full EPG for 24 hours.
After this initial successful load the EPG no longer updates, and the EPG runs out after 24 hours.
RE-running the setup wizard does not help. Removing and re-adding the Tvheadend account does not help. Uninstalling the application and re-installing from scratch does work, and I am back to the beginning.
I attach a log file which contains what looks like an EPG sync in progress, but actually does not do anything.
androidtv_tvheadend.log.zip
If you need anything else dont hesitate to let me know.
Hardware: Nvidia Shield Android TV
Hi Kiall.
Are there any plans to make this little piece of gold working on an Amazon Fire TV?
Best,
H.
Import channeltags or contenttype (genre) from Tvheadend as TIF channelgroups,
Reported here: https://plus.google.com/103039730249812922520/posts/NranWJn3uuJ
Hi,
i love this app. now my sony androidtv works really well. This app is awesome, great work guys.
But i see on the right side of the SD Picture a small green or violett beam. In HD Channels the beam disappears and the picture is absolutly great.
I think i know this behaviour from emby with my earlier firetv. there it was an issue with vlc. So i tried to change the player, but the other two players not working here. No Sound and Picture with the exo player and the media player raises an error.
I think that is a bug, what do you think?
kind regards
tom
Support for choosing the audio track
Some users deploy TVHeadend with a prefix before the API, e.g. http://foo/tvh/api vs http://foo:9981/api. We should support this..
Implement HTSP Account Validation, serves as the initial smoke test for the Library implemented in #53.
During the account addition flow, connect to and validate HTSP creds. Do not yet use HTSP for any other functionality, like EPG and Video.
Reported on G+ here: https://plus.google.com/103039730249812922520/posts/9XHUA8XezBn
Support Recording
Blocked on ExoPlayer support:
google/ExoPlayer#179
google/ExoPlayer#2219
google/ExoPlayer#1781
See #36
Support for choosing the stream profile to use
When I switch from an SD service, to an HD service, I get sound, but no picture.
The picture remains fixed to the last frame from the SD service.
logcat.txt
Reported on G+ here https://plus.google.com/+ManuelRodriguez1981/posts/4kZqKguajBX
Support Timeshifting
e.g. for AC3 audio
Reported on G+ https://plus.google.com/105648390627427537606/posts/MVbt7a4ip9o
Now that we are able to do pass through, would it be possible to look into closed caption support?
See #77 for logs and details
When updating the EPG, the following error repeats in the logs:
11-01 10:42:49.061 15181-16513/ie.macinnes.tvheadend E/ie.macinnes.htsp.tasks.GetFileTask: Error handling a GetFileTask message
11-01 10:42:49.061 15181-16513/ie.macinnes.tvheadend W/ie.macinnes.tvheadend.sync.EpgSyncTask: Failed to fetch logo for content://android.media.tv/channel/203
11-01 10:42:49.068 15181-16513/ie.macinnes.tvheadend E/ie.macinnes.htsp.tasks.GetFileTask: Error handling a GetFileTask message
11-01 10:42:49.068 15181-16513/ie.macinnes.tvheadend W/ie.macinnes.tvheadend.sync.EpgSyncTask: Failed to fetch logo for content://android.media.tv/channel/205
This appears to repeat for each tvheadend channel. Channel logos show as normal, so I'm guessing this is related to the show logos?
EDIT: These are "correct", in that TVH believes there is a logo, but it doesn't actually exist. We should make this cleaner, and maybe stat the logo before attempting to open it.
Hi,
was sorting of channels changed? Because now it doesn't sort them by channel number or by name. They are sorted in not normal pattern, something random.
I tried sorting by number and name but it doesn't make a difference.
Version is: v0.2.54-3-g27b299e
Show all available streaminformation (aspectratio, resolution, audio, etc. when available) in Live Channels.
Reported on G+ here https://plus.google.com/103039730249812922520/posts/LK6RVHqpsmX
(minor issue for the sake of completeness - might also be a limitation of ExoPlayer)
Change of aspect ration during playback is not detected, i.e. when watching a 16:9 programme and a subsequent broadcast is in 4:3, the picture will get stretched and the AR indicator on the info bar still says "16:9". I guess it's the same the other way around (4:3 -> 16:9). Switching channels or stopping and restarting playback will fix this, so in general, aspect ratio detection is working fine.
Hi Kiall,
no idea whether this is helpful, search for "AndroidRuntime", there are some fatal error.
01-20 11:11:59.551 21958-21958/? I/art: Late-enabling -Xcheck:jni
01-20 11:11:59.567 21958-21964/? E/art: Failed sending reply to debugger: Broken pipe
01-20 11:11:59.567 21958-21964/? I/art: Debugger is no longer active
01-20 11:11:59.597 21958-21958/? I/ie.macinnes.tvheadend.migrate.MigrateUtils: Migrate from 79 to 79
01-20 11:11:59.675 21958-21976/? I/OpenGLRenderer: Initialized EGL, version 1.4
01-20 11:12:21.001 21958-21958/ie.macinnes.tvheadend I/ie.macinnes.tvheadend.sync.EpgSyncService: Starting EPG Sync Service
01-20 11:12:21.009 21958-22332/ie.macinnes.tvheadend I/ie.macinnes.htsp.Connection: Opening HTSP Connection
01-20 11:12:23.019 21958-22332/ie.macinnes.tvheadend I/ie.macinnes.htsp.Connection: HTSP Connected
01-20 11:12:23.034 21958-22332/ie.macinnes.tvheadend I/ie.macinnes.htsp.Connection: HTSP Ready
01-20 11:12:23.050 21958-22331/ie.macinnes.tvheadend I/ie.macinnes.tvheadend.sync.EpgSyncTask: Enabling Async Metadata. Last Update: 1484910715, EPG max time: 1484914343
01-20 11:12:52.702 21958-21964/ie.macinnes.tvheadend W/art: Suspending all threads took: 8.349ms
01-20 11:12:55.214 21958-22331/ie.macinnes.tvheadend I/ie.macinnes.tvheadend.sync.EpgSyncTask: Initial sync completed
01-20 11:12:55.218 21958-22331/ie.macinnes.tvheadend E/ie.macinnes.htsp.tasks.GetFileTask: Error handling a GetFileTask message
01-20 11:12:55.219 21958-22331/ie.macinnes.tvheadend W/ie.macinnes.tvheadend.sync.EpgSyncTask: Failed to fetch logo for content://android.media.tv/channel/2433. This usually means TVHeadend doesn't have a logo for this channel.
01-20 11:12:55.220 21958-22331/ie.macinnes.tvheadend E/ie.macinnes.htsp.tasks.GetFileTask: Error handling a GetFileTask message
01-20 11:12:55.225 21958-22331/ie.macinnes.tvheadend W/ie.macinnes.tvheadend.sync.EpgSyncTask: Failed to fetch logo for content://android.media.tv/channel/2442. This usually means TVHeadend doesn't have a logo for this channel.
01-20 11:12:55.236 21958-22331/ie.macinnes.tvheadend E/ie.macinnes.htsp.tasks.GetFileTask: Error handling a GetFileTask message
01-20 11:12:55.236 21958-22331/ie.macinnes.tvheadend W/ie.macinnes.tvheadend.sync.EpgSyncTask: Failed to fetch logo for content://android.media.tv/channel/2456. This usually means TVHeadend doesn't have a logo for this channel.
01-20 11:12:55.246 21958-22332/ie.macinnes.tvheadend E/ie.macinnes.htsp.Connection: Something failed - shutting down
java.nio.channels.ClosedChannelException
at java.nio.SocketChannelImpl.checkOpenConnected(SocketChannelImpl.java:418)
at java.nio.SocketChannelImpl.write(SocketChannelImpl.java:357)
at ie.macinnes.htsp.Connection.processWritableSelectionKey(Connection.java:456)
at ie.macinnes.htsp.Connection.run(Connection.java:153)
at java.lang.Thread.run(Thread.java:818)
01-20 11:12:55.246 21958-22332/ie.macinnes.tvheadend I/ie.macinnes.htsp.Connection: Connection already closed, ignoring close request
01-20 11:12:55.248 21958-21958/ie.macinnes.tvheadend I/ie.macinnes.tvheadend.sync.EpgSyncService: Starting EPG Sync Service
01-20 11:12:55.248 21958-22331/ie.macinnes.tvheadend E/AndroidRuntime: FATAL EXCEPTION: EpgSyncService Handler Thread
Process: ie.macinnes.tvheadend, PID: 21958
java.lang.NullPointerException: Attempt to invoke virtual method 'java.nio.channels.SelectionKey java.nio.channels.SocketChannel.register(java.nio.channels.Selector, int)' on a null object reference
at ie.macinnes.htsp.Connection.sendMessage(Connection.java:330)
at ie.macinnes.htsp.Connection.sendMessage(Connection.java:341)
at ie.macinnes.htsp.tasks.GetFileTask.sendFileRead(GetFileTask.java:152)
at ie.macinnes.htsp.tasks.GetFileTask.sendFileRead(GetFileTask.java:135)
at ie.macinnes.htsp.tasks.GetFileTask.onMessage(GetFileTask.java:101)
at ie.macinnes.htsp.Connection$3.run(Connection.java:437)
at android.os.Handler.handleCallback(Handler.java:742)
at android.os.Handler.dispatchMessage(Handler.java:97)
at android.os.Looper.loop(Looper.java:148)
at android.os.HandlerThread.run(HandlerThread.java:61)
01-20 11:12:55.261 21958-22839/ie.macinnes.tvheadend I/ie.macinnes.htsp.Connection: Opening HTSP Connection
01-20 11:12:57.266 21958-22839/ie.macinnes.tvheadend I/ie.macinnes.htsp.Connection: HTSP Connected
01-20 11:12:57.281 21958-22839/ie.macinnes.tvheadend I/ie.macinnes.htsp.Connection: HTSP Ready
01-20 11:12:57.974 21958-22837/ie.macinnes.tvheadend I/ie.macinnes.tvheadend.sync.EpgSyncTask: Enabling Async Metadata. Last Update: 1484910775, EPG max time: 1484953977
Why not use compile 'com.mcxiaoke.volley:library:1.0.19'
or something like that for the volley.jar?
Support multiple servers
Repored on G+ here https://plus.google.com/105543723922836246512/posts/ESMLELciCfA
Detect removal of account, then remove channels etc.
When the TVH account is removed, we need to ensure Channel and EPG etc content is also removed.
Use HTSP to sync EPG data, replacing out current HTTP based EPG sync
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.