dizquetv icon indicating copy to clipboard operation
dizquetv copied to clipboard

Suggestions for Future Direction

Open Browneye3001 opened this issue 3 years ago • 5 comments

Hey All,

Love the program, we find ourselves watching more of the 24 channels I have set up than actual free to air broadcast channels.

Coming from a background in Television systems engineering I thought I might put some ideas down for possible future directions. Use them, don't use them, doesn't matter, as I said I love how the program is working at the moment. I just thought I might chip in some concepts.

It might be wise to start splitting some of the functions up so as to facilitate some better flexability in the program.

So I'm thinking there should be separate areas for Channel Setup, Program Schedule Creation, Spot insertion, and ON-AIR. Explanations are: -

Channel Setup

  • Have an area where you can define the channels solely on their parameters.
  • In this area you can define the Channel Number, Channel Name, Channel Resolution, and FFMPEG parameters for the channel.
  • This way you can set up a channel to be SD, HD or 4K. The parameters can be tweaked individually to cater for the resolution needed, even just set it to direct play certain channels.

Program Schedule

  • In this area only program is scheduled.
  • You create the schedule that is not locked to a channel.
  • Time based scheduling.
  • Have the ability to flood a schedule if you don't care about start times.
  • Also have the ability to program a show or movie to start at a particular time. e.g. if you want to run Frasier at 1930 every weekday night you can.
  • In this schedule you can set break amount and times for a program. Have breaks or none at all.
  • When scheduling by time you have the ability to set time boundaries. e.g. Prime Time, Morning TV, Afternoons, Overnights. Kids Time.
  • When using the time boundaries, then schedule (auto or manually place) programs according to the boundary. e.g. don't schedule an R rated movie in Kids time. You could use the rating from the Plex DB as a posible flag for scheduling.
  • Have the ability to set a group of programs to roll around to various times during a set period. For example a movie channel might have a group of 20 movies that are placed at random times during the week however a movie might run on Sunday Night at 2030, but then run two days later in the afternoon, then two days later in the morning, then two days later overnight.
  • The schedule can be daily, weekly, or monthly.
  • Filler material can also be inserted from here for larger gaps in the schedule.
  • Partial schedules are allowed

Spot Insertion

  • In this section spots are added to the schedule.
  • Spots can be flooded through a schedule or placed individually as needed.
  • Start and Finish times of programs can be tweaked by adding more or less spots.
  • Programs can 'slide aorund in the schedule' to accomodate odd length spots.
  • An individual Spot can be flooded through a schedule (e.g. give me 90 spot placements in this weekly schedule)
  • A spot can be flooded through a schedule according to time zone. (e.g. only play this spot during Kids time).
  • A spot can be flagged to go in a certain position in the break, Start middle or End.
  • A spot can be flagged to only go in a station break (e.g. between programs).

ON-AIR

  • In this section the Schedule is assigned to the channel.
  • The playout of the channel happens in this area.
  • Channel playout is locked to TOD so schedules play at the right time.
  • The branding/bug is defined here.
  • You can define what happens at the end of a schedule (e.g. loop, autoload next Schedule, pause).
  • You could use a set of schedules that loop through on a channel.
  • You can loop partial schedules within a channel.
  • For partial Schedules you do redirects to other channels (this flag could be set in Program Schedule)
  • The Branding/Bug can change depending on the time of day (e.g. something like Nick at Night, or when a schedule redirects)
  • The EPG XML is generated here according to what is on the channel.
  • Offset channels can be setup here (e.g. use the one schedule but offset the start time of the schedule by x hours).

Theres lots more detail I could go into, but the main points are above. I'll edit this post if I think of any high level stuff that might be useful.

As I said, use them, don't use them, it doesn't matter to me. If I could code better than at a kindergarden level I might even attempt it myself.

Browneye3001 avatar Sep 21 '20 12:09 Browneye3001

I like this... a lot. I come from a radio broadcasting background and this makes sense to me. :+1:

I had been thinking about requesting time specific scheduling myself, browneye3001 beat me to the punch...

kwbisch avatar Sep 22 '20 03:09 kwbisch

Yeah, starting to separate the components out would be great at least.

If I ever teach myself how to code I might write do this myself.

Browneye3001 avatar Sep 22 '20 22:09 Browneye3001

A lot of us would like time-specific scheduling, program blocks, etc. Coming from Pseudo Channel which had that (yet also had a lot of flexibility), I'm missing it bigtime.

Many of the ideas specified here are not new, but they are stated well and some new ones are certainly sprinkled in, along with actual terminology (spots, bugs, etc.).

What you're asking is somewhat aligned with what Vex has stated elsewhere in his plans to split up the Channel Editor, but some of it is not.

One concern I have is that some of these ideas may get lost because they are grouped into this big Future Direction write-up. When it comes to coding, to ensure individual aspects get coded and promoted into builds (which will likely happen in different builds), they likely need to be separated into new requests. You may want to do that anyway for the aspects you care the most about to highlight them with more information and additional use cases (but don't delete this overall request).

Another concern I have is when there are only a few Devs, you typically have to pitch each idea to the Devs and get them invested in your idea. If the Devs are not interested, not invested or don't have a personal need/want for the request, it'll feel like an ominous homework assignment to the Devs (especially given the long multi-aspect write-up), rather than a hobbyist's fun project. Getting the Devs onboard with your ideas will forge an easier path to completion. Pitch, promote and build excitement around your ideas with the Devs and the dizqueTV community, but do it in bite-sized chunks if you can.

This is only advice from one user to another, and I'd like to see many of your ideas become a reality. Thank you for submitting the ideas, @Browneye3001. I appreciate how much thought and time you put into this write-up.

MoRBiD-MaNGLeR avatar Sep 23 '20 19:09 MoRBiD-MaNGLeR

@Browneye3001 this is a great list of suggestions! I also have some unique ideas for how to approach this problem space and am experimenting with them in my ErsatzTV project. If you have more suggestions, I would be very interested in discussing them.

jasongdove avatar Feb 09 '21 03:02 jasongdove

Hey @jasongdove, would love to chat. As I said, my background is in broadcast, and I have built scheduling and playout systems for multi channel setups. Running something at home as a hobby would be fun.

Browneye3001 avatar Feb 09 '21 07:02 Browneye3001