Comments (8)
大変良いご要望だと思います。
お手数ですが下記リポジトリで再度Issueの作成をお願いいたします。
https://github.com/Chinachu/BonDriver_Mirakurun
from mirakurun.
大変失礼いたしました。よく見たところ既に作成されていましたので再openしておきました。
Chinachu/BonDriver_Mirakurun#3
ちなみに Mirakurun 側のAPIでは既にサービス選択できるようになっています。
APIドキュメント: http:// Mirakurun :40772/swagger-ui/?url=/api/docs#!/services/getServiceStream
from mirakurun.
https://github.com/akimasa/Mirakurun/tree/delpids-dev
BonDriver_Mirakurunで不要なPIDを受信しないためにMirakurunに改変を加えてみました。
今のMirakurunのAPIでは指定されたPIDを送信させない機能はないですよね…?
改変を加えたMirakurunでは今のところ、指定されたサービスのストリームでしかPIDの削除が機能しない試作の状態になっています。
よろしければプルリクエストを送って、コードを見ていただき、修正点がありましたら指摘していただけたらと思うのですが、いかがいたしましょう。
あるいは、自分で書いた方が早いとお考えなら、その方が良いかもしれません。
from mirakurun.
nullパケットについては既に削除しているため、その他PIDを削除するメリットがいまいち分かっていません。
ちなみに、APIリクエストによって渡された文字列をそのままTSFilterで処理してはいけません。
from mirakurun.
そうですね。
確かに自分も作ってみて、指定されたPID(PSI/SI)を削除するメリットがよくわかりませんでした。
ビットレートが目に見えて減るわけではないみたいですし、苦労して削除する割に合わない気がします。
node-aribts v1のcheck_drop.jsで眺めて見た限りでは、PSI/SIは全体の1%程度しか占めないみたいでした。
epgdatacapbonさんは、どうお考えなのか気になります。
//コードへのご指摘ありがとうございます。毎回へぼいコードで、すみません。
from mirakurun.
akimasaさんコードありがとうございます。確かに費用対効果についてはあまり考えてませんでした。コードがかなり煩雑になる場合は別ですが、複数のtsを同時に転送することもあるので単純にネットワーク帯域が少しでも減らせればそれに越したことはないという考えでした。
from mirakurun.
TSFilterの_processPacketで全てのパケットに対して削除するPIDかどうか調べて削除する処理を追加していました。これを追加すると、CPU使用率が上がる懸念があります。1%の削減のために、CPUを使うのはどうかなと思っていました。
しかし、よく考えたら元々提供するPIDの配列にあるかどうかチェックしているみたいのので、_providePidsからいらないPIDを消せば良かったみたいです。
これならおそらく機能を追加しても負荷が上がらないのでは無いかと思います。
TSFilterに文字列を直接渡していた件は直しておきました。
他にも問題点があるかと思いますが、指摘していただければ可能な限り直します。
それ以前に、指定されたPIDを削除する機能を採用するかどうかという問題がありますが…。
from mirakurun.
引き続き下記のスレで議論できます
Chinachu/BonDriver_Mirakurun#3
EPG情報を削るオプションについては今後も検討してまいります。
from mirakurun.
Related Issues (20)
- IPTV機能について HOT 1
- websocketのSSL対応 HOT 2
- 同じ番組が複数録画される [BUG] HOT 3
- several vulnerabilities CVE-2020-15168,CVE-2020-7598 are introduced in mirakurun HOT 2
- Web UIで外部(インターネット)からフォントを読み込んでしまっている HOT 2
- Web UIで外部(インターネット)から画像を読み込んでしまっている HOT 2
- 放送局が直前に停波していると録画のスクランブルが解除されない HOT 2
- unixドメインソケットからはRPCがつかえない [BUG] HOT 1
- 地上波の番組をChinachuで録画中に、同じ物理チャンネルの別サービスが /api/channels/GR/{channel}/stream で取得できない [BUG] HOT 3
- PX-MLT8PEで6ch全録を実施するとメモリ使用量が4.7GBになる。 HOT 2
- "docker-compose run --rm -e SETUP=true mirakurun"で「/usr/local/mirakurun/run/が存在しない」とのエラー [BUG] HOT 2
- 提案: コミュニティをDiscordから移行する
- TSDecoder unexpected dead [BUG] HOT 1
- Windows + Node.js 16 環境でローカルインストールに失敗する [BUG] HOT 3
- Open University Radio not found in channel scan [BUG] HOT 1
- rivarunからMirakurunにソケット接続できない
- 【要望】nodejs v18.xエンジンをサポート HOT 1
- Windows 環境で Mirakurun 3.9.0-rc.0 以降のバージョンをインストールすると起動に失敗する [BUG] HOT 3
- PT2からBSアンテナに給電されない
- Muninプラグインの機能不全 HOT 4
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from mirakurun.