stefanmedack / ccctv Goto Github PK
View Code? Open in Web Editor NEWAn Android TV App for the media API of the Chaos Computer Club e.V. (CCC) written in Kotlin.
License: Apache License 2.0
An Android TV App for the media API of the Chaos Computer Club e.V. (CCC) written in Kotlin.
License: Apache License 2.0
Each event offers a variety of recordings and for newer conferences also a multitude of different translations within different recordings. The MimeType (MP4, webm, ...) can be disregarded. What I think could be improved/done within this story:
Hi,
I notice the file "ExoPlayerActivity.kt" overrides "onVisibleBehindCanceled", which is deprecated in Android O (link). As the official document says, "onVisibleBehindCanceled" cannot get chance to execute since Android O and will be removed in the future release.
So you may prevent putting some important operations in it.
Hope the information can help you. :)
Some videos are not displayed correctly on a Philips 40PUK6400/12, sound is played without any problems.
I have tested watching videos of the different congresses. It seems to depend on the year the video was recorded.
Videos I have tested:
I have also recorded a video of distorted playback. (YouTube)
The current layout to browse for talks somewhat hinders discoverability, since there are only ever 3 shown on the screen at one time, wasting a lot of space and requiring a lot of scrolling.
I would like to propose splitting the View into two, one which is an overview over the available congresses, the other then being a 'detail' view, which then contains the videos arranged in a 2D grid, so that more can be shown on the screen at any time and browsing is faster since pressing down navigates four talks farther than just one when pressing right in the current way.
I don't know if the project is open to outside contributions, but if you like the idea, I could try to implement it in coordination with you.
The grouping of conferences on the main screen is pretty basic at the moment. It differs between "Congress", "Conferences", "Events", "Broadcast" and "Blinkenlights".
Improving the grouping into finer granulated conferenceGroups is not trivial, due to inconsistent tagging of the conferences.
For a better understanding of structure and quality of the conference data, you can check out https://api.media.ccc.de/public/conferences
simply add a travis.yml file to the repository to trigger automatic test and lint checks.
See https://docs.travis-ci.com/user/languages/android/
It would be really great if you could publish this App to F-Droid.
https://gitlab.com/fdroid/rfp/issues/new?issue
Hi,
Requests from 'okhttp' to the public JSON API of media.ccc.de make up 98% of the total traffic now and it's affecting performance.
Maybe some of those requests can be avoided, seems odd that we output several 100gb of JSON each day. However I'm not sure where those requests are coming from.
As first countermeasure I want to rate limit the 'okhttp' user agent. If I understand correctly cccTV currently uses that agent? Can you set an app specific agent, so we can tell the apps apart?
If a video has been watched for a minimum amount of time, maybe the user wants to continue watching this video later. similar to #17 , we could save playback positions in the local database. The page for browsing bookmarked events can also be enhanced to show not-finished videos (and delete them from this list).
Add proguard to shrink and obfuscate app code.
https://developer.android.com/studio/build/shrink-code.html
At the very bottom of a detailed event, you can see the list of speakers. They are clickable already, but do not lead to a page. With the help of the search API, we could offer a page showing all presentations of one speaker.
On https://media.ccc.de/ you can browse 3 main categories: "All Events", "Popular" and "Recent". The conference list displayed on the main page currently covers what you can find on "All Events".
I propose to also add "Popular" and "Recent". Best approach would be to show them like the streaming section with a scrollable list of events.
However, the API of media.ccc.de does not offer this categories. Therefore it would also be important to load all events into the local room database and write queries to extract "Popular" and "Recent". As a little bonus, we could also come up with a "Trending" category. Every category should display a limited amount of events (~20).
Screensaver will overlay the Video/Stream. On Livestreams the audio will continue in the background, but Screen turns to Android TV Screensaver (in my case Backdrop), Videos from the Mediathek are paused, on Nvidia ShieldTV. Version 2.0.0-RC4_TV
On Android TV 9 (Mibox 4/S) there is no list of videos after selecting a category. Simply hangs while showing an enlarged background image, no further progress.
The DetailFragment already has a button (commented out) implemented to bookmark a talk for later viewing. Now with a real database in the background, it would be fairly simple to implement this:
After update of Nvidia Shield to Android 8, no content is visible in the Mediathek, only the Events.
The Live streaming, at this time from Podstock works.
Tested with v2.3 and v3.0.
To answer your question about search :)
Access to the search function was implemented last month: voc/voctoweb@784272e
I don't think anybody uses it yet, so let me know how it goes.
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.